Better look for dunst and use new dunstctl command

master
Quentin Duchemin 2021-11-24 15:23:33 +01:00
parent a8629d5f44
commit 174a883509
Signed by: Chosto
GPG Key ID: 0547178FEEDE7D6B
2 changed files with 38 additions and 139 deletions

View File

@ -17,21 +17,17 @@
# will be ignored. # will be ignored.
follow = none follow = none
width = 500 width = (0, 400)
height = 100 height = 100
offset = 10x50 offset = 15x15
# Show how many messages are currently hidden (because of geometry). # Show how many messages are currently hidden (because of geometry).
indicate_hidden = yes indicate_hidden = true
# Shrink window if it's smaller than the width. Will be ignored if
# width is 0.
shrink = no
# The transparency of the window. Range: [0; 100]. # The transparency of the window. Range: [0; 100].
# This option will only work if a compositing window manager is # This option will only work if a compositing window manager is
# present (e.g. xcompmgr, compiz, etc.). # present (e.g. xcompmgr, compiz, etc.).
transparency = 10 transparency = 0
# Draw a line of "separator_height" pixel height between two # Draw a line of "separator_height" pixel height between two
# notifications. # notifications.
@ -39,10 +35,10 @@
separator_height = 2 separator_height = 2
# Padding between text and separator. # Padding between text and separator.
padding = 20 padding = 8
# Horizontal padding. # Horizontal padding.
horizontal_padding = 15 horizontal_padding = 10
# Defines width in pixels of frame around the notification window. # Defines width in pixels of frame around the notification window.
# Set to 0 to disable. # Set to 0 to disable.
@ -60,13 +56,13 @@
separator_color = frame separator_color = frame
# Sort messages by urgency. # Sort messages by urgency.
sort = yes sort = true
# Don't remove messages, if the user is idle (no mouse or keyboard input) # Don't remove messages, if the user is idle (no mouse or keyboard input)
# for longer than idle_threshold seconds. # for longer than idle_threshold seconds.
# Set to 0 to disable. # Set to 0 to disable.
# Transient notifications ignore this setting. # Transient notifications ignore this setting.
idle_threshold = 120 idle_threshold = 0
### Text ### ### Text ###
@ -110,27 +106,27 @@
# %n progress value if set without any extra characters # %n progress value if set without any extra characters
# %% Literal % # %% Literal %
# Markup is allowed # Markup is allowed
format = "<b>%a - %s</b>\n%b" format = "<b>%s</b>\n%b"
# Alignment of message text. # Alignment of message text.
# Possible values are "left", "center" and "right". # Possible values are "left", "center" and "right".
alignment = left alignment = center
# Show age of message if message is older than show_age_threshold # Show age of message if message is older than show_age_threshold
# seconds. # seconds.
# Set to -1 to disable. # Set to -1 to disable.
show_age_threshold = 60 show_age_threshold = -1
# Split notifications into multiple lines if they don't fit into # Split notifications into multiple lines if they don't fit into
# geometry. # geometry.
word_wrap = yes word_wrap = no
# When word_wrap is set to no, specify where to ellipsize long lines. # When word_wrap is set to no, specify where to ellipsize long lines.
# Possible values are "start", "middle" and "end". # Possible values are "start", "middle" and "end".
ellipsize = middle ellipsize = middle
# Ignore newlines '\n' in notifications. # Ignore newlines '\n' in notifications.
ignore_newline = no ignore_newline = false
# Merge multiple notifications with the same content # Merge multiple notifications with the same content
stack_duplicates = true stack_duplicates = true
@ -139,7 +135,7 @@
hide_duplicate_count = false hide_duplicate_count = false
# Display indicators for URLs (U) and actions (A). # Display indicators for URLs (U) and actions (A).
show_indicators = yes show_indicators = true
### Icons ### ### Icons ###
@ -156,7 +152,7 @@
# Should a notification popped up from history be sticky or timeout # Should a notification popped up from history be sticky or timeout
# as if it would normally do. # as if it would normally do.
sticky_history = yes sticky_history = false
# Maximum amount of notifications kept in history # Maximum amount of notifications kept in history
history_length = 100 history_length = 100
@ -164,7 +160,7 @@
### Misc/Advanced ### ### Misc/Advanced ###
# dmenu path. # dmenu path.
dmenu = /usr/bin/dmenu -p dunst: dmenu = /usr/bin/dmenu -p "fais ton choix mon giga pote"
# Browser for opening urls in context menu. # Browser for opening urls in context menu.
browser = /usr/bin/firefox -new-tab browser = /usr/bin/firefox -new-tab
@ -178,134 +174,29 @@
# Define the class of the windows spawned by dunst # Define the class of the windows spawned by dunst
class = Dunst class = Dunst
# Print a notification on startup. # If the notification has exactly one url, open it. If there are multiple ones, open the context menu.
# This is mainly for error detection, since dbus (re-)starts dunst mouse_middle_click = open_url
# automatically after a crash.
startup_notification = false
### Legacy # Invoke the action determined by the action_name rule. If there is no such action, open the context menu.
mouse_left_click = do_action
# Use the Xinerama extension instead of RandR for multi-monitor support.
# This setting is provided for compatibility with older nVidia drivers that
# do not support RandR and using it on systems that support RandR is highly
# discouraged.
#
# By enabling this setting dunst will not be able to detect when a monitor
# is connected or disconnected which might break follow mode if the screen
# layout changes.
force_xinerama = false
# Experimental features that may or may not work correctly. Do not expect them
# to have a consistent behaviour across releases.
[experimental]
# Calculate the dpi to use on a per-monitor basis.
# If this setting is enabled the Xft.dpi value will be ignored and instead
# dunst will attempt to calculate an appropriate dpi value for each monitor
# using the resolution and physical size. This might be useful in setups
# where there are multiple screens with very different dpi values.
per_monitor_dpi = false
[shortcuts]
# Shortcuts are specified as [modifier+][modifier+]...key
# Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
# "mod3" and "mod4" (windows-key).
# Xev might be helpful to find names for keys.
# Close notification.
close = ctrl+space
# Close all notifications. # Close all notifications.
close_all = ctrl+shift+space mouse_right_click = close_all
# Redisplay last message(s).
# On the US keyboard layout "grave" is normally above TAB and left
# of "1". Make sure this key actually exists on your keyboard layout,
# e.g. check output of 'xmodmap -pke'
history = ctrl+mod1+space
# Context menu.
context = ctrl+mod1+enter
[urgency_low] [urgency_low]
# IMPORTANT: colors have to be defined in quotation marks. frame_color = "#3B7C87"
# Otherwise the "#" and following would be interpreted as a comment. foreground = "#3B7C87"
background = "#222222" background = "#191311"
foreground = "#888888"
timeout = 10 timeout = 10
# Icon for notifications with low urgency, uncomment to enable
#icon = /path/to/icon
[urgency_normal] [urgency_normal]
background = "#285577" frame_color = "#5B8234"
foreground = "#ffffff" foreground = "#5B8234"
background = "#191311"
timeout = 10 timeout = 10
# Icon for notifications with normal urgency, uncomment to enable
#icon = /path/to/icon
[urgency_critical] [urgency_critical]
background = "#900000" frame_color = "#B7472A"
foreground = "#ffffff" foreground = "#B7472A"
frame_color = "#ff0000" background = "#191311"
timeout = 0 timeout = 0
# Icon for notifications with critical urgency, uncomment to enable
#icon = /path/to/icon
# Every section that isn't one of the above is interpreted as a rules to
# override settings for certain messages.
# Messages can be matched by "appname", "summary", "body", "icon", "category",
# "msg_urgency" and you can override the "timeout", "urgency", "foreground",
# "background", "new_icon" and "format".
# Shell-like globbing will get expanded.
#
# SCRIPTING
# You can specify a script that gets run when the rule matches by
# setting the "script" option.
# The script will be called as follows:
# script appname summary body icon urgency
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
#
# NOTE: if you don't want a notification to be displayed, set the format
# to "".
# NOTE: It might be helpful to run dunst -print in a terminal in order
# to find fitting options for rules.
#[espeak]
# summary = "*"
# script = dunst_espeak.sh
#[script-test]
# summary = "*script*"
# script = dunst_test.sh
#[ignore]
# # This notification will not be displayed
# summary = "foobar"
# format = ""
#[history-ignore]
# # This notification will not be saved in history
# summary = "foobar"
# history_ignore = yes
#[signed_on]
# appname = Pidgin
# summary = "*signed on*"
# urgency = low
#
#[signed_off]
# appname = Pidgin
# summary = *signed off*
# urgency = low
#
#[says]
# appname = Pidgin
# summary = *says*
# urgency = critical
#
#[twitter]
# appname = Pidgin
# summary = *twitter.com*
# urgency = normal
#
# vim: ft=cfg

View File

@ -211,6 +211,14 @@ mode "$resize_mode" {
bindsym $mod+r mode "$resize_mode" bindsym $mod+r mode "$resize_mode"
##################################
# BINDINGS FOR NOTIFICATIONS
##################################
bindsym Control+space exec dunstctl close
bindsym Control+$mod+space exec dunstctl history-pop
bindsym Control+$mod+g exec dunstctl context
################################## ##################################
# OPERATIONS FOR SPECIFIC WINDOWS # OPERATIONS FOR SPECIFIC WINDOWS
################################## ##################################