Add a manual page, and explain every setting in plain words
Every setting now carries a paragraph saying what it is in everyday terms and why someone who does not already speak radio would turn it up, down, on or off: what the squelch knob actually is, why automatic gain is a bad idea for scanning, why a bias tee can damage equipment, why setting the transcription language matters on noisy audio. The menus and `config --describe` show it alongside the existing technical detail. packaging/make-man.py generates bandsaunter(1) from that same table, so the manual cannot document a setting the program lacks or miss one it has -- tests check both, that the page renders through groff without a single warning, and that the guidance survives into the rendered output. Around it are hand-written sections on the commands, entering frequencies, the band plan, lock-outs, the keys during a scan, HF, single sideband, files, environment variables and worked examples. The .deb regenerates and installs it rather than shipping a copy, so an installed manual always matches the installed program. The README picks up what the last few commits added: the plain display as a saved setting, what the settings tests now guarantee, and where to read the manual before installing. Version is the day's build: 2026-08-22_01. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
44c98b11e3
commit
ba6c925351
8 changed files with 1711 additions and 4 deletions
46
README.md
46
README.md
|
|
@ -296,6 +296,16 @@ bandsaunter scan -p local
|
|||
bandsaunter profiles
|
||||
```
|
||||
|
||||
Everything that can be given as a flag can be saved, and everything that can be
|
||||
saved can be given as a flag — both front ends are generated from one table, so
|
||||
they cannot drift apart. A profile written by an older version still loads: keys
|
||||
it does not have take their defaults, and keys that no longer exist are reported
|
||||
and ignored.
|
||||
|
||||
Every setting is explained in plain language — what it is, and when you would
|
||||
change it — in three places: `bandsaunter config --describe <name>`, `?N` in the
|
||||
settings menu, and `man bandsaunter`.
|
||||
|
||||
## Entering frequencies
|
||||
|
||||
**By hand** — repeat `-r` as many times as you like; there is no limit on the
|
||||
|
|
@ -826,6 +836,11 @@ since that is the command to run when something is wrong, and
|
|||
| `l` | lock out this frequency — for this run and every later one |
|
||||
| `+` / `-` | adjust the squelch threshold |
|
||||
|
||||
There is no live display over ssh, in a log file, or piped to another program:
|
||||
`--plain` prints one line per recording instead, and is chosen automatically
|
||||
whenever output is not a terminal. It is a saved setting like any other, so a
|
||||
headless machine can be told once and never asked again.
|
||||
|
||||
### Lock-outs
|
||||
|
||||
A pager transmitter down the road, or a birdie the receiver makes itself, is
|
||||
|
|
@ -858,6 +873,23 @@ there explains that setting instead.
|
|||
From the command line, `bandsaunter config --describe <setting>` does the same,
|
||||
and `bandsaunter scan --help` lists every flag grouped the same way as the menus.
|
||||
|
||||
### The manual page
|
||||
|
||||
`man bandsaunter` documents every command, option and setting, each with a
|
||||
plain-language note on what it is and why you would turn it up, down, on or
|
||||
off — written for someone who does not already speak radio.
|
||||
|
||||
It is generated from the same settings table the menus and the flags come from,
|
||||
so it cannot describe a setting the program does not have, or miss one it does:
|
||||
|
||||
```bash
|
||||
./packaging/make-man.py # regenerate packaging/bandsaunter.1
|
||||
man -l packaging/bandsaunter.1 # read it without installing
|
||||
```
|
||||
|
||||
The `.deb` installs it; installing from source does not, so read it from the
|
||||
source tree with `man -l`.
|
||||
|
||||
## HF
|
||||
|
||||
Frequencies below 24 MHz need direct sampling, which most RTL-SDR dongles
|
||||
|
|
@ -911,7 +943,19 @@ audio, IQ and metadata are correct.
|
|||
The simulator's voice transmitters carry synthesised speech -- glottal pulses
|
||||
through moving formants, compressed the way a real transmitter compresses,
|
||||
then gated into syllables and phrases -- because sine tones would not exercise
|
||||
the speech detector at all.
|
||||
the speech detector at all. SSB transmitters are filtered to their audio
|
||||
passband first, since that filter is what makes a signal single-sideband, and
|
||||
without it the simulated signal was several times wider than anything on the
|
||||
air.
|
||||
|
||||
Its transmitters seed themselves deterministically, so a test that fails can be
|
||||
made to fail again -- the one thing needed to fix it.
|
||||
|
||||
Settings have their own tests: every one is set to something other than its
|
||||
default, saved, loaded back and compared, so nothing can quietly fail to
|
||||
persist. Every setting must also be reachable from both the command line and
|
||||
the menus, be read somewhere in the program, display a value that can be typed
|
||||
straight back in, and appear in the manual page.
|
||||
|
||||
## Legal note
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue