* Ejecución de vi

	vi <fichero>

  Al entrar a vi, nos encontramos en el modo de órdenes.

* Pasar a modo de entrada:

	i		antes del cursor
	I		a principio de línea
	a		después del cursor
	A		a final de línea
	o		abre línea por debajo de la línea actual
	O		abre línea por encima de la línea actual

* Cuando está en modo de entrada

	Retroceso	suprime carácter
	CTRL-w		suprime palabra
	ESC		pasa a modo de órdenes

Todo lo que viene a continuación se realiza estando en el MODO DE ORDENES

* Mover el cursor

	l		una posición a la derecha
	h		una posición a la izquierda
	j		una línea abajo
	k		una línea arriba
	$		a final de línea
	^		a principio de línea
	w		a principio de la siguiente palabra
	e		a final de la siguiente palabra

  También podemos ver si funcionan los CURSORES y las teclas INICIO y FIN.

* Control de la pantalla

	CTRL-d		desplazarse media pantalla hacia delante
	CTRL-u		desplazarse media pantalla hacia atrás
	CTRL-f		pantalla siguiente
	CTRL-b		pantalla anterior
	CTRL-l		redibujar la pantalla

  También podemos ver si funcionan las teclas AVANCE DE PAGINA y RETROCESO
  DE PAGINA.

* Cambiar

	cw		cambiar la palabra actual
	cc		cambiar toda la línea actual
	C		cambiar hasta el final de la línea actual
	r		cambiar el carácter que hay bajo el cursor

* Suprimir

	dw		suprimir palabra actual
	dd		suprimir toda la línea actual
	D		suprimir hasta el final de la línea actual
	x		suprimir el carácter bajo el cursor

* Otras funciones

	u		deshacer/rehacer la última acción
	.		repite la última acción
	/		búsqueda de un patrón hacia delante
	?		búsqueda de un patrón hacia atrás
	n		buscar siguiente ocurrencia
	Y		copia la línea actual en un buffer
	p		inserta el contenido del buffer bajo la línea actual
	P		inserta el contenido del buffer sobre la línea actual
	ZZ		salvar y salir de vi
	ESC		cancela una orden

* Algunas órdenes para el modo de última línea

	:w		salvar a fichero
	:q!		descartar cambios y salir de vi
	:wq		salvar y salir de vi
	:x		lo mismo que :wq
	:<n>		situarse en la línea n
	:!<orden>	ejecuta una orden; por ejemplo, :!ls -l
	:set number	muestra los números de línea
	:set nonumber	no muestra los números de línea

* Sustitución

	:s/p1/p2/g	sustituye p1 por p2 en toda la línea actual
	:x,ys/p1/p2/g	sustituye p1 por p2 desde la línea x hasta la y.
	:1,$s/p1/p2/g	sustituye p1 por p2 en todo el fichero


* NOTA: vi es un editor muy potente que admite muchísimas más opciones.
Normalmente, podréis encontrar más información en cualquier libro sobre UNIX
o Linux.
