준호씨의 블로그

vim 에서 BOM (Byte Order Mark) 확인, 제거, 생성 본문

IT이야기

vim 에서 BOM (Byte Order Mark) 확인, 제거, 생성

준호씨 2018. 2. 22. 00:03
반응형

vim 을 이용하여 BOM (Byte Order Mark) 를 추가, 확인, 제거 하는 방법에 대해 정리해 본다.

UTF-8 에서 BOM 은 별로 쓸모 없는 녀석인데 괜히 BOM 이 있어서 문제가 되는 경우가 종종 발행한다. vim 에서도 간단하게 제거가 가능하니 방법을 알아 두면 종종 써 먹을 수 있을 것이다.

BOM 생성 여부는 파일의 시작 hex 값에서 확인 할 수 있다.

text 파일 만들기

vim 으로 임의의 텍스트 파일을 만든다. 기본적으로 BOM 이 없는 상태로 저장 된다.

vi test

로 파일을 생성하고

hello world

라는 내용을 넣고 저장 (:w) 한다.

hex 데이터 확인

$ xxd -p test
68656c6c6f20776f726c640a
68 - h
65 - e
6c - l
6c - l
6f - o
... 생략

BOM 추가

vi 에서 :set bomb 하면 BOM 을 생성한다. UI 상 글 내용이 바뀌지는 않는다.

:set bomb
:w

vim 에서 BOM 확인

:set nobomb?

화면 하단에 "bomb" 라고 나오는 것을 볼 수 있다. BOM 이 있다는 뜻이다.

hex 값으로 BOM 추가 확인

xxd -p test
efbbbf68656c6c6f20776f726c640a

BOM 이 없을 때와 달리 앞에 efbbbf 가 붙은 것을 볼 수 있다. UTF-8 에서의 BOM 값이다. 인코딩 방식에 따라 BOM 데이터는 다르다.

vim 에서 BOM 제거

:set nobomb 커맨드로 BOM 을 제거 할 수 있다.

:set nobomb
:w

참고

반응형
Comments