サクラエディタのシンタックスハイライトを自動設定するバッチ
サクラエディタのシンタックスハイライトを自動設定するバッチについて。
なぜ必要になったのか?
むかしWindows Serverでの作業環境で,
「Cドライブに存在ずるエディタの設定を保存しておけない」
という状況があった。
その環境下で,サクラエディタに
「JavaScriptのシンタックスハイライトを設定する作業」を
毎回手動で行なうのは面倒だった。
そこで,キーストロークをWSH/JScriptのバッチに記録して自動化した。
設定用のコード
// ---------------- JavaScriptの設定 ---------------- ws = WScript.CreateObject("WScript.Shell"); function typekeys( str ) { for( var i = 0, len = str.length; i < len; i ++ ) { ws.SendKeys( str.charAt( i ) ); } } ws.Run("\"C:\\Program Files\\sakura\\sakura.exe\""); WScript.Sleep(1200); // 共通設定 ws.SendKeys("^6"); WScript.Sleep(400); // キーワード for( var i = 12; --i; ) { ws.SendKeys("^{TAB}"); } // セット追加 ws.SendKeys("%m"); WScript.Sleep(400); // セット名 typekeys("js"); ws.SendKeys("{ENTER}"); WScript.Sleep(400); // インポート ws.SendKeys("%i"); WScript.Sleep(400); var filename = "keyword\\JavaScript.kwd"; typekeys( filename ); ws.SendKeys("{ENTER}"); ws.SendKeys("{ENTER}"); WScript.Sleep(400); // タイプ別設定一覧 ws.SendKeys("^4"); WScript.Sleep(400); // 設定18 for( var k = 17 + 1; --k; ) { ws.SendKeys("{DOWN}"); } ws.SendKeys("%s"); WScript.Sleep(400); // 設定名 typekeys("js"); ws.SendKeys("{TAB}"); WScript.Sleep(500); // 拡張子 typekeys("js"); ws.SendKeys(" "); typekeys("wsf"); ws.SendKeys("^{TAB}"); WScript.Sleep(400); // カラー ws.SendKeys("%1"); // 設定18 for( var l = 18 + 1; --l; ) { ws.SendKeys("{DOWN}"); } WScript.Sleep(400); // ブロックコメント ws.SendKeys("%f"); typekeys("/"); ws.SendKeys("+:"); ws.SendKeys("%t"); ws.SendKeys("+:"); typekeys("/"); // 行コメント ws.SendKeys("%m"); ws.SendKeys("/"); ws.SendKeys("/"); WScript.Sleep(400); ws.SendKeys("{ENTER}"); WScript.Echo("終了しました。");