Abertura e Fechamento de Arquivos vim vim vim vim vim vim vim vim vim arquivo.txt ou vim arq1.txt arq2.txt ou vim *.txt +10 arquivo.txt – abre arquivo e posiciona cursor no início da linha 10; -R arquivo.txt – abre arquivo somente como leitura; +/achei arquivo.txt – abre arquivo e busca por “achei”; “+set bg=dark” arquivo.txt – abre arquivo e seta background como dark; -d arq1.txt arq2.txt – abre arquivos “arq1.txt” e “arq2.txt” em diff mode (vimdiff); -n arquivo.txt – não utilizar arquivo de swap = não será possível recuperar o arquivo em caso de falhas; -o2 arq1.txt arq2.txt – abre os dois arquivos em janelas separadas horizontalmente; -O2 arq1.txt arq2.txt – abre os dois arquivos em janelas separadas verticalmente (lado a lado); Assim que o arquivo se abre, você estará automaticamente em modo de comando, então: i I a A o O ESC Entra no modo inserção antes do caractere atual; Entra no modo inserção no início da linha; :q Fecha o arquivo sem salvar; Fecha o arquivo sem salvar mesmo que tenha sido alterado; :w Salva o arquivo; :w! Tenta forçar o salvamento do arquivo; :wq Salva e fecha o arquivo; :x Salva e fecha o arquivo; :x! Tenta forçar o salvamento e fechamento do arquivo; :w arq.txt Salva o arquivo com o nome “arq.txt”; :q! Entra no modo inserção após o caractere atual; Entra no modo inserção no final da linha; Entra no modo inserção uma linha abaixo; Entra no modo inserção uma linha acima; Sai do modo inserção e volta para modo comando; OBS: Sempre que você ver o “:” no início da linha, significa que deve utilizar isto no modo comando, ou seja, tecle ESC. Manipulação de Texto Em modo de comando... dd Apaga a linha atual; yy Copia a linha atual; x 5x u Apaga uma letra; Apaga 5 letras; Desfaz a última alteração; ctrl-r Refaz a última alteração; D d0 dw d3b df. d) Apaga Apaga Apaga Apaga Apaga Apaga até o final da linha; até o início da linha; a palavra; as 3 palavras anteriores; até o próximo “.”; até o final da frase; d( Apaga até o início da frase; rX Substitui o caractere atual por X; p Cola a última cópia ou deleção na próxima linha; P Cola a última cópia ou deleção na linha anterior; 5dd Apaga 5 linhas a partir do cursor; 5yy Copia 5 linhas a partir do cursor; Apaga todas as linhas entre o cursor e o final do dG arquivo; Movimento, Busca e Substituição Em modo de comando... :hide Fecha a janela corrente; :only Fecha todas as janelas, exceto a janela atual; Outros Em modo de comando... gg Vai para a primeira linha do arquivo; G Vai para a última linha do arquivo; 10G Pula para a linha 10 do arquivo; /palavra ?palavra n :10 Pula para a linha 10 do arquivo; N w Pula para a próxima palavra; :s/banana/laranja/ b Pula para a palavra anterior; :5,17s/banana/laranja/ { Pula para o parágrafo anterior; } Pula para o próximo parágrafo; :%s/banana/laranja/g ( Pula para a frase anterior; :%s/banana/laranja/gi ) Pula para a próxima frase; :%s/banana/laranja/gic $ 0 Pula para o final da linha; Pula para o início da linha; Traz o conteúdo da linha de baixo para onde está o cursor; J Apaga todas as linhas entre o cursor e o início do arquivo; Entra em modo de seleção de múltiplas linhas + V (dd, yy ou comando); Entra em modo de seleção de colunas + (dd, yy ctrl+v ou comando); VU Transforma os caracteres da linha em maiúsculas; Vu Transforma os caracteres da linha em minúsculas; Transforma os caracteres da palavra em vEU maiúsculas; ggguG Transforma todo o texto em minúsculas; :!cmd Executa um comando no shell; :!bash Abre um shell, ctrl+d volta para o vim; :r!cmd Cola o resultado do comando dentro do arquivo; :r arq.txt Insere o conteúdo de arq.txt; :split arq.txt Abre outra janela com o conteúdo do arquivo; Abre outra janela com o conteúdo do arquivo lado :vsplit arq.txt a lado; ctrl-ww Alterna entre janelas; Coloca o cursor na janela de cima|baixo|direita| ctrl-w “seta” esquerda; ctrl-w_ Maximiza a janela corrente; ctrl-w= Deixa todas as janelas com o mesmo tamanho; 5-ctrl-w+ Adiciona 5 linhas ao tamanho da janela; dgg :%s/banana/laranja/ :%s/^/laranja/ :%s/$/laranja/ Busca “palavra” dentro do texto (para baixo); Busca “palavra” dentro do texto (para cima); Busca a próxima “palavra” no fluxo do texto; Busca a próxima “palavra” no fluxo contrário do texto; Substitui a primeira ocorrência da palavra “banana” na linha atual por “laranja”; Substitui a primeira ocorrência da palavra “banana” entre as linhas 5 e 17 por “laranja”; Substitui a primeira ocorrência da palavra “banana” em todas as linhas por “laranja”; Substitui todas as ocorrências da palavra “banana” em todas as linhas por “laranja”; O mesmo que o anterior, porém case insensitive; O mesmo que o anterior, porém pede confirmação para cada alteração; Substitui o início de cada linha por “laranja”; Substitui o final de cada linha por “laranja”; :g/palavra/d Apaga todas as linhas que contêm “palavra”; :v/palavra/d Apaga todas as linhas que não contêm “palavra”; VIM é um editor de texto livre para *Unix. Abre o gerenciador de arquivos integrado com o conteúdo do diretório atual; Abre o gerenciador de arquivos integrado :set tabstop=8 Seta o tabstop para 8 caracteres; :e / com o conteúdo do diretório “/”; Divide a janela e abre o gerenciador de :set paste Seta o vim para colar um texto; :Sex arquivos integrado; Faz duas ou mais janelas rolarem juntas :set list Mostrar caracteres especiais; :windo set scrollbind (muito útil para comparar arquivos); Habilita o modo diff em duas ou mais :syntax off Desliga o syntax highlight; :windo :diffthis janelas; :set ignorecase Torna as pesquisas ignorecase; :1,15 w arq.txt Salva as linhas de 1 a 15 em "arq.txt"; :set number Mostra o número de cada linha; :1,18 w >> arq.txt Adiciona as linhas de 1 a 18 em "arq.txt"; Insere o conteúdo de "arq.txt" a partir da :set hlsearch Highlight do último termo pesquisado; :18r arq.txt linha 18; Basta adicionar o “no” no início de cada Define o tamanho da indentação em 4 :set nohlsearch :set shiftwidth=4 comando para desabilitar; espaços; Força a utilizar a marcação de syntax do :set autoindent Liga a indentação automática; :set syntax=perl perl; :set smartindent Liga a indentação inteligente; >> Indenta; << Deindenta; :X Pedirá uma senha para criptografar o arquivo; :e . http://nerdspace.com.br | https://facebook.com/mynerdspace