Jak ponownie otworzyć plik w emacsie?


16

W starszych wersjach emacsa pisałem:

C-x C-f RET

I ponownie otworzyłby plik aktualnie odwiedzany w buforze. Teraz (emacs 23.1.1) otwiera Dired katalogu.

Odpowiedzi:


18

Używam, M-x find-alternate-fileco jest domyślnie związane z C-x C-v.

To polecenie pozwala ponownie załadować plik do bieżącego bufora, ponownie ładując ten sam plik include - który domyślnie jest wyświetlany w mini-buforze. Nie jest to jednak tak wygodne, jeśli masz włączony tryb ido do przełączania buforów, ponieważ domyślnie nie wyświetla bieżącej nazwy pliku.


Inne odpowiedzi również były doskonałe, ale ta odpowiedź ma najmniejszą liczbę naciśnięć klawiszy.
Eyal

Ta metoda wyzwala przechwytywanie trybu, a odpowiedź Gillesa find-filego nie wyzwala.
PanJunjie 潘俊杰

10

Czy na pewno nie chcesz po prostu przywrócić buforu?

M-x revert-buffer RET

6

Można to zrobić C-x C-f M-n RET. Zachowanie zostało zmienione, ponieważ C-x C-f RETponowne otwarcie pliku nie było tak powszechne, jak C-x C-f DEL RETwywołanie Dired w katalogu.

Możesz także użyć M-x revert-bufferdo ponownego załadowania pliku z dysku, a Emacs powie ci (w większości systemów operacyjnych), jeśli spróbujesz edytować plik, którego kopia na dysku została zmodyfikowana zewnętrznie.

C-x C-f M-n jest również przydatny do uzyskania pełnej ścieżki do pliku w minibuforze, dzięki czemu można otworzyć plik o podobnej nazwie lub skopiować go do pierścienia zabójstwa lub schowka.


2

Znalazłem przydatną propozycję powrotu do poprzedniego zachowania C-x C-f RETna liście mailingowej help-gnu-emacs :

Ten hack został opublikowany przez Teda Sterna:

(defun find-file-read-args (prompt mustmatch)
  (list (let ((find-file-default
           (and buffer-file-name
                (abbreviate-file-name buffer-file-name))))
      (read-file-name prompt nil find-file-default mustmatch))
    t))

Wypróbowałem to i działa dobrze dla mnie na emacs 23.1.1.

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.