NarrationOS 1.1.0: pronunciations work with any character, and setup repairs itself
Pronunciations with accents and umlauts are spoken correctly
If you set a pronunciation containing any character outside A to Z, the narrator read the internal markup out loud instead of saying the word. A respelling like "Kompjutär", "naïve", or "Renée" would come out as "phoneme alphabet i p a" followed by the raw code.
This was never a language setting problem, and it was not limited to non-English books. Respelling an ordinary English loanword or a European name in an English book hit exactly the same thing. Pronunciations now work with any characters you type.
Two related surfaces were fixed by the same change:
- The editor's pronunciation preview showed no highlight at all for those entries, so the preview and the rendered audio disagreed. The preview and the render are now driven by the same code and always match.
- The per-name Preview button in the Names panel was affected too.
Existing renders are unaffected and do not need re-rendering. A pronunciation made only of ordinary A to Z letters produces byte-for-byte identical audio to 1.0.9, verified by comparing rendered output before and after the change.
Setup repairs itself instead of blaming your internet connection
If the app's runtime folder was ever damaged, by an interrupted uninstall, antivirus quarantine, or a half-finished copy, NarrationOS could refuse to start for good. It showed "Setup failed" and told you to check your internet connection, which was never the cause: NarrationOS sets itself up entirely offline. Retry could not fix it, and the only way out was deleting a folder the app never named.
Setup now checks the runtime on every launch and rebuilds it by itself when it finds it damaged, with no internet access and nothing for you to do except wait a few minutes. If it ever truly cannot repair itself, the message names the exact folder to delete and gives you an Open folder button, instead of pointing at your connection.
On AMD ROCm and Intel GPUs, the separate CPU runtime those cards need for CPU rendering was not always created, because the check only recognised an unversioned "rocm" tag and missed the versioned ones the detector actually reports. Without that runtime, switching to CPU could hang. It is now created correctly.
Top bar polish
- Clicking into a text box or a dropdown drew a thick black border around it. That was the browser engine's own default focus indicator showing through, in near-black, on a dark theme. Focused controls now get a thin accent outline that follows the control's own rounded corners.
- The window could not be dragged, minimised or closed while a setup, export or attribution screen was up, because those screens painted over the title bar. Those controls now stay available at all times.
- The minimise, maximise and close buttons were cramped and brighter than the rest of the bar. They are now full height and muted, and the Discord, search and zoom icons sit on the same line as them.