.TH LOADKEYS 1 "09 Oct 1997" "Console tools" "Linux User's Manual" .SH NAME loadkeys \- 調入鍵盤翻譯表 .SH "總覽 (SYNOPSIS)" .B loadkeys [ .I \-d \-\-default .B ] [ .I \-h \-\-help .B ] [ .I \-q \-\-quiet .B ] [ .I \-v \-\-verbose .B [ .I \-v \-\-verbose .B ]...] [ .I \-m \-\-mktable .B ] [ .I \-c \-\-clearcompose .B ] [ .I \-s \-\-clearstrings .B ] [ filename... ] .SH "描述 (DESCRIPTION)" .B Loadkeys 讀取 由 .I filename... 指定的 檔案 內容. 它的 主要目的 是 為 控制檯 調入 核心鍵盤對映表(kernel keymap). .SH "設為預設 (RESET TO DEFAULT)" 如果 指定了 .I -d (或 .I --default ) 選項, .B loadkeys 調入 預設的 鍵盤對映 檔案 .I defkeymap.map, 可能 在 .I /usr/share/keymaps 或 .IR /usr/src/linux/drivers/char 目錄 下. (前者 可能是 使用者定義的, 而 後者 是 針對 PC 機 qwerty 鍵盤 的 對映 \- 也許 你 不需要.) 某些情況下, 如果 遇上 奇怪的 鍵盤對映 (把 減號 '\-' 弄成了 某種 陌生的 修飾組合), 你 只要 輕鬆的 鍵入 `loadkeys defkeymap' 就 可以了. (譯註: qwerty 是一種常用的 PC 鍵盤佈局, 由 鍵盤 字母區 左上角 的 連續 橫向 六個 字母鍵 得名) .SH "調入核心鍵盤對映 (KERNEL KEYMAP)" .B loadkeys 的 主要作用 是 調入 或 修改 鍵盤驅動程式 的 翻譯表. 當 指出了 檔名 的 時候, 標準輸入 用 短橫線(\-) 表示. 如果 沒有 指出 檔名, loadkeys 就 從 標準輸入 讀取 資料. .LP 對於 許多 國家 和 各種 鍵盤型別, 系統 已經 提供了 對應的 鍵盤對映表, 只需 用一條 諸如 `loadkeys uk' 的 命令 就可以 滿足 需要. 而且 很容易 設計 自己的 鍵盤對映表. 使用者 必須 識別 哪些 符號 屬於 哪些 鍵. 可以 用 .BR showkey (1) 命令 查出 鍵值(keycode), 手冊頁 .BR keymaps (5) 對 鍵盤對映表 格式 做了 說明, 也可以 參考 .BR dumpkeys (1) 命令 輸出 的 內容. .SH "調入核心 ACCENT 表" 如果 輸入檔案 沒有 定義 任何 組合鍵(compose key), 核心 accent 表 就 保持 不變, 除非 使用了 .I -c (或 .I --clearcompose ) 選項, 此時 核心 accent 表 被 清空. 如果 輸入檔案 定義了 組合鍵, 那麼 清除 原有 定義, 換成 新的 定義. 核心 accent 表 是 一組 表項 (預設為 68 項), 用來 描述 區分符(dead diacritical sign) 和 組合鍵 怎麼 工作. 例如, 這行 .LP .RS compose ',' 'c' to ccedilla .RE .LP 表示 <,> 組合 產生 . 使用 命令 `dumpkeys \-\-compose\-only' 能夠 檢視 當前 accent 表. (譯註: Compose 鍵 可以 用 dumpkeys 命令 查出, 我的 系統上 是 ctrl+句號, 因此 相繼 按下 'ctrl-.', ',', 'c' 就可以 產生 上述的 'ccedilla'.) .SH "調入核心字串表 (KERNEL STRING TABLE)" 選項 .I -s (或 .I --clearstrings ) 用於 清除 核心字串表. 如果 不使用 這個 選項, .B loadkeys 只會 新增 或 調換 字串, 而不是 清除 它們. (因而 需要 選項 \-s 實現 友好定義 狀態.) 核心字串表 是 一組 命名 字串, 就象 F31. 例如, 你 可以 使 功能鍵 F5 (普通 PC 鍵盤上 有) 產生 字串 `Hello!', 使 Shift+F5 產生 `Goodbye!': .LP .RS keycode 63 = F70 F71 .br string F70 = "Hello!" .br string F71 = "Goodbye!" .RE .LP 把 這三行 加進 鍵盤對映表 即可. 預設的 功能鍵 定義 大多是 來自 VT100 終端 的 轉碼序列 (escape sequence). .SH "建立核心原始檔表 (KERNEL SOURCE TABLE)" 如果 給出了 .I -m (或 .I --mktable ) 選項, .B loadkeys 在 標準輸出 產生 一個檔案, 可以 用做 .I /usr/src/linux\%/drivers\%/char\%/defkeymap.c, 它 定義了 核心的 預設 鍵盤編聯 (但 不影響 當前 鍵盤對映). .SH "選項 (OPTION)" .TP .I \-h \-\-help 在 標準錯誤 上 顯示 版本號 和 簡短 的 用法, 然後 結束. .TP .I \-v \-\-verbose 顯示 更新 細節, 用的越多, 細節越細. .TP .I \-q \-\-quiet 不要 顯示 一般資訊. .TP .I \-c \-\-clearcompose 清除 核心的 組合鍵表 (就是 accent 表). 如果 沒有 使用 這個選項, 而且 輸入檔案 沒有 定義 組合鍵, 核心組合鍵表 保持 不變. .TP .I \-s \-\-clearstrings 清除 核心的 字串表. 如果 沒有 使用 這個選項, .B loadkeys 將 新增 或 調換 字串, 而不是 刪除 它們. .SH "檔案 (FILE)" .I /usr/lib/kbd/keymaps/ 鍵盤對映檔案 的 預設目錄. .I /usr/lib/kbd/keymaps/defkeymap.kmap 用 .I \-d 選項 調入的 預設 鍵盤對映檔案. (譯註: 對於 比較 新的 系統 請檢視 /usr/lib/kbd/keymaps/i386/qwerty/, 注意 這裡 最後面的 兩個 目錄, 前者 是 系統平臺, 後者 是 鍵盤型別) .SH BUGS 任何人 只要有 對 .I /dev/console 的 讀訪問權 就能夠 執行 .B loadkeys , 從而 改變 鍵盤佈局, 使 它 可能 無法使用. 鍵盤翻譯表 由 所有 虛擬控制檯 共用, 所以 任何 對 鍵盤編聯 的 改變 會 同時 影響 所有的 虛擬控制檯. 注意, 由於 改變 能夠 影響 所有的 虛擬控制檯, 因此 它 比 使用者的 會話期 更長. 這意味著 即使 在 登入 提示 階段, 鍵值編聯 也會 影響 使用者 的 使用. 預設的 鍵盤對映 應該 編譯在 核心中. ( .IR /usr/src/linux/drivers/char/defkeymap.c ). .SH "另見 (SEE ALSO)" .BR dumpkeys (1), .BR kbd_mode (1), .BR keymaps (5). .SH "[中文版維護人]" .B 徐明 .SH "[中文版最新更新]" .BR 2003/05/13 第一版 .SH "《中國Linux論壇man手冊頁翻譯計劃》" .BI http://cmpp.linuxforum.net .SH "跋" .br 本頁面中文版由中文 man 手冊頁計劃提供。 .br 中文 man 手冊頁計劃:\fBhttps://github.com/man-pages-zh/manpages-zh\fR