File: tutor2.gl

package info (click to toggle)
vim 2%3A9.1.2103-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 93,456 kB
  • sloc: ansic: 433,730; cpp: 6,399; makefile: 4,597; sh: 2,397; java: 2,312; xml: 2,099; python: 1,595; perl: 1,419; awk: 730; lisp: 501; cs: 458; objc: 369; sed: 8; csh: 6; haskell: 1
file content (215 lines) | stat: -rw-r--r-- 7,706 bytes parent folder | download
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
===============================================================================
=     B e n v i d o   a o   t u t o r   d o   V I M      -    Versión 1.7     =
===============================================================================
=                        C A P Í T U L O   D O U S                            =
===============================================================================

     Hic Sunt Dracones: se este é o súa primeira exposición ao vim, e
     prefire iniciarse no capítulo introducturio, pode saír premendo
     :q <ENTER> .

     O tempo aproximado requerido para completar este capítulo é de 
     8-10 minutos, dependendo de canto tempo use na experimentación.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
			Lecció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ña inferior sinalada con --->.
 
  2. Navegue ata calquera carácter da palabra 'Xoán' e escriba  "ayiw .

NEMÓ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ácter da palabra 'Uxío' e teclee 
     ciw <C-r>a<ESC>

NEMÓ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í en adiante, Xoán ficará encarregado das racións de galetas.
      b) Xa que logo, Uxío somentes terá poderes no que respecta ás tartas.

NOTA: O borrado tamén funciona nos rexistros, é dicir: 
      "sdiw  borrará a palabra baixo o cursor e ficará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ón 2.1.2: O REXISTRO DE EXPRESIÓN


 ** Insira o resultado dos cáculos sobre a marcha. ** 

  1. Mova o cursor ata a liña sinalada con --->.

  2. Navegue ata calquera carácter do número que aparece na liña. 

  3. Teclee  ciw<C-r>=60*60*24<ENTER> .

  4. Na seguinte liñ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ín o número exacto de segundos que ten un día; son 84600?
---> A data de hoxe é: 

NOTA: O mesmo pódese obter con  :pu=system('date')
      ou, premendo menos teclas, con  :r!date .

REFERENCIAS:  Rexistro de experesión    :h quote=


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		      Lecció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ña sinalada con --->.

  2. Copie a liña 0, e logo inspeccione os rexitros con  :reg<enter> .

  3. Borre a liña 0 con "cdd, e logo inspeccione os rexistros.
     (Onde espera que estea o contido da liña 0?)

  4. Continúe borrando cada liña sucesivamente, inspeccionando os rexistros
     sobre a marcha.

NOTA: Debería decatarse de que as liñas borradas máis antigas móvense cara a
      embaixo na lista, consonte se engaden as novas liñas borradas. 

  5. Agora, poña (p) os seguintes rexistros en orde: c, 7, 4, 8, 2.
     Por exemplo, usando  "7p .

---> 0. Esta
     9. cambalear
     8. mensaxe 
     7. é
     6. en
     5. eixo
     4. unha
     3. guerra
     2. secreta.
     1. tributo

NOTA: O borrado de liñas enteiras (dd) permanece máis tempo nos rexistros 
      numerados có copiado de liñas enteiras ou de texto máis pequeno.   

REFERENCIAS:  Rexistros numerados    :h quote00


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
		      Lección 2.1.4: A BELEZA DAS MARCAS


  ** Evitando conta-las liñas de código **

NOTA: Un problema frecuente que acontece cando se programa é o desprazamento
      entre pedazos de código. A seguinte técnica axuda a evita-lo cálculo
      de números de liñ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ña sinalada con --->.

  2. Vaia á primeira liña da función e márquea con  ma .

NOTA: A posición exacta na liña NON é importante!

  3. Navegue ata a fin da liña, e deseguido ata a fin do bloque de código
     con  $% .

  4. Borre o bloque e póñao no rexistro 'a' con  "ad'a .

NEMÓNICO: 
     Dentro do rexistro(")
     con nome de rexistro (a) 
     pon o borrado (d)eletion
     dende o cursor ata a liña que contén a marca(')
     de nome de marca (a)

  5. Pegue o bloque entre BBB e CCC con  "ap .

NOTA: Practique esta operació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ún de nomes, 
      de xeito que un rexistro 'a' é 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ó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óns aritmé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ñas enteiras (dd) nos
     rexistros numerados, é dicir, descendendo dende o reistro 1 ao 9. 
     Decatarse de que o borrado de liñas enteiras presérvase nos rexistros
     numerados máis tempo que calquera outra operación.   
  9. Aprende-lo destino final de tódalas copias feitas nos rexistros 
     numerados e cómo son de efímeros. 
 10. Situar marcas dende o modo de comandos  m[a-zA-Z0-9] .
 11. Moverse a una liña cunha marca con  ' .

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  Isto conclúe o capítulo dows do Vim Tutor. Este é traballo en progreso.  
  Este capítulo foi escrito por Paul D. Parker.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  Traducido do inglés ao galego por Fernando Vilariño.
  Correo electrónico: fernando@cvc.uab.es.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~