Freqüentemente, minhas janelas são divididas automaticamente até que eu decida arbitrariamente que o quadro atual não tenha espaço suficiente para todas elas. Quando isso ocorre, excluo manualmente uma janela, crio um quadro e alterno para essa janela excluída. Como posso escrever uma função elisp que faz isso?
Eu tentei:
(defun pop-window-into-frame ()
(interactive)
(delete-window)
(make-frame-command)
(switch-to-prev-buffer))
Mas, por alguma razão, isso não faz o que eu acho que deveria.
Este comando, assim como o seguinte, que não faz nada se a janela selecionada estiver sozinha em seu quadro, está disponível na biblioteca
frame-cmds.el
.fonte
(select-frame-set-input-focus fr)
no final funcionou.select-frame-set-input-focus
. No MS Windows, por exemplo, ele obtém o foco, portanto não é necessário. Além disso, a descrição do comando não diz que o quadro fica focado. Se isso for desejado, pode ser criado um comando diferente que chama isso e depois focaliza o quadro.