Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // - 糸くす~------------------------------------- Copyright(C)2015-2018 inuuik -
- // 改行と行頭の空白削除(Shift+Alt+Z).js
- //
- // 選択範囲の行頭にある空白文字とすべての改行を削除。
- // 選択範囲がなければその行から削除。
- // 選択範囲の最後の改行は削除しない。
- //
- // 置換
- // 検索する文字列
- // /(?:(?:\n|^)[ \t\u3000\u2028\u2029\f\v\xa0]+)|(?:\n(?!$))/g
- // 置換後の文字列
- //
- //
- // Mery の検索オプションと検索履歴に影響しない。
- //
- // revised inuuik 2015-12-18 新版
- // revised inuuik 2018-02-07 改行と行頭の空白削除.js から派生
- // - ------------------------ --------------------------------------------------
- {
- var s = document.selection;
- var cp = s.GetActivePos();
- var bp = s.GetAnchorPos();
- var diff;
- var t, tt;
- Redraw = false;
- if (s.IsEmpty) { // 選択範囲がなければ…
- s.StartOfLine(false, mePosView); // 行頭から行末まで選択
- s.EndOfLine(true, mePosView);
- }
- if (! s.IsEmpty) {
- t = s.Text;
- tt = t.replace(/(?:(?:\n|^)[ \t\u3000\u2028\u2029\f\v\xa0]+)|(?:\n(?!$))/g, "");
- diff = t.length - tt.length;
- cp -= diff;
- if ((cp + diff) === bp) {
- bp = cp;
- }
- s.Text = tt;
- s.SetAnchorPos(bp);
- s.SetActivePos(cp, true);
- }
- Redraw = true;
- }
- // - ------------------------ --------------------------------------------------
Add Comment
Please, Sign In to add comment