5

每隔一段时间,我就会复制多行代码,然后将它们粘贴到多个选择中,希望每个选择都具有该代码块,但是由于行/选择的数量匹配,因此代码块被拆分为多个选择。如果行/选择的数量匹配,这是默认行为,这很有用,但在这种情况下却没有。

我的第一直觉是看看是否有一个快捷方式可以取消这种行为,就像“paste_and_indent”的快捷方式是“super+shift+v”一样。不过我一个也没找到。

每次遇到此问题时,我都会取消选择其中一项并粘贴,然后仅选择我取消选择并粘贴的一项。

如果有人知道这样做的更好方法,请分享。

4

1 回答 1

4

我认为唯一的方法是创建一个插件 ( )Tools/New Plugin...将剪贴板复制到所有选定区域:

import sublime, sublime_plugin

class FullMultilinePasteCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        for region in self.view.sel():
            self.view.insert(edit, region.begin(), sublime.get_clipboard())

将其保存在您的Packages/User目录中。

然后你可以添加键绑定(Preferences/Key Bindings - User):

{ "keys": ["alt+super+v"], "command": "full_multiline_paste" }
于 2012-10-26T06:51:17.220 回答