style(themes): brand the launcher mark and rework waybar icon sizing
All checks were successful
Check / eval (push) Successful in 3m11s
All checks were successful
Check / eval (push) Successful in 3m11s
- Pin `font-family: Nomarchy` on #custom-nomarchy (boreal, executive-slate) so the branded mark at U+F000 wins over the Nerd Font's glass glyph at the same codepoint (summer bars already pinned it). - Enlarge the icons on icon+text modules via a Pango span, with a gap so the glyph no longer crowds the value. The volume module gets a wider gap: its level glyph is unusually wide and overlapped the % otherwise. - Bump icon-only status modules (caffeine, speedometer, …) to match, so they don't read smaller than their neighbours. The generated bar sizes everything relative to fonts.size (+2/+3pt) so it scales per theme. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -158,12 +158,12 @@ let
|
|||||||
# Active keyboard layout (per focused device) — only placed in
|
# Active keyboard layout (per focused device) — only placed in
|
||||||
# modules-right when showLanguage (see above).
|
# modules-right when showLanguage (see above).
|
||||||
"hyprland/language" = {
|
"hyprland/language" = {
|
||||||
format = " {short}";
|
format = "<span size='${toString (t.fonts.size + 2)}pt'></span> {short}";
|
||||||
tooltip = false;
|
tooltip = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
pulseaudio = {
|
pulseaudio = {
|
||||||
format = "{icon} {volume}%";
|
format = "<span size='${toString (t.fonts.size + 2)}pt'>{icon}</span> {volume}%";
|
||||||
format-muted = "";
|
format-muted = "";
|
||||||
format-icons.default = [ "" "" "" ];
|
format-icons.default = [ "" "" "" ];
|
||||||
on-click = "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
|
on-click = "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
|
||||||
@@ -187,8 +187,8 @@ let
|
|||||||
|
|
||||||
battery = {
|
battery = {
|
||||||
states = { warning = 25; critical = 10; };
|
states = { warning = 25; critical = 10; };
|
||||||
format = "{icon} {capacity}%";
|
format = "<span size='${toString (t.fonts.size + 2)}pt'>{icon}</span> {capacity}%";
|
||||||
format-charging = " {capacity}%";
|
format-charging = "<span size='${toString (t.fonts.size + 2)}pt'></span> {capacity}%";
|
||||||
format-icons = [ "" "" "" "" "" ];
|
format-icons = [ "" "" "" "" "" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -361,9 +361,15 @@ let
|
|||||||
always the alert color. */
|
always the alert color. */
|
||||||
#custom-doctor { color: @bad; }
|
#custom-doctor { color: @bad; }
|
||||||
|
|
||||||
/* The power-profile speedometer glyph renders small in its em box —
|
/* Icon-only status modules carry no text, so they don't get the
|
||||||
size it up so it reads at a glance like the other indicators. */
|
(size+2)pt Pango icon span the icon+text modules use — bump their
|
||||||
#custom-powerprofile { font-size: ${toString (t.fonts.size + 3)}pt; }
|
font-size to match, or these glyphs read smaller than the volume /
|
||||||
|
battery / language icons beside them. */
|
||||||
|
#custom-recording, #custom-updates, #custom-vpn, #custom-nightlight, #custom-doctor, #custom-notification { font-size: ${toString (t.fonts.size + 2)}pt; }
|
||||||
|
|
||||||
|
/* The speedometer + caffeine glyphs render small in their em box —
|
||||||
|
size them up a touch more so they read at a glance. */
|
||||||
|
#custom-powerprofile, #idle_inhibitor { font-size: ${toString (t.fonts.size + 3)}pt; }
|
||||||
|
|
||||||
/* notifications waiting → accent; Do-Not-Disturb → muted bell-off */
|
/* notifications waiting → accent; Do-Not-Disturb → muted bell-off */
|
||||||
#custom-notification.notification { color: @accent; }
|
#custom-notification.notification { color: @accent; }
|
||||||
|
|||||||
@@ -74,10 +74,13 @@ window#waybar {
|
|||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ── Launcher — the aurora-violet monogram opens the pill ─────────────*/
|
/* ── Launcher — the aurora-violet Nomarchy mark opens the pill ────────
|
||||||
|
The mark lives at U+F000 in the dedicated "Nomarchy" font; pin the
|
||||||
|
family or the Nerd Font's glass glyph at the same codepoint wins. */
|
||||||
#custom-nomarchy {
|
#custom-nomarchy {
|
||||||
color: @accent;
|
color: @accent;
|
||||||
font-size: 16px;
|
font-family: Nomarchy;
|
||||||
|
font-size: 18px;
|
||||||
padding: 0 12px 0 14px;
|
padding: 0 12px 0 14px;
|
||||||
}
|
}
|
||||||
#custom-nomarchy:hover { color: @accentAlt; }
|
#custom-nomarchy:hover { color: @accentAlt; }
|
||||||
@@ -126,8 +129,19 @@ window#waybar {
|
|||||||
#battery.warning:not(.charging) { color: @warn; }
|
#battery.warning:not(.charging) { color: @warn; }
|
||||||
#battery.critical:not(.charging) { color: @bad; }
|
#battery.critical:not(.charging) { color: @bad; }
|
||||||
|
|
||||||
/* Power-profile speedometer renders small in its em box — size it up. */
|
/* Icon-only status modules carry no text, so they don't get the 13pt
|
||||||
#custom-powerprofile { font-size: 16px; }
|
Pango icon span the icon+text modules (volume/battery/language) use —
|
||||||
|
bump their font-size to match, or these glyphs read noticeably smaller
|
||||||
|
than their neighbours. */
|
||||||
|
#custom-recording,
|
||||||
|
#custom-updates,
|
||||||
|
#custom-doctor,
|
||||||
|
#custom-nightlight,
|
||||||
|
#custom-vpn,
|
||||||
|
#custom-notification { font-size: 17px; }
|
||||||
|
/* Speedometer + caffeine cup render small in their em box — a touch more. */
|
||||||
|
#custom-powerprofile,
|
||||||
|
#idle_inhibitor { font-size: 18px; }
|
||||||
|
|
||||||
#custom-notification.notification { color: @accent; }
|
#custom-notification.notification { color: @accent; }
|
||||||
#custom-notification.dnd-none,
|
#custom-notification.dnd-none,
|
||||||
|
|||||||
@@ -87,7 +87,7 @@
|
|||||||
"on-click": "nomarchy-nightlight toggle"
|
"on-click": "nomarchy-nightlight toggle"
|
||||||
},
|
},
|
||||||
"hyprland/language": {
|
"hyprland/language": {
|
||||||
"format": " {short}",
|
"format": "<span size='13pt'></span> {short}",
|
||||||
"tooltip": false
|
"tooltip": false
|
||||||
},
|
},
|
||||||
"custom/vpn": {
|
"custom/vpn": {
|
||||||
@@ -98,10 +98,10 @@
|
|||||||
},
|
},
|
||||||
"pulseaudio": {
|
"pulseaudio": {
|
||||||
"scroll-step": 5,
|
"scroll-step": 5,
|
||||||
"format": "{icon} {volume}%",
|
"format": "<span size='13pt'>{icon}</span> {volume}%",
|
||||||
"format-bluetooth": "{icon} {volume}%",
|
"format-bluetooth": "<span size='13pt'>{icon}</span> {volume}%",
|
||||||
"format-bluetooth-muted": " {icon}",
|
"format-bluetooth-muted": " {icon}",
|
||||||
"format-muted": " muted",
|
"format-muted": "<span size='13pt'></span> muted",
|
||||||
"format-icons": {
|
"format-icons": {
|
||||||
"headphone": "",
|
"headphone": "",
|
||||||
"hands-free": "",
|
"hands-free": "",
|
||||||
@@ -124,9 +124,9 @@
|
|||||||
"warning": 25,
|
"warning": 25,
|
||||||
"critical": 10
|
"critical": 10
|
||||||
},
|
},
|
||||||
"format": "{icon} {capacity}%",
|
"format": "<span size='13pt'>{icon}</span> {capacity}%",
|
||||||
"format-charging": " {capacity}%",
|
"format-charging": "<span size='13pt'></span> {capacity}%",
|
||||||
"format-plugged": " {capacity}%",
|
"format-plugged": "<span size='13pt'></span> {capacity}%",
|
||||||
"format-icons": [
|
"format-icons": [
|
||||||
"",
|
"",
|
||||||
"",
|
"",
|
||||||
|
|||||||
@@ -72,10 +72,13 @@ window#waybar {
|
|||||||
#battery,
|
#battery,
|
||||||
#custom-vpn { margin-left: 6px; }
|
#custom-vpn { margin-left: 6px; }
|
||||||
|
|
||||||
/* ── Menu launcher — the one branded accent glyph ────────────────── */
|
/* ── Menu launcher — the branded Nomarchy mark ───────────────────────
|
||||||
|
The mark lives at U+F000 in the dedicated "Nomarchy" font; pin the
|
||||||
|
family or the Nerd Font's glass glyph at the same codepoint wins. */
|
||||||
#custom-nomarchy {
|
#custom-nomarchy {
|
||||||
color: @accent;
|
color: @accent;
|
||||||
font-size: 15px;
|
font-family: Nomarchy;
|
||||||
|
font-size: 16px;
|
||||||
padding: 0 14px;
|
padding: 0 14px;
|
||||||
}
|
}
|
||||||
#custom-nomarchy:hover {
|
#custom-nomarchy:hover {
|
||||||
@@ -126,8 +129,19 @@ window#waybar {
|
|||||||
|
|
||||||
#custom-updates.available { color: @accent; }
|
#custom-updates.available { color: @accent; }
|
||||||
|
|
||||||
/* Power-profile glyph renders small in its em box — size it up. */
|
/* Icon-only status modules carry no text, so they don't get the 13pt
|
||||||
#custom-powerprofile { font-size: 16px; }
|
Pango icon span the icon+text modules (volume/battery/language) use —
|
||||||
|
bump their font-size to match, or these glyphs read smaller than their
|
||||||
|
neighbours. */
|
||||||
|
#custom-recording,
|
||||||
|
#custom-nightlight,
|
||||||
|
#custom-updates,
|
||||||
|
#custom-vpn,
|
||||||
|
#custom-doctor,
|
||||||
|
#custom-notification { font-size: 17px; }
|
||||||
|
/* Speedometer + caffeine cup render small in their em box — a touch more. */
|
||||||
|
#custom-powerprofile,
|
||||||
|
#idle_inhibitor { font-size: 18px; }
|
||||||
|
|
||||||
#pulseaudio.muted { color: @muted; }
|
#pulseaudio.muted { color: @muted; }
|
||||||
|
|
||||||
|
|||||||
@@ -74,7 +74,7 @@
|
|||||||
"on-click": "nomarchy-nightlight toggle"
|
"on-click": "nomarchy-nightlight toggle"
|
||||||
},
|
},
|
||||||
"hyprland/language": {
|
"hyprland/language": {
|
||||||
"format": " {short}",
|
"format": "<span size='13pt'></span> {short}",
|
||||||
"tooltip": false
|
"tooltip": false
|
||||||
},
|
},
|
||||||
"custom/updates": {
|
"custom/updates": {
|
||||||
@@ -86,10 +86,10 @@
|
|||||||
},
|
},
|
||||||
"pulseaudio": {
|
"pulseaudio": {
|
||||||
"scroll-step": 5,
|
"scroll-step": 5,
|
||||||
"format": "{icon} {volume}%",
|
"format": "<span size='13pt'>{icon}</span> {volume}%",
|
||||||
"format-bluetooth": "{icon} {volume}%",
|
"format-bluetooth": "<span size='13pt'>{icon}</span> {volume}%",
|
||||||
"format-bluetooth-muted": " {icon}",
|
"format-bluetooth-muted": " {icon}",
|
||||||
"format-muted": " muted",
|
"format-muted": "<span size='13pt'></span> muted",
|
||||||
"format-icons": {
|
"format-icons": {
|
||||||
"headphone": "",
|
"headphone": "",
|
||||||
"hands-free": "",
|
"hands-free": "",
|
||||||
@@ -118,9 +118,9 @@
|
|||||||
"warning": 25,
|
"warning": 25,
|
||||||
"critical": 10
|
"critical": 10
|
||||||
},
|
},
|
||||||
"format": "{icon} {capacity}%",
|
"format": "<span size='13pt'>{icon}</span> {capacity}%",
|
||||||
"format-charging": " {capacity}%",
|
"format-charging": "<span size='13pt'></span> {capacity}%",
|
||||||
"format-plugged": " {capacity}%",
|
"format-plugged": "<span size='13pt'></span> {capacity}%",
|
||||||
"format-icons": [
|
"format-icons": [
|
||||||
"",
|
"",
|
||||||
"",
|
"",
|
||||||
|
|||||||
@@ -37,10 +37,10 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
"pulseaudio": {
|
"pulseaudio": {
|
||||||
"format": "{icon} {volume}%",
|
"format": "<span size='13pt'>{icon}</span> {volume}%",
|
||||||
"format-bluetooth": "{icon} {volume}%",
|
"format-bluetooth": "<span size='13pt'>{icon} </span> {volume}%",
|
||||||
"format-bluetooth-muted": " muted",
|
"format-bluetooth-muted": " muted",
|
||||||
"format-muted": " muted",
|
"format-muted": "<span size='13pt'></span> muted",
|
||||||
"format-icons": {
|
"format-icons": {
|
||||||
"headphone": "",
|
"headphone": "",
|
||||||
"hands-free": "",
|
"hands-free": "",
|
||||||
@@ -58,9 +58,9 @@
|
|||||||
"interval": 60,
|
"interval": 60,
|
||||||
"states": { "warning": 30, "critical": 15 },
|
"states": { "warning": 30, "critical": 15 },
|
||||||
"max-length": 10,
|
"max-length": 10,
|
||||||
"format": "{icon} {capacity}%",
|
"format": "<span size='13pt'>{icon}</span> {capacity}%",
|
||||||
"format-charging": " {capacity}%",
|
"format-charging": "<span size='13pt'></span> {capacity}%",
|
||||||
"format-plugged": " {capacity}%",
|
"format-plugged": "<span size='13pt'></span> {capacity}%",
|
||||||
"format-full": " 100%",
|
"format-full": " 100%",
|
||||||
"format-icons": ["", "", "", "", ""],
|
"format-icons": ["", "", "", "", ""],
|
||||||
"on-click": "nomarchy-menu power",
|
"on-click": "nomarchy-menu power",
|
||||||
@@ -110,7 +110,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
"hyprland/language": {
|
"hyprland/language": {
|
||||||
"format": " {short}",
|
"format": "<span size='13pt'></span> {short}",
|
||||||
"tooltip": false
|
"tooltip": false
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -38,10 +38,10 @@
|
|||||||
|
|
||||||
"pulseaudio": {
|
"pulseaudio": {
|
||||||
"scroll-step": 5,
|
"scroll-step": 5,
|
||||||
"format": "{icon} {volume}%",
|
"format": "<span size='13pt'>{icon}</span> {volume}%",
|
||||||
"format-bluetooth": "{icon} {volume}%",
|
"format-bluetooth": "<span size='13pt'>{icon}</span> {volume}%",
|
||||||
"format-bluetooth-muted": " {icon}",
|
"format-bluetooth-muted": " {icon}",
|
||||||
"format-muted": " muted",
|
"format-muted": "<span size='13pt'></span> muted",
|
||||||
"format-icons": {
|
"format-icons": {
|
||||||
"headphone": "",
|
"headphone": "",
|
||||||
"hands-free": "",
|
"hands-free": "",
|
||||||
@@ -58,9 +58,9 @@
|
|||||||
"battery": {
|
"battery": {
|
||||||
"interval": 30,
|
"interval": 30,
|
||||||
"states": { "warning": 25, "critical": 10 },
|
"states": { "warning": 25, "critical": 10 },
|
||||||
"format": "{icon} {capacity}%",
|
"format": "<span size='13pt'>{icon}</span> {capacity}%",
|
||||||
"format-charging": " {capacity}%",
|
"format-charging": "<span size='13pt'></span> {capacity}%",
|
||||||
"format-plugged": " {capacity}%",
|
"format-plugged": "<span size='13pt'></span> {capacity}%",
|
||||||
"format-icons": ["", "", "", "", ""],
|
"format-icons": ["", "", "", "", ""],
|
||||||
"on-click": "nomarchy-menu power",
|
"on-click": "nomarchy-menu power",
|
||||||
"tooltip-format": "Battery status"
|
"tooltip-format": "Battery status"
|
||||||
@@ -109,7 +109,7 @@
|
|||||||
},
|
},
|
||||||
|
|
||||||
"hyprland/language": {
|
"hyprland/language": {
|
||||||
"format": " {short}",
|
"format": "<span size='13pt'></span> {short}",
|
||||||
"tooltip": false
|
"tooltip": false
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user