Per*_*ulf 58 less bash vim vi syntax-highlighting
我需要使用less command与语法高亮vim的命令python,C,bash等多国语言。
如何根据vim颜色应用语法高亮颜色less command?
not*_*bit 51
, 的语法突出显示less在大多数 *nix 系统上都可以正常工作。
apt install source-highlight
export LESSOPEN="| /usr/share/source-highlight/src-hilite-lesspipe.sh %s"
export LESS=' -R '
Run Code Online (Sandbox Code Playgroud)
在基于 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 '
Run Code Online (Sandbox Code Playgroud)
该-M标志还可以方便地显示文件名和行号。
还要记住将脚本复制到您的 bin 路径中:
cp /usr/share/source-highlight/src-hilite-lesspipe.sh /usr/bin/src-hilite-lesspipe.sh
Run Code Online (Sandbox Code Playgroud)
更新:2019-07-24
显然,在最近的 Cygwin 安装中,您的路径中有以下文件:
source-highlight.exe
source-highlight-esc.sh
source-highlight-settings.exe
Run Code Online (Sandbox Code Playgroud)
所以现在您还需要执行source-highlight-settings.exe将添加配置文件的
$HOME/.source-highlight/source-highlight.conf.
cas*_*cas 50
less 不支持语法高亮。
vim,就像所有vi克隆都有一个只读模式view,您可以使用它来查看文件。它支持 vim 的所有功能,包括语法高亮。
例如
view filename.py
Run Code Online (Sandbox Code Playgroud)
view和之间的主要区别在于vi视图不会通过创建 .swp 文件来“锁定”您正在查看的文件。
Fel*_*lix 18
我倾向于不同意 Ingo,less 可以教高亮语法。在 SuperUser 上查看此答案。基本上,您必须安装 GNU 的 source-highlight(可在所有主要发行版软件包 repos 中使用),然后将以下内容添加到您的.bashrc(或您.bash_profile拥有的)中:
export LESSOPEN="| /path/to/src-hilite-lesspipe.sh %s"
export LESS=" -R "
Run Code Online (Sandbox Code Playgroud)
但是,请注意,source-highlight它不如vim的荧光笔强大。使用最适合您的任何东西。
Ing*_*kat 14
less不能教高亮语法元素,但 Vim 可以用作寻呼机,即替代less. 有更高级的插件,但基本脚本实际上与 Vim ( $VIMRUNTIME/macros/less.sh) 一起提供。有关完整信息,请参阅Vim Tips Wiki 上的将 vim 用作语法高亮分页器。