我非常喜欢在PyCharm中实现Shift Enter的方式:
在当前压痕之后开始一个新线,根据当前压痕水平定位插入符(等于顺序按End,Enter) .
我想在Sublime Text 3中以相同的方式使用Shift Enter工作 .
我发现有一个
{“keys”:[“end”],“command”:“move_to”,“args”:{“to”:“eol”,“extend”:false}}
对于“结束”和
{“keys”:[“shift enter”],“command”:“insert”,“args”:{“characters”:“\ n”}},
对于“Shift enter” . 但我不知道如何将它们结合起来 .
1 回答
有几种方法可以使多个命令按顺序执行,以响应键绑定,菜单项选择,命令调色板输入等 .
如果您有兴趣运行的命令都是
TextCommand
类型(这基本上意味着它们移动光标,更改选择或以某种方式编辑缓冲区),那么最简单的方法就是创建一个宏,然后将其绑定到一个键 .例如:
选择
Tools > Record Macro
执行要记录的操作
选择
Tools > Stop Recording Macro
和Tools > Save Macro
每个宏命令都有一个您可以使用的关联键绑定 .
完成后,您将在
User
包中保存sublime-macro
文件 .然后,您可以使用
run_macro_file
命令将其绑定到密钥 . 例如:如上所述,这仅适用于
TextCommand
命令;以某种方式直接修改缓冲区的命令,包括选择和光标位置 . 这意味着您无法在宏中记录查找/替换命令;此类命令不会记录在生成的宏文件中 .执行相同操作的另一种方法是使用扩展包,例如Chain of Command . 这打破了上述限制,因为它允许您指定所需的任何命令,只要有一个命令可用 . 但是,此方法需要知道要执行的命令 .
在您的示例的特定情况下,Ctrl Enter键已经通过宏方法执行您想要的操作 . 如果您愿意,可以使用以下键绑定使其适用于您想要的键: