vim 轻松编辑formatlistpat?

dzhpxtsq  于 2023-08-05  发布在  其他
关注(0)|答案(3)|浏览(113)

我想为formatlistpat选项尝试不同的正则表达式。有什么建议最简单的方法来做到这一点?
我知道在插入模式下,我可以使用<Ctrl+r>粘贴寄存器。而且我可以用这个做编辑宏。期权有等价物吗?或者更简单的?
我的另一个想法是在缓冲区中添加set命令。但我不确定如何将选项值放入缓冲区以便可以编辑。
有什么想法吗小提示?建议?

2ekbmq32

2ekbmq321#

当你编辑命令行时,你有两个选项:
1.使用自动完成:

  1. set formatlistpat=<Tab>

字符串
(not really tab,而是任何'wildchar'/'wildcharm'被设置为)。这将用正确转义的当前选项值填充命令行。我不能建议这种方法,因为双重转义看起来很难看,而且在大多数模式中有很多转义。
1.使用表达式寄存器(在命令行和插入模式下都有效):

  1. let &formatlistpat=<C-r>=string(&formatlistpat)<CR>


请注意,在这种情况下,转义不会自动完成。使用:letstring()比对:set进行适当的转义更容易。

kmynzznz

kmynzznz2#

基于ZyX's answer,以下内容对.vimrc文件有效:

  1. let &formatlistpat="^\s*\d\+[\]:.)}\t ]\s*\|^\s*[-*]\s+"
  2. let &formatlistpat=string(&formatlistpat)

字符串

sxpgvts3

sxpgvts33#

如果有人还在寻找如何在.vimrc中最好地设置formatlistpat,而没有任何丑陋的转义:

  1. let &formatlistpat='^\s*\[[a-zA-Zа-яА-Я0-9_]\+\]:\s*'
  2. let &formatlistpat.='\|'
  3. let &formatlistpat.='^\s*[-–+oо*•]\s\+'

字符串
给出的示例还提供了一个巧妙的技巧,让formatlistpat代码更易读。

相关问题