更少的命令和语法突出显示

更少的命令和语法突出显示

我需要将less command与 vim 命令的语法突出显示一起用于pythonCbash其他语言。

vim如何根据颜色应用语法突出显示颜色less command

答案1

,的语法突出显示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 上,您也可以通过稍微调整 shell 脚本路径并安装来完成apt-cyg代替apt

然而,使用它会大大减慢大文件的浏览速度。我建议alias以这样的方式使用,只LESSOPEN在需要时才实现上面的导出,如下所示:

alias lessh='LESSOPEN="| /usr/bin/src-hilite-lesspipe.sh %s" less -M '

其中-M标志还可以方便地显示文件名和行号。

另请记住将脚本复制到您的 bin 路径中:

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

答案2

less不支持语法高亮。

vim与所有vi克隆一样,都有一个名为“只读”的模式view,您可以使用它来查看文件。它支持 vim 的所有功能,包括语法突出显示。

例如

view filename.py

view和之间的主要区别vi是视图不会通过创建 .swp 文件来“锁定”您正在查看的文件。

答案3

我倾向于不同意英戈的观点,less 被教导突出语法。查看这个答案在超级用户上。基本上,您必须安装 GNU 的源代码突出显示(在所有主要发行版软件包存储库中都可用),然后将以下内容添加到您的.bashrc(或.bash_profile您拥有的)中:

export LESSOPEN="| /path/to/src-hilite-lesspipe.sh %s"
export LESS=" -R "

但请注意,它source-highlight不如vim的荧光笔强大。使用最适合你的东西。

答案4

在涉足上面的一些答案之后,我认为最免配置的解决方案是仅安装和使用vimpager.

可用在 github 上,自制的,拱门(旧版本),AUR(最新),也许更多。

安装后,您应该能够立即使用,vimpager而不是less在 shell 中使用。

vimpager要在其他使用的情况下使用less,您可以更改PAGER您的变量外壳配置.bashrc等等),添加:

export PAGER=/usr/local/bin/vimpager
export MANPAGER=/usr/local/bin/vimpager

OSX 上的安装路径可能(需要?)不同,但这在 Arch Linux 上工作得很好。

然后,您可以在同一文件中将an 设置为alias始终替换, :lessvimpager

alias less=$PAGER

(如 github 自述文件中所述)

相关内容