LoginSignup
33

More than 5 years have passed since last update.

Ubuntu 16.04のキーボード設定をMacBook向けにしてみる

Posted at

はじめに

Apple製品は好きだけど、開発用にどうしてもUbuntuにしたい!、という人、多いのではないでしょうか。

Apple製品に他OSをいれるとどうしてもついてまわるキーボード問題... 現在ネットに公開されている情報はUbuntu 14.04を対象にしたものが多かったので、Ubuntu 16.04向けに試行錯誤の結果を記載してみました。もっと良い方法があれば、是非コメントで教えてください。

Ubuntu 16.04のキーボード設定をする上での問題としては...

  • Ubuntuのキーマップ設定はxkbに変更されました。Xmodmapなどは陳腐化されており、うまくいかないようです。
  • Ubuntu 14.04以降、言語入力の仕組みがiBusからfxcitに変更されました。

手順

  1. 修正元となるキーボード設定をApple JISにする。
  2. IMを変更する。
  3. CommandキーをCtrlキーに変更する。

修正元となるキーボード設定をApple JISにする。

設定のベースとなるキーボード設定をAppleのJISキーボードにします。インストール時に聞かれるはずなので、インストール時に正しく設定できていれば本手順は不要です。

キーボード設定を呼び出します。

dpkg-reconfigure keyboard-configuration

下記のように設定します。

  • Apple アルミニウムキーボード (JIS)
  • Japanese
  • Japanese - Japanese (Macintosh)
  • No toggling
  • No temporaly switch
  • The default for the keyboard

IMを変更する。

IMを変更し、英数キーを押せばIMがオフに、かなキーがおさればIMがオンになるようにします。

Ubuntuは14.04以降入力方法をfxcitに変更しつつあるのですが、fxcitは残念ながらiBusほど機能が充実していないようです。そこで、一旦iBusに入力方法を戻すことにします。System setting > Language Supportを開き、下記のように設定します。

ibus_fxcit.png

次に、入力方法を設定します。System setting > Text EntryからJapanese (Mozc) (iBus)を追加します (ウィンドウ下部+ボタンより)。他のキーボードは消してください。

text_entry.png

Japanese (Mozc) (iBus)を選択すると、上記Text Entry画面に設定ボタンが現れます。設定ボタンをクリックし、キーマップを変更します。設定画面上のKeymap styleからデフォルトとするキーマップを選び、カスタマイズします。同画面で英数ボタンに"Deactivate IME"を、かなボタンに"Activate IME"を割り当てましょう。なお、ここまで手順どおりにやっていれば、英数キーはひらがなキーとして、かなキーは英数キーとして認識されているはずですので、表示されるキー名があべこべでも大丈夫です。

最後に、Mozcが勝手にキーマップを変更しないようにしましょう。/usr/share/ibus/component/mozc.xmlを編集します (sudo vim /usr/share/ibus/component/mozc.xml)1

/usr/share/ibus/component/mozc.xml.diff
 <component>
   <version>2.17.2116.102+gitfd0f5b34+dfsg-1ubuntu1.1</version>
   <name>com.google.IBus.Mozc</name>
   <license>New BSD</license>
   <exec>/usr/lib/ibus-mozc/ibus-engine-mozc --ibus</exec>
   <textdomain>ibus-mozc</textdomain>
   <author>Google Inc.</author>
   <homepage>http://code.google.com/p/mozc/</homepage>
   <description>Mozc Component</description>
 <engines>
 <engine>
   <symbol>&#x3042;</symbol>
   <rank>80</rank>
   <description>Mozc (Japanese Input Method)</description>
   <language>ja</language>
   <icon>/usr/share/ibus-mozc/product_icon.png</icon>
   <setup>/usr/lib/mozc/mozc_tool --mode=config_dialog</setup>
-  <layout>default</layout>
+  <layout>jp</layout>
   <name>mozc-jp</name>
   <longname>Mozc</longname>
 </engine>
 </engines>
 </component>

(diffだと思ってください)

CommandキーをCtrlキーに変更する。

デフォルトの設定だと、Commandキーは"Superキー”に設定されてます。"Superキー"はWindowsにある"Windowsキー"と同じで、Unityのダッシュボードを操作したりする機能を提供します。自分はコピペとかをCommandキーですることが多いので、CommandキーもControlキーにしてしまうことにしました。(つまり、Controlキーが2つある)

xkbの設定ファイルに新たなオプションをaltwin2として追加します23 (sudo emacs /usr/share/X11/xkb/symbols/altwin2)。

/usr/share/X11/xkb/symbols/altwin2
partial modifier_keys
xkb_symbols "cmd_n_ctrl" {
    key <LWIN> {        [       Control_L               ]       };
    key <RWIN> {        [       Control_R               ]       };
    key <LCTL> {       [       Control_L         ]       };
    modifier_map Control { <LWIN>, <RWIN>, <LCTL> };
};

上記オプションを設定リストに追加します(sudo emacs /usr/share/X11/xkb/rules/evdev)。

/usr/share/X11/xkb/rules/evdev.diff
 ! option   =   symbols
   grp:shift_toggle =   +group(shifts_toggle)
   altwin:menu      =   +altwin(menu)
   altwin:meta_alt  =   +altwin(meta_alt)
   altwin:alt_win   =   +altwin(alt_win)
   altwin:ctrl_win  =   +altwin(ctrl_win)
   altwin:ctrl_alt_win  =   +altwin(ctrl_alt_win)
   altwin:meta_win  =   +altwin(meta_win)
   altwin:left_meta_win =   +altwin(left_meta_win)
   altwin:hyper_win =   +altwin(hyper_win)
   altwin:alt_super_win =   +altwin(alt_super_win)
   altwin:swap_lalt_lwin    =   +altwin(swap_lalt_lwin)
   altwin:swap_alt_win  =   +altwin(swap_alt_win)
+  altwin2:cmd_n_ctrl    =       +altwin2(cmd_n_ctrl)
   grab:debug       =   +srvr_ctrl(grab_debug)

(diffだと思ってください)

上記オプションを設定リストに追加します(/usr/share/X11/xkb/rules/evdev.lst)。

/usr/share/X11/xkb/rules/evdev.lst.diff
   gag             md: Moldavian (Gagauz)

 ! option
+  altwin2:cmd_n_ctrl    Win swapped with Ctrl
   grp                  Switching to another layout
   grp:switch           Right Alt (while pressed)
   grp:lswitch          Left Alt (while pressed)

(diffだと思ってください)

最後にキーボード設定に上記追加オプションを登録します。dconfの設定になるのですが、dconf-editorを使ってしまうと (sudo apt-get install dconf-editor) 簡単です.dconfのorg::gnome::desktop::input-sourcesを下記のように設定します。

dconf_input_sources.png

参考 (環境)

  • MacBook Pro Late 2013
    • JISキーボード
  • Ubuntu 16.04 Desktop

参考文献


  1. Kuro_Code25, "ibus-mozcのキーボードレイアウトが英語になるトラブルの対処法" 

  2. ZeptByteS, http://qiita.com/ZeptByteS/items/db1de2cbd940c65b8d1f 

  3. Aleksandar Savkov, Answer to "How to swap Command and Control keys with xkb step by step?" 

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
33