Powiedzmy na przykład, że edytuję plik konfiguracyjny i chcę wpisać ścieżkę. Czy istnieje wtyczka do emacsa, która pozwala uzupełnić ścieżkę pliku w tym buforze? Szukałem tego i są tam jakieś wtyczki bazillionowe.
Powiedzmy na przykład, że edytuję plik konfiguracyjny i chcę wpisać ścieżkę. Czy istnieje wtyczka do emacsa, która pozwala uzupełnić ścieżkę pliku w tym buforze? Szukałem tego i są tam jakieś wtyczki bazillionowe.
Odpowiedzi:
Wypróbuj Hippie Expand , który jako jedna z jego możliwości ma ” try-complete-file-name
. Możesz zmienić kolejność i listę funkcji rozwijania, których będzie używał hippie expand, aby sprzyjać rozszerzaniu nazwy pliku.
Możesz też napisać niestandardowe opakowanie, które tylko rozszerzy nazwy plików. Coś jak:
(global-set-key (kbd "C-M-/") 'my-expand-file-name-at-point)
(defun my-expand-file-name-at-point ()
"Use hippie-expand to expand the filename"
(interactive)
(let ((hippie-expand-try-functions-list '(try-complete-file-name-partially try-complete-file-name)))
(call-interactively 'hippie-expand)))
Zazwyczaj piszę Ctrl- X Ctrl- Ftak jakbym otwierał plik, ale zamiast RETnaciskać Ctrl- naciśnij - A Ctrl- K Ctrl-, Gaby skopiować ścieżkę, a następnie wkleić ją do buforu, który edytowałem za pomocą Ctrl- Y.
Nie potrzebuję tego wystarczająco często, ale gdybym naprawdę chciał lepszego rozwiązania, zdecydowanie skorzystałbym z rozwiązania Trey Jackson hippie-expand
. Myślałem o tym, jak hippie-expand
może być lepszy sposób to zrobić po raz pierwszy odpowiada, ale nie wiedziałem, i był zbyt leniwy, aby to sprawdzić, więc po prostu napisał, co mam zrobić.
Wanilia, od razu po wyjęciu z pudełka
M-x comint-dynamic-complete-filename
działa poza trybem comint. Oczywiście, można użyć dynamicznej ekspansji minibufor do korzystania mniej klawiszy, aby dostać się do niego (np Mx Comi NT- dy namic- c omplete -f ilename). Lub, jeśli będziesz go często używać, możesz powiązać go z wybraną sekwencją klawiszy za pomocą global-set-key
.
Można to również zrobić przy użyciu firmowego autouzupełniania, jeśli company-files
są na liście company-backends
(domyślnie w mojej instalacji) lub jawnie przez telefon company-files
.
Niedawno odkryłem prace Tomohiro Matsuyama (@ m2ym) i jestem pod dużym wrażeniem jakości jego pakietów emacs.
Walczyłem z większością rozszerzeń autouzupełniania i odkryłem, że wszystkie mają poważne wady.
Sprawdź autouzupełnianie Tomo ( http://auto-complete.org/doc/manual.html ). Instalacja była łatwa (jestem na Linuksie) i obejmuje wiele potrzeb związanych z autouzupełnianiem w nowoczesny sposób.
Oczywiście twoja prośba o uzupełnienie nazw plików w buforze jest doskonale uwzględniona.
Na koniec, jeśli zdarzy ci się też robić Ruby, pamiętaj, aby nie przegapić jego rozszerzenia RSense ; znowu najlepszy w swoim rodzaju.
find-file
na przykład przy użyciu ). Czy chcesz podobne zachowanie w buforze zawartości?