Notepad++ マクロで検索と置換を行うことはできますか?

Notepad++ マクロで検索と置換を行うことはできますか?

Notepad++ で、いくつかの標準的な検索と置換を実行できるマクロを作成しようとしています。マクロで、検索と置換以外のすべて (行の追加、文字の追加) を実行できます。

マクロを手動で編集するためのファイルが見つかりません。

Notepad++で検索と置換を実行するマクロを作成することに成功した人はいますか?どうやって?

PS: これを実行できる他のツールには興味がありません。私自身、perl、vi(m)、UltraEdit、sed、awk の使い方を知っています。Notepad++ でこれができるかどうか気になっていただけです。

答え1

はい、できます。新しいマクロを記録して検索と置換を実行したところ、アクションが正常に保存されたので、マクロを再生すると、同じ検索と置換のアクションが実行されました。

私は Notepad++ マクロの専門家ではありませんが、あなたは専門家だと思います... ランダムなファイルを開いて、test というマクロを作成しました。「snip」という単語を検索し、「blaa」に置き換えました。

shortcuts.xmlNotepad++ を閉じた後にファイルを開くと、次の新しいマクロが表示されます。

<Macro name="test" Ctrl="no" Alt="no" Shift="no" Key="0">
    <Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
    <Action type="3" message="1601" wParam="0" lParam="0" sParam="snip" />
    <Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
    <Action type="3" message="1602" wParam="0" lParam="0" sParam="blaa" />
    <Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
    <Action type="3" message="1701" wParam="0" lParam="1608" sParam="" />
</Macro>

これはテスト済みで、私のマシンでは動作します。このファイルを手動で変更すると、変更が反映され、Notepad++ で動作します。

ただし、shortcuts.xmlファイル (Appdata フォルダー内) は、Notepad++ を開いたときまたは終了したときにのみ読み込まれ、保存されることに注意してください。

答え2

以前、私もこの方法はうまくいかなかったのですが、Notepad++ 5.6.x から 5.9.8 にアップデートしたら、今では検索と置換を問題なく記録できるようになりました。とても便利です!

もちろん、shortcuts.xmlマクロ エディターがないため、マクロを記録した後で手動で編集することは避けられません。また、巨大なマクロを完璧に記録するには超人的な集中力が必要です。(そのファイルを編集する前に、Notepad++ のすべてのインスタンスが閉じていることを確認してください。)

答え3

私もNotepad++でマクロエディタ(テキストを操作するためのもの)を見つけることができませんでした(Notepad++には組み込み関数がいくつか用意されていますが)。しかし、今ではNotepad++でマクロを作成するためのプラグインが利用可能です。このプラグインは「Python スクリプト' (優れたドキュメントとサンプル付き) を使用すると、このプラグインを使用すると、エディターと Notepad++ 自体をほぼ完全に制御できるため、あらゆる種類のマクロを作成できます。Python に関する基本的な知識がある場合は、このプラグインを使用してマクロの作成を開始できます (このプラグイン自体のドキュメントには、初心者向けの基本的な Python 構文がいくつか記載されています)。

あなたはできる検索と置換このプラグインを使用すると、ほぼあらゆる種類の操作をマクロとして実行できます。

詳しい情報については、次のリンクをご覧ください。 http://npppythonscript.sourceforge.net/

関連情報