記事閲覧

− 野ざらし言 −

4477 Hbufsize.def

文太 2018/08/20(Mon) 01:37 [4462]へのコメント
 ふて寝して引きこもりになる前に。
 こんなにイライラすることになるとは思いませんでした。30時間ぐらいの
リハビリでは足りなかったんだろうなぁ。あっち行ったりこっち行ったりしてる
からねぇ。
 はっきり言って、背伸び。mg..0と来ましたよ、rでない内部レジスタという
奴ではないでしょうか! ()で評価したらrに入るような気がしてしまいました。
 前にも作ったことあるような気もするし、、、。
 ズドーンと進んで6回ループします。下手でしょうか?

 自前バッファじゃ足りない、やはりラムディスクのワークファイルだ。
自前バッファ(検索文字列が入ってる(^^;)を自動でファイルに書き出す
マクロがあれば、貧乏症の僕も安心だ……。
 でも、既存バッファがどれだけ使われているのか知ってからだろう、
そのワークファイル使用のマクロを書くのは(これは簡単なの)、と思って
しまったのです。
 はまった、、、。
 記念に上げさせてください。

 レスは明日、書きます。

=== Hbufsize by B ===;disp history buffer size & used size in Ymenu
ただ起動。Ymenuに6つのヒストリーバッファの使用状況を示す。
棒グラフにしたかったんだけどねぇ。もう気力ない、、、。
最後にYmenuの応用性の高いところを落としてしまいました、、、。
各種ヒストリーバッファに何か入れてから試したほうが、まだ楽しいような
気がします。いずれにしても面白くないか。シクシク。

* M
50 ^^ "Hbufsize"

	?.
	a=pq..134,	;256  tmpbuf  cmdlineLbuf,&g()
	b=a+12,		;<a> 12, hist size,  <b> 12, used size
	c=b+12,		;<c> 12, used percentage
	d=c+12,		;<d> 12, usable bytes
	e=pq..135,	;256  tmpbuf2 alias,filer,&g()
			;<e> 41*6=246, for work for data-gathering

; --- get size info of 6 hist buffs ---
	i-,
:a	(i)>?{ (ps) (pf) (px) (pw) (pr) (pa) }
	t=mg..0,			;<t>buffer top
	a..i=t..-1,			;buff size info

; --- get buff names ---
	(i)>?{ (m="PS") (m="PF") (m="PX") (m="PW") (m="PR") (m="PA") }

; --- get used sizes ---
	dx=dz, si=t, ax=t..-1,
		;---strlen2
		; <-- dx = segment, si = offset, ax = buffersize (serch max)
		; --> si = offset
	&i("$(52,1F,33,DB,39,1C,74,04,46,48,73,F8,C3)")
	b..i=si-t,

; --- get percentage of used size ---
	c..i=b..i*100/a..i,

; --- get usable bytes (diff) ---
	d..i=a..i-b..i,

; --- gather all info ---
	&Sp(e,"%c:(%4d) %3d%% used,  %4d bytes usable.",(m..0)!!,a..i,c..i,d..i)
	e+=41,				;formatted result strlen 40+1(null)

	(i++ > 5)?? >a			;6 items, that is 5-times loop, 012345


; --- make menu --- ;thanx for wanama, PK14 96/07/17
	e=pq..135,			;gathered data top address
	#]				;-- make dummy macro --
	n=pn..-27,			;pn..-27 linebuffer
	&01 &Sm(n,r,20)			;dummy macro (menu)
	n+=20, (14){n.0-, n++,}		;nulls for item area ???
	&Sc(n,"HistBuff") n=r+1,	;menu title        (6+1)*2=14 ???
	&Sm(n,e,258)			;copy items
	rr[=pn..-27, &* rr],		;exec!

1:	(3+$)."$(1,a,0,ff,ff,0)!01(r)$(0,e1,fc,0,2a,6)"
;                                           ^^^^^^^^^
*
used: a,b,c,d,e,i,m,t,(n in Ymenu)

PS:(1023)   0% used,  1018 bytes usable.
41 (with null)
42*6=252=$fc

0	size
fc	$fc=252
2a	menu幅 (42): strlen(40) +2(spaces)
6	item個数


返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

おなまえ :
Eメール :
タイトル :
メッセージ: 通常モード(推奨)  整形モード(非推奨)  preモード(空白再現)
※ プログラムコード等を含まない場合は,できるだけ通常モードをご利用ください。

参照先 :
暗証キー: (英数字で8文字以内) プレビューなし


- 以下のフォームから自分の投稿記事を修正・削除することができます -

処理 記事No. 暗証キー