diff options
Diffstat (limited to 'User/select_only_unique.py')
-rw-r--r-- | User/select_only_unique.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/User/select_only_unique.py b/User/select_only_unique.py new file mode 100644 index 0000000..49b8fe5 --- /dev/null +++ b/User/select_only_unique.py @@ -0,0 +1,20 @@ +import sublime +import sublime_plugin + + +class SelectOnlyUniqueCommand(sublime_plugin.TextCommand): + def run(self, edit): + new_sels = [] + found_texts = set() + + for r in self.view.sel(): + text = self.view.substr(r) + if text not in found_texts: + found_texts.add(text) + new_sels.append((r.a, r.b)) + + self.view.sel().clear() + self.view.sel().add_all([ + sublime.Region(a, b) + for a, b in new_sels + ]) |