Câu trả lời của @ Daniel chỉ cho tôi cách đúng, nhưng tôi muốn mở rộng về nó.
Hoạt động với tôi trên Linux Mint 17.2 và Ubuntu 16.04.
Tôi đã thử tất cả các vòng xoắn mà tôi có thể nghĩ ra để tiếp tục sử dụng xmodmap
, nhưng tất cả đều thất bại khi hệ thống chuyển sang chế độ ngủ. Điều tương tự thậm chí giữ cho các kịch bản ứng dụng khởi động sử dụng setxkbmap
trong trường hợp * settings-daemon (đối với tôi là xfce4) chạy muộn hơn so với tập lệnh --- và thứ tự thực sự không thể bị ảnh hưởng.
Những gì tôi cuối cùng đã đưa ra có các thành phần sau đây:
1) Viết một tập tin ánh xạ bàn phím tối thiểu cho /usr/share/X11/xkb/symbols
. Cho phép gọi tệp mylayout
Nó có thể đơn giản như
xkb_symbols "basic" {
name[Group1] = "My Layout";
include "us"
key <AE03> { [ 3, numbersign, sterling, sterling] };
include "level3(ralt_switch)"
}
basic
chỉ là một cái tên, chúng ta sẽ gặp lại nó sau.
- Các
name[Group1]
tương tự chỉ là một cái tên có vẻ như, nhưng nó sẽ không đóng vai trò sau.
include "us"
bao gồm bàn phím đơn giản cho chúng tôi. Trên thực tế us
là một tập tin khác trong cùng thư mục. Đây là cách bố trí bàn phím mà chúng tôi đang điều chỉnh. Chọn một cái khác khi cần thiết. Lưu ý: không có dấu chấm phẩy để kết thúc dòng này.
- Các
key
dòng là một thích ứng của bàn phím, nhiều hơn có thể làm theo. Có <AE03>
thể được tìm thấy trong các tập tin dưới /usr/share/X11/xkb/keycodes
. Sử dụng xev
chương trình để tìm ra rằng phím "3" có mã khóa 12 và trong tệp mã khóa, Xfree86
nó được ánh xạ tới <AE03>
.
- Cuối cùng, một lệnh khác
include
để kích hoạt tùy chọn bàn phím khác, trong trường hợp này tôi muốn có phím Alt bên phải là phím shift cấp 3, tức là phím cho phép truy cập vào sterling
dấu hiệu tôi đã xác định ở trên. level3
chỉ là một tên tệp trong cùng một thư mục với ralt_switch
một phần của nó. Có một cái nhìn xung quanh và chọn những gì bạn cần bao gồm.
2) Tôi không đặt mylayout
thư mục hệ thống. Thay vào đó tôi chỉ tạo một liên kết mềm từ thư mục hệ thống đến một thư mục theo ý thích của tôi để thấy ngay rằng đây không phải là phần mềm chứng khoán.
3) Hơn nữa tôi đã không sửa chữa evdev.xml
, một lần nữa để tránh những rắc rối cập nhật. Nhưng điều này sẽ là cần thiết để tìm mylayout trong trình chỉnh sửa cấu hình bàn phím (đối với xfce4 là vậy xfce4-keyboard-settings
). Thay vào đó tôi đã sử dụng xfce4-settings-editor
và thay đổi keyboard-layout->XkbLayout
thành mylayout
(tên tệp) và XkbVariant
thành basic
(xem ở trên). Sau đó, mylayout/basic
cũng được hiển thị trong trình chỉnh sửa cài đặt bàn phím. Một mục trong evdev.xml
dường như chỉ cần thiết để có thể chọn bố cục.
Bằng cách này, các cài đặt bàn phím hiện tồn tại chế độ ngủ và khởi động lại.
Nhiều nền tảng có thể được tìm thấy ở đây: http://www.charvolant.org/~doug/xkb/html/node5.html .
Một cách tiếp cận khác để khắc phục sự cố chế độ ngủ (không tự mình thử), có thể tìm thấy ở đây: https://www.vinc17.net/unix/xkb.en.html .
CẬP NHẬT: đã làm việc với Mint 18.3 cùng lúc tôi thay đổi cài đặt trong xfce4-settings-Editor như được mô tả ở trên.
CẬP NHẬT: Với 18.04, gdm3 là trình quản lý hiển thị và XFCE4 là trình quản lý cửa sổ, có vẻ như ~ / .Xmodmap được đọc lại và các cài đặt dường như tồn tại tạm dừng. (Tôi hiếm khi sử dụng hệ thống treo và tôi không bao giờ chắc chắn máy tính xách tay đang ở chế độ nào.)