Files
dotfiles/config/rofi/config.rasi
T
2026-07-03 10:45:31 +02:00

123 lines
3.6 KiB
Plaintext

* {
/* -- Palette, matches colors{} in awesome rc.lua -- */
bg0: #111111; /* colors.background */
bg1: #1a1a1a; /* colors.background_alt */
fg0: #dcd7ba; /* colors.foreground */
fg-selected: #ffffff; /* colors.white */
accent: #6a9589; /* colors.accent */
accent-alt: #727169; /* colors.accent_alt */
red: #e82424; /* colors.red */
disabled: #6a9589; /* colors.disabled */
font: "JetBrainsMono Nerd Font 14";
background-color: transparent;
text-color: @fg0;
}
window {
transparency: "real";
/* Anchor top-center, right below the wibar. */
location: north;
anchor: north;
y-offset: 48px;
width: 32em;
height: 26em; /* fixed — box size no longer changes with result count */
background-color: @bg0;
border: 3px;
border-color: @accent;
border-radius: -1px; /* matches gears.shape.rounded_rect radius in rc.lua */
padding: 14px;
}
mainbox {
children: [ inputbar, message, listview, mode-switcher ];
spacing: 10px;
background-color: transparent;
}
/* -- Search field -- */
inputbar {
children: [ prompt, entry ];
spacing: 10px;
background-color: @bg1;
border-radius: 10px;
padding: 10px 14px;
}
prompt {
text-color: @accent-alt;
}
entry {
placeholder: "Search";
placeholder-color: @disabled;
text-color: @fg0;
cursor: text;
}
/* -- List/grid toggle icons, top-right (matches screenshot) -- */
mode-switcher {
enabled: false; /* flip to true if you use rofi's built-in mode tabs */
}
/* -- Results -- */
listview {
lines: 8;
columns: 1;
spacing: 6px;
scrollbar: false;
background-color: transparent;
fixed-height: true; /* box height stays locked, doesn't shrink/grow with result count */
dynamic: false; /* don't resize dynamically as you type either */
}
/*
* Rofi tracks row state as a combination of position (normal/alternate,
* i.e. even/odd rows for banding) and status (normal/urgent/active/selected).
* Each combination needs its own selector or a competing @theme import
* (if you have one elsewhere in your rofi config) can still win on states
* this file doesn't explicitly cover. Pinning all of them here.
*/
element {
padding: 10px 12px;
border-radius: 10px;
orientation: horizontal;
}
element normal.normal,
element alternate.normal {
background-color: @bg1;
text-color: @fg0;
}
element normal.urgent,
element alternate.urgent {
background-color: @bg1;
text-color: @red;
}
element normal.active,
element alternate.active {
background-color: @bg1;
text-color: @accent-alt;
}
element selected.normal {
background-color: @accent-alt;
text-color: @fg-selected;
}
element selected.urgent {
background-color: @red;
text-color: @fg-selected;
}
element selected.active {
background-color: @accent-alt;
text-color: @bg0;
}
element-icon {
size: 24px;
padding: 0 12px 0 0;
vertical-align: 0.5;
background-color: transparent;
}
element-text {
vertical-align: 0.5;
text-color: inherit;
background-color: transparent;
}
message {
background-color: @bg1;
border-radius: 10px;
padding: 8px 12px;
}
textbox {
text-color: @fg0;
}