折り返しトグル切り替え
概要
好みの折り返し方式をトグル切り替えできるようにするマクロ。組み合わせは3種類。
利点は覚えるショートカットキーがひとつ減るくらいです。
ダウンロード
ファイル:折り返しトグル切り替えセット.zip (※Bleat版 2019/02/13)
ファイル:折り返しトグル切り替え.zip (アイコン入り ※sukemaru版 2019/02/19)
内容
Bleat版
- 折り返しトグル切り替えA.js : 折り返さない⇔指定文字数で折り返しのスクリプト
- 折り返しトグル切り替えB.js : 折り返さない⇔ウィンドウ端で折り返しのスクリプト
- 折り返しトグル切り替えC.js : 指定文字数で折り返し⇔ウィンドウ端で折り返しのスクリプト
sukemaru版
- 折り返しトグル切り替えD.js : 3つの折り返しモードを順々にトグルするスクリプト
(折り返さない → 指定文字数で折り返し → ウインドウの右端で折り返し)
各スクリプト実行時にMacroSettingsフォルダ(includeライブラリで用意されているもの)に設定ファイルが自動作成されます。
(例)折り返しトグル切り替えAを実行で、設定ファイル「折り返しトグル切り替えA.json」が作成
使用上の注意
設定ファイルの管理にincludeライブラリの関数 を利用しています。
このマクロの前に導入してください。
また、動作保証がないMeryの機能IDを指定して直接呼び出すメソッドを使用しています。
本体の仕様変更で使えなくなっても泣かない。
折り返さない⇔指定文字数で折り返し
#include "include/IO.js"
#title="折り返し切替A"
#tooltip = "折り返さない⇔指定文字数で折り返し"
var data = {count:1};
data = IO.Deserialize(data);
data.count++;
if(data.count > 2){
var data = {count:1};
}
IO.Serialize(data);
if ( ( data.count % 2 ) != 0 ) {
editor.ExecuteCommandByID(2146); // 折り返さない
} else {
editor.ExecuteCommandByID(2147); // 指定文字数で折り返す
}
折り返さない⇔ウィンドウ端で折り返し
#include "include/IO.js"
#title="折り返し切替B"
#tooltip = "折り返さない⇔ウィンドウ端で折り返し"
var data = {count:1};
data = IO.Deserialize(data);
data.count++;
if(data.count > 2){
var data = {count:1};
}
IO.Serialize(data);
if ( ( data.count % 2 ) != 0 ) {
editor.ExecuteCommandByID(2146); // 折り返さない
} else {
editor.ExecuteCommandByID(2148); // ウィンドウの右端で折り返す
}
指定文字数で折り返し⇔ウィンドウ端で折り返し
#include "include/IO.js"
#title="折り返し切替C"
#tooltip = "指定文字数で折り返し⇔ウィンドウ端で折り返し"
var data = {count:1};
data = IO.Deserialize(data);
data.count++;
if(data.count > 2){
var data = {count:1};
}
IO.Serialize(data);
if ( ( data.count % 2 ) != 0 ) {
editor.ExecuteCommandByID(2147); // 指定文字数で折り返す
} else {
editor.ExecuteCommandByID(2148); // ウィンドウの右端で折り返す
}
3つの折り返しモードを順々にトグルする
#include "include/IO.js"
#title="折り返し切替D"
#tooltip = "折り返しなし/指定文字数/ウインドウ右端"
// #icon = "wrap_mode[2].ico"
/**
* ・折り返さない → 指定文字数で折り返し → ウインドウ右端で折り返し
* を順にトグル切り替えする。
* ひとつのショートカットキー/ツールバーアイコンで操作可。
* ・このマクロから折り返し方法を切り替えた場合は
* 順番どおりににひとつずつ切り替えて、設定を JSON ファイルに保存する。
* ・Mery のオプションパネルや [表示] メニュー、標準ツールバーアイコン、
* または標準ショートカットキー(Ctrl+1 ~ Ctrl+3)から切り替えした場合は
* 折り返し方法の状態が JSON ファイルに保存されないので、
* 次にこのマクロを実行したさいには
* 最後に JSON ファイルに書き込まれた状態をもとにトグル切り替えする。
*/
var setting = {};
setting = IO.Deserialize( setting ); // JSON 読み込み
if ( setting.wrapMode == 0 ) {
editor.ExecuteCommandByID( MEID_VIEW_WRAP_BY_CHAR = 2147 );
Status = "指定文字数で折り返し";
setting.wrapMode = 1;
}
else if ( setting.wrapMode == 1 ) {
editor.ExecuteCommandByID( MEID_VIEW_WRAP_BY_WINDOW = 2148 );
Status = "ウインドウの右端で折り返し";
setting.wrapMode = 2;
}
else {
editor.ExecuteCommandByID( MEID_VIEW_WRAP_NONE = 2146 );
Status = "折り返さない";
setting.wrapMode = 0;
}
IO.Serialize( setting ); // JSON 書き込み
メモ
- 2019/02/19 (sukemaru)
sukemaru版を追加させていただきました。マテリアルアイコンの「折り返さない」と「指定文字数で折り返し」用を翻案した「マテリアルデザインっぽいアイコン」2点をいれてあります。Bleat版とあわせて、お好みのスクリプトと組み合わせてお使いください。
スポンサーリンク