日本語入力環境

4.X系の開発

モデレータ: 暇人, YoN, nyu

アバター
暇人
記事: 2392
登録日時: 07/08/12(日) 23:33
お住まい: 埼玉県xx市並4
連絡する:

投稿記事 by 暇人 »

本家の方で解決された模様。

役立たずで申し訳ない。
管理人見習い
NEC Express5800 S70/SR G6950 2.8GHz/1G
lenovo S10-3 AtomN450 1.66G/1G
暇人/貳馬力/2CV
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

Re: 日本語入力環境

投稿記事 by 新谷 »

同じ表題で新しくトピックを建てようかとも思いましたが、
同じテーマで重複するのもどうかと思い、こちらのトピックで
続けたいと思います....。

....時は流れて、2011年4月現在、パピー日本語版の最新版は
wary-511-01jで、日本語入力環境はScim+Anthyになっています。

ヴァージョンは、
Scim: 1.4.7
Anthy: 9100h
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

Whizについて

投稿記事 by 新谷 »

2008年5月11日リリースのヴァージョン0.57が最新版のようです。
http://yui.mine.nu/whiz/whiz.html

しかし、開発元のBerry Linuxプロジェクトは今でも非常にアクティブですので、
いつか開発再開があるかもしれない? です。

以下、ホームページより引用:
『WHIZ』って?
『WHIZ』はとっても賢いっ☆かな漢字変換プログラムです。最新の日本語形態素解析技術を使っています。
このソフトは「Berry Linux」と共に開発されました。Unix OS上で動きます。

(中略)

特徴:
UNIX系OSで動く、クライアント・サーバー型の日本語入力システムです。
とても賢い、最小コスト法を採用しています。(ちょっと違うけどっ☆)
他のソフトでも利用しやすいように、Cannaプロトコルを採用しています。
現在辞書には34万6634語登録されています。
プログラムのサイズが非常に小さいです。(22.2KB)
漢字から仮名へ再変換することができます。(逆変換)
顔文字をサポートしています。
単語学習機能をサポートしています。(0.56-)
フリーソフトです。でも、開発を継続させるために、サポートを歓迎します。
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

WXGについて

投稿記事 by 新谷 »

WXGは(大昔に)開発が終了してますが、今でもファイルはダウンロードできるようです。
http://www.elec.ryukoku.ac.jp/~fujii/pu ... xg-1.0b-1/

以下、ダウンロード先からの引用:
1. 動作環境

WXG for Linux / FreeBSD Ver 1.0 では、Canna の通信プロトコルを採
用したかな漢字変換サーバ (WXG サーバ) を提供しています。 WXG サーバ
は、NEC のかな漢字変換サーバ (Canna サーバ) の互換であり、Mule や
kinput2 といった Canna のクライアントをそのまま利用できます。ただし
Canna サーバと WXG サーバを同時に 2つ起動することはできません。
最後に編集したユーザー 新谷 [ 11/04/22(金) 16:54 ], 累計 1 回
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

Scimについて

投稿記事 by 新谷 »

Scim本体の開発は非常に停滞しているようです。
最新版は、2009年4月リリースのヴァージョン1.4.9のようです。
モジュールやブリッジの類は、現在でも修正されたり開発されたりしているものが世界中にあります。

Scimのホームページ:
http://www.scim-im.org/

sourceforgeのページ:
http://sourceforge.net/projects/scim/

SVNリポジトリのログを見ると、Scim本体への最終コミットは、
2009年11月のようです。

以下、ChangeLogからの引用:

コード: 全て選択

2009-11-25 14:09  paxerit
	* Integrated patch that fixed a focusing bug that has been reported
	 on both the ubuntu and redhat bugtrackers
	* Added panel-controller functionality. it is now possible to 
	 programmatically change the selected IM via a socket connection
	 to the panel. For a possible client implementation see
	 http://projects.palaso.org/projects/show/autoswitcher

2009-04-27 10:09  yurivict
	* extras/gtk2_immodule/gtkimcontextscim.cpp: fixed the issues of dual
	 uninitialization causing segv.

