Help us understand the problem. What is going on with this article?

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

More than 3 years have passed since last update.

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 を付加
gimKondo
柔術家兼プログラマ。 元々植物学が専門だったが、研究でデータ解析の自動化のためにプログラムを書いてみたのが切っ掛けで、ソフト屋さんになる。 経験年数はC++が多め。 最近はElixir、Go、Vue.js。
http://gimkondo.blog98.fc2.com/
mohikanz
エンジニアのための雑談コミュニティ
https://mohikanz.slack.com
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした