一括表示

− 野ざらし言 −

[3087] 英辞郎切り分け

文太 2009/01/18(Sun) 21:03
 結果。まずここから。

 ◆オリジナル(原版)

>dir |to
2008 11 15  07:14       137,659,237 EIJI-114.TXT


 ◆切り分け後

>dir *.ejr |to
2009 01 18  19:55           134,527 00.ejr
2009 01 18  19:55           375,328 AA.ejr
2009 01 18  19:55           950,507 AC.ejr
2009 01 18  19:55           871,885 AD.ejr
2009 01 18  19:55         1,177,304 AG.ejr
2009 01 18  19:55           421,080 AM.ejr
2009 01 18  19:55         1,036,897 AN.ejr
2009 01 18  19:55           945,615 AO.ejr
2009 01 18  19:55           686,079 AS.ejr
2009 01 18  19:55         1,114,749 AT.ejr
2009 01 18  19:55           926,354 BA.ejr
2009 01 18  19:55           935,128 BE.ejr
2009 01 18  19:55           531,362 BI.ejr
2009 01 18  19:55         1,041,138 BJ.ejr
2009 01 18  19:55           738,997 BP.ejr
2009 01 18  19:55           726,632 BS.ejr
2009 01 18  19:55         1,785,789 CA.ejr
2009 01 18  19:55           452,118 CC.ejr
2009 01 18  19:55         1,249,242 CH.ejr
2009 01 18  19:55           779,447 CI.ejr
2009 01 18  19:55         4,039,814 CO.ejr
2009 01 18  19:55           738,265 CP.ejr
2009 01 18  19:55           628,902 CT.ejr
2009 01 18  19:55           390,199 DA.ejr
2009 01 18  19:55         2,008,687 DE.ejr
2009 01 18  19:55         1,688,150 DF.ejr
2009 01 18  19:55           690,842 DJ.ejr
2009 01 18  19:55           881,335 DR.ejr
2009 01 18  19:55           786,324 EA.ejr
2009 01 18  19:55           868,936 EL.ejr
2009 01 18  19:55           923,616 EN.ejr
2009 01 18  19:55           911,967 EO.ejr
2009 01 18  19:55         1,176,072 EX.ejr
2009 01 18  19:56           772,680 FA.ejr
2009 01 18  19:56           483,341 FE.ejr
2009 01 18  19:56           942,913 FF.ejr
2009 01 18  19:56           540,195 FJ.ejr
2009 01 18  19:56           906,649 FO.ejr
2009 01 18  19:56         1,077,630 FR.ejr
2009 01 18  19:56           489,324 GA.ejr
2009 01 18  19:56         1,069,712 GE.ejr
2009 01 18  19:56           541,269 GF.ejr
2009 01 18  19:56           952,580 GJ.ejr
2009 01 18  19:56           943,856 GO.ejr
2009 01 18  19:56         1,822,500 HA.ejr
2009 01 18  19:56           816,245 HB.ejr
2009 01 18  19:56           876,421 HF.ejr
2009 01 18  19:56           768,077 HJ.ejr
2009 01 18  19:56           631,176 HP.ejr
2009 01 18  19:56           958,747 IA.ejr
2009 01 18  19:56         3,602,536 IN.ejr
2009 01 18  19:56           505,303 IO.ejr
2009 01 18  19:56           993,879 JA.ejr
2009 01 18  19:56         1,023,597 KA.ejr
2009 01 18  19:56           945,325 LA.ejr
2009 01 18  19:56           831,369 LE.ejr
2009 01 18  19:56         1,003,920 LF.ejr
2009 01 18  19:56         1,478,988 LO.ejr
2009 01 18  19:57         2,169,955 MA.ejr
2009 01 18  19:57         1,101,233 MB.ejr
2009 01 18  19:57           910,626 MF.ejr
2009 01 18  19:57           988,665 MJ.ejr
2009 01 18  19:57           643,784 MP.ejr
2009 01 18  19:57         1,265,556 NA.ejr
2009 01 18  19:48           734,889 NE.ejr
2009 01 18  19:57         1,296,281 NI.ejr
2009 01 18  19:57           283,334 NP.ejr
2009 01 18  19:57           916,888 OA.ejr
2009 01 18  19:57           499,418 ON.ejr
2009 01 18  19:57           795,527 OO.ejr
2009 01 18  19:57           745,987 OS.ejr
2009 01 18  19:57         1,318,021 PA.ejr
2009 01 18  19:57         1,061,108 PB.ejr
2009 01 18  19:57           949,404 PF.ejr
2009 01 18  19:57           638,723 PJ.ejr
2009 01 18  19:57         1,241,494 PO.ejr
2009 01 18  19:57         2,499,758 PR.ejr
2009 01 18  19:57         1,033,669 PS.ejr
2009 01 18  19:57           431,873 QA.ejr
2009 01 18  19:57           720,519 RA.ejr
2009 01 18  19:57         3,377,666 RE.ejr
2009 01 18  19:57           490,996 RF.ejr
2009 01 18  19:57           848,351 RO.ejr
2009 01 18  19:59         1,165,275 SA.ejr
2009 01 18  19:59         1,865,418 SE.ejr
2009 01 18  19:59           837,930 SF.ejr
2009 01 18  19:59           758,653 SI.ejr
2009 01 18  19:59           709,833 SJ.ejr
2009 01 18  19:59           802,273 SO.ejr
2009 01 18  19:59         1,060,237 SP.ejr
2009 01 18  19:59         1,974,851 ST.ejr
2009 01 18  19:59         1,319,369 SU.ejr
2009 01 18  19:59           498,367 SV.ejr
2009 01 18  19:59         1,002,970 TA.ejr
2009 01 18  19:59           819,096 TB.ejr
2009 01 18  19:59         1,009,322 TH.ejr
2009 01 18  19:59           996,435 TI.ejr
2009 01 18  19:59         1,192,188 TR.ejr
2009 01 18  19:59           619,252 TS.ejr
2009 01 18  19:59         1,336,012 UA.ejr
2009 01 18  19:50         1,107,347 UN.ejr
2009 01 18  19:59           659,984 UO.ejr
2009 01 18  19:59           717,638 VA.ejr
2009 01 18  19:59           674,967 VG.ejr
2009 01 18  19:59           656,434 WA.ejr
2009 01 18  19:59           795,972 WE.ejr
2009 01 18  19:59           824,778 WI.ejr
2009 01 18  19:59           624,477 WK.ejr
2009 01 18  19:59            87,598 XA.ejr
2009 01 18  19:59           244,449 YA.ejr
2009 01 18  19:59           282,412 ZA.ejr
             112 個のファイル         109,437,320 バイト

