1. 개요
문서편집기( 文 書 編 輯 機, Text Editor)는 텍스트 파일[1]을 편집할 수 있는 소프트웨어이다. 기본 포맷이 고유의 파일 포맷(*.doc, *.docx, *.hwp 등)인 경우에는 해당되지 않는다.주로 간단한 텍스트 파일 작성/수정 및 소프트웨어 개발에 쓰인다. 단순 텍스트 편집에서 IDE(Integrated Development Environment)까지 넘보는 등 종류가 많다. 대표적인 것들은 다음과 같다. 개발하는 사람 입장에서는 당연히 호불호가 갈리는 물건이라, 유닉스 쪽에서 vi와 Emacs는 에디터 전쟁까지 벌였을 정도다.
2. 목록
2.1. 윈도우용
- 메모장: 윈도에서 notepad.exe하면 실행되는 녀석. 64KB의 열 수 있는 파일 용량제한이 있는 등 최소한의 기능을 제공했었다. 열 수 있는 파일 용량 제한은 XP 이후로 없어졌다. Windows 1.0부터 Windows 11까지 전부 다 있다. Windows 10의 최신버전에서는 이전버전까지 '상태표시줄 표시'와 '자동줄바꿈' 기능을 동시에 사용할 수 없었던 제한이 사라졌고, 텍스트의 폰트 사이즈는 그대로 두고 화면만 확대/축소하는 기능과 파일의 내용을 Bing에서 검색하게 해주는 기능, 대용량 파일 읽기 지원, UTF-8 유니코드, 그리고 '새 창' 기능이 추가되었다. 소소하지만 어찌보면 메모장 수준에서는 대대적 업데이트.
- 새롬 데이타맨 98 편집기: 셰어웨어, 한국산. 1990년대를 풍미했던 PC통신용 프로그램인 새롬 데이타맨의 98버전에 내장되어 있는 편집기이다. 편집기만 별도로 추출해서 사용할수 있다. 90년대 중후반 만들어진 프로그램이지만 2020년대에도 문제 없이 잘 작동한다. txt파일 외에도 Windows 환경에서 쓰이는 텍스트 형태의 파일과 배치파일(ini, inf, bat, htm 등)을 지원한다. 메모장 수준의 텍스트 에디터이지만 '행 찾아가기'나 특수문자표, 한글 'ㅂ'을 입력후 한자키를 눌렀을 때 나오는 선 문자를 이용한 표 삽입과 선 그리기, 편집기에서 작성한 내용을 txt파일로 마이크로소프트 아웃룩(혹은 Win98의 아웃룩 익스프레스)에 첨부하는 기능 등도 지원한다. 또 현대의 환경에서는 쓰일 가능성이 전혀 없는 기능이나 새롬 데이타맨 98상에서 텔넷등에 접속하여 BBS등에 글을 써야 할때 새롬 데이타맨 98 편집기를 이용하면 편집기에서 작성한 내용을 바로 BBS상으로 보낼 수 있는 기능을 지원한다.
- 이야기 워드: 태초에 새롬 데이타맨 편집기가 있기 전에 이게 있었다. PC통신 에뮬레이터 이야기에 포함되어 있던 '이야기 에디터'가 원조이며, 새롬 데이타맨 프로가 인기를 끌 때쯤 '이야기 워드'로 이름이 바뀌었다. PC통신 환경에 맞게 강제개행을 해 주는 기능 등 PC통신에 최적화된 편집기라서 꽤 인기가 많았다. 게다가 아래아 한글에서조차 깨져서 나오는 텍스트 파일이 이야기 워드에서는 정상적으로 나올 정도로 호환성이 막강했다. 아예 이걸 기본 문서 편집기로 쓰는 사람도 많았다. 위의 데이타맨 편집기 항목에 서술되어 있는 기능들 대부분은 이야기 워드에서 공통적으로 동작하는데, 애초에 데이타맨 쪽이 이 물건의 카피캣이기 때문(...) 이야기가 안 깔려 있어도 이야기 워드 파일 하나만 있으면 동작했으며, 나온지 오래 되었지만 가볍고 편하기 때문에 2010년대까지도 올드비 개발자들은 이야기워드를 사용하는 경우가 드물게 있었다고 한다. 특히 PC통신 시절 갈무리(다운로드)되어 있던 글들은 이야기에서 읽을 때 가장 눈이 편안했다. 대표적인 것이 이영도의 초기 소설들 PC통신 연재 버전.[2]
- 이지패드: 무료, 한국산. 채경삼이라는 당시 전북대 전자공학과 학생이 개발한 프로그램이다. 메모장에 몇가지 편의 기능을 덧붙인 정도의 프로그램이다. 텍스트 에디터 주제에 한글 97까지의 HWP 파일을 열 수 있고 모든 설정 파일과 도움말 파일이 txt 형식으로 되어 있다는 특징이 있었다. Windows 10에서도 돌아가지만, Windows XP부터는 환경설정이 먹히지 않는 버그가 있어 불편하다. 2000년대 초반 개발중단. 2019년 현재 윈도우7 64비트 환경에서 쓸 수 있도록 이지패드와 이지뷰어가 업데이트되었다. HWP 1.x ~ HWP97 포맷 파일을 읽는 무료프로그램 중 윈도우 7에서 실행되는 물건으로는 독보적이다.
- AcroEdit: 무료, 한국산. 역시 강력한 프로그램. 특이점으로 자체 diff 툴을 갖추고 있는데 이게 자체 diff 툴 치고는 꽤나 막강하다. (EditPlus는 외부 diff 툴을 사용자 정의로 설정해서 쓴다) 다만 유니코드를 네이티브로 지원하지 않기 때문에 제 2 외국어를 많이 쓰는 유저라면 별로 추천하지 않는다. 2017년 이후는 유니코드를 지원하는 베타버전을 배포하고 있다. 수식계산기가 단축키로 내장되어 있어서 편리한데, 예를 들면 '1+1' 을 블록선택하고 Ctrl+E 를 치면 '1+1 = 2' 로 변환된다.
- ConTEXT: 무료, 외산. 설치파일 용량이 2MB도 채 안되고, 프로그램 자체가 매우 가볍지만, 처음 설치했을때는 폰트 설정 문제로 한글 같은 2바이트 문자를 사용할 수 없어서 당황하게 된다. 하지만 설정에서 폰트를 변경하면 한글을 비롯한 2바이트 문자를 사용 가능. 초기 버전은 한글 입력 문제가 있었으나, 이후에 개선된듯. 한때는 몇 안되는 프리웨어 에디터 였지만, 지금은 Notepad++의 약진으로 위축된 것 같다. 게다가 개발에 사용된 델파이 컴포넌트의 라이센스 문제로 인하여 차기 버전의 개발이 힘들게 되어, 아직도 최종 버전은 2009년 8월에 공개된 0.98.6에 머물러 있다.
- Crimson Editor: 무료, 한국산. 강인규라는 개발자가 개발한 에디터이다. 설치파일 용량이 3.5인치 디스켓 하나에 들어갈 정도로 작고, 상업적인 용도로 사용해도 괜찮았기 때문에 2000년대 초중반까지 많이 사용되었다. 국내보다 해외에서 더 인기가 있었던 에디터여서 한글판은 3.4 버전을 끝으로 업데이트가 중지되었지만 영문판은 2008년 3.72 버전까지 꾸준히 업데이트되었다. 이후 소스 코드를 공개해서 에메랄드 에디터라는 이름으로 바꾸었지만, 2011년 이후로 아무런 업데이트가 없는 상태다. 거의 개발중단 상태라고 봐도 될 듯.
- EditPlus: 유료, 한국산. 강력한 프로그램으로 해외에도 알려졌다. 버전 2대에서 완성되어 있어 버전업 되어도 기능 추가가 적은 편. Notepad++의 성장으로 수요를 많이 뺏긴 듯하다. 유료이긴 해도 가격이 싸고, 마이너 업데이트는 무한으로, 메이저 업데이트는 1회까지 지원된다.
- EmEditor: 유니코드와 대용량 파일처리에 강점을 가진 에디터. 유료, 외산. 처음 프로그램 개발을 시작했을 때부터 유니코드 처리를 고려해서 만들었기 때문에 다국어 입출력 기능이 대단히 뛰어나다. 특히 정규표현식 엔진으로 Boost와 Onigmo 두 가지를 제공하고 있는데, 이 중에서 Onigmo를 사용할 경우 한글, 한자, 가나 등등 로마자 이외의 문자들을 처리할 때 아주 간결하고 간단한 정규표현식을 이용할 수 있다.[3] 다른 텍스트에디터과 비교할 때 가장 두드러지는 EmEditor의 장점은 텍스트 파일 내의 다양한 문자들을 읽고 쓰고 처리하는 기능이 압도적으로 좋다는 것이다. '제대로만 쓴다면' 인문학 전공자들에게 대단히 편리한 텍스트에디터.[4] 그리고 VS Code가 나오기 전에는 윈도우 환경에서 기가 단위를 넘나드는 초고용량 텍스트 파일을 읽고 편집 및 저장할 수 있는 거의 유일한 프로그램이었다.[5] 무료로 lite 버전도 제공.
- Notepad++: 무료에 오픈 소스. 현재 영미권에서 가장 인기 있는 텍스트 에디터라면 VS Code를 들지만, 윈도우 플랫폼으로 한정한다면 Notepad++ 만한 게 없다. 기본 기능은 고만고만한데 플러그인들이 막강하다. 플러그인을 제대로 사용하려면 64bit 보다는 32bit를 추천한다. 유니코드를 지원한다.
- Notepad4: GitHub 링크 한글판 링크 오픈소스, 외산. Notepad2에서 포크한 프로젝트. 본가쪽은 업데이트가 2012년 이후로 끊겼다. 오픈소스이며, 기본적으로 영어만 지원한다. 영문버전은 한국에서 쓰는데 문제가 있는데, 바로 정규식 문제. Notepad2에서 정규표현식엔진으로 Scintilla라는 라이브러리를 사용하는데 이 라이브러리는 한글이 들어가면 오동작하는 버그가 있다. 이를 구라제거기 제작자로 유명한 BLUEnLIVE가 한글화와 함께, 몇가지 기능추가, 문제해결을 하여 자신의 홈페이지에서 공개하고 있다. 정규표현식 해결기 파일용량이 2메가 가량 되며 파일도 단 두개에 불과하기 때문에[6]usb에 넣어서 들고다니기 좋다.[7] 용량을 보면 알 수 있겠지만, notepad++같은 막강한 기능이나 플러그인 기능은 없으나 다르게 생각하면 매우 가볍고 필수적인 기능만 들어가 있다는 것이 장점.
- UltraEdit: 유료, 외산. 윈도우용 텍스트 에디터의 원조라고 할 수도 있는 프로그램이다. 1990년대 후반까지는 대단히 강력한 윈도우용 텍스트 에디터 프로그램으로 꽤 큰 인기를 얻었다. 그러나 2000년을 넘어가면서 다른 무료 에디터가 많이 등장하고, 기능을 너무 많이 집어넣다보니 에디터가 너무 무거워져서 순식간에 도태되고 말았다. 그래도 강력하긴 강력한지라 IT 산업 현장에서는 아직 많이 쓰이는 편. 특기할 점 중 하나로 바이너리/HEX코드 편집이 가능하다. 덕분에 리버스 엔지니어링을 할 때도 종종 쓰인다.
- Arachnophilia: 1996년에 처음 나온 코드 편집기로 처음엔 HTML 전용 편집기로 시작되었다. 프리웨어이며 시기와 이름부터[8] 알 수 있듯이 당시 급격히 유행한 웹환경을 위해 개발되었다. 가장 최근 릴리즈는 2020년으로 상당히 장수중인 편집기로 현재는 html외에도 PHP, Perl, C++, Java, 자바스크립트의 문법도 지원한다.
- 사쿠라 에디터(サクラエディタ): 1999년부터 공개된 일본의 윈도우용 오픈소스 문서 편집기. 가벼우면서도 디렉토리 단위의 키워드 검색(Grep), 매크로 기능, 가나의 전반각 교체 및 히라가나⇔가타카나 교체, 텍스트 정렬 및 중복 텍스트 제거 등 강력한 기능을 지원하고 있어 일본의 사무 환경에서 널리 쓰이고 있다. 폐쇄성이 굉장히 강한 일본 IT 환경에 역행하여 2000년부터 소스코드를 GitHub에 공개하고 있으며 최신 업데이트는 2020년 5월 20일. 영어도 지원하고 있다.
2.2. 크로스 플랫폼
- Visual Studio Code: Atom과 똑같이 Electron 기반으로 마이크로소프트가 제작한 텍스트 에디터. MS가 GitHub를 인수한 후 Atom과 Sublime Text의 자리를 위협하고 있다. Windows / macOS / Linux 지원.
- Sublime Text: 유료, 외산, 무료 버전도 있으며 가끔 뜨는 라이센스 등록창을 빼면 유료 버전과 기능상 차이점은 없다. 2008년 혜성같이 등장해서 영미권에서는 코드 에디터계를 평정했다고 해도 과언이 아닐 정도로 압도적인 인기를 자랑한다. 다만 VS Code의 성장으로 점유율을 상당히 빼앗기는 중이다. 텍스트 에디터에게 중요한 것은 텍스트 뿐이라는 컨셉 하에, GUI는 최소화되어 있으며 vi 모드를 기본 탑재하고 있다. EUC-KR 한글 출력에 약간 문제가 있지만, 플러그인으로 해결 가능. Windows / macOS / Ubuntu 지원.
- nano: vi보다 쉬운 에디터. 과거 텍스트 에디터와 이메일 클라이언트 스위트였던 pine의 일부였던 pico에서 영감을 받아 개발된 프로그램이다. pico는 리눅스 초기버전으로 컴퓨터를 배우기 시작한 세대라면 친숙할 편집기. PC통신 시절 나우누리에서 글을 쓸 때 이 에디터를 쓸 수 있었다. 보통 리눅스에 기본으로 탑재되어 있고 윈도우용도 있다.
- Atom: GitHub에서 제작한 Electron[9] 기반의 텍스트 에디터. Sublime Text와 비슷하지만 컨셉이 조금 다르다. Sublime Text 유저층을 조금씩 흡수하고 있으며, API 문서화가 잘 되어있고, GitHub가 밀고 있어서 그런지 플러그인이 빠른 속도로 늘어나고 있다. Windows / macOS / Linux 지원. 그러나 텍스트 에디터 치고는 실행속도가 느려 요즘엔 Visual Studio Code로 많이 넘어가고 있는 상태. 2022년 12월 15일 부로 프로젝트를 아카이빙하고 Visual Studio Code 사용을 권장하고 있다.
- Brackets: 어도비에서 제작한 텍스트 에디터. 포토샵의 그 어도비 맞다. HTML이나 CSS를 수정하면 바로 반영되는 라이브 프리뷰 기능이 있어서 프론트엔드 개발자 혹은 웹 디자이너에게 유용한 에디터. Windows / macOS / Linux 지원. 2021년 10월부터 지원이 종료되었다.
- JetBrains Fleet: IntelliJ IDEA로 유명한 JetBrains에서 만든 텍스트 에디터. 아직 정식 출시는 되지 않았고 프리뷰 버전으로 공개했다. Visual Studio Code처럼 플러그인(추가 예정)이나 세팅 파일을 통해 프로그램 내에서 소스 코드 실행이 가능한데, 여기에서 Smart Mode를 켜면 자동 완성 기능이 추가되고 문법 하이라이팅이 더 고도화가 되는 등 IDE처럼 기능하게 된다. 여담으로 Visual Studio Code의 경우 가볍지만 강력한 '텍스트 에디터'로 소개하나 Fleet은 아예 차세대 'IDE'로 소개하고 있다.
2.3. 기타 운영체제용
- 산 에디터: 한국산. 무료. 1990년대 초반 건국대 전산학과 1993 학번 학생이었던 박규현씨가 제작한 DOS용 그래픽 기반 한글 에디터. 고등학교 1학년 때부터 개발했다고 한다. 다른 에디터에서 보기 드문 독특한 한글 오토마타 로직을 갖고 있다. 예를 들어 'ㄱㅜ ㅏㅣ'를 타이핑하면 윈도에서는 '구ㅏㅣ'라는 결과가 입력되지만, 산 에디터에서는 자음없이 모음이 연속 입력될 경우 앞의 모음을 무시하거나 모음을 병합하게 되어있어 '개'가 결과값이 된다.[10] 덕분에 오타가 상당히 줄어든다. 쉐어웨어였다가 프리웨어로 전환했다. 2019년에 개발자 박규현씨가 소스 코드를 공개했다. #1
- Edlin: MS-DOS 1.0부터 제공된 에디터. 현재 기준에서는 에디터라고 부르기에도 애매한 물건으로, 이름 그대로 1 라인씩만 편집 가능한 무식한(...) 프로그램이다.[11] 즉 일종의 타자기처럼 1라인을 다 입력해서 끝내면 다음 라인으로 넘어가고 더 이상 수정이 안 된다. 현재의 메모장이나 인터넷의 댓글란도 가능한 커서 위아래 옮기기가 안 되던 프로그램이었다. 그야말로 컴퓨터 초창기의 과도기적인 물건. Windows XP에는 있고 Windows 7 64비트부터는 사라졌다. 이와 유사한 프로그램으로는 vi, vim이 있는데 기능 자체는 edlin에 비하면 vi가 훨씬 강력하다.
- Edit: 기존의 내장 에디터인 Edlin이 워낙에 저성능이라 시일이 흐르면서 답이 안 나오게 되자, MS-DOS 5.0부터 제공된 기본 에디터. Windows 7 버전에서는 32비트에만 있고, Windows 8.1에서는 NTVDM을 설치해야 사용할 수 있다.[12]
- Emacs: 에디터라고 부르기 애매한 물건 2. 이 경우에는 저성능이라서 아니라 확장성이 너무 심하게 뛰어나서 이게 에디터인지 아닌지 싶을 정도이기 때문이다. 메일 송수신, 웹 브라우징, IRC 채팅 등은 물론이고 모듈을 붙이기에 따라 상상할 수 있는 모든 것을 할 수 있는 대표적 변태 프로그램. 이러다보니 진입 장벽이 높은 편. gdb를 연결해서 코딩, 컴파일, 디버그까지 하다보면 매우 쾌적한 개발 환경을 만들 수 있다. 윈도우용과 모바일용(Android, iOS)도 있다.
- Gedit: gnome에 포함되어 있는 텍스트 에디터. 기본기능은 메모판과 유사하지만 각종 플러그인을 통해 기능을 확장하여 IDE처럼 사용할 수도 있다. 원래 리눅스용 프로그램인데, 버전은 낮지만 윈도우용으로도 나와 있다. GNU 프로그램이므로 당연히 무료.
- vi: 자타칭 유닉스 호환 운영체제들은 거의 대부분 vi나 vim을 싣고 있어서, 터미널 열고 vi 두 글자만 치면 바로 개발을 시작할 수 있다. 요즘 OS에선 vi보단 vim을 많이 쓴다. 때문에 vi를 실행해도 vim -C(Compatible, vi처럼 사용하기) 옵션으로 실행되는 경우도. 현존하는 대부분의 운영체제(Linux, Unix, macOS, Android, 심지어 iOS[13]까지)를 지원한다.
2.4. 나무위키 편집기
Monaco 에디터를 사용한다.3. 기타
vim, Emacs, nano의 에디터별 특성을 풍자한 만화.
4. 관련 문서
[1]
TXT파일,
마크업 문서를 비롯하여
날코딩에서 언급되는 문서.
[2]
출간작들은 모두 출판사에서 편집을 다시 했기 때문에 해당없는 이야기다.
[3]
한국의 고문헌들을 다룰 때에 EmEditor + EmEditor에 내장된 Onigmo 정규식 엔진 + 날개셋 입력기의 조합의 강력함은 써 본 사람만 안다.
[4]
불행히도 인문학 전공자들이 텍스트 에디터를 제대로 다루는 경우는 드물다.
[5]
서버 로그 파일이라던가 DB를 백업(Dump)받은 파일은 용량이 몇백 메가에서 심지어는 기가 단위로 오가는 경우가 많다.(나무위키의 덤프 파일 등) 리눅스는 서버 돌리는 일이 많기에 이런 초고용량 텍스트 파일을 다룰 일이 빈번해서 그런지 기본으로 제공되는
vi 에디터도 이런 초고용량 텍스트 파일을 지원하지만, 윈도우에서는 못 읽어들이는 프로그램이 대부분이다.
[6]
사실 모든파일을 notepad2로 열어주는 metapath는 없어도 상관없다. 그러면 파일이 단 한 개다. 설정파일까지 하면 다시 두 개가 되지만은.
[7]
단, 설정파일은 roming폴더안에 저장되기 때문에, notepad.ini파일을 읽어서 따로 저장해서 다녀야 한다.
[8]
거미애호증이란 의미.
[9]
크로뮴을 실행한 후 웹 앱을 돌린다고 볼 수 있다. 그래서 실행속도가 비교적 느리다.
[10]
'구'다음에 'ㅏ'가 입력되면 앞서 입력된 'ㅜ'모음을 나중에 입력한 'ㅏ'가 대체하여 '가'로 바뀐다. 여기에 다시 'ㅣ'를 입력하면 'ㅏ+ㅣ=ㅐ'가 되어 '개'가 된다.
[11]
사실 이건 Edlin만의 특징이 아니라 1970년대애 개발된 구세대 '라인 편집기'들은 죄다 이 모양이다. 지금의 GUI에 익숙한 사용자들은 당황스러움마저 느낄 정도일 것이다.
[12]
edit를 실행하면 이걸 설치해야 한다는 창이 나온다.
[13]
iOS 앱스토어에 정식 등록된 앱이므로 탈옥은 필요없으나 다른 앱의 파일을 불러올 수 없는 iOS의 특성상 활용성은 떨어진다. 탈옥 없이도 vi를 쓸 수 있다는 정도에 만족하도록 하자.