與大多數其他軟件包不同,PHP禁止完成/摘要 - 彈出窗口,迫使您在打印選項卡之前鍵入整個觸發器,並且無法在具有相同觸發器的不同片段之間進行選擇。啓用完成 - 在Sublime Text中彈出3
我正在尋找一種方法來啓用PHP中的completions-popup(或所有語言,覆蓋它們的默認值)。
我已經試過什麼:
php軟件包包括文件 「完成Rules.tmPreferences」 與
<key>cancelCompletion</key>
<string>^\s*(\}?\s*(else|do|try)|(class|function)\s*[a-zA-Z_0-9]+)$</string>
據我所知,這是抑制彈出。我改變了正則表達式無可比擬的選擇
<key>cancelCompletion</key>
<string>/(?!)/</string>
與PackageResourceViewer保存它,這樣它應該覆蓋默認設置文件,但是,即使重新啓動的情況下,該文件只加載一次後,彈出仍然不出現。
編輯:
由於Enteleform指出,在彈出的作品裏面<?php ?>
,在PHP文件時出現問題,但PHP之外。範圍是(embedding.php,text.html.basic)。
我無法重現您的問題,並且對於'cancelCompletion'鍵具有相同的值。步驟:[1]打開新文件並設置'PHP'語法[2]插入基本PHP模板:'<!DOCTYPEhtml>
<?php __PHP_CONTENT__?>'[3]'__PHP_CONTENT__'地區。自動完成按預期工作。 – Enteleform我現在正在laravel中間,所以我甚至沒有想過用進行測試。它適用於那些,所以感謝您的意見。但是,我仍然試圖讓它在這些以外的地方工作,尤其是。葉片模板;範圍(embedding.php,text.html.basic)。 如果輸入正確,PHP和Laravel代碼片段都可以工作,因此適用範圍和Laravel代碼片段包甚至沒有.tmPreferences來覆蓋PHP。有任何想法嗎? – Tobl
我試着改變範圍@' Completion Rules.tmPreferences'&'PHP.sublime-completions',但沒有多少運氣。這很奇怪 - 如果我將其更改爲'source.python',它將停止運行@ PHP文件並且將正常運行@ Python文件。然而,我嘗試了一堆'source.php','embedding.php',&'text.html.basic';並且它們中沒有一個似乎適用於您的預期使用情況。 @凱斯哈爾可能知道一個解決方案,他在範圍相關問題上更好。 – Enteleform