Este artículo narra la experiencia de un desarrollador en la creación de un editor de texto propio llamado yvi, inspirado en el clásico Vi (y Vim), utilizando el lenguaje BASIC, específicamente el dialecto Yabasic. El autor, con un trasfondo artístico y una pasión por reinventar herramientas, explica que este proceso es fundamental para su aprendizaje y le permite adaptar el software a su flujo de trabajo.
La motivación detrás de este proyecto surgió de su interés por lenguajes de programación poco convencionales y paradigmas de desarrollo alternativos, como los lenguajes de scripting y, en particular, BASIC. El autor ha explorado previamente las capacidades de BASIC creando juegos y simulaciones simples, lo que le proporcionó una base sólida para abordar la creación de un editor de texto. La inspiración para la simplicidad del editor provino de Offpunk, un cliente TUI minimalista para navegar por internet.
Inicialmente, el editor yvi se implementó con un código relativamente corto (alrededor de 100 líneas), enfocándose en las funcionalidades básicas de navegación (h, j, k, l) y la alternancia entre los modos de inserción y normal. Posteriormente, se fueron añadiendo características como la capacidad de abrir, guardar y buscar archivos, navegación por palabras, eliminación de líneas (dd), deshacer (u), y comandos más avanzados como sobrescribir líneas (S) y cortar/pegar (c). El editor actual, con aproximadamente 500 líneas de código, ofrece una funcionalidad sorprendentemente completa para un proyecto de este tipo.
El autor reconoce que yvi no es un editor perfecto y que aún contiene errores. Sin embargo, lo encuentra útil para tareas básicas de escritura y programación, y destaca su facilidad de modificación y extensión. La creación de yvi representa un logro personal para el autor, quien se enorgullece de haber construido un editor de texto funcional en BASIC, y que, hasta donde sabe, es el único clon de Vi escrito en este lenguaje. El autor invita a los lectores a probar yvi y a contribuir a su desarrollo.
