Como abrir mais de 2 arquivos em um único frame Emacs?

3

Eu gostaria de poder automatizar o processo de abertura de vários arquivos no emacs sob um único quadro, para que o quadro seja dividido em várias janelas. Atualmente só consigo abrir 2 arquivos em um único frame do emacs (2 windows) digitando isso em um terminal linux: emacs file1 file2 . No entanto, se eu tentar abrir mais de dois arquivos, por exemplo, digitando emacs file1 file2 file3 , ele abrirá o arquivo3 em uma janela e na outra aparecerá um 'buffer de CRM' que lista os arquivos no diretório.

Como faço para abrir mais de 2 arquivos, para que o quadro do emacs seja dividido em mais de 2 janelas?

Note que 'window' significa janela no sentido do emacs, não no sentido do windows MS (frames).

    
por Eddy 04.06.2011 / 14:44

2 respostas

2

Você pode impedir que a lista de buffers chegue ao configurar inhibit-startup-buffer-menu para t conforme descrito aqui . No entanto, isso ainda não resulta em mais de duas janelas. Olhando para o código de inicialização em startup.el , isso não parece ser personalizável.

No entanto, o comando ibuffer ibuffer-do-view (ligado a v ) exibe vários buffers da maneira que você deseja. Você pode usá-lo programaticamente. Coloque isso no seu arquivo .emacs :

(defun view-files-in-windows ()
  (ibuffer)                      ; Activate ibuffer mode.
  (ibuffer-mark-special-buffers) ; Mark the special buffers.
  (ibuffer-toggle-marks)         ; Toggle buffers, leaving the non-special ones
  (ibuffer-do-view))             ; Show each buffer in a different window.

Em seguida, execute o emacs assim:

$ emacs file1 file2 file3 file4 --eval "(view-files-in-windows)"

(falha se houver muitos arquivos e as janelas ficassem muito pequenas).

    
por 02.07.2011 / 21:31
1

Não estou muito familiarizado com ibuffer , mas se seus arquivos estiverem numerados sequencialmente, grid-files-sq pode ser algo parecido com o que você está procurando, ou você pode usar GridLayout

    
por 19.07.2012 / 15:55

Tags