選定的文本如何sublime text 3
插件獲取所選文本:API:如何從對象sublime.Selection
import sublime, sublime_plugin
class plugin_window__go_to_relative_plugin__Command(sublime_plugin.WindowCommand):
def run(self):
window = self.window
view = window.active_view()
sel = view.sel()
sublime.status_message("selection: "+sel)
我的代碼拋出錯誤:
sublime.status_message("selection: "+sel)
TypeError: Can't convert 'Selection' object to str implicitly
view.sel()
回報sublime.Selection
對象。但我不知道如何從那裏獲取選定的文本。
該插件必須工作如下: 當我把它稱爲對視......
...它應該設置文本"dow = self.w"
變量sel
當我做str(sel)
它返回<sublime.Selection object at 0x1047fd8d0>
Docs對我來說不是很清楚。
你似乎忽略了什麼是可能有多個區域,因此多' selectionText's。順便說一句,這不是一個答案,可能應該添加到您的問題,而不是。 – martineau
無論如何,謝謝你,你幫了我很多。對於我的任務,我只需要首先選擇。如果你添加答案,我接受它。 –
很高興我的評論有幫助 - 文檔有點難以理解。也不是這樣,根據他們的說法,像'sel()'返回的'sublime.Selection',按照排序順序保存,這意味着'sel [0]'只是視圖中最早的區域 - 最靠近頂部的那個 - 不是當前光標附近的那個或最後一個選定的東西。我想如果你看看Packages/Default/delete_word.py這個預製的插件,你將能夠計算出當前光標位置是什麼,因爲那個「刪除光標左邊或右邊的一個單詞「所以它必須知道那個位置在哪裏 – martineau