■ 質問はここへ ■

前へ 次へ
No. 990 (986へのコメント)投稿者: かぶねこ HP日付: 2003/07/21 20:40:08
題名 : Re: 引用符挿入

>1、引用符の右に最初から半角スペースが入っているもの
>2、引用符のみでスペースはないもの
>
>の 2 種類を登録してすぐ使用できるようにしたいのですが、何か手段はあるでしょうか。

基本機能の「引用符挿入」は、ヘルプに「引用符の設定 で設定した引用符の1
番が使用されます」とありますので、2 種類の使い分けはできないと思います。
半角スペース入りの「> 」が 1 番に設定されていれば半角スペースも入ります。

基本機能でできないので、マクロになります。引用符の種類はこのマクロの例で
は 5 種類まで設定行を増やして対応できます。いらない設定行は削除してくだ
さい。QSPACE.MAC のアレンジです。

'引用符挿入
proc main
dim startline, endline
dim j
dim oldline
dim quote$[5]
dim i, sel, s$

i = 1
quote$[i++] = "&a. > "
quote$[i++] = "&b. >"
quote$[i++] = "&c. >>"
sel = popupmenu(quote$)
s$ = mid$(quote$[sel], 5)

if @Select = 0 then
'選択されていないときは1行だけ
@MoveBeginningLine
@Insert s$
@MoveNextLineCr
exit sub
end if
@Redraw = 0
startline = @SelectStartLine
endline = @SelectEndLine - 1
@BlockSelectEnd

@UndoBlock = 1
for j = endline to startline step -1
@Line = j
@MoveBeginningLine
oldline = @Line
@Insert s$
j = oldline
next
@XDisplay = 1
@Redraw = 1
@UndoBlock = 0
end proc

No. 991 (986へのコメント)投稿者: CINEPHILE日付: 2003/07/21 20:42:51
題名 : Re^3:「文書全選択」のマクロ記述

>引用符挿入の機能をよく使うようになり、すぐ挿入できるよう右クリックの編集メニュー
>に「カーソル行または選択行に引用符をつける」を加えました。
>その際、引用符 ">" の右に半角スペースを挿入したく引用符の設定のところでスペース
>を入れてみたものの、反応しませんでした。

 @FormatQuotationMarks を割り付けているのであれば、引用符の設定の1が
使用されるはずです。この設定はレジストリから取得することしかできない仕
様になっているようなので、変更を反映するには再起動が必要です。それでも
うまくいかないのであれば、何故でしょう?

>1、引用符の右に最初から半角スペースが入っているもの
>2、引用符のみでスペースはないもの

 マクロを使用すれば可能ですが、このあたりはもうMLの話題かもしれませ
ん。とりあえず次の投稿欄に試作品を貼り付けておきますが、API を使用して
レジストリの値を取得する操作は既存のマクロを参考にしているので、問題が
ある場合にはMLで尋いてください。
 @FormatQuotationMarks とほぼ同じ動作をしますが、シフトキーを押下して
実行すると、引用符の末尾のスペースの有無を変更します。引用符の設定はレ
ジストリから取得しているので、レジストリを使用していない環境では使用で
きません。

No. 992 (986へのコメント)投稿者: CINEPHILE日付: 2003/07/21 20:44:39
題名 : Re^3:「文書全選択」のマクロ記述

dllname "advapi32.dll"
cdeclare long RegOpenKeyEx(long,LPSTR,long,long,long);
cdeclare long RegCloseKey(long);
cdeclare long RegQueryValueEx(int,LPSTR,long,long,LPSTR,long);

const HKEY_CURRENT_USER = &H80000001
const KEY_QUERY_VALUE = &H1
const ERROR_SUCCESS = 0

proc main
	dim k$,kn$,s$,line_beg,line_end
	dim hKey as long
	dim buf_size as long
	dim kbuf$ as string[80]
	if @hwnd = 0 then exit proc
	'レジストリから引用符の設定を取得
	k$ = cformat$("Software\araken\QX\%d\Mode",@@RegistryLoadNum)
	kn$ = "Quote1"
	if RegOpenKeyEx(HKEY_CURRENT_USER,k$,0,KEY_QUERY_VALUE,varptr(hKey)) = \
		ERROR_SUCCESS then
		buf_size = 80
		RegQueryValueEx(hKey,kn$,0,0,kbuf$,varptr(buf_size))
	end if
	RegCloseKey(hKey)
	if kbuf$ = "" then
		call msgbox("引用符の設定を取得できません。",MB_ICONEXCLAMATION)
		exit proc
	end if
	'シフトキーの押下でスペースの有無を変更
	if iskeydown(KEY_SHIFT) then
		if right$(kbuf$,1) = " "then
			kbuf$ = rtrim$(kbuf$)
		else
			kbuf$ = kbuf$+" "
		end if
	end if
	@Redraw = 0:@UndoBlock =1
	if @Select then
		line_beg = @SelectStartLine:line_end = @SelectEndLine
		if @SelectEndBytePosCr > 1 then line_end = line_end+1
		@BlockSelect
		@Line = line_beg
		@MoveBeginningLine
		do while @Line < line_end
			@Insert kbuf$
			@MoveNextLineCr
		loop
	else
		@MoveBeginningLine
		@Insert kbuf$
		@MoveNextLineCr
	end if
	@Redraw = 1:@UndoBlock = 0
end proc

No. 993 (989へのコメント)投稿者: Kyoko日付: 2003/07/23 13:09:37
題名 : Re^4:「文書全選択」のマクロ記述

