Ox, un editor de texto escrito en Rust que funciona desde terminal

Ox es un editor de texto avanzado con funcionalidad integrada similar a IDE desarrollada por un programador del Reino Unido conocido con el sobrenombre de «Curlpipe».

Fue escrito en Rust usando secuencias de escape ANSI. El autor cree que Ox ayuda a los desarrolladores a codificar al proporcionar varias herramientas para acelerar y facilitar la programación y es una alternativa totalmente liviana, ya que a diferencia de editores como «VS Code y JetBrains» Ox consume una menor cantidad de recursos.

El autor informa que esto es, por el momento, solo un proyecto personal y que aún no está listo para reemplazar sus herramientas existentes. Ox funciona en la terminal y funciona en plataformas como Linux y macOS, pero no funciona directamente en Windows (funciona si usas WSL) debido a la falta de una buena línea de comandos.

“Hay muchos editores de texto y cada uno de ellos tiene sus defectos. Espero tener un editor de texto que supere muchas cargas y problemas ”, dijo el desarrollador.

Según Curlpipe, Ox es «super» mínimo y tiene como objetivo utilizar la menor cantidad posible de dependencias, lo que resulta en un tiempo de construcción rápido y un bajo riesgo de rotura.

Está construido con Rust, Termion (una biblioteca Rust), Unicode-rs, Clap (un analizador de argumentos de línea de comando), Regex, Ron (un formato de configuración simple similar a la sintaxis de Rust), Serde (un marco para serializar y deserializar las estructuras de datos de Rust de manera eficiente y genérica) y Shellexpand (una biblioteca de dependencia única que permite que las expansiones de tipo shell se realicen en cadenas).

Además, Curlpipe agregó que Ox no se basa en ningún otro editor y fue construido desde cero sin base alguna. En el repositorio de GitHub del proyecto, podemos ver que Ox toma las características de algunos de los editores más populares, especialmente en Linux, buscando así obtener lo mejor de todos los mundos. A continuación se muestra la lista de editores de texto de los que el autor ha robado uno o más conceptos:

  • Vim: proporciona un sistema de complementos para agregar funcionalidad, ya que es muy mínimo y solo proporciona una funcionalidad básica de edición de texto de forma predeterminada. Es completo y tiene su propio lenguaje de programación para configurar y escribir complementos. Tiene una curva de aprendizaje rápida porque es un editor de texto «modal», con modos especiales para editar texto. Según Curlpipe, Ox es más fácil de usar que Vim porque no tiene modos en los que se reorienta el teclado, pero retoma la idea de ser un editor de solo teclado y poder actuar como un IDE después.
  • Nano: un editor de texto fácil de aprender con atajos de teclado intuitivos como Ctrl + S. Ox tomó la idea de los atajos de teclado de este editor, son fáciles de recordar.
    Micro: este es un sistema enchufable que se programa con el lenguaje de programación Lua. Según el desarrollador de Ox, fue Micro quien le dio la idea de agregar funcionalidad de mouse y otras características;
  • Emacs: Emacs todavía se usa activamente en la actualidad debido a su libertad para modificar y cambiar el código fuente. Entonces, de acuerdo con Curlpipe, Ox tomó la idea de personalización y extensibilidad de Emacs y creó un sistema de configuración donde puedes cambiar los colores y apariencia del editor.
  • Xi: un editor de texto también escrito en Rust, pero es puramente un back-end en este momento. Curlpipe dijo que decidió hacer de Ox tanto un front-end como un back-end, ya que Xi tiene muchos front-end, pero la mayoría de ellos están fragmentados y carecen de muchas características.
  • Kiro: es un editor de texto escrito en Rust que agrega características como soporte Unicode, una mejor combinación de colores y pequeñas cosas como cambiar el tamaño. Ox tomó las ideas de Kiro para mejorar, pero las implementó de manera diferente. El código fuente de Kiro también parece bastante avanzado en algunas áreas, Curlpipe prefirió mantener Ox lo más simple posible.

Fuente: https://github.com


El contenido del artículo se adhiere a nuestros principios de ética editorial. Para notificar un error pincha aquí.

Sé el primero en comentar

Deja tu comentario

Tu dirección de correo electrónico no será publicada.

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.