改行コードの混在警告&統一
- ページ: Macro/投稿
- 作者: 971?
- カテゴリー: js
- 投稿日: 2009-11-25 (水) 10:39:59
メッセージ
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
| |
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 WSHShell = new ActiveXObject("WScript.Shell");
if (WSHShell.Popup("改行コードが混在しています。\n現在の入力改行コード(" + strEol + ")に統一しますか?", 0, "改行コード混在", 4) == 6)
{
Editor.ReplaceAll(strFind, strReplace, 4);
Editor.MoveHistPrev();
}
}
|
- 自動実行マクロ(開ファイル後やファイル保存前)に割り当てて使えばいいんじゃね? -- 971?
- 無警告で統一したければ行33を削除するだけでできます -- 971?
- あと、ファイル名の拡張子を見て警告・統一する/しないを判定するとか、文字コードがEUCならLFに統一するとか、好みにあわせてカスタマイズしたらいい。 -- 971?
|