Emacs´Â ¸Å¿ì °­·ÂÇÑ editorÀ̳ª Ç×»ó °­·ÂÇÏ°í ÁÁ´Ù°í ÇÏ´Â °ÍÀº ¹è¿ì±â°¡ ¾î·Æ´Ù´Â ´ÜÁ¡ÀÌ ÀÖ´Ù. WindowXP(Á¤È®È÷ ¸»Çϸé KTUGCollection2006)À¸·Î ÀÌ»çÇØ ¿À¸é¼­ ´Ù½Ã Çѹø ¹è¿öº¸·ÁÇÑ´Ù. [[TableOfContents]] == Emacs»ç¿ëÀ» À§Çؼ­ ¿ì¼± ÇØ¾ß ÇÒ °Íµé == Emacs°¡ óÀ½ ¼³°èµÇ¾úÀ»¶§´Â Áö±Ý ÇöÀç keyboard¿¡¼­ AÅ° ¿·ÀÇ Caps LockÅ° ÀÚ¸®°¡ CtrlÅ°°¡ ÀÖ¾ú°í, ~Å° ÀÚ¸®¿¡ AltÅ°°¡ ÀÖ¾ú´Ù°í ÇÑ´Ù. LaTeX¸¦ »ç¿ëÇÏ´Ù°¡ º¸¸é ~Å°´Â °¡²û ¾µ ÀÏÀÌ ÀÖÁö¸¸, Caps LockÅ°´Â °ÅÀÇ ¾µÀÏÀÌ ¾ø´Ù.(½ÇÁ¦·Î Windows¸¦ ¾²¸é¼­µµ °ÅÀǾø´Ù.) ±×·¡¼­ http://youlsa.com/2005/09/08/51/ ¿·ÀÇ site¿¡ °¡¸é ÆÄÀÏÀ» down¹Þ¾Æ¼­ ¼³Ä¡ÇÏ¸é °£´ÜÈ÷ '''Caps LockÅ°¿Í CtrlÅ°¸¦ ¹Ù²ãÁÙ¼ö ÀÖ´Ù'''. ¾Æ¹«·¡µµ ÀÌÂÊÀÌ ÈÙ¾À ´õ ÆíÇÏ°Ô ÀÛ¾÷ÇÒ ¼ö ÀÖ´Ù. ±×·±µ¥ WindowXP systemÀÚü¸¦ ¹Ù²ÙÁö ¸»°í, Emacs³»ºÎ¿¡¼­¸¸ ¹Ù²Ü¼öµµ ÀÖÀ»µí Çѵ¥, ¾ÆÁ÷±îÁö´Â Àß ¸ð¸£°Ú½À´Ï´Ù. == ²À ¿Ü¿ö¾ßÇÒ °Íµé == * ¾Æ·¡ÀÇ Å° ÀÔ·ÂÀº http://wiki.kldp.org/wiki.php/EmacsGdbEtagsCscope ¿¡¼­ °¡Á®¿Â °ÍÀÔ´Ï´Ù. ½Å¼º±¹´Ô²² °¨»çµå¸³´Ï´Ù. {{{ C-x C-f control key¸¦ ´©¸¥ »óÅ¿¡¼­, `x'¸¦ ´©¸£°í (control key¸¦ ¶¼Áö ¾Ê°í) `f'¸¦ ´©¸¥´Ù. C-x o control key¸¦ ´©¸¥ »óÅ¿¡¼­, `x'¸¦ ´©¸£°í (control key¸¦ ¶¼°í) `o'¸¦ ´©¸¥´Ù. C-_ control key¸¦ ´©¸¥ »óÅ¿¡¼­ `_'(¹ØÁÙ)À» ´©¸¥´Ù. M-x compile meta key¸¦ ´©¸£°í `x'¸¦ ´©¸¥ ´ÙÀ½ (meta key¸¦ ¶¼°í) `compile'À» Ä¡°í À» ´©¸¥´Ù.}}} ÀÚ ÀÌÁ¦ ¿©±â±îÁö ¹è¿üÀ¸¸é, Emacs¸¦ ½ÇÇà½ÃÅ°°í, "C-h t"¸¦ ´­·¯ tutorialÀ» ¿­°í Àо±â ¹Ù¶õ´Ù. À§ tutorialÀ» ÀÐÀ» ¶§, ¾Æ·¡ Å° ¸ñ·ÏÀº ¹Ýµå½Ã ¿Ü¿ö¼­ Àͼ÷ÇÏ°Ô ¾µ ÁÙ ¾Ë¾Æ¾ß ÇÏ´Â Å°µéÀ̹ǷΠ²À ¿Ü¿ö ¾²±â ¹Ù¶õ´Ù: {{{ C-x C-c Emacs Á¾·á C-v ´ÙÀ½ ÆäÀÌÁö M-v ÀÌÀü ÆäÀÌÁö C-l ÇöÀç ÁÙÀ» âÀÇ °¡¿îµ¥ ºÎºÐÀ¸·Î º¸¿©ÁÜ C-p Ä¿¼­ up C-n Ä¿¼­ down C-f Ä¿¼­ right C-b Ä¿¼­ left C-a Ä¿¼­¸¦ ÁÙÀÇ ¸Ç óÀ½À¸·Î C-e Ä¿¼­¸¦ ÁÙÀÇ ¸Ç ¸¶Áö¸·À¸·Î M-f ´ÙÀ½ ´Ü¾î·Î M-b ÀÌÀü ´Ü¾î·Î C-d ÇÑ ±ÛÀÚ Áö¿ì±â M-d ÇÑ ´Ü¾î Áö¿ì±â C-k ÇöÀç Ä¿¼­ À§Ä¡¿¡¼­ ÁÙ ³¡±îÁö Áö¿ì±â C- ÇöÀç Ä¿¼­ À§Ä¡ ¸¶Å©(mark)Çϱâ M-w ¸¶Å©¿¡¼­ ÇöÀç Ä¿¼­ À§Ä¡±îÁö ºí·° ÁöÁ¤(copy) C-w ¸¶Å©¿¡¼­ ÇöÀç Ä¿¼­ À§Ä¡±îÁö Áö¿ì°í ºí·° ÁöÁ¤(cut) C-y ºÙ¿© ³Ö±â(paste) C-_ undo C-g ¸í·É ÀÔ·Â Ãë¼Ò (undo ¾Æ´Ô) C-x C-s ÆÄÀÏ ÀúÀåÇϱâ(save) C-x C-w ´Ù¸¥ À̸§À¸·Î ÆÄÀÏ ÀúÀåÇϱâ(save as...) C-x C-f ÆÄÀÏ ºÒ·¯¿À±â(load) C-x C-k ¹öÆÛ Áö¿ì±â(kill) C-x b ´ÙÀ½ ¹öÆÛ·Î Àüȯ C-x C-b ¹öÆÛ ¸ñ·Ï º¸¿©ÁÖ±â C-x 2 âÀ» µÎ°³·Î ³ª´©±â C-x 1 ÇöÀç âÀ» Á¦¿ÜÇÑ ´Ù¸¥ ⠴ݱâ C-x o ´Ù¸¥ âÀ¸·Î Ä¿¼­ À̵¿ }}} == ¾à¾î¸ðµå == ¾à¾î¸ðµå´Â Ưº°ÇÑ ´Ü¾î³ª ¹®±¸¿¡ ´ëÇÑ ¾à¾î¸¦ Á¤ÀÇÇؼ­ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù. ¶ÇÇÑ ¾à¾î¸ðµå¿¡´Â ½À°üÀûÀ¸·Î Ʋ¸° ¸»À̳ª ´Ü¾î°¡ ÀÖ´Â °æ¿ì¿¡´Â ¿ÀÀÚ¸¦ Á¤È®ÇÑ ´Ü¾î·Î ¹Ù²Ù¾î ÁÖ´Â ±â´Éµµ °¡Áö°í ÀÖ´Ù. ´ÜÁ¡À¸·Î´Â ¾à¾î¸¦ Á¤ÀÇÇÒ¶§ ´Ü¾îÀÚü°¡ ¾î¶² Àǹ̸¦ Æ÷ÇÔÇϰųª È®ÀåµÇ±â¸¦ ¿øÇÏÁö ¾Ê´Â ´Ü¾î´Â »ç¿ëÇÏÁö ¸»¾Æ¾ß ÇÑ´Ù. ¿¹¸¦ µé¸é World Association for Replicant Technology¸¦ À§ÇÏ¿© wart¸¦ »ç¿ëÇÏÁö ¾Ê´Â °ÍÀÌ ÁÁ´Ù. ¹°·Ð wartÀÚüÀÇ Àǹ̷Π»ç¿ëÇϱâÀ§Çؼ­´Â M-x unexpand-abbrev RETRUNÀ»ÀÌ¿ëÇؼ­ ¾à¾î¸¦ Ãë¼ÒÇÒ ¼ö´Â ÀÖ´Ù. === ÇÑ ¼¼¼ÇÀ» À§ÇÑ ¾à¾î === * Esc x abbrev-mode RETURN(M-x abbrev-mode RETURN)À» ÀÔ·ÂÇؼ­ ¾à¾î¸ðµå·Î µé¾î°£´Ù. ¸ðµå¶óÀο¡ Abbrev°¡ Ç¥½ÃµÈ´Ù. * Àü¿ª¾à¾î¸¦ À§Çؼ­ ¿øÇÏ´Â ¾à¾î¸¦ Àû°í, C-x aig(add-inverse-global)¸¦ ÀÔ·ÂÇÑ´Ù(Áö¿ª¾à¾îÀÇ °æ¿ì´Â C-x ail¸¦ ³Ö´Â´Ù). °¡·É ¿ì¸®°¡ \LaTeX¸í·ÉÀ» Áý¾î ³Ö´Â´Ù°í ÇÒ¶§ shiftÅ°°¡ ¾ø´Â latex·Î ¾²°íÀÚ Çϸé latex¸¦ ÀÔ·ÂÇÏ°í C-x aig¸¦ Áý¾î ³ÖÀ¸¸é »ç¿ëÀÚ¿¡°Ô È®ÀåÇÒ ¶§ ¾µ ³»¿ëÀ» ¿äûÇÑ´Ù. ¿©±â¿¡ LaTeX·Î Áý¾î ³ÖÀ¸¸é ¾ÕÀ¸·Î º»¹®À» ¾µ¶§ latex¸¸ ¾²°í ³­ÈÄ¿¡ º¸¸é ¾î´À»õ LaTeX·Î ¹Ù²î¾î ÀÖ´Â °ÍÀ» º¸°ÔµÈ´Ù. * Àü¿ª¾à¾î¶õ ¸ðµç ¸ðµå¿¡¼­ Àû¿ëµÇ´Â ¾à¾îÀÌ°í, Áö¿ª¾à¾î¶õ ƯÁ¤ÇÑ mode¿¡¼­¸¸ Àû¿ëµÇ´Â ¾à¾îÀÌ´Ù. ¿¹¸¦ µé¸é PDFLaTeX mode¿¡¼­¸¸ Àû¿ëµÇ´Â ¾à¾î) * ÀÌ·¯ÇÑ ¾à¾î¸ðµå°¡ ¸¶À½¿¡ µç´Ù°í ÇÏ¸é ½ÃÀÛÇÒ ¶§ ÀÚµ¿À¸·Î ½ÃÀÛÇϵµ·Ï Ãß°¡ÇÒ ¼ö ÀÖ´Ù. === ½ÃÀÛÇÒ¶§ ¾à¾î ¸ðµå ½ÇÇàÇϱâ === * .emacs ÆÄÀÏ¿¡ ´ÙÀ½°ú °°Àº ³»¿ëÀ» Àû´Â´Ù. {{{ (setq-default abbrev-mode t) (read-abbrev-file "~/.abbrev_defs") (setq save-abbrevs t) }}} == ´Ü¾î ¹× ÁÖ¼® ÀÚµ¿ ÀÔ·Â == ´ÙÀ½ÀÇ ³»¿ëÀº http://wiki.kldp.org/wiki.php/EmacsDynamicAbbrevExpand ¿¡¼­ °¡Áö°í ¿Ô½À´Ï´Ù. Á»´õ ÀÚ¼¼ÇÑ ³»¿ëÀº À§ÀÇ site¸¦ È®ÀÎÇϼ¼¿ä. Emacs´Â ¾î¶² ¹öÆÛÀÇ ³»¿ëÀ» ÆíÁýÇÒ ¶§, ÀÌ ¹öÆÛ¿¡ ¾²ÀÎ ¸ðµç ´Ü¾îÀÇ ³»¿ëÀ», ±× ´Ü¾îÀÇ Ã¹ ÀϺκи¸ ÀÔ·ÂÇصµ ÀÚµ¿À¸·Î ÀÔ·ÂÇØÁÖ´Â ±â´ÉÀÌ ÀÖ½À´Ï´Ù. ½ÇÁ¦·Î ÄÚµùÇÒ ¶§ ¸Å¿ì À¯¿ëÇÑ ±â´É ÁßÀÇ ÇϳªÀÔ´Ï´Ù. M-x dabbrev-expand·Î ½ÇÇàÇÒ ¼ö ÀÖÀ¸¸ç, ´ëºÎºÐÀÇ °æ¿ì '''M-/·Î ½ÇÇà'''ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¸í·É¹®À» Çϳª Áý¾î³Ö°í ³­ÈÄ¿¡ ´ÙÀ½¿¡ ÇÊ¿äÇÑ ±ÛÂ¥ ÀϺθ¦ typingÈÄ¿¡ M-/¸¦ ÇØ º¸¼¼¿ä. ¿ÀŸ ¾øÀÌ ºü¸£°Ô text¸¦ ÀÔ·ÂÇÒ ¼ö ÀÖ½À´Ï´Ù. == °³¿ä¸ðµåÀÇ »ç¿ë == Ã¥, ±ä ¸Þ¸ð, ±â¼úÀûÀÎ ³»¿ë µîÀ» ÀÛ¼ºÇϸ鼭 Àüü±¸Á¶¸¦ ÆľÇÇϱâ¶õ ¾î·Á¿î ÀÏÀÌ´Ù. µû¶ó¼­ °³¿ä¸¦ Àå¹®À¸·Î ºÎµå·´°Ô Àü°³Çϰųª, ÁøÇàÇϸ鼭 ³»¿ëÀ» À籸¼ºÇÏ´Â µ¥ ¾î·Á¿òÀ» ´À³¢´Ï´Ù. Áï ³ª¹«¿¡ °¡·Á¼­ ½£À» º¼ ¼ö ¾ø´Ù´Â ÀǹÌÀÌ´Ù. À̶§ °³¿ä ¸ðµå¿¡¼­´Â ÇØ°áÃ¥À» Á¦½ÃÇÑ´Ù. ÀÌ ±ÛÀº KTUGCollection2006ÀÇ emacs¼³Ä¡¿¡ µû¸¥ °ÍÀÔ´Ï´Ù. ºÎ¸ðµå·Î ¼³Ä¡µÈ °æ¿ì¿¡ »ç¿ë¹æ¹ýÀÌ´Ù. {{{ C-c @ C-t (hide body) ÅؽºÆ® º»¹® ¾øÀÌ Á¦¸ñ¸¸ º¼¼ö ÀÖ´Ù. C-c @ C-a (show all) º»¹®À̵ç Á¦¸ñÀ̵ç ÆÄÀÏÀÇ ¼û°ÜÁø ³»¿ëÀ» Ç¥½ÃÇÑ´Ù. C-c @ C-d (hide subtree) Á¦¸ñ(section or subsection)¿¡ µþ¸°º»¹®ÀÇ ÀϺΰ¡ »ý·«ºÎÈ£ (...) ´ëüµÊ C-c @ C-s (show subtree) »ý·«ºÎÈ£ÀÇ ³»¿ëÀÌ ³ªÅ¸³­´Ù. }}} * ³ª¸ÓÁö´Â pop-up menu¿¡¼­ ¾²¸é µÉ°Í °°À½ == Á¤±ÔÇ¥Çö½Ä »ç¿ëÇϱâ == === ¿ì¼± ±âº»ÀûÀÎ »ç¿ë === {{{ ^ ÁÙÀÇ Ã³À½À» ã´Â´Ù $ ÁÙÀÇ ³¡À» ã´Â´Ù ? ¾ÕÀÇ ¹®ÀÚ³ª ±×·ìÀ» 0 ¶Ç´Â 1ȸ ¹Ýº¹ÇÑ´Ù. . ÀÓÀÇÀÇ ÇÑ ±ÛÀÚ¸¦ ã´Â´Ù .* ±æÀÌ°¡ 0ÀÌ»óÀÎ ÀÓÀÇÀÇ ¹®ÀÚ¿­À» ã´Â´Ù \< ´Ü¾îÀÇ Ã³À½À» ã´Â´Ù \> ´Ü¾îÀÇ ³¡À» ã´Â´Ù [] ´ë°ýÈ£ ³»¿¡ Á¤ÀÇµÈ ¹®ÀÚ¿¹¸¦ µé¾î, [a-z]´Â ÀÓÀÇÀÇ ¾ËÆĺª ¼Ò¹®ÀÚ¸¦ ÀǹÌÇÑ´Ù \\( ±×·ìÀÇ ½ÃÀÛ \\) ±×·ìÀÇ ³¡ \\| \\|ÀÇ ¾ÕÀ̳ª µÚÀÇ Ç¥Çö½Ä¿¡ ´ëÀÀÇÑ´Ù. }}} ÀϹÝÀûÀÎ egrep°ú °¡Àå Å« Â÷ÀÌÁ¡Àº * '''*¿¬»êÀÚ''' ÀÌ´Ù. egrep¿¡¼­´Â *¿¬»êÀÚ°¡ ÀÓÀÇÀÇ ¹®ÀÚ¿­À» ÀǹÌÇÏÁö¸¸ emacs¿¡¼­´Â '''.*À¸·Î ½á¾ßÇÑ´Ù''' * ±×·ì¿¬»êÀÚÀÎ ()¿¡ ¿ª½½·¡½Ã°¡ µÎ°³ µé¾î°£´Ù´Â Á¡ÀÌ´Ù. ÀÌ·¸°Ô ¿ª½½·¡½Ã°¡ ¸¹ÀÌ µé¾î°¡´Â ÀÌÀ¯´Â ±âº»ÀûÀÎ Á¤±ÔÇ¥Çö½Ä ¿¬»êÀÚ ÀÌ¿Ü¿¡ Ư¼ö ¹®ÀÚ°¡ ¸¹¾ÆÁö´Â °ÍÀ» ¹æÁöÇϱâ À§ÇØ ¿ª½½·¡½Ã¸¦ Æ÷ÇÔÇÑ´Ù°í ÇÑ´Ù.(?) === ½ÇÁúÀûÀÎ »ç¿ë·Ê(»ç¿ëÀÚ Á¤ÀÇ command¸¦ ȯ°æÀ¸·Î ¹Ù²Ù±â) === ¿¹°¡ ÀûÀýÇÑÁö¸¦ ¸ð¸£°ÚÁö¸¸, ¸¸¾à »ç¿ëÀÚ Á¤ÀÇ command¸¦ »ý°¢ÀÌ ¹Ù²î¾î¼­ ȯ°æÀ¸·Î ¹Ù²Ù°í ½Í´Ù°í ÇÏÀÚ. ÀÌ°ÍÀ» ±×³É simpleÇÑ search & replace·Î ¹Ù²Ù±â´Â ½±Áö°¡ ¾Ê´Ù. ¿¹¸¦ µé¾î¼­ \mycommand{text}¸¦ \begin{myenv} text \end{myenv}·Î ÇØ¾ß ÇÏ´Â »óȲÀÌ ÀÖ´Ù¸é ¾î¶»°Ô °íÄ¥°ÍÀΰ¡? * ½¬¿î°Í ºÎÅÍ »ý°¢Çغ¸ÀÚ. command¿¡ µþ·Á ÀÖ´Â '''ÀÎÀÚ°¡ ÇϳªÀÌ°í ±×¾È¿¡ ¶Ç ´Ù¸¥ command°¡ ¾ø´Â °æ¿ì'''ÀÌ´Ù. ±×¾ß ¸»·Î textÀÏ »ÓÀÎ °æ¿ìÀÌ´Ù. C-M-% ¸¦ ÀÔ·ÂÇϰųª, EmacsÀÇ ¸Þ´º¿¡¼­ Edit->Replace->Replace Regexp ¸¦ ¼±ÅÃÇؼ­ ¸ÕÀú mycommandºÎºÐÀ» Áý¾î ³Ö°í, ±× ÀÌÈÄ¿¡ myenvºÎºÐÀ» Áý¾î ³Ö´Â´Ù. {{{ \\\mycommand{\(.*?\)} -> \\begin{myenv} \1 \\end{myenv} }}} * À§¿¡¼­ ÁÖ¸ñÇÒ Á¡Àº Á¤±ÔÇ¥Çö½ÄÀÇ ¿¬»êÀÚ·Î »ç¿ëµÇ´Â ¹®ÀÚ¸¦ ³ªÅ¸³»±â À§Çؼ­´Â ¿ª½½·¡½Ã µÎ°³¸¦ ¾Õ¿¡ µÎ¾î¾ß ÇÑ´Ù.Áï \\\mycommand¿¡¼­ ¾ÕÀÇ µÎ°³ÀÇ ¿ª½½·¡½Ã´Â 3¹ø° ¿ª½½·¡½Ã°¡ Á¤±ÔÇ¥Çö½ÄÀÇ ¿¬»êÀÚ°¡ ¾Æ´Ï¶ó´Â °ÍÀ» ³ªÅ¸³½°ÍÀÌ´Ù. µÎ¹ø°·Î \1ÀÇ ÀÎÀÚ·Î ¹ÞÀ» ¹®ÀÚ groupingÇÏ´Â ¿¬»êÀÚ \(.*?\) ÀÌ´Ù. ¿©±âÀÇ KTUG Wiki Á¤±Ô½Ä ¿¡¼­µµ ¾ð±ÞµÈ ³»¿ëÀÌÁö¸¸ ´À½ºÇÑ ¿¬»êÀÚ¸¦ ½á¼­ matchingÀ» ½Ãµµ ÇÑ°ÍÀÌ´Ù. ±×·¸´Ù¸é replacement string¿¡¼­´Â ¿Ö µÎ°³ÀÇ ¿ª½½·¡½Ã¸¸ ¾´ ÀÌÀ¯´Â Replacement stringÀº LISP ÀÎÅÍÇÁ¸®ÅÍ°¡ Çؼ®À» ¾ÈÇÑ´Ù°í ÇÕ´Ï´Ù. (¹«½¼ ¸»ÀÎÁö Àß ¸ð¸£°ÚÁö¸¸....) ±×·¡µµ ÀÛµ¿Àº Çϴϱñ¿ä? Çؼ®Á»... * Á»´õ ¾î·Á¿î °æ¿ì´Â '''ÀÎÀÚ°¡ 2°³ ÀÌ»óÀÌ°í ¾Õ¿¡ ´Ù¸¥ ¸í·É¹®ÀÌ ¾²ÀÎ °æ¿ì''' === ½ÇÁúÀûÀÎ »ç¿ë·Ê (º» Wikipage¸¦ LaTeX file·Î ¸¸µé±â) === ¹°·Ð ÃÖ±Ù¿¡ wikipage¸¦ ¾î¶»°Ô Çؼ­ LaTeX·Î º¯ÇüÇÏ¿´´Ù´Â ¼Ò¹®Àº µè±â´Â ÇßÁö¸¸, ¿©±â¼­´Â °£´ÜÈ÷ À§ÀÇ source¸¦ ¹Þ¾Æ¼­ ¾î¶»°Ô tex·Î ¹Ù²Ù´ÂÁö¿¡ ´ëÇؼ­ »ý°¢ÇØ º¸°Ú´Ù.