1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
|
===============================================================================
= B e m V i n d o a o V I M T u t o r - Versão 1.7 pt_BR =
===============================================================================
Vim é um poderoso editor que possui muitos comandos, tantos que seria
impossível ensinar num tutorial como este. Este tutorial é planejado para
apresentar os comandos suficientes para você ficar habilitado a usar
facilmente o Vim como um editor de textos genérico.
O tempo aproximado requerido para completar o tutorial é de 25-30 minutos,
dependendo de quanto tempo é gasto praticando os comandos.
ATENÇÃO:
Os comandos nas lições vão modificar o texto. Utilize uma cópia deste
arquivo para praticar os comandos (se você iniciou o "vimtutor", esta já
é uma cópia).
É importante lembrar que este tutorial é planejado para ensinar através da
prática. Isso significa que você precisa executar os comandos para
aprendê-los adequadamente. Se você somente ler o texto, esquecerá os
comandos!
Agora, certifique-se de que sua tecla Shift-Lock (ou Caps Lock) não esteja
ativada e pressione a tecla j o bastante para mover o cursor até que a
Lição 1.1 esteja completamente na tela.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 1.1: MOVENDO O CURSOR
** Para mover o cursor, pressione as teclas h,j,k,l conforme indicado. **
^
k Dica: A tecla h está à esquerda e move para a esquerda.
< h l > A tecla l está à direita e move para a direita.
j A tecla j se parece com uma seta para baixo.
v
1. Mova o cursor pela tela até que você se sinta confortável.
2. Segure pressionada a tecla (j) até haver repetição.
Agora você já sabe como ir para a próxima lição.
3. Usando a tecla j, mova até a lição 1.2.
NOTA: Se você está inseguro sobre o que digitou, pressione <ESC> para
colocá-lo no modo Normal. Então redigite o comando que você queria.
NOTA: As teclas de cursor devem funcionar também. Mas usando hjkl, tão logo
esteja acostumado, você poderá se mover muito mais rapidamente.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 1.2: SAINDO DO VIM
!! NOTA: Antes de executar qualquer dos passos abaixo, leia a lição inteira !!
1. Pressione <ESC> (para ter certeza de que está no modo Normal).
2. Digite :q! <ENTER>.
Isso sai do editor SEM salvar qualquer mudança que tenha sido feita.
Se quiser salvar as alterações e sair, digite :wq <ENTER>
3. Repita o procedimento que lhe trouxe a este tutorial. O procedimento pode
ter sido a digitação de: vimtutor <ENTER>.
4. Se você memorizou estes passos e está confiante, execute os passos de
1 a 3 para sair e reentrar no editor.
NOTA: :q! <ENTER> descarta qualquer mudança. Em uma próxima lição será
ensinado como salvar as mudanças feitas em um arquivo.
5. Desça o cursor até a Lição 1.3.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 1.3: EDITANDO TEXTOS - DELEÇÃO
** No modo Normal, pressione x para deletar o caractere sob o cursor. **
1. Mova o cursor para a linha abaixo marcada com --->.
2. Para corrigir os erros, mova o cursor até que ele esteja sobre o
caractere a ser deletado.
3. Pressione a tecla x para deletar o caractere indesejado.
4. Repita os passos 2 até 4 até que a sentença esteja correta.
---> A vvaca pullouu por ccimaa dda luuua.
5. Agora que a sentença está correta, vá para a Lição 1.4.
NOTA: Enquanto segue este tutorial, não tente memorizar, aprenda pelo uso.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 1.4: EDITANDO TEXTOS - INSERÇÃO
** Pressione i para inserir texto. **
1. Mova o cursor até a primeira linha abaixo marcada com --->.
2. Para fazer a primeira linha ficar igual à segunda, mova o cursor para
o primeiro caractere DEPOIS de onde o texto deverá ser inserido.
3. Pressione i e digite as adições necessárias.
4. Assim que cada erro for corrigido pressione <ESC> para retornar ao modo
Normal. Repita os passos 2 até 4 para corrigir a sentença.
---> Tem text fatado desta .
---> Tem algum texto faltando desta linha.
5. Quando se sentir confortável com a inserção de texto, mova o cursor para
a lição 1.5.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 1.5: EDITANDO TEXTO - ADICIONANDO
** Pressione A para adicionar texto. **
1. Mova o curso para a primeira linha abaixo marcada com --->.
Não importa sobre qual caractere o cursor estará na linha.
2. Pressione A e digite as adições necessárias.
3. Quando adicionar o texto, pressione <ESC> para retornar ao modo Normal.
4. Mova o cursor para a segunda linha marcada ---> e repita os passos 2 e 3
para corrigir o texto.
---> Há algum texto faltando des
Há algum texto faltando desta linha.
Há algum texto faltan
---> Há algum texto faltando aqui.
5. Quando se sentir confortável adicionando texto, mova para a lição 1.6.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 1.6: EDITANDO UM ARQUIVO
** Use :wq para salvar um arquivo e sair. **
!! NOTA: Antes de executar qualquer um dos passos abaixo,
leia esta lição completamente!!
1. Saia deste tutorial como o fez na lição 1.2: :q!
Ou, se tiver acesso a outro terminal, faça o seguinte nele.
2. No prompt do shell, digite esse comando: vim tutor <ENTER>
'vim' is é comando para iniciar o editor Vim e 'tutor' é o nome do
arquivo que você deseja editar. Use um arquivo que possa ser modificado.
3. Insira e delete texto tal como aprendeu com as lições anteriores.
4. Salve o arquivo com as mudanças e saia do Vim com: :wq <ENTER>
5. Se você tiver saído do vimtutor no passo 1, reinicie o vimtutor e vá para
o sumário seguinte.
6. Após ler os passos acima e compreendê-los, execute-os.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SUMÁRIO DA LIÇÃO 1
1. O cursor é movido usando tanto as teclas de seta quanto as teclas hjkl.
h (esquerda) j (para baixo) k (para cima) l (direita)
2. Para entrar no Vim a partir de um shell digite: vim NOMEDOARQUIVO <ENTER>
3. Para sair do Vim digite: <ESC> :q! <ENTER> para descartar as alterações.
OU digite: <ESC> :wq <ENTER> para salvar as alterações.
4. Para deletar um caractere sob o cursor no modo Normal digite: x
5. Para inserir texto na posição do cursor enquanto estiver no modo Normal
digite:
i digite o texto <ESC> inserir depois do cursor
A digite o texto <ESC> adicionar no final da linha
NOTA: Pressionando <ESC> você irá para o modo Normal ou cancelará um comando
ainda incompleto.
Agora continue com a Lição 2.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 2.1: COMANDOS DE DELEÇÃO
** Digite dw para deletar até o final de uma palavra. **
1. Pressione <ESC> para ter certeza de que está no modo Normal.
2. Mova o cursor até a linha abaixo marcada com --->.
3. Mova o cursor até o começo da palavra que precisa ser deletada.
4. Digite dw para fazer a palavra desaparecer.
NOTA: A letra d vai aparece na última linha da tela enquanto você a
digita. O Vim está lhe esperando digitar um w . Se você digitou
alguma coisa errada, pressione <ESC> e comece de novo.
---> Tem a algumas oi palavras diversão que não pertencem papel a esta sentença.
5. Repita os passos 3 ao 4 até que a sentença esteja correta e vá para a
Lição 2.2.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 2.2: MAIS COMANDOS DE DELEÇÃO
** Digite d$ para deletar até o final da linha. **
1. Pressione <ESC> para ter certeza de estar no modo Normal.
2. Mova o cursor até a linha abaixo marcada com --->.
3. Mova o cursor até o fim da linha correta (DEPOIS do primeiro .).
4. Digite d$ para deletar até o final da linha.
---> Alguém digitou o final desta linha duas vezes. desta linha duas vezes.
5. Vá para a lição 2.3 para entender o que está acontecendo.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 2.3: SOBRE OPERADORES E MOVIMENTOS
Muitos comandos que mudam texto são feitos de um operador e um movimento.
O formato para um comando deletar com o operador de deleção d tem a
seguinte forma:
d movimento
Onde:
d - é o operador deletar.
movimento - é como o operador vai operar (listado abaixo).
Uma pequena lista de teclas de movimento:
w - do cursor até o fim da palavra, incluindo o espaço.
e - do cursor até o fim da palavra, NÃO incluindo o espaço.
$ - do cursor até o fim da linha.
Portanto, digitando de irá deletar do cursor ao fim da palavra.
NOTA: Pressionando apenas a tecla de movimento enquanto em modo Normal, sem o
operador, irá mover o cursor como especificado na lista de teclas de
movimento.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 2.4: USANDO UM CONTADOR PARA UM MOVIMENTO
** Digitando um número antes de um movimento repete-o muitas vezes. **
1. Mova o cursor para o começo da linha marcada com ---> abaixo.
2. Digite 2w para mover o cursor duas palavras adiante.
3. Digite 3e para mover o cursor para o fim da terceira palavra adiante.
4. Digite 0 (zero) para mover para o início da linha.
5. Repita os passos 2 e 3 com diferentes números.
---> Esta é uma linha com algumas palavras para lhe permitir fazer movimentos.
6. Vá para a Lição 2.5.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 2.5: USANDO UM CONTADOR PARA DELETAR MAIS
** Digitando um número com um operador repete-o esse número de vezes. **
Você deve inserir um contador entre o operador de deleção e o movimento
mencionados acima para para deletar mais:
d número movimento
1. Movimente o cursor para a primeira palavra com LETRAS MAIÚSCULAS na
linha marcada com --->.
2. Digite d2w para deletar as duas palavras com LETRAS MAIÚSCULAS.
3. Repita os passos 1 e 2 com diferentes contadores para deletar as
palavras de LETRAS MAIÚSCULAS com um comando.
---> esta ABC DE linha FGHI JK LMN OP de palavras está Q RS TUV limpa.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 2.6: OPERANDO SOBRE LINHAS
** Digite dd para deletar uma linha inteira. **
Em virtude da frequência em deletar uma linha inteira, os projetistas do Vi
decidiram que seria mais simples digitar dois d's numa linha para deletá-la.
1. Mova o cursor até a segunda linha na lista a baixo.
2. Digite dd para deletar a linha.
3. Agora mova até a quarta linha.
4. Digite 2dd para deletar duas linhas.
---> 1) Rosas são vermelhas,
---> 2) Lama é divertida,
---> 3) Violetas são azuis,
---> 4) Eu tenho um carro,
---> 5) Relógios dizem as horas,
---> 6) Açúcar é doce,
---> 7) E assim é você.
Notas do tradutor: Lama (mud) em inglês pode significar fofoca, difamação.
Há rima no texto original.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 2.7: O COMANDO UNDO (DESFAZER)
** Pressione u para desfazer os últimos comandos, U restaura linha inteira.**
1. Mova o cursor para a linha abaixo marcada com ---> e posicione-o sobre o
primeiro erro.
2. Digite x para deletar o primeiro caractere indesejado.
3. Agora, digite u para desfazer o último comando executado.
4. Desta vez, corrija todos os erros na linha usando o comando x .
5. Agora, digite um U maiúsculo para retornar a linha ao seu estado original.
6. Digite u algumas vezes para desfazer o U e os comandos anteriores.
7. Digite CTRL-R (segurando a tecla CTRL enquanto digita R) algumas vezes
para refazer os comandos (desfazer os undo's).
---> Corriija os erros nnesta linha e reetorne-os com undo.
8. Esses comandos são muito úteis. Agora vá para o sumário da Lição 2.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SUMÁRIO DA LIÇÃO 2
1. Para deletar do cursor até o fim de uma palavra digite: dw
2. Para deletar do cursor até o fim de uma linha digite: d$
3. Para deletar uma linha inteira digite: dd
4. Para repetir um movimento adicione antes um número: 2w
5. O formato para um comando no modo Normal é:
operador [número] movimento
onde:
operador - é o que será feito, como d para deletar
número - é quantas vezes o comando será repetido
movimento - movimento sobre o texto que sofrerá a operação, como
w (palavra), $ (até o final da linha), etc.
5. Para desfazer um ação anterior, digite: u (minúsculo)
Para desfazer todas as modificações em uma linha digite: U (maiúsculo)
Para desfazer o que foi desfeito digite: CTRL-R
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 3.1: O COMANDO PUT (PÔR)
** Digite p para colocar a última deleção após o cursor. **
1. Mova o cursor até a primeira linha na lista abaixo.
2. Digite dd para deletar a linha e guardá-la no buffer do Vim.
3. Mova o cursor até a linha ACIMA de onde a linha deletada deve ficar.
4. No modo Normal, digite p para inserir a linha.
5. Repita os passos 2 ao 4 para pôr todas as linhas na ordem correta.
d) Você pode aprender também?
b) Violetas são azuis,
c) Inteligência se aprende,
a) Rosas são vermelhas,
Nota do tradutor: Há rima no original.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 3.2: O COMANDO REPLACE (SUBSTITUIR)
** Digite rx para substituir o caractere sob o cursor por x . **
1. Mova o cursor até a primeira linha abaixo marcada com --->.
2. Mova o cursor até que ele esteja sobre o primeiro erro.
3. Digite r e então o caractere que deveria estar lá.
4. Repita os passos 2 e 3 até que a primeira linha esteja correta.
---> Quendo este limha foi dugitada, alguem pressioniu algumas teclas erradzs!
---> Quando esta linha foi digitada, alguém pressionou algumas teclas erradas!
5. Agora vá para a Lição 3.3.
NOTA: Lembre-se que você deve aprender pelo uso, não pela memorização.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 3.3: O OPERADOR CHANGE (MUDAR)
** Para mudar toda uma palavra ou parte dela, digite cw . **
1. Mova o cursor até a primeira linha abaixo marcada com --->.
2. Posicione o cursor sobre o u em lunba.
3. Digite cw e a palavra correta (nesse caso, digite 'inha'.)
4. Pressione <ESC> e mova para o próximo caractere a ser alterado.
5. Repita os passos 3 e 4 até que a primeira sentença esteja igual à segunda.
---> Essa lunba tem pwlesmfr que ocrimmm soi alteradas cup o comando change.
---> Essa linha tem palavras que precisam ser alteradas com o comando change.
Note que cw não somente substitui a palavra, mas também lhe coloca no modo
de inserção.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 3.4: MAIS MUDANÇAS USANDO c
** O operador change é usado com os mesmos objetos que delete. **
1. O operador change trabalha da mesma maneira que o delete. O formato é:
c [número] movimento
2. Os movimentos também são os mesmos: w (palavra), $ (fim da linha), etc.
3. Mova até a primeira linha abaixo marcada com --->.
4. Mova o cursor até o primeiro erro.
5. Digite c$ para fazer o resto da linha ficar igual à segunda e pressione
<ESC>.
---> O fim desta linha precisa de ajuda para ficar igual à segunda.
---> O fim desta linha precisa ser corrigido usando o comando c$.
NOTA: Você pode usar a tecla Backspace para corrigir erros enquanto digita.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SUMÁRIO DA LIÇÃO 3
1. Para inserir um texto que já foi deletado, digite p . Isso coloca o texto
deletado APÓS o cursor (se uma linha é deletada ela será inserida na linha
abaixo do cursor).
2. Para substituir o caractere sob o cursor, digite r e então o caractere
que irá substituir o original.
3. O comando change possibilita mudar do cursor até onde o movimento for.
Ex: Digite cw para mudar do cursor até o fim de uma palavra, c$ para
mudar até o fim da linha.
4. O formato para uma operação change é:
c [número] movimento
Agora vá para a próxima lição.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 4.1: LOCALIZAÇÃO DO CURSOR E STATUS DO ARQUIVO
** Digite CTRL-G para mostrar sua localização no arquivo e seu status.
Digite G para mover para uma linha do arquivo. **
Nota: Leia esta lição inteira antes de executar qualquer um dos passos!!
1. Segure pressionada a tecla Ctrl e pressione g . Nós chamamos isso de
CTRL-G. Uma mensagem aparecerá no rodapé da página com o nome do arquivo
e a sua posição no arquivo. Lembre-se do número da linha para o Passo 3.
NOTA: A posição do cursor pode estar visível no canto direito inferior da
tela. Isso acontece quando a opção 'ruler' está ativa
(veja :help 'ruler' ).
2. Pressione G para mover para o final do arquivo.
Digite gg para mover para o início do arquivo.
3. Digite o número da linha em que você estava e então G . Isto
retornará o cursor à linha em que você estava quando pressionou CTRL-G.
4. Se você estiver confiante para fazer isto, execute os passos 1 ao 3.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 4.2: O COMANDO SEARCH (PROCURA)
** Digite / seguido por uma string para procurar pela string. **
1. No modo Normal digite o caractere / . Note que ele e o cursor aparecem
no rodapé da tela, como ocorre com o comando : .
2. Agora digite 'errroo' <ENTER>. Esta é a palavra que você quer procurar.
3. Para procurar pela mesma palavra de novo, simplesmente tecle n .
Para procurar pela mesma palavra na direção oposta, tecle N .
4. Se você quer procurar por uma string no sentido de frente para trás, use
? em vez de / .
5. Para voltar para onde estava, pressione CTRL-O (mantenha a tecla Ctrl
pressionada e pressione a tecla o). Repita para voltar outras posições.
CTRL-I segue para posições mais recentes.
---> "errroo" não é uma maneira de escrever erro; errroo é um erro.
NOTA: Quando a busca atinge o final do arquivo ela continuará do começo, a
menos que a opção 'wrapscan' esteja desativada.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 4.3: PROCURA POR CASAMENTO DE PARÊNTESES
** Digite % para achar um casamento de ),], ou } . **
1. Posicione o cursor em qualquer (, [, ou { na linha abaixo marcada com --->.
2. Agora digite o caractere % .
3. O cursor deve estar no parênteses ou colchetes que casa com o primeiro.
4. Digite % para mover o cursor de volta ao primeiro colchete ou parênteses
(por casamento).
---> Isto ( é uma linha de teste contendo ('s, ['s ] e {'s }. ))
Nota: Isso é muito útil para corrigir um programa com parênteses não-casados!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 4.4: O COMANDO SUBSTITUIR
** Digite :s/velho/novo/g para substituir 'velho' por 'novo'. **
1. Mova o cursor para a linha abaixo marcada com --->.
2. Digite :s/aa/a <ENTER> . Note que este comando somente muda a
primeira ocorrência na linha.
3. Agora digite :s/aa/a/g significando substituir globalmente na linha.
Isto muda todas as ocorrências na linha.
---> aa melhor época para ver aas flores é aa primavera.
4. Para mudar toda ocorrência de uma string entre duas linhas,
digite :#,#s/velho/novo/g onde #,# são os números das duas linhas.
Digite :%s/velho/novo/g para mudar todas as ocorrências no arquivo
inteiro.
Digite :%s/velho/novo/gc para mudar todas as ocorrência no arquivo
inteiro, com a opção de confirmar cada
substituição.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SUMÁRIO DA LIÇÃO 4
1. CTRL-G mostra a sua localização no arquivo e o status do mesmo.
G move para o final do arquivo.
número G move para esta linha com esse número.
gg move para a primeira linha.
2. Digitando / seguido por uma expressão procura À FRENTE por ela.
Digitando ? seguido por uma expressão procura pela expressão de TRÁS
PARA FRENTE.
Após uma busca, digite n para achar a próxima ocorrência na mesma direção
ou N para procurar na direção oposta.
CTRL-O leva a posições antigas e CTRL-I a posições mais recentes.
3. Digitando % enquanto o cursor está sobre um (,),[,],{, ou } localiza
o par que casa com ele.
4. Para substituir:
o primeiro 'velho' de uma linha por 'novo' digite :s/velho/novo
todos os 'velho's em uma linha por 'novo' digite :s/velho/novo/g
expressões entre dois números (#) de linhas digite :#,#s/velho/novo
todas as ocorrências no arquivo digite :%s/velho/novo/g
Para confirmar cada substituição adicione 'c' :%s/velho/novo/gc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 5.1: COMO EXECUTAR UM COMANDO EXTERNO
** Digite :! seguido por um comando externo para executar esse comando. **
1. Digite o familiar comando : para levar o cursor ao rodapé da tela. Isso
lhe permite entrar um comando.
2. Agora digite o caractere ! (ponto de exclamação). Isso lhe permite
executar qualquer comando do shell.
3. Como um exemplo digite ls seguindo o ! e então tecle <ENTER>. Isto
irá mostrar uma listagem do seu diretório, como se você estivesse no
prompt do shell. Ou use :!dir se ls não funcionar.
NOTA: É possível executar qualquer comando externo dessa maneira, inclusive
com argumentos.
NOTA: Todos os comandos : devem ser finalizados teclando-se <ENTER>
Daqui em diante não iremos mencionar isso sempre.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 5.2: MAIS SOBRE SALVAR ARQUIVOS
** Para salvar as alterações no texto, digite :w NOMEDOARQUIVO. **
1. Digite :!dir ou :!ls para ter uma listagem de seu diretório.
Você já deve saber que precisa teclar <ENTER> depois disso.
2. Escolha um nome de arquivo que ainda não exista, como TESTE.
3. Agora digite: :w TESTE (onde TESTE é o nome que você escolheu.)
4. Isto salva o arquivo inteiro (o Vim Tutor) com o nome TESTE.
Para verificar isso, digite :!ls de novo para ver seu diretório
NOTA: Se você sair do Vim e entrar de novo com o nome do arquivo TESTE,
o arquivo deve ser uma cópia exata do tutor quando você o salvou.
5. Agora remova o arquivo digitando (MS-DOS): :!del TESTE
ou (Unix): :!rm TESTE
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 5.3: SELECIONANDO O TEXTO A SER SALVO
** Para salvar parte de um arquivo, digite v movimento NOMEDOARQUIVO **
1. Mova o cursor para esta linha.
2. Pressione v e mova o cursor para o quinto item abaixo. Note que o texto
é realçado.
3. Pressione o caractere : e note que aparecerá :'<,'> no lado inferior
da tela.
4. Digite w TESTE , sendo TESTE um nome de arquivo que não existe ainda.
Você deverá ver :'<,'>w TESTE antes de pressionar <ENTER>.
5. O Vim salvará as linhas selecionadas no arquivo TESTE. Use :!dir ou
!:ls para vê-lo. Não o apague agora! Nós o usaremos na próxima lição.
NOTA: Pressionando v inicia o modo Visual de seleção. Você pode mover o
cursor pela tela para tornar a seleção maior ou menor. Pode, então, usar um
operador para executar alguma ação. Por exemplo, d deleta o texto.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 5.4: RECUPERANDO E JUNTANDO ARQUIVOS
** Para inserir o conteúdo de um arquivo, digite :r NOMEDOARQUIVO **
1. Posicione o cursor logo acima desta linha.
NOTA: Depois de executar o Passo 2 você verá a lição 5.3. Então DESÇA o
cursor para ver esta lição novamente.
2. Agora recupere o arquivo TESTE usando o comando :r TESTE onde TESTE é o
nome do arquivo.
O arquivo recuperado é colocado abaixo da linha atual do cursor.
3. Para verificar que o arquivo foi recuperado, volte com o cursor e verifique
que agora existem duas cópias da Lição 5.3, a original e a versão do
arquivo.
NOTA: Você também pode ler a saída de um comando externo. Por exemplo, :r !ls
lê a saída do comando ls e coloca o resultado abaixo do cursor.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SUMÁRIO DA LIÇÃO 5
1. :!comando executa um comando externo.
Alguns exemplos úteis são:
(MS-DOS) (UNIX)
:!dir :!ls - lista conteúdo do diretório.
:!del ARQUIVO :!rm ARQUIVO - remove ARQUIVO.
2. :w ARQUIVO salva o atual arquivo do Vim para o disco com o nome ARQUIVO.
3. v movimento :w ARQUIVO salva as linhas Visualmente selecionadas em
ARQUIVO.
4. :r ARQUIVO recupera ARQUIVO do disco e o insere dentro do arquivo atual
na posição do cursor.
5. :r !dir lê a saída do comando dir e coloca o resultado abaixo da posição
atual do cursor.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 6.1: O COMANDO OPEN (ABRIR)
** Digite o para abrir uma linha embaixo do cursor e ir para o modo de
Inserção (INSERT). **
1. Mova o cursor para a linha abaixo marcada com --->.
2. Digite o (minúsculo) para abrir uma linha ABAIXO do cursor e ir para o
modo de Inserção (INSERT).
3. Agora digite algum texto e pressione <ESC> para sair do modo de
Inserção.
---> Após teclar o o cursor é colocado na linha aberta no modo de Inserção.
4. Para abrir uma linha ACIMA do cursor, simplesmente tecle um O maiúsculo,
em vez de um o minúsculo. Tente isso na linha abaixo.
---> Abra uma linha acima desta teclando O enquanto o cursor está nesta linha.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 6.2: O COMANDO APPEND
** Digite a para inserir texto DEPOIS do cursor. **
1. Mova o cursor para o início da linha marcada com ---> .
2. Pressione e até o cursor ficar sobre o final de li .
3. Digite um a (minúsculo) para adicionar texto DEPOIS do caractere sob o
cursor.
4. Complete a palavra conforme a linha abaixo. Pressione <ESC> para sair do
modo de Inserção.
5. Use e para mover para a próxima palavra incompleta repita os passos 3
e 4.
---> Esta lin lhe permite pratic a adiç de texto a uma linha.
---> Esta linha lhe permite praticar a adição de texto a uma linha.
NOTA: a, i e A levam ao mesmo modo de Inserção, a única diferença é onde os
caracteres são inseridos.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 6.3: UMA OUTRA VERSÃO DO REPLACE (SUBSTITUIR)
** Digite um R maiúsculo para substituir mais de um caractere. **
1. Mova o cursor para a primeira linha abaixo marcada com --->. Mova o
cursor para o início do primeiro xxx .
2. Agora pressione R e digite os números que estão abaixo dele, na segunda
linha, para substituir o xxx .
3. Pressione <ESC> para sair do modo de Substituição. Note que o resto da
linha permanece inalterada.
4. Repita os passos para substituir os xxx restantes.
---> Adicionando 123 a xxx resulta em xxx.
---> Adicionando 123 a 456 resulta em 579.
NOTA: O modo de Substituição é como o modo de Inserção, mas cada caractere
digitado deleta um caractere existente.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 6.4: COPIAR E COLAR TEXTO
** Use o operador y para copiar texto e p para colá-lo. **
1. Vá para a linha marcada com ---> abaixo e posicione o cursor após "a)".
2. Inicie o modo Visual com v e mova o cursor para logo antes de
"primeiro".
3. Digite y para copiar o texto selecionado.
4. Mova o cursor para o final da próxima linha: j$
5. Digite p par pôr (colar) o texto. Então, digite: o segundo <ESC> .
6. Use o modo Visual para selecionar " item.", copie-o com y , mova para
o fina da próxima linha com j$ e ponha (cole) o texto com p .
---> a) esse é o primeiro item.
b)
NOTA: Você também pode usar y como um operador; por exemplo, yw copia uma
palavra.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 6.5: CONFIGURAR PREFERÊNCIAS
** Configurar uma preferência de modo que um search ou substitute
ignora se as letras estão em maiúsculas ou minúsculas. **
1. Procure por 'ignore' entrando: /ignore <ENTER>
Repita várias vezes teclando n .
2. Configure a opção 'ic' (Ignore case) digitando:
:set ic
3. Agora procure por 'ignore' de novo teclando: n
Repita várias vezes.
4. Configure as opções 'hlsearch' e 'incsearch':
:set hls is
5. Agora entre com o comando search de novo, e veja o que acontece:
/ignore
6. Para desabilitar a desconsideração de maiúsculas e minúsculas:
:set noic
NOTA: Para remover o realce dos termos localizados entre: :nohlsearch
NOTA: Se quiser ignorar a diferença entre maiúsculas e minúsculas em apenas
uma pesquisa, use \c no comando: /ignore\c <ENTER>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SUMÁRIO DA LIÇÃO 6
1. Digite o para abrir uma linha ABAIXO do cursor e iniciar o modo de
Inserção.
Digite O para abrir uma linha ACIMA da linha onde o cursor está.
2. Digite a para adicionar texto DEPOIS do caractere onde está o cursor.
Digite A para adicionar texto ao final da linha.
3. O comando e move o cursor para o final de uma palavra.
4. O operador y copia texto, p põe (cola) o texto copiado.
5. Digitando R entra-se no modo de Substituição até que <ESC> seja
pressionado.
6. Digitando ":set xxx" modifica-se a opção "xxx". Algumas opções são:
'ic' 'ignorecase' ignora diferença entre maiúsculas/minúsculas
'is' 'incsearch' realiza a busca enquanto se digita
'hls' 'hlsearch' realça todos os trechos localizados
Você tanto pode usar o nome curto quanto o nome longo da opção.
7. Adicione o prefixo "no" para desabilitar uma opção: :set noic
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LIÇÃO 7.1: OBTENDO AJUDA
** Usar o sistema de ajuda do próprio Vim **
O Vim possui sistema de ajuda abrangente. Para começar, tente algum
desses três:
- pressione a tecla <HELP> (se você tiver uma)
- pressione a tecla <F1> (se você tiver uma)
- digite :help <ENTER>
Leia o texto da ajuda para aprender como o sistema de ajuda funciona.
Digite CTRL-W CTRL-W para pular de uma janela para outra.
Digite :q <ENTER> para fechar a janela da ajuda.
Você pode achar ajuda sobre qualquer assunto, fornecendo um argumento para
o comando ":help". Tente isto (não esqueça de pressionar <ENTER>):
:help w
:help c_CTRL-D
:help insert-index
:help user-manual
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 7.2: CRIAR UM SCRIPT DE INICIALIZAÇÃO
** Habilitar recursos do Vim **
O Vim tem muito mais recursos do que o Vi, mas na sua maioria eles são
desabilitados por padrão. Para usar mais recursos, você tem que criar um
arquivo "vimrc".
1. Comece a editar o arquivo "vimrc". Isso depende do sistema:
:e ~/.vimrc para Unix
:e $VIM/_vimrc para MS-Windows
2. Agora, leia o conteúdo do arquivo "vimrc" de exemplo:
:r $VIM/vimrc_example.vim
3. Salve o arquivo com:
:w
Da próxima vez que o Vim for iniciado, ele irá usar realce de sintaxe. Você
pode adicionar suas configurações preferidas para esse arquivo "vimrc". Para
maiores informações, digite: :help vimrc-intro
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lição 7.3: COMPLETAÇÃO
** Completação da linha de comando com CTRL-D e <TAB> **
1. Certifique-se de que o Vim não está no modo compatível: :set nocp
2. Olhe quais arquivos existem no diretório: :!ls ou :!dir
3. Digite o início de um comando: :e
4. Pressione CTRL-D e o Vim irá mostrar a lista dos comandos iniciados
com "e".
5. Pressione <TAB> e o Vim irá completar o nome do comando para ":edit".
6. Agora, adicione um espaço e o início do nome de um arquivo existente:
:edit ARQ
7. Pressione <TAB>. O Vim irá completar o nome (se ele for único).
NOTA: A completação funciona com muitos comandos. Basta pressionar CTRL-D e
<TAB>. Isso é especialmente útil para :help .
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SUMÁRIO DA LIÇÃO 7
1. Digite :help ou pressione <F1> ou <Help> para abrir a janela de ajuda.
2. Digite :help cmd para achar a ajuda sobre cmd .
3. Digite CTRL-W CTRL-W para pular de uma janela para outra.
4. Digite :q para fechar a janela de ajuda.
5. Crie um script de inicialização vimrc para ativar automaticamente as suas
configurações preferidas.
6. Quando pressionando um comando : , pressione CTRL-D para ver as
possibilidade de completação.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Isto conclui o Vim tutor. Ele pretendeu dar uma breve apresentação do editor
Vim, somente o bastante para que você possa usar o editor com facilidade.
Ele está longe de ser completo, uma vez que o Vim possui muitos, muitos mais
comandos. O próximo passo é ler o manual: ":help user-manual".
Livro recomendado em Português sobre o Vim:
O editor de texto Vim - de Sérgio Luiz Araújo da Silva et al.
http://code.google.com/p/vimbook/
Para futura leitura e estudo, este livro é recomendado:
Vim - Vi Improved - de Steve Oualline
Editora: New Riders
Este é o primeiro livro completamente dedicado ao Vim. Especialmente útil
para iniciantes, com muitos exemplos e ilustrações.
Veja http://iccf-holland.org/click5.html
Esse livro é mais antigo e mais sobre o Vi do que sobre o Vim, mas também é
recomendado:
Learning the Vi Editor - de Linda Lamb
Editora: O'Reilly & Associates Inc.
Este é um bom livro para aprender quase tudo o que você quer fazer com o Vi.
A sexta edição também inclui informações sobre o Vim.
Este tutorial foi escrito por Michael C. Pierce e Robert K. Ware,
Colorado School of Mines, usando idéias fornecidas por Charles Smith,
Colorado State University. E-mail: bware@mines.colorado.edu.
Modificado para o Vim por Bram Moolenaar.
Versão 1.4 traduzida para o português por Marcelo Drudi Miranda, Escola
Politécnica da Universidade de São Paulo.
Revisão e atualização da tradução para a versão 1.7 por Jakson Aquino,
Universidade Federal do Ceará: E-mail: jalvesaq@gmail.com
Last Change: 2010 Jul 27
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|