0

我試着寫這樣添加自定義塊報價爲sublime3 PHPDoc的

{ "keys": ["ctrl+shift+;"], "command": { "characters": "/**@var*/", "block": true} } 

但它似乎完全沒有達到什麼簡單的事情我嘗試這樣做。

我想快捷方式做的是,一旦觸發,我希望進入格式化的文字像這樣

/** 
    *@var 
    */ 

有誰知道如何定義這樣的自定義快捷方式?

非常感謝!

回答

1

有兩種方法可以做到這一點,這取決於你想要的功能。如果你想要的是打印正是你指出什麼,然後創建下面的代碼片段:

<snippet> 
    <content><![CDATA[ 
/** 
    * @var $0 
    */ 
]]></content> 
    <tabTrigger>vardoc</tabTrigger> 
</snippet> 

要做到這一點,使用XML語法的新文件,粘貼以上恰好如圖所示,然後保存該文件爲Packages/User/vardoc.sublime-snippet,其中Packages是當您選擇Preferences -> Browse Packages時打開的目錄。要觸發片段,鍵入vardoc,打標籤。你的光標將被放置在$0所在的片段中。

這應該可以正常工作,除非你需要輸入*,如果你需要一個新行,並且沒有什麼聰明的地方。相反,我推薦的是DocBlockr,這是一個Sublime Text插件,可以自動生成多種語言的文檔,包括PHP。打字/**,打標籤輸入會給你

/** 
* | 
*/ 

哪裏|是你的光標位置(這也是一個內置的崇高功能,我相信)。它也可以自動記錄功能。如果你有

function foo(MyClass $cls, 
      Array $arr, 
      $num=42, 
      $val=false, 
      $str="sweet function, dude!") { 

    return $something; 
} 

,並放置在函數定義上面的行光標,然後鍵入/**,打標籤,你會得到

/** 
* [foo description] 
* @param MyClass $cls 
* @param Array $arr 
* @param integer $num 
* @param boolean $val 
* @param string $str 
* @return [type] 
*/ 

[foo description]突出了你可以輸入你自己的描述。擊中選項卡再次將突出MyClassArray等,所以你可以改變他們,如果你願意。

更多你的問題,你可以聲明一個變量

var $foobar = "I love unicorns"; 

配售該聲明上述光標,然後進入/**標籤會給你

/** 
* [$foobar description] 
* @var string 
*/ 

還有其他還有DocBlockr的功能,請查看上面的鏈接瞭解更多詳情LS。

我希望這有助於!

+0

聽起來像一個非常強大的解決方案感謝:D將現在嘗試它! – Ezeewei

相關問題