More update work on readme and settings.

This commit is contained in:
Storm Dragon
2025-12-19 03:07:46 -05:00
parent 096aef9f08
commit 7a17b36d50
3 changed files with 43 additions and 35 deletions

View File

@@ -222,7 +222,7 @@ Fenrir supports two main keyboard layouts:
Configure in `/etc/fenrir/settings/settings.conf`:
```ini
[keyboard]
keyboardLayout=desktop # or 'laptop'
keyboard_layout=desktop # or 'laptop'
```
### First Time Setup
@@ -255,9 +255,9 @@ Enable remote control in `/etc/fenrir/settings/settings.conf`:
enable=True
driver=unixDriver # or tcpDriver
port=22447 # for TCP driver
socketFile= # custom socket path (optional)
enableSettingsRemote=True # allow settings changes
enableCommandRemote=True # allow command execution
socket_file= # custom socket path (optional)
enable_settings_remote=True # allow settings changes
enable_command_remote=True # allow command execution
```
### Remote Drivers
@@ -299,8 +299,8 @@ echo "setting set speech#pitch=0.6" | socat - UNIX-CLIENT:/tmp/fenrirscreenreade
echo "setting set speech#volume=0.9" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
# Change punctuation level (none/some/most/all)
echo "setting set general#punctuationLevel=all" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
echo "setting set general#punctuationLevel=none" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
echo "setting set general#punctuation_level=all" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
echo "setting set general#punctuation_level=none" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
# Voice and TTS engine control
echo "setting set speech#voice=en-us+f3" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
@@ -311,14 +311,14 @@ echo "setting set sound#enabled=False" | socat - UNIX-CLIENT:/tmp/fenrirscreenre
echo "setting set sound#volume=0.5" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
# Keyboard and input settings
echo "setting set keyboard#charEchoMode=1" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
echo "setting set keyboard#wordEcho=True" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
echo "setting set keyboard#char_echo_mode=1" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
echo "setting set keyboard#word_echo=True" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
# Screen control (ignore specific TTYs)
echo "setting set screen#ignoreScreen=1,2,3" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
echo "setting set screen#ignore_screen=1,2,3" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
# Multiple settings at once
echo "setting set speech#rate=0.8;sound#volume=0.7;general#punctuationLevel=most" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
echo "setting set speech#rate=0.8;sound#volume=0.7;general#punctuation_level=most" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
# Reset all settings to defaults
echo "setting reset" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock
@@ -421,7 +421,7 @@ setting <action> [parameters]
- `speech#voice=voice_name` - Voice selection (e.g., "en-us+f3")
- `speech#module=module_name` - TTS module (e.g., "espeak-ng")
- `speech#driver=driver_name` - Speech driver (speechdDriver/genericDriver)
- `speech#autoReadIncoming=True/False` - Auto-read new text
- `speech#auto_read_incoming=True/False` - Auto-read new text
*Sound Settings:*
- `sound#enabled=True/False` - Enable/disable sound
@@ -430,32 +430,32 @@ setting <action> [parameters]
- `sound#theme=theme_name` - Sound theme
*General Settings:*
- `general#punctuationLevel=none/some/most/all` - Punctuation verbosity
- `general#debugLevel=0-3` - Debug level
- `general#punctuation_level=none/some/most/all` - Punctuation verbosity
- `general#debug_level=0-3` - Debug level
- `general#emoticons=True/False` - Enable emoticon replacement
- `general#autoSpellCheck=True/False` - Automatic spell checking
- `general#auto_spell_check=True/False` - Automatic spell checking
*Focus Settings:*
- `focus#cursor=True/False` - Follow text cursor
- `focus#highlight=True/False` - Follow text highlighting
*Keyboard Settings:*
- `keyboard#charEchoMode=0-2` - Character echo (0=none, 1=always, 2=capslock only)
- `keyboard#wordEcho=True/False` - Echo complete words
- `keyboard#charDeleteEcho=True/False` - Echo deleted characters
- `keyboard#interruptOnKeyPress=True/False` - Interrupt speech on key press
- `keyboard#char_echo_mode=0-2` - Character echo (0=none, 1=always, 2=capslock only)
- `keyboard#word_echo=True/False` - Echo complete words
- `keyboard#char_delete_echo=True/False` - Echo deleted characters
- `keyboard#interrupt_on_key_press=True/False` - Interrupt speech on key press
*Screen Settings:*
- `screen#ignoreScreen=1,2,3` - TTY screens to ignore
- `screen#autodetectIgnoreScreen=True/False` - Auto-detect screens to ignore
- `screen#screenUpdateDelay=float` - Screen update delay
- `screen#ignore_screen=1,2,3` - TTY screens to ignore
- `screen#autodetect_ignore_screen=True/False` - Auto-detect screens to ignore
- `screen#screen_update_delay=float` - Screen update delay
*Time Settings:*
- `time#enabled=True/False` - Enable time announcements
- `time#presentTime=True/False` - Announce time
- `time#presentDate=True/False` - Announce date changes
- `time#delaySec=seconds` - Announcement interval
- `time#onMinutes=00,30` - Specific minutes to announce
- `time#present_time=True/False` - Announce time
- `time#present_date=True/False` - Announce date changes
- `time#delay_sec=seconds` - Announcement interval
- `time#on_minutes=00,30` - Specific minutes to announce
## Table Navigation
@@ -623,7 +623,7 @@ rsync -av source/ destination/ # File synchronization
### Customization
Progress monitoring can be configured through settings:
- **Default enabled**: Set `progressMonitoring=True` in sound section
- **Default enabled**: Set `progress_monitoring=True` in sound section
- **Sound integration**: Works with all sound drivers (sox, gstreamer)
- **Remote control**: Enable/disable through remote commands
@@ -677,8 +677,8 @@ send_fenrir_command("setting set speech#rate=0.9")
- TCP driver binds only to localhost (127.0.0.1)
- Socket file permissions are set to write-only (0o222)
- Commands are processed with Fenrir's privileges
- Settings changes can be disabled via `enableSettingsRemote=False`
- Command execution can be disabled via `enableCommandRemote=False`
- Settings changes can be disabled via `enable_settings_remote=False`
- Command execution can be disabled via `enable_command_remote=False`
### Troubleshooting
@@ -688,7 +688,7 @@ send_fenrir_command("setting set speech#rate=0.9")
- Ensure remote driver is enabled in settings
**Commands not working:**
- Verify `enableCommandRemote=True` in settings
- Verify `enable_command_remote=True` in settings
- Check Fenrir debug logs: `/var/log/fenrir.log`
- Test with simple command: `echo "command interrupt" | socat - UNIX-CLIENT:/tmp/fenrirscreenreader-deamon.sock`
@@ -710,7 +710,7 @@ fenrir [OPTIONS]
- `-p, --print` - Print debug messages to screen
- `-e, --emulated-pty` - Use PTY emulation with escape sequences for input (enables desktop/X/Wayland usage)
- `-E, --emulated-evdev` - Use PTY emulation with evdev for input (single instance)
- `-F, --force-all-screens` - Force Fenrir to respond on all screens, ignoring ignoreScreen setting
- `-F, --force-all-screens` - Force Fenrir to respond on all screens, ignoring ignore_screen setting
- `-i, -I, --ignore-screen SCREEN` - Ignore specific screen(s). Can be used multiple times. Combines with existing ignore settings.
### Examples:
@@ -724,7 +724,7 @@ sudo fenrir -e
# Override settings via command line
sudo fenrir -o "speech#rate=0.8;sound#volume=0.5"
# Force Fenrir to work on all screens (ignore ignoreScreen setting)
# Force Fenrir to work on all screens (ignore ignore_screen setting)
sudo fenrir -F
# Ignore specific screens

