プログラム学習室 http://studyhallweb.com/

秀丸Dart実行マクロ

WindowsでDartコマンドラインプログラムを実行すると文字化け

Dart Editorで作成したプログラムはUTF-8で書かれており、これをそのままWindowsのコマンドプロンプトで実行すると日本語が文字化けします。
そこで、秀丸からDartのコマンドラインプログラムを実行させ、その出力を秀丸に取り込むマクロを作成しました。

実行結果をテンプファイルに書き出し秀丸に取り込むソースコード

				
$menu[0]="秀丸で開いているDartを実行";
menuarray $menu, 1;     //  第2引数は $menu 配列の数

#ans = result;
if (#ans == 0)
  // キャンセルされたとき
  endmacro;
else if ( #ans == 1 ){
  // 秀丸で開いているDartを実行
  call subDartRun;
  endmacro;
}

endmacro;

subDartRun:
  if(filetype != ".dart") {
    message "Not dart file.";
    endmacro;
  }

  $parm = input("パラメータを入力してください");
  $command = "Dart " + filename2 + " " + $parm;
  question $command;
  if(result == no)
    endmacro;

  // Dartプログラムを実行し添付ファイルに出力
  $command = $command + " > tmpOutput.txt";

  run $command;

  newfile;
  insertfile "tmpOutput.txt",utf8;
  deletefile "tutOut.txt";

return;