我在 Linux 中使用 vi 来编辑 JSP 文件。
代码没有语法高亮。我认为应该可以启用此功能,但我还不知道如何启用。可以在 vi 中启用此功能吗?
更新1:
# vi --version
VIM - Vi IMproved 7.0 (2006 May 7, compiled Jul 2 2009 17:46:42)
更新2:
我尝试通过 Putty ssh 使用 nano 打开文件骨髓纤维化答案,但不幸的是结果没有改变。我没有改变html.nanorc文件现在有下一个文本
syntax "html" "\.html$"
color blue start="<" end=">"
color red "&[^;[[:space:]]]*;"
答案1
为什么不使用纳米?
如果你有 VI 而不是 VIM,nano 有基于简单正则表达式的相当不错的语法高亮功能。可配置多种语言。
如果已安装,请查看 /bin/nano /usr/bin/nano。它应该在那里。几乎每个 Linux 都有它。
执行cat /etc/nanorc
这是 nano 的配置脚本。您应该有它。它包含与此类似的行:include "/usr/share/nano/html.nanorc"
并且文件/usr/share/nano/html.nanorc
包含规范语法突出显示。
例如:
syntax "html" "\.html$"
color brightcyan start="<" end=">"
color brightred start="<script" end="</script>"
color red "&[^;[[:space:]]]*;"
您还可以将 .nanorc 文件放在您的配置文件目录中来覆盖全局设置。
如果仍然无法工作,那么我认为故障出在 XShell 方面。切换到 Putty 并再次检查。在 Putty 窗口中,您会在左侧看到选项。将有 Window->Colours 选项。
确保勾选了前三个复选框。它肯定会起作用。我认为 XShell 为你制作了单色输出。
答案2
vi
在 Linux 上几乎肯定是这样的vim
。你可以用下面的方法检查
# vi --version
VIM - Vi IMproved 7.0 (2006 May 7, compiled Mar 5 2011 21:36:07)
vim
确实支持彩色语法高亮。但是,它只在支持 ANSI 颜色的终端上支持,在单色终端上不支持。检查 TERM 变量的值。
# echo $TERM
xterm
然后检查该终端类型是否支持颜色
# infocmp xterm | grep color
colors#8, cols#80, it#8, lines#24, pairs#64,
在 vim 会话中你也可以更改此设置
:set term=color_xterm
:set term=ansi
ETC
语法高亮仅适用于 vim 识别为具有一组高亮规则的文件的文件。如果您阅读 vim 的帮助,您可以了解如何添加自己的高亮规则文件
答案3
这是 vi
这是 vim
vim 是 vi 的改进版本
答案4
您可能需要明确打开突出显示。尝试
:syntax on
和
:help syntax