「Linux コンソール/キーボード設定」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(文字列「[[zh-CN:」を「[[zh-hans:」に置換)
(同期)
1行目: 1行目:
 
[[Category:キーボード]]
 
[[Category:キーボード]]
[[en:Keyboard Configuration in Console]]
+
[[en:Keyboard configuration in console]]
[[es:Keyboard Configuration in Console]]
+
[[es:Keyboard configuration in console]]
  +
[[pt:KEYMAP]]
[[zh-hans:Keyboard Configuration in Console]]
 
  +
[[ru:Keyboard configuration in console]]
  +
[[zh-hans:Keyboard configuration in console]]
 
{{Related articles start}}
 
{{Related articles start}}
 
{{Related|Xorg でのキーボード設定}}
 
{{Related|Xorg でのキーボード設定}}
 
{{Related|特別なキーボードキー}}
 
{{Related|特別なキーボードキー}}
  +
{{Related|フォント#コンソールフォント}}
 
{{Related articles end}}
 
{{Related articles end}}
   
29行目: 32行目:
   
 
コンソールキーマップの命名規則は厳格には定まっていませんが、一般的には [[Wikipedia:ISO_3166-1_alpha-2#Officially_assigned_code_elements|2-letter country code]] と variant をスラッシュ ({{ic|-}}) かアンダースコア ({{ic|_}}) で区切った名前が付けられています。
 
コンソールキーマップの命名規則は厳格には定まっていませんが、一般的には [[Wikipedia:ISO_3166-1_alpha-2#Officially_assigned_code_elements|2-letter country code]] と variant をスラッシュ ({{ic|-}}) かアンダースコア ({{ic|_}}) で区切った名前が付けられています。
  +
  +
find を使ってキーマップを調べることもできます:
  +
  +
$ find /usr/share/kbd/keymaps/ -type f
   
 
=== 永続的な設定 ===
 
=== 永続的な設定 ===
84行目: 91行目:
   
 
# kbdrate
 
# kbdrate
  +
  +
Xorg で設定したい場合は [[Xorg でのキーボード設定#typematic delay と rate の調整]]を見てください。
  +
  +
==== Systemd サービス ====
  +
  +
systemd サービスを使ってキーボードレートを設定することもできます。例:
  +
  +
{{hc|/etc/systemd/system/kbdrate.service|<nowiki>
  +
[Unit]
  +
Description=Keyboard repeat rate in tty.
  +
  +
[Service]
  +
Type=oneshot
  +
RemainAfterExit=yes
  +
StandardInput=tty
  +
StandardOutput=tty
  +
ExecStart=/usr/bin/kbdrate -s -d 450 -r 60
  +
  +
[Install]
  +
WantedBy=multi-user.target
  +
</nowiki>}}
  +
  +
作成したら {{ic|kbdrate.service}} を[[起動]]・[[有効化]]してください。

2017年9月6日 (水) 23:26時点における版

関連記事

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

仮想コンソールのキーボードマッピング (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 をスラッシュ (-) かアンダースコア (_) で区切った名前が付けられています。

find を使ってキーマップを調べることもできます:

$ find /usr/share/kbd/keymaps/ -type f

永続的な設定

高度な設定を /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

Xorg で設定したい場合は Xorg でのキーボード設定#typematic delay と rate の調整を見てください。

Systemd サービス

systemd サービスを使ってキーボードレートを設定することもできます。例:

/etc/systemd/system/kbdrate.service
[Unit]
Description=Keyboard repeat rate in tty.

[Service]
Type=oneshot
RemainAfterExit=yes
StandardInput=tty
StandardOutput=tty
ExecStart=/usr/bin/kbdrate -s -d 450 -r 60
 
[Install]
WantedBy=multi-user.target

作成したら kbdrate.service起動有効化してください。