forked from aniani/vim
		
	
		
			
	
	
		
			216 lines
		
	
	
		
			7.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			216 lines
		
	
	
		
			7.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|   | =============================================================================== | |||
|  | =     B e n v i d o   a o   t u t o r   d o   V I M      -    Versi<73>n 1.7     = | |||
|  | =============================================================================== | |||
|  | =                        C A P <20> T U L O   D O U S                            = | |||
|  | =============================================================================== | |||
|  | 
 | |||
|  |      Hic Sunt Dracones: se este <20> o s<>a primeira exposici<63>n ao vim, e | |||
|  |      prefire iniciarse no cap<61>tulo introducturio, pode sa<73>r premendo | |||
|  |      :q <ENTER> . | |||
|  | 
 | |||
|  |      O tempo aproximado requerido para completar este cap<61>tulo <20> de  | |||
|  |      8-10 minutos, dependendo de canto tempo use na experimentaci<63>n. | |||
|  | 
 | |||
|  | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |||
|  | 			Lecci<63>n 2.1.1: OS REXISTROS CON NOME  | |||
|  | 
 | |||
|  | 
 | |||
|  |   ** Almacene d<>as palabras copiadas de xeito consecutivo, e logo p<>gueas. **  | |||
|  | 
 | |||
|  |   1. Mova o cursor ata a li<6C>a inferior sinalada con --->. | |||
|  |   | |||
|  |   2. Navegue ata calquera car<61>cter da palabra 'Xo<58>n' e escriba  "ayiw . | |||
|  | 
 | |||
|  | NEM<EFBFBD>NICO:  | |||
|  |      dentro do rexistro(") | |||
|  |      chamado (a)  | |||
|  |      pega (y)ank  | |||
|  |      o interior (i)nner  | |||
|  |      da palabra (w)ord | |||
|  | 
 | |||
|  |   3. Navegue cara a adiante ata a palabra 'galetas'  | |||
|  |      (  fl  ou  4fe  ou  $b  ou  /gal <ENTER> ) e teclee  "byiw . | |||
|  | 
 | |||
|  |   4. Navegue ata calquera car<61>cter da palabra 'Ux<55>o' e teclee  | |||
|  |      ciw <C-r>a<ESC> | |||
|  | 
 | |||
|  | NEM<EFBFBD>NICO: | |||
|  |      cambia (c)hange | |||
|  |      o interior (i)nner | |||
|  |      da palabra (w)ord  | |||
|  |      co <contido do rexistro (r)egister> | |||
|  |      chamado (a) | |||
|  | 
 | |||
|  |   5. Navegue ata calquera punto da palabra 'tartas' e teclee  | |||
|  |      ciw<C-r>b<ESC> | |||
|  | 
 | |||
|  | --->  a) De eiqu<71> en adiante, Xo<58>n ficar<61> encarregado das raci<63>ns de galetas. | |||
|  |       b) Xa que logo, Ux<55>o somentes ter<65> poderes no que respecta <20>s tartas. | |||
|  | 
 | |||
|  | NOTA: O borrado tam<61>n funciona nos rexistros, <20> dicir:  | |||
|  |       "sdiw  borrar<61> a palabra baixo o cursor e ficar<61>a no rexistro s.  | |||
|  | 
 | |||
|  | REFERENCIAS:  Rexistros            :h registers | |||
|  |               Rexistros con come:  :h quotea | |||
|  |               Movemento            :h motion.txt<enter> /inner<enter> | |||
|  |               CTRL-R               :h insert<enter> /CTRL-R<enter> | |||
|  |   | |||
|  | 
 | |||
|  | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |||
|  | 		     Lecci<63>n 2.1.2: O REXISTRO DE EXPRESI<53>N | |||
|  | 
 | |||
|  | 
 | |||
|  |  ** Insira o resultado dos c<>culos sobre a marcha. **  | |||
|  | 
 | |||
|  |   1. Mova o cursor ata a li<6C>a sinalada con --->. | |||
|  | 
 | |||
|  |   2. Navegue ata calquera car<61>cter do n<>mero que aparece na li<6C>a.  | |||
|  | 
 | |||
|  |   3. Teclee  ciw<C-r>=60*60*24<ENTER> . | |||
|  | 
 | |||
