mwultong Blog ... 프로그래밍 / 계산기

컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Wednesday, July 26, 2006

울트라에디트] HTML문법 강조 / 코드 폴딩 스크롤 속도 / 인코딩 문제 해결 - UltraEdit Code Folding


울트라에디트에서, HTML 문법 강조


울트라에디트(UltraEdit)로 웹페이지 소스를 볼 때, .html (.htm) 이라는 확장자가 붙지 않은 웹문서 파일에는 문법 강조가 전혀 되지 않습니다. 이때는

울트라에디트 메뉴: View > View As (Highlighting File Type) / HTML

을 선택하면, 현재 문서를 강제로 HTML 형식으로 문법 강조할 수 있습니다. (설령 그 문서가 HTML이 아니라고 해도 무조건 HTML로 문법 강조가 됩니다.)

다른 윈도용 프로그램도 마찬가지지만, 울트라에디터는 파일의 확장자에만 의존하여 파일의 종류를 구분하기 때문에, 그 HTML 문서에 확장자가 없다면 어떤 파일인지 몰라서 문법 강조를 못합니다.

그러나 Vim(VI) 에디터는 파일의 내용을 읽어서 파일의 형식을 판단하기에, 확장자가 없는 HTML도 대부분의 경우 HTML이라는 것을 자동으로 인식하여 문법 강조를 잘 해줍니다. 리눅스 vim 에디터의 윈도우용 버전을 "소스 보기" 프로그램으로 사용하면 됩니다. 여기에 방법이 있습니다: ▶▶ UltraEdit와 Vim을, IE용 '소스 보기' 프로그램으로 [레지스트리 편집] (울트라에디트)



HTML 문서의 스크롤 속도 문제


울트라에디트 버전11부터, "코드 폴딩 (Code Folding)" 기능이 생겼습니다. 각종 프로그래밍 소스에 있는 함수의 내용을 숨겨, 함수 이름만 간략히 보여 주고, 필요할 경우에 함수명 앞의 [+] 기호를 클릭하면 함수의 내용이 펼쳐지는 기능입니다.

복잡한 HTML 문서에는 많은 자바스크립트 함수가 있고, 코드 폴딩 루틴 때문에 울트라에디터가 엄청나게 느려지게 됩니다.


울트라에디트 메뉴: Advances > Configuration
으로 환경설정 창을 연 후

Editor Display > Code Folding > Enable show/hide lines and code folding
을 체크 해제하면 코딩 폴딩 기능이 사라지며, 울트라에디트가 HTML 문서를 스크롤하는 속도가 빨라집니다.




한글 인코딩 오류 문제


울트라에디트는 파일 속에 charset=utf-8 이라는 문자열이 있다면 무조건 UTF-8을 인코딩으로 삼습니다. 편리한 기능이기도 하지만 아주 위험합니다. 왜냐하면 만약 파일의 실제 인코딩이 "한국어(euc-kr)"인데도 그 안의 어느 곳에서든 "charset=utf-8" 이런 문자열만 발견되면 울트라에디터는 그 파일 자체를 유니코드(utf-8)로 착각하게 되기 때문입니다. 이 상태에서 파일을 저장하면 그 파일 속의 한글이 모두 깨져 버리고 영영 복구할 수 없게 되어 버립니다.


이런 방법으로 이 기능을 끌 수 있기는 한데...
울트라에디트 메뉴: Advances > Configuration
으로 환경설정 창을 연 후

File Handling > Unicode/UTF-8 Detection > Auto detect UTF-8 files
를 체크 해제하면 이 기능이 작동하지 않습니다. 그러나 이러면 진짜 UTF-8 파일도 인식하지 못하고 한글이 다 깨져 버리더군요. 그래서 저는 어쩔 수 없이 이 기능을 켜고 있습니다.

울트라에디트의 한계일 것입니다.

다만, EmEditor 는 이런 인코딩 문제가 없고 어떤 경우든 한글을 완벽히 자동 판단합니다.




tag: editor
텍스트 에디터 | 문서 편집기 | Text Editor

0 Comments:

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Previous Posts
Monthly Archives
Top