Comment rouvrir un fichier dans emacs?

16

Dans les anciennes versions d'emacs, je tapais:

C-x C-f RET

Et cela rouvrirait le fichier actuellement visité dans le tampon. Maintenant (emacs 23.1.1), il ouvre Dired of the directory.

Eyal
la source

Réponses:

18

J'utilise M-x find-alternate-filece qui est par défaut lié à C-x C-v.

Cette commande permet de recharger un fichier sur le tampon courant, en rechargeant le même fichier include - qui est affiché dans le mini-tampon par défaut. Cependant, ce n'est pas aussi pratique si le mode ido est activé pour la commutation de tampon car il n'affichera pas le nom de fichier actuel par défaut.

Mcradle
la source
D'autres réponses étaient également excellentes, mais cette réponse a le moins de touches.
Eyal
Cette méthode déclenche le hook de mode, tandis que la réponse de Gilles find-file, ne le déclenchera pas.
PanJunjie 潘俊杰
10

Êtes-vous sûr de ne pas vouloir simplement restaurer le tampon?

M-x revert-buffer RET
jwernerny
la source
6

Tu peux le faire C-x C-f M-n RET. Le comportement a été modifié car la C-x C-f RETréouverture d'un fichier n'était pas aussi courante que C-x C-f DEL RETd'invoquer Dired sur le répertoire.

Vous pouvez également utiliser M-x revert-bufferpour recharger un fichier à partir du disque, et Emacs vous indiquera (sur la plupart des systèmes d'exploitation) si vous essayez de modifier un fichier dont la copie sur le disque a été modifiée en externe.

C-x C-f M-n est également utile pour obtenir le chemin d'accès complet au fichier dans le mini-tampon, afin que vous puissiez ouvrir un fichier avec un nom similaire ou le copier dans le kill ring ou le presse-papiers.

Gilles 'SO- arrête d'être méchant'
la source
2

J'ai trouvé une suggestion utile pour revenir au comportement précédent de la liste de diffusionC-x C-f RET sur help-gnu-emacs :

Ce hack a été posté par Ted Stern:

(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))

Je l'ai essayé et cela fonctionne bien pour moi sur emacs 23.1.1.

un V
la source