ファイルを保存するときにソースコードでリンターを実行したい(CTRL-S)。保存時にファイルに対して外部コマンドを実行することはできますか?
私の知る限り、厳密な意味では、保存した直後にプログラムを実行する直接的なオプションはありません。とは言うものの、押すと(機能的に)同様の動作が得られる可能性があります Ctrl+S 以下の手順で...
Ctrl + Sで保存して実行
NppExecをインストールします
通常、Runメニューの項目と組み合わせた通常のNotepad ++マクロは、目的の動作への最も簡単なルートである可能性があります。ただし、Runメニューからのコマンドは、現在、デフォルトではマクロアクションとして許可されていないようです。
この問題を回避するには、NppExec
というプラグインが必要です。このプラグインを使用すると、Notepad ++からプログラムを実行するための適度に改善されたマクロ(コマンドスクリプト)を作成できます。特に、ドキュメントの保存とプログラムの実行を組み合わせることができます(前述のように、通常は不可能です)。
NppExecをインストールするには:
プラグインマネージャーを開きます(プラグイン→プラグインマネージャー→プラグインマネージャーを表示) 。
プラグインリストでNppExec
を見つけて、マークを付けます。
Install
をクリックします。
インストール後、示されているようにNotepad ++を再起動する必要があります。
コマンドスクリプトを作成する
Notepad ++を再起動したら、プラグイン→NppExec→実行... 窓 ( F6 )。テキストフィールドで、実行するコマンドを(順番に)別々の行に配置します。
_NPP_SAVE
# ... Another command here ...
# ... Another command here ...
_
ちなみに、ファイルで何をしたいのか(リンティングプロセスに関して)は正確にはわかりません。そのため、上記の例が完全ではないことをお詫びします。
各_# ... Another command here ...
_は、この例の単なるプレースホルダーであることに注意してください。重要なことに、_#
_記号は、実際にはNppExecのコメントを表していません...これは私の省略形です。 =)
使用可能なコマンド
最初に保存したいことがわかっているので、_NPP_SAVE
_を使用してコマンドスクリプトを開始できます。 _NPP_SAVE
_は、現在のドキュメントを保存するようにNotepad ++に指示するNppExec
固有のコマンドです。
一般に、残りのコマンドについては、それらのコマンドを直接呼び出すか(NppExec
コマンドまたはコマンドラインに登録された項目であり、出力はほとんど重要ではないと仮定します)、たとえば、 _NPP_RUN cmd /k somecommand.exe
_(または_NPP_RUN cmd
_の他のバリエーション)を使用して、新しいcmd
ウィンドウを生成します(多くの場合、これが望ましい場合があります)。
コマンドラインから実行できるもの(バッチファイルやスクリプトを含む)はすべて、コマンドの実行可能なオプションである可能性があります。 Notepad ++環境変数も利用できます。使用する可能性が最も高いのは$(FULL_CURRENT_PATH)
(二重引用符で参照するのが最適、つまり"$(FULL_CURRENT_PATH)"
)です。これは、現在のドキュメントの保存バージョンへの完全なWindowsパスを提供します。
通常の実行...ダイアログのRun
と同様に、実行...ウィンドウのOK
はコマンドをすぐに実行します。これにより、保存する前に機能をテストできます。同様に、Command(s)
フィールドは実行間で永続的です。
コマンドスクリプトに満足したら、_Save...
_を選択し、スクリプトに適切な名前を付け、後で使用できるようにもう一度Save
を選択します。終了したら、実行...ウィンドウを閉じます。
メニューへのコマンドスクリプトの追加
これで、NppExec
コマンドスクリプトをNotepad ++メニューに追加して、ショートカットを割り当てることができます。
プラグイン→NppExec→詳細オプション...に移動します。
左下の_Associated script:
_ドロップダウンメニューでコマンドスクリプトを選択します。
_Add/Modify
_をクリックして、すぐ上の_Menu items
_フィールドに追加します。
必要に応じて、_Place to the Macros submenu
_の横のチェックボックスをオンにして、コマンドスクリプトをメインマクロメニューに追加します。それ以外の場合は、プラグイン→NppExecの下にオプションとして表示されます。
OK
をクリックして終了します。
示されているようにNotepad ++を再起動し、コマンドスクリプトがマクロメニューまたはプラグインのいずれかの下部にメニューエントリとして表示されることを確認します。 →NppExec。
コマンドスクリプトへのホットキーの追加
最後に、再割り当てします Ctrl+S:
設定→ショートカットマッパー...を開きます。
メインメニュータブで、[保存]のエントリを強調表示します。ウィンドウの下部にあるClear
をクリックして、そのアイテムのホットキー設定をクリアします( Ctrl+S )。
プラグインコマンドタブを選択します。下にスクロールして、NppExec
コマンドスクリプト(名前で識別)のエントリを強調表示します。 _NppExec.dll
_エントリのブロックの最後の項目になる可能性があります。
Modify
をクリックして、適切なホットキーオプションを設定します(Ctrl
をマークし、ドロップダウンからS
を選択します)。
OK
をクリックして新しいショートカット設定を保存し、Close
Shortcut Mapper ...をクリックします。
これで、コマンドスクリプトはによってトリガーされます。 Ctrl+S (再起動は必要ありません)。
割り当てたホットキーの組み合わせに関係なく、通常のバージョンのSave
は、[ファイル]→[保存]メニュー項目とツールバーアイコン(単一の青いディスケット)に関連付けられていることに注意してください。