[3088] 英辞郎切り分け法

文太 2009/01/18(Sun) 21:04
[3087]へのコメント
 ファイル名は適宜変更してください。
 ディレクトリは作業専用ディレクトリを作るのが吉。

【よみがなをトル】
----- DELYOMI.BAT -----
Onigsed "s/{[ぁ-ん()/・ ]\+}//g" EIJIRO.ORG >eijiro.txt
-----------------------

【切る】 以下の4つのスクリプトを配置する。
----- 01.SED -----
1,/^■A/Iw 00.ejr
/^■A /I,/^■AC/Iw AA.ejr
/^■AC/I,/^■AD/Iw AC.ejr
/^■AD/I,/^■AG/Iw AD.ejr
/^■AG/I,/^■AM/Iw AG.ejr
/^■AM/I,/^■AN/Iw AM.ejr
/^■AN/I,/^■AO/Iw AN.ejr
/^■AO/I,/^■AS/Iw AO.ejr
/^■AS/I,/^■AT/Iw AS.ejr
/^■AT/I,/^■B/Iw AT.ejr
/^■B /I,/^■BE/Iw BA.ejr
/^■BE/I,/^■BI/Iw BE.ejr
/^■BI/I,/^■BJ/Iw BI.ejr
/^■BJ/I,/^■BP/Iw BJ.ejr
/^■BP/I,/^■BS/Iw BP.ejr
/^■BS/I,/^■C/Iw BS.ejr
/^■C /I,/^■CC/Iw CA.ejr
/^■CC/I,/^■CH/Iw CC.ejr
/^■CH/I,/^■CI/Iw CH.ejr
/^■CI/I,/^■CO/Iw CI.ejr
/^■CO/I,/^■CP/Iw CO.ejr
/^■CP/I,/^■CT/Iw CP.ejr
/^■CT/I,/^■D/Iw CT.ejr
/^■D /I,/^■DE/Iw DA.ejr
/^■DE/I,/^■DF/Iw DE.ejr
/^■DF/I,/^■DJ/Iw DF.ejr
/^■DJ/I,/^■DR/Iw DJ.ejr
/^■DR/I,/^■E/Iw DR.ejr
/^■E /I,/^■EL/Iw EA.ejr
/^■EL/I,/^■EN/Iw EL.ejr
/^■EN/I,/^■EO/Iw EN.ejr
/^■EO/I,/^■EX/Iw EO.ejr
/^■EX/I,/^■F/Iw EX.ejr
/^■G/Iq
------------------