2008-12-21 02:07  ryo-dairiki
	* configs/config: - Remove "CapsLock" from valid key masks.

(以下略)
とりあえず、リポジトリから、本体やモジュール類のソースを全部取得してみました。要研究。
以下にアップしました。もしよろしければどーぞ。

scim_all-SVN20110415.tar.bz2
http://cid-f9572553a5072808.office.live ... ic/2011-4/ scim_all-SVN20110415.tar.bz2
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

Scimについて その2

投稿記事 by 新谷 »

Scimは現在でも、各ディストリビューションによって(たいてい細々と)メンテナンスされ続けています。
そこで、明確な形でバグ修正がなされているものを探したのですが、
ほとんど見つけることができませんでした。
唯一、VineLinuxで発見しました。
http://bts.vinelinux.org/guest.cgi?proj ... rt&id=1032

VineSeedのソースリポジトリ: Scimパッケージの日付は2010年10月になってます:
http://ftp.vinelinux.org/pub/Vine/apt/V ... RPMS.main/

scim-1.4.9-8vl6.src.rpm をバラして再度tarアーカイブしたものをアップしました。
http://cid-f9572553a5072808.office.live ... l6.tar.bz2

内容は以下になります:

コード: 全て選択

scim-1.4.5-no-rpath-libdir.patch                
scim-1.4.5-panel-menu-fixes.patch               

scim-1.4.7-remove-locale.patch 
scim-1.4.7-support-more-utf8-locales.patch 
scim-1.4.7-bz462820.patch                       
scim-1.4.7-syslibltdl.patch                 
scim-1.4.7-fix-capslock.patch                   
scim-1.4.7-timeout.patch                    
scim-1.4.7-fix-fallback.patch                   
scim-1.4.7_translation-update.tar.bz2       
scim-1.4.7-fix-gdm.patch                        
scim-1.4.7-trayicon.patch                   
scim-1.4.7-imdkit-read-property-properly.patch  
scim-1.4.7-xim-wrong-format.patch           
scim-1.4.7-menu-pos.patch                       
scim-1.4.7-remove-help-frame.patch              

scim-1.4.8-vine.patch
scim-1.4.8-fix-dlopen.patch

scim-1.4.9-fix-disappeared-status-icon.patch

scim_x11_frontend-ic-focus-LTC27940-215953.patch
scim-gtkimm-default-snooper-off-213796.patch
scim_panel_gtk-icon-size-fixes.patch

scim-icons-0.7.tar.gz
scim-1.4.9.tar.gz

scim-vl.spec
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

uimについて

投稿記事 by 新谷 »

uimは多言語入力メソッドフレームワークで、scimと違って現在でも活発に開発されています。

uimホームページ:
http://code.google.com/p/uim/

最新版であるヴァージョン1.6.1をコンパイルしてみました。

コンフィグ・オプション

コード: 全て選択

./configure  --prefix=/usr --sysconfdir=/etc --localstatedir=/var --build=i486-pc-linux-gnu  --x-includes=/usr/X11R7 --with-x
コンフィグ・ログ

コード: 全て選択

SigScheme has been configured as follows:

base config:  uim

[Storage configuration]
Storage impl: compact
Fixnum size:  long
getcontext:   yes
libgcroots:   bundled one

[Multibyte character handlings]
Multibyte chars:  yes
Default encoding: singlebyte
UTF-8 codec:      yes
EUC-CN codec:     no
EUC-JP codec:     yes
EUC-KR codec:     no
Shift_JIS codec:  no

[R5RS behaviors]
Strict R5RS:           no
Const list literal:    no
Const vector literal:  yes
Strict null form:      no
Strict vector form:    yes
Strict argcheck:       yes
Strict top-level defs: yes
Internal definitions:  yes

[R5RS features]
Continuation:       yes
Quasiquote:         yes
Hygienic macros:    no
Promise:            yes
Integer:            yes
Numeric I/O:        yes
Charcters:          yes
Strings:            yes
String procedures:  yes
Deep c[ad]+r procs: yes
Vectors:            yes
Ports:              yes
Reader:             yes
Writer:             yes
Load:               yes

