簡體   English   中英

通過插件使用打開文件對話框打開文件

[英]Open a file with Open File Dialog via plugin

我有一個插件,我希望用戶能夠為某事選擇文件。 我在想,如果我的插件可以導致系統打開文件對話框出現,用戶選擇文件然后我取回文件名,那會很酷。

但是,我似乎無法在 sublime 插件中找到這樣做的方法。

我嘗試在沒有參數的情況下調用open_file ,但如果拋出錯誤,期望傳入的文件名。

您知道我如何創建所需的行為嗎?

或者,如果我顯示一個頁腳面板,用戶可以在其中鍵入文件名,有沒有辦法在可用的文件名上提供某種tab完整功能?

謝謝

Sublime Text插件API不包含調用文件選擇器對話框的方法。

open_file(file_name, <flags>)僅打開您在Sublime Text窗口中指定的file_name

該iOpener ST3包-看包控制GitHub的 -做你在找什么作為替代。 鍵入一個文件路徑(在底部的輸入面板中),並在按下Tab鍵時自動執行Bash樣式,如果有多個完整的替代項,它將在覆蓋列表中顯示替代項,供您選擇你要。 iOpener是使用GPL V2許可證發布的,因此您可以根據該許可證的條款使用/調整插件中的(經過充分注釋的)代碼。 希望這可以幫助。

這對我有用:

window.run_command('prompt_open_file')

這是在 Sublime Text 4075 中實現的,請參閱API 參考

open_dialog(callback, <file_types>, <directory>, <multi_select>, <allow_folders>)

為用戶提供一個文件對話框,用於打開文件,並將生成的文件路徑傳遞給回調。

返回值

None

論據

  • callback : 接受用戶選擇結果的回調。 如果用戶取消對話框,將傳遞 None 。 如果選擇了一個文件,將傳遞一個包含路徑的 str。 如果參數 multi_select 為 True,將傳遞一個 str 文件路徑列表。

  • file_types :允許的文件類型的規范。 此參數應該是一個包含 2 元素元組的列表:

    • 包含描述的 str
    • 具有有效文件擴展名的 str 列表

    例子

    [ ('Python source files', ['py', 'py3', 'pyw']), ('C source files', ['c', 'h']) ]
  • directory :要打開文件對話框的目錄的 str 。 如果未指定,將使用當前視圖的目錄。

  • multi_select :一個布爾值,表示應該允許用戶選擇多個文件

  • allow_folders :一個布爾值,表示應該允許用戶選擇文件夾

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM