various waybar fixes (fix playerctl emojis)
parent
e0ee6c7eb9
commit
b33b442229
|
@ -1,3 +1,3 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
#Spotify
|
#Spotify
|
||||||
exec playerctl metadata -f '{{emoji(status)}} {{xesam:artist}} - {{xesam:title}}' -F
|
exec playerctl metadata -f '{{emoji(playerName)}} {{emoji(status)}} {{xesam:artist}} - {{xesam:title}}' -F
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
* {
|
* {
|
||||||
border: none;
|
border: none;
|
||||||
border-radius: 0;
|
border-radius: 0;
|
||||||
font-family: Roboto, Helvetica, Arial, sans-serif;
|
font-family: Helvetica, "Font Awesome 5 Free", sans-serif;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
min-height: 0;
|
min-height: 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,7 +27,7 @@ format = '<span style="italic">{}</span>'
|
||||||
spacing = 10
|
spacing = 10
|
||||||
|
|
||||||
[clock]
|
[clock]
|
||||||
format = "{:%Y-%m-%d %H:%M}"
|
format = "{:%a %d %b %H:%M}"
|
||||||
on-click = "xdg-open https://calendar.google.com"
|
on-click = "xdg-open https://calendar.google.com"
|
||||||
|
|
||||||
[disk]
|
[disk]
|
||||||
|
@ -59,14 +59,14 @@ on-click-right = "~/dotfiles/bin/btoggle.sh"
|
||||||
[pulseaudio.format-icons]
|
[pulseaudio.format-icons]
|
||||||
headphones = ""
|
headphones = ""
|
||||||
handsfree = ""
|
handsfree = ""
|
||||||
headset = ""
|
headset = ""
|
||||||
phone = ""
|
phone = ""
|
||||||
portable = ""
|
portable = ""
|
||||||
car = ""
|
car = ""
|
||||||
default = [ "", "" ]
|
default = [ "", "" ]
|
||||||
|
|
||||||
["custom/spotify"]
|
["custom/spotify"]
|
||||||
format = " {}"
|
format = "{}"
|
||||||
escape = true
|
escape = true
|
||||||
max-length = 40
|
max-length = 40
|
||||||
on-click = "playerctl play-pause"
|
on-click = "playerctl play-pause"
|
||||||
|
|
|
@ -11,5 +11,8 @@
|
||||||
username = "yorickvp";
|
username = "yorickvp";
|
||||||
token = (import ../nixos/secrets.nix).factorio_token;
|
token = (import ../nixos/secrets.nix).factorio_token;
|
||||||
};
|
};
|
||||||
|
playerctl = super.playerctl.overrideAttrs (o: {
|
||||||
|
patches = (o.patches or []) ++ [ ./playerctl-solid-emoji.diff ];
|
||||||
|
});
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
diff --git a/playerctl/playerctl-formatter.c b/playerctl/playerctl-formatter.c
|
||||||
|
index caeb853..de6c589 100644
|
||||||
|
--- a/playerctl/playerctl-formatter.c
|
||||||
|
+++ b/playerctl/playerctl-formatter.c
|
||||||
|
@@ -596,11 +596,11 @@ static GVariant *helperfn_emoji(struct token *token, GVariant **args, int nargs,
|
||||||
|
if (pctl_parse_playback_status(status_str, &status)) {
|
||||||
|
switch (status) {
|
||||||
|
case PLAYERCTL_PLAYBACK_STATUS_PLAYING:
|
||||||
|
- return g_variant_new("s", "▶️");
|
||||||
|
+ return g_variant_new("s", "");
|
||||||
|
case PLAYERCTL_PLAYBACK_STATUS_STOPPED:
|
||||||
|
- return g_variant_new("s", "⏹️");
|
||||||
|
+ return g_variant_new("s", "");
|
||||||
|
case PLAYERCTL_PLAYBACK_STATUS_PAUSED:
|
||||||
|
- return g_variant_new("s", "⏸️");
|
||||||
|
+ return g_variant_new("s", "");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if (g_strcmp0(key, "volume") == 0 &&
|
||||||
|
@@ -613,6 +613,15 @@ static GVariant *helperfn_emoji(struct token *token, GVariant **args, int nargs,
|
||||||
|
} else {
|
||||||
|
return g_variant_new("s", "🔊");
|
||||||
|
}
|
||||||
|
+ } else if (g_strcmp0(key, "playerName") == 0 && g_variant_is_of_type(value, G_VARIANT_TYPE_STRING)) {
|
||||||
|
+ const gchar *playerName_str = g_variant_get_string(value, NULL);
|
||||||
|
+ if (g_strcmp0(playerName_str, "spotify") == 0) {
|
||||||
|
+ return g_variant_new("s", "");
|
||||||
|
+ } else if (g_strcmp0(playerName_str, "firefox") == 0) {
|
||||||
|
+ return g_variant_new("s", "");
|
||||||
|
+ } else if (g_strcmp0(playerName_str, "chromium") == 0) {
|
||||||
|
+ return g_variant_new("s", "");
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
g_variant_ref(value);
|
Loading…
Reference in New Issue