Vintage是一个用于Sublime Text的vi模式编辑包。它允许您将vi的命令模式与Sublime Text的功能(包括多个选择)组合。
复古模式是开放的,补丁是受欢迎的。如果您想贡献,细节都在GitHub库。
复古默认情况下禁用,通过ignored_packages设置。如果您删除“复古”从忽略的软件包列表,你就可以用vi键编辑:
"ignored_packages": ["Vintage"]至:
"ignored_packages": []现在保存文件。
默认情况下,复古以插入模式启动。可以通过向用户设置添加以下设置来更改此设置:
"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 } ] }
在Lion中,按住某个键不会重复,而是会显示一个弹出式菜单,在字符变体之间进行选择。这不适用于命令模式,所以你可能要禁用它。这可以通过在终端输入:
defaults write com.sublimetext.2 ApplePressAndHoldEnabled -bool false
复古支持这些ctrl键绑定:
但是,因为它们与其他Sublime Text键绑定冲突,所以在Windows和Linux上默认情况下禁用它们。可以使用vintage_ctrl_keys设置启用它们:
"vintage_ctrl_keys": true
请看一看VintageEx的Ex模式复古