gpt4 book ai didi

regex - 用于 git 合并冲突的 Vim 正则表达式

转载 作者:行者123 更新时间:2023-12-01 01:49:42 25 4
gpt4 key购买 nike

我正在制作一个插件,该插件将为 vim 中具有合并冲突的文件添加语法组。
下面显示了一个示例冲突。

<<<<<<< HEAD
ourselves
=======
themselves
>>>>>>> deadbeef0123
<<<<<<< HEAD 的当前正则表达式至 =======工作正常。
syntax region conflictHead containedin=ALL start=/^<<<<<<< \@=/ end=/^=\@=/
但是在 ======= 之后,我一直试图为所有内容获取正确的正则表达式
syntax region conflictMerge containedin=ALL start=/^=======$\@<!/ end=/^>>>>>>> \@=/
enter image description here
正则表达式应该在分隔符之后获得所有内容,直到提交 sha。
任何提示/指示?

最佳答案

在您的命令中:

syn region conflictMerge containedin=ALL start=/^=======$\@<!/ end=/^>>>>>>> \@=/

也许你可以替换模式:
^=======$\@<!

和:
^=======\zs$

在我的机器上,它似乎做你想做的,就是突出显示 =======后面的文字直到下一个 >>>>>>> .

如果它有效并且您想更好地了解 \zs ,见 :h \zs .基本上,它从比赛中排除了之前的所有内容,并将其用作肯定断言(之前的内容必须出现在您真正感兴趣的比赛之前)。

关于regex - 用于 git 合并冲突的 Vim 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45447085/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com