GNU/Linux >> Tutoriales Linux >  >> Linux

Vim vs. Nano vs. Emacs:tres administradores de sistemas intervienen

Editores de texto. No son algo en lo que la mayoría de los usuarios piensen mucho. Sin embargo, no todos los editores de texto son iguales, y con más tiempo en la terminal, es posible que descubras que un editor en particular funciona mejor para ti. Le pedí a varios de nuestros colaboradores que escribieran una posición "pro" para Vim, Nano y Emacs. Cada editor de texto está representado por un colaborador con mucha experiencia con el editor en cuestión. Estamos hablando de características, comparaciones y experiencias personales. Saltemos a los editores, con Vim arriba primero.

[ También te puede interesar: herramientas de administrador de sistemas:visualización de texto en Linux con cola y cabeza]

Vim - Ricardo Gerardi

Vim es un editor de texto multipropósito liviano pero poderoso que aborda todas sus necesidades de edición de texto, desde la edición básica de archivos de configuración hasta la emulación de entornos de desarrollo integrados (IDE) completos para el desarrollo de software.

He estado usando Vim de una forma u otra durante más de 20 años, pero hace unos cinco años, decidí usar Vim para todas mis necesidades de texto. Uso Vim para escribir documentación, codificar en diferentes lenguajes de programación y escribí un libro completo (más de 400 páginas) usando Vim exclusivamente.

El nombre de Vim es una contracción de Vi Mejorado, ya que amplía el editor de texto vi original desarrollado para el sistema operativo Unix en las décadas de 1970 y 1980. Vim tiene todas las funciones que esperaría de un editor de texto moderno, como:

  • Deshacer/rehacer
  • Autocompletar
  • Modo GUI
  • Buscar y reemplazar
  • Terminal incorporado
  • Administrador de archivos incorporado
  • Corrección ortográfica
  • Combinaciones de colores
  • Resaltado de sintaxis

Podría enumerar muchas otras características, pero esto no es lo que hace que Vim sea diferente. En mi opinión, Vim es el mejor editor de texto que existe debido a una combinación de otros factores. Echemos un vistazo a los siguientes.

1. Vim es omnipresente

Vim está en todas partes. Está instalado por defecto en la mayoría de las distribuciones de Linux. Si no, puedes instalarlo usando el administrador de paquetes de tu distribución. Además, muchas distribuciones incluyen complementos, extensiones y diccionarios de Vim con su administrador de paquetes estándar. Vim también está disponible para varios otros sistemas operativos, incluidos Unix, macOS y Windows. La configuración de Vim es portátil y puede tener la misma experiencia de Vim copiando sus archivos de configuración de una máquina a otra.

2. Vim es rápido

Vim es ligero y rápido. Vim se ejecuta principalmente en la terminal con un tamaño reducido. Combinado con un tiempo de inicio súper rápido y latencia cero, puede usar Vim en cualquier momento y en cualquier lugar, incluso a través de conexiones remotas a través de SSH y hardware de bajo consumo. Incluso puede tener varias sesiones de Vim abiertas a la vez sin afectar el rendimiento de su máquina.

3. Vim funciona con teclado

Vim proporciona una experiencia de solo teclado. Puedes hacer todo en Vim sin quitar las manos del teclado. Ningún cambio de contexto con el mouse mejora su comodidad y eficiencia. También permite una buena experiencia al escribir en espacios restringidos, como cuando se viaja en tren o autobús.

4. Vim es intuitivo

Vim proporciona comandos de navegación simples y rápidos. Puede mover el cursor con las teclas de flecha (o "h", "j", "k", "l" para mantener la mano en la fila de inicio) como otros editores de texto pero, cuando comienza a usar objetos de texto, aumenta su eficiencia mucho. Por ejemplo, presionar "w" lo lleva al principio de la siguiente palabra, "b" de regreso a la palabra anterior y "$" al final de la línea. También puede combinarlos con números para moverse más rápido. Por ejemplo, "3w" se mueve al principio de la tercera palabra. Vim proporciona muchos de estos comandos de navegación.

Además de los comandos de navegación, Vim proporciona acciones mnemotécnicas intuitivas. Por ejemplo, presione "i" para insertar texto, "c" para cambiar , "d" para eliminar , y así sucesivamente.

La mejor parte es que puede combinar estas dos ideas para crear poderosas cadenas de comando. Por ejemplo, "dw" elimina todo el texto hasta la siguiente palabra, "d$" elimina hasta el final de la línea y "c3w" cambia todo el texto hasta la tercera palabra.

