Kazuhiro's blog
ようこそ! Kazuhiro's blog
金曜日, 8月 07 2020 @ 07:41 午後 JST
 記事を友人にメールする 印刷用画面 

Meadow でユニコードテキストをクリップボードとやり取りする

general

NTEmacsでは、selection-coding-systemutf-16le-dosだったりすると、ユニコードテキストをコピー&ペーストで他のアプリとやり取りできるようになっています。

Meadowではクリップボードまわりは独自のルーチンを使っており、他のアプリとのユニコードテキストのやり取りは困難ですが、複数起動されたMeadow間でテキストのコピー&ペーストができるようになっているらしいです。 個人的にはNTEmacsの動作の方が(今となっては)便利そうなので、自分が使うMeadowはNTEmacsのルーチンを使うようにしました。

(2008/05/02 追記) Meadowのtrunkもそのようになりました。

タグ:Meadow

 記事を友人にメールする 印刷用画面 

ldoce4v2-fpw is released

general

先日紹介した、ロングマン 現代英英辞典[4訂増補版]に付属のCD-ROMをFreePWINGで変換されたZelgadissさんが、ツールをldoce4v2-fpwとして公開されました。

タグ:LDOCE4v2 FreePWING EPWING

 記事を友人にメールする 印刷用画面 

LDOCE4v2をFreePWINGで変換

general

ロングマン 現代英英辞典[4訂増補版]に付属のCD-ROMをFreePWINGで変換された方がおられるようです。それによれば、圧縮形式についてはOALD7と変わらないが、xmlのタグに関してはかなり異なっているそうです。

それにしてもiDic大人気ですね。

タグ:LDOCE4v2 FreePWING EPWING

 記事を友人にメールする 印刷用画面 

Hyper Estraier 1.4.12 is released.

general

全文検索システムHyper Estraierがバージョンアップし、1.4.12が公開されました。 併せて、内部で利用しているQDBMもバージョンアップし、1.8.77が公開されました。 ちなみにMLには告知がなく、その後のパッチの投稿で存在に気がつきました。

Windows版のバイナリは準備されていないようで、MLに投稿されたパッチを適用してビルドしてみました。 Windows環境における手順は、ソースアーカイブのmisc/mymemo.htmlに、より具体的な方法が書かれています。 ただし、そこで示されているregular-expression libraryを使用する場合は、Makefileの変更が必要です。

今のところestwaverの動作がおかしい(途中で止まる)ですが、estcmdとestcallによる検索、estcmdによるインデックスの更新は問題なく動いているようにみえます。

タグ:Hyper Estraier

 記事を友人にメールする 印刷用画面 

Another Wikipedia conversion tool

general

iPod touchで動作するEPWINGビューアであるiDicの作者の方が、"my own version of the conversion tool from Wikipedia to EB"の作成を開始した事をアナウンスされています (Development logの12/08/2007 )。

項目の取捨選択をしやすくするのと数式対応を目指すそうです。 数式対応には結局画像を取り込むしかないと思うのですが、そうなると容量的に厳しくなってしまい、項目の取捨選択は必須になるかもしれません。 まあ、wikipedia-fpwでもダンプデータの容量は増えるしかないので、時間がたてば容量が厳しくなるのは一緒ですが。 要TeXになると、TeXを使っていない人には準備が更に面倒になるかもしれませんが、それでも数式が欲しい人には嬉しいお知らせではないでしょうか。

iPod touchを持っていない人は気付かないかもしれないので、私のメモを兼ねてお知らせまで。 ちなみに、私もiPod touchは持っていませんが、参照元にiPod touchにwikipeida-fpwで変換した書籍を入れる方法を紹介するページがあったので気付きました。

タグ:Wikipedia EPWING

 記事を友人にメールする 印刷用画面 

Britannica 2008購入

general

Encyclopædia Britannica Ultimate 2008を購入しました。 日本の公式サイトから買うとまだ古い(当時)うえに手間賃がかなりかかるようなので、直接通販か公式でない通販サイトを考えていましたが、結局アメリカに行ったついでに現地で買いました。 日本語の百科辞典ソフトを買ったことがない (正確には500円のマイペディアは買いましたが、変換してLookup経由でしか使っていないのでカウントしません) ので他との比較はできませんが、単体で使う分にもそれなりに便利に使えそうです。 また、フルインストールしてしまえばメディアが必要なくなる点は個人的には評価しています。

残念ながら英語をスラスラと読む力はありませんので気軽に読むというわけにはいきませんが、40USD程度で百科辞典が購入できるというのはありがたい話です。

