Posso salvar dobras?


13

Hoje eu aprendi como dobrar / desdobrar no Vim; é bastante útil.

Inesperadamente, quando eu saio de um arquivo e o reinseri, as dobras que criei desaparecem (desdobram-se).

No grande projeto da nossa empresa, existem muitos blocos de código (legados) que são obsoletos, mas indispensáveis.

Eu realmente preciso dobrá-los quase permanentemente.

Existe uma maneira breve de dizer ao Vim para salvar minhas preferências de dobragem para um arquivo?


1
Não sei se isso resolverá o seu problema, mas talvez os comandos :mkviewe :loadviewpossam ajudar. Você poderia tentar adicionar estas 2 linhas dentro do seu vimrc au BufWinLeave *.c mkviewe au BufWinEnter *.c silent loadviewe adaptá-los às suas necessidades específicas. Esses são comandos automáticos que serão executados automaticamente sempre que você deixar um buffer para o primeiro e quando você inserir um buffer para o segundo, mas apenas para arquivos C. Eu os copiei da ajuda do :mkviewcomando ( :help :mkview).
Saginaw

1
De acordo com a ajuda, ele deve restaurar as dobras ao usar a dobra manual e a opção 'viewoptions'contém folds. Se você deseja que os comandos automáticos sejam executados para outros tipos de arquivos, você pode alterar os comandos automáticos. Por exemplo, se você quiser adicionar arquivos python, poderá mudar *.cpara *.c,*.py.
Saginaw

Sinto muito, eu estava errado quando disse que os comandos automáticos seriam executados sempre que você entra / sai de um buffer. O primeiro será executado depois que um buffer for exibido em uma janela, o segundo será executado antes que um buffer seja removido de uma janela.
Saginaw

Respostas:


6

Faço exatamente isso em um arquivo que me refiro muito NOTES.otle realizei o seguinte no meu .vimrc:

" Useful for my Quick Notes feature in my tmuxrc
augroup QuickNotes
  au BufWrite,VimLeave NOTES.otl mkview
  au BufRead           NOTES.otl silent loadview
augroup END

O que isso significa é que, no seu caso, você pode lidar com dobras manuais usando os comandos :mkviewe :loadview.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.