复古模式

Vintage是一个用于Sublime Text的vi模式编辑包。它允许您将vi的命令模式与Sublime Text的功能(包括多个选择)组合。

复古模式是开放的,补丁是受欢迎的。如果您想贡献,细节都在GitHub库

启用复古

复古默认情况下禁用,通过ignored_pa​​ckages设置。如果您删除“复古”从忽略的软件包列表,你就可以用vi键编辑:

  1. 选择▸设置首选项菜单项
  2. 编辑ignored_pa​​ckages设置,对其进行更改:
    "ignored_packages": ["Vintage"]
    至:
    "ignored_packages": []
    现在保存文件。
  3. 复制模式现已启用 - 您将在状态栏中看到“INSERT MODE”

默认情况下,复古以插入模式启动。可以通过向用户设置添加以下设置来更改此设置:

"vintage_start_in_command_mode": true

包含什么

复古包括最基本的动作:d(删除),y(复制),c(更改),gu(小写),gU(大写),g〜(rot13),<(unindent)和>(indent)。

它还包括许多运动,包括l,h,j,k,w,w,e,E,b,B,alt + w(通过子词移动),alt + W(通过子词向后移动) $,^,%,0,G,gg,f,F,t,T,^ f,^ b,H,M和L.

支持文本对象,包括单词,引号,括号和标签。

重复('。')在那里,指定命令和动作的计数。支持寄存器,宏和书签。还支持许多其他杂项命令,例如*,/,n,N,s,S等。

什么不是

插入模式是常规的Sublime Text编辑,与通常的Sublime Text键绑定:vi插入模式键绑定不会被模拟。

Ex命令不实现,除了:w和:e,它们通过命令选项板工作。

在敞篷下

复古模式完全通过键绑定和插件API实现 - 随意浏览Vintage包,看看它是如何组合在一起的。例如,如果你想绑定“jj”退出插入模式,你可以添加这个键绑定:

{      "keys": ["j", "j"],      "command": "exit_insert_mode",      "context":      [          { "key": "setting.command_mode", "operand": false },          { "key": "setting.is_widget", "operand": false }      ]  }  

OS X Lion

在Lion中,按住某个键不会重复,而是会显示一个弹出式菜单,在字符变体之间进行选择。这不适用于命令模式,所以你可能要禁用它。这可以通过在终端输入:

defaults write com.sublimetext.2 ApplePressAndHoldEnabled -bool false

Ctrl键

复古支持这些ctrl键绑定:

但是,因为它们与其他Sublime Text键绑定冲突,所以在Windows和Linux上默认情况下禁用它们。可以使用vintage_ctrl_keys设置启用它们:

"vintage_ctrl_keys": true

Ex模式

请看一看VintageEx的Ex模式复古