jEdit 쓰시는 분 많으신가요?

nalrim의 이미지


약 3, 4년전에는 느리고 한글도 이상하게 입력되어서 잠시 써보다가 지워버렸는데요.
요즘 emacs를 대체 할 만한, 하지만 vi는 아닌 그 어떤것을 찾다가 오늘 다시 설치해봤는데
예전보다 제 PC가 훨씬 빨라진 탓도 있겠지만 느리지도 않고 한글입력에도 전혀 문제가 없네요.

FTP 플러그인을 설치해서 원격작업을 해봤는데 이건 마치 emacs에서 tramp를 디버깅 모드로
해놓고 쓸때보다 더 느려서 아.. 이것도 못쓰겠구나 싶었는데 혹시나 하고 버그리스트를 찾아보니
역시나 버그라네요. 그래서 안지우고 계속 쓸 생각입니다.

많은 분들이 emacs나 gvim을 쓰고 계시지만 앞으로 jEdit 유저들이 더 많아지면 좋겠습니다.
아직 써 보지않았거나 저 처럼 수년전에 설치해보고 실망하셨다면 다시 설치해보세요.
PHP 코딩을 하시는 분이라면 플러그인중에 BufferTabs, FTP, SideKick, XML, PHPParser 플러그인은
꼭 설치해보시구요. 플러그인 설치도 풀다운 메뉴에 플러그인에 보면 매니져가 별도로 있습니다.
인스톨 탭에서 선택하시면 됩니다. 플러그인 설치 후, 플러그인 옵션을 설정해야 원하시는 모양이나
기능을 사용가능 합니다. 또 파일 시스템 브라우져는 글로벌 옵션에 Docking 항목에서 위치를
left나 right로 바꾸면 그제서야 그럴싸한 IDE 모양새가 됩니다.

jEdit도 emacs와 마찬가지로 열린 문서를 버퍼라고 하는데요. 버퍼탭스를 설치했지만 옵션 설정을
안하면 탭들이 하단에 위치합니다. 탑으로 설정하려면 역시 플러그인 매니져에서 각 플러그인 옵션을
설정할 수 있습니다.

버퍼의 하단 윈도우 status 영역을 보면 현재 버퍼의 인코딩이 나오는데 euc-kr 문서를 열어보니
MS949라고 나오네요. 여길 더블클릭하면 현재 버퍼의 인코딩이나 탭, 줄넘김등을 설정할 수 있습니다.
글로벌한 설정은 풀다운 메뉴중 Utilities를 보시면 됩니다.

jEdit는 맥오에스, 리눅스, 윈도우등 다양한 OS에서 사용이 가능하고 슬로건이 프로그래머를 위한
에디터인 만큼 수많은 언어모드를 지원합니다. a부터 z까지 다 있는듯 하네요.
Visual Studio나 이클립스를 실행하긴 조금 무거운듯 - 쥐잡는데 소잡는 칼드는 기분들때 - 하고 에디터플러스는 너무 단순해서 손이 안간다면 jEdit를 써보세요.
emacs에서 처럼 문장의 아무데서나 탭을 치면 들여쓰기를 자동으로 해주고 편집용 단축키가
강력하진 않아서 emacs를 완전히 대체하긴 모자른듯 해도 그 나름대로 깔끔한 맛이 있습니다.
리눅스를 쓰려면 emacs나 vi에 익숙해져야 한다는 강박강념에서 이젠 벗어나세요. :)

mykldp의 이미지

jEdit 2.x 버젼때부터 써왔습니다. 당시에는 최신 컴에서도 상당히 느렸지만 그래도 매력적인 기능들이 많은데다가 윈도, 리눅스에서 모두 사용할 수 있다는 장점때문에 썼었지요. 하지만 지금은 말씀하신 것처럼 속도가 문제되지는 않을 것 같습니다.

editplus, ultraedit 등은 이제 이 녀석과 비교가 되지 않을 것 같고, vi 역시 마찬가지 입니다.(...^^; 겁나는군요)

emacs 는 에디터라기보다는 IDE 에 가까우니 비교 대상이 아닌 것 같구요. 이클립스 역시 IDE지요. 비교 대상이 아닙니다. jEidt 는 IDE를 지향하지 않습니다. 다만 편리한 에디터일 뿐이지요.

여러 플러그인들도 장점이지만 제 생각에 이놈의 가장 큰 장점은 hypersearch, 정규표현식을 이용한 치환, beanshell 매크로입니다.

hypersearch 는 incremental search 에 대비되는 개념입니다. 특정한 버퍼 또는 열린 버퍼 전체, 아니면 어떤 디렉토리에서 정규 표현식으로 라인을 검색해 트리구조로 보여줍니다.

정규표현식을 이용한 치환도 vi 보다 훌륭합니다. beanshell expression 을 이용해 치환할 수 있기 때문에 sed 나 awk 를 사용하는 것 비슷한 작업을 할 수 있다고 보면 됩니다. (beanshell 은 자바 문법을 따르는 스크립트 언어입니다. jEdit에 내장되어 있습니다. 자세한 사항은 http://beanshell.org)

그리고 beanshell 매크로는 확장성을 극대화합니다. 복잡한 기능은 플러그인을 만들어 붙여야 겠지만 간단한 기능은 beanshell 매크로를 사용해 쉽게 해결할 수 있습니다. nalrim 님께서 편집용 단축키가 강력하지 않다고 하셨는데 기본적으로 제공되는 편집 액션으로 모자르다면 그리고 혹시 자바를 사용할 줄 아신다면, 하루 정도 시간을 투자해 jEidt 에서 beanshell 사용법을 익혀서 원하는 기능을 쉽게 만들 수 있을 겁니다.

m의 이미지

latex 작업에 썼던 기억이

mykldp의 이미지

http://ktug.or.kr 에서 찾아보시면 latex 수식을 미리 보여주는 매크로가 있지요. beanshell 매크로를 잘 사용하는 좋은 예라고 생각합니다. 사실 제가 만들었습니다.^^;

m의 이미지

제가 mykldp님의 도움을 받았을 가능성이 매우 크군요
정말 잘 썼습니다,. 감사합니다

mykldp의 이미지

중복 포스트됐는데 삭제 방법을 모르겠네요. 삭제.

nalrim의 이미지

수년동안 emacs를 써왔지만 elisp를 모르는데
beanshell을 배우기는 그렇고해서 이미 만들어진걸 다운받아 쓰기로 했습니다.
http://www.clapper.org/software/jedit
그리고 ftp 플러그인이 0.8에서 0.9로 업그레이드 되었고 로딩속도가 빨라졌네요.
저도 몰랐는데 어느순간 빨라졌더군요.

다만 emacs에서 겪었던 인코딩문제는 여기서도 완벽하진 않네요.
저는 euc-kr 문서를 미리 셋팅된 utf-8 문서로 변환해서 읽는다던지 그 반대의 경우가 자주 일어나는데
emacs에서는 읽어올때 원래 인코딩방식으로 읽어오고 변환을 하면 제대로 변환이 안됩니다.
jEdit는 인코딩 설정에서 미리 정의한 인코딩으로 읽어오고(자동선택이 설정만 있고 동작을 안하는듯함) 변환은 잘됩니다.