Vim/Usando folders
Introdução
[editar | editar código-fonte]Folders são como dobras nas quais o vim esconde partes do texto, algo assim...
+-- 10 linhas -------------------------------------------------------------
Deste ponto em diante chamaremos os "folders" descritos no manual do vim como dobras!
Quando tiver que manipular grandes quantidades de texto tente usar dobras, isto permite uma visualização completa do texto.
Um modo de entender rapidamente como funcionam as dobras no vim seria criando um folder para as próximas 10 (dez) linhas com o comando abaixo:
zf10j
Métodos de dobras
[editar | editar código-fonte]os vim tem seis modos 'fold' são eles:
- Sintaxe syntax
- Indentação indent
- Marcas marker
- Manual
Para determinar o tipo de dobra faça
:set foldmethod=tipo
onde o tipo pode ser um dos tipos listados acima, exemplo:
:set foldmethod=marker
Outro modo para determinar o método de dobra seria colocando na última linha do seu arquivo algo assim:
vim: set fdm=marker tw=78:ts=3: ft:potwiki
Obs: deve haver um espaço entre a palavra inicial 'vim' e o começo da linha este recurso chama-se modeline (leia mais na seção apropriada)
onde "fdm" significa foldmethod, ou seja, método de dobra. Por curiosidade o tipo de arquivo seria
ft:potwiki ou ft:txt
Manipulando dobras
[editar | editar código-fonte]zo ............... abre uma dobra zR ............... abre todas as dobras do arquivo atual zc ............... fecha uma dobra zfap ............. cria uma dobra para o parágrafo 'ap' atual zd ............... apaga o folder (não o seu conteúdo) zf/casa .......... cria uma dobra até a palavra casa zf'a ............. cria uma dobra até a marca 'a' zj ............... desce 'j' até a próxima dobra zk ............... sobe 'k' até a dobra anterior zi ............... desabilita ou habilita os folders :set fdl=0 ....... nivel de folder 0 (foldlevel)
Para abrir e fechar as dobras "em modo normal" usando a barra de espaços coloque o trecho abaixo no seu arquivo de configuração do vim .vimrc - veja como editar preferências no vim
nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>
Criando folders usando o modo visual
[editar | editar código-fonte]Para iniciar a seleção visual
esc ............ vai para o modo normal shift-v ......... inicia seleção visual j ............... cada toque na letra 'j' aumenta a seleção visual em uma linha zf .............. cria o folder na seleção ativa
Criando folders para arquivos LaTeX
[editar | editar código-fonte]set foldmarker=\\begin,\\end set foldmethod=marker
"outro modo seria cirando folders para tudo que não começa com chapter :setlocal foldmethod=expr :setlocal foldexpr=getline(v:lnum)!~\"^.chapter\"