【发布时间】:2022-01-12 14:48:09
【问题描述】:
我在 Debian 11 Bullseye 上使用 Vim 8.1,但它在最近的 Vim 8.2 中也不起作用。
我想用语法高亮一个 Python 格式的字符串,它目前在 vim 中看起来是这样的:
但应该是这样的:
(比较大括号和它们的内容)
有谁知道“正确”执行此操作的插件,或者可以提供我需要插入 /usr/share/vim/vim81/syntax/python.vim 以实现此突出显示的语法?
【问题讨论】:
-
试试
:syntax region pythonFString matchgroup=pythonString start="f'" end="'" skip="\\'" contains=ALL怎么样?不过它可能需要调整。 -
谢谢,但它不起作用,我没有应用任何“调整”的专业知识。它为格式化字符串中的所有内容以及 {} 对之外的字符串部分着色(不是问题,但必须构造四种语法变体,因为 Python 格式化字符串可以用 (1) 单引号括起来,(2 ) 双引号、(3) 三重单引号和 (4) 三重双引号)。 OP 中的示例图像由 pip/pyperclip 包着色,它做的一切都是正确的。此外,我还看到一些网络荧光笔做得很好,比如 stackoverflow。