msgfmt
ÇÁ·Î±×·¥ ½ÇÇàÇϱâUsage: msgfmt [¿É¼Ç] ÆÄÀÏÀ̸§.po ...
msgfmt
ÇÁ·Î±×·¥ÀÌ ¾ö°ÝÇÏ°Ô À¯´ÏÆ÷·³/½ãÀÇ ¹æ½ÄÀ» ±×´ë·Î µû¸£µµ·Ï
µ¿ÀÛ½ÃŲ´Ù. ÇöÀç ÀÌ ¿É¼ÇÀº Ãâ·Â ÆÄÀÏÀÇ À̸§¿¡¸¸ ¿µÇâÀ» ÁÙ »ÓÀÌ´Ù. ÀÌ
¿É¼ÇÀÌ ÁÖ¾îÁöÁö ¾ÊÀ¸¸é Ãâ·Â ÆÄÀÏÀÇ À̸§Àº µµ¸ÞÀÎ À̸§°ú °°´Ù. ¾ö°ÝÇÑ
À¯´ÏÆ÷·³ ¸ðµå·Î ½ÇÇàµÉ °æ¿ì, `.mo' È®ÀåÀÚ°¡ ÆÄÀÏ À̸§¿¡ ¾øÀ» °æ¿ì
`.mo'°¡ µÚ¿¡ ºÙ¿©Áø´Ù.
¿ì¸®´Â ½ãÀÇ ±¸Çö¹°ÀÇ ÀÌ·¯ÇÑ µ¿ÀÛÀÌ ³Ê¹« ¹Ùº¸°°´Ù°í »ý°¢ÇϹǷÎ, ÀÌ
¸ðµå´Â ±âº»ÀûÀ¸·Î ¼±ÅõÇÁö ¾Ê´Â´Ù.
msgid
¿Í msgstr
¹®ÀÚ¿À» ¿¬±¸ÇÏ°í ºñ±³ÇÑ´Ù. msgid
¿Í
msgstr
Áß Çϳª°¡ ÁٹٲÞÀ¸·Î ³¡³ª°í, ´Ù¸¥ Çϳª´Â ±×·¸Áö ¾Ê´Ù¸é
Á¤»óÀÌ ¾Æ´Ï¶ó°í Ãë±ÞÇÑ´Ù.
¶Ç, ¸¸¾à ¹®ÀÚ¿ÀÌ printf
-¿Í °°Àº ÇÔ¼ö¿¡ »ç¿ëµÈ Çü½Ä ¹®ÀÚ¿ÀÏ
°æ¿ì, µÎ ¹®ÀÚ¿Àº °°Àº °¹¼öÀÇ, µ¿ÀÏÇÑ ÇüÀÇ `%' Çü½Ä ÁöÁ¤ÀÚ°¡ µé¾î
ÀÖ¾î¾ß ÇÑ´Ù. ¸¸¾à c-code
³ª possible-c-format
Ç÷¡±×°¡
#, Ưº° ÁÖ¼®¹®¿¡ ¾î¶² Ç׸ñ¿¡ ³ªÅ¸³¯ °æ¿ì, ÀÌ °Ë»ç°¡ ¼öÇàµÈ´Ù.
¿¹¸¦ µé¾î ÀÌ °Ë»ç´Â `%s'¿¡ ¸ÂÁö ¾Ê°Ô `%.*s'¸¦ »ç¿ëÇϰųª,
`%s'¿¡ ¸ÂÁö ¾Ê°Ô `%d'¸¦ »ç¿ëÇϰųª, `%x'¿¡ ¸ÂÁö ¾Ê°Ô
`%d'¸¦ »ç¿ëÇÏ´Â °æ¿ì¸¦ ¾Ë¾Æ³¾ ¼ö ÀÖ´Ù. ÀÌ °Ë»ç´Â ÀμöÀÇ
À§Ä¡ ÁöÁ¤±îÁöµµ ó¸®ÇÑ´Ù.
º¸Åë xgettext
ÇÁ·Î±×·¥Àº ÀÚµ¿À¸·Î ¾î¶² ¹®ÀÚ¿ÀÌ Çü½Ä ¹®ÀÚ¿ÀÎÁö,
¾Æ´ÑÁö °áÁ¤ÇÑ´Ù. ÇÏÁö¸¸, ÀÌ ¾Ë°í¸®ÁòÀº ¿Ïº®ÇÏÁö ¾Ê´Ù. ÀÌ ¾Ë°í¸®ÁòÀº
printf
-°°Àº ÇÔ¼ö¿¡¼ »ç¿ëµÇÁö ¾ÊÀº ¹®ÀÚ¿ÀÇ °æ¿ì¿¡µµ Çü½Ä
¹®ÀÚ¿·Î Ãë±ÞÇÒ ¼ö ÀÖÀ¸¹Ç·Î, msgfmt
ÀÌ ÀÌ °Ë»ç¸¦ ¼öÇàÇÒ ¶§ ¿À·ù¸¦
³¾ ¼ö ÀÖ´Ù. ¶Ç ÇÑ °¡Áö ¹®Á¦´Â: ¾î¶² ¹®ÀÚ¿Àº Çü½Ä ¹®ÀÚ¿·Î Ãë±ÞµÇÁö
¾ÊÀ» ¼öµµ ÀÖÀ¸³ª, printf
-°°Àº ÇÔ¼ö¿¡¼ »ç¿ë µÉ ¼öµµ ÀÖ´Ù.
±×·¯¹Ç·Î, ÀÌ ¹®Á¦¸¦ ÇØ°áÇÏ´Â ¹æ¹ýÀº ÇÁ·Î±×·¡¸Ó°¡ xgettext
ÇÁ·Î±×·¥¿¡ ¾Ë·ÁÁÖ´Â °ÍÀÌ´Ù (see section Å°¿öµå ¾Õ¿¡ ¿À´Â Ư¼ö ÁÖ¼®¹®). ¹ø¿ªÀÚ´Â #,
Ç÷¡±×¸¦ ¾ø¾Ù »ý°¢À» ÇÏ¸é ¾È µÈ´Ù. #,¸¦ ¾ø´ë´Â `±³Á¤ ÀÛ¾÷'À»
ÇÑ´Ù°í Çصµ, ³ªÁß¿¡ msgmerge
°¡ ½ÇÇàµÇÀÚ ¸¶ÀÚ ´Ù½Ã ¿ø»óº¹±ÍµÈ´Ù.
¸¸¾à ÀÔ·Â ÆÄÀÏÀÌ `-'ÀÏ °æ¿ì, Ç¥ÁØ ÀԷ¿¡¼ Àд´Ù. ¸¸¾à Ãâ·Â ÆÄÀÏÀÌ `-'À̸é, Ãâ·ÂÀº Ç¥ÁØ Ãâ·ÂÀ¸·Î ¾²¿©Áø´Ù.
msgfmt
À¸·Î ¸¸µé¾î Áö´Â MO ÆÄÀÏÀÇ Çü½ÄÀº ¾Æ·¡¿¡ ÷°¡µÈ ±×¸²À¸·Î Àß
¼³¸íµÈ´Ù.
óÀ½ÀÇ µÎ ¿öµå´Â ÆÄÀÏÀ» ¾Ë¾Æº¸´Â µ¥ »ç¿ëÇÑ´Ù. ÀÌ °íÀ¯ ¼ýÀÚ(magic
number)´Â ÀÌ ÆÄÀÏÀÌ GNU MO ÆÄÀÏÀÓÀ» ¾Ë·ÁÁØ´Ù. ÀÌ ¼ýÀÚ´Â MO ÆÄÀÏÀÌ
¸¸µé¾îÁö´Â ±â°èÀÇ ¹ÙÀÌÆ® ¼ø¼¿¡ µû¶ó ±â·ÏµÇ¹Ç·Î, ÀÌ °íÀ¯ ¼ýÀÚ´Â ½ÇÁ¦·Î
µÎ°³ÀÌ´Ù: ±× ¼ýÀÚ´Â 0x950412de
¿Í 0xde120495
ÀÌ´Ù. µÎ¹ø°·Î
¿À´Â ¿öµå´Â ÀÌ ÆÄÀÏ Æ÷¸ËÀÇ ÇöÀç °³Á¤ÆÇ ¹øÈ£¸¦ ¶æÇÑ´Ù. ÇöÀç ÀÌ °³Á¤ÆÇ
¹øÈ£´Â 0ÀÌ´Ù. ÀÌ ¹øÈ£´Â ¹Ì·¡¿¡ º¯°æµÉ ¼ö ÀÖ°í, MO ÆÄÀÏÀ» ÀдÂ
ÇÁ·Î±×·¥ÀÌ ÀÌ ÆÄÀÏÀÇ Çü½ÄÀÌ »õ·Î¿î Çü½ÄÀ̶ó´Â °É ¾Ë¾ÆÂ÷¸®°í Á¦´ë·Î
ó¸®ÇÒ ¼ö ÀÖ°Ô ÇØ ÁØ´Ù. ¹öÀü¿¡ µû¶ó °¢°¢ ´Ù¸¥ °íÀ¯ ¼ýÀÚ¸¦ »ç¿ëÇÏÁö´Â
¾Ê°í, ÀÌ·¸°Ô ¼ýÀÚ¿Í´Â º°µµ·Î ¹öÀüÀÌ ÀúÀåµÈ´Ù. ±× ÁÖ¿äÇÑ ÀÌÀ¯´Â
`/etc/magic'Àº º¸Åë ÀÚÁÖ °»½ÅµÇÁö ¾Ê±â ¶§¹®ÀÌ´Ù. ÀÌ·¯ÇÑ Á¤Ã¥Àº
°íÀ¯ ¼ýÀÚ¸¦ ³»ºÎ Çü½Ä ÆǺ°°ú´Â ºÐ¸®ÇÒ ¼ö ÀÖ´Ù´Â Á¡¿¡¼ ´õ ÁÁ´Ù.
±× ´ÙÀ½¿¡ ÆÄÀÏÀÇ µÚÂÊ¿¡ ÀÖ´Â Å×À̺íÀ» °¡¸®Å°´Â Æ÷ÀÎÅ͵éÀÌ ÀÖ¾î¼ MO ÆÄÀÏÀ» Àд ÇÁ·Î±×·¥À» ´Ù½Ã ÄÄÆÄÀÏÇÏÁö ¾Ê°í ½±°Ô MO ÆÄÀÏÀÇ ¸Ó¸®ºÎºÐÀ» È®ÀåÇÒ ¼ö ÀÖ°Ô ÇØ ÁØ´Ù. ÀÌ·¯ÇÑ Á¤Ã¥Àº ³ªÁß¿¡ Ç÷¡±× ºñÆ®, »ç¿ëµÈ ¹®Àڼ ÆǺ°, »õ·Î¿î Å×À̺í°ú °°Àº °ÍµéÀ» ³ªÁß¿¡ ÷°¡ÇÒ ¶§ ÁÁÀ» °ÍÀÌ´Ù.
±× ´ÙÀ½¿¡ ±×¸²¿¡¼ O¿Í T ¿ÀÇÁ¼Â À§Ä¡¿¡, µÎ°³ÀÇ ¹®ÀÚ¿ µð½ºÅ©¸³ÅÍ·Î ÀÌ·ç¾îÁø Å×À̺íÀÌ ÀÖ´Ù. µÎ Å×ÀÌºí ³»ÀÇ °¢ ¹®ÀÚ¿µéÀº ¸ðµÎ µÎ°³ÀÇ 32 ºñÆ® Á¤¼ö¸¦ »ç¿ëÇÑ´Ù. ÇÑ°³´Â ¹®ÀÚ¿ÀÇ ±æÀ̸¦ ³ªÅ¸³»°í, µµ Çϳª´Â ±× ¹®ÀÚ¿ÀÇ MO ÆÄÀÏ ³»¿¡¼ÀÇ ¿ÀÇÁ¼ÂÀ» ¶æÇÑ´Ù. ÀÌ ¿ÀÇÁ¼ÂÀº ÆÄÀÏÀÇ ¸Ç óÀ½¿¡¼ºÎÅÍ ¹ÙÀÌÆ® ´ÜÀ§·Î °Ô»êÇÑ °ÍÀÌ´Ù. ù¹ø° Å×À̺íÀº ¿ø ¹®ÀÚ¿ÀÇ µð½ºÅ©¸³ÅÍ°¡ µé¾î ÀÖ°í »çÀü¼ø¼´ë·Î ¿À¸§Â÷ ¼øÀ¸·Î Á¤·ÄµÇ¾î ÀÖ´Ù. µÎ¹ø° Å×À̺íÀº ¹ø¿ªµÈ ¹®ÀÚ¿¿¡ ´ëÇÑ µð½ºÅ©¸³ÅÍ°¡ µé¾î ÀÖ°í, ¾ÕÀÇ Å×À̺í°ú ´ëÀÀµÇ´Â ¼ø¼·Î ¹è¿µÇ¾î ÀÖ´Ù: ¹ø¿ª¹®À» ãÀ¸·Á¸é °°Àº À妽ºÀÇ µÎ¹ø° Å×À̺íÀÇ ¹®ÀÚ¿À» °¡Á®¿À¸é µÈ´Ù.
¿ø ¹®ÀÚ¿À» Á¤·ÄÇØ ³õÀ¸¸é Çؽ¬ Å×À̺íÀÌ ¾ø°Å³ª MO ÆÄÀÏ¿¡ ÀÖ´Â Çؽ¬ Å×À̺íÀ» ¾²Áö ¾Ê´Â ÆíÀÌ ´õ ÁÁÀ» °æ¿ì¿¡ °£´ÜÈ÷ ÀÌÁø Ž»öÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¶Ç ÇÑ °¡Áö ÀåÁ¡ÀÌ Àִµ¥, PO ÆÄÀÏÀÇ ºó ¹®ÀÚ¿¿¡ ´ëÇÑ ¹ø¿ªÀº º¸Åë ±× MO ÆÄÀÏ¿¡ ÷°¡µÈ ½Ã½ºÅÛ Á¤º¸·Î ¹ø¿ªµÇ¾î Àֱ⠶§¹®ÀÌ´Ù. Áï ºó ¹®ÀÚ¿°ú ±×¿¡ ´ëÇÑ ¹ø¿ª¹®Àº ÀÚµ¿À¸·Î ÀÌ µÎ Å×À̺íÀÇ Ã¹¹ø°¿¡ µé¾î ÀÖ°Ô µÇ°í, ½Ã½ºÅÛ Á¤º¸¸¦ ã±â°¡ ¸Å¿ì ½±°Ô µÈ´Ù.
Çؽ¬ Å×À̺íÀÇ Å©±â S´Â 0ÀÏ ¼öµµ ÀÖ´Ù. ÀÌ °æ¿ì¿¡ Çؽ¬ Å×À̺íÀÌ MO
ÆÄÀÏ¿¡ µé¾î ÀÖÁö ¾ÊÀº °ÍÀÌ´Ù. ¾î¶² »ç¶÷µéÀº ¹Ì¸® °è»êµÈ Çؽ¬ Å×À̺íÀÌ
µð½ºÅ© °ø°£À» Â÷ÁöÇÏ°í, ±×·¸°Ô ¸¹Àº ¼Óµµ Çâ»óÀº ¾ø±â ¶§¹®¿¡ Çؽ¬
Å×À̺íÀÌ ¾ø´Â ÆíÀ» ÁÁ¾ÆÇÑ´Ù. Çؽ¬ Å×ÀÌºí ³»¿¡´Â MO ÆÄÀÏ¿¡¼ ¹®ÀÚ¿ÀÌ
Á¤·ÄµÈ Å×À̺í»óÀÇ À妽ºµéÀÌ µé¾î°£´Ù. ¿©±â¿¡ ¾²ÀÎ Á¤È®ÇÑ ÇؽÌ
¾Ë°í¸®ÁòÀº ³Ê¹« GNU gettext
Äڵ忡 °ü·ÃµÇ¾î ÀÖÀ¸¹Ç·Î, ¿©±â¼´Â
¼³¸íµÇÁö ¾Ê´Â´Ù.
¹®ÀÚ¿ ÀÚü¿¡ ´ëÇؼ´Â Çؽ¬ ÆÄÀÏÀ» µû¸£°í, °¢°¢ÀÇ ¹®ÀÚ¿Àº NUL·Î
³¡³´Ù. ±×¸®°í ÀÌ NULÀº ¹®ÀÚ¿ ±â¼úÀÚ¿¡¼ ¹®ÀÚ¿ÀÇ ±æÀÌ·Î ¼¼Áö
¾Ê´Â´Ù. msgfmt
ÇÁ·Î±×·¥Àº MO ÆÄÀÏ ¹®ÀÚ¿ÀÇ ÁÙ¸ÂÃã(alignment)À»
°áÁ¤ÇÏ´Â ¼ö ÀÖ´Â ¿É¼ÇÀÌ ÀÖ´Ù. ÀÌ ¿É¼ÇÀ¸·Î, °¢°¢ÀÇ ¹®ÀÚ¿Àº ÁÙ¸ÂÃã °ªÀÇ
¹è¼ö°¡ µÇ´Â ¿ÀÇÁ¼Â¿¡¼ ½ÃÀÛÇÑ´Ù. ¸î¸î RISC ±â°è¿¡¼´Â, Á¦´ë·Î µÈ
ÁÙ¸ÂÃãÀ» ÅëÇØ ¼Óµµ°¡ Çâ»óµÉ °ÍÀÌ´Ù.
º¹¼öÇüÀº ¿ø ¹®ÀÚ¿ÀÇ º¹¼öÇüÀÌ ¿ø ¹®ÀÚ¿ÀÇ ´Ü¼öÇü ¹Ù·Î µÚ¿¡ ¿Àµµ·Ï ÀúÀåµÇ¾î ÀÖ°í, NUL ¹ÙÀÌÆ®·Î ±¸ºÐµÈ´Ù. ¹®ÀÚ¿ µð½ºÅ©¸³ÅÍ¿¡´Â µÑ ´Ù µé¾î ÀÖ´Ù. ÇÏÁö¸¸, ¿ÀÁ÷ ¿ø ¹®ÀÚ¿ÀÇ ´Ü¼öÇü¸¸ÀÌ Çؽ¬ Å×ÀÌºí¿¡ µé¾î ÀÖ´Ù. ¹ø¿ª¹®ÀÇ º¹¼öÇüµéÀº ¼ø¼´ë·Î ÀúÀåµÇ¾î ÀÖ°í, NUL ¹ÙÀÌÆ®·Î ±¸ºÐµÈ´Ù. ¸¶Âù°¡Áö·Î ¹®ÀÚ¿ µð½ºÅ©¸³ÅÍ¿¡´Â ¸ðµÎ ´Ù µé¾î ÀÖ´Ù.
¾Æ¹« °Íµµ MO ÆÄÀÏÀÇ ¹®ÀÚ¿·Î NULÀ» Æ÷ÇÔÇÏ´Â °ÍÀ» ¹æÇØÇÏÁö ¾Ê´Â´Ù. ÇÏÁö¸¸, ÇöÀç ÇÁ·Î±×·¥ÀÇ ÀÎÅÍÆäÀ̽º´Â ¹®ÀÚ¿ÀÌ NUL·Î ³¡³´Ù°í °¡Á¤ÇϹǷÎ, Æ÷ÇÔµÈ NULÀº ¾µ¸ð¾ø±âµµ ÇÏ´Ù. ÇÏÁö¸¸ MO ÆÄÀÏ Æ÷¸ËÀ» ÀÌ·¸°Ô ÀϹÝÀûÀ¸·Î ¸¸µé¸é, ³ªÁß¿¡ ´Ù¸¥ ÀÎÅÍÆäÀ̽º¸¦ ¸¸µé¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î MO ÆÄÀÏ ³»¿¡ wide ¹®ÀÚ¸¦ ¾²µµ·Ï ±¸ÇöÇÒ ¼öµµ ÀÖ°í, ±×·¯¸é NUL ¹ÙÀÌÆ®´Â ¾îµð¼µçÁö ³ªÅ¸³¯ ¼ö ÀÖ´Ù. (¾Æ´Ï¿À, MO ÆÄÀÏ¿¡ ¿ÍÀ̵å(wide) ¹®ÀÚ°¡ µé¾îÀÖ±æ ¹Ù¶óÁö ¾Ê´Â´Ù. ±×·¯¸é ÆÄÀÏÀÌ ºÒÇÊ¿äÇÏ°Ô Ä¿Áú °ÍÀÌ°í, `wchar_t' ŸÀÔÀº Ç÷§Æû¿¡ ÀÇÁ¸ÇϹǷÎ, MO ÆÄÀϵµ Ç÷§Æû¿¡ ÀÇÁ¸ÇÏ°Ô µÉ °ÍÀÌ´Ù)
ÀÌ ¹®Á¦´Â GNU gettext
°³¹ß Æ÷·³¿¡¼ ½É°¢ÇÏ°Ô ³íÀǵǾú°í, MO ÆÄÀÏ
Æ÷¸ËÀÌ ½Ã°£ÀÌ °¥¼ö·Ï ¹ßÀüÇÏ°í º¯ÈÇϸ®¶ó°í ¿¹ÃøÇÒ ¼ö ÀÖ´Ù. ¿©·¯ °¡Áö
Çü½ÄÀÌ µ¿½Ã¿¡ Áö¿øµÉ ¼öµµ ÀÖ´Ù°í ¿¹»óÇÒ ¼öµµ ÀÖ´Ù. ÇÏÁö¸¸ ºÐ¸íÈ÷,
¿ì¸®´Â ¾îµð¼ºÎÅÏ°¡ ½ÃÀÛÇØ¾ß ÇÏ°í, ÇöÀçÀÇ MO ÆÄÀÏ Æ÷¸ËÀº ÁÁÀº
½ÃÀÛÁ¡ÀÌ´Ù. ±¸Ã¼ÀûÀ¸·Î È®½ÇÇÑ °ÍÀº ¾Æ¹«°Íµµ ¾ø°í, ÀÌ Æ÷¸ËÀº ³ªÁß¿¡ ¾ÆÁÖ
½±°Ô ¹ßÀüÇÒ ¼ö ÀÖÀ¸¹Ç·Î, ÇöÀç Á¢±Ù ¹æ¹ý¿¡ ´ëÇØ ³Ê¹« °ÆÁ¤ÇÒ ÇÊ¿ä´Â ¾ø´Ù.
byte +------------------------------------------+ 0 | °íÀ¯ ¼ýÀÚ = 0x950412de | | | 4 | ÆÄÀÏ Çü½Ä revision = 0 | | | 8 | ¹®ÀÚ¿ÀÇ °¹¼ö | == N | | 12 | ¿ø ¹®ÀÚ¿ Å×À̺íÀÇ ¿ÀÇÁ¼Â | == O | | 16 | ¹ø¿ªµÈ ¹®ÀÚ¿ Å×À̺íÀÇ ¿ÀÇÁ¼Â | == T | | 20 | Çؽ¬ Å×À̺íÀÇ Å©±â | == S | | 24 | Çؽ¬ Å×À̺íÀÇ ¿ÀÇÁ¼Â | == H | | . . . (³ªÁß¿¡ ´õ ¸¹Àº Ç׸ñµéÀÌ ÀÖÀ» ¼öÀÖ´Ù) . . . | | O | 0¹ø° ¹®ÀÚ¿ÀÇ ±æÀÌ & ¿ÀÇÁ¼Â ---------------. O + 8 | 1¹ø° ¹®ÀÚ¿ÀÇ ±æÀÌ & ¿ÀÇÁ¼Â -----------------. ... ... | | O + ((N-1)*8)| (N-1)¹ø° ¹®ÀÚ¿ÀÇ ±æÀÌ & ¿ÀÇÁ¼Â | | | | | | | T | 0¹ø° ¹ø¿ª¹®ÀÇ ±æÀÌ & ¿ÀÇÁ¼Â -------------------. T + 8 | 1¹ø° ¹ø¿ª¹®ÀÇ ±æÀÌ & ¿ÀÇÁ¼Â ---------------------. ... ... | | | | T + ((N-1)*8)| (N-1)¹ø° ¹ø¿ª¹®ÀÇ ±æÀÌ & ¿ÀÇÁ¼Â | | | | | | | | | | | H | Çؽ¬ Å×ÀÌºí ½ÃÀÛ | | | | | ... ... | | | | H + S * 4 | Çؽ¬ Å×ÀÌºí ³¡ | | | | | | | | | | | | NUL·Î ³¡³ª´Â 0¹ø° ¹®ÀÚ¿ <----------------' | | | | | | | | | NUL·Î ³¡³ª´Â 1¹ø° ¹®ÀÚ¿ <------------------' | | | | | | ... ... | | | | | | | NUL·Î ³¡³ª´Â 0¹ø° ¹ø¿ª¹® <--------------------' | | | | | NUL·Î ³¡³ª´Â 1¹ø° ¹ø¿ª¹® <----------------------' | | ... ... | | +------------------------------------------+
Go to the first, previous, next, last section, table of contents.