2012-09-24 48 views
15

Quiero ser capaz de utilizar un atajo de teclado para editar el archivo en lugar de escribir Ctrl-XCtrl-F .emacs mis .emacs Introduzca cada vez (esto es an analogous question con respecto a Vim). Probablemente haya una forma obvia de hacerlo, pero no puedo encontrar el comando Emacs Lisp para abrir un archivo. Creo que sería algo que empiece con "abrir" o "archivo" pero escribir M-x y esos términos no parecen mostrar nada relevante. IntentéAcceso directo para abrir un archivo específico en Emacs

(global-set-key (kbd "<f6>") (find-file "~/.emacs")) 

pero eso no funciona.

+2

Oleg ha proporcionado una solución. Tenga en cuenta que lo que estaba * intentando * era tomar el valor * devuelto * por la función 'find-file' (devolverá un objeto buffer) cuando se le llama con el argumento' "~/.emacs" ', y luego asignar eso objeto de búfer como una función para llamar al escribir ''. – phils

Respuesta

33

De acuerdo con la documentación

(-mundial Juego de llaves comando de teclado)

Dale CLAVE una unión global como COMANDO. COMMAND es la definición de comando a usar; por lo general, es un símbolo que nombra una función de invocación interactiva .

Así que hay que utilizar una función interactiva se puede llamar:

(global-set-key (kbd "<f6>") (lambda() (interactive)(find-file "~/.emacs"))) 

personalmente prefiero utilizar emacs registers para almacenar archivos que utilizo a menudo. Me almacenar '~/.emacs' en un registro:

(set-register ?e (cons 'file "~/.emacs")) 

y abrirlo con C-x r j e

+5

Para ~/.emacs (o en mi caso, ~/.emacs.d/init.el), puede usar la variable user-init-file, que es siempre el archivo de configuración de usuario que se haya cargado. (find-file (o user-init-file "")) – jpkotta

+3

Muchas gracias Oleg. Los registros son geniales! Incluso puede usar letras mayúsculas y minúsculas, como en: '(set-register? X (cons 'file" ~/.xinitrc "))' and '(set-register? X (cons' file" ~/.Xresources) "))'. –

1

marcadores es una excelente solución para este propósito que se empaqueta con emacs. De esta forma, si está bien que vea la lista de archivos que desea abrir, puede examinarlos fácilmente. También hay BookmarkPlus que ofrece una variedad de opciones.

M-x list-bookmarks

Cuestiones relacionadas