{{{#!html
Çì´õÆÄÀÏÀÇ Å¬·¡½º ¸â¹öÇÔ¼ö ¼Ò½ºÆÄÀÏ¿¡ ÆíÇÏ°Ô Ãß°¡Çϱâ
}}}
[[TableOfContents]]
=== ´Ù¿î·Îµå ===
attachment:EmacsExpandMemberFunctions/expand-member-functions.tar.gz
[http://www.emacswiki.org/cgi-bin/wiki/ExpandMemberFunctions ¿©±â]°¡ ¿ø·¡ ÆäÀÌÁö À̳ª ÆäÀÌÁö ³»ºÎ¿¡ ÀÖ´Â °ü·Ã ¸µÅ©°¡ ±úÁ® ÀÖ½À´Ï´Ù.[[br]]
±×·¡¼ [http://github.com/sigma/dotfiles/tree/e8f24cc2dec97ce90a1ade6e39b672a68b194f36/ChangeLog ¿©±â]¿¡¼ {{{ExpandMemberFunctions}}} ±â´ÉÀ» ÇÏ´Â ÆÄÀϸ¸ ÃßÃâÇß½À´Ï´Ù.
=== ¼³Ä¡¹æ¹ý ===
À§ ÆÄÀÏ ´Ù¿î·ÎµåÈÄ Àû´çÇÑ °÷¿¡ ¾ÐÃàÇØÁ¦ ÈÄ .emacs ¼³Á¤ÆÄÀÏ¿¡ ¾Æ·¡ ³»¿ë Ãß°¡
{{{
(add-to-list 'load-path "/¼³Ä¡ÇÑ°÷/expand-member-functions")
(autoload 'expand-member-functions "member-functions" "Expand C++ member function declarations" t)
(add-hook 'c++-mode-hook (lambda () (local-set-key "\C-cm" 'expand-member-functions)))
}}}
=== °£´ÜÇÑ »ç¿ë¹ý ===
°£´ÜÇÑ Äڵ带 ÀÔ·ÂÈÄ (test.h ¶ó °¡Á¤)
{{{
class Test
{
public:
void PrintTest1();
void PrintTest2();
};
}}}
{{{
M-x expand-member-functions
or C-c m (À§ ¼³Ä¡ ¹æ¹ý´ë·Î Çß°í c++-mode ÀÏ °æ¿ì)
}}}
(Çì´õÆÄÀÏ È®ÀåÀÚ°¡ h Àΰæ¿ì c-mode ÀÎ °æ¿ì°¡ ÀÖ½À´Ï´Ù.)
¹Ì´Ï¹öÆÛ¿¡ ¾Æ·¡ ³ª¿À¸é ¿£ÅÍ
{{{
Header file: test.h
}}}
¹Ì´Ï¹öÆÛ¿¡ ¾Æ·¡ ³ª¿À¸é Àû´çÈ÷ ÀÔ·ÂÈÄ ¿£ÅÍ
{{{
Implementation file: test.cc
}}}
±×·±ÈÄ ¹öÆÛ¸¦ ã¾Æº¸½Ã¸é ¾Æ·¡Ã³·³ test.cc °¡ ¸¸µé¾îÁ® ÀÖÀ» °ÍÀÔ´Ï´Ù. ²À C-x C-s Çϼż ÀúÀåÇϽñ⠹ٶø´Ï´Ù.
{{{
void Test::PrintTest1() {
}
void Test::PrintTest2() {
}
}}}
=== Âü°í ===
namespace¸¦ ¾µ °æ¿ì Àß ÀÛµ¿ÀÌ ¾ÈµË´Ï´Ù.
=== ¾à°£ ¼öÁ¤µÈ ¹öÀü ===
attachment:EmacsExpandMemberFunctions/expand-member-functions-rev1.tar.gz
»ý¼ºµÇ´Â ÄÚµå ½ºÅ¸ÀÏÀ» ¾Æ·¡¿¡¼
{{{
void Test::PrintTest1() {
}
void Test::PrintTest2() {
}
}}}
ÀÌ·¸°Ô
{{{
void Test::PrintTest1()
{
}
void Test::PrintTest2()
{
}
}}}
¹Ù²Ù°í
È®ÀåÀÚ "h"¿Ü¿¡ hh,hpp,hxxµµ ÀνÄÇÏ°Ô ¸¸µê
[[br]]
(!) [wiki:primewizard] - 20080809