|  |   4. Na seguinte li<6C>a, entre no modo Inserir e engada a data de hoxe con:  | |||
|  |      <C-r>=system('date')<ENTER> | |||
|  | 
 | |||
|  | NOTA: T<>dalas chamadas a sistema son dependentes do sistema operativo. | |||
|  |       Por exemplo, en Windows pode usar: | |||
|  |       system('date /t')  ou  :r!date /t | |||
|  | 
 | |||
|  | ---> Esquec<65>n o n<>mero exacto de segundos que ten un d<>a; son 84600? | |||
|  | ---> A data de hoxe <20>:  | |||
|  | 
 | |||
|  | NOTA: O mesmo p<>dese obter con  :pu=system('date') | |||
|  |       ou, premendo menos teclas, con  :r!date . | |||
|  | 
 | |||
|  | REFERENCIAS:  Rexistro de experesi<73>n    :h quote= | |||
|  | 
 | |||
|  | 
 | |||
|  | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |||
|  | 		      Lecci<63>n 2.1.3: OS REXISTROS NUMERADOS | |||
|  | 
 | |||
|  | 
 | |||
|  |   ** Prema  yy  e mais  dd  para ve-lo seu efecto nos rexistros. ** | |||
|  | 
 | |||
|  |   1. Mova o cursor ata a li<6C>a sinalada con --->. | |||
|  | 
 | |||
|  |   2. Copie a li<6C>a 0, e logo inspeccione os rexitros con  :reg<enter> . | |||
|  | 
 | |||
|  |   3. Borre a li<6C>a 0 con "cdd, e logo inspeccione os rexistros. | |||
|  |      (Onde espera que estea o contido da li<6C>a 0?) | |||
|  | 
 | |||
|  |   4. Contin<69>e borrando cada li<6C>a sucesivamente, inspeccionando os rexistros | |||
|  |      sobre a marcha. | |||
|  | 
 | |||
|  | NOTA: Deber<65>a decatarse de que as li<6C>as borradas m<>is antigas m<>vense cara a | |||
|  |       embaixo na lista, consonte se engaden as novas li<6C>as borradas.  | |||
|  | 
 | |||
|  |   5. Agora, po<70>a (p) os seguintes rexistros en orde: c, 7, 4, 8, 2. | |||
|  |      Por exemplo, usando  "7p . | |||
|  | 
 | |||
|  | ---> 0. Esta | |||
|  |      9. cambalear | |||
|  |      8. mensaxe  | |||
|  |      7. <20> | |||
|  |      6. en | |||
|  |      5. eixo | |||
|  |      4. unha | |||
|  |      3. guerra | |||
|  |      2. secreta. | |||
|  |      1. tributo | |||
|  | 
 | |||
|  | NOTA: O borrado de li<6C>as enteiras (dd) permanece m<>is tempo nos rexistros  | |||
|  |       numerados c<> copiado de li<6C>as enteiras ou de texto m<>is pequeno.    | |||
|  | 
 | |||
|  | REFERENCIAS:  Rexistros numerados    :h quote00 | |||
|  | 
 | |||
|  | 
 | |||
|  | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |||
|  | 		      Lecci<63>n 2.1.4: A BELEZA DAS MARCAS | |||
|  | 
 | |||
|  | 
 | |||
|  |   ** Evitando conta-las li<6C>as de c<>digo ** | |||
|  | 
 | |||
|  | NOTA: Un problema frecuente que acontece cando se programa <20> o desprazamento | |||
|  |       entre pedazos de c<>digo. A seguinte t<>cnica axuda a evita-lo c<>lculo | |||
|  |       de n<>meros de li<6C>a asociados a operacions coma  "a147d  ou | |||
|  |       :945,1091d a  ou, incluso peor, usando primeiro | |||
|  |       <C-r>=1091-945<ENTER> . | |||
|  | 
 | |||
|  |   1. Mova o cursor ata a li<6C>a sinalada con --->. | |||
|  | 
 | |||
|  |   2. Vaia <20> primeira li<6C>a da funci<63>n e m<>rquea con  ma . | |||
|  | 
 | |||
|  | NOTA: A posici<63>n exacta na li<6C>a NON <20> importante! | |||
|  | 
 | |||
|  |   3. Navegue ata a fin da li<6C>a, e deseguido ata a fin do bloque de c<>digo | |||
|  |      con  $% . | |||
|  | 
 | |||
