Можно задать горячие клавиши для тех builds (далее также «билдов» и т. п.), которыми пользуетесь.
1. Собственные builds Preferences
→
Key Bindings - User
. Если прежде не использовали собственные хоткеи, вставляем такой код:
[{ "keys": ["ctrl+alt+b"], "command": "build", "args": {"build_system": "Packages/User/SashaIsMyIdol.sublime-build", "variant": "" }]
Когда же уже приходилось вписывать хоткеи в этот файл с синтаксисом JSON, [квадратные скобки] нужно ставить только в начале и конце, но не между командами, перечисляемыми через запятую. Пример файла:
[
// Clickable URL — открыть URL, на которую наведён курсор
{ "keys": ["alt+enter"], "command": "open_url_under_cursor" },
// Открыть PowerShell
{ "keys": ["ctrl+7, ctrl+t"], "command": "open_terminal" },
// Наш Build
{ "keys": ["ctrl+alt+b"], "command": "build", "args": {"build_system": "Packages/User/SashaIsMyIdol.sublime-build", "variant": "" }
]
keys
— произвольный, но незанятый шорткат,
build_system
— путь к файлу Вашего билда с расширением
.sublime-build
, начиная с папки
Packages
.
Нажимаем горячие клавиши, — в примере это
Ctrl+Alt+B
, → build должен запуститься.
2. Builds по умолчанию
Принцип тот же: задать горячие клавиши в файле
Key Bindings - User
. Нужно ещё узнать, где лежат файлы билдов.
Положим, мы работаем с Ruby.
Ctrl+Shift+P
→
PackageResourceViewer: Open Resource
(благодаря
fuzzy-поиску достаточно ввести
prv
) →
Ruby
→
Ruby.sublime-build
. В title страницы смотрим путь к файлу билда, его и вписываем:
{ "keys": ["ctrl+7, ctrl+b"], "command": "build", "args": {"build_system": "Packages/Ruby/Ruby.sublime-build", "variant": "" }},
Аналогичным образом находим пути к builds для остальных языков программирования: для Python это
Packages/Python/Python.sublime-build
, у плюсов
Packages/C++/C++ Single File.sublime-build
.
3. Альтернативный вариант
Сначала у меня не срабатывал из-за
опечатки автора книги Sublime Text Power User.
Делаем так, чтобы когда у нас были открыты файлы для Python, например, с расширением
.py, запускался бы Build Python, файлы для C++, например, с расширением
.ex — соответственно, для C++. В файле вашего билда с расширением
.sublime-build необходимо добавить параметр
selector, значением которого будет являться общая для вашего языка разметки/программирования или инструмента программирования часть т. н. «области видимости» (scope). Как получить области видимости, подробно расписано
тут. Нам нужно только то, что до первого пробела; допустим, если мы получили
source.python meta.function.python entity.name.function.python
, необходимо будет подставить только
source.python
. Пример билда для Python:
{
"cmd": ["python", "-u", "$file"],
"file_regex": "^[ ]*File
quot;(...*?)
quot;, line ([0-9]*)",
"selector": "source.python"
}
Для C++:
{
"cmd": ["g++", "$file", "-o", "$file_base_name", "-I/usr/local/include"],
"selector": "source.c++",
"windows": {
"cmd": ["cl", "/Fo${file_path}", "/O2", "$file"]
}
}
Спасибо.