2013-05-17 83 views
0

注:我已經安裝了埃米特到崇高的文本2下劃線片段

在我的工作流程我有很多的項目是我必須把下劃線在betwwn每個單詞在句子中。是否有一段代碼可以在崇高的文本2中構建,並通過一些選定文本的tabtrigger來爲我執行此操作?

回答

1

您始終可以使用查找和替換。高亮要選擇的文本,然後按Ctrl - ^h(或命令 - ^h在Mac)打開查找和替換對話框。點擊最上面一行的右側按鈕選擇In Selection,如果需要,也可以選擇Highlight matches的右下角按鈕。鍵入Find What:框中鍵入一個空格,在Replace With:箱下劃線,並創下按Ctrl - Alt鍵 - 輸入替換所有(或按Ctrl - - ^h要更換一次一個)。


要使用代碼段,請執行以下操作。選擇Tools -> New Snippet...並加入下面的它:

<snippet> 
    <content><![CDATA[${SELECTION/\s/_/g}]]></content> 
</snippet> 

保存它作爲Packages/User/replace_space_with_underscore.sublime-snippet。然後,打開Preferences -> Key Bindings - User並把在以下幾點:

[ 
    { "keys": ["ctrl+shift+-"], "command": "insert_snippet", "args": { "name": "Packages/User/replace_space_with_underscore.sublime-snippet" } } 
] 

(如果你已經有自定義鍵綁定,只是把{ "keys": ["ctrl+shift+-"], "command": "insert_snippet", "args": { "name": "Packages/User/replace_space_with_underscore.sublime-snippet" } }末,記得把,一個它上面後)

保存這兩個文件,現在您可以突出顯示任何你想要的文字,命中按Ctrl - - -,並更換有下劃線的空白。如果您只需要空格(無製表符或換行符),請將「\s」替換爲「\」(反斜槓空格)。這個正則表達式將用相同數量的下劃線替換多個空格。如果你只需要一個空格,或者只有一個下劃線,但它是可行的,它會變得更加複雜。

+0

這可以從快捷方式多次完成嗎?或者我需要爲我想更改的每個部分執行此過程? –

+0

@SethUrquhart - 看我上面的編輯。你可以使用片段路由,但是如果你喜歡查找和替換版本,字段值應該保持不變,所以要多次運行它,只要你需要,你可以點擊「Ctrl-H,Ctrl-Alt-Enter」 。但個人而言,我會花時間設置片段,因爲它只是一個關鍵組合。 – MattDMo

+0

我正在使用Emmet,這會以任何方式影響它,抱歉,我應該在我的問題中提到這一點。 –

1

通過使用基於正則表達式的snippet substitutions,您可以使用此功能輕鬆創建片段。你唯一需要的代碼是這樣的:

<snippet> 
    <content><![CDATA[ 
${SELECTION/\s/_/g} 
]]></content> 
</snippet> 

您可以再選擇一個句子,請從命令調色板這個片段中,所有的空間內將下劃線代替。您可能需要調整正則表達式(目前僅爲\s),具體取決於要替換的空白量。

+0

我正在使用Emmet,是否會以任何方式影響它,抱歉,我應該在我的問題中提到這一點。 –

+0

@SethUrquhart Emmet不應該破壞簡單的片段功能,不會。我不知道埃米特可以做任何類似的事情,而無需新的代碼片段,但對我而言,使用類似這樣的東西將是更簡單的解決方案。 –