# # ~/.config/matterhorn/config # [mattermost] # Username. Optional. If missing, you'll be asked to provide one on # startup. # user: username # # Hostname: Optional. If missing, you'll be asked to provide one on # startup. Note that this is just the IP address or hostname of the # server; it should not include anything else such as URL scheme, path, # etc. host: mattermost.zeus.gent # If the team setting is set, it must be the name of a team of which # the user is a member. This is the team you'll automatically use when # connecting and you'll bypass the team selection. If the setting is # absent or isn't one of your teams, you'll be prompted for a choice of # your teams. # # team: # Server port. Optional; defaults to 443. NOTE: If you are not using TLS # and intend to use another port, you MUST set the port accordingly and # then set unsafeUseUnauthenticatedConnection to disable TLS. Matterhorn # uses TLS by default regardless of the port value. # # port: 443 # Server URL path. If the Mattermost server is located at # https://example.com/mattermost then this would be set to # /mattermost. Optional. Defaults to empty string. # # urlPath: /path/to/server # Access token token command. Optional. If this is specified, the # $ secret-tool store --label='matterhorn' matterhorn token # you can use it like this: # tokencmd: secret-tool lookup matterhorn token # This optional setting controls how the client displays times. If it's # absent, you get the default behavior ("%R"). If it's present but # empty, that turns timestamps off. Otherwise its value is used as the # time format string. # # The format string is that accepted by 'formatTime': # https://hackage.haskell.org/package/time-1.6.0.1/docs/Data-Time-Format.html#v:formatTime # # timeFormat: %R # This optional setting controls how the client displays dates. If it's # absent, you get the default behavior ("%Y-%m-%d"). Otherwise its value # is used as the time format string. # # The format string is that accepted by 'formatTime': # https://hackage.haskell.org/package/time-1.6.0.1/docs/Data-Time-Format.html#v:formatTime # dateFormat: %d-%m-%Y # Whether to show timestamps on messages. # # Default: True # showMessageTimestamps: True # Theme name # # For now, the choices are # # builtin:dark (default) # builtin:light # # theme: builtin:dark # Theme customization file # # This setting is optional. If present, it must either be: # # * A relative path to a theme customization file. In this case # the relative path is treated as relative to the location of the # configuration file. For example, if the Matterhorn configuration # file is at $HOME/.config/matterhorn/config.ini and this setting has # the value "theme.ini", then Matterhorn will look for this file at # $HOME/.config/matterhorn/theme.ini. # * An absolute path to a theme customization file. # # themeCustomizationFile: /path/to/file # Smart character pair insertion for "``", "**", and "__". # # Allowed values are True and False (case sensitive). Invalid values are # ignored. Default is True. # # smartbacktick = True # Terminal bell control: ring the terminal bell whenever a new message # arrives (for use with e.g. terminal multiplexers). # # Allowed values are True and False (case sensitive) # Default is False # activityBell = False # How to truncate long verbatim and code blocks. When set to zero # (0), no truncation occurs and verbatim and code blocks are # rendered as-is. When set to any value greater than zero (say N), # Matterhorn will display only up to N lines of each verbatim or code # block and will indicates that the block has been truncated. The # /toggle-truncate-verbatim-blocks command can be used to toggle this # behavior at runtime. # # Allowed values are integers 0 and up # Default is 0 (no truncation) # truncateVerbatimBlockHeight = 0 # Notification script control: run a notification script whenever a new # message arrives. See the "notify" script in notification-scripts/ for # an example Linux notification script for version 1 notifications (note # activityNotifyVersion, below). See the "notifyV2" script for an example # Linux notification script for version 2 notifications. # # See docs/notification-scripts.md for details on the notification script API. # activityNotifyCommand = /usr/bin/notify-send # Notification script control: select the notifier payload version. # This affects how the activityNotifyCommand is invoked. # # Allowed values are 1 and 2. The default is 1. # # Version 1 notifications pass details to the notification script on # the command line. # Version 2 notifications invoke the notification script without # command line parameters; the details are provided as a JSON value # on standard input. # # activityNotifyVersion = 1 # Background activity display: Matterhorn communicates with the # Mattermost server using asynchronous background thread processing. # This parameter can be used to enable a visual display of when and # how much background activity is occurring. The 'ActiveCount' value # displays the number of queued work requests to the background thread; # there may be multiple server messages performed for each work request, # so this value is just a relative indicator of the amount of work # pending for processing by this thread. # # Allowed values are: Disabled, Active, ActiveCount # Default is Disabled # showBackgroundActivity = Disabled # The command to use to open attachments and URLs found in chat # messages. # # Matterhorn invokes this command with the URL as a command # argument. Matterhorn assumes the command will perform the opening # asynchronously, i.e., Matterhorn assumes the command will return # immediately after invoking a background process to open the URL. This # is how OS X's "open" command behaves and is also true for Linux's # "xdg-open". Matterhorn will also only ever invoke this command for one # URL at a time. If, for example, the "open all URLs" action is invoked # on a message with more than one URL, this command will be invoked # repeatedly, once per URL. The same is true for message attachments. # # If the program exits with a non-zero exit status, Matterhorn will # treat that as a URL opener failure and will report it to you as an # application error message. # # A typical value for this on OS X is: # urlOpenCommand = open # A typical value for this on Linux is: # urlOpenCommand = xdg-open # This setting indicates whether the URL-opening command is interactive # in the terminal. Set this to True if your urlOpenCommand is a terminal # web browser or other program that needs to control the terminal while # viewing a URL. Set this to False otherwise. # Default: False # # urlOpenCommandIsInteractive = False # Whether to show a message rendering preview # Default: False # showMessagePreview = True # Whether to show the channel list # Default: True # # showChannelList = True # Whether to show more than the first line of the current channel's # topic if it has multiple lines # Default: True # # showExpandedChannelTopics = True # How many days to keep a direct channel in the channel list after the # last message. # # Default: 7 # directChannelExpirationDays = 7 # Whether to enable the spell checker if "aspell" is present on the # system. # Default: False # # enableAspell = False # Name a specific Aspell dictionary to use. See "aspell dicts" for a # list of available dictionaries on your system. # Default: fall back to environment / locale # # aspellDictionary = "..." # Force Matterhorn to use HTTP instead of HTTPS. This is mostly included # for testing purposes; you really should not use this unless you're # absolutely sure it's what you want, i.e., you run an HTTP server and # you are aware that doing so means you have no transport security. # # unsafeUseUnauthenticatedConnection = False # Whether to validate the server's TLS certificate. It is STRONGLY # RECOMMENDED to keep this set to its default value of True. Only # disable this if your server certificate is self-signed or is not # part of your keychain, and if you are okay with the risk of using an # untrusted certificate. # # Default: True # # validateServerCertificate = True # The width of the channel list (in columns). # # channelListWidth = 20 # The orientation of the channel list. Valid values are "left" (the left # side of the screen) and "right" (the right side of the screen). # # Default: left # # channelListOrientation = left # The maximum size of the internal log buffer, in log entries. This # buffer is initially flushed to the log file when logging starts. # Matterhorn keeps these log entries around, discarding old entries to # keep the buffer from exceeding this size. # # logMaxBufferSize = 200 # Whether to show indicators on edited messages that have not been # edited recently. # Default: True # # showOlderEdits = True # Whether to show the indicator for users typing and to send the typing # notifications to the server. # Default: False # # showTypingIndicator = False # Whether to hyperlink URLs in the terminal. When enabled, this means # Matterhorn will emit special escape sequences to make URLs clickable. # Some terminal emulators do not support this feature, and in some of # those cases the program's output can be garbled so this setting is # provided for that case. # Default: True # # hyperlinkURLs = True # The list of directories from which to load Kate XML syntax definitions # for code block syntax highlighting. The syntax is a colon-separated # list of paths, with the highest-precedence path appearing first. # # Optional. If omitted, this defaults to: # # USER_SYNTAX:BUNDLED_SYNTAX # # where USER_SYNTAX is a special path alias for # ~/.config/matterhorn/syntax/ and BUNDLED_SYNTAX is a special path # alias that refers to the path to XML files in the Matterhorn # distribution relative to the 'matterhorn' binary. # # syntaxDirectories = /path1:/path2:/path3:... # The CPU usage policy for Matterhorn. # # Valid values are "single" and "multiple". The default is "multiple". # If set to "single", the application will be constrained to a single # CPU. This mode can sometimes result in interface input latency. If set # to "multiple", the application will use more than one CPU up to an # application-defined reasonable maximum, or the number of CPUs on the # host, whichever is smaller. # # cpuUsagePolicy = multiple # The default attachment browser path. Optional. # # If this is specified and the directory at this path exists, the # path will be used as the starting path of the attachment browser. # If not specified or if the path does not exist, the current working # directory of matterhorn process will be used as the starting path of # the attachment browser. # # defaultAttachmentPath = /path/to/folder # Whether to enable mouse support for matterhorn # Default: False # # enableMouseMode = False