Me gustaría abrir el archivo foo.bar
dos veces (o más) en emacs, para poder editar dos partes diferentes al mismo tiempo. ¿Es posible? Probablemente la mejor pregunta es, ¿cómo hacerlo? ¿Hay alguna manera de abrir cada instancia en su propio búfer / marco?
28
Respuestas:
Puede abrir el mismo búfer en más de una ventana (que se puede distribuir entre diferentes marcos), pero no es muy conveniente. Cada ventana tiene su propio punto, pero todos comparten la marca, el modo de archivo, el estrechamiento y otras características, porque aparte del punto, casi todas las características están vinculadas con el búfer. Además, si visita otro búfer en una ventana, perderá su lugar en el archivo.
Puede crear un búfer indirecto que tenga su propio punto, marca, modos, etc., pero el mismo contenido que el búfer original (y guardar cualquiera de los búferes escritos en el mismo archivo). Para crear un segundo búfer que sea un clon del búfer actual, ejecute
M-x clone-indirect-buffer RET
. Para abrir ese segundo búfer en una ventana diferente, puede escribirC-x 4 c
.fuente
C-x 4 c
ejecutaclone-indirect-buffer-other-window
, por lo que esto se usaría en lugar declone-indirect-buffer
no seguir ese comando. Sin embargo, en mi sistema, ambos comandos parecen hacer lo mismo.C-x 4
es el prefijo para Windows,c
es para clonar . Puede definir otros enlaces si lo prefiere.C-x c
no se usa en la configuración predeterminada, puede usarlo si no tiene miedo de golpear accidentalmenteC-x C-c
. DefinoC-x 5 c
clonar en un nuevo marco en mi archivo de inicio.Modo de pantalla dividida: donde ctrl+ xsignifica mantener presionada la tecla Ctrl y escribir una x. Luego escriba el número siguiente.
ctrl+ x2 (división horizontal)
o
ctrl+ x3 (división vertical)
Luego puede desplazarlos independientemente en el mismo archivo o abrir otro búfer si lo desea en uno de ellos.
Para volver a una vista única, escriba
ctrl+ x1
Si lo desea, puede dividir cada pantalla (sección) tantas veces como sea necesario. Seleccione primero la pantalla que desea dividir y luego realice una división horizontal o vertical en ella.
fuente
C-x o
correother-window
y recorre las "ventanas" visibles en cada "marco". (Uso de la configuración de emacs, donde las ventanas del gestor de ventanas se llaman marcos y los paneles separados dentro de ellos se llaman ventanas (lo sé, lo sé, pero no soy responsable de ella).)Emacs está sesgado a los paneles (ventanas), no a los marcos. A menudo es deseable abrir el mismo búfer en otro marco, no solo otra ventana en el mismo marco. Pero
C-x 5 c
está sin consolidar por defecto. Este código define laclone-indirect-buffer-other-frame
función que falta :fuente