我有一些问题,关于VI的使用,而工作在c或cpp程序,这可以作为一个快速的参考,谁是第一次来到vi。
提前谢谢。
发布于 2014-06-05 19:29:46
发布于 2014-06-05 19:13:33
我有一些问题的答案:
如何在没有退出的情况下从vi运行CPP程序。
解决方案:使用!后面跟着要运行的命令。例如,如果您正在编辑Vim中的一个文件,并且希望了解该文件中有多少单词,请运行
:! wc %我们还可以退出并转到shell,方法是输入:shell或:sh,而在vi中,shell将打开,您可以输入任何no。当您完成命令时,您只需退出shell,就可以在相同的位置再次进入vi。
6如何在不同的文件中搜索某个关键字而不退出vi。
解决方案:使用答案1中的相同解释。使用grep:
:! grep <keyword or regular expression>发布于 2014-06-05 19:44:43
所有的问题集中在一起暴露了一个观点问题。从创建Unix和vi的最初作者Bill的角度来看,shell提示是整个开发环境。vi只是编辑部分。make是项目建设者。文件系统以及ls、find、grep和无数其他工具提供了文件分组和组织工具。
这就是为什么vi有一组丰富的命令行选项,允许您命名要打开的多个文件,以及在每个文件中定位游标的位置。与ctags工具一起,您甚至可以要求vi打开包含命名函数的文件,而不需要键入文件名。
在vi中,始终可以使用!命令使用任意程序对文本进行操作。例如,!fmt是一种快速而肮脏的处理包装文本的方法。当然,:命令是您进入基于CLI编辑的极其危险的功能的门户。
在这一切的基础上,您必须真正理解移动游标的命令,并描述一段文本。第一步是,每次你发现自己重复一个命令(比如简单的移动命令'h‘、'j’、'k‘或'l')时,都要注意到,直到你到达正确的位置,并问自己,你如何通过少打字就能达到这个效果。如果目标是下一个字母'a‘,则用'5l’或'w‘或更好的'fa’来代替'lllll',这个字母刚好超过5个字符。
有了正确的思维方式,并很好地掌握了更大范围的文本处理过滤器,您的大部分问题归结为识别正确的文本范围并将其传递给外部实用程序,这个项目的上下文已经在文件夹中进行了明智的组织,并且使用ctags从make运行以保持标记数据库的最新。
有很多的教程和快速的参考资料。这一个似乎表达了我在这里试图表达的观点。
https://stackoverflow.com/questions/24068058
复制相似问题