[Mew-dist 17717] Re: mew-fancy-summary.el

Shun-ichi GOTO gotoh at example.com
2001年 6月 8日 (金) 02:23:04 JST


>>>>> at Fri, 8 Jun 2001 01:42:37 +0900
>>>>> jado == Shun-ichi TAHARA (田原 俊一) <jado at example.com> said,

> でもって、scan する際に各文字列にmew-scan-form のどのフィールドによって
> 生成した文字列かをproperty として与えておき、色の描画はそのproperty の内
> 容にしたがって塗っていく、と。

jado> よくわかっていないのですが、ここで直接faceを付けてやればそれで解決する
jado> ような気がしますが、どんなもんでしょう?

えぇ、まぁ、そうともいいます(^^;
faceそのものと分離して元情報としておくことで、faceの付け直しやそれ以外の
目的にも役立つかな、と思ったのだけど、あんまし意味なさそうですね。


jado> # 問題は、propertyをファイルに落とす方法がイマイチわかっていないこと。
jado> # # write-region-annotate-functions の中で next-property-change で辿る?

> properety ごと保存する方法は実は以前から興味があったのでちょっとやってみ
> ました。(色付け処理以外は)添付のパッチような感じで実現は出来ます。
> ## サンプルなので無闇に適用しないように > all

jado> まだ試していないですが、このパッチでは属性は保存されないですよね?

え? そう?
試したんだけどな。なんかまちがったかな。。。
## あまり深くも考えてないですけど。(^^;


> このやりかた、一気に復元できるという意味ではスピードはそれなりに速いかも
> 知れませんが出来上がる.mew-cache は通常の4 倍位のサイズになるため、その
> 分のアレがナニかな、と評価はしにくい。
> 
> ちなみに175 個のメッセージがあるフォルダで、通常の.mew-cache は 22,122
> bytes で添付の方法だと 112,851 bytes です。

jado> 与えるpropertyを小さくしてやると、ファイルサイズが小さくなるのかな…

propertyの情報は、頭から順になめていって、プロパティの種類や値に変化があ
るたびに「どこからどこまでがxxxの属性群」という情報の繰り返しになるので、
property の種類/値が頻繁に切り替わるとその分情報量も増えてしまうので、小
さくするには属性をあまり与えない/変化させないことですかね。
あと、このやりかただと、保存する必要が無いpropertyもいっしょに
保存してしまうので、それらを削れれば確実に小さくなりますが、
それをサクッと行う方法が無いのでねぇ。

## remove-text-properties<f>の補で指定のproperty以外を消す、
## といった操作が簡単にできるといいのだが。



jado> 私の考えていた、\r の後ろに隠す方法でも、ファイルサイズに関しては似た
jado> ようなものでしょうね。

いやぁ、せいぜい倍程度かな、とおもいます。


jado> まあ、このくらいであれば、今やさほど問題ではないような気がしますが、甘
jado> い?

> > 色情報の抜き出し機構は fancy-summary のものを流用できるはずなので、あ
> > とは invisible するところに色塗り処理をねじ込むだけですね。
> 
> これもありでしょう。けど、カラム値で記録しておかないといけませんから、正
> 確かも知れませんが、色づけは結構時間がかかるかも。

jado> looking-at と mew-match で拾い上げて、put-text-property ですかね。
jado> んー、やってみないとわかりませんね。

looking-at だとカラムは扱えないですね。
でも文字数("."と"\\("と"\\)"の集まり)で保持すれば可能か。

 123 06/07 後藤 <gotoh at example.com Re: こんにちは
とかの場合は
^ ... \\(.....\\) \\(.................\\) \\(.*\\)$
といった感じを想像。\1や\2がが何であるかはscan-formからわかるし。

それとバッファに直接プロパティを与えればよいので、mew-matchではなく
match-beginning や match-end を使いますね。


jado> ただ、ソースに grep invisible をかければ、変更個所の見当が付くので楽か
jado> なあ、などと安易に考えていました。

jado> とりあえず、fancy-summary を出して、その後Mew本体へのマージを考えるこ
jado> とにしましょうか。

まぁ、計画を持って、やってみて、考察してみる、と。

--- Regards,
 Shun-ichi Goto  <gotoh at example.com>
   R&D Group, TAIYO Corp., Tokyo, JAPAN



Mew-dist メーリングリストの案内