2024-02-26 20:57:35 +00:00
|
|
|
/* to show active config: `rofi -dump-config`
|
|
|
|
* to show keybindings: `rofi -show keys`
|
|
|
|
* to show theme config: `rofi -dump-theme`
|
|
|
|
* - for live theme switching: `rofi-theme-selector`
|
|
|
|
*/
|
|
|
|
|
|
|
|
configuration {
|
|
|
|
modes: "combi";
|
2024-03-01 16:40:09 +00:00
|
|
|
font: "mono 20";
|
2024-02-26 20:57:35 +00:00
|
|
|
show-icons: true;
|
|
|
|
kb-accept-entry: "Return,KP_Enter,XF86PowerOff";
|
|
|
|
kb-row-up: "Up,XF86AudioRaiseVolume";
|
|
|
|
kb-row-down: "Down,XF86AudioLowerVolume";
|
2024-03-02 00:32:43 +00:00
|
|
|
cache-dir: "~/.cache/rofi";
|
2024-03-01 16:40:09 +00:00
|
|
|
|
2024-03-01 17:10:45 +00:00
|
|
|
/* to position rofi to the top of the screen: */
|
|
|
|
/* location: 2; */
|
|
|
|
|
2024-03-01 16:40:09 +00:00
|
|
|
combi {
|
|
|
|
/* this is rendered in the filter box, here we disable it */
|
|
|
|
display-name: "";
|
|
|
|
}
|
|
|
|
/* combi-display-format: "{mode} {text}"; */
|
|
|
|
/* combi-display-format: "{text}"; */
|
|
|
|
combi-display-format: "{mode}{text}";
|
|
|
|
combi-modes: "filebrowser,drun";
|
|
|
|
|
|
|
|
drun {
|
|
|
|
display-name: " ";
|
|
|
|
}
|
|
|
|
drun-use-desktop-cache: true;
|
|
|
|
|
2024-02-26 20:57:35 +00:00
|
|
|
filebrowser {
|
2024-02-28 21:18:19 +00:00
|
|
|
/* directory: filebrowser starting directory. leave unset to start at the last directory. */
|
2024-03-02 00:32:43 +00:00
|
|
|
/* directory: "/home"; */
|
|
|
|
|
2024-02-26 20:57:35 +00:00
|
|
|
/* display-name: text to prepend in combi mode */
|
|
|
|
display-name: "/";
|
2024-02-27 21:20:12 +00:00
|
|
|
/* `command` is the prefix to prepend (along with a space) *before* passing it off to `run-command` */
|
2024-02-27 18:28:50 +00:00
|
|
|
command: "xdg-open";
|
2024-02-28 21:18:19 +00:00
|
|
|
directories-first: true;
|
|
|
|
/* sorting-method: name/atime/ctime/mtime */
|
|
|
|
sorting-method: "name";
|
|
|
|
show-hidden: false;
|
2024-02-26 20:57:35 +00:00
|
|
|
}
|
2024-03-01 16:40:09 +00:00
|
|
|
|
2024-02-26 20:57:35 +00:00
|
|
|
run {
|
|
|
|
display-name: "run ";
|
|
|
|
}
|
2024-02-27 21:20:12 +00:00
|
|
|
/* launch applications via my own launcher, which directs them through to xdg-desktop-portal */
|
|
|
|
run-command: "rofi-run-command '{app_id}.desktop' {cmd}";
|
2024-02-26 20:57:35 +00:00
|
|
|
}
|
|
|
|
|
2024-03-01 16:40:09 +00:00
|
|
|
/* theme */
|
|
|
|
* {
|
|
|
|
/* my own variables */
|
|
|
|
bg: #1d1721; /* slight purple */
|
|
|
|
fg0: #d8d8d8; /* inactive text (light grey) */
|
|
|
|
fg1: #ffffff; /* active text (white) */
|
|
|
|
accent0: #1f5e54; /* darker but saturated teal */
|
|
|
|
accent1: #418379; /* teal (matches nixos-bg) */
|
|
|
|
accent2: #5b938a; /* brighter but muted teal */
|
|
|
|
|
|
|
|
/* map my variables to variables rofi uses internally */
|
|
|
|
background-color: var(accent0);
|
|
|
|
background: var(accent0);
|
|
|
|
/* foreground: non-alternating text, scrollbar, borders, separators */
|
|
|
|
foreground: var(fg0);
|
|
|
|
|
|
|
|
/* override derived styles */
|
|
|
|
alternate-active-background: var(accent0);
|
|
|
|
alternate-normal-background: var(accent0);
|
|
|
|
alternate-active-foreground: var(fg0);
|
|
|
|
alternate-normal-foreground: var(fg0);
|
|
|
|
border-color: var(accent0);
|
|
|
|
text-color: var(fg0);
|
|
|
|
selected-active-background: var(accent1);
|
|
|
|
selected-normal-background: var(accent1);
|
|
|
|
selected-active-foreground: var(fg1);
|
|
|
|
selected-normal-foreground: var(fg1);
|
|
|
|
separatorcolor: var(accent1);
|
|
|
|
}
|
|
|
|
entry {
|
|
|
|
placeholder: "";
|
|
|
|
text-color: var(fg1);
|
|
|
|
}
|
|
|
|
num-rows, num-filtered-rows {
|
|
|
|
text-color: var(fg0);
|
|
|
|
}
|
|
|
|
prompt, textbox-prompt-colon {
|
|
|
|
/* hide */
|
|
|
|
text-color: var(accent0);
|
|
|
|
}
|
|
|
|
scrollbar {
|
|
|
|
handle-color: var(accent2);
|
|
|
|
}
|
2024-03-01 17:10:45 +00:00
|
|
|
window {
|
|
|
|
/* rofi supports very complex calculations here */
|
|
|
|
/* one may even read environment variables (useful for knowing if screen is rotated?) */
|
|
|
|
/* `calc(... min 100%)` ensures it never overflows */
|
2024-03-03 04:46:12 +00:00
|
|
|
/* rofi is aware of the top bar (waybar) and any virtual keyboards,
|
2024-03-03 07:36:33 +00:00
|
|
|
* so e.g. height: 100% will occupy 100% of the height *not* allocated to bars/kbds.
|
|
|
|
* however with y-offset, it becomes possible to overflow */
|
2024-03-01 17:10:45 +00:00
|
|
|
|
|
|
|
width: calc(960 min 100%);
|
|
|
|
/* 520px @ font size 20 gives 13 rows + filter */
|
2024-03-03 07:36:33 +00:00
|
|
|
/* 482px @ font size 20 gives 12 rows + filter */
|
|
|
|
/* 446px @ font size 20 gives 11 rows + filter */
|
2024-03-09 23:34:43 +00:00
|
|
|
/* 90.5% @ font size 20, sway scale 2.0, moby in landscape mode: gives 7 rows + filter */
|
|
|
|
height: calc(446 min 90.5%);
|
2024-03-01 17:10:45 +00:00
|
|
|
|
|
|
|
/* anchor the *north* edge of the window at the *north* location of the screen */
|
|
|
|
anchor: north;
|
|
|
|
location: north;
|
2024-03-09 23:34:43 +00:00
|
|
|
/* 11.2% lines up nicely with Firefox */
|
2024-03-03 07:36:33 +00:00
|
|
|
y-offset: 11.2%;
|
2024-03-01 17:10:45 +00:00
|
|
|
}
|