我最近开始学习vi,阅读一些教程并尝试习惯它.但我仍然有一些问题.
对于小的一个文件更改似乎很好,但是一旦我开始尝试做更大的事情,它似乎缺乏.例如,我习惯了代码格式化,导入组织,简单概述所有包以及IDE给我的其他东西.我看到了一些关于如何使用vi作为IDE的教程,但它充其量感觉很尴尬.
现在我只是想知道,vi的典型用例是什么?它通常用于编辑小文件,还是可以用于大型项目?如果你在大型项目中使用它,你如何使它工作?或者使用带有vi键绑定的IDE会更容易吗?
由于以下原因,人们使用像Vi(m)这样的非IDE编辑器进行编码,
它们不会分散注意力,让您专注于工作.
它们不会使您的屏幕区域混乱,为您提供更多的代码空间
它们更快
它们在手指的笔触处具有更好/更快/更冷的文本操作
您碰巧将手从键盘移开而不是握住鼠标,将其拖动到此处然后单击.
他们还可以灵活地支持调试器,文档查看器等其他工具.
他们还有办法解决代码折叠等问题.
对于理想的工作周期所在的普通程序员来说,编写代码,测试,调试,更多代码,测试调试.Vi提供了一个简单而强大的环境,可以更快,更高效地完成工作.
对于多年使用某些IDE的人来说,可能就像使用一些史前工具一样,但是一旦他们经历了最初的日子,那么就没有回头了.他们觉得没有更好的事情.
为什么,为什么,做那些#?@!nutheads使用vi?
我没有做过你在python中称之为大项目的任何事情(只有很少的测试脚本),但是我只使用Vim编写大型嵌入式C应用程序而且我从未真正感觉到需要IDE.
Vim启动速度快,使用起来非常快,并且(通过一些自定义)可以完成IDE可以执行的大多数操作.它将完成代码完成,代码自动缩进和重新格式化,并且非常擅长重构.项目插件http://www.vim.org/scripts/script.php?script_id=69使管理包含大量文件和taglist插件的项目变得非常容易http://www.vim.org/scripts/script .php?script_id = 273非常适合浏览源代码.它还允许您将C代码与python代码,汇编代码和乳胶文档并排打开,而无需为每个代码使用不同的工具.
总的来说,我认为有一个非常有价值的东西是Vim给你的很少其他编辑做的,我会发现很难失去它:我可以把一个窗口分成三个部分,如下所示:
GVIM分裂窗口http://thumbnails19.imagebam.com/4617/5414c746160790.gif
每个子窗口都可以显示单独的文件,或者(如屏幕截图中)显示文件的单独部分.我想emacs可以做到这一点(虽然我可能错了),但我怀疑很多IDE都可以.这对于重构和引用文件的其他部分非常有用.
多年来我一直使用VI(M)和Emacs作为我的主要编辑器......我已经尝试过切换到IDE但发现它们不能让我的方式不够.我总是在一段时间后回到VI(M)或Emacs.一个主要原因是我发现我的手需要在IDE中过多地放置键盘,因为它们经常需要鼠标......而且我懒得为所有东西设置我自己的快捷方式.