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