我可以这样做:%s/<search_string>/<replace_string>/greplace文件中的string,或者:s/<search_string>/<replace_string>/replace当前行。 如何从Vim中的select行中select和replace单词? 例如:replace第6-10行的文本,而不是11-13 。
现在我已经用SHIFT O和SHIFT $移动到vi的一行的开头和结尾。 但SHIFT O更多的是在光标上方打开一个新行。 有什么命令可以把你带到一行的开头吗?
我可以:set number从我正在编辑的文件中:set number ,但是如何让它们始终处于默认状态?
我正在处理两个文件,我需要从一个文件复制几行并粘贴到另一个文件。 我知道如何复制(yy)并粘贴(p)在同一个文件中。 但是,这不适用于不同的文件,这是怎么做的? 另外,有没有办法剪贴? 我试过Googlesearch,但大部分资源只是谈论复制粘贴。
很久以前,我读了viemu的创造者的一篇文章 ,清理了很多关于vi的误解,并解释了为什么它是一个好主意(为什么它在过去30年里非常受欢迎)。 同样的家伙也有一套很棒的graphics化作弊表 ,一次只教几个基础知识。 我相信。 事实上,我已经确信过去两年了。 但是我还没有强迫自己把vi当作我的主编,学习曲线太高了。 当我开始工作时,可以接受但即时的生产力(使用我现在的编辑)迄今为止赢得了更高的生产力(使用vi)。 有没有人有任何好的提示来帮助学习过去? 它可以是直接提示,其他教程或文章,无论如何。 编辑:请注意,我知道vi的vim / gVim , Cream和MacVim (等)变种。 我把我关于vi的问题作为一个整体来提及vi家族。 感谢所有伟大的答案。 更新(2009年4月) 自从去年12月份以来,我一直在使用Vim(更确切地说,MacVim)。 我不回去了:-) 祝他们Vim掌握好每一个人。
有没有办法在Vim中的一行的末尾删除换行符,以便将下一行添加到当前行? 例如: Evaluator<T>(): _bestPos(){ } 我想把这一切都放在一条线上,不要复制线条并粘贴到前一个线条中。 看来我应该能够将光标放到每行的末尾,按下一个键,然后让下一行跳转到光标所在的同一行上。 最终结果: Evaluator<T>(): _bestPos(){ } 这在Vim中可能吗?
经常在编辑configuration文件的时候,我会用vi打开一个,然后当我去保存时意识到我没有input sudo vi filename 有没有办法让vi sudo权限保存文件? 我好像回想起前面看到关于vi的一些东西,但是现在我找不到它了。
我喜欢vim,但是一个常见的问题是: 抽出一条线 去你想要粘贴的地方 删除那里 粘贴你的手,只发现它粘贴你刚刚删除的东西 显然,工作stream程是先删除,再删除。 但是,如果我不必这样做,那将是非常好的。 任何人都有这个技巧? vim是否有可以正常工作的粘贴缓冲区,或者是否有可以更改的.vimrc设置?
在vim中编程我经常去search一些东西,抽出它,然后回到我所在的位置,插入它,修改它。 问题是,我search后发现,我需要手动找回我的方式。 当我开始我的最后一次search时,是否有自动的方式返回到我所在的位置?
在Vim的插入模式下 ,除了使用箭头键之外,还有什么方法可以遍历文本吗? 如果在插入模式下按h , j , k和l ,实际字符将被打印在屏幕上,而不是在文本中移动。 我现在的做法是不得不求助于Ctrl + [ ( Esc )并遍历文本; 但显然这不是生产力。