[ anterior ] [ Conteúdo ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ A ] [ próximo ]


Referência Debian
Capítulo 11 - Editores


11.1 Editores populares

O Linux oferece muitas alternativas para editores de texto de console. Entre eles:

Use update-alternatives --config editor para mudar o editor padrão. Além disso, muitos programas usam as variáveis de ambiente EDITOR ou VISUAL para decidir qual editor usar. Veja Editor no MC, Seção 4.2.5.

Há também alguns editores de texto baseados no X notáveis:

Esses comandos xclient usam opções padrões como -fn a24, que tornam mais fácil a vida de pessoas mais velhas como eu :) Veja Clientes X, Seção 9.4.4.


11.2 Editores de recuperação

Há uns poucos editores que se localizam em /bin. Um desses deve ser instalado para facilitar a edição de arquivos quando /usr não estiver acessível.


11.3 Emacs e Vim


11.3.1 Dicas para o Vim

Leia o documento "VIM - main help file" pressionando <F1> ao executar o programa.

     <F1>           Ajuda
     <esc>          Volta ao modo normal
     V              Modo Visual
     i              Modo Inserção
     :              Comandos de linha de comando
     :set tw=72     Ajusta largura do texto para 72
     <F11>          Modo insere (cola)
     :r! date -R    Insere data RFC-822
     qa             Grava teclas de atalho no registrador a
     q              Interrompe a gravação de teclas de atalho
     @a             Executa teclas de atalho do registrador a
     :edit foo.txt  Edita outro arquivo carregando foo.txt
     :wnext         Grava o arquivo atual e edita o próximo arquivo

