본문 바로가기
[Unity]

[Unity] 코드 조각으로 빠르게 코딩하기 - Code Snippet

by 김기승 2023. 9. 23.

코딩을 하다보면 반복적으로 작성하게 되는 코드들이 있다.

예를 들어, 반복문을 사용하기 위해 for문을 작성하거나, 디버깅을 위해 Debug 함수를 작성하는 경우 등이 있을 것이다.

이런 코드들을 원하는 방식으로 생성해주는 코드 조각 기능을 알아보자.


.snippet 확장자

코드 조각을 생성하는 파일 확장자는 snippet이다.

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets>
	<CodeSnippet Format="1.0.0">
		<Header>
			<Title>Debug Var1</Title>
			<Shortcut>db1</Shortcut>
			<Description>Debug.Log문을 만들어냅니다.</Description>
			<Author>gskim</Author>
			<SnippetTypes>
				<SnippetType>Expansion</SnippetType>
				<SnippetType>SurroundsWith</SnippetType>
			</SnippetTypes>
		</Header>
		<Snippet>
			<Declarations>
				<Literal>
					<ID>var</ID>
					<Default>var</Default>
				</Literal>
			</Declarations>
			<Code Language="csharp"><![CDATA[Debug.Log($$"$var$ : {$var$}");$end$]]>
			</Code>
		</Snippet>
	</CodeSnippet>
</CodeSnippets>

위 코드는 Debug.Log 함수로 하나의 변수를 디버깅하는 코드를 생성하는 Snippet의 예시이다.

예를 들어, a 변수를 디버깅하고자 하면,

 Debug.Log($"a : {a}"); 

위 코드가 생성되는 것이다.

 

아래에서 천천히 분석해보자.


<Title>Debug Var1</Title>

: 코드 조각의 제목을 정의하는 영역

: 코드 조각을 찾을 때 표시되는 제목

 

<Shortcut>db1</Shortcut>

: 코드 조각의 별명을 정의하는 영역

: 일일이 찾을 필요없이 별명을 입력하면 바로 코드 조각 삽입

 

<Description>Debug.Log문을 만들어냅니다.</Description>

: 코드 조각의 설명을 정의하는 영역

: 코드 조각 선택 후 표시됨

 

<Author>gskim</Author>

: 작성자를 정의하는 영역

: 중요하지는 않음

 

<Literal>

<ID>var</ID>

<Default>var</Default>

</Literal>

: 변수를 생성하는 영역

: 변수가 선언된 곳은 코드 조각 생성 후, 일괄적으로 이름 변경 가능

: 여러 개의 Literal 태그 사용 가능

: ID 태그에서 변수의 ID를 정의

: Default 태그에서 변수의 기본값을 정의

 

<Code Language="csharp"><![CDATA[Debug.Log($$"$var$ : {$var$}");$end$]]></Code>

: 실제 삽입할 코드를 정의하는 영역

: <![CDATA[(코드)]]> 문구 사이에 코드를 정의하면 됨

: Literal 태그에서 선언한 변수를 $(ID)$ 문구로 사용

: $end$로 코드 조각 삽입 후의 커서의 위치를 정의

※ $가 아닌 $$를 사용한 것은 이스케이프 시퀀스이기 때문이다.


코드 조각 적용

위의 코드를 적용해보자.

우선 파일로 저장을 하고,

폴더를 생성하여, 그 안에 넣어준다.

※ 본인은 바탕화면에 만들었다.

Visual Studio에서 도구→코드 조각 관리자 탭을 열어준다.

언어는 CSharp을 선택하고, 추가 버튼을 클릭한다.

위에서 생성한 폴더를 선택해준다.

추가가 되고 나면, 확인을 눌러 창을 닫고 Visual Studio를 껐다가 킨다.


코드 조각 사용

단축키 Ctrl + K, Ctrl + X를 순차적으로 눌러주면 위와 같은 창이 뜬다.

My Snippet(폴더 이름) → Debug Var1(코드 조각 제목) 순으로 찾아가준다.

그러면 이렇게 삽입이 된다.

하이라이트된 부분에 값을 입력하면, 뒤쪽 값이 같이 변경되는 것을 볼 수 있다.

커서 또한 뒤쪽으로 이동하였다.


여러 예시 코드를 아래 레포지토리에 정리해두었으니, 참고하길 바란다.

https://github.com/Giseung30/Code_Snippet

 

GitHub - Giseung30/Code_Snippet: 자주 쓰는 코드를 붙여 넣어보자

자주 쓰는 코드를 붙여 넣어보자. Contribute to Giseung30/Code_Snippet development by creating an account on GitHub.

github.com


GIF

여러 변수(Literal)들을 이동할 때에는 Tab(다음)키와 Shift+Tab(이전)을 사용한다.

더 이상 수정할 것이 없으면 Enter로 마무리한다.

for문 생성할 때에는 삽입 후 커서 위치를 바로 코드를 작성할 수 있는 위치가 좋다.

별명으로도 바로 코드를 삽입할 수 있다.

댓글