¿Hay alguna manera de decirle a emacs/vi/vim (desde la línea de comando) que quiero ver el archivo en formato view-mode
o read-only
.
Sé cómo abrir un archivo como de solo lectura si emacs/vi/vim ya se está ejecutando.
Respuesta1
Para emacs:
emacs FILE --eval '(setq buffer-read-only t)'
No hay ninguna opción de inicio para forzar solo lectura.
Editar:
si coloca esta pequeña función en el script de inicio de su shell (.bashrc, por ejemplo), puede abrir un archivo de solo lectura escribiendoev file_to_view
ev() {
emacs "$1" --eval '(setq buffer-read-only t)'
}
Respuesta2
vim -R nombre de archivo
Respuesta3
ver nombre de archivo
Básicamente vim en modo de solo lectura; sencillos!
Como lo insinúa el comentario, en caso de que view
esté vinculado a simple vi
, aquí estánintentocomandos para primero inspeccionar la situación y luego arreglarla:
# non-destructive inspection
which vim
which view
ls -l $(which view)
# overwrite current view with symlink to vim, requires root
ln -sfv $(which vim) $(which view)
Respuesta4
Pequeño seguimiento de la respuesta aceptada: puede crear un alias en su Shell para reducirlo a un solo comando. Por ejemplo, en bash puedes poner lo siguiente en tu .bashrc:
emacsro() {
emacs $1 --eval '(setq buffer-read-only t)'
}
(Diferentes shells tendrán diferentes formatos para hacer esto, pero ya entiendes la idea)
Habría agregado esto como comentario en respuesta a la respuesta aceptada, pero no parecía posible tener un bloque de "código" de varias líneas en un comentario y (de todos modos, en bash) el código anterior realmente necesita ser en 3 líneas separadas.