From 86c128b92d35c10fecf42df1837096da21436f91 Mon Sep 17 00:00:00 2001 From: Joscha Date: Thu, 1 Sep 2022 21:11:53 +0200 Subject: [PATCH] Document config file format and options --- README.md | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main.rs | 4 +++ 2 files changed, 84 insertions(+) diff --git a/README.md b/README.md index 7a07eea..c8eaa37 100644 --- a/README.md +++ b/README.md @@ -66,3 +66,83 @@ in the full version you want to install: ```bash $ cargo install --force --git https://github.com/Garmelon/cove --tag v0.1.0 ``` + +## Config file + +Cove's config file uses the [TOML](https://toml.io/) format. + +When launched, cove prints the location it is loading its config file from. To +configure cove, create a config file at that location. This location can be +changed via the `--config` command line option. + +The following is a complete list of available options. If a command line option +with the same purpose exists, it takes precedence over the option specified in +the config file. + +### `data_dir` + +**Type:** String (representing path) +**Default:** Platform dependent + +The directory that cove stores its data in when not running in ephemeral mode. + +Relative paths are interpreted relative to the user's home directory. + +See also the `--data-dir` command line option. + +### `ephemeral` + +**Type:** Boolean +**Default:** `false` + +Whether to start in ephemeral mode. + +In ephemeral mode, cove doesn't store any data. It completely ignores any +options related to the data dir. + +See also the `--ephemeral` command line option. + +### `offline` + +**Type:** Boolean +**Default:** `false` + +Whether to start in offline mode. + +In offline mode, cove won't automatically join rooms marked via the `autojoin` +option on startup. You can still join those rooms manually by pressing `a` in +the rooms list. + +See also the `--offline` command line option. + +### `euph.rooms..autojoin` + +**Type:** Boolean +**Default:** `false` + +Whether to automatically join this room on startup. + +### `euph.rooms..username` + +**Type:** String +**Default:** Not st + +If set, cove will set this username upon joining if there is no username +associated with the current session. + +### `euph.rooms..force_username` + +**Type:** Boolean +**Default:** `false` + +If `euph.rooms..username` is set, this will force cove to set the username +even if there is already a different username associated with the current +session. + +### `euph.rooms..password` + +**Type:** String +**Default:** Not st + +If set, cove will try once to use this password to authenticate, should the room +be password-protected. diff --git a/src/main.rs b/src/main.rs index ea4610f..d1805cd 100644 --- a/src/main.rs +++ b/src/main.rs @@ -61,10 +61,14 @@ impl Default for Command { #[clap(version)] struct Args { /// Path to the config file. + /// + /// Relative paths are interpreted relative to the current directory. #[clap(long, short)] config: Option, /// Path to a directory for cove to store its data in. + /// + /// Relative paths are interpreted relative to the current directory. #[clap(long, short)] data_dir: Option,