Application specific preferences saving now enabled.

This commit is contained in:
Storm Dragon committed 2026-10-28 04:51:39 -04:00
1 parent f88e5b81a2
commit 60abcc37d9
23 files changed
+1004 -248

No files matched your search

+41 -6
View File
@@ -26,12 +26,47 @@ launch programs. Choose **Default** to restore the settings and reading regions
that were in effect before the override. Overrides are built into Fenrir and
are never selected automatically or remembered across restarts.
All settings adjustments made while an override is running are temporary,
including quick settings and remote changes. Saving from the settings menu,
the save shortcut, or remote SAVE/SAVEAS reports **Save unavailable.** and writes
nothing. Menu OK remains unavailable; use quick settings for temporary changes
and Cancel to leave the menu. Saving remains blocked while an override is
selected, including while it is suspended or selected on another console.
While an override is active, **Fenrir+F** opens its application settings,
with the application name in the title. **OK**, **Fenrir+Control+S**, and remote
`SETTING SAVE` save that application's preferences. Quick and remote changes
remain temporary until saved. Default settings are kept separately, including
any unsaved adjustments made before activating the override.
Profiles live in an `applications/` subdirectory of the ordinary settings save
directory. For example:
- System settings: `/etc/fenrirscreenreader/settings/applications/ninjam.toml`.
- Personal settings: `~/.local/share/stormux/fenrirscreenreader/settings/applications/ninjam.toml`.
- With `--config /path/settings.toml`: `/path/applications/ninjam.toml`.
NetworkManager uses `networkmanager.toml`. The directory and file are created
on the first successful save. Files contain only customized settings; omitted
values inherit ordinary settings followed by the built-in application defaults.
A customized voice selection saves module, language, and voice together so a
later change to the ordinary voice does not break that selection. Profiles are
loaded when their override first recognizes the application; restarting Fenrir
still starts with Default. Reselect the application to reload an edited file.
Application settings include voice, rate, pitch, volume, reading behavior,
sound enablement/volume, and typing echo. Startup settings such as speech driver,
serial device, keyboard layout, and sound theme remain in the default menu;
clipboard storage and console routing also remain global. Session mute and the
temporary automatic-reading toggle are not implicitly saved. Remote `SAVEAS`
and `screen#ignore_screen` are unavailable while an application is active.
Saving is blocked during context transitions or failed voice restoration.
A malformed profile or unavailable voice leaves ordinary settings in effect
and reports an error. Select the application again after correcting the file.
For example, a rate-only profile contains current TOML setting names, with
no top-level `version` field:
```toml
[presentation.speech]
rate = 40
```
To make a saved value inherit again, remove that setting from the application
file and reselect the override. Removing the file restores complete inheritance.
An override belongs to its terminal. Switching VTs or leaving the terminal
suspends its effects; returning resumes it when the application screen is