Como configurar o Windows padrão na inicialização?


18

Toda vez que abro o Emacs, costumo configurar 3 janelas fazendo C-x 3( split-window-right) e depois C-x2( split-window-below). Depois disso, tenho que mudar para cada janela para abrir os arquivos que quero editar.

Como posso definir isso para ser feito automaticamente?

Existe uma maneira de o Emacs recuperar a mesma organização de tela (janelas e arquivos) do último uso?

Respostas:


13

Desde Emacs 24.4, você pode usar desktop save-mode . Faz parte do Emacs há muito tempo, mas o layout da janela é salvo e restaurado apenas desde a versão 24.4.

Basta adicionar esta linha no seu arquivo init:

(desktop-save-mode 1)

3
Isso restaurará os arquivos da sessão anterior, mas não restaurará o layout da janela.
precisa saber é o seguinte

1
Não, eu testei. Manual do Emacs : Depois de salvar a área de trabalho do Emacs - os buffers, seus nomes de arquivo, modos principais, posições de buffer etc. - as sessões subsequentes do Emacs recarregam a área de trabalho salva.
Sviridov Alexander

3
"Posição do buffer" refere-se à posição do ponto (o cursor) em um determinado buffer. Sim, isso será restaurado com desktop-save-mode. O layout da janela refere-se a quantas janelas são exibidas no momento e como estão posicionadas. desktop-save-modenão preserva esse layout.
itsjeyd

3
Sim, "layout da janela" e "posição do buffer" são coisas diferentes, você está correto. Mas o layout da minha janela foi restaurado. Parece que a economia do layout da janela foi adicionada ao emacs-snapshot.
Sviridov Alexander

1
@pors, não parece ser o caso se você estiver usando o Emacs (24.4 ou superior) no modo terminal. Nenhuma configuração de janela é salva / restaurada.
skyork

7

Se você escrever uma função próxima a essa em seu arquivo init, provavelmente precisará modificá-la um pouco para atender às suas necessidades:

;; layout definition
(defun my-startup-layout ()
 (interactive)
 (delete-other-windows)
 (split-window-horizontally) ;; -> |
 (next-multiframe-window)
 (find-file "~/.emacs.d/init.el")
 (split-window-vertically) ;;  -> --
 (next-multiframe-window)
 (find-file "~/.emacs.d/init_settings.el")
 (next-multiframe-window)
 (dired "~")
)

;; execute the layout
(my-startup-layout )

existe uma maneira de o Emacs recuperar a mesma organização de tela (janelas e arquivos) do último uso?

Você deve dar uma olhada no pacote de layout


6

Você pode usar workgroups2para gerenciar sua área de trabalho. Do README no GitHub:

Grupos de trabalho é um gerenciador de sessões para o Emacs.

  • Ele salva todos os seus buffers abertos, sua localização e tamanhos no disco para restaurar posteriormente
  • Você pode criar vários espaços de trabalho

Você também pode restaurar buffers como: org-agenda, shell, magit-status, help.

Se você tiver o repositório MELPA ativado, poderá instalar este pacote via M-x package-install RET workgroups2 RET.

A configuração básica é:

(require 'workgroups2)
(workgroups-mode 1) ; This should go at the end of your init file

Quando você reiniciar o Emacs pela primeira vez após adicionar esse código ao seu arquivo init, workgroups2criará automaticamente um grupo de trabalho para você. Você pode verificar se isso foi bem-sucedido, verificando o *Messages*buffer para as seguintes informações:

Workgroups Mode: on
Switched: First workgroup
Created: First workgroup  ( -<{ 0: First workgroup }>- )

A partir deste momento, o Emacs salvará a configuração atual de janelas e arquivos automaticamente na saída e a restaurará na próxima vez em que for iniciada.


2

Eu tenho usado algo modelado com o .emacs.d da sanityinc . Ele usa desktop-save-modee também é inteligente o suficiente para usar frame-restoreem versões mais antigas do emacs. Do leia-me para frame-restorede package-list-packages:

Salve e restaure parâmetros dos quadros do Emacs.

Basta chamar frame-restore' in yourinit.el ':

(modo de restauração de quadro)

Observe que, desde r113242, o modo interno de economia de área de trabalho restaurará os quadros. Se você estiver usando uma compilação de instantâneo do Emacs depois desta revisão, é altamente recomendável usar o modo de economia da área de trabalho:

(modo de salvamento na área de trabalho)

O modo Restauração de Quadro exibirá um aviso em negrito se ativado em uma compilação do Emacs cujo modo de Economia da Área de Trabalho possa restaurar quadros.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.