mir.pe (일반/어두운 화면)
최근 수정 시각 : 2024-09-09 10:03:51

Sublime Text

ㅤ ㅤ ㅤ ㅤㅤ 텍스트 에디터 (문서 편집기)
{{{#!wiki style="margin:0 -10px -5px; min-width:300px; min-height:calc(1.5em + 5px); word-break:keep-all"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin:-6px -1px -11px"
<colbgcolor=#887b7e> Windows 메모장 · 워드패드 · EmEditor · Notepad++ · EditPlus
크로스 플랫폼 Visual Studio Code · Sublime Text · Atom · Brackets
기타 운영체제용 vi · vim · Neovim · BBEdit · Emacs
이 외 에디터는 문서 편집기 문서 참고 }}}}}}}}}
Sublime Text
파일:Sublime Text 로고.svg
<colbgcolor=#f5f5f5,#1f2023> 개발 <colbgcolor=#fff,#2d2f34><colcolor=#333,#fff>Sublime HQ
개발언어 C++ & Python 임베딩 엔진
라이센스 상업 소프트웨어
용도 텍스트 에디터
가격 부분유료
운영체제 Windows, macOS, GNU/Linux[1]
현재버전 4 Build 4180 (2024년 8월 6일)
파일:홈페이지 아이콘.svg
1. 개요2. 기본적으로 지원하는 언어3. 장점4. 단점5. 기능
5.1. Goto5.2. 명령 팔레트5.3. 다중 선택5.4. 기타
6. 기본 세팅
6.1. 패키지 컨트롤6.2. IMESupport6.3. ConvertToUTF8

[clearfix]

1. 개요

C++로 개발되고 Python 임베딩 엔진을 포함한 크로스 플랫폼 텍스트 에디터. 주로 프론트엔드 프로그래밍에 쓰인다. 요즘은 Node.js 같이 백엔드 언어를 작성할 때 쓰는 경우도 많다. 비교적 최근에 생긴 에디터라서 그런지 포트란 등의 구세대 언어를 사용할 경우에는 귀찮아질 수 있다.

GUI는 탑다운 메뉴 말고는 없다시피하고 명령 팔레트 등을 이용하면 아예 마우스 없이도 쓸 수 있다. 심지어 옵션 설정도 그냥 JSON 파일이다. 마우스 사용을 지양하여 초스피드의 생산성을 추구하는 텍스트 에디터.

플랫폼 별로 네이티브로 동작하도록 되어 있어 속도가 상당히 빠른 편이며, 경쟁 제품인 VS Code와 비교해 봐도 여전히 속도 부분은 우세하다. 또한 Python 임베딩 엔진을 내장하고 있어 Python을 어느 정도 알고 있다면 손쉽게 매크로, 플러그인 등을 확장하여 자신만의 에디터 환경을 구축할 수 있다. 기본적으로 키 바인딩 기능도 제공하며, 비활성화된 vintage라는 패키지를 활성화 시키면 부분적으로 vi와 비슷하게 동작한다. vi와 더욱 비슷하게 동작하는 플러그인 Vintageous이 있지만 거의 개발이 중단된 상태이며, 그냥 vi를 쓰는 편이 더 낫다.

초기에는 한때 맥에서 유명한 에디터인 Textmate의 각종 XML 방식의 설정 파일을 그대로 사용할 수 있었으며(현재도 사용가능함), 유사한 모습을 보였지면, 점차 독자적인 기능과 3버전 부터는 YAML 1.2 방식의 독자적인 설정파일로 더 편하게 작성이 가능하며, 실행속도까지 좋아졌다.

그 외에 멀티 커서 에디팅이나 코드 네비게이션, 팔레트 기능들은 다른 에디터에서도 플러그인 혹은 기본 기능으로 제공할 정도로 인기 있는 기능. 이러한 기능들은 Atom이나 VS Code 등 최근에 나온 에디터들은 대부분 채택하고 있다. 이 에디터 이후 vi, Emacs 등에서도 플러그인으로 비슷한 기능을 구현했다.

