Najnowsze wersje systemu kompilacji Makefile ST3 (jak opisano w pliku Make.sublime-build ) już zawierają definicję składni, która generuje pokolorowane dane wyjściowe.
Jeśli nie jesteś zadowolony z tego, oto co możesz zrobić jako alternatywne i ogólnie działające podejście, jeśli masz system kompilacji, który wytwarza kolory ANSI w terminalu i chcesz, aby były wyświetlane w panelu wyników kompilacji Sublime Text 3 .
Tak właśnie zrobiłem w mojej instalacji Sublime Text 3 dla RSpec, ale myślę, że idealnie nadaje się w każdym przypadku z narzędziem wytwarzającym kolor w zwykłej konsoli / TTY:
1. Zmuś system kompilacji do wyświetlania kolorów, nawet jeśli nie jest wysyłany do TTY.
To zależy od systemu kompilacji. Na przykład dla Ruby i RSpec możesz utworzyć .rspec
plik w swoim projekcie z następującą zawartością:
--color --tty
W twoim przypadku masz już system kompilacji, który wytwarza dane wyjściowe z sekwencjami ucieczki kolorów ANSI.
2. Zainstaluj pakiet ANSIescape (SublimeANSI)
Zalecane jest zainstalowanie go za pomocą Kontroli pakietów. Zobacz repo pakietu dla instrukcji instalacji i konfiguracji.
3. Utwórz nową definicję systemu kompilacji w Sublime Text i skonfiguruj ją tak, aby rozpoznawała kolory ANSI
Na przykład oto zawartość mojego Colorized RSpec.sublime-build
systemu kompilacji:
{
"cmd": ["rspec", "-I ${file_path}", "$file"],
"file_regex": "# ([A-Za-z:0-9_./ ]+rb):([0-9]+)",
"working_dir": "${project_path:${folder:${file_path}}}",
"selector": "source.ruby.rspec",
// Recognize ANSI colors in the output
"target": "ansi_color_build",
"syntax": "Packages/ANSIescape/ANSI.tmLanguage"
}
Dwie ostatnie opcje konfiguracji pochodzą z readme SublimeANSI . Możesz zastosować to do swojego systemu kompilacji dla Make. Możesz oprzeć go na bieżącej wersji Make.sublime-build
pliku z pakietów Sublime Text 3.
4. Zbuduj swój plik / projekt za pomocą nowo utworzonego systemu kompilacji.
Użyj menu „Kompiluj z ...”, aby wybrać nowy system kompilacji. W OS X tak jest Cmd + Shift + B
. Kolejne kompilacje z Cmd + B
użyją tego ostatnio wybranego systemu kompilacji.
Oto jak to wygląda:
Obecnie nie ma sposobu, aby konsola ST3 analizowała znalezione kolory. Należy to omówić z autorem. Zauważyłem wcześniej, że konsola zawsze ma wyjście monochromatyczne. ST3 obecnie używa tylko kolorów dostarczonych z zastosowanym motywem.
Jedynym sposobem na pozbycie się sekwencji ucieczki byłoby odfiltrowanie ich, zanim wynik trafi do Sublime.
źródło