Linux コンソール/キーボード設定

提供: ArchWiki
2015年1月7日 (水) 12:19時点におけるKusakata (トーク | 投稿記録)による版 (ページの作成:「Category:キーボード en:Keyboard Configuration in Console es:Keyboard Configuration in Console zh-CN:Keyboard Configuration in Console {{Related artic...」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

関連記事

ノート: この記事ではレイアウトの修正や追加キーのマッピングなどを除く基本的な設定についてのみ説明しています。省かれている高度な話題については特別なキーボードキーを参照してください。

仮想コンソールのキーボードマッピング (keymap) やコンソールフォント、コンソールマップは kbd パッケージ (既にインストールされているはずです) によって提供されています。このパッケージには仮想コンソールを管理するための低水準なツールも多く含まれています。

キーボード設定の表示

次のコマンドを使うことでキーボード設定を表示することができます:

$ localectl status
   System Locale: LANG=ja_JP.UTF-8
       VC Keymap: jp106
      X11 Layout: n/a

キーボードレイアウトの設定

複数のコンポーネントによって構成されている XKB キーボードレイアウトとは異なり、仮想コンソールのキーボードレイアウトはコンポーネントがひとつしかありません。基本的にはひとつの keymap ファイルがひとつのキーボードレイアウトに対応しています (include ステートメントを使って共有の部分を共有することで keymap ファイルには複数のレイアウトを含めることができます)。keymap ファイルは /usr/share/kbd/keymaps/ ディレクトリツリーに保存されています。次のコマンドを使うことで利用可能な全てのキーマップを表示できます:

$ localectl list-keymaps

コンソールキーマップの命名規則は厳格には定まっていませんが、一般的には 2-letter country code と variant をスラッシュ (-) かアンダースコア (_) で区切った名前が付けられています。

永続的な設定

高度な設定を /etc/vconsole.conf ですることができ、起動時に systemd によって読み込まれます。KEYMAP 変数がキーマップの指定に使用されます。変数が空だったり設定されていない場合、デフォルトの値として us キーマップが使われます。全てのオプションは man 5 vconsole.conf を見て下さい。例:

/etc/vconsole.conf
KEYMAP=jp106
...

localectl を使ってコンソールのキーマップを設定することも可能です。コマンドを実行することで /etc/vconsole.conf 内の KEYMAP 変数が変更され現在のセッションのキーマップが設定されます。例:

$ localectl set-keymap --no-convert jp106

詳しくは man 1 localectl を参照してください。

一時的な設定

もちろん現在のセッションでのみ有効なキーマップを設定することもできます。異なるキーマップを試したり、問題を解決したりするときに有用です。

一時的な設定を行うには loadkeys ツールを使います。このツールは systemd によって /etc/vconsole.conf に設定されたキーマップをロードするために内部的に使用されています。とても簡単に使えます:

# loadkeys keymap

詳しくは man 1 loadkeys を参照してください。

他の設定

コンソールフォントの変更

kbd パッケージにはコンソールフォントやフォントマッピングを変更するためのツールが含まれています。フォントは /usr/share/kbd/consolefonts/ ディレクトリに保存されています。

vconsole.conf 内で FONTFONT_MAP 変数を使うことで設定できます:

/etc/vconsole.conf
...
FONT=Lat2-Terminus16
FONT_MAP=8859-2

FONT 変数が空だったり設定されていない場合、カーネルに組み込まれているフォントがデフォルトとして使われます。詳細は man 5 vconsole.conf を参照してください。

typematic delay と rate の調整

typematic delay はキーリピートを始めるのにキーを押し続ける必要がある時間 (ミリ秒) を表します。キーリピートが開始されると、typematic rate によって指定された頻度 (Hz) で文字が繰り返されます。これらの値は kbdrate コマンドを使うことで変更できます:

# kbdrate [-d delay] [-r rate]

例えば typematic delay を 200ms に typematic rate を 30Hz に設定するには、次のコマンドを実行します:

# kbdrate -d 200 -r 30

delay や rate の値を指定しないでコマンドを実行することで typematic の値をデフォルト (delay は 250ms で rate は 11Hz) に戻すことができます:

# kbdrate