.\" @(#) $OpenBSD: m4. 1, v 1.24 2002/04/18 18:57:23 espie Exp % .\" %FreeBSD: src/usr.bin/m4/m4. 1, v 1.10. 2.7 2002/07/15 02:06:15 jmallett Exp % .\" .\" $FreeBSD: doc/ja_JP.eucJP/man/man1/m4. 1, v 1.14 2002/09/22 22:58:48 horikawa Exp $ .\" .Dd April 17, 2002 .Dt M4 1 .Os .Sh ¸íĪ .Nm m4 .Nd ¸ÅÅ©·Î ·©±ÍÁö ÇÁ·Î¼¼¼­ .Sh ¼­½Ä .Nm .Op Fl d Ar flags .Op Fl t Ar name .Op Fl gs .Op Fl D Ar name Ns Op = Ns Ar value .Op Fl U Ar name .Op Fl I Ar dirname .Op Ar .Sh ÇØ¼³ .Nm À¯Æ¿¸®Æ¼´Â, ´Ù¾çÇÑ ¾ð¾î (¿¹¸¦ µé¾î C, ratfor, fortran, lex, yacc µî)ÀÇ ÇÁ·ÐÆ®¿£µå·Î¼­ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â ¸ÅÅ©·Î ÇÁ·Î¼¼¼­ÀÔ´Ï´Ù. .Nm (Àº)´Â, Ç¥ÁØ ÀÔ·ÂÀ¸·ÎºÎÅÍ ÀоîµéÀÔ´Ï´Ù. ¶Ç, Ç¥ÁØ Ãâ·ÂÀÇ ÇÁ·Î¼¼½º ÅØ½ºÆ®¿¡ ½á³À´Ï´Ù. .Pp ¸ÅÅ©·ÎÀÇ È£ÃâÀº .Ic name Ns Pq Ar argument1 Ns Op , Ar argument2 , ... , argumentN ÀÇ Çü½ÄÀ» ÃëÇϰí ÀÖ½À´Ï´Ù. .Pp ¸ÅÅ©·Î¸íÀ¸·Î °Å±â¿¡ °è¼ÓµÇ´Â ¿­¸² °ýÈ£ .Pq Ql \&( (¿Í)°úÀÇ »çÀÌ¿¡´Â ½ºÆäÀ̽º°¡ À־´Â ¾ÈµË´Ï´Ù. ¸¸¾à ¸ÅÅ©·Î¸íÀÇ Á÷ÈÄ¿¡ ¿­·Á °ýÈ£°¡ °è¼ÓµÇÁö ¾ÊÀ¸¸é Àμö ¾øÀ½ÀÇ ¸ÅÅ©·Î È£Ãâ·Î¼­ 󸮵˴ϴÙ. .Pp ¸ÅÅ©·Î¸íÀ¸·Î¼­ ¼±µÎ´Â ¾ËÆÄºª ¶Ç´Â ¾ð´õ ½ºÄھư¡, 2 ij¸¯ÅÍ´« ÀÌÈÄ´Â ¿µ¼ýÀÚ ¶Ç´Â ¾ð´õ ½ºÄھƸ¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. µû¶ó¼­ ¿Ã¹Ù¸¥ ¸ÅÅ©·Î¸í¿¡ ¸ÅÄ¡ ÇÏ´Â Á¤±Ô Ç¥ÇöÀº .Dq Li [a-zA-Z_][a-zA-Z0-9_]* µË´Ï´Ù. .Pp ¸ÅÅ©·ÎÀÇ ÀμöÁß¿¡¼­, ¼±µÎÀÇ ÄõÆ®µÇ¾î ÀÖÁö ¾ÊÀº °ø¹é, ÅÇ, °³Çà ij¸¯ÅÍ .Pq Ql \en (Àº)´Â ¹«½ÃµË´Ï´Ù. ij¸¯ÅÍ ¶óÀÎÀ» ÄõÆ® Çϱâ À§Çؼ­´Â, ¿ÞÂÊ, ¹× ¿À¸¥ÂÊ ½Ì±Û ÄõÆ®¸¦ »ç¿ëÇØ ÁÖ¼¼¿ä (¿¹: .Sq "\ this is a string with a leading space" ) . ÆíÀÔ ¸ÅÅ©·Î .Ic changequote (À»)¸¦ »ç¿ëÇØ ÄõÆ® ij¸¯Å͸¦ º¯°æÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. .Pp ´ëü·ÎÀÇ ÆíÀÔ ¸ÅÅ©·Î´Â, Àμö°¡ ¾øÀ¸¸é Àǹ̸¦ ¸¸µé¾î³»Áö ¾ÊÀ¸¹Ç·Î, ¿­¸² °ýÈ£°¡ ÈÄ¿¡ °è¼ÓµÇÁö ¾Ê´Â °æ¿ì, Ưº°ÇÑ °ÍÀ¸·Î ÇØ ÀνĵÇÁö ¾Ê½À´Ï´Ù. .Pp ¿É¼ÇÀº ÀÌÇÏ¿Í °°½À´Ï´Ù: .Bl -tag -width indent .It Fl s .Xr cpp 1 ¿ëÀ¸·Î, .Ic #line Áö½Ã¹®À» Ãâ·ÂÇÕ´Ï´Ù. .It Fl D Ar name Ns Op = Ns Ar value ½Éº¼ .Ar name ÀÇ °ªÀ» value (¹«ÁöÁ¤½Ã´Â .Dv NULL )¶ó°í Á¤ÀÇÇÕ´Ï´Ù. .It Fl U Ar name ½Éº¼ .Ar name (À»)¸¦ ¹ÌÁ¤µµ¸®·Î ÇÕ´Ï´Ù. .It Fl I Ar dirname include ÆÐ½º¸¦ µð·ºÅ丮 .Ar dirname ±×¸®°í Ãß°¡ÇÕ´Ï´Ù. .It Fl d Ar flags Æ®·¹À̽º Ç÷¡±×¸¦ ¼¼Æ® ÇÕ´Ï´Ù. .Ar flags Àμö´Â, ÀÌÇÏ¿Í °°½À´Ï´Ù: .Pp .Bl -tag -width indent -compact .It Cm a ¸ÅÅ©·ÎÀÇ Àμö¸¦ Ç¥½ÃÇÕ´Ï´Ù. .It Cm c ¸ÅÅ©·ÎÀÇ Àü°³¸¦ º¹¼öÇàÀ¸·Î Ç¥½ÃÇÕ´Ï´Ù. .It Cm e ¸ÅÅ©·ÎÀÇ Àü°³ °á°ú¸¦ Ç¥½ÃÇÕ´Ï´Ù. .It Cm f ÆÄÀϸíÀÇ Àå¼Ò¸¦ Ç¥½ÃÇÕ´Ï´Ù. .It Cm l Çà¼ö¸¦ Ç¥½ÃÇÕ´Ï´Ù. .It Cm q Àμö¿Í ÇöÀçÀÇ ÄõÆ®ÀÇ °á°ú¸¦ ÀοëÇÕ´Ï´Ù. .It Cm t ¸ðµç ¸ÅÅ©·Î¸¦ Æ®·¹À̽º ÇÕ´Ï´Ù. .It Cm x ¸ÅÅ©·ÎÀÇ Àü°³ÀÇ ¼öÀÔ´Ï´Ù. .It Cm V ¸ðµç ¿É¼Ç Ç÷¡±×¸¦ ¿ÂÀ¸·Î ÇÕ´Ï´Ù. .El .Pp µðÆúÆ®¿¡¼­´Â, Æ®·¹À̽º´Â .Cm eq ¿¡ ¼¼Æ® Çϰí ÀÖ½À´Ï´Ù. .It Fl t Ar macro .Ar macro (À»)¸¦ Æ®·¹ÀÌ½Ì ÇÕ´Ï´Ù. .It Fl g GNU-m4 ȣȯ ¸ðµå¸¦ À¯È¿ÇÏ°Ô ÇÕ´Ï´Ù. ÀÌ ¸ðµå¿¡¼­´Â .Ic changequote ¿¡ 2 °³ÀÇ ÇÏ´ÃÀÇ ÆÄ¶ó¹ÌÅ͸¦ ºÙÀÌ´Â °ÍÀ¸·Î ÄõÆ®ÀÇ »ç¿ëÀ» ±×¸¸µÑ ¼ö ÀÖ½À´Ï´Ù. .Ic translit (Àº)´Â, ´ÜÀÏÀÇ Ä³¸¯ÅÍ ¹üÀ§ (¿¹¸¦ µé¸é .Li a-z ) (À»)¸¦ Ãë±ÞÇØ, Á¤±Ô Ç¥ÇöÀ¸·Î .Xr emacs 1 (¿Í)°ú °°ÀÌ µ¿ÀÛÇÕ´Ï´Ù. º¯È¯ÀÇ ¼ö´Â ¹«Á¦ÇÑÇÕ´Ï´Ù. .El .Sh ¹®¹ý .Nm À¯Æ¿¸®Æ¼¿¡´Â ÀÌÇÏ¿¡ ³ªÅ¸³»´Â ÆíÀÔ ¸ÅÅ©·Î°¡ ½ÇÀåµÇ°í ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ¸ÅÅ©·Î´Â ÀçÁ¤ÀÇ °¡´ÉÇϰí, ±× °æ¿ì¿¡´Â ¿ø·¡ÀÇ Á¤ÀÇ´Â ¾ø¾îÁý´Ï´Ù. ƯÈ÷ ±â¼úÀÌ ¾ø´Â ÇÑ ¹Ýȯ°ªÀº NULL ÀÔ´Ï´Ù. .\" ¿ø¹® NULL -> null .Bl -tag -width ".Ic changequote" .It Ic builtin ÁöÁ¤ÇÑ ÆíÀÔ ¸ÅÅ©·Î¸¦ È£ÃâÇÕ´Ï´Ù. ÀçÁ¤Àǵǰí ÀÖ´Â °æ¿ì´Â ¹«½ÃÇÕ´Ï´Ù. ÆíÀÔÀÌ ±×·¯ÇÑ À̸§¿¡ ÀÇÇØ ºÒ·Á °¡ °¡´ÉÇÑ ÀçÁ¤ÀǸ¦ ¹«½ÃÇÕ´Ï´Ù. .It Ic changecom ÄÚ¸àÆ®ÀÇ °³½Ã ij¸¯ÅÍ ¶óÀΰú Á¾·á ij¸¯ÅÍ ¶óÀÎÀ» º¯°æÇÕ´Ï´Ù. µðÆúÆ®¿¡¼­´Â, ÆÄ¿îµå ±âÈ£ .Pq Ql # (¿Í)°ú °³Çà ij¸¯ÅÍÀÔ´Ï´Ù. Àμö¸¦ ÁöÁ¤ÇÏÁö ¾Ê¾Ò´ø °æ¿ì´Â ÄÚ¸àÆ® ¼øÂ÷ ¼ø¼­°¡ ¸®¼ÂÆ® µË´Ï´Ù. GNU ¸ðµåÀÇ .Nm ±×·³, ÄÚ¸àÆ®´Â ¿ÀÇÁÀÔ´Ï´Ù. ¼³Á¤ÇÒ ¼ö Àִ ij¸¯ÅÍ ¶óÀÎÀÇ ±æÀÌ´Â ÃÖ´ë·Î 5 ij¸¯ÅÍÀÔ´Ï´Ù. .It Ic changequote Á¦ 1, Á¦ 2 Àμö¸¦ ÄõÆ®½Åº¼·Î¼­ Á¤ÀÇÇÕ´Ï´Ù. ½Éº¼Àº, ±æÀÌ 5 ij¸¯ÅÍ À̳»·Î ÇØ ÁÖ¼¼¿ä. Àμö°¡ ÁÖ¾îÁöÁö ¾Ê¾Ò´ø °æ¿ì¿¡´Â µðÆúÆ®ÀÇ ÁÂ¿ì ½Ì±Û ÄõÆ®¿¡ ¼³Á¤µË´Ï´Ù. .It Ic decr ÀμöÀÇ °ªÀ» 1 ¸¸ °¨¼Ò½Ãŵ´Ï´Ù. Àμö´Â ¿Ã¹Ù¸£°Ô ¼öÄ¡¸¦ Ç¥ÇöÇϴ ij¸¯ÅÍ ¶óÀÎÀÌ ¾Æ´Ï¸é ¾ÈµË´Ï´Ù. .It Ic define Á¦ 1 Àμö·Î ÁöÁ¤ÇÑ À̸§ÀÇ »õ·Î¿î ¸ÅÅ©·Î¸¦ Á¤ÀÇÇÕ´Ï´Ù. Á¤ÀÇ ³»¿ëÀº Á¦ 2 Àμö·Î ÁÝ´Ï´Ù. Á¤ÀÇÁß¿¡¼­ÀÇ .Sq Li $ Ns Ar n ( .Ar n (Àº)´Â 0 ¿¡¼­ 9 ±îÁö)´Â °¢°¢ ±× ¸ÅÅ©·Î¿¡°Ô ÁÙ ¼ö ÀÖ´Ù Á¦ .Ar n Àμö¿¡ ġȯµË´Ï´Ù. .Ql $0 (Àº)´Â ¸ÅÅ©·Î¸í ±× ÀÚüÀÔ´Ï´Ù. ÁöÁ¤µÇÁö ¾Ê¾Ò´ø Àμö´Â NULL ij¸¯ÅÍ ¶óÀο¡ ġȯµË´Ï´Ù. .\" ¿ø¹® NULL -> null ¶Ç .Ql $# (Àº)´Â ÀμöÀÇ ¼ö¸¦ ³ªÅ¸³», .Ql $* (Àº)´Â ÄÞ¸¶·Î ´Ü¶ôÁö¾îÁø ÀüÀμö°¡ µË´Ï´Ù. .Ql $* ÇÏ .Ql $* (¿Í)°ú °°½À´Ï´Ù¸¸, ÇÑÃþ ´õ ġȯÀ» ÇÏÁö ¾Ê°Ô ÀüºÎÀÇ Àμö°¡ ÄõÆ® µË´Ï´Ù. .It Ic defn °¢ Àμö·Î ÁöÁ¤µÈ ¸ÅÅ©·ÎÀÇ Á¤ÀÇ ³»¿ëÀ» ÄõÆ® ÇØ µ¹·ÁÁÝ´Ï´Ù. À̰ÍÀº ¸ÅÅ©·Î Á¤ÀÇÀÇ ¸íĪ º¯°æ (ÆíÀÔ ¸ÅÅ©·Î¿©µµ)¿¡ ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. .It Ic divert .Nm ¿¡´Â 10 °³ÀÇ Ãâ·Â Å¥°¡ ÁغñµÇ¾î ÀÖ½À´Ï´Ù (0 ¿¡¼­ 9 ±îÁöÀÇ ¹øÈ£°¡ ºÙ¾î ÀÖ½À´Ï´Ù). ó¸®ÀÇ ¸¶Áö¸·À¸·Î, ¸ðµç Å¥´Â ¹øÈ£¼ø¼­¿¡ ¿¬°áµÇ¾î ÃÖÁ¾ÀûÀÎ Ãâ·ÂÀ» »ý¼ºÇÏ°Ô µÇ¾î ÀÖ½À´Ï´Ù. Ãʱ⠻óÅ¿¡¼­´Â Ãâ·Â Å¥´Â 0 ¹øÀ¸·Î ¼³Á¤µÇ¾î ÀÖ½À´Ï´Ù. .Ic divert ¸ÅÅ©·Î¸¦ »ç¿ëÇØ »õ·Î¿î Ãâ·Â Å¥¸¦ ¼±ÅÃÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù ( .Ic divert ¿¡ ºÎÁ¤ÇÑ Àμö¸¦ ÁÖ¸é(ÀÚ) Ãâ·ÂÀÌ ÆÄ±âµÇ¾î ¹ö¸³´Ï´Ù). .It Ic divnum ÇöÀçÀÇ Ãâ·Â Å¥ÀÇ ¹øÈ£¸¦ µ¹·ÁÁÝ´Ï´Ù. .It Ic dnl °³Çà ij¸¯Å͸¦ Æ÷ÇÔÇÑ ÁÙ ³¡±îÁöÀÇ ÀԷ ij¸¯Å͸¦ ÆÄ±âÇÕ´Ï´Ù. .It Ic dumpdef Àμö·Î ÁöÁ¤ÇÑ Ç׸ñ¿¡ °üÇØ¼­, ±× À̸§°ú Á¤ÀǸ¦ Ãâ·ÂÇÕ´Ï´Ù. Àμö°¡ ÁÖ¾îÁöÁö ¾Ê¾Ò´ø °æ¿ì´Â ¸ðµç ¸ÅÅ©·Î¿¡ ´ëÇØ Ãâ·ÂÇÕ´Ï´Ù. .It Ic errprint Á¦ 1 Àμö¸¦ Ç¥ÁØ ¿¡·¯ Ãâ·Â ½ºÆ®¸²¿¡ Ãâ·ÂÇÕ´Ï´Ù. .It Ic esyscmd ±× ÃÖÃÊÀÇ Àμö¸¦ ½©¿¡ °Ç³×ÁÖ¾î, ½©ÀÇ Ç¥ÁØ Ãâ·Â¿¡ µ¹·ÁÁÝ´Ï´Ù. ½©ÀÌ ±× Ç¥ÁØ ÀÔ·Â ¹× .Nm ÀÇ Ç¥ÁØ ¿¡·¯¸¦ °øÀ¯ÇÏ´Â °Í¿¡ ÁÖÀÇÇØ ÁÖ¼¼¿ä. .It Ic eval Á¦ 1 Àμö¸¦ °è»ê½ÄÀ¸·Î °£ÁÖÇØ 32-bit ÆøÀÇ »ê¼ú ¿¬»êÀ» ÀÌ¿ëÇØ °è»êÇÕ´Ï´Ù. ¿¬»êÀڷμ­´Â Ç¥ÁØÀÇ C ·Î ÀÌ¿ëµÇ´Â °Í, Áï 3 Ç×, »ê¼ú, ³í¸®, ½¬ÇÁÆ®, °ü°è, ºñÆ®ÀÇ °¢ ¿¬»êÀÚ, ¹× °ýÈ£°¡ ÀÌ¿ë °¡´ÉÇÕ´Ï´Ù. ¶Ç ¼öÄ¡µµ C ¿Í °°°Ô 8 Áø, 10 Áø, 16 ÁøÀ¸·Î ±â¼úÇÒ ¼ö ÀÖ½À´Ï´Ù. Á¦ 2 Àμö·Î (¸¸¾à ÀÖÀ¸¸é) ¿¬»ê °á°úÀÇ ±â¼ö¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ¾î Á¦ 3 Àμö·Î (¸¸¾à ÀÖÀ¸¸é) ¿¬»ê °á°úÀÇ ÃÖ¼Ò ÀÚ¸®¼ö¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. .It Ic expr .Ic eval ÀÇ º°¸íÀÔ´Ï´Ù. .It Ic ifdef Á¦ 1 Àμö·Î ÁöÁ¤ÇÑ À̸§ÀÇ ¸ÅÅ©·Î°¡ Á¤Àǵǰí ÀÖÀ¸¸é Á¦ 2 Àμö¸¦ µ¹·ÁÁÖ¾î, Á¤ÀǵǾî ÀÖÁö ¾ÊÀ¸¸é Á¦ 3 Àμö¸¦ µ¹·ÁÁÝ´Ï´Ù. Á¦ 3 Àμö°¡ »ý·« µÇ°í ÀÖ¾úÀ» °æ¿ì´Â, ±× °ªÀº .Dv NULL (ÀÌ)°¡ µË´Ï´Ù. µ¡ºÙ¿©¼­ .Ic unix ±×·¸´Ù°í ÇÏ´Â ´Ü¾î°¡ ¹Ì¸® Á¤Àǵǰí ÀÖ½À´Ï´Ù. .It Ic ifelse Á¦ 1 Àμö°¡ Á¦ 2 Àμö¿Í ¸ÅÄ¡ Çϸé(ÀÚ) Á¦ 3 Àμö¸¦ µ¹·ÁÁÝ´Ï´Ù. .Ic ¸ÅÄ¡ÇÏÁö ¾Ê¾Ò´ø °æ¿ì (ifelse), ±× 3 °³ÀÇ Àμö´Â ¹ö·ÁÁ® ´ÙÀ½ÀÇ 3 Àμö¸¦ ÀÌ¿ëÇØ °°Àº °Ë»ç¸¦ ¹Ýº¹ÇÕ´Ï´Ù. ÀÌ Ã³¸®´Â Àμö°¡ ¾ø¾îÁöµç°¡ ȤÀº 1 °³(»ì)¸¸ ³²À» ¶§±îÁö ¹Ýº¹ÇØÁ® ¾î´À °Í¿¡µµ ¸ÅÄ¡ÇÏÁö ¾Ê¾Ò´ø °æ¿ì¿¡´Â ±× ¸¶Áö¸·¿¡ ³²Àº Àμö ¶Ç´Â .Dv NULL (Àμö°¡ ¾ø¾îÁ³À» °æ¿ì)(ÀÌ)°¡ µ¹·ÁÁÖ¾îÁý´Ï´Ù. .It Ic include Á¦ 1 Àμö·Î ÁöÁ¤µÈ ÆÄÀÏÀÇ ³»¿ëÀ» µ¹·ÁÁÝ´Ï´Ù. ÆÄÀÏÀÌ ¹ß°ßµÇÁö ¾Ê¾Ò´ø °æ¿ì´Â, include ÆÐ½º¸¦ ¸í·ÉÇàÀ¸·Î .Fl I ÁöÁ¤µÈ µð·ºÅ丮¸¦ ÁöÁ¤ÇÏ´ÂÁö, µð·ºÅ丮¸¶´Ù ÄÚ·ÐÀ¸·Î ³ª´« ¸®½ºÆ®¸¦ ȯ°æ º¯¼ö .Ev M4PATH (À¸)·Î ¼³Á¤ÇØ ÁÖ¼¼¿ä. ÆÄÀÏÀ» include ÇÒ ¼ö ¾ø´Â °æ¿ì´Â, ¿¡·¯ ¸Þ¼¼Áö¸¦ Ç¥½ÃÇØ ÀÌ»óÁ¾·á(ABEND) ÇÕ´Ï´Ù. .It Ic incr Àμö¸¦ 1 ¸¸ Áõ°¡½Ãŵ´Ï´Ù. Àμö´Â ¿Ã¹Ù¸£°Ô ¼öÄ¡¸¦ Ç¥ÇöÇϴ ij¸¯ÅÍ ¶óÀÎÀÌ ¾Æ´Ï¸é ¾ÈµË´Ï´Ù. .It Ic index Á¦ 2 Àμö°¡, Á¦ 1 Àμö Áß(¾È)¿¡¼­, ¹«½¼ ij¸¯ÅÍ´«¿¡ ÃâÇöÇұ µ¹·ÁÁÝ´Ï´Ù (¿¹¸¦ µé¾î .Fn index "the quick brown fox jumped" fox ±×·³ 16 ÀÌ µ¹¾Æ°©´Ï´Ù). Á¦ 2 Àμö°¡ Á¦ 1 Àμö¾È¿¡ Æ÷ÇÔµÇÁö ¾Ê¾Ò´ø °æ¿ì¿¡´Â .Ic index (Àº)´Â -1 À» µ¹·ÁÁÝ´Ï´Ù. .It Ic indir Á¦ 1 Àμö·Î¼­ °Ç³×¹Þ´Â Ç׸ñÀÇ ¸ÅÅ©·Î¸¦ °£Á¢ÀûÀ¸·Î ºÎ¸¨´Ï´Ù. ±× ÀÌÈÄ´Â, Á¦ 1 ÀμöÀÇ ¸ÅÅ©·Î¿¡ ´ëÇÑ ÀμöÀÔ´Ï´Ù. .It Ic len Á¦ 1 ÀμöÀÇ Ä³¸¯Åͼö¸¦ µ¹·ÁÁÝ´Ï´Ù. ¿©ºÐÀÇ Àμö´Â ¹«½ÃµË´Ï´Ù. .It Ic m4exit Á¦ 1 Àμö (ÁöÁ¤µÇÁö ¾Ê¾Ò´ø °æ¿ì´Â 0)¸¦ Á¾·á ÄÚµå·Î¼­ Áï¼®¿¡¼­ Á¾·áÇÕ´Ï´Ù. .It Ic m4wrap ÀÔ·ÂÀÌ ¸¶Áö¸· .Dv EOF ¿¡ À̸£·¶À» ¶§¿¡, ¾î¶°ÇÑ µ¿ÀÛÀ» ½Ç½ÃÇÏ´ÂÁö¸¦ ¼³Á¤ÇÕ´Ï´Ù. ÀϹÝÀûÀ¸·Î´Â ¿©·¯ °¡ÁöÀÇ µÚ󸮸¦ ½Ç½ÃÇÏ´Â ¸ÅÅ©·Î¸¦ ¼³Á¤ÇÕ´Ï´Ù (¿¹¸¦ µé¾î, .Fn m4wrap cleanup(tempfile) )(À¸)·Î Çϸé(ÀÚ) ´Ù¸¥ ¸ðµç 󸮰¡ Á¾·áÇß´Ù ÈÄ¿¡ .Ic cleanup ¸ÅÅ©·Î°¡ ºÒ·Á °©´Ï´Ù). .It Ic maketemp Á¦ 1 Àμö¾ÈÀÇ Ä³¸¯ÅÍ ¶óÀÎ .Dq Li XXXXX (À»)¸¦ ÇöÀçÀÇ ÇÁ·Î¼¼½º ID ¿¡ ġȯÇÕ´Ï´Ù. ±× ¿ÜÀÇ ºÎºÐÀº ±×´ë·ÎÀÔ´Ï´Ù. À̰ÍÀº µ¶Æ¯ÇÑ Àӽà ÆÄÀϸíÀÇ »ý¼º¿¡ ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. .It Ic paste Á¦ 1 Àμö·Î ÁöÁ¤µÈ ÆÄÀÏÀÇ ³»¿ëÀ» ¸ÅÅ©·Î 󸮸¦ ÀÏÀý ½Ç½ÃÇÏÁö ¾Ê°í include ÇÕ´Ï´Ù. ¸¸¾à ÆÄÀÏÀ» ÀоîµéÀÏ ¼ö ¾ø´Â °æ¿ì¿¡´Â ¿¡·¯ ¸Þ¼¼Áö¸¦ Ãâ·ÂÇØ 󸮸¦ Áß´ÜÇÕ´Ï´Ù. .It Ic patsubst ij¸¯ÅÍ ¶óÀÎ °¡¿îµ¥, Á¤±Ô Ç¥Çö¿¡ ¸ÅÄ¡ ÇÏ´Â ºÎºÐÀÌ Ä¡È¯ ij¸¯ÅÍ ¶óÀÎÀ¸·Î ¿Å°Ü³õÀ» ¼ö ÀÖ½À´Ï´Ù. Åë»óÀº ´ÙÀ½ÀÇ ´ëÀÔ ±ÔÄ¢ÀÌ Àû¿ëµË´Ï´Ù: ampersand(&) .Pq Ql & (Àº)´Â, Á¤±Ô Ç¥Çö¿¡ ¸ÅÄ¡ ÇÑ Ä³¸¯ÅÍ ¶óÀÎÀ¸·Î ¿Å°Ü³õÀ» ¼ö ÀÖ½À´Ï´Ù. ij¸¯ÅÍ ¶óÀÎ .Sq \e Ns Ar # .Ns ( Ar # (Àº)´Â ¼öÄ¡) (Àº)´Â, ÀÏÄ¡ÇÏ´Â ÈĹæ ÂüÁ¶¿Í ¿Å°Ü³õÀ» ¼ö ÀÖ½À´Ï´Ù. .It Ic popdef °¢ Àμö¿¡ .Ic pushdef µÇ°í ÀÖ´Â Á¤ÀǸ¦ µÇµ¹¸³´Ï´Ù. .It Ic pushdef .Ic define (¿Í)°ú °°Àº Àμö¸¦ ÃëÇØ ¸ÅÅ©·Î¸¦ Á¤ÀÇÇÕ´Ï´Ù¸¸ ¿øÀÇ Á¤ÀǸ¦ ½ºÅÿ¡ º¸Á¸ÇØ µÓ´Ï´Ù. º¸Á¸µÈ Á¤ÀÇ´Â ´ÙÀ½¿¡ .Ic popdef ±×¸®°í µÇµ¹¸± ¼ö°¡ ÀÖ½À´Ï´Ù. .It Ic regexp Á¤±Ô Ç¥Çö¿¡ ±Ù°ÅÇØ, ij¸¯Å͸¦ ã¾Æ³À´Ï´Ù. Á¦ 2 Àμö±îÁöÀÇ °æ¿ì´Â ÃÖÃÊ·Î ¸ÅÄ¡ Çϴ ij¸¯ÅÍ À§Ä¡¸¦, ¸ÅÄ¡ Çϴ ij¸¯ÅͰ¡ ¾ø´Â °æ¿ì´Â -1 À» µ¹·ÁÁÝ´Ï´Ù. Á¦ 3 Àμö°¡ ÀÖ´Â °æ¿ì, ±× Áß¿¡ Æ÷ÇԵǴ ÆÐÅÏÀ» ¿Å°Ü³õÀº ij¸¯ÅÍ ¶óÀÎÀ» µ¹·ÁÁÝ´Ï´Ù. .It Ic shift Á¦ 1 Àμö¸¦ Á¦¿ÜÇÑ ¸ðµç Àμö¸¦ µ¹·ÁÁÝ´Ï´Ù. ³ª¸ÓÁöÀÇ Àμö´Â ÄõÆ® µÇ¾î ÄÞ¸¶·Î ´Ü¶ôÁö¾îÁý´Ï´Ù. ÄõÆ® ÇÏ´Â °Í¿¡ ÀÇÇÑ ÀÌÈÄÀÇ Ã³¸®·Î ġȯÀ» ÇÏÁö ¾Ê°Ô Çϰí ÀÖ½À´Ï´Ù. .It Ic sinclude ¿¡·¯°¡ ÀϾµµ ¹«½ÃµÇ´Â Á¡À» Á¦¿ÜÇØ .Ic include (¿Í)°ú °°½À´Ï´Ù. .It Ic spaste ¿¡·¯°¡ ÀϾµµ ¹«½ÃµÇ´Â Á¡À» Á¦¿ÜÇØ .Ic paste (¿Í)°ú °°½À´Ï´Ù. .It Ic substr Á¦ 1 ÀμöÀÇ Ä³¸¯ÅÍ ¶óÀÎ Áß , Á¦ 2 Àμö·Î ÁöÁ¤µÇ´Â ¿ÀÇÁ¼Â(offset)·ÎºÎÅÍ ½ÃÀ۵Ǿî Á¦ 3 Àμö·Î ÁöÁ¤µÇ´Â ij¸¯ÅͼöÀÇ ¹üÀ§ÀÇ ºÎºÐ ij¸¯ÅÍ ¶óÀÎÀ» µ¹·ÁÁÝ´Ï´Ù. Á¦ 3 Àμö°¡ »ý·« µÇ¾úÀ» °æ¿ì´Â ³ª¸ÓÁöÀÇ Ä³¸¯ÅÍ ¶óÀÎ ¸ðµÎ¸¦ µ¹·ÁÁÝ´Ï´Ù. .It Ic syscmd Á¦ 1 Àμö¸¦ ½©¿¡ °Ç³×ÁÝ´Ï´Ù. ¹Ýȯ°ªÀº ¾ø½À´Ï´Ù. .It Ic sysval ¸¶Áö¸·¿¡ ½ÇÇàÇß´Ù .Ic syscmd ÀÇ ¹Ýȯ°ªÀ» µ¹·ÁÁÝ´Ï´Ù. .It Ic traceon Àμö°¡ ÀÖ´Â °æ¿ì´Â ±× ¸ÅÅ©·ÎÀÇ Àü°³¸¦ Æ®·¹À̽º¸¦ ¿ÂÀ¸·Î ÇÕ´Ï´Ù. Àμö°¡ ¾ø´Â °æ¿ì´Â ¸ðµç ¸ÅÅ©·Î¸¦ Æ®·¹À̽º¸¦ ¿ÂÀ¸·Î ÇÕ´Ï´Ù. .It Ic traceoff Àμö°¡ ÀÖ´Â °æ¿ì´Â ±× ¸ÅÅ©·ÎÀÇ Àü°³¸¦ Æ®·¹À̽º¸¦ ¿ÀÇÁ·Î ÇÕ´Ï´Ù. Àμö°¡ ¾ø´Â °æ¿ì´Â ¸ðµç ¸ÅÅ©·Î¸¦ Æ®·¹À̽º¸¦ ¿ÀÇÁ·Î ÇÕ´Ï´Ù. .It Ic translit Á¦ 1 Àμö¾ÈÀÇ Ä³¸¯Å͸¦, Á¦ 2 Àμö·Î ÁöÁ¤µÈ ij¸¯ÅÍ ÁýÇÕÀ¸·ÎºÎÅÍ Á¦ 3 Àμö·Î ÁöÁ¤µÈ ij¸¯ÅÍ ÁýÇÕ¿¡ °íÃÄ ¾¹´Ï´Ù. ´Ù¸¸ .Xr tr 1 ½ÄÀÇ »ý·« ÁöÁ¤À» ÀÌ¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. .It Ic undefine Àμö·Î ÁöÁ¤µÈ ¸ÅÅ©·Î¸¦ ¹ÌÁ¤µµ¸®·Î ÇÕ´Ï´Ù. .It Ic undivert ÁöÁ¤µÈ Ãâ·Â Å¥ (Àμö°¡ ¾ø´Â °æ¿ì´Â ¸ðµç Å¥)ÀÇ ³»¿ëÀ» ¾µ¾î ³À´Ï´Ù. .It Ic unix OS Ç÷§ÆûÀ» Á¶»çÇϱâ À§Çؼ­(¶§¹®¿¡) ¹Ì¸® Á¤Àǵǰí ÀÖ´Â ¸ÅÅ©·ÎÀÔ´Ï´Ù. .It Ic __line__ ÇöÀçÀÇ ÆÄÀÏÀÇ Çà ¹øÈ£¸¦ µ¹·ÁÁÝ´Ï´Ù. .It Ic __file__ ÇöÀçÀÇ ÆÄÀϸíÀ» µ¹·ÁÁÝ´Ï´Ù. .El .Sh Áø´Ü .Ex -std .Pp .Ic m4exit ¸ÅÅ©·Î´Â, ÀÔ·Â ÆÄÀϷκÎÅÍ Á¾·á »óÅ·Πº¯°æÇϱâ À§Çؼ­ »ç¿ëÇØ ÁÖ¼¼¿ä. .Sh ȣȯ¼º .Nm (Àº)´Â, GNU-m4 ·ÎºÎÅÍ ´õÇØÁø ¾à°£ÀÇ È®Àå¿¡ °¡¼¼ÇØ, Single Unix Specification Version 2 ¿¡ ÃßÁ¾ Çϰí ÀÖ½À´Ï´Ù. Ç÷¡±× .Fl I, d ¹× .Fl t (Àº)´Â ºñÇ¥ÁØÀÔ´Ï´Ù. .Pp Æ®·¹ÀÌ½ÌÆ÷¸ÀÆ® Ãâ·Â°ú .Ic dumpdef (Àº)´Â, ÀÓÀÇÀÇ Ç¥ÁØÀ¸·Î ÁöÁ¤µÇÁö ¾Ê½À´Ï´Ù. ±×°ÍµéÀº, º¯°æÇϰÚÁö¿ä. ÀÇÁ¸ÇØ µÇÁö ¾Ê½À´Ï´Ù. ÇöÀçÀÇ Æ®·¹ÀÌ½ÌÆ÷¸ÀÆ®´Â, .Nm autoconf ÇÏÁö¸¸ ±â´ÉÇÒ ¼ö ÀÖµµ·Ï(µíÀÌ) GNU-m4 ¿¡ ±Ù°ÅÇØ ¾ö¹ÐÇÏ°Ô ÀÛ¼ºµÇ°í ÀÖ½À´Ï´Ù. .Pp À̽ļºÀ» À§Çؼ­(¶§¹®¿¡)´Â, .Ic builtin , .Ic esycmd , .Ic expr , .Ic indir , .Ic paste , .Ic patsubst , .Ic regexp , .Ic spaste , .Ic unix , .Ic __line__ , ¹× .Ic __file__ ÀÇ ¸ÅÅ©·Î´Â, »ç¿ëÇÏÁö ¾Ê´Â ÆíÀÌ ÁÁ½À´Ï´Ù. .Pp ¸ðµç ÆíÀÔÀº, ´Ù¸¥ ¸¹Àº .Nm ÀÇ ½ÇÀå³»¿¡¼­, Àμö¾øÀÌ È®ÀåÇÕ´Ï´Ù. .Pp ´Ù¸¥ ¸¹Àº .Nm ÀÇ ½ÇÀåÀº, ¹öÆÛ »çÀÌÁî¿¡ °üÇØ¼­, ¸Å¿ì »çÀÌÁî Á¦ÇÑÀ» ½Ç½ÃÇϰí ÀÖ½À´Ï´Ù. .Sh Ç¥ÁØ The .Nm À¯Æ¼¸®Æ¼´Â .St -p1003.1-2001 ÀûÇÕÇÕ´Ï´Ù. .Sh ¿ª»ç An .Nm ¸í·ÉÀº, PWB UNIX ·ÎºÎÅÍ µîÀåÇß½À´Ï´Ù. .Sh ÀúÀÚ .An -nosplit .An Ozan Yigit Aq oz@sis.yorku.ca ¹× .An Richard A. O'Keefe Aq ok@goanna.cs.rmit.OZ.AU . .br .An Marc Espie Aq espie@cvs.openbsd.org ¿¡ ÀÇÇÑ GNU-m4 ȣȯ¼º È®Àå