Domyślnie, wprowadzając informacje w wierszu polecenia w mutt
, możesz wyczyścić monit za pomocą Ctrlg, jak opisano w instrukcji :
^ G n / d przerwać
Próbowałem powiązać tę funkcję Escape. Niestety abort
nie jest wymieniony w dostępnych funkcjach, ani w instrukcji , ani w źródle .
Próbowałem użyć tego w moim .muttrc
:
edytor powiązań <esc> przerwał
ale generuje błąd:
Błąd w /home/jason/.mutt/muttrc, wiersz 143: przerwanie: brak takiej funkcji na mapie
Próbowałem użyć innej mapy, na przykład ( generic
), i eksperymentowałem z innymi fikcyjnymi funkcjami, na przykład clear
bezskutecznie.
Jak powiązać, Escapeaby wyczyścić wiersz zachęty?
mutt
key-mapping
jasonwryan
źródło
źródło
^[
więc może nie być showstopperem (i tak nie używam żadnych powiązań, które na nim polegają).Esc
,Esc
wyśle dwa znaki ESC. Możesz także nacisnąćEsc
raz i poczekać około jednej sekundy (domyślny limit czasu oczekiwania na resztę sekwencji ucieczki).Odpowiedzi:
Nie jest to możliwe z powiązaniami klawiszy. Ctrl-Gjest zakodowany na stałe w mutcie na poziomie niższym niż przetwarzanie makr lub kluczowanie (patrz
mutt_getch()
w kodzie źródłowym mutta, w rdzeniu wszystkich danych wejściowych użytkownika w mutcie, które zwracają błąd po^G
).też by nie działał.
Co możesz zrobić, to skonfigurować terminal do wysyłania
^G
po naciśnięciuEscapeZ Xterm:
Jeśli używasz
screen
, możesz to zrobićprzed wywołaniem mutta i przywróceniem go później (niestety nie wydaje się, aby można było przypisać do niego przypisania klawiszy na ekranie okna). Będzie to również problem, jeśli edytorem wiadomości e-mail jest vi.
źródło
Wydaje mi się, że naprawdę złym pomysłem jest powiązanie ucieczki ControlG. Przybyłem tutaj, szukając kundla, ale ponieważ wydaje się, że nie ma takiego, dam odpowiedź z tego, co robię dla każdego, kto natknie się na to. Nie jest optymalny, ale nie wpłynie na żadne inne programy:
lub
Używanie czegoś takiego jak xdotool lub xsendkey do fałszywego control + g działa i nie psuje ucieczki wszędzie indziej. Jest dla mnie wizualne opóźnienie wyjścia z edytora linii, ale powiązania indeksu będą działać natychmiast, a wizualne opóźnienie zniknie, gdy tylko użyjesz powiązania indeksu. Pierwsze wejście jest konieczne, aby mutt nie wpisał po prostu „....” i przekształcił go w nagłówek, wyszukiwane hasło lub coś w tym rodzaju.
źródło
To rozwiązanie jest tak złe, że autor wolał edytować kod źródłowy Mutt, aby pozbyć się ^ G
Ostrzeżenie: To rozwiązanie wydaje się niezgodne z OSX, Emacsem i innymi aplikacjami używającymi Ctrl+G
Po pierwszym dniu w Mutt prawie przez pomyłkę prawie użyłem ^ G w Vimie ... Potem spróbowałem czegoś, co wydaje się działać tutaj, w menedżerze okien i3 i terminalu xfce .
Dodano tę linię do
~/.i3/config
:Musiałem użyć,
"\[Escape]\[Control]\[g]"
ponieważ tylko"\[Control]\[g]"
przestał działać w Vimie.Jeśli nie używasz i3, myślę, że możesz użyć xbindkeys do uruchomienia
xvkbd -xsendevent -text "\[Escape]\[Control]\[g]"
po Escnaciśnięciu.To nie jest piękne rozwiązanie ... Może sprawić, że twój Escklucz będzie bezużyteczny w niektórych programach, ale przynajmniej tutaj wydaje się być w porządku.
EDYTOWAĆ:
Widzę teraz, że część Ctrl+ Gsprawia, że Vim pokazuje pozycję w pliku. Na razie nic dramatycznego.
Ten link wydaje się mieć lepsze rozwiązanie, ale dla urxvt : http://www.unixli.com/q/answers-urxvt-map-esc-key-to-key-sequence-83211.html
źródło