■ 質問はここへ ■

前へ 次へ
No. 723 (722へのコメント)投稿者: かぶねこ HP日付: 2002/12/15 01:04:41
題名 : Re^5:選択方法と整形方法

>こうなると、「編集」-「全部選択」-「編集」-「整形」-「整形(改行をい
>れる)」までをワンクリックで出来るような設定が出来ないものかと思って
>しまうんですが、マクロで作成する事は出来るでしょうか?

そうです、いくつかの作業を連続して実行したいときは、マクロです。マクロに
は「じぶんで書くマクロ」と「動作を記録して作るマクロ」があり、後者を「キ
ーマクロ」と言って、メニューの「マクロ」の下にキーマクロ関連のコマンドが
入っています。

作業の連続や繰り返しは、このキーマクロでいつでも記録して、それをあとで実
行させることができます。「何回繰り返して実行する」というのも「キーマクロ
N回実行」というコマンドで可能です。

でも、書くほうのマクロも基本を憶えればわりと簡単です。たとえば、「全選択」
してから「整形改行入れる」というのを実行するには、こうなります。

'基本バージョン
proc main
@BlockSelectAll '全選択
@FormatCr '整形(改行を入れる)
end proc

こんなにシンプルなのでも立派にマクロです。こういうのがマクロの出発点です
ね。さらに便利に、整形改行を入れてもカーソル位置は不変にするには、カーソ
ル位置を記憶して、作業してからカーソル位置を復帰します。

'カーソル位置復帰バージョン
proc main
dim pos, line, top '使用する変数を宣言(ここでは全部数値の変数)
pos = @XDisplay 'カーソルの桁位置を記憶
line = @Line 'カーソル位置の表示行を記憶
top = @Line - @TopLine 'カーソル位置の表示画面上端からの行数を記憶
@BlockSelectAll '全選択
@FormatCr '整形(改行を入れる)
@Line = line 'カーソルのあった行に戻る
@Topline = @Line - top 'カーソル位置の表示画面上端からの位置を復帰
@XDisplay = pos 'カーソルの桁位置を復帰
end proc

QX は基本機能も豊富ですが、マクロも強力なわりに読んだり書いたりするのが
わかりやすい言語ですので、ぜひいろいろやってみてください。また、他のかた
が作ったマクロを解読するには、コマンドの意味をすぐ調べられるように、
http://homepage1.nifty.com/kabuneko/qx/sub/macro01.htm
のような設定をすると便利です。

次へ
現在の既読番号は 0  既読を


メールアドレスを表示するにはURLの後ろに &m=f23508f0 をつけてください。
ユーザー フォーラム一覧

http://www2k.biglobe.ne.jp/~araken/
http://0ban.com/araken/