在刚才回答一个问题时,我提到了使用可以在Vim Tips Wiki上找到的普通模式键映射。在解释键映射的过程中,我意识到我不知道<Bar>是什么意思。这是什么意思?
我尝试用管|替换它,在它的前后,前后都有空格,但是每个人都用以下错误消息破坏了我的.vimrc文件: />

#1 楼

这是管道字符的代码:|。管道的使用方式与C样式语言中的分号一样,用作语句分隔符。您不能直接在映射中使用它,因为它将被视为标记映射的结束。因此,必须改为使用代码。

有一些例外情况,例如autocmd定义,其中的竖线限制了autocmd的动作,而不是定义本身。

来自:help :bar


'|'可用于分隔命令,因此您可以在一行中给出多个命令。如果要使用“ |”在参数中,在其前面加上“ \”。


和来自:help map_bar

                                                            *map_bar*
Since the '|' character is used to separate a map command from the next
command, you will have to do something special to include  a '|' in {rhs}.
There are three methods:
   use       works when                    example      ~
   <Bar>     '<' is not in 'cpoptions'     :map _l :!ls <Bar> more^M
   \|        'b' is not in 'cpoptions'     :map _l :!ls \| more^M
   ^V|       always, in Vim and Vi         :map _l :!ls ^V| more^M


#2 楼

如果键入

:help <Bar>


,您将阅读

<Bar>           vertical bar            |       124     <Bar>


#3 楼

我想补充一点,在正常模式下,|命令(如其他答案所述,必须在重新映射时用<bar>\|^V|代替,如其他答案所述)允许您转到当前行中的特定屏幕列。

例如,键入5 |。将转到屏幕的第5列,如下图所示: />