Skip to content

Instantly share code, notes, and snippets.

@aalvesjr
Created January 9, 2012 03:06
Show Gist options
  • Select an option

  • Save aalvesjr/1580803 to your computer and use it in GitHub Desktop.

Select an option

Save aalvesjr/1580803 to your computer and use it in GitHub Desktop.
17Dicas_VIM (by LucasCaton)
0)Comandos basicos
ESC => sai do modo atual, volta para o normal
i => Inserção
: => modo comando
no modo normal:
x apaga
y copia
p cola
u volta
1)Repetições
. (modo:normal) => repete o ultimo comando(pode usar numeros para multiplicar)
2)Maiusculo/Minusculas
u (modo:visual) => Deixa toda string minuscula
U (modo:visual) => Deixa toda string Maiuscula
~ (modo:visual) => inverte maiusculas e minusculas
3)Teclas 'r' e 'c'
c (modo:visual) => apaga a selecao
r (modo:visual) => substitui pelo novo caractere a antiga selecao
4)Macro
q (modo:normal) + variavel => inicia a gravacao da macro, variavel = 'a' ou 'b' ...
ESC q => finaliza a gravacao da macro
@variavel => executa a macro
10variavel => executa 10 vezes a macro
5)Snipets
7min
6)Auto Complete
Dentro do arquivo
Ctrl X (modo:insercao) => mostras as opções do autocomplete
Ctrl N (apos o Ctrl X) => mostra opçoes de 'palavras' escritos anteriormente
Ctrl O (apos o Ctrl X) => mostra opçoes de acordo com o arquivo
Ctrl L (apos o Ctrl X) => mostra opcoes de 'linhas' escritas anteriormente
7)Expressoes Regulares
:%s/RegExp/Substituir/g => : entra no modo de comando, % para percorrer o arquivo todo, s para substituir, g para caso ocorra mais de uma vez na linha
dica:pode se usar a selecao em bloco do modo vizual para limitar a ação da RegEx
8)A tecla 'f', procurar
f'letra' => ex: fa (procura a ocorrencia da letra a)
pode se usar multiplicadores
7fa => procura a 7a ocorrencia da letra a na linha
9)Text Objectsa
c: (change) trocar {
i: somente esta palavra, ou, a: troca a palavra toda{
w: substiruir a palavra, ex: ciw
'( )' ou '{ }' ou [ ], qualquer coisa que delimite substitui o q tem dentro, ex: ci( ou ca]
}
}
cip: troca o paragrafo
cit: troca o conteudo dentro de tags como <p></p>
10)Telas '%','#' e '*'
%: usada sobre ( ou [ ou { mostra a tag de fechamento, } ou ] ou )
*: procura a 'proxima' ocorrencia da palavra que o cursor esta posicionado
$: procura a ocorrencia 'anterior' da palavra que o cursor esta posicionado
11)Identacao
selecionar o conteudo que vai ser identado no modo visual (Ctrl V) depois apertar =
ou = + contexto que vai ser aplicado, ex: =G aplica do cursor ao fim do documento
12)Integração com 'ctags'
Executar o comando :! ctags -R dentro do diretorio para criar o arquivo de indice 'ctags'
Ao posicionar o cursor sobre algum nome de classe ou função, Apertar Ctrl + ] para ir até onde
a classe ou função foi definida
13)Caracteres especiais
22min
14)Inserir texto no começo, meio e final de linhas
Usando selecao em bloco(modo:visual)
trabalhar com Shift A para ir ao fim da linha ou $
Shift i para ir ao começo da linha
faz a alteracao no bloco selecionado e apertar ESC
15)Ordenação
:sort => ordena todo o texto do arquivo (linhas)
:sort u => alem de ordenar exlui as repetições
:sort regex => ex: :sort /\d+ /
16)Comandos externos
:read => para ler
!comando => para executar comandos do bash
exemplos:
:read !date
17)Plugins
EasyGrep => fazer buscas da string onde esta o cursor por outros arquivos com \vv
ColorSel => escolha a cor atraves de :ColorSel e ele te traz o codigo hexadecimal, copie o codigo com y e cole no vim
Ctrl P => Ctrl P para mostrar os arquivos da pasta e vai filtrando de acordo com o q esta digitando (Command-T no mac)
Fugitive => carrega opções do git sem precisar usar o terminal exemplo :Gblame mostra todos q editaram o arquivo
Gist-Vim => com o comando :Gist ele posta o arquivo no GIST
Syntastic => verifica a sintaxe do arquivo de acordo com a linguagem
Tabular => Alinhar trechos de codigos ex: entra no modo visual, seleciona o trecho e aplica o comando :Tab/oQueVaiSerAlinhado
T Comment => Seleciona tudo que vai ser comentado pelo modo visual :gc ira comentar de acordo com a linguagem
Vim Rails => Abre arquivos do rails com o comando :Rmodel ou :Rcontroller etc, ou em outra aba com :RTview etc, :R + tab para ver as outras opções, :A para abrir o arquivo com a spec de teste, :RScontroller ... abre em split na horizontal, :RVmodel ... abre um split na vertical, :RTmigrations + tab, :Rinvert dentro de migrations inverte o comando do up, Para extrair partes de codigo para partials, selecione o trecho q vai ser extraido no modo visual execute o comando :Rextract nomeDaPartial
Ruby Runner => Command R para executar o codigo Ruby (ver como fica no Ubuntu)
@lucascaton
Copy link

😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment