@ Відповідь Даніеля вказала мені на правильний шлях, але я хотів би продовжити це.
Для мене працює на Linux Mint 17.2 та Ubuntu 16.04.
Я спробував усі повороти, про які я міг би продовжувати використовувати xmodmap, але всі вони виходять з ладу, коли система переходить у сплячий режим. Те ж стосується і сценаріїв запуску програми, які використовуються setxkbmapу випадках, коли * налаштування-демон (для мене це xfce4) працює пізніше, ніж сценарій --- і на порядок реально не може вплинути.
Що я нарешті придумав, має такі інгредієнти:
1) Напишіть мінімальний файл зіставлення клавіатури для /usr/share/X11/xkb/symbols. Давайте може зателефонувати у файл. mylayoutЦе може бути так само просто
xkb_symbols "basic" {
name[Group1] = "My Layout";
include "us"
key <AE03> { [ 3, numbersign, sterling, sterling] };
include "level3(ralt_switch)"
}
basic це лише ім'я, ми зустрінемо його згодом ще раз.
name[Group1]Так само просто назва, здається, але він не буде грати ніякої ролі пізніше.
include "us"включає звичайну нам клавіатуру. Насправді usце ще один файл у тому ж каталозі. Це розкладка клавіатури, яку ми адаптуємо. Виберіть інший за потребою. Примітка: для закінчення цього рядка немає крапки з комою.
keyЛінія одна адаптація клавіатури, більше може слідувати. <AE03>Можна знайти в файлах під /usr/share/X11/xkb/keycodes. Використовуйте xevпрограму, щоб з'ясувати, що у клавіші "3" є код 12, а у файлі клавішних кодів Xfree86він відображається <AE03>.
- Нарешті, ще одна
includeдиректива щодо активації іншої опції клавіатури, в цьому випадку я хочу, щоб потрібна клавіша Alt була клавішею перемикання рівня 3, тобто клавіша, яка надає доступ до sterlingзнаку, визначеного нами вище. level3це лише ім'я файлу в одній папці з ralt_switchодним його розділом. Погляньте навколо і виберіть, що вам потрібно включити.
2) Я не помістив mylayoutв системну папку. Швидше я зробив лише м'яке посилання від системної папки до папки, яка мені сподобалася, щоб відразу побачити, що це не запас програмного забезпечення.
3) Далі я не виправляв evdev.xml, знову, щоб запобігти клопотам з оновленням. Але це було б необхідно для пошуку mylayout у редакторі конфігурації клавіатури (для xfce4 це xfce4-keyboard-settings). Замість цього я xfce4-settings-editorі змінив keyboard-layout->XkbLayoutдо mylayout(ім'я файлу) і XkbVariantдо basic(див . Вище) Після цього mylayout/basicвідображається і в редакторі налаштувань клавіатури. Введення, evdev.xmlздається, необхідне лише для того, щоб можна було вибрати макет.
Таким чином, налаштування клавіатури тепер переживають режим сну та перезавантажуються.
Більше інформації можна знайти тут: http://www.charvolant.org/~doug/xkb/html/node5.html .
Інший підхід до вирішення проблеми режиму сну (не пробував себе), можна знайти тут: https://www.vinc17.net/unix/xkb.en.html .
ОНОВЛЕННЯ: працював з Mint 18.3 тієї ж миті, коли я змінив налаштування в xfce4-editor-editor, як описано вище.
ОНОВЛЕННЯ: З 18.04, gdm3 як диспетчер дисплея і XFCE4 як менеджер вікон, схоже, що ~ / .Xmodmap читається ще раз, і налаштування, схоже, призупиняється. (Я рідко використовую призупинення, і я ніколи не знаю, у якому режимі перебуває ноутбук.)