ActualVim
Sublime Text 3 输入模式使用 Neovim 实现。问题已被关闭,如果有bug修复,欢迎提交Pull Requests。
详细信息
安装量
- 总数 32K
- Win 12K
- Mac 12K
- Linux 9K
8月6日 | 8月5日 | 8月4日 | 8月3日 | 8月2日 | 8月1日 | 7月31日 | 7月30日 | 7月29日 | 7月28日 | 7月27日 | 7月26日 | 7月25日 | 7月24日 | 7月23日 | 7月22日 | 7月21日 | 7月20日 | 7月19日 | 7月18日 | 7月17日 | 7月16日 | 7月15日 | 7月14日 | 7月13日 | 7月12日 | 7月11日 | 7月10日 | 7月9日 | 7月8日 | 7月7日 | 7月6日 | 7月5日 | 7月4日 | 7月3日 | 7月2日 | 7月1日 | 6月30日 | 6月29日 | 6月28日 | 6月27日 | 6月26日 | 6月25日 | 6月24日 | 6月23日 | 6月22日 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 0 | 1 | 3 | 4 | 1 | 10 | 2 | 1 | 1 | 0 | 4 | 1 | 3 | 2 | 2 | 2 | 0 | 3 | 1 | 1 | 1 | 2 | 1 | 2 | 2 | 1 | 3 | 2 | 2 | 2 | 2 | 1 | 1 | 3 | 0 | 1 | 1 | 4 | 0 | 5 | 0 | 2 | 1 | 6 | 0 | 1 |
Mac | 4 | 2 | 2 | 0 | 2 | 1 | 0 | 3 | 1 | 1 | 0 | 1 | 4 | 0 | 1 | 1 | 1 | 0 | 1 | 2 | 2 | 2 | 3 | 0 | 0 | 0 | 1 | 2 | 0 | 0 | 1 | 4 | 2 | 2 | 3 | 4 | 1 | 8 | 1 | 2 | 1 | 2 | 1 | 1 | 0 | 0 |
Linux | 3 | 0 | 1 | 3 | 1 | 0 | 0 | 0 | 2 | 0 | 1 | 2 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 2 | 0 | 1 | 1 | 5 | 3 | 1 | 1 | 0 | 2 | 0 | 0 | 1 | 0 | 1 | 0 | 2 | 0 |
README
ActualVim
整合了Sublime Text 3的您所喜欢的功能和您在vim中打字所喜欢的所有功能。
ActualVim使用内嵌的Neovim实例,精确地操纵每个Sublime Text文本文档,就像您在vim中直接编辑文本一样,同时Sublime Text界面、功能和插件仍然可用(有关注意事项,请参阅README末尾)。
这不是像gvim和其他vim前端那样的远程终端UI。文本修改和选择会双向同步到实际的Sublime Text UI中。
为什么?
Sublime的外观比您的终端好得多,并且拥有丰富的插件生态系统。
其他Sublime vim模拟插件,包括内置的Vintage,只是对vim本身功能的粗略近似。它们缺少功能或者与实际产品表现不同。
使用ActualVim,您可以使用自己的vimrc、插件以及任何真实的vim操作/命令,因为它在幕后确实是vim,双向同步也意味着Sublime Text和原生操作系统界面仍然可用。
使用方法
这个插件需要安装Neovim,但应在所有Sublime Text 3平台(主要在Windows和macOS上进行测试)上工作。请使用至少Neovim 0.2.2,但强烈推荐Neovim 0.3或更新版本。
将ActualVim克隆到“首选项 -> 浏览包...”或“sublime.packages_path()”中找到的路径。通常在这里找到
- macOS:
~/Library/Application Support/Sublime Text 3/Packages/
- Linux:
~/.config/sublime-text-3/Packages/
- Windows:
%APPDATA%/Sublime Text 3/Packages/
您可以通过使用命令面板(cmd+shift+p
或 ctrl+shift+p
)或通过 偏好设置 -> 插件设置 -> ActualVim 设置
来打开 偏好设置:实际 Vim 设置
来设置 Neovim 路径。
ActualVim 启动单个 Neovim 嵌入式实例并将每个 Sublime 视图多路复用到单独的缓冲区中。
如果插件无法使用(当 ActualVim 开始起作用时,出现水平下划线光标),请检查 Sublime Text 守护进程的错误,并确保您已设置 Neovim 路径。如果问题依然存在,请提交一个问题报告。
杂项
在 OS X 10.7+ 上,您应该执行 defaults write com.sublimetext.3 ApplePressAndHoldEnabled -bool false
来启用按键重复。
您可以通过命令面板运行 ActualVim: Disable
或 ActualVim: Enable
来切换输入模式,而不丢失 Vim 状态。
注意事项
目前损坏的 Sublime 特性
- 多选(#8)。
- 在键入时的自动弹出,例如补全(#57)和代码片段建议(#94)。
- 在 Vim 模式下,Sublime 的撤销合并不正确(它每次是一个字符:#44)。
显示 Vim 的 UI(如状态栏)仍需要一些改进,但我有一些很好的想法,可以使用 Sublime 集成的 HTML Phantom 视图使其看起来美观(比您的终端好得多)。
由于 neovim 支持 change deltas,将看到非常大的文件将影响性能。通过禁用 ActualVim (带有可配置的截止值)来提高大型文件(配置文件 large_file_disable)的命令来减轻这个问题。