かぶねこさん、自動全選択&選択時だけ選択部分半角スペース挿入マクロをどうもありがとうございました。

> このマクロはサンプルマクロの QSPACE.MAC をベースにしたものですが、改造は、
> 一見したよりはむずかしいのです。というのは、現在の行のみを処理するほうが
> メインにあって、選択部分を処理するときは、1 行ずつ処理して移動しているん
> です。その 1 行ずつでサブルーチンを呼んでいます。

そ、そうでしたか…(汗)。素人考えでお願いした形になってしまい本当に申し訳ありませんでした。
proc部分を作って頂いたものに差し替え、全選択&選択部分どちらも出来る理想のマクロになりました!ツールバーに登録してワンクリックで使わせて頂きます。本当にどうもありがとうございました。m(__)m

No. 994 (990へのコメント)投稿者: Kyoko日付: 2003/07/23 13:15:15
題名 : Re^2: 引用符挿入

かぶねこさん、CINEPHILEさん、引用符に関して教えていただきましてありがとうございます。

QXの引用符設定で半角スペースが入らないという件に関し、ご指摘ありがとうございました。

自分で再度確認したところ、確かに入りました。 それにその設定画面がどうも記憶と違う…?? 自分のやったことが分からず悩んでいたところ、ようやくその時自分が設定していたのはその直前にインストールしていたQTClipの引用符だったことが分かりました!自分でも呆れる粗忽振りです…(涙)。これじゃQXで反映されなくて当たり前でした。

お騒がせして本当にすみません。それに私の勘違いの為にまたマクロを作って頂いて身の縮む思いです。本当に本当に、申し訳ありませんでした。

かぶねこさん、可愛いポップアップの出るマクロをありがとうございました!
引用符のスペースつきとスペースなし両方が欲しかった理由というのが二重引用符(?)「>>」を付ける時を想定してでしたので、それも既に入ったこのマクロは理想そのものです。早速右クリックメニューにこのマクロを登録して使わせて頂いています。本当にありがとうございました。m(__)m

CINEPHILEさんも、複雑なマクロを作っていただき申し訳ありません。今後軽々しくお願いする前に、自分で出来る範囲内で利用することを考えたいと思います。今回は二重引用符も使いたかったためかぶねこさんに記述していただいたマクロを使わせて頂こうと思いますが、ご厚意が嬉しかったです。どうもありがとうございました。m(__)m

No. 995 (994へのコメント)投稿者: かぶねこ HP日付: 2003/07/27 19:46:54
題名 : Re^3: 引用符挿入

Kyoko さん、こんにちは。

マクロコードをちょこっと書いたり、というのは、わたしの場合「マクロ遊び」
の領域を出ないもので、しかも気が向いたときしかやらないので、あまり気にせ
ずお使いください。今回の場合、QSPACE.MAC をかすかに変えただけですし。

CINEPHILE さん、いろいろありがとうございました。

No. 996投稿者: 高原清志日付: 2003/07/29 11:59:36
題名 : 印刷ルビ

失礼します。
鐸木能光さん著 「ワードを捨ててエディタを使おう 第2版」
についているCD-Romに入っている QXを使おうとしています。

http://www2k.biglobe.ne.jp/~araken/qxsmppr.htm

の 印刷(テキストエディタQXの機能紹介)にあるような
印刷プレビュー画面
にするにはどうしたらよいのでしょうか?

私の場合、

「随分遠いね。元来《がんらい》どこから登るのだ」

としか表示されません。

《がんらい》を小さな字にして、横書きなら「元来」の上に
縦書きなら「元来」の右に示した画面にしたいのですが・・・。

お教えいただけると大変助かります。

No. 997 (996へのコメント)投稿者: かぶねこ HP日付: 2003/07/29 15:45:11
題名 : Re:印刷ルビ

ルビを使用するには「メモ機能」のなかの「特殊メモ」を使います。付属のヘル
プで「キーワード」を「メモ機能」にして表示すると解説が読めます。

「随分遠いね。元来《がんらい》どこから登るのだ」の「がんらい」をルビにす
る場合、

「随分遠いね。{ルビ がんらい}元来{/ルビ}どこから登るのだ」というふう
に文章を作っておいて、印刷ダイアログの右なかほどにある「{}有効」の項目
にチェックを入れて、印刷プレビューしてみてください。

特殊メモはタグ形式が決まっていますが、打ち間違いも多いので、最初はコピー
&ペーストして文字を書き換えるほうが安心です。ルビ入力については、

ハチコウ さんの「もじもじ君」 http://hp.vector.co.jp/authors/VA010658/
よだ さんの「ルビマクロ」http://www.valley.ne.jp/~yod/sippitu.html

などのマクロもあります。

No. 998 (997へのコメント)投稿者: 高原清志日付: 2003/07/29 17:07:16
題名 : Re^2:印刷ルビ

かぶねこさん

ありがとうございました。

No. 999投稿者: 高原清志日付: 2003/07/30 10:45:26
題名 : ルビもう一度お願いします

すみません、
もう一度 ルビ について質問させてください。

元来《がんらい》どこから登るのだ

は、青空文庫の 夏目漱石 虞美人草 の最初です。

これを QTVIEW でみると 「がんらい」が
小さな字になって 「元来」の右にでます。

OXエディタ では 《がんらい》 は
{ルビ がんらい}元来{/ルビ}
と直さないと
「がんらい」は ルビには ならないのでしょうか。

青空文庫の ルビつき作品 を
QTVIEW が 見せるような形で

手を加えることなく

OXで印刷することは
できないのでしょうか?

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

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


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

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