「ハルナアウトライン用の完了/未完了フラグをノード名に反映する」の版間の差分

提供: MeryWiki
ナビゲーションに移動 検索に移動
MSY-07 (トーク | 投稿記録)
ハイライト効果の適用
MSY-07 (トーク | 投稿記録)
SyntaxHighlightにcopyの追加
 
(同じ利用者による、間の3版が非表示)
1行目: 1行目:
<syntaxhighlight lang="javascript">
2025年1月11日現在、Google Playでハルナアウトラインがダウンロードできないため、このマクロを使用する意味がなくなりました。
#title = "ハルナから状態反映"
 
/***********************************************************************************************************
<syntaxhighlight lang="javascript" copy>
************************************************************************************************************
#title = "ハルナから状態反映"
**
/***********************************************************************************************************
**  当マクロはhalna氏作成のAndroidアプリ「ハルナアウトライン」
************************************************************************************************************
**  https://play.google.com/store/apps/details?id=jp.blogspot.halnablue.HalnaOutliner
**
**  とMeryを併用する前提で、Mery側に欲しい機能を私が勝手にマクロで実装したものです。
**  当マクロはhalna氏作成のAndroidアプリ「ハルナアウトライン」
**  当マクロはhalna氏作成のAndroidアプリ「ハルナアウトライン」と直接の関係はありません。
**  https://play.google.com/store/apps/details?id=jp.blogspot.halnablue.HalnaOutliner
**  当マクロについてhalna氏への問い合わせはおやめください。
**  とMeryを併用する前提で、Mery側に欲しい機能を私が勝手にマクロで実装したものです。
**   
**  当マクロはhalna氏作成のAndroidアプリ「ハルナアウトライン」と直接の関係はありません。
**  ハルナアトラインで更新・作成したファイルの完了(チェックフラグ)をノード名先頭へ反映する。
**  当マクロについてhalna氏への問い合わせはおやめください。
**  ハルナアウトラインでは、.+ノード名+[タブ]+0,0,0,0,0で特殊フラグ管理している。
**   
**  フラグのないノードについては判断不能として能動的に完了か未了にする(完了未了切替マクロ)まで*表示にする。
**  ハルナアトラインで更新・作成したファイルの完了(チェックフラグ)をノード名先頭へ反映する。
**  チェックフラグは(0?,)の3番目。
**  ハルナアウトラインでは、.+ノード名+[タブ]+0,0,0,0,0で特殊フラグ管理している。
**   
**  フラグのないノードについては判断不能として能動的に完了か未了にする(完了未了切替マクロ)まで*表示にする。
**  □☑*いずれも持たないノードの末尾のフラグが……
**  チェックフラグは(0?,)の3番目。
**  フラグ=1 完了とする。ノード名を"☑"+ノード名へ更新する。
**   
**  【置換元】 /^(?!\.+[□|☑|*])(\.+)(\S+\t\d?,\d?,1,\d?,\d?)/
**  □☑*いずれも持たないノードの末尾のフラグが……
**  【置換先】 $01☑$02
**  フラグ=1 完了とする。ノード名を"☑"+ノード名へ更新する。
**   
**  【置換元】 /^(?!\.+[□|☑|*])(\.+)(\S+\t\d?,\d?,1,\d?,\d?)/
**  フラグ=0 未了とする。ノード名を"□"+ノード名へ更新する。
**  【置換先】 $01☑$02
**  【置換元】 /^(?!\.+[□|☑|*])(\.+)(\S+\t\d?,\d?,0,\d?,\d?)/
**   
**  【置換先】 $01□$02
**  フラグ=0 未了とする。ノード名を"□"+ノード名へ更新する。
**   
**  【置換元】 /^(?!\.+[□|☑|*])(\.+)(\S+\t\d?,\d?,0,\d?,\d?)/
**  フラグがない *判断不能とする。
**  【置換先】 $01□$02
**  【置換元】 /^(?!\.+[□|☑|*])(\.+)(\S+)$/
**   
**  【置換先】 $01*$02
**  フラグがない *判断不能とする。
**   
**  【置換元】 /^(?!\.+[□|☑|*])(\.+)(\S+)$/
**  □☑*いずれかを持つノードの末尾のフラグが……
**  【置換先】 $01*$02
**  フラグ=1 完了とする。ノード名の先頭1文字を"☑"へ更新する。
**   
**  【置換元】 /^(\.+)(□|☑|*)(\S+\t\d?,\d?,1,\d?,\d?)/
**  □☑*いずれかを持つノードの末尾のフラグが……
**  【置換先】 $01☑$03
**  フラグ=1 完了とする。ノード名の先頭1文字を"☑"へ更新する。
**   
**  【置換元】 /^(\.+)(□|☑|*)(\S+\t\d?,\d?,1,\d?,\d?)/
**  フラグ=0 未了とする。ノード名の先頭1文字を"□"へ更新する。
**  【置換先】 $01☑$03
**  【置換元】 /^(\.+)(□|☑|*)(\S+\t\d?,\d?,0,\d?,\d?)/
**   
**  【置換先】 $01□$03
**  フラグ=0 未了とする。ノード名の先頭1文字を"□"へ更新する。
**   
**  【置換元】 /^(\.+)(□|☑|*)(\S+\t\d?,\d?,0,\d?,\d?)/
**  フラグがない *判断不能とする。
**  【置換先】 $01□$03
**  【置換元】 /^(\.+)(□|☑|*)(\S+)$/
**   
**  【置換先】 $01*$03
**  フラグがない *判断不能とする。
**
**  【置換元】 /^(\.+)(□|☑|*)(\S+)$/
************************************************************************************************************
**  【置換先】 $01*$03
***********************************************************************************************************/
**
************************************************************************************************************
redraw=false;
***********************************************************************************************************/
with(document.selection){
 
StartOfDocument(false);
redraw=false;
Replace("^(?!\\.+[□|☑|*])(\\.+)(\\S+\\t\\d?,\\d?,1,\\d?,\\d?)", "$01☑$02", meFindNext | meFindReplaceRegExp | meReplaceAll);
var sel = document.selection;
StartOfDocument(false);
sel.StartOfDocument(false);
Replace("^(?!\\.+[□|☑|*])(\\.+)(\\S+\\t\\d?,\\d?,0,\\d?,\\d?)", "$01□$02", meFindNext | meFindReplaceRegExp | meReplaceAll);
sel.Replace("^(?!\\.+[□|☑|*])(\\.+)(\\S+\\t\\d?,\\d?,1,\\d?,\\d?)", "$01☑$02", meFindNext | meFindReplaceRegExp | meReplaceAll);
StartOfDocument(false);
sel.StartOfDocument(false);
Replace("^(?!\\.+[□|☑|*])(\\.+)(\\S+)$", "$01*$02", meFindNext | meFindReplaceRegExp | meReplaceAll);
sel.Replace("^(?!\\.+[□|☑|*])(\\.+)(\\S+\\t\\d?,\\d?,0,\\d?,\\d?)", "$01□$02", meFindNext | meFindReplaceRegExp | meReplaceAll);
StartOfDocument(false);
sel.StartOfDocument(false);
Replace("^(\\.+)(□|☑|*)(\\S+\\t\\d?,\\d?,1,\\d?,\\d?)", "$01☑$03", meFindNext | meFindReplaceRegExp | meReplaceAll);
sel.Replace("^(?!\\.+[□|☑|*])(\\.+)(\\S+)$", "$01*$02", meFindNext | meFindReplaceRegExp | meReplaceAll);
StartOfDocument(false);
sel.StartOfDocument(false);
Replace("^(\\.+)(□|☑|*)(\\S+\\t\\d?,\\d?,0,\\d?,\\d?)", "$01□$03", meFindNext | meFindReplaceRegExp | meReplaceAll);
sel.Replace("^(\\.+)(□|☑|*)(\\S+\\t\\d?,\\d?,1,\\d?,\\d?)", "$01☑$03", meFindNext | meFindReplaceRegExp | meReplaceAll);
StartOfDocument(false);
sel.StartOfDocument(false);
Replace("^(\\.+)(□|☑|*)(\\S+)$", "$01*$03", meFindNext | meFindReplaceRegExp | meReplaceAll);
sel.Replace("^(\\.+)(□|☑|*)(\\S+\\t\\d?,\\d?,0,\\d?,\\d?)", "$01□$03", meFindNext | meFindReplaceRegExp | meReplaceAll);
}
sel.StartOfDocument(false);
redraw=true;
sel.Replace("^(\\.+)(□|☑|*)(\\S+)$", "$01*$03", meFindNext | meFindReplaceRegExp | meReplaceAll);
redraw=true;
</syntaxhighlight>
</syntaxhighlight>

