Visual studio 2015 에서 프로그램을 작성하면 인코딩이 자동으로 CP949(EUC-KR) 로 설정됩니다. 이는 다른 플랫폼 간 호환성 문제를 일으킬 수 있고 당장 Git 클라이언트인 source tree 또는 Github desktop 에서 한글로 작성한 주석은 모두 깨지는 것을 보실 수 있으실 겁니다.
웹 서버 또는 데이터베이스 같은 경우 대부분 유니코드를 사용하며 이를 저장하기 위해 UTF-8 인코딩을 사용하며 현대 개발에 있어 표준이라고도 할 수 있습니다.
💡 Tips
UTF-8 은 유니코드1) 를 위한 가변 길이 문자 인코딩 방식 중 하나로, 켄 톰프슨과 롭 파이크가 만들었다. UTF-8 은 Universal Coded Character Set + Transformation Format – 8-bit 의 약자이다. wikipedia
유니코드는 문자표이며 유니코드를 컴퓨터에 저장하는 방법 중 하나가 UTF-8 입니다.
따라서 Visual studio에서도 UTF-8을 Default로 설정하여 사용하고 싶은데 그 기능이 없기 때문에 확장 플러그인을 추가해 주셔야 합니다.
Plugin
EditorConfig
💡 Tips
2017 버전 이후로는 해당 플러그인이 기본으로 추가돼서 별도로 설치할 필요가 없습니다.
.gitignore
와 같이 .editorconfig
파일에 특정 확장자에 어떤 코딩 스타일 옵션을 줄 것인지 설정한 후 Visual studio 실행 시 해당 파일을 로드하여 설정하는 플러그인입니다. 여기서 설정할 수 있는 옵션은 다음과 같이 있습니다.
Option | Description |
---|---|
root | IDE가 .editorconfig 파일을 찾는데 root = true 인 파일을 찾으면 검색을 중지합니다. |
indent_style | 들여쓰기를 tap 또는 space 로 설정합니다. |
indent_size | 들여쓰기 사이즈를 설정합니다. |
end_of_line | lf 또는 crlf 개행문자2)를 설정합니다. |
charset | 캐릭터셋을 설정합니다. |
|
|
해당 파일을 솔루션 최상단에 넣어 적용시킵니다.
⚠️ Warning
해당 플러그인은 C/C++ 또는 MFC 프로젝트에 적용되지 않습니다!
따라서 C/C++ 을 사용하시는 분이라면 아래 플러그인을 사용해주세요.
ForceUTF8
플러그인 이름과 같이 무조건 UTF-8로 저장하는 플러그인입니다.
Note 📝
UTF-8 중에서도 서명이 있는 것과 없는 것이 있는데 반드시 서명이 있는 UTF-8을 사용하셔야 합니다. 서명이 없는 것을 사용하여 소스코드를 저장하면 문제없이 저장은 되지만 다시 로드할 때 문자가 모두 깨집니다. 또한 디버깅 시 Break point를 잡지 못하는 경우도 있을 수 있다고 하니 반드시 서명이 있는 UTF-8을 사용해야 합니다.