12

我编写了一个简单的 ST2 插件,它应该只在当前插入符号位置插入一个时间戳。但是,我无法找出如何获得当前位置。

我有

def run(self, edit):
    timestamp = "%s" % (datetime.datetime.now().strftime("%Y-%m-%d %H:%M"))
    pos = ???
    self.view.insert(edit, pos, timestamp)

应该pos是什么?

4

1 回答 1

23

尝试

pos = self.view.sel()[0].begin()

这将获取当前选择的起点(如果未选择任何内容,则选择的起点和终点是当前光标位置)。

如果您希望它与多项选择一起使用,您必须迭代返回的所有选择self.view.sel()

for pos in self.view.sel():
    self.view.insert(edit, pos.begin(), timestamp)
于 2012-10-10T08:31:02.750 回答