Atom은 이해하기 쉽고, 커스터마이즈 하기 쉬운 에디터다. Github에서 Sublime Text와 상당히 비슷하게 만들었는데, 내장된 패키지 매니저가 있어서 패키지 관리나 설정은 오히려 더 쉽고, 편하다.
그리고 Electron을 사용해서 만들었기 때문에 윈도, OSX, 리눅스에서 모두 동작한다. Electron에서 Webview를 사용할 수 있어서, browser-plus와 같은 패키지를 만들 수 있는 것 같다. 이 부분이 Sublime Text와 비교했을 때 가장 큰 장점일 수 있을 것 같다. 오직 Atom 에디터만 열어놓고 웹 개발을 할 수 있다.
그 밖에 마크다운 관련 패키지가 기본적으로 내장되어 있어서, 별도로 설치할 필요가 없다. CTRL + SHIFT + M을 누르면 프리뷰 화면을 보면서 마크다운 텍스트를 편집할 수 있어서 편하다.
사용하면서 Sublime Text에 있는 패키지는 대부분 찾을 수 있었고, 기능은 오히려 더 좋았다.
유용한 패키지 모음
Sublime Text와 비슷한 환경을 만들기 위해 추가로 설치했던 패키지와 기능을 간단하게 기술했다. 진하게 표시된 패키지는 특히 유용한 것이다.
패키지 이름 | 기능 |
---|---|
autosave | 포커스를 잃었을 때 파일 저장 |
open-terminal-here | 터미널을 띄워준다. 윈도, 맥에서 모두 동작 |
plantuml-viewer | plantuml 뷰어 |
japanese-wrap | 한글 워드랩이 정상적으로 동작하지 않는 문제를 해결 |
Stylus | Stylus Syntax Highlight |
language-cjsx | coffee jsx(cjsx) Syntax Highlight |
language-lua | lua Syntax Highlight |
language-plantuml | plantuml Syntax Highlight |
Remote-FTP | 원격 파일 관리 (ftp, sftp 지원) |
git-plus | 편리한 git 명령이 가능 |
term | 터미널(윈도에서 tty.js 모듈 빌드 문제 때문에 사용 불가) |
project-manager | Sublime Text처럼 프로젝트 관리 |
browser-plus | 브라우저로 웹사이트를 열 수 있음. |
minimap | 코드 미니맵 |
date | “2015-10-10”와 같은 형태로 날짜 입력 |
highlight-selected | Sublime Text처럼 단어에 더블 클릭했을 때, 선택된 단어를 표시 |
react | react 문법. jsx 지원 |
react-snippets | React 스니펫 |
terminal-panel | 터미널 명령 실행 |
atom-autocomplete-php | PHP 자동완성 |
autocomplete-php | PHP 자동완성 |
atom-coffee-repl | coffee repl 환경 |
atom-terminal | 현재 파일 디렉터리에서 터미널 열기 |
atom-wallaby | Wallaby.js로 유닛테스트 |
coffee-autocompile | 커피 스크립트를 자동으로 컴파일 |
coffee-navigator | 커피 스크립트를 위한 코드 내비게이션 |
hyperclick | Hyperclick UI |
vagrant | 편리한 vagrant 명령. (문제 있음) |
Nuclide
nuclide는 웹과 모바일 개발에 특화되고, Atom 위에 패키지들의 모음으로 만들어진 통합 개발환경이다. 다시 말하면 Hack과 Javascript 개발하기 위한 Nuclide라는 이름으로 시작하는 페이스북이 만든 패키지들의 모음이라 할 수 있다.
기본적으로 원격 개발이 가능하므로, Remote-FTP 패키지는 비활성화시킨 후 사용해야 한다. 언어는 Hack과 Javascript를 지원하고, 정의한 위치로 이동하는 기능과 자동완성을 기본적으로 포함하고 있다. tree-view와 기능이 겹치기 때문에 비활성화하는 것이 좋다.
사용하면서 발생했던 문제
현재 윈도와 OSX에서 1.0.19를 사용하고 있는데, 몇 가지 문제가 있었다.
Sublime Text에 비해서 무겁다.
에디터를 열고, 사용할 때 전체적으로 Sublime Text보다 느려 답답한 느낌이 있다.
Atom Helper 프로세스의 CPU 부하 100%로 올라가는 문제가 있다.
이 문제는 OSX에서 더 심각했다. 처음 Atom을 실행하면 프로세스가 100%로 올라간다. 어느 정도 시간이 지나면 다시 내려간다.
안정성이 떨어진다.
여러 패키지를 업데이트할 때, CPU 부하가 심하다. 아무리 기다려도 업데이트가 완료되지 않는 경우도 발생한다. 사용하다가 검색이 필요해서 CTRL + F를 눌러 검색하려고 했는데, 아무런 반응도 없다. 단축키가 아무것도 동작하지 않는 문제도 있었다. 되살리기 기능도 제대로 안 될 때도 있었다.
결론
이런 문제들 때문에, Atom의 엄청난 기능에도 불구하고, 메인으로 사용하지 않고 있다. 무거운 것은 참고 쓸 수 있지만, 안정성은 포기할 수가 없었다. 마크다운 문서 편집 용도로만 쓰고, 코딩 작업에는 Sublime Text를 사용하고 있다.
개인적으로 기능만 봤을 때, Sublime Text를 앞서는 것 같다. 앞으로 안정성만 좋아진다면 메인으로 사용하고 싶은 에디터이다.