使用pandoc进行vim硬线断开和不间断空格

ala*_*nhr 3 vim pandoc

我正在使用带有pandoc的vim,并且需要相当规律地使用非破坏空间,这可以通过反斜杠实现pandoc - 逃避常规空间(即"\").我更喜欢在vim中使用硬换行符,但是当我这样做并且在行的末尾出现不间断的空格时,空格字符被删除并且反斜杠保留在行的末尾 - 这个信号该段末尾为pandoc.

有没有办法告诉vim将"\"作为打印字符处理时,用硬换行符重新格式化段落?

例如,如果我写下面的内容:

This line contains a non-breaking space\ because I don't want a break after space.
Run Code Online (Sandbox Code Playgroud)

想要 vim做的是:

This line contains a non-breaking
space\ because I don't want a break after
space.
Run Code Online (Sandbox Code Playgroud)

但它的作用是:

This line contains a non-breaking space\
because I don't want a break after space.
Run Code Online (Sandbox Code Playgroud)

我现在的解决方法是坚持使用柔和的换行符,并且我已经重新映射hgh等等,以便更容易处理.我也试图弄清楚是否有另一种方法来为pandoc指定一个不间断的空间,这对vim来说不那么容易混淆.

mb2*_*b21 5

使用正确的UTF-8字符代替非中断空格(U + 00A0)\.在Vim中,你可以将其插入Ctrl-v x a 0.

在您的~/.vimrc文件中添加以下内容以突出显示不间断的空格:

set list
set listchars=nbsp:.
Run Code Online (Sandbox Code Playgroud)

  • 再次感谢@ mb21,太棒了!我使用非破坏空间相当多,所以最后我把它映射到`<leader> <space> <space>`.因为我经常在小数点附近使用它,所以我调整了你的`listchars`建议,使用一个中间点并用`highlight SpecialKey`将其着色为红色.虽然我想我可以永远调整vim,但这至少让我得到了一个设置,我可以在继续学习的同时完成一些真正的工作. (2认同)