插入字符而不进入插入模式?

时间:2014-01-17 23:21:06

标签: vim shortcut keymapping

有时我想插入#来注释掉一行并快速测试。目前我这样做:

ESC 瓦特

我能做些什么吗?

6 个答案:

答案 0 :(得分:7)

虽然我同意其他人的观点better ways to comment and uncomment code,但似乎人们已经分心并忘记实际回答这个问题。

这是我插入单个字符的方法:

:noremap <key> i <Esc>r

我倾向于发现,如果我正在纠正拼写错误,我需要经常更换,删除或添加单个字符,所以(分别)rx以及选择的任何内容上面的<key>变得非常方便。

请注意,.对于此类任务也特别方便。它重复了之前的行动。

就个人而言,当我正在执行一项任务时,我只将这个功能映射到一个有价值的键,我经常使用它来证明占据键盘上的一个主要位置(例如纠正错别字),因为实际上,它只能保存每次使用一次击键,仅当<key>不是组合时,这当然会限制可用性。

答案 1 :(得分:3)

我将一些内容映射到我的<leader>密钥(默认情况下为\):

" # comment the current line
nnoremap <leader>d I#<ESC>

" block comment in visual mode
vnoremap <leader>c <ESC>'<O/*<ESC>'>o*/<ESC>V'<k

如果要在一组行的开头添加#,请执行以下操作:

  1. <ctl-v>
  2. j(根据需要多次)
  3. I#
  4. <esc>

答案 2 :(得分:2)

您可以使用录音。在正常模式下,键入:

qlml0i#<press escape>`lq

然后要注释掉一行,只需按@l

即可

答案 3 :(得分:2)

vim中的映射非常简单,我可能会像

那样做
:nmap CC I#<Esc>:w<CR>

即时。如果我习惯了它,那么我会将它添加到我的vimrc文件中。

:help key-mapping
:help usr_40.txt

答案 4 :(得分:0)

实际上有一个你可能想看的插件:

http://www.vim.org/scripts/script.php?script_id=1218

专为此目的而设计。

答案 5 :(得分:0)

我特别喜欢tComment插件。 gcc评论一行,重复取消注释,多行,动作等。