awk -v delete_regex='00-11-22-33-aa-bb' -v RS=$'\n\n' -v ORS=$'\n\n' \
'$0 !~ delete_regex' inputfile
Можно изменить, чтобы строка поиска не интерпретировалась как регулярное выражение.
[Примечание :очевидно и преднамеренно, это не "заменяет" клавишу клавиатуры на кнопку мыши; он просто позволяет клавише клавиатуры действовать как кнопка мыши;но кнопка мыши НЕ начнет действовать как клавиша клавиатуры, в свою очередь]
xkbset m
xkbset exp =m # keep the state unchanged after the AccessX timeout
xkbcomp "$DISPLAY" - |
sed -e 's/ Menu / Pointer_Button3 /' -e '/interpret KP_/,/};/d' |
xkbcomp - "$DISPLAY"
Вы также можете назначить другую комбинацию клавиш для переключения элементов управления MouseKeys
. Например. сShift-Menu
:
xkbcomp "$DISPLAY" - |
sed -e 's/ Menu \| Pointer_Button3 / Pointer_Button3, MouseKeys_Enable /' -e '/interpret KP_/,/};/d' |
xkbcomp - "$DISPLAY"
Это предполагает, что клавиша Menu
еще не была привязана к чему-то другому.
Вместо xbkset
и xkbcomp
вы можете легко написать небольшую программу, которая будет делать то же самое (все операции, которые они делают, могут выполняться любым обычным клиентом X11 ).
Как интегрировать это со злобными "средами рабочего стола" (, которые сами изменяют настройки xkb на основе своих собственных правил ), остается читателю в качестве упражнения.