[SRFIs]
SRFI-0:  yes
SRFI-1:  yes
SRFI-2:  yes
SRFI-6:  yes
SRFI-8:  yes
SRFI-9:  yes
SRFI-22: yes
SRFI-23: yes
SRFI-28: yes
SRFI-34: yes
SRFI-38: yes
SRFI-43: yes
SRFI-48: yes
SRFI-55: yes
SRFI-60: yes
SRFI-69: yes
SRFI-95: yes

[R6RS features (preliminary)]
R6RS characters:  yes
R6RS named chars: yes

[SigScheme-specific extensions]
define-macro:         yes
SigScheme extensions: yes
format+ procedure:    yes
SIOD compatibilities: yes
SIOD bugs emulation:  no
eval_c_string():      yes
Backtrace:            no
Library:              no
Interactive shell:    no

[Developer-only debugging features]
Debug:              no

[Build information (provide this on bug reports)]
Package:                SigScheme 0.8.5
build (compile on):     i486-pc-linux-gnu
host (compile for):     i486-pc-linux-gnu
host data model:        ILP32
host align (C/S/I/L/P): 1/2/4/4/4
host endian:            little
host char unsigned:     no
host arithmetic rshift: yes
host safe va_list ref:  yes
Compiler:               gcc
Compiler version:       gcc (GCC) 4.3.4
CFLAGS='-g -O2 -pedantic -Wall -Wchar-subscripts -Wmissing-declarations -Wredundant-decls -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wsign-compare -Wno-overlength-strings -DNDEBUG'

Configure Result :

   Anthy           : no
   Anthy (UTF-8)   : no
   Canna           : no
   Mana            : no
   PRIME           : no
   SJ3             : no
   SKK             : yes
   Wnn             : no
   m17n-lib        : no
   SCIM            : no
   cURL            : no
   expat           : no
   OpenSSL         : no
   SQLite3         : no
   ffi             : no
   Gtk+            : yes
   Gnome Applet    : no
   Qt3             : no
   Qt3 immodule    : no
   Qt4             : no
   Qt4 immodule    : no
   Qt4 Qt3Support  : no
   KDE3 Applet     : no
   KDE4 Applet     : no
   FEP             : yes
   Emacs           : yes
   XIM             : yes
   Pref            : yes
   DICT            : no
   EB              : no
   libedit         : no
   notify          : stderr 
   Default toolkit : gtk
ペットパッケージを作成してみましたがこれはテスト用で、
これだけではほとんど何もできません。

uim-1.6.1-k2-i486.pet
http://cid-f9572553a5072808.office.live ... 2-i486.pet

*入力パッドによる、かな入力は可能です。
*設定ファイルを一切書き換えることなくテストできます。
*ロケールに関係なくテストできます。
*Wary本家版でもフォントを入れれば、入力可能

使い方は、以前に以下に書いたやり方とほぼ同じです。

日本語関連4 uimフルパッケージ:
viewtopic.php?f=25&t=1390&start=150#p12635

コンソールから以下のコマンドを打つ。

コード: 全て選択

# uim-toolbar-gtk
画像

マウスで右クリックして設定。
画像

テキストエディタ側でも右クリックして設定。
画像

うまくいけば、以下のような画面になります。
https://sites.google.com/site/pochikoro ... -gtk-4.png
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

Canna について

投稿記事 by 新谷 »

「かんな」は、サーバ/クライアント方式の日本語入力システムです。
以前はUINIX系OSでの標準的な日本語入力システムで、過去のパピー日本語版でも
使用されていました。

最新版は2004年5月リリースのヴァージョン3.7p3です。

Canna ホームページ:
http://canna.sourceforge.jp/

ソースリポジトリを覗くと、ヴァージョン3.7p3リリース以後も、細々と開発が継続されてました。
最終コミットは2008年4月のようです。

以下、Changelogから抜粋

コード: 全て選択

2008-04-06 AIDA Shinra <shinra@j10n.org>
	* lib/RKindep/cfuncs.c(RkiAltStrlcat): bugfix

2008-04-06 AIDA Shinra <shinra@j10n.org>
	* [Canna-dev 363]: old style sort options is no longer available
	* Don't use the sort command. Implement necessary features into
	  the mergeword and the pod. The forsort is no longer used but
	  still installed for the backward compatibility.
	* cmd/mergewd/mergewd.c: Reimplemented from scratch.
	  New option "-s": sort the input before the merge.
	* cmd/mkbindic/mkbindic.cpp: mergeword -s instead of forsort and sort
	* dic/ideo/grammar/Imakefile: ditto
	* dic/ideo/pubdic/pod.c: New sort options.
	  New option "-P": sort by yomi and freq stably
	  New option "-S": don't sort; output order is the same to the input
	* dic/ideo/words/Imakefile: remove forsort, which is just a garbage
	* dic/phono/Imakefile: ditto
	* lib/RK/RKintern.h(euctous): declare here
	* misc/zipcode/Imakefile: mergeword -s and pod -P instead of forsort
	  and sort.
	  (distclean): new target

2007-08-08 AIDA Shinra <shinra@j10n.org>
	* [Canna-dev 360]: romaji-yuusen bug
	* Multiple bugfixes around kana input
	* lib/canna/RKkana.c(RkwMapPhonogram): Don't pass non-ASCII characters
	  to RkMapPhonogram as the 6th arg.
	* lib/canna/RKroma.c (RkMapPhonogram): Handle sokuon in old dic case
	  as romaji-yuusen feature expects.
	  (RkMapRoma): Tweak for consistency with RkMapPhonogram's change.
	* lib/canna/empty.c(EmptySelfInsert): Prevent crash in kana input.
	* lib/canna/multi.c(_DoFuncSequence): Convert kana key to wchar.
	* lib/canna/romaji.c(YomiInsert): Allow only ASCII and kana keys to be
	  FunctionalInsert'ed.
	  (makePhonoOnBuffer): Change the 3rd arg to wchar_t.
	  (Yomisearchfunc): Try romaji-yuusen feature only for suitable keys
	  for romaji-kana conversion.
(以下略)
ソースを全て取得してアップロードしました。

canna-cvs20110410.tar.bz2
http://cid-f9572553a5072808.office.live ... 10.tar.bz2
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

Canna について その2

投稿記事 by 新谷 »

長い話を短くして言うと、Cannaのソースは直接 "./configure" できません。
コンパイルの仕方はドキュメントに書いてあるのですが、
ドキュメントの文字コードがEUCで読みにくいので、役に立ちそうなものを
UTF-8に変換してアップロードしました。

canna-doc-utf8.tar.bz
http://cid-f9572553a5072808.office.live ... tf8.tar.bz

ところで、Cannaの設定ファイルはcanlispという独自言語で書きます。
Emacsみたいなものですか。
昔の人は偉かったんだなぁ、と思う瞬間です。

マニュアルから抜粋:
canlisp は MacLisp 系の lisp 言語である。いやまて、MacLisp 系と言うのは canlisp のような超小型の lisp が称するのはちょっと大胆である。が、とりあえず defun 構文や defmacro に関しては MacLisp および Franz Lisp に見られる方式を用いている。

canlisp の言語処理を lisp 言語の視点から言うと、深い束縛を持ち、レキシカルスコープを持った言語と言うことになる。レキシカルスコープは Zeta Lispや Common Lisp で見られるスコーピングルールで、コンパイラに主眼を置いたものであるが、canlisp はインタプリタであるにもかかわらず採用した。

とは言っても、たかだか日本語入力システムのカスタマイズファイルパーサであるので、それほどたいしたことはしていない。canlisp の変数は大域で定義されるか、ローカルバインディングがなされるかで、いわゆるスペシャル変数( (declare (special x)) の x のような変数)は用意しない。
canlispのオンラインマニュアルは以下のページにあります:
http://flex.ee.uec.ac.jp/texi/canlisp/canlisp.html

とりあえず全部取得して、アーカイブにしてアップロードしました。
canlisp-doc.tar.bz2
http://cid-f9572553a5072808.office.live ... oc.tar.bz2

以前に、koropupで使用していた設定ファイル(と辞書)もアーカイブしてアップロードしました。
これは新谷がパピー4.1.2日本語版から抽出して、わずかに改変したものです。
(設定ファイル類についてです。辞書部分はだいぶアップグレードしてます。)
なにかの参考になるかもしれません。ならないかもしれませんが。
/usr/lib/canna に設置されていました。

canna-koropup-UsrLib-canna.tar.bz2
http://cid-f9572553a5072808.office.live ... na.tar.bz2
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

Canna その3 コンパイル下準備

投稿記事 by 新谷 »

WaryでCannaをコンパイルするには、何点か下準備をふむ必要がありました。

1. automakeとautoconf
automakeとautoconfがあやしそうでしたので、double_starさんのPET置き場からパッケージをとってきてインストールしました。多謝です m(_ _)m

double star:Home
http://sites.google.com/site/doublestar256/home

2. Xutils
Xutils関連のパッケージが足りてなかったので、コンパイルしてインストールしました。
ソースはubuntuのリポジトリから取得しました。
パピーのXorgは意図的に古いものを使用しているのでXutils関連も古いものがいいんじゃない?
と思ってHardyで使用されているものと同ヴァージョンのソースを使用しました。

Package: xutils-dev (1:7.2.ds2-1ubuntu1)
http://packages.ubuntu.com/hardy/xutils-dev

コンパイルにあたっては「パピーリナックスで遊ぶ!」さんブログの以下のエントリが参考になりました。
多謝です m(_ _)m

パピーリナックスで遊ぶ!: xmkmf
http://puppylinuxforever.blogspot.com/2 ... xmkmf.html

....Xutilsの中から「xorg-cf-files」と「 imake」をコンパイルしました。
コンフィグオプションが若干変則的です。

コード: 全て選択

# ./configure  --prefix=/usr/X11R7 --sysconfdir=/etc --localstatedir=/var --with-config-dir=/usr/X11R7/lib/X11/config --build=i486-pc-linux-gnu
# make
まとめてペットパッケージにしました。

xutils-dev-7.2.ds2-tiny-1.pet
http://cid-f9572553a5072808.office.live ... tiny-1.pet

....続く
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

Canna その4 コンパイル下準備

投稿記事 by 新谷 »

Cannaのソース中の設定ファイルも、幾つか編集する必要がありました。

mkrelease.sh を以下のように編集:

コード: 全て選択

# $Id: mkrelease.sh,v 1.7 2004/04/25 14:16:48 aida_s Exp $
set -e
set -x
cp Canna.conf.dist Canna.conf
autoconf
autoheader
rm -rf autom4te.cache
cd canuum
autoconf
autoheader
rm -rf autom4te.cache
Canna.conf.distを編集:
このファイルに色々な設定が書かれています。
インストール先のディレクトリを以下のように編集しました。
これはパピー4.1.2日本語版に合わせていますが、
辞書&設定ファイルのインストール先を
/usr/lib/canna から /usr/share/canna に変更しています。

コード: 全て選択

(前略)

cannaPrefix = /usr
cannaExecPrefix = $(cannaPrefix)
cannaBinDir = $(cannaExecPrefix)/bin
cannaSrvDir = $(cannaExecPrefix)/sbin
XCOMM cannaLibDir = $(cannaExecPrefix)/share/canna
cannaLibDir = $(cannaExecPrefix)/share/canna
XCOMM cannaManDir = $(cannaPrefix)/share/man
cannaManDir = $(cannaPrefix)/man
cannaIncDir = $(cannaPrefix)/include/canna

libCannaDir = $(cannaExecPrefix)/lib
ErrDir  = /var/log/canna

(後略)
その後、以下のコマンドを実行:

コード: 全て選択

#./mkrelease.sh && xmkmf
....これで下準備がすべて整いました。
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

canna その5 コンパイル

