Macro/投稿/206
をテンプレートにして作成
Land.to
[
ホーム
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
* 改行コードの混在警告&統一 [#a24bcaca]
-ページ: [[Macro/投稿]]
-作者: [[971]]
-カテゴリー: js
-投稿日: 2009-11-25 (水) 10:39:59
** メッセージ [#n7c975f7]
&size(14){自動実行マクロ(開ファイル後やファイル保存前)...
#code(javascript){{
// 【UnifyEol.js】
// 改行コードが混在していたら警告&統一する
// ★正規表現にbregonig.dllが必要★
// sakura 2.0.3.0 以降ならメッセージボックス系のマクロ専...
var strVer = Editor.ExpandParameter("$V");
var arrVer = strVer.split(".");
var bMsgBoxSupport = (arrVer[0] >= 3 || (arrVer[0] == 2 &...
var strEol;
var strFind;
var strReplace;
switch (Editor.GetLineCode())
{
case 1:
strEol = "CR"
strFind = "\\r\\n|(?<!\\r)\\n";
strReplace = "\\r";
break;
case 2:
strEol = "LF"
strFind = "\\r\\n|\\r(?!\\n)";
strReplace = "\\n";
break;
default:
strEol = "CRLF"
strFind = "\\r(?!\\n)|(?<!\\r)\\n";
strReplace = "\\r\\n";
break;
}
Editor.CancelMode();
Editor.SearchNext(strFind, 36);
if (Editor.IsTextSelected() != 0)
{
Editor.MoveHistPrev();
Editor.SearchClearMark();
var bYes;
var strMsg = "改行コードが混在しています。\n現在の入力改...
if (bMsgBoxSupport) // メッセージボックス系の専用関数が...
{ // Editor.YesNoBox() を使う
bYes = (Editor.YesNoBox(strMsg) == 6);
}
else
{ // WScript.Shell の Popup() を使う
// ※ Popup() ではエディタ画面をクリックするとメッセージ...
var WSHShell = new ActiveXObject("WScript.Shell");
bYes = (WSHShell.Popup(strMsg, 0, "改行コード混在", 4) ...
}
if ( bYes )
{
Editor.ReplaceAll(strFind, strReplace, 4);
Editor.MoveHistPrev();
}
}
}}
----
- 無警告で統一したければ行33を削除するだけでできます -- [...
- あと、ファイル名の拡張子を見て警告・統一する/しないを...
- 2.0.3.0以降ならYesNoBox()を使うようにしました -- [[971]...
#comment
終了行:
* 改行コードの混在警告&統一 [#a24bcaca]
-ページ: [[Macro/投稿]]
-作者: [[971]]
-カテゴリー: js
-投稿日: 2009-11-25 (水) 10:39:59
** メッセージ [#n7c975f7]
&size(14){自動実行マクロ(開ファイル後やファイル保存前)...
#code(javascript){{
// 【UnifyEol.js】
// 改行コードが混在していたら警告&統一する
// ★正規表現にbregonig.dllが必要★
// sakura 2.0.3.0 以降ならメッセージボックス系のマクロ専...
var strVer = Editor.ExpandParameter("$V");
var arrVer = strVer.split(".");
var bMsgBoxSupport = (arrVer[0] >= 3 || (arrVer[0] == 2 &...
var strEol;
var strFind;
var strReplace;
switch (Editor.GetLineCode())
{
case 1:
strEol = "CR"
strFind = "\\r\\n|(?<!\\r)\\n";
strReplace = "\\r";
break;
case 2:
strEol = "LF"
strFind = "\\r\\n|\\r(?!\\n)";
strReplace = "\\n";
break;
default:
strEol = "CRLF"
strFind = "\\r(?!\\n)|(?<!\\r)\\n";
strReplace = "\\r\\n";
break;
}
Editor.CancelMode();
Editor.SearchNext(strFind, 36);
if (Editor.IsTextSelected() != 0)
{
Editor.MoveHistPrev();
Editor.SearchClearMark();
var bYes;
var strMsg = "改行コードが混在しています。\n現在の入力改...
if (bMsgBoxSupport) // メッセージボックス系の専用関数が...
{ // Editor.YesNoBox() を使う
bYes = (Editor.YesNoBox(strMsg) == 6);
}
else
{ // WScript.Shell の Popup() を使う
// ※ Popup() ではエディタ画面をクリックするとメッセージ...
var WSHShell = new ActiveXObject("WScript.Shell");
bYes = (WSHShell.Popup(strMsg, 0, "改行コード混在", 4) ...
}
if ( bYes )
{
Editor.ReplaceAll(strFind, strReplace, 4);
Editor.MoveHistPrev();
}
}
}}
----
- 無警告で統一したければ行33を削除するだけでできます -- [...
- あと、ファイル名の拡張子を見て警告・統一する/しないを...
- 2.0.3.0以降ならYesNoBox()を使うようにしました -- [[971]...
#comment
ページ名: