2012-10-10 42 views
11

我寫了一個簡單的ST2插件,應該只在當前的插入符處插入一個時間戳。但是,我無法找到如何獲得當前的位置。如何獲得當前的插入位置?

我已經

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

我應該pos是什麼?

回答

21

嘗試用

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

這獲取當前選擇的開始點(如果沒有被選中,啓動和選擇端是當前光標位置)。

如果你想這與多重選擇工作,你必須遍歷由self.view.sel()返回的所有選項:

for pos in self.view.sel(): 
    self.view.insert(edit, pos.begin(), timestamp) 
+0

它的工作原理。真棒! – kasperhj