Namazu-devel-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: phrase search



小関 吉則 (KOSEKI Yoshinori) <kose@xxxxxxxxxxxxxxxxxx> wrote:

>> たしかに。内部コード (UTF-8?) に変換すると、元のファイルでの
>> 文字の位置と対応が取れなくなりそうです。さらに、わかち書きの
>> 際にずれてしまう危険があります。何かいい方法は思いつきません?
>
>Emacs(MULE) 内部では内部コード(emacs-mule)ですが、位置
>(point)は byte 数ではなく文字数で管理しています。

文字数でカウントすると、 fseek 一発でファイルの該当位置に飛
べないのが難点です。ファイルの頭から文字を数えながら当該位置
を探さないといけませんよね。ファイルが大きい場合に遅そうです。

とはいうものの、byte数で記録するのは難しそうなので、文字数で
やらざるを得ないのかもしれません。


>そして bookmark という、編集中のファイル名とカーソル位置を保
>存するという機能があります。

bookmark は愛用しています。smart-find もよく使います。


>;; 多言語対応を考えると「論理的な文字数を位置」を保存して、
>;; namazu 自体を Emacs Lisp で書くのもアリかなと思う。Emacs
>;; server を使って 検索を Emacs にやらせるという....。
>;; 妄想のしすぎですか?

速度が要求される部分だけを Cで書いて、残りは Scheme で書こう
と思っています。Guile Emacs <http://gemacs.sourceforge.net/> 
には簡単に組み込めそうです。:-)

-- Satoru Takabayashi