やっぱりWnnが好き!


1. Wnnとは何か?

現在、Wnnにはさまざまな種類が存在しますが、元々はUNIX系のOS(Linux等)上でかな漢字変換をするソフトウェアでした。

Wnnは、京都大学、慶應義塾大学、立石電機(現・オムロン)、アステック(現・アールワークス)によって共同開発され、1987年に完成しました。

FreeWnnは、Wnnのバージョン4.2を元に、無料ソフトを維持し、フリーなライセンス(GPL)で公開されているもので、本ページではWnnはFreeWnnを意味します。


2. なぜWnnなのか?

Wnnは、①かな漢字変換時にそのまま新しい単語をとして辞書登録でき、②使用頻度を含む変換辞書を次のコンピューターに引き継ぐことができます。

私の知る限り、この2つの機能を有するかな漢字変換ソフトウェアは、Wnnしかありません。

私たちは、日々、大量の文章を書いています。そのかな漢字変換の履歴は、まさにビッグデータ、宝の山です。

すなわち、ビッグデータを引き継ぎ、育て続けることができるのは、Wnnしかないのです。


3. Wnnを使う方法

Wnnを使う方法には、主に次の3つがあります。

Wnnはサーバー・クライアント方式を使っています。サーバーとしてFreeWnnを起動しておいて、クライアントからアクセスする方式です。

FreeWnnは最新のUbuntu等でも動きますので、問題はクライアントです。

クライアントとしては、次の3つの方法があります。

3-1. Egg-tartを使って、最新のEmacsを使う方法

Emacsは、UNIX系のOS(Linux等)上で動作するエディタです。

テキストモード、HTMLモード、Pythonモードなど様々なモードが用意されており、あらゆる文章やプログラムコードを書くことができます。

Emacs上でWnnを使うには、Egg("た"くさん、"ま"たせて、"ご"めんなさい=たまご=Egg)を使います。

このEggの開発が止まっており、最新のtamago-tsunagi-5.0.7.1でもEmacs24.3以降では正常に動作しなくなっています。

幸いなことに、egg-tart.elというファイルをインストールして、tamago-tsunagi-5.0.7.1を少し修正するすることによって、最新のEmacs(29.3まで確認済み)上でも正常に動作します。

tamago-tsunagi-5.0.7.1とegg-tart.elは下記のURLからダウンロードできます。

GithubのEgg-tartのページ

細かいことに興味のない方は、次のようにすれば使えるようになります。

次のコマンドで、インストールします。


    root> wget -O egg-tart-main.zip https://github.com/hata48915b/egg-tart/archive/refs/heads/main.zip
    root> unzip egg-tart-main.zip
    root> cd egg-tart-main
    root> tar xvfz tamago-tsunagi-5.0.7.1.tar.gz
    root> cd tamago-tsunagi-5.0.7.1
    root> mkdir /usr/local/share/emacs/site-lisp/egg
    root> mv egg its \*.el /usr/local/share/emacs/site-lisp/egg/
    root> rm -f /usr/local/share/emacs/site-lisp/egg/egg-com.elc
    root> cd ..
    root> cp -p egg-tart.el /usr/local/share/emacs/site-lisp/egg/
    root> chmod 444 /usr/local/share/emacs/site-lisp/egg/egg-tart.el
    root> chown root:root /usr/local/share/emacs/site-lisp/egg/egg-tart.el

次のコードを、~/.emacs.d/init.elに書き込んでください。


    ;;;=========================================================;;;
    (add-to-list 'load-path "/usr/local/share/emacs/site-lisp/egg")
    (if (not (fboundp 'make-coding-system))
        (defun make-coding-system (coding-system &rest rest)
          (define-coding-system coding-system ""
            :mnemonic ?w :coding-type 'charset)))
    (require 'egg)
    (load "/usr/local/share/emacs/site-lisp/egg/leim-list")
    (load "/usr/local/share/emacs/site-lisp/egg/menudiag")
    (load "/usr/local/share/emacs/site-lisp/egg/egg-tart")
    (setq default-input-method "japanese-egg-wnn")
    (setq wnn-jserver "127.0.0.1")
    (setq egg-default-startup-file "~/.eggrc.el")
    ;;;=========================================================;;;

3-2. Chrootを使って、古いEmacsを使う方法

Egg-tartを使う方法は限界が近付いておりますので、将来的にはこちらがおすすめです。

Chrootは、UNIX系のOS(Linux等)において、OSに別のバージョンのOSの環境を作ってし、ソフトウェアを使う技術です。

例えば、最新のUbuntuにUbuntu14.04(Trusty Tahr)の環境のEmacsでは、tamago-tsunagi-5.0.7.1が問題なく動きます。

サポートの終わったEmacsを動かすことになりますので、確かにセキュリティ的に問題はあります。

しかし、不審なEmacs Lisp(マクロ)を動かす等しなければ、トラブルが起きることは現実的にはないと思います

具体的には次のようして、Ubuntu14.04(Trusty Tahr)の環境を作り、Emasc24.3をインストールします。


    root> apt-get install debootstrap
    root> debootstrap trusty /trusty
    root> choot /trusty
    chroot> apt-get install emacs

次のようにしてtamago-tsunagi-5.0.7.1をインストールします。


    chroot> apt-get install wget
    chroot> wget https://github.com/hata48915b/egg-tart/raw/refs/heads/main/tamago-tsunagi-5.0.7.1.tar.gz
    chroot> tar xvfz tamago-tsunagi-5.0.7.1.tar.gz
    chroot> cd tamago-tsunagi-5.0.7.1
    chroot> ./configure
    chroot> apt-get install make
    chroot> make
    chroot> make install

root権限で使うのは危険なので、Chrootの環境にもユーザーを追加することをおすすめします。


    chroot> useradd (ユーザー名)
    chroot> mkdir /home/(ユーザー名)
    chroot> chown (ユーザー名):(ユーザー名) /home/(ユーザー名)
    chroot> chmod 700 /home/(ユーザー名)

Emacsの設定ファイル(.emacs.el.eggrc.el)を/trusty/home/(ユーザー名)においてください。

次のようにして、Emacsを起動します。


    root> mount --bind /tmp /trusty/tmp
    root> mount --bind /proc /trusty/proc
    root> choot /trusty
    chroot> su (ユーザー名)
    chroot_user> env XMODIFIERS= emacs
    (Wnnを使って、文章を作成・編集)
    chroot_user> exit
    chroot> exit
    root> umount /trusty/proc
    root> umount /trusty/tmp

シェルスクリプトを作れば、もっと簡単に使えるようになると思います。

3-3. Kinput2を使う方法

ブラウザやメーラなどの一般的なソフトウェア上で、Wnnを使うにはkinput2を使うのが一般的です。

Kinput2は最新のUbuntu等でも動きますし、Chroot環境でも動きますので、特に問題はありません。

しかし、たまに一部のソフトウェアで、バージョンアップした際などに正常に動作しなくなることがあります。

個人で解決することは困難ですので、直るのを気長に待つか、Chrootを使って古いバージョンを使うかしてください。

Wnnのユーザーはコンピューターに詳しい方だと思いますので、釈迦に説法だと思いますが、念のために使い方を説明しておきます。

次を~/.Xresourcesに書き込んでおいてください。


    Kinput2*ConversionStartKeys: ~Meta Shift ~Ctrlspace \n Zenkaku_Hankaku

次の環境変数を設定しておいてください。


    export XMODIFIERS="@im=kinput2"
    export GTK_IM_MODULE=kinput2
    export QT_IM_MODULE=kinput2

次のコマンドで、Kinput2を起動します。


    /usr/bin/kinput2 -wnn -wnnenvrc ~/.wnnenvrc -kanjifont k20g

4. Wnnに関するリンク集

オムロンソフトウェア株式会社のページ ← 最新のWnnの仲間たち。

「FreeWnn Project」のページ ← Wnnといえば、まずはこのページ。

FreeWnn/Wnn4.2/Eggを賢くするものたち ← 「私家版pubdic+補遺」は、秀逸の極みです。

freewnn [Sakakibara Hiroshi / 榊󠄀原 寛] ← 最近見つけました。

Wnn - Wikipedia ← ウィキペディアのページ。

Wnn - アンサイクロペディア ← アンサイクロペディアのページもあります!