■ 質問はここへ ■

前へ 次へ
No. 987 (983へのコメント)投稿者: Akira日付: 2003/07/21 13:18:15
題名 : Re^2:Shift + Enterを行うと、行末に<br>を追加して改行の設定方法は?

>http://0ban.com/forum/read.cgi?f=22&no=87&c=1
>
>で簡単に触れていますが、これでいいでしょうか。

早速のご指導、有り難うございます。
しかし、昨日までは上手くいきませんでした。何度かトライし、リセットで再立ち上げ、ファイルのダウンロードのし直し等などもしてみました。でも、従来どおりのただの改行にしかならない状態でした。

   キー操作   定義名 機能説明
   s  enter   改行
   s  enter   "<br>" 
 本日さらに見直したところ、「キー定義設定(K)」画面では上記のように標示されていました。上位行の「 s  enter   改行」を削除してみたら、機能するようになりました。
 有り難うございました。助かりました。

No. 988 (987へのコメント)投稿者: かぶねこ HP日付: 2003/07/21 18:33:26
題名 : Re^3:Shift + Enterを行うと、行末に<br>を追加して改行の設定方法は?

なるほど、設定に重複があると確かに有効になりませんね。

自力解決で何よりです。報告ありがとうございました。

No. 989 (986へのコメント)投稿者: かぶねこ HP日付: 2003/07/21 19:08:28
題名 : Re^3:「文書全選択」のマクロ記述

Kyoko さん、こんにちは。

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

proc main を次のもので置き換えてみてください。編集中のファイルの先頭から
末尾まで処理するはずになっています。別件はわけます。

proc main

dim startline, endline
dim j
dim oldline

if @Select > 0 then '選択範囲があるとき
@Redraw = 0
startline = @SelectStartLine
endline = @SelectEndLine - 1
@BlockSelectEnd

@UndoBlock = 1
for j = endline to startline step -1
@Line = j
@MoveBeginningLine
oldline = @Line
addspace1
j = oldline
next
@XDisplay = 1
@Redraw = 1
@UndoBlock = 0
exit proc
end if '選択範囲がある場合、ここまで

@UndoBlock = 1 'まとめて UNDO できるようにしておく
@Redraw = 0 '画面出力停止(スピードを稼ぐ)
@MoveFileTop '先頭に移動
do while 1 'exit 条件が合致するまで繰り返し
addspace1
if @ScrLineToCrLine(@Line) = @ScrLineToCrLine(@LastLine) then exit do
@MoveNextLineCr
loop
@Redraw = 1
@UndoBlock = 0
end proc

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の機能紹介)にあるような
印刷プレビュー画面
にするにはどうしたらよいのでしょうか?

私の場合、

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

としか表示されません。

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

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

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


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

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