#action Blog Add Blog ##Blog {{{#!blog ÀÛÀº³ª¹« 2006-03-25T06:14:27 expandafter(2): ½Ã°£Â÷ °ø°Ý ¸í·É¾î \expandafter´Â ±²ÀåÈ÷ Àç¹ÌÀÖÀ¸¸é¼­µµ º¸±âº¸´Ù´Â ±×´ÙÁö ¾î·Á¿î ¸í·É¾î°¡ ¾Æ´Ï¾ú½À´Ï´Ù. ¹°·Ð TeXbook¿¡ ³ª¿ÍÀÖ´Â ¿¹Á¦´Â ½±Áö¸¸Àº ¾Ê¾Æ¼­ ÀÌ ¸í·É¾îÀÇ Àǹ̸¦ ¾Ë¾ÆÂ÷¸®±â ±×´ÙÁö ½±Áö¸¸Àº ¾Ê¾Ò´Âµ¥, ´ÙÇàÀÌ ¾ÆÁÖ ½±°í ÀûÀýÇÑ ¿¹Á¦¸¦ ã¾Ò½À´Ï´Ù. ¿¹Á¦ÀÇ Ãâó´Â "Getting TeXnical: Insights into TeX Macro Writing Techniques", TUGboat, Volume 11 (1990), No.3 ÀÔ´Ï´Ù. TeX ¸ÅÅ©·Î ÀÛ¼ºÇÏ´Â ±â±³(?)¸¦ ¼³¸íÇÏ´Â paperÀε¥, ¾à°£ ¾î·Á¿î ¸éÀÌ ÀÖÁö¸¸, ¸Å¿ì Àç¹ÌÀÖ½À´Ï´Ù. °ü½ÉÀÖ´Â ºÐÀº Çѹø Àо±â¸¦ ²À ±ÇÇÕ´Ï´Ù. ÀÌÇظ¦ µ½±âÀ§Çؼ­, ¹è±¸¿¡ ºñÀ¯¸¦ Çؼ­ ¸ÕÀú °³³äÀ» ¼³¸íÇϸé :) ¹è±¸¿¡ "½Ã°£Â÷ °ø°Ý" À̶ó´Â °ø°Ý ±â¼úÀÌ ÀÖÁÒ? ¼¼ÅÍ°¡ ¹è±¸ °øÀ» Å佺¸¦ ÇÏ¸é µÎ ¸íÀÇ °ø°Ý¼ö°¡ ±â´Ù¸®°í ÀÖ´Ù°¡, ù¹ø° °ø°Ý¼ö°¡ ¸¶Ä¡ ½ºÆÄÀÌÅ©¸¦ ÇÒ°Í Ã³·³ ÇÏ´Ù°¡ µÎ¹ø° °ø°Ý¼ö°¡ ½ÇÁ¦·Î ½ºÆÄÀÌÅ© °ø°ÝÀ» ÇÕ´Ï´Ù. \expandafter´Â ¹Ù·Î ÀÌ ¹è±¸ÀÇ "½Ã°£Â÷ Àü°³"¿¡ ÇØ´çÇÕ´Ï´Ù. \expandafter°¡ ¼¼ÅÍ¿¡ ÇØ´çÇÏ°í ±× µÚ¿¡ µû¶ó ³ª¿À´Â µÎ°³ÀÇ ¸í·É¾î(control sequence)°¡ µÎ ¸íÀÇ °ø°Ý¼ö¿¡ ÇØ´çÇÕ´Ï´Ù. \expandafter´Â ù¹ø° ³ª¿À´Â ¸ÅÅ©·Î¸¦ Àü°³½ÃÅ°´Â °ÍÀÌ ¾Æ´Ï¶ó µÎ¹ø° ³ª¿À´Â ¸ÅÅ©·Î¸¦ Àü°³ ½ÃÅ°°í, ±× Àü°³µÈ °á°ú¸¦ ù¹ø° ¸ÅÅ©·Î°¡ ÀÌ¿ëÇÕ´Ï´Ù. ¸Å¿ì Àç¹ÌÀÖ½À´Ï´Ù. ±×·³, ¾à¼Ó´ë·Î °£´ÜÇϸ鼭µµ ÀÌÇØÇϱ⠽¬¿î ¿¹¸¦ µé¾îº¸°Ú½À´Ï´Ù. {{{ \def\letters{xyz} \def\lookatletters#1#2#3{First arg=#1, Second arg=#2, Third arg=#3 } \}}} À§¿Í °°ÀÌ \lookatletter ¸ÅÅ©·Î°¡ Á¤ÀÇ µÇ¾î ÀÖÀ»¶§, {{{ \lookatletters\letters ? ! \}}} ´Â ¾î¶»°Ô Àü°³µÉ±î¿ä? \lookatletters ÀÇ Ã¹¹ø° ÀÎÀÚ°¡ \letterÀÌ°í µÎ¹ø° ÀÎÀÚ´Â ?, ¼¼¹ø° ÀÎÀÚ´Â ! Àε¥, \letter ¸ÅÅ©·Î´Â xyz·Î Àü°³ µÇ±â ¶§¹®¿¡ {{{ First arg=xyz, Second arg=?, Third arg=! \}}} °ú °°ÀÌ Àü°³µË´Ï´Ù. ÀÌ°ÍÀº ´©±¸³ª ¾Ë¼ö ÀÖ½À´Ï´Ù. ÀÌÁ¦ \expandafter¸¦ ÀÌ¿ëÇؼ­ ½Ã°£Â÷ °ø°Ý¿¡ µé¾î°©´Ï´Ù. {{{ \expandafter\lookatletters\letters ? ! \}}} ´Â ¾î¶»°Ô Àü°³µÉ±î¿ä? ¸ÕÀú \expandafter´Â \letters¸¦ ¸ÕÀú Àü°³ ½Ãŵ´Ï´Ù. ±×·¡¼­ À§ÀÇ ¹®ÀåÀº °á±¹ ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù. {{{ \lookatletters xyz ? ! \}}} ±×·¡¼­ ÃÖÁ¾ °á°ú´Â {{{ First arg=x, Second arg=y, Third arg=z ? ! \}}} ÀÔ´Ï´Ù. Àç¹ÌÀÖÁÒ? ±×¸®°í ½±½À´Ï´Ù. }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-23T02:39:43 \expandafter (1) '''203ÂÊ''': TeXbook¿¡ \expandafterÀÇ ¼³¸íÀº ¾Æ·¡ÀÇ ¼³¸íÀÌ ÀüºÎÀÔ´Ï´Ù. ¿¹Á¦µµ ¾ø½À´Ï´Ù. ÀúÀÚ°¡ ³Ê¹«µµ ¹«½ÉÇÏ°í ¹è·Á°¡ ¾ø½À´Ï´Ù. :( * '''\expandafter'''. TeX first reads the token that comes immediately after \expandafter, without expanding it; let's call this token ''t''. Then TEX reads the token that comes after ''t'' (and possibly more tokens, if that token has an argument), replacing it by its expansion. Finally TeX puts ''t'' back in front of that expansion. Àú·¸°Ô¸¸ ¼³¸íÇسõ°í, ¿¹Á¦µµ ¾Èµé¾î ³õ¸é, Àú °°Àº ÛíìÑÀº Àú°É ¹«½¼ ¼ö·Î ÀÌÇØÇմϱî. '¼³¸¶ ¿¹Á¦°¡ ¾øÀ»±î?' ÇÏ´Â Àǽɿ¡ À妽º¸¦ ã¾Æº¸´Ï °÷°÷¿¡ \expandafter°¡ »ç¿ëµÈ ¿¹Á¦°¡ ÀÖ¾ú½À´Ï´Ù. Á¦ÀÏ ¸ÕÀú ³ª¿À´Â ¿¹Á¦´Â 40ÂÊ¿¡ ÀÖ½À´Ï´Ù. ±×°ÍÀ» º» ¼ø°£, "\expandafter °°Àº ¾î·Á¿î(?) ¸í·É¾î°¡ 40ÂÊ¿¡ ³ª¿Í?" Çß½À´Ï´Ù. ¹°·Ð ¼³¸í ¾Õ¿¡´Â µÎ °³ÀÇ dangerous bend°¡ ¾î±è¾øÀÌ ºÙ¾îÀÖ¾ú½À´Ï´Ù. °øÆ÷ÀÇ ±âÈ£°¡ ¾Æ´Ò ¼ö ¾ø½À´Ï´Ù. {{{#!latex \font\manual=manfnt \manual\char127\manual\char127 \}}} ¹Ù·Î ÀÌ Á¡ÀÌ TeXbookÀÇ ¹¦¹ÌÀÎ°Í °°½À´Ï´Ù. ÀúÀڴ åÀ» ½á³ª°¡¸é¼­ ÇÑ ÁÖÁ¦¿¡ ´ëÇؼ­ ÃÖ´ëÇÑ ÀÚ¼¼È÷ ¼³¸íÀ» Çϴµ¥, ³­À̵µ¸¦ µÎ¾î "Áö±ÝÀº ¼³¸íÀ» À§Çؼ­ ´Ù¸¥ chapter¿¡¼­ ¹è¿ì°Ô µÉ ¾î·Á¿î °ÍÀ» ¾î¿ ¼ö ¾øÀÌ »ç¿ëÇϴµ¥, Áö±ÝÀº ºÁºÁ¾ß ¸ð¸¦ °ÍÀÌ´Ù. ³ªÁß¿¡ ³× ½Ç·ÂÀÌ µÇ°Çµç ´Ù½Ã ºÁ¶ó. ±×·³ ³» ¸»À» ÀÌÇØ ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù." ¶ó°í ¸»ÇÏ´Â °Í °°¾Ò½À´Ï´Ù. ´©°¡ ±×·¨´ø°¡¿ä? "¾Æ´Â ¸¸Å­¸¸ º¸ÀδÙ"°í. Ã¥ÀÇ Ãʹݺζó°í ÇÒ ¼ö ÀÖ´Â 40ÂÊ¿¡ ³ª¿Â ³»¿ëÀ» Ãʺ¸ÀÚ°¡ ÀÐÀ»¶§¿Í TeXnicianÀÌ ÀÐÀ»¶§¿Í´Â ´Ù¸£°ÚÁÒ. ¿ÀÈ÷·Á ÀúÀڴ ģÀýÇÏ°Ôµµ ³­À̵µ¸¦ µÎ¾î Ãʺ¸ÀÚ°¡ ±¦È÷ Àо ÁÂÀýÇϰųª È¥¶õ¿¡ ºüÁö´Â °ÍÀ» »çÀü¿¡ ¿¹¹æÇÏ´Â °Í °°½À´Ï´Ù. :) Ã¥ ±¸¼ºÀÌ º¼ ¼ö·Ï ¸¶À½¿¡ µì´Ï´Ù. ÇÑ ¹ø ÀÐ°í ¸» Ã¥Àº ºÐ¸íÈ÷ ¾Æ´Õ´Ï´Ù. À̾߱Ⱑ ´Ù¸¥ °÷À¸·Î ºüÁ³½À´Ï´Ù. ºüÁø ±è¿¡ ¿À´ÃÀº ¿©±â±îÁö. :) ¸¶À½À» °¡´Ùµë°í ´ÙÀ½¿¡ °°ÀÌ \expandafter¸¦ ÀÌÇØÇØ º¸µµ·Ï ÇսôÙ. TeXbook ÀÌ°÷ Àú°÷¿¡ ³ª¿ÍÀÖ´Â \expandafter ¿¹Á¦¸¦ Àß °øºÎÇÑ ´ÙÀ½¿¡ ºË°Ú½À´Ï´Ù. ;) }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-22T07:29:04 ¸ÅÁ÷ ¸ð¸£Å¸¸£ Glue '''69~70ÂÊ''': Glue´Â ¿©·¯ boxµé ¼­·Î ºÙÀ̴µ¥ »ç¿ëÇÕ´Ï´Ù. ÇϳªÀÇ ÁÙ(line)¿¡ º¸¸é ´Ü¾îµé »çÀÌ¿¡ °£°ÝÀÌ ÀÖ½À´Ï´Ù. ÀÌ °£°ÝÀÌ ¹Ù·Î glueÀÔ´Ï´Ù. ÀÌ glue´Â ½Å±âÇÏ°Ôµµ ÁÙ¾îµé°Å³ª ´Ã¾î³¯ ¼ö À־ ´Ü¾îµé »çÀÌÀÇ °£°Ý Áï glue¸¦ Àß Á¶ÀýÇÏ¿© ÆäÀÌÁöÀÇ ¿À¸¥ÂÊ ¿©¹éÀÌ ÀÏÁ÷¼±À¸·Î º¸À̵µ·Ï ÇØÁÖÁÒ. TeXÀº ÀÛÀº ¿©·¯ °³ÀÇ ¹Ú½ºµé·Î ºÎÅÍ °¡·Î·ÎµÈ ÇÑÁÙÀÇ Ä¿´Ù¶õ ¹Ú½º¸¦ ¸¸µé ¶§, ±× ÀÛÀº ¹Ú½ºµé »çÀÌ¿¡ glue¸¦ ³Ö¾î¼­ ÀûÀýÇÑ °£°ÝÀ» À¯ÁöÇϵµ·Ï ÇØÁÝ´Ï´Ù. ¹Ù·Î ÀÌ ¹æ¹ýÀÌ ¿©·¯ °³ÀÇ ´Ü¾î¸¦ °¡Áö°í ÇÑ ÁÙÀ» ¸¸µå´Â ¹æ¹ýÀÔ´Ï´Ù. Glue´Â ¼¼°¡Áö ¼Ó¼ºÀ» °¡Áö°í ÀÖ½À´Ï´Ù: ÁÖ¾îÁø °íÀ¯ÀÇ °£°Ý(natural space), ÆØâÁ¤µµ(stretchability), ¼öÃàÁ¤µµ(shrinkability) attachment:glue1.jpg À§ ±×¸²¿¡´Â ³× °³ÀÇ ¹Ú½º¿Í ¼¼ °³ÀÇ glue°¡ ¾²¿´³×¿ä. ù¹ø° glue´Â 9¸¸Å­ÀÇ °íÀ¯ °£°ÝÀ» °¡Áö°í ÀÖ°í, 3¸¸Å­ÀÇ ÆØ⼺, 1¸¸Å­ÀÇ ¼öÃ༺À» °¡Áö°í ÀÖ½À´Ï´Ù. µÎ¹ø°´Â 9¸¸Å­ÀÇ °£°Ý, 6¸¸Å­ÀÇ ÆØ⼺, 2¸¸Å­ÀÇ ¼öÃ༺À», ¸¶Áö¸· glue´Â 12¸¸Å­ÀÇ °íÀ¯°£°ÝÀ» °¡Áö°í ÀÖ°í, ¼öÃ༺, ÆØ⼺Àº ¾ø½À´Ï´Ù. ÀÌ ¿¹¿¡¼­ ¹Ú½ºÀÇ ³Êºñ¿Í glueÀÇ ÃÑÇÕÀº 5+9+6+9+3+12+8=52ÀÔ´Ï´Ù. ÀÌ 52¸¦ °¡·Î·Î ±ä ¹Ú½ºÀÇ °íÀ¯ÀÇ ³Êºñ¶ó°í ÇÏ°í, À§¿Í °°Àº ¹Ú½ºµé°ú glueµé·Î ¸¸µé ¼ö ÀÖ´Â °¡Àå º¸±â ÁÁÀº Á¶ÇÕÀÔ´Ï´Ù. °¡Àå º¸±â ÁÁ´Ù°í ÇÏ´Ï±î ¹¹ »ý°¢³ª´Â°Í ¾øÀ¸¼¼¿ä? ±×·¸ÁÒ. ¹Ù·Î badness°¡ 0À̶ó´Â ¼Ò¸®ÀÔ´Ï´Ù. :) ±×·±µ¥, À§ÀÇ ³× °³ÀÇ ¹Ú½º¿Í ¼¼ °³ÀÇ glue·Î 58¸¸Å­ÀÇ ³ÊºñÀÇ ±ä ¹Ú½º¸¦ ¸¸µé·Á¸é ¾î¶»°Ô ÇØ¾ß ÇÒ±î¿ä? ÀÏ´Ü ÁÖ¹®Àº °íÀ¯ÀÇ ³Êºñº¸´Ù 6¸¸Å­ ±é´Ï´Ù. ¹Ú½º´Â ´Ã¾î³¯ ¼ö ÀÖ´Â °ÍÀÌ ¾Æ´Ï±â ¶§¹®¿¡ glue¸¦ ´Ã¿©¾ß Çϴµ¥, ´ÙÇàÈ÷ ÁÖ¾îÁø glueµéÀº ÆØ⼺ÀÌ Àֱ⶧¹®¿¡ glueµéÀ» 6¸¸Å­ ´Ã¿©¼­ 58À» ¸ÂÃß¸é µË´Ï´Ù. ±×·³ ¾î¶² glue¸¦ ¾ó¸¸Å­ ´ÃÀÌ¸é µÉ±î¿ä? ½±ÁÒ? ù¹ø° glue´Â 3¸¸Å­, µÎ¹ø°´Â 6¸¸Å­, ´Ã¾î³¯ ¼ö ÀÖ°í, ¼¼¹ø°´Â ´Ã¾î³¯ ¼ö ¾øÀ¸´Ï±î ±× ºñÀ²ÀÌ 3:6:0 Áï 1:2:0À̳׿ä. µû¶ó¼­ 6À» 1:2:0À¸·Î ³ª´©¸é 2:4:0ÀÌ µÇ¹Ç·Î ù¹ø° glue¸¦ 2¸¸Å­, µÎ¹ø° glue¸¦ 4¸¸Å­ ´ÃÀÌ¸é ¾Æ·¡ ±×¸²Ã³·³ µË´Ï´Ù. attachment:glue2.jpg ³Êºñ°¡ 58ÀÌ µÇ¾úÀ»¶§ÀÇ badness´Â ¾ó¸¶Àϱî¿ä? Áö³­¹ø¿¡ badness¸¦ ¼³¸íÇÒ ¶§, ¾î¶² ÁÙÀÇ badness ±¸ÇÏ´Â ½ÄÀÌ min(100r^3,10000) À̶ó°í ÇÏ°í rÀº ¾î¶² ºñÀ²À̶ó°í¸¸ ÇÏ°í ÀÚ¼¼ÇÑ ¼³¸íÀº ÇÏÁö ¾Ê¾Ò´Âµ¥, Áö±ÝÀÌ ÁÁÀº ±âȸÀÎ°Í °°½À´Ï´Ù. rÀ» 'glue set ratio'¶ó°í ºÎ¸£¸ç, ¼öÃà(ÆØâ)¼ºÀÇ ÃÑÇÕºÐÀÇ ½ÇÁ¦ ¼öÃà(ÆØâ)glue±æÀÌ À̹ǷΠbadness´Â 30(100x(6/9)^3=29.7) ÀÔ´Ï´Ù. }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-22T00:39:10 \edef, \xdef, \noexpand '''215~216ÂÊ''': \xdef¸¦ ¸ÕÀú ½ÃÀÛÇÕ´Ï´Ù. ¿ØÁö À̸§¿¡¼­ °­·ÄÇÔÀ» ´À³¥ ¼ö ÀÖÁö ¾Ê³ª¿ä? xdef??? \xdef´Â \global\edef¿Í µ¿ÀÏÇÕ´Ï´Ù. \global\def¸¦ \gdef·Î ÇÏ´Â °ÍÀ» º¸¸é \xdefº¸´Ù´Â \gedef°¡ µÇ¾î¾ß ÇÒ°Í °°Àºµ¥, \xdef¶ó°í Çϳ׿ä. ¾Æ¸¶µµ expandedÀÇ x¿¡¼­ µû¿Ô³ªº¾´Ï´Ù. ¾î·µç, \globalÀÇ ¶æÀº ¾Ë°í ÀÖÀ¸´Ï, \edef¸¸ ¾Ë¸é \xdefµµ ÀÚµ¿ ÇØ°áµË´Ï´Ù. ±Û½ê¿ä... ÇÑ ¹øµµ ±×·± °æ¿ì¸¦ °æÇèÇØ º¸Áö ¸øÇؼ­ ±×·±µ¥, ÀúÀÚ°¡ ¸»Çϱ⸦ ¸ÅÅ©·Î¸¦ Á¤ÀÇÇÏ´Ùº¸¸é, \def°¡ ±×·¸µíÀÌ ´Ü¼øÈ÷ replacement text¸¦ ±ÛÀÚ ±×´ë·Î Ä«ÇÇÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, ÇöÀç »óȲ¿¡ ¸ÂÃß¾î replacement text¿¡ µé¾îÀÖ´Â ¸ÅÅ©·Î¸¦ ±×´ë·Î ´Ù Àü°³½ÃÄÑ¾ß ÇÏ´Â °æ¿ì°¡ ÀÖ´Ù°í ÇÕ´Ï´Ù. (µµ´ëü ¾ðÁ¦?) ÀÌ·± °æ¿ì¿¡ »ç¿ëµÇ´Â ¸í·É¾î°¡ \edef, À̸§ÇÏ¾ß expanded definition ÀÔ´Ï´Ù. Çü½ÄÀº \def¿Í ¶È°°°í, Áï \def{replacement text} ¿Í °°Àº Çü½ÄÀÌÁö¸¸, ¾Õ¼­ ¸»ÇßµíÀÌ TeXÀº ¹«ÀÛÁ¤ replacement text¿¡ ÀÖ´Â ¸ðµç Àü°³ÇÒ ¼ö ÀÖ´Â ÅäÅ«µéÀ» Àü°³ÇÕ´Ï´Ù. ¿¹¸¦µé¸é ¾Æ·¡¿Í °°Àºµ¥, {{{#!vim tex \def\double#1{#1#1} \edef\a{\double{xy}} \edef\a{\double\a} \}}} ù¹ø° \edef´Â '\def\a{xyxy}'¿Í µ¿ÀÏÇÏ°í, µÎ¹ø°´Â '\def\a{xyxyxyxy}'¿Í µ¿ÀÏÇÕ´Ï´Ù. ÀÌ ¿Ü¿¡ ´Ù¸¥ ¸ðµç Á¾·ùÀÇ Àü°³µµ ¸¶Âù°¡Áö Àε¥, Á¶°Ç¹®ÀÌ »ç¿ëµÈ °ÍÀ» ¿¹·Îµé¸é, {{{#!vim tex \edef\b#1#2{\ifmmode#1\else#2\fi} \}}} TeXÀÌ À§ÀÇ \edef¿Í ¸¸³ª´Â ¼ø°£ ¼öÇÐ ¸ðµå¿¡ ÀÖ´Ù¸é, À§´Â '\def\b#1#2{#1}'°ú µ¿ÀÏÇÏ°í, ¾Æ´Ï¸é, '\def\b#1#2{#2}'°ú µ¿ÀÏÇÕ´Ï´Ù. ¾ðÁ¦ \edef¸¦ »ç¿ëÇÒÁö ¸ð¸£°ÚÀ¸³ª, ÀÏ´Ü ÀÌÇØ´Â µË´Ï´Ù. \edef³ª \xdef´Â replacement text¿¡ ´õÀÌ»ó Àü°³ÇÒ ÅäÅ«ÀÌ ³²¾ÆÀÖÁö ¾ÊÀ»¶§ ±îÁö ÁÙ±âÂ÷°Ô Àü°³¸¦ Çسª°¡´Âµ¥, ÀÌ¿¡ ¿¹¿Ü°¡ ÀÖÁÒ. ´Ã ÀÌ ³ðÀÇ ¿¹¿Ü°¡ ¹®Á¦ÀÔ´Ï´Ù. ¹®Á¦´Â ÀÌ·¸½À´Ï´Ù. Âü º°³­ »ç¶÷ÀÌ À־ ȤÀº º°³­ »óȲÀÌ µÇ¾î¼­ \edef¸¦ ÀÌ¿ëÇϸ鼭µµ replacement text¾È¿¡ ÀÖ´Â ¾î¶² ¸ÅÅ©·Î´Â Àü°³½ÃÅ°°í ½ÍÁö ¾Ê´Ù´Â °ÍÀÔ´Ï´Ù. À̶§ »ç¿ëÇÏ´Â °ÍÀÌ \noexpand ÀÔ´Ï´Ù. À̸§ ±×´ë·Î ÀÔ´Ï´Ù. ´ÙÀ½°ú °°Àº »óȲÀ» ¿¹¸¦ µé¾î º¾½Ã´Ù. ¸ÅÅ©·Î \a¸¦ Á¤ÀÇÇϴµ¥, \a´Â Àü°³µÈ \b, Àü°³µÇÁö ¾Ê´Â \c, Àü°³µÈ \d¶ó°í ÇÏ°í, \b¿Í \d´Â ÆĶó¹ÌÅÍ°¡ ¾ø´Â ´Ü¼øÇÑ ¸ÅÅ©·Î ¶ó°í ÇսôÙ. ±×·¯¸é \a´Â ¾Æ·¡¿Í °°Àº µÎ°¡Áö ¹æ¹ýÀ¸·Î Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. {{{#!vim tex \edef\a{\b\noexpand\c\d} \toks0={\c} \edef\a{\b\the\toks0 \d} \}}} µÎ¹ø°´Â \the¿¡ ÀÇÇؼ­ ¸¸µé¾îÁö´Â ÅäÅ« ¿ª½Ã \edef ¾È¿¡¼­¶óµµ ´õÀÌ»ó Àü°³µÇÁö ¾Ê´Â´Ù°í ÇÕ´Ï´Ù. }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-21T01:06:26 \let '''206~207ÂÊ''': TeX¿¡¼­ Æí¸®Çϸ鼭µµ Áß¿äÇÑ ¸í·É¾î ÁßÀÇ Çϳª°¡ ¹Ù·Î \letÀÔ´Ï´Ù. ÀÌ´Â plain.texÀ̳ª lplain.tex¿¡¼­ ½¢ÇÏ°Ô ¾²ÀÔ´Ï´Ù. \letÀº ´ÙÀ½°ú °°Àº Çü½ÄÀ» ÃëÇϴµ¥, \let\cs= ÀÌ´Â \cs¿¡ ÀÌ ÇöÀç °¡Áö°í ÀÖ´Â Àǹ̸¦ ºÎ¿©ÇÑ´Ù´Â ¶æÀÔ´Ï´Ù. Àç¹ÌÀÖ´Â Á¡Àº ÀÌ ´Ù¸¥ ¸í·É¾î(control sequence)ÅäÅ« À϶§ Àε¥, ÀÌ ¶§µµ ¸¶Âù°¡Áö·Î ±× ¸í·É¾î°¡ °¡Áö°í ÀÖ´Â ±â´É ±×´ë·Î¸¦ \cs¿¡°Ô ¹°·ÁÁÝ´Ï´Ù. ¿¹¸¦µé¾î, '\let\a=\def'¶ó°í ÇÏ°í, '\a\b...{...}'¶ó°í Çϸé, \a°¡ \defÀÇ ÀÇ¹Ì¿Í ±â´ÉÀ» ¹°·Á¹Þ¾Æ¼­, ¸ÅÅ©·Î \b¸¦ Á¤ÀÇÇÏ´Â °ÍÀÌ µË´Ï´Ù. ¶Ç, ¾Æ·¡ÀÇ Àǹ̴ \let\a=\b \let\b=\c \let\c=\a ¸í·É¾î \b¿Í \cÀÇ Àǹ̸¦ ¹Ù²Ù´Â °ÍÀÌ µË´Ï´Ù. ±×¸®°í, ´ÙÀ½°ú °°Àº ¹®ÀåÀº \outer\def\a#1.{#1:} \let\b=\a '\outer\def\b#1.{#1:} \let\a=\b'¿Í ¿ÏÀü µ¿ÀÏÇÕ´Ï´Ù. \let¿¡ »ç¿ëµÈ ÀÌ ´ÜÀÏ ¹®ÀÚ(single character)ÀÌ°í, ±× ¹®ÀÚ°¡ character code¿Í category codeÀÇ ½ÖÀ̶ó¸é, ¾î´À Á¤µµ±îÁö´Â ±× ¹®ÀÚ¿Í °°Àº ¿ªÇÒÀ» ÇÏÁö¸¸, ¾à°£ Â÷ÀÌÁ¡ÀÌ Àִٳ׿ä. ¿¹¸¦µé¾î, '\let\zero=0'¶ó¸é, \zero´Â ¼ýÀÚ 0ÀÇ Àǹ̸¦ °®Áö¸¸, 0ÀÌ ±×·¸µíÀÌ, \zero´Â ¼ýÀÚ »ó¼ö ¾È¿¡¼­´Â »ç¿ëµÉ ¼ö ¾ø½À´Ï´Ù. ¿Ö³ÄÇϸé, TeXÀº ¼ýÀÚ »ó¼ö¿¡ ¸ÅÅ©·Î°¡ ¾²¿´À» °æ¿ì, ±× ¸ÅÅ©·Î¸¦ Àü°³ÇÏ°í ³ª¸é ¸ÅÅ©·ÎµéÀÌ ¸ðµÎ ¼ýÀÚµé·Î ¹Ù²î¾î¾ß Çϴµ¥, \zero´Â ¸ÅÅ©·Î°¡ ¾Æ´Ï±â ¶§¹®¿¡ Àü°³°¡ µÇÁö¾ÊÀ¸¹Ç·Î, ¼ýÀÚ »ó¼ö¾È¿¡¼­´Â »ç¿ëµÉ ¼ö ¾ø´Ù°í ÇÕ´Ï´Ù. ¹«½¼ ¶æÀÎÁö ¾Ëµí ¸»µí ÇÏÁö¸¸, ÀúÀÚÀÇ ¸»´ë·Î¶ó¸é, ³ªÁß¿¡ ´Ù½Ã »ìÆ캼 ±âȸ°¡ Àִٳ׿ä. ¹Ï¾î¾ßÁÒ. Ã¥¿¡ ³ª¿À´Â ¹®Á¦ Çϳª¸¸ Ç®¾îº¾½Ã´Ù. * '''Q''': '\let\a=\b'¿Í '\def\a{\b}' µÑ »çÀÌÀÇ Â÷ÀÌÁ¡ÀÌ ÀÖ±â´Â Àִ°ǰ¡¿ä? ÀÖ´Ù¸é ¾î¶² Â÷ÀÌÁ¡ÀÌ ÀÖ³ª¿ä? * '''A''': Â÷ÀÌ°¡ À־ ¾ÆÁÖ ¸¹´Ù³×¿ä.(Yes indeed.) ù¹ø°ÀÇ °æ¿ìÀÇ \a´Â \letÀÌ ½ÇÇàµÇ´Â ½ÃÁ¡ÀÇ \bÀÇ Àǹ̸¦ ¹Þ°í, µÎ¹ø°ÀÇ °æ¿ìÀÇ \a´Â ¸ÅÅ©·Î À̹ǷΠ\a°¡ »ç¿ëµÉ ¶§¸¶´Ù Àü°³µÇ¾î \b·Î ¹Ù²ò´Ï´Ù. ±×·¡¼­ ±× ¶§ÀÇ \a´Â \a°¡ Àü°³µÇ´Â ½ÃÁ¡ÀÇ \bÀÇ Àǹ̸¦ °®½À´Ï´Ù. ---- Á¦°¡ º» ¿¹ Áß¿¡ Á¦ÀÏ ½¬¿ü´ø °ÍÀ» Çϳª ¿¹·Î µé¾îµÎ°Ú½À´Ï´Ù. ¼º½ÇÇÑ µ¶Àڷμ­ ^^ {{{ \let\endpara\par \def\newerpara{\par} \def\par{\endpara\vskip2pt\hrule\vskip2pt} \let\anotherpara\par There are a variety of ways to create commands. The one descriptoin given so far is to use def. \par There are a variety of ways to create commands. The one descriptoin given so far is to use def. \endpara There are a variety of ways to create commands. \let\par\endpara The one descriptoin given so far is to use def. \anotherpara There are a variety of ways to create commands. The one descriptoin given so far is to use def. \newerpara There are a variety of ways to create commands. The one descriptoin given so far is to use def. \bye \}}} -- [Karnes] [[DateTime(2006-03-23T00:24:55)]] ---- °¨»çÇÕ´Ï´Ù. ¸Ó¸®¿¡ ½ï½ïµé¾î¿É´Ï´Ù. ¾ÆÇÏ! Á¦°¡ ¾²°í ÀÖ´Â ±Û¿¡ ºÐ¸íÈ÷ Ʋ¸° ºÎºÐÀÌ ¸¹À» °ÍÀÔ´Ï´Ù. Ʋ¸° °÷Àº ¹Ù·Î Àâ¾Æ Áֽðí, Á¦ ¼³¸íÀÌ ºÎÁ·Çϴٰųª ¸ðÈ£ÇÏ´Ù ½ÍÀ¸½Ã¸é, À̹ø ó·³ °¡¸£Ä§À» Áֽñ⸦ ºÎŹµå¸³´Ï´Ù. "I hope to pick your brain about TeX." :) -- Anonymous [[DateTime(2006-03-23T02:58:19)]] }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-20T07:56:22 \long, \outer, \global, \gdef Àú´Â TeX µðÀÚÀ̳ʳª TeXnicianÀÌ µÇ°íÀÚ ÇÏ´Â ¸¶À½Àº ´«²Å ¸¸Å­µµ ¾øÁö¸¸, °¡²û plain.tex, lplain.tex°ú °°Àº ºÁ¼­´Â ¾È µÉ ÆÄÀϵéÀ» ¿­¾îº¾´Ï´Ù. »ç½Ç Àú °°Àº TeX Ãʺ¸ÀÚµéÀº ±× °°Àº ÆÄÀϵéÀº ¿­¾î º¼ ÇÊ¿äµµ ¾ø°í, ¿­ ÀÌÀ¯µµ ¾øÁö¸¸, ±×Àú È£±â½É¿¡ ¿­¾îº¾´Ï´Ù. ÇÏÁö¸¸, °£´ÜÇÑ ¸í·É¾î(control sequence) Çϳª·Î ¿©·¯ ´Ù¾çÇÑ ±â´ÉÀ» ÇÏ´Â °ÍÀ» º¸¸é, ±× ¿ø¸®°¡ ±Ã±ÝÇØÁö´Â °Íµµ »ç½ÇÀÔ´Ï´Ù. ±×·¡¼­ ÇÑ ¹ø Àоî´Â º¸´Âµ¥... ¾î·Æ½À´Ï´Ù. ƯÈ÷, ¸ÅÅ©·Î Á¤ÀÇ ÇÒ¶§ ¾²ÀÌ´Â \def ¾Õ¿¡´Â ¹¹°¡ ±×¸®µµ ¸¹ÀÌ ºÙ´ÂÁö..., ¿¹¸¦µé¸é, \long, \global, \outer ´õ±¸³ª ¸ÅÅ©·Î Á¤ÀÇÇÒ¶§µµ \def ¿Ü¿¡ ¹¹°¡ ±×¸®µµ ¸¹ÀºÁö, \edef, \gdef, \xdef, \chardef, \csname, \let, ... ÀÌ ¿Ü¿¡µµ \expandafter, \noexpand ... ÂÁ. ±×·¡¼­ Çϳª¾¿ ¾Ë¾Æº¸±â·Î ±»°Ô ¸¾¸Ô¾ú½À´Ï´Ù. \def´Â ´ëÃæ ¾Æ´Ï±î... '''205~206ÂÊ''': \def¸¦ ÀÌ¿ëÇؼ­ ¸ÅÅ©·Î Á¤ÀǸ¦ ÇÒ¶§, ½Ç¼ö·Î °ýÈ£ '{'³ª '}'¸¦ »©¸Ô°Å³ª ´õÇؼ­, ¿©´Ý´Â °ýÈ£°¡ ¸ÅÄ¡°¡ ¾ÈµÉ °æ¿ì°¡ ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì ±×·¯ÇÑ \def·Î Á¤ÀÇµÈ ¸í·É¾î¸¦ Àü°³ÇÒ ¶§, TeXÀÌ ÃæÁ÷Çؼ­ ¾ðÁ¦ ÀÌ ³ðÀÇ Á¤ÀÇ°¡ ¾îµð¼­ ³¡³ª´ÂÁö ¸ô¶ó¼­ °è¼Ó ó¸®ÇÑ´Ù¸é, ¾Æ¸¶µµ TeXÀº ÀÔ·Æ ÆÄÀÏÀÇ ³¡À» º¸°Å³ª ¾Æ´Ï¸é, ±× Àü¿¡ TeXÀÌ °è¼Ó ÀԷµǴ ÅäÅ«À» ¹Þ¾Æµé¿© ¸Þ¸ð¸®°¡ ºÎÁ·Çؼ­ ÄÄÇ»ÅÍ°¡ ¸ÔÅëÀÌ µÉÁöµµ ¸ð¸¨´Ï´Ù. :( ´Ü¼øÇÑ Å¸ÀÌÇÎ ¿¡·¯·Î ±×·¯ÇÑ »çűîÁö °¡¸é ¾ÈµÇÁÒ. ´ÜÁö '{'³ª '}' Çϳª »©¸ÔÀ» »ÓÀä. ´ÙÇàÈ÷ TeXÀº ±×´ÙÁö ÃæÁ÷ÇÑ ÆíÀÌ ¸øµÇ°í ¿©¿ì°°Àº ¸éÀÌ À־, ÀÌ·± °æ¿ì¿¡ ´ëºñÇؼ­ ³ª¸§´ë·ÎÀÇ ±ÔÄ¢À» °¡Áö°í ÀÖ½À´Ï´Ù. ±× ±ÔÄ¢Àº \defÀÇ argument¿¡´Â \par ÅäÅ«À» »ç¿ëÇÒ ¼ö ¾ø´Ù´Â °ÍÀÔ´Ï´Ù. ¸í½ÃÀûÀ¸·Î ¿©·¯ºÐÀÌ "³ª \par¸¦ arguement¿¡¼­µµ »ç¿ëÇÏ°ÚÀ¸´Ï, ±º¼Ò¸® ¸»°í Ç϶ó´Â´ë·Î Ç϶ó"¶ó°í ¸»ÇÏÁö ¾Ê´Â ÀÌ»ó ¸»ÀÔ´Ï´Ù. ±×·¡¼­ TeXÀº ¸ÅÅ©·Î¸¦ Àü°³ÇØ ³ª°¡´Ù°¡ \par¸¦ ¸¸³ª¸é, "runaway argument"¶ó°í ¸»ÇÏ°í, ÇÏ´ø ÀÏÀ» ±×¸¸µÓ´Ï´Ù. ¶È¶ÈÇÕ´Ï´Ù. :) ÇÏÁö¸¸, ¸ÅÅ©·Î¸¦ ¸¸µé´Ùº¸¸é, argement¿¡ \par ÅäÅ«À» »ç¿ëÇÒ ÀÏÀÌ ÀÖ´ä´Ï´Ù. ±× °æ¿ì ¾î¼³ª¿ä? ±×¶§ »ç¿ëÇÏ´Â °ÍÀÌ ¹Ù·Î \def¾Õ¿¡ ºÙ¿©ÁÖ´Â \longÀÔ´Ï´Ù. ¸¶Ä¡ TeXÇÑÅ× "³×°¡ ¾ÕÀ¸·Î Àü°³ÇÒ ¸í·É¾îÀÇ argument°¡ ±æ ¼öµµ ÀÖÀ¸´Ï±î, °ÔÀÇÄ¡ ¸»°í, ±×³ÉÇ϶ó"¶ó´Â ¶æÀÎ°Í °°½À´Ï´Ù. (ÀÌ°ÍÀ¸·Î Çϳª ÇØÄ¡¿ü½À´Ï´Ù. À§¿¡¼­ ¾ð±ÞÇÑ Á¤º¹ÇØ¾ß ÇÒ control sequence ¸ñ·Ï¿¡¼­ µÎ ÁÙ·Î ÂïÂï±×¾î \longÀº Áö¿ì¼¼¿ä. :) ) À§¿¡¼­ ¼³¸íÇÑ '\par-±ÝÁö ¹ýÄ¢' ¸¸À¸·Î´Â Á» ¸ðÀÚ¶õ °¨ÀÌ ÀÖ½À´Ï´Ù. ¿À·ÎÁö °è¼Ó Àü°³ÇØ ³ª°¡´Ù°¡ \parÀÌ ³ª¿Í¾ß¸¸ ¸ØÃß´Ï±î ¸»ÀÔ´Ï´Ù. ´õ »¡¸® TeXÀ¸·Î ÇÏ¿©±Ý "³Ê°¡ À߸øµÈ ¸í·É¾î¸¦ Àü°³ÇÏ°í ÀÖ´Ù"¶ó°í ¾Ë·ÁÁÖ¾î¾ß ÇÒ¶§°¡ ÀÖ½À´Ï´Ù. ÁÖ·Î TeXÀÌ ÇÏÀÌ ½ºÇǵå·Î ÅäÅ«µéÀ» ó¸®ÇØ¾ß ÇÏ´Â °æ¿ì°¡ ±× ¶§ÀÔ´Ï´Ù. ÀÌ °æ¿ì¿¡ TeXÀº \par°¡ ³ª¿Ã¶§ ±îÁöµµ ¸ø±â´Ù¸³´Ï´Ù. µû¶ó¼­ À߸øµÈ ¸í·É¾î´Â ¾Æ´ÏÁö¸¸, ºü¸¥ ½ºÇǵ带 ¿äÇÏ´Â °÷¿¡¼­´Â ÀÌ ¸í·É¾î¸¦ »ç¿ëÇÏÁö ¸»¶ó´Â Àǹ̷Π\long ó·³ \def ¾Õ¿¡ ºÙÀÌ´Â °ÍÀ¸·Î '\outer'°¡ ÀÖ½À´Ï´Ù. Áï ƯÁ¤ÇÑ »óȲ¿¡¼­ TeXÀÌ \outer°¡ ¾Õ¿¡ ºÙÀº ¸í·É¾î¸¦ Àü°³ÇÏ·Á ÇÑ´Ù¸é, TeXÀº Àü°³ÇØ º¸Áöµµ ¾Ê°í, ÇÏ´ø ÀÏÀ» ¸ØÃß°í ºÒÆòÀ» ÇØ´ð´Ï´Ù. ±×·¸´Ù¸é, TeXÀÌ ¸Å¿ì ºü¸£°Ô ó¸®ÇؾßÇÏ´Â °æ¿ì, Áï \outer°¡ ºÙÀº ¸í·É¾î°¡ ¾²ÀÌ¸é ¾ÈµÇ´Â °æ¿ì°¡ ¾î¶² °æ¿ì Àϱî¿ä? * argument ¾È¿¡¼­ * ¾î¶² ¸ÅÅ©·Î Á¤ÀÇÀÇ parameter text ¶Ç´Â replacement text ¾È¿¡¼­ * Ç¥³ª ¹è¿­ÇÒ¶§ »ç¿ëÇÏ´Â alignmentÀÇ preamble ¾È¿¡¼­ * Á¶°Ç¿¡ ÀÇÇؼ­ ½ÇÇàÀÌ ¾ÈµÉ ¼öµµ ÀÖ´Â Á¶°Ç¹®¿¡¼­ (if... then ... else...) ¸¸¾à À§¿Í °°Àº ȯ°æ¾È¿¡¼­ \outer°¡ ºÙÀº ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù¸é TeXÀº "runaway" »óȲÀ̰ųª, "incomplete" Á¶°Ç¹®À̶ó°í ºÒÆòÇϸç, ÇÏ´ø ÀÏÀ» °üµÓ´Ï´Ù. ¸¶Áö¸· \globalÀÌ ³²¾Ò½À´Ï´Ù. ÄÄÇ»ÅÍ ÇÁ·Î±×·¡¹Ö °üÁ¡À¸·Î º¸¸é, Àü¿ªº¯¼ö ¼³Á¤ÇÏ´Â °ÍÀ̳׿ä. ƯÁ¤ ±×·ì ¾È¿¡¼­ Á¤ÀÇµÈ ¸ÅÅ©·Î´Â ±× ±×·ì¾È¿¡¼­¸¸ È¿·ÂÀÌ ÀÖ°í, ±× ±×·ì ¹Û¿¡¼­´Â ±× È¿·ÂÀ» Àдµ¥, ±×·ì ¹Û¿¡¼­µµ ±× Àǹ̸¦ À¯ÁöÇÏ·Á¸é \def ¾Õ¿¡ \global À̶ó°í ºÙ¿©ÁÖ¸é µË´Ï´Ù. ±×¸®°í \gdef´Â \global\def¿Í µ¿ÀÏÇÑ ÀǹÌÀÔ´Ï´Ù. Áö±Ý±îÁö ¾Ë¾Æº» \long, \outer, \globalÀº ¸ðµÎ \def ¾Õ¿¡ ºÙ´Â Á¢µÎ»ç °°Àºµ¥, ±× ¼ø¼­´Â ¾Æ¹«·¸°Ô³ª ¿Íµµ µÇ°í, ¶ÇÇÑ °°Àº Á¢µÎ»ç°¡ Çϳª ÀÌ»óÀÌ ¿Íµµ µË´Ï´Ù. ¿¹¸¦µé¾î, '''\long\outer\global\long\def''' À§ÀÇ ¼±¾ðÀº '''\outer\long\gdef'''¿Í °°Àº ÀǹÌÀÔ´Ï´Ù. }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-19T00:30:28 demerits '''97~98ÂÊ''': ÀÌÁ¦ ¹®´Ü¿¡¼­ ÁÙµéÀ» ¸¸µé¾î³»´Â °úÁ¤À» ¾î´ÀÁ¤µµ Á¤¸®ÇÒ ¶§°¡ µÈ °Í °°½À´Ï´Ù. Áö³­ µÎ¹ø¿¡ °ÉÃļ­ ¾´ ³»¿ëÀ» Á¤¸®Çϸé, TeXÀº °¢ ÁÙÀÇ badness°¡ ÁÖ¾îÁø tolerance¸¦ ³ÑÁö ¾Êµµ·Ï Çϸ鼭 breakpoint¸¦ ¼³Á¤ÇÕ´Ï´Ù. ÀÌ °úÁ¤À» Á» ´õ ¼öÇÐÀûÀ¸·Î Ç¥ÇöÇϸé, °¢ ÁÙµéÀº ''demerit''¶ó´Â °ÍÀ» °¡Áö°í Àִµ¥, ''°¢ ÁÙµéÀÇ demeritsÀÇ ÇÕÀÌ ÃÖ¼Ò°¡ µÇµµ·Ï ÁÙµéÀ» ¸¸µì´Ï´Ù.'' demeritµéÀÇ ÃÑÇÕÀÌ ÃÖ¼Ò°¡ µÉ¶§, ±× ¹®´ÜÀÇ ÁÙµéÀÌ º¸±â ÁÁÀº°¡ º¾´Ï´Ù. ±×·¸´Ù¸é demerit°¡ ¹«¾ùÀ̳Ä?, Àúµµ ÀÌ·¯°í ½ÍÁö´Â ¾Ê½À´Ï´Ù¸¸, ¾î¿ ¼ö ¾øÀÌ ¼ö½ÄÀ» Á» ½á¾ß°Ú½À´Ï´Ù. °¢ ÁÙÀÇ demerit´Â ¾Æ·¡ÀÇ ¼ö½Ä°ú °°ÀÌ °è»êÇÕ´Ï´Ù. (TeX¿¡¼­ ¼ö½ÄÀ» Á¶ÆÇÇÏ´Â ÀÏÀº ¾ðÁ¦³ª Áñ°ÌÁÒ. :) ) attachment:demerit.jpg d´Â demerit, b´Â badness, p´Â penalty, ¸¶Áö¸·À¸·Î lÀº linepenalty¸¦ ³ªÅ¸³À´Ï´Ù. linepenalty´Â ¸»±×´ë·Î lineÀÌ °®´Â penaltyÀÔ´Ï´Ù. ±×·¡¼­ ÀÌ °ªÀ» Å©°ÔÇϸé, TeXÀ¸·Î ÇÏ¿©±Ý ¹®´Ü¿¡¼­ °¡´ÉÇÑÇÑ ÃÖ¼Ò °¹¼öÀÇ ÁÙµéÀ» ¸¸µé¾î ³»µµ·Ï Èûµé°Ô ÇÑ´ä´Ï´Ù. Plain TeX¿¡¼­ÀÇ linepenaltyÀÇ ±âº» °ªÀº 10ÀÔ´Ï´Ù. ¿¹¸¦µé¾î, ¾î¶² ÁÙÀÇ badness°¡ 20ÀÌ°í, breakpoint°¡ glue¿¡¼­ ÀϾ´Ù¸é, penalty°¡ ¾ø´Â °ÍÀ̹ǷÎ, ±× ÁÙÀÇ demerit´Â À§ ½Ä¿¡ ÀÇÇؼ­ (10+20)^2=900ÀÌ µË´Ï´Ù. ÀÌ ¸»¿¡¼­ º¼¶§, penalty´Â ÁÙ¿¡ ±âº»ÀûÀ¸·Î ÁÖ¾îÁö´Â °ªÀÌ ¾Æ´Ñ, ¾î¶² µ¶¸³ÀûÀÎ °ªÀΰ¡ º¾´Ï´Ù.(glue¿¡ ´ëÇؼ­´Â ¾ðÁ¦ ¾ð±ÞÇÒ ³¯ÀÌ ÀÖÀ»°ÍÀÔ´Ï´Ù. ±× ³ðÀÌ ¾ÆÁÖ ÁýÂøÀÌ °­ÇÑ ³ðÀ̰ŵç¿ä.) ¸¶Áö¸·À¸·Î Knuth´Â ¿ì¸®µéÀÌ ¼öÇÐÀ» ½È¾îÇÏ´Â °ÍÀ» Àß ¾Ë¾Æ¼­ À§ ¼ö½ÄÀ» ¾Ë¾Æ µè±â ½¬¿î ¸»·Î ¼³¸íÀ» ÇÕ´Ï´Ù. Áï, óÀ½¿¡ ¾ð±ÞÇÑ ''°¢ ÁÙµéÀÇ demeritsÀÇ ÇÕÀÌ ÃÖ¼Ò°¡ µÇµµ·Ï ÁÙµéÀ» ¸¸µç´Ù''´Â Àǹ̴ basnessµé°ú penaltyµéÀÇ Á¦°öÀÇ ÇÕÀ» ÃÖ¼ÒÈ­ÇÏ´Â °Í°ú °°Àº ÀǹÌÀε¥, ÀÌ ¶æÀº ±× ¹®´ÜÀÇ ¸ðµç breakpointµé¿¡ °ÉÃļ­, ¾î¶² ÇÑ ÁÙÀÇ ÃÖ´ë badness ¶ÇÇÑ ÃÖ¼ÒÈ­ ÇÑ´Ù´Â ÀǹÌÀÔ´Ï´Ù. badness°¡ ÃÖ¼ÒÈ­ µÈ´Ù´Â °ÍÀº ±×¸¸Å­ ¿ì¸® ´«¿¡ º¸±â ÁÁ´Ù´Â °ÍÀ̴ϱî¿ä. ÀÌ»óÀ¸·Î ¹®´Ü¿¡¼­ ÁÙµéÀ» ¸¸µé¾î ³»´Â °úÁ¤À» »ìÆìºÃ½À´Ï´Ù. Á» ¾î·Á¿î ¸éµµ ÀÖ¾úÁö¸¸, Àç¹ÌÀÖ¾ú½À´Ï´Ù. TeXÀ» Á» ´õ ¾Ë°ÔµÇ¾î TeX°ú Á¡Á¡ Ä£ÇØÁ® °¡´Â ´À³¦ÀÔ´Ï´Ù. TeX! ¿ì¸® Á» ´õ Ä£ÇØÁý½Ã´Ù. :) "Åصµ¾ø´Â ¼Ò¸® ¸»¶ó°í?, ¾ÆÁ÷ ¸Ö¾ú´Ù±¸?" :( ---- ÀÌ °÷ À§Å°¿¡¼­´Â TeXÀ¸·Î ¼ö½Ä Á¶ÆÇÀÌ µÇ´Â °ÍÀ¸·Î ¾Ë°íÀִµ¥¿ä, ½ÇÁ¦·Îµµ ¸î¹ø »ç¿ëÇØ ºÃ°í¿ä. ±×·±µ¥, À§ ¼ö½ÄÀ» ½ÃµµÇß´õ´Ï, ¼ö½Ä Áß°£¿¡ ÀÌ»óÇÑ ##Blog°¡´Â °ÍÀÌ »ðÀԵǸ鼭, ¼ö½ÄÀÌ ¹Ú»ìÀÌ ³µ½À´Ï´Ù. "¹Ì¸®º¸±â"ÇÒ ¶§µµ ¼¼ÁÙÀÇ ¼ö½ÄÀ» °¨½Î´Â ¿ÞÂÊ °ýÈ£"{"°¡ ¾È³ª¿ÔÁö¸¸ ±×°ÍÀº ±×·±´ë·Î ÂüÀ»¸¸ÇÏ¿© (ÀúÀÇ \tolerance=3000 Âë µÇ³ªº¾´Ï´Ù. :) ) "ÀúÀå"À» ´­·¶´õ´Ï, ÀÌ»óÇÏ°Ô ³ª¿À´õ±º¿ä. ±×·¡¼­ ±×·¯°í ½ÍÁö´Â ¾Ê¾ÒÁö¸¸, ±×¸²À¸·Î ´ëüÇß½À´Ï´Ù. ¾Æ¸¶µµ Á¦°¡ LaTeX¿¡¼­´Â ¼ö½Ä Á¶ÆÇÀ» ÇØ º»ÀÏÀÌ ¾ø¾î¼­, ½Ç¼ö°¡ ÀÖ¾úÀ»Áöµµ ¸ð¸¨´Ï´Ù. :) -- Anonymous [[DateTime(2006-03-19T00:50:43)]] ---- Àú È¥ÀÚ ÅغÏÀ» ÀÐÀ» ¶§º¸´Ù ÈξÀ Àç¹ÌÀÖ½À´Ï´Ù. »ç½Ç Àú´Â ÀÌ Ã¥À» Æí½ÄÇß½À´Ï´Ù. ´ëÃæ µÑ·¯º¸°í À۳⿡¼­¾ß 16~19ÀåÀ» ÁýÁßÀûÀ¸·Î Àоú°Åµç¿ä. Àǹ̵µ ¸ð¸£´Â ä Àͼ÷Çß´ø °Íµé Á¶±Ý¾¿ ¿Í ´ê´Â °Í °°½À´Ï´Ù. ---badness, demerit µî. Âü, TeX¿¡¼­ ¼ö½ÄÀ» ÀÔ·ÂÇÏ´Â °ÍÀº ¾ðÁ¦³ª Áñ°Ì´Ù´Â °Í¿¡ °ø°¨ÇÕ´Ï´Ù. ^^ -- [Progress] [[DateTime(2006-03-20T04:39:13)]] }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-18T16:33:08 badness and tolerance '''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À¸·Î ÇÏ°í ´Ù½Ã È®ÀÎÇÕ´Ï´Ù. ---- Àß º¸°í ÀÖ½À´Ï´Ù. ÁÁÀº ±Û °¨»çÇÕ´Ï´Ù. ^^ -- [Karnes] [[DateTime(2006-03-18T17:48:05)]] }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-17T15:16:51 penalty '''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´Â ÀÌ·¸½À´Ï´Ù. }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-14T14:34:10 hanging paragraph '''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 µ¿Çع°°ú ¹éµÎ»êÀÌ ¸¶¸£°í ´âµµ·Ï ÇÏ´À´ÔÀÌ º¸¿ìÇÏ»ç ¿ì¸®³ª¶ó ¸¸¼¼. ¹«±ÃÈ­ »ïõ¸® È­·Á°­»ê ´ëÇÑ»ç¶÷ ´ëÇÑÀ¸·Î ±æÀÌ º¸ÀüÇϼ¼. µ¿Çع°°ú ¹éµÎ»êÀÌ ¸¶¸£°í ´âµµ·Ï ÇÏ´À´ÔÀÌ º¸¿ìÇÏ»ç ¿ì¸®³ª¶ó ¸¸¼¼. ¹«±ÃÈ­ »ïõ¸® È­·Á°­»ê ´ëÇÑ»ç¶÷ ´ëÇÑÀ¸·Î ±æÀÌ º¸ÀüÇϼ¼. \}}} }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-11T10:47:16 TeX logo Texture '''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À» »ç¿ëÇÏ´Â ÀÌÀ¯°¡ ¾Æ´Ñ°¡ ÇÕ´Ï´Ù. }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-09T15:07:34 \rlap, \llap '''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}} \}}} }}} {{{#!blog ÀÛÀº³ª¹« 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, ÀÌ ÇҾƹöÁö Àç¹ÌÀÖ´Â ºÐÀÓ¿¡ Ʋ¸²¾ø½À´Ï´Ù. :)) }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-04T11:27:18 \futurelet '''207ÂÊ''': Á¦20Àå(Definitions)¸¦ °øºÎÇÏ´Ù°¡ ¿ä»óÇÑ cs¸¦ Çϳª ¹ß°ßÇß½À´Ï´Ù. \futurelet. µµ´ëü ÀÌ°ÍÀ» ¾îµð¿¡ »ç¿ëÇØ¾ß Àß »ç¿ëÇß´Ù°í ¼Ò¹®ÀÌ ³ª´ÂÁö ¸ð¸£°Ú½À´Ï´Ù. "¹Ì·¡\let"(?) µµ´ëü ÀÌ·± primitive¸¦ ¿Ö ¸¸µé¾úÀ»±î¿ä? 207ÂÊ Áß°£¿¡ ÀÌ csÀÇ ¼³¸íÀÌ Àִµ¥, "dangerous bend" ±âÈ£°¡ µÎ °³³ª ºÙ¾îÀÖ½À´Ï´Ù. {{{#!latex \font\manual=manfnt \manual\char127\manual\char127 \}}} ¾ðÁ¨°¡´Â ÀÌÇØÇÒ ³¯ÀÌ ¿À°ÚÁÒ. "\futurelet\cs"´Â "\let\cs="À̶û °°´Ù°í Çϴµ¥, ±×·¸´Ù¸é ¹®¹ýÀº ÀÌÇØ°¡ °¡´Âµ¥, Àǹ̰¡ ¿µ ¿Í´êÁö ¾Ê³×¿ä. }}} {{{#!blog ÀÛÀº³ª¹« 2006-03-04T11:27:17 control sequence ±¸º° '''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¶ó´Â Ç¥½Ã¿Í ±×°ÍÀÇ Á¤ÀÇ°¡ ÁÖ·ç·è ³ª¿É´Ï´Ù. (Àç¹ÌÀÖ½À´Ï´Ù.) }}} ---- CategoryBlog