【サクラエディタ/マクロ】Pythonのコードを実行する


サクラエディタで開いているファイルのPythonのコードを、ボタン一つで実行するマクロ(環境)を作りました。

WindowsにPythonをインストールする

まずはWindowsでPythonを動かす環境を用意します。既に環境がある人は飛ばしてください。

Pythonの公式ページからインストーラーをダウンロードします。

Pythonインストーラーダウンロード

ダウンロードしたらインストーラーを実行します。

画面が開いたら、「Add Python 3.10 to PATH」をチェックしてから、「Install Now」を押してインストールを開始します。

Pythonインストール

インストールに成功すると、「Pathの長さを無制限にしようぜ」と言われるので、それにのります。(パスやファイル名の長さを気にしなくてよくなります)

Disable path length limit

以上でPythonのインストールは完了です。

Pythonインストール完了

サクラエディタにマクロを登録する

以下が、サクラエディタに登録するマクロのコードです。

// ビルド&実行するマクロ
Run = function() {
	var EXECUTORY = {
		'cpp' : function(fileName) { 
					var srcFile = fileName + '.cpp';
					var exeFile = fileName + '.exe';
					ExecCommand('cmd /c '                                         // Cmd.exeを開く
							+ '"g++ -O0 -std=c++2a ' + srcFile + ' -o ' + exeFile // ビルド
							+ ' && ' + exeFile                                    // 実行ファイル実行
							+ ' && del ' + exeFile                                // 実行ファイル削除
							+ ' && pause"');                                      // キーが押されるのを待つ
				},
		'py' : function(fileName) { ExecCommand('cmd /c "' + fileName + '.py && pause"'); }
	};
	
	var fileExtension = ExpandParameter('$b'); // $b: 開いているファイルの拡張子
	if (EXECUTORY[fileExtension]) {
		EXECUTORY[fileExtension](ExpandParameter('$g')); // $g: 拡張子を除いたファイル名
	} else {
		// 拡張子が対応していない場合は、カーソル行 or 選択された式を実行する
		var result = eval(IsTextSelected() ? GetSelectedString(0) : GetLineStr(0));
		GoLineEnd();
		Char(10);    // 改行コード
		InsText(result);
	}
}; Run(); delete Run;

ゴニョゴニョ書いてありますが、Pythonの実行に必要なのは13行目の処理のみです。

ExecCommand('cmd /c "' + fileName + '.py && pause"');

今回は、C++のビルド/実行も同じキーに割り当てたかったので、関数テーブルを定義しています。(参照:【サクラエディタ/マクロ】コマンドプロンプトでC++のコードを実行する

上記のファイルをサクラエディタのマクロに登録すれば、ボタン一つで今開いているPythonのコードを動かすことができます。(参照:【サクラエディタ/マクロ】自作したマクロをキーに割り当てる


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です