LoginSignup
11
15

More than 5 years have passed since last update.

シェルから使うオフラインの英和・和英辞書

Last updated at Posted at 2016-12-05

Linux のコマンドラインでオフライン英和辞書を読んで、これちょっと変えるだけで和英としても使えるなー、と思ったのでやってみた。

セットアップ

  1. GENE95 辞書を入手する。
  2. 文字コードと改行コードを変更する。
    • ダウンロード時点ではCRLF改行、文字コードはcp932(shift-jis)になっているはず。
    • 私はvimで開いてset ff=unixset fenc=utf8として変更している。
  3. 適当な場所に配置する。
    • 以降の説明では/usr/share/dict/dictとして保存するものとする。
  4. シェルの設定ファイル(.zshrcなど)に以下のような関数を定義する。
# 辞書を引く(英和)
function ejdict() {
  grep "$1" /usr/share/dict/dict -E -A 1 -wi --color=always | less -R -FX
}
# 辞書を引く(和英)
function jedict() {
  grep "$1" /usr/share/dict/dict -E -B 1 -wi --color=always | less -R -FX
}

使い方

  • 英和辞書を引く(ejdict glasses)。

ejdict.png

  • 和英辞書を引く(jedict 眼鏡)。

jedict.png

補足

  • GENE95の辞書ファイルが「英語、日本語、英語、日本語・・・」と並んでいることを利用して、英和ではヒット単語の1行後、和英ではヒット単語の1行前を同時に表示している。
  • 画像のように検索単語には色が付く(ので検索対象と結果が上下しても気にならないはず・・・まあ入れ替えてもいいが)。
  • -Eを付けているので正規表現での検索もできる(元ネタのコメントより)。

元ネタの@yubaisさんに感謝しつつ、今回はこれで。

修正情報

2016/12/14

  • バッファサイズを超える行が表示される場合、ページャを起動するように修正
  • 特記することも無いが、強いて言えば以下の点がポイント
    • lessにカラー表示を表明するため、grepのオプションに--color=alwaysを付加
    • lessでカラー表示を解釈するため、lessのオプションに -Rを付加
    • バッファ内に収まらない時だけページャを起動するためlessのオプションに -FX を付加
11
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
15