ノード:Top, 次ノード:, 前ノード:(dir), 親ノード:(dir)


ノード:Introduction, 次ノード:, 前ノード:Top, 親ノード:Top

はじめに

EB library version 2.3.7およびeblook version 1.3私が加えた機能を解説するためにこの文書を作成しました。

インストール(Installation)と環境設定(Environment)についての記載は追加した機能を使うためのものです。 EB libraryの正式なマニュアルeblookの正規マニュアルは精読して下さい。

私が加えた機能に関することを、EB libraryeblookの作者に問い合わせることは決してないようにお願いします。

この文書は私の初めてのTexinfo文書で、まだまだクロスリファレンスが十分 でないため、一度は最初から順番に読んでください。

EB libraryのアプリはいくつかありますが、eblookを用いることがほとんど だと思います。 eblookはコマンドラインで用いるには少々使いづらかったのですが、 GNU readlineをリンクしてから格段に使い易くなりました。

私のweb page(http://www2s.biglobe.ne.jp/~vtgf3mpr/indxos2.htm)にはOS/2に移植したCDROM検索ソフト、dic 0.24、もおいてあります。

この文書に従ってインストールする前に、同梱したHTML文書eb236.htm をもう一度ご覧になって、必要なファイルがそろっており、なおかつ、インストー ルする環境が存在することを確認することを勧めます(重複した記載もありますが)。


ノード:Updates, 次ノード:, 前ノード:Introduction, 親ノード:Top

修正・更新情報


ノード:Thanks to, 次ノード:, 前ノード:Updates, 親ノード:Top

謝 辞

作者(著作権者)の笠原 基之氏と西田 圭介氏に深謝いたします。OS/2のネイティブ環境で使えるCDROM辞書検索ソフトウェアは皆無に等しかった(なかった?)ため、まだるっこしいのを我慢してWIN/OS2のソフトを使わざるを得なかったのですが、快適にキーボードのみでしかも高速な検索が可能になりました。

OS/2への移植にあたっては、清水和佳氏が シフトJIS対応のためのコードを送って下さり、有用な示唆を与えてくれました(SukiSuki-OS/2 メーリングリスト[#3189 1999/1/29])。 ありがとうございました。


ノード:Compile, 次ノード:, 前ノード:Thanks to, 親ノード:Top

コンパイル環境

OS/2 Warp version 4 + emx09d (gcc 2.8.1)

emx09dより以前の emx runtime 環境では動作しません(恐らく)。


ノード:Difference, 次ノード:, 前ノード:Compile, 親ノード:Top

EB library 2.3.7のオリジナルとの相違点

OS/2のファイルシステムのための微調整以外に、次の二点がオリジナルと異 なります。

環境変数EB_SJISの導入

この環境変数が0に設定されている時に限り、EUC モードとなり、検索結果は EUC のまま出力され、入力文字列は無変換でeblookに渡されます。それ以外では、検索のための文字列は EUC に変換され、出力結果は SJIS に変換されます。基本的にEB_SJISは設定する必要がありません。

syslog

出力しないようにしました。

ソースについて

EB libraryおよびeblookの差分ファイルはeb-2.3.7-OS2.diff.gz およびeblook-1.3-OS2.diff.gzで、 オリジナルソースの修正部分のうち、OS/2特有のところはすべて #if[n]def __EMX__ 節にしています。SJIS 対応部分は SJIS 節としています。

期 待

私にはEBライブラリを用いて、ゼロからユーティリティーを書き上げるほどの 力はありませんので、どなたかがOS/2 PM アプリを作ってくれることを期待して おります。

eblook 1.3 の修正と機能追加については、 Eblook Newを参照。


ノード:Documents, 次ノード:, 前ノード:Difference, 親ノード:Top

文書について

インストールされる重要文書は次のものです。


ノード:Installation, 次ノード:, 前ノード:Documents, 親ノード:Top

インストール

% はコマンドプロンプトをあらわします。

  1. 解凍: HPFS 領域で
    % unzip SOMEWHERE/eblook13.zip
    
    とするとカレントディレクトリに次のファイルが展開されます。
    README-eblook.os2: インストールの前に読むべき説明書
    eblook-list.dat  : インストールされるファイルのリスト
    emx-eblook.zip   : 実際にインストールされることになるファイル
    eb_os2.html      : インストール解説書
    eb_os2.info      : インストール解説書
    
  2. インストールするドライブの決定

    実行ファイルは/emx/bin、DLL ファイルは /emx/dllに、Infoマニュアルは /emx/info/、 文書は/emx/doc、OS/2のパッチは/emx/src/に展開されることに なります。恐らくあなたはいずれかのドライブに、/emx/binというディレクトリを持っていることでしょう。

  3. ドライブxにインストールする場合
    % unzip eblook13.zip -d x:\
    

    x:/emx/binPATHが通っており、x:/emx/infoINFOPATHに含まれていることを確認してください。

    x:\emx\dllconfig.sysLIBPATHに含まれてない場合は追加して下さい。

  4. OS/2 のマニュアルのインストール: eb_os2.htmleb_os2.infoを適当なディレクトリにコピーして下さい。
  5. lookupのインストール

    muleのためのlispプログラムlookupeblookを 快適に使うためには必須と言えるでしょう。

    lookuphttp://openlab.ring.gr.jp/lookup/index.html.jaに最新版が置かれています。

    付属の文書を参照してインストールしてから、環境変数HOMEのディレクトリの.emacsを設定します。例として、次の行を追加します。

    ;; Lookup
    (setq load-path
        (cons (expand-file-name "h:/mule/lisp/lookup")
        load-path))
    (autoload 'lookup "lookup" nil t)
    (autoload 'lookup-region "lookup" nil t)
    (autoload 'lookup-pattern "lookup" nil t)
    (define-key ctl-x-map "l" 'lookup)
    (define-key ctl-x-map "y" 'lookup-region)
    (define-key ctl-x-map "\C-y" 'lookup-pattern)
      (setq lookup-search-agents
        '((ndeb "m:" "g:/emx/etc/var/eb/global-2.0" )))
    ;;       (setq ndeb-process-coding-system '(*sjis* . *sjis*))
    ;; end of lookup
    

    私がlookupのために設定した例は、dot.emacsおよびdot.lookupとして同梱してありますので、参考にしてみたらいかがでしょうか。

  6. eblookで外字をテキストで代替表示するためのライブラリ導入
    適切なappendixがないと、外字はすべて文字化けしてしまいます。国内で入手 できる CDROM 辞書の大半に対応したappendixが公開されているので、インストールすることを強く勧めます。 対応したものがない場合でも、 ftp://ftp.sra.co.jp/pub/misc/eb/appendix/

    からどれか1つを入手して、手作業で修正していくこともできます。

    私は次のようにして導入しました。三省堂の"新グローバル & ニューセンチュリー英和・和英辞典" を使っているので、上記の ftp サイトから、global-2.0.tar.gzをゲット。
               % cd g:/emx/etc/var/eb
    
               % tar zxvf l:/download/global-2.0.tar.gz
    

    これで G:\emx\etc\var\eb\global-2.0 にライブラリが展開されました。 ほんとにこれが CDROM のものに対応しているか調べてみます。 catalogs がドライブ m: のルートデイレクトリにある場合は、次のように ebinfoを実行します。

    [K:\baseutil\eb-2.3.7_os2\os2]ebinfo m:
    disc type: EPWING
    character code: JIS X 0208
    the number of subbooks: 1
    
    subbook 1:
      title: 新グローバル英和・ニューセンチュリー和英
      directory: GEJCJE
     search methods: word endword multi menu copyright
      font sizes: 16 24 30 48
      narrow font characters: 0xa121 -- 0xa351
      wide font characters: 0xa121 -- 0xa63f
    
    
           <注> 環境変数EB_SJIS=0の場合に限り、
                日本語部分は EUC になり文字化けします。
    

    今度はappendixのデータが合致しているかみてみます。やはりebinfoを用いて appendixの catalogsのあるディレクトリを引数に与えましょう。

    [K:\baseutil\eb-2.3.7_os2\os2]ebinfo g:/emx/etc/var/eb/global-2.0
    disc type: EPWING
    character code: JIS X 0208
    the number of subbooks: 1
    
    subbook 1:
     title:
      directory: GEJCJE
      search methods:
      font sizes:
      narrow font characters:
      wide font characters:
    
    

    CDROM の時と異なり、title 等が空白ですが、

             disc type: EPWING
             character code: JIS X 0208
             the number of subbooks: 1
             directory: GEJCJE
    

    これらの項目は一致しているので、どうやら適切なappendix(global-2.0.tar.gz) だったようです。ほんとに外字がうまく表示されるかは、後でeblookをコマンドライ ンやlookupから実行して確認してください。

以上で、ファイルのインストールは終了。


ノード:Environment, 次ノード:, 前ノード:Installation, 親ノード:Top

環境設定

環境変数EB_SJIS=0でなく、EB_PAGERが設定されていると、EB 関連アプリの入出力は SJISと なり、eblookは PAGER を用いるようになります。


ノード:Remark, 次ノード:, 前ノード:Environment, 親ノード:Environment

第一に注意すべきこと


ノード:EnvVars, 次ノード:, 前ノード:Remark, 親ノード:Environment

Environmental Variables


ノード:Readline, 前ノード:EnvVars, 親ノード:Environment

GNU readline

● GNU readline の初期化ファイル : ~/.inputrc

このファイルも.eb_histとは異なり改行コードはOS/2式でもオーケーです。

サンプルをdot.inputrcという名前で同梱しています。環境変数HOMEのディレク トリに、.inputrcというファイルがあるとeblookにリンクされたreadlineが読み込み、キーボード等が初期化されます。もしもまだ.inputrcHOMEのところにおいてない方 は、dot.inputrc.inputrcにコピーしてインストールした方がいいです。 重要なのはファイルの末尾にある次の5行です。

以上で、環境設定の話は終わりです。


ノード:Eblook New, 次ノード:, 前ノード:Environment, 親ノード:Top

eblookに私が追加した機能

eblookをコマンドラインで起動して、helpを実行すると、

eblook> help
 ...
 ...
 kmode [sjis|euc]- Set or show kanji mode
 pager [pager_name|on|off] - Set or show pager mode
 color [foreColor [backColor]] or [on|off]
 -      Set or show color mode : bla blu gre red yel pur cya whi

このように、追加された3つのコマンドが表示されます。


ノード:Pager mode, 次ノード:, 前ノード:Eblook New, 親ノード:Eblook New

環境変数EB_PAGERと pager mode

eblookをコマンドラインで使う時に、何よりも困ったのは、menucontent コマンドによるテキストの出力がある一定限度を越えると、どんどんスクロールアウトしてしまうことでした。そこで、less等のpagerを使えるようにしました。

この環境変数が設定されていると、環境変数PAGERで指定されたPAGERを用いてメニューや検索結果を表示します。 環境変数PAGERが存在しない場合は、OS/2 標準のmore[.exe]を用います。

ただし、EB_PAGER=0と数字の0が設定されている時は、PAGER用いないと宣言していることになります。

★初期設定ファイルの利用

.eblookrc(see Eblook Howto)に、pager less の一行があるとeblookpager modeで起動し、pagerにはlessが使用されます。

ただし、eblookmule + lookupから呼ばれた場合は.eblookrc は読み込まれないので、その場合は環境変数EB_PAGERによりPAGERモードで動作するか決定します。PAGERモードで起動するとmule + lookupでエラーになるのでconfig.sysEB_PAGERを設定することは避けて、.eblookrcで 指定するようにしましょう。


ノード:Kanji mode, 次ノード:, 前ノード:Pager mode, 親ノード:Eblook New

漢字モードの参照と設定

私が改変したEB libraryをリンクしているユーティリティー(eblook, ebinfo等) は、環境変数EB_SJISが存在し0以外に設定されていると、検索文字列に SJISが使用でき、検索結果やメニューの表示もSJISとなります。環境 変数EB_SJIS0かあるいは存在しない場合は日本語EUCモード になります。

環境変数のみによるモード設定ではではやはり不便なので、eblookにコマンドを追加しました。

      eblook> kmode           # 現在の漢字モードの表示
      eblook> kmode euc       # 日本語 EUC モードにする
      eblook> kmode sjis      # EUC 以外の文字列により SJIS モードに

★初期設定ファイルの利用

.eblookrc(see Eblook Howto)に、kmode sjis の一行があるとeblookShift JIS modeで起動します。 kmode eucならconfig.sysEB_SJIS=0以外であっても、日本語EUCモードになります。 ただし、eblookmule + lookupから呼ばれた場合は.eblookrc は読み込まれないので、その場合は環境変数EB_SJISにより漢字モードが決まります。


ノード:Color mode, 次ノード:, 前ノード:Kanji mode, 親ノード:Eblook New

文字色と背景色の設定

私の好みでカラーコマンドも追加しました。 指定できるカラーは、black, blue, green, red, yellow, purple, cyan, white の八色です。colorコマンドの引数にon ないしはoff以外が与えられると、最初の三文字を 取り出して、それをカラー指定と解釈します。

前景色として指定すると明るく、背景色は暗くなるようにしています。

   eblook> color           # 現在のカラーモードの表示
   eblook> color on        # カラーモードオン。デフォルトで文字は白
                           # 背景は紫です。
   eblook> color off       # カラーモードオフ
   eblook> color FG [BG]   # 前景色と背景色(省略可)の設定

   eblook> blu             # 前景色を青にします。
   eblook> yel cya         # 文字を黄色に、背景を暗いシアンに。
   eblook> purple          # カラー指定は最初の三文字のみ help
                           # のみ参照しているので長い名前で指定
                           # してもオーケーです。
   eblook> color which     # これは先頭の"whi" のみが解釈される
                           # ので白が正しく指定されたことになります。

★初期設定ファイルの利用

.eblookrc(see Eblook Howto)に、例えばcolor yel blu の一行があるとeblookは文字色は黄色、背景色が青となります。

eblookmule + lookupから呼ばれた場合は.eblookrc は読み込まれないので、カラーモード指定は安心して使えます。


ノード:GNU readline, 前ノード:Color mode, 親ノード:Eblook New

GNU readline によるコマンドモード環境

オリジナルのコマンドモードには不満を感じていました。 searchcontent等の頻用コマンドを常にその都度最初から打ち直さねば ななかったからです。 bookコマンドを用いる時は、辞書のディレクトリを忠実に入力しなければな りませんでした。

readline対応によりこのような不便は解消されました。 emacs等のエディタやpdkshbashNyaos等のシェルと同様に<CTRL>や<ESC>keyと英字キーを押すことでカーソルを移動したり、文字列やヒストリーを編集できるようになったのです。

Free Software Foundationに感謝!!

入力履歴は、環境変数HOMEのディレクトリに.eb_histという名前で保存され、起動する毎に呼び出されます。 改行コードは Unix 式にしないとなりません。 エディタによっては勝手に改行コードを Unix 式から MSDOS/OS2 式に変換するものがあるので編集する際には気をつけて下さい。 fweなら大丈夫です。

編集機能は次の通りでbash 等のシェルとおなじ。

C<CTRL>。 OS/2では標準で<META>がないので<ESC>を用いるのでE と表記することにします。


ノード:Reflesh, 次ノード:, 前ノード:GNU readline, 親ノード:GNU readline

画面の再描画

C-l
画面が消去され、コマンド行が上端になる


ノード:Ctrl Letter, 次ノード:, 前ノード:Reflesh, 親ノード:GNU readline

コントロール文字の入力

C-q
例えば、C-qに続いて、C-k^k
E-TAB
TAB の入力


ノード:Exchange and Case, 次ノード:, 前ノード:Ctrl Letter, 親ノード:GNU readline

文字の移動・変換

C-t
カーソルの文字と直前の文字を交換
E-t
カーソルの単語とその一つ前の単語を交換
E-u
カーソルの文字から単語の終わりまで大文字化
E-d
カーソルの文字から単語の終わりまで小文字化
E-c
カーソルの文字を大文字化


ノード:Cursor Move, 次ノード:, 前ノード:Exchange and Case, 親ノード:GNU readline

カーソル移動

C-a
行頭へ
C-e
行末へ
C-f
→キーと同じ
C-b
←キーと同じ
E-f
単語一つ進む
E-b
単語一つ戻る
C-h
左の一文字を削除(8 bit 文字の場合はこれを二回実行の必要あり)


ノード:Delete No Buf., 次ノード:, 前ノード:Cursor Move, 親ノード:GNU readline

削除 - バッファに保存しない

C-d
右の一文字を削除(同上)
C-u
行頭からカーソルの前まで削除


ノード:Delete with Buf., 次ノード:, 前ノード:Delete No Buf., 親ノード:GNU readline

削除 - バッファに保存する削除

C-k
カーソルの文字から行末まで削除
C-u
カーソルの一つ前から行頭まで削除
E-d
カーソルの文字から単語末まで削除
E-Del
DEL(C-h)と同様にカーソルの前の一字削除だがバッファに保存
C-w
カーソルの前の一文字から単語頭まで削除


ノード:Input from Buf., 次ノード:, 前ノード:Delete with Buf., 親ノード:GNU readline

削除バッファからの入力

C-y
直前の削除操作の文字列を入力
E-y
一回押すごとに削除履歴を戻る


ノード:History, 次ノード:, 前ノード:Input from Buf., 親ノード:GNU readline

ヒストリー操作

C-p
一つ前
C-n
一つ進む
E-<
ヒストリーの先頭
C->
ヒストリーの最後
C-s
順行性のインクリメンタルサーチ
C-r
逆行性のインクリメンタルサーチ
E-s
順行性の非インクリメンタルサーチ
E-r
逆行性の非インクリメンタルサーチ
E-'C-y'
直前のコマンドの第一引数を入力
          eblook> search foo
          eblook> (E-'C-y')
          eblook> foo

E-. 又は E-_
直前のコマンドの最後の引数を入力
          eblook> search foo bar
          eblook> (E-'C-y')
          eblook> bar


ノード:Argument, 次ノード:, 前ノード:History, 親ノード:GNU readline

コマンドに引数を与える

E-数字
例えば、文字列 abcdefのfの直後にカーソルがある時に時にE-3に続いてC-hdefが削除される
E-- 数字
例えば、文字列 abcdefのdの上にカーソルがある時に時に、E-3に続いてC-dabcが削除される。


ノード:Completion, 次ノード:, 前ノード:Argument, 親ノード:GNU readline

文字列やコマンドの補完

TAB
ディレクトリ・ファイル名やコマンドの補完。一回で決まらない時はもう一度TABを押すと候補が表示される。
     CDROMドライブ m に CATALOGS があり、別の CDROM からコ
     ピーした辞書のCATALOGS が k:/dict にあるとする。
     現在、m drive の辞書を見ているが、k:/dict に変更したと
     する。次のようにする
        eblook>book e:/di    # ここまで入力して TAB を押すと、
        eblook>book e:/dict/ # このように補完入力される
                             # ドライブ e に di 始まるディレ
                             # クトリが唯一つしかないからで
                             # ある

        eblook>se            # ここまで入力して TAB を押すと、
        eblook>search        # もう一度 TAB で
        eblook>select        # もう一度 TAB で


C-i
TABと同じく候補表示(TAB自体の入力はE-<TAB>)
E -?
補完候補の表示
          eblook>book c:/di     #候補が多数ある場合はTABを押して
                                #も補完されない。
                                #E-? を押すと次のごとく
          eblook>book c:/di
          dict disease dissect  # ここで 'c' をタイプして TABを
                                # 押すと dict と補完される
          eblook>book c:/dict/

E-*
すべての補完候補の出力


ノード:Macro, 次ノード:, 前ノード:Completion, 親ノード:GNU readline

キーボードマクロ

C-x そして (
キーボードマクロ登録の開始
C-x そして )
キーボードマクロ登録の終了
C-x そして e
最後に登録したキーボードマクロの実行
C-_ ないしは C-x C-u
インクリメンタルなアンドゥー
E -r
行に対するすべての変更の取り消し


ノード:Tilda, 次ノード:, 前ノード:Macro, 親ノード:GNU readline

チルダ展開

E -~
チルダ展開。カーソルの直前の'~'を環境変数HOMEの文字列に置換する


ノード:Mark and Jump, 前ノード:Tilda, 親ノード:GNU readline

マークとジャンプ

C-@
マークを付ける
C-x そして C-x
現在のカーソルの位置が記録され、一つ前のカーソルの位置がマークとして保存される
C-] に続いて一文字
文字の検索。次に出現する当該文字に飛ぶ
E-C-]
上と逆方向にジャンプ

GNU readline をリンクしたことで、eblookのコマンドラインの操作性は ずいぶんとよくなったと思います。


ノード:Eblook Howto, 次ノード:, 前ノード:Eblook New, 親ノード:Top

eblookの使い方

正式なマニュアルを読む前にともかく使いたい方のために簡単な説明をしていき ます。

● 初期設定ファイル ~/.eblookrc

環境変数HOMEのところに、.eblookrcという名前のファイルがあるとそれが読み込まれて実行されます muleから用いるlookupeblookに "-q" オプションを与えるので、この初期化ファイルは読み込まないので気にせずに、pager や SJIS の設定をしても大丈夫です。

.eblookrcには、eblook内で実行できるコマンドは何でもかけますので、最初に作っておくことを強く勧めます。環境変数はTERMCAPTERMさえ設定してあれば、EB_SJISEB_PAGERを設定しなくても、eblookを自動的にPAGER modeかつSJIS modeにすることができます。使用する辞書を指定してしまうこともできます。

私は次のようにしています。

      book f:/dict/koj G:/emx/etc/var/eb/kojien4-2.2
      pager less
      kmode sjis
      color yel blu
      list
      select 1

f:/dict/koj以下には圧縮された広辞苑を置いてるので、このようにしていますが、例えばCDROM がドライブk:appendixがないなら最初の行は、単にbook k:とします。 pagerlessでもkaolでも好きなものにして下さい。 pagerを持ってないと思う方は、起動ドライブのx:\os2\more.exeが使えるので、

          pager more

としましょう。 漢字モードは通常は、sjis とします。

もしもいろいろな辞書を持っており、CDROMのみで使うならば、.eblookrcbookコマンドは実行しないで、後で述べるようなバッチファイルを作ったらいいでしょうSee Select dic.

私の例では、eblookに何も引数を与えないで起動すると、広辞苑がappendixと共に読み込まれ、文字が黄色の背景が青で次のような画面になります。

[K:\src\eb-2.3.7_os2\ForOS2user]eblook
 1. KOUJIEN     広辞苑 第四版
 2. FUROKU      付属資料
 3. GUIDE       「広辞苑」紹介
 4. EPWDEMO     EPWING 紹介
 5. EPWCTLG     EPWING電子カタログ
 6. SCREEN      書籍選択
eblook>

この画面の時点でselect 1が実行されているので広辞苑 第四版が既に選択され直ちに検索が可能になっています。<CTRL>-pを押していくとと、前回実行時のコマンドが出て来ます。

検索の仕方はいくつか方法があるので、See Search. muleからの使い方については,See .

では、eblookを使ってみましょう。

環境変数EB_SJISEB_PAGERconfig.sysで数字の0以外に設定するか、あるいはeb.cmd等の名称のバッチファイルの中で環境変数を設定してからeblookを実行するかして下さい。 OS/2コマンドシェルの中で二つの環境変数を設定してもかまいません。

ここから先は、config.sysでないしはコマンドシェルでEB_SJISEB_PAGERの二つの環境変数が既に0以外に設定されていると仮定しています。 実際にどのように操作するか見て行きましょう。

CDROMドライブがmappendexg:/emx/etc/var/eb/global-2.0 とします。

K:\src\eb-2.3.7_os2\bin]eblook m: g:/emx/etc/var/eb/global-2.0
eblook>                       # このように eblook というプロンプトが出ます。
                              # help でどんなコマンドがあるか見てみます。
eblook>help
 book [directory [appendix]] - Set a book directory
 info                   - Show information of the selected book
 list                   - List all dictionaries in the selected book
 select subbook         - Select a subbook
 subinfo                - Show information of the selected subbook
 copyright              - Show copyright of the selected subbook
 menu                   - Show the menu of the selected subbook
 search pattern [offset] - Search for a word
 content entry [offset] - Display contents of entry
 font [id]              - Display the bitmap of gaiji
 show [variable]        - Show the value of variables
 set variable value     - Set a variable to the value
 unset varialbe...      - Unset variables
 help                   - Show this message
 kmode [sjis|euc]       - Set or show kanji mode
 pager [pager_name|on|off] - Set or show pager mode
 color [foreColor [backColor]] or [on|off]
 -      Set or show color mode : bla blu gre red yel pur cya whi
 quit                   - Quit program

コマンドはこの通り。 最初に選択可能な辞書のリストを出します。

eblook> list
 1. GEJCJE      新グローバル英和・ニューセンチュリー和英

1 番 が 新グローバル。一つだけですね。次に、辞書を選択します。

eblook> select 1                 # これで選択されました

eblook> info                     # 情報を表示しましょう。
 disc type: EPWING
 character code: JIS X 0208
 the number of dictionries: 1

eblook> subinfo                  # subinfo では次のように表示
 title: 新グローバル英和・ニューセンチュリー和英
 directory: GEJCJE
 search methods: word endword exactword multi menu
 font sizes: 16 24 30 48
                                  # man という文字列で検索します


eblook> search man                # 3 つのエントリがあります
 1. 185e:1b4    Man               # 2 つめを見ましょう。
 2. 185e:2a0    man
 3. 1862:694    -man

eblook> content 2

EB_PAGERが設定されているので直ちにPAGER が起動します。 PAGER=less なので画面は次の如くなります。

(***)man /maen/
<reference>→[名]:成句</reference=1860:592>
       <reference>→[動](他)</reference=1

[名]((現) men)[C]
【人】
[1]〈一般に〉人, 個人,([類語]人間の抽象的又は一般的な特徴を強調
する; <refere
→All men are created equal. 人はすべて平等に生まれついている.
→Every 〜 to his own taste. 【諺】蓼(たで)食う虫も好き好き(人の好みは
さまざま(**).
[2]〈単数無冠詞〉人間, 人類,(mankind).
→rights of 〜 人権.
→Only 〜 knows how to use fire. 人類だけが火の使い方を知っている.
→Man is immortal, but not men. 人類は永遠だが個々の人間はそうでない.
[3]猿人, 原人.
→prehistoric 〜 先史人.
→Peking 〜 北京原人.
【男の人】
[4](a)男, 男子; 成年男子; (<reference>⇔woman</reference=2ed7:520>).
→I'm not a boy; I'm a 〜. 僕はもう子供じゃない, 大人だ.

lessは通常と同様に使えます。qlessを終了すると、

〜 to Paris. 彼女は自分の男を追いかけてパリまで行った.
【人に使われる男】
[9](a)【旧】下男, 男の召使い.
(b)部下, 雇い人, 従業員.
→Like master, like 〜. 【諺】この主人にしてこの下男あり.

このように新たなページが表示されました。 もしも EB_PAGER が設定されてないと画面におさまらない行は消えてしまっていたはずです。 もう一度 'q' を押すとまた別の画面になり三回目の 'q' で次のようになりました。

◆m`an of aff'airs
<reference>→AFFAIR [2]</reference=b0:504>
◆m`an of G'od
聖人; 聖職者.
◆m`an of l'etters

"◆" や"`a"は実は外字で、appendixがインストールされてないと文字コードが表示されます。 コマンドプロンプトに戻ったので今度はmenuコマンドを実行してメニューを見てみます。

  eblook> menu

  <reference>新グローバル英和辞典 まえがき</reference=93c2:1b0>
  <reference>新グローバル英和辞典 編集スタッフ</reference=93c6:4e8>
  <reference>新グローバル英和辞典の使い方</reference=286f9:404>
  <reference>新グローバル英和辞典 発音記号表</reference=9388:300>
  <reference>新グローバル英和辞典 略語表</reference=93c3:568>
  <reference>新グローバル英和辞典 基本重要語</reference=286f9:616>
  <reference>新グローバル英和辞典 不規則動詞表</reference=286f9:7f8>
  <reference>ニューセンチュリー和英辞典 第2版まえがき</reference=9337:506>

これもPAGERで表示されています。 メニュー項目の内容は</reference=9333:10c>9333:10cをコマンドcontentの引数に与えることで表示できます。 基本重要語を表示しましょう

eblook> content 286f9:616

<reference>●基本重要語</reference=93a6:4d4>

<reference>a</reference=93a6:514>
<reference>b</reference=93a8:2a0>
<reference>c</reference=93aa:2>
<reference>d</reference=93ab:798>
<reference>e</reference=93ad:1a0>
                                 # これはPAGERの画面です。

eblook> content 93a6:514         # PAGER から抜けて a の項を表示
a                                # たったこれだけの表示でした。
                                 # menu を "NUMBER1:NUMBER2"形式で
                                 # 表示させてもたったの一行しか表示されない
                                 # ようなことが多いようです。

Eblookの新たな機能の項(Eblook New)で触れたように、私は新たなコマンドを追加しました。pagerkmodeを実行して動作を確認してみて下さい。 pagerを変更したり、漢字モードを切り替えたりするたびに、menuコマンドを実行すると、変化が確認できます。

    eblook> pager           # 現在の PAGER モードの情報表示
    Usage: pager PAGER_NAME
        PAGER is less       # 環境変数 PAGER=less の場合

    eblook> pager off       # PAGER モードをオフに
    Now PAGER mode is off

    eblook> pager on        # PAGER モードをオンに
    Now PAGER mode is on

    eblook> pager karl       # PAGER をkarlに設定
    Now PAGER is set as karl

    eblook> kmode           # 現在の漢字モードの表示
    Usage: kmode [sjis|euc]
            Now in SJIS mode

    eblook> kmode euc       # 日本語 EUC モードにする
            Now in EUC mode


    eblook> kmode sjis      # "euc" 以外の文字列により SJIS モードに
            Now in SJIS mode

このように動的に漢字モードおよびPAGERの使用・非使用を切り替えたり、 PAGERを変更できるようにしています。基本的にPAGERは好みのもので固 定でしょうし、漢字モードを EUC で使うことはないでしょうから、バッチ ファイル中で、あるいは.eblookrcで設定しておいた方がいいでしょう。 このあたりで終了しましょう。

eblook> quit

[K:\src\eb-2.3.7_os2\bin]          # 終わりました。


ノード:Utilities, 次ノード:, 前ノード:Eblook Howto, 親ノード:Top

すべての実行ファイルの簡単な説明

動かす前に、eb.dllz113.dllgnurl22.dllLIBPATHのデイレクトリにインストールされていることをご確認ください。環境変数TERMCAPTERMも設定されてますね。


ノード:EB utils, 次ノード:, 前ノード:Utilities, 親ノード:Utilities

EB library付属のユーティリティ

CDROM辞書がドライブm:にあり、そのルートディレクトリにcatalogがあると 仮定して簡単に動作の説明をします。うまくいきましたらオリジナルの文書を熟読 して活用して下さい。


ノード:ebfont.exe, 次ノード:, 前ノード:EB utils, 親ノード:EB utils

ebfont.exe

ビットマップフォント生成ユーティリティSee .

ヘルプ表示は次の通り。

[J:\src\eb-2.2_os2\ForOS2user]ebfont --help
Usage: ebfont [option...] [book-directory]
Options:
  -d  --debug  --verbose     degug mode
  -f HEIGHT[,HEIGHT...]  --font-height HEIGHT[,HEIGHT...]
                             generate fonts with HEIGHT; 16, 24, 30 or 48
                             (default: 16)
  -h  --help                 display this help, then exit
  -i FORMAT[,FORMAT...]  --image-format FORMAT[,FORMAT...]
                             generate fonts as FORMAT; xbm, xpm, or gif
                             (default: xbm)
  -o DIRECTORY  --output-directory DIRECTORY
                             output fonts under DIRECTORY
                             (default: .)
  -S SUBBOOK[,SUBBOOK...]  --subbook SUBBOOK[,SUBBOOK...]
                             target subbook
                             (default: all subboks)
  -v  --version              display version number, then exit

Argument:
  book-directory             top directory of a CD-ROM book
                             (default: .)

Report bugs to m-kasahr@sra.co.jp.

例えばCDROM辞書がドライブmならばこのよう。

      % ebfont m:       # m drive の CDROM の外字が現在のディレクトリ
                        # 下につくられます。"ebontf -h"で help 情報
                        # bitmap-mule (emacs lisp)と併用すると、
                        # 外字を美しく表示できるはずです。なお、画像
                        # の形式は xbm です。


ノード:disctype.exe, 次ノード:, 前ノード:ebfont.exe, 親ノード:EB utils

disctype.exe

CDROM 辞書の形式判別

      % disctype m:     # ディスクの情報が表示されます。


ノード:ebappendix.cmd, 次ノード:, 前ノード:disctype.exe, 親ノード:EB utils

ebappendix.cmd

EB libraryの作者によるCDROM辞書のappendix関連のperl script。 OS/2で使い易くするためにオリジナルのものに次の一行を追加してファイル名に .cmdを付加しました。

extproc perl -x -S

次のようにしてebappendixのヘルプが表示されます。

[J:\src\eb-2.2_os2\ForOS2user]ebappendix --help
Usage: ebappendix [option...] [input-directory]
Options:
  -b BOOK-TYPE  --book-type BOOK-TYPE
                             make an appendix as BOOK-TYPE; eb or epwing
                             (default: depend on `catalog(s).app')
  -c CASE  --case CASE
                             output files which have filenames with CASE
                             letters; upper or lower
                             (default: depend on `catalog(s).app')
  -d  --debug  --verbose     debug mode
  -h  --help                 output this help, then exit
  -n  --no-catalog           don't output a catalog file
  -o DIRECTORY  --output-directory DIRECTORY
                             output files to DIRECTORY
                             (default: .)
  -s SUFFIX  --suffix SUFFIX
                             output files which have filenames with SUFFIX;
                             none, dot, version or both
                             (default: none)
  -t  --test                 only check for input files
  -v  --version              output version number, then exit

Argument:
  input-directory            input files at this directory
                             (default: .)

Report bugs to m-kasahr@sra.co.jp.


ノード:ebinfo.exe, 次ノード:, 前ノード:ebappendix.cmd, 親ノード:EB utils

ebinfo.exe

辞書情報を表示See .

ヘルプ表示。

[J:\src\eb-2.2_os2\ForOS2user]ebinfo --help
Usage: ebinfo [option...] [book-directory]
Options:
  -h  --help                 display this help, then exit
  -m  --multi-search         also output multi-search information
  -v  --version              display version number, then exit

Argument:
  book-directory             top directory of a CD-ROM book
                             (default: .)

Report bugs to m-kasahr@sra.co.jp.

使用例。

[K:\src\eb-2.3.7_os2\bin]ebinfo m:
disc type: EPWING
character code: JIS X 0208
the number of subbooks: 1

subbook 1:
  title: 新グローバル英和・ニューセンチュリー和英
  directory: GEJCJE
  search methods: word endword multi menu copyrig
  font sizes: 16 24 30 48
  narrow font characters: 0xa121 -- 0xa351
  wide font characters: 0xa121 -- 0xa63f
このように出力されます。


ノード:ebrefile.cmd, 次ノード:, 前ノード:ebinfo.exe, 親ノード:EB utils

ebrefile.cmd

EB libraryに付属するCDROM辞書ユーティリティの1つ。 ebappendixと同様にOS/2で使い易いように、先頭行にextproc ...を追加して、ファイル名を変更しています。

これはperl scriptで元のカタログファイルを読み、ユーザから指定された 副本だけを取り込んだ新しいカタログファイルを生成しますSee .

ヘルプ表示は次の如くです。

[J:\src\eb-2.2_os2\ForOS2user]ebrefile --help
Usage: ebrefile [option...] [input-directory]
Options:
  -c CASE  --case CASE
                             output catalog(s) which has filename with CASE
                             letters; upper or lower
                             (default: depend on input catalog(s) file)
  -h  --help                 display this help, then exit
  -S SUBBOOK[,SUBBOOK...]  --subbook SUBBOOK[,SUBBOOK...]
                             import SUBBOOK to new catalog(s)
  -o DIRECTORY  --output-directory DIRECTORY
                             output catalog(s) to DIRECTORY
                             (default: .)
  -s SUFFIX  --suffix SUFFIX
                             output catalog(s) which has filenames with SUFFIX;
                             none or period
                             (default: none)
  -v  --version              display version number, then exit

Argument:
  input-directory            input catalog(s) at this directory
                             (default: .)

Report bugs to m-kasahr@sra.co.jp.


ノード:ebzip.exe, 次ノード:, 前ノード:ebrefile.cmd, 親ノード:EB utils

ebzip.exe

非常に有用な辞書圧縮ユーティリティ、正式のマニュアルは.

私の使用例はEbzip.


ノード:subbook.exe, 次ノード:, 前ノード:ebzip.exe, 親ノード:EB utils

subbook.exe

subbookの情報表示See Subbook.


ノード:word.exe, 前ノード:subbook.exe, 親ノード:EB utils

word.exe

ソースにのみ説明がありました。

/*
 * ファイル名:
 *     word.c
 *
 * 使用方法:
 *     word book-path word subbook-index
 *
 * 例:
 *     word /cdrom apple 0
 *
 * 説明:
 *     このプログラムは一冊の CD-ROM 書籍のある副本の中から `word'
 *     を探し出します。ヒットしたすべてのエントリの見出しを標準出力
 *     へ出力します。`book-path' は書籍のトップディレクトリ、つまり
 *     CATALOG または CATALOGS ファイルの存在するディレクトリを指す
 *     ようにします。
 *     `subbook-index' は検索対象の副本のインデックスです。書籍の中
 *     の最初の副本のインデックスが `0'、次が `1' になります。
 */


ノード:Batch for eblook, 次ノード:, 前ノード:EB utils, 親ノード:Utilities

eblookのためのバッチファイル


ノード:emacs.cmd and pmmule.cmd, 次ノード:, 前ノード:Batch for eblook, 親ノード:Batch for eblook

emacs.cmd、pmmule.cmd

これら 2 つは環境変数のところで説明したサンプルのバッチファイル。


ノード:eb.cmd, 前ノード:emacs.cmd and pmmule.cmd, 親ノード:Batch for eblook

eb.cmd

??で説明した辞書使い分けのためのバッチファイルの例。


ノード:For Info & DVI, 前ノード:Batch for eblook, 親ノード:Utilities

Infoマニュアル表示・作成とDVI作成・閲覧


ノード:jdvi2tty.exe, 次ノード:, 前ノード:For Info & DVI, 親ノード:For Info & DVI

jdvi2tty.exe

これはオマケ。日本語DVIに対応したテキストモードのDVI viewerです。 doc-ja/*.dviからjdvi2ttyを用いて、doc-ja/*.txtに変換しました。 ヘルプは次の通り。

[K:\src\eb-2.2_os2\ForOS2user]jdvi2tty
dvi2tty  Copyright (C) 1984, 1985, 1986 Svante Lindahl.
Copyright (C) 1988 M.J.E. Mol 1989, 1990
@(#) dvi2tty.c  5.0 29/11/90 M.J.E. Mol (c) 1989, 1990

Usage: jdvi2tty [ options ] <dvi-file>[.dvi]
Options are:
 -ofile   Write output to file, else write to stdout.
 -plist   Print pages whos TeX-page-number are in list.
 -Plist   Print pages whos sequential number are in list.
 -wn      Print the lines with width n characters, default 80.
 -vn      Use n for vertical line height, default 450000.
 -evalue  Add/Substract this value for spacing (-20..20)
 -f       Try to pipe to a pager if output is a tty (default).
 -q       Don't try to pipe to a pager.
 -Fprog   Pipe output to pager prog.
 -a       Remove accents grave etc. from output: \'{e} -> e.
 -t       Assuming that document was made with tt fonts
 -l       Write ''^L'' instead of formfeed between pages.
 -u       National Swedish/Finnish characters printed as aaoAAO (default).
 -s       National Swedish/Finnish characters printed as }{|][\.
 -h       This help message.


ノード:dviview.cmd, 次ノード:, 前ノード:jdvi2tty.exe, 親ノード:For Info & DVI

dviview.cmd

jdvi2tty.exeを呼び出すためのバッチファイルです。 DVIファイルが読みやすいように、OS/2シェル標準の80x125でなく100x30で閲覧するようになっています。 このバッチファイルにあるmode con1 100,30のようなコマンドは以外と知られてないかも知れませんが、非常に重宝します。


ノード:texindex.exe, 次ノード:, 前ノード:dviview.cmd, 親ノード:For Info & DVI

texindex.exe

これもオマケ。ptex.exeのみでは日本語Texinfoのソース(doc-ja/*.texi)をコンパイルしてもインデックスをつくることができません。 このSJIS対応texindexでインデックスを作成できます。日本語TexinfoからDVIを作るには次のようにします。

         1) foo.texi を SJIS に変換
         2) texinfo-ja(js).tex も SJIS に変換
         3) "ptex foo.texi"
         4) "texindex foo.??"
         5) "ptex foo.texi"
         6) "ptex foo.texi"  (二回実行した方が安心)

なお、このtexindex.exeTexinfo 3.1.2dにOS/2用の修正を加えたものに、SJIS対応のパッチを与えて作成したものです。


ノード:ptexi2dvi.cmd, 次ノード:, 前ノード:texindex.exe, 親ノード:For Info & DVI

ptexi2dvi.cmd

これは同梱のSJIS対応texindex.exeを用いてdviを作成するためのバッチファイル。

メインアプリケーションeblookの簡単な使い方はSee Eblook Howto. eblookに私が追加した機能についてはSee Eblook New.


ノード:jtexi2dvi, 次ノード:, 前ノード:ptexi2dvi.cmd, 親ノード:For Info & DVI

jtexi2dvi

Texinfoの現時点での最新のα版であるtexinfo-4.0.tar.gzに付属のシェルスクリプトを日本のOS/2ユーザ用に少しの修正を加えたものです。 (ftp://alpha.gnu.org/gnu/から入手できます。)

日本語のTexinfoやLaTeXのソースを処理するために、texlatexに換えてptexplatexを用いるようにしています。 また日本語を処理できないbibtexmakeindexではなくjbibtexmendexを用いるように修正しました。

このファイルを用いるためにはsh系のシェル(pdkshbash)が必要です。(ftp://hobbes.nmsu.edu/pub/os2/util/shell/より)

環境変数はTMPDIRが参照されますが、TMPDIRにバックスラッシュ(円記号)が含まれているとエラーになりますので、そのような時はスクリプト自体を書き換えるかシェルのなかでTMPDIRを設定しなおしてください。

TMPDIRに関するところはjtexi2dviの260行にあります。

258-  # Vastly abbreviated temporary directory name is so we don't have
259-  # collisions on 8.3 or 14-character filesystems.
260:  tmpdir=${TMPDIR:-/tmp}/t2d$$
261-  # _src.  Use same basename since we want to generate aux files with

私は次のように計算機の環境にあわせて固定しています。

260:  #tmpdir=${TMPDIR:-/tmp}/t2d$$
261:  tmpdir=c:/tmp

sh jtexi2dvi --helpによるヘルプ表示は次のようになります。

Usage: jtexi2dvi. [OPTION]... FILE...

Run each Texinfo or LaTeX FILE through TeX in turn until all
cross-references are resolved, building all indices.  The directory
containing each FILE is searched for included files.  The suffix of FILE
is used to determine its language (LaTeX or Texinfo).

Options:
  -@                   Use @input instead of \input; for preloaded Texinfo.
  -b, --batch          No interaction.
  -c, --clean          Remove all auxiliary files.
  -D, --debug          Turn on shell debugging (set -x).
  -e, --expand         Expand Texinfo macros with makeinfo before running TeX.
  -I DIR               Search DIR for Texinfo files.
  -h, --help           Display this help and exit successfully.
  -l, --language=LANG  Specify the LANG of FILE: LaTeX or Texinfo.
  -p, --pdf            Use pdftex or pdflatex for processing.
  -q, --quiet          No output unless errors (implies --batch).
  -s, --silent         Same as --quiet.
  -t, --texinfo=CMD    Insert CMD after @setfilename in copy of input file.
                       Multiple values accumulate.
  -v, --version        Display version information and exit successfully.
  -V, --verbose        Report on what is done.

The values of the BIBTEX, LATEX (or PDFLATEX), MAKEINDEX, MAKEINFO,
TEX (or PDFTEX), and TEXINDEX environment variables are used to run
those commands, if they are set.

Email bug reports to <bug-texinfo@gnu.org>,
general questions and discussion to <help-texinfo@gnu.org>.


ノード:makeinfo.exe, 次ノード:, 前ノード:jtexi2dvi, 親ノード:For Info & DVI

makeinfo.exe

TexinfoのソースからInfoマニュアルを作成するのに用います。 同梱のmakeinfo.exeは日本語のソースはSJISコードにも対応しています。

最も簡単な使い方:

             $ makeinfo Foo.texi

警告がでてもInfoが作成され、かつファイルが分割されないようにするために は

             $ makeinfo --no-split --force FOO.texi
とします。

HTML文書を作る時は、日本語なら漢字コードをSJISに変換して:

             $ makeinfo --force --html FOO.texi

ヘルプ画面は次の如し。

Usage: makeinfo [OPTION]... TEXINFO-FILE...

Translate Texinfo source documentation to various other formats:
Info files suitable for reading online with Emacs or standalone GNU Info
(by default); plain text (with --no-headers); or HTML (with --html).

Options:
-D VAR                 define a variable, as with @set.
-I DIR                 append DIR to the @include directory search path.
-P DIR                 prepend DIR to the @include directory search path.
-U VAR                 undefine a variable, as with @clear.
--error-limit=NUM      quit after NUM errors (default 100).
--fill-column=NUM      break Info lines at NUM characters (default 72).
--footnote-style=STYLE output footnotes according to STYLE:
                        `separate' to place footnotes in their own node,
                        `end' to place the footnotes at the end of
                          the node in which they are defined (the default).
--force                preserve output even if errors.
--help                 display this help and exit.
--html                 output HTML rather than Info format;
                         implies --no-split.
--ifhtml               process @ifhtml and @html text even when not
                         generating HTML.
--ifinfo               process @ifinfo text even when generating HTML.
--iftex                process @iftex and @tex text.
--macro-expand=MACRO-OUTFILE, -E MACRO-OUTFILE  output original source
                         with macros expanded to MACRO-OFILE.
--no-headers           suppress Info node separators and Node: lines.
--no-ifhtml            do not process @ifhtml and @html text.
--no-ifinfo            do not process @ifinfo text.
--no-iftex             do not process @iftex and @tex text.
--no-split             suppress splitting of large Info output files or
                       generation of one HTML file per node.
--no-validate          suppress node cross-reference validation.
--no-warn              suppress warnings (but not errors).
--output=FILE, -o FILE output to FILE, ignoring any @setfilename.
--paragraph-indent=VAL indent Info paragraphs by VAL spaces (default 3).
                         if VAL is `none', do not indent; if VAL is `asis',
                         preserve any existing indentation.
--reference-limit=NUM  complain about at most NUM references (default 1000).
-v, --verbose          explain what is being done.
--version              display version information and exit.

The defaults for the @if... conditionals depend on the output format:
if generating HTML, --ifhtml is on and the others are off;
if generating Info or plain text, --ifinfo is on and the others are off.

Email bug reports to bug-texinfo@gnu.org,
general questions and discussion to help-texinfo@gnu.org.


ノード:info.exe, 前ノード:makeinfo.exe, 親ノード:For Info & DVI

info.exe

info.exeは現時点で最新のTexinfo 4.0のものです。 すべてのドキュメント、差分ファイルそして実行ファイルよりなるフルセット版 (ソースは別)はhttp://member.nifty.ne.jp/jsawa/texinfo-4.0-3.i386-OS2.rpmです。 最新の情報はhttp://www2s.biglobe.ne.jp/~vtgf3mpr/indxos2.htmを参照のこと。

●既にinfoを使っている場合

info.exePATHの通ったところにコピーするだけでインストールは完了です。

●初めて使う場合

config.sysで環境変数INFOPATHを設定する必要があります。ディレクトリは;で区切って下さい。例として次のごとく。

          set INFOPATH=.;g:/emx/info;h:/mule-2.3/info;

カレントディレクトリのファイルも検索するようにするために、例のように.;は最初に指定した方がいいです。 次にこのディレクトリにあるdir(私が使っているもの)をINFOPATHのディレクトリのいずれかにコピー。このdirは大概のGNUソフトウエアのマニュアルを登録済です。

infoそのもの(info.exe)のマニュアル

このディレクトリ(eb-2.2_os2/ForOS2user)にあるinfo.infoinfo-stnd.infoがそれなので、INFOPATHで指定したディレクトリに、 他のInfoマニュアルと共にコピーして下さい。

XFree86 for OS/2で使うには、startx.cmdないしはxinitrc.cmdに次の如き一行をファイルの先頭に追加してください。

        'set XINFO=1'    # =につづく文字列は何でも良し

startx.cmdxinitrc.cmdREXXスクリプトなので、必ず両端を'で囲むことを忘れないように。

● 起動


ノード:Ebzip, 次ノード:, 前ノード:Utilities, 親ノード:Top

圧縮辞書の作成と使用法

ようやくいろいろと辞書を入手したので、圧縮してみました。圧縮にはさすがに 時間がかかりますが、私の4倍速CDROMよりも圧縮辞書の方が体感的にずっと 早いです。

広辞苑のCDROM がドライブmとします。辞書の元となるCATALOGSd:/dict/kojienに置く事にしましょう。

         % d:
         % mkdir dict
         % mkdir dict\kojien
         % cd dict\kokien
         % ebzip -k m:        # -k は元ファイルを削除しないように
                              # という命令。必ず指定のこと!!!
これで半分くらいのサイズに圧縮されたものが、d:/dict/kojien/以下にできます。

ハードディスクに圧縮された辞書を見るときは、CATALOGS のあるとこを指定する だけです。

         % eblook d:/dict/kojien

これでオーケーです。


ノード:Select dic, 次ノード:, 前ノード:Ebzip, 親ノード:Top

バッチファイルによる辞書の使い分け

辞書が複数ある場合は、.eblookrcで漢字モードや PAGER の設定をして、 バッチファイルで辞書を使い分けるのが便利です。 同梱のeb.cmdは次のようになっています。

@echo off
if "%1"=="" goto usage
set EB_PAGER=1
set EB_SJIS=1
set PAGER=karl
if "%1"=="ko" eblook -q f:/dict/koj G:/emx/etc/var/eb/kojien4-2.2
if "%1"=="gl" eblook -q m: g:/emx/etc/var/eb/global-2.0
if "%1"=="ch" eblook -q e:/dict/chu g:/emx/etc/var/eb/chujiten2-2.0
goto end
:usage
echo\
echo %0 gl: 三省堂グローバル
echo %0 ch: 研究社中辞典
echo %0 ko: 広辞苑
:end

このように PAGER モード および SJIS モードをオンにし、更にconfig.sysの 設定ではPAGER=lessとなっているところを、ここではkarlにしています。 このバッチファイルを参考にして御自分用に作るのも1つの考えでしょう。 上の例でわかるように、広辞苑と中辞典はハードディスクのものを指定してます。 もちろんその二つはebzip(see Ebzip)で圧縮しました。サイズは半分以下になり、それでも CDROM よりも高速に検索できるので私は大満足しています。


ノード:Make from source, 次ノード:, 前ノード:Select dic, 親ノード:Top

ソースからビルドするには

ビルドに必要な環境は eb236.htm(txt) に記載の通りです。 次の手順でおこなって下さい。

GNU readline 4.0のメイク

readline-4.0.tar.gzGNUのミラーから、例えば、ftp.lab.kdd.co.jp/GNU/readline/より。

         $ tar zxvf SOMEWHERE/readline-4.0.tar.gz
         $ cd readline-4.0
         $ chmod +rw -R *
         $ gzip -dc SOMEWHRE/readline-4.0-OS2.diff.gz | patch -p1

             # この段階で、config.status@prefix=/usr/localを
             # あなたの環境に応じて編集します。
             # *.h は ${prefix}/include/readlineに、
             # *.a と *.lib は ${prefix}/lib にインストールされます。
         $ sh config.status
         $ make
             # prefix が x:/emx ならば
         $ mkdir x:\emx\include\readline
         $ make install
         $ cp *.dll x:\emx\dll\

これで GNU readline がインストールされました。

EB libraryeblookのソース

eb236.htmからeb 2.3.7のソースとeblook 1.3のソースを入手し下さい。

eb library のメイク

      $ tar zxvf SOMEWHERE/eb-2.3.7.tar.gz
      $ cd 2.3.7
      $ chmod +rw -R *
      $ gzip -dc eb-2.3.7-OS2.diff.gz | patch -p1
      $ sh config.status
      $ make

eblook のメイク

      $ tar zxvf SOMEWHERE/eblook-1.3.tar.gz
      $ cd 1.3
      $ chmod +rw -R *
      $ gzip -dc eblook-1.3-OS2.diff.gz | patch -p1

         # この段階で、config.status の
         #    s%@EB_CFLAGS@%-I../eb-2.3.7-os2 -I../eb-2.3.7-os2/zlib/%g
         #   s%@EB_LDADD@%-L../eb-2.3.7-os2/eb/.libs -L../eb-2.3.7-os2/zlib/
         # これら二行を先に eb library を展開したディレクトリ名に一致する
         # ように修正して下さい。私は親ディレクトリの eb-2.3.7-os2に
         # 展開したのでこのようになっています。単に -os2を除去するのみ
         # でいいと思います。

      $ sh config.status
      $ make

インストール

*.exe,*.dllを適当なところにコピーして、環境変数をconfig.sysやバッチファイルで設定してください。See EnvVars.

まだまだOS/2のために修正すべきところがあると思います。追加・修正パッチができ ましたらSukiSuki OS/2 Mailing listや私宛てに送って下されば幸いです。


ノード:Confirm, 次ノード:, 前ノード:Make from source, 親ノード:Top

再確認

長い文章を読んでこられたと思います。

次の諸項目が正しく設定されているかもう一度確認を。

以上が適切に設定されていれば、問題なく動作するはずです。 不具合がありましたら、原作者ではなく私のミスの可能性が高いのでメール等で 連絡してください。 GNU readlineの機能(see GNU readline)、PAGER mode(see Pager modeSJIS/EUC切り替え機能(see Kanji mode)の3つは、私が付加し たものなので、これらに関して原作者に問い合わせることのないように注意して 下さい。

2000/4/15
                 沢田石順
                  http://www2s.biglobe.ne.jp/~vtgf3mpr/indxos2.htm


ノード:Key Index, 次ノード:, 前ノード:Confirm, 親ノード:Top

Key Index


ノード:Concept and File Index, 前ノード:Key Index, 親ノード:Top

Concept and File Index

目 次