2025年6月30日 (月) 01:04時点における最新版

2025年1月11日現在、Google Playでハルナアウトラインがダウンロードできないため、このマクロを使用する意味がなくなりました。

#title = "ハルナから状態反映"
/***********************************************************************************************************
************************************************************************************************************
**
**  当マクロはhalna氏作成のAndroidアプリ「ハルナアウトライン」
**  https://play.google.com/store/apps/details?id=jp.blogspot.halnablue.HalnaOutliner
**  とMeryを併用する前提で、Mery側に欲しい機能を私が勝手にマクロで実装したものです。
**  当マクロはhalna氏作成のAndroidアプリ「ハルナアウトライン」と直接の関係はありません。
**  当マクロについてhalna氏への問い合わせはおやめください。
**  
**  ハルナアトラインで更新・作成したファイルの完了(チェックフラグ)をノード名先頭へ反映する。
**  ハルナアウトラインでは、.+ノード名+[タブ]+0,0,0,0,0で特殊フラグ管理している。
**  フラグのないノードについては判断不能として能動的に完了か未了にする(完了未了切替マクロ)まで*表示にする。
**  チェックフラグは(0?,)の3番目。
**  
**  □☑*いずれも持たないノードの末尾のフラグが……
**  	フラグ=1	完了とする。ノード名を"☑"+ノード名へ更新する。
**  		【置換元】	/^(?!\.+[□|☑|*])(\.+)(\S+\t\d?,\d?,1,\d?,\d?)/
**  		【置換先】	$01☑$02
**  
**  	フラグ=0	未了とする。ノード名を"□"+ノード名へ更新する。
**  		【置換元】	/^(?!\.+[□|☑|*])(\.+)(\S+\t\d?,\d?,0,\d?,\d?)/
**  		【置換先】	$01□$02
**  
**  	フラグがない	*判断不能とする。
**  		【置換元】	/^(?!\.+[□|☑|*])(\.+)(\S+)$/
**  		【置換先】	$01*$02
**  
**  □☑*いずれかを持つノードの末尾のフラグが……
**  	フラグ=1	完了とする。ノード名の先頭1文字を"☑"へ更新する。
**  		【置換元】	/^(\.+)(□|☑|*)(\S+\t\d?,\d?,1,\d?,\d?)/
**  		【置換先】	$01☑$03
**  
**  	フラグ=0	未了とする。ノード名の先頭1文字を"□"へ更新する。
**  		【置換元】	/^(\.+)(□|☑|*)(\S+\t\d?,\d?,0,\d?,\d?)/
**  		【置換先】	$01□$03
**  
**  	フラグがない	*判断不能とする。
**  		【置換元】	/^(\.+)(□|☑|*)(\S+)$/
**  		【置換先】	$01*$03
**
************************************************************************************************************
***********************************************************************************************************/

