Jak mogę podświetlić XML ze standardowego wejścia (np. Potokowego z xmllint --format
) na standardowe wyjście?
Wiem, jak wyróżnić pracę w nano
i view
, ale czy jest coś, co po prostu wychodzi na standardowe wyjście i wychodzi?
Chciałbym po prostu wpisać coś takiego
xmllint --format xmlfile.xml | some-highlighter
a może dla dużych plików
xmllint --format xmlfile.xml | some-highlighter | less
i uzyskać ładną wydajność.
command-line
xml
syntax-highlighting
Sietse
źródło
źródło
-O encoding=UTF-8
aby działała na wyjściu xmllinta. Dzięki!apt-get install buffer
). Np.xmllint --format foo.xml |pygmentize -g |buffer |less -r
sudo apt install python-pygments
instalowałem go.Oto jak to zrobić, używając podświetlenia źródła GNU i mniej:
źródło
source-highlight -s xml -f esc
esc256
produkuje ładniejszy wynik niżesc
source-highlight
to bardzo wolne działanie. Prawdopodobnie analizuje dane wejściowe linia po linii. To polecenie dało mi dobre, szybkie wyniki:xmllint --format - < input.xml | source-highlight -f esc -s xml | less -F
less -r
zamiast tego zacząłem pracować z (jak podano w odpowiedzi)less -F
.Znalazłem wyróżnienie w Homebrew dla OSX i jestem pewien, że jest on dostępny w repozytorium Ubuntu. Podświetla i wysyła do wielu formatów, w tym do wyjścia terminala.
źródło
pbpaste|xmllint --format -|highlight --out-format=ansi --syntax=xml
zrobił dla mnie lewę. (Mogę się jednak spierać o wybór kolorów podświetlenia.)