czy istnieje sposób na wyróżnienie składni pliku, który widzę w Less?
faktycznie używam tego polecenia, aby otworzyć plik XML (a czasem ich serię)
less htmleditors/htmleditors_config.xml
lub
less [multiple files]
Chciałbym zostać w Less (aby lepiej nauczyć się tego programu i wykorzystać moją wiedzę na temat: n oraz: p do następnej / poprzedniej nawigacji)
Ale chce też jakiegoś podstawowego podświetlenia składni - przynajmniej pokaż komentarze inaczej. Czy wiesz jak to zrobić?
syntax-highlighting
less
Jesper Rønn-Jensen
źródło
źródło
less ~/.zshrc
. Błąd:src-hilite-lesspipe.sh: line 9: source-highlight: command not found
. Uruchomię to na MacOSX.brew install source-highlight
;export LESSOPEN="| /usr/local/bin/src-hilite-lesspipe.sh %s"
. Zwróć uwagę na zmianę ścieżki.sudo apt-get install source-highlight
,export LESSOPEN="| /usr/share/source-highlight/src-hilite-lesspipe.sh %s"
,export LESS=' -R '
Najlepsze z obu poprzednich odpowiedzi: możesz wywołać domyślny edytor systemu z mniejszej odległości, naciskając v.
źródło
lub
Pygmentize jest częścią highlitera składni Pygments Python .
źródło
pygmentize
działa również zLESSOPEN
materiałami wymienionymi w innych odpowiedziach tutaj.pygmentize
, potrzebujesz Pythona, a następnie możesz zainstalować zapygmentize
pomocąpip install pygments
.less
do wykorzystaniapygmentize
do użycia składni wyróżnienia:which pygmentize 2> /dev/null >&2 && export LESSOPEN="| pygmentize -g -f terminal256 %s"
.-g
aby działał z potokami (less <(diff -u file1 files)
). Jest dostępny wcommunity/pygmentize
pakiecie dlaarch linux
ipython-pygments
dladebian
.pygmentize
, ale uznałem , że jest zbyt wolne. Wymyśliłem tę odpowiedź, która jest szybsza i wciąż ma 256 kolorów.Myślę, że powinieneś użyć edytora tekstu. Lubię siebie. Daje to WIELE MOCY podczas przeglądania plików, a kiedy chcesz je edytować, znasz już podstawy.
Oto niektóre zalety korzystania z edytora tekstu (szczególnie vim):
Aby otworzyć plik w trybie tylko do odczytu, użyj tego:
Oto podstawowy przewodnik nawigacyjny:
Oto link, aby uzyskać więcej informacji:
http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html
Podsumowując, jeśli użyjesz uniksowego vima, jest to dość fundamentalne. Słyszałem, że nauka vim jest jak nauka pisania. Jest to kolejne najbardziej przydatne narzędzie, którego możesz nauczyć się programować.
(Aby uniknąć wojen edytorskich, możesz również zajrzeć do emacsa lub innego edytora, ale ja osobiście wolę vim)
źródło
view
jest pseudonimemvim -R
.Jak powiedzieli inni, możesz użyć mocy vima. Ale co ważne, możesz to zrobić bez uczenia się korzystania z vi / vim.
Vim jest wyposażony w
less.vim
skrypt, który działa całkiem dobrze jako zamiennik mniejszego, z podświetlaniem składni w pełnym kolorze. Używaless
skrótów klawiszowych (wystarczy nacisnąć „q”, aby wyjść).Miał kilka problemów, więc go poprawiłem . Oto zrzut ekranu z mojego postu na blogu (zarchiwizowany 2013-04-09; oryginał rzuca 503):
źródło
find /usr/share/vim -name 'less.sh'
który pochodzi z tego GIST: gist.github.com/chauncey-garrett/9773770vimless
polecenie (zgodnie z nomenklaturąvimdiff
), wykonaj:ln -s $(find /usr/share/vim -name 'less.sh') /usr/local/bin/vimless
Szukałem tego i znalazłem inne rozwiązanie za pomocą Vima: http://ubuntu-tutorials.com/2008/07/14/use-vim-as-a-syntax-highlighting-pager/
Post jest raczej stary, więc teraz na nowszych dystrybucjach vim 7.2 jest wysyłany, a .bashrc będzie czytać: alias vless = 'vim -u /usr/share/vim/vim72/macros/less.vim'
źródło
:help less
Z przyjemnością ogłaszam nowy pakiet e2ansi , który zapewnia obsługę podświetlania składni dla pagerów takich jak
more
iless
.Pakiet wykorzystuje matkę wszystkich edytorów tekstu, Emacsa , do faktycznego podświetlania składni. Jako dodatkowy bonus, wykonywane są również wszystkie inne konwersje normalnie wykonywane przez Emacsa - takie jak rozpakowywanie plików.
Przykład
Poniżej przedstawiono wynik przeglądania pliku przy użyciu
less
ie2ansi
:Konfiguracja
Pakiet zapewnia narzędzie wiersza polecenia,
e2ansi-cat
które uruchamia Emacsa w trybie wsadowym, otwiera pliki, zaznacza ich składnię i renderuje wynik przy użyciu sekwencji ANSI.Możesz to zintegrować
less
, ustawiając na przykład następujące zmienne (lokalizacja pliku inicjującego może się różnić):W powyższej konfiguracji
less
przywraca oryginalną zawartość okna terminala, amore
po wyświetleniu monitu wypisuje nową zawartość.Uwaga: jeśli używasz starej wersji
less
, może ona nie obsługiwać składni||
lub-
, w takim przypadku może być konieczne użycie po prostuLESSOPEN=|/usr/local/emacs ...
.Zastosowanie
less
w rurachZnak „-” w
LESSOPEN
oznacza, że filtr wejściowy powinien być również używany podczas przesyłania tekstu do niegoless
. W takim przypadku Emacs może polegać tylko na samym tekście (a nie na nazwie pliku). Na szczęście Emacs zapewnia do tego system. Ponadto podany plik plikue2ansi-magic.el
konfiguruje dodatkowe typy plików. Na przykład:Dlaczego warto korzystać z Emacsa?
e2ansi
kolory w kompozycji są zachowywane podczas przeglądania pliku wless
. Możesz wybrać odpowiedni motyw kolorystyczny z wielu źródeł lub zaprojektować własny.less
(minus ograniczenia w formacie sekwencji ANSI i oknie terminala).less
skorzysta z funkcji Emacsa, które wykonują automatyczną konwersję, na przykład rozpakowywanie plików. W rzeczywistości możesz nauczyć Emacsa przeprowadzania wszelkiego rodzaju konwersji, takich jak automatyczna konwersja pliku binarnego do postaci czytelnej dla człowieka za pomocą zewnętrznego narzędzia./USER@HOST:FILENAME
.Przydatne linki
e2ansi
jest dystrybuowany na Melpa i może być zainstalowany przy użyciu standardowego systemu pakietów Emacsae2ansi
jest hostowany na GitHube2ansi
Stronę na Emacs Wikiless
.Uwagi dotyczące systemu operacyjnego
W systemie MS Windows konsola nie obsługuje natywnie sekwencji ANSI. Na szczęście
less
aplikacja jest w stanie je renderować. Nie znam żadnej współczesnej dystrybucji binarnejless
dla MS Windows, a dostarczone pliki kompilacji są trudne w użyciu. Na szczęście jest łatwy do zbudowanialess
przy użyciu CMake , zobacz ten tekst, aby uzyskać szczegółowe informacje.OS X rozpowszechnia starą wersję
less
. Na szczęście łatwo jest zbudować nowoczesną wersję bezpośrednio ze źródła.źródło
less
.Jeśli masz zainstalowany GNU Source-highlight , możesz użyć następującego polecenia, aby podświetlić składnię pojedynczego pliku:
źródło
src-hilite-lesspipe.sh
odbierać dane wejściowe za pośrednictwem potoku?source-highlight
ma.sh
skrypt w/usr/share/source-highlight/*.sh
. Stworzyłem symboliczny link do niego z nazwąhcat
w/usr/bin
.Pokazuje podświetlone wyjście w terminalu (konsoli) -
hcat
wyróżniony jest cat.Jak:
źródło
Używając OS X 10.9 (Maverick) załatwi sprawę:
sudo nano /etc/launchd.conf
(Dodaj do /etc/launchd.conf)
restart
źródło
W Macu możesz po prostu pisać
view filename
, robi podobne rzeczy jak mniej.źródło
view filename
po prostu uruchamiavim
się domyślnie - nieco inne powiązania klawiszy zless
(więcej informacji można znaleźć w innych odpowiedziach na to pytanie).Po zainstalowaniu GNU source-highlight (pakiet
dev-util/source-highlight
na sabayon / gentoo) skonfigurowałem te środowiska w/etc/bash/bashrc.d/my-less-src-highlight
:Nie podobało mi się to,
lesspipe
ponieważ ma inne funkcje. Łączenie nie działało.źródło
Jeśli chcesz tego samego podświetlania składni, którego używasz w Vimie , ale z jakiegoś powodu wolisz używać go
less
jako pagera, możesz użyć tego skryptu: https://github.com/rkitover/vimpagerPodstawowym zastosowaniem byłoby:
lub
Możesz użyć
-c
do przekazania dodatkowych poleceń, których nie ma w twoim.vimrc
(np. Wybranie innego schematu kolorów). Pełne polecenie, którego używam to:Uwaga: jeśli Twój Vim poprosi cię o naciśnięcie Enter podczas uruchamiania, nie zobaczysz monitu, ale nic się nie wydarzy, dopóki nie naciśniesz Enter! Powyższa
cmdheight
sztuczka może pomóc w złagodzeniu tego.źródło
Znalazłem
highlight
które:source-highlight
)pygmentize
Oto skrypt,
highlight-less-wrapper
który wywołuję, który zawiera.bashrc
instrukcje, jak skonfigurowaćless
automatyczne korzystanie z niego.źródło
Miałem to samo pytanie i usłyszałem, przeczytałem wszystkie odpowiedzi, a oto, co w końcu zrobiłem, aby wyróżniać składnię za każdym razem, gdy używam
less
lubmost
:Potem poszedłem i stworzyłem alias dla mojego
less
imost
(używam ZSH, ale możesz dodać aliasy dla swojego.bashrc
pliku, jeśli używasz bash):( Dla tych, którzy mogą utknąć w vimie: naciśnij, iaby przejść do trybu edycji, a kiedy skończysz, naciśnij, Esca :następnie, xa na końcu, Enteraby zapisać zmiany )
I wklej następujące wiersze dla dystrybucji opartych na Debianie (takich jak Debian, Ubuntu, Mint itp.):
lub dla dystrybucji RPM (Redhat, Fedora, Centos):
Pamiętaj, aby zamknąć terminal i otworzyć go ponownie, aby upewnić się, że utworzono alias.
Teraz możesz cieszyć się kolorami:
źródło