REFERÊNCIA RÁPIDA EMACS
Navegação, edição, buffers, busca, org mode, pacotes
Navegação
Movimentação do Cursor
| C-f / C-b | Avançar / recuar um caractere |
| M-f / M-b | Avançar / recuar uma palavra |
| C-n / C-p | Próxima / linha anterior |
| C-a / C-e | Início / fim da linha |
| M-a / M-e | Início / fim da sentença |
| C-v / M-v | Rolar para baixo / cima uma página |
| M-< / M-> | Início / fim do buffer |
| M-g g | Ir para número de linha |
Posicionamento de Tela
| C-l | Recentralizar tela (cicla topo/centro/base) |
| C-M-l | Reposicionar janela heuristicamente |
Edição
Kill e Yank (Recortar e Colar)
| C-k | Matar até o fim da linha |
| C-w | Matar região (recortar) |
| M-w | Copiar região |
| C-y | Yank (colar) |
| M-y | Ciclar pelo kill ring após yank |
| C-d | Excluir caractere à frente |
| M-d | Matar palavra à frente |
| M-DEL | Matar palavra para trás |
Desfazer e Transpor
| C-/ or C-_ | Desfazer |
| C-g C-/ | Refazer (desfazer o desfazimento) |
| C-t | Transpor caracteres |
| M-t | Transpor palavras |
| C-x C-t | Transpor linhas |
Seleção
| C-SPC | Definir marca (iniciar seleção) |
| C-x h | Selecionar buffer inteiro |
| M-h | Selecionar parágrafo |
| C-x C-x | Trocar ponto e marca |
Buffers e Janelas
Buffers
| C-x b | Alternar para buffer |
| C-x C-b | Listar todos os buffers |
| C-x k | Matar (fechar) buffer |
| C-x LEFT / RIGHT | Buffer anterior / próximo |
Janelas
| C-x 2 | Dividir janela horizontalmente |
| C-x 3 | Dividir janela verticalmente |
| C-x 0 | Fechar janela atual |
| C-x 1 | Fechar todas as outras janelas |
| C-x o | Alternar para outra janela |
| C-x ^ | Expandir janela verticalmente |
| C-x { | Encolher janela horizontalmente |
Frames
| C-x 5 2 | Criar novo frame |
| C-x 5 0 | Excluir frame atual |
| C-x 5 o | Alternar para outro frame |
Busca e Substituição
Busca Incremental
| C-s | Buscar para frente (incremental) |
| C-r | Buscar para trás (incremental) |
| C-s C-s | Repetir última busca para frente |
| C-M-s | Busca com regex para frente |
| C-M-r | Busca com regex para trás |
| RET | Sair da busca na posição atual |
| C-g | Cancelar busca, retornar ao início |
Substituição
| M-% | Substituição com query |
| C-M-% | Substituição com query e regex |
| y | Substituir esta ocorrência |
| n | Pular esta ocorrência |
| ! | Substituir todas as restantes |
| q | Encerrar substituição |
Arquivos
Operações de Arquivo
| C-x C-f | Encontrar (abrir) arquivo |
| C-x C-s | Salvar buffer atual |
| C-x C-w | Salvar como (escrever em novo arquivo) |
| C-x s | Salvar todos os buffers modificados |
| C-x C-r | Abrir arquivo somente leitura |
| C-x i | Inserir conteúdo do arquivo no ponto |
Dired (Editor de Diretório)
| C-x d | Abrir diretório no Dired |
| d / x | Marcar para exclusão / executar exclusões |
| R | Renomear / mover arquivo |
| C | Copiar arquivo |
| + | Criar diretório |
| g | Atualizar listagem |
Modos
Major Modes
| M-x fundamental-mode | Edição de texto simples |
| M-x text-mode | Texto com preenchimento e ortografia |
| M-x prog-mode | Base para modos de programação |
| M-x python-mode | Edição e indentação Python |
| M-x shell-mode | Shell interativo no buffer |
Minor Modes Úteis
| M-x display-line-numbers-mode | Alternar números de linha |
| M-x auto-fill-mode | Auto-quebra na coluna de preenchimento |
| M-x flyspell-mode | Verificação ortográfica em tempo real |
| M-x column-number-mode | Mostrar coluna na linha de modo |
| M-x whitespace-mode | Visualizar espaços em branco |
| M-x electric-pair-mode | Fechar automaticamente colchetes e aspas |
Básico do Org Mode
Estrutura
| * / ** / *** | Níveis de cabeçalho 1 / 2 / 3 |
| TAB | Ciclar visibilidade do cabeçalho |
| S-TAB | Ciclar visibilidade global |
| M-RET | Inserir cabeçalho no mesmo nível |
| M-LEFT / M-RIGHT | Promover / rebaixar cabeçalho |
| M-UP / M-DOWN | Mover sub-árvore para cima / baixo |
TODO e Checkboxes
| C-c C-t | Ciclar estado TODO |
| C-c C-d | Definir prazo |
| C-c C-s | Agendar item |
| C-c C-c | Alternar checkbox [ ] / [X] |
| C-c a | Abrir visualização de agenda |
Links e Exportação
| C-c C-l | Inserir / editar link |
| C-c C-o | Abrir link no ponto |
| C-c C-e | Dispatcher de exportação (HTML, PDF, etc.) |
Gerenciamento de Pacotes
package.el
| M-x list-packages | Navegar pelos pacotes disponíveis |
| i / d / x | Marcar para instalar / excluir / executar |
| U | Marcar todos que podem ser atualizados |
| M-x package-refresh-contents | Atualizar lista de pacotes |
use-package (init.el)
(use-package magit
:ensure t
:bind ("C-x g" . magit-status))
(use-package company
:ensure t
:hook (prog-mode . company-mode))
Configuração
Arquivos de Configuração Principais
| ~/.emacs.d/init.el | Arquivo de configuração principal |
| ~/.emacs.d/early-init.el | Inicialização antecipada (antes da GUI, Emacs 27+) |
| ~/.emacs.d/custom.el | Configurações escritas pelo Customize |
Configurações Comuns
(setq inhibit-startup-screen t)
(tool-bar-mode -1)
(set-face-attribute 'default nil :height 120)
(global-display-line-numbers-mode 1)
(setq make-backup-files nil)
Sistema de Ajuda
| C-h k | Descrever atalho de tecla |
| C-h f | Descrever função |
| C-h v | Descrever variável |
| C-h m | Descrever modos atuais |
| C-h t | Abrir tutorial do Emacs |
| C-h i | Abrir documentação Info |
Padrões Comuns
Edição de Retângulo
| C-x SPC | Iniciar modo de marca retangular |
| C-x r k | Matar retângulo |
| C-x r y | Yank retângulo |
| C-x r t | Substituir retângulo por string |
| C-x r o | Inserir retângulo em branco |
Macros
| C-x ( | Iniciar gravação de macro |
| C-x ) | Parar gravação de macro |
| C-x e | Executar última macro |
| C-u 10 C-x e | Executar macro 10 vezes |
| M-x name-last-kbd-macro | Nomear macro para reutilização |
Shell e Eval
| M-x shell | Abrir shell no buffer |
| M-x eshell | Shell Emacs Lisp |
| M-! | Executar comando shell |
| M-x eval-buffer | Avaliar buffer inteiro como Elisp |
| C-x C-e | Avaliar expressão Elisp antes do ponto |