%20para%20a%20tecla%20Alt%20em%20vez%20de%20Ctrl.png)
Curiosamente, isso é quase impossível de fazer. Remapear a tecla Alt para se comportar como outra tecla Ctrl não é uma solução porque você perde as funcionalidades da tecla Alt (algumas das quais são essenciais, como Alt+Tab
).
Então, como posso obter um comportamento semelhante ao MacOS, onde a tecla cmd é usada para atalhos de teclado (mas também para alternar entre janelas com cmd+Tab
)?
Eu sei que posso atribuir Ctrl+Tab
a alternância entre janelas depois de remapear a tecla Alt como uma tecla Ctrl. Mas então perco a Ctrl+Tab
funcionalidade real em alguns aplicativos, que também são críticos, como a troca de guias no Chrome. Basicamente, minhas teclas Ctrl e Alt se tornariam a mesma tecla e seria impossível ter dois conjuntos diferentes de atalhos para essas duas teclas modificadoras.
Uma boa solução para mim provavelmente seria uma maneira de capturar Alt+C, Alt+V, Alt+X, etc.
no nível de gerenciamento de janelas e enviar um Ctrl+C or Ctrl+V or Ctrl+X etc.
para a janela em foco. No Windows isso foi possível via AutoHotKey. No Linux, ouvi falar de um aplicativo chamado AutoKey, mas, diferentemente do AutoHotKey, você precisa usar uma GUI para definir os atalhos. Como escreverei quase todas as combinações de Alt manualmente, não quero que um aplicativo GUI faça isso. Devo ser capaz de configurá-lo escrevendo um arquivo de texto.
É possível conseguir isso com o Gnome ou o Xmonad?
Responder1
Você pode usarXKeyCaps.
Este é o meu .Xmodmap
arquivo, tenho um teclado Apple.
! Swap Alt and Cmd keys.
keycode 37 = Control_L
keycode 133 = Alt_L Meta_L
keycode 64 = Super_L
keycode 108 = Super_R
keycode 134 = ISO_Level3_Shift Multi_key
keycode 105 = Control_R Multi_key
clear Shift
clear Lock
clear Control
clear Mod1
clear Mod2
clear Mod3
clear Mod4
clear Mod5
add Shift = Shift_L Shift_R
add Lock = Caps_Lock
add Control = Control_L Control_R
add Mod1 = Alt_L 0x007D
add Mod2 = Num_Lock
add Mod4 = Super_L Super_R
add Mod5 = Mode_switch ISO_Level3_Shift ISO_Level3_Shift ISO_Level3_Shift
! Configure '=' key on numpad as '='.
keycode 0x7D = equal
Responder2
Você deve ser capaz de usarxdotoole additionalKeys
doXMonad.Util.EZConfigmódulo para isso. Basta instalar o xdotool e em seu ~/.xmonad/xmonad.hs
arquivo de configuração você pode configurar chaves adicionais como esta:
import XMonad.Util.EZConfig
...
main = xmonad $ defaultConfig { ... }
`additionalKeys`
[ ((mod1Mask, xK_c), spawn "xdotool key alt+c")
, ((mod1Mask, xK_v), spawn "xdotool key alt+v")
, ((mod1Mask, xK_x), spawn "xdotool key alt+x")
]