Vim estructura estas cadenas de comandos semánticamente, reflejando nuestro proceso de pensamiento, similar a las oraciones en inglés con verbos y objetos. Puede combinarlos lógicamente para componer sus propias acciones sin requerir comandos o funciones específicas; o memorizar algunas combinaciones extrañas de teclas como Ctrl+Shift+F4 para realizar acciones.

Cuando comienza a usar Vim por primera vez, estos comandos se sienten incómodos pero, con un poco de práctica, hacen que la edición de texto sea muy eficiente. De hecho, las combinaciones de teclas de Vim son tan populares que otros editores como Emacs e incluso muchos IDE brindan una forma de habilitarlas/emularlas.

5. Vim es flexible y extensible

Vim es extremadamente flexible y poderoso. Puede comenzar de manera simple y usarlo para editar archivos de configuración rápidamente. También puede escribir programas en su lenguaje de programación favorito, con funciones como finalización de código, resaltado de sintaxis y verificación de sintaxis, similares a los IDE populares. Vim proporciona resaltado de sintaxis listo para usar para muchos idiomas y tipos de archivos.

Vim es totalmente personalizable. Puede proporcionar opciones sobre la marcha o a través de un archivo de configuración. También puede crear configuraciones condicionales que son efectivas solo cuando se edita un tipo particular de archivo. Además de la personalización, Vim admite complementos listos para usar. La comunidad de código abierto ha desarrollado varios complementos para ampliar aún más la funcionalidad de Vim. Puede agregar sintaxis de código para otros idiomas, integrar con Git, agregar una barra de estado elegante, búsqueda difusa, comentarios de código inteligente, fragmentos de código y muchas otras funciones.

Más que un simple editor de texto, Vim es una plataforma que le permite crear su propia experiencia de edición de texto de acuerdo con sus requisitos y preferencias.

¿Quieres saber más?

Si desea obtener más información sobre Vim, eche un vistazo a algunos de estos enlaces:

  • Conceptos básicos de Linux:una guía para principiantes sobre la edición de texto con vim
  • Una introducción al editor vi
  • 5 útiles complementos de Vim para desarrolladores
  • Vim:Comandos básicos e intermedios
  • Los cinco complementos principales de Vim para administradores de sistemas
  • Utilice macros de Vim para automatizar tareas frecuentes

Palabras finales sobre Vim

Vim es un fantástico editor de texto. Es rápido, flexible y potente, pero sobre todo, es divertido usar. Honestamente, no me veo haciendo algunas de las cosas que puedo hacer en Vim con cualquier otro editor, al menos no tan eficientemente.

Confieso que Nano me ha salvado la vida en un par de ocasiones, la más reciente mientras estaba escribiendo un examen de certificación y las combinaciones de teclas de Vim no funcionaban debido a limitaciones con la interfaz web del examen. La naturaleza simple de Nano me permitió completar la prueba con éxito.

Nunca he usado Emacs, principalmente porque nunca sentí que proporcionaría algo que no pudiera hacer con Vim con una huella más pequeña. Tal vez lo pruebe algún día pero, hasta entonces, Vim sigue siendo el controlador principal para todos mis requisitos de edición de texto.

No hace falta decir que escribí esta publicación de blog usando Vim;-)

Nano - Amy Marrich

Nano es un editor de texto ligero, sencillo y simple. Su único propósito es permitirle editar texto. De hecho, es tan liviano que muchos sistemas operativos *nix lo usan como editor en modo de recuperación.

Incluso siendo liviano, tiene algunas capacidades más complejas, aunque no en la medida en que lo hacen algunos de los otros editores. Por otra parte, tampoco necesita instalar nada más para usarlo.

Buscar

Como ya se mencionó, otros editores de texto son mucho más robustos, pero una característica que prefiero con diferencia en Nano es la capacidad de búsqueda. A diferencia de la mayoría de los aspectos de Linux, la función de búsqueda en Nano no distingue entre mayúsculas y minúsculas de forma predeterminada, aunque puede indicarlo fácilmente. Esto resulta útil cuando busca todas las instancias de una palabra o si no está seguro de en qué caso se encuentra la palabra.

Algunos otros beneficios de la función de búsqueda incluyen:

  • Moverse a ubicaciones específicas dentro del documento
  • Buscar/reemplazar una palabra o palabras
  • La capacidad de buscar hacia atrás
  • El hecho muy útil es que regresará a la parte superior una vez que llegue al final del documento para continuar con la búsqueda

Otros recursos

Debido a que Nano es liviano y fácil de usar, no hay mucha curva de aprendizaje para comenzar, pero aquí hay algunos tutoriales para profundizar:

  • La guía para principiantes de Nano, el editor de texto de línea de comandos de Linux
  • Cómo utilizar el editor de texto nano
  • Linux Nano Editor explicado para principiantes (10 ejemplos)

