Editor de texto orientado a líneas diseñado para la edición eficiente de archivos desde la terminal. Inspirado en editores clásicos como ed, pero con una interfaz moderna y características avanzadas.
- 📝 Multi-buffer: Edita hasta 10 archivos simultáneamente
- 🔍 Búsqueda y Reemplazo: Búsqueda de texto con navegación y reemplazo global
- 📋 Portapapeles Interno: Copia y pega líneas entre archivos
- 🌐 Soporte UTF-8: Manejo completo de caracteres especiales y acentos
- 📄 Paginación: Visualización eficiente de archivos largos
- ⚡ Operaciones por Rangos: Comandos eficientes sobre múltiples líneas
- 🎯 Edición Interactiva: Modo de edición de línea con soporte completo para cursor
git clone https://github.com/713avo/EDT.git
cd EDT
makesudo make installEsto instalará EDT en /usr/local/bin/EDT.
sudo make uninstall# Crear un archivo nuevo
./EDT
# Abrir un archivo existente
./EDT archivo.txt| Comando | Descripción |
|---|---|
h |
Mostrar ayuda |
l |
Listar todo el archivo |
l10-20 |
Mostrar líneas 10 a 20 |
g |
Ir al final del archivo y editar |
g10 |
Ir a línea 10 y editar |
s/texto |
Buscar texto |
s/viejo/nuevo/g |
Reemplazar todas las ocurrencias |
c10-15 |
Copiar líneas 10 a 15 |
p20 |
Pegar en línea 20 |
d10 |
Borrar línea 10 |
w |
Guardar archivo |
x |
Guardar y salir |
q |
Salir |
$ ./EDT mi_archivo.txt
Editor de líneas - Archivo: mi_archivo.txt
Escribe 'h' para ver la ayuda
:l
1- Primera línea del archivo
2- Segunda línea
3- Tercera línea
:g2
2-> Segunda línea modificada
ESC
:w
Archivo guardado: mi_archivo.txt
:q
Saliendo del editor
EDT permite trabajar con varios archivos simultáneamente mediante buffers:
:o archivo1.txt # Abrir archivo en nuevo buffer
:o archivo2.txt # Abrir otro archivo
:bl # Listar todos los buffers activos
:b1 # Cambiar al buffer 1
:b2 # Cambiar al buffer 2
:bc # Cerrar buffer actual
En el modo de edición de línea:
| Tecla | Acción |
|---|---|
← / → |
Mover cursor izquierda/derecha |
ESC |
Salir del modo edición |
Enter |
Confirmar línea y pasar a la siguiente |
Backspace |
Borrar carácter anterior |
Tab |
Insertar tabulación |
- Máximo 1000 líneas por buffer
- Máximo 1024 caracteres por línea
- Máximo 10 buffers simultáneos
- Portapapeles interno (no sincronizado con el sistema)
- MANUAL.md: Manual completo en Markdown
- Manual-EDT.pdf: Manual en PDF (18 páginas)
- Manual-EDT.tex: Código fuente LaTeX del manual
- Sistema operativo Unix/Linux compatible con POSIX
- Compilador GCC con soporte para estándar C99
- GNU Make
- Terminal compatible con secuencias de escape ANSI
gcc -Wall -Wextra -std=c99 EDT.c -o EDTEDT/
├── EDT.c # Código fuente principal (1,083 líneas)
├── MANUAL.md # Manual de usuario en Markdown
├── Manual-EDT.tex # Manual en LaTeX
├── Manual-EDT.pdf # Manual en PDF
├── Makefile # Sistema de compilación
├── README.md # Este archivo
└── .gitignore # Configuración de Git
EDT está implementado como un único archivo C con las siguientes componentes:
- Control de Terminal: Manejo de modo raw y lectura de teclas
- Gestión de Buffers: Creación, cierre y cambio de buffers
- Edición de Líneas: Copiar, pegar, borrar líneas
- Búsqueda y Reemplazo: Motor de búsqueda con navegación
- E/S de Archivos: Carga y guardado de archivos
- Editor Interactivo: Edición con cursor posicionable
- Procesador de Comandos: Intérprete principal
EDT es ideal para:
- Edición rápida de archivos de configuración
- Logs y archivos de texto pequeños
- Entornos con recursos limitados
- Servidores remotos sin editores gráficos
- Aprendizaje de editores orientados a líneas
- Scripts y automatización de edición de texto
| Característica | EDT | ed | vim | nano |
|---|---|---|---|---|
| Multi-buffer | ✓ | ✗ | ✓ | ✗ |
| Editor interactivo | ✓ | ✗ | ✓ | ✓ |
| Modo visual | Limitado | ✗ | ✓ | ✓ |
| Curva de aprendizaje | Baja | Media | Alta | Baja |
Las contribuciones son bienvenidas. Por favor:
- Fork el repositorio
- Crea una rama para tu feature (
git checkout -b feature/AmazingFeature) - Commit tus cambios (
git commit -m 'Add some AmazingFeature') - Push a la rama (
git push origin feature/AmazingFeature) - Abre un Pull Request
Este proyecto está bajo la Licencia MIT. Ver el archivo LICENSE para más detalles.
Proyecto desarrollado como editor de texto educativo y funcional para entornos Unix/Linux.
- Inspirado en el editor
edde Unix - Diseñado para ser ligero, eficiente y fácil de usar
- Documentación completa en español
- GitHub: @713avo
- Repositorio: https://github.com/713avo/EDT
EDT - Editor de Texto para Terminal | Versión 1.0