feat: add config file with profiles support #295
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds support for a configuration file with named profiles, making it easy to save and reuse your favorite t-rec settings.
New Features
~/.config/t-rec/config.toml(or localt-rec.toml)demo,quick,presentation)t-rec --init-configto create a starter config filet-rec --list-profilesto see available profiles$HOMEin wallpaper paths for portabilityUsage Examples
Example Config File
Supported Settings
All CLI options can be set in the config file:
wallpaper- Background wallpaper (built-in name or path)wallpaper-padding- Padding around the recording (1-500px)decor- Border decoration style (shadowornone)bg- Background color (white,black,transparent)quiet- Suppress the Ctrl+D bannerverbose- Enable verbose outputvideo/video-only- Generate MP4 videonatural- Disable idle detectionstart-pause/end-pause/idle-pause- Timing controlsoutput- Output file namePriority Order
Settings are applied in this order (later values override earlier):
[default]section[profiles.<name>]section (if--profileused)Test plan
cargo buildsucceedscargo testpasses (17 tests)cargo clippypassest-rec --init-configcreates config filet-rec --list-profilesshows profilest-rec --profile demouses profile settingsCloses #293