使用Vim代替(或使用)Xcode进行iOS开发

Eri*_*tto 66 vim xcode ios

Xcode附带了很多对iPhone和/或iPad构建至关重要的东西.事实上很多我甚至都不知道,因为它是"幕后".

另一方面,我最近接触到使用Vim作为编辑器的优势.在开发iOS平台时,是否有任何设置可以使Vim成为一个有效的选择?或者将这两者结合起来以使这个问题没有实际意义,会是如此复杂吗?

换句话说,如果您在使用Vim和Xcode时有任何提示,建议或警告,我会全神贯注!

小智 91

使用Vim为iOS或Mac开发可以非常强大和快速,特别是如果您使用TDD或想要快速反馈.

但要让它发挥作用需要一点点努力.您需要知道的几个重要事项是:

  • 使用xcodebuild命令行工具从某些vimscript运行构建和单元.
  • 使用该clang_complete插件可以在vim中完整地完成代码.
  • 使用ios.vimcocoa.vim插件进行导航.

这是我首选的工作方法.事实上,我编写了这个ios.vim插件,让更多人更容易.


abi*_*gli 20

我已经去过那里了......

我喜欢vim并经常在*nix平台上进行日常C++开发,但我也喜欢Xcode的所有功能,特别是最新的Xcode> = 4.3和clang后端,在auto方面给出了真正的优势 - 完成和符号引用.

我想我已经找到了最好的解决方案(尽管Apple没有正式支持)XVim插件.

希望未来的Xcode升级不会破坏它(它仍然可以与最新的开发人员预览4.5一起工作),这真的可以让你保持活力,因为你在使用Xcode时学习了Vim,正如我所说的那样,对我来说是最佳解决方案.


pb2*_*b2q 7

如果您不是同时尝试在Vim和XCode编辑器编辑相同的文件,Vim和XCode将很好地共存.如果你这样做,那么每个人都会给你一个关于外部修改文件的警告.在这个特殊方面,Vim的终端版本更容易使用:它只会在你试图保存文件时发出警告,问你确定吗,而MacVim和XCode编辑器会在你每次返回时发出警告到文件.

XCode允许您在按文件类型打开文件时选择外部应用程序.在XCode首选项中,转到文件类型选项卡,然后转到文件 - >文本 - >源代码.首选编辑器可以设置为外部程序,如MacVim; 请注意,Emacs应该已经列为选择:当选择Emacs时,XCode会在终端中使用Emacs启动Terminal.app.此首选编辑器设置存在以下问题:每个打开的文件都会显示一个新窗口,该窗口可能与您的工作流程不匹配.

Vim的remote功能可能在这里证明是有用的,请参阅:help remote.通过一些工作和上面的首选编辑器首选项,人们应该能够将要编辑的文件发送到任何 Vim实例,包括在其中运行的现有Vim xterm.我似乎记得Emacs提供了类似的东西.

但是,如果没有设置首选编辑器,这一切都无法阻止您使用Vim :只需像平常一样在Vim中打开和编辑项目文件.

您的工作流程可能是使用Vim编辑代码,并切换到XCode来构建项目,但Vim也可以运行XCode使用的相同构建工具,并且通过更多工作,您甚至可以跳转到行有错误.XCode依赖于gdb进行调试,也可以通过插件很好地与Vim一起使用.

当然,不能期望Vim能够替换像Interface Builder这样的东西,但是只需要Vim-only解决方案就可以实现iOS开发的其他任何方面.

或者只是使用Vim 更快编辑代码,并继续使用XCode.


Rik*_*ich 5

从 Xcode 13.0 Beta 开始,您可以在 Xcode 中使用 Vim 键绑定。它在设置中启用:

\n
Preferences \xe2\x86\x92 Text Editing \xe2\x86\x92 Editing \xe2\x86\x92 Enable Vim key bindings\n
Run Code Online (Sandbox Code Playgroud)\n

编辑(根据@fangxing):

\n

现在所谓的切换方式已Vim Mode更改:

\n
Menubar \xe2\x86\x92 Editor \xe2\x86\x92 Vim Mode\n
Run Code Online (Sandbox Code Playgroud)\n