sublimetext3
Системы сборки
Поиск…
Синтаксис
- Build Systems написаны в JSON и имеют расширение файла
.sublime-build
.
замечания
Build Systems доступны только для вывода, то есть невозможно выполнить какой-либо код, который будет запрашивать ввод пользователя с использованием системы сборки. Код будет просто блокировать ожидание ввода навсегда. Чтобы обойти это, многие используют плагин REPL.
Ключи JSON:
-
shell_cmd
задает точную команду для запуска в оболочке и поддерживает переменные placeholders (например,${file}
который относится к открытому в данный момент файлу). -
result_file_regex
иresult_line_regex
используются для синтаксического анализа вывода из неудавшейся сборки и отображения ошибок таким образом, что можно перемещать редактор туда, где произошла ошибка. -
selector
- это селектор областей, который определяет, какой синтаксис имеет значение для сборки. Например, нет смысла использовать интерпретатор Python на PHP-коде. -
variants
могут использоваться для запуска другой команды, например, чтобы просто проверить синтаксис файла, а не выполнять его. Варианты могут также указывать или переопределять одни и те же ключи JSON, и они будут применяться только к этому варианту. -
syntax
используется для установки файла определения синтаксиса, который будет применен к панели вывода, тем самым выделяя подсветку синтаксиса.
Пример системы сборки
Новые системы сборки могут быть созданы из меню (Tools | Build System | New Build System).
{
"shell_cmd": "somecommand -u \"$file\"",
"result_file_regex": "^[ ]*File \"(.*?)\"",
"result_line_regex": "^[ ]*File \".*?\", line ([0-9]*)",
"selector": "text.html",
"syntax": "Packages/JavaScript/JSON.sublime-syntax",
"env": {"ENCODING": "utf-8"},
"working_dir": "${project_path:${folder}}",
"path": "C:\\test\\;$PATH"
"linux": {
"variants":
[
{
"name": "Word Count (current file)",
"cmd": ["wc", "$file"]
}
]
}
}
Сборка может быть инициирована с помощью меню (Tools | Build) или нажатием Ctrl + B.
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow