「Fcitx」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (→インプットメソッドモジュールの環境変数の設定: 内部リンクを訂正) |
|||
(10人の利用者による、間の51版が非表示) | |||
1行目: | 1行目: | ||
− | [[Category: |
+ | [[Category:インプットメソッド]] |
[[en:Fcitx]] |
[[en:Fcitx]] |
||
− | [[zh- |
+ | [[zh-hans:Fcitx]] |
{{Related articles start}} |
{{Related articles start}} |
||
+ | {{Related|Fcitx5}} |
||
{{Related|IBus}} |
{{Related|IBus}} |
||
{{Related|SCIM}} |
{{Related|SCIM}} |
||
{{Related2|uim を使って日本語を入力|UIM}} |
{{Related2|uim を使って日本語を入力|UIM}} |
||
{{Related articles end}} |
{{Related articles end}} |
||
− | [ |
+ | [https://fcitx-im.org/wiki/Fcitx Fcitx] (Flexible Input Method Framework) は Linux に環境非依存の言語サポートを提供する軽量の [[Wikipedia:ja:インプットメソッド|インプットメソッドフレームワーク]] です。多くの言語をサポートし便利な non-CJK 機能が含まれています。 |
+ | |||
+ | {{Warning|Fcitx は現在メンテナンスモードになっています、代わりに [[Fcitx5]] を使用することをお勧めします。}} |
||
==インストール== |
==インストール== |
||
− | {{Pkg|fcitx}} は |
+ | {{Pkg|fcitx}} は[[公式リポジトリ]]から [[Pacman]] でインストールできます。 |
=== インプットメソッドエンジン === |
=== インプットメソッドエンジン === |
||
入力したい言語にあわせて、インプットメソッドエンジンをインストールしてください: |
入力したい言語にあわせて、インプットメソッドエンジンをインストールしてください: |
||
+ | |||
+ | ====中国語==== |
||
+ | |||
+ | * {{AUR|fcitx-baidupinyin}}: Baidu Pinyin インプットメソッドがベース。 |
||
+ | * {{Pkg|fcitx-chewing}}: {{Pkg|libchewing}} がベースの繁体字の注音入力エンジン。 |
||
+ | * {{Pkg|fcitx-cloudpinyin}}: クラウドによる中国語入力をサポート。 |
||
+ | * {{Pkg|fcitx-googlepinyin}}: {{Pkg|libgooglepinyin}} がベース。Android 用の Google ピンイン IME。 |
||
+ | * {{Pkg|fcitx-libpinyin}}: {{Pkg|libpinyin}} がベース。{{Pkg|fcitx-sunpinyin}} よりも優れたアルゴリズムが使われています。 |
||
+ | * {{Pkg|fcitx-rime}}: [[Rime IME]] プロジェクトのスキーマがベース。 |
||
+ | * {{AUR|fcitx-sogoupinyin}}: Linux 向けの捜狗インプットメソッド。同音異字、クラウド入力、英語入力、混合入力をサポート。 |
||
+ | * {{Pkg|fcitx-sunpinyin}}: {{Pkg|sunpinyin}} がベース。速度と正確性のバランスが良い。 |
||
====日本語==== |
====日本語==== |
||
25行目: | 39行目: | ||
==== 他の言語 ==== |
==== 他の言語 ==== |
||
− | * {{Pkg|fcitx-sunpinyin}}: {{Pkg|sunpinyin}} がベース。速度と正確性のバランスが良い。 |
||
− | * {{Pkg|fcitx-libpinyin}}: {{Pkg|libpinyin}} がベース。素晴らしいアルゴリズムを持っていますがバグが存在し、辞書が欠けています。 |
||
− | * {{Pkg|fcitx-googlepinyin}}: {{Pkg|libgooglepinyin}} がベース。Android 用の Google ピンイン IME。 |
||
− | * {{Pkg|fcitx-cloudpinyin}}: クラウドによる中国語入力をサポート。 |
||
− | * {{Pkg|fcitx-chewing}}: {{Pkg|libchewing}} がベースの繁体字の注音入力エンジン。 |
||
− | * {{Pkg|fcitx-table-extra}}: [[Wikipedia:ja:倉頡輸入法|倉頡]], [[Wikipedia:Zhengma_method|郑码]], [[Wikipedia:Boshiamy_method|嘸蝦米]]サポートを追加。 |
||
− | * {{Pkg|fcitx-rime}}: [[Rime IME]] プロジェクトのスキーマがベース。 |
||
* {{Pkg|fcitx-hangul}}: {{Pkg|libhangul}} がベースの韓国語のハングル入力エンジン。 |
* {{Pkg|fcitx-hangul}}: {{Pkg|libhangul}} がベースの韓国語のハングル入力エンジン。 |
||
− | * {{Pkg|fcitx- |
+ | * {{Pkg|fcitx-m17n}}: [https://www.nongnu.org/m17n/ M17n] によって提供されている他の言語の入力エンジン。 |
* {{Pkg|fcitx-sayura}}: シンハラ文字入力エンジン。 |
* {{Pkg|fcitx-sayura}}: シンハラ文字入力エンジン。 |
||
− | * {{Pkg|fcitx- |
+ | * {{Pkg|fcitx-unikey}}: ベトナム文字入力エンジン。 |
+ | === インプットメソッドモジュール === |
||
− | ==== その他 ==== |
||
+ | |||
+ | GTK+ や Qt プログラムでより良い動作を得るには、必要に応じて {{AUR|fcitx-qt4}}, {{Pkg|fcitx-qt5}} パッケージをインストールしてください。もしくは {{Grp|fcitx-im}} グループで全てのパッケージをインストールできます。モジュールをインストールしなくてもアプリケーション上でインプットメソッドは動作しますが、フリーズしたりプレビューウィンドウの位置がおかしくなったり、プレビューが表示されなくなったりします。 |
||
+ | |||
+ | 以下のアプリケーションは GTK+/Qt インプットモジュールを使用しません: |
||
+ | |||
+ | * Tk, motif, xlib などを使用するアプリケーション |
||
+ | * [[Emacs]], [[Opera]], [[OpenOffice]], [[LibreOffice]], [[Skype]], [[Wine]], [[Java]], [[Xterm]], [[urxvt]], WPS |
||
+ | |||
+ | === その他 === |
||
* {{Pkg|fcitx-ui-light}}: fcitx の軽量 UI。 |
* {{Pkg|fcitx-ui-light}}: fcitx の軽量 UI。 |
||
+ | * {{Pkg|fcitx-table-extra}}: [[Wikipedia:ja:倉頡輸入法|倉頡]], [[Wikipedia:Zhengma_method|郑码]], [[Wikipedia:Boshiamy_method|嘸蝦米]]サポートを追加。 |
||
− | * {{Pkg|fcitx-fbterm}}: Fbterm のサポート。 |
||
− | * {{Pkg|fcitx-table-other}}: |
+ | * {{Pkg|fcitx-table-other}}: LaTeX, 絵文字など。 |
+ | * {{AUR|fcitx-tablet}}: 手書きのタブレットサポート。 |
||
+ | * {{AUR|fcitx-tsundere}}: 文字を入力した後に何某かを追加するモジュール。 |
||
+ | * {{Pkg|kcm-fcitx}}: fcitx の KDE 設定モジュール。 |
||
+ | * [[#設定ツール]] |
||
− | + | fcitx のコンポーネントをインストールした後は fcitx の再起動が必要です。 |
|
− | == |
+ | == 使用方法 == |
+ | {{Note|対応する文字を入力できるように、[[フォント#中国語、日本語、ハングル、ベトナム語|中国語、日本語、ハングル、ベトナム語 フォント]] がインストールされている必要があります。}} |
||
+ | === デスクトップ環境での自動起動 === |
||
− | Fcitx は GUI の設定ツールを提供しています。[[Arch User Repository|AUR]] から {{Pkg|kcm-fcitx}} (kcm ベース), {{Pkg|fcitx-configtool}} (gtk3 ベース), {{AUR|fcitx-configtool-gtk2}} (gtk2 ベース、サポートなし) のどれかをインストールできます。 |
||
+ | [[KDE]], [[GNOME]] (X 上で動作している場合), [[Xfce]], [[LXDE]] などの XDG 互換のデスクトップ環境を使っている場合は、再ログインで自動的に起動するようになるはずです。起動しないときは、ターミナルを開いて次のように入力してください: |
||
− | Fcitx は手動設定をサポートしていません。 |
||
+ | $ fcitx-autostart |
||
− | === GTK+ と Qt モジュール === |
||
+ | fcitx が正しく動作しているか確認するために、leafpad といったアプリケーションを開いて {{ic|Ctrl+Space}} (インプットメソッドの切り替えのデフォルトのショートカット) を押して FCITX を呼び出しなにか文字を入力してみて下さい。 |
||
− | gtk や qt のプログラムでより良いエクスペリエンスを得たり、(特に gtk の方で) xim によって生じる未解決の問題・バグを除くために、gtk や qt の適切なインプットメソッドモジュールをインストールしてください: {{Pkg|fcitx-gtk2}} (gtk2), {{Pkg|fcitx-gtk3}} (gtk3), {{Pkg|fcitx-qt4}} (qt4), {{Pkg|fcitx-qt5}} (qt5)。次のコマンドを実行することで4つのパッケージをインストールできます (fcitx-qt5 はあまり使われていないので含まれていません): |
||
+ | Fcitx があなたの環境で自動で起動しない場合や fcitx を起動するパラメータを変更したい場合は、デスクトップ環境によって提供されているツールを使って xdg の自動起動を設定するか {{ic|~/.config/autostart/}} ディレクトリ内の {{ic|fcitx-autostart.desktop}} ファイルを編集してください (存在しないときは {{ic|/etc/xdg/autostart/}} からコピーしてください)。 |
||
− | # pacman -S fcitx-im |
||
+ | デスクトップ環境が xdg 自動起動をサポートしていない場合は、(環境変数を正しく設定した後に) 次の行をスタートアップスクリプトに追加してください: |
||
− | Fcitx を使う前に、環境変数をいくつか設定する必要があります。設定はとても簡単です。 |
||
+ | $ fcitx-autostart |
||
− | 以下の行をデスクトップのスタートアップスクリプトファイル (KDM, GDM, LightDM を使っている場合は {{ic|.xprofile}} もしくは {{ic|.profile}}、startx や Slim を使っている場合は {{ic|.xinitrc}}) に追加してください。この設定で、fcitx は gtk/qt のインプットメソッドモジュールを使うようになり xim プログラムをサポートします (必要なインプットメソッドモジュールがすでにインストールされているか確認してください): |
||
+ | xim サポートのある他のインプットメソッドが動作していると、Fcitx は xim エラーで起動できません。Fcitx を起動する前に他のインプットメソッドが動いていないことを確認してください。 |
||
− | export GTK_IM_MODULE=fcitx |
||
− | export QT_IM_MODULE=fcitx |
||
− | export XMODIFIERS="@im=fcitx" |
||
+ | === インプットメソッドモジュールの環境変数の設定 === |
||
− | {{Note|上の設定で動かないときは {{ic|1=export DefaultIMModule=fcitx}} を追加してみて下さい。}} |
||
+ | インプットメソッドモジュールを登録するために、以下の環境変数を[[環境変数#グラフィック環境変数|セット]]します。 |
||
− | 変更を適用するためにログインしなおしてください。 |
||
+ | |||
+ | {{bc|1= |
||
+ | GTK_IM_MODULE=fcitx |
||
+ | QT_IM_MODULE=fcitx |
||
+ | XMODIFIERS=@im=fcitx |
||
+ | }} |
||
+ | |||
+ | ただし、Qt5 アプリケーションは XIM をサポートしていないため、IM モジュールのインストールが必要です。 |
||
+ | |||
+ | ''fcitx'' プロセスが自動的に起動しない場合、{{ic|~/.xinitrc}} に {{ic|fcitx &}} を追加する必要があるかもしれません。 |
||
+ | もし {{ic|fcitx &}} が起動しない場合は、その後に {{ic|sleep 2}} とタイプしてください。 |
||
+ | |||
+ | {{Note| |
||
+ | * このために {{ic|.bashrc}} を使わないようにしてください。https://mywiki.wooledge.org/DotFiles を参照。 |
||
+ | * 全ての Qt アプリケーションで fcitx に問題がある場合、''qtconfig'' (''qtconfig-qt4'') を実行し、3番目のタブで ''Default Input Method'' コンボボックスに ''fcitx'' があることを確認します。 |
||
+ | }} |
||
=== Xim === |
=== Xim === |
||
− | 任意で、 |
+ | 任意で、上記のモジュールをインストールせずに、GTK や Qt のプログラム、あるいはその両方で [[Wikipedia:ja:X Input Method|X Input Method]] (XIM) を使用するように設定することも可能です。この場合、上記の対応する行を以下のように変更してください: |
+ | |||
+ | GTK_IM_MODULE DEFAULT = xim |
||
+ | QT_IM_MODULE DEFAULT = xim |
||
+ | {{ic|~/.xprofile}} または {{ic|~/.xinitrc}} を変更する場合は、{{ic|export}} を追加します。 |
||
− | export GTK_IM_MODULE=xim |
||
− | export QT_IM_MODULE=xim |
||
{{Warning|xim を使用するとインプットメソッドによって、入力ができなくなったりインプットメソッドを再起動するとアプリケーションがフリーズするなどの問題がおこることがあります。xim 関連の問題に対しては Fcitx は修正やサポートを提供できません。これは他のインプットメソッドフレームワークでも同じで、可能な限り xim ではなく ツールキット (gtk/qt) のインプットメソッドモジュールを使って下さい。}} |
{{Warning|xim を使用するとインプットメソッドによって、入力ができなくなったりインプットメソッドを再起動するとアプリケーションがフリーズするなどの問題がおこることがあります。xim 関連の問題に対しては Fcitx は修正やサポートを提供できません。これは他のインプットメソッドフレームワークでも同じで、可能な限り xim ではなく ツールキット (gtk/qt) のインプットメソッドモジュールを使って下さい。}} |
||
82行目: | 119行目: | ||
変更を適用するためにログインしなおしてください。 |
変更を適用するためにログインしなおしてください。 |
||
− | == |
+ | == 設定 == |
− | === |
+ | === 設定ツール === |
+ | Fcitx は GUI の設定ツールを提供しています。{{Pkg|kcm-fcitx}} (KDE) または {{Pkg|fcitx-configtool}} (GTK+3 ベース) がインストールできます。{{Pkg|fcitx-configtool}} をインストールしたら ''fcitx-config-gtk3'' を起動してください。別の言語のインプットメソッドを使用したいときは ''Only Show Current Language'' の設定を解除してください。 |
||
− | [[KDE]], [[GNOME]], [[Xfce|XFCE]], [[LXDE]] などの XDG 互換のデスクトップ環境を使っている場合は、再ログインで自動的に起動するようになるはずです。起動しないときは、ターミナルを開いて次のように入力してください: |
||
+ | 設定を変更する前に fcitx は停止してください。停止しないと変更が反映されません。 |
||
− | $ fcitx |
||
+ | スペルチェックを有効にするには、fcitx が fcitx-keyboard によるインプットメソッドを使っている時に ctrl + alt + h を押して下さい。長い単語を入力すれば、動いているかどうか確認できます。 |
||
− | fcitx が正しく動作しているか確認するために、leafpad といったアプリケーションを開いて CTRL+Space (インプットメソッドの切り替えのデフォルトのショートカット) を押して FCITX を呼び出しなにか文字を入力してみて下さい。 |
||
+ | === 入力メソッドの設定 === |
||
− | Fcitx があなたの環境で自動で起動しない場合や fctix を起動するパラメータを変更したい場合は、デスクトップ環境によって提供されているツールを使って xdg の自動起動を設定するか {{ic|~/.config/autostart/}} ディレクトリ内の {{ic|fcitx-autostart.desktop}} ファイルを編集してください (存在しないときは {{ic|/etc/xdg/autostart/}} からコピーしてください)。 |
||
+ | GUI ツールで入力メソッドの追加/削除が可能です。大文字と小文字を区別して検索することに注意してください。 |
||
− | デスクトップ環境が xdg 自動起動をサポートしていない場合は、(環境変数を正しく設定した後に) 次の行をスタートアップスクリプトに追加してください: |
||
+ | 最初に設定された入力メソッドは非アクティブ状態、それ以外はすべてアクティブ状態になります。一般に、非アクティブ状態は ''キーボード'' オプションの1つです(例:"キーボード - 英語(US)") これらのオプションは、名前にあるキーボードレイアウトに基づいて入力するだけです。 |
||
− | $ fcitx |
||
+ | グローバル設定では、トリガー入力メソッドのショートカットは非アクティブ状態と最後に使用したアクティブ状態の間でしか切り替わりません。''Scroll between Input Methods'' はデフォルトでは異なるアクティブ状態間のスクロールのみですが、詳細設定で非アクティブ状態を含むように設定することもできます。さらに、''Scroll between Input Methods'' のショートカットは順番に押さなければなりません。例えば {{ic|ALT_SHIFT}} は {{ic|alt}} が {{ic|shift}} より前に押されたときのみ有効になります。 |
||
− | xim サポートのある他のインプットメソッドが動作していると、Fcitx は xim エラーで起動できません。Fcitx を起動する前に他のインプットメソッドが動いていないことを確認してください。 |
||
+ | IME の設定は、キーボードを任意の IME に設定し、トレイアイコンを右クリックすることで確認できます。 |
||
− | ==デスクトップ環境の統合== |
||
− | === |
+ | === デフォルト UI の変更 === |
− | 現在 fcitx-keyboard が初めからサポートされています。設定ツールを開き (上述の {{Pkg|kcm-fcitx}} もしくは {{Pkg|fcitx-configtool}})、"Show only current language" のチェックを外してあなたのキーボードにあったレイアウトを探して下さい。 |
||
+ | Fcitx は kimpanel プロトコルによるデスクトップの統合をサポートしています。 |
||
− | スペルチェックを有効にするには、fcitx が fcitx-keyboard によるインプットメソッドを使っている時に ctrl + alt + h を押して下さい。長い単語を入力すれば、動いているかどうか確認できます。 |
||
+ | |||
+ | * Gnome-Shell: extensions.gnome.org や {{AUR|gnome-shell-extension-kimpanel-git}} パッケージから kimpanel をインストールでき、ibus-gjs と同じように使うことができます。 |
||
+ | * KDE: {{Pkg|kimtoy}} は Sogou や fcitx のスキンを使えます。 |
||
+ | |||
+ | === ピンイン辞書の拡張 === |
||
+ | |||
+ | ピンイン辞書は {{ic|~/.config/fcitx/pinyin}} に存在します。{{ic|pybase.mb}} ファイルには単一文字が {{ic|pyphrase.mb}} ファイルにはピンインのフレーズが定義されています。拡張するには {{ic|/usr/share/fcitx/pinyin}} にファイルを保存して fcitx を再起動してください。 |
||
+ | |||
+ | === スキン === |
||
+ | |||
+ | スキンをダウンロードし、以下のディレクトリのいずれかに解凍します。ディレクトリが存在しない場合は、作成することができます。 |
||
+ | |||
+ | /usr/share/fcitx/skin #Global settings |
||
+ | ~/.config/fcitx/skin #User settings |
||
+ | |||
+ | === cloud ピンインの設定 === |
||
+ | |||
+ | {{Pkg|fcitx-cloudpinyin}} 入力メソッドをインストールした後、fcitx を再起動してください。コンフィギュレーション GUI で見つからない場合は、advanced settingsを有効にしてください。クラウドクエリの結果は自動的に現在の入力メソッドの辞書に追加されます。 |
||
+ | |||
+ | Google にアクセスできない場合は、cloud ピンインのソースを Baidu に変更します。 |
||
+ | |||
+ | cloud のクエリ結果は、デフォルトでは二次候補としてリストアップされますが、設定可能です。既に結果が存在する場合は、1件のみ表示されます。 |
||
+ | |||
+ | {{Note|クエリが空の結果を返すと辞書の順序が変わるので、クエリ結果を第一候補に設定することはお勧めしません。}} |
||
+ | |||
+ | == ヒントとテクニック == |
||
+ | |||
+ | === ショートカットキー === |
||
+ | |||
+ | よく使われるデフォルトのショートカットキーをいくつか紹介します。 |
||
+ | |||
+ | * {{ic|Ctrl+Space}} - 入力メソッドをアクティブにします。 |
||
+ | * {{ic|Left Shift}} - 一時的に英語に切り替わります。 |
||
+ | * {{ic|Ctrl+Shift}} - 入力方式を切り替えます。 |
||
+ | * {{ic|-}}/{{ic|1==}} - ページ送り/戻し |
||
+ | * {{ic|Shift+Space}} - 全角・半角切り替え |
||
+ | |||
+ | {{Note|これらのショートカットキーは、設定インタフェースのグローバルコンフィギュレーションで変更することができます。}} |
||
+ | |||
+ | === Vim === |
||
+ | |||
+ | Vim で Fcitx をよく使う場合、{{AUR|vim-fcitx}} プラグインをインストールするか、以下のコードを {{ic|~/.vimrc}} に追加してください。挿入モードを終了するときは Fcitx は自動的に閉じられ、そうでないときはその逆です。 |
||
+ | |||
+ | "##### auto fcitx ########### |
||
+ | let g:input_toggle = 1 |
||
+ | function! Fcitx2en() |
||
+ | let s:input_status = system("fcitx-remote") |
||
+ | if s:input_status == 2 |
||
+ | let g:input_toggle = 1 |
||
+ | let l:a = system("fcitx-remote -c") |
||
+ | endif |
||
+ | endfunction |
||
+ | |||
+ | function! Fcitx2zh() |
||
+ | let s:input_status = system("fcitx-remote") |
||
+ | if s:input_status != 2 && g:input_toggle == 1 |
||
+ | let l:a = system("fcitx-remote -o") |
||
+ | let g:input_toggle = 0 |
||
+ | endif |
||
+ | endfunction |
||
+ | |||
+ | set ttimeoutlen=150 |
||
+ | "Exit insert mode |
||
+ | autocmd InsertLeave * call Fcitx2en() |
||
+ | "Enter insert mode |
||
+ | autocmd InsertEnter * call Fcitx2zh() |
||
+ | "##### auto fcitx end ###### |
||
+ | |||
+ | {{Note|外部プログラムを呼び出すため、挿入モードの入出力を繰り返すマッピングの速度が著しく低下します。該当するマッピングを書き換え、fcitx.vim と併用して Python をサポートした Vim を使用することで効率を上げることが出来ます。}} |
||
− | === |
+ | === クリップボード === |
+ | [https://www.csslayer.info/wordpress/fcitx-dev/fcitx-clipboard/ Fcitx にはクリップボードが付属しています]、ショートカットキーは {{ic|Ctrl+;}} です。 |
||
− | extensions.gnome.org や [[Arch User Repository|AUR]] の {{AUR|gnome-shell-extension-kimpanel-git}} パッケージから kimpanel をインストールでき、ibus-gjs と同じように使うことができます。 |
||
+ | === 特殊記号 === |
||
− | GNOME ありとあらゆるインプットメソッドを破壊しようとするため、Fcitx を使うために、gnome-control-center から全ての入力ソースとインプットメソッドのホットキーを削除してから次のコマンドを実行して iBus との統合を無効にする必要があります: |
||
− | $ gsettings set org.gnome.settings-daemon.plugins.keyboard active false |
||
+ | {{ic|~/.config/fcitx/data/pySym.mb}} を作成し、ファイルの内容は以下の通りです。 |
||
− | ===KDE=== |
||
+ | #The first line with "#" is a comment |
||
− | {{Pkg|kcm-fcitx}} や {{Pkg|kdeplasma-addons-applets-kimpanel}} をインストールできます。 |
||
+ | #Format: coding symbol |
||
+ | #Code can only be lowercase letters, after pinyin analysis, the longest is 10 (such as py is 2, pinyin is also 2) |
||
+ | #Mathematics symbols |
||
+ | sxfh + |
||
+ | sxfh - |
||
+ | sxfh < |
||
+ | sxfh = |
||
+ | sxfh > |
||
+ | sxfh ± |
||
+ | sxfh × |
||
+ | sxfh ÷ |
||
+ | sxfh ∈ |
||
+ | sxfh ∏ |
||
+ | sxfh ∑ |
||
+ | sxfh ∕ |
||
+ | sxfh √ |
||
+ | sxfh ∝ |
||
+ | 対応する特殊記号と一致するコードを直接入力してください。 |
||
− | {{Pkg|kcm-fcitx}} は fcitx の kcontrol モジュールです。 |
||
+ | {{Note|エンコーディングは小文字の26文字で表現され、v で始まる文字は無効です。}} |
||
− | {{Pkg|kdeplasma-addons-applets-kimpanel}} は kde と統合するための plasmoid です。kimpanel を plasma に追加すれば fcitx は自動的に切り替えます。 |
||
− | ==クリップボード== |
+ | === クリップボードアクセス === |
− | fcitx を使ってクリップボード (とクリップボード履歴) にある文章を入力することが可能です。デフォルトのトリガーキーは Control- です。このトリガーキーはクリップボードのアドオンの設定ページにある他のオプションと同じように設定することが可能です。 |
+ | fcitx を使ってクリップボード (とクリップボード履歴) にある文章を入力することが可能です。デフォルトのトリガーキーは Control-; です。このトリガーキーはクリップボードのアドオンの設定ページにある他のオプションと同じように設定することが可能です。 |
{{Note|クリップボードマネージャではないため、クリップボードマネージャにあるような中身の選択や変更はできません。クリップボードからの入力にだけ使えます。}} |
{{Note|クリップボードマネージャではないため、クリップボードマネージャにあるような中身の選択や変更はできません。クリップボードからの入力にだけ使えます。}} |
||
129行目: | 250行目: | ||
{{Warning|クライアントによっては複数行の入力をサポートしていないため fcitx-clipboard を使ってクリップボードの中身をペーストすると一行しか出ないことがあります。これはバグかプログラムの方の入力の問題なので fcitx は何もできません。}} |
{{Warning|クライアントによっては複数行の入力をサポートしていないため fcitx-clipboard を使ってクリップボードの中身をペーストすると一行しか出ないことがあります。これはバグかプログラムの方の入力の問題なので fcitx は何もできません。}} |
||
+ | === fcitx-remote(リモート) === |
||
− | ==トラブルシューティング== |
||
+ | |||
+ | ''fcitx-remote'' は fcitx の状態を制御するために使用することができるコマンドラインツールです。{{Pkg|fcitx}} パッケージと一緒にインストールされます。 |
||
+ | |||
+ | ここで詳しく説明する価値のあるオプションは {{ic|fcitx-remote -s ''imname''}} で、これは {{ic|''imname''}} で特定される入力メソッドに切り替わります。使用中の入力メソッドに対する正しい {{ic|''imname''}} は、 ''fcitx-diagnose'' を実行し、 "## インプットメソッド:" セクションで確認することができます。 |
||
+ | |||
+ | === 特殊文字入力 === |
||
+ | |||
+ | [[Fcitx5#特殊文字を入力]] を参照してください。この内容は Fcitx にも適用されます。 |
||
+ | |||
+ | == トラブルシューティング == |
||
+ | |||
+ | === ''トリガー入力方法の追加キー'' を無効化または変更する [sic] === |
||
+ | |||
+ | この設定は ''Global Config'' タブにあり、デフォルトは ''SHIFT 左右'' です。つまり、どちらかのシフトキーを押せばすぐに入力方法が変わるということです。本来はシフトキーを個別に押した場合にのみ適用されるはずですが、標準的なキーボード入力を使用しているときに大文字の入力やキーボードによるテキスト選択などがランダムに中断される傾向があります。 |
||
+ | |||
+ | また、この設定は、いつでも警告なしにデフォルトに戻る可能性があります。fcitx の設定を変更できないようにするためには、fcitx の設定ファイルを ”不変" にする必要があります。{{ic|chattr +i ~/.config/fcitx/config}} (rootユーザで) |
||
+ | |||
=== 問題の診断 === |
=== 問題の診断 === |
||
− | fcitx を使っていて問題が発生する場合、例えばどのアプリケーションでも Ctrl+Space が使えない |
+ | fcitx を使っていて問題が発生する場合、例えばどのアプリケーションでも Ctrl+Space が使えないときは、{{ic|fcitx-diagnose}} を使ってまず問題を診断してみてください。{{ic|fcitx-diagnose}} はよくある問題についての手がかりを提供してくれます。また、(IRC やフォーラムなどで) 他の人に相談するときはコマンドの出力を貼り付けると役に立つはずです。 |
− | ===Emacs=== |
+ | === Emacs === |
− | LC_CTYPE が英語の場合、emacs のバグによって emacs でインプットメソッドが使えなくなることがあります。emacs を起動する前に |
+ | {{ic|LC_CTYPE}} が英語の場合、emacs のバグによって emacs でインプットメソッドが使えなくなることがあります。emacs を起動する前に {{ic|ja_JP.UTF-8}} など {{ic|LC_CTYPE}} を他の値に設定することで問題を回避できます。 |
+ | |||
+ | 使用するロケールは有効である必要があります。{{ic|/etc/locale.gen}} を編集して適当な行 (例: {{ic|ja_JP.UTF-8}}) をアンコメントし、{{ic|locale-gen}} を実行してください。 |
||
デフォルトのフォントセットはベースフォントとして {{ic|-*-*-*-r-normal--14-*-*-*-*-*-*-*}} を使います (src/xfns.c)。マッチするフォント (terminus や 75dpi など、{{ic|xlsfonts}} の出力を見て下さい) がない場合、XIM は有効になりません。 |
デフォルトのフォントセットはベースフォントとして {{ic|-*-*-*-r-normal--14-*-*-*-*-*-*-*}} を使います (src/xfns.c)。マッチするフォント (terminus や 75dpi など、{{ic|xlsfonts}} の出力を見て下さい) がない場合、XIM は有効になりません。 |
||
+ | ==== Emacs デーモン ==== |
||
− | ===インプットメソッドモジュール=== |
||
+ | |||
− | ほとんどのプログラムではインプットメソッドモジュールがなくてもインプットメソッドを使うことができますが、その場合、未解決の問題が発生する可能性があります。 |
||
+ | [[Emacs#デーモンとして|emacs デーモン/クライアントモード]]を使う場合、デーモンの起動時に {{ic|LC_CTYPE}} を設定してください。例えば {{ic|1=LC_CTYPE=ja_JP.UTF-8 emacs --daemon}} というコマンドを使って emacs デーモンを起動します。 |
||
+ | |||
+ | systemd から emacs デーモンを起動している場合、ユニットファイルで以下のように Environment を設定してください: |
||
+ | |||
+ | Environment="LC_CTYPE=ja_JP.UTF-8" "XMODIFIERS=@im=fcitx" |
||
+ | systemd は {{ic|.xprofile}} をロードしないため XMODIFIERS は明示的に設定する必要があります。emacs で {{ic|initial-environment}} 変数をチェックして変数が両方とも正しく設定されていることを確認してください。 |
||
− | バージョン 13 以降の firefox では、ポップアップメニューが xim にとって機能しなくなります。fcitx-gtk2 と最新の fcitx をインストールしてください。 |
||
===Ctrl+Space が GTK のプログラムで機能しない=== |
===Ctrl+Space が GTK のプログラムで機能しない=== |
||
147行目: | 292行目: | ||
ロケールを英語に設定しているとこの問題が発生することがあります。GTK_IM_MODULE が正しく設定されているか確認してください。 |
ロケールを英語に設定しているとこの問題が発生することがあります。GTK_IM_MODULE が正しく設定されているか確認してください。 |
||
− | 参照: [ |
+ | 参照: [https://fcitx-im.org/wiki/FAQ#When_use_Ctrl_.2B_Space.2C_Fcitx_cannot_be_triggered_on FAQ] |
*_IM_MODULE 環境変数を設定していても fcitx が有効にできない場合は、適切なインプットメソッドモジュールをインストールしているか確認してください。 |
*_IM_MODULE 環境変数を設定していても fcitx が有効にできない場合は、適切なインプットメソッドモジュールをインストールしているか確認してください。 |
||
153行目: | 298行目: | ||
プログラムによっては xim しか使わないため、そうしたプログラムを使っているときは、XMODIFIERS が正しく設定されているか確認してください。プログラムの例: gtk や qt を使わないプログラム全て (例: tk や motif、もしくは xlib を直接使っているプログラム), emacs, opera, openoffice, libreoffice, skype。 |
プログラムによっては xim しか使わないため、そうしたプログラムを使っているときは、XMODIFIERS が正しく設定されているか確認してください。プログラムの例: gtk や qt を使わないプログラム全て (例: tk や motif、もしくは xlib を直接使っているプログラム), emacs, opera, openoffice, libreoffice, skype。 |
||
− | gnome の gnome-terminal で fcitx が有効にできず、上の方法で効果がない場合は、 |
+ | gnome の gnome-terminal で fcitx が有効にできず、上の方法で効果がない場合は、以下のコマンドを試してみて下さい: |
+ | |||
+ | $ gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/IMModule':<'fcitx'>}" |
||
=== 内蔵の Chinese Pinyin がデフォルトで有効にならない === |
=== 内蔵の Chinese Pinyin がデフォルトで有効にならない === |
||
181行目: | 328行目: | ||
これでレイアウトがちゃんと使えるようになるはずです。KDE のレイアウト切り替えrアイコンが表示され、マウススクロールしたりアイコンをクリックすることでレイアウトを切り替えられます。 |
これでレイアウトがちゃんと使えるようになるはずです。KDE のレイアウト切り替えrアイコンが表示され、マウススクロールしたりアイコンをクリックすることでレイアウトを切り替えられます。 |
||
+ | |||
+ | === 勝手にインプットメソッドが英語に切り替わってしまう === |
||
+ | |||
+ | XMind でエンターを押してノードを作成したときなど、インプットメソッドが勝手に英語に切り替わってしまって、元のインプットメソッドに手動で戻さなくてはならないことがあります。 |
||
+ | |||
+ | この問題を修正するには、fcitx の GUI 設定ツール ({{Pkg|fcitx-configtool}} に含まれています) を開いて、"Global Config" タブの "Share State Among Window" ドロップダウンメニューから、"PerProgram" または "All" を選択してください。 |
||
+ | |||
+ | === GNOME/Wayland 上での Fcitx の利用 === |
||
+ | |||
+ | Wayland は {{ic|~/.xprofile}} に保管された環境変数を読み込むことができないため、Wayland 上で Fcitx を使うときは {{ic|/etc/environment}} で環境変数を設定してください。 |
||
+ | |||
+ | === xmodmap の設定が上書きされる === |
||
+ | |||
+ | Fcitx はキーボードレイアウトを制御するため、xmodmap の設定は上書きされてしまいます。4.2.7 から、Fcitx は {{ic|~/.Xmodmap}} のロードを行うようになります。 |
||
+ | |||
+ | xmodmap の変更を保存する方法については [https://fcitx-im.org/wiki/FAQ#xmodmap_settings_being_overwritten FAQ] を参照してください。 |
||
+ | |||
+ | === HiDPI 環境では Fcitx の preedit box が小さすぎる === |
||
+ | |||
+ | こちらを参照 [[HiDPI#Fcitx]] |
||
==参照== |
==参照== |
||
*[https://github.com/fcitx/fcitx/ Fcitx GitHub] |
*[https://github.com/fcitx/fcitx/ Fcitx GitHub] |
||
− | *[https:// |
+ | *[https://fcitx-im.org/ Fcitx Wiki] |
− | *[http://fcitx-im.org/ Fcitx Wiki] |
2022年12月12日 (月) 10:31時点における版
Fcitx (Flexible Input Method Framework) は Linux に環境非依存の言語サポートを提供する軽量の インプットメソッドフレームワーク です。多くの言語をサポートし便利な non-CJK 機能が含まれています。
インストール
fcitx は公式リポジトリから Pacman でインストールできます。
インプットメソッドエンジン
入力したい言語にあわせて、インプットメソッドエンジンをインストールしてください:
中国語
- fcitx-baidupinyinAUR: Baidu Pinyin インプットメソッドがベース。
- fcitx-chewing: libchewing がベースの繁体字の注音入力エンジン。
- fcitx-cloudpinyin: クラウドによる中国語入力をサポート。
- fcitx-googlepinyin: libgooglepinyin がベース。Android 用の Google ピンイン IME。
- fcitx-libpinyin: libpinyin がベース。fcitx-sunpinyin よりも優れたアルゴリズムが使われています。
- fcitx-rime: Rime IME プロジェクトのスキーマがベース。
- fcitx-sogoupinyinAUR: Linux 向けの捜狗インプットメソッド。同音異字、クラウド入力、英語入力、混合入力をサポート。
- fcitx-sunpinyin: sunpinyin がベース。速度と正確性のバランスが良い。
日本語
- fcitx-anthy: 人気の日本語入力エンジン。開発は停止しています。
- fcitx-mozc: Google 日本語入力のオープンソース版である Mozc がベース。
- fcitx-kkc: libkkc がベースの新しい日本語仮名漢字入力エンジン。
- fcitx-skk: libskk がベースの日本語仮名漢字入力エンジン。
他の言語
- fcitx-hangul: libhangul がベースの韓国語のハングル入力エンジン。
- fcitx-m17n: M17n によって提供されている他の言語の入力エンジン。
- fcitx-sayura: シンハラ文字入力エンジン。
- fcitx-unikey: ベトナム文字入力エンジン。
インプットメソッドモジュール
GTK+ や Qt プログラムでより良い動作を得るには、必要に応じて fcitx-qt4AUR, fcitx-qt5 パッケージをインストールしてください。もしくは fcitx-im グループで全てのパッケージをインストールできます。モジュールをインストールしなくてもアプリケーション上でインプットメソッドは動作しますが、フリーズしたりプレビューウィンドウの位置がおかしくなったり、プレビューが表示されなくなったりします。
以下のアプリケーションは GTK+/Qt インプットモジュールを使用しません:
- Tk, motif, xlib などを使用するアプリケーション
- Emacs, Opera, OpenOffice, LibreOffice, Skype, Wine, Java, Xterm, urxvt, WPS
その他
- fcitx-ui-light: fcitx の軽量 UI。
- fcitx-table-extra: 倉頡, 郑码, 嘸蝦米サポートを追加。
- fcitx-table-other: LaTeX, 絵文字など。
- fcitx-tabletAUR: 手書きのタブレットサポート。
- fcitx-tsundereAUR: 文字を入力した後に何某かを追加するモジュール。
- kcm-fcitx: fcitx の KDE 設定モジュール。
- #設定ツール
fcitx のコンポーネントをインストールした後は fcitx の再起動が必要です。
使用方法
デスクトップ環境での自動起動
KDE, GNOME (X 上で動作している場合), Xfce, LXDE などの XDG 互換のデスクトップ環境を使っている場合は、再ログインで自動的に起動するようになるはずです。起動しないときは、ターミナルを開いて次のように入力してください:
$ fcitx-autostart
fcitx が正しく動作しているか確認するために、leafpad といったアプリケーションを開いて Ctrl+Space
(インプットメソッドの切り替えのデフォルトのショートカット) を押して FCITX を呼び出しなにか文字を入力してみて下さい。
Fcitx があなたの環境で自動で起動しない場合や fcitx を起動するパラメータを変更したい場合は、デスクトップ環境によって提供されているツールを使って xdg の自動起動を設定するか ~/.config/autostart/
ディレクトリ内の fcitx-autostart.desktop
ファイルを編集してください (存在しないときは /etc/xdg/autostart/
からコピーしてください)。
デスクトップ環境が xdg 自動起動をサポートしていない場合は、(環境変数を正しく設定した後に) 次の行をスタートアップスクリプトに追加してください:
$ fcitx-autostart
xim サポートのある他のインプットメソッドが動作していると、Fcitx は xim エラーで起動できません。Fcitx を起動する前に他のインプットメソッドが動いていないことを確認してください。
インプットメソッドモジュールの環境変数の設定
インプットメソッドモジュールを登録するために、以下の環境変数をセットします。
GTK_IM_MODULE=fcitx QT_IM_MODULE=fcitx XMODIFIERS=@im=fcitx
ただし、Qt5 アプリケーションは XIM をサポートしていないため、IM モジュールのインストールが必要です。
fcitx プロセスが自動的に起動しない場合、~/.xinitrc
に fcitx &
を追加する必要があるかもしれません。
もし fcitx &
が起動しない場合は、その後に sleep 2
とタイプしてください。
Xim
任意で、上記のモジュールをインストールせずに、GTK や Qt のプログラム、あるいはその両方で X Input Method (XIM) を使用するように設定することも可能です。この場合、上記の対応する行を以下のように変更してください:
GTK_IM_MODULE DEFAULT = xim QT_IM_MODULE DEFAULT = xim
~/.xprofile
または ~/.xinitrc
を変更する場合は、export
を追加します。
変更を適用するためにログインしなおしてください。
設定
設定ツール
Fcitx は GUI の設定ツールを提供しています。kcm-fcitx (KDE) または fcitx-configtool (GTK+3 ベース) がインストールできます。fcitx-configtool をインストールしたら fcitx-config-gtk3 を起動してください。別の言語のインプットメソッドを使用したいときは Only Show Current Language の設定を解除してください。
設定を変更する前に fcitx は停止してください。停止しないと変更が反映されません。
スペルチェックを有効にするには、fcitx が fcitx-keyboard によるインプットメソッドを使っている時に ctrl + alt + h を押して下さい。長い単語を入力すれば、動いているかどうか確認できます。
入力メソッドの設定
GUI ツールで入力メソッドの追加/削除が可能です。大文字と小文字を区別して検索することに注意してください。
最初に設定された入力メソッドは非アクティブ状態、それ以外はすべてアクティブ状態になります。一般に、非アクティブ状態は キーボード オプションの1つです(例:"キーボード - 英語(US)") これらのオプションは、名前にあるキーボードレイアウトに基づいて入力するだけです。
グローバル設定では、トリガー入力メソッドのショートカットは非アクティブ状態と最後に使用したアクティブ状態の間でしか切り替わりません。Scroll between Input Methods はデフォルトでは異なるアクティブ状態間のスクロールのみですが、詳細設定で非アクティブ状態を含むように設定することもできます。さらに、Scroll between Input Methods のショートカットは順番に押さなければなりません。例えば ALT_SHIFT
は alt
が shift
より前に押されたときのみ有効になります。
IME の設定は、キーボードを任意の IME に設定し、トレイアイコンを右クリックすることで確認できます。
デフォルト UI の変更
Fcitx は kimpanel プロトコルによるデスクトップの統合をサポートしています。
- Gnome-Shell: extensions.gnome.org や gnome-shell-extension-kimpanel-gitAUR パッケージから kimpanel をインストールでき、ibus-gjs と同じように使うことができます。
- KDE: kimtoy は Sogou や fcitx のスキンを使えます。
ピンイン辞書の拡張
ピンイン辞書は ~/.config/fcitx/pinyin
に存在します。pybase.mb
ファイルには単一文字が pyphrase.mb
ファイルにはピンインのフレーズが定義されています。拡張するには /usr/share/fcitx/pinyin
にファイルを保存して fcitx を再起動してください。
スキン
スキンをダウンロードし、以下のディレクトリのいずれかに解凍します。ディレクトリが存在しない場合は、作成することができます。
/usr/share/fcitx/skin #Global settings ~/.config/fcitx/skin #User settings
cloud ピンインの設定
fcitx-cloudpinyin 入力メソッドをインストールした後、fcitx を再起動してください。コンフィギュレーション GUI で見つからない場合は、advanced settingsを有効にしてください。クラウドクエリの結果は自動的に現在の入力メソッドの辞書に追加されます。
Google にアクセスできない場合は、cloud ピンインのソースを Baidu に変更します。
cloud のクエリ結果は、デフォルトでは二次候補としてリストアップされますが、設定可能です。既に結果が存在する場合は、1件のみ表示されます。
ヒントとテクニック
ショートカットキー
よく使われるデフォルトのショートカットキーをいくつか紹介します。
Ctrl+Space
- 入力メソッドをアクティブにします。Left Shift
- 一時的に英語に切り替わります。Ctrl+Shift
- 入力方式を切り替えます。-
/=
- ページ送り/戻しShift+Space
- 全角・半角切り替え
Vim
Vim で Fcitx をよく使う場合、vim-fcitxAUR プラグインをインストールするか、以下のコードを ~/.vimrc
に追加してください。挿入モードを終了するときは Fcitx は自動的に閉じられ、そうでないときはその逆です。
"##### auto fcitx ########### let g:input_toggle = 1 function! Fcitx2en() let s:input_status = system("fcitx-remote") if s:input_status == 2 let g:input_toggle = 1 let l:a = system("fcitx-remote -c") endif endfunction function! Fcitx2zh() let s:input_status = system("fcitx-remote") if s:input_status != 2 && g:input_toggle == 1 let l:a = system("fcitx-remote -o") let g:input_toggle = 0 endif endfunction set ttimeoutlen=150 "Exit insert mode autocmd InsertLeave * call Fcitx2en() "Enter insert mode autocmd InsertEnter * call Fcitx2zh() "##### auto fcitx end ######
クリップボード
Fcitx にはクリップボードが付属しています、ショートカットキーは Ctrl+;
です。
特殊記号
~/.config/fcitx/data/pySym.mb
を作成し、ファイルの内容は以下の通りです。
#The first line with "#" is a comment #Format: coding symbol #Code can only be lowercase letters, after pinyin analysis, the longest is 10 (such as py is 2, pinyin is also 2) #Mathematics symbols sxfh + sxfh - sxfh < sxfh = sxfh > sxfh ± sxfh × sxfh ÷ sxfh ∈ sxfh ∏ sxfh ∑ sxfh ∕ sxfh √ sxfh ∝
対応する特殊記号と一致するコードを直接入力してください。
クリップボードアクセス
fcitx を使ってクリップボード (とクリップボード履歴) にある文章を入力することが可能です。デフォルトのトリガーキーは Control-; です。このトリガーキーはクリップボードのアドオンの設定ページにある他のオプションと同じように設定することが可能です。
fcitx-remote(リモート)
fcitx-remote は fcitx の状態を制御するために使用することができるコマンドラインツールです。fcitx パッケージと一緒にインストールされます。
ここで詳しく説明する価値のあるオプションは fcitx-remote -s imname
で、これは imname
で特定される入力メソッドに切り替わります。使用中の入力メソッドに対する正しい imname
は、 fcitx-diagnose を実行し、 "## インプットメソッド:" セクションで確認することができます。
特殊文字入力
Fcitx5#特殊文字を入力 を参照してください。この内容は Fcitx にも適用されます。
トラブルシューティング
トリガー入力方法の追加キー を無効化または変更する [sic]
この設定は Global Config タブにあり、デフォルトは SHIFT 左右 です。つまり、どちらかのシフトキーを押せばすぐに入力方法が変わるということです。本来はシフトキーを個別に押した場合にのみ適用されるはずですが、標準的なキーボード入力を使用しているときに大文字の入力やキーボードによるテキスト選択などがランダムに中断される傾向があります。
また、この設定は、いつでも警告なしにデフォルトに戻る可能性があります。fcitx の設定を変更できないようにするためには、fcitx の設定ファイルを ”不変" にする必要があります。chattr +i ~/.config/fcitx/config
(rootユーザで)
問題の診断
fcitx を使っていて問題が発生する場合、例えばどのアプリケーションでも Ctrl+Space が使えないときは、fcitx-diagnose
を使ってまず問題を診断してみてください。fcitx-diagnose
はよくある問題についての手がかりを提供してくれます。また、(IRC やフォーラムなどで) 他の人に相談するときはコマンドの出力を貼り付けると役に立つはずです。
Emacs
LC_CTYPE
が英語の場合、emacs のバグによって emacs でインプットメソッドが使えなくなることがあります。emacs を起動する前に ja_JP.UTF-8
など LC_CTYPE
を他の値に設定することで問題を回避できます。
使用するロケールは有効である必要があります。/etc/locale.gen
を編集して適当な行 (例: ja_JP.UTF-8
) をアンコメントし、locale-gen
を実行してください。
デフォルトのフォントセットはベースフォントとして -*-*-*-r-normal--14-*-*-*-*-*-*-*
を使います (src/xfns.c)。マッチするフォント (terminus や 75dpi など、xlsfonts
の出力を見て下さい) がない場合、XIM は有効になりません。
Emacs デーモン
emacs デーモン/クライアントモードを使う場合、デーモンの起動時に LC_CTYPE
を設定してください。例えば LC_CTYPE=ja_JP.UTF-8 emacs --daemon
というコマンドを使って emacs デーモンを起動します。
systemd から emacs デーモンを起動している場合、ユニットファイルで以下のように Environment を設定してください:
Environment="LC_CTYPE=ja_JP.UTF-8" "XMODIFIERS=@im=fcitx"
systemd は .xprofile
をロードしないため XMODIFIERS は明示的に設定する必要があります。emacs で initial-environment
変数をチェックして変数が両方とも正しく設定されていることを確認してください。
Ctrl+Space が GTK のプログラムで機能しない
ロケールを英語に設定しているとこの問題が発生することがあります。GTK_IM_MODULE が正しく設定されているか確認してください。
参照: FAQ
- _IM_MODULE 環境変数を設定していても fcitx が有効にできない場合は、適切なインプットメソッドモジュールをインストールしているか確認してください。
プログラムによっては xim しか使わないため、そうしたプログラムを使っているときは、XMODIFIERS が正しく設定されているか確認してください。プログラムの例: gtk や qt を使わないプログラム全て (例: tk や motif、もしくは xlib を直接使っているプログラム), emacs, opera, openoffice, libreoffice, skype。
gnome の gnome-terminal で fcitx が有効にできず、上の方法で効果がない場合は、以下のコマンドを試してみて下さい:
$ gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/IMModule':<'fcitx'>}"
内蔵の Chinese Pinyin がデフォルトで有効にならない
ロケールが en_US.UTF-8
である場合、fcitx は内蔵の Chinese Pinyin インプットメソッドをデフォルトで有効にしません。fcitx-keyboard-us
インプットメソッドだけが有効にされます。fcitx-diagnose
コマンドを実行すると以下のように表示されます:
## Input Methods: 1. Found 1 enabled input methods: fcitx-keyboard-us 2. Default input methods: **You only have one input method enabled, please add a keyboard input method as the first one and your main input method as the second one.**
GUI の設定ツールで Pinyin
や Shuangpin
インプットメソッドを追加してインプットメソッドが有効にしてください。
fcitx と KDE
何らかの理由で、KDE がキーボードレイアウトを適切に扱えないことがあります。例えば、US (English) から LT (Lithuanian) に切り替えた場合、キーボードの数字キーは全てリトアニア文字になるはずですが、数字が出力されてしまいます。以下の手順で修正することが可能です:
- 上のセクションで書かれているパッケージをインストールしてください。
- バックグラウンドで
fcitx
を動かしている場合は終了してください。 - KDE に関連することを無効にします:
- System settings --> Input devices --> Layouts (tab) から "Configure layouts" のチェックを外して下さい。
- System settings --> Input devices --> Advanced (tab) から "Configure keyboard options" のチェックを外して下さい。
- ターミナルを開いて
fcitx
と入力して fcitx を起動します。ターミナルは閉じてもかまいません。fcitx
はバックグラウンドで動作し続けます。 - 必要なレイアウトを設定してください (システムトレイアイコンを右クリックして "Configure" をクリック)。
- システムトレイアイコンを右クリックして、"Exit" をクリック。
これでレイアウトがちゃんと使えるようになるはずです。KDE のレイアウト切り替えrアイコンが表示され、マウススクロールしたりアイコンをクリックすることでレイアウトを切り替えられます。
勝手にインプットメソッドが英語に切り替わってしまう
XMind でエンターを押してノードを作成したときなど、インプットメソッドが勝手に英語に切り替わってしまって、元のインプットメソッドに手動で戻さなくてはならないことがあります。
この問題を修正するには、fcitx の GUI 設定ツール (fcitx-configtool に含まれています) を開いて、"Global Config" タブの "Share State Among Window" ドロップダウンメニューから、"PerProgram" または "All" を選択してください。
GNOME/Wayland 上での Fcitx の利用
Wayland は ~/.xprofile
に保管された環境変数を読み込むことができないため、Wayland 上で Fcitx を使うときは /etc/environment
で環境変数を設定してください。
xmodmap の設定が上書きされる
Fcitx はキーボードレイアウトを制御するため、xmodmap の設定は上書きされてしまいます。4.2.7 から、Fcitx は ~/.Xmodmap
のロードを行うようになります。
xmodmap の変更を保存する方法については FAQ を参照してください。
HiDPI 環境では Fcitx の preedit box が小さすぎる
こちらを参照 HiDPI#Fcitx