Emacs - Seth Kenlon

GNU Emacs tiene todas las características usuales:Fácil instalación de paquetes (package-list-packages ), tematización sencilla (customize-themes ), una interfaz GUI, así como una interfaz solo para terminal, un administrador de archivos incorporado (dired ), pantallas divididas, edición remota, guardados automáticos y mucho más.

Las combinaciones de teclas son un poco incómodas, pero no más que tocar el piano, y a menudo son igual de fluidas, especialmente en un teclado Dvorak.

Pero creo que es un lujo único tener una aplicación que también es un entorno de codificación en vivo. La forma en que GNU Emacs puede redefinirse a sí mismo y ser redefinido por el usuario es su característica más poderosa.

ceceo

No comencé a usar Emacs con la intención de preocuparme por Lisp, y mucho menos aprender algo de él. Incluso hoy, mi .emacs El archivo de configuración es poco más que una colección de retazos de ingeniosos trucos de otras personas. Pero el poder dentro de GNU Emacs es tentador, y un pequeño truco en un archivo de configuración puede convertirse en un script complejo que le ahorra horas durante su jornada laboral.

Con un conocimiento rudimentario de Lisp combinado con las funciones ya integradas en Emacs, pude mover los guardados automáticos a un directorio oculto, brindándome la comodidad de no tener que mirar los archivos de respaldo pero al mismo tiempo sabiendo que los archivos de respaldo existen .

No he perdido datos en Emacs debido a un bloqueo o desconexión en años.

Emacs ligero

Sin embargo, hay más en Emacs que GNU y Lisp.

La tradición de "emacsen" (esa es la forma plural aceptada de más de un Emacs) es anterior y continúa más allá de la implementación de GNU Emacs.

Hay muchas opciones para editores basadas en una colección de macros y un estilo específico de experiencia de usuario, la mayoría de ellas más ligeras que el editor GNU.

Algunos de mis favoritos:

  • Micro Emacs - Primeros pasos con alternativas ligeras a GNU Emacs
  • ¡Por Júpiter! Es una alternativa ligera a Vim
  • Aprenda a usar el editor de texto JOE en Linux
  • Pruebe el editor de texto e3 Linux
  • Prueba Jed como tu editor de texto de terminal Linux

Uso estos emacsen y emacs casi tan a menudo como uso GNU Emacs porque son fáciles de compilar y ejecutar desde /home en servidores donde no tengo privilegios de sudo. Proporcionan combinaciones de teclas similares (o las mismas) a las que estoy acostumbrado, acceso a macros y funciones, y una experiencia de usuario general familiar. Y debido a que Emacs es un concepto tan grande, muy a menudo también puede proporcionar una experiencia de usuario familiar para los usuarios de otros editores.

Puede usar combinaciones de teclas Vim en GNU Emacs con evil-mode , y puedes imitar a GNU Nano con jpico de Joe .

El mundo de Emacs

El mundo de Emacs es rico, y cada vez que pruebo con otros editores, aún no encuentro nada que falte en GNU Emacs.

Claro, disfruto de Vim para ediciones rápidas y su navegación simple, y tengo un aprecio legítimamente reverente por la interfaz intuitiva de Nano, pero Emacs es el lugar al que llamo hogar.

[ ¿Empezando con los contenedores? Consulta este curso gratuito. Implementación de aplicaciones en contenedores:una descripción técnica general. ]

Tiempo de decisión

Bien, ahora tienes que tomar una decisión. ¿Cuál de estos editores de texto va a ser mejor para ti? Si eres como yo, cualquiera que esté instalado y sea de fácil acceso es el que uso con más frecuencia (Vim). Sin embargo, no puedo elegir por ti. El mejor consejo que puedo darte es probar cada editor por ti mismo y ver qué sabor te gusta más. Recuerde, el objetivo es ser eficiente y sentirse cómodo con el editor que elija.


Linux
  1. Conceptos básicos de Linux:una guía para principiantes sobre la edición de texto con vim

  2. Cómo instalar Vim (vi) en Windows 10

  3. ¿Obtener información del editor (vim/nano/emacs/textmate?)?

  4. Vim:¿Texto negro sobre fondo negro?

  5. vim Tutorial con ejemplos de comandos

Los cinco complementos principales de Vim para administradores de sistemas

Primeros pasos con Nano Text Editor [Guía para principiantes]

Cómo encontrar y reemplazar texto en Vim

Los 5 mejores editores de texto de Linux

Trabajar con el editor Vim (Editor de texto)

Comandos nano básicos (hoja de trucos)