dngchn's [C#]2017. 7. 20. 16:25

Code Snippet 만들어 사용하기


Code snippet이란 '코드 조각'으로, 반복되는 패턴의 코드 덩어리를 빠르게 입력할 수 있는 일종의 매크로 기능이다.


예를 들어, C#기준으로 설명하자면(VB나 Visual Studio에서 지원되는 다른 언어도 마찬가지, xml까지)

코드 중간에 prop 라고 치고 탭을 따닥 누르면(아주 빨리 누르지 않아도 됨),


public int MyProperty { get; set; }


위와 같이 자동 입력된다.

또한 코드조각이 입력된 후 상태가 int가 선택된 상태에서 커서는 int 앞에 위치해있게된다. 바로 원하는 대로 타입을 입력하고, 탭을 두번 누르면 다음으로 MyProperty에 위치한다. 마찬가지로 원하는 이름으로 변경 후, 엔터를 누르면,

삽입된 코드의 끝으로 나가게 된다.


prop이외에도 이미 많은 조각들이 내장되어 있다. 억지로 쓸 필요는 없지만, 이런게 있는 줄 모르고 안쓰는 것 보단,

어떤것들이 있는지 살펴본 후 필요할 때 적절히 활용하면 코딩 생산성을 높일 수 있고, 궁극적으로는 퇴근 시간을 앞당기어 개발자들이 원하는 저녁있는 삶을 추구하는데 도움을 줄 수도 있으리라...


사용은 이렇게 하면 된다. 특별히 내가 원하는 조각이 있다면, 직접 만들어 사용할 수 도 있다. 조금 까다롭게도 여겨지지만, 처음 부터 새롭게 만들기 보단, 이미 내장된 것 들을 잘 활용하면, 내가 원하는 것들을 손쉽게 만들어 쓸 수 있다.


검색을 해보면, Code Snippet Editor(http://snippeteditor.codeplex.com/)등과 같이 코드 조각을 만드는데 도움을 주는 도구들도 있겠지만, 편함을 위해 무언가 새로운 것의 도움을 받기 보단, 아래와 같은 방법으로 한번 따라해보면 손쉽게 만들어 쓸 수 있으니 개인적으로는 Editor까지 쓸필요는 없을 것 같다.


아래 예 대로만 따라하자.


1. Visual Studio에서 새로만들기 추가에서 xml을 선택한다.




2. 그럼 아래와 같이 기본 xml파일이 만들어 진다. 2번째 줄로 커서를 위치 시키고, Ctrl + K + S 를 누른다.




3. 그럼 아래와 같은 화면을 볼 수 있고, Snippet를 눌러 선택한다.



4. 그럼 아래와 같은 상태가 된다.



5. 위에서 title부터 description까지는 기본 정보이다. 적절하게 채워주자. 단 여기서 Shortcut에 해당하는 것이 위의 예에서 prop이다. 즉 코드 조각을 불러내는 단축단어이니 나중에 쉽게 생각나도록 짧고 강렬하게(?) 잘 짓자.


6. 아래쪽 Literal과 Code를 채워주는 것이 핵심이다. 이 부분은 기존 것을 불러내어 보면, 어떻게 입력해야 할지 감이 올 것이다. 이를 위해 Tool - Code Snippets Manager를 선택하여 창을 띄운다(영문메뉴 기준).




7. Code Snippets Manager에서 Language를 CSharp으로 하고 항목 중 Visual C#으로 선택하면 위와 같이 이미 내장된 많은 snippet들을 볼 수 있다. 위 snippet 목록은 실제 위의 파일 경로에 각각의 파일로 존재한다. 이해를 위해 propfull을 열어본다.




8. 위에서 Literal 부분을 보자. 정의된 3개의 Literal들인 type, property, field가 결국 아래 Code 부분에 미리 작성된 조각코드에 쓰이게 된다. 코드에서는 각각의 Literal들이 $가 앞뒤로 붙어 $type$, $property$, $field$와 같이 되어있다. 물론 이 이름들은 원하는대로 만들면 된다($end$는 코드의 끝을 의미한다. 그대로 두자).


9. 위의 코드 부분은 가능하면 복사하여 내가 만드는 코드 조각에 붙여넣자. 그래야 코드조각이 코드에 삽입되었을 때 줄바꿈과 들여쓰기 등을 깔끔하게 가져갈 수 있다(복사 후 Literal등 변경 부분만 수정하길 추천).


10. 마지막 Language부분이 csharp로 되어있음에 주의. 다른 언어라면 해당 언어대로 변경해줘야 한다.


11. 거의 다 되었다. 위에서 만든 .xml파일을 .snippet으로 확장자를 바꿔준다(내장 snippet과 마찬가지로 파일로 복사되어 관리되므로, 파일 이름도 적절히 짓자).


12. 다시 Code Snippets Manager로 와서 위에서 저장한 파일을 선택하여 import시켜준다.

import된 snippet는 Manager에서 My Code Snippets 폴더에 복사되어 관리된다.


13. 잘 되었는지 확인은, Code Snippets Manager에서 My Code Snippets 폴더에 잘 들어갔는지 확인하고,

최종적으로 코드창에서 내가 입력한 Shortcut을 적고 따닥~ 해보면 된다.

Posted by dngchn