投稿記事 by 新谷 »

下準備が全て完了したパッケージをアップロードしました。
Waryでのみテストしていますが、パピー4系以上ならコンパイルできるんじゃないでしょうか。

canna-cvs20110423-preMAKE.tar.bz2
http://cid-f9572553a5072808.office.live ... KE.tar.bz2

解凍して、以下でコンパイル&インストールできます。

コード: 全て選択

#make canna
#make install
コンパイルしてペットパッケージを作成しました。
パピー4系以上で使用できると思います。

(2011年4月24日AM07:30追記)
ライブラリのリンク切れがあったので、パッケージを差し替えました。

canna-3.8-cvs20110423-k2.pet
http://cid-f9572553a5072808.office.live ... 423-k2.pet
最後に編集したユーザー 新谷 [ 11/04/24(日) 07:27 ], 累計 1 回
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

Canna その6 Waryでのテスト

投稿記事 by 新谷 »

一つ前のエントリのCannaのペットパッケージは、Waryでは今のところ、
ただ眺めて楽しむだけのパッケージです。
実用するにはパピー4.1.2日本語版、4.0.0.4日本語版、koropupが必要です。
いずれにしろテスト版です。

Waryでのテストの仕方:

*サーバを起動させる

コード: 全て選択

# mkdir /var/log/canna
# cannaserver -u root
↑はユーザrootでcannaserverを起動させています。

*状態をみる

コード: 全て選択

# cannastat 
Connected to unix
Canna Server (Ver. 3.8)
No clients
*終了させる

コード: 全て選択

# cannakill
*canlispで遊べるかもしれない?

コード: 全て選択

# canlisp 
CannaLisp listener 3.8devel2
-> 
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

scim-canna

投稿記事 by 新谷 »

scim-cannaのパッケージを作成してみました。
cannaパッケージと併用するとcannaで日本語化入力ができます。
いろいろと設定する必要がありますが、まだ研究中です。

以前のパピー日本語版はどうだったかな.....。
軽いといえば軽い.....。

Note:
コンパイルできなかったので、Debianのパッチをあてました。
Debianのパッケージのページ:
http://packages.debian.org/ja/squeeze/scim-canna


オリジナルのソース: scim-canna_1.0.0.orig.tar.gz
Debianのパッチと差分ファイル全部: scim-canna-DebianPatches.tar.bz2
以下にアップロードしました。
http://cid-f9572553a5072808.office.live ... lic/2011-4

コンパイル:

コード: 全て選択

# patch -p1 < 30-fix_gcc-4.3_ftbfs.dpatch
# make 
作成したパッケージ:
scim-canna-1.0.0DebianPatched-1.pet
http://cid-f9572553a5072808.office.live ... ched-1.pet

Cannaパッケージ:
canna-3.8-cvs20110423-k2.pet
http://cid-f9572553a5072808.office.live ... 423-k2.pet

画像
新谷
記事: 934
登録日時: 08/10/09(木) 18:52
お住まい: 大阪

scim-uim

投稿記事 by 新谷 »

scim-uimのパッケージを作成してみました。
uimパッケージと併用すると、scim側からuimが扱えます。
いろいろと設定する必要がありますが、まだ研究中です。

scim側からuimが扱えるのは、
何か、こう、ちょっと不気味です.....。

Note:
コンパイルできなかったので、Debianのパッチをあてました。
Debianさまさまやな....。
Debianのパッケージのページ:
http://packages.debian.org/ja/squeeze/scim-uim

オリジナルのソース: scim-uim_0.2.0.orig.tar.gz
Debianのパッチと差分ファイル全部: scim-uim-0.2.0DebianPatches.tar.bz2
以下にアップロードしました。
http://cid-f9572553a5072808.office.live ... lic/2011-4

コンパイル:

コード: 全て選択

# patch -p1 < 10_missing-header.dpatch
# make 
作成したパッケージ:
scim-uim-0.2.0-DebianPatched-1.pet
http://cid-f9572553a5072808.office.live ... ched-1.pet

画像
返信する