ちなみに、コアな部分に関してはjavaっぽいので、javaを利用すれば他のプログラムからもひけるようになるかもしれません。 javaなんてPerl以上に知りませんけど。

タグ:Britannica

 記事を友人にメールする 印刷用画面 

FreePWINGで複数の副本を持つ書籍を作成する

general

現在、oald7-fpwを改造しています。 主な改造点の一つとして、一つの副本を持つ書籍を三つではなく、三つの副本を持つ一つの書籍を生成するようにしました。 FreePWINGはそのような複数の副本を持つ書籍を作る事も考慮されている事に今更ながら気付いたので、その手順を示したメモを公開します。

 記事を友人にメールする 印刷用画面 

さざなみフォントのGRAVE ACCENTについて

general

先程、mule-jaに「intlfontsに含まれているビットマップフォントのGRAVE ACCENT (U+0060)の字形がおかしい」という報告をしたのですが、実はさざなみフォントでもおかしいという話です。

左の図の上段はさざなみ明朝で4ポイントから順番に1ポイントずつ大きくしてGRAVE ACCENTを並べたものです。 表示はOpenOffice.org Writerでズームを100%にして行っています。 大雑把に3種類くらいの字形が含まれているのが分かると思います。 下段はさざなみゴシックで同じ事をしてみたものです。 明朝のように明らかに字形が変わったりはしませんが、字形がGRAVE ACCENTとはなっていない事が分かると思います。

最後に、IPA明朝で同じ事をしてみたものです。 こっちはちゃんとGRAVE ACCENTになっています。

 記事を友人にメールする 印刷用画面 

掲示板の復活

general

最近、ツールに関する質問を受けたりしていたので以前に削除された掲示板を復活させました。 本当はわざわざ掲示板を復活させるほどの分量ではなかったのですが、ない事によって情報が分散しそうな感じなので借り直すことにしました。

今度は消されないように気をつけますので、皆様もお気軽にご利用ください。

 記事を友人にメールする 印刷用画面 

OALD7の圧縮について

general

Oxford Advanced Learner's Dictionary, 7th Editionに付属するOxford Advanced Learner's Compassのデータのうち、圧縮部分に関するメモです。 基本的には先人による解析をトレースしただけです。 圧縮部分も含めて暗号化はされていないので、伸長できれば比較的容易に調べる事が可能だと思います。 ただし、いわゆるidm形式一般にあてはまるものかどうかは分かりません。

本文テキストを例に出します。CONTENT.tdaが圧縮されたデータになります。圧縮されたファイル名に拡張子tdzをつけたファイル名(この例ではCONTENT.tda.tdz)がそのインデックスになります。

圧縮されたデータは、ファイルの末尾にnull文字をつけたものをいくつか結合したもの(以下チャンクと呼びます)をdeflate圧縮し、それを更に結合させて作成されています。ファイル名は別ファイルに収録されます。

インデックスは8バイトが一組で収録されており、その8バイトのうち、先頭の4バイトに圧縮前のチャンクのサイズが、後半の4バイトに圧縮後のサイズがそれぞれリトルエンディアンで収録されています。

本文データのようなテキストファイルを前から順番に取り出すだけの場合、CONTENT.tda.tdzから8バイトずつ読み込み圧縮されたチャンクのサイズを得て、CONTENT.tdaから圧縮されたチャンクを取得します。圧縮されたチャンクはzlibのinflate関数にかけて展開、null文字を区切りとすることで個々のエントリを得ることができます。

n番目のエントリの位置は同じディレクトリのfiles.datに収録されています。テーブル構造は同じディレクトリのconfig.cftを参照して下さい。尚、エントリの位置は圧縮されたチャンクを伸長して結合した場合のオフセットを指しています。 任意のn番目のテキストを得る場合は、CONTENT.tda.tdzに収録された圧縮前のチャンクのデータサイズから目的のテキストが存在するチャンクを決定してデータを取り出します。チャンクをまたいで存在することは無いようです。 テキストの場合はnull文字に当たるまで読み込んでもよいですが、音声・画像のようなバイナリデータの場合は次のエントリのオフセットも取得して伸長後のデータサイズを決定する必要があります。 個々のバイナリデータのサイズは

(n+1)番目のオフセット - n番目のオフセット - 1

のようになります。最後の-1は末尾のnull文字を削る必要がある為です。また、最終エントリについては次のエントリのオフセットがないので例外処理が必要になると思われます。

タグ:OALD7