Go: [MAIN PAGE]
Fonts: [VIQR] [VNI] [UNICODE] [VISCII] [VPS]


Mu`a Xua^n Na`y Ta Ne^n La`m DDe.p

Nguye^~n Ta^'n Hu+ng

     Ta.i sao ne't chu+~ trong nhu+~ng trang na`y co' pha^`n kha'c bie^.t so vo+'i nhu+~ng trang kha'c cu?a cuo^'n ba'o ? Ly' do ra^'t la` ddo+n gia?n: "Ta.i vi` nhu+~ng trang na`y kho^ng do nha` in cu?a ba'o Va(n Ho.c xe^'p chu+~." Ma` do chi'nh to^i tu+. xe^'p chu+~ la^'y! Co' gio^'ng kho^ng? Co^ng nha^.n la` gio^'ng gio^'ng tho^i, cho+' la`m sao gio^'ng y chang nguye^n con cho ddu+o+.c. Hai gio.t nu+o+'c! Nhu+ hai gio.t nu+o+'c thi` ddu'ng ro^`i, vi` ai ma` kho^ng bie^'t hai gio.t nu+o+'c chi? gio^'ng nhau o+? be^` ngoa`i, cho+' co`n pha^?m cha^'t trong ruo^.t thi` kha'c nhau xa ... U+`a, ro^`i ca'c ba.n se~ tha^'y ca'i to^i no'i kha'c nhau xa la` the^' na`o .

     Ra^'t tie^'c to^i pha?i dde^'n vo+'i ddo^.c gia? Va(n Ho.c bo+?i mo^.t ba`i vie^'t la~ng tu+? nhu+ va^`y . Kho^ng la` mo^.t sa'ng ta'c va(n nghe^. va(n gu+`ng gi` he^'t. Kho^ng la` mo^.t truye^.n nga('n, cu~ng kho^ng la` mo^.t ba`i tho+ . Ta.i vi` va(n tho+ cu?a to^i co' le~ dda~ bi. o^ng ddie^`u ha`nh chung Nguye^~n Mo^.ng Gia'c vu+'t vo^ so.t ra'c he^'t ro^`i . Ta`i na(ng mong manh cu?a mi`nh chi? co' chu+`ng ddo' thi` cu~ng dda`nh chi.u tho^i. Nhu+ng, dda~ dang di'u vo+'i Va(n Ho.c, thi` cu~ng ne^n nu'm ni'u vo+'i Va(n Ho.c. Nhu+ nu'm ni'u vo+'i mo^.t ngu+o+`i ti`nh. Bi. ngu+o+`i ti`nh dda' le^n dda' xuo^'ng nhu+ va^.y, ddau nhu+ bi. bo` dda' nhu+ va^.y, le~ ra to^i cu~ng ne^n ru't lui co' tra^.t tu+. cho ro^`i, ai ma` chu+o+`ng ca'i ma(.t ddau thu+o+ng ddo' ra chi nu+~a . Ru't lui thi` dda~ ma^'y la^`n ru't lui . Nhu+ng, la^`n na`y ru't lui kho^ng pha?i la` dde^? chuo^`n e^m ma` la` dde^? la^'y tro+'n, dde^? la`m mo^.t ma`n kha'c cho cuo^.c ti`nh si . Co' pha^`n cu.p la.c ho+n. Thi` dda^y la`: "Mu`a Xua^n Na`y Ta Ne^n La`m DDe.p."

     La`m dde.p? Cho ai ? Ai ngu+o+`i ta cu~ng dde.p ca? ro^`i, dda^u ca^`n mi`nh pha?i la`m dde.p! DDa^u ddu+o+.c, no'i nhu+ va^.y bao nhie^u tha^?m my~ vie^.n o+? tre^n the^' gio+'i na`y de.p tie^.m he^'t sao . Nhie^`u ngu+o+`i dda~ dde.p ro^`i ma` ngu+o+`i ta co`n pha?i la`m dde.p the^m nu+~a co+ . Rie^ng to^i, ne^'u ai dda~ dde.p ro^`i thi` xin mie^~n. To^i chi? muo^'n la`m dde.p cho nhu+~ng ngu+o+`i da'm tu+. xu+ng "em la` ga'i tro+`i ba('t xa^'u" ma` tho^i . Nhu+ng la`m dde.p ve^` ca'i gi` cho+' ? Mu~i, ma('t, ngu+.c, mo^ng, eo co ... ? DDu+`ng da.i do^.t ma` no'i "tai, mu~i, ho.ng," nghe no' go+'m qua'! Tho^i, to^i xin thu+a: "Nghe^` la`m dde.p cu?a to^i la` nghe^` xe^'p chu+~ ddo'." Na~y gio+` to^i no'i chuye^.n toa`n la` chu+~ nghi~a, va(n nghe^., va(n gu+`ng kho^ng ma`!

     Pha?i, o+? tho+`i dda.i information age na`y, vo+'i personal computer va` laser printer ma` ra^'t tie^'c co' nhie^`u cuo^'n sa'ch chu+~ Vie^.t, bo? da^'u chu+~ Vie^.t ba(`ng tay va^~n co`n xua^'t ba?n, pha't ha`nh. Su+. dda'ng tie^'c na`y kho^ng rie^ng gi` cho mo^.t ai ma` la` chung cho ca? mo^.t the^' he^. chu+~ nghi~a lu+u vong cu?a chu'ng ta . Chi'nh to^i, to^i cu~ng tu+. ba?o: "Ra^'t tie^'c pha?i ddo+.i dde^'n mu`a xua^n na(m na`y, mu`a xua^n na(m 88, to^i mo+'i kha'm pha' ra va` dde^` ca^.p dde^'n va^'n dde^` electronic typesetting chu+~ Vie^.t." Electronic typesetting chu+~ Vie^.t? Xu+a qua', ngu+o+`i ta dda~ bie^'t tu+` la^u ro^`i: "Ro~, e^'ch ngo^`i dda'y gie^'ng." Bo^. kho^ng tha^'y ma^'y tra(m to+` nha^.t ba'o+ tua^`n ba'o+ nguye^.t san, giai pha^?m o+? ha?i ngoa.i hay sao ? Da. tha^'y . Nhu+ng, ddo' la` nhu+~ng "ngu+o+`i dda~ dde.p ro^`i," to^i dda^u da'm so+` dde^'n. To^i chi? ke^` tai no'i nho? vo+'i nhu+~ng ngu+o+`i ca^`m bu't, nhu+~ng nha` va(n, nhu+~ng nha` tho+, nhu+~ng ba.n va(n, nhu+~ng ba.n tho+, v.v. ra(`ng: "Mi`nh co' the^? vie^'t sa'ch chu+~ Vie^.t, la`m sa'ch chu+~ Vie^.t ba(`ng personal computer va` laser printer." Muo^'n bie^'t the^m chi tie^'t thi` ca'c ba.n cu+' pha?i ra'n ma` ddo.c tie^'p.

     Phu+o+ng pha'p to^i la`m typesetting chu+~ Vie^.t cho ba`i na`y, thie^.t ti`nh ma` no'i, no' cu~ng co^? lo^~ si? la('m: "Troff." Ba^y gio+` ngu+o+`i ta pha?i no'i page make-up system, WYSIWYG (What you see is what you get) system... vv. Nhu+ng, troff vi` tu+. no' pha?i sinh to^`n, pha?i cho^'ng la.i be^.nh die^.t chu?ng, ma` no' cu~ng pha?i pha't trie^?n kho^ng ngu+`ng dde^? co' ca'i ke^'t qua? nga`y ho^m nay . Ngu+o+`i Nha'i cu?a Ha?i Qua^n Vie^.t Nam co' kha^?u hie^.u: "Nhu+~ng gi` ngu+o+`i ta la`m kho^ng ddu+o+.c, Ngu+o+`i Nha'i la`m ddu+o+.c," thi` troff cu~ng da'm no'i tu+o+ng tu+. nhu+ va^.y: "Ca'i gi` ma` nhu+~ng system kia la`m ddu+o+.c thi` troff cu~ng co' the^? la`m ddu+o+.c." DDu'ng hay sai la` dde^? li.ch su+? pha'n xe't theo quan nie^.m cu?a Ngu+o+`i Nha'i, ddu'ng hay sai la` dde^? programmer pha'n xe't theo quan nie^.m cu?a troff. Rie^ng to^i, vi` kho^ng la` mo^.t programmer chi'nh hie^.u ne^n to^i ke^'t lua^.n: "Kho^ng hoa`n toa`n ddu'ng cho la('m, troff cu~ng la`m ddu+o+.c nhu+ng tro+? nga.i la` speed, memory space allocation... vv." Nhu+ng to^i bie^'t cha('c mo^.t ddie^`u: "Kho^ng co' mo^.t system na`o co' the^? la`m ddu? thu+' nhu+ troff la`m ca? ."

     Ma` ca'c ba.n dda^u ca^`n bie^'t nhu+~ng chi tie^'c technical ddo' la`m gi` cho me^.t! Ca'c ba.n chi? muo^'n bie^'t troff la` ca'i gi`? Xu+? du.ng the^' na`o ? Ke^'t qua? ra sao ? No'i vo`ng vo tam quo^'c hoa`i nghe nhu+'c dda^`u qua' pha?i kho^ng? Ok, ok. Thi` troff ra ddo+`i dda~ la^u ro^`i . Tru+o+'c khi mi`nh qua My~ co+, 72-73 thi` pha?i . Troff la` mo^.t function cu?a UNIX* operating system. Ma` UNIX operating system la` con dde? cu?a C language, mo^.t thu+' computer language dda~ ddu+o+.c thie^'t la^.p va` he^. tho^'ng ho'a o+? nhu+~ng pho`ng lab cu?a Bell Laboratories. Va` Bell Laboratories la` cu?a AT&T, la` ha~ng to^i ddang la`m.

     Tho^i ma`, qua?ng ca'o hoa`i! U+`a, thi` no'i chuye^.n pha?i co' dda^`u co' dduo^i cho+'. No'i dde^'n troff, no'i dde^'n mo^.t phu+o+ng pha'p typesetting, thi` pha?i no'i so+ so+ ve^` font, ve^` point size, ve^` format, ve^` memorandum macro ma` ngu+o+`i ta hay go.i ta('t la` mm macro .

     Font thi` de^~ ro^`i, xem nhu+~ng thi' du. du+o+'i dda^y:

     A, B, C..., a, b, c..., 1, 2, 3..., Helvetica
     A, B, C..., a, b, c..., 1, 2, 3..., Helvetica-Outline
     A, B, C..., a, b, c..., 1, 2, 3..., Hershey-Gothic
     A, B, C..., a, b, c..., 1, 2, 3..., Hershey-Script
     A, B, C..., a, b, c..., 1, 2, 3..., ZapfChancery

     Va^.y thi` font la` kie^?u chu+~! Va` tre^n the^' gio+'i na`y co' bao nhie^u kie^?u chu+~? To^'i thie^?u cu~ng hai chu.c ho+n, tuy nhie^n, co' ddu? font hay kho^ng thi` co`n tu`y thuo^.c va`o tu+`ng loa.i printer. The^m mo^.t ddie^?m ca^`n no'i la` mo^~i kie^?u chu+~ dde^`u co' bo^'n ca'ch in chi'nh cho ca? vie^'t thu+o+`ng va` vie^'t hoa: chu+~ thu+o+`ng (roman), chu+~ nghie^ng (italic), chu+~ dda^.m (bold), va` chu+~ nghie^ng dda^.m (bold-italic).

     Point size thi` cu~ng de^~ tho^i . Cu+' theo tho^ng le^. "mo^.t bu+'c tranh no'i le^n tra(m nga`n tie^'ng no'i," thi` cu~ng ne^n xem nhu+~ng bu+'c tranh du+o+'i dda^y:

     Bu+'c tranh 1, 6 points
     Bu+'c tranh 2, 12 points
     Bu+'c tranh 3, 18 points
     Bu+'c tranh 4, 24 points

     Va^.y thi` point size la` co+~ chu+~. Va` point size pha?i co' mo^.t gio+'i ha.n nhu+ the^' na`o ? Cu~ng la` va^'n dde^` co`n tu`y thuo^.c va`o tu+`ng loa.i printer, tho^ng thu+o+`ng tu+` 1 cho dde^'n 60. 1 point la` 112 cu?a pica . Ma` 1 pica thi` ba(`ng 16 cu?a 1 inch, nhu+ va^.y 1 point la` 172 cu?a 1 inch.

     Format thi` sao ? Format tu+'c la` lay-out cu?a trang gia^'y . Chie^`u ngang, chie^`u ro^.ng cu?a trang gia^'y: kho^? 8 1/2x11 la` kho^? nguye^n trang gia^'y ho.c tro`, nhu+ ba'o La`ng Va(n..., kho^? 5 1/2x8 1/2 la` kho^? nu+?a trang, nhu+ ba'o Va(n Ho.c, Va(n cha(?ng ha.n... Ro^`i dde^'n chie^`u ngang, chie^`u ro^.ng cu?a cho^~ in chu+~ (text). Ro^`i dde^'n pha^`n dda^`u trang (page header), pha^`n cuo^'i trang (page footer). Pha^`n dda^`u trang tho^ng thu+o+`ng la` tu+.a cu?a mo^.t chu+o+ng, tu+.a cu?a mo^.t truye^.n nga('n. Pha^`n cuo^'i trang tho^ng thu+o+`ng la` so^' trang (page number). Chi? co' Va(n Ho.c la` la`m chuye^.n qua'i dda?n: in pha^`n dda^`u trang va` cuo^'i trang di'nh le.o o+? tre^n dda^`u.

     Ma` thu+? ho?i ai cho mi`nh ca'i quye^`n phe'p total control ddo' cho+'? Xin thu+a: "Thi` troff cho+' ai vo^ dda^y ." Troff nhu+ mo^.t o^ng boss de^~ ta'nh, da'm ta(.ng cho dda'm nha^n vie^n cu?a mi`nh ca'i flexibility . Nho+` va^.y ma` troff mo+'i co' co+ ho^.i so^'ng . Ca'i flexibility ddo' la` mm macro+ ca'i tie^'t mu.c sau cu`ng ma` to^i muo^'n ba`n vo+'i ca'c ba.n ve^` troff.

     Mm macro la` ky' hie^.u cu?a nhu+~ng typesetting function, go^`m mo^.t hoa(.c hai chu+~ (ma^~u tu+.) da^~n dda^`u ba(`ng mo^.t da^'u cha^'m (dot). Va` ddu+'ng rie^ng mo^.t mi`nh, mo^.t ha`ng. Thi' du. nhu+ .H, .P, .ti, .in, , .DS, .DE, v.v. Ma` mm macro xu+? du.ng nhu+ the^' na`o ? DDa^y . Na~y gio+` to^i dda~ xa`i ro^`i ma` ca'c ba.n dda^u co' hay . Macro .H la` du`ng cho heading, tu+.a truye^.n, tu+.a chu+o+ng. Ma^'y chu+~ lo+'n "Mu`a Xua^n Na`y Ta Ne^n La`m DDe.p," tu+.a cu?a ba`i na`y la` la`m bo+?i .H 1 ddo'. Ta.i sao pha?i .H 1? Ta.i vi`, tu+.a thi` co' tu+.a lo+'n tu+.a nho?, va` dda^y la` tu+.a lo+'n nha^'t thi` cho no' mang so^' 1 la` ho+.p ly' ro^`i . Troff co' the^? handle dde^'n 7 ha.ng tu+.a, 7 levels. DDe^? chi va^.y ca'c ba.n co' bie^'t? DDe^? la`m ca'i "Mu.c Lu.c" o+? cuo^'i sa'ch, dde^? ca'c ba.n kho?i pha?i lo tu+.a truye^.n na`o na(`m o+? trang na`o . Giao khoa'n pha^`n ddo' cho troff. Macro .P la` dda^`u paragraph. Cu+' mo^~i khi ga(.p .P thi` troff tu+. ddo^.ng bie^'t ra(`ng mi`nh pha?i la`m mo^.t ca'i "cha^'m xuo^'ng ha`ng." Ma` "cha^'m xuo^'ng ha`ng" thi` pha?i thu.t vo^ . Bo+?i va^.y pha?i xa`i macro .ti, temporarily indent. Co`n macro .in, indent, thi` ha`ng na`o cu~ng thu.t vo^ . Ca'i na`y dde^? in tho+ ngu~ ngo^n, tha^'t ngo^n thi` kho?i pha?i che^:

     Bu+o+'c to+'i dde`o Ngang bo'ng xe^' ta`
     Co? ca^y chen dda' la' chen hoa
     Lom khom du+o+'i nu'i tie^`u va`i chu'
     La'c dda'c be^n so^ng ro+. ma^'y nha`

     Macro , center, thi` xa`i cho tho+ lu.c ba't, song tha^'t lu.c ba't:

     DDa^`u lo`ng hai a? to^' nga
     Thu'y Kie^`u la` chi. em la` Thu'y Va^n
     Mai co^'t ca'ch tuye^'t tinh tha^`n
     Mo^~i ngu+o+`i mo^~i ve? mu+o+`i pha^n ve.n mu+o+`i

     Co`n macro .DS, display start, va` macro .DE, display end, thi` pha?i xa`i chung nhu+ mo^.t ca(.p. Mu.c ddi'ch dde^? chu+`a khoa?ng tro^'ng dde^? ve~ tranh "minh ho.a," tranh "hi' ho.a," dde^? "ca('t da'n" hi`nh cu?a mo^.t giai nha^n cha(?ng ha.n..., hoa(.c dde^? la`m thi' du. nhu+ du+o+'i dda^y:

     .DS



     Chu+`a tre^n, du+o+'i 1 inch.



     .DE

     DDa^y chi? la` nhu+~ng mm macro dda~ ddu+o+.c vie^'t sa(~n ma` troff dda~ co^'ng hie^'n cho mi`mh. Na(m ba?y chu.c loa.i mm macro+ tu`y theo cho^~ ma` xa`i . Ne^'u mi`nh che^ mm macro+ muo^'n re-design no' thi` cu~ng cha(?ng ai ca^'m. Ngon la`nh ho+n, vie^'t luo^n a-new-set-of-macro cho mi`nh xa`i rie^ng thi` cu~ng cha(?ng ai phie^`n. Chi? ca^`n ddu+`ng go.i te^n tru`ng te^n vo+'i mm macro+ cho kho?i bi. bomb la` xong. Troff cho mi`nh ca'i flexibility cu?a ca'i flexibility . To'm la.i, mo^.t cuo^'n sa'ch tu+` trang dda^`u dde^'n trang cuo^'i, tu+` tu+.a sa'ch, lo+`i gio+'i thie^.u (xem nhu+ la` preface), cho dde^'n mu.c lu.c (table of contents), glossary, index, appendix..., troff cha.y mo^.t ma.ch va` spit-out cho mi`nh ta.i laser printer trong ti't ta('t. Chi? kho^? cho mo^.t ngu+o+`i ma` tho^i: "input operator." Input operator pha?i bie^'t cho^~ na`o ma` insert ca'i mm macro ca^`n thie^'t dde^? troff la`m nhu+~ng ddie^`u ma` mi`nh muo^'n. Input operator ne^'u bie^'t ddu+o+.c vi (visual editor) thi` co`n ddo+~, cho+' co`n xa`i edlin, ed thi` kho^? so+? se~ bie^'t dde^'n du+o+`ng na`o .

     Ta^'t ca? nhu+~ng gi` to^i no'i tre^n dda^y tha^.t su+. ddo+'i vo+'i to^i kho^ng co' mo^.t gi'a tri. na`o he^'t. Hoa(.c co' mo^.t gia' tri. vu+`a pha?i na`o ddo' tho^i, ne^'u to^i chi.u ngo^`i cu.p xu+o+ng so^'ng ma` bo? da^'u chu+~ Vie^.t ba(`ng tay . Va^.y thi` no'i ra la`m gi`? A^.y, tu+` tu+` dda~. Co' lu+?a mo+'i co' kho'i ma`. So+? di~ to^i no'i kho^ng co' gia' tri. gi` he^'t la` cu~ng co' ca'i ly' cu?a to^i dda^'y chu+'! Kho^ng co' gia' tri. gi` he^'t ta.i vi` nhu+~ng thu+' na`y chi? xa`i cho My~ ma` tho^i . Tie^.n lo+.i cho My~ ma` tho^i .

     Nhu+ng no' ra^'t co' gia' tri. ne^'u mi`nh la`m ddu+o+.c cho tie^'ng Vie^.t, electronic typesetting cho tie^'ng Vie^.t. Va^.y thi` pha?i chi.u kho' ma` ddo.c tie^'p nhu+~ng lua^.n ddie^.u mu` mo+` na`y, sometime technically kho' hie^?u na`y . Ma` tha^.t su+. kho^ng co' gi` kho' hie^?u dda^u . Ma^'y o^ng programmer chu+~ Vie^.t, ma^'y o^ng "guru" nha` mi`nh, dda~ hie^?u to^i no'i ca'i gi` ra'o tro.i ddo' cho+'. DDi guo^'c trong bu.ng cu?a to^i nu+~a la` dda(`ng kha'c.

     Typesetting chu+~ Vie^.t thi` cu~ng dda^u co' gi` kho'. Chu+~ vie^'t cu?a mi`nh cu~ng co' ma^~u tu+. abc ma`. Kho' thi` pha?i no'i la` chu+~ Ta`u+ chu+~ Nha^.t, nhu+~ng thu+' chu+~ co' vo'c gia'ng cu?a bu.i tru'c, ca`nh tre . Va^.y ma` ngu+o+`i ta co`n la`m electronic typesetting ddu+o+.c nu+~a kia, thi` vie^.c cu?a mi`nh pha?i go.i la` de^~ tho^i . DDa~ co' abc ro^`i thi` chi? co`n la`m na(m ca'i da^'u: sa('c, huye^`n, na(.ng, ho?i, nga~. La` xong! La` xong ? Chu+a xong dda^u+ vi` co`n nhu+~ng chu+~ a(, a^, chu+~ dd, chu+~ e^, chu+~ o^, o+, chu+~ u+ thi` pha?i la`m sao ? A` ha', va^.y thi` pha?i chi.u kho' design mo^.t chu+~ rie^ng bie^.t cho mo^~i chu+~ na`y . Tha`nh ra na(m da^'u+ ba?y chu+~ mo+'i, vi. chi la` mu+o+`i hai chu+~ pha?i la`m ma` tho^i . De^~ qua'! Ba('t tay va`o vie^.c! La`m! Xong! DDe^'n lu'c in ra mo+'i tha^'y la` ddo.c kho^ng ddu+o+.c. La^'y thi' du. da^'u sa('c tho^i . Da^'u sa('c na(`m tre^n chu+~ a(, chu+~ a^ pha?i o+? mo^.t vi. tri' kha'c vo+'i da^'u sa('c na(`m tre^n chu+~ a . Hoa(.c pha?i cao ho+n, hoa(.c pha?i qua be^n pha?i mo^.t chu't. Cu~ng ra('c ro^'i ddo' chu+'?

     Ro^'t cuo^.c ro^`i, to^i design kho^ng pha?i 12 chu+~ ma` la` 134 chu+~, cho ta^'t ca? nhu~ng chu+~ co' da^'u trong tie^'ng Vie^.t cu?a mi`nh. Sa'u mu+o+i ba?y chu+~ thu+o+`ng va` sa'u mu+o+i ba?y chu+~ hoa . Nho+` ca'i flexibility cu?a macro design, ma` to^i co' the^? la`m 134 chu+~ co' da^'u Vie^.t theo kie^?u du+o+'i dda^y:

     a a' a` a. a? a~ a a' a` a. a? a~
     a( a(' a(` a(. a(? a(~ a( a(' a(` a(. a(? a(~
     a^ a^' a^` a^. a^? a^~ a^ a^' a^` a^. a^? a^~
     e e' e` e. e? e~ e e' e` e. e? e~
     e^ e^' e^` e^. e^? e^~ e^ e^' e^` e^. e^? e^~
     i i' i` i. i? i~ i i' i` i. i? i~
     o o' o` o. o? o~ o o' o` o. o? o~
     o^ o^' o^` o^. o^? o^~ o^ o^' o^` o^. o^? o^~
     o+ o+' o+` o+. o+? o+~ o+ o+' o+` o+. o+? o+~
     u u' u` u. u? u~ u u' u` u. u? u~
     u+ u+' u+` u+. u+? u+~ u+ u+' u+` u+. u+? u+~
     y y' y` y. y? y~ y y' y` y. y? y~
     dd

     A A' A` A. A? A~ A A' A` A. A? A~
     A( A(' A(` A(. A(? A(~ A( A(' A(` A(. A(? A(~
     A^ A^' A^` A^. A^? A^~ A^ A^' A^` A^. A^? A^~
     E E' E` E. E? E~ E E' E` E. E? E~
     E^ E^' E^` E^. E^? E^~ E^ E^' E^` E^. E^? E^~
     I I' I` I. I? I~ I I' I` I. I? I~
     O O' O` O. O? O~ O O' O` O. O? O~
     O^ O^' O^` O^. O^? O^~ O^ O^' O^` O^. O^? O^~
     O+ O+' O+` O+. O+? O+~ O+ O+' O+` O+. O+? O+~
     U U' U` U. U? U~ U U' U` U. U? U~
     U+ U+' U+` U+. U+? U+~ U+ U+' U+` U+. U+? U+~
     Y Y' Y` Y. Y? Y~ Y Y' Y` Y. Y? Y~
     DD

     O+? co^.t be^n tra'i, ca'ch thu+'c input nhu+~ng chu+~ co' da^'u cho tha^'y co' pha^`n da`i do`ng va` kho' ddo.c. Tuy nhie^n cu~ng co' ca'ch gia?i quye^'t. Da`i do`ng thi` tha^.t ra kho^ng da`i do`ng dda^u vi` terminal na`o cu~ng co' nhu+~ng system hoa(.c user pf keys. Cu+' program 8 ca'i keys na`y tha`nh 8 da^'u ca^`n thie^'t. Da^'u thu+' nha^'t v cho chu+~ a( (da^'u a(). Da^'u thu+' nhi` ^ cho chu+~ a^ (da^'u a^) va` chu+~ dd (da^'u dd). Da^'u thu+' ba, cho chu+~ o+ va` chu+~ u+ ( da^'u u+). Co`n na(m da^'u co`n la.i la` ' (sa('c), ` (huye^`n), . (na(.ng), ? (ho?i), va` ~ (nga~). Nhu+ va^.y khi input nhu+~ng da^'u na`y, input operator cu~ng chi? ca^`n go~ mo^.t stroke ma` tho^i . Co`n kho' ddo.c thi` chi.u .

     O+? co^.t be^n pha?i, output cu?a nhu+~ng chu+~ co' da^'u na`y cu~ng pha?i tra?i qua va`i "giai ddoa.n kha^?n tru+o+ng" mo+'i co' ddu+o+.c ca'i nhi`n de^~ coi nhu+ va^.y . Tru+o+'c he^'t pha?i convert nhu+~ng input cu?a nhu+~ng chu+~ co' da^'u o+? co^.t be^n tra'i tha`nh nhu+~ng troff string dde^? troff bie^'t lu'c na`o thi` process chu+~ na`o+ da^'u na`o . Ke^' ddo', troff chi'nh no' cu~ng pha?i bi. modified tha`nh ditroff, device independent troff. Sau cu`ng, output cu?a device independent troff la.i ddu+o+.c mo^.t la^`n nu+~a convert tha`nh PostScript output cho thi'ch ho+.p vo+'i laser printer ma` mi`nh muo^'n xa`i: Apple LaserWriter, QMS..., cha(?ng ha.n. PostScript language ? La.i pha?i ho.c the^m, no'i the^m mo^.t thu+' computer language nu+~a ? Da`i do`ng, lo^i tho^i qua' ro^`i . Tho^i, cho to^i xin ngu+`ng la.i no+i dda^y .

     Qua pha^`n tre^n, ca'c ba.n dda~ hie^?u the^' na`o la` phu+o+ng pha'p "la`m dde.p" cu?a to^i . To^i ra^'t mong mo?i ddu+o+.c tie^'p nha^.n nhu+~ng y' kie^'n xa^y du+.ng cu?a ta^'t ca? ca'c ba.n. Va` to^i cu~ng ra^'t mong mo?i ddu+o+.c ti`m hie^?u the^m nhu+~ng phu+o+ng pha'p "la`m dde.p" cu?a ca'c ba.n trong nghe^`. La`m dde.p cho chu+~ Vie^.t, theo to^i va^~n la` nhie^.m vu. chung cu?a ta^'t ca? mo.i ngu+o+`i da^n Vie^.t. Bie^'t dda^u co' mo^.t nga`y na`o ddo' chu'ng ta se~ ti`m ddu+o+.c mo^.t phu+o+ng pha'p ma` sau na`y co' the^? go.i la` mo^.t standard, mo^.t "mu`a xua^n" cho electronic typesetting chu+~ Vie^.t va^.y.

Ba`i Tru+o+'c Trang Chi'nh Ba`i Ke^' Tie^'p