Linux ofrece muchas alternativas en cuanto a editores de texto. Citemos algunos:
gim: poderoso y pequeño editor patrimonio del BSD. Del inglés, VI
iMproved.
emacs: el editor definitivo patrimonio del GNU. Original de RMS
(Richard M. Stallman).
xemacs: Emacs: La Próxima Generación, originaria de Lucid.
mcedit: editor GNU para principiantes. Idéntico al editor interno
del mc. Véase Editor, Sección 4.3.5
ae: pequeño editor que trae por defecto Potato. Evítelo.
nano: pequeño editor GNU que trae por defecto Woody. Emula a
pico.
joe: para los nostálgicos usuarios del WordStar o TurboPascal.
jed: editor rápido, con múltiples funciones, basado en menúes y
con las combinaciones de teclas de emacs.
jove: editor muy pequeño con las combinaciones de teclas de emacs.
nvi: el nuevo vi. Totalmente compatible con el vi original.
Utilice el comando update-alternatives --config editor para cambiar el editor por defecto. Asimismo, muchos programas utilizan las variables de entorno EDITOR o VISUAL para decidir qué editor utilizar. Véase Editor, Sección 4.3.5.
Vale la pena mencionar también algunos editores de texto basados en X:
gvim: Vim con GUI (paquetes vim y
vim-gtk)
emacs: el Único y Verdadero Emacs (autodetecta X).
xemacs: Emacs de la próxima generación (autodetecta X).
Estos comandos aceptan las opciones estándar tales como -fn a24, que facilitan la vida a gente grande como yo :) Véase El cliente X, Sección 9.4.4.
Existen unos pocos editores situados en /bin/. Debería instalarse
uno de ellos para facilitar la edición de archivos cuando /usr/ no
se encuentre accesible.
elvis-tiny: editor vi mínimo (vi para comenzar)
nano-tiny: editor mínimo (nano-tiny para comenzar)
ed: editor mínimo (siempre allí pero difícil de usar)
Lea el "archivo de ayuda principal de VIM" presionando <F1> mientras ejecuta el programa.
<F1> Ayuda
<esc> Retorno al modo normal
V Modo visual
i Modo edición
: Modo línea de comandos
:set tw=72 Establecer el ancho de texto en 72
<F11> Modo edición (pegar)
:r! date -R Inserta la fecha según la RFC-822
qa Grabar lo que se escribe en el registro a
q Detiene la grabación
@a Ejecutar lo que se escribió en el registro a
:edit loquesea.txt Edite otro archivo cargando loquesea.txt
:wnext Grabar el archivo actual y editar el siguiente archivo
q y @ pueden utilizarse para grabar y reproducir macros sencillas. Por ejemplo, para crear una macro que inserte etiquetas HTML para cursiva alrededor de una palabra escriba qii<i>^[ea</i>^[q (donde ^[ es la tecla ESC). Entonces, al escribir @i al inicio de una palabra se le añadirán la etiquetas <i> y </i>.
Véase también Usando GnuPG con Vim, Sección 14.4.2.
<F1> Ayuda
<F10> Menú
C-u M-! date -R Inserta la fecha RFC-822
Iniciar el editor: emacs nom_archivo vim nom_archivo
Iniciar el modo compatible con vi: vim -C
Iniciar el modo no compatible con vi: vim -N
Iniciar con el compilador por defecto: emacs -q vim -N -u NONE
Salir: C-x C-c :qa /:wq /:xa /:q!
Volver al modo comando: C-g <esc>
Retroceder (flecha izquierda): C-b h
Avanzar (flecha derecha): C-f l
Siguiente (flecha hacia abajo): C-n j
Anterior (flecha hacia arriba): C-p k
Comienzo de línea (^): C-a 0
Final de línea ($): C-e $
Comandos múltiples: C-u nnn cmd :nnn cmd
Comandos múltiples: M-número cmd
Guardar archivo: C-x C-s :w archivo
Comienzo del búfer: M-< 1G
Final del búfer: M-> G
Avanzar 1 pantalla: C-v ^F
Avanzar 1/2 pantalla: ^D
Avanzar una 1 línea: ^E
Retroceder 1 pantalla: M-v ^B
Retroceder 1/2 pantalla: ^U
Retroceder 1 línea: ^Y
Ir a la otra ventana: M-C-v
Borrar bajo el cursor: C-d x
Borrar desde el cursor al final de la línea:
C-k D
Búsqueda incremental hacia adelante: C-s
Búsqueda incremental hacia atrás: C-r
Buscar hacia adelante: C-s enter /
Buscar hacia atrás: C-r enter ?
Búsqueda incremental exp. reg: M-C-s
Búsqueda incremental hacia atrás exp. reg: M-C-r
Buscar expresión regular: M-C-s enter /
Búsqueda hacia atrás exp. reg: M-C-r enter ?
Ayuda: C-h C-h :help
Ayuda Apropos: C-h a
Ayuda combinaciones de teclas C-h b :help [tecla]
Ayuda Info: C-h i
Ayuda modo mayor: C-h m
Ayuda tutorial: C-h t :help howto
Deshacer: C- u
Rehacer: C-f ^R
Marcar posición del cursor: C-@ m{a-zA-Z}
Intercambiar marca y posición: C-x C-x
Ir a la marca del archivo actual: '{a-z}
Ir a la marca en cualquier archivo: '{A-Z}
Copiar región: M-w {visual}y
Borrar región: C-w {visual}d
Copiar y conservar en el búfer: C-y
Pegar desde el siguiente búfer: M-y p
Convertir una región en mayúsculas: C-x C-u {visual}U
Convertir una región en minúsculas: C-x C-l {visual}u
Insertar un carácter especial: C-q numoctal/tecla ^V decimal/tecla
Reemplazar: M-x replace-string :%s/aaa/bbb/g
Reemplazar expreg: M-x replace-regexp :%s/aaa/bbb/g
Buscar y reemplazar: M-% :%s/aaa/bbb/gc
Buscar y reemplazar: M-x query-replace
Buscar y reemplazar exp. reg: M-x query-replace-regexp
Abrir archivo: C-x C-f :r archivo
Guardar archivo: C-x C-s :w
Guardar todos los búferes: C-x s :wa
Guardar como: C-x C-w archivo :w archivo
Pedir un búfer: C-x b
Listar búferes: C-x C-b :buffers
Cambiar a sólo lectura: C-x C-q :set ro
Pedir y eliminar búfer: C-x k
División vertical: C-x 2 :split
División horizontal: C-x 3 :vsplit (ver. 6)
Moverse a otra ventana: C-x o ^Wp
Eliminar esta ventana: C-x 0 :q
Eliminar otra(s) ventana(s): C-x 1 ^Wo
Ejecutar shell en bg: M-x compile
Matar shell en bg: M-x kill-compilation
Ejecutar make: :make Makefile
Analizar mensaje de error: C-x` :echo errmsg
Ejecutar shell y grabar: M-x shell :!script -a tmp
...clean BS, ... :!col -b <tmp >record
...guardar/recordar grab. del shell: C-x C-w record :r record
Ejecutar shell: M-! sh :sh
Ejecutar comando: M-! cmd :!cmd
Ejecutar comando e insertar: C-u M-! cmd :r!cmd
Ejecutar filtro: M-| archivo {visual}:w archivo
Ejecutar filtro e insertar: C-u M-| filter {visual}:!filter
Mostrar opción :se[t] {option}?
Volver opción a valor predeterminado :se[t] {option}&
Resetea opción booleana :se[t] no{option}
Conmutar una opción booleana :se[t] inv{option}
Ajustar el texto en 72 columnas :se tw=72
No ajustar texto :se tw=0
Sangrado automático :se ai
Expandir tabulación :se et
Especificar comentario (correo) :se comments=n:>,n:\|
Ejecutar GDB M-x gdb
Describe el modo GDB C-h m
Saltar una línea M-s
Siguiente línea M-n
Saltar una instrucción (stepi) M-i
Finalizar el marco de la pila actual C-c C-f
Continuar M-c
up arg frames M-u
down arg frames M-d
Copiar número a partir del punto, insertar al final
C-x &
Colocar un punto de ruptura C-x SPC
Para utilizar todas las características de Vim y el resaltado de sintáxis
incluya las siguientes líneas en el ~/.vimrc o
/etc/vimrc:
set nocompatible
set nopaste
set pastetoggle=<f11>
syn on
El modo 'paste' permite evitar que el sangrado automático interfiera con las operaciones pegar/cortar en una terminal o consola. Es mejor que escribir simplemente ":set noai".
Véase Usando GnuPG con Vim, Sección 14.4.2 para integración con GnuPG.
apt-get install exuberant-ctags y ejecute ctags sobre
los archivos fuente. En vim escriba :tag
nombre_función para ir a la línea donde comienza
nombre_función. Las marcas funcionan para C, C++, Java, Python y
muchos otros lenguajes de programación.
Emacs utiliza las mismas ctags.
so \$VIMRUNTIME/syntax/2html.vim desde el modo comando de Vim convertirá el texto seleccionado en código HTML. Guárdelo como :w archivo.html y luego escriba :q. Útil cuando se programa en C, etc.
vim puede editar múltiples archivos en un entorno de múltiples ventanas. Escriba ":help usr_08.txt" para más detalles.Para dividir la pantalla para mostrar diferentes archivos, escriba en la línea de comandos de vi:
:split otro-archivo
:vsplit otro-archivo
o en la línea de comandos del shell:
$ vi -o archivo1.txt archivo.txt # División horizontal
$ vi -O archivo1.txt archivo2.txt # División vertical
en ambos casos se podrá trabajar con múltiples ventanas.
$ vimdiff archivo.txt~ archivo.txt
$ gvimdiff archivo.txt~ archivo.txt # en X
proporcionan una vista muy cómoda para comparar un archivo con su copia de respaldo. En SGML analiza las etiquetas y por lo tanto resulta muy útil cuando se trata de comparar traduciones.
Movimientos del cursor especiales con los comandos Ctrl-W:
Ctrl-W + incrementar el tamaño de una ventana
Ctrl-W - disminuir el tamaño de una ventana
Ctrl-W h ir a la ventana izquierda
Ctrl-W j ir a la ventana inferior
Ctrl-W k ir a la ventana superior
Ctrl-W l ir a la ventana derecha
...
Los siguientes comandos permiten controlar el desplazamiento de la pantalla:
:set scrollbind
:set noscrollbind
Guía de referencia Debian
CVS, lun abr 3 22:57:45 UTC 2005osamu@debian.orgwecharri@infovia.com.ar