redraw=false;
var sel = document.selection;
sel.StartOfDocument(false);
sel.Replace("^(?!\\.+[□|☑|*])(\\.+)(\\S+\\t\\d?,\\d?,1,\\d?,\\d?)", "$01☑$02", meFindNext | meFindReplaceRegExp | meReplaceAll);
sel.StartOfDocument(false);
sel.Replace("^(?!\\.+[□|☑|*])(\\.+)(\\S+\\t\\d?,\\d?,0,\\d?,\\d?)", "$01□$02", meFindNext | meFindReplaceRegExp | meReplaceAll);
sel.StartOfDocument(false);
sel.Replace("^(?!\\.+[□|☑|*])(\\.+)(\\S+)$", "$01*$02", meFindNext | meFindReplaceRegExp | meReplaceAll);
sel.StartOfDocument(false);
sel.Replace("^(\\.+)(□|☑|*)(\\S+\\t\\d?,\\d?,1,\\d?,\\d?)", "$01☑$03", meFindNext | meFindReplaceRegExp | meReplaceAll);
sel.StartOfDocument(false);
sel.Replace("^(\\.+)(□|☑|*)(\\S+\\t\\d?,\\d?,0,\\d?,\\d?)", "$01□$03", meFindNext | meFindReplaceRegExp | meReplaceAll);
sel.StartOfDocument(false);
sel.Replace("^(\\.+)(□|☑|*)(\\S+)$", "$01*$03", meFindNext | meFindReplaceRegExp | meReplaceAll);
redraw=true;
スポンサーリンク