Sublime Text 3 это мощный редактор исходного кода со множеством настроек, сумасшедшим числом плагинов, армией поклонников и еще он очень красивый и удобный! Настройка саблайма для первого пользования окажется довольно сложной т.к. здесь попросту нет настроек.
Когда-то писал про Sublime Text, но тогда я только познакомился с этим чудо редактором. Теперь же опишу все его преимущества, настройку горячих клавиш, полезные комбинации и некоторые интересные плагины.
Настройка Sublime Text, а также задание горячих клавиш осуществляется через команды, которые вписываются в файл конфиг. Все эти команды можно найти на русском официальном сайте по ссылке: http://sublimetext.ru/documentation
Особенности Sublime Text
- быстрота работы;
- приятный внешний вид;
- минимализм — ничего лишнего;
- отвлеченный режим – вообще ничего лишнего;
- графическая карта — быстрый скролл по всей высоте файла;
- продвинутый поиск;
- сумасшедшее число плагинов (более 800 разработчиков);
- мультивыделение и мультиредактирование — правка сразу нескольких строк;
- гибкая настройка горячих клавиш, функций;
- возможностью разделить экран на несколько частей;
Настройка Sublime Text 3
По умолчанию все настройки уже заданы и записаны в файл Preferences Settings – Default. Если нам необходимо внести изменения, то мы лезем на сайт, ищем нужные настройки, открываем Preferences User – Default и вписываем свои значения.
Ниже выкладываю свой файл с настройками, на заполнение которого ушел не один месяц, в котором представлены основные настройки. Остальное уже самостоятельно, через мануал.
Особое внимание нужно обратить на то, что при смене настроек через меню, в файле настроек исчезают все комментарии к переменным. По крайне мере у меня и я неоднократно злился, пытался понять почему т.к. люблю, когда все подписано и красиво упаковано.
{
//Кодировка по умолчанию. Если изменить, то русские буквы будут крякозябрами!
"fallback_encoding": "Cyrillic (Windows 1251)",
//Цветовая схема. Править не нужно - выбирается через меню.
"color_scheme": "Packages/Colorsublime-Themes/SublimeNotepad2.tmTheme",
//Размер шрифта
"font_size": 10.5,
//Всплывающие помощники для тегов
"auto_complete":true,
//Автозакрытие тегов. Пример: </ - дальше само!
"auto_match_enabled": false,
//Автоперенос строк. Горизонтальной прокрутки не будет
"word_wrap": true,
//Выделять строку на которой находится курсор.
"highlight_line": true,
//Подсвечивать измененные вкладки.
"highlight_modified_tabs": true,
//Показывать полный путь к файлу в заголовке окна.
"show_full_path":true,
//Обычно софт спрашивает о сохранении файла перед закрытием программы. При "тру" - не будет, но при запуске восстановит все как было.
"hot_exit": true,
//Открывать незакрытые файлы при каждом запуске программы
"remember_open_files":true,
//Отображать ли номера строк.
"line_numbers":true,
//Показывать кнопки закрытия на вкладках
"show_tab_close_buttons": true,
//Проверка обновлений
"update_check": false
}
В свою сборку вложил этот файл и подробное описание по установке и настройке.
Горячие клавиши
Горячие клавиши настраиваются по аналогии, но, в отличие от настроек, мы не знаем код команды. Поэтому, как и с основными настройками, идем на сайт программы, ищем клавишу, затем открываем Preferences Key Bindings – Default, через поиск находим полный код клавиши и переделываем ее при необходимости в файле Preferences Key Bindings – User
Например, я хочу переставить кнопки для отмены редактирования (когда напортачил — нажать и вернуть как было). Для этого ищу по ссылке http://sublimetext.ru/documentation/hotkeys/windows нужное сочетание клавиш.
Нашел вот такое: “CTRL+Z Отмена последнего действия”. Теперь открываю файл горячих клавиш по умолчанию и вбиваю в поиск сочетание клавиш (CTRL — прописывается не кнопкой, а четырьмя буквами).
{ "keys": ["ctrl+z"], "command": "undo" }
Нашел на 24 строке нужную команду. Переношу ее в пользовательский файл настроек горячих клавиш и меняю комбинацию клавиш на ту, которая мне удобна.
Ниже выкладываю свой файл с настройками. Изменил только две верхние команды, остальное просто собрал, чтобы не забывать сочетания.
[
//Шаг назад. отмена изменений в тексте
{ "keys": ["ctrl+shift+x"], "command": "undo" },
//Шаг вперед. Вернуть отмену
{ "keys": ["ctrl+shift+z"], "command": "redo" },
//Выделить текст между двумя парными тегами. Если нажимать несколько раз, то выделяет целыми блоками, цепляясь за ближайшие теги
{ "keys": ["ctrl+shift+a"], "command": "expand_selection", "args": {"to": "tag"} },
//Одновременное редактирование нескольких строк. Выделяем, жмем кеи и печатаем
{ "keys": ["ctrl+shift+l"], "command": "split_selection_into_lines" },
//выделить строку
{ "keys": ["ctrl+l"], "command": "expand_selection", "args": {"to": "line"} },
//Перемещение выделенных строк курсорами
{ "keys": ["ctrl+shift+up"], "command": "swap_line_up" },
{ "keys": ["ctrl+shift+down"], "command": "swap_line_down" },
//Объединить выделенное в одну строку.
{ "keys": ["ctrl+j"], "command": "join_lines" },
//Добавить комментарий. Однострочный - без шифта и многострочный
{ "keys": ["ctrl+/"], "command": "toggle_comment", "args": { "block": false } },
{ "keys": ["ctrl+shift+/"], "command": "toggle_comment", "args": { "block": true } },
//Отсортировать по алфавиту. Если не выделять фрагмент, то сортирует весь файл :)
{ "keys": ["f9"], "command": "sort_lines", "args": {"case_sensitive": false} },
//Обернуть выделенное тегом. выделяем, жмем и появляется заготовка с угловыми скобками
{ "keys": ["alt+shift+w"], "command": "insert_snippet", "args": { "name": "Packages/XML/long-tag.sublime-snippet" } },
//SFTP загрузка папки и активного файла на FTP. Но лучше по Ctrl+S автоматически задать плагину!
{ "keys": ["ctrl+shift+a","ctrl+shift+s"], "command": "sftp_upload_file" },
{ "keys": ["ctrl+shift+a","ctrl+shift+d"], "command": "sftp_upload_folder" }
]
В свою сборку вложил этот файл и подробное описание по установке и настройке.
Цветовые схемы
Цветовых схем очень много. По умолчанию стоит тема Monokai. В комплекте идет еще 22 темы.
Бесплатные темы для Sublime Text: http://colorsublime.com/
Создать тему для Sublime Text: https://github.com/
Проекты
В программу интегрирован удобный интерфейс управления папками под названием проекты. Вызывается двумя комбинациями клавиш: Ctrl+K, Ctrl+B и наоборот, если нужно спрятать.
Смысл проектов в добавлении папок над которыми ведется работа для быстрого доступа. Проекты это не дерево с корнем на локальных дисках. Корнем проекта будет та папка, которую мы добавили. Самое интересное — подключение плагинов к проектам, например SFTP.
В общем, долго обходил стороной проекты, но однажды, а точнее вместе с плагином SFTP воспользовался и мне понравилось. На скриншоте выше пять шаблонов, над которыми я работаю. Два из них синхронизированы с FTP и заливают файлы напрямую, по нажатию Ctrl+S. Так работает SFTP.
Сниппеты
Это набор заготовок, которые мы создаем сами. Например, для часто используемых кусков кода и вставляем в файл по нажатии заданной нами клавиши. Вещь очень удобная. Подробнее читайте в другой статье про сниппеты в Sublime Text.
Мультивыделение и редактирование
Нажатием одной комбинации клавиш можно установить каретку (мигающий вертикальный курсор) одновременно на все строки после чего, также при помощи комбинации клавиш можно обернуть строки кодом. Например, имеется текст, который нужно обернуть ссылками
Дополнительно сделаем всплывающую подсказку в виде тега TITLE для каждой ссылки. Руками это занимает некоторое время, а и при большем количестве таких строк, процесс может затянуться надолго.
- Первая строка
- Вторая строка
- Третья строка
- Четвертая строка
- Пятая строка
- Шестая строка
- Седьмая строка
- Восьмая строка
- Девятая строка
- Десятая строка
Если запущено мультиредактирование и количество редактируемых строк совпадает с количеством вставляемых — вставит их не в одну строчку, а каждой строке по одной новой. Пример ниже, когда тег TITLE совпадает с текстом ссылки.
Пошаговый алгоритм
- Копируем текст из блока чуть выше;
- Вставляем его в пустой файл;
- Выделяем текст Ctrl+A, жмем волшебное сочетание: Ctrl+Shift+L — появился курсор на всех строках;
- Не сдвигая курсор, чтобы не потерять выделение жмем Alt+Shift+W и оборачиваем текст заготовкой для тега;
- Печатаем нужный код (в нашем случае простая ссылка <a href=”link” title=”);
- После кавычки в строке выше жмем Ctrl+V т.к. нам нужно дважды печатать такой текст;
- Дописываем ссылку: “>тут уже текст стоит, </ а тут уже ссылка закрыта;
Черные полоски в закрывающей кавычке тега тайтл это и есть те мигающие каретки на все строки сразу
Контекстное меню
Меню, которое появляется при нажатии правой кнопки мышки редактируется и полностью настраивается под себя через всего один файл. Это файл: %appdata%/Sublime Text/Packages/Default/Context.sublime-menu.
Быстрый доступ к этому файлу осуществляется через сам блокнот нажатием Preferences – Просмотр плагинов, которая открывает папку %appdata%/Sublime Text/Packages. Тут мы уже открываем нужный нам файл.
Я добавил себе три команды (метку для строки, и отмену редактирований) из горячих клавиш и получил вот такой код:
[
{ "command": "copy", "caption": "Копировать" },
{ "command": "cut", "caption": "Вырезать" },
{ "command": "paste", "caption": "Вставить" },
{ "command": "toggle_bookmark", "caption": "Отметить строку" },
{ "caption": "-", "id": "selection" },
{ "command": "undo", "caption": "Отменить" },
{ "command": "redo", "caption": "Вернуть" },
{ "caption": "-", "id": "selection" },
{ "command": "select_all", "caption": "Выделить всё" },
{ "caption": "-", "id": "file" },
{ "command": "open_in_browser", "caption": "Открыть в браузере" },
{ "command": "open_dir", "args": {"dir": "$file_path", "file": "$file_name"}, "caption": "Открыть папку файла…" },
{ "command": "copy_path", "caption": "Копировать путь к файлу" },
{ "command": "reveal_in_side_bar", "caption": "Показать в боковой панели" },
{ "caption": "-", "id": "end" }
]
Синтаксис тот-же что и в горячих клавишах — JSON, но нет блока с комбинациями клавиш.
Словари и орфография
Если нам часто приходится работать с текстом, писать, например статьи через блокнот, то на помощь приходят словари и проверка орфографии. Слова будут подчеркиваться пунктиром в случае, если по версии словаря, они написаны неправильно. К сожалению, запятые и пунктуацию проверять словари не умеют и не всегда правильно находят ошибки в словах.
Сам словарь должен состоять из двух файлов: .aaf и .dic, которые содержат набор букв и слов для проверки орфографии.
Устанавливаются еще проще: скачиваем необходимые файлы, закидываем в папку %appdata%/Sublime Text/Packages, открываем в блокноте: Вид-Словарь и выбираем как на скриншоте ниже. Для себя я создал отдельную папку Dictionares и туда закинул все файлы словарей.
В свою сборку вложу несколько словарей, а также вот вам ссылки на некоторые словарики:
https://github.com – пак словарей под ст
http://extensions.openoffice.org – многообещающий словарь, подчеркивающий все подряд
Сборка из статьи на хабре от kaktyc0913
Теперь, после установки необходимых словарей в файле, где необходимо включить проверку орфографии жмем F6
Ниже выкладываю свою сборку Sublime Text на момент написания статьи в которую вошли следующие элементы:
- файлы русификации скачаны тут;
- свои конфигурационные файлы;
- плагин Golden Ratio (лень было вырезать);
- словари;
- переделанное контекстное меню;
- инструкции и т.д.;
- набор светлых цветовых схем;
- свою цветовую схему Sublime_notepad2;
Здравствуйте, а могу ли я назначить горячую клавишу команде перемешивания строк, которая находиться в Edit -> Permute Lines -> Shuffle?
Автор, переместите папку Defalut в папку Packages
Простите за опчатку . Переместить надо в папку User
Простите за опчатку . Переместить надо в папку User
Стаким названием у себя не наблюдаю папку. Есть только Theme – Default, но это не смертельно. Кча плагинов устанавливаются в папке Packages и спокойно работают
У меня все на русском. Не подскажу
Скрин вашего архива:
https://yadi.sk/i/oNq4U98hgXBGj
Стоит сказать что делать это стоит только если меню дублируется, от чего зависит не имею понятия, от случая к случаю
Не заметил сразу)
В смысле дублируется?) У меня слетают русские пункты меню в некоторых случаях, но это после установки некоторых плагинов:
ковырять файлы особо не хочется, да и не мешает