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