Difference between revisions of "Input Japanese using uim (日本語)"

From ArchWiki
Jump to navigation Jump to search
m (external ja redirect)
 
Line 1: Line 1:
[[Category:Internationalization (日本語)]]
+
#redirect[[ja:uim を使って日本語を入力]]
[[Category:日本語]]
 
[[en:Input Japanese using uim]]
 
このページでは [http://code.google.com/p/uim/ uim] を使った日本語入力の方法について説明しています。<br/>
 
もしあなたが SCIM を使う場合は [[Smart Common Input Method platform]] を、IBusを使う場合は[[IBus (日本語)]]を参照して下さい。
 
 
 
== インストール ==
 
日本語入力を行うためには、次のパッケージが必要です。
 
 
 
* 日本語フォント
 
* 日本語入力システム (かな漢字変換エンジン)
 
* 入力メソッドフレームワーク: uim
 
 
 
=== 日本語フォント ===
 
''フォントの設定やその他詳細については [[Fonts (日本語)]] および [[Font Configuration (日本語)]] を参照して下さい。''
 
 
 
おすすめの日本語フォントは以下の通りです。
 
==== ゴシック体のみ  ====
 
* [https://github.com/adobe-fonts/source-han-sans adobe-source-han-sans] || {{Pkg|adobe-source-han-sans-jp-fonts}} or {{Pkg|adobe-source-han-sans-otc-fonts}}
 
: Adobe が開発するオープンソース OTF フォント。
 
 
 
==== ゴシック体と明朝体 ====
 
* [http://ossipedia.ipa.go.jp/ipafont/ IPA フォント] ({{Pkg|otf-ipafont}})
 
: IPA (情報処理推進機構) が提供するオープンソース OTF フォント。ゴシック体 (サンセリフ体) と明朝体 (セリフ体) グリフを含む。
 
 
 
[http://en.wikipedia.org/wiki/2channel_Shift_JIS_art 2ちゃんねるの Shift JIS アート] を適切に表示したい場合、次のいずれかのフォントを使うと良いでしょう:
 
* IPAモナーフォント (AUR: {{AUR|ttf-ipa-mona}})
 
* Monapo フォント (AUR: {{AUR|ttf-monapo}})
 
 
 
=== uim ===
 
==== pacman を使う ====
 
{{Pkg|uim}} は[[Official Repositories (日本語)|公式リポジトリ]]からインストールできます。
 
 
 
==== PKGBUILD を使ってソースから uim をコンパイル ====
 
例えば、自分でビルドオプションをカスタマイズしたい場合などは ABS を使うなどしてソースからコンパイルできます。
 
 
 
Arch 公式リポジトリでは、uim は以下のビルドオプションをつけてビルドされています (1.8.6 現在):
 
* {{Ic|--with-anthy-utf8}} : Anthy (UTF-8) のサポートを有効にする。
 
* {{Ic|--with-qt4-immodule}} : Qt4 immodule をビルドする。
 
* {{Ic|--with-qt4}} : Qt4 で動作する uim-tools をビルドする。
 
すべてのビルドオプションは[http://code.google.com/p/uim/wiki/InstallUim 公式wiki]を参照してください。
 
 
 
KDE4 plasma ウィジェットを使用する場合、ビルドのために (makedepends として) {{Pkg|automoc4}} をインストールし、ビルドオプションに {{ic|--enable-kde4-applet}} を追加してください。
 
 
 
=== 日本語入力システム ===
 
==== Anthy ====
 
Anthy はオープンソースの世界で最も知られているインプットメソッドの一つです。長い間メンテされていませんでしたが、2010年5月より [http://wiki.debian.org/Teams/DebianAnthy Debian が引き継ぎました。]
 
 
 
{{Pkg|anthy}} は公式リポジトリからインストールできます。
 
 
 
===== cannadic改 =====
 
オリジナル Anthy のデフォルト辞書には EUC-JP (JISX0208) で定義されていない文字 (例えば "①" や "♥" など) は含まれていません。[http://en.sourceforge.jp/projects/alt-cannadic/ alt-cannadic] はそれら文字を含んだ辞書を提供しています。
 
 
 
これを使用するには、[http://en.sourceforge.jp/projects/alt-cannadic/releases/?package_id=6129 cannadic改辞書]をダウンロードし、{{ic|~/.anthy/imported_words_default.d}} 配下に置いてください。
 
$ tar jxvf alt-cannadic-091230.tar.bz2
 
$ mkdir ~/.anthy/imported_words_default.d (if not exist)
 
$ cp alt-cannadic-091230/extra/*.t ~/.anthy/imported_words_default.d/
 
 
 
詳細は[http://sourceforge.jp/projects/alt-cannadic/wiki/%E4%BD%BF%E3%81%84%E6%96%B9_Anthy-UTF-8 公式サイトのwiki]で確認してください。
 
 
 
{{Warning|この拡張辞書を使う場合は、使用するインプットメソッドは '''Anthy (UTF-8)''' でなければなりません。}}
 
 
 
==== Modified Anthy (anthy-ut) ====
 
[http://www.geocities.jp/ep3797/anthy_dict_01.html Modified Anthy] はオリジナル Anthy のかな漢字変換の品質向上を狙ったパッチ及び辞書のセットです。
 
 
 
Modified Anthy は、以下の2つのアップストリームからなっています:
 
* [http://www.fenix.ne.jp/~G-HAL/soft/nosettle/#anthy G-HAL]氏によって作成されているパッチの当てられたAnthy
 
* [http://www.geocities.jp/ep3797/anthy_dict_01.html UTSUMI]氏によって作成されている巨大な辞書。
 
 
 
{{Warning|Modified Anthy は Anthy (UTF-8) にのみ対応しています。従って uim の設定で使用する (デフォルトの) インプットメソッドは '''Anthy (UTF-8)''' でなければなりません。}}
 
{{Warning|Modified Anthy はオリジナル Anthy に対し、辞書及び学習データの互換性がありません。}}
 
 
 
===== PKGBUILD を使って Modified Anthy をコンパイル =====
 
Modified Anthy は AUR に {{AUR|anthy-ut}} という名前で登録されています。
 
 
 
anthy-ut tarball を入手し、makepkg でビルド及びインストールします:
 
$ wget https://aur.archlinux.org/packages/anthy-ut/anthy-ut.tar.gz
 
$ tar xvf anthy-ut.tar.gz
 
$ cd anthy-ut
 
$ makepkg -s -i
 
 
 
すでに Anthy を使用していた場合は、既存の学習データのフォーマットを変換しなければなりません。
 
$ rm ~/.anthy/last-record1_*.bin
 
$ anthy-agent --update-base-record
 
$ rm ~/.anthy/last-record1_*.bin
 
$ anthy-agent --update-base-record
 
(同じ事を2回繰り返していますが、間違いではありません)
 
 
 
==== Mozc ====
 
''[[Mozc (日本語)|Mozc]] を参照してください。''
 
 
 
[http://code.google.com/p/mozc/ Mozc] は Chromium OS、Windows、Mac、あるいは Linux など、マルチプラットフォームで動作するよう設計された日本語インプットメソッドエディタ (IME) であり、このオープンソースプロジェクトは [http://www.google.com/intl/ja/ime/ Google 日本語入力] から派生したものです。
 
 
 
{{AUR|Mozc}} は公式には IBus にしか対応していませんが、[http://code.google.com/p/macuim/ macuim] が uim-mozc プラグインを提供しています。
 
 
 
===== 無印Mozc =====
 
{{AUR|uim-mozc}} が利用できます。
 
{{Note|これは uim-mozc の kill_line 機能をサポートしていません。}}
 
他の Mozc パッケージと同様に Unofficail Repository からインストール可能です。
 
これを使用する場合は以下を /etc/pacman.conf に追加します:
 
[pnsft-pur]
 
SigLevel = Optional TrustAll
 
Server = http://downloads.sourceforge.net/project/pnsft-aur/pur/$arch
 
{{Note|用意されているのは現在 x86_64 用パッケージのみです。}}
 
そしてパッケージデータベースを更新します:
 
# pacman -Syy
 
インストールするパッケージは以下のようにグループ指定で選択することができます:
 
# pacman -S mozc-im
 
または、例えば以下のように直接指定します:
 
# pacman -S uim-mozc
 
 
 
===== mozc-ut および mozc-svn =====
 
{{AUR|mozc-svn}} と {{AUR|mozc-ut}} も uim-mozc に対応しています。
 
{{Note|mozc-ut は {{AUR|uim-mozc}} を使用することもできます。}}
 
uim-mozc をビルドするには、PKGBUILD を以下のように編集します ({{Ic|1=_uim-mozc=}} の行をコメント解除):
 
## If you will not be using ibus, comment out below.
 
_ibus_mozc="yes"
 
## If you will be using uim, uncomment below.
 
_uim_mozc="yes"
 
## If applying patch for uim-mozc fails, try to uncomment below.
 
#_kill_kill_line="yes"
 
## This will disable the 'kill-line' function of uim-mozc.
 
{{Tip|ibus-mozc がいらない場合は {{Ic|1=_ibus_mozc=}} の行をコメントアウトします。}}
 
 
 
===== Mozc の登録 =====
 
{{Warning|uim のアップグレードや (再) インストールのたびに以下のコマンドを実行して mozc を (再) 登録する必要があります。<br/>
 
# uim-module-manager --register mozc}}
 
 
 
==== Google CGI API for Japanese Input ====
 
[http://www.google.co.jp/ime/cgiapi.html Google CGI API for Japanese Input] (Google-CGIAPI-Jp) は、Google による、日本語変換をインターネット上で実現するための、CGI サービスです。これは専用のアプリケーションを必要とせず、[http://www.google.com/transliterate ウェブブラウザから使用することができます。]これは Google 日本語入力の CGI 版であるため、変換品質は Mozc より良いようです。
 
 
 
{{Note|このサービスはサーバーとの入力文字列や変換候補のやりとりをプレーンテキストで行っています。(2012年09月現在)}}
 
 
 
uim もこのサービスに対応しています。uim-im-switcher-gtk/gtk3/qt4 や uim-pref-gtk/gtk3/qt4 で "Google-CGIAPI-Jp" を選択してください。
 
 
 
== 設定 ==
 
=== 環境変数 ===
 
以下を ~/.[[xprofile (日本語)|xprofile]]、~/.[[xinitrc (日本語)|xinitrc]]、~/.xsession などに設定します:
 
 
 
export GTK_IM_MODULE='uim'
 
export QT_IM_MODULE='uim'
 
uim-xim &
 
export XMODIFIERS='@im=uim'
 
 
 
{{Note|
 
* これらの環境変数はデスクトップ環境やウィンドウマネージャーの起動前に export してください。
 
* X セッションの管理に systemd を使用している場合は[[#systemd_を使用している場合|systemd を使用している場合]]を参照してください。}}
 
 
 
=== ツールバーユーティリティ ===
 
UimToolbar を使用する場合は、以下のうちの一つを追加します。
 
 
 
==== uim-toolbar-gtk/qt ====
 
ウィンドウとして表示されるツールバーを使用する場合。
 
 
 
GTK+ 2 用:
 
uim-toolbar-gtk &
 
GTK+ 3 用:
 
uim-toolbar-gtk3 &
 
Qt4 用:
 
uim-toolbar-qt4 &
 
 
 
==== uim-toolbar-gtk-systray ====
 
システムトレイ (通知エリア) に表示されるツールバーを使用する場合。
 
 
 
GTK+ 2 用:
 
uim-toolbar-gtk-systray &
 
GTK+ 3 用:
 
uim-toolbar-gtk3-systray &
 
 
 
==== パネルアプレット ====
 
GNOME、Xfce、あるいは KDE を使用している場合、パネルアプレットのツールバーも使用できます。Xfce の場合には xfce4-xfapplet が必要です。
 
 
 
=== systemd を使用している場合 ===
 
 
 
[[systemd/User (日本語)#/usr/lib/systemd/systemd --user を使ってセッションを管理する|X セッションの管理に systemd を使用している場合]]、systemd セッション内で環境変数の設定が必要になります。
 
 
 
{{hc|~/.config/systemd/user/uim-env.service|<nowiki>
 
[Unit]
 
Description=uim environment initialization
 
Before=xorg.target
 
 
 
[Service]
 
Type=oneshot
 
ExecStart=/usr/bin/systemctl --user set-environment XMODIFIERS=@im=uim
 
ExecStart=/usr/bin/systemctl --user set-environment GTK_IM_MODULE=uim
 
ExecStart=/usr/bin/systemctl --user set-environment QT_IM_MODULE=uim
 
</nowiki>}}
 
 
 
{{hc|~/.config/systemd/user/uim.service|<nowiki>
 
[Unit]
 
Description=uim daemon
 
Wants=uim-env.service
 
After=xorg.target
 
 
 
[Service]
 
ExecStart=/usr/bin/uim-xim
 
Restart=on-abort
 
 
 
[Install]
 
WantedBy=xorg.target</nowiki>
 
}}
 
 
 
{{hc|~/.config/systemd/user/uim-toolbar.service|<nowiki>
 
[Unit]
 
Description=uim toolbar
 
PartOf=uim.service
 
 
 
[Service]
 
ExecStart=/usr/bin/uim-toolbar-of-your-choice
 
Restart=on-abort
 
 
 
[Install]
 
WantedBy=uim.service</nowiki>
 
}}
 
 
 
以下のコマンドでサービスが有効になります:
 
  $ systemctl --user enable uim.service uim-toolbar.service
 
 
 
=== uim の初期設定 ===
 
以下のコマンドで uim の設定ウィンドウが表示されます :
 
$ uim-pref-gtk (または、uim-pref-gtk3/uim-pref-qt4)
 
「全体設定」の「標準の入力方式」で、お気に入りのインプットメソッドを選択します。
 
{{Note|初めて Mozc をインストールした直後は、Mozc は選択できません。これは Mozc が「使用可能にする入力方式」で有効になっていないためです。その右の「編集」ボタンをクリックして Mozc を有効にしてください。}}
 
 
 
{{Ic|uim-xim}} を起動するか、X の再起動で uim を使用して日本語が入力できるようになります。
 
 
 
=== Emacs で 日本語を入力する ===
 
uim は uim.el を提供しており、Emacs 上で uim を使用して日本語を入力できます。ここでは Emacs 上で uim を、文字エンコーディング UTF-8 で使用する設定を説明します。
 
 
 
詳細は [http://code.google.com/p/uim/wiki/UimEl 公式 wiki] 参照してください。
 
 
 
==== LEIM かマイナーモードか ====
 
uim.el を使用する場合、直接マイナーモードで使用するか、LEIM (Library of Emacs Input Method) を使用するかを選択できます。uim.el とそれ以外の IM をよく切り替えて使う場合は LEIM フレームワークを使用してください。
 
 
 
===== マイナーモードで使うための設定 =====
 
マイナーモードで使用する場合は、以下の設定を {{ic|.emacs.d/init.el}} あるいはその他の Emacs カスタム設定用ファイルに追加します。
 
;; read uim.el
 
(require 'uim)
 
;; uncomment next and comment out previous to load uim.el on-demand
 
;; (autoload 'uim-mode "uim" nil t)
 
 
;; key-binding for activate uim (ex. C-\)
 
(global-set-key "\C-\\" 'uim-mode)
 
 
 
===== LEIM で使うための設定 =====
 
LEIM で使用する場合は、以下の設定を {{ic|.emacs.d/init.el}} あるいはその他の Emacs カスタム設定用ファイルに追加し、使用するかな漢字変換エンジンをデフォルトに指定します。
 
;; read uim.el with LEIM initializing
 
(require 'uim-leim)
 
 
;; set default IM. Uncomment the one of the followings.
 
;(setq default-input-method "japanese-anthy-utf8-uim")        ; Anthy (UTF-8)
 
;(setq default-input-method "japanese-google-cgiapi-jp-uim")  ; Google-CGIAPI-Jp
 
;(setq default-input-method "japanese-mozc-uim")              ; Mozc
 
 
 
==== 既定の文字エンコーディングの指定 ====
 
uim.el はデフォルトの文字エンコーディングを EUC-JP としていますが、UTF-8 を使用したい場合は以下の設定を追加します。
 
;; Set UTF-8 as preferred character encoding (default is euc-jp).
 
(setq uim-lang-code-alist
 
      (cons '("Japanese" "Japanese" utf-8 "UTF-8")
 
            (delete (assoc "Japanese" uim-lang-code-alist)
 
                    uim-lang-code-alist)))
 
 
 
==== インライン変換候補表示機能をデフォルトで有効にする ====
 
インライン変換候補表示機能とは、変換候補を入力中の文字列のすぐ下(もしくはすぐ上)に縦方向に並べて表示させる機能です。インライン変換候補表示機能をデフォルトで有効にする場合は以下の設定を追加します。
 
;; set inline candidates displaying mode as default
 
(setq uim-candidate-display-inline t)
 
 
 
==== 入力モードの初期値をひらがな入力にする ====
 
uim.el 起動時の入力モードをひらがな入力にする場合は、使用するインプットメソッドに合わせて以下のように編集します。
 
;; Set Hiragana input mode at activating uim.
 
(setq uim-default-im-prop '("action_anthy_utf8_hiragana"
 
                            "action_google-cgiapi-jp_hiragana"
 
                            "action_mozc_hiragana"))
 
 
 
==== Emacs 上で C-SPC が IM の入力モードの切り替えに使われてしまうのを抑止する ====
 
デスクトップ環境上で IM のオン・オフのキー割り当てに C-SPC を設定していると、uim.el がアクティブになっている時 C-SPC は入力モードの切り替えに使用されます。これを抑止し、set-mark-command として使用するには、以下の設定を {{ic|.emacs.d/init.el}} あるいはその他の Emacs カスタム設定用ファイルに追加します。
 
(add-hook 'uim-load-hook
 
          '(lambda ()
 
              (define-key uim-mode-map [67108896] nil)
 
              (define-key uim-mode-map [0] nil)))
 
 
 
==== Emacs 上で C-SPC が IM のオン・オフで使われてしまうのを抑止する ====
 
デスクトップ環境上で IM のオン・オフのキー割り当てに C-SPC を設定しており、Emacs 上でもそちらが優先されて C-SPC/C-@ で set-mark-command が使えなくて困る、という場合は、{{ic|~/.Xresources}} か {{ic|~/.Xdefaults}} に以下を追加します。
 
Emacs*UseXIM: false
 
 
 
== トラブルシューティング ==
 
=== Opera で日本語入力ができない ===
 
Opera で日本語が入力できない場合は、以下のように環境変数を変更してみてください:
 
export QT_IM_MODULE='xim'
 
 
 
=== uim-toolbar-gtk-systray: トレイアイコンがつぶれてます ===
 
DE、WM、あるいはパネルアプリケーションの中には、システムトレイ上に、アプリケーションあたり1個のアイコンスペースしか用意しないものがありますが、uim-toolbar-gtk-systray はそこにデフォルトのツールバーアイコン4,5個をまとめて表示しようとするために潰れてしまいます。ツールバーに表示するアイコンを1個だけにすることで解決します。以下は、入力モードアイコンのみを表示させる例です:
 
# {{Ic|uim-pref-gtk}} を起動する。
 
# 「グループ」の中から「ツールバー」を選択する。
 
# 「入力方式切り替えメニュー」および「ボタン」ボックスの中のすべてのチェックボックスのマークを外す。
 
# 「グループ」の中から、使用する入力メソッド (Anthy、Anthy (UTF-8)、またはMozc)を選択する。
 
# 「ツールバー」ボックスの「有効にするボタン」の右端にある「編集」ボタンをクリックする。
 
# 「入力モード」のみ有効にする。
 
# 「OK」をクリックして設定ウィンドウを閉じる。
 
トレイアイコンは "あ" (ひらがな入力) または "ー" (直接入力) になっているはずです。
 
 
 
=== 暗いテーマを使用しているので uim のモードアイコンが見えません ===
 
暗いテーマ用のアイコンを使用します (uim 1.6.0 以降)。
 
# {{Ic|uim-pref-gtk}} を起動する。
 
# 「グループ」の中から「ツールバー」を選択する。
 
# 「アイコン」ボックスの「濃色背景向けアイコンを使用する」にチェックマークをつける。
 
# 「OK」をクリックして設定ウィンドウを閉じる。
 
 
 
=== GTK_IM_MODULE を設定したのに GTK+ 2 アプリケーションで uim が使用できません ===
 
 
 
環境変数 GTK_IM_MODULE を設定してあるのに GTK+ 2 アプリケーションで uim が使用できない場合、{{Ic|gtk-query-immodules-2.0}} によって作成される gtk.immodules の指定が必要です。
 
 
 
GTK+ 2 用のデフォルトパスは {{Ic|/etc/gtk-2.0/gtk.immodules}} です。
 
 
 
環境変数 GTK_IM_MODULE_FILE を設定するか (GTK+ 3 アプリケーションとの互換性はないので ''非推奨'')、im_module_file を設定します (''推奨'')。
 
 
 
以下を {{Ic|/etc/gtk-2.0/gtkrc}} または {{Ic|~/.gtkrc-2.0}} に追加します:
 
 
 
  im_module_file "/etc/gtk-2.0/gtk.immodules"
 
 
 
=== 全角モードで子音を入力できません ===
 
 
 
全角モードで子音を入力したい場合、以下を設定ファイルに追加してください。
 
 
 
{{Hc|例: ~/.uim.d/customs/custom-google-cgiapi-jp.scm|
 
    (define ja-rk-rule-hoge
 
    (map
 
    (lambda (c)
 
    (list (cons (list c) ()) (list c c c)))
 
    '("b" "c" "d" "f" "g" "h" "j" "k" "l" "m"
 
    "p" "q" "r" "s" "t" "v" "w" "x" "y" "z"
 
    "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M"
 
    "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z")))
 
    (if (symbol-bound? 'ja-rk-rule-hoge)
 
    (set! ja-rk-rule (append ja-rk-rule-hoge ja-rk-rule)))
 
}}
 
 
 
== 関連文献 ==
 
;uim
 
:[http://code.google.com/p/uim/wiki/OfficialUserDocument uim official document]
 
:[http://en.wikibooks.org/wiki/Uim uim on wikibooks]
 
 
 
;Fonts
 
:[http://www.geocities.jp/ep3797/japanese_fonts.html Japanese fonts showcase]
 
:[http://www.geocities.jp/ep3797/modified_fonts_01.html modified Japanese fonts]
 

Latest revision as of 02:30, 4 March 2015