HormiEditor es mi implementacion de un editor de ficheros para terminal, escrito en C e inspirado en la experiencia de VSCode: varios archivos abiertos, panel de workspace, busqueda, atajos comodos y una interfaz fullscreen pensada para trabajar sin salir de la consola.
- Edicion directa de texto en terminal.
- Apertura de varios buffers.
- Arbol de archivos del workspace.
- Busqueda simple.
- Copiar, cortar, pegar, undo y redo.
- Modales de confirmacion al cerrar con cambios.
- Manual de controles integrado con
Ctrl-N.
Instala o actualiza HormiEditor con:
curl -fsSL https://raw.githubusercontent.com/HormiDev/HormiEditor/main/bin/install.sh | shEl asistente te deja elegir destino y origen de la instalacion. Si lo ejecutas
desde el repo con sh bin/install.sh --build, reutiliza el checkout local y no
lo vuelve a descargar.
Para compilar manualmente:
make
make Elimina la instalacion con:
curl -fsSL https://raw.githubusercontent.com/HormiDev/HormiEditor/main/bin/uninstall.sh | shhormieditor
hormieditor fichero.txt
hormieditor README.md src/main.cAl iniciar sin argumentos aparece la pantalla de bienvenida. Si abres varios ficheros, puedes moverte entre buffers y seguir navegando por el workspace.
Esc: salir. Si hay cambios sin guardar, abre confirmacion.Ctrl-N: abrir o cerrar el manual integrado.Ctrl-S: guardar.Ctrl-Q: cerrar el buffer activo.Ctrl-Z/Ctrl-Y: deshacer / rehacer.Ctrl-C/Ctrl-X/Ctrl-V: copiar / cortar / pegar.Ctrl-F: buscar.Ctrl-E/Ctrl-P: siguiente / anterior buffer.Ctrl-O: alternar foco entre editor y archivos abiertos.Ctrl-B: alternar foco entre editor y workspace.- Flechas: mover cursor.
Shift+ flechas: seleccionar texto.
En el arbol del workspace:
w/so flechas: moverse.Enterod: abrir o expandir.a: colapsar.Shift-F: crear fichero.Shift-D: crear directorio.Shift-RoSupr: eliminar tras confirmacion.
HormiEditor ya tiene una base funcional con render incremental, soporte de resize, buffers multiples, historial de cambios y navegacion por workspace. Todavia quedan mejoras naturales como resaltado de sintaxis, busqueda mas rica y nuevas comodidades de edicion.
src/main.c: arranque y bucle principal.src/editor.c: estado central del editor.src/renderer.c: dibujo ANSI incremental.src/commands.c: atajos y acciones.src/input.c: lectura de teclado y secuencias ANSI.src/workspace.c: arbol de archivos.include/: headers publicos del proyecto.