Como salvar uma posição do cursor?

7

Como posso salvar a posição do cursor para todos os arquivos que abri? Então, da próxima vez que abrir o arquivo, o cursor estará na posição em que o abri pela última vez.

Luke Shimkus
fonte

Respostas:

10

saveplace você cobriu:

(require 'saveplace)
(setq-default save-place t)
shosti
fonte
2
Para o Emacs 25 e seguintes:(save-place-mode)
incandescentman
1

Os marcadores podem salvar sua posição do ponto. Atualmente, estou obtendo muita milhagem dos favoritos usando-os em vez do tradicional armazenamento em área de trabalho. Esta solução fornecerá muitos benefícios colaterais, como descreverei abaixo.

  1. Edite um buffer e deixe o ponto onde quiser.
  2. Salve normalmente com Cx Cs.
  3. Defina um marcador com Cx r m.
  4. Feche o buffer.
  5. Listar marcadores com Cx r l.
  6. Mova o ponto para o nome do arquivo com o nome de arquivo Cs ...
  7. Pressione Enter duas vezes para carregar o arquivo em um buffer.
  8. Observe que o ponto é exatamente onde você o deixou; sorriso.

Gosto desse fluxo de trabalho porque:

  • Isso me fornece um registro permanente de todos os arquivos que eu editar.
  • O conteúdo do buffer é pesquisável, copiável e acessível para macros e funções Lisp.
  • O Emacs lembra a localização do arquivo; não preciso mais procurar no meu disco rígido aquele pequeno shell script que escrevi há três anos.
  • O arquivo do marcador é carregado muito rapidamente, mesmo que cresça muito, em comparação com a minha área de trabalho antiga, com dezenas de arquivos grandes sendo carregados toda vez que eu executo o Emacs.
  • O Bookmarks possui muitos outros recursos que eu ainda não explorei, como a maioria dos Emacs.

A única desvantagem desse fluxo de trabalho é que devo definir manualmente o marcador sempre que salvar o arquivo. O próximo passo seria, acredito, adicionar um "gancho" para marcar automaticamente cada arquivo salvo. Ainda não cheguei lá, mas tenho certeza de que alguém já descobriu isso.

Low Powah
fonte
Os marcadores são complementares ao saveplace. Saveplace faz esse salvamento automático da posição. Os marcadores também são usados, mas não são realmente adaptados ao que é solicitado nesta pergunta.
Gilles 'SO- stop be evil'