sublimetext3
Buduj systemy
Szukaj…
Składnia
- Systemy kompilacji są napisane w JSON i mają rozszerzenie pliku
.sublime-build.
Uwagi
Systemy kompilacji są tylko danymi wyjściowymi, co oznacza, że nie można wykonać kodu, który zażąda od użytkownika wprowadzenia danych za pomocą systemu kompilacji. Kod po prostu zablokuje czekanie na dane wejściowe na zawsze. Aby obejść ten problem, wiele osób korzysta z wtyczki REPL.
Klucze JSON:
-
shell_cmdokreśla dokładne polecenie do uruchomienia w powłoce i obsługuje zmienne symbole zastępcze (takie jak${file}który odnosi się do aktualnie otwartego pliku). -
result_file_regexiresult_line_regexsą używane do analizowania danych wyjściowych z nieudanej kompilacji i wyświetlania błędów w taki sposób, aby można było przejść do edytora w miejscu, w którym wystąpił błąd. -
selectortoselectorzakresu, który określa, jakiej składni dotyczy kompilacja. Na przykład nie ma sensu uruchamiać interpretera języka Python na kodzie PHP. -
variantsmożna użyć, aby umożliwić uruchomienie innej komendy, na przykład w celu sprawdzenia składni pliku zamiast wykonania go. Warianty mogą również określać lub zastępować te same klucze JSON i będą miały zastosowanie tylko do tego wariantu. -
syntaxsłuży do ustawiania pliku definicji składni, który zostanie zastosowany do panelu wyjściowego, dzięki czemu zostanie podświetlony.
Przykład kompilacji systemu
Nowe systemy kompilacji można tworzyć z menu (Narzędzia | System budowania | Nowy system budowania).
{
"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"]
}
]
}
}
Kompilację można zainicjować, używając menu (Narzędzia | Kompilacja) lub naciskając Ctrl + B.
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow