什么<cr> =在Vim中意味着什么

izh*_*hak 46 vim

我遇到了一些我不理解的语法用法:

第一个是:帮助映射:

:map <F2> a<C-R>=strftime("%c")<CR><Esc>
Run Code Online (Sandbox Code Playgroud)

这个序列确实将strftime的值插入缓冲区,虽然我不明白如何.改变不同的东西打破它.

另一个是在wiki 页面,它描述了如何使omnicompletion弹出菜单正常工作:

inoremap <silent> <Esc> <C-r>=pumvisible() ? "\<C-y>" : "\<Esc>"<CR>
Run Code Online (Sandbox Code Playgroud)

同样的事情在这里.

任何人都可以解释这个" <C-r>="有什么用吗?......

rom*_*inl 60

<C-r>=,或Ctrl+ R=用于在光标处插入表达式的结果.

编辑CSS以插入值时,我经常使用它:

width: <C-r>=147-33<CR>px;
width: 114px;
Run Code Online (Sandbox Code Playgroud)

编辑

<C-r>,without =,允许您在保持插入模式的同时在光标处插入任何寄存器的内容:<C-r>+例如,插入我的系统剪贴板的内容.看:help i_ctrl_r.

=是"表达式寄存器".见:help "=.

EndEdit中

  • 要获得有关 cr 的帮助,您需要 `:help c_ctrl-r` (即第二个下划线应该是连字符) (3认同)

Iai*_*ain 32

<C-r>就像在键盘上做CTRL + R. <CR>就像打进入.您可以通过执行完整列表找到:help key-notation.

  • 我知道这是一个非常初学的问题但是,当你这样做时:帮助密钥表示它会带你到文档.然后,如果我按Q,它会将我带到Ex模式.如果按下visual,它会将我返回到正常模式,但它会让我回头查看文档.我只想回去编写我原来的python文件,我该怎么回去呢?非常感谢您的原始帖子!:d (3认同)
  • 哦,我偶然发现了怎么做!要退出文档,只需按:然后qie,因为它只是正常模式:q将退出文档而不是实际文件.:) (3认同)