|  |   4. Borre o bloque e p<><70>ao no rexistro 'a' con  "ad'a . | |||
|  | 
 | |||
|  | NEM<EFBFBD>NICO:  | |||
|  |      Dentro do rexistro(") | |||
|  |      con nome de rexistro (a)  | |||
|  |      pon o borrado (d)eletion | |||
|  |      dende o cursor ata a li<6C>a que cont<6E>n a marca(') | |||
|  |      de nome de marca (a) | |||
|  | 
 | |||
|  |   5. Pegue o bloque entre BBB e CCC con  "ap . | |||
|  | 
 | |||
|  | NOTA: Practique esta operaci<63>n m<>ltiples veces, | |||
|  |       ata chegar a facelo fluidamente:  ma$%"ad'a | |||
|  | 
 | |||
|  | ---> AAA | |||
|  |      function itGotRealBigRealFast() { | |||
|  |        if ( somethingIsTrue ) { | |||
|  |          doIt() | |||
|  |        } | |||
|  |        // the taxonomy of our function has changed and it | |||
|  |        // no longer makes alphabetical sense in its current position | |||
|  | 
 | |||
|  |        // imagine hundreds of lines of code | |||
|  | 
 | |||
|  |        // naively you could navigate to the start and end and record or | |||
|  |        // remember each line number | |||
|  |      } | |||
|  |      BBB | |||
|  |      CCC | |||
|  | 
 | |||
|  | NOTA: As marcas e mailos rexistros non comparten un espazo com<6F>n de nomes,  | |||
|  |       de xeito que un rexistro 'a' <20> completamente independente dunha | |||
|  |       marca 'a'. En troques, isto non acontece entre os rexistros | |||
|  |       e mailas macros. | |||
|  | 
 | |||
|  | REFERENCIAS:  Marcas                :h marks | |||
|  |               Movemento de marcas   :h mark-motions  (diferencia entre ' e  `) | |||
|  | 
 | |||
|  | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |||
|  | 			       Lecci<63>n 2.1 RESUMO | |||
|  | 
 | |||
|  |   1. Gardar texto (por medio de copiar ou borrar), e recuperalo (pegar) dende | |||
|  |      un total de 26 rexistros (a-z). | |||
|  |   2. Pegar unha palbra enteira dende calquer sitio dentro dunha palara:  yiw | |||
|  |   3. Cambiar unha palabra enteira dende calquer punto de palabra:        ciw | |||
|  |   4. Inserir texto directamente dende os rexistros en modo Inserir:   (C-r)a | |||
|  |   5. Inseri-lo resultado de operaci<63>ns aritm<74>ticas simples no modo | |||
|  |      Inserir:  (C-r)=60*60<ENTER> | |||
|  |   6. Inseri-los resultados de chamadas ao sistema no modo Inserir:  | |||
|  |      (C-r)=system('ls -1') | |||
|  |   7. Inspecciona-los rexistros con  :reg . | |||
|  |   8. Aprende-lo destino final do borrado de li<6C>as enteiras (dd) nos | |||
|  |      rexistros numerados, <20> dicir, descendendo dende o reistro 1 ao 9.  | |||
|  |      Decatarse de que o borrado de li<6C>as enteiras pres<65>rvase nos rexistros | |||
|  |      numerados m<>is tempo que calquera outra operaci<63>n.    | |||
|  |   9. Aprende-lo destino final de t<>dalas copias feitas nos rexistros  | |||
|  |      numerados e c<>mo son de ef<65>meros.  | |||
|  |  10. Situar marcas dende o modo de comandos  m[a-zA-Z0-9] . | |||
|  |  11. Moverse a una li<6C>a cunha marca con  ' . | |||
|  | 
 | |||
|  | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |||
|  |   Isto concl<63>e o cap<61>tulo dows do Vim Tutor. Este <20> traballo en progreso.   | |||
|  |   Este cap<61>tulo foi escrito por Paul D. Parker. | |||
|  | 
 | |||
|  | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |||
|  |   Traducido do ingl<67>s ao galego por Fernando Vilari<72>o. | |||
|  |   Correo electr<74>nico: fernando@cvc.uab.es. | |||
|  | 
 | |||
|  | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |