config.toml 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. # Whether to focus the message input automatically when a channel is selected.
  2. # Set to false to preview channels without moving focus.
  3. auto_focus = true
  4. # Whether to enable mouse or not.
  5. mouse = true
  6. # The program to open when the `keys.message_input.editor` keymap is pressed. Set the value to `"default"` to use `$EDITOR`.
  7. editor = "default"
  8. # "default" (unknown), "online", "dnd", "idle", "invisible", "offline"
  9. status = "default"
  10. # Whether to parse and render markdown in messages or not.
  11. markdown = true
  12. hide_blocked_users = true
  13. show_attachment_links = true
  14. # Max members to be in the mention autocomplete suggestions list
  15. # Note: Use autocomplete_limit = 0 to disable.
  16. autocomplete_limit = 20
  17. # The number of messages to fetch when a text-based channel is selected from guilds tree. The minimum and maximum value is 1 and 100, respectively.
  18. messages_limit = 50
  19. [timestamps]
  20. enabled = true
  21. # https://pkg.go.dev/time#Layout
  22. format = "3:04PM"
  23. [notifications]
  24. enabled = true
  25. # The duration of the sound. Set the value to `0` to use default duration. This is only supported on Unix and Windows.
  26. duration = 0
  27. [notifications.sound]
  28. enabled = true
  29. only_on_ping = true
  30. [typing_indicator]
  31. # Whether to send typing status or not.
  32. send = true
  33. # Whether to receive typing status or not.
  34. receive = true
  35. # Global shortcuts
  36. # Esc: Reset message selection or close the channel selection popup.
  37. [keys]
  38. focus_guilds_tree = "Ctrl+G"
  39. focus_messages_list = "Ctrl+T"
  40. focus_message_input = "Ctrl+I"
  41. # Cycle focus between the widgets.
  42. focus_previous = "Ctrl+H"
  43. focus_next = "Ctrl+L"
  44. # Hide/show the guilds tree.
  45. toggle_guilds_tree = "Ctrl+B"
  46. quit = "Ctrl+C"
  47. # Log out and remove the authentication token from keyring.
  48. # Requires re-login upon restart.
  49. logout = "Ctrl+D"
  50. # Only while focusing on the guilds tree
  51. [keys.guilds_tree]
  52. select_previous = "Rune[k]"
  53. select_next = "Rune[j]"
  54. select_first = "Rune[g]"
  55. select_last = "Rune[G]"
  56. # Select the currently highlighted text-based channel or expand a guild or channel.
  57. select_current = "Enter"
  58. yank_id = "Rune[i]"
  59. collapse_parent_node = "Rune[-]"
  60. move_to_parent_node = "Rune[p]"
  61. # Only while focusing on sent messages
  62. [keys.messages_list]
  63. select_previous = "Rune[k]"
  64. select_next = "Rune[j]"
  65. select_first = "Rune[g]"
  66. select_last = "Rune[G]"
  67. # Scroll the messages list without changing the selection.
  68. scroll_up = "Rune[K]"
  69. scroll_down = "Rune[J]"
  70. scroll_top = "Home"
  71. scroll_bottom = "End"
  72. # Select the message reference (reply) of the selected channel.
  73. select_reply = "Rune[s]"
  74. # Reply to the selected message.
  75. reply = "Rune[R]"
  76. # Reply (with mention) to the selected message.
  77. reply_mention = "Rune[r]"
  78. cancel = "Esc"
  79. edit = "Rune[e]"
  80. delete = "Rune[D]"
  81. delete_confirm = "Rune[d]"
  82. # Open the selected message's attachments or hyperlinks in the message
  83. # using the default browser application.
  84. open = "Rune[o]"
  85. # Yank (copy) the selected message's content/url/id.
  86. yank_content = "Rune[y]"
  87. yank_url = "Rune[u]"
  88. yank_id = "Rune[i]"
  89. # Only while typing a message
  90. # Alt+Enter: Insert a new line to the current text.
  91. [keys.message_input]
  92. # paste from clipboard (supports both text and images)
  93. paste = "Ctrl+V"
  94. send = "Enter"
  95. # Remove existing text or cancel reply.
  96. cancel = "Esc"
  97. # Complete usernames when mentioning
  98. tab_complete = "Tab"
  99. open_editor = "Ctrl+E"
  100. open_file_picker = "Ctrl+Rune[\\]"
  101. [keys.mentions_list]
  102. up = "Ctrl+P"
  103. down = "Ctrl+N"
  104. # style = { foreground = "", background = "", attributes = "" or [""] }
  105. [theme.title]
  106. alignment = "left" # `"left"`, `"center"`, or `"right"`.
  107. normal_style = { attributes = "dim" }
  108. active_style = { foreground = "green", attributes = "bold" }
  109. [theme.footer]
  110. alignment = "left"
  111. normal_style = { attributes = "dim" }
  112. active_style = { foreground = "green", attributes = "bold" }
  113. [theme.border]
  114. enabled = true
  115. padding = [0, 0, 1, 1] # [top, bottom, left, right]
  116. normal_style = { attributes = "dim" }
  117. active_style = { foreground = "green", attributes = "bold" }
  118. # `"hidden"`, `"plain"`, `"round"`, `"thick"`, or `"double"`.
  119. normal_set = "round"
  120. active_set = "round"
  121. [theme.guilds_tree]
  122. auto_expand_folders = true
  123. # Give tree-like shape
  124. graphics = true
  125. graphics_color = "default"
  126. [theme.messages_list]
  127. reply_indicator = ">"
  128. forwarded_indicator = "<"
  129. mention_style = { foreground = "blue" }
  130. emoji_style = { foreground = "green" }
  131. url_style = { foreground = "blue" }
  132. attachment_style = { foreground = "yellow" }
  133. message_style = {}
  134. selected_message_style = { attributes = "reverse" }
  135. [theme.mentions_list]
  136. # Note: width and height are capped to the avaliable space
  137. # Minimum width
  138. # 0 = make the list as wide as possible
  139. min_width = 20
  140. # Maximum height
  141. # 0 = make the list as tall as needed
  142. max_height = 0