如何在vimscript </cr>中的映射中转义“<cr>”

时间:2014-01-08 13:53:31

标签: vim

我想使用:execute normal "commandstring"技术在映射中构建命令行。但我不能在映射中做到这一点,因为vim会立即将“”解释为按键。所以这不起作用:

nnoremap <leader>jj :execute "normal :tabnew foo.txt\<cr>"<cr>

我试图双倍地逃避反斜杠,没有效果:

nnoremap <leader>jj :execute "normal :tabnew foo.txt\\<cr>"<cr>

现在vim在反斜杠中键入,然后将其解释为按键。

出于什么方式?

1 个答案:

答案 0 :(得分:3)

这确实很棘手。您必须将<字符转义为<lt>,以便<cr>不会被解析为特殊键符号:

nnoremap <leader>jj :execute "normal :tabnew foo.txt\<lt>cr>"<cr>

请注意,您的示例不需要任何此操作; :normal :...<CR>...

相同
nnoremap <leader>jj :tabnew foo.txt<cr>