Jak już wspomniano, nie ma możliwości mapowania <C-S-A>inaczej niż <C-A>.
Jednak używając narzędzi takich jak autokey(dla systemu Linux i Windows) lub autohotkey(dla systemu Windows), możesz zmienić mapowanie, <C-S-A>aby wysłać różne naciśnięcia klawiszy dla określonych aplikacji.
np. w moim systemie mam to ustawienie w autokey:
$ cat ~/.config/autokey/data/gnome-terminal/ctrlshifta-gnome-terminal.py
#ctrl+shift+a sends '<S-F1>a'
keyboard.send_keys("<shift>+<f1>a") # Note that `f` in `f1` needs to be in lower case.
Przypisz mu te właściwości:
- skrót klawiaturowy jako
ctrl+shift+a
- klasa okna:
gnome-terminal-server.Gnome-terminal
Następnie ~/.vimrcmożesz utworzyć mapowanie, <S-F1>aaby robić, co chcesz.
Uwagi:
- Użyłem
<S-F1>jako klucza lidera do wykrywania <C-S>. To dlatego, że mój terminal nie akceptował kluczy <F13>- <F37>itp. Jeśli twoja aplikacja to obsługuje, ( gvimmyślę, że) użycie tych klawiszy jest zalecane.
- Głównie
vimw gnome-terminal. Więc użyłem window class = gnome-terminal-server.Gnome-terminaljako filtra. Zmodyfikuj go, aby użyć, gvimjeśli chcesz. autokeyobsługuje przycisk do przechwytywania właściwości innych okien, takich jak klasa / tytuł.