3

Чтобы быстро объяснить цель моего вопроса, я использую Ubuntu Mate с клавиатурой Apple.
Чтобы клавиатура работала правильно, мне пришлось переназначить некоторые клавиши, используя xmodmap , например, поменяв местами #/@ с </> .

Пользовательская карта сделана в ~/.Xmodmap в порядке.
Чтобы загрузить его автоматически, я добавил xmodmap ~/.Xmodmap для моего .zshrc .

Но через некоторое время конфигурация xmodmap полностью стирается.
Чтобы перенастроить его, мне нужно открыть новый терминал или вручную вызвать команду xmodmap .

Эта проблема уже известна в gnome, и я не могу найти работающее решение, чтобы мой xmodmap всегда работал.

Чтобы решить проблему, я думаю, что мне нужно найти, какой пакет / команда вызывает сжатие моей пользовательской конфигурации, избегая сомнений одно за другим.

Я знаю некоторые команды, которые потенциально могут сбросить конфигурацию xmodmap например setxkbmap .

Чтобы быть уверенным, что моя проблема проистекает из этого, я хочу, чтобы мой сеанс прослушивал эту команду (setxkbmap), сортируя, как я знаю, когда она вызывается .

Мой вопрос заключается в следующем:

Как я могу отслеживать вызовы команды (возможно, записав файл журнала, мне просто нужно знать, был ли он вызван во время сеанса)?

Кроме того, если вы знаете другую альтернативу отладки или не затрагиваете мою конфигурацию во время сеанса, это даже лучше.

Спасибо заранее за все ответы, которые я получу.

1 ответ1

1

Может быть, оболочка оболочки может помочь вам.

Переименуйте setxkbmap в setxkbmap.bin

Затем создайте сценарий с именем setxkbmap, который будет находиться в том же месте, где находился оригинал, с содержимым:

echo "[$(date)] [ppid $PPID] $@" >> /var/tmp/setxkbmap.log
exec setxkbmap.bin $@

Вы можете войти в систему идентификатор пользователя или все, что вы считаете полезным

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .