Sublimetext2 升华文本:在多个选择中按Esc键--将光标放在最后一个选择上?

Sublimetext2 升华文本:在多个选择中按Esc键--将光标放在最后一个选择上?,sublimetext2,sublimetext3,sublimetext,Sublimetext2,Sublimetext3,Sublimetext,对于升华文本,在使用CMD+D进行多重选择后,我通常会更改文本,然后希望转义选择,并将光标放在上次选择的位置 接近的一些功能: CMD+U将重新选择选项 CMD+G将跳到下一个事件 CMD+Shift+G将向后跳到上一次出现 是否有任何键盘快捷键可以实现我想要的功能,类似于Esc但向前,而不是向后?您可以创建一个非常简单的插件来实现这一点,然后将一个键绑定到它: 从Tools菜单中,选择Developer->newplugin… 粘贴以下内容: import sublime, sublime

对于升华文本,在使用CMD+D进行多重选择后,我通常会更改文本,然后希望转义选择,并将光标放在上次选择的位置

接近的一些功能:

  • CMD+U
    将重新选择选项
  • CMD+G
    将跳到下一个事件
  • CMD+Shift+G
    将向后跳到上一次出现

是否有任何键盘快捷键可以实现我想要的功能,类似于Esc但向前,而不是向后?

您可以创建一个非常简单的插件来实现这一点,然后将一个键绑定到它:

  • Tools
    菜单中,选择
    Developer
    ->
    newplugin…
  • 粘贴以下内容:

    import sublime, sublime_plugin
    
    class SingleSelectionLastCommand(sublime_plugin.TextCommand):
        def run(self, edit):
            last = self.view.sel()[-1]
            self.view.sel().clear()
            self.view.sel().add(last)
            self.view.show(last)
    
    { "keys": ["escape"], "command": "single_selection_last", "context":
        [
            { "key": "num_selections", "operator": "not_equal", "operand": 1 }
        ]
    }
    
  • 将其保存在推荐的文件夹中,将文件命名为
    single\u selection\u keep\u last\u cursor.py

  • 打开
    首选项
    ->
    键绑定-用户
  • 键入/粘贴类似于以下内容的内容:

    import sublime, sublime_plugin
    
    class SingleSelectionLastCommand(sublime_plugin.TextCommand):
        def run(self, edit):
            last = self.view.sel()[-1]
            self.view.sel().clear()
            self.view.sel().add(last)
            self.view.show(last)
    
    { "keys": ["escape"], "command": "single_selection_last", "context":
        [
            { "key": "num_selections", "operator": "not_equal", "operand": 1 }
        ]
    }
    
  • 省省吧

  • 本例使用名为
    single\u selection\u last
    的命令创建一个新插件,然后在有多个选择时将Esc键绑定到该插件。因此,这将覆盖保留第一个选择的默认Esc行为

    keybindings文件需要是一个有效的JSON数组,因此如果它是空的,则需要将上面的示例用方括号括起来才能工作


    如果希望使用不同的键,只需将
    escape
    替换为所需的组合键即可。有关示例,请参见
    首选项
    ->
    键绑定-默认值

    非常感谢您的帮助,为我省去了很多问题。在这里,我为此创建了一个包: