我需要一個 Notepad++ 巨集來執行搜尋和替換,但適用於運行巨集時突出顯示的文字部分。
我嘗試錄製宏,但它記錄了我在錄製巨集時突出顯示的文字部分。那不是我想要的。我需要申請搜尋和替換每次運行巨集時都會有不同的文字。
錄製巨集後,AppData\Notepad++\shortcuts.xml
出現這個東西:
<Macro name="SaR_macro" Ctrl="yes" Alt="no" Shift="yes" Key="89">
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="some text" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
也許有一種方法可以在some text
上面的位置插入“當前選擇”之類的內容?我應該這樣做嗎?
編輯:
更準確地說,我正在努力實現的目標。假設我有一個如下所示的 txt 檔案:
text text text text text - qwerty
text text text text - asdf
text text text text text text - zxc
我想要實現的情況是:我選擇- qwerty
,然後按巨集熱鍵,結果我變成了- qwerty
其他東西。然後我選擇- asdf
,接下來我按巨集熱鍵,結果我變成了- asdf
和以前一樣的東西。接下來,同樣的事情也發生在- zxc
.
答案1
恐怕只用一個熱鍵是不可能的。
儘管如此,還有一個替代方案:
您可以在 PythonScript 插件中執行 python 腳本。
如果尚未安裝,請按照此操作指導
- 建立腳本(外掛程式 >> PythonScript >> 新腳本)
- 複製此程式碼並保存檔案(例如replace_highlight.py):
editor.replaceSel('new text')
- 前往外掛程式 >> PythonScript >> 配置
- 選擇腳本replace_highlight.py
- 節省
- 重新啟動Notepad++(工具列中將出現PythonScript圖示)
- 打開你要修改的文件
- 突出顯示要替換的文本
- 點擊之前創建的圖標
- 完畢
如果你想更換所有出現的情況所選文本,使用以下程式碼:
editor.replace(editor.getSelText(), 'NEW TEXT')