Sublime Text удобный текстовый редактор, который занял нишу между большими IDE со всем готовым и текстовыми редакторами "собери сам" (vim, emacs, etc). Для меня vim основной текстовый редактор с уже устоявщимся конфигом, набором плагинов и привычек, а вот Sublime'ом пользуюсь для параллельных работ.
Как большинство в этом блоге, хочу собрать в одной заметке все свои предпочтения касательно Sublime, что бы со временем быстро развернуть в новых средах.
Начнем с установки. Я пользуюсь dev-билдом который можно установить вручную отсюдова или с помощью пакетных менеджеров.
Под Ubuntu
sudo add-apt-repository ppa:webupd8team/sublime-text-3 sudo apt-get update sudo apt-get install sublime-text-installer
Под Arch Linux
yaourt -S sublime-text-dev
Настройки
Все настройки хранятся в JSON. Мои настройки такие (Preferences - Settings - User):
{
"auto_complete": true,
"color_scheme": "Packages/Color Scheme - Default/Solarized (Light).tmTheme",
"detect_slow_plugins": false,
"ensure_newline_at_eof_on_save": true,
"file_exclude_patterns":
[
"hgignore",
".gitignore"
],
"folder_exclude_patterns":
[
".hg",
".git"
],
"font_face": "Courier New",
"font_size": 13.0,
"highlight_line": true,
"highlight_modified_tabs": true,
"ignored_packages":
[
],
"indent_guide_options":
[
"draw_active",
"draw_normal"
],
"indent_to_bracket": true,
"soda_folder_icons": true,
"sublimelinter": false,
"tab_size": 4,
"theme": "Soda Light.sublime-theme",
"translate_tabs_to_spaces": true,
"trim_trailing_white_space_on_save": true,
"overlay_scroll_bars": "enabled",
"line_padding_bottom": 1,
"line_padding_top": 1,
}
Список всех настроек можно посмотреть тут.
И сочетания клавиш (Preferences - Key Bindings - User)
[
{ "keys": ["f4"], "command": "toggle_bookmark" },
{ "keys": ["f5"], "command": "next_bookmark" },
{ "keys": ["f6"], "command": "prev_bookmark" },
{ "keys": ["f7"], "command": "open_model_view" },
{ "keys": ["f8"], "command": "open_template" },
{ "keys": ["f9"], "command": "jump_back" },
{ "keys": ["f10"], "command": "jump_forward" },
{ "keys": ["alt+shift+z"], "command": "insert_snippet", "args": {"contents": "{% ${0:$SELECTION} %}"} },
{ "keys": ["alt+shift+x"], "command": "insert_snippet", "args": {"contents": "{{ ${0:$SELECTION} }}"} },
{ "keys": ["ctrl+l"], "command": "python_goto_definition" },
{ "keys": ["ctrl+j"], "command": "join_lines" },
{ "keys": ["ctrl+d"], "command": "duplicate_line" },
{ "keys": ["ctrl+y"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete Line.sublime-macro"} },
{ "keys": ["ctrl+alt+n"], "command": "advanced_new_file"},
{
"keys": ["ctrl+'"],
"command": "bh_key",
"args":
{
"lines" : true,
"plugin":
{
"type": ["__all__"],
"command": "bh_modules.bracketselect"
}
}
}
]
Горячие клавиши
Наиболее часто используемые сочетания клавиш
ctrl + p - поиск файлов;ctrl + r - поиск по именам функций, структур;ctrl + ; - поиск по переменным;ctrl + shift + p - меню с набором всех команд Sublime Text с возможностью поиска;ctrl + shift + [ - свернуть (fold) текущий блок;ctrl + shift + ] - развернуть (unfold) текущий блок;shift + правая кнопки мыши - вертикальное выделение;ctrl + левая клавиша - множественное выделение и правка;ctrl + x - удалить линию;ctrl + l - выделить линию;ctrl + d - выделить слово;ctrl + m - перемещение между скобками;ctrl + shift + m - выделение текста внутри скобок;alt + shift + 2 - разбить окно на две части;alt + shift + 1 - вернуть вид к одному окну;ctrl + [NUM] - переключиться на окно с номером NUM (1-4);ctrl + shift + [NUM] - переместить файл в окно NUM (1-4);alt + shift + w – обернуть выбранный текст в тег;Плагины
Посмотреть список доступных плагинов можно на wbond.net.
Для управления плагинами из под редактора понадобиться Package Control. Для этого нажимаем Ctrl + ` и в открывшуюся консоль вводим:
import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read())
Нажимаем ctrl + shift + p, набираем install и получаем список плагинов из внутреннего репозитария Sublime Text. Используемые плагины:
Super+Alt+N;Настройки отдельно для проекта
Мы можем установить настройки отдельно для проекта, для этого откройте Project - Edit Project и введите настройки под проект, например
{
"folders": [
{
"path": "/path/to/folder1"
},
{
"path": "/path/to/folder2"
}
],
"settings": {
"python_interpreter": "/path/to/some/virtualenv/bin/python"
}
}
Дополнительное чтиво