Klawisze podobne do Emacsa w całym systemie?


27

Czy istnieje sposób ustawienia skrótów klawiaturowych podobnych do Emacsa (przynajmniej wspomnianego poniżej zestawu) dla całego systemu operacyjnego? Jest to możliwe w niektórych aplikacjach, takich jak terminal, Emacs (idź rysunek :), a dodatkowo za pomocą specjalnych wtyczek w niektórych innych aplikacjach (Eclipse), ale tak przyzwyczaiłem się do przeglądania tekstu i nigdy nie skakałem do strzałek, które ja chciałbym móc robić to w całym systemie, aby móc to robić za każdym razem, gdy piszę - np. szukając utworów w Rhythmbox, wpisując różne rzeczy na desce rozdzielczej lub interfejsie użytkownika, pisząc maile w Thunderbirdie lub Gmailu ... combo, które najbardziej mnie interesują to:

  • Cf - naprzód
  • Cb - do tyłu
  • Ca - dom
  • Ce - end
  • Cd - usuń
  • Ck - usuń linię

(uwaga dla użytkowników innych niż emacs - C oznacza Ctrl)

Odpowiedzi:


15

Na podstawie: /superuser//a/516847/205010

  1. Zainstaluj narzędzie gnome-tweak-tool: sudo apt-get install gnome-tweak-tool

  2. Otwórz to: gnome-tweak-tool

  3. Idź do Keyboard and Mousei zmień Key ThemenaEmacs


1
to jest całkiem fajne, ale wiele rzeczy nie działa, czyli CB, Ck itp roztwór prawdopodobnie ciągnie wszystko do Emacs przeglądarka IE, e-mail itd zamiast próbować naciskać klawiszy na zewnątrz poza emacs
— BPH

Gdzie to nie działa? W moim przypadku przez większość czasu działa całkiem dobrze.
— Eyal Levin

Wydaje się, że jeśli aplikacja implementuje równoważny skrót, ma to pierwszeństwo. Co jest niezręczne
— bph

Nie sądzę, że tak się dzieje w przypadku wszystkich aplikacji. Kilka razy zetknąłem się w Chrome, że globalne skróty Emacsa mają pierwszeństwo przed konkretnymi skrótami do aplikacji internetowych.
— Eyal Levin

mój przypadek testowy używał poczty Yahoo i Gmaila w przeglądarce Firefox. w obu przypadkach Ca Ce Cf Cp Cn działał zgodnie z oczekiwaniami, ale Cb przełączył pogrubioną czcionkę, a Ck wywołało okno dialogowe łącza. Więc dla mojej konkretnej aplikacji jest to trochę hit i miss - będę musiał spróbować Chrome i zobaczyć, czy jest inaczej
— bph

14

Udało mi się rozwiązać problem za pomocą AutoKey , zgodnie z zaleceniami w tej odpowiedzi . Niektóre z moich wyrażeń to:

content                     |   hotkey             |   description
---------------------------------------------------------------
<ctrl>+f                    |   <ctrl>+<alt>+f     | replace the find operation
<home>                      |   <ctrl>+a           | begining of line
<end>                       |   <ctrl>+e           | end of line
<left>                      |   <ctrl>+b           | back one letter
<right>                     |   <ctrl>+f           | forward one letter
<delete>                    |   <ctrl>+d           | delete one letter
<home><shift>+<end><delete> |   <ctrl>+k           | kill line

(tak, kombinacja linii zabijania była paskudna do znalezienia :)

Możesz nadal wymieniać rzeczy, ale nie chcę, aby remap mentalny urósł do dużego (np. Ctrl + n nie otwiera nowego okna, ale przechodzi do następnej linii). W sumie AutoKey to fajna aplikacja!

W każdym razie teraz mam ergonomię emacsa, że ​​nigdy nie muszę zostawiać „literowych klawiszy” w Ubuntu - w każdym polu tekstowym, które edytuję. Yeii!

Aktualizacja: kiedy zagłębiłem się w grę z AutoKey, aby wszystko dostroić, wprowadziłem sporo zmian. Możesz zobaczyć moją pełną konfigurację AutoKey Ubuntu-Emacs (i zainstalować ją) w moim repozytorium git repfiles .


Próbowałem więc przesłać jedno słowo <alt> + f, ale kolidowało to z otwieraniem pliku w emacsie. Czy napotkałeś ten problem? jak to rozwiązałeś?
— Sambatyon,

4

Istnieje inne rozwiązanie nieobejmujące aplikacji innych firm zamieszczonych tutaj emacs keybindings in ubuntu 12.04


Użycie tej metody nie będzie działać w aplikacjach takich jak Thunderbird, w których Ctrl + F będzie interpretowany jako „Znajdź ciąg” zamiast „Przesuń kursor do przodu”.
— holocronweaver

@holocronweaver to prawda, zrezygnowałem z tego, że klucze Emacsa działają niestety w Thunderbirdzie, ale większość innych danych wejściowych (zwłaszcza w Chrome) prawie działa. Nie mogę się oprzeć wrażeniu, że rozwiązanie AutoKey to droga do niekończących się błahostek i frustracji :) To powiedziawszy, czy wypróbowałeś rozwiązanie zaproponowane przez kermit666, a jeśli tak, to czy zadziałało?
— dolzenko

Po drobnej edycji, aby dostosować go do moich upodobań, rozwiązanie AutoKey działa całkiem dobrze w Firefox i Thunderbird na Ubuntu 14.04. Jeszcze więcej testów do zrobienia.
— holocronweaver
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.