演示:

源码:
import sublime
import sublime_plugin
class AlignColCommand(sublime_plugin.TextCommand):
def run(self, edit):
most_right_pos = max(self.get_pos(self.view.sel()))
for region in self.view.sel():
col_num = self.view.rowcol(region.a)[1]
num_of_spaces = most_right_pos - col_num
self.view.insert(edit, region.a, ' ' * num_of_spaces)
def get_pos(self, selection):
for region in selection:
yield self.view.rowcol(region.a)[1]
参考
- 非官方插件开发文档:https://docs.sublimetext.info/en/latest/extensibility/plugins.html
- 官方API文档:https://www.sublimetext.com/docs/3/api_reference.html