Chciałbym być w stanie skopiować i wkleić tekst w wierszu poleceń w bash przy użyciu tych samych wiązań klawiaturowych że Emacs używa domyślnie (czyli używając C-spacedo set-mark, M-waby skopiować tekst C-y, M-yaby go wkleić, etc.).
Dokumentacja GNU Bash mówi, że Bash zawiera niektóre z tych domyślnych powiązań klawiszy.
Na przykład yanking ( C-y) działa domyślnie na moim terminalu. Nie mogę jednak sprawić, by polecenia set-marki copydziałały, i domyślnie nie wydają się być powiązane z żadnymi klawiszami.
Zwykle sposobem, w jaki użytkownik może zdefiniować własne powiązania klawiszy, jest ich dodanie .inputrc. Dlatego szukałem i znalazłem następujące funkcje bash w dokumentacji przypuszczam może mi pomóc określić Emacs-like zachowanie, które chcę (tj set-markz C-spacei copyz M-w).
copy-region-as-kill ()
Skopiuj tekst z regionu do bufora zabijania, aby można go było natychmiast zaciągnąć. Domyślnie to polecenie jest niezwiązane.
i
set-mark (C-@)
Ustaw znak na punkcie. Jeśli podany zostanie argument numeryczny, znak zostanie ustawiony na tę pozycję.
Jeśli dobrze rozumiem, powyższe oznacza, że copy-region-as-killdomyślnie nie jest związany z żadną sekwencją klawiatury, a domyślnie set-markjest związany C-@.
Próbowałem C-@na swoim terminalu, ale nie sądzę, aby działał, set-markponieważ nie widzę podświetlonego tekstu, gdy poruszam kursorem. W każdym razie próbowałem dodać powiązania klawiatury ( M-wi C-) do funkcji copy-region-as-killi set-markpowyżej w moim, .inputrca następnie ponownie je załadować C-x C-r, ale to nie zadziałało. Wiem, że moje inne wpisy w.inputrc działają, ponieważ mam zdefiniowane w nim inne skróty klawiaturowe zdefiniowane przez użytkownika.
Czy coś robię źle? Czy coś mi brakuje?
bashi jakiego programu terminalowego używasz?