Posts com Tag ‘editor’

Para este post, usou-se uma máquina com o Debian 7 (Wheezy) e o Vim 7.3.

1) Instalar o vim
# apt-get install vim

2) Vim Tutor
$ vimtutor
O Vimtutor pode ser muito útil para aqueles que estão iniciando no uso do Vim. Ele traz exemplos de como configurar o aplicativo através do arquivo .vimrc.

3) Onde encontrar os arquivos de configuração do Vim
O Vim possui um arquivo de configuração em /etc/vim/vimrc que tem impacto em todos os usuários da máquina. Ou, para cada usuário, pode existir o arquivo .vimrc com definições opcionais de configuração de tempo de execução, utilizadas quando da iniciação do Vim. Este arquivo .vimrc deve estar presente na pasta raiz do usuário.

3.1) Um exemplo de arquivo de configuração .vimrc
Encontre o arquivo exemplo de configuração vimrc_example.vim em sua instalação. Pode estar em: /usr/share/vim/vim73/vimrc_example.vim
OBS: vim 73 é devido ao fato que neste momento estar sendo utilizado a versão 7.3 do Vim.

3.2) Identificar a localização do Vim
No Vim, seu diretório home é especificado com a variável de ambiente $HOME. Em sistemas Unix, este é o próprio diretório “~” do usuário. Os comandos a seguir, executados de dentro do Vim, são úteis para ver quais diretórios o Vim está usando:
:version
:echo expand('~')
:echo $HOME
:echo $VIM
:echo $VIMRUNTIME
:echo $MYVIMRC

Se o Vim encontra o arquivo .vimrc durante a inicialização, ele irá definir a variável de ambiente MYVIMRC com o caminho completo do arquivo .vimrc. Para se ter o acesso automático ao arquivo .vimrc (estando já dentro do próprio Vim), fazer:
:e $MYVIMRC

Usando a facilidade de complementação automática de nomes, pode-se digitar “:e $M” e em seguida pressionar Tab até que o nome da variável desejada seja completada e pressionar Enter. Se deseja-se apenas ver o caminho contido na variável, digite “:echo $M” e em seguida pressionar Tab até que o nome da variável desejada seja completada e pressione Enter.

4) Executar o Vim
Abrir um terminal de comandos e utilizar uma das seguintes formas de chamada do Vim:
$ vim
$ vim nome_arquivo
$ vim nome_arquivo1 nome_arquivo2 nome_arquivoN
$ vim .

Obs: a última forma faz com que o Vim seja aberto como um navegador de arquivo. Ao navegar e selecionar o arquivo desejado, o Vim abrirá este arquivo selecionado para possibilitar sua edição.

5) Configurar o Vim
5.1) Um exemplo completo de comfiguração para o arquivo .vimrc
Abaixo um exemplo completo para um arquivo .vimrc, cujas configurações estaremos comentando ao longo deste post.

" Usar as definições do vim, não as do vi
set nocompatible
set title        " Alterar o título do terminal
set titlestring=Editor\ Vim\ Programação
set number       " Ativar a numeração das linhas
set ruler        " Mostrar, sempre, a posição atual do cursor
set tabstop=4    " Definir tab como 4 espaços
set history=100  " Definir o tamanho do histórico de comandos do vim:
syntax on        " Habilitar o destaque de sintaxe
set mat=10       " Realçar (highlight) pares de colchetes ao passar o cursor, e configura o tempo do destaque em décimos de segundos
set showmatch
" Definir esquema de cores do vim
              " hi normal   ctermfg=white  ctermbg=black
              " hi Comment ctermfg=grey ctermbg=black cterm=bold
              " hi Comment ctermfg=LightGreen ctermbg=black
              " set background=dark
colorscheme elflord
set columns=132
set wrapmargin=8      
set autoindent      " Habilitar autoidentação (ou noautoindent, para desabilitar)
set ignorecase     " Ignorar case sensitive quando de uma pesquisa
set cursorline     " Realçar (highlight) a linha corrente do cursor
set hlsearch       " Realçar os resultados das buscas

5.2) Cores
5.2.1) Suporte a realce de texto (highlighting)
A partir da versão 5 do Vim existe suporte para a sintaxe highlighting. Para isto basta fazer:
a) Considerando todos os usuários da máquina
Acessar o arquivo /etc/vim/vimrc e descomentar a linha “syntax on”
OBS: o Vim considera um comentário quando a linha é iniciada por aspas.

b) Considerando um determinado usuário
Crie o arquivo .vimrc no diretório home do usuário conforme comando exemplificado abaixo, e com o seguinte conteúdo:
$ echo "syntax on" > ~/.vimrc

5.2.2) Esquema de cores
A maneira mais simples de definir o seu esquema de cores é através da chave colorschema. Neste caso, não há necessidade de se utilizar as chaves cterm.
Veja um exemplo que pode ser colocado no arquivo .vimrc:
colorschema elflord

Os esquemas de cores disponíveis ao Vim estão em /usr/share/vim/vim73/colors/
OBS: vim 73 é devido ao fato que neste momento estar sendo utilizado a versão 7.3 do Vim.
Mas há uma série de esquemas de cores do Vim disponíveis na internet. É sempre difícil definir qual é o perfeito. As pessoas costumam usar diferentes esquemas de cores, dependendo do que elas estão fazendo.
Como exemplos, veja esquema de cores disponíveis em vim-color-gallery, em Vim Ninjas ou Vivify.

Estando dentro do Vim, tem dois comandos muito práticos:
a) para saber o esquema de cores em uso, usar o comando:
:colorscheme
b) para saber os esquemas de cores disponíveis, usar o comando:
:color <ctrl-D>
obs: após color entre um espaço.

5.2.3) Definindo as cores
Uma maneira alternativa ao esquema de cores, é definir as cores através da chave cterm.
Exemplos:
hi Normal ctermfg=grey ctermbg=black
hi Comment ctermfg=red ctermbg=white cterm=underline
hi Comment ctermfg=LightGreen ctermbg=black

Entendendo:
– quando usando um terminal colorido (cterm), defina a cor do background do terminal (ctermbg) como “black” para
o grupo ‘Normal’.
– alguns grupos possíveis: Normal, Comment, Constant, NonText, Special, Cursor.
– parâmetros para a chave cterm: underline, bold, italic, reverse, none
– parãmetros de cores para as chaves com cterm-colors:

Black
DarkBlue
DarkGreen
DarkCyan
DarkRed
DarkMagenta
Brown, DarkYellow
LightGray, LightGrey, Gray, Grey
DarkGray, DarkGrey
Blue, LightBlue
Green, LightGreen
Cyan, LightCyan
Red, LightRed
Magenta, LightMagenta
Yellow, LightYellow
White

5.3) Ativar numeração de linhas
Inserir (caso ainda não exista) ou descomentar a linha (caso a configuração esteja comentada) no arquivo de configuração:
set nu

5.4) Fundo preto
Determinar ao Vim para usar cores que ficarão bem sobre um fundo escuro. Para isto, inserir (caso ainda não exista) ou descomentar a linha (caso ainda não exista) no arquivo de configuração:
set background=dark

6) Comandos do Vim
Na internet existem diversos sitios com tutoriais para o Vim. Veja nas referências abaixo alguns destes sitios. Aqui colocaremos os comandos que entendemos mais utilizados.

O editor Vim possui alguns estados (“modos”):


Modo               Tecla     Rodapé          Descrição 
---------------------------------------------------------------------------  
de Inserção        i       -- INSERT --    Inserção de texto
Normal           <ESC>                     Comandos de manipulação de texto
Linha de comando   :       :               Comandos de manipulação arquivo 
Visual             v       -- VISUAL --    Seleção visual de texto
Reposição          R       -- REPLACE --   Inserção sobreescrevendo

a) Navegar entre modos:

i vai para modo de inserção
o vai para modo de inserção, inserindo uma nova linha
<ESC> ou Ctrl-C vai para o modo normal

b) Cancelar comandos:

u undo command

c) Deletar textos:

5dd deleta 5 linhas
d2w deleta 2 palavras
5x deleta 5 letras
dgg deleta até o início do arquivo
dG deleta até o final do arquivo

d) Navegar:

gg pula para a primeira linha
G pula para a última linha
12G pula para a linha 12

e) Pesquisar/Substituir:

/
?
*
pesquisar uma palavra para frente
pesquisar uma palavra para trás
pesquisar pela palavra que está correntemente sob o cursor
n
N
repete a pesquisa para frente
repete a pesquisa para trás
:%s/velho/novo/g troca ‘velho’ por ‘novo’ em todo o texto
:set hlsearch
:nohlsearch
realçar os resultados de uma pesquisa
retirar os realces dos resultados da busca

f)Modo Visual
Copiar texto:

v para entrar no modo visual
o enquanto movimenta o cursor para marcar o texto, a tecla “o” faz alternar entre o início e o final do bloco possibilitando modificar o começo e o final da seleção.
y após movimentar o cursor para marcar o texto, (yank) para copiar o texto
p (paste) para inserir o texto na posição corrente

Mover texto:

v para entrar no modo visual
o enquanto movimenta o cursor para marcar o texto, a tecla “o” faz alternar entre o início e o final do bloco possibilitando modificar o começo e o final da seleção.
d após movimentar o cursor para marcar o texto, (delete) para retirar o texto
p (paste) para inserir o texto na posição corrente

“Replace” de texto:

v para entrar no modo visual
o enquanto movimenta o cursor para marcar o texto, a tecla “o” faz alternar entre o início e o final do bloco possibilitando modificar o começo e o final da seleção.
r<c> após movimentar o cursor para marcar o texto, substituir o texto marcado pelo caracter digitado em seguida

g) Split windows:

vim arquivo1.txt abrir primeiro arquivo
:split arquivo2.txt abrir segundo arquivo, dividindo a janela do editor horizontalmente
:vsp arquivo3.txt abrir terceiro arquivo, dividindo a janela do editor verticalmente
:e arquivo4.txt abrir quarto arquivo sobre a janela ativa, fazendo a janela anteriormente ativa ficar invisível
<Ctrl-w>+<Ctrl-w> navegar entre as janelas dos arquivos
<Ctrl-w>+s
<Ctrl-w>+v
splitting horizontal
splitting vertical
:ball
:vertical ball
(re-)split qualquer número de janelas horizontalmente, fazendo todas elas visível
(re-)split qualquer número de janelas verticalmente, fazendo todas elas visível
:hide
:only
fazer a janela ativa ficar invisível
manter visível apenas a janela correntemente ativa
:ls
:b 2
mostrar os buffers correntes (janelas)
abrir o buffer #2 nesta janela ativa
10 <Ctrl-w>
<Ctrl-w>=
aumentar o tamanho da janela em 10 linhas
fazer as janelas terem o mesmo tamanho
<Ctrl-w>q para fechar uma janela
<Ctrl-w><seta> navegar para janela adjacente
:help opening-window help para a gestão das janelas

h) Lendo/Gravando arquivos

:1,10 w nome_arquivo salva as linhas de 1 a 10 em “nome_arquivo”
:1,10 w >> nome_arquivo adiciona as linhas de 1 a 10 em “nome_arquivo”
:r nome_arquivo insere o conteúdo de “nome_arquivo” no atual

i) Outros comandos e facilidades:

:qa sair do Vim, fechando todas as janelas
:shell
$ exit
sair momentaneamente do Vim, e iniciar um processador de comando (shell) rodando sobre o Vim
sair do shell e retornar ao Vim
:!ls executar comando shell dentro do vim. Neste exemplo, executar o comando shell ls
gv reselecionar a última seleção realizada
abbr abreviaturas para edição. Por exemplo, colocando o comando a seguir no arquivo ~/.vimrc fará com que ao se digitar “pq” o Vim automaticamente o substituirá pela palavra “porque”:
abbr pq porque
.
10.
estando no modo Normal, repetir a última ação realizada
estando no modo Normal, repetir a última ação realizada 10 vezes
:e .
:Sex
abrir o navegador de arquivos do Vim
divide a janela e abre o navegador de arquivos integrado
automaticamente habilitar JavaScript auto-complete através de comando no arquivo ~/.vimrc:
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS

Referências
1- How to control vim colors
2- vim – better colors
3- Open vimrc file
Tutoriais de comandos Vim:
4- Vim tutorial for beginners
5- Vim Básico
6- 17 dicas para o Vim
7- VIM: Comandos e Dicas que Você Não Pode Deixar de Conhecer

O editor “mcedit” é um link para o “mc” (midnight commander), o executável principal do GNU Midnight Commander. Executar o GNU Midnight Commander através deste nome faz iniciar o editor interno e abrir o arquivo especificado na linha de comando. Este editor pode editar arquivos até 64 megabytes, bem como editar arquivos binários.

