대부분의 사람들을 평생 겪을 일이 없는 것이겠지만 LaTeX으로 영어 문서를 편집하는 사람들에게는 유니코드가 여간 말썽이 아니다. 예를 들어, MS Word 에서 작성한 초고를 LaTeX으로 붙여 넣기를 해버리면 ASCII 코드로 표시되어야 할 따옴표, 겹따옴표 따위가 '이쁜' 따옴표 (MS Word 표현으로는 둥근 따옴표) 로 바뀌어 버리고 LaTeX 에서는 이를 가벼이 무시해 버린다. 그래서 LaTeX 으로 처리한 문서에서 I don't know 가 I dont know 로 표시되는 등의 부작용이 생긴다. Vim 에서 이렇게 7비트 ASCII 가 아닌 글자를 다 찾아내는 법은 다음과 같다.

우선 문서를 latin1 코딩으로 새로 저장한다.
:set fenc=latin
:wq!
그리고 문서를 다시 열어서 다음과 같이 검색해서 걸리는 놈이 있어서 잡아 족치면 된다.
/[\x80-\xff]/
물론, 애초에 MS Word 등에서 자동으로 둥근 따옴표 등의 이상하게 "이쁜" 글자로 만들어 주는 기능을 꺼두는 것도 이런 경우에는 도움이 될 수 있다. 자동 고침 기능을 끄려면, 오피스 단추 --> Word 옵션 --> 언어 교정 --> 자동 고침 에서 조정할 수 있다.
신고
posted by 신묘군
자주 발생하는 경우는 아니지만 오늘 필요해서 해보니 역시 되네. vi / vim 은 안되는 게 없단 말야. 예를 들어,

((( 어떤 내용
))) 다른 내용
((( 어쩌구
))) 저쩌구
((( 이런 줄을
*** 찾고 싶어

이렇게 생긴 파일에서 ((( 로 시작하는 줄 다음에 ) 로 시작하지 않는 줄이 나오는 것을 찾고 싶다면

/^(((.*\n\[^)\]/


라고 하면 된다.
신고
posted by 신묘군