----- 02.SED -----
/^■F /I,/^■FE/Iw FA.ejr
/^■FE/I,/^■FF/Iw FE.ejr
/^■FF/I,/^■FJ/Iw FF.ejr
/^■FJ/I,/^■FO/Iw FJ.ejr
/^■FO/I,/^■FR/Iw FO.ejr
/^■FR/I,/^■G/Iw FR.ejr
/^■G /I,/^■GE/Iw GA.ejr
/^■GE/I,/^■GF/Iw GE.ejr
/^■GF/I,/^■GJ/Iw GF.ejr
/^■GJ/I,/^■GP/Iw GJ.ejr
/^■GP/I,/^■H/Iw GO.ejr
/^■H /I,/^■HB/Iw HA.ejr
/^■HB/I,/^■HF/Iw HB.ejr
/^■HF/I,/^■HJ/Iw HF.ejr
/^■HJ/I,/^■HP/Iw HJ.ejr
/^■HP/I,/^■I/Iw HP.ejr
/^■I /I,/^■IN/Iw IA.ejr
/^■IN/I,/^■IO/Iw IN.ejr
/^■IO/I,/^■J/Iw IO.ejr
/^■J /I,/^■K/Iw JA.ejr
/^■K /I,/^■L/Iw KA.ejr
/^■L /I,/^■LE/Iw LA.ejr
/^■LE/I,/^■LF/Iw LE.ejr
/^■LF/I,/^■LO/Iw LF.ejr
/^■LO/I,/^■M/Iw LO.ejr
/^■N/Iq
------------------

----- 03.SED -----
/^■M /I,/^■MB/Iw MA.ejr
/^■MB/I,/^■MF/Iw MB.ejr
/^■MF/I,/^■MJ/Iw MF.ejr
/^■MJ/I,/^■MP/Iw MJ.ejr
/^■MP/I,/^■N/Iw MP.ejr
/^■N /I,/^■NI/Iw NA.ejr
/^■NI/I,/^■NP/Iw NI.ejr
/^■NP/I,/^■O/Iw NP.ejr
/^■O /I,/^■ON/Iw OA.ejr
/^■ON/I,/^■OO/Iw ON.ejr
/^■OO/I,/^■OS/Iw OO.ejr
/^■OS/I,/^■P/Iw OS.ejr
/^■P /I,/^■PB/Iw PA.ejr
/^■PB/I,/^■PF/Iw PB.ejr
/^■PF/I,/^■PJ/Iw PF.ejr
/^■PJ/I,/^■PO/Iw PJ.ejr
/^■PO/I,/^■PR/Iw PO.ejr
/^■PR/I,/^■PS/Iw PR.ejr
/^■PS/I,/^■Q/Iw PS.ejr
/^■Q /I,/^■R/Iw QA.ejr
/^■R /I,/^■RE/Iw RA.ejr
/^■RE/I,/^■RF/Iw RE.ejr
/^■RF/I,/^■RO/Iw RF.ejr
/^■RO/I,/^■S/Iw RO.ejr
/^■T/Iq
------------------

