imag-init 0.6.2

Part of the imag core distribution: imag-init command
# 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 <input>}}
#  {{blue <input>}}
#  {{cyan <input>}}
#  {{green <input>}}
#  {{purple <input>}}
#  {{red <input>}}
#  {{white <input>}}
#  {{yellow <input>}}
#
# The following functions are allowed for formatting text:
#  {{lpad <count> <input>}}   - to "left pad" by <count> spaces
#  {{rpad <count> <input>}}   - to "right pad" by <count> spaces
#  {{abbrev <count> <input>}} - to "abbreviate" the output to <count> chars
#  {{underline <input>}}      - for underlining
#  {{bold <input>}}           - for making input bold
#  {{blink <input>}}          - for making input blinking
#  {{strikethrough <input>}}  - 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 <entry> in <viewer>`.
editor = "vim -R {{entry}}"
web    = "chromium {{entry}}"

[contact]

# Format for listing contacts
#
# Available variables:
#  * "i"            : Integer, counts the output lines
#  * "id"           : The hash which can be used to print the entry itself.
#  * "ADR"          : Array
#  * "ANNIVERSARY"  : String
#  * "BDAY"         : String
#  * "CATEGORIES"   : Array<String>
#  * "CLIENTPIDMAP" : String
#  * "EMAIL"        : Array<String>
#  * "FN"           : Array<String>
#  * "GENDER"       : String
#  * "GEO"          : Array<String>
#  * "IMPP"         : Array<String>
#  * "KEY"          : Array<String>
#  * "LANG"         : Array<String>
#  * "LOGO"         : Array<String>
#  * "MEMBER"       : Array<String>
#  * "N"            : String
#  * "NICKNAME"     : Array<String>
#  * "NOTE"         : Array<String>
#  * "ORG"          : Array<String>
#  * "PHOTO"        : Array<String>
#  * "PRIOD"        : String
#  * "RELATED"      : Array<String>
#  * "REV"          : String
#  * "ROLE"         : Array<String>
#  * "SOUND"        : Array<String>
#  * "TEL"          : Array<String>
#  * "TITLE"        : Array<String>
#  * "TZ"           : Array<String>
#  * "UID"          : String
#  * "URL"          : Array<String>
#  * "VERSION"      : String
#
# Multiple lines shouldn't be used, as this is for listing multiple entries.
#
# Note: Abbreviating the hash ("id") is not yet supported in the "show" command,
# thus we print the id here without abbreviating it. To abbreviate it to 5
# characters, use:
#
#  {{abbrev 5 id}}
#
list_format = "{{lpad 5 i}} | {{id}} | {{FN}} | {{mail}} | {{adr}}"

# The format when printing a single contact
#
# Here, the same rules like for the list format apply.
# Multiple lines should work fine.
# The "i" variable defaults to zero (0)
show_format = """
{{id}} - {{UID}}

Full name: {{FN}}
Email    : {{EMAIL}}
Address  : {{ADR}}
"""

[log]
logs = ["default"]
default = "default"