一括表示

− 野ざらし言 −

[2943] hisdisp.def

文太 2008/12/08(Mon) 00:25
 たまにはマクロは上げてみたり。(^^)v
 こういうのが悩みなくサクっとできあがると嬉しいですねぇ。30分のマクロ
遊びでα波ビビビの気分転換。
 ファイラで pa に入れたおいたメモが見たかったのです。駄目じゃん、そんな
ことできないなんて、というのが作成動機。

 何の工夫もなく全天候型なのですが、もし何かあればご指摘ください>オール。
 m(__)m


=== hisdisp.def by Bunta ===;display 74 bytes of histbuf
* Macro
50 ^^ "hisdisp"

	&m("  display the histbuf items")
;===init work buffer
	t=pq..134,			;tmpbuf
	i-, (80){t.i==0, i++,}
;===menu
	!01 (r<0) ? {&m("").}
	(r)>?{(p=ps) (p=pw) (p=pf) (p=px) (p=pa) (p=pr)}
;===make title
	&Sm(t,pm+2,2) t..1=' :',
	t+=4,			;*** top adjust
;===transfer
	i-,
:a	(i==73)? >b			;display 74 bytes
	(p.i)? {t.i=p.i,} ? {t.i='・',}
		i++, >a
;===2 nuls cut & disp
:b	t-=4,			;*** top readjust
	((t+77)..0-,
	&m("%s",t)

* P
1	"hdsp",4,6
	"S PS"
	"W PW"
	"F PF"
	"X PX"
	"A PA"
	"R PR"

*

[2944] Re: hisdisp.def

めざら 2008/12/08(Mon) 19:33
[2943]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/index.html
 マクロの書き込みありがとうございます。

 半角中黒が掲示板の制限で全角に置換されちゃうの御免。

 さて,メニューを出すということはラインバッファから出るので,一時バッファにはラインバッファも使えますね。そうすると欲が出てきて,いきなりみんな中身を表示しちゃえばなどと思ったりもしますが,敢えてそれをしないというのもひとつの思想ですね。

 m.gann師の history2.def がモード感知で,ファイラーでは同様にバッファのメニューを出して表示させるようになっています。懐かしい。

 そういった既存のマクロではなく,自分で,しかも30分で作ってしまえるという境地はVZマクロならではだと思います。

 マクロは楽しいですよね。

 昨夜寝床でアレコレしていたのがこんな1行野郎なやつ。
1 ^A "" (ks&1)??{ #a . }
&s mr[-, #16 (((mg..-3).-1)^=$80, #u mr], #?

 コマンド拡張型マクロの一種です。通常の ^A だと長い空白があってもその前の単語の先頭に飛びますが,シフト起動すると \[BS] と同じ範囲で移動するというものです。View Mode でも使えるのがキモと。

 これに至る途中で,こんなのも。
1 ^A "" ?. #?
(ks&1 && cp.-1==' ')??{ #a . }
r-, (-1){ (cp.-r++!=' ')?{ cp-=r--, }} #?

 これだと,タブや全角空白に対応できないのでさっさと諦めました。
 小物大好き。

[2946] #aの改造

文太 2008/12/09(Tue) 21:11
[2944]へのコメント
めざらさん

>  半角中黒が掲示板の制限で全角に置換されちゃうの御免。
 なりますねぇ。ま、使う人は限られたいるので、各々対処。

>  さて,メニューを出すということはラインバッファから出るので,
> 一時バッファにはラインバッファも使えますね。
 興味深い(?)アドバイスありがとうございます。うーん。

>  そうすると欲が出てきて,いきなりみんな中身を表示しちゃえばなどと思った
> りもしますが,敢えてそれをしないというのもひとつの思想ですね。
 思想です(汗)。でも、欲は出しません…。

>  m.gann師の history2.def がモード感知で,ファイラーでは同様にバッファの
> メニューを出して表示させるようになっています。懐かしい。
 ありがとうございました。コメント1つ1つに、うーん、している。
 history2.defを知りませんでした。どこが違うんだ? goto 過去ログ。
 でも、やはりpaは出ませんね、そんなもの見てどうする?

>  そういった既存のマクロではなく,自分で,しかも30分で作ってしまえる
> という境地はVZマクロならではだと思います。
 コピペな部分があるから30分ですが、その前はそれなりに。当たり前ですけ
どね。
 もっとも、アセンブラで '0' と 'O' を間違えているのを真剣に調べて3時間
近くかかった経験があるので、やっぱ、Vzマクロ、好き、ってなっちゃう。

>  マクロは楽しいですよね。
 楽しいですねぇ、やっぱり。ああ、楽しい。困っちゃう。

>  昨夜寝床でアレコレしていたのがこんな1行野郎なやつ。
 ここからはゆっくり解読してみます。^Aは置換になっていて、その手のダイア
モンド的なのは、えらく不得意でして…。^QAが左一語移動。使ってない…。
 しかし、うげ、何だこれは?
(間)
 だいたい解読できました。イメージだけ? 削除バッファの構造とビット演算
まで。ただ「分かりましたよ」とまで行けず。文字タイプの判別が違う、という
ことですよね? 何が違うのでしょう??? お暇なときに解説をお願いします。

aaaaaaaaaaa		   bbbbb		;space,tab,zenkakuspaceあり
<---------<-----------------<---------
<---------------------------<---------

 という動きの違いですよね。

 削除バッファ構造の名解説は、ココ

> 9846/19846 GFB01755  耳XXX         RE:削除バッファから1文字取り出し
> 15)   02/05/26 07:19

 しかし、みんな削除バッファ好きですよねぇ…。僕はVzの基本コマンドが使
いこなせてないんだ…。
 DELBUF.def by amuno を入れてはいるのですが…。ゴミ捨て場…。見たくない…。
全部かまぼこ状態。

 ちらっと覗いたり…。
CT_SPC		equ	2		; 00h-20h,8140h		;ledit.asm
 さ、さすがだ。日本人のためのエディタ。全角スペースには驚いたので。
 ctの2じゃん。(^^ゞ

[2948] 脱線での確認願い(太り文字)

文太 2008/12/10(Wed) 12:59
[2946]へのコメント
 XPで色々なダンプをすると醜いことになるという経験を昔からしています。
で、昨日も同じ経験をしたので、「しょうがないのだ」という確認をお願いした
いのです。

 手順:

 ・ 捨ててもよいファイルの編集画面で、
 ・ インスタント窓に、
&o($01)&o($80)
   を入力する。
 ・「^A□」(□は半角)。
 ・フォントが変わったみたいに字が太る。

 エスケープ・シーケンスと思われているのかと思い、pansi.comを外しても同じ現象。
 オリジナルvz.comでも同じ。
 モバだと「80h」は出力されているが、字は醜くでぶりはしない。

 仕方ないのでしょうか? >オール?

(参考)
=== Macro Tmp by Bunta ===;
* Macro
50 ^^ "mactest"
	?.
	h=$01,
	i=$7f,			;半角□の「80h」が怪しい模様
:a	(i==$8f)? >c		;] と表示される場合もある。
	&o(h)&o(i) #m
	i++, >a
:c	&m("fin") .
*

[2951] Re: 脱線での確認願い(太り文字)

めざら 2008/12/12(Fri) 08:11
[2948]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/index.html
よくは分かりませんが,フォントのせいでしょうか。
TerminalからMSゴシックなんかに変更すると普通に見えるようです。

Terminalって,サイズ指定によっては変な表示になりますが,それと関係があるのやらないのやら。実際のところは分かりませんが…。

80Hが制御文字みたいな働きをするとしたら,前置しないとおかしいですし。

[2952] Re^2: 脱線での確認願い(太り文字)

文太 2008/12/13(Sat) 00:44
[2951]へのコメント
めざらさん、確認ありがとうございました。

> TerminalからMSゴシックなんかに変更すると普通に見えるようです。

 おお、MSゴシックだと随分よいですね。
 Terminalってなんでしたっけ? うちのXPはラスタフォントになっていました。
今、MSゴシック。Vzでもいいですね。よっこらしょ、とたまたま足下に転がってい
たW95なマシンで、Vz窓のプロパティをみたら、そうそう、TrueTypeフォント
というのが見慣れたやつでした。Terminal、どっかで見た記憶なのですけど。

> 80Hが制御文字みたいな働きをするとしたら,前置しないとおかしいですし。
 そうなりますか。ですよね。それでも後ろ側も変ですよね。

[2954] Re^3: 脱線での確認願い(太り文字)

めざら 2008/12/13(Sat) 05:53
[2952]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/index.html
>  Terminalってなんでしたっけ? うちのXPはラスタフォントになっていました。

 XP のラスタフォントは Terminal になっていると思います。
 Terminal はその名のとおり UNIX の Terminal で使われている等幅フォントを摸したものかと思ったりもするのですが,ビットマップで色々サイズがあるので,以前システムフォントが使えなかった幅制限のある場面で小さなフォントとして使っていました。
 …と言っても,何のことか分からないですよね。以前,MS UI ゴシック嫌いであらゆる場面(画面のプロパティのデザインね)表示フォントを System に変更していたのですが,アプリによってはフォントのサイズが大きすぎてメニューなどで見えない部分があったりしたので,色々試行錯誤していたのです。XP メインになってからは Tahoma にしていますけど。
 DOS 窓以外で Terminal 使うと,相当間延びして見えますよね。

> > 80Hが制御文字みたいな働きをするとしたら,前置しないとおかしいですし。
>  そうなりますか。ですよね。それでも後ろ側も変ですよね。

 いろいろ実験してみたら,80H のある表示行が変になるようですね。しかもカーソル位置によって表示が変わるため,ぐにゅぐにゅ伸縮して変なかんじ。長い行の途中に埋め込むと表示行だけ変です。VZ の版に依存しているわけでもないようです。

 ふと思ったのですが,なんで 80H なんて出力したん? (笑)

[2956] 80HとMS-DOS窓フォント@XP

文太 2008/12/13(Sat) 23:27
[2954]へのコメント
めざらさん、

>  XP のラスタフォントは Terminal になっていると思います。
 色々と解説ありがとうございました。
 MS  ゴシックはですね、行ブロックすると見た目だけ行・行の一部分・改行文
字が2重化されたりするのですが(今日も再現した)、なりませんか? 気持ち
悪くてダンプするとき以外は、やはり Terminal にしました。

> VZ の版に依存しているわけでもないようです。
 はい、これは確認しました。オリジナルでも同じです。

>  ふと思ったのですが,なんで 80H なんて出力したん? (笑)
 え? そんなの話の流れからして、削除バッファの方向ビットを見たに決まっ
てるじゃないですか。


> 改行を含んだブロックは行末で切れちゃうじゃないですか。そんなとき,
> スタックから ps に欲しい! って渇望していた
 なるほど。しかしそういう風に改行を含んだ検索文字列の設定自体への必要場
面が、どうも。一つには、僕がグレップのように行指向であるということにより
そう。改行文字を入れた検索は、行頭か行末に改行がある場合がほとんどみたい
です。

>  各バッファの先頭文字列を全部表示,削除バッファもプロパティの同じものを
> まとめる方向で。
 ああ、プロパティって方向ビットのこと…。

>  バッファの名称だけ出しても,何が入っているか見えないのでは不安ですよね。
 メニューですか。 是非是非。 これは全天候型だとかなり有用そうですね。pa
とか pr とか。おいおい。でも是非。個々にはやれても、そういう総合型は有用
です、間違いなく。

[2963] Re: 80HとMS-DOS窓フォント@XP

めざら 2008/12/15(Mon) 09:04
[2956]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
>  MS ゴシックはですね、行ブロックすると見た目だけ行・行の一部分・改行文
> 字が2重化されたりするのですが(今日も再現した)、なりませんか? 気持ち

 そうですか? うちのはそういう傾向はないですかねぇ。あまり色々な環境で試したわけでもありませんが,過去,そういう経験は記憶にないのですが…。(Win98SE で WIDETEXT を愛用していたときは色々なフォントサイズで行数を変えた VZ をいくつも用意していました。)OS の問題でしょうか。T60なら一緒だと思いますが。

>  え? そんなの話の流れからして、削除バッファの方向ビットを見たに決まっ
> てるじゃないですか。

 あ。(^o^; そうでしたね。XP でダンプとおっしゃっていたので,てっきり dump とか exdeb などで C の中間ファイルをダンプでもしたのかなと。最近,仕事でもこんなふうに話が通じないことが多いです。特に話を急がせようと結論を想像して言ってみると全然違っていたりして,それも大抵の場面で思い違いしていて,自分でも嫌になりますね。歳をとってせっかちになって,しかも空回りしているの図。

> 一つには、僕がグレップのように行指向であるということによりそう。

 なるほどねぇ。文太さんは根っからの TS 人種だったのですね。
 自分が VZ を使い始めた頃って,正規表現も SED も知らず,Wgrep なんかも単に圧縮ファイルの中も検索してくれる便利な道具としてしか使ってなかったから。

 文太さんは行指向だけれど段落を整形するのですね。自分と逆だなぁ。

>  メニューですか。 是非是非。 これは全天候型だとかなり有用そうですね。pa
> とか pr とか。おいおい。でも是非。個々にはやれても、そういう総合型は有用
> です、間違いなく。

 ありがとうございます。
 でも多分,文太さんには不要の反物のような気がするので,でがらしさんへのコメントにしよう。(笑)

[2971] Re^2: 80HとMS-DOS窓フォント@XP

文太 2008/12/15(Mon) 18:40
[2963]へのコメント
めざらさん

> そうですか? うちのはそういう傾向はないですかねぇ。
 うーん、そうなんだ。ローカルに個人的に対処します。シクシク。

> T60なら一緒だと思いますが。
 いえ、文太マウス2台においてです。T60は(まねっこ文太)、近々試して
みます。やっぱうるさくてもデスクトップが好き。

> C の中間ファイルをダンプでもしたのかなと。
 そっちはじぇんじぇんまだです。

>  特に話を急がせようと結論を想像して言ってみると全然違っていたりして,自
> 分でも嫌になりますね。歳をとってせっかちになって,しかも空回りしているの
> 図。
 激しく同意してしまう。やれやれ。ま、そんなものなんでしょう。二人だけでは
ないですよ。二人目がいましたので(笑)。と自らを慰めるの図。

>  なるほどねぇ。文太さんは根っからの TS 人種だったのですね。
 ってわけでもないのですが、それでも、僕はVzを外から眺めたがりますね、傾向
として。なぜだろう?

>  文太さんは行指向だけれど段落を整形するのですね。自分と逆だなぁ。
 考えてます。ログをグレップするとき、「キーワード切れてたら嫌だからこの
程度で」とやって、要らないのを拾ってますので。
 ただ、引用なんですよ、掲示板にしろメールにしろ、たぶん。

>>  メニューですか。 是非是非。
> でも多分,文太さんには不要の反物のような気がするので,
>でがらしさんへのコメントにしよう。(笑)
 告白です。昨晩、GetBuffs.defを使いました。「あれだ!」的場面があって、すぐ
さまここの掲示板に再度直行。


【名前】
    atoi, atol, atof - 文字列から数値への変換

↓

【名前】    atoi, atol, atof - 文字列から数値への変換

なんて置換の場面。多謝。m(__)m

 おお、きたきた。カスタマイズが簡単、というのも\(^_^)/
 たぶん、でがらしさんにぴったり。どんぴしゃで来るからすごいなぁ。

[2975] Re^3: 80HとMS-DOS窓フォント@XP

めざら 2008/12/16(Tue) 06:12
[2971]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
あれ? もしかしてお役に立ったのでしょうか。

>  うーん、そうなんだ。ローカルに個人的に対処します。シクシク。

 対処はわかりませんが,うちのT60も呪いが出ました。
 ずーっとスクロールするくらいブロック選択してゆくと,「あう?行が二重?三重??うわ七重??」。こういったことでしょうか。さすがにこれでは範囲指定に自信が持てないので,ラスタフォントに戻しました。

>  ただ、引用なんですよ、掲示板にしろメールにしろ、たぶん。

 まぁ,適当に編集して'>'を途中に入れるだけというか,同じ「手動改行」なら別に長かろうが折り返されようが引用は引用ですけどね。blockquateで括ってありますから。
連続する空白文字が含まれていない場合は整形済みである必要はないと思うのですけどね。別に押し付けるわけではありませんが。

[2979] Re^4: 80HとMS-DOS窓フォント@XP

文太 2008/12/16(Tue) 20:42
[2975]へのコメント
めざらさん

>  対処はわかりませんが,うちのT60も呪いが出ました。
 でましたか(笑)。一人じゃないっていいものですね。あはは。

>  まぁ,適当に編集して'>'を途中に入れるだけというか,同じ「手動改行」なら
> 別に長かろうが折り返されようが引用は引用ですけどね。blockquateで括ってあ
> りますから。
 この辺の仕組みは分からないのですが、掲示板的見栄えの好きずきもあって。

[2945] Re: hisdisp.def

文太 2008/12/08(Mon) 22:13
[2943]へのコメント
めざらさん、すいません、レスは明日に。m(__)m

=== Hisdisp.def by Bunta ===;display 73 bytes of (hist)buf
見えるバッファの種類を(無意味に)増やしました。>そんなに見たければ専門の
道具、buftourとか使ったら? は、はい。でも元々は研究用でなく実用でして…。
シフトでバッファ本体をクリアしてしまいます。tmpbuf以外では使うべきではないで
しょう。こっちは色々慎重にお願いします。意味わかってやってくださいね。
要らないところや計算間違い、「=」と「==」を間違えるなどのバグを潰しました。
キャー(>_<) −−実は無害だったのだけど。
logtblは個人的用途です。Bvが64*2以上ないと知らないよ(何だか恐そうだなぁ。
いえ、覗くだけなら=シフトでないならコピーを表示してるだけですから無害です)。

【注意】掲示板の仕様により「・」A5hが「・」8145hになっていると(なります)
バッファの中身が「EEEEE」とか表示されます。★の箇所を調べてみてください。

* Macro
50 ^^ "hisdisp"

	k=ks&1,
	(k)?{&m("       !!!!!  CLEAR the (hist)buffer !!!!!")}
	   ?{&m("  display the (hist)buf items")}

;===get work jimae buffer
	&00				;<t>

;===menu
	!01 (r<0) ? {&m("").}
	(r)>?{	(ps) (pw) (pf) (px) (pa) (pr) (pu) 
 		(pq..145) (pq..145+64) 
  		(pq..134) (pq..135) (pq..136) (pq..149) 
  		(pq..142) (pq..143)
		} p=mg..0,	;thanx > m.gann & mezala. Beautiful!
				;logtbl,+64,(BV) vzlog buffer
	  	 		;tmpbuf,2,3,4,
	  	 		;schstr,rplstr
;===make title
	&Sm(t,pm+2,2) t..1=' :',
	t+=4,			;*** top adjust

;===shift branch
	(k)?? {i-, >a}

;===buffer clear
:b	(p==pr || p==pq..145 || p==pq..145+64)? n=64, ? n=80,
	i-, (n){p.i-, i++,}

;===transfer
	i-,
:a	(i==73)? >c			;display 73 bytes
	(p.i)? {t.i=p.i,} ? {t.i='・',}	;'E'!!★
		i++, >a

;=== nul cut & disp
:c	t-=4,			;*** top adjust
	((t+77).0-,
	&m("%s",t) .

00:	t=3+$,."$[80]"

* P
1	"hdsp",4,15
	"S PS"
	"W PW"
	"F PF"
	"X PX"
	"A PA"
	"R PR"
	"U PU"
	"B B1"
	"V B2"
	"1 T1"
	"2 T2"
	"3 T3"
	"4 T4"
	"5 SC"
	"6 RP"

*

[2947] Re^2: hisdisp.def

めざら 2008/12/10(Wed) 06:33
[2945]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/index.html
そこまでやるなら,スタックもいかがですか?
高橋版以降ならものすごく簡単に書けますよ。

スタックの最初のアイテムをどこでも出力するサンプル(名無し)
#if 0
全天候型スタック1行出力
#endif
* mad for vz!
1 ^^ ""
        a=pn..-26,                      ;tmpbuf4
        (kp)??.                         ;スタックは空か?
        dz[=kz,
        l=kp..-1,                       ;l:length
        t=kp-3-l,                       ;t:top
        dz],
        (l>80)?l80,                     ;サイズ制限
        &Sp(a,"%*Fs",l,t,kz)            ;サイズ分転送
        &Sf(a,$0d) r..0-,               ;行末を終端にする
        &?("%s",a)
        .

 文字数制限しているところに漢字の1バイトがぶつかって泣き別れになると,
ヌルとセットで出力されるため工夫が必要ですが,その工夫の部分というのは
個々の感性に依存すると思うので書きませんでした。そもそも制限が80字とは
バッファに対して短すぎますけど。


> キャー(>_<) −−実は無害だったのだけど。

 気づくだけ凄い。わたしは実行しても気づかなかった。
 ヌル潰しのところなのですね。

> 	(p.i)? {t.i=p.i,} ? {t.i='・',}	;'E'!!★

 掲示板の仕様で半角カナが使えない場合は,値で書いてもいいですね。
 t.i=$a5, でよいかと。

> 	"U PU"

 ここが気になるようになったら,マクロおたくまっしぐら。(笑)

[2949] Re^3: hisdisp.def

文太 2008/12/11(Thu) 00:03
[2947]へのコメント
めざらさん

> そこまでやるなら,スタックもいかがですか?
 削除バッファも?  いえ、これらは違うのです。 ヌル区切りでないというより
(データ構造の違い)、使う人の頭のなかで違う位相に属しているのです。
 変わるかもしれませんけれど。とはいえ、削除バッファをファイラでメニュー
するかなぁ…。大変そうで、やる価値があるとも思えないけど…。

> 高橋版以降ならものすごく簡単に書けますよ。
 2月ぐらい前に知りました。椅子から転げ落ちそうになるくらい驚いた。異セ
グコピーがサポートされてんじゃん、と。ただ、ascii 文字列対象なんですよね。
異セグ対応 memcopy ではなかった…。それで、やっぱり movsb。

> スタックの最初のアイテムをどこでも出力するサンプル(名無し)
 ありがとうございます。いつか、テキストスタックにも目覚めるか…。
 削除バッファ、というか一語削除・移動は、お陰様で目が覚めました。使うか、
使い道があるか、は別の話ですけれど。4つの矢印カーソルに慣れてしまってい
て…。(ここでは変ですが)方向ビットを反転させるとカーソル位置が変わると
いうのは、新たな知識でした。m(__)m

> そもそも制限が80字とはバッファに対して短すぎますけど。
 これもあるますし、ファイラでテキストスタックや削除バッファ見ないでしょ
う。  メニューは完備してますし。 delbuf.def,   jenga.def,  stkmenut.def,
history.def、仕様にもインターフェイスにも何にも、文句まったくありません。
m(__)m

> "> キャー(>_<) −−実は無害だったのだけど。"
>  気づくだけ凄い。わたしは実行しても気づかなかった。
>  ヌル潰しのところなのですね。
 無意味なルーチンだったので、気づかないです、はい。

>  掲示板の仕様で半角カナが使えない場合は,値で書いてもいいですね。
>  t.i=$a5, でよいかと。
 これはありがたい。こういう風には頭が回らないのです。

> "> 	"U PU""
>  ここが気になるようになったら,マクロおたくまっしぐら。(笑)
 いえいえ、節度あるマクロイドです。誰がどう使っているのか、いちおう知り
たいだけ。tmpbufs も。

[2950] Re^4: hisdisp.def

めざら 2008/12/12(Fri) 08:06
[2949]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/index.html
まぁ,すべて好みですから気が向いたらということで。

ところで,忘れていたのですが,似たようなものをわたしも作ってました。
「似ている」わけではないのかなぁ。

= GetBuffs v0.14 = by H_ear
#if 0
スタックや他のヒストリーバッファの先頭文字列を出力
編集テキスト,入力窓,コマンドラインで使用可能
ブロックタイプは文字ブロックのみ
#endif
* mad for vz!
1 ^IG "" (s>2)?.			;入力窓などでも使用可能
	(s || mr-$80)??.		;ビューモードでは出力しない
	(ks&1)?{ r-, >k }		;シフト実行 stk
	!01 (r<0)?.			;転送元を選択
 :k	p[, (r)??{ &01 ??>z r-, }	;スタックは特別処理
	(r) &> p=r, &s &?("%s",p)	;出力
 :z	#? p], .			;#0.12 &d -> #?

00:	; ---- get from buffers ----
	>?{ (pq..149) (ps) (pw) (pf) (pa) (px) (pr) (pt) }

01:	; ---- get from text stack ----
	(kp)??.
	&Bm
	(r || r-2)??{			;ブロックタイプをは1行と文字ブロック
		&m("Type error") .	;行ブロックと矩形ブロックは対象外
	}
	dz[=kz, r=kp..-1, p=kp-3-r, dz],;スタック先頭アイテムのサイズを取得
	(r>250)?{ &m("Size error") . }	;tmpbuf4のサイズを超過しない
	(p)?{ &Sp(pq..149,"%*Fs",r,p,kz) }	;高橋版VZに依存
	   ?{
		i-,
		(r){
			dz[=kz, r=p.i, dz],
			pq..149.i=r, i++,
		}
		pq..149.i-,
	}
	r=pq..149,
	(-1){
		&SF(r,$0d)		;すべての改行を逐一変換
		(r)?r..0='n\', ?{}
	}
	(1)

* popup menu
1 "GetBuffers",12,8
	"stacK" "pS" "pW" "pF" "pA" "pX" "pR" "pT"
*
[Variables]
	[p]	ptr
[Buffers]
	ps, et al.
[History]
2005/02/05 0.10 初版
2005/02/06 0.11 シフト実行でメニューを出さずにスタックの出力
2005/02/28 0.12 入力窓では&dで再表示不可だった
2005/02/28 0.13 1行ブロックも出力する(行末は\n)
2006/01/21 0.14 高橋版の書式制御%Fのバグ?に対応
[Notes]
スタックにひとつだけアイテムがある場合に出力できない??
どうやら高橋版の書式制御%Fはオフセットが0だとヌルを出力してしまうようだ

 ネーミングは漫画のゲットバッカーズを真似たんじゃなかったかと。(^^;

[2953] Re^5: hisdisp.def

文太 2008/12/13(Sat) 01:13
[2950]へのコメント
めざらさん

> まぁ,すべて好みですから気が向いたらということで。

 可愛くなくて面白くない奴ですいません。
 それでも、なぜ自分はテキストスタックと削除バッファをヒストリーとまった
く別扱いとしてVzを操作してきたのだろうとは、けっこう長々考えています。
慣れ、なのかな、単に。ヒストリーバッファなんて言葉を知る前からそうだった
ふしがあるので、慣れでしょうね。それでも、めざら資源のどこかで「テキスト
スタック文字列を検索ヒストリー窓に入れたいと思ったことがない人はいないで
しょう」的趣旨の文章を読んだとき、軽いショックを受けた記憶があります。そ、
そんなこと、あ、ありませんよぉ、と思った。けっこう深く古いですね。
 (ここでは関係ありませんが)一語移動と削除関連コマンドの動きは了解でき
ました。英語な人とプログラマ仕様なのですね。ちょっとはプログラミングもど
きしてるのだから、使えよな、と少し思っています。

かんじ漢字
漢字かんじ

 これで一語移動場所が違うのは、c.mos さんのほとんど冗談でしょう。高千穂
さんとかなら、使うのかな? ある意味、space に全角スペースが含まれている
のは、いいの、って感じてます。ま、プログラミング途中に全角カッコを入れる
間違いは、たぶん、ほとんどしたことがないので、まいいのか、とは思いますけ
れど。

> ところで,忘れていたのですが,似たようなものをわたしも作ってました。
> 「似ている」わけではないのかなぁ。

 似てなくもないです(笑)。ダンプして出力してもいいかな、意味ある? と
か思ってました。出力なら、= GetBuffs v0.14 = by H_ear的になりますね。そう
そう、(pt) ^KTですね。ありました、ありました。昨晩、追加してました。使っ
てない64バイトみっけ。でも、タイトルサーチはけっこう便利ですね、好き。
Vz使えてないのがバレバレですが、#F "\x ^"を指でちょっちゅうやってました。

 しかし、あのマクロ、見るだけでなくて、使いものになる機能ないのかよと探
ってますが、Vzって基本仕様が相当よくできてるから、あのマクロはほんと、
vzlog buffer と pa,pr, pu,tmpbufs 眺め用ですね。こいつらを出力してもしょ
うがない。


 でも、GetBuffs、コードが綺麗。美しい。"Practical C"でコーディング・スタ
イルに気をつかうように少しずつなってます。変な本。突然、配列が出てきて、
びっくり。うとうとしてたか、俺、とか。文字列が配列ですから、ま、いいのか。

追伸:MSゴシックにしたら、見たことない光景みてしまった。普通はやっぱラスタ
なのか。行ブロックしてみてください。変な光景。

[2955] Re^6: hisdisp.def

めざら 2008/12/13(Sat) 06:28
[2953]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/index.html
> そ、そんなこと、あ、ありませんよぉ、と思った。けっこう深く古いですね。

 あら,そう? それじゃ書き直しが必要ですかねぇ。
 実はわたしは強く思うのです。…と言うのも,例えば,ブロックした部分を検索文字列に取り込むコマンド(実用ではマクロ)がありますけど,改行を含んだブロックは行末で切れちゃうじゃないですか。そんなとき,スタックから ps に欲しい! って渇望していたころ和生さんが syura01.def を出してきた。これだ! と思いましたよ。

 そんなことありません?

>  似てなくもないです(笑)。

 うふふ。それじゃ,そのうちほとんど似てないのを出します。
 ちょっとだけ創作意欲を刺激されているので,各バッファの先頭文字列を全部表示,削除バッファもプロパティの同じものをまとめる方向で。

 バッファの名称だけ出しても,何が入っているか見えないのでは不安ですよね。

>  でも、GetBuffs、コードが綺麗。美しい。

 ありがと。意識して読みやすく記述しようと思っています。それが自分のスタイルになった。それだけなのですが,美しいという言葉に非常に弱いわたし。

> 行ブロックしてみてください。変な光景。

 なんでしょう? わからなかった。
 最初,一度逝きかけた気がするけど,復帰したら変でもなかった。

[2958] Re^7: hisdisp.def

文太 2008/12/14(Sun) 15:04
[2955]へのコメント
めざらさん

> 改行を含んだブロックは行末で切れちゃうじゃないですか。そんなとき,
> スタックから ps に欲しい! って渇望していた
 なるほど。しかしそういう風に改行を含んだ検索文字列の設定自体への必要場
面が、どうも。一つには、僕がグレップのように行指向であるということにより
そう。改行文字を入れた検索は、行頭か行末に改行がある場合がほとんどみたい
です。

>  各バッファの先頭文字列を全部表示,削除バッファもプロパティの同じものを
> まとめる方向で。
 プロパティ? ですか? テキストスタックのこと? ま、見てのお楽しみとい
うことで。

>  バッファの名称だけ出しても,何が入っているか見えないのでは不安ですよね。
 メニューですか。 是非是非。 これは全天候型だとかなり有用そうですね。pa
とか pr とか。おいおい。でも是非。個々にはやれても、そういう総合型は有用
です、間違いなく。

[2961] 使い方

でがらし 2008/12/15(Mon) 00:01
[2943]へのコメント
 このスレで出てきてるマクロ、どういう使い方するんでしょう? 
試さないでいうのも気が引けますが、起動するとそれぞれの変数に
残っている最新の文字列を表示するということでしょうか? で、
それをカーソルがある編集画面や1行入力画面に貼り付けることが
できるとか?

 そうなら、私が希望していたマクロでした。英辞郎を引くマクロ
をよく使っていますが、これが通常の検索用の変数と違うマクロを
使っていて、他の画面で簡単に出てこないことがあるんです。これ
は文太さんに作ってもらったマクロだったと思いますが。

[2962] Re: 使い方

文太 2008/12/15(Mon) 01:18
[2961]へのコメント
でがらしさん、ご無沙汰です。

>  そうなら、私が希望していたマクロでした。英辞郎を引くマクロ
> をよく使っていますが、これが通常の検索用の変数と違うマクロを
> 使っていて、他の画面で簡単に出てこないことがあるんです。これ
> は文太さんに作ってもらったマクロだったと思いますが。

 どんなマクロだったのやらですが、僕の奴には普通の意味で実用性
はありません。めざらさんのものは現在形でも実用性があります。試
される価値はあると思います。もうすぐもっと実用性の高いのが登場
する予定です。
 「他の画面で簡単に出てこない」? バッファを汚さないようにす
り替えているのかな? 英辞郎用マクロのサンプルを作った記憶はあ
りますが…。たぶん、pwをつかっているのかな。psで出てこない、と
いうことなら、改造が必要です。それの改造が必要ならマクロを貼っ
てしまってください。そして「こうしたい」と書いてくれれば簡単で
しょう。

[2969] BufsMenuを試してみてください

めざら 2008/12/15(Mon) 10:53
[2961]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
>  そうなら、私が希望していたマクロでした。英辞郎を引くマクロ
> をよく使っていますが、これが通常の検索用の変数と違うマクロを
> 使っていて、他の画面で簡単に出てこないことがあるんです。

 おお,まさしくそういう使い方をするためのマクロを製作中ですので,
まだ試作段階で削除文字バッファが未対応ですけれど,
でがらしさんに捧げましょう。

 出力部分はまだ &m() にしてありますが,
コメント記号';'を付け替えればカーソル位置への出力もできます。
何が起こるかわからないので注意してください,ってフリーウェアは
みなそうですけどね。

 編集モード,一行入力窓,コマンドラインでの起動を想定しています。
参照するバッファの内容は弄らないので特定の一時バッファ(tmpbuf4)
以外なら大抵のバッファの内容を表示・出力するよう改造することも簡単です。
なお,先頭がヌル(空)のバッファは表示もしません。
ただし,高橋版以降に依存していますので,製品版などで実行しないでください。
また,ラインバッファのアドレスが確定していない起動直後は実行できません。

= BufsMenu = by H_ear
#if 0
各種バッファ一覧表示メニュー(まだ試作版 v0.09)
高橋版以降に依存
#endif
* mad for vz!
1 ^\ "" (s)??#]                         ;lbufを解放
        (q=wm+230)??.                   ;起動直後不可
        p=q=q+300,                      ;p,q: lbuf
        t=pn..-26,                      ;t: tmpbuf4(256)
        i=9,                            ;i: items
        w=72,                           ;w: menu width

;       (stack) (ps) (pw) (pf) (pa) (px) (pr) (pt) (pu)  ;(del)
        &03 i-=r,                       ;stack
        r=ps, &>        r=pw, &>        r=pf, &>        r=pa, &>
        r=px, &>        r=pr, &>        r=pt, &>        r=pu, &>

        p=q=q-(i*2+20+9),               ;バッファ先頭を再設定 title(8+1)
        &02 &Sm(p,r,20)                 ;擬似マクロをセット
        p+=20,
        (i*2){ p.0-, p++, }             ;タイトル+アイテム数のパラメタコード
        &Sc(p,"BufsMenu") p=r+1,        ;メニューのタイトル (8+1)

        q.16=w,                         ;メニューの表示幅
        q.17=i-1,                       ;アイテム数(タイトル分を引く)
        q.19=0,                         ;カーソル位置(参照型-1)
        WL[-, rr[=q, &* rr], WL],
        (r<0)?.
 :p     ;&?("%s",pm)
        &m("%s",pm)

 :z     ; ---- exit ----
        
        ;&d #] .

00:     ; ---- bufs > tmpbuf4 > lbuf ----
        ; <-- r:buf addr (buffs)
        ;     p:target addr
        ; --> p:target addr (updated)
        (r.0)??{ i--, . }               ;文字列がなければ省略
        &Sc(t,r,255) &> &Sc(p,t) p=r+1,
01:     ; ---- tab2chr ----
;       r=t, :d &SF(r,9) (r)?(r.0=$1E,>d)       ;TABを'→'に変換
        r=t, :d &SF(r,9) (r)?(r.0='>',>d)       ;TABをSPCに変換
02:     (3+$)."$(1,a,0,ff,ff,0)!01(r)$(0,e1,c0,0,4C,1)" ; 0,0
03:     ; ---- get from text stack ----
        ; --> 0: ok
        ;     1: no item in stack
        (kp)??{ (1) . }
        &Bm                             ;Safty
;       (r || r-2)??{                   ;ブロックタイプをは1行と文字ブロック
;               &m("Type error") .      ;行ブロックと矩形ブロックは対象外
;       }
        dz[=kz, r=kp..-1, l=kp-3-r, dz],;スタック先頭アイテムのサイズを取得
        (r>256)?r256,                   ;tmpbuf4のサイズを超過しない
        (l)?{&Sp(t,"%*Fs",r,l,kz)}      ;高橋版VZに依存
           ?{
                j-,
                (r){
                        dz[=kz, r=l.j, dz],
                        t.j=r, j++,
                }
                t.j-,
        }
        r=t,
        (-1){
                &SF(r,$0d)              ;すべての改行を逐一変換
                (r)?r..0='n\', ?{}
        }
        &01                             ;tab2chr
        &Sc(p,t) p=r+1,                 ;lbufへ
        (0)
04:     ; ---- cbuf ----
        
*

[Variables]
                
[Buffers]
                
[History]
2008/12/15 0.09 まだ試作版
[Notes]

[2977] Re: BufsMenuを試してみてください

文太 2008/12/16(Tue) 20:30
[2969]へのコメント
 あれ? でがらしさんが飛びつくのかと思っていたのだけど…。

 >めざらさん、試させていただきました。メニューの先頭にどこのバッファな
のか表示していただけませんか。プリントが主体だと出身地は関係ないですが、
せっかく一覧しているのだから、ほお、そっちにはあなた様がおられましたか、
と確認できたっていいですよね。一瞬、? となってしまった。起動直後なもの
で、また掲示板のclppst経由だったので、似たものばっかり、と。pfとpxだった。
しかしpfにclppst.tmpが入るのはまずいよな…? なんとかすり替えられなかっ
たの? なんて発見もあったりするわけです。つまんないことを気にしてるだけ、
という自覚はありますが。自作マクロでpaを見つけるとprに書き換えてます。

[2982] Re^2: BufsMenuを試してみてください

めざら 2008/12/16(Tue) 23:22
[2977]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
> メニューの先頭にどこのバッファなのか表示していただけませんか。

 いえ,表示しません。これは仕様です。
 もともと,いずれかのバッファにある文字列を出力するためのものなので,出自は関係ありませんし,要するに邪魔です。出さないからこそ,バッファの追加などのメンテナンスも楽で,速度も確保できるのですから。

 どこのバッファに何が入っているか確認するなら,文太さん自身が作っているhisdisp.defを使用するべきです。
 「まったく違うもの」と言ったでしょ。こだわりの手抜きなのです。(^^)

[2986] Re^3: BufsMenuを試してみてください

文太 2008/12/17(Wed) 00:50
[2982]へのコメント
めざらさん

>  いえ,表示しません。これは仕様です。
>  もともと,いずれかのバッファにある文字列を出力するためのものなので,
>  バッファの追加などのメンテナンスも楽で

 途中を省略させていただきました。了解ですし、意図も完全に(?)読めました。

[3000] Re^3: BufsMenuを試してみてください

めざら 2008/12/20(Sat) 16:18
[2982]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
 なんだかもう用がないかもしれませんが,削除バッファ対応したので,
一応あげておきます。[DEL]で1文字ずつ削除したものがまとめて表示された時に
前後関係が逆になるのは仕様です。編集モードでなくても #u は有効なので,
削除バッファは「おまけ」に過ぎませんから。

= BufsMenu 0.10 = by H_ear
#if 0
各種バッファ一覧表示メニュー
高橋版以降に依存(高橋版以外では実行させない)
#endif
* mad for vz!
1 ^\ "" (s)??#]                         ;lbufを解放
        (q=wm+230)??.                   ;起動直後不可
        dz[-=3, r=27.0, dz], (r-84)?.   ;'T' :vzt03k
        p=q=q+300,                      ;p,q: lbuf header(300)
        t=pn..-26,                      ;t: tmpbuf4(256)
        i=10, i++,                      ;i: items ++title
        w=62,                           ;w: menu width

;       (stack) (del) (ps) (pw) (pf) (pa) (px) (pr) (pt) (pu)
        &03 i-=r,                       ;stack
        &04 i-=r,                       ;del
        r=ps, &>        r=pw, &>        r=pf, &>        r=pa, &>
        r=px, &>        r=pr, &>        r=pt, &>        r=pu, &>

        p=q=q-(i*2+20+9),               ;バッファ先頭を再設定 title(8+1)
        &02 &Sm(p,r,20)                 ;擬似マクロをセット
        p+=20,
        (i*2){ p.0-, p++, }             ;タイトル+アイテム数のパラメタコード
        &Sc(p,"BufsMenu") p=r+1,        ;メニューのタイトル (8+1)

        q.16=w,                         ;メニューの表示幅
        q.17=i-1,                       ;アイテム数(タイトル分を引く)
        q.19=0,                         ;カーソル位置(参照型-1)
        WL[-, rr[=q, &* rr], WL],
        (r<0)?.
 :p     &?("%s",pm)                     ;print

00:     ; ---- bufs > tmpbuf4 > lbuf ----
        ; <-- r:buf addr (buffs)
        ;     p:target addr
        ; --> p:target addr (updated)
        (r.0)??{ i--, . }               ;文字列がなければ省略
        &Sc(t,r,255) &> &Sc(p,t) p=r+1,
01:     ; ---- tab2chr ----
        r=t, :d &SF(r,9)
        (r)?(r.0='>',>d)                ;TABを'>'に変換
;       (r)?(r.0=' ',>d)                ;TABをSPCに変換
;       (r)?(r.0=$1E,>d)                ;TABを'→'に変換
02:     (3+$)."$(1,a,0,ff,ff,0)!01(r)$(0,e1,c0,0,48,1)" ; 0,0
03:     ; ---- get from text stack ----
        ; --> r 0: ok
        ;       1: no item in stack
        (kp)??{ (1) . }
        &Bm                             ;Safty
        dz[=kz, r=kp..-1, l=kp-3-r, dz],;スタック先頭アイテムのサイズを取得
        (r>256)?r256,                   ;tmpbuf4のサイズを超過しない
        (l)?{ &Sp(t,"%*Fs",r,l,kz)}     ;高橋版VZに依存
           ?{ j-, (r){ dz[=kz, r=l.j, dz], t.j=r, j++, } t.j-, }        ;非依存
        r=t, (-1){ &SF(r,$0d) (r)?r..0='n\', ?{} }      ;すべての改行を逐一変換
        &01                             ;tab2chr
        &Sc(p,t) p=r+1,                 ;lbufへ
        (0)
04:     ; ---- cbuf ----
        ; --> r 0: ok
        ;       1: no item in cbuf
        (pu-bc==mg..-3 || ((mg..-3)..-1)&$7fff>256)?{ (1) . }
        u=t,                            ;u: updated ptr
        a=mg..-3,                       ;a: addr cbuf end ptr
        b=(a.-1)&$80,                   ;b: del property(back/forward)
 :B     (a>pu-bc)?{
                c=(a..-1)&$7fff,        ;c: chr(s) length
                (u+c-t>256)?>c
                a-=c+2,
                &Sc(u,a,c) u=r,
        }
        ((a.-1)&$80==b)?>B
 :c     &01                             ;tab2chr
        &Sc(p,t) p=r+1,                 ;lbufへ
        (0)
*

[Variables]
        p,q     ptr(lbuf)
        t       tmp buf (tmpbuf4[256])
        i       items +1(title str)
        w       menu width
        a       addr: cbuf end ptr
        u       updated addr(cbuf)
        b       del property(back/forward)
        c       cbuf chr(s) length
[Buffers]
        tmpbuf4(pn..-26)        256 bytes temp buf
[History]
2008/12/19 0.10 初版
[Notes]
削除バッファは面倒だのぉ〜
del系がメニューの中で逆転するのは仕様である

[3002] BufsMenu 気に入りました

でがらし 2008/12/20(Sat) 22:50
[3000]へのコメント
 このマクロ、気に入りました。いろいろな変数の直前のものだけが一覧表示されるって、便利です。これはこれで大いに使い道があります。ありがとうございました。直前の変数を他の場面で使うことがいちばん多いです。

[3004] Re: BufsMenu 気に入りました

めざら 2008/12/21(Sun) 09:12
[3002]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
>  このマクロ、気に入りました。

 ありがとうございます。作った甲斐があったというものです。

 ただ,履歴までは求められないので,history.def や hisdisp.def などの便利な使い方もマスターしてください。

[3005] アドレスの移動とver check

文太 2008/12/22(Mon) 23:49
[3000]へのコメント
 いちおう報告しておきますね。正直、ちょっと気が重いけど…。意味が想像で
きなくはないので…。

        dz[-=3, r=27.0, dz], (r-84)?.   ;'T'==84==54h :vzt03k

 上が通りませんでした。でも、このヴァージョン・チェックって割と古くから
されてますよね。 高橋版以降変遷があったとしても。でも、dz からの相対アド
レスが変わらなくちゃいけないのでしょうか?

VZT      COM     60888 99-12-21   19:19

 約9年前にこのあたりは固まったとするように皆で連絡取り合って協力するっ
てわけにはいかないわけなのでしょうか。m(__)m

金野版(vzk08q1)
dz==2AD0h
0002ACB0  2D 39 33 20 62 79 20 63-2E 6D 6F 73 0D 0A 20 61 |-93 by c.mos.. a
0002ACC0  72 72 61 6E 67 65 64 20-62 79 20 48 2E 54 61 6B |rranged by H.Tak
0002ACD0  61 68 61 73 68 69 09 2B-20 48 2E 4B 6F 6E 6E 6F |ahashi.+ H.Konno
0002ACE0  0D 0A 20 69 6E 63 6C 75-64 69 6E 67 20 44 41 4E |.. including DAN
0002ACF0  4E 59 27 73 20 66 69 6C-65 72 0D 0A 24 00 36 30 |NY's filer..$.60


高橋版
dz==2A33h
dump -s256 -mx2A30
0002A300  33 20 62 79 20 63 2E 6D-6F 73 0D 0A 20 61 72 72 |3 by c.mos.. arr
0002A310  61 6E 67 65 64 20 62 79-20 48 2E 54 61 6B 61 68 |anged by H.Takah
0002A320  61 73 68 69 0D 0A 24 00-D1 FE CE FE CA 0A C0 78 |ashi..$.ム.ホ.ハ.タx
0002A330  CD 20 FF 9F 00 9A F0 FE-1D F0 DE 01 53 1A 4B 01 |ヘ ...夸..&#57501;.S.K.
0002A340  53 1A 56 01 53 1A 53 1A-01 01 01 00 02 FF FF FF |S.V.S.S.........


 アイドルなしに戻るか、こういういわゆる「邪悪」なやり方は一切やめるべき
か。ただ、(まだまったく使えてませんが)和生さんのプロシージャマップとか
も検算しなおさなくちゃなわけですよね。ふう。過去ログの意味を解析するのに、
そのたびに高橋版を立ち上げると…。うう。(感謝の気持ちがわき上がるからよ
いではないか。歴史を実感しながら毎日が送れる>文太)
 僕はXP以外でVzしたくはないのですよ、基本的に。じゃ、Vzしながらイ
ンターネットするな、なのかな。うう。(T-T)

[3006] Re: アドレスの移動とver check

あきろ 2008/12/23(Tue) 12:48
[3005]へのコメント
 文太さん、こんにちは。

 なんとなく、とても大きな問題なのかな?という雰囲気はするのですが、
  Vzを使いこなせていない私には、なんのことやらさっぱり分かりません。

 私の場合、「アイドルあり」となりDOS窓Vzでとても助かってます。こ
  のバージョンチェックって何のために必要なのでしょうか?

 現状で何も困っていない私には、ちんぷんかんぷんです。おそらく、私の
  Vzの使い方では、今後も困ることがないのではないかと思います。ですか
  ら、私などが口を挟むべき問題ではないのかもしれませんが、「アイドルな
  しに戻るか・・」などという発言があったので、気になってしまいました。

[3008] Re^2: アドレスの移動とver check

文太 2008/12/23(Tue) 22:59
[3006]へのコメント
あきろさん、

 心配させてしまったようでごめんなさい。
 まったく気にする必要はありませんよ、現実的・短期的には。アイドルに問題
があるわけでもまったくありません。ただ長期的にみると僕には問題があるよう
な気がしただけです。

> Vzを使いこなせていない私には、なんのことやらさっぱり分かりません。
 あきろさんが使いこなせてない?! スーパーユーザですよ、あきろさんは。

> 私の場合、「アイドルあり」となりDOS窓Vzでとても助かってます。
 はい、僕もです。 モバでも意味なく同じ版です。vz.com の使い分けなんて実
用ではできないもの…。

> バージョンチェックって何のために必要なのでしょうか?
 実は、閉じた環境では(=ユーザが高橋版以降を使っていて、それを知ってい
れば)必要ないのです。ただ、そうでないかもしれない相手を想定すると、先回
りしてしまうだけなんですよ。「動かない」と言われると色々原因を考えなくて
はならなくなるので。

> 現状で何も困っていない私には、ちんぷんかんぷんです。
 どこまで説明したらいいのでしょう。
 繰り返しですが、あきろさんが m.gann さんのパッチ当てや高橋さんのパッチ
当てに興味を持たなければ困ることはありません。パッチ当てというのは、Vz
のコード・セグメントを書き換えることなんですよ。
 そうですね、vz.com  が進化するとコード・セグメントの内部が当然変わるの
です。そんなところは本当のVzのお腹の中なので、普通触るべきところではな
いんですよ。これが dz と呼ばれるセグメントの前です。
 dz[-=3,
 ほら、データ・セグメントの前、ま見るだけなら問題のないところを、見よう
としてるでしょ。

 ただ、…。

 問題なしです。m(__)m

[3013] Re^3: アドレスの移動とver check

文太 2008/12/25(Thu) 22:38
[3008]へのコメント
 とりあえず逃げでこちらにぶらさげておきます。
 もちろん狭義の技術的な意味では金野さんのブロック if 文が正しいのでしょ
うが、この「事件」の本当に意味するところは…。ただ、自明なことが自明にな
っただけだと思うけど…。文太は馬鹿であるという紛れもない真実。

 そして、こんなことできるんだ、と喜ぶ文太。
        &m("%Fs",ve,vz)

 ただ、考えてみるにマクロ師が泣いて喜ぶ拡張というのはなかったのかなぁ、
という疑問は今回も復活後、何度も思いました。m(__)m
 「vz.comで返します」って金野さん和生さんに言ってましたよね。

[3021] Re^4: アドレスの移動とver check

あきろ 2008/12/27(Sat) 00:29
[3013]へのコメント
 文太さん、こんばんは。田舎暮しのせいなのか、今年はクリスマスの音楽が
  あまり聞こえてこなかったように思います。都会ではどうなんだろうか。
 …あ、夜分に失礼します。m(._.)m

 文太さんの、引っ掛かるお気持ちは、私ごときには察することはできません
  が、ブラックボックスの中身をごそごそといじれば、場所にずれが生じるの
  はしょうがないように、私などは思ってしまいます。

>  ただ、考えてみるにマクロ師が泣いて喜ぶ拡張というのはなかったのか
>  なぁ、

 マクロのためというのは副次的なもので、DOS窓Vzに対応するために、
  Vzが拡張?されていたのではないかと、私は思っているのですが、違うの
  かなあ?

[3028] Re^5: アドレスの移動とver check

文太 2008/12/27(Sat) 13:36
[3021]へのコメント
> マクロのためというのは副次的なもので、DOS窓Vzに対応するために、
>  Vzが拡張?されていたのではないかと、私は思っているのですが、違うの
>  かなあ?

 あ、見落としていてレスの順番が。これは僕の金野版について、そしてマクロ
師が金野版を使ってくれないからバグ出しが進まないじゃないか、進化しないじ
ゃないか、というむにゃむにゃについてのコメントですね。はい、あきろさんと
同じように捉えています。でも、それじゃ、進化しないじゃないのぉ、と思って
いるわけです。ごおつくばりなのです。m(__)m

[3030] マクロと環境のモンダイ

めざら 2008/12/27(Sat) 16:25
[3028]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
> マクロ師が金野版を使ってくれないからバグ出しが進まないじゃないか

 わたしが LX で高橋版を使っているのは,複数の版を使って違いを体感したい,つまり不具合があれば報告して VZ の進化に少しでも貢献したいという思いがあるからです。で,どの環境でどっちを使うかという話になると,そりゃ明白ですよね。XP で高橋版を使うわけにはいかない。だって仕事で共有ファイルサーバのHTMLファイルを短いファイル名で編集するわけにはいかないからです。

 実際に,どちらのほうが長い時間使っているかといえば,圧倒的に金野版です。自宅の ThinkPad も XP になってますし,高橋版を使う機会は電車と寝床くらいになっています。ただ,開発は LX でしかやっていない。普通のノートよりも LX の方がマクロ書き環境としては優れていますし,何より集中できるからです。近ごろ仕事は忙しくて,不便だからちゃちゃっと小物を作ってやっつけちゃおうなんてこともできず,ひたすら作業するだけです。そのため,使うマクロの種類がひどく限られてしまい,何か不具合があったとしても気づきにくいことは確かですね。あの頃(いつ)と違って,寝ても覚めてもマクロってわけにもいかないんですよね。

 言い訳というか,愚痴ともつかない話になってしまいましたけど。

[3034] 皆様、よいお年を

文太 2008/12/30(Tue) 11:00
[3030]へのコメント
めざらさん

> 言い訳というか,愚痴ともつかない話になってしまいましたけど。

 了解、了解。それぞれの使い方、作り方、遊び方ですね。Vzもここまできた
んだし。言ってもしょうがないことを言ったものです。揚げ足をとったようで申
し訳ありませんでした。

 ぜんぜん脈絡なしですが、今年も色々とお世話になりました。皆さま、よいお
年を。

[3023] マクロ師が泣いて喜ぶ拡張?

めざら 2008/12/27(Sat) 10:11
[3013]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
>  ただ、考えてみるにマクロ師が泣いて喜ぶ拡張というのはなかったのかなぁ、
> という疑問は今回も復活後、何度も思いました。m(__)m

 それって高橋版のことですか?
 山のようにありますよ。
 
 高橋さんはマクロ師として,マクロ師のための拡張である tVZ を作った。
 それは紛れもない事実で,Windows の DOS 窓への対応はオマケでしかないの。

 注目すべきは,徹底した内部互換性です。そこにこだわった証拠に,追加機能へのアクセスポイントをきちんと残しています。文太さんが上げていた Ve なんかはその典型例ですね。その恩恵でマクロ師は内部情報へのアクセスをあまり意識せずに部品の使い回しができるようになった。

 まぁ,不注意な者は,この前のような失敗をするわけですが…。(^-^;

[3025] Re: マクロ師が泣いて喜ぶ拡張?

文太 2008/12/27(Sat) 12:56
[3023]へのコメント
> それって高橋版のことですか?
> 山のようにありますよ。
> 高橋さんはマクロ師として,マクロ師のための拡張である tVZ を作った。

 はい。間違いなく。過去ログを読んでいても高橋さんに教えてもらっている
ことは数限りなく…。尊敬度・感謝度は毎日上がり続けています。
 コミュニケイションというのは難しいですね。

[3029] Re^2: マクロ師が泣いて喜ぶ拡張?

めざら 2008/12/27(Sat) 15:31
[3025]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
>  コミュニケイションというのは難しいですね。

 あら? 金野版のことだったのですか。
 言うなれば,高橋版はマクロ師のためにバグをつぶし,面倒な別セグメントの情報へのアクセスを簡単にするなど,マクロ師御用達VZ。金野版は,次々に出現する新しい環境への対応を含め,一般的なライティング環境向上のための拡張を行った環境適応型VZ。それぞれの時代の要請に応える素晴らしいプロジェクトです。
 個人的には,vwxt.com による正規表現関係のバグ潰しと拡張正規表現対応が未完成に終わったのが何とも惜しいと思っています。

[3010] Re^2: アドレスの移動とver check

めざら 2008/12/24(Wed) 06:22
[3006]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
 文太さんは考えすぎだから…
 もちろんわたしも Windows では金野さんの版を使っていますよ。アイドルなし,LFNなし,に戻るなんて考えたこともありません。

>  私の場合、「アイドルあり」となりDOS窓Vzでとても助かってます。こ
> のバージョンチェックって何のために必要なのでしょうか?

 高橋版以降の書式制御を使用しているため,バージョンチェックは必要だと考えました。一応,高橋版以降限定の掲示板じゃないですし。(事実上はそうなってますが)

 そのバージョンチェックにバグがあっただけです。

[3009] Re: アドレスの移動とver check

めざら 2008/12/24(Wed) 06:11
[3005]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
 なんか深刻に考えさせてしまったようでごめんなさいね。

 実は,マクロは HP200LX でしか作っていませんで,その LX では高橋版に自分でちょっとだけ手を入れたものを使っています。あの部分がずれていると金野版では使えませんよね。

 とりあえず,分かっている人は,あの行をコメントアウトしておけばよいでしょう。

 チェック位置をまた探さなくちゃですね。どうしよう。
 これ,一番詳しいのは当の今野さんでしょうけれど。

[3012] Re^2: アドレスの移動とver check

konno 2008/12/25(Thu) 01:59
[3009]へのコメント
めざらさん、文太さん、あきろさん、

高橋版以降のチェックだったら、
#ifn tVZ
 .
#endif
をはさむだけでいいと思いますよ。あのルーチンは過渡期のものでしょう。
というか、すでに上記の機能があったのになぜああいうルーチンをひねり
出すのかが理解できません。

>  これ,一番詳しいのは当の今野さんでしょうけれど。

あのう〜、このルーチン、全然読めないんでよろしかったらどなたか
解説お願いします。(^^;

[3016] Re^3: アドレスの移動とver check

めざら 2008/12/26(Fri) 06:54
[3012]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
> Konnoさん お呼び立てして申し訳ありません

> #ifn tVZ
 あ,そこのシンボルは互換なのですね。
 どうも感覚がとことんずれているようで,内部の起動時メッセージのアドレ
スが固定で, 指している先が最初の t…つまり Version 1.60t←この t だと
思い込んでいました。ここなら変わらないなと。(^^;タコ

 文太さんのご指摘後,いろいろメモリをダンプしてみると,全く違うことが
判明。さらに先の H.T←の T でした。これじゃ絶対ずれてますね。


> 解説お願いします。(^^;

 参ったなぁ。一目でおわかりでしょ?
 他の人へも向けて解説というか釈明しておきます。
dz[-=3,         ;スタックセグメントのちょっと前へ移動
r=27.0,         ;そこから27バイト先の文字を記憶
dz],            ;戻す
(r-84)?.        ;その文字が'T'でないなら終了

 おそまつでした。

[3018] BufsMenu v0.20

めざら 2008/12/26(Fri) 20:52
[3016]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
 高橋版依存だけというのもナニなので,v1.60以降の版すべてに対応しました。
最初から素直にやればよかったと反省しております。

----------^ BUFSMENU.DEF ( date:2008-12-26 time:18:00 ) ----< cut here
= BufsMenu 0.20 = by H_ear
#if 0
各種バッファ一覧表示メニュー
#endif
* mad for vz!
1 ^KM "" (s)??#]                        ;lbufを解放
        (q=wm+230)??.                   ;起動直後不可
;;      dz[-=3, r=27.0, dz], (r-84)?.   ;'T' :vzt03k only. #.10
#if tVZ
        v+,                             ;v: tVZ flag
#else
        v-,
#endif
        p=q=q+300,                      ;p,q: lbuf header(300)
        t=pn..-26,                      ;t: tmpbuf4(256)
        i=10, i++,                      ;i: items ++title
        w=62,                           ;w: menu width

;       (stack) (del) (ps) (pw) (pf) (pa) (px) (pr) (pt) (pu)
        &03 i-=r,                       ;stack
        &04 i-=r,                       ;del
        r=ps, &>        r=pw, &>        r=pf, &>        r=pa, &>
        r=px, &>        r=pr, &>        r=pt, &>        r=pu, &>

        p=q=q-(i*2+20+9),               ;バッファ先頭を再設定 title(8+1)
        &02 &Sm(p,r,20)                 ;擬似マクロをセット
        p+=20,
        (i*2){ p.0-, p++, }             ;タイトル+アイテム数のパラメタコード
        &Sc(p,"BufsMenu") p=r+1,        ;メニューのタイトル (8+1)

        q.16=w,                         ;メニューの表示幅
        q.17=i-1,                       ;アイテム数(タイトル分を引く)
        q.19=0,                         ;カーソル位置(参照型-1)
        WL[-, rr[=q, &* rr], WL],
        (r<0)?.
 :p     &?("%s",pm)                     ;print

00:     ; ---- bufs > tmpbuf4 > lbuf ----
        ; <-- r:buf addr (buffs)
        ;     p:target addr
        ; --> p:target addr (updated)
        (r.0)??{ i--, . }               ;文字列がなければ省略
        &Sc(t,r,255) &> &Sc(p,t) p=r+1,
01:     ; ---- tab2chr ----
        r=t, :d &SF(r,9)
        (r)?(r.0='>',>d)                ;TABを'>'に変換
;       (r)?(r.0=' ',>d)                ;TABをSPCに変換
;       (r)?(r.0=$1E,>d)                ;TABを'→'に変換
02:     (3+$)."$(1,a,0,ff,ff,0)!01(r)$(0,e1,c0,0,48,1)" ; 0,0
03:     ; ---- get from text stack ----
        ; --> r 0: ok
        ;       1: no item in stack
        (kp)??{ (1) . }
        &Bm                             ;Safty
        dz[=kz, r=kp..-1, l=kp-3-r, dz],;スタック先頭アイテムのサイズを取得
        (r>256)?r256,                   ;tmpbuf4のサイズを超過しない
        (l&&v)?{ &Sp(t,"%*Fs",r,l,kz)}  ;高橋版VZに依存(printf)
              ?{ j-, (r){ dz[=kz, r=l.j, dz], t.j=r, j++, } t.j-, }     ;非依存
        r=t, (-1){ &SF(r,$0d) (r)?r..0='n\', ?{} }      ;すべての改行を逐一変換
        &01                             ;tab2chr
        &Sc(p,t) p=r+1,                 ;lbufへ
        (0)
04:     ; ---- cbuf ----
        ; --> r 0: ok
        ;       1: no item in cbuf
        (pu-bc==mg..-3 || ((mg..-3)..-1)&$7fff>256)?{ (1) . }
        u=t,                            ;u: updated ptr
        a=mg..-3,                       ;a: addr cbuf end ptr
        b=(a.-1)&$80,                   ;b: del property(back/forward)
 :B     (a>pu-bc)?{
                c=(a..-1)&$7fff,        ;c: chr(s) length
                (u+c-t>256)?>c
                a-=c+2,
                &Sc(u,a,c) u=r,
        }
        ((a.-1)&$80==b)?>B
 :c     &01                             ;tab2chr
        &Sc(p,t) p=r+1,                 ;lbufへ
        (0)
*

[Variables]
        p,q     ptr(lbuf)
        t       tmp buf (tmpbuf4[256])
        i       items +1(title str)
        w       menu width
        a       addr: cbuf end ptr
        u       updated addr(cbuf)
        b       del property(back/forward)
        c       cbuf chr(s) length
        v       tVZ flag
[Buffers]
        tmpbuf4(pn..-26)        256 bytes temp buf
[History]
2008/12/19 0.10 初版(高橋版T03k2依存,何と金野版にも非対応)
2008/12/26 0.20 製品版に対応,もちろん金野版に対応
[Notes]
削除バッファは面倒だのぉ〜
del系がメニューの中で逆転するのは仕様である
tVZ*以降*判別のつもりが特定の版に依存することが判明 Thanks to Bunta and Konno
メモリ管理に関する無知を露呈
----------$ BUFSMENU.DEF ( lines:101 ) ---------------------< cut here

[3019] Re: BufsMenu v0.20

文太 2008/12/26(Fri) 23:39
[3018]へのコメント
 ううーん、まだ削除バッファが出ないようなのですが…。
 振られても困るしと思って前回見送ってしまったのですが。m(__)m
 いっぱい勉強させていただきます。

[3022] Re^2: BufsMenu v0.20

めざら 2008/12/27(Sat) 09:26
[3019]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
>  ううーん、まだ削除バッファが出ないようなのですが…。

 あら? たまたまうまくいっていただけ?
(pu-bc==mg..-3 || ((mg..-3)..-1)&$7fff>256)?{ (1) . }

 優先順位の問題で,↑ここのところを括弧でくくってください。
 #3018 の方は修正してしまいますので,そちらをコピしていただいても。

>  振られても困るしと思って前回見送ってしまったのですが。m(__)m

 おいおい。わたしが振るような人間に見え…たのですね。(^^;

[3026] Re^3: BufsMenu v0.20

文太 2008/12/27(Sat) 13:04
[3022]へのコメント
>  おいおい。わたしが振るような人間に見え…たのですね。(^^;
 いえいえ、振るというか試すというか…。試験するというかテストするという
か…。(^^; ゞ
 bufsmenu.def、完動状態にあるようです。(^^)v

 (閑話休題)キーボートマクロの偉大さに目覚めて、vz.def  から上位互換・
拡張マクロをいくつか追い出すかぁ、とまたまた(Vz始めてから4度目?)思
っているところです。

[3032] Re^4: アドレスの移動とver check

konno 2008/12/28(Sun) 15:14
[3016]へのコメント
めざらさん

>  他の人へも向けて解説というか釈明しておきます。

解説ありがとうございます。ほんとに読めなかったんですよ。(^^;

> dz[-=3, ;スタックセグメントのちょっと前へ移動

なるほど。過去ログもしらべてわかったんですが、セグメントvzのおしり
なんですね。ここには起動時メッセージがあると。

> r=27.0, ;そこから27バイト先の文字を記憶

これがほんとに分かりませんでした。頭がうにになってるなぁ。(++;
おかげさまで読めるようになりました。特定のVerに依存するパッチ当て
ならこのルーチンは有用ですね。

[2980] 使い方わからず

でがらし 2008/12/16(Tue) 20:54
[2969]へのコメント
 試してみました。使い方、わかりません。どうやったら、
いろんな変数が出てくるんでしょう? 変数のメニューとか
あればわかるんですけど。

 この頃、仕事が多くって。ついに秀丸を買いました。でも
使ってません。VZが使えなくなると困りますね。

 下記が文太さんに作ってもらった英辞郎マクロです。

==
=== EIWA3.def by Bunta ===;
* Macro
50 ^IQ "EIWA3"

?.
&j(0)
fr+, &g("【英辞郎】",20) &Cr
fr-, (r<s)? {&j(-1).}
ss2,

p="ABCDEFGHIJKLMNOPQRSTUVWXYZ",
; 01234567890123456789012345

&Sf(p,pw.0)
(r==0)? {&j(-1) &m("何か変だぞ").}

q=r-p,
(q>=0 && q<=3)? {a="AD", >a}
(q>=4 && q<=9)? {a="EJ", >a}
(q>=10 && q<=15)? {a="KP", >a}
(q>=16 && q<=25)? {a="QZ", >a}

:a
#E &?("c:\tool\Izgrep -t $"■%s$" c:\dic\eiwa\EIJI58%s.TXT >c:\eiwa.txt",pw,a) #m
#[
mx[+, #O "c:\eiwa.txt" #m mx],
&j(-1) &d #] .

*
==

[2983] 特別な使い方というものはありません

めざら 2008/12/16(Tue) 23:39
[2980]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
>  試してみました。使い方、わかりません。

 むむ,アレ以上シンプルな仕様はないと思いますが…,ただ起動するだけでメニューが表示されると思います。表示された中からいずれかを選ぶだけです。望んでいたはずの文字列がメニューに表示されない場合は,既にバッファが更新されてしまっていますので,履歴を遡って参照したい場合は別のマクロを使ってください。
 なお,カーソル位置に出力されないということなら,まだ初期状態のため出力命令が&m()のメッセージラインへの表示になっていますので,&?()に書き換えてください。
 あと,バグがひとつありました。マクロ番号から数えて5行目の「i=9,」というのを「i=9, i++,」というように,i++,を書き足してください。メニューのタイトルの分をアイテム数に入れてやらないと,最後に表示するべきバッファを隠してしまいます。

 変数名からバッファの内容を表示したい場合は,別のマクロを使ってください。多分,色々あります。BufsMenu.def の概念は,とにかく簡単にどこのバッファなどと意識せず,そこに表示された使えそうな文字列を使ってしまおうというものです。ヤヤコシイ変数名などは一切表示しません。

[2984] Re: 使い方わからず

文太 2008/12/17(Wed) 00:32
[2980]へのコメント
でがらしさん

 (1)history.def  by m.gann を使いましょう。必要なときに ^QF でバッフ
ァをずらして pw の文字列を探して検索文字列セット完了。これがいちばんいい
と思う。応用範囲もとても広い。Vzでよかった、と思うと思う。

 (2)めざらさんの新作の完成を待つ。テキストスタックや削除バッファにも
対応する! これも応用範囲ひろし。^QFの窓で欲しい文字列をペースト。どこ
のバッファかなんて気にする必要なし。

 (3)どのヒストリーバッファからでも(中身みたいとシフトで一回見る回り
道をするしかありませんが)どこへでもと非常識なまでにマニアックなことをお
望みなら histcopy.def 。以下。別思想なので(笑&汗)、あははははもの。バ
ッファの勉強になる、エッヘン。要らない!

 (4)その辞書引きマクロに以下を追加して、自動でいつも pw->ps 転送を行
なう(ps が汚れるよ)。やはりマクロイドとして勧められない。history.defを
常用すると、こんなの許せなくなる。

(q>=16 && q<=25)? {a="QZ", >a}
&Sh(ps,pw)			;☆
:a

--------------------------------------------------------------------------
=== Histcopy.def ===;
空の場合や長さのチェックはしていない。ちゃんと確認して行うこと。
シフト(起動時&メニュー内):デモ。メッセージラインの2つのバッファの状態
を表示。dst側は意味なし(ま、中が覗けます)。

* Macro
50 ^OH "histcopy"

	(s>2)?.		;窓とコマンドラインまで許す。
	k=ks&1,

	sc[+,
	!01 (r<0) ?.
	(ks&1)? k+,
	sc],

	(r)>?{			;☆メニュー連動
	(p=pw,q=ps) (p=pf,q=ps) (p=px,q=ps) (p=pa,q=ps)
	(p=pr,q=ps) (p=ps,q=pw) (p=ps,q=pf) (p=ps,q=pa)
	(p=ps,q=pr) (p=ps,q=px) (p=pw,q=px) (p=px,q=pw)
	}

	(k)? >a

	; --- normal: histcopy
	&Sh(p,q)
 	&e(pm+8)
	&m("%s copy, OK.  $"%60s$" ", pm+2,r) .

:a	; --- shift: display both strings, src & dst
	&m("%2s:%32s  ==>>  %2s:%32s",pm+2,q,pm+8,p) .


* P
1	"histcopy",12,12	;☆順序を変えたら上も
	"W ps -> pw"
	"F ps -> pf"
	"X ps -> px"
	"A ps -> pa"	;
	"R ps -> pr"
	"1 pw -> ps"
	"2 pf -> ps"
	"3 pa -> ps"	;
	"4 pr -> ps"
	"5 px -> ps"
	"Y px -> pw"
	"Z pw -> px"	;

*

[2985] histcopy.def修正

文太 2008/12/17(Wed) 00:46
[2984]へのコメント
これはいけない。

; 	sc[+,
; 	!01 (r<0) ?.
; 	(ks&1)? k+,
; 	sc],

 	sc[+,
 	!01 (r<0)? {sc],.}
 	(ks&1)? k+,
 	sc],

[3024] Re: histcopy.def修正

めざら 2008/12/27(Sat) 10:33
[2985]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
sc[+, !01 (r<0) sc], ?.
 あるいは,
sc[+, !01 sc], (r<0) ?.

 評価やコールが絡まなければ,内部レジスタは変化しません。

[3027] Re^2: histcopy.def修正

文太 2008/12/27(Sat) 13:26
[3024]へのコメント
sc[+, !01 sc], (r<0) ?.

 こっちが好き。うん、これは、まったくその通りでした。m(__)m
 最初のを上げた後、やばやば、でももうちょい何とかならんのかと、ディスプ
レイの前で考えたのに出てきませんでした。多謝です。m(__)m
 じつは前にも一度ご指摘いただきました。m(__)m   ただローカルから返ると
きには、無駄でも明示的に (0),(1) するのが好き。
 あ、もちろん、これも榊原・高橋連係プレー。

[2987] ^QF でバッフ ァをずらすって?

でがらし 2008/12/17(Wed) 08:26
[2984]へのコメント
 history.def、当然、あたしの愛用マクロです。で、 ^QF でバッフ
> ァをずらして pw の文字列を探して検索文字列セット完了という部分がわかりません。^QFって、VZの元のものですか? 大分、vz.defをいじっていて、QFというのが見当たりません。

 もう1つ、「どのヒストリーバッファからでも(中身みたいとシフトで一回見る回り道をするしかありませんが)」のところ、どういうことなのか、教えてください。

 末尾のマクロ、まだ試していません。

[2988] Re: ^QF でバッフ ァをずらすって?

文太 2008/12/17(Wed) 10:34
[2987]へのコメント
でがらしさん

 情報、多すぎだね。結局、短期的には有用なのは1つなのに。
 でも、まず試そう! history.defを使い切れてないともったいないよ。
 夜か明日に続き。

[2989] Re^2: ^QF でバッフ ァをずらすって?

文太 2008/12/17(Wed) 12:52
[2988]へのコメント
でがらしさん

 僕が^QF(標準キー)と書いたのは、古いでがらしさんのvz.defでは、
55	^OF  [F06]	:検索文字列の設定
 に当たるキー(コマンド)のことです。

 また「バッファをずらす」というのは、history.defで、←→する操作
のことです。

[2990] 一部理解しました

でがらし 2008/12/17(Wed) 19:33
[2989]へのコメント

 history.defで、←→して「バッファをずらす」操作、理解しました。これ、history.defを長年使っていながら、まるで知りませんでした。いやー、これはいいですね。ありがたや。

 ^QFのほうですが、私の

55 ^OF [F06] :検索文字列の設定

に当たるキー(コマンド)であることは理解しました。私のVZ.DEFまで参照してもらって恐縮です。その後がわかりません。history.defを起動してから^OFとしても、history.defのメニューが消えて編集画面に戻るだけです。

 history.defを起動する前に^OFを起動すれば1行入力画面になります。そこでhistory.defを起動するってことですか? 

[2991] Re: 一部理解しました

文太 2008/12/17(Wed) 20:58
[2990]へのコメント
でがらしさん

 えーと、でがらしさんは自分が何をやりたいのか把握してますでしょうか。

> history.defを起動する前に^OFを起動すれば1行入力画面になります。
> そこでhistory.defを起動するってことですか? 

 はい、そうです。やってみましょう。
 そこでやれることが自分がやりたいことと違った場合、僕のでがらしさん理解
が間違っていたことになります。その場合リクエストをもう一度書いてみてくだ
さい。

 過剰サービスだと思うけど先回りしてしまいますね。僕はでがらしさんが再検索
をしたいのだと思っています。先ほど引いた単語を検索文字列として。で、再検索
はVzの^OFでしたい、なぜなら対象が目の前にファイルとしてあるから。きっと
結果のファイル?
 辞書引きで使っているバッファはpwが示すバッファです。Vzが検索に使うのは
ps。なので、pw->psの文字列転送が必要なのだろうと思い、^OF -> history.def ->
pwの文字列の貼り付け、Vzで検索という手順になるのだろうと思っています。

 万が一、辞書引きマクロでもう一回なら、窓で↑で出ます。

[2992] ああっ、このかいかん

でがらし 2008/12/17(Wed) 21:16
[2991]へのコメント
 いやー、ずばりその通りでした。それが私がずっとしたかったことです。ずばり、かゆいところに指がはまりこんだような。ああっ、このかいかん! たまりませんな。

 *「かいかん」を漢字で入力したら、不適切な表現が含まれているとかで、投稿できません。おのおの方、漢字に換えてご賞味あれ。

[2995] あ、これはいかん(謎)

文太 2008/12/17(Wed) 23:59
[2992]へのコメント
 あ、これはいかん(謎)

↑ このページの先頭