问题标签 [vim-syntax-highlighting]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
18511 浏览

vim - 如何在 .vimrc 中为折叠高亮设置自定义颜色(用于 putty)

将以下内容添加到.vimrc作品中

但它仍然过于明亮和突出,所以我们想指定一个更具体的颜色三元组,如下所示:

但 vi 不会接受它:

有什么建议么?

0 投票
1 回答
778 浏览

vim - 多行 fortran openmp 指令的 Vim 语法高亮显示

我正在使用现代 fortran 进行并行编程。我正在使用 vim,fortran.vim 语法文件似乎无法处理像 !$omp 或 !dir$ 这样的编译器指令,这让我非常恼火。这些只是在 vim 中呈现为注释,因此它们不会突出。在 c/c++ 中,这些编译器指令是使用#pragma's 完成的,所以一切都像预处理器代码而不是注释代码一样突出。所以我想在我的 fortran 语法中进行类似的处理。这是我要着色的多行指令的示例:

到目前为止,我有一个位于 $HOME/.vim/after/syntax 中的新 fortran.vim 文件。我已经得到它来识别行开头的'!$ omp'并为该行着色并正确着色多行。我的语法文件包含以下内容:

我的问题是它现在不能处理只有一行的简单情况。IE:

我的语法文件中需要某种正则表达式规则才能正确匹配单行和续行。有人可以帮忙吗?

0 投票
3 回答
3851 浏览

vim - 将 python 文档字符串突出显示为注释(vim 语法突出显示)

是否可以修改python.vim(和相应的颜色方案文件),以便在 vim 下的 python 语法突出显示期间,将在 class 和 def 语句(又名 docstrings)下的三引号字符串突出显示为注释?

0 投票
1 回答
1143 浏览

vim - Vim:动态语法高亮

我想动态地(即,取决于当前文件的内容)调整语法高亮。虽然这通常可能有用,但我的具体设置如下:

我考虑的文件类型可能包含(任意多个)形式的块(VAR ...),其中此类“VAR-blocks”包含应视为变量的以空格分隔的标识符列表(而不在 VAR-block 中的标识符是被认为是固定的功能符号或常数)。此外,已经有一个文件trs.vim可以处理此类文件的语法突出显示。在trs.vim语法组trsKeyword中声明。现在我的目标是使用该组突出显示所有变量。

考虑以下示例(让我们称之为add.trs):

add.trsvim中打开时,我想要它xy打印为关键字(例如z,不是,尽管没有参数)。

0 投票
2 回答
1501 浏览

regex - Vim 高亮正则表达式

我有一个 cpp 语法高亮来突出 STL 算法,一行是

我的问题是,在我正在工作的项目中,有许多具有名为的方法的类find被突出显示,我希望它只为 STL 调用突出显示。

所以我决定将上一行更改为:

它在大多数情况下都有效。但是,如果在这一行中失败:

第一个find正确突出显示,但第二个失败。我对 vim 正则表达式的有限知识说它应该匹配,但我不知道为什么它不匹配。

0 投票
2 回答
697 浏览

vim - 当它们后面没有点时,使 vim 突出显示 python 内置函数

有没有办法在 vim 中仅在它们前面有 1 个空格时突出显示内置 Python 函数?此外,是否有模块化的方法来做到这一点?也就是说,我不想编辑每一syn keyword pythonBuiltinFunc abs chr ...行,我只想说像syn keyword pythonBuiltinFunc onlymatchafter="\s+"

编辑:

这是一个例子,因为回答我问题的两个人似乎不明白我在问什么,这是我的错,因为没有更清楚。

当我编写以下 Python 代码时

这个词abs被突出显示只是因为 vim 本质上只是匹配任何包含该词abs但不在字符串内部的东西。如何让 vim 突出显示 Python 内置函数,而不在它们前面有一个点时突出显示它们?

0 投票
2 回答
420 浏览

perl - Perl 突出显示引号分隔符问题 - 我在哪里可以找到解决这个问题的语法/perl.vim?

我正在处理很多文件,这些文件的qq{...}字符串在绊倒方面做得很好,vim使其整个文件的其余部分变为绿色。

我已经尝试过这个 perl 语法定义但无济于事,而且我还注意到它的日期比perl.vim我的 vim 附带的语法文件还要早。

我使用的是 vim 7.3.918,它是从 mercurial 源代码新编译的,它的 perl 语法文件如下所示:

它死在qq{}代码上。它们通常可以通过使用其他分隔符来解决,但我在这里谈论的是很多代码。

我尝试查看perl.vim处理 q/qq/qr/qx 引用的部分,但它非常复杂。

这是一些可以很好地解决问题的代码示例:

在此处输入图像描述

我无法再粘贴任何代码,因此您必须相信我,基本上文件其余部分中的所有内容都被视为字符串。

看起来问题当然是}结尾的$layout->{ID}被解释为qq{}.

但事实并非如此,因为此代码运行。它不会崩溃和燃烧。因此 vim 是错误的,在匹配}. 但是,正如这一行所示,括号可以在行尾......

在这一点上,我什至不确定是否有可能在qq{}没有语法定义无法执行的某种解析的情况下知道结束的位置。

0 投票
2 回答
1861 浏览

vim - TeX 文件的 VIM 中的多行注释语法着色

令我惊讶的是,TeX 中的多行注释语法:

不被识别/处理,$VIMRUNTIME/syntax/tex.vim因此不被着色为评论。是否有一个 VIM 脚本大师可以提供解决方案,因为我相信很多人一直在寻找它?

谢谢

虚拟机 v7.3

0 投票
3 回答
1622 浏览

vim - VIM语法着色lua函数名称?

我正在通过终端 (SSH) 使用 VIM,并希望在 VIM 中修改我的语法着色设置,以使函数名称为黄色以用于 Lua 编程。不幸的是,我不知道该怎么做。

例如,在下面的代码中 - 我希望我的 VIM 语法颜色为myFunc黄色

通过使用下面的代码,我已经能够弄清楚如何制作function黄色:

但是这段代码没有把这个词myFunc染成黄色(坦率地说,我宁愿根本不使用语法颜色function

问题:任何想法如何在 Lua 中对 function_name 进行语法着色?

0 投票
2 回答
1819 浏览

apache - Vim:Sudo Edit 破坏了 Apache 语法高亮

Sudo Edit (sudo -e) 允许非特权用户安全地编辑文件。为此,它会制作一个文件的临时副本以进行编辑,然后在编辑完成时将其复制过来。

当我正在编辑一个 apache 文件(例如,/etc/apache2/sites-enabled/mysite.com)时,sudoedit vim 无法确定它应该使用 Apache 语法高亮,所以我必须手动 :set syntax=apache . 我怀疑 Vim 的语法高亮规则依赖于文件的完整路径,并且由于 sudoedit 将文件更改为 /var/tmp/mysiteRANDOMCHARS.com 之类的文件,因此它会丢失该路径信息。

有什么办法让我自动告诉 Vim 它应该使用 apache 语法高亮?

谢谢!