Мне нужно использовать less commandс подсветкой синтаксиса команды VIM для python, C, bashи других языков.
Как применить цвета подсветки синтаксиса в соответствии с vimцветами для less command?
Мне нужно использовать less commandс подсветкой синтаксиса команды VIM для python, C, bashи других языков.
Как применить цвета подсветки синтаксиса в соответствии с vimцветами для less command?
Ответы:
Подсветка синтаксиса less, прекрасно работает на большинстве * nix систем.
apt install source-highlight
export LESSOPEN="| /usr/share/source-highlight/src-hilite-lesspipe.sh %s"
export LESS=' -R '
На дистрибутивах, основанных на Fedora / RedHat, используйте /usr/bin/src-hilite-lesspipe.shвместо этого.
Даже в Cygwin вы можете сделать это с небольшой настройкой пути сценария оболочки и установкой apt-cygвместо apt.
Однако, использование этого резко замедляет просмотр больших файлов. Я предлагаю использовать aliasтаким образом, чтобы реализовать LESSOPENэкспорт только при необходимости, например так:
alias lessh='LESSOPEN="| /usr/bin/src-hilite-lesspipe.sh %s" less -M '
где -Mфлаг удобен также для отображения имени файла и номера строки.
Также не забудьте скопировать скрипт в ваш путь к бину:
cp /usr/share/source-highlight/src-hilite-lesspipe.sh /usr/bin/src-hilite-lesspipe.sh
ОБНОВЛЕНИЕ: 2019-07-24
По-видимому, в более поздних установках Cygwin у вас есть следующие файлы на вашем пути:
source-highlight.exe
source-highlight-esc.sh
source-highlight-settings.exe
Итак , теперь вы также должны выполнить команду , source-highlight-settings.exeкоторая добавит конфигурационный файл:
$HOME/.source-highlight/source-highlight.conf.
brew install source-highlightзатем я добавил псевдоним:alias lessh='LESSOPEN="| src-hilite-lesspipe.sh %s" less -R '
less не поддерживает подсветку синтаксиса.
vimКак и у всех viклонов, есть режим только для чтения, viewкоторый можно использовать для просмотра файлов. он поддерживает все функции vim, включая подсветку синтаксиса.
например
view filename.py
Основное различие между viewи viзаключается в том, что представление не «блокирует» просматриваемый файл, создавая файл .swp.
view commandradare package
viewкоманда не поддерживает подсветку синтаксиса. Я пробовал :syntax enableи :syntax on, но я всегда получаю syntax: Not an editor command. Мои vimподдерживает подсветку, хотя.
viлайк nviили elvisустановлен? проверьте /usr/bin/view- в моей системе Debian это символическая ссылка, /etc/alternatives/viewкоторая, в свою очередь, является символической ссылкой на /usr/bin/vim.basic.
/usr/bin/ex, которой, как ни странно, владеет viпакет.
arch linux viewэто символическая ссылка на /usr/bin/exиз core/viпакета.
lessнельзя научить выделять элементы синтаксиса, но Vim может использоваться как пейджер, то есть замена less. Есть более продвинутые плагины, но базовый скрипт на самом деле поставляется с Vim ( $VIMRUNTIME/macros/less.sh). Для получения полной информации см. Использование vim как пейджера с подсветкой синтаксиса в Vim Tips Wiki.
lessто, что делает подсветку; но у Vim действительно есть эта возможность.
$ diff file1.c file2.c | /usr/share/vim/vim74/macros/less.sh
Я склонен не соглашаться с Инго, less можно научить выделять синтаксис. Проверьте этот ответ на SuperUser. По сути, вы должны установить GNU source-highlight (доступно во всех основных дистрибутивах пакетов дистрибутивов), а затем добавить следующее .bashrc( .bash_profileили что у вас есть):
export LESSOPEN="| /path/to/src-hilite-lesspipe.sh %s"
export LESS=" -R "
Тем не менее, обратите внимание, что source-highlightэто не так мощно, как vimподсветка. Используйте то, что подходит вам больше всего.