View File

@@ -3,14 +3,13 @@
enabled=True
# Select the driver used to play sounds, choices are genericDriver and gstreamerDriver.
# Generic driver uses fewer dependencies but spawns a process for each sound played including progress bar beeps
# Gstreamer is the default.
driver=gstreamerDriver
#driver=genericDriver
# Sound themes. These are the pack of sounds used for sound alerts.
# Sound packs may be located at /usr/share/sounds
# For system wide availability, or ~/.local/share/fenrirscreenreader/sounds
# For the current user.
theme=default
# Sound volume controls how loud the sounds for your selected soundpack are.
@@ -110,8 +109,10 @@ driver=evdevDriver
device=ALL
# gives Fenrir exclusive access to the keyboard and lets it control keystrokes.
grab_devices=True
ignore_shortcuts=False
# Ignore shortcut bindings and pass all keys through without processing Fenrir commands.
# When True, Fenrir will only monitor screen content without intercepting keyboard input.
# the current shortcut layout located in /etc/fenrirscreenreader/keyboard
ignore_shortcuts=False
keyboard_layout=desktop
# echo chars while typing.
# 0 = None
@@ -138,6 +139,8 @@ debug_level=2
# debugMode=Print just prints on the screen
debug_mode=File
debug_file=
# Punctuation settings control how punctuation is spoken during text review.
# Profile selects a punctuation definition file from config/punctuation/ (e.g., default.conf)
punctuation_profile=default
punctuation_level=some
respect_punctuation_pause=True
@@ -247,6 +250,11 @@ enabled=True
inactive_timeout_sec=120
# Comma-separated list of text patterns to promote when detected
# Leave empty to disable pattern-based promotion
# Examples:
# error,warning,failed - Announce build/command errors
# complete,finished,done - Announce task completions
# new message,@username - Announce chat notifications
# download complete - Announce download completions
list=
[menu]

View File

@@ -4,5 +4,5 @@
# Fenrir TTY screen reader
# By Chrys, Storm Dragon, and contributors.
version = "2025.12.14"
version = "2025.12.19"
code_name = "testing"