Замена клавиш AltGr и Space в Kali -Firefox не затрагивается

Чтобы завершить ответ @jordanm ... если вы оба используете одну и ту же учетную запись пользователя, то есть вывод из

echo $HOSTNAME
echo $USER 

то же самое для вас и вашего коллеги -, тогда мы можем немного повеселиться.

Мы можем разрешить просмотр вызванных команд в одном терминале, чтобы они сразу же были доступны в другом

Если вы вызовете historyв своем терминале, вы увидите свои предыдущие команды. По умолчанию bash записывает свою историю в конце каждого сеанса в ~/.bash_history file, перезаписывая существующий файл обновленной версией. Это означает, что если вы вошли в систему с несколькими сеансами bash, только последний из них сохранит свою историю.

-------------------------------------------------------

Отредактируйте свой ~/.bashrcи добавьте к нему

export PROMPT_COMMAND="history -a; history -c; history -r; $PROMPT_COMMAND"

где

history -aдобавляется в файл ~/.bash_historyсразу, а не в конце сеанса

history -cочищает текущую историю сеансов

history -rчитает файл ~/.bash_history, к которому мы добавили, обратно в нашу историю сеансов

Примечание:параметр PROMPT_COMMANDсодержит команды, которые выполняются перед каждой новой командной строкой. поэтому команда1 будет сохранена в истории только при выполнении команда2

Вы также можете добавить временную метку рядом с каждой командой для удобства просмотра истории. Снова отредактируйте ~/.bashrcи добавьте

export HISTTIMEFORMAT="%d/%m/%y %T "

Также хороший хак, если вы хотите использовать несколько терминалов и хотите, чтобы ваша история команд была доступна:)

Подробнее

4
08.01.2021, 09:32
2 ответа

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

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

Пытаясь повторить вашу установку, я экспортировал текущий файл конфигурации с помощью команды xkbcomp $DISPLAY current.xkbи отредактировал его, удалив все вхождения ISO_Level3_Shift, LVL3и Mod5.

Именно то, что я удалил:

interpret ISO_Level3_Shift+AnyOf(all) {
    virtualModifier= LevelThree;
    useModMapMods=level1;
    action= SetMods(modifiers=LevelThree,clearLocks);
};
interpret ISO_Level3_Shift+AnyOfOrNone(all) {
    action= SetMods(modifiers=LevelThree,clearLocks);
};
key <LVL3> {
    type= "ONE_LEVEL",
    symbols[Group1]= [ ISO_Level3_Shift ]
};
key <RALT> {
    type= "ONE_LEVEL",
    symbols[Group1]= [ ISO_Level3_Shift ]
};
modifier_map Mod5 { <LVL3> };

Затем я вставил:

key <LVL3> {[space]};
key <RALT> {[space]};

Эту отредактированную конфигурацию можно протестировать, загрузив ее с помощью

xkbcomp new_conf.xkb $DISPLAY
3
18.03.2021, 22:39

Я не нашел ни одной ссылки, доказывающей, что то, что вы предложили, не должно работать в Firefox, хотя кажется, что Chromium (и, следовательно, Chrome )не зависит от xkeymaps :это разработка варианта , который лучше интегрирует программу в ChromeOS. Поэтому некоторые переназначения системы могут не поддерживаться.

Исправление, которое сработало для меня, заключается в переназначении кодов клавиш на уровне ядра. Для этого я собрал скан -коды (аппаратный идентификатор ключа )и ключ -коды (символ, в котором они отображаются )как для пробела, так и для altGr:

# to collect scan-codes
sudo showkey -s
# space press: 0x39
# altGr press: 0xe0 0x38

# to collect key-codes
sudo showkey
# space press: 57
# altGr press: 100

Насколько я понял, вы хотите переназначить altGr на пробел, потому что у вас сломан пробел, поэтому:

sudo setkeycodes e038 57

должно помочь.


Чтобы сделать это постоянным в Kali Linux, вам нужно отредактировать файл xinit по умолчанию, /etc/xdg/xfce4/xinitrc, скопировав его в ~/.xinitrcи вставив sudo setkeycodes e038 57перед оператором if, который содержит exec xfce4-session; в файле по умолчанию Kali 20.04 этот оператор if находится в строке 86.

Обратите внимание, что для этого требуется включить sudo без пароля ), но, насколько я помню, это уже опция по умолчанию в Kali.

1
18.03.2021, 22:39

Теги

Похожие вопросы