v4.13.0
El editor donde viven los agentes.
v4.0 es la release mayor agent-native author. Los agentes han pasado de "CLI externo llamado ocasionalmente" a ciudadanos de primera clase dentro del editor — presentes continuamente, trabajando a través de múltiples vaults, visibilidad completa, reproducibles, reversibles. Todo debajo está en el core, no se necesitan plugins. El instalador sigue siendo ~15 MB.
v4.13.0
4.13.0 — por fin se puede ordenar el árbol de archivos.
- Los archivos y carpetas se pueden arrastrar a su sitio. Mover una nota a una subcarpeta obligaba a salir al explorador: el árbol sabía renombrar, pero no mover. Ahora se arrastra un elemento sobre una carpeta; con teclado o pantalla táctil está «Mover a…» en el menú contextual, con filtro al escribir y Enter. El movimiento se puede deshacer, las pestañas abiertas lo siguen (también las que están dentro de una carpeta movida) y los enlaces relativos se reanclan: al bajar un nivel,
_assets/img.pngpasa a../_assets/img.png. Lo pidieron tres personas. (#290, #267, #273) - Se pueden mostrar los archivos ocultos.
.gitignore,.obsidian/o una bóveda entera de notas que empiezan por punto eran inalcanzables desde la app. Nueva opción, desactivada por defecto: casi nadie necesita ver.git. - El árbol de archivos se puede filtrar por tipo. La lista ofrece las extensiones que la bóveda realmente tiene, con su recuento, no un listado enlatado de veinte formatos. Al elegir
.txttambién desaparecen las carpetas sin ningún txt dentro. Mientras el filtro está activo, un aviso en la parte superior del árbol nombra los tipos y los quita de un clic. (#282) - El editor y la vista previa se distinguen en vista dividida. Uno al lado del otro eran la misma superficie y la división se leía como una sola columna ancha. Al activarlo, la vista previa recibe un tono propio, derivado del tema actual, así que vale para los ocho. (#279)
- Una ventana demasiado estrecha ya no recorta la barra de herramientas en silencio. En una pantalla de 1366×768 la barra necesita 1532 px: 166 px —varios botones y el título del documento— quedaban fuera de la ventana. Siempre se pudo desplazar en horizontal, pero nada lo indicaba. Ahora aparece un «⋯» cuando la fila se desborda y despliega toda la barra en dos o tres filas con etiquetas. (#282)
v4.12.1
4.12.1 — texto que se salía de la página y menús a los que no se llegaba.
- El texto pegado ya no se sale de la página. Cuando los espacios de un documento vienen de Word, de una página web o de una conversación, suelen ser espacios duros y no espacios normales: el archivo de uno de los informes traía 119 frente a 23 reales. Un párrafo pegado así es, para cualquier motor de maquetación, una única palabra que no se puede partir, así que se salía de la columna sin más: desplazamiento lateral en la vista previa y texto recortado en el borde del PDF exportado. Corregido en la vista previa, la exportación a PDF, la impresión y la exportación a HTML. La edición en vivo nunca se vio afectada, que es justo lo que hacía parecer que fallaba el renderizado. (#293)
- El panel de esquema vuelve a ocupar la barra lateral. Si arrastrabas el divisor mientras el esquema compartía la barra con otro panel y luego cerrabas ese panel, el esquema se quedaba clavado a la altura que tenía: una caja de cuatro filas en una barra tres veces más alta, y sin ningún divisor que arrastrar, porque los divisores solo existen entre paneles. Ahora un panel que tiene la barra para él solo la ocupa entera, el panel inferior absorbe lo que dejan los de arriba, y el divisor se muestra al pasar el ratón en lugar de ser una línea invisible de cuatro píxeles. (#294)
- El AppImage se instala en los gestores de AppImage. Ejecutándolo directamente siempre funcionó, pero las herramientas que lo desempaquetan —AppManager, Gear Lever— lo rechazaban de plano: el empaquetador había dejado grabado un enlace simbólico absoluto al disco de la máquina de compilación, una ruta que no existe en el ordenador de nadie más. (#291)
- GitLab y los remotos git autoalojados ya tienen dónde poner la URL. Elegir «URL de git HTTPS personalizada» llevaba a una casilla de token y después a un panel vacío: ni campo ni botón, mientras el texto de ayuda justo encima te pedía pegar un enlace de clonación. Esos remotos no tienen una lista de repositorios que consultar, así que pegar la URL es todo el flujo, y era precisamente lo que faltaba. Tampoco tenían forma de cerrar sesión.
- El menú de barra inclinada se puede recorrer con el teclado. La flecha abajo llevaba el resaltado hasta el noveno elemento y parecía detenerse ahí, y una lista desplazada con el ratón volvía de golpe al principio: todo lo que había bajo el separador, pizarras incluidas, quedaba fuera de alcance. El menú emergente se destruía y se reconstruía con cada pulsación, lo que reiniciaba el desplazamiento y saltaba el código que mantiene a la vista la fila resaltada.
v4.12.0
4.12.0 — plegar, imprimir, deshacer.
- Plegar un encabezado y todo lo que hay debajo. Pulsa la flecha del margen o usa los comandos de plegado para cerrar una sección, todas las secciones o todo lo que quede por debajo de un nivel. El modelo es un análisis de texto plano en vez de una función de CodeMirror, así que funciona igual en el editor de textarea que usa Windows.
- La impresión ya no sigue el tema de la aplicación. Un tema oscuro se imprimía oscuro: tinta sobre papel, o un PDF que nadie podía leer. La impresión y el PDF usan ahora su propia paleta clara, con una opción oscura explícita si era eso lo que querías.
- Borrar un archivo da ocho segundos para deshacerlo. El borrado se retiene en vez de mover el archivo a algún sitio ingenioso: se queda exactamente donde está hasta que se agota el tiempo. Todo lo que necesita el sistema de archivos asentado —crear, renombrar, cambiar de espacio de trabajo, cerrar la ventana— ejecuta antes el borrado pendiente.
- Captura rápida, desde donde sea. Un atajo global (⌘⌥M por defecto) abre una casilla pequeña sobre lo que estés haciendo. Escribe una línea, pulsa Intro y aparece en tu bandeja de entrada sin que SoloMD llegue a ponerse delante.
- Un panel de Tareas. Cada
- [ ]del espacio de trabajo en una sola lista. Las prioridades y las fechas se leen tanto de los emoji de Obsidian Tasks (⏫,📅 2026-09-10) como de una notación en ASCII puro (!!!,due:2026-09-10), así que un vault existente sigue funcionando y nadie tiene que buscar un selector de emoji a media frase. Pulsa una tarea para ir a su línea; márcala para escribir el archivo. - Importar Word, PDF, HTML y hojas de cálculo. Los conversores ya estaban en la aplicación, sin forma de llegar a ellos. Ahora hay una entrada de menú, y al importar un nombre que ya existe se elige el siguiente libre en vez de sobrescribir, comparando sin distinguir mayúsculas, porque Windows y macOS no se ponen de acuerdo sobre qué cuenta como colisión.
- Editar una tabla como una cuadrícula. Añade y quita filas y columnas sin contar barras. El texto CJK se ajusta por ancho de visualización, así que el Markdown de origen se mantiene alineado en una fuente monoespaciada en lugar de desplazarse una columna por cada carácter chino.
- Plantillas DOCX. Portada, índice, encabezado y números de página: tres preajustes, o configurado por documento con un bloque
docx:en el front matter. - Ecuaciones numeradas y referencias cruzadas.
\labelen una ecuación de bloque recibe un número y un ancla;\eqrefse convierte en un enlace que salta hasta ella. - Una carpeta de espacio de trabajo borrada ya no parece un vault vacío. Si la carpeta desaparecía bajo nuestros pies, el árbol no mostraba nada bajo su propio nombre, indistinguible de haber perdido todos los archivos que contenía. Ahora dice que la carpeta falta, y borra el aviso por sí solo cuando vuelve.
- El menú contextual del árbol de archivos mostraba nombres de clave. Cuatro cadenas no estaban definidas en ningún idioma, así que el menú mostraba
explorer.copyGitUrlen lugar de una etiqueta, en los catorce. Ya están definidas en todos. - Para agentes:
list_tasksen el servidor MCP. Cada casilla del espacio de trabajo con su archivo, línea y estado, igual que lo que muestra el panel de Tareas, de modo que un agente y el panel no puedan discrepar sobre qué línea marcar.
v4.11.22
4.11.22 — cosas que en silencio no hacían nada.
- Archivo → Nueva ventana no abría ninguna ventana. La entrada de menú lanzaba un evento que nadie escuchaba, así que estaba inerte desde el día en que apareció el menú nativo, mientras que la misma acción desde la paleta de comandos sí funcionaba, y por eso se leía como «no pasa nada» en vez de como un error. Ahora ambas siguen el mismo camino, y una ventana que no consigue abrirse lo dice en vez de fallar en silencio.
- Un archivo de texto se abría en blanco tras la edición en vivo. En Windows, pasar de un archivo Markdown en modo vivo a un .txt mostraba un editor vacío mientras los números de línea seguían contando el texto ausente. El contenido nunca se perdió: el margen y el editor se rellenaban en momentos distintos y solo ganaba el margen. Antes había que salir y volver; ahora simplemente se abre.
- Los enlaces [[carpeta/nota]] creaban una segunda nota vacía. Un wikilink con una carpeta dentro nunca se resolvía, así que pulsarlo creaba un duplicado junto a la nota que enlazabas. Ahora se resuelven las rutas de carpeta, los alias del front matter y los archivos creados desde el último escaneo. Gracias a @jukejeew.
- Linux: Archivo → Salir, con Ctrl+Q. Los gestores de ventanas en mosaico ocultan la barra de título, sin ✕ ni una salida evidente. También de @jukejeew.
- Se acabó el parpadeo a pantalla completa al arrastrar el divisor, y un tema propio que volviera a provocarlo ahora lo advierte al cargarse. Gracias a @raopan2021.
v4.11.21
4.11.21 — la página de atajos que no podías ver.
- Ajustes → Atajos se abría en una página vacía. La 4.11.20 publicó la reasignación con su página de ajustes invisible: el panel muestra una categoría cada vez mediante una lista blanca de CSS, y la nueva categoría Atajos nunca se añadió, así que la regla de ocultado atrapó el marcado y nada lo devolvió. Todo estaba ahí y funcionaba; simplemente no podías verlo. La lista blanca cubre ahora las siete categorías.
- Descargas que puedes verificar tú mismo. Cada publicación lleva ahora un
SHA256SUMS.txtcon todos sus archivos, para que puedas comprobar que lo descargado es lo que compilamos. - Sobre el aviso de «análisis» de Chrome en Windows. Las compilaciones de Windows aún no están firmadas, así que la Protección Mejorada de Chrome analiza cada versión nueva y luego informa de que no encontró virus: eso es un aprobado, no una advertencia. Aparte, el instalador x64 de la 4.11.20 disparó un falso positivo del aprendizaje automático de Microsoft Defender, y por eso esa descarga se mantuvo brevemente en la 4.11.19. Ahora cada publicación se analiza con Defender antes de salir, y el instalador x64 de la 4.11.21 sale limpio, así que Windows x64 vuelve a estar al día.
v4.11.20
4.11.20 — los atajos ahora son tuyos.
- Todos los atajos de la aplicación se pueden cambiar. Ajustes → Atajos lista 37 acciones agrupadas por Archivo / Editar / Ver / Navegar / Herramientas. Pulsa Cambiar, marca la combinación que quieras y se aplica al instante, sin reiniciar. Puedes desvincular una acción por completo (si quieres recuperar ⌘E o ⌘D para otra cosa, tómalos), restablecer una sola o restaurarlas todas. Intentar tomar una combinación que ya tiene otra acción se rechaza indicando el nombre de la acción que la posee, en lugar de crear en silencio dos dueños para una tecla.
- Cambiar un atajo lo cambia en todas partes. La combinación que fijas es la que dicen las descripciones de la barra de herramientas, la que muestra la tabla de atajos de la chuleta de Markdown, la que lista la paleta de comandos y —lo que de verdad importa en macOS— la que tiene la barra de menú nativa. Antes el menú poseía ⌘S a nivel del sistema operativo, así que reasignar Guardar habría dejado que ⌘S también guardara; ahora el menú se reconstruye con tus combinaciones, y una acción desvinculada pierde por completo su acelerador de menú.
- Incluido el ⌘J propio del editor. Reescritura con IA vive en el keymap del editor y no en el de la aplicación, y también se puede reasignar: el cambio llega a un editor ya abierto, no solo al siguiente que abras. Las teclas que solo significan algo dentro de una ventana emergente (flechas, Tab, Intro, Esc) se mantienen fijas, igual que las que posee el sistema operativo: deshacer, cortar, copiar, pegar.
v4.11.19
4.11.19 — el teléfono deja de ser un escritorio encogido.
- Una disposición pensada para un teléfono. Medido en una pantalla de 390px antes de esta versión: el árbol de archivos ocupaba 250px y la barra lateral derecha otros 260 —de 390—, así que el editor era una rendija o desaparecía; la vista dividida dejaba unos 195px a cada panel; la barra de estado se partía en dos líneas; y la barra de herramientas era una cinta de 29 iconos por la que había que deslizar. Los paneles laterales son ahora cajones que flotan sobre el editor y se cierran tocando fuera, de modo que el editor siempre tiene el ancho completo. La división apila los paneles en vertical en lugar de uno al lado del otro. La barra de herramientas conserva seis controles —árbol de archivos, guardar, los tres modos de vista, búsqueda— y un «más» que despliega la barra en una hoja donde cada control restante tiene icono y etiqueta; nada quedó inalcanzable. La barra de estado mantiene los contadores que se mueven mientras escribes y suelta los valores de referencia del escritorio. Los ajustes dejan de ser un carril de navegación de 160px junto a una columna de 145px. Las tabletas quedan deliberadamente intactas: la disposición sigue al viewport, no al sistema operativo, así que un iPad conserva la disposición de escritorio y una ventana de escritorio estrechada recibe la del teléfono.
- La negrita que termina en un signo de puntuación de ancho completo ya se renderiza.
**限制:**硬链接salía como asteriscos literales. El**de cierre queda tras un dos puntos de ancho completo y antes de un carácter han, y CommonMark dice que una secuencia en esa posición no puede cerrar: una forma que está por todas partes en la escritura china. SoloMD sigue ahora la enmienda CJK de CommonMark, que lee esas reglas como puntuación no CJK. Se corrigieron ambos motores: el renderizador de vista previa y exportación y el analizador aparte que hay detrás de la edición en vivo, para que los dos paneles no puedan discrepar sobre el mismo documento. ASCII no cambia. - Una fórmula
$$de varias líneas se mantiene entera en Windows. Un bloque con\begin{aligned}se partía en tres, con la línea central indentada renderizada como un bloque de código gris. El divisor de bloques del editor de Windows conocía las vallas ``` pero no$$, así que se metía en la fórmula línea a línea, y cualquier línea indentada cuatro espacios —algo rutinario dentro dealigned— se convertía en un bloque de código indentado por sí misma. - La exportación empieza en la carpeta del propio documento. Al diálogo de guardado solo se le pasaba un nombre de archivo, así que el sistema reutilizaba el último sitio donde guardaste: exporta una nota desde tu carpeta de notas y el diálogo podía abrirse aún en las descargas de la semana pasada.
- La configuración inicial de IA ofrece todos los proveedores, y una URL base. Listaba cuatro marcas mientras los ajustes tenían dieciséis, y no tenía campo de dirección, así que quien usara un endpoint de retransmisión o un servidor propio tenía que saltarse el asistente entero. Ahora muestra la lista completa con una URL base editable, y los proveedores que no necesitan cuenta ya no exigen clave. Aparte, la verificación ya no falla en endpoints que no sirven una lista de modelos: una pasarela que devuelve 404 en
/v1/modelsmientras el chat funciona perfectamente se verifica ahora con un chat de un token. Una clave equivocada sigue fallando, como debe ser. - El modo lectura usa la fuente que elegiste. Declaraba su propia pila de serifas y se tragaba el ajuste por completo; el comentario del código incluso afirmaba que podías anularlo. En un teléfono su botón de salida además se sentaba encima del primer encabezado; se muda abajo a la derecha, donde llega un pulgar.
- El script de instalación de macOS vuelve a funcionar.
curl -fsSL https://solomd.app/install.sh | bashfallaba para todos los usuarios de macOS con «Failed to mount DMG»: el script silenciaba precisamente la salida de la que luego intentaba leer el punto de montaje. Gracias a quien lo reportó, cuyo diagnóstico fue exacto. - Los bloques de código tienen botón de copiar mientras editas. En modo vivo un bloque con vallas parece renderizado —las líneas ``` están ocultas—, pero seleccionarlo a mano seguía dando el código fuente: las vallas y, en un bloque anidado en una lista, los dos espacios de indentación de lista delante de cada línea. Pega eso en un terminal y toca limpiarlo a mano. Cada bloque de código lleva ahora el mismo botón de copiar de un clic que tiene el panel de vista previa, y copia lo que copiaría un renderizador: sin vallas, quitada la indentación del bloque, conservada la del propio código. Presente en los tres sitios donde se muestra código: el editor en vivo, el panel de vista previa y el editor de bloques de Windows.
- Se detecta Ollama en otra máquina. Si ejecutabas Ollama en un NAS o en un equipo al otro lado de la sala y ponías su dirección en la URL base, Ajustes → IA insistía en «no detectado»: la sonda ignoraba ese campo y siempre preguntaba a localhost, aunque el chat en sí hablaba perfectamente con tu servidor. Ahora sigue la dirección que fijas, vuelve a comprobar mientras la escribes, dice exactamente qué sondeó y, cuando una máquina remota no responde, indica qué revisar (un servidor remoto necesita
OLLAMA_HOST=0.0.0.0y un puerto abierto) en vez de ofrecerse a instalar Ollama en tu portátil. - Nuevo proveedor: cualquier servidor compatible con OpenAI que alojes tú —
llama-serverde llama.cpp, LM Studio, vLLM, LocalAI, una pasarela interna. Antes la única entrada era tomar prestada la ranura de otro proveedor, y no funcionaba: la clave era obligatoria (así que la gente se la inventaba) y un simplehost:puerto—justo lo que esos servidores imprimen al arrancar— daba 404 porque se asumía que el prefijo/v1ya estaba escrito. Ahora el campo de clave es opcional, la dirección se completa por ti, la lista de modelos se lee del servidor y, si no consigue conectar, ves la respuesta del propio servidor (HTTP 404, conexión rechazada) más qué revisar. También usable desde recipes:provider: openai-compat(ollama-cpp/lmstudio/vllm).
v4.11.17
4.11.17 — los atajos con Opción, y un bloqueo que Linux ya no tiene que aguantar.
- Todos los atajos ⌘⌥ funcionan en macOS. macOS convierte Opción+letra en otro glifo antes de que la pulsación nos llegue —Opción+N llega como «Dead», Opción+P como «π», Opción+C como «ç»— y nosotros comparábamos por la letra, así que ⌘⌥N (nuevo archivo de texto), ⌘⌥P (presentación), ⌘⌥⇧P (imprimir a PDF), ⌘⌥B y ⌘⌥L sencillamente nunca se habían disparado en un Mac. Ahora comparan por la posición física de la tecla. Ya puestos, ⌘⌥C copia la selección como Markdown: el único formato de copia que la gente pega de verdad en otro sitio, y el único que no tenía atajo.
- Linux: SoloMD ya no espera a un servicio de accesibilidad que no responde. Cuando el bus AT-SPI del escritorio acepta una llamada y nunca contesta, GTK y WebKit bloquean cada uno la interfaz durante todo su tiempo de espera de D-Bus —25 s y 30 s— antes de que la ventana pueda dibujarse o aceptar un clic. SoloMD pregunta ahora a ese bus por su cuenta, con un presupuesto de dos segundos, antes de que arranque GTK: si responde, nada cambia y los lectores de pantalla funcionan igual que antes; si no, arrancamos sin accesibilidad en vez de esperarla. Medido en un equipo con el bus atascado a propósito, el tiempo hasta poder usarla pasó de 51 s a 3 s.
Esto no arregla los bloqueos reportados en Arch y Ubuntu (#253, #200). Aquellos no se recuperan solos; este sí lo hacía siempre, así que es otra cosa, y esa investigación sigue abierta. Si sufres alguno de esos, las incidencias son el sitio para seguirlo.
v4.11.16
4.11.16 — el cursor se queda donde lo pusiste.
- El cursor ya no salta mientras escribes en Windows. Si algo tocaba el archivo abierto desde fuera —un cliente de nube sincronizando, un pull de sincronización, un ciclo de guardado—, SoloMD recargaba el búfer y el cursor salía disparado al otro extremo del documento. A veces las letras dejaban de entrar del todo, porque el mismo evento interrumpía una composición IME en curso o sacaba el foco del editor, momento en que las pulsaciones sueltas se leían como atajos. Existía un arreglo desde la 4.11.1, pero solo cubría el editor CodeMirror; Windows usa un cuadro de texto nativo y nunca lo recibió.
- La sincronización con Gitee funciona. No podía autenticarse en absoluto: enviábamos el nombre de usuario de autenticación básica que exige GitHub, y Gitee lo rechaza de plano, así que todos los intentos fallaban por válido que fuera el token. Verificado de extremo a extremo contra un repositorio real de Gitee. (#249)
- El agente puede escribir de verdad cuando se lo permites. «Permitir que el agente escriba en el vault» no tenía efecto: las herramientas de escritura nunca se le enviaban al modelo, así que respondía que no tenía ninguna. Y las ejecuciones de recipes terminaban en su rama pero nunca aparecían en «Pendiente de revisión», así que no se podían aceptar ni rechazar. Ambas rastreadas por @jclg83. (#247, #248)
- Corrección ortográfica en tu idioma. El corrector estaba fijado al inglés, lo que marcaba cada palabra para todos los demás. Elige un diccionario en Ajustes → Escritura y deja cualquier par Hunspell
.aff+.dicen la carpeta que abre el botón. (#246) - Conversión de mayúsculas y minúsculas. Mayús+F3 recorre la selección —o la palabra bajo el cursor— entre minúsculas / MAYÚSCULAS / Título, con comandos explícitos en la paleta. Solicitado en Gitee.
- Las comillas tipográficas quedan desactivadas para siempre. Hacerlas opcionales en la 4.11.11 solo cambió el valor por defecto, así que quien ya las tenía seguía viendo un hueco ancho tras los apóstrofos en fuentes CJK. Ahora se limpian una vez y siguen desactivadas salvo que las vuelvas a activar. (#251)
v4.11.15
4.11.15 — tres cosas que Gitee llevaba semanas diciéndonos.
- Los comandos de barra no hacían nada en Windows salvo en Edición en vivo. Windows usa un cuadro de texto simple en vez de CodeMirror, porque WebView2 pierde caracteres durante la entrada en chino, y el autocompletado de reemplazo solo se había conectado al editor de bloques de Edición en vivo. En 仅编辑 y 分栏 la ventana emergente no aparecía nunca, no se podía navegar ni insertar. Y no era solo el menú de barra: los wikilinks
[[, las etiquetas#y las citas@comparten el mismo disparador y estaban igual de muertos. Los cuatro funcionan ahora en todos los modos, con la ventana emergente siguiendo la línea del cursor. (Gitee IK6JCC) - Las dos exportaciones a PDF dicen ahora lo que producen de verdad. «Exportar a PDF» rasteriza la página, así que el texto es una imagen: no seleccionable, no buscable y varias veces más grande. La exportación que la gente quería estaba justo debajo con un nombre que no daba ninguna pista. Ahora están etiquetadas —PDF (texto), texto real seleccionable a través de la impresión del sistema, listada primero y recomendada; PDF (imagen), rasterizada pero guardada sin diálogo— en la barra de herramientas y en la paleta de comandos. (Gitee IK8QJQ)
- Las exportaciones a Word / EPUB / ODT / LaTeX vuelven a coincidir con la vista previa. Esos formatos pasan por Pandoc, al que se le entregaba el archivo en bruto mientras la vista previa recibía antes una pasada de correcciones tolerantes. Una sublista indentada dos espacios se anidaba en pantalla y salía plana en un .docx. Pandoc ve ahora el mismo texto que tú. (Gitee IJXS8V)
v4.11.14
4.11.14 — la pantalla en blanco que se tragaba tus notas.
- Una vista guardada que ya no existía podía dejar en blanco todo el editor, sin vuelta atrás. Reportado en Android como «las notas no se abren», pero las notas sí se abrían: saltaba el aviso, la barra de estado contaba las líneas, y luego no aparecía nada. El área de contenido muestra exactamente una cosa a la vez y el editor va el último de la fila, así que una vista guardada marcada como abierta conservaba su sitio incluso después de que la vista ya no existiera. Y como el botón ‹ de volver del panel vivía dentro del mismo bloque que se negaba a renderizarse sin vista, no quedaba nada que pulsar. Abrir más archivos no ayudaba: cada uno se abría en un panel que no podía dibujar. A Android le pasaba más a menudo, ya que una carpeta elegida con el selector del sistema con frecuencia no puede leer el directorio de vistas, pero nada de esto era exclusivo de Android. El editor toma el mando en cuanto una vista deja de resolverse, y el botón de volver siempre se renderiza. (#245)
- El tema Aurora recibió un repaso. Bordes finos con tinte aurora, interiores de panel translúcidos que siguen siendo legibles sobre el degradado, y se acabó el destello a pantalla completa al arrastrar el borde de un panel. Gracias @raopan2021. (#244)
- El paquete de Arch vuelve a estar al día.
solomd-binestá publicado en el AUR y el empaquetado del repositorio (atascado en 4.1.0) sigue ahora las versiones reales. Gracias @gonwe. (#241)
v4.11.13
4.11.13 — una integración de Gitea en condiciones, 11 temas nuevos y dos cosas que en silencio no hacían nada.
- Gitea / Forgejo es ahora un destino de sincronización de primera. La 4.11.12 hizo alcanzable la sincronización autoalojada; esto la hace real. Tu token de Gitea vive en su propia entrada del llavero, así que puedes tener a la vez un token de GitHub y uno de Gitea. La URL de tu servidor se recuerda y se comprueba antes de que te comprometas con ella. Y SoloMD puede ahora listar tus repositorios y crear el repositorio del vault por ti, en vez de obligarte a pegar una URL de clonado. Aportado por @JumpingY, verificado de extremo a extremo contra un servidor Gitea real. (#150)
- 11 temas nuevos de la comunidad. Aurora, Deep Blue, Deep Green, Deep Purple, Frost Blue, Graphite Gray, Ink Blue, Rose Pink, Soft UI, VSCode Modern y Warm Sand, de @raopan2021, en Ajustes → Explorar temas de la comunidad. También hay un botón de recarga junto a tu archivo CSS propio, para que puedas editar un tema en tu editor y verlo aplicado sin reiniciar. (#239)
- Buscar en carpeta estaba muerto si alguna vez habías ocultado la barra lateral derecha. Ctrl/Cmd+Mayús+F, el botón de la barra de herramientas y Ver → Buscar en carpeta no hacían absolutamente nada, y volver a pulsar lo desactivaba otra vez en silencio. El panel de búsqueda vive en la barra lateral derecha, y el interruptor maestro de ocultado de la barra tenía prioridad, así que el panel se abría donde nada podía dibujarlo. Los cuatro puntos de entrada vuelven a mostrar la barra lateral. (#209)
- Mantener Cmd en un Mac ya no reescala toda la aplicación por accidente. El zoom por scroll saltaba con cualquier evento de scroll, así que un trackpad bajo un dedo apoyado —con Cmd mantenido para ⌘S o ⌘Tab, como suele pasar— podía llevar toda la interfaz hasta el tamaño mínimo. El movimiento incidental tiene ahora unas cinco veces menos probabilidad de hacer zoom, mientras que el zoom deliberado no cambia, y hay un interruptor en Ajustes → Básicos para desactivar el gesto por completo. (#215)
v4.11.12
4.11.12 — la sincronización funciona en tu propio servidor, y Android deja de prometer lo que no puede.
- La sincronización autoalojada con Gitea / Forgejo funciona de verdad. El motor de sincronización nunca fue específico de GitHub; la pantalla de configuración sí. El selector de proveedor solo aparecía después de guardar un token, y guardar validaba cada token contra github.com y lo borraba si eso fallaba, así que un token autoalojado nunca podía sobrevivir. Elige primero tu proveedor, y ya no le preguntamos a github.com por tokens que no son suyos. Verificado de extremo a extremo contra un servidor Gitea real. (#229)
- Android ya no muestra ajustes de sincronización que no puede ejecutar. La compilación de Android no lleva motor Git dentro, pero la aplicación seguía dibujando todo el panel de sincronización y la interfaz de historial de versiones: cada botón respondía con un críptico
Command not found, y con el auto-commit activado recibías un error en cada guardado. Esos controles ya no están en Android, sustituidos por una explicación sencilla. (#230) - Se acabó la carpeta
.solomden cada carpeta que abres. Abrir una carpeta solo para leer una nota dejaba atrás un directorio.solomd. Esa carpeta sirve para pasar tus pestañas abiertas entre dispositivos, así que ahora solo se escribe dentro de carpetas realmente sincronizadas con la nube; en una carpeta local corriente no se crea nada. (#236) - OpenCode Go se suma a la lista de proveedores de IA. 24 modelos con una sola suscripción, aportado por @fengzhoujingshui. (#232, #235)
- El instalador de Linux funciona en ARM.
install.shsolo descargaba paquetes x86_64, así que las compilaciones arm64 que ya publicábamos eran inalcanzables en una Raspberry Pi o una máquina virtual ARM. Corregido por @jysz. (#220)
v4.11.11
4.11.11 — los controles de ventana de Windows vuelven a funcionar, y Vim puede guardar.
- Minimizar y cerrar vuelven a funcionar en Windows. Los botones de ventana de la barra de título unificada estaban bloqueados por un permiso que faltaba: los clics no hacían nada y había que cerrar desde la barra de tareas. Corregido y verificado en una compilación real de Windows. El menú Archivo recuperó su entrada Salir, los desplegables ya no se cierran al hacer scroll bajo ellos, y el modo lectura tiene ahora sus propios botones de minimizar y cerrar. (#221, #223)
- Vim puede guardar y salir.
:w,:wq,:xy:qhacen ahora lo que esperarías, encaminados por el flujo real de guardado y cambios sin guardar de SoloMD. De paso cerramos un hueco por el que un guardado disparado justo después de teclear podía perderse las últimas pulsaciones. (#222) - Se acabó el espacio fantasma tras un apóstrofo. La vista previa mantenía activadas por defecto sus comillas tipográficas, y algunas fuentes dibujaban el apóstrofo curvo a ancho completo, lo que se leía como un espacio de más. Las comillas se renderizan ahora exactamente como las escribes; las curvas son un nuevo ajuste opcional. (#216)
- Android: las aplicaciones de diccionario y traducción vuelven a aparecer. Seleccionar texto ofrece ahora tus aplicaciones
PROCESS_TEXTinstaladas (diccionarios sin conexión, traductores). (#224)
v4.11.10
4.11.10 — una barra de título en Windows, y tres correcciones que pediste.
- Windows recibe una barra de título unificada. Tres filas de marco se reducen a una: controles de ventana, pestañas y barra de herramientas comparten una sola fila, como en la aplicación de Mac. Snap Layouts sigue funcionando en el botón de maximizar, y el instalador MSI recibió una identidad visual en condiciones.
- Seleccionar todo ya no puede congelar el editor de Windows. Ctrl+A en el editor de bloques lo gestiona ahora SoloMD por su cuenta, en vez de pelearse con el textarea nativo. (#189, #210)
- Los bloques de código se ajustan en Edición en vivo, y los PDF dejan de recortarlos. El ajuste «ajustar líneas largas en bloques de código» se aplica ahora también al editar, y la exportación a PDF ya no corta las líneas de código largas. (#211)
- Las listas anidadas dentro de listas numeradas conservan su forma. Una sublista con viñetas bajo una lista ordenada ya no se aplana a un solo nivel. (#213)
v4.11.9
4.11.9 — zoom que no pierde la puntería, y cuatro comodidades pedidas.
- El zoom ⌘+/⌘- ya no rompe la precisión del clic en macOS. El zoom pasa ahora por la webview del sistema (como el de Safari), así que el cursor aterriza exactamente bajo el puntero en cualquier nivel de zoom. (#192)
- La barra lateral ya no puede quedarse oculta. Abrir el esquema —o cualquier panel— desde el atajo, los ajustes o la barra de pestañas devuelve ahora también la barra lateral autooculta. (#207)
- La paleta de comandos habla tu idioma. Los 85 comandos siguen Ajustes → Idioma en 14 idiomas; la búsqueda coincide tanto con el nombre traducido como con el inglés. (#177)
- Opciones nuevas: un interruptor de cursor sólido (sin parpadeo) (#193) y una fuente dedicada para código (#190). Copiar tablas desde la vista previa conserva sus bordes al pegarlas en clientes de correo. (#189)
v4.11.8
4.11.8 — la vista dividida se alinea, las posiciones se quedan.
- La vista dividida se mantiene a nivel. El editor y la vista previa se siguen ahora con precisión de píxel en cualquier posición de scroll: los párrafos con ajuste suave, las imágenes y los bloques de HTML crudo ya no separan los dos paneles, y los números de línea siguen pegados a sus líneas. (#203)
- Tu posición de scroll sobrevive a los cambios de pestaña. En Windows, salir y volver ya no devuelve la vista al principio, ni en Edición, ni en Dividido, ni en Edición en vivo. (#169)
==Resaltado==se renderiza en edición en vivo. Mismo trato que negrita y cursiva: con estilo fuera de la línea del cursor, código fuente cuando la editas; los bloques de código se quedan literales. El modo máquina de escribir centra ahora también la línea del cursor en el editor de Windows. (#199)- Corregidas las etiquetas de salto del esquema más allá de
az. Los documentos largos ya no muestran marcadoresaundefined. (#206)
v4.11.7
4.11.7 — una ruta de instalación fiable en Windows.
- MSI es ahora el único canal instalado de Windows. SoloMD se instala en
C:\Program Files\SoloMD; el ZIP portátil sigue disponible sin instalación. - Las instalaciones antiguas por usuario se migran con seguridad. En el primer arranque desde la ruta del MSI, SoloMD verifica y elimina la instalación NSIS retirada de
%LOCALAPPDATA%\SoloMD, incluidos sus accesos directos obsoletos y su anclaje en la barra de tareas. - Tu trabajo y tus ajustes quedan intactos. La migración nunca elimina
%APPDATA%\app.solomdni documentos del usuario.
v4.11.6
4.11.6 — Windows conserva el icono nuevo tras actualizar.
- Los anclajes de la barra de tareas, los accesos directos y la aplicación en ejecución comparten ahora una identidad estable. Windows ya no vuelve a un icono antiguo o en blanco de la caché después de una actualización.
- Esta es una corrección puntual centrada en Windows. Los paquetes de macOS y Android se regeneran para que las descargas sean coherentes; su comportamiento en cada plataforma no cambia.
v4.11.5
4.11.5 — el HTML incrustado ya funciona en edición en vivo.
- El HTML de bloque se renderiza donde escribes. Contenedores como
<div>,<table>y<details>se pliegan ahora en su resultado renderizado cuando el cursor sale del bloque. - El HTML en línea se comporta como el formato Markdown. Etiquetas como
<strong>,<sup>,<mark>y<kbd>aplican su significado visual en vez de quedarse como código fuente ruidoso. - El código fuente está siempre a un clic. Devolver el cursor a un fragmento de HTML revela el marcado exacto para editarlo.
v4.11.4
4.11.4 — la nueva marca llega al marco de la ventana.
- La barra de título lleva ahora la nueva marca Portal. El antiguo logotipo de texto
#MDha desaparecido de la barra de herramientas de la aplicación. - El diálogo Acerca de coincide. Ambas superficies renderizan ahora un componente de marca compartido, de modo que futuras actualizaciones de identidad no puedan separarse.
- Los iconos de archivo de macOS se incluyen y se registran. El DMG universal firmado y notarizado asocia los archivos Markdown al nuevo icono de documento Portal en papel cálido.
v4.11.3
4.11.3 — una cara nueva, más dos correcciones recientes.
- SoloMD tiene una nueva identidad visual. El nuevo icono naranja
#Portal se publica ahora de forma coherente en macOS, Windows, Linux, iOS, Android, la App Store y el sitio web. - Los archivos Markdown se reconocen de un vistazo. El icono de documento por defecto es una hoja de papel cálido con un doblez naranja y la marca
#Portal a juego. - El modo Vim vuelve a funcionar en Windows. Activar Vim cambia ahora el editor a CodeMirror de inmediato, mientras que el editor normal de Windows conserva su ruta de textarea segura para IME.
- Los bloques de código tienen botón de copiar. Cada bloque con vallas renderizado recibe en su esquina superior derecha una acción de copiar de un clic, fija y accesible.
v4.11.2
4.11.2 — cuatro correcciones pequeñas que te molestaban.
- Los bloques de código pueden ajustarse. Un ajuste nuevo parte con suavidad las líneas de código largas en vez de mostrar una barra de scroll horizontal, y el PDF y la impresión ajustan siempre, así que el código ancho nunca se corta en papel.
- Las pestañas recuerdan dónde estabas. Volver a una pestaña ya no devuelve la vista al principio cuando habías hecho scroll sin pulsar; los números de línea también se quedan.
- Las teclas
j/kde Vim respetan las tablas. Los movimientos de un paso aterrizan en el borde de un bloque plegado de tabla, fórmula o Mermaid y lo despliegan —igual que las flechas— en vez de saltarlo por completo. - Nombres de archivo completos en el explorador. Un ajuste nuevo parte los nombres largos en varias líneas en vez de truncarlos con puntos suspensivos en medio.
v4.11.1
4.11.1 — el cursor se queda donde lo pusiste.
- Corregido el salto de cursor con IME chino. Editar a mitad de párrafo y empezar una composición pinyin justo después podía lanzar el cursor al principio del documento y dejar allí varadas letras a medio componer: una carrera de sincronización con antirrebote que reemplazaba todo el documento en plena composición. La composición ya nunca se interrumpe, y las actualizaciones externas dejan el cursor en su sitio.
- El aviso de actualización dejó de robarte el navegador. Detectar una versión nueva muestra ahora un aviso pulsable de 12 segundos; no se abre nada salvo que lo pulses, y todos los enlaces relacionados con actualizaciones (aviso, comprobación en ajustes, diálogo Acerca de) van a solomd.app en vez de a GitHub.
- Catálogo de modelos de IA actualizado en los 14 proveedores (familia GPT-5.6, Grok 4.5, Claude Fable 5 / Opus 4.8, Gemini 3.6, GLM-5.2, Kimi K3 y más; eliminados los endpoints retirados de DeepSeek v2).
v4.11
4.11 — las tablas rotas se arreglan solas.
- Las tablas mal formadas se renderizan igualmente. Las exportaciones de IA y las herramientas de PDF a Markdown suelen emitir una fila de delimitadores que no coincide con la cabecera (una celda
|---|de más, una de menos, una vacía), y toda la tabla se venía abajo en silencio como texto literal| … |. SoloMD repara ahora la fila de delimitadores al vuelo, como Typora y Obsidian, conservando la alineación de cada columna. Los ejemplos dentro de bloques de código quedan intactos. - Las secciones numeradas pueden convertirse en encabezados (opcional). Los informes numeran a menudo las secciones como texto plano —
6.2 Licencias de exportación— sin#. Un ajuste nuevo (desactivado por defecto) promueve esas líneas a encabezados reales según su profundidad:6.2→ h2,6.2.1→ h3. Las listas ordenadas, las frases con decimales y los números sueltos no se tocan nunca. - La exportación sin interfaz coincide con la aplicación. La CLI (
solomd-export, nuevo indicador--number-headings) y la herramienta MCPexport_note(nuevo argumentonumber_headings) ejecutan ahora exactamente el mismo preprocesado de Markdown que la vista previa de la aplicación y la exportación a DOCX: un solo motor, salida idéntica en todas partes.
v4.10
4.10 — PlantUML + un control de ancho de vista previa.
- Diagramas PlantUML (opcional). Las vallas
```plantumlse renderizan como diagramas en la vista previa y en edición en vivo, mediante un servidor PlantUML configurable. Desactivado por defecto: tus notas nunca salen de la máquina salvo que lo actives; apúntalo a un servidor propio para que el renderizado no salga de tu red. - El ancho de la vista previa es tuyo. El ancho de la columna de vista previa y lectura es ahora un control deslizante (480–1600px, antes fijo en 760px). «Ajustar al ancho» sigue estirándose hasta la ventana.
- Las tablas ya no atrapan el cursor. En edición en vivo, ↑/↓ saltaban por completo las tablas renderizadas, y podían saltarse párrafos enteros por debajo. El cursor recorre ahora cada línea, entra en una tabla (o en un bloque de fórmula o Mermaid) para editar su código fuente, y el bloque se vuelve a renderizar al salir.
- Números de línea en bloques de código, corregidos. Los bloques de código numerados ya no duplican su interlineado, los comentarios al estilo C
/** */ya no se tragan el resto del bloque en la fila 1, y el editor WYSIWYG respeta ahora el mismo ajuste de números de línea que la vista previa. - Los clics siguen siendo clics (4.10.1). Pulsar justo después de cambiar de pestaña —mientras los diagramas e imágenes seguían renderizándose— podía seleccionar varias líneas en vez de colocar el cursor. El cursor se queda ahora donde pulsaste, aunque la disposición se desplace a mitad del clic.
- Abrir archivos enlazados con la aplicación por defecto (4.10.2). Un enlace Markdown a un PDF o a un archivo de Office local (
[informe](./informe.pdf)) se abre ahora en la aplicación por defecto de tu sistema en vez de convertirse a Markdown. Ajuste nuevo, activado por defecto; los enlaces a.md, texto e imágenes siguen abriéndose dentro de SoloMD.
v4.9
4.9 — carpetas reales en Android + pulido del editor.
La serie 4.9 hace que SoloMD abra y edite tus carpetas reales
en Android, no una copia en una zona aislada. En Android 11+
(incluido Magic OS de Honor / Huawei, donde el permiso
de todos los archivos no concede nada) SoloMD usa ahora el
Storage Access Framework: eliges una carpeta una vez y
después lees y escribes los archivos .md reales en su
sitio, guardados de vuelta a través del proveedor de contenido del
sistema.
- Vault de carpeta en Android (SAF). Abre una carpeta real, edita archivos en su sitio, disposición móvil a todo el ancho.
- Guardar como, corregido. Escribía archivos vacíos en Android; ahora el contenido acaba en el archivo que eliges.
- Buscar (Ctrl/⌘+F) hace scroll mientras escribes. El editor salta a la primera coincidencia según escribes, como tu navegador: se acabó el «no se encontró nada» en notas largas.
- Las flechas cruzan bloques en edición en vivo. ↑/↓/←/→ mueven ahora el cursor entre párrafos en el editor de bloques de Windows, y desde la 4.9.6 respetan las líneas con ajuste suave, así que ↑ en un párrafo largo ya no lo salta de golpe.
- Números de línea en Windows (4.9.6). El ajuste «mostrar números de línea» funciona ahora en el editor de Windows, con un margen que se mantiene alineado con el ajuste de línea.
- Exportar diagramas Mermaid como PNG (4.9.6). Pulsa un diagrama → Exportar PNG o Copiar imagen, al doble de resolución y con un fondo acorde al tema.
- El diálogo de guardado toma tu título (4.9.6). Una nota nunca guardada que empieza por
# Encabezadorellena «Encabezado.md»: deja de reescribir nombres de archivo. - Corrección de arranque en Linux. El AppImage ya no aborta con
EGL_BAD_PARAMETERen algunas configuraciones Intel / Mesa.
v4.7
4.7 — Windows estrena editor.
Solo Windows. SoloMD en Windows usa ahora un
editor de bloques reconstruido desde cero en lugar de
CodeMirror. El contentEditable de WebView2 perdía el
primer carácter de la entrada CJK / IME y
duplicaba la puntuación (peor con Sogou), un fallo que
no podía arreglarse dentro de CodeMirror porque vive en el propio
WebView2. El editor nuevo teclea cada bloque a través de un
<textarea> nativo por la ruta IME del sistema
operativo, así que los caracteres perdidos y la puntuación duplicada
han desaparecido.
El nuevo editor de Windows mantiene paridad total de
funciones: vista previa Markdown en vivo, autocompletado y
comandos de barra (/), modo foco y máquina de escribir,
continuación inteligente de listas, reescritura con IA
(Ctrl+J), buscar y reemplazar en el documento
(Ctrl+F), pegado de imágenes desde el portapapeles,
casillas de tareas, deshacer / rehacer, indentación con Tab,
corrección ortográfica y ajuste de línea.
macOS, Linux, iOS y Android no se ven afectados: conservan el editor CodeMirror existente. También en 4.7: la paleta de comandos ya no salta cuando pasas el ratón o haces scroll con la rueda sobre la lista (#93).
v4.9
4.9 — Android abre tu vault real.
En Android, la única carpeta que SoloMD podía leer libremente era una
zona aislada bajo /Android/data a la que ningún gestor de
archivos llega en un teléfono sin root, así que nunca podías apuntar la
aplicación a tu carpeta de notas real. La 4.9 añade
acceso a todos los archivos: concédelo una vez y
Abrir carpeta te deja navegar hasta un vault real en
cualquier parte del dispositivo (Documents, una carpeta de
Syncthing o Dropbox, una tarjeta SD) y editar archivos en su
sitio, sin copiarlos a la zona aislada. El árbol de archivos,
la búsqueda, el historial de versiones y el guardado funcionan todos
contra tus rutas reales (#148, #151).
También en 4.9, un repaso a errores reportados. La ventana de macOS vuelve a poder arrastrarse por su barra de título (#153): la llamada de arrastre llevaba rechazada en silencio por un permiso que faltaba desde que se publicó la barra de título unificada; el doble clic para maximizar también vuelve. El diálogo «El archivo cambió en disco» ya no interrumpe la escritura en Android (#148): los propios guardados de la aplicación se confundían con ediciones externas porque Android entrega los eventos de archivo con segundos de retraso; los cambios se juzgan ahora por la hora de modificación del archivo. El aviso de actualización disponible abre ahora la página de descargas de solomd.app (alcanzable en China continental, con el espejo de Gitee) en vez de GitHub (#154), y la entrada de menú inútil «Mostrar en Finder» se oculta en los teléfonos.
4.8.11 — tres errores reportados, corregidos.
Android vuelve a poder abrir archivos (#148): los
archivos que entrega un gestor de archivos, «Abrir con» o el selector
de la aplicación llegan como URIs content:// que ninguna
llamada al sistema de archivos puede leer; ahora se importan a la
carpeta de SoloMD (conservando el nombre original, o tomándolo del
primer encabezado del documento) y se abren con normalidad, replicando
el flujo de la aplicación Archivos de iOS. La sincronización
con GitHub ya no empuja a main mientras trae de
master (#147): un segundo dispositivo podía
quedarse atascado para siempre sin ver nunca los envíos del primero; el
pull normaliza ahora la rama igual que el push, con un plan alternativo
para remotos antiguos solo con master. Y cerrar una pestaña
devuelve a la pestaña contigua en vez de saltar a la primera
de la lista (#149 — causa raíz aportada por quien lo reportó, ¡gracias!).
4.8.10 — repaso de calidad de vida. Ctrl+A por fin selecciona todo el documento en el editor en vivo de Windows (antes se detenía en el párrafo actual), así que seleccionar todo → copiar / borrar / sobrescribir se comporta como en cualquier otro editor. Borrar un archivo o una carpeta los envía ahora a la papelera del sistema en vez de eliminarlos para siempre (#112), y se pueden quitar entradas sueltas de la lista de archivos recientes. Un ajuste nuevo, «un solo salto de línea = salto de línea», mantiene de acuerdo a la vista previa, el editor en vivo de Windows y todas las exportaciones (PDF, DOCX, Pandoc) sobre qué significa Intro (#141). El tamaño y la familia de fuente se aplican ya en todas partes: bloques de edición en vivo, panel de vista previa y modo lectura (#143). Cambiar de pestaña conserva el cursor y la posición de scroll (#144), «abrir al inicio en modo lectura» vuelve a funcionar con la restauración de pestañas desactivada, las páginas de ajustes ya no comparten una sola posición de scroll, y el botón de reescritura con IA de la barra de herramientas funciona en Windows (#126).
4.8.9 — la apertura de archivos en iOS, arreglada de
verdad. Abrir un archivo Markdown desde la aplicación
Archivos, por AirDrop o desde otra aplicación ya no falla con
«No such file or directory» (#139): la hoja de compartir entregaba una
URL file:// codificada en porcentajes que nunca se
descodificaba. Los archivos recientes sobreviven a las
actualizaciones (iOS mueve el contenedor de la aplicación en
cada actualización; las rutas guardadas se reanclan automáticamente),
Abrir carpeta fija ahora el espacio de trabajo a la
carpeta Documentos de SoloMD, y la barra de pestañas se
desplaza con un deslizamiento. También en escritorio: las
vistas previas de SVG locales siguen visibles entre
ventanas (#142, gracias @beihai23).
4.8.1 — correcciones. Buscar y
reemplazar vuelve a ser localizable (una entrada en la paleta
de comandos; siempre estuvo tras Ctrl+F, #137). Pulsar un enlace
.md relativo dentro de un vault en WSL ya
no falla con «os error 3» (#138). Un arranque fijado en modo
lectura con la restauración de pestañas desactivada ya no abre
una ventana en blanco (#128). El icono de la aplicación en
macOS es ahora un cuadrado redondeado en condiciones y con
margen (#111). Y un token de sincronización con GitHub
caducado o revocado te pide ahora volver a conectar en vez de lanzar un
401 en crudo.
4.8.0 — alojamiento de imágenes (图床). Pega, suelta o elige una imagen y SoloMD puede ahora subirla a un servicio externo e insertar la URL devuelta, en vez de limitarse a copiarla en una carpeta local, como Typora / MarkText. Cinco servicios: PicGo (servidor local), un comando propio (PicGo-Core / uPic / cualquier script), SM.MS, compatible con S3 (Aliyun OSS / Tencent COS / Cloudflare R2 / MinIO) y un repositorio de GitHub + CDN. Además, «insertar imagen desde URL» y un comando «subir todas las imágenes locales de esta nota». La subida automática al pegar recurre a una copia local si el servicio no está disponible. Se configura en Ajustes → Escritura.
4.7.4 — Retroceso / Suprimir vuelven a ser fiables en el editor de Windows. Allí cada párrafo es su propio cuadro de texto, así que pulsar Retroceso justo al principio de un bloque (o Suprimir justo al final) chocaba con el borde del cuadro y no hacía nada: borrar parecía cuestión de suerte. Esas pulsaciones en los límites actúan ahora sobre todo el documento, uniendo párrafos o quitando la línea en blanco como en cualquier editor normal, con el cursor y el foco siguiéndolas.
4.7.3 — la exportación a PDF ya no
se cuelga con temas o contenido que usan funciones modernas de color de
CSS (color(), oklch(),
color-mix()), y una exportación fallida ya no deja la
ventana congelada o con zoom (#115). Además: la
sincronización de scroll en vista dividida vuelve a
funcionar en Windows; el editor y la vista previa habían dejado de
seguirse tras la reconstrucción del editor de Windows en la 4.7.
4.7.2 — el árbol de archivos recibe una barra lateral redimensionable (arrastra el borde, 180–600 px), iconos por tipo de archivo y truncado con puntos suspensivos en medio para nombres largos; la barra de título de macOS ya no se solapa con la barra de herramientas de la aplicación (#121). Más una corrección de exportación a PDF: los párrafos de texto y los elementos de lista ya no se parten por la mitad en los saltos de página.
4.7.1 — la vista previa en vivo renderiza ahora listas con viñetas, casillas de tareas y líneas horizontales (no solo encabezados) en macOS / Linux / iOS / Android; el modo código vuelve a ser realmente plano (los encabezados ya no se agrandan con la vista previa en vivo desactivada). Además: copiar ruta / ruta relativa en el árbol de archivos (#120) y un botón de cerrar carpeta (#118), una columna legible con limitar el ancho del editor (#109), y el interruptor de ajustar al ancho funciona ya en modo lectura (#117).
v4.6
4.6 — la mitad del grafo de conocimiento, construida.
Una reconstrucción completa del sistema de diseño y la
biblioteca de componentes Vue (superficies neutras cálidas,
acento naranja #ff9f40) y una barra de título
unificada en macOS (los semáforos integrados en la barra de
herramientas), más las siete funciones estructurales que eran lo único
que un editor de grafo de conocimiento como Tolaria hacía y SoloMD no.
Todo en disco como .md / YAML simple. Ningún formato de
archivo nuevo.
Inspector de propiedades (⌘⇧I)
Un editor de front matter dedicado —selectores de fecha, relación, estado y etiquetas— en vez de editar YAML a mano. Escribe directamente en el front matter de la nota.
Barra lateral dirigida por tipos
Las notas con type:<Nombre> se convierten en
secciones plegables de primera clase en la barra lateral (los tipos
como lentes), cada una con su icono, color, orden y propiedades
fijadas.
Relaciones tipadas
Campos de front matter belongs_to /
related_to / has con inversas
automáticas: declara un lado y el otro se resuelve solo.
Grafo de relaciones («Vecindario»)
Un explorador por nota de las relaciones salientes e inversas: recorre el grafo salto a salto desde la nota en la que estés.
Vistas filtradas guardadas
Vistas persistentes de la barra lateral guardadas como
.solomd/views/*.yml: filtra por tipo, estado, fecha o
expresión regular, y se mantienen entre arranques.
Flujo de bandeja de entrada
⌘E marca la nota actual como organizada y avanza
automáticamente a la siguiente: un ciclo real de bandeja a cero
para clasificar las notas capturadas.
Pizarras tldraw
Pizarras respaldadas por Markdown mediante una valla
```tldraw: perduran en el .md de la nota
y son compatibles con el formato de pizarra en disco de Tolaria.
Interfaz con sistema de diseño + barra de título unificada
Una paleta de superficies neutras cálidas con acento naranja
#ff9f40, reconstruida sobre una biblioteca de
componentes Vue en condiciones, y una barra de título unificada en
macOS que integra los semáforos en la barra de herramientas.
Cinco pilares
Cada uno está en el core, alternable en ajustes. Totalmente compatible con tus notas existentes — sin migración de DB, sin nuevo formato de archivo, sin cuenta cloud forzada.
1 · Panel Agent integrado
Panel de primera clase a la derecha, al mismo nivel que Outline / Backlinks /
Tags / History. Chat-with-vault transmitido vía interfaz MCP intra-proceso
y stack AI 14-providers existente. Citaciones [[wikilink]]
se resuelven a saltos de nota reales; cada tarjeta de llamada de herramienta
del agente se despliega en el flujo de conversación — ves lo que se leyó,
lo que se escribió. ¿Respuesta demasiado larga?
Botones Insertar y Copiar dejan caer
el párrafo entero en el editor actual — reemplaza selección si la hay,
si no inserta en posición del cursor. Historial de ejecución persiste
como markdown plano bajo .solomd/agent-runs/,
grep-able, git-trackable.
2 · Recipe Agent / ejecución programada
Tareas de agente declarativas, archivos YAML bajo
<workspace>/.solomd/agents/*.yml.
Triggers: schedule (cron), on-save,
on-commit, on-tag-add, manual.
Barandales de seguridad innegociables: cada ejecución
inicia en su propia rama AutoGit
agent/<recipe>/<run-id>, todas las escrituras
aterrizan solo en la rama, pasan por UI accept / reject antes del merge a main;
write-cap por ejecución (por defecto 5, techo duro 50)
previene bucles incontrolados; Reject hard-delete la rama, esa
ejecución es completamente invisible en el historial git. Trae
11 plantillas de Recipe (revisión semanal, limpieza
de log, extracción TODO, traducción, limpieza de citaciones, revisión CJK,
…) — instalar, editar prompt, ejecutar.
3 · Vista Trace Agent
Cada ejecución (sea conversación Panel o Recipe) genera
trace.jsonl por paso:
prompt / model_call /
tool_call / tool_result /
git_commit / done.
Tarjetas de paso se despliegan para mostrar args, resultados, conteos
de tokens, estimaciones de coste, referencias de rama AutoGit.
Botón Replay-from-step rebobina la ejecución al paso N,
cambia entrada y reejecuta desde ahí — esa es la entrada a recipes
self-correcting. Nueva herramienta MCP
read_agent_trace(run_id) expone el trace a otros agentes.
4 · Federación MCP multi-vault
solomd-mcp --workspace path1 --workspace path2 --workspace path3
—— una sesión MCP, múltiples vaults. Las firmas de herramienta ganaron
parámetro workspace opcional, por defecto = primero pasado
(totalmente back-compat con clientes MCP single-vault). Ramas AutoGit
aisladas por workspace. Ajustes → Integraciones
tiene UI de perfil MCP: empaquetar múltiples vaults nombrados, copiar
snippet de config Claude Desktop con un clic.
5 · Ollama primera clase
No empaquetamos el runtime LLM local nosotros mismos
—— Ollama ya lo hace bien. v4.0 solo pulió la integración:
auto-detección en localhost:11434 (Ajustes → IA tiene
indicador de estado verde), guía de instalación con un clic si no instalado,
3 presets de modelo embebidos (rewrite → qwen2.5:7b ·
quick → qwen2.5:1.5b ·
cjk → qwen2.5:14b), pull recomendado inline cuando la lista
de modelos está vacía. Recipes pueden especificar provider: local
(alias Ollama), para bucles de automatización sin coste cloud.
Tus notas nunca dejan la máquina —— vía BYOK Ollama
esto siempre fue cierto, v4.0 lo hace una entrada descubrible.
🛡️ Barandales de seguridad (lo que nadie más hace)
-
Sandbox de rama AutoGit. Cada ejecución de Recipe
inicia en su propia rama. Antes de que hagas clic Aceptar,
mainno se mueve. Las ejecuciones Reject no dejan nada —— rama eliminada, árbol de archivos rebobinado. - Techo de escritura por ejecución. El modelo quiere escribir 50 archivos cuando el cap es 5, desde la 6ta llamada de herramienta es rechazado. Sin estado "semi-terminado", sin modificaciones masivas accidentales.
- Rehúsa iniciar cuando el workspace está sucio. Tienes cambios sin commit, el trigger Recipe se dispara, sale con error, tu WIP no es barrido en commits de agente.
-
Endurecimiento path-traversal. Interfaz de herramienta
intra-proceso y todos los comandos Tauri que aceptan
run_id/pathproporcionados por el usuario ahora rechazan por adelantado segmentos..y rutas absolutas. A nivel de código, el agent no puede escribir fuera del workspace. - Trace reproducible. Cada paso aterriza línea por línea como JSON en disco. ¿Comportamiento Panel sospechoso? Seguir el trace, localizar el paso malo, cambiar entrada, reproducir desde paso N–1.
Barra de calidad
- Wizard de primer lanzamiento. Los nuevos usuarios ven el panel Agent en menos de 60 segundos —— te guía a llenar la clave BYOK o instalar Ollama. Reabrir desde Ayuda más tarde.
- Cookbook de Recipe (11 plantillas starter). Ajustes → Recipes → Explorar cookbook. Revisión semanal, log diario, extracción TODO, pase de traducción, limpieza de citaciones, agente de revisión CJK, detector de link rot, normalizador de frontmatter, outline-a-blog, pase de refactor, triaje semanal de tags. Instalar, editar prompt, ejecutar.
- API REST local (escucha solo en localhost, autenticación por token). Misma interfaz que MCP, para clientes que aún no hablan MCP — Alfred / Raycast / n8n / tus propios scripts.
- Medidor de coste BYOK. Tokens gastados acumulados por provider, opt-in. Ajustes → Integraciones.
- Localización. 9 idiomas UI cobertura completa (en/zh/ja/ko/de/fr/es/pt/it). Esta release añadió 5 idiomas europeos — alemán, francés, español, portugués, italiano — todos con la misma paridad de claves de diccionario que en/zh.
Pulido UX sentido desde el primer día
- Guardas IME en todas partes. Pinyin chino, modo kana japonés, hangul coreano — Enter para confirmar palabras candidatas ya no dispara accidentalmente envío de conversación / renombre de file tree / ejecución de paleta de comandos / apertura de búsqueda. Fix único para 7 paneles de entrada.
- Botones Insert / Copy para respuestas Assistant. Dos botones bajo cada respuesta terminada. Insert es editor-selección-aware (con selección reemplaza), sin selección inserta en posición del cursor. Copy es portapapeles normal.
- UX de inicio macOS. Timing de activación al inicio arreglado —— SoloMD inicio en frío llega de verdad al primer plano, no se esconde más detrás de Finder. Restauración de posición de ventana aterriza siempre en el workspace de la pantalla actual; restauración desde mal cache tras desconexión de pantalla secundaria se recentra automáticamente, en vez de abrir fuera de pantalla.
- "Generación..." atascado sin error. Arreglado. Error de configuración de provider (ej. Ollama con modelo no descargado) dejaba el panel colgado. Ahora ves una barra de error roja con la respuesta real del backend, el botón enviar también vuelve.
Lo que v4.0 explícitamente no hace (y por qué)
Decir no también es parte del producto. Esto se consideró seriamente y no se hace explícitamente:
- Traer nuestro propio runtime LLM local. Ollama ya lo hace bien; reinventar la rueda viola el principio "escribir menos código que mantener permanentemente". Provider BYOK sigue siendo el camino.
- Marketplace de Recipe en línea. Operación de servidor + moderación de contenido = desviación de la línea principal. Cookbooks empaquetados directamente en releases, actualizados con la herramienta.
- Multi-usuario / agente de equipo. Viola "una ventana, un escritor". Este producto es para autor único; la colaboración pertenece a otro producto.
- Completado ghost-text estilo Copilot. Posicionamiento de marca diferente. Ghost-text diluye la voz del escritor; nuestros agentes trabajan en unidad de vault, las escrituras son por lotes + revisables + branch-based.
Notas de actualización
-
Sin cambios de formato de archivo.
.mdexistentes, historial AutoGit, configuración sync, claves BYOK todos preservados como están. -
Panel Agent encendido automáticamente al primer lanzamiento.
Los usuarios v3.6.x pueden tener un
showAgentPanel: falseoculto debido al default del scaffold del periodo v4-beta; migración única lo voltea a true, ves realmente la funcionalidad principal. Si no la quieres, puedes desactivarla vía⌘⇧P → View: Toggle Agent Panel. - El panel Ajustes tiene dos nuevas pestañas Recipes y Medidor de coste, bajo Integraciones. Posiciones de ajustes existentes sin cambio.
-
El servidor MCP (
solomd-mcp) ganó nuevo parámetro--workspace(repetible). Los clientes MCP single-workspace existentes siguen funcionando; el comportamiento de federación es opt-in.
🔮 Lo que sigue
5 pilares principales + barra de calidad son el contenido principal esta vez. Las direcciones abiertas para v4.x y más allá están todas en el roadmap: API de script sandboxeada, CLI v2 (rewrite / commit / búsqueda semántica / trigger Recipe en terminal), y la pregunta siempre retrasada "¿Debería SoloMD volverse un producto comercial?" (sync de pago — pregunta vieja de la era v3.0, todavía sin respuesta, hasta que se decida, no se hará ingeniería en esta área).
Gracias a todos los que durante el periodo silencioso enviaron issues / mandaron PRs / corrieron builds v4-beta con vaults reales. v4.0 pudo enviarse porque el dogfood descubrió los bugs que las pruebas de integración omitieron. Versiones anteriores: Ver el blog (en) →