Por que ir Além do Básico?
Embora muitos iniciantes dominem comandos simples como i
, :wq
(Vim) ou Ctrl+O
, Ctrl+X
(Nano), há diversas funcionalidades que aumentam produtividade e conforto ao editar textos e códigos. Nesta aula, você aprenderá como transformar seu editor numa ferramenta verdadeiramente poderosa.
2. Vim: Recursos Avançados
2.1. Comandos Pouco Conhecidos
- Visual Block Mode
- Ative com
Ctrl+v
. Permite selecionar colunas retangulares. - Exemplo: inserir
//
em várias linhas:
- Ative com
Ctrl+v (seleciona colunas)
I// <Esc>
- Buscar e Substituir Avançado
:%s/\v(antigo1|antigo2)/novo/gc
\v
ativa sintaxe “very magic”, facilitando regex.
- Registro de Texto (Registers)
- Copiar para registro
a
:"ayy
(yank linha) - Colar do registro
a
:"ap
- Copiar para registro
2.2. Macros
Macros permitem gravar sequências de comandos e reaplicá-las.
- Gravar Macro
qa " inicia gravação no registro 'a'
<comandos que deseja gravar>
q " encerra gravação
- Executar Macro
- Uma vez:
@a
- Várias vezes:
10@a
(repete 10 vezes)
- Uma vez:
Exercício
Abra um arquivo texto com várias linhas sem indentação e grave um macro para:
- Entrar no início da linha
- Inserir quatro espaços
- Sair do modo de inserção
- Ir para a próxima linha
Aplique o macro em todo o arquivo.
2.3. Personalizações no ~/.vimrc
- Linha de número
set number
Realce de busca incrementa
set incsearch
set hlsearch
Complemento de comandos com menu
set wildmenu
set wildmode=longest:full,full
Mapeamentos úteis
" Salvar rápido com Ctrl+S
nnoremap <C-s> :w<CR>
inoremap <C-s> <Esc>:w<CR>i
3. Nano: Dicas e Customizações
3.1. Comandos Pouco Ensinados
- Ir para linha/coluna específica
Ctrl+_
e digitelinha,coluna
- Pesquisar com regex
- Ative no nanorc:
set regexp
- Em execução:
Ctrl+W
→Alt+R
- Ative no nanorc:
3.2. Macros no Nano
Embora Nano não tenha macros nativas, podemos usar scripts de atalho via .nanorc
:
bind ^T execute "cut -d',' -f1-3" main
bind ^Y execute "sort" main
- Aqui,
Ctrl+T
filtra colunas eCtrl+Y
ordena o texto.
3.3. Personalizações no ~/.nanorc
- Realce de sintaxe (exemplo para Python
include "/usr/share/nano/python.nanorc"
Mostrar números de linha
set linenumbers
Autobalance ISA (auto-indentação)
set autoindent
Marcadores de colunas
set constantshow
set smarthome
4. Exercícios Práticos
- Vim
- Crie um macro que troca todas as ocorrências de “foo” por “bar” em cada linha, apenas se a linha contiver “baz”.
- Nano
- Configure seu
~/.nanorc
para realçar sintaxe de Shell scripts e habilitar regex. Teste buscando padrões como^#[[:space:]]
.
- Configure seu
5. Conclusão
Explorar além dos comandos básicos de Vim e Nano aumenta imensamente sua produtividade. As dicas de macros e personalização vistas aqui são apenas o começo: personalize seu workflow e continue descobrindo novos atalhos!