feat(rofi): real icons, zebra rows, content-fit menus across all themes
Reworked the menu look, palette-driven so it lands on every theme:
- Real Papirus icons in place of Nerd Font glyphs: a row() helper emits
rofi's per-row icon protocol, and the five static menus (root, Tools,
System, Power, Capture) map each entry to a freedesktop icon name
(verified present in Papirus). Entry text is now clean ("Apps"), the
case-matching is unchanged.
- Larger icons via a new t.ui.iconSize knob (36px, generated theme); the
summer whole-swaps keep their 40px identity.
- Rounded, roomy rows with subtle zebra striping: alternate rows lift to
@surface (a faint bg0 wash on the summer cream/slate windows), the
selected row to @accent — using rofi's normal/alternate/selected row
parities.
- Content-fit windows: fixed-num-lines=false so a 6-entry menu stops
reserving 8 rows of empty space (the launcher still fills + scrolls).
Dropped the fixed height:50% from the summer .rasi so they size to
content too — which also unhid their clipped Power/Keybindings rows.
- Title-cased the menu prompts.
Verified by building the HM config and rendering the generated theme plus
both summer whole-swaps headlessly (sway + grim): icons resolve, zebra
shows, every menu hugs its rows.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
163
config.rasi
Normal file
163
config.rasi
Normal file
@@ -0,0 +1,163 @@
|
||||
/**
|
||||
* Rofi Everforest Theme
|
||||
* Based on wofi everforest config
|
||||
*/
|
||||
|
||||
* {
|
||||
/* Everforest color definitions */
|
||||
bg-dim: #232a2e;
|
||||
bg0: #2d353b;
|
||||
bg1: #343f44;
|
||||
bg2: #3d484d;
|
||||
bg3: #475258;
|
||||
bg4: #4f585e;
|
||||
bg5: #56635f;
|
||||
bg-visual: #543a48;
|
||||
bg-red: #514045;
|
||||
bg-green: #425047;
|
||||
bg-blue: #3a515d;
|
||||
bg-yellow: #4d4c43;
|
||||
fg: #d3c6aa;
|
||||
red: #e67e80;
|
||||
orange: #e69875;
|
||||
yellow: #dbbc7f;
|
||||
green: #a7c080;
|
||||
aqua: #83c092;
|
||||
blue: #7fbbb3;
|
||||
purple: #d699b6;
|
||||
grey0: #7a8478;
|
||||
grey1: #859289;
|
||||
grey2: #9da9a0;
|
||||
|
||||
/* Font settings */
|
||||
font: "Iosevka Nerd Font 17";
|
||||
|
||||
/* General styling */
|
||||
background-color: transparent;
|
||||
text-color: @fg;
|
||||
}
|
||||
|
||||
configuration {
|
||||
/* Basic settings */
|
||||
drun-display-format: "{name}";
|
||||
case-sensitive: false;
|
||||
location: 0;
|
||||
disable-history: false;
|
||||
hide-scrollbar: true;
|
||||
display-drun: "Search";
|
||||
|
||||
/* Image settings */
|
||||
drun-icon-theme: "Papirus-Dark";
|
||||
show-icons: true;
|
||||
icon-size: 40;
|
||||
}
|
||||
|
||||
window {
|
||||
/* Window styling based on wofi config */
|
||||
transparency: "real";
|
||||
background-color: @fg;
|
||||
text-color: @bg0;
|
||||
border-bottom: 5px;
|
||||
border-color: #7d6a40;
|
||||
border-radius: 15px;
|
||||
width: 40%;
|
||||
height: 50%;
|
||||
location: center;
|
||||
anchor: center;
|
||||
x-offset: 0;
|
||||
y-offset: 0;
|
||||
}
|
||||
|
||||
mainbox {
|
||||
background-color: transparent;
|
||||
children: [ inputbar, listview ];
|
||||
spacing: 0px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
inputbar {
|
||||
children: [ prompt, entry ];
|
||||
background-color: @green;
|
||||
text-color: @bg0;
|
||||
expand: false;
|
||||
border-bottom: 5px;
|
||||
border-color: #556a35;
|
||||
border-radius: 10px;
|
||||
margin: 15px;
|
||||
padding: 10px;
|
||||
spacing: 15px;
|
||||
}
|
||||
|
||||
prompt {
|
||||
enabled: true;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
|
||||
entry {
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
cursor: text;
|
||||
placeholder: "Type to search...";
|
||||
placeholder-color: @bg0;
|
||||
}
|
||||
|
||||
listview {
|
||||
background-color: transparent;
|
||||
columns: 1;
|
||||
lines: 8;
|
||||
spacing: 0px;
|
||||
cycle: true;
|
||||
dynamic: true;
|
||||
layout: vertical;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
element {
|
||||
background-color: transparent;
|
||||
text-color: @bg0;
|
||||
orientation: horizontal;
|
||||
border-radius: 10px;
|
||||
padding: 10px;
|
||||
spacing: 15px;
|
||||
}
|
||||
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
size: 40px;
|
||||
cursor: inherit;
|
||||
}
|
||||
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
highlight: bold;
|
||||
cursor: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
}
|
||||
|
||||
element selected {
|
||||
background-color: @bg0;
|
||||
text-color: @fg;
|
||||
border-bottom: 5px;
|
||||
border-color: #161a1d;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
element-text selected {
|
||||
text-color: @fg;
|
||||
}
|
||||
|
||||
element-icon selected {
|
||||
text-color: @fg;
|
||||
}
|
||||
|
||||
scrollbar {
|
||||
width: 0px;
|
||||
background-color: transparent;
|
||||
handle-width: 0px;
|
||||
handle-color: transparent;
|
||||
border: 0px;
|
||||
}
|
||||
Reference in New Issue
Block a user