「Linux コンソール/キーボード設定」の版間の差分
細 文字列「[[zh-CN:」を「[[zh-hans:」に置換 |
同期 |
||
| 1行目: | 1行目: | ||
[[Category:キーボード]] |
[[Category:キーボード]] |
||
[[en:Keyboard |
[[en:Keyboard configuration in console]] |
||
[[es:Keyboard |
[[es:Keyboard configuration in console]] |
||
[[pt:KEYMAP]] |
|||
| ⚫ | |||
[[ru: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 内で FONT や FONT_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