「拡張自動選択」の版間の差分
バージョンの表記を修正 |
空行と改行の除去 |
||
| 3行目: | 3行目: | ||
Mery Ver 3.0.1 以降の '''マルチカーソル/複数選択範囲''' に対応 | Mery Ver 3.0.1 以降の '''マルチカーソル/複数選択範囲''' に対応 | ||
== ちょっと便利な自動選択拡張機能 == | == ちょっと便利な自動選択拡張機能 == | ||
<u>「選択範囲がない」状態からこのマクロを実行</u>すると「'''拡張自動選択'''」モードになります。 | <u>「選択範囲がない」状態からこのマクロを実行</u>すると「'''拡張自動選択'''」モードになります。 | ||
: 1. 「'''キャレット位置の単語'''」の自動選択 (通常のダブルクリックと同等) | : 1. 「'''キャレット位置の単語'''」の自動選択 (通常のダブルクリックと同等) | ||
: 2. 「'''同一記号の繰り返し部分'''」の自動選択 | : 2. 「'''同一記号の繰り返し部分'''」の自動選択 | ||
:: 半角記号 <code>#####</code>、全角記号 <code>※※※※※</code>、全角空白 <code> </code> など、おなじ記号が連続する部分を範囲選択します。 | :: 半角記号 <code>#####</code>、全角記号 <code>※※※※※</code>、全角空白 <code> </code> など、おなじ記号が連続する部分を範囲選択します。 | ||
| 21行目: | 19行目: | ||
: ⇒ 範囲選択したらマクロ終了 | : ⇒ 範囲選択したらマクロ終了 | ||
: ※ '''3''' と '''5''' の機能は、ソースコード内の設定項目の値を変更すると利用できます(初期値:無効)。 | : ※ '''3''' と '''5''' の機能は、ソースコード内の設定項目の値を変更すると利用できます(初期値:無効)。 | ||
=== 注意事項 === | === 注意事項 === | ||
*「同一記号の繰り返し」の自動選択機能は、たまに "ダブルクリックで同じ記号2文字選択できちゃった" が発生するのと同じレベルの頻度で失敗することがあります。 <!-- | *「同一記号の繰り返し」の自動選択機能は、たまに "ダブルクリックで同じ記号2文字選択できちゃった" が発生するのと同じレベルの頻度で失敗することがあります。 <!-- | ||
* 「日付」の自動選択は、<code>2020年01.01</code> や <code>1900/1.5</code> のような区切り文字の形式が不揃いな「日付っぽい文字列」にも誤爆して範囲選択します (もともと、このマクロをあえてそういう文字列上で実行する必要性がないので修正しません)。 --> | * 「日付」の自動選択は、<code>2020年01.01</code> や <code>1900/1.5</code> のような区切り文字の形式が不揃いな「日付っぽい文字列」にも誤爆して範囲選択します (もともと、このマクロをあえてそういう文字列上で実行する必要性がないので修正しません)。 --> | ||
* <span style="color:#c00;">URL 文字列上(Mery の標準機能で下線のついた URL 部分)で実行した場合は、URL が範囲選択され、URL を勝手にブラウザで開かれることがあります。</span> | * <span style="color:#c00;">URL 文字列上(Mery の標準機能で下線のついた URL 部分)で実行した場合は、URL が範囲選択され、URL を勝手にブラウザで開かれることがあります。</span> | ||
== 今日の日付に変換 == | == 今日の日付に変換 == | ||
<u>「日付」の文字列を範囲選択した状態からこのマクロを実行</u>すると「'''今日の日付'''」モードになります。 | <u>「日付」の文字列を範囲選択した状態からこのマクロを実行</u>すると「'''今日の日付'''」モードになります。 | ||
: <code>2001年1月1日</code>、<code>2002-2-2</code>、<code>2003/3/3</code>、<code>2020.05.31</code> のような「日付」の文字列を「今日の日付」に変換しますので、このマクロを '''連続実行''' することで キャレット位置の「日付を自動選択」 ⇒ 「今日の日付に変換」 ができます。 | : <code>2001年1月1日</code>、<code>2002-2-2</code>、<code>2003/3/3</code>、<code>2020.05.31</code> のような「日付」の文字列を「今日の日付」に変換しますので、このマクロを '''連続実行''' することで キャレット位置の「日付を自動選択」 ⇒ 「今日の日付に変換」 ができます。 | ||
; 「日付」の判定基準 | ; 「日付」の判定基準 | ||
:* 「年」は、 <code>1900</code> - <code>2099</code> の範囲内の4ケタの半角数字 | :* 「年」は、 <code>1900</code> - <code>2099</code> の範囲内の4ケタの半角数字 | ||
| 40行目: | 36行目: | ||
:* 「日」は、 <code>1</code> - <code>31</code> または <code>01</code> - <code>09</code> の範囲内の半角数字 ("小の月" を考慮しない) | :* 「日」は、 <code>1</code> - <code>31</code> または <code>01</code> - <code>09</code> の範囲内の半角数字 ("小の月" を考慮しない) | ||
:* 年月日の数字の区切りは、<code>-</code> <code>.</code> <code>/</code> のいずれかの記号×2回、または <code>年</code> <code>月</code> <code>日</code> | :* 年月日の数字の区切りは、<code>-</code> <code>.</code> <code>/</code> のいずれかの記号×2回、または <code>年</code> <code>月</code> <code>日</code> | ||
: ※ <code>2020年01.01</code> や <code>1900/1-5</code> のように区切り文字の形式が混在した文字列からは変換しません。 | : ※ <code>2020年01.01</code> や <code>1900/1-5</code> のように区切り文字の形式が混在した文字列からは変換しません。 | ||
:※ 和暦の年号や全角数字で記述された日付、<code>20200601</code> のような区切り文字のない半角8ケタの数値は対象外です。 | :※ 和暦の年号や全角数字で記述された日付、<code>20200601</code> のような区切り文字のない半角8ケタの数値は対象外です。 | ||
:※ <code>2001-02-31</code> のような実在しない日付でも「今日の日付」に変換されます。 | :※ <code>2001-02-31</code> のような実在しない日付でも「今日の日付」に変換されます。 | ||
; 変換後の「日付」の形式 | ; 変換後の「日付」の形式 | ||
: 「区切り文字」の部分は変換前とおなじままになりますが、<span style="color:#c00;">月と日の数字部分はつねに <code>2020/06/01</code> のようにゼロ埋めした2ケタに変換されます。</span> | : 「区切り文字」の部分は変換前とおなじままになりますが、<span style="color:#c00;">月と日の数字部分はつねに <code>2020/06/01</code> のようにゼロ埋めした2ケタに変換されます。</span> | ||
== 1行コメントアウト/アンコメント == | == 1行コメントアウト/アンコメント == | ||
<u>末尾改行を含めずに「論理行全体」(1行) を範囲選択した状態からこのマクロを実行</u>すると「'''1行コメントアウト/アンコメント'''」モードを利用できます(ソースコード内の設定項目の初期値:無効 <code>commentOut = false</code> )。 | <u>末尾改行を含めずに「論理行全体」(1行) を範囲選択した状態からこのマクロを実行</u>すると「'''1行コメントアウト/アンコメント'''」モードを利用できます(ソースコード内の設定項目の初期値:無効 <code>commentOut = false</code> )。 | ||
: 行頭に <q><code>> </code></q> のようなコメントマークを付けたりはずしたりできますので、このマクロを '''連続実行''' することで 「論理行全体を自動選択」 ⇒ 「1行コメントアウト/アンコメント」 ができます。<br> ※ 設定項目 <code>selectLine = 0</code> のとき | : 行頭に <q><code>> </code></q> のようなコメントマークを付けたりはずしたりできますので、このマクロを '''連続実行''' することで 「論理行全体を自動選択」 ⇒ 「1行コメントアウト/アンコメント」 ができます。<br> ※ 設定項目 <code>selectLine = 0</code> のとき | ||
: ※ 「1行コメントアウト」は、範囲選択なしの空行でも実行できます(コメントマーク挿入)。 | : ※ 「1行コメントアウト」は、範囲選択なしの空行でも実行できます(コメントマーク挿入)。 | ||
: ※「[[コメントマーク付け外し]]」マクロなどから「編集モードによるコメントマークの定義切替」のコードを移植することもできます。 | : ※「[[コメントマーク付け外し]]」マクロなどから「編集モードによるコメントマークの定義切替」のコードを移植することもできます。 | ||
== ソースコード == | == ソースコード == | ||
; ダウンロード >> 「[[ファイル:ちょっと便利な拡張自動選択.zip]]」(アイコン入り) | ; ダウンロード >> 「[[ファイル:ちょっと便利な拡張自動選択.zip]]」(アイコン入り) | ||
(最終更新:2020/07/01) | (最終更新:2020/07/01) | ||
| 368行目: | 358行目: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== メモ == | == メモ == | ||
スポンサーリンク