----- 04.SED -----
/^■S /I,/^■SE/Iw SA.ejr
/^■SE/I,/^■SF/Iw SE.ejr
/^■SF/I,/^■SI/Iw SF.ejr
/^■SI/I,/^■SJ/Iw SI.ejr
/^■SJ/I,/^■SO/Iw SJ.ejr
/^■SO/I,/^■SP/Iw SO.ejr
/^■SP/I,/^■ST/Iw SP.ejr
/^■ST/I,/^■SU/Iw ST.ejr
/^■SU/I,/^■SV/Iw SU.ejr
/^■SV/I,/^■T/Iw SV.ejr
/^■T /I,/^■TB/Iw TA.ejr
/^■TB/I,/^■TH/Iw TB.ejr
/^■TH/I,/^■TI/Iw TH.ejr
/^■TI/I,/^■TR/Iw TI.ejr
/^■TR/I,/^■TS/Iw TR.ejr
/^■TS/I,/^■U/Iw TS.ejr
/^■U /I,/^■UO/Iw UA.ejr
/^■UO/I,/^■V/Iw UO.ejr
/^■V /I,/^■VG/Iw VA.ejr
/^■VG/I,/^■W/Iw VG.ejr
/^■W /I,/^■WE/Iw WA.ejr
/^■WE/I,/^■WI/Iw WE.ejr
/^■WI/I,/^■WK/Iw WI.ejr
/^■WK/I,/^■X/Iw WK.ejr
/^■X /I,/^■Y/Iw XA.ejr
/^■Y /I,/^■Z/Iw YA.ejr
/^■Z /I,$w ZA.ejr
------------------

以下のバッチも切り出し、実行!
----- EIJI_CUT.BAT -----
Onigsed -n -f 01.SED eijiro.txt
Onigsed -n -f 02.SED eijiro.txt
Onigsed -n -f 03.SED eijiro.txt
Onigsed -n -f 04.SED eijiro.txt
------------------------

 ※wコマンドはファイルをオープンする。それが FILES の数を超えていたら、
    当然誤動作する。 だから、スクリプトが4つに分けてある。see config.nt etc.

[3089] 英辞郎ファイル名割りだし

文太 2009/01/18(Sun) 21:06
[3088]へのコメント

 やっと準備が整いました。いよいよVzマクロです。

 なんですが、まだまったくできてない。時間がないのもあるけど、野望が大き
すぎて前に進む気力が見つからない…。やばいな、完成しないぞ、これ…。
 そのうえ、XPでやったら、切り分けファイルと全部ファイルとで、速度が 0.5
秒と 1 秒(初回以降)、1秒と3秒(初回=ディスクキャッシュが効いていない)
ですと。とほほ。ま、モバ用なんですけどね…。

 理由は本人には明白なのですが、疲労困憊していて来週何かが上がることはな
いような気がする…。

 では。                非対話型エディタ sed のような文太。



=== eiji.def (v.0.1) by Bunta ===;
* M
50 ^^ "eijiro"

	?.
	k=ks&1,

	a="C:\TMP\EIJIRO.KEK",			;kekkafile filename
	b="C:\DIC\EIJI\",			;jisyo directory
	c=".EJR",				;jisyo extention
	d="Izgrep -hi",				;command
	e="EIJI.TXT",				;total eijiro file


	;--- close previous kekkafile(s) ---
	p=a,
