【发布时间】:2022-03-15 01:54:53
【问题描述】:
我对 OS X 相当陌生,但我熟悉 Vim,因为我在各种 *nix 系统中使用它。我见过很多人推荐在终端中运行 MacVim 而不是 Vim。谁能告诉我 MacVim 和普通 Vim 有什么区别?
【问题讨论】:
-
可能与 mac 友好的键绑定(ctrl 与命令键)有关
标签: macos vim text-editor macvim
我对 OS X 相当陌生,但我熟悉 Vim,因为我在各种 *nix 系统中使用它。我见过很多人推荐在终端中运行 MacVim 而不是 Vim。谁能告诉我 MacVim 和普通 Vim 有什么区别?
【问题讨论】:
标签: macos vim text-editor macvim
MacVim 只是 Vim。你以前在 Vim 中所做的任何事情都将在 MacVim 中以完全相同的方式工作。
MacVim 比终端中的 Vim 甚至 Linux 中的 GVim 更集成在整个操作系统中,它遵循许多 Mac OS X 的约定。
如果您主要使用 GUI 应用程序(例如YummyFTP + GitX + Charles),您可能更喜欢 MacVim。
如果您主要使用 CLI 应用程序(例如 ssh + svn + tcpdump),您可能更喜欢终端中的 vim。
进入和离开一个领域 (CLI) 到另一个领域 (GUI),反之亦然,可能会“昂贵”。
我根据任务和上下文同时使用 MacVim 和 Vim:如果我在 CLI 领域,我只需键入 vim filename,如果我在 GUI 领域,我将调用 Quicksilver 并启动MacVim。
当我从 TextMate 切换时,我有点喜欢 MacVim 支持 Mac 用户习惯的几乎所有常规快捷方式这一事实。我添加了一些我自己的,模仿 TextMate,但是,由于我在多种环境中工作,我强迫自己学习 vim 方式。现在我使用 MacVim 和 Vim 的方式几乎完全相同。使用其中一个对我来说只是一个上下文问题。
另外,就像 El Isra 所说,OS X 中的默认 vim (CLI) 有点过时了。您可以通过MacPorts 安装最新版本,或者您可以安装 MacVim 并为您的.profile 添加别名:
alias vim='/path/to/MacVim.app/Contents/MacOS/Vim'
在 MacVim 和 Terminal.app 中拥有相同的 vim。
另一个区别是,许多很棒的配色方案在 MacVim 中开箱即用,但在仅支持 8 种颜色(+ 高亮)的 Terminal.app 中看起来很糟糕,但您可以使用 iTerm — 可以设置为支持 256 色——而不是终端。
所以……基本上我的建议是两者都用。
编辑:我没试过,但最新版本的 Terminal.app(10.7 中)应该支持 256 色。我还在工作中使用 10.6.x,所以我还会使用 iTerm2 一段时间。
编辑:在您的 shell 中使用 MacVim 的 CLI 可执行文件的更好方法是将与 MacVim 捆绑的 mvim 脚本移动到您的 $PATH 中的某个位置并使用以下命令:
$ mvim -v
编辑:是的,Terminal.app 现在支持 256 色。因此,如果您需要 iTerm2 的高级功能,您可以安全地使用默认终端模拟器。
【讨论】:
brew install macvim 就可以了。 mxcl.github.com/homebrew
sudo port install macvim
sudo 在自制软件中从不需要。
emacs 被安装为依赖项之一:D
我认为值得切换到 MacVim 的一个原因是:Yank 使用系统剪贴板。
我终于可以在我的终端上的 MacVim 和我的其他应用程序之间复制粘贴。
【讨论】:
* 寄存器来拉取系统剪贴板。哪个 IMO 更好,因为我个人并不总是想同步到我的系统剪贴板。因此,在 VIM 中,例如拉出一行时,使用 "*yy 复制到剪贴板。
+,例如如果你想将整个内容复制到剪贴板 :%y+
不幸的是,使用“mvim -v”,ALT 加箭头窗口仍然不起作用。我还没有找到任何方法来启用它:-(
【讨论】:
mvim 命令,我通过 HomeBrew 安装了 MacVim,但不知道有默认的符号链接命令。谢谢!
这都是关于可以从 .vimrc 配置中简单实现的键绑定。
就剪贴板而言,您可以使用 :set clipboard unnamed 并且从 vim 中拉出的内容将转到系统剪贴板。
无论如何,无论你最终使用哪一个,我建议使用this vimrc config
,它包含大量的插件和绑定,可以让您的体验更加流畅。
【讨论】: