トップ «前の日記(2007-03-02 (Fri)) 最新 次の日記(2007-03-08 (Thu))» 編集

uDiary

海野秀之(うんのひでゆき)の外部記憶

Twitter (twilog) / RSS / アンテナ / ぶくま

2006|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|08|
2010|01|02|03|05|06|07|10|11|
2011|03|08|
2012|02|04|07|08|10|
2013|01|02|03|05|06|08|11|12|
2014|01|02|05|06|07|08|09|12|
2015|01|02|03|04|

2007-03-06 (Tue)

anthy-rkmap-keybind

もう 10 年来 (←やや誇張) Wnn + Tamago のお世話になってたもんで、 Anthy のデフォルト設定ではまごついて仕方ありませんという old-type な Emacs 使い (別名: 我が国の残念な人々) の みなさん、こんにちは。

今日は、「まいごになったら Ctrl-j」と言われているような気もするけど、 たまに脱出できないような気もする Anthy のモード遷移について。 「モード遷移」で通じるのかどうか、あれですが、ひらがな入力モードとか カタカナ入力モードとかの切り替えのことです。

anthy.el の以下の部分が、それに該当するようです。

(defvar anthy-default-rkmap-keybind
  '(
    ;; q
    (("hiragana" . 113) . "katakana")
    (("katakana" . 113) . "hiragana")
    ;; l
    (("hiragana" . 108) . "alphabet")
    (("katakana" . 108) . "alphabet")
    ;; L
    (("hiragana" . 76) . "walphabet")
    (("katakana" . 76) . "walphabet")
    ;; \C-j
    (("alphabet" . 10) . "hiragana")
    (("walphabet" . 10) . "hiragana")
    ;; \C-q
    (("hiragana" . 17) . "hankaku_kana")
    (("hankaku_kana" . 17) . "hiragana")
    ))

状態遷移マトリクス風に書くと次の様になります。

↓遷移前 \遷移後→ a
ひらがな (hiragana) --q ^q lL
カタカナ (katakana)q --na lL
半角カナ (hankaku_kana)^qna--nana
alphabet (alphabet)^jnana--na
alphabet (walphabet) ^jnanana--

気になるのは、q, ^q (Ctrl-q) はトグルとして動作するのに、l, L, ^j (Ctrl-j) は遷移先オリエンテッドな割り当てになっているところと、穴 (na; not available) が かなり多いところ。これでは、私のようなおじさんが迷子になりがちなのも、 仕方がないような気もします(←自分にあまい)。

というわけで、次のようにいじくることにしました。

  • トグルはやめて、遷移先オリエンテッドに一本化
  • 穴はなるべくなくす

5 * 5 の状態遷移にトグルはきついでしょ。

↓遷移前 \遷移後→ a
ひらがな (hiragana) --q ^q lL
カタカナ (katakana)^j--^q lL
半角カナ (hankaku_kana)^jq -- lL
alphabet (alphabet)^jna^q--na
alphabet (walphabet) ^jna^qna--

変更方法としては、 .emacs に次を追加:

(setq anthy-rkmap-keybind
  '(
    ;; \C-j
    (("katakana"     . 10) . "hiragana")
    (("hankaku_kana" . 10) . "hiragana")
    (("alphabet"     . 10) . "hiragana")
    (("walphabet"    . 10) . "hiragana")

    ;; q
    (("hiragana"     . 113) . "katakana")
    (("hankaku_kana" . 113) . "katakana")

    ;; \C-q
    (("hiragana"     . 17) . "hankaku_kana")
    (("katakana"     . 17) . "hankaku_kana")
    (("alphabet"     . 17) . "hankaku_kana")
    (("walphabet"    . 17) . "hankaku_kana")

    ;; l
    (("hiragana" . 108) . "alphabet")
    (("katakana" . 108) . "alphabet")
    (("hankaku_katakana" . 108) . "alphabet")

    ;; L
    (("hiragana" . 76) . "walphabet")
    (("katakana" . 76) . "walphabet")
    (("hankaku_katakana" . 76) . "walphabet")
    ))

なんか、半角カナ→ alphabet/walphabet の遷移が怪しいのを除けば、 期待どおりになったみたい。

とりあえず、今回はこんなところで。


2006|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|08|
2010|01|02|03|05|06|07|10|11|
2011|03|08|
2012|02|04|07|08|10|
2013|01|02|03|05|06|08|11|12|
2014|01|02|05|06|07|08|09|12|
2015|01|02|03|04|
Categories 3imp | Card | Cutter | Dalvik | Euler | Football | GAE/J | Hand | Haskell | Re:View | Ruby | Scheme | TQD | Tiger | TigerBook読 | UikiTeXi | Verilog | Violin | Web | parconc | tDiary | お勉強 | エントロピー | ツン読 | | 将棋 | 政治について | | 模写してみよう | 確率論 | 設定など | 雑文 | 音声