Мне нужно использовать 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
.
shopt -p
иset
.brew install source-highlight
затем я добавил псевдоним:alias lessh='LESSOPEN="| src-hilite-lesspipe.sh %s" less -R '
less
не поддерживает подсветку синтаксиса.vim
Как и у всехvi
клонов, есть режим только для чтения,view
который можно использовать для просмотра файлов. он поддерживает все функции vim, включая подсветку синтаксиса.например
Основное различие между
view
иvi
заключается в том, что представление не «блокирует» просматриваемый файл, создавая файл .swp.источник
view command
radare 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
или что у вас есть):Тем не менее, обратите внимание, что
source-highlight
это не так мощно, какvim
подсветка. Используйте то, что подходит вам больше всего.источник