가격은 2023년 8월 4일 기준 $99이다. 2 버전까지 $69이었고 3 출시 이후 $80까지 인상되었다가 4버전 출시 후에는 더욱 올랐다. 구매하지 않더라도 모든 기능을 무제한으로 사용할 수 있지만, 저장할 때 가끔씩 구매하라는 팝업이 뜬다. 쓰다보면 저장+ESC가 습관이 된다 개인 라이선스는 평생 유효하지만 3년이 지나면 업데이트가 중단되므로, 최신 버전의 소프트웨어를 유지하고 싶다면 후에 업그레이드 구매가 필요하다.

2. 기본적으로 지원하는 언어

ActionScript, AppleScript, ASP, Batch, C, C#, C++, Clojure, CSS, D, Erlang, Go, Groovy, Haskell, HTML, Java, JavaScript, JSP, JSON, LaTeX, LISP, Lua, Makefile, Markdown, MATLAB, Obj-C, OCaml, Pascal, Perl, PHP, Python, R, Rails, RegEx, Ruby, Scala, ShellScript, SQL, TCL, Textile, XML, YAML 등 현대에 주로 사용되는 언어들은 대부분 기본 지원한다. 반대로 어셈블리어, Ada, FORTRAN 등은 지원하지 않는다.

심지어 JPG PNG 같은 그래픽 포맷도 디코딩되어 열리고, 다른 텍스트 에디터에서는 뻗어버리는 수백만 줄짜리 CSV 등의 파일도 거뜬히 읽어낸다. 다만 편집 기능(특히 다중 편집)을 사용하는 순간 리소스 부족으로 종료되는 경우가 많다.

기본적으로 지원하지 않더라도 플러그인으로 확장할 수 있다. 또한 지원한다는 것은 어디까지나 소스 하이라이팅과 자동완성, 자동 인덴트 정도로 IDE 수준의 개발 환경은 기본적으로 지원되지 않는다.

예를 들어 패키지 인스톨러를 이용하여 기능들을 설치하면 ARMA 3 게임의 모드를 만드는데 사용되는 특수목적 언어인 SQF등의 언어들도 하이라이팅 기능을 이용할 수 있으며, 파이썬등의 일부 언어들은 컴파일러 또한 설치할 수 있다.

3. 장점

4. 단점

5. 기능

5.1. Goto

특정 위치로 이동하는 기능.

기본적으로 파일 이름의 일부를 쳐서[3] 열 수 있고, @로 특정 구문을 찾거나 #으로 검색, :으로 라인 넘버까지 지정할 수 있다.

tp@rf라 치면 text_parser.py의 read_file 함수를 찾아준다거나, tp#fn을 치면 function을 찾아준다거나, tp:100을 치면 파일의 100번째 줄이 열리는 식.

Ctrl+P 키를 누르면 Goto Anything이 열리며 Goto Symbol이나 Goto Line 등의 단축키도 따로 배정되어 있으나 Goto Anything에서 전부 가능하기 때문에 잘 사용되지는 않는 듯 하다.

이외에

등의 기능을 활용할 수 있다.

5.2. 명령 팔레트

명령어로 Sublime Text의 주요 조작을 할 수 있게 해주는 창으로 Ctrl+Shift+P 키를 눌러 열 수 있다. 패키지 매니저를 설치했다면 이곳을 통해 사용할 수 있다.

5.3. 다중 선택

파일:mutiple_selection_ in_sublime_text3.gif
단축키 Ctrl+D로 커서 위치의 동일한 단어를 선택하고, 동시에 수정 가능하다. Ctrl+마우스 선택 혹은 Ctrl+F로 검색해도 된다. 변수명 같은 중복되는 단어 수정에 편리하다.

다중 선택을 대소문자를 구별한 채로 하고 싶다면 Ctrl+F를 누르고 대소문자 구별을 켠 다음, 다중 선택할 단어 위에 커서를 올려 놓는다. 그런 다음 Ctrl+D를 누르면 대소문자를 구별하여 다중 선택이 된다. Ctrl+U로 마지막 선택을 취소할 수 있다.

페이지 전체 단위로 특정 단어를 선택하고 싶다면 Ctrl+F에서 특정 단어를 입력한 다음 find all버튼을 누르거나, 특정 단어를 커서에 올려놓은 다음에, Alt+F3를 누르면 전체 선택이 된다.