:A	&14 
	(r)? {&s &#T(r) mx[+, #C (s)? 'n' mx], &d >A}

	;--- #F window ---
	&00 &j(0)				;save FEP mode & OFF
        &10 pq..111[=r, #F &Cr pq..111=0], (r)?{&01 .}

	;--- str analysis & prep
	&Sh(pr,ps) &Su(pr)
	(pr.0<'A' && pr.0>'z') ? { &Sc(pr,"00") >B}	;00.txt
	&Sn(pr) (r==1)? {pr.1='A', pr.2-,}	;if 1 byte chr, add 'A'
	q=pr, &15

	;--- exec on commandline ---
:B	ss2,
	#E 
	(k) ? {&?("%s $"^■%s$" %s%s >%s",  d,ps,b,e,a)}
	    ? {&?("%s $"^■%s$" %s%s%s >%s",d,ps,b,pr,c,a)}
	#m #[

	;--- open kekka ---
	&02 #O &?(a) #m &03			;02 push, 03 pop
	&01 &d .	        		;restore FEP

	;---------- local macros ----------

00:	&j(0) f=mg.-9,
01:	mg.-9=f, &j(-1)
02:	pf[=pr, mx[+, 
03:	mx], pf],

10:     (3+$). "$(0,1,0,1,0,1,0,1,0,1,0,20)【英辞郎】"

14:	;--- file already opened or not; thanx to YASAT & Ikuboh
	;--> p (filename ptr)
	;<-- r==wn if found, 0 if not found
        q[=wo,
  :a	q=q..0,
	&Sx(q+146,p) (r)?? {(q.2) >z}
	(q..0)? >a ? (0)
  :z	q],

15:	;---find dic title 
	;--> q  (input word ptr)
	;<-- pr (dic title 2 chars)

	p[, m[, i[,

;-----------  dic 1st 2 letters  -----------
 p="AAACADAGAMANAOASATBABEBIBJBPBSCACCCHCICO$
CPCTDADEDFDJDREAELENEOEXFAFEFFFJFOFRGAGEGFGJ$
GOHAHBHFHJHPIAINIOJAKALALELFLOMAMBMFMJMPNANE$
NINPOAONOOOSPAPBPFPJPOPRPSQARARERFROSASESFSI$
SJSOSPSTSUSVTATBTHTITRTSUAUNUOVAVGWAWEWIWKXA$
YAZA",

	&Sn(p) m=r,		;max length
	i-,			;ptr counter

  :a 	;=== 1st byte check
	(q.0==p.i)? {i++, >b}	;1st byte FOUND, inc for 2nd b adjust
	(i>m)? >x		;not found
	i+=2, >a 		;loop for 1st byte

  :b	;=== 2nd byte check
	(q.1==p.i)? >f		;2nd byte found
	(q.0==p.(i-1))? >c	; 1st reconfirm for not overrunning to 
	i-=2, >f		;  the next 1st byte char

  :c	;=== go on looking 2nd byte
	(q.1<p.i) ? {i-=2, >f}	;2nd byte overrun
	(i>m)? >x
	i+=2, >b

  :f	i--,			;dec for readjust
	&Sc(pr,p+i,2) 		;&m("found: %c",(p..(i/2))!!) .
	>z
  :x	&Sc(pr,"00")

  :z	i], m], p], .		;=== ends

*

[3090] Re: 英辞郎ファイル名割りだし

めざら 2009/01/20(Tue) 23:00
[3089]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/index.html
 なんて言ったらいいかな。そう,ソースがきれいなの。

 昔,高橋さんが言っていた。
 マクロの書き方が安定すると技術も安定してくる,ということ。

 このきれいなソースを見ると,確かにそんな気がしてくる。

 確かに,Pentium とか Core duo/solo あたりのCPU搭載のPCだと違いが出にくいかもしれませんが,モバギやLXのような能力(いや,モバギは386なんだから十分な気もするのだが)のマシンで実行すると絶対に有り難い速度になると期待していますよ。

[3091] Re^2: 英辞郎ファイル名割りだし

文太 2009/01/21(Wed) 23:50
[3090]へのコメント
めざらさん

 今日はさすがにマクロもスクリプトもまったくやれませんでしたが、おおブル
6、ブル8とか来月、再来月の久しぶりの演奏会の予定を組みました。それを目
標にしろ、金払らっちまったんだ、ふらふらでもいけよな、とか。

 きれいとのお褒めのお言葉、うれしかった。何とか完成させようという気持ち
になりました。マクロは切り貼りだったので、綺麗だと自分で納得できるほどよ
くよく考え読んで眺めるという過程を経ていませんでした。さっき眺めたら、今
後の展開が少し見通せました。うん、綺麗かも。先が見えた。あはは。ありがと
うございます。めざらさんの言葉がなかったら、これでお終いなのか、また終わ
らせられなかったのか、と落ち込むところでした。

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

 モバで実験するには、あきろ様々なカードブートの設定をしないといけないの
で、遠い道のりです。うひょひょひょって楽しむべきなんですけどねぇ…。

 「こんなところで遭難してたまるか」とは高橋さんのお言葉。
 Emmett さんがああまで言う気持ちも十分理解できるのですけどね。

[3095] 英辞郎ファイル分割すてき

でがらし 2009/01/26(Mon) 05:18
[3091]へのコメント
 文太さんのチャレンジ、すてき。きゃー! 応援です。

 私はsedやonigを使ったことがないんで、すぐに手が出ませんが、スピードが早くなるのはうれしいんで、いずれ、試そかな。

↑ このページの先頭