SGML adalah suatu tata cara untuk memformat dokumen agar bersifat portabel. SGML merupakan super set dari HTML, dengan kata lain tata cara penulisan HTML merupakan penyederhanaan SGML. Di dalam tulisan ini, tidak akan dibahas SGML secara menyeluruh karena SGML sangat kompleks dan saya bukan ahli di bidang per-SGML-an ini. Di sini hanya akan dibahas beberapa tag SGML yang akan bermanfaat dalam pembuatan dokumen portabel.
SGML-Tools adalah seperangkat program yang bermanfaat dalam membantu membuat dokumen dengan berbagai format seperti teks, RTF (Rich Text Format), hypertext, dan format yang sesuai untuk pembuatan buku yang akan dicetak.
Dalam mini tutorial ini, saya tidak akan menjelaskan secara keseluruhan mengenai fasilitas yang ada pada SGML-Tools, karena penjelasan mengenai hal-hal itu sudah tersedia pada manual SGML-Tools. Namun saya akan menjelaskan fasilitas-fasilitas SGML-Tools yang berguna dalam pembuatan dokumen HOWTO.
Saya mengasumsikan SGML-Tools 1.0.7 telah terinstal di sistem anda lengkap dengan pendukung-pendukungnya seperti, TeX, LaTeX, groff, gawk, GNU Info tools. Bila belum, silakan anda lihat manual SGML-Tools. Sembarang teks editor dapat digunakan untuk membuat dokumen (secara pribadi saya menyarankan GNU Emacs).
Untuk saat ini, semua dokumen HOWTO menggunakan tipe dokumen linuxdoc, jadi pada awal dokumen anda, silakan anda tuliskan :
<!doctype linuxdoc system>
Kemudian berturut-turut anda definisikan bentuk dokumen (di sini adalah article), judul dokumen, penulisnya, dan tanggal penulisan. Hingga bentuk akhirnya adalah sebagai berikut :
<article>
<title>Belajar SGML-Tools
<author>SGML-man, revisi oleh : SGML-boy
<date>versi 0,12; Tanggal 6 September 1999
Sampai di sini, anda telah membuat kepala untuk dokumen anda, selanjutnya kita akan membuat abstraksi dan daftar isi untuk dokumen kita.
Bagian ini berguna untuk memberikan ringkasan mengenai dokumen yang kita tulis. Untuk membuatnya cukup dengan menuliskan
<abstract>
Ini adalah abstraksi dokumen yang saya buat.
</abstract>
Untuk membuat daftar isi dengan menggunakan SGML-Tools sangat mudah sekali, kita tidak perlu mengatur peletakannya, penomoran bagian dokumen dan hal-hal sejenisnya. Yang perlu kita lakukan hanyalah menuliskan
<toc>setelah kepala dokumen. Secara otomatis pada saat pembuatan format dokumen nantinya, SGML-Tools akan menyesuaikan penomoran dan peletakan bagian dokumen.
Bila anda ingin membagi dokumen yang anda buat ke dalam beberapa bagian agar menjadi lebih terstruktur, dapat digunakan tag :
<itemize>
<item><sect> untuk bagian tertinggi, contoh 1,2,3.
<item><sect1> untuk bagian di bawahnya, contoh 1.1, 1.2.
<item><sect2> untuk bagian tingkat 2, contohnya 1.1.1, 1.1.2
<item><sect3> untuk bagian tingkat 3, contohnya 1.1.1.1, 1.1.1.2
<item><sect4> untuk bagian tingkat 4.
</itemize>
Setelah bagian
<sect>
diikuti oleh nama bagiannya. Misalnya
<sect>Ini bagian I
Setelah itu perlu diberi penanda paragraf
<p>
untuk memberi tahu parser bahwa judul bagian sudah selesai dan kita akan memulai isi bagian. Tag ini tidak ada tag penutupnya
</p>
List berguna untuk memperinci hal-hal yang dijelaskan, sehingga pembaca dapat memahami isi dokumen dengan cepat.
List ini dapat dibedakan dalam dua bagian besar yaitu list bernomor dan list tidak bernomor. Yang dimaksud list bernomor adalah sebagai berikut :
1. Ini elemen pertama. 2. Ini elemen kedua.
Sedangkan list tidak bernomor adalah sebagai berikut :
* Elemen Pertama. * Elemen Kedua.
Untuk membuat list bernomor, digunakan tag
<enum></enum>
Sementara untuk list tidak bernomor digunakan tag
<itemize></itemize>
Cara penulisan untuk membuat list bernomor adalah :
<enum>
<item> Item pertama.
<item> Item kedua.
</enum>
Sedang penulisan untuk list tidak bernomor adalah :
<itemize>
<item> Item pertama.
<item> Item kedua.
</itemize>
Jika anda ingin mengacu suatu bagian dokumen dari bagian lain dokumen yang sama ini disebut internal reference. Proses pembuatannya adalahs sebagai berikut : jika anda ingin mengacu pada suatu bagian dokumen, maka bagian tersebut perlu diberi nama terlebih dahulu dan kemudian namanya dipanggil dari bagian lain dokumen yang ingin mengacunya.
Untuk lebih jelasnya, silakan lihat cuplikan kode berikut : anda ingin mengacu bagian berjudul "Membuat referensi dalam dokumen" maka dapat anda lakukan dengan cara memberi nama bagian tersebut :
<sect1>Membuat referensi dalam dokumen<label id="ref">
Kemudian memanggil id bagian tersebut pada bagian dokumen yang ingin mengacunya. Anda ketikkan :
Lihat <ref id="ref" name="Referensi"> untuk penjelasan membuat referensi.
Untuk membuat referensi web, dapat kita gunakan elemen url. Elemen ini dapat digunakan untuk mengacu pada file, dokumen lain yang tersedia pada FTP. Sebagai contoh :
Anda dapat memperoleh dokumen ini dari <url url="http://members.tripod.com/ctl76/">
Bagian url menjelaskan mengenai url-nya file atau dokumen, sementara bagian nama nantinya akan dimunculkan sebagai hotspot (untuk konversi HTML) atau sebagai deskripsi url (untuk LaTeX dan groff). Jika bagian nama tidak diisi, maka url akan menjadi namanya.
Selain url, dapat pula kita gunakan elemen htmlurl, yang dapat kita gunakan untuk membuat link alamat email. Sebagai contoh kita dapat menuliskan :
<htmlurl url="mailto:ctl76@theory.lcs.mit.edu" name="CTL-76">
yang lalu membuat link ke alamat email kita.
Untuk font dapat kita gunakan tag bf (untuk font tebal/bold), em (untuk font miring/italic) dan tt (untuk font mesin ketik/typewriter). Sementara font-font yang lain mungkin akan menyebabkan kesulitan pada saat konversi.
Perhatikan bahwa penulisan font tersebut adalah sebagai berikut :
<bf>Ini dicetak tebal</bf>
<em>Ini dicetak miring</em>
<tt>Ini dicetak seperti huruf mesin ketik</tt>
Penulisan di atas dapat disingkat menjadi :
<bf/Ini dicetak tebal/
<em/Ini dicetak miring/
<tt/Ini seperti diketik/
Bila dalam dokumen anda ingin disertakan kode program atau script ataupun cuplikan, tersedia tiga buah tag yang dapat anda gunakan, yaitu verb, code, dan quota.
Tag ini digunakan bilamana kita ingin agar spasi dan indentasi yang kita berikan tidak hilang. Hasil outputnya adalah sebagai berikut :
<verb> Teks yang spasinya bisa diatur....</verb>
Pada tag ini dapat pula ditambahkan tag
<tscreen>
yang berguna untuk membuat indentasi dan menset font baku menjadi teletype (tt). Sehingga bentuk penulisannya adalah sebagai berikut :
<tscreen><verb>
....
</verb></tscreen>
Dalam tag verb ada beberapa karakter yang tidak dapat dikenalinya yaitu :
Tag ini sama seperti verb, hanya saja diberi tambahan garis horisontal sebelum dan setelah teks, contoh :
Benar kan, ada dua garis yang melingkupi teks ini.
Quote ini hampir sama dengan tscreen, hanya saja ia tidak menset font baku menjadi tt, jadi dapat digunakan untuk interaksi non komputer.
Untuk mengakhiri dokumen digunakan tag
</article>
Di bawah ini akan diuraikan cara-cara untuk memperoleh beberapa format yang didukung oleh SGML-Tools 1.0.7.
Versi teks ini ada dua macam yaitu versi teks untuk UNIX (teks diberi warna berbeda untuk judul bagian dan sub bagian) dan versi teks murni (dapat dilihat di sistem operasi MS Windows 3.1/95/98/NT/2000 ataupun DOS).
Untuk memperoleh versi teks UNIX, ketikkan perintah berikut :
$ sgml2txt dokumen.sgml
dokumen.sgml adalah file sgml yang ingin anda konversi menjadi format lain, di sini menjadi file teks, hasil akhirnya akan tersimpan dalam file dokumen.txt.
Sementara untuk memperoleh versi teks murni, gunakan :
$ sgml2txt [-f | --filter] <dokumen.sgml>
Karakter | berarti anda dapat memilih salah satu bentuk pilihan, apakah itu -f ataupun --filter (saya lebih menyukai bentuk -f).
Untuk membuat file sumber groff yang dapat dilihat dengan menggunakan man, ketikkan perintah berikut :
$ sgml2txt [-m | --man] dokumen.sgml
Dokumen berfomat HTML dapat menyertakan ikon gambar ataupun tidak.
Untuk memperoleh dokumen dalam format HTML tanpa ikon gambar, gunakan perintah berikut :
$ sgml2html dokumen.sgml
Sementara bila ingin memasukkan ikon gambar, gunakan perintah :
$ sgml2html [-I | --imagebuttons] dokumen.sgml
Gambar-gambar ikon dapat anda salinkan dari direktori /usr/doc/sgml-tools/html.
Untuk memperoleh dokumen LaTeX/PostScript/DVI, gunakan perintah :
$ sgml2latex [--output=tex|ps|dvi] dokumen.sgml > /dev/null
Penambahan redirection ke /dev/null dimaksudkan untuk tidak menampilkan pesan-pesan pada saat pemanggilan konverter LaTeX.
Untuk membuat dokumen berformat RTF (yang digunakan MS Windows), gunakan perintah :
$ sgml2rtf dokumen.sgml
Untuk membuat dokumen berformat LyX, gunakan perintah :
$ sgml2lyx dokumen.sgml
Untuk membuat dokumen berformat GNU info, gunakan perintah :
$ sgml2info dokumen.sgml
Setelah anda selesai membuat dokumen anda, anda kemudian dapat membungkusnya dengan cara mengarsipnya dan mengkompresnya dengan menggunakan utilitas tar. Caranya adalah sebagai berikut :
$ tar cvzf kom.tar.gz file
dengan kom adalah file hasil dengan format tar.gz, sementara file adalah yang ingin kita arsip dan kompres (file dapat berupa satu file ataupun satu direktori).
Kemudian dokumen anda (dalam format SGML) tersebut dapat anda kirimkan ke <mdamt@linux.or.id> ataupun anda taruh di homepage pribadi anda sehingga dapat dibaca oleh orang lain.
Akhirnya, selamat mempelajari SGML-Tools, semoga anda dapat menguasainya dan ikut serta dalam Proyek Penerjemahan Linux HOWTO/Dokumentasi Linux <LDP Indonesia>.
Tutorial ini ditulis untuk membantu para antusias yang ingin ikut serta dalam Proyek Penerjemahan Linux HOWTO/Dokumentasi Linux lainnya.
Jika ada saran ataupun kritik yang bersifat membangun mengenai tutorial ini, jangan ragu untuk memberitahu penulis di <tedi-h@usa.net>
Versi terbaru tutorial ini tersedia di <Tedi Heriyanto's Homepage>.
I would like to dedicate this work to : RMS, LT, ESR, MW, GH, all of the Free Software Enthusiasts in the world.
Revisi terakhir $6 September 1999, 17.30$
http://www.sgmltools.org