W emacs czasami znajduję się w trakcie znajdowania pliku, przełączania buforów lub robienia czegoś w minibuforze, i z jakiegoś powodu klikam gdzie indziej. Gdy wrócę, jedynym sposobem, aby ponownie włączyć monit minibufora, jest kliknięcie wewnątrz minibufora, co jest denerwujące, ponieważ jest to cienki obszar. Czy jest jakiś sposób na powrót do aktywnego monitu minibufora bez użycia myszy?
emacs
focus
mouseless
minibuffer
Ryan C. Thompson
źródło
źródło
(select-frame-set-input-focus (window-frame (active-minibuffer-window)))
przedselect-window
.Powtórz w razie potrzeby.
Cx o uruchamia polecenie other-window, które jest interaktywną wbudowaną funkcją w `C code source '.
Jeśli nie chcesz przełączać się między oknami, możesz dodać funkcję do pliku init i powiązać ją z kluczem. Coś takiego może działać:
źródło
RET
? Automatycznie akceptowałby wszystko, co było w minibuforze (zakładając, że jedenC-x o
przeszedł na minibufor). Zasadniczo może być konieczneC-x o
wielokrotne użycie, jeśli w ramce (w języku Emacsa) jest otwartych wiele okien (w normalnych warunkach GUI: wiele okien w oknie).other-window
dopóki bieżące okno nie będzie zawierało minibufora?Inną opcją jest użycie
switch-window
Uważam, że jest to bardzo przydatny pakiet: pozwala szybko przejść do dowolnego okna Emacsa, wizualnie (i często używam wielu otwartych okien w Emacsie).
Ale właśnie się dowiedziałem, że pozwala również przejść do minibufora, jeśli jest aktywny:
Mam nadzieję, że to pomoże.
źródło
swap-buffers
używa tej samej metody do zamiany bieżącego bufora na ten w innym oknie.Dodanie dwóch powyższych wierszy kodu do .emacs.el umożliwi proste i wydajne przenoszenie, nie tylko do minibufora, ale także nawigację po wszystkich innych oknach w ramce Emacsa za pomocą Shift-Arrow .
źródło