SublimeText 3通过设置默认值与用户值的方式,来进行配置。默认值不允许更改,用户值是用户进行配置。同一属性,当用户值存在时,默认值就无效。打开Preference,如图:
先贴下我的Seting-User
{"caret_style": "blink","font_size": 12,"ignored_packages":[],"vintage_start_in_command_mode": true,}
1、"ignored_packages":[]:这个就是启动vim模式,当有这句时,我们就可以使用vim一样来编辑。
2、"vintage_start_in_command_mode": true:顾名思义呢,就是启动的时候就在command模式了。
然后,再贴一下我的Key Bindings-User
[{ "keys": ["k", "j"], "command": "exit_insert_mode","context":[{ "key": "mand_mode", "operand": false },{ "key": "setting.is_widget", "operand": false }]},//①{ "keys": ["ctrl+l"], "command": "move", "args": {"by": "characters", "forward": true} },//②{ "keys": ["ctrl+j"], "command": "commit_completion", "context":[{ "key": "auto_complete_visible" },{ "key": "setting.auto_complete_commit_on_tab", "operand": false }]},//③]
1、第一个大括号(①),表示的是使用 k+j 来实现退出插入模式。因为之前在使用vim的时候,就习惯这样的定义,所以就将之映射成这样。当然,也可以定义成其他方便的按键组合。
2、第二个大括号(②),表示的是在插入模式下,使用ctrl+l ,实现光标右移一位。
3、③表示的是,存在自动补全的选择是,使用ctrl+j 就可以进行选择。这也是之前是用vim时的快捷键。
这也看来,我们通过Key Bindings-User,就可以很方便的定义自己的快捷键。那如何找到一些操作对应的代码?额,我是自己看Key Bindings-Default中的表述,一般都是对应的英文,比如auto_complete_visible。再者,就是通过已知的按键,去找,比如esc表示退出插入模式,就找esc。。。