最常用的vim命令/按键是什么?
我是一个试图从Textmate切换到MacVim的Ruby编程人员,我在浏览VIM中可以做的大量事情和所有按键时遇到了困难。我已经听腻了“你可以用‘I’来插入文本,或者用‘a’来在字符后面追加文本,或者用‘a’来在行尾追加文本,或者……”我无法想象每个人都用全部20个不同的按键来导航文本,用10个左右的键开始添加文本,用18种方式直观地选择一个内部块。还是你 我理想的备忘单应该是30-40个最常用的按键或命令,每个人每天都会使用这些按键或命令来编写代码,还有rubyists每天使用的绝对必要的插件和10个最常用的命令。理论上,一旦我掌握了这一点,并开始像在Textmate中一样精通VIM,那么我就可以开始学习成千上万的其他VIM命令,这将使我的效率更高 或者,我学习VIM的方式是否完全错误? 这是学习VIM有史以来最伟大的事情 我无法想象每个人都用20个不同的按键来导航文本,用10个左右的键开始添加文本,用18种方式直观地选择一个内部块。还是你 我知道 理论上,一旦我掌握了这一点,并且开始像在Textmate中一样精通VIM,那么我就可以开始学习成千上万的其他VIM命令,这将提高我的效率最常用的vim命令/按键是什么?,vim,keyboard-shortcuts,macvim,Vim,Keyboard Shortcuts,Macvim,我是一个试图从Textmate切换到MacVim的Ruby编程人员,我在浏览VIM中可以做的大量事情和所有按键时遇到了困难。我已经听腻了“你可以用‘I’来插入文本,或者用‘a’来在字符后面追加文本,或者用‘a’来在行尾追加文本,或者……”我无法想象每个人都用全部20个不同的按键来导航文本,用10个左右的键开始添加文本,用18种方式直观地选择一个内部块。还是你 我理想的备忘单应该是30-40个最常用的按键或命令,每个人每天都会使用这些按键或命令来编写代码,还有rubyists每天使用的绝对必要的插
这是正确的方法。从基本命令开始,然后选择可以提高工作效率的命令。我喜欢以下关于如何使用vim提高工作效率的提示。您看过vim的内置教程了吗?如果没有,请转到命令行并键入
vimtutor
。这是学习初始命令的好方法
Vim具有难以置信的灵活性和强大功能,如果您像大多数Vim用户一样,您将学习许多新命令,忘记旧命令,然后重新学习它们。内置的帮助很好,值得定期浏览以了解新内容
在互联网上有一些关于vim的常见问题解答和备忘。我建议搜索vim+faq
和vim+cheatsheet
。这是一个很好的来源。转到并了解开始时需要的内容。并不是页面上的所有内容都是从一开始就必须的,所以请选择你想要的
从那里开始,一切都使用vim。“hjkl”、“y”和“p”会让你走很长的路,即使这不是最有效的方式。当你遇到一个你不知道有效完成任务(或根本不知道有效完成任务的秘诀)的任务时,你发现自己做了不止几次,那就去查一下吧。渐渐地,它将成为第二天性
很多月前,我发现vim让人望而生畏(在它的末尾没有“m”的时候),但它只花了大约一周的稳定使用时间就变得高效了。我仍然觉得它是完成工作最快的编辑器。有一个很好的备忘单。我认为学习这些命令有两点:
- 定期阅读备忘单。不必担心使用所有这些键,也不必记住所有键,只要知道命令存在即可。当你发现自己在做重复的事情时,查阅命令并使用它
- 如果你发现自己经常做一些事情(比如在某个特定字符
之后删除整行内容),请快速在谷歌上搜索,看看是否能找到相应的命令d$
- 写下您认为有用的命令,并在编写代码时将该列表保存在可以看到的位置。我反对打印一些东西,而是鼓励您一次只为几个命令使用post-it便笺
- 如果可能的话,观察其他程序员使用vim,当您看到他们做了一些有趣的事情时,询问他们正在使用什么命令
- vim将使用相同的字符表示相同的功能。例如,要删除字符后的行,请使用
。要突出显示特定字符后的行,请使用d$
。因此请注意,v$
表示您将在光标当前所在的行的末尾执行某些操作$
表示撤消,u
表示重做ctrl+r
- 将数字放在命令前面将重复执行该命令
将删除光标所在的行和后面的两行,类似地,3dd
将复制光标所在的行和后面的两行3yy
- 了解如何浏览缓冲区使用
列出缓冲区,使用:ls
,:bn
循环浏览缓冲区:bp
- 通读
中的教程这可能是“学习诀窍”的最佳方法,您将通过使用了解其他命令:help
- 及
- 几乎所有命令的前面都可以有数字f
alias vil="vim +\"'\"0"