Dobragem de código no Emacs
Às vezes, quero dobrar um bloco de texto. No Vim, você tem dobragem fácil, sem penugem. Sem adicionar caracteres especiais como "marcadores" ou regex específico, como {{{
. Gostaria de selecionar uma região e dobrá-la, sem mexer com a estrutura.
Ao olhar em volta, parece que já havia perguntas sobre a dobragem de código no Emacs. Alguém disse que "não havia solução perfeita". Por exemplo, criei um clipe de dobragem de código simples no Vim:
Vim dobrável
+ Bastante simples, selecione uma região e dobre-a.
+ É persistente. Quando você mata o buffer / fecha o Vim. E reabra o arquivo, as dobras ainda estão lá.
+ Você obtém uma barra de destaque para ver facilmente o que está dobrado.
Existem muitas outras configurações dobráveis para o Vim. Estou feliz com o Emacs, mas é uma coisa que sinto falta. Outras alternativas que eu tentei, por exemplo, HideShow:
HideShow
Alternativa do mal com hide-show minor mode
. Achei inutilizável:
- Não consigo selecionar uma região e dobrá-la. Dobra em blocos de código.
- Não há bar ou algo do tipo, para atendê-lo, está dobrado. Você pode facilmente perder isso.
- Não é persistente. Se você reabrir o arquivo, as dobras desapareceram.
Há outro pacote, dobre este :
Dobre isso
- É uma alternativa bonita. No entanto, ele mexe com o recuo, porque o texto sob a dobra é colocado próximo à dobra ... (?).
- É capaz de selecionar visualmente a região e dobrá-la. Mas isso acaba com a situação, então a visão geral fica confusa. Não é muito útil.
- Não existe uma barra higlihgting ou algo assim, para atendê-lo é dobrado. Você pode facilmente perder isso.
Qual é o problema?
Gostaria de replicar como o Vim faz fold. Mas quando eu procurei, parece que é muito difícil fazer isso no Emacs. Então, eu me pergunto se há algo no emacs ou em sua arquitetura que dificulta a replicação disso? Quais são os limites?