# This is a example configuration file for the imag suite. # It is written in TOML # # imag supports templates when specifying formats. The templates support several # functionalities, from colorizing to underlining and such things. # # Here goes a list of supported formatting helpers: # # These functions can be applied for colorizing the output: # {{black }} # {{blue }} # {{cyan }} # {{green }} # {{purple }} # {{red }} # {{white }} # {{yellow }} # # The following functions are allowed for formatting text: # {{lpad }} - to "left pad" by spaces # {{rpad }} - to "right pad" by spaces # {{abbrev }} - to "abbreviate" the output to chars # {{underline }} - for underlining # {{bold }} - for making input bold # {{blink }} - for making input blinking # {{strikethrough }} - for making input struck through # # Strings can only be printed. Arrays can be indexed with the `lookup` function. # # # The underlying templating engine also supports these: # # {{#raw}} ... {{/raw}} escape handlebars expression within the block # {{#if ...}} ... {{else}} ... {{/if}} if-else block # {{#unless ...}} ... {{else}} .. {{/unless}} if-not-else block # {{#each ...}} ... {{/each}} iterates over an array or object. # Handlebar-rust doesn't support mustach iteration syntax so use this instead. # {{#with ...}} ... {{/with}} change current context. Similar to {{#each}}, used for replace corresponding mustach syntax. # {{lookup ... ...}} get value from array by @index or @key # {{> ...}} include template with name # {{log ...}} log value with rust logger, default level: INFO. Currently you cannot change the level. # # Warning: These are _not_ tested and should be used with care. # # The alias section # # In this section one can define aliases for imag subcommands. # # E.G: An alias `store = [ "s", "st" ]` allows the user to call `imag s` or # `imag st` for calling `imag store`. # # The aliases have to be either a single string or an array of strings, where no # string contains whitespace (thus, aliasing a "store-create" call to "sc" for # example is not supported). # [imag.aliases] store = [ "s", "st" ] [imag.logging] level = "debug" destinations = [ "-" ] # # Valid variables for logging: # * "level" # * "module_path" # * "file" # * "line" # * "target" # * "message" # [imag.logging.format] trace = "[imag][{{red level}}][{{module_path}}]: {{message}}" debug = "[imag][{{cyan level}}][{{yellow target}}]: {{message}}" info = "[imag]: {{message}}" warn = "[imag][{{bold level}}]: {{yellow message}}" error = "[imag][{{red level}}]: {{red message}}" # # The logging configurations for the modules of imag follow. # # Note that the `destinations` key is for _additional_ destinations to the # default destination in `imag.logging.destinations`, not as replacement! So # specifying stderr (`-`) in `imag.logging.destinations` _and_ in, for example, # `imag.logging.modules.libimagstore` yields each log line twice, which might # not be wanted behaviour. # [imag.logging.modules.libimagutil] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagtimeui] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimaginteraction] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagstore] destinations = [ "/tmp/libimagstore.log" ] level = "trace" enabled = true [imag.logging.modules.libimagrt] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagerror] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagbookmark] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagnotes] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagdiary] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagtimetrack] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagtodo] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagmail] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagentryfilter] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagentrycategory] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagentryannotation] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagentrylink] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagentrytag] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagentrygps] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagentrylist] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagentryedit] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagentryref] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagentryview] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagentrymarkdown] destinations = [] level = "debug" enabled = true [imag.logging.modules.libimagentrydatetime] destinations = [] level = "debug" enabled = true # # Configuration options for the user interface # [ui] # # Configuration options for the commandline user interface # [ui.cli] # History file path for readline. Will be created by imag if it does not exist. readline_history_file = "/tmp/readline.history" # Number of lines to safe in the history file readline_history_size = 100 # Ignore duplicated lines readline_history_ignore_dups = true # Tell if lines which begin with a space character are saved or not in the # history list. readline_history_ignore_space = true # The prompt string to use readline_prompt = ">> " [store] # Set to false if you do not want imag to create the directory where the store # lives implicitely implicit-create = false [diary] default_diary = "default" [diary.diaries.default] timed = "minutely" [bookmark] default_collection = "default" [view.viewers] # Configure which viewers there are for `imag view in `. editor = "vim -R {{entry}}" web = "chromium {{entry}}"