A configuração padrão traz o tom azul como predominante. Mas isto pode ser alterado mudando os valores presentes no arquivo /usr/share/mc/skins/default.ini . Para alterar para uma predominância da cor verde, com cor da janela de edição sendo preta, altere as seguintes linhas:

[core]
_default_=lightgray;black

[menu]
_default_=white;green
menuhot=red;green

[buttonbar]
button=black;green

[statusbar]
_default_=black;green

[editor]
_default_=white;black
editlinestate=white;green
editbold=yellow;brightgreen

[popupmenu]
_default_=white;green
menusel=yellow;black
menutitle=yellow;cyan

Onde a ordem das cores designa: <fgcolor>,<bgcolor>

Referências:

Midnight Commander colors and themes

Tutorial editor vi

Publicado: 30/09/2011 em Linux, Programação
Tags:, , ,

O editor “vi”, sigla para “Visual Interface”, fora criado no começo da década de 80, e ainda é nos dias atuais um dos editores de textos mais utilizados no mundo Unix.  O vi possui vários modos, ou seja, estados em que ele se encontra. São eles: modo de inserção, comandos, linha de comando, visual, busca e reposição. Abordaremos os dois principais, o de inserção e de comandos.

1) Para executar o vi:
– ao executar o vim, ele inicia diretamente em modo de comando.
$ vi => Abre o vi vazio, sem nenhum arquivo e exibe a tela de apresentação.
$ vi arquivo => Abre o arquivo de nome “arquivo”.
$ vi arquivo + => Abre o arquivo de nome “arquivo”, com o cursor no final do mesmo.
$ vi arquivo +5 => Abre o arquivo de nome “arquivo”, com o cursor no início da linha 5.
$ vi arquivo +/squeeze => Abre o arquivo de nome “arquivo”, com o cursor no início da primeira linha que ocorre a palavra “squeeze”.

2) Para ter o help:
tecle <F1>

3) Inserindo texto:
– para começar a escrever, estando em modo de comando, pressione “i” em seu teclado. O vi entra em modo de inserção. Edite normalmente.
A => Insere o texto no fim da linha onde se encontra o cursor
o => Adiciona uma linha vazia abaixo da linha corrente, e entra no modo de inserção.
O => Adiciona uma linha vazia acima da linha corrente, e entra no modo de inserção.

4) Salvando o arquivo editado e saindo do vi:
– primeiro saia do modo de inserção através da tecla <ESC>, e use um dos seguintes comandos:
:w => Salva o arquivo que está sendo editado no momento (mas não sai do vi);
:q => Sai sem salvar.
:wq => Salva e sai.
: x => Salva e sai.
ZZ => Idem.
:w! => Salva forçado.
:q! => Sai forçado, mas não salva.
:wq! => Salva e sai forçado.

5) Apagando o texto
– <Delete> apagar caracteres da linha atual do cursor
– <x>  apagar o caractere onde o cursor estiver
– <dw> remover até o final de uma palavra
– <D>  apagar a linha a partir da posição do cursor até seu final
– <dd> remover a linha atual do cursor

6) Copiar e Colar
– <yy>  copiar a linha onde o cursor se encontra
– <5yy> copiar as próximas 5 linhas a partir da posição atual do cursor
– <p>   colar o que foi copiado na linha abaixo do cursor atual
– para inserir um texto da área de transferência externa ao “vi”, entrar no modo inserção e executar <ctrl><shift><v>
7) Desfazendo ações:
– <u>, para desfazer o último comando
– <ctrl><u>, para desfazer sucessivamente os últimos comandos

8 ) Subcomandos para movimentação pelo texto:

H => Move o cursor para a primeira linha da tela.
M => Move o cursor para o meio da tela.
L => Move o cursor para a última linha da tela.
w => Move o cursor para o início da próxima palavra (não ignorando a pontuação).
W => Move o cursor para o início da próxima palavra (ignorando a pontuação).
b => Move o cursor para o início da palavra anterior (não ignorando a pontuação).
B => Move o cursor para o início da palavra anterior (ignorando a pontuação).
0 (zero) => Move o cursor para o início da linha corrente.
$ => Move o cursor para o fim da linha corrente.
G => Move o cursor para a última linha do arquivo.
Ctrl + f => Passa para a tela seguinte.
Ctrl + b => Passa para a tela anterior.

Links:
Editor vi