Help us understand the problem. What is going on with this article?

uim-fepとuim-anthyの使い方と設定方法

More than 1 year has passed since last update.

uim-fepとuim-anthyの使い方と設定方法

前回fbtermに関する設定について書いたが,uim-fepとuim-anthyの設定を別に分けることにした.

多分こっちだけで検索してくる人の方が多いと思うので...

前回の記事
- fbtermの日本語表示.uim-fepとuim-anthyで日本語入力も.ついでに,vimの256色対応も

環境

  • lenovo-S21e
  • Ubuntu16.04LTS

uim-fep & uim-anthy で日本語入力.

日本語入力を行うソフト達.
(fbtermの起動時にこれをオプションとして渡すので,先に...)

設定方法や使い方を書いてあるサイトがあんまりなかったので,ちょっとだけ詳しく書いておくよ.

uim自体はいれなくていいので.

sudo apt install uim-fep
sudo apt install uim-anthy

これを導入しよう.

日本語入力と直接入力の切り替え方法の設定

日本語と英語との入力切替をctrl-spaceに設定するには,

  • ~/.uim

をいじれば良い.存在しなかったら作ればよい.

デフォルトでは

  • /usr/share/uim/generic-key-custom.scm

が読み込まれるらしい.

ctrl + space で切り替えを行うには次のように~/.uimに書けばよい.

~/.uim
(define default-im-name 'anthy)
(define-key generic-on-key? '("<Control> "))
(define-key generic-off-key? '("<Control> "))

ちなみに,この設定ファイルのコメントは
セミコロンで始まる行だ.
uim:~/.uim
;;;コメント

一つでいいのかどうかは確かめていない.

ちなみに細かなコマンドとかはここで見れるよ.

uim/uim-doc-ja UimAnthy

uimの使い方と設定の変更

文字の変換と候補選択

変換はスペース.

そして候補の選択はスペースでもいいが,一方通行なので次を使う.

ctrl+p
ctrl+n

で前後の選択ができる.もちろん矢印も使えるが,ホームポジションから離れてしまうのでおすすめできない.

隣の文節の変換に移る

分割された時は

ctrl+f
ctrl+b

で次の単語や前の単語に移ることができる.

文節の長さの調整

そして区切りの変更は

ctrl+o
shift →

で伸ばすことはできるんだけど,
縮める方がデフォルト設定の

ctrl+i
shift ←

だとコンソールの制約上(?)うまく動かない.

mswinvksの忘備録 uim-fepのキーバインドを変更

だから,次のようにキーバインドを変更しとこう.

割り当てるキーもまた悩ましいものだが,

ctrl+y %伸ばす
ctrl+e %縮める

に割り当てることにした.
(vimのペアのキーって残りctrl+u, ctrl+dとctrl+],ctrl+tぐらいだから,その中で押しやすそうなのを選んだ)

キーバインドの設定ファイル自体はここにあるので,これを参考にする.

  • /usr/share/uim/anthy-key-custom.scm

ただ,直接書き換えるのではなく,~/.uimに書いておこう.
(なければ作る.)

dotfile関連はまとめておいた方が管理が楽だし,設定の共有も簡単だ.
dotfileの管理方法については色々あるのでお好きな方法を.

ちなみにgitlabで管理してま〜す.このQiita記事もね.

(´・ω・`) < GitHub...嫌い...

(´・ω・`) < だって,private repository 無料(タダ)で作れないもん.

(´・ω・`) < 他人に見せられないものが大半だから...

ここで,文節を縮める設定は

  • anthy-shrink-segment-key

だ.これをキーワードに検索するとよい.
逆に伸ばすのは,

  • anthy-extend-segment-key

だ.

コピペしてくるとこんな感じ.

/usr/share/uim/anthy-key-custom.scm
(define-custom 'anthy-extend-segment-key '("<IgnoreCase><Control>o" "<Shift>right")
               '(anthy-keys1)
           '(key)
           (N_ "[Anthy] extend segment")
           (N_ "long description will be here"))

(define-custom 'anthy-shrink-segment-key '("<IgnoreCase><Control>i" "<Shift>left")
               '(anthy-keys1)
           '(key)
           (N_ "[Anthy] shrink segment")
           (N_ "long description will be here"))

見たところ,それぞれの一行目ののあるカッコの中をいじればいいのだろう.
どうせなら二つともセットで変え,

ctrl+y
ctrl+e

にしておこう.

すると,結局こんな感じのコードを~/.uimに書けばいいことになる

~/.uim
(define-custom 'anthy-extend-segment-key '("<IgnoreCase><Control>y")
               '(anthy-keys1)
           '(key)
           (N_ "[Anthy] extend segment")
           (N_ "long description will be here"))

(define-custom 'anthy-shrink-segment-key '("<IgnoreCase><Control>e")
               '(anthy-keys1)
           '(key)
           (N_ "[Anthy] shrink segment")
           (N_ "long description will be here"))

句読点をピリオドとコンマにしたい

そんな時は~/.uimにこう書けばよい.

~/.uim
(require "japanese.scm")
(define ja-rk-rule
 (append '(
       (((",") . ()) ("," "," ","))
       (((".") . ()) ("." "." "."))
      )
  ja-rk-rule))

逆に,普通の句読点が打てなくなってしまうので注意.

もっとうまく設定できるんだろうけど...

[参考文献]

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away