■ 質問はここへ ■

1112 にジャンプ
No. 1112投稿者: Kyoko日付: 2004/01/08 20:49:39
題名 : 行頭スペース挿入マクロ

こんにちは。昨年は QX について色々教えて頂きありがとうございました。
今年もよろしくお願いいたします。

早速ですが、日本語文章で行頭に一文字分スペースを挿入するようなマクロがあるかどうか教えて頂けますでしょうか。
現在行頭にスペースがあったりなかったりと混在する文章があり、スペースの無い行頭にだけ一文字スペースを入れたい(ただし行頭が "「" の場合は無視)と考えています。量が多く手作業だとちょっと大変なので、マクロがあれば…と思った次第です。
QX ユーザーマクロヘルプをざっと探してみましたが、探し方が不十分なのか見つけられませんでした。

よろしくお願いいたします。

No. 1114 (1112へのコメント)投稿者: かぶねこ HP日付: 2004/01/09 01:36:09
題名 : Re:行頭スペース挿入マクロ

Kyoko さん、こんにちは。

QX のユーザーはむちゃくちゃ多いわけでもなさそうで、公開されている
マクロの数もそうやたらと多くはありません。また、文書編集で何を自動化
する必要があるのか、というのは、ユーザーごとにとても違うので、
そういう目的のマクロはあまり公開されていません。わたしもどのような
マクロが公開されているのかをすべて把握しているわけではありませんが、
こういった目的のマクロは「簡単すぎて公開する意味がない」ので、
すでに存在している可能性が低いと思います。

わりと単純な作業で「マクロがあれば」と思ったときは、自分でマクロを書く。
そろそろそっちに移行してみませんか。QX エディタのマクロはマクロとして
非常にわかりやすいと思います。

この掲示板は要望にこたえてマクロを作成する場所ではありませんが、
今回のような場合にはどういう手順でマクロを書くのか、を記述しますので、
参考にしてください。

わたしのサイトの「マクロで遊ぼう」もいちおう見て置いてください。
特に「マクロファイルの構造」を確認しておく必要があります。
マクロ中の各キーワードについては、マクロヘルプで意味とサンプルコードを
確認することができます。マクロヘルプのサンプルのなかには、ちょっと
変更すれば実際に使えるものが多いので、時間のあるときにお読みください。

'で始まる行は「コメント行」です。マクロコードではなく解説です。
内容がわかる場合は削除してかまいません。ただ、最初のコメント行は
マクロ内容の解説になりますので、内容は変更しても残してください。

投稿文が長くなりますので、マクロ本体(コメントだらけ)は別に投稿します。

マクロを使わなくても、「まず行頭のスペースを全部削除する」、
「すべての行頭にスペースを入れる」、「行頭にスペースと前カッコがあれば、
前カッコのみで置換」のような複数の置換によって目的の結果は得られます。

No. 1115 (1114へのコメント)投稿者: かぶねこ HP日付: 2004/01/09 01:37:03
題名 : Re^2:行頭スペース挿入マクロ

マクロ本体です。

'行頭に全角スペースがなければ挿入

proc main
	'編集中の文書がなければ終了
	if @hwnd = 0 then exit proc
	'まとめて Undo できるようにしておく
	@UndoBlock = 1
	'もし自動的に先頭から始めたければ、次のコメントアウトをはずす
	'@MoveFileTop
	'カーソル位置がファイル末尾でない限り繰返す
	do while @Code <> CODE_EOF 
		'カーソル位置コードが全角スペースでも「でもないときだけ空白挿入
		if @Code <> ` ` and @code <> `「` then @Insert " "
		'次の行頭(改行単位)に移動
		@MoveNextLineCr
	'ここまでループ
	loop
	'ここまでまとめて Undo の対象になる
	@UndoBlock = 0
end proc

No. 1116 (1112へのコメント)投稿者: 島田日付: 2004/01/10 00:13:12
題名 : Re:行頭スペース挿入マクロ

島田です。Kyoko さん、こんにちは。
お尋ねの動作は、マクロを使わなくても文字列置換で正規表現にチェックして
置換前
^\([^ 「]\)
置換後
 \1
でも、できますよ。
ただし、かぶねこさんの仰るようにマクロを自分で書けるようになるとグッと幅広がりますので、アドバイスに従ってやってみること、大いにオススメします。
今回の場合もマクロにしとくと、「えっと……正規表現、どうだったっけ?」なんて考えなくてもいいですし(笑)

No. 1117 (1116へのコメント)投稿者: かぶねこ HP日付: 2004/01/10 08:25:34
題名 : Re^2:行頭スペース挿入マクロ

島田さん、こんにちは。

>「えっと……正規表現、どうだったっけ?」なんて考えなくてもいいですし

まさにソレですね。(^_^; 今回もサクっと書けなかったので。
いっぺん枠を作ってしまうと、マクロで考えるほうが簡単だと思います。


ヘッダのみ表示
順番に表示(No. 1112 から)


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

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