¸îÇØÀü, ÃʵîÇлý Á¶Ä« »ýÀÏ ¼±¹°·Î »çÁÖ·Á°í ±¸ÀÔÇÑ Ã¥ "³» ¿µÈ¥ÀÌ µû¶æÇß´ø ³¯µé"À» »ïÃÌÀÎ Á¦°¡ ¸ÕÀú ¸ô·¡ Àá±ñ ÀÐ¾î ºÃ´Âµ¥, Àç¹ÌÀÖ¾ú°í, ÀÐÀº ÈÄ¿¡´Â °¨È︶Àú ÀϾ, ±× ÈĺÎÅÍ ÁÖÀΰøÀÎ ²¿¸¶ Àεð¾ð "'''ÀÛÀº³ª¹«'''"(Little Tree)¸¦ º°¸íÀ¸·Î »ç¿ëÇÏ°Ô µÇ¾ú½À´Ï´Ù. »ýÈÄ 2°³¿ùµÈ ¿ì¸® ¾Æµéµµ ÀÛÀº³ª¹«Ã³·³ ÀÚ¶ó±â¸¦ Èñ¸ÁÇϸç... [[TableOfContents]] Computer programs are fun to write, and well-written computer programs are fun to read. One of life's greatest pleasures can be the composition of a computer programm that you know will be a pleasure for other people to read, and yourself to read. - Donald E. Knuth, ''Literate Programming'' ¼­¹®¿¡¼­ == Âü¿© µ¿±â == * KTUG°¡ ¾ø¾ú´Ù¸é, TeXÀ» »ç¿ëÇÏ´Â Áñ°Å¿òÀ» ¾òÁö ¸øÇßÀ» °Ì´Ï´Ù. ´Ã ¾ðÁ¦³ª ÀÌ °÷ÀÇ °Ô½ÃÆÇ°ú faq À§Å°¸¦ ÅëÇؼ­ µµ¿òÀ» ¹Þ°í ÀÖ½À´Ï´Ù. ÀÌ Á¡¿¡ ´ëÇؼ­´Â ¾ðÁ¦³ª °¨»çÇÏ°Ô »ý°¢ÇÏ°í ÀÖÀ¸¸ç, ´õ¿í ¸¹Àº »ç¶÷µéÀÌ TeXÀ» ¾²´Â Áñ°Å¿òÀ» ¾òÀ» ¼ö ÀÖµµ·Ï Á¦°¡ ¹ÞÀº µµ¿òÀ» ³ª´­ ¼ö ÀÖÀ¸¸é ÁÁ°Ú½À´Ï´Ù. * {{{#!latex \TeX, Just For Fun }}} == TeX °ü½ÉºÐ¾ß == * PlainTeX: The TeXbook * [Literate Programming]: WEB, CWEB, CTWILL * MetaPost == Àλç == ¾È³çÇϼ¼¿ä. Àß ºÎŹµå¸³´Ï´Ù. ^^ --[Karnes] ¾È³çÇϼ¼¿ä. Á¦°¡ ÇÒ ¸»À»... Àß ºÎŹµå¸³´Ï´Ù. --[ÀÛÀº³ª¹«] ÁÁÀº ±Ûµé Àß Àаí ÀÖ½À´Ï´Ù. ÁýÀ» »ô»ôÀÌ Ã£´Ùº¸´Ï CWEB¿¡ °üÇÑ Ã¥ÀÌ ÀÖ´õ±º¿ä. ÇÁ·Î±×·¡¸Óµµ ¾Æ´Ñ Á¦°Ô ¾î° ÀÌ·± Ã¥ÀÌ... ;) TeX¿¡¸¸ °ü½ÉÀ» ±â¿ïÀÌ´ø Á¦°Ô ÁÖÀǸ¦ ȯ±â½ÃÄÑÁּż­ °¨»çÇÕ´Ï´Ù. --[Progress] °¨»çÇÕ´Ï´Ù. Á¦°¡ °Ô½ÃÆÇ¿¡ CWEB¿¡ °üÇÑ ¼Ò°³±ÛÀ» ¿Ã·ÈÀ»¶§, ´ä±Û·Î ¸¹Àº °ü½É°ú ¿ë±â(?)¸¦ ³Ö¾îÁֽŠºÐÀ¸·Î ±â¾ïÇÕ´Ï´Ù. :) Àú ¿ª½Ã Progress´ÔÀÇ Ã¥À̾߱â([Progress/Ã¥À̾߱â]) ÅëÇؼ­ ¿©·¯°¡Áö À¯ÀÍÇÏ°í Àç¹ÌÀÖ´Â Á¤º¸¸¦ ¾ò°í ÀÖ½À´Ï´Ù. ±×Àú Ãë¹Ì¿Í ÇÁ·Î±×·¥¿¡ ´ëÇÑ Ãø¸éÀ¸·Î¸¸ TeXÀ» ¹Ù¶óº¸´ø Á¦ ½Ã°¢À» º¸´Ù ³ÐÇôÁּ̽À´Ï´Ù. TeXÀ¸·Î Ã¥À» ¸¸µå½Ã´Â °Í¿¡ °ü½ÉÀÌ ¸¹À¸½Å °Í °°¾Æ¼­ ÇÑ°¡Áö ¼Ò°³µå¸³´Ï´Ù. KnuthÀÇ Ã¥ Áß¿¡ ''The Stanford GraphBase'' (http://www-cs-faculty.stanford.edu/~knuth/sgb.html) ¶ó´Â ¸Å¿ì Àç¹ÌÀִ åÀÌ ÀÖ½À´Ï´Ù. ÇÁ·Î±×·¡¹Ö¿¡ °ü·ÃµÈ Ã¥ÀÌ¶ó ³»¿ë¿¡´Â Å« °ü½ÉÀÌ ¾øÀ¸½Ã°ÚÁö¸¸, ÀÌ Ã¥Àº ¿À·ÎÁö CWEB°ú CWEBÀ̳ª WEB ÇÁ·Î±×·¥ÀÇ mini-indexµéÀ» »ý¼ºÇØ ÁÖ´Â CTWILL À̶ó´Â µÎ °¡Áö ÇÁ·Î±×·¥µé¸¸À¸·Î ¸¸µé¾îÁø Ã¥ÀÔ´Ï´Ù. ¹°·Ð, TeXÀº ±âº»ÀÔ´Ï´Ù. :) --[ÀÛÀº³ª¹«] ¾È³çÇϼ¼¿ä. LiterateProgramming ºÐ¾ß¸¦ ³ÐÇôÁּż­ °¨»çÇÕ´Ï´Ù. Àü Çö¾÷¿¡¼­ C¾ð¾î·Î ÇÁ·Î±×·¡¹ÖÀ» ÁÖ·Î Çϴµ¥ ±Ã±ÝÇÑ °ÍÀÌ À־¿ä. ¿Ã·Á¼ö½Å ¿¹Á¦-¾ÆÁ÷ ÄÄÆÄÀϵµ Çغ¸Áö ¸øÇßÁö¸¸ :D -¿Í °°ÀÌ °£´ÜÇÑ °ÍÀÌ ¾Æ´Ñ ¸î¸¸¶óÀξ¿ µÇ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ¶§ CWEBÀ» ÀÌ¿ëÇÏ¸é ¼Ò½º°¡ ¿©·¯ ÆÄÀÏ-ÈçÈ÷ moduleÀ̶ó°í ÇÏ´Â-·Î ³ª¿Í make°¡ °¡´ÉÇÑÁö¿ä. Áï ¿©·¯ µð·ºÅ丮¿Í ¿©·¯ ÆÄÀÏ(*.c. *.h), Makefile·Î ÇϳªÀÇ tex.webÆÄÀÏ·Î °¡´ÉÇÑ°ÇÁö¿ä. ¹«Ã´ °øºÎÇغ¸°í ½Í±º¿ä. ¾Æ Á÷¶òÀÌ °øºÎÇÑ´Ù´Â °Ç Á¤¸» Èûµç°Í °°½À´Ï´Ù. -[hermian] ¾È³çÇϼ¼¿ä. ¹Ý°©½À´Ï´Ù. cweb ÇÁ·Î±×·¡¹Ö¿¡¼­´Â ¸»¾¸ÇϽŠ¸ðµç °ÍÀÌ °¡´ÉÇÕ´Ï´Ù. Áï ÇϳªÀÇ .w ÆÄÀÏ¿¡¼­ ¿©·¯ °³ÀÇ .c ¿Í .h ÆÄÀÏÀ» ¸¸µé¾î ³¾ ¼öµµ ÀÖ°í, °¢°¢ÀÇ .c°ú .h ÆÄÀÏ¿¡ ÇØ´çÇÏ´Â µ¶¸³ÀûÀÎ .w ÆÄÀÏÀ» ¸¸µé ¼öµµ ÀÖ½À´Ï´Ù. ¿¹¸¦µé¾î foo.w ÆÄÀÏÀ» ¸¸µé°í "ctangle foo"¶ó°í Çϸé foo.c ´Â ¹°·Ð foo.h ½ÉÁö¾î´Â bar.c, bar.hµµ ¸¸µé¾î ³¾ ¼ö ÀÖ½À´Ï´Ù. ¿ÀÁ÷ ÇϳªÀÇ foo.w ÆÄÀÏ¿¡¼­ ¸»ÀÌÁÒ. ÇÏÁö¸¸ ±×·¸°Ô ¸ðµç ÆÄÀÏÀ» ÇϳªÀÇ .w·Î ¸¸µå´Â °æ¿ì´Â µå¹°°í, ´ë°³ foo.w ¿¡¼­´Â foo.c¿Í foo.h¸¦ ¾òÀ» ¼ö ÀÖµµ·Ï ÇÁ·Î±×·¡¹Ö ÇÕ´Ï´Ù. ¾îÂîµÆµç ¸ðµç °æ¿ì¿¡ makefileÀ» ÅëÇؼ­ Çѹ濡 ³¡³ªÁö¸¸¿ä. º¸´Ù ±¸Ã¼ÀûÀÎ ¿¹Á¦´Â cweb ¼Ò½º(cweb.tar.gz)¸¦ »ìÆ캸½Ã°Å³ª(cweb ½Ã½ºÅÛ ÀÚüµµ cwebÀ¸·Î ÇÁ·Î±×·¡¹Ö µÇ¾îÀÖ½À´Ï´Ù.) ÃßõÇØ µå¸®´Â °ÍÀº Á¤¸» Àç¹ÌÀִ å, The Stanford GraphBase(sgb.tar.gz)À» ´Ù¿î ¹ÞÀ¸¼Å¼­ ¼³Ä¡ÇØ º¸½Ã¸é °¨ÀÌ ¿É´Ï´Ù. ½Å±âÇϸ鼭µµ ¸Å·ÂÀûÀÎ °ÍÀº µð¹ö±ë ÇÒ¶§´Â C ÆÄÀÏÀ» º¼ ÇÊ¿ä°¡ ¾ø´Ù´Â °ÍÀÔ´Ï´Ù. µð¹ö°Å(gdb)¿¡¼­ ÇØ´ç ¼Ò½º·Î .w ÆÄÀÏÀ» º¸¿©Áֱ⠶§¹®ÀÔ´Ï´Ù. ¾î¼­ cweb ÇÁ·Î±×·¡¹ÖÀÇ ¼¼°è·Î ¿À¼¼¿ä. Àúµµ Á÷µùÀÔ´Ï´Ù¸¸ ´Ù¸¥ °øºÎÇÏ´Â °ÍÀº Èûµé¾îµµ cweb ÇÁ·Î±×·¡¹Ö ÇÏ´Â °ÍÀº ¾È Èûµì´Ï´Ù. ¤¾¤¾¤¾ ´õ±¸³ª ±èµµÇö´Ô²²¼­ cwebÀÇ ÇѱÛÈ­ÀÇ Å« °É¸²µ¹µµ ¸»²ûÀÌ ÇØ°áÇØ Áּ̽À´Ï´Ù. ¾îÂ °¨»çÇÑÁö ¸ð¸£°Ú½À´Ï´Ù. --[ÀÛÀº³ª¹«] ´äº¯ °¨»çµå¸³´Ï´Ù. ´Ù¸¥ ¿©·¯°¡Áö Á» Áú¹® µå¸±°Ô À־¿ä. ÄÚµù ȯ°æ µîµî -Á» ±ÍÂú°Ô ÇÒÁöµµ ¸ð¸¨´Ï´Ù.- Ȥ °¡´ÉÇÏ´Ù¸é À̸ÞÀÏÀ» ¾Ë·Á ÁÖ½Ã¸é ¾ÈµÉ±î¿ä. Ãʸ鿡 ³Ê¹« ½Ç·Ê´Â ¾Æ´ÒÁö... °¡´ÉÇϽôٸé Á¦ À̸ÞÀÏ·Î ¸ÞÀÏ ÇÑÅë º¸³» ÁÖ½Ã¸é °¨»çÇÏ°Ú½À´Ï´Ù. --[hermian] TeXbook Àб⸦ Àß ±¸µ¶ÇÏ°í ÀÖ½À´Ï´Ù. ¸Å¿ì ÈǸ¢ÇÑ ³»¿ëÀε¥ ºí·Î±× Çü½ÄÀ̳ª ȨÆäÀÌÁö¿¡ µþ¸° º°µµÀÇ ÆäÀÌÁö·Î ¸¸µé¾îÁÖ½Ã¸é ¾î¶³±î¿ä? ¸¸¾à ±¦ÂúÀ¸½Ã´Ù¸é ÆäÀÌÁö¸¦ Á¦°¡ ´Ù½Ã ¹è¿­Çص帮°Ú½À´Ï´Ù. -- [Karnes] [[DateTime(2006-03-18T03:57:06)]] ±×Àú Æ´³¯ ¶§¸¶´Ù Àаí, Àç¹ÌÀÖ¾ú°Å³ª ¾Ë¾Æ µÑ¸¸ÇÑ °ÍµéÀ» ±â·ÏÇØ µÎ¾ú´Ù°¡, ÀÌ °÷¿¡ ¿Å±â°í Àִµ¥, °£È¤ ÁÖ°üÀûÀÎ ´À³¦À» ÀûÀ» ¶§µµ À־ º°µµÀÇ ÆäÀÌÁö·Î ÇÒ ÇÊ¿ä±îÁö ÀÖÀ»±î ÇÏ´Â »ý°¢ÀÌ ÀÖ½À´Ï´Ù. º°µµÀÇ ÆäÀÌÁö°¡ µÈ´Ù¸é, º¸´Ù °´°üÀûÀÌ°í Á¤È®ÇÑ »ç½ÇÀ» Àû¾î¾ß ÇÏ´Â ºÎ´ãÀÌ ÀÖÁö ¾Ê³ª ÇÕ´Ï´Ù. ±×·¸´Ù°í Á¦°¡ ±×µ¿¾È °ÅÁþ¸»À» ÀûÀº °ÍÀº ¾Æ´Õ´Ï´Ù. º»ÀÇ ¾Æ´Ï°Ô Ã¥ ³»¿ëÀ» Á¤È®ÇÏ°Ô ÀÌÇØÇÏÁö ¸øÇؼ­ Ʋ¸° ¸»À» ÀûÀ» ¼ö´Â ÀÖ°ÚÁö¸¸¿ä. ¤¾¤¾¤¾... Æò¼Ò¿¡ [Karnes]´ÔÀÇ ºí·Î±×¸¦ ºÎ·¯¿î ½Ã¼±À¸·Î Áñ°Üº¸°í ÀÖ½À´Ï´Ù. ±×Á¤µµ±îÁö´Â ¾Æ´Ï´õ¶óµµ, ¸»¾¸ÇϽŴë·Î ÆäÀÌÁö¸¦ ´Ù½Ã ¹è¿­ÇØ Áֽô ¼ö°í¸¦ ÇØÁֽøé, °ÅÁþ¸»À» ¾ÊÇÒ ¼ö ÀÖµµ·Ï ¿­½ÉÈ÷ ³ë·ÂÇÏ°Ú½À´Ï´Ù. °¨»çÇÕ´Ï´Ù. --[ÀÛÀº³ª¹«] == Àо ¸¸ÇÑ Ã¥µé == (La)TeX °ü·Ã ¼­ÀûµéÀ» Á¦¿ÜÇÏ°í, ÇÁ·Î±×·¡¹Ö °ü·Ã ¼­Àûµµ Á¦¿ÜÇÏ°í ... * ''³ª´Â ¿Ö ³Ê°¡ ¾Æ´Ï°í ³ªÀΰ¡'', ·ù½ÃÈ­ ¿«À½ (°¨µ¿ÀûÀÎ Àεð¾ð ÃßÀåµéÀÇ ¿¬¼³ ¸ðÀ½) * ''Æ丣¸¶ÀÇ ¸¶Áö¸· Á¤¸®'', »çÀÌ¸Õ½Ì ÁöÀ½, ¹Úº´Ã¶ ¿Å±è (ÃÖ°íÀÇ ¼öÇÐ ±³¾ç¼­Àû) * ''¿ÀÁ÷ ¸ð¸¦ »Ó'', Çö°¢ ¿«À½ (¼þ»ê ´ë¼±»çÀÇ ¾Ëµí ¸ð¸¦ µíÇÑ °¡¸£Ä§) * ''Çй®ÀÇ Áñ°Å¿ò'', È÷·Î³ªÄ« ÇìÀ̽ºÄÉ ÁöÀ½, ¹æ½Â¾ç ¿Å±è (Æò¹üÇÑ »ç¶÷ÀÇ ÇÊÁî¸Þ´Þ Ÿ±â) * ''Ƽº£Æ®ÀÇ ½Åºñ¿Í ¸í»ê'', ±è±ÔÇö ÁöÀ½ (ƼºªÀ» °¡º¸°íÀÚ ´ÙÁüÇÏ°Ô µÊ) * ''Master Keaton 1~18'', ¿ì¶ó»ç¿Í ³ª¿ÀÅ° ÁöÀ½ (Àΰ£ÀûÀÎ ¸éÀÌ µ¸º¸ÀÌ´Â º¸ÇèÁ¶»ç¿ø, ŽÁ¤) * ''ü °Ô¹Ù¶ó ÆòÀü'', Àå ÄÚ¸£¹Ì¿¡ ÁöÀ½, ±è¹Ì¼± ¿Å±è ("¿ì¸®¸ðµÎ ¸®¾ó¸®½ºÆ®°¡ µÇÀÚ. ±×·¯³ª °¡½¿¼Ó¿¡ ºÒ°¡´ÉÇÑ ²ÞÀ» °£Á÷ÇÏÀÚ!") * ''¾ÆÀν´Å¸ÀΰúÀÇ µÎ³ú°ÔÀÓ'', ³ª´ëÀÏ ÁöÀ½ (Á¦¸ñÀº À¯Ä¡ÇÏÁö¸¸, »ó´ë¼ºÀÌ·ÐÀ» ½±°Ô ¼³¸íÇÔ) * ''»ç¶÷¾Æ ¾Æ, »ç¶÷¾Æ!'', ´ÙÀÌÇã¿ìÀ× ÁöÀ½, ½Å¿µº¹ ¿Å±è (Áß±¹, »ç¶÷, ÀýÁ¦, »ç¶û ...) * ''ÇึÀÇ ±Þ¼Ò'', Á¶³²Ã¶ ÁöÀ½ (¿ì¸®³ª¶ó ¹ÙµÏÃ¥ÀÇ °íÀü) == The TeXbook Àбâ == === [[Date(2006-03-04T11:27:17)]] === * '''9~11ÂÊ''': plain TeX¿¡´Â 900¿©°³ÀÇ control sequence(cs)°¡ ÀÖ´Ù°í ÇÕ´Ï´Ù. ±× Áß 300¿©°³´Â ''primitive''ÀÌ°í, ³ª¸ÓÁö 600¿©°³´Â macro¶ó°í ÇÕ´Ï´Ù. primitive´Â ´õÀÌ»ó Àü°³ ÇÏ ¼ö ¾ø´Â ÃÖ¼ÒÀÇ ½ÇÇà ´ÜÀ§ csÀÌ°í, macro´Â primitive ȤÀº ´Ù¸¥ ¸ÅÅ©·Î µé·Î ±¸¼ºµÈ cs¶ó³×¿ä. ±×·¸´Ù¸é, ÁÖ¾îÁø cs°¡ primitiveÀÎÁö macroÀÎÁö ¾î¶»°Ô ±¸ºÐÇÒ ¼ö ÀÖÀ»±î¿ä? Knuth´Â µÎ°¡Áö ±¸ºÐ ¹æ¹ýÀ» ±Í¶äÇØÁÝ´Ï´Ù. ù¹ø° ¹æ¹ýÀº ±× Ã¥ÀÇ À妽ºÁß cs¸¦ ³ª¿­ÇØ ³õÀº °÷À» º¸¸é '*'°¡ ºÙÀº cs°¡ Àִµ¥, ¹Ù·Î ±×°ÍµéÀÌ primitive¶ó°í Çϳ׿ä.(°¡Àå °£´ÜÇÑ ¹æ¹ýÀÌÁö¸¸ Ã¥ ±¸ÀÔ¿¡ µ·ÀÌ µç´Ù´Â ´ÜÁ¡ÀÌ ÀÖ½À´Ï´Ù.) µÎ¹ø° ¹æ¹ýÀÌ ±×·²µíÇѵ¥, \show¶ó´Â primitive·Î ÆǺ°ÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù. ¿¹¸¦µé¾î TeXÀ» ½ÇÇà½ÃÅ°°í \show\thinspace¶ó°í ÀÔ·ÂÇϸé \thinspace´Â macro¶ó´Â Ç¥½Ã¿Í ±×°ÍÀÇ Á¤ÀÇ°¡ ÁÖ·ç·è ³ª¿É´Ï´Ù. (Àç¹ÌÀÖ½À´Ï´Ù.) * '''207ÂÊ''': Á¦20Àå(Definitions)¸¦ °øºÎÇÏ´Ù°¡ ¿ä»óÇÑ cs¸¦ Çϳª ¹ß°ßÇß½À´Ï´Ù. \futurelet. µµ´ëü ÀÌ°ÍÀ» ¾îµð¿¡ »ç¿ëÇØ¾ß Àß »ç¿ëÇß´Ù°í ¼Ò¹®ÀÌ ³ª´ÂÁö ¸ð¸£°Ú½À´Ï´Ù. "¹Ì·¡\let"(?) µµ´ëü ÀÌ·± primitive¸¦ ¿Ö ¸¸µé¾úÀ»±î¿ä? 207ÂÊ Áß°£¿¡ ÀÌ csÀÇ ¼³¸íÀÌ Àִµ¥, "dangerous bend" ±âÈ£°¡ µÎ °³³ª ºÙ¾îÀÖ½À´Ï´Ù. {{{#!latex \font\manual=manfnt \manual\char127\manual\char127 }}} ¾ðÁ¨°¡´Â ÀÌÇØÇÒ ³¯ÀÌ ¿À°ÚÁÒ. "\futurelet\cs"´Â "\let\cs="À̶û °°´Ù°í Çϴµ¥, ±×·¸´Ù¸é ¹®¹ýÀº ÀÌÇØ°¡ °¡´Âµ¥, Àǹ̰¡ ¿µ ¿Í´êÁö ¾Ê³×¿ä. === [[Date(2006-03-05T05:15:06)]] === * '''208ÂÊ''': "For best result, ''always put a blank space after numeric constant;''" \count ·¹Áö½ºÅÍ¿Í °°Àº ¼ýÀÚ »ó¼ö µÚ¿¡ ¹Ýµå½Ã °ø¹éÀ» Çϳª µÎ¶ó´Â °ÍÀε¥, {{{#!vim tex \def\statement{\ifnum\balance=0 \fullypaid \else\ifnum\balance>0 \overpaid \else\underpaid \fi \fi} }}} À§ÀÇ ¿¹¿¡¼­ ù¹ø°ÁÙ 0°ú \fullypaid »çÀÌÀÇ °ø¹éÀÌ ¸Å¿ì Áß¿äÇÏ´Ù°í ÇÕ´Ï´Ù. ¸¸¾à {{{ ...=0\fullypaid... }}} ó·³ ÇÑ´Ù¸é Àü°³µÇÁö ¾Ê¾Æµµ µÉ \fullypaid°¡ Àü°³µÇ±â ¶§¹®À̶ó³×¿ä. Áï °á°ú¿¡´Â Å« ¿µÇâÀ» ¹ÌÄ¡Áö ¾ÊÁö¸¸, ¾µµ¥ ¾ø´Â Àü°³¸¦ ÇϹǷΠ½ÇÇà½Ã°£ÀÌ ´À·ÁÁ®¼­ ºñÈ¿À²ÀûÀ̶ó°í ÇÕ´Ï´Ù. (°£È¤, ±¦ÇÑ Àü°³·Î ¿¡·¯°¡ ¹ß»ýÇϱ⵵ ÇÕ´Ï´Ù.) ¼ýÀÚ »ó¼ö µÚ¿¡ °ø¹éÀ» ³ÖÀ½À¸·Î TeXÀ¸·Î ÇÏ¿©±Ý ¿©±â±îÁö°¡ ¼ýÀÚ »ó¼ö¶ó°í È®½ÇÈ÷ ¸ø¹Ú¾ÆµÑ ¼ö ÀÖ½À´Ï´Ù. ¸¶Áö¸· KnuthÀÇ ¸»ÀÌ Àç¹ÌÀÖ½À´Ï´Ù. ÀÚ½ÅÀº µ¶ÀÚ¿¡°Ô ¹Ýµå½Ã ¼ýÀÚ »ó¼ö µÚ¿¡ °ø¹éÀ» ³ÖÀ¸¶ó°í Çϸ鼭, Á¤ÀÛ º»ÀÎÀº °¡²û °ø¹éÀ» ³ÖÁö ¾Ê´Â´ä´Ï´Ù. ±× ÀÌÀ¯ÀÎÁï "''because extra spaces do look funny in the file; aesthetics are more important than efficiency''" Knuth, ÀÌ ÇҾƹöÁö Àç¹ÌÀÖ´Â ºÐÀÓ¿¡ Ʋ¸²¾ø½À´Ï´Ù. :)) === [[Date(2006-03-09T15:07:34)]] === * '''82ÂÊ''': If you understand boxes and glues, you're ready to learn the \rlap and \llap macros of plain TeX; these names are abbreviations for "right overlap" and "left overlap" Æò¼Ò¿¡ \rlap°ú \llap ¸ÅÅ©·Î¸¦ »ç¿ëÇϸ鼭 Âü Àç¹ÌÀÖ´Â ¸ÅÅ©·Î±¸³ª ÇÏ°í »ý°¢Çߴµ¥, ¸¶Ä§ ±×°Íµé¿¡ ´ëÇÑ ³»¿ëÀÌ Àֳ׿ä. \rlapÀ» ±¸ÇöÇϱâ À§Çؼ­ À§¿¡ ¼³¸íÇÑ Àǹ̿¡ Ãæ½ÇÈ÷ ÇÏ¿© Á¶±Ý¸¸ »ý°¢Çϸé, {{{#!vim tex \def\rlap#1{{\setbox0=\hbox{#1}\copy0\kern-\wd0}} }}} À§¿Í °°Àº Á¤ÀǸ¦ ¾òÀ» ¼ö Àִµ¥, »ç½ÇÀº ÀÌ·± º¹ÀâÇÑ °è»êÀº ÇÊ¿ä ¾ø´Ù°í ÇÕ´Ï´Ù. {{{#!vim tex \def\rlap#1{\hbox to 0pt{#1\hss}} }}} ¾Æ¸§´äÁö ¾Ê½À´Ï±î? À§ Á¤ÀǸ¦ º¸°í, Àá½Ã À½¹ÌÇÒ ½Ã°£À» °®´Â °Íµµ ±¦ÂúÀ» µí ÇÕ´Ï´Ù. ±×·¸´Ù¸é, \llapÀº ¾î¶»°Ô Á¤ÀÇ ÇÏ¸é µÉ±î¿ä? {{{#!vim tex \def\llap#1{\hbox to 0pt{\hss#1}} }}} === [[Date(2006-03-11T10:47:16)]] === * '''225ÂÊ''': TeX ·Î°í·Î µµ¹è¸¦ ÇÑ Àç¹ÌÀÖ´Â ÅؽºÃÄ(TeXture)°¡ ÀÖ½À´Ï´Ù. {{{#!latex $$\hbox to 4.5in{\cleaders \vbox to .5in{\cleaders\hbox{\TeX}\vfil}\hfil}$$ }}} µµ¹èÇÏ´Â ¹æ¹ýÀº ¾Æ·¡¿Í °°½À´Ï´Ù. {{{#!vim tex $$\hbox to 4.5in{\cleaders \vbox to .5in{\cleaders\hbox{\TeX}\vfil}\hfil}$$ }}} Âü °£´ÜÇÕ´Ï´Ù! ´Ü ÇÑ ÁÙÀÇ º®Áö·Î À§¿Í °°Àº ¸ÚÁø µµ¹è¸¦ ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ°ÍÀÌ TeXÀÇ ÈûÀÌ°í, ¿ì¸®µéÀÌ TeXÀ» »ç¿ëÇÏ´Â ÀÌÀ¯°¡ ¾Æ´Ñ°¡ ÇÕ´Ï´Ù. === [[Date(2006-03-14T14:34:10)]] === * '''102ÂÊ''': '\hangindent=' ¿Í '\hangafter=' plain TeX¿¡¼­´Â ±²ÀåÈ÷ ¸¹ÀÌ »ç¿ëµÇ´Â control sequence µé ÀÔ´Ï´Ù. x¿Í nÀ» °¢°¢ \hangindent¿Í \hangafterÀÇ °ªÀ̶ó°í ÇÏ°í, h¸¦ \hsizeÀÇ °ªÀ̶ó°í ÇÏÀÚ. ±×¶§, n >= 0À̸é, hanging µé¿©¾²±â´Â ±Û ¹®´ÜÀÇ n+1, n+2, ... ¹ø° ÁÙ¿¡¼­ ³ªÅ¸³ª°í, n<0À̸é, 1, 2, ... |n| ¿¡¼­ ³ªÅ¸³³´Ï´Ù. Hanging µé¿©¾²±â¶õ °¢ ÁÙÀÇ ÆøÀÌ ÀϹÝÀûÀÎ ÆøÀÎ h°¡ ¾Æ´Ï¶ó h-|x| ÀÎ °ÍÀ» ¶æÇÕ´Ï´Ù; ¸¸ÀÏ x>=0À̸é, °¢ ÁÙµéÀº ¿ÞÂÊ¿¡¼­ µé¿©¾²±â°¡ µÇ°í, ±×·¸Áö ¾ÊÀ¸¸é ¿À¸¥ÂÊ µé¿©¾²±â°¡ µË´Ï´Ù. ¹«½¼ ¸»ÀÎÁö °¨ÀÌ ¿À½Ê´Ï±î? »óȲÀÌ ÀÌ·¯ÇÏ´Ï, Âü°í¼­°¡ ÇÊ¿äÇÏ°ÚÁö¿ä? {{{#!latex \hangindent=2cm \hangafter=-2 \noindent µ¿Çع°°ú ¹éµÎ»êÀÌ ¸¶¸£°í ´âµµ·Ï ÇÏ´À´ÔÀÌ º¸¿ìÇÏ»ç ¿ì¸®³ª¶ó ¸¸¼¼. ¹«±ÃÈ­ »ïõ¸® È­·Á°­»ê ´ëÇÑ»ç¶÷ ´ëÇÑÀ¸·Î ±æÀÌ º¸ÀüÇϼ¼. µ¿Çع°°ú ¹éµÎ»êÀÌ ¸¶¸£°í ´âµµ·Ï ÇÏ´À´ÔÀÌ º¸¿ìÇÏ»ç ¿ì¸®³ª¶ó ¸¸¼¼. ¹«±ÃÈ­ »ïõ¸® È­·Á°­»ê ´ëÇÑ»ç¶÷ ´ëÇÑÀ¸·Î ±æÀÌ º¸ÀüÇϼ¼. }}} ´ÙÀ½°ú °°Àº ÀÔ·ÂÀ¸·Î À§ÀÇ °á°ú¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. {{{#!vim tex \hangindent=2cm \hangafter=-2 \noindent µ¿Çع°°ú ¹éµÎ»êÀÌ ¸¶¸£°í ´âµµ·Ï ÇÏ´À´ÔÀÌ º¸¿ìÇÏ»ç ¿ì¸®³ª¶ó ¸¸¼¼. ¹«±ÃÈ­ »ïõ¸® È­·Á°­»ê ´ëÇÑ»ç¶÷ ´ëÇÑÀ¸·Î ±æÀÌ º¸ÀüÇϼ¼. µ¿Çع°°ú ¹éµÎ»êÀÌ ¸¶¸£°í ´âµµ·Ï ÇÏ´À´ÔÀÌ º¸¿ìÇÏ»ç ¿ì¸®³ª¶ó ¸¸¼¼. ¹«±ÃÈ­ »ïõ¸® È­·Á°­»ê ´ëÇÑ»ç¶÷ ´ëÇÑÀ¸·Î ±æÀÌ º¸ÀüÇϼ¼. }}} === [[Date(2006-03-17T15:16:51)]] === * '''96~97ÂÊ''': ¹®´Ü(paragraph)À» ÂÉ°³¾î ÁÙ(line)µéÀ» ¸¸µå´Â °úÁ¤¿¡´Â ¸Å¿ì Èï¹Ì·Ó°í, °úÇÐÀûÀÎ ¹æ¹ýÀÌ ¼û¾î ÀÖ½À´Ï´Ù. ±× ¹æ¹ýÀ» ÀÌÇØÇϱâ À§Çؼ­´Â ¸î°¡Áö °³³ä°ú ±× °³³ä¿¡ ÇØ´çÇÏ´Â ¿ë¾î¸¦ ¾Ë¾Æ¾ß ÇÕ´Ï´Ù. ¸ÕÀú ''penalty''¿¡ ´ëÇؼ­ ¾Ë¾Æº¸°Ú½À´Ï´Ù. ¹®´Ü¿¡¼­ ÁÙµéÀ» ¸¸µé±â À§Çؼ­ ÁٹٲÞÇÏ´Â ÁöÁ¡À» breakpoint¶ó°í ÇÕ´Ï´Ù. breakpoint¸¦ ¼±Á¤ÇÏ´Â ¹æ¹ýÀº ¹®´ÜÀ» ÁٹٲÞÇÏ¿© ¸¸µé¾îÁø ÁÙµéÀÌ ÃÖ´ëÇÑ ¿ì¸® ´«¿¡ º¸±â ÁÁÀº ÁöÁ¡À¸·Î ÇÏ´Â °ÍÀÔ´Ï´Ù. °¢ breakpointµéÀÇ È帵éÀº penalty¶ó°í ºÒ¸®´Â ¾î¶² °ªÀ» °¡Áö°í Àִµ¥, penalty´Â ±× ÁöÁ¡¿¡¼­ ÁٹٲÞÀ¸·Î Çؼ­ ¹ß»ýÇÏ´Â ¹ÌÇÐÀû ºñ¿ë(aesthetic cost)ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î ¾î¶² breakpointÀÇ penalty°¡ 100À̶ó¸é(\penalty100), ±× ÁöÁ¡¿¡¼­ ÁٹٲÞÀ¸·Î ¹ß»ýÇÏ´Â ¹ÌÇÐÀû ºñ¿ëÀÌ 100¸¸Å­ µç´Ù´Â ¸»ÀÔ´Ï´Ù. Áï penalty°¡ Å©¸é Ŭ¼ö·Ï ºñ¿ëÀÌ ¸¹À̵é¹Ç·Î, ÁٹٲÞÀÌ ÀϾ È®·üÀÌ Àû¾î Áú°ÍÀÌ°í, penalty°¡ À۾Ƽ­ À½¼ö°¡ µÈ´Ù¸é, À½¼öÀÇ penalty´Â ¾ç¼öÀÇ bonus À̹ǷÎ, ±× ÁöÁ¡¿¡¼­´Â ÁٹٲÞÀÌ ¹ß»ýÇÒ È®·üÀÌ Å©°ÚÁö¿ä. TeX¿¡¼­ÀÇ 10000À̶ó´Â ¼ýÀÚ´Â ¹«ÇѴ븦 ¶æÇÕ´Ï´Ù. ±×·¡¼­ '\penalty10000'À̶ó´Â ¶æÀº ÁٹٲÞÀÇ ºñ¿ëÀÌ ¹«ÇÑ´ë·Î µé¾î°£´Ù´Â ¼Ò¸®À̹ǷÎ, Àý´ë·Î ÁٹٲÞÀÌ ÀϾÁö ¾Ê´Â´Ù´Â ¶æÀÔ´Ï´Ù. Áï \nobreak ÀÌÁö¿ä. Á¦°¡ ÀÌÇØÇÏ´Â penalty´Â ÀÌ·¸½À´Ï´Ù. === [[Date(2006-03-18T16:33:08)]] === * '''28~29, 96~97ÂÊ''': penalty ¼³¸í¿¡¼­ breakpointÀÇ ¼³Á¤Àº ¸¸µé¾îÁø ÁÙµéÀÌ ÃÖ´ëÇÑ ¿ì¸® ´«¿¡ º¸±âÁÁ°Ô ÇÏ´Â °÷À¸·Î ¼³Á¤µÈ´Ù°í Çß½À´Ï´Ù. ±×·¸´Ù¸é, ¾î¶² ÁÙµéÀÌ º¸±â ÁÁÀº °ÍÀϱî¿ä? ±×¸®°í ±× ±âÁØÀº ¹«¾ùÀϱî¿ä? TeXÀº ÀÌ¿¡ ´ëÇÑ ¼öÇÐÀû ±âÁØÀ¸·Î badness¶ó´Â °ÍÀ» µµÀÔÇß½À´Ï´Ù. °¢°¢ÀÇ ÁÙÀº badness¶ó´Â °ªÀ» °¡Áö°í ÀÖ½À´Ï´Ù. badness´Â ÁÖ¾îÁø ÁÙ¿¡¼­ ´Ü¾îµé »çÀÌÀÇ °£°ÝÀ» ¼öÄ¡È­ÇÑ °ªÀÔ´Ï´Ù. badness ±»ÀÌ ¿ì¸®¸»·Î ÇÏÀÚ¸é '³ª»ÝÁ¤µµ'Âë µÇ¹Ç·Î, ±× °ªÀÌ ÀÛÀ» ¼ö·Ï ÁÁÀº °ÍÀÌ°ÚÁö¿ä. ±×·¡¼­ ¾î¶² ÁÙÀÇ badness°¡ 0À϶§, ±× ÁÙÀÇ ´Ü¾îµé »çÀÌÀÇ °£°ÝÀÌ ¸Å¿ì ÀûÀýÇÏ¿© ¿ì¸® ´«¿¡ ÆÛÆåÆ®ÇÏ°Ô º¸ÀÔ´Ï´Ù. µû¶ó¼­ badness´Â 0°ú ¹«ÇÑ´ëÀÎ 10000 »çÀÌÀÇ °ªÀ» °®½À´Ï´Ù. badness¸¦ ±¸ÇÏ´Â ½ÄÀº ´ë·« min(100r^3, 10000)ÀÔ´Ï´Ù. ¿©±â¼­ rÀº ¾î¶² ºñÀ²(ratio)À» ³ªÅ¸³»´Âµ¥, ÀÚ¼¼ÇÑ ¼³¸íÀº »ý·«ÇÏ°Ú½À´Ï´Ù. (ÀÚ¼¼ÇÑ ¼ö½Äº¸´Ù´Â badnessÀÇ Àǹ̸¦ ÆľÇÇÏ´Â °ÍÀÌ ´õ Áß¿äÇÕ´Ï´Ù.) Plain TeX¿¡¼­´Â °¢ ÁÙÀÇ badness°¡ 200À» ³Ñ¾î¼­´Â ¾ÈµÇµµ·Ï Á¤ÇÏ°í ÀÖ½À´Ï´Ù. ÀÌ ¸»Àº Plain TeXÀº Àڱ⠱âÁØ¿¡¼­´Â badness°¡ 200À» ³ÑÀ¸¸é ±× ÁÙ¿¡¼­ ´Ü¾îµé »çÀÌÀÇ °£°ÝÀÌ ³Ê¹« Á¼°Å³ª, ³Ð¾î¼­ ¾È ¿¹»µº¸À̹ǷÎ, badness°¡ 200ÀÌ µÉ ¶§ ±îÁö´Â Âü¾ÆÁÙ ¼ö ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù. badness°¡ 200À» ³Ñ´Â ¼ø°£ Plain TeXÀº ±× ÁÙÀÇ ´Ü¾î »çÀÌÀÇ °£°ÝµéÀ» Â÷¸¶ ´«¶ß°í º¼ ¼ö ¾øÀ» Á¤µµ¿©¼­, ´õÀÌ»ó ÂüÁö ¸øÇÏ°í, ¸ø»ý±ä ÁÙÀ̶ó°í ºÒÆòÀ» ÇÕ´Ï´Ù. Plain TeXÀº "³ª´Â badness°¡ 200±îÁö ÂüÀ» ¼ö ÀÖ¾î."´Â Ç¥½Ã·Î \tolerance=200 À̶ó°í Á¤ÇÕ´Ï´Ù. primitive \toleranceÀÇ ¶æÀ» ¾Æ½Ã°ÚÁÒ? ÇÑ°¡Áö ´õ ¾Ë¾Æ µÎ¾î¾ß ÇÒ °ÍÀº ¿µ¾î¿¡´Â hyphenationÀ» ÀÌ¿ëÇؼ­ ¿µ¾î ´Ü¾î°¡ µÎ ÁÙ¿¡ °ÉÃÄ ³ª¿Ã °æ¿ì, ±× ´Ü¾î¸¦ ÂÉ°¶ ¼ö ÀÖ½À´Ï´Ù. Plain TeXÀº ÀÏ´Ü hyphenationÀ» ÀÌ¿ëÇÏÁö ¾Ê°í, ÁÙÀ» ¸¸µé ¼ö ÀÖ´ÂÁö ¸ÕÀú üũÇÕ´Ï´Ù. ÀÌó·³ ¸ÕÀú È®ÀÎ ÇÑ´Ù´Â Àǹ̿¡¼­ Á¢µÎ¾î 'pre'¸¦ »ç¿ëÇÏ¿©, À̶§ÀÇ badnessÀÇ °ªÀ» \pretolerance·Î ¼³Á¤ÇÕ´Ï´Ù. Plain TeXÀº \pretolerance=100À¸·Î Á¤ÇÕ´Ï´Ù. Áï, ¸ÕÀú badness 100À¸·Î Á¤ÇÏ°í ¿µ¾î ´Ü¾î¸¦ ÂÉ°³´Â ÀÏ ¾øÀÌ ÁÙµéÀ» ¸¸µé¼ö ÀÖ´ÂÁö üũÇÏ°í, ¾ÈµÈ´Ù¸é hyphenationÀ» ÀÌ¿ëÇϸ鼭 badness¸¦ 200À¸·Î ÇÏ°í ´Ù½Ã È®ÀÎÇÕ´Ï´Ù. ---- CategoryCategory