dotfiles/home/default/.config/waybar/config
2024-01-27 16:13:34 +07:00

239 lines
7.8 KiB
Plaintext

{
// "layer": "top", // Waybar at top layer
"position": "top", // Waybar position (top|bottom|left|right)
"height": 20, // Waybar height (to be removed for auto height)
// "width": 1280, // Waybar width
// Choose the order of the modules
"modules-left": ["sway/workspaces", "sway/mode", "custom/media"],
//"modules-center": [],
//"modules-right": ["idle_inhibitor", "mpd", "pulseaudio", "network", "cpu", "memory", "temperature", "battery", "custom/scratchpad_indicator", "clock", "tray", "custom/swaync", "custom/emacsstatus" ],
"modules-right": ["pulseaudio", "network", "battery", "custom/scratchpad_indicator", "custom/neralie", "tray", "custom/swaync", "custom/emacsstatus" ],
"river/tags": {
"num-tags": 5,
"tag-labels": {
"1": "",
"2": "",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": "",
}
},
"sway/workspaces": {
"disable-scroll-wraparound": true
},
// Modules configuration
"sway/workspaces": {
"persistent_workspaces": {
// "1": ["DVI-D-1"],
// "2": ["DVI-D-1"],
// "3": ["DVI-D-1"],
// "4": ["DVI-D-1"],
// "5": ["DVI-D-1"],
// "6": ["HDMI-A-1"],
// "7": ["HDMI-A-1"],
// "8": ["HDMI-A-1"],
// "9": ["HDMI-A-1"],
// "10": ["HDMI-A-1"],
//"1": ["HDMI-A-1"],
//"2": ["HDMI-A-1"],
//"3": ["HDMI-A-1"],
//"4": ["HDMI-A-1"],
//"5": ["HDMI-A-1"],
//"6": ["DVI-D-1"],
//"7": ["DVI-D-1"],
//"8": ["DVI-D-1"],
//"9": ["DVI-D-1"],
//"10": ["DVI-D-1"]
},
// "disable-scroll": true,
"all-outputs": false,
"format": "{name}",
//"format": "{icon}",
"format-icons": {
"1": "+",
"2": "+",
"3": "+",
"4": "+",
"5": "+",
"6": "+",
"7": "+",
"8": "+",
"9": "+",
"10": "+",
// "1": "1",
// "2": "2",
// "3": "3-sch", // schedule
// "4": "4-comms",
// "5": "5-mon", // monitor
// "6": "6-em", // emacs
// "7": "7-se", // search/web
// "8": "8-tm", // terminal
// "9": "9-gm",
// "10": "10",
//"1": "1-em", // emacs
//"2": "2-se", // search/web
//"3": "3-tm", // terminal
//"4": "4-gm",
//"5": "5",
//"6": "6",
//"7": "7",
//"8": "8-sch", // schedule
//"9": "9-comms",
//"10": "10-mon", // monitor
}
},
"keyboard-state": {
"numlock": true,
"capslock": true,
"format": "{name} {icon}",
"format-icons": {
"locked": "",
"unlocked": ""
}
},
"sway/mode": {
"format": "<span style=\"italic\">{}</span>"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
}
},
"tray": {
"icon-size": 15,
"spacing": 10
},
"clock": {
// "timezone": "America/New_York",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format": "{:%H:%M}",
//"format": "{:%Y-%m-%d %H:%M:%S}",
//"format": "{:%Y-%m-%d %I:%M:%S %p}",
//"format": "day # {:%j}",
"interval": 1,
"on-click": "uxnemu ~/.local/uxn/catclock.rom"
},
"cpu": {
"format": " {usage}%",
// "tooltip": false
},
"memory": {
"format": " {}%"
},
"battery": {
"states": {
"good": 95,
"warning": 30,
"critical": 15
},
"format": "{icon} {capacity}% ({time})",
"format-charging": " {capacity}%",
"format-plugged": " {capacity}%",
// "format-good": "", // An empty format will hide the module
// "format-full": "",
"format-icons": ["", "", "", "", ""]
},
"network": {
// "interface": "wlp2*", // (Optional) To force the use of this interface
"format-wifi": " {essid} ({signalStrength}%)",
"format-ethernet": " {ifname}: {ipaddr}/{cidr}",
"format-linked": " {ifname} (No IP)",
"format-disconnected": "⚠ Disconnected",
"format-alt": "{ifname}: {ipaddr}/{cidr}",
"on-click": "$TERMINAL -e nmtui"
},
"pulseaudio": {
// "scroll-step": 1, // %, can be a float
"format": "{icon} {volume}%",
"format-bluetooth": "{volume}% {format_source}",
"format-bluetooth-muted": " {icon} {format_source}",
"format-muted": " {volume}%",
// "format-source": "{volume}% ",
// "format-source-muted": "",
"format-icons": {
"headphone": "",
"hands-free": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", "", ""]
},
"on-click": "$TERMINAL -e pulsemixer"
// "on-click": "pavucontrol"
},
"mpd": {
"server": "localhost",
"port": 6600,
"format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon} {artist} | {title} | {elapsedTime:%M:%S}/{totalTime:%M:%S}",
// "max-length": 200,
"format-disconnected": "-",
"format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped",
"interval": 2,
"consume-icons": {
"on": " " // Icon shows only when "consume" is on
},
"random-icons": {
"off": "<span color=\"#f53c3c\"></span> ", // Icon grayed out when "random" is off
"on": " "
},
"repeat-icons": {
"on": " "
},
"single-icons": {
"on": "1 "
},
"state-icons": {
"paused": "",
"playing": ""
},
"tooltip-format": "MPD (connected)",
"tooltip-format-disconnected": "MPD (disconnected)"
},
"custom/media": {
"format": "{icon} {}",
"return-type": "json",
"max-length": 40,
"format-icons": {
"spotify": "",
"default": "🎜"
},
"escape": true,
"exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
// "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
},
"custom/swaync": {
"exec": "~/.config/waybar/scripts/notifications.sh",
"on-click": "swaync-client -t",
"restart-interval": 1
},
"custom/emacsstatus": {
"return-type": "json",
"exec": "~/.config/waybar/scripts/emacs-status.sh",
"on-click": "emacsclient -c -a ''",
"format": "{}",
"restart-interval": 3
},
"custom/scratchpad_indicator": {
"interval": 1,
"return-type": "json",
"exec": "swaymsg -t get_tree | jq --unbuffered --compact-output '( select(.name == \"root\") | .nodes[] | select(.name == \"__i3\") | .nodes[] | select(.name == \"__i3_scratch\") | .focus) as $scratch_ids | [.. | (.nodes? + .floating_nodes?) // empty | .[] | select(.id |IN($scratch_ids[]))] as $scratch_nodes | { text: \"\\($scratch_nodes | length)\", tooltip: $scratch_nodes | map(\"\\(.app_id // .window_properties.class) (\\(.id)): \\(.name)\") | join(\"\\n\") }'",
"format": " {}",
"on-click": "exec swaymsg 'scratchpad show'",
"on-click-right": "exec swaymsg 'move scratchpad'"
},
"custom/neralie": {
"exec": "~/.local/bin/neralie",
"on-click": "uxnemu ~/.local/uxn/catclock.rom",
"restart-interval": 1
},
}