# MDK: editor de Markdown *[Read this in English](./README.md)* [![License: MIT](https://img.shields.io/badge/license-MIT-brightgreen.svg)](./LICENSE) [![Platform](https://img.shields.io/badge/platform-Windows-0078D6.svg)](#descargar) **Editor de Markdown simple y sin fricción para Windows: sin publicidad, sin funciones pagas, sin cuenta.** Abre y edita `.md`/`.txt`, convierte líneas seleccionadas en encabezados y estructura Markdown con un clic, y exporta o imprime directo a un PDF bien formateado. Interfaz totalmente personalizable por skins (incluye la identidad visual de VDC Process Lab por defecto, o pásate a un skin genérico o personalizado), disponible en español e inglés (detecta el idioma del sistema). Gratis y de código abierto (MIT) porque la mayoría de editores de Markdown que existen esconden el formato básico detrás de publicidad o un plan pago. MDK no. ![MDK: editor y vista previa lado a lado](./site/img/split.png)

Comparar dos documentos Skins

Sitio web: https://earubioc.github.io/mdk/ Ver [`CHANGELOG.md`](./CHANGELOG.md) para el historial de versiones. ## Descargar Ir a [Releases](../../releases) y descargar el último `.exe`: - **`MDK-Setup-X.X.X.exe`**: instalador con asistente (accesos directos en Escritorio/Inicio). Recomendado; se actualiza solo. - **Microsoft Store**: [mdk Markdown Editor](https://apps.microsoft.com/detail/9PKLBD74P3J7) (firmado por Microsoft, se actualiza por la tienda) - **winget**: `winget install earubioc.MDK` (cuando el paquete sea aprobado en el catálogo de winget) - **`MDK-portable.exe`**: se ejecuta directo, sin instalar nada. ## Requisitos - Node.js 18+ y npm (solo para desarrollo y empaquetado, no para usar la app ya compilada) - Windows 10/11 de 64 bits ## Desarrollo ```bash npm install npm start ``` Esto abre la app en una ventana Electron sobre el código en `src/`. ## Generar el ejecutable de Windows ```bash npm run dist # genera portable + instalador NSIS npm run dist:portable # solo .exe portable (no requiere instalación) npm run dist:installer # solo instalador NSIS (con acceso directo en Escritorio/Inicio) ``` Los artefactos quedan en `release/`. Para instalar en otro computador solo hace falta compartir el `.exe` final (`MDK-Setup-X.X.X.exe` o `MDK-portable.exe`); el resto de archivos que deja `release/` (`win-unpacked/`, `.yml`, `.blockmap`) son soporte interno del build. Ver [`manual_para_dummies.md`](./manual_para_dummies.md) para el paso a paso sin tecnicismos. Si `electron-builder` falla con un error de "symbolic link" de `winCodeSign`, activa el "Modo de programador" de Windows (Configuración → Privacidad y seguridad → Para desarrolladores) o corre la terminal como Administrador — ese paso firma el `.exe` y le graba el nombre/ícono propio de MDK, y necesita uno de esos dos permisos en Windows. Cada push a `main` corre una validación automática (GitHub Actions, `.github/workflows/ci.yml`). Cada tag `vX.Y.Z` compila el instalador y el portable y los publica como GitHub Release (`.github/workflows/release.yml`). ## Estructura ``` MDK/ ├── main.js # proceso principal de Electron: ventana, menú, diálogos de archivo, exportación a PDF, idioma ├── preload.js # puente seguro (contextBridge) entre main y renderer ├── src/ │ ├── index.html # tabbar, buscador, toolbar de formato, sidebar, panes, modales │ ├── style.css # estilos de la app + variables de skin │ ├── renderer.js # documentos/pestañas, formato, skins, idioma, búsqueda, zoom, PDF │ ├── markdown.js # conversor Markdown → HTML propio, sin dependencias │ └── i18n/strings.js # diccionario español/inglés compartido entre main y renderer ├── .github/workflows/ # CI (validación) y Release (build + publicación en GitHub) ├── package.json # scripts y configuración de electron-builder ├── LICENSE # MIT ├── CHANGELOG.md # historial de versiones └── manual_para_dummies.md # guía sin tecnicismos (build, instalación, asociar .md) ``` ## Uso - **Idioma**: español/inglés, detecta el idioma del sistema al primer arranque; se puede cambiar en cualquier momento desde el botón ES/EN o el menú "Idioma", sin reiniciar - **Pestañas**: varios documentos abiertos a la vez: nueva pestaña (Ctrl+N), cerrar (Ctrl+W), reordenar arrastrando; al cerrar una con cambios pregunta Guardar / No guardar / Cancelar - **Archivo**: Abrir (Ctrl+O), Guardar (Ctrl+S), Guardar como (Ctrl+Shift+S) - **Formato**: selecciona una o varias líneas y pulsa H1/H2/H3 en la barra (o Ctrl+1/2/3) para convertirlas en encabezado (`#`, `##`, `###`); Ctrl+0 vuelve a texto normal. Negrita (Ctrl+B), cursiva (Ctrl+I), código en línea (Ctrl+E), lista (Ctrl+L), cita (Ctrl+Shift+Q) - **Editor / Vista previa / Ambos**: tres modos de vista — solo Editor (Ctrl+Shift+E), solo Vista previa (Ctrl+Shift+V), o los dos lado a lado (Ctrl+Shift+B), con un divisor arrastrable - **Tablas**: las tablas Markdown estándar (`| col | col |`) se renderizan en la vista previa y en el PDF exportado, con soporte de alineación (`:---`, `---:`, `:---:`); en la vista previa también puedes arrastrar el borde entre columnas para ajustar su ancho (solo visual, no modifica el archivo) - **Comparar documentos**: elige 2 pestañas abiertas y velas lado a lado (botón ⧉ o Ctrl+Shift+C), cada lado con su propio control Editor/Vista previa, con un candado opcional para sincronizar el scroll de ambos paneles - **Abrir un archivo**: doble clic en un `.md`/`.markdown` (MDK registra la asociación al instalar), arrastra un archivo a la ventana, o usa Archivo → Abrir reciente para tus últimos archivos - **Índice del documento**: botón ☰ muestra/oculta la estructura de encabezados (Ctrl+\); clic en un ítem salta a esa línea - **Buscar**: Ctrl+F, siguiente/anterior dentro del buscador - **Zoom**: botones `− 16px +` en la barra (Ctrl+= / Ctrl+-) - **Modo oscuro**: botón ☾ (Ctrl+Shift+D) - **Skins**: botón 🎨: VDC Process Lab, Genérico, Océano, Bosque, Lectura (papel crema, serifa), o personalizado (colores y tipografía propios) - **Información del documento**: botón ⓘ: palabras, caracteres, líneas, tokens estimados, y novedades de la app - **Exportar a PDF**: botón "Exportar PDF" o Ctrl+P: guarda un `.pdf` con el skin activo - **Imprimir**: Ctrl+Shift+P abre el diálogo de impresión nativo de Windows - **Configurar página**: botón "Página…": tamaño de papel (Carta, Oficio, Legal, A4, A5, A3), orientación y márgenes, usados al exportar a PDF e imprimir; el botón "Hoja" muestra la vista previa como una hoja de ese tamaño - **Matemática**: fórmulas LaTeX en línea (`$E=mc^2$`) y en bloque (`$$ ... $$`), mostradas como ecuaciones en vista previa, comparación y PDF (convertidor propio; cubre fracciones, raíces, sumas, integrales, matrices y más) ## Licencia MIT, ver [`LICENSE`](./LICENSE). Uso, copia, modificación y redistribución libres, incluso comercial, con la única condición de conservar el aviso de copyright.