q e @ podem ser usados para registro simples de macro e execução. Por exemplo, para criar macro que insira tags de itálico HTML ao redor de uma palavra no cursor, você poderia entrar qii<i>^[ea</i>^[q (onde ^[ é a tecla ESC). Então digitar @i no começo de uma palavra adicionaria as tags <i> e </i>.

Consulte também Usando GnuPG com o Vim, Seção 14.4.2.


11.3.2 Dicas para o Emacs

     <F1>                Ajuda
     <F10>               Menu
     C-u M-! date -R     Insere data RFC-822

11.3.3 Iniciando o editor

     iniciar o editor:               emacs filename  vim filename
     iniciar em compatível vi:                       vim -C
     iniciar em não compatível vi:                   vim -N
     iniciar com padrão compilado:   emacs -q        vim -N -u NONE

11.3.4 Resumo de comandos do Editor (Emacs, Vim)

     sair:                           C-x C-c         :qa /:wq /:xa /:q!
     voltar/modo comando:            C-g             <esc>
     para trás(esquerda):            C-b             h
     para Frente(direita):           C-f             l
     próxima(abaixo):                C-n             j
     anterior(acima):                C-p             k
     início da linhA(^):             C-a             0
     fim da linha($):                C-e             $
     mÚltiplos comandos:             C-u nnn cmd     nnn cmd
     Múltiplos comandos:             M-digitkey cmd
     salvar arquivo:                 C-x C-s         :w file
     início do buffer:               M-<             1G
     fim do buffer:                  M->             G
     rola para frente 1 tela:        C-v             ^F
     rola para frente 1/2 tela:                      ^D
     rola para frente 1 linha:                       ^E
     rola para trás 1 tela:          M-v             ^B
     rola para trás 1/2 tela:                        ^U
     rola para trás 1 linha:                         ^Y
     rola a outra janela:            M-C-v
     apaga sob o cursor:             C-d             x
     apaga do cursor ao fim linha:   C-k             D
     iSearch para frente:            C-s
     isearch para trás:              C-r
     procura à frente:               C-s enter       /
     procura para tRás:              C-r enter       ?
     isearch regexp:                 M-C-s
     isearch regexp para trás:       M-C-r
     procura regexp:                 M-C-s enter     /
     procura regexp para trás:       M-C-r enter     ?
     ajuda:                          C-h C-h         :help
     ajuda Apropos:                  C-h a
     ajuda comandos teclado:         C-h b           :help [key]
     ajuda Info:                     C-h i
     ajuda Major mode:               C-h m
     ajuda Tutorial:                 C-h t           :help howto
     desfazer:                       C-_             u
     Refazer:                        C-f             ^R
     Marcar posição do cursor:       C-@             m{a-zA-Z}
     trocar marca e posição:         C-x C-x
     ir para marca arquivo atual:                    '{a-z}
     ir para marca qualquer arquivo:                 '{A-Z}
     copiar região:                  M-w             {visual}y
     recortar região:                C-w             {visual}d
     colar e manter buffer:          C-y             
     colar do buffer recortado:      M-y             p
     converte região em maiúsculas:  C-x C-u         {visual}U
     converte região em minúsculas:  C-x C-l         {visual}u
     Inserir caracter especial:      C-q octalnum/keystroke  
                                                     ^V decimal/keystroke
     substituir:                     M-x replace-string      :%s/aaa/bbb/g
     substituir regexp:              M-x replace-regexp      :%s/aaa/bbb/g
     consultar e substituir:         M-%                     :%s/aaa/bbb/gc
     consultar e substituir:         M-x query-replace
     consultar e substituir regexp:  M-x query-replace-regexp
     Abrir arquivo:                  C-x C-f         :r file
     Salvar arquivo:                 C-x C-s         :w
     Salvar todos os buffers:        C-x s           :wa
     Salvar como:                    C-x C-w file    :w file
     Mudar de buffer:                C-x b
     Listar buffers:                 C-x C-b         :buffers
     Trocar somente leitura:         C-x C-q         :set ro
     Fechar buffer indicado:         C-x k
     Dividir na vertical:            C-x 2           :split
     Dividir na horizontal:          C-x 3           :vsplit (ver. 6)
     Ir para outra janela:           C-x o           ^Wp
     Excluir esta janela:            C-x 0           :q
     Excluir outra(s) janela(s):     C-x 1           ^Wo
     Executar shell em bg:           M-x compile
     Destruir shell em bg:           M-x kill-compilation
     Executar make:                                  :make Makefile
     verificar mensagem de erro:     C-x`            :echo errmsg
     executar shell e gravar:        M-x shell       :!script -a tmp
     ...limpar BS, ...                                :!col -b <tmp >record
     ...salvar/reler registro shell: C-x C-w record  :r record
     executar shell:                 M-! sh          :sh
     executar comando                M-! cmd         :!cmd
     executar comando e inserir:     C-u M-! cmd     :r!cmd
     executar filtro:                M-| file        {visual}:w file
     executar filtro e inserir:      C-u M-| filter  {visual}:!filter
     exibir opção                                    :se[t] {option}?
     redefinir opção para padrão                     :se[t] {option}&
     redefinir opção booleana                        :se[t] no{option}
     trocar estado opção booleana                    :se[t] inv{option}
     quebrar texto na coluna 72                      :se tw=72
     não quebrar                                     :se tw=0
     autoindent                                      :se ai
     expandir tab                                    :se et
     especificar comentário (mail)                   :se comments=n:>,n:\|
     
     executar GDB                    M-x gdb                        
     descrever modo GDB              C-h m                          
     passo uma linha                 M-s
     próxima linha                   M-n
     passo uma instrução (stepi)     M-i                            
     finaliza stack frame atual      C-c C-f                        
     continuar                       M-c                            
     subir arg frames                M-u                            
     descer arg frames               M-d                            
     copiar número do ponto, inserir no final 
                                     C-x &                          
     definir break point             C-x SPC

11.3.5 Configuração do Vim

Para usar todos os recursos do Vim e destaque de sintaxe, inclua as seguintes linhas em ~/.vimrc ou /etc/vimrc:

     set nocompatible
     set nopaste
     set pastetoggle=<f11>
     syn on

Modo Paste permite evitar que o autoindent interfira com operações de cortar e colar em um terminal console. Isso faz mais que um simples ":set noai".

Veja Usando GnuPG com o Vim, Seção 14.4.2 para integração com GnuPG.


11.3.6 Ctags

apt-get install exuberant-ctags e execute ctags nos arquivos fontes. Digite :tag nome_da_função no Vim e irá para a linha onde nome_da_função começa. As tags funcionam para C, C++, Java, Python, e muitas outras linguagens.

O Emacs tem as mesmas capacidades ctags.


11.3.7 Converter uma tela com sintaxe destacada em fonte HTML

so \$VIMRUNTIME/syntax/2html.vim a partir do modo comando do Vim converterá texto destacado em texto HTML. Salve com :w arquivo.html e :q. Útil para código C, etc.


11.3.8 Dividir a tela com o vim

O vim pode editar vários arquivos em um ambiente de tela multi-dividida. Digite :help usr_08.txt para mais detalhes.

Para dividir a tela entre arquivos diferentes, digite no prompt de comando do vi:

     :split outro-arquivo
     :vsplit outro-arquivo

Ou na linha de comando:

     $ vi -o arquivo1.txt arquivo2.txt   # Divide horizontalmente
     $ vi -O arquivo1.txt arquivo2.txt   # Divide verticalmente

produzirá um vi multi-janela.

     $ vimdiff file.txt~ file.txt         # verifica mudanças recentes de file.txt
     $ vimdiff file.en.sgml file.fr.sgml  # verifica mudanças de tradução
     $ gvimdiff file.txt~ file.txt        # no X

produzirá uma agradável visão das diferenças entre um arquivo original e uma cópia de segurança. Em SGML ele combina tags, então a comparação de traduções neste modo funciona muito bem.

Movimentos especiais do cursor com comandos Ctrl-W:

     Ctrl-W +      aumentar o tamanho de uma janela
     Ctrl-W -      diminuir o tamanho de uma janela
     Ctrl-W h      ir para a janela da esquerda
     Ctrl-W j      ir para a janela abaixo
     Ctrl-W k      ir para a janela acima
     Ctrl-W l      ir para a janela da direita
     ...

Use o seguinte para controlar a rolagem da tela:

     :set scrollbind
     :set noscrollbind

[ anterior ] [ Conteúdo ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ A ] [ próximo ]


Referência Debian

CVS, Qui Jan 18 11:53:12 UTC 2007

Osamu Aoki osamu#at#debian.org
Paulo Rogério Ormenese (líder: pt-br) pormenese#at#uol.com.br
Autores, Seção A.1