xcatline - 拡張行連結
CONTENTS
最新版
- Ver.1.02 xcatline-102.lzh
概要
アーカイブ付属の解説テキスト: xcatline.txt
このマクロxcatline.macは、viのJコマンドを少し賢くしたようなマクロです。 カレント行と次行とを1つの行に連結しますが、このときホワイトスペース(半角スペース、全角スペース、タブ)によるインデントや、引用符などを考慮した、少し賢い連結をします。
このマクロは、ちまたによくある整形もののマクロのように、連結対象とすべき行範囲を自分では判断しません。純粋にカレント行と次行を連結させるだけです。
具体例
基本使用例
下図を見てください。カーソルは「あああああ」の行にあります。
ここでこのマクロを実行すると、下図のようになります。
さらに連続して実行していくと、次々に行が連結されていきます。
↓
↓
前述したように、このマクロは連結対象とすべき行範囲を自分では判断しません。上記の例で言うと、マクロを実行したときに2行目の「あああああ」から6行目の「おおおおお」までを一撃で連結して欲しい場合は、他のマクロを使用することをお勧めします。面目ありません。
その他の例
説明するより例を示した方が早いので、下記の例を見てください。いずれもカーソルは上の行にあるものとして、このマクロを実行するとどうなるかを示します。
例1: 最も簡単な例) ┌─────────────────────────────┐ |ああああああああああ | |いいいいいいいいいい | └─────────────────────────────┘ ↓ マクロ実行後 ┌─────────────────────────────┐ |ああああああああああいいいいいいいいいい | | | └─────────────────────────────┘ 例2: 行の前にホワイトスペースがある場合) ┌─────────────────────────────┐ | ああああああああああ | | いいいいいいいいいい | └─────────────────────────────┘ ↓ マクロ実行後 ┌─────────────────────────────┐ | ああああああああああいいいいいいいいいい | | | └─────────────────────────────┘ 例3: 行の前に引用符(およびホワイトスペース)がある場合) ┌─────────────────────────────┐ | # ああああああああああ | | # いいいいいいいいいい | └─────────────────────────────┘ ↓ マクロ実行後 ┌─────────────────────────────┐ | # ああああああああああいいいいいいいいいい | | | └─────────────────────────────┘ ┌─────────────────────────────┐ | > ああああああああああ | | > いいいいいいいいいい | └─────────────────────────────┘ ↓ マクロ実行後 ┌─────────────────────────────┐ | > ああああああああああいいいいいいいいいい | | | └─────────────────────────────┘ ┌─────────────────────────────┐ | >>> ああああああああああ | | >>> いいいいいいいいいい | └─────────────────────────────┘ ↓ マクロ実行後 ┌─────────────────────────────┐ | >>> ああああああああああいいいいいいいいいい | | | └─────────────────────────────┘ ┌─────────────────────────────┐ | // ああああああああああ | | // いいいいいいいいいい | └─────────────────────────────┘ ↓ マクロ実行後 ┌─────────────────────────────┐ | // ああああああああああいいいいいいいいいい | | | └─────────────────────────────┘ 例4: 箇条書きの場合) ┌─────────────────────────────┐ | ・ああああああああああ | | いいいいいいいいいい | └─────────────────────────────┘ ↓ マクロ実行後 ┌─────────────────────────────┐ | ・ああああああああああいいいいいいいいいい | | | └─────────────────────────────┘ 箇条書きは「・」の他には、下記の記号を対象としています。 ※、●、◆、★、▲、▼、■、○、◎、◇、☆、△、▽、□
制限事項
- 範囲選択に対応していません。現在カーソルがある行と次行の連結しかできず、範囲を選択して一気に連結することができません。
-
複数の引用符が重なる場合に対応していません。すなわち、下図の例:
// # ああああああああああ // # いいいいいいいいいい
に対して、// # ああああああああああいいいいいいいいいい
とはできず、// # ああああああああああ# いいいいいいいいいい
となってしまいます。もしこのマクロを使う人がいて、要望をいただくようなら対応したいと思います(パターンをちょっと工夫する程度でできると思うのですが、面倒なので放ってあります)。 -
番号付き箇条書きの仕様に悩んでいます。
(1) ああああああああああ (1) いいいいいいいいいい
に対して実行すると、(1) ああああああああああいいいいいいいいいい
となりますが、(1) ああああああああああ (2) いいいいいいいいいい
に対して実行した場合は、下図のようになります。(1) ああああああああああ(2)いいいいいいいいいい
これで良いのか悪いのか、私自身が悩んでいます。 - 箇条書きの対象記号を(ソースを直接修正することでしか)カスタマイズできません。
更新履歴
Ver.1.01 2007/10/10 linehead.defの更新に伴い、kincludeをかけ直し。 Ver.1.00 2006/3/31 初版。