2023-12-04 10:02:23 +00:00
---
obj: application
arch-wiki: https://wiki.archlinux.org/title/rofi
website: https://davatorium.github.io/rofi/
repo: https://github.com/davatorium/rofi
---
# Rofi
2024-01-10 08:02:19 +00:00
Rofi is a window switcher, run dialog, ssh-launcher and dmenu replacement that started as a clone of simpleswitcher, written by Sean Pringle and later expanded by Dave Davenport.
## Configuration
There are two methods of setting configuration options:
2024-01-17 08:44:04 +00:00
- Local configuration. Normally, depending on XDG, in `~/.config/rofi/config.rasi` .
2024-01-10 08:02:19 +00:00
- Command line options:
```shell
rofi -combi-modi window,drun,ssh -theme solarized -font "hack 10" -show combi
```
can be expressed in a configuration file like this:
```
configuration {
modi: "window,drun,ssh,combi";
font: "hack 10";
combi-modi: "window,drun,ssh";
}
@theme "solarized"
```
2024-01-17 08:44:04 +00:00
To get a full list of options for `config.rasi` file run `rofi -dump-config` or `rofi -h` . You can write the output of the command directly to your configuration file while running `rofi -dump-config > ~/.config/rofi/config.rasi` .
2024-01-10 08:02:19 +00:00
## Themes
The easiest way to get started theming rofi is by modifying your existing theme.
Themes can be modified/tweaked by adding theming elements to the end of the
2024-01-17 08:44:04 +00:00
config file. The default location of this file is `~/.config/rofi/config.rasi` , if the file does not exists, you can create it.
2024-01-10 08:02:19 +00:00
A basic config:
```
configuration {
modes: [ combi ];
combi-modes: [ window, drun, run ];
}
@theme "gruvbox-light"
/* Insert theme modifications after this */
```
2024-01-17 08:44:04 +00:00
For example if we want to change the `Type to filter` text in the entry box we append the following:
2024-01-10 08:02:19 +00:00
```css
entry {
placeholder: "Type here";
}
```
2024-01-17 08:44:04 +00:00
In the above section, `entry` indicates the widget, `placeholder` is the property we want to modify and we set it to the string `"Type here"` .