티스토리 뷰



글을 쓰려다 달력을 보니 다음주면 한글날이네요. 1991년부터는 휴일이 아니었다가 여러 부침끝에 올해는 공휴일인 한글날을 맞이하게 됩니다. 한글만큼 과학적이고 우수한 문자가 없지만 컴퓨터 입장에서 보면 영어중심의 환경이다보니 한글 표현에 여러 혼란과 어려움이 있었습니다. 예전의 조합형, 완성형 한글 논란부터 현재의 EUC-KR, UTF-8 인코딩 까지 다양한 한글 표현만큼 개발자의 부담은 늘어날 수 밖에 없습니다. 현재는 EUC-KR과 UTF-8로 한글 인코딩의 사용 범위가 수렴되었다고 볼 수 있습니다. 결과적으로 조합형 한글 표현 방식은 사라지고 완성형 한글이 대세가 되었습니다. EUC-KR은 완성형 한글을 의미합니다. KSX1001, KSC5601도 EUC-KR을 의미합니다. EUC-KR과 유사한 용어로 CP949(코드페이지 949)가 있는데 CP949는 EUC-KR의 확장 방식으로 마이크로소프트에서 EUC-KR이 표현하지 못하는 한글 8,822개를 추가한 인코딩 방식입니다.


위의 그림처럼 윈도우 메모장에서 한글을 작성해서 저장하면 기본 인코딩은 EUC-KR입니다.


jEdit에 메모장에서 작성한 텍스트 파일을 열어보면 화면 하단에 인코딩이 euc-kr인 것을 확인할 수 있습니다. 이처럼 윈도우 환경에서 기본적으로 사용하는 한글 인코딩은 EUC-KR 입니다. 그런데, 스마트폰 및 다국어 웹 환경이 많아짐에 따라 점차로 UTF-8인코딩을 사용하는 사례가 많아지고 있습니다. 


위의 그림은 한국인터넷진흥원의 홈페이지 인코딩을 익스플로러를 통해서 확인해 본것으로 한국어(EUC-KR)가 아닌 유니코드(UTF-8)을 사용하고 있음을 확인할 수 있습니다. 심지어 마이크로소프트사의 워드 문서 파일인 *.docx는 내부적으로 UTF-8 인코딩을 사용합니다.

그렇다면, 이런 인코딩의 혼재 가운데서 텍스트 파일 형태로 작성된 *.txt, *.htm, *.html, *.xml등의 다양한 문서가 어떤 인코딩으로 되어 있는지 간단히 확인하고 원하는 형태로 간단히 조정하는 방법은 무엇일까요? 그 방법 중의 하나는 좋은 텍스트 편집기를 사용하는 방법으로 필자의 경우에는 jEdit 텍스트 편집기를 사용합니다.(회사에서도 쓸수있는 텍스트 편집기 jEdit 참조) 위의 jEdit 예제 화면 처럼 텍스트 파일을 정상적으로 로드하면 해당 텍스트 파일의 인코딩을 화면 하단에 표시합니다. 


jEdit의 도구>전역옵션 메뉴를 선택하고 인코딩을 클릭하면 위의 그림과 같은 설정이 나오는데 "기본 인코딩" 항목과 "대체 인코딩 목록"을 통해서 자동으로 인식할 후보 인코딩을 등록해 놓으면 텍스트 파일을 열때 적절한 인코딩에 맞추어 파일을 로드합니다. 만약에 후보 인코딩으로도 파일을 읽을 수 없다면 인코딩을 인식하지 못했다는 경고창을 보게되는데 이때 파일>"인코딩을 지정해서 다시 열기" 메뉴를 사용하여 해당 파일에 적절한 인코딩을 지정해서 파일을 다시 읽을 수 있습니다. 여러가지 인코딩으로 시도해도 읽을 수 없다면 파일에 이상한 문자가 섞여있거나 바이너리 파일을 읽은 경우입니다.


■ 파일 인코딩 바꾸기

현재 편집하고 있는 파일의 인코딩을 변경하려면 위의 jEdit 예제 화면의 하단에 있는 인코딩 표시 부분을 더블클릭하면 됩니다.


위의 그림은 jEdit 화면 하단의 인코딩 표시 영역을 더블클릭 했을때 나오는 화면으로 인코딩 항목에서 원하는 인코딩을 선택하고 [확인]을 누른다음 파일을 저장하면 됩니다.

아래의 그림은 메모장에서 작성했던 예제 파일을 EUC-KR과 UTF-8로 각각 저장하여 덤프로 비교한 것입니다.

좌측이 EUC-KR로 윈도우 화면에서 글자를 바로 확인할 수 있습니다. 우측은 UTF-8로 같은 내용임에도 불구하고 코드 내용도 다르고 저장 공간도 더 많이 차지하고 있음을 확인할 수 있습니다.



댓글
댓글쓰기 폼