为何重新映射关键导致 Vim 行为怪异?

为何重新映射关键导致 Vim 行为怪异?
nnoremap <End> <S-A>        " line comment

按下 End 键会产生所需的效果,但 vim 也会附加" line comment到行尾!

有没有什么办法可以让 vim 知道 nnoremap 指令在哪里结束?

答案1

这是一个常见的陷阱。之后:map,一切都被视为右侧。我建议将注释放在单独的行上:

" line comment
nnoremap <End> <S-A>

但是如果你真的想坚持使用尾随注释,你可以使用默认的命令分隔符(使用|,映射中的使用必须转义\|或写为<Bar>)来附加单独的注释“命令”:

nnoremap <End> <S-A>|        " line comment

PS:<S-A>你可以简单地写A :help key-notation

相关内容