Salvando a lista de arquivos abertos e o histórico de comandos do buffer entre as sessões

7

Descobri o desktop-save-modeque permite que o Emacs seja fechado e, quando reaberto, ele aparece com os mesmos arquivos que estavam abertos antes.

Quero ir um pouco mais longe e fiquei pensando se eu também poderia:

  1. Salve o histórico de arquivos que eu abri C-x C-f. Costumo abrir os mesmos arquivos, então seria ótimo encontrá-los facilmente. Se não for possível salvar isso, talvez alguns favoritos ajudem?
  2. Salve o histórico de comandos do buffer executados via M-xou M-:, isso é possível? Se não for possível, talvez eu possa manter alguns trechos para fazer isso?

Desde já, obrigado!

Galder Zamarreño
fonte

Respostas:

6

A savehistbiblioteca é a opção geral para persistir os valores variáveis ​​nas sessões.

Simplesmente ativar savehist-modegarante que a maioria dos históricos de minibuffer persistirá, mas você também pode solicitar que faça o mesmo para qualquer outra variável, adicionando-o a savehist-additional-variables:

(eval-after-load "savehist"
 '(add-to-list 'savehist-additional-variables 'foo))

(savehist-mode 1)

Veja também: M-x customize-group RET savehist RET

phils
fonte
2

Para o histórico de arquivos, se você ativar ido-modee personalizar ido-use-virtual-bufferspara t, até buffers fechados permanecerão no histórico de ido. Isso persiste nas desktop.elsessões.

C-kdurante um ido-switch-bufferremove o buffer selecionado do histórico, se você precisar tirá-lo do seu caminho.

Croad Langshan
fonte
11
Existe algo parecido com isto disponível para leme?
Vfclists
@vfclists sim, existe um " Helm Source " interno para idobuffers virtuais e outro para recentfarquivos. (1) use em M-x helm-minivez de M-x helm-buffer, que mescla a fonte Helm com a fonte para buffers abertos e com uma "fonte dummy". (2) iirc, ative a opção que diz "usar buffers recentesf em vez de buffers virtuais ido".
sam boosalis 02/07/19
(tldr M-x helm-mini)
sam boosalis 02/07/19
por exemplo, (defcustom helm-mini-default-sources '(helm-source-buffers-list helm-source-recentf helm-source-buffer-not-found))fonte github.com/emacs-helm/helm/blob/v3.2/helm-buffers.el#L92
sam boosalis
E para hera, há(setq ivy-use-virtual-buffers t)
Croad Langshan