이 다중 선택 기능이 업계 표준 수준으로 제시되어, 다른 편집기 앱에도 영향을 주었다. 현재 많은 이들이 즐겨 쓰는 Notepad++, Visual Studio Code 등의 텍스트 편집기와, Visual Studio, IntelliJ IDEA 등의 IDE에서도 비슷한 다중 선택 기능을 사용할 수 있다.

5.4. 기타

6. 기본 세팅

6.1. 패키지 컨트롤

서브라임 텍스트를 원활하게 사용하기 위해서는 먼저 패키지 컨트롤(Package Control)을 설치하여야 한다. 간단하게는 테마부터 C++11 등 기본적으로 지원하지 않는 언어의 Syntax 강조 기능 등 다양한 플러그인을 명령어 한 줄로 추가할 수 있게 도와준다. 사실상 필수적인 플러그인. Will Bond가 제작하였으며 설치 방법은 다음과 같다.
  1. https://packagecontrol.io/installation에 접속한다.
  2. 페이지에 있는 명령어 코드를 복사한다. 서브라임 텍스트에서 Python 콘솔(Ctrl + `)을 열고 코드를 붙여 넣고 실행한다.
  3. 설치가 완료되고 나면 명령어 팔레트(Ctrl+Shift+P)에 Package Control:로 시작하는 메뉴가 추가된 것을 볼 수 있다.
  4. Package Control:Install Package를 선택하면 플러그인 목록이 뜨며, 여기서 설치하고자 하는 플러그인의 이름을 검색하고 엔터를 누르면 바로 설치된다.
  5. 3211 버전 기준으로 Sublime Text 설치 후 명령어 팔레트에 install 이라고 입력하면 Install Package Control 명령이 보이고 이것을 선택하면 자동으로 Package Control이 설치된다.

Sublime Text 4에선 간단하게 Command palette에서 설치할 수 있다.

파일:sublime_text_4_install_package_control.gif

6.2. IMESupport

앞서 서술했던 한글 입력 시 지연 문제를 해결하기 위한 플러그인. 다만 메모장이나 워드처럼 자연스럽게 한글을 입력할 수 있는 것은 아니며 화면 모서리에 뜨던 것이 커서 옆에 뜨게 되었다는 차이 밖에 없다. 그래도 없는 것보다는 훨씬 낫다. Find나 Replace 등에선 적용되지 않는다. Windows 10 이하에서만 적용된다. 3211 버전 기준 IMESupport를 설치하지 않은 상태에서 화면 모서리가 아닌 커서 바로 아래에 입력 중인 한글이 표시된다. IMESupport 사용시 Find 입력 창에서 입력 중인 글자가 Find 창이 아닌 편집창 커서 쪽에 표시되는 문제가 있으므로 써보고 기본 상태와 IMESupport 중에 선택하면 된다.

2021년 5월 21일 Sublime Text 3가 Sublime Text 4로 업그레이드되면서 한글 입력 시의 지연 문제가 해결되었다. 한글 입력에 불편함을 느낀다면 Sublime Text 4로 업데이트하자.

6.3. ConvertToUTF8

서브라임 텍스트에서는 기본적으로 EUC-KR을 비롯해 중국어, 일본어 인코딩을 지원하지 않는다. 이 플러그인을 설치하면 File 메뉴 하위에 Set File Encoding to 메뉴와 Reload with Encoding 메뉴에 EUC-KR 등이 추가되어 보다 편리하게 열람할 수 있다. UTF-8로 전환도 가능한데, 일부 스크립트 언어 등에서 한글이 깨질 때 UTF-8로 전환해도 문제가 해결되지 않을 경우에는 메모장으로 열어서 '유니코드' 인코딩으로 저장해주어야 한다.


[1] 데비안, 레드햇 계열이 아닌 배포판에서 설치하는 경우, 다운로드 페이지에서 <아키텍처 버전> bit.pkg.tar.xz 대신 <아키텍처 버전> bit.tar.xz을 받아야 함에 주의하자. 소스 코드가 아니기 때문에 컴파일할 필요는 없다. [2] Lime Text는 현재 백앤드는 개발이 많이 진척된 상태지만 프론트엔드의 개발은 상당히 부진하다. [3] Fuzzy Search라고 하는데 시작부터 글자 하나 틀리지 않고 일치해야 하는 기존 검색에 비해 맨 첫 글자와 이후에는 순서만 맞으면 사이사이에 다른 글자가 들어가도 된다.