Posso mostrar um relógio na área de eco?

9

Na maioria das vezes, minha área de eco fica vazia enquanto a modelagem de cada uma das minhas janelas exibe muitas informações redundantes redundantes (hora atual, carregamento do sistema e várias outras informações independentes de buffer).

Posso exibir a hora atual (alinhada à direita) na área de eco (sempre que não estiver em uso?)

Clemente
fonte
11
Faço quase isso usando o minibuffer-linepacote, exceto que ele está alinhado à esquerda.
Kaushal Modi
11
Relacionados: emacs.stackexchange.com/q/7563/2355
Constantine

Respostas:

3

Você pode usar o minibuffer-linepacote do GNU ELPA para isso.

(require 'minibuffer-line)
(setq minibuffer-line-format '((:eval
                                (let ((time-string (format-time-string "%l:%M %b %d %a")))
                                  (concat
                                   (make-string (- (frame-text-cols)
                                                   (string-width time-string)) ? )
                                   time-string)))))
(minibuffer-line-mode)
Kaushal Modi
fonte
Obrigado! Esse pacote parece funcionar executando um timer e atualizando a área de eco a cada 60 segundos. Isso significa que, quando uma mensagem é exibida na área de eco, leva 60 segundos para o relógio voltar ... Acho que poderia reduzir o atraso do temporizador, mas isso não parece ótimo.
Clément
O relógio volta para mim assim que a área de eco não deve mostrar mais nada. Eu tenho usado este pacote desde que foi publicado; nunca precisou esperar o tempo aparecer novamente.
Kaushal Modi
@ Clément Eu acredito que a atualização acontece a cada minuto no *Minibuf-0*buffer. E esse buffer é exibido automaticamente na área de eco assim que nada é exibido nessa área. Referência:C-h i g (elisp) Intro to Minibuffers
Kaushal Modi
Eu imagino que está colidindo com eldoc-modeentão? Em um buffer lisp, mover o ponto para (defune voltar para uma área em branco oculta a mensagem eldoc, mas então tenho que esperar até que um minuto inteiro tenha passado antes que o texto da linha do minibuffer retorne. OUTROS, mover o ponto com o mouse parece funcionar.
Clément
@ Clément Agora que você mencionou, eu também vejo isso. Eu nunca prestei tanta atenção nisso. O buffer de comutação também traz de volta o texto da linha do minibuffer.
Kaushal Modi 27/01