jvim+onew (Japanized Vim and Onew library)

[ 戻る | トップページに戻る ]

概要

jvim+onew とは、vi クローンのエディタ vim を Onew ライブラリを使用して 日本語化したものです。

URL

ftp.kddlabs.co.jp/.6/Japan/onew/

インストール環境

Slackware Linux 7.0 (Kernel 2.2.13 + glibc 2.1.2)
LJJP (canna35b.tg)

必要なもの

Canna or Wnn

バージョン

jvim2.0 + onew2.2.10

インストール手順

$ mkdir jvim2.0r+onew2.2.10
$ cd jvim2.0r+onew2.2.10
$ tar xvfz jvim2.0r+onew2.2.10.tar.gz
$ cd onew
$ cp ONEW_CONF.default ONEW_CONF

ONEW_CONF を以下のように編集する。
#=======================#
#       CANNA           #
#=======================#
# Canna を使用する場合には、以下を適切に設定して下さい

CANNAINC    = -I/usr/include/canna
                ~~~~~~~~~~~~~~~~~~修正
CANNAOBJ    = Canna.o CannaRk.o
CANNALIB    = -L/usr/lib -lcanna
                ~~~~~~~~修正

ではコンパイル。
$ make
(snip)
Wnn.c:27: jlib.h: そのようなファイルやディレクトリはありません
make[3]: *** [Wnn.o] Error 1
make[3]: Leaving directory `/usr/local/src/jvim2.0r+onew2.2.10/onew2.2.10/engine'
make[2]: *** [mkmk] Error 2
make[2]: Leaving directory `/usr/local/src/jvim2.0r+onew2.2.10/onew2.2.10/engine'
make[1]: *** [mkengine] Error 2
make[1]: Leaving directory `/usr/local/src/jvim2.0r+onew2.2.10/onew2.2.10'
make: *** [boot] Error 2

むう。Wnn.c でこけている? Wnn 入れてないっすよ。じゃあ、ONEW_CONF を修正。
#################################################################
#       Available engines  使用するエンジンの選択               #
#################################################################
#以下の A),B),C) のうちいずれか一つを選択して下さい。

#★   A) WNN のみを使用する場合
#RKKLIBS                = $(WNNLIB)
#RKKOBJS                = $(WNNOBJ)

#★   B) Canna のみを使用する場合
RKKLIBS        = $(CANNALIB)          <--- 行頭の # を削除
RKKOBJS        = $(CANNAOBJ)          <--- 行頭の # を削除

#★   C) Wnn,Canna をともに使用する場合
#RKKLIBS = $(CANNALIB) $(WNNLIB)      <--- コメントアウト
#RKKOBJS = $(CANNAOBJ) $(WNNOBJ)      <--- コメントアウト

#起動時のデフォルトのエンジン("ローマ字かな/かな漢字")
ONEW_ENGINE     = '"wnn/wnn"'
#(この設定は、エンジンが1種類しか無い時には無視されます)

ではもう一度。
$ make clean
$ make
$ echo 'watasinonamaeha ' | ./onew
Hit ESC to quit.
[ROMKAN & KANAKAN FILTER] ONEW-2.2.10 95/07/02 -- <ysato@etl.go.jp> start.

[CANNA] error in romaji-kana table:/tmp/onew_rktabs/canna/default.kp
         
watasinonamaeha

今度は無事コンパイル終了。だが、テストで失敗してる。これってローマ字かな変換表 がないから? んじゃ、こうすればいいのかな。またまた ONEW_CONF を編集。
# //////// Canna実行時の環境の定義 ////////
CANNA_RKPATH    = '".:$$HOME:/usr/lib/canna/dic:/tmp/onew_rktabs/canna"'
                             ~~~~~~~~~~~~~~~~~~修正
CANNA_RKTAB     = '"default.cbp"'
                    ~~~~~~~~~~~修正
CANNADEF        = -DCANNA_RKPATH=$(CANNA_RKPATH) -DCANNA_RKTAB=$(CANNA_RKTAB)

やり直し。
$ make clean
$ make
$ echo 'watasinonamaeha ' | ./onew
Hit ESC to quit.
[ROMKAN & KANAKAN FILTER] ONEW-2.2.10 95/07/02 --  start.
[なr] ^@:romkan-OFF ^K:あ/ア ^L:あ/a Z:a ^V:a ^G:一覧 SPACE:変換 RET:確定
わたしのなまえは
ONEW-2.2.10 95/07/02 --  ** CANNAHOST(hoge)に接続中... :-)
[漢な] 文節{^F,^B:前進,後退 ^O,^I:拡大,縮小} 候補{^N,^P:検索 ^G:一覧} RET:確定
私の名前は
[なr] ^@:romkan-OFF ^K:あ/ア ^L:あ/a Z:a ^V:a ^G:一覧 SPACE:変換 RET:確定

よし、おっけー。では次に jvim のコンパイル。
$ cd ../jvim2.0r/src
$ cp makefile.junx Makefile

Makefile を以下のように修正する。
# Mail Domain for URL support
# ここに、メイルアドレスのドメイン名を設定してください。
#
# example: MDOMAIN = -DMDOMAIN=\"mrit.mei.co.jp\"
#
MDOMAIN = -DMDOMAIN=\"Set.Your.Mail.Domain\"     <--- メールアドレスのドメイン名を指定
(snip)
#>>>>> ONEW specific options
#JPDEF = -DONEW -DWNN_ISDIR     # Wnn + Canna / Onew   <--- コメントアウト
#JPLIB = -lonew -ljd -lcanna    # Wnn + Canna / Onew   <--- コメントアウト
JPDEF = -DONEW                  # Canna / Onew         <--- 行頭の # を削除
JPLIB = -lonew -lcanna          # Canna / Onew         <--- 行頭の # を削除
#JPDEF = -DONEW -DWNN_ISDIR     # Wnn / Onew
#JPLIB = -lonew -ljd            # Wnn / Onew
#JPDEF=                         # no Onew
#JPLIB=                         # no Onew

ではコンパイル。
$ make euc
(snip) 
gcc -O2 -Wall -c -DBSD_UNIX -DTERMCAP -DSOME_BUILTIN_TCAPS -DNO_FREE_NULL
    -DSYSJVIMRC_FILE=\"\$HOME/.jvimrc\" -DSYSVIMRC_FILE=\"\$HOME/.vimrc\"
    -DSYSEXRC_FILE=\"\$HOME/.exrc\" -DDEFVIMRC_FILE=\"/etc/vimrc\"
    -DVIM_HLP=\"/usr/local/jvim2.0/lib/jvim.hlp\" -DJP=\".EE\" -DONEW
    -DMDOMAIN=\"lime.plala.or.jp\" unix.c
In file included from unix.c:17:
vim.h:388: warning: `memset' redefined
/usr/include/bits/string2.h:106: warning: this is the location of the previous definition
unix.c: In function `dirname':
unix.c:316: conflicting types for `sys_errlist'
/usr/include/stdio.h:553: previous declaration of `sys_errlist'
make[3]: *** [unix.o] Error 1
make[3]: Leaving directory `/usr/local/src/jvim2.0r+onew2.2.10/jvim2.0r/src'
make[2]: *** [Linux] Error 2
make[2]: Leaving directory `/usr/local/src/jvim2.0r+onew2.2.10/jvim2.0r/src'
make[1]: *** [system] Error 2
make[1]: Leaving directory `/usr/local/src/jvim2.0r+onew2.2.10/jvim2.0r/src'
make: *** [euc] Error 2

sys_errlist の定義がコンフリクト? 調べてみると /usr/include/stdio.h では extern __const char *__const sys_errlist[]; となっている (Plamo 1.4.4 では、 extern char *sys_errlist[]; なのだが...。glibc2 で変わったのかな) 。
原因は分かったので、unix.c を以下のように修正する。
#if defined(SYSV_UNIX) || defined(hpux) || defined(linux)
        extern int              errno;
        /* extern char          *sys_errlist[]; */     <--- コメントアウト
        extern __const char *__const sys_errlist[];    <--- 追加

もう一度コンパイルする。warning がかなり出るが、とりあえず完了。 インストールしておしまい。
$ make euc
$ su
$ make install
$ make install-doc

[ 戻る | トップページに戻る ]