우분투 리눅스에서 윈도우에서 작업한 텍스트 파일이나 소스코드의 주석에 한글이 깨져서 

나올때 무척 당황스러울 때가 있습니다. 파일을 보기 위해 윈도우로 해당 파일을 복사할려니 귀찮고...

이는 한글의 인코딩 방식을 에디터가 자동으로 인식하지 못해서 나타나는 현상인데  

우분투에서도 윈도우즈에서 쓰는 인코딩 방식으로 깨끗하게 한글로 작성된 파일을 읽을 수 있습니다.

제가 아래 정리한 방식만 우분투에 적용한다면 콘솔이든 UI상이든 언제든지 한글이 깨지지 않을 것 같습니다.


1. 해당 파일의 인코딩 방식을 cp949형식으로 변환합니다. 콘솔에서 iconv라는 유틸로 아래와 같이 UTF-8형식으로

변환해서 볼 수 있습니다. 


사용형식 : iconv -f <원래 인코딩 방식> -t <변환할 인코딩> -o 변환파일이름


$ iconv -f cp949 -t utf-8 sample.c -o sample_utf8.c

 

이렇게 하면 utf-8형식으로 된 sample_utf8.c를 열어 보시면 됩니다.


2. vi에디터에서 자동으로 cp949 형식의 인코딩을 인식해서 파일 열기를 할 수 있습니다.

vimrc 파일을 열어서 아래 설정항목을 추가 합니다.


set fileencodings=utf-8,cp949


$ source ~/.vimrc


이렇게 하면 콘솔에서도 해당 파일을 vi로 열기 했을 때 한글이 정상적으로 나타납니다.


3. 우분투 기본 에디터인 gedit에서 자동 인식되는 인코딩에 cp949 방식을 추가합니다.

먼저 콘솔에서 dconf-editor를 설치합니다. 있다면 패스합니다.


$ sudo apt-get install dconf-editor

$ dconf-editor

창이 하나 뜨면 윈도우즈 레지스트리처럼 아래 경로로 따라갑니다.

org -> gnome -> gedit -> preferences -> encodings -> auto-detected


여기에 UHC라는 값을 추가 합니다. UHC(Unified Hangul Code)는 cp949와 동일한 통합 한글 코드를 의미합니다.

['UTF-8', 'UHC', 'CURRENT', 'ISO-8859-15', 'EUC-KR', 'UTF-16']


auto_detected.png

그리고 창을 찾고 해당 파일을 열어보시면 한글이 깨끗하게 열리는 것을 볼 수 있습니다.


혹시 dconf-editor가 안될 때는 콘솔에서 gsettings로 한번에 설정값을 변경할 수 있습니다.


$ gsettings set org.gnome.gedit.preferences.encodings auto-detected "['UTF-8', 'UHC', 'CURRENT', 'ISO-8859-15', 'EUC-KR', 'UTF-16']"

그리고 값 확인은 인자를 get으로 주면 값을 확인할 수 있습니다.


$ gsettings get org.gnome.gedit.preferences.encodings auto-detected

['UTF-8', 'UHC', 'CURRENT', 'ISO-8859-15', 'EUC-KR', 'UTF-16']   <==현재 시스템에 설정된 값 확인


이렇게 하면 우분투에서 콘솔이든 UI든지 윈도우에서 작업한 한글 텍스트를 보는데 문제가 없을 것입니다.