Emezeta.com

15 editores de texto basados en terminal


Aunque a muchos usuarios les pueda parecer algo incómodo (o muy friki), los editores de texto basados en terminal son una verdadera maravilla para aquellos que acostumbramos a administrar sistemas remotos, crear o mantener archivos de texto vía SSH o, simplemente, programar desde una consola o terminal de texto.

Editores de texto basados en terminal

En la mayoría de los casos, necesitamos un editor de texto que cumpla al menos, varios de los siguientes requisitos:

  • Instalado por defecto (o muy sencillo de instalar) en una distribución GNU/Linux.
  • Flexible a las características de los archivos editados (resaltado de sintaxis, por ejemplo).
  • Rápido y potente: Cargar grandes archivos velozmente, consumiendo poca memoria.
  • Usable: Que nos resulte cómodo y sencillo utilizarlo (muy subjetivo)
  • A ser posible, con un aspecto visual agradable en el que nos sintamos cómodos.

Demos un repaso por la siguiente serie de 15 editores de texto basados en terminal, de los que podremos elegir cualquiera de ellos para utilizar en un sistema, sin necesidad de disponer de un entorno gráfico.

1. Vim (Vi IMproved)

VIM es un magnífico editor de textos basado en terminal, probablemente, de los más utilizados en todo el mundo. Posee una gran cantidad de características y funciones (numerado de líneas, autocompletado, resaltado de sintaxis, reemplazo de texto mediante expresiones regulares, etc.) que lo hacen uno de los editores preferidos por programadores y administradores de sistemas.

Pero seamos justos, aunque se trate de mi editor favorito, hay que reconocer que VIM en lugar de una curva de aprendizaje, tiene una pared de aprendizaje.

Comenzar a utilizar VIM puede ser algo muy duro para usuarios novatos (e incluso no tan novatos), ya que es muy fácil pulsar por error alguna combinación de teclas y realizar varios cambios en nuestro documento, disparar alguna función predefinida, pisarle la cola a un gato y activar una bomba, todo simultáneamente y sin querer.

Editores de texto basados en terminal: Vim (VI Improved)

En el siguiente enlace, tienen un manual básico para aprender a utilizar VIM con las funciones más comunes para usuarios con poco tiempo y mucha prisa. Si lo que interesa es aprender más en profundidad, recomiendo echar un vistazo a VIM Adventures, la mejor forma de aprender VIM: Jugando a un RPG.

Mencionar también que VIM tiene una versión para entorno gráfico llamada gVim (graphic Vim), donde podrás utilizar el famoso editor desde una ventana gráfica. VIM está disponible para Windows, Mac y Linux, entre otros.

URL | Vim

2. GNU Emacs

Otro de los grandes y conocidos editores es Emacs. De hecho, si se habla bien de Vim, no tardará en salir algún defensor de Emacs ofendido (y viceversa). Richard Stallman fue el autor y promotor de Emacs desde sus inicios y se ha convertido en un gigante (emacs, no Stallman) proporcionando todo tipo de funciones y posibilidades.

Entre sus posibilidades se encuentran una calculadora, un administrador de archivos o un cliente de IRC, también podemos encontrar aplicaciones de lo más variadas, como una versión de Eliza llamada Doctor, una aventura conversacional, un tetris y un pong, entre otros.

Editores de texto basados en terminal: Emacs -nw (terminal version)

Existen multitud de versiones de Emacs (entre las que se encuentran versiones gráficas), pero es posible utilizarlo desde una terminal de texto con los parámetros emacs -nw. Está disponible para Windows, Mac y Linux, entre otros.

URL | Emacs

3. mcedit (GNU Midnight Commander)

Midnight Commander nació como alternativa al clásico Norton Commander que tan famoso se hizo durante la época del DOS. Se trata de un entorno de administración de archivos, en el que puedes navegar a través de las carpetas y ficheros del sistema desde un interfaz más sencillo y sin necesidad de escribir comandos para moverte por las diferentes carpetas.

Editores de texto basados en terminal: Mcedit (Editor de Midnight Commander)

Este entorno, incorpora mcedit, un editor de textos a la vieja usanza, que permite todo tipo de acciones básicas, resaltado de sintaxis e incluso creación y grabación de macros. Midnight Commander fue desarrollado por Miguel de Icaza y está disponible para entornos Linux/Unix.

URL | Midnight Commander

4. SETEdit (Borland Environment clone)

Si existió alguna vez un buen entorno de edición de textos para programadores (de hecho, más cercano a un IDE que a un editor) , ese fue el entorno de desarrollo de Borland. SETEdit es un clon de dicho entorno, más actualizado y adaptado a actividades actuales, manteniendo el look & feel, haciéndolo ideal para los más veteranos.

Editores de texto basados en terminal: SETEdit (Clon de entorno Borland)

El editor permite creación de macros, personalización completa del entorno (colores, tipografías, etc...), sistema de depuración, reproductor de MP3 integrado e incluso exportar el código fuente en formato HTML, con resaltado de sintaxis incluido. Está desarrollado por Salvador E. Tropea y disponible para DOS, Windows y Linux.

Existe otro proyecto, xwpe, que también emula el entorno de desarrollo de Borland.

URL | SetEdit

5. Pico (Pine Composer)

Pico es un editor minimalista incluido en la mayoría de las distribuciones debido a su pequeño tamaño y a que está incorporado en el paquete PINE (Program for Internet News & Email), que incluye también un cliente de email en versión terminal.

Editores de texto basados en terminal: Pico

El editor es muy básico (ni siquiera tiene resaltado de sintaxis) pero es perfectamente apropiado para usuarios que quieren un editor sencillo con lo justo para realizar pequeños cambios en archivos o crear textos sin más ambiciones.

URL | Pine

6. GNU Nano

Si el anterior editor nos gusta pero echamos de menos ciertas funcionalidades que creemos imprescindibles (como el resaltado de sintaxis), quizás nos guste más Nano, una versión mejorada de Pico.

Editores de texto basados en terminal: Nano

Al igual que Pico la mayoría de las opciones se activan con la combinación de teclas CTRL+tecla, pudiendo realizar tareas de búsqueda, cortar y copiar, justificar texto o incluso corregir ortografía.

URL | Nano

7. Fte & Nefte (Free Text Editor)

La familia de editores de texto Fte es otra sencilla pero agradable opción a la edición de textos desde consola. Además de la versión de terminal (Nefte, basada en ncurses), existe una versión para X windows o terminales virtuales.

Editores de texto basados en terminal: Fte nefte

Entre sus funcionalidades, podemos encontrar cosas básicas como edición de textos, operaciones en bloque y otras no tan básicas orientadas a la programación como ejecución y compilación de aplicaciones e incluso soporte CVS/SVN.

URL | FTE Text Editor

8. FAR Manager (¡Windows también tiene!)

Es curioso que, en este mundo de editores de texto donde parece que no hay cabida para Windows (salvo viejos editores heredados), nace FAR Manager, un clon del anteriormente mencionado Midnight Commander y que existe sólo para sistemas Windows.

Editores de texto basados en terminal: Far manager

Al igual que Midnight Commander, FAR Manager incorpora un potente gestor de archivos y carpetas, por donde podemos navegar para, posteriormente, editar los archivos que queramos, exactamente de la misma forma que hacemos con mcedit.

Si quieres más información sobre FAR Manager y otros programas similares para Windows, puedes echar un vistazo a Alternativas al Explorador de Windows.

URL | FAR Manager

9. Ne (Nice Editor)

Nice Editor (conocido como ne) es un editor de textos simple, que provee una sencilla pero completa interfaz, donde tenemos a nuestra disposición una gran cantidad de comandos con los que podemos realizar ciertas acciones determinadas.

Editores de texto basados en terminal: Ne

Permite la búsqueda mediante expresiones regulares, buscar el paréntesis o llave mal cerrado, creación de macros y una gran cantidad de extras.

URL | Nice Editor

10. Jed

Jed es un editor de textos orientado a programadores, con el cuál contamos con características como resaltado de sintaxis, soporte LaTeX, contraer y expandir secciones de código, copiar bloques de texto, buffers múltiples, búsquedas mediante expresiones regulares, etc...

Editores de texto basados en terminal: Jed

URL | Jed editor

11. Diakonos

Diakonos pretende ser un editor de texto en el que no tengas que aprender nuevas combinaciones de teclas para realizar tareas que ya sabes hacer en otros entornos. Si para cerrar una pestaña pulsas CTRL-W, para cerrar un archivo en diakonos harás lo mismo. Si para guardar un archivo pulsas CTRL-S, en diakonos también.

Editores de texto basados en terminal: Diakonos

Además, Diakonos permite personalizar prácticamente cualquier combinación de teclas que pulses, permitiendo una completa personalización del editor.

URL | Diakonos

12. JOE

JOE es un básico editor de texto que además permite emular otros sistemas. Por ejemplo, jpico emula el funcionamiento de pico, jmacs el de emacs, mientras que jstar emula al de Wordstar.

Editores de texto basados en terminal: Joe

Otros editores de texto muy simples similares a Joe y dignos de mención serían aoeui (optimizado para teclados Dvorak), e3, dav-text o lpe. Todos ellos muy simples y minimalistas.

URL | Joe Own Editor

13. Le

El editor Le recuerda con su interfaz al antiguo editor de MSDOS utilizado para QBASIC, utilizando una agradable y visual apariencia con una combinación de colores poco agresiva. Además, es un editor muy cómodo y sencillo de aprender a utilizar.

Editores de texto basados en terminal: Le

Destacan algunas opciones para manejar textos, como identación automática, búsqueda de llaves mal cerradas, expandir tabuladores u optimizar texto.

URL | Le Editor

14. Ed & Sed (Editor de líneas)

No podemos finalizar este artículo sin mencionar al menos uno de estos editores. Ed es un eficiente editor que trabaja por líneas, evitando cargar todo el archivo en pantalla. Es ideal para ciertas situaciones en las que debemos hacer modificaciones en una determinada línea que conocemos con antelación, por ejemplo. También es útil para realizar modificaciones muy rápidamente en un archivo sin desplazarnos a otra pantalla.

Editores de texto basados en terminal: Ed

En el ejemplo superior, se puede ver como se añaden dos líneas tras el comando a (append) y finalizándolo con un punto. Después lo guardamos con el comando w (write), nos informa que son 83 carácteres y salimos con q (quit).

No olvidar tampoco el potentísimo editor de flujos sed, con el que se puede realizar prácticamente cualquier traducción o modificación sobre otros archivos. Por ejemplo, el comando sed s/word/palabra/g archivo.txt >archivo2.txt modificaría todas las palabras "word" por "palabra" y lo guardaría en un nuevo archivo2.

Si quieres aprender más detalles sobre comandos interesantes, puedes echar un ojo al artículo 10 comandos para trabajar en Linux.

URL | Ed (Line editor)

15. Mined

Por último tenemos mined, un editor de texto muy simple, pero sencillo de utilizar. Contiene soporte para multitud de codificaciones y permite emular otros editores como pico (mpico) o Wordstar (mstar).

Editores de texto basados en terminal: Mined

Tiene algunas funcionalidades curiosas e interesantes, como establecer marcas invisibles «recordables» en cualquier punto del archivo o recordar la posición donde nos quedamos.

URL | Mined