我想为formatlistpat
选项试用不同的正则表达式。有关最简单方法的建议吗?
我知道在插入模式下,我可以使用<Ctrl+r>
粘贴到寄存器中。我可以用它来编辑宏。是否有相应的选项?或者更简单的东西?
我的另一个想法就是在其中输入带有set命令的缓冲区。但我不确定如何将选项值放入缓冲区以便进行编辑。
有什么想法?提示?建议?
答案 0 :(得分:4)
在编辑命令行时,您有两个选项:
使用自动填充功能:
set formatlistpat=<Tab>
(不是真正的tab,而是设置为'wildchar'/'wildcharm')。这将使用当前选项值填充命令行,并正确转义。我不能为这个特殊选项建议这种方式,因为双重转义看起来很难看,并且在大多数模式中有很多转义。
使用表达式寄存器(在命令行和插入模式下均可使用):
let &formatlistpat=<C-r>=string(&formatlistpat)<CR>
请注意,在这种情况下,转义不会自动完成。使用:let
和string()
更容易,然后为:set
正确转义。
答案 1 :(得分:1)
根据ZyX's answer,以下内容对.vimrc
文件有效:
let &formatlistpat="^\s*\d\+[\]:.)}\t ]\s*\|^\s*[-*]\s+"
let &formatlistpat=string(&formatlistpat)