Como fazer o emacs minibuffer vertical?

4

Eu quero fazer o eibu minibuffer (onde nós digitamos o comando emacs) na vertical. Apenas a maneira como abrimos uma janela usando

C-x 3

Existe uma maneira de fazer isso?

    
por Null pointer 02.01.2014 / 13:55

2 respostas

3

  

Normalmente, cada quadro tem sua própria janela minibuffer na parte inferior, que é usada sempre que esse quadro é selecionado. Se o quadro tiver um minibuffer, você pode obtê-lo com a janela minibuffer.

Bem, aparentemente há um caminho. Criando um frame minibuffer dedicado usando o oneonone. Este método não funcionou como eu esperava no Emacs 24, onde tentei como 1on1-emacs . Você precisa carregar hexrgb.el primeiro, caso contrário não funcionará. É assim que é mostrado:

Como pode ser visto, ele abre um novo quadro para conclusões e para o minibuffer. Eu não entendi porque quando eu mudo para o minibuffer ele não muda o escopo para o quadro minibuffer e tenta reutilizar o que eu tenho abaixo. Talvez Eu não estou usando as bibliotecas corretas , mas pelo menos é o começo.

Depois usei uma nova janela minibuffer . A usabilidade da nova janela minibuffer foi bastante nula, já que eu tinha dois minibuffers (e não encontrei uma maneira de remover o original) e a auto-conclusão foi feita no quadro principal ao invés do quadro minibuffer.

Este é o mais longe que eu fui:

(setq default-minibuffer-frame
      (make-frame
       '((name . "minibuffer")
         (width . 20)
         (height . 80)
         (minibuffer . only)
         (top . 0)
         (right . 0)
         )))
(setq-default mode-line-format nil)
    
por Braiam 02.01.2014 / 18:39
0

Como o comentário no arquivo oneonone.el diz, basta colocar isso no seu ~/.emacs :

 (require 'oneonone)
 (1on1-emacs)

Você também pode invocar 1on1-emacs na linha de comando:

 runemacs -l "oneonone.el" -f "1on1-emacs"

(Pode ser necessário fornecer um nome de arquivo absoluto para runemacs ou oneonone.el , dependendo do diretório, etc.)

Se você chamar 1on1-emacs de qualquer outra forma que não seja durante a inicialização, será tarde demais, já que o Emacs já terá criado outro minibuffer em seu quadro inicial. Esse é o comportamento que você descreve acima.

Dica: Se você usa uma biblioteca de terceiros, não é difícil procurar no Comentário de código-fonte as instruções de instalação / inicialização. ; -)

Para responder à pergunta original: se você quiser um minibuffer que esteja ao lado de algum outro buffer, então não, não é possível no mesmo quadro, AFAIK. Mas sim, você pode usar um minecffer autônomo para isso, ou seja, um quadro minibuffer separado. E sim, oneonone.el permite que você faça isso - basta personalizar a posição e o tamanho do quadro minibuffer usando as opções na biblioteca.

Dito isto, eu não vejo por que alguém iria querer um minibuffer ao lado. Tenha em mente que o texto é escrito horizontalmente. Portanto, geralmente faz sentido ter uma janela / quadro que seja usada para entrada digitada e mensagem de saída exibida (área de eco) para ser mais larga do que alta, não alta e estreita.

    
por Drew 02.02.2014 / 07:18

Tags