2014-08-01 17:29:01 -04:00
|
|
|
# ROFI 1 rofi
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
## NAME
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-05-05 05:33:54 -04:00
|
|
|
**rofi** - A window switcher, run launcher, ssh dialog and dmenu replacement
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
## SYNOPSIS
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
**rofi**
|
|
|
|
[ -width *pct_scr* ]
|
|
|
|
[ -lines *lines* ]
|
|
|
|
[ -columns *columns* ]
|
|
|
|
[ -font *pangofont* ]
|
|
|
|
[ -fg *color* ]
|
2015-04-04 10:46:30 -04:00
|
|
|
[ -fg-urgent *color* ]
|
|
|
|
[ -fg-active *color* ]
|
2015-04-06 09:23:58 -04:00
|
|
|
[ -bg-urgent *color* ]
|
|
|
|
[ -bg-active *color* ]
|
2015-01-19 09:49:23 -05:00
|
|
|
[ -bg *color* ]
|
|
|
|
[ -bgalt *color* ]
|
|
|
|
[ -hlfg *color* ]
|
|
|
|
[ -hlbg *color* ]
|
2015-02-15 15:15:16 -05:00
|
|
|
[ -key-**mode** *combo* ]
|
2015-01-19 09:49:23 -05:00
|
|
|
[ -terminal *terminal* ]
|
|
|
|
[ -location *position* ]
|
|
|
|
[ -fixed-num-lines ]
|
|
|
|
[ -padding *padding* ]
|
|
|
|
[ -opacity *opacity%* ]
|
|
|
|
[ -display *display* ]
|
|
|
|
[ -bc *color* ]
|
|
|
|
[ -bw *width* ]
|
2015-05-24 01:48:04 -04:00
|
|
|
[ -dmenu [ -p *prompt* ] [ -sep *separator* ] [ -l *selected line* ] [ -mesg ] [ -filter ] [ -select ] ]
|
2015-01-19 09:49:23 -05:00
|
|
|
[ -ssh-client *client* ]
|
|
|
|
[ -ssh-command *command* ]
|
|
|
|
[ -disable-history ]
|
|
|
|
[ -levenshtein-sort ]
|
|
|
|
[ -case-sensitive ]
|
|
|
|
[ -show *mode* ]
|
2015-02-23 02:39:29 -05:00
|
|
|
[ -modi *mode1,mode2* ]
|
2015-01-19 09:49:23 -05:00
|
|
|
[ -eh *element height* ]
|
|
|
|
[ -lazy-filter-limit *limit* ]
|
|
|
|
[ -e *message*]
|
2015-04-04 10:46:30 -04:00
|
|
|
[ -a *row* ]
|
|
|
|
[ -u *row* ]
|
2015-01-31 12:23:17 -05:00
|
|
|
[ -pid *path* ]
|
2015-01-19 09:49:23 -05:00
|
|
|
[ -now ]
|
|
|
|
[ -rnow ]
|
|
|
|
[ -snow ]
|
|
|
|
[ -version ]
|
|
|
|
[ -help]
|
2015-04-25 11:40:01 -04:00
|
|
|
[ -dump-Xresources ]
|
2015-02-24 11:34:25 -05:00
|
|
|
[ -auto-select ]
|
2015-03-29 06:27:00 -04:00
|
|
|
[ -parse-hosts ]
|
2015-04-01 08:49:27 -04:00
|
|
|
[ -combi-modi *mode1,mode2* ]
|
2015-04-05 16:29:26 -04:00
|
|
|
[ -quiet ]
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
## DESCRIPTION
|
|
|
|
|
2015-04-22 15:03:02 -04:00
|
|
|
**rofi** is an X11 popup window switcher, run dialog, dmenu replacement and more. It focuses on
|
2015-01-19 09:49:23 -05:00
|
|
|
being fast to use and have minimal distraction. It supports keyboard and mouse navigation, type to
|
|
|
|
filter, tokenized search and more.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
## USAGE
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-04-05 16:00:27 -04:00
|
|
|
**rofi** can be used in three ways, single-shot; executes once and directly exits when done, as a
|
|
|
|
daemon listening to specific key-combination or emulating dmenu.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-04-05 15:49:55 -04:00
|
|
|
### Single-shot mode
|
|
|
|
|
|
|
|
To launch **rofi** directly in a certain mode, specifying `rofi -show <mode>`.
|
|
|
|
To show the run dialog:
|
|
|
|
|
|
|
|
```
|
|
|
|
rofi -show run
|
|
|
|
```
|
|
|
|
|
2015-04-05 16:00:27 -04:00
|
|
|
### Daemon mode
|
2015-04-05 15:49:55 -04:00
|
|
|
|
|
|
|
To launch **rofi** in daemon mode don't specify a mode to show (`-show <mode>`), instead you can
|
|
|
|
bind keys to launch a certain mode. To have run mode open when pressing `F2` start **rofi** like:
|
|
|
|
|
|
|
|
```
|
|
|
|
rofi -key-run F2
|
|
|
|
```
|
|
|
|
Keybindings can also be specified in the `Xresources` file.
|
|
|
|
|
2015-04-05 16:00:27 -04:00
|
|
|
### Emulating dmenu
|
|
|
|
|
|
|
|
**rofi** can emulate `dmenu` (a dynamic menu for X) when launched with the `-dmenu` flag.
|
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
The official website for `dmenu` can be found [here](http://tools.suckless.org/dmenu/).
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
## OPTIONS
|
|
|
|
|
2015-04-21 16:17:20 -04:00
|
|
|
There are currently three methods of setting configuration options:
|
|
|
|
|
|
|
|
* Compile time: edit config.c. This method is strongly discouraged.
|
|
|
|
* Xresources: A method of storing key values in the Xserver. See
|
|
|
|
[here](https://en.wikipedia.org/wiki/X_resources) for more information.
|
2015-04-25 11:40:01 -04:00
|
|
|
* Command-line options: Arguments passed to **rofi**.
|
2015-04-21 16:17:20 -04:00
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
The Xresources options and the command-line options are aliased. So to set option X you would set:
|
2015-04-21 16:17:20 -04:00
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
rofi.X: value
|
2015-04-21 16:17:20 -04:00
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
In the Xresources file, and to (override) this via the command-line you would pass the same key
|
2015-04-21 16:17:20 -04:00
|
|
|
prefixed with a '-':
|
|
|
|
|
|
|
|
rofi -X value
|
|
|
|
|
|
|
|
To get a list of available options, formatted as Xresources entries run:
|
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
rofi -dump-Xresources
|
2015-04-21 16:17:20 -04:00
|
|
|
|
|
|
|
The configuration system supports the following types:
|
|
|
|
|
|
|
|
* String
|
|
|
|
* Integer (signed and unsigned)
|
|
|
|
* Char
|
|
|
|
* Boolean
|
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
The boolean option has a non-default command-line syntax, to enable option X you do:
|
2015-04-21 16:17:20 -04:00
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
-X
|
2015-04-21 16:17:20 -04:00
|
|
|
|
|
|
|
to disable it:
|
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
-no-X
|
2015-04-21 16:17:20 -04:00
|
|
|
|
|
|
|
Below is a list of the most important options:
|
|
|
|
|
2015-05-24 01:48:04 -04:00
|
|
|
### General
|
2015-04-21 16:17:20 -04:00
|
|
|
|
2015-02-16 03:07:05 -05:00
|
|
|
`-key-{mode}` **KEY**
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-05-24 01:48:04 -04:00
|
|
|
Set the key combination to display a {mode} in daemon mode.
|
2015-01-19 09:49:23 -05:00
|
|
|
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-02-15 15:15:16 -05:00
|
|
|
rofi -key-run F12
|
|
|
|
rofi -key-ssh control+shift+s
|
|
|
|
rofi -key-window mod1+Tab
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-10-20 14:29:26 -04:00
|
|
|
`-dmenu`
|
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
Run **rofi** in dmenu mode. Allowing it to be used for user interaction in scripts.
|
2014-10-20 14:29:26 -04:00
|
|
|
|
2015-04-07 21:50:57 -04:00
|
|
|
In `dmenu` mode, **rofi** will read input from STDIN, and will output to STDOUT by default.
|
|
|
|
|
|
|
|
Example to let the user choose between three pre-defined options:
|
|
|
|
|
|
|
|
echo -e "Option #1\nOption #2\nOption #3" | rofi -dmenu
|
|
|
|
|
|
|
|
Or get the options from a script:
|
|
|
|
|
|
|
|
~/my_script.sh | rofi -dmenu
|
|
|
|
|
2014-10-20 14:29:26 -04:00
|
|
|
Pressing `shift-enter` will open the selected entries and move to the next entry.
|
|
|
|
|
|
|
|
`-show` *mode*
|
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
Open **rofi** in a certain mode.
|
2014-10-20 14:29:26 -04:00
|
|
|
|
|
|
|
For example to show the run-dialog:
|
|
|
|
|
|
|
|
rofi -show run
|
|
|
|
|
|
|
|
This function deprecates -rnow,-snow and -now
|
|
|
|
|
|
|
|
`-switchers` *mode1,mode1*
|
2015-02-23 02:39:29 -05:00
|
|
|
`-modi` *mode1,mode1*
|
2014-10-20 14:29:26 -04:00
|
|
|
|
|
|
|
Give a comma separated list of modes to enable, in what order.
|
|
|
|
|
2015-02-23 02:39:29 -05:00
|
|
|
For example to only show the run and ssh launcher (in that order):
|
2014-10-20 14:29:26 -04:00
|
|
|
|
2015-02-23 02:39:29 -05:00
|
|
|
rofi -modi "run,ssh" -show run
|
2014-10-20 14:29:26 -04:00
|
|
|
|
|
|
|
Custom modes can be added using the internal 'script' mode. Each mode has two parameters:
|
|
|
|
|
|
|
|
<name>:<script>
|
|
|
|
|
|
|
|
So to have a mode 'Workspaces' using the `i3_switch_workspace.sh` script type:
|
|
|
|
|
2015-02-23 02:39:29 -05:00
|
|
|
rofi -modi "window,run,ssh,Workspaces:i3_switch_workspaces.sh" -show Workspaces
|
2014-10-20 14:29:26 -04:00
|
|
|
|
2015-01-12 08:13:46 -05:00
|
|
|
`-case-sensitive`
|
|
|
|
|
|
|
|
Start in case sensitive mode.
|
2014-10-20 14:29:26 -04:00
|
|
|
|
2015-04-05 16:29:26 -04:00
|
|
|
`-quiet`
|
|
|
|
|
|
|
|
Do not print any message when starting in daemon mode.
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
|
|
|
|
### Theming
|
2014-10-20 14:29:26 -04:00
|
|
|
|
2014-05-22 04:37:25 -04:00
|
|
|
`-bg`
|
|
|
|
|
2015-04-06 09:23:58 -04:00
|
|
|
`-bg-active`
|
|
|
|
|
|
|
|
`-bg-urgent`
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Set the background text color (X11 named color or hex #rrggbb) for the menu.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-12 13:14:46 -05:00
|
|
|
rofi -bg "#222222"
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *#f2f1f0*
|
2015-01-12 13:14:46 -05:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
`-bgalt`
|
|
|
|
|
|
|
|
Set the background text color for alternating rows (X11 named color or hex #rrggbb) for the menu.
|
2015-01-12 13:14:46 -05:00
|
|
|
|
|
|
|
rofi -bgalt "#222222"
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *#f2f1f0*
|
|
|
|
|
2014-05-22 04:37:25 -04:00
|
|
|
`-bc`
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Set the border color (X11 named color or hex #rrggbb) for the menu.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
rofi -bc black
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *black*
|
2014-05-22 04:37:25 -04:00
|
|
|
|
|
|
|
`-bw`
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Set the border width in pixels.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
rofi -bw 1
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *1*
|
2014-05-22 04:37:25 -04:00
|
|
|
|
|
|
|
`-fg`
|
|
|
|
|
2015-04-04 10:46:30 -04:00
|
|
|
`-fg-urgent`
|
|
|
|
|
|
|
|
`-fg-active`
|
|
|
|
|
|
|
|
Set the foreground text color (X11 named color or hex #rrggbb) for the menu.
|
|
|
|
|
2015-04-06 09:23:58 -04:00
|
|
|
rofi -fg "#cccccc"
|
|
|
|
|
|
|
|
Default: *#222222*
|
2015-04-04 10:46:30 -04:00
|
|
|
|
|
|
|
|
2014-05-22 04:37:25 -04:00
|
|
|
`-hlbg`
|
|
|
|
|
2015-04-06 09:23:58 -04:00
|
|
|
`-hlbg-active`
|
|
|
|
|
|
|
|
`-hlbg-urgent`
|
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
Set the background text color (X11 named color or hex #rrggbb) for the highlighted item in the
|
2015-01-19 09:49:23 -05:00
|
|
|
menu.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-02-04 17:28:14 -05:00
|
|
|
rofi -hlbg "#005577"
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *#005577*
|
2014-05-22 04:37:25 -04:00
|
|
|
|
|
|
|
`-hlfg`
|
|
|
|
|
2015-04-06 09:23:58 -04:00
|
|
|
`-hlfg-active`
|
|
|
|
|
|
|
|
`-hlfg-urgent`
|
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
Set the foreground text color (X11 named color or hex #rrggbb) for the highlighted item in the
|
2015-01-19 09:49:23 -05:00
|
|
|
menu.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-02-04 17:28:14 -05:00
|
|
|
rofi -hlfg "#ffffff"
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *#FFFFFF*
|
|
|
|
|
|
|
|
`-font`
|
|
|
|
|
|
|
|
Pango font name for use by the menu.
|
|
|
|
|
|
|
|
|
|
|
|
rofi -font monospace\ 14
|
|
|
|
|
|
|
|
Default: *mono 12*
|
2014-05-22 04:37:25 -04:00
|
|
|
|
|
|
|
`-opacity`
|
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
Set the window opacity (0-100).
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
rofi -opacity "75"
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *100*
|
|
|
|
|
|
|
|
`-eh` *element height*
|
|
|
|
|
|
|
|
The height of a field in lines. e.g.
|
|
|
|
|
|
|
|
echo -e "a\n3|b\n4|c\n5" | rofi -sep '|' -eh 2 -dmenu
|
|
|
|
|
|
|
|
Default: *1*
|
|
|
|
|
2015-04-12 03:23:27 -04:00
|
|
|
The following options are further explained in the theming section:
|
|
|
|
|
|
|
|
`-color-enabled`
|
|
|
|
|
|
|
|
Enable the exteneded coloring options.
|
|
|
|
|
|
|
|
`-color-window` *background* *border color*
|
|
|
|
|
|
|
|
Set window background and border color.
|
|
|
|
|
|
|
|
`-color-normal` *background,foreground,background alt, highlight background, highlight foreground*
|
|
|
|
`-color-urgent` *background,foreground,background alt, highlight background, highlight foreground*
|
|
|
|
`-color-active` *background,foreground,background alt, highlight background, highlight foreground*
|
|
|
|
|
|
|
|
Specify the colors used in a row per state (normal, active, urgent).
|
|
|
|
|
2014-10-20 14:29:26 -04:00
|
|
|
### Layout
|
|
|
|
|
2014-05-22 04:37:25 -04:00
|
|
|
`-lines`
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Maximum number of lines the menu may show before scrolling.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
rofi -lines 25
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *15*
|
|
|
|
|
2014-05-22 04:37:25 -04:00
|
|
|
`-columns`
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
The number of columns the menu may show before scrolling.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
rofi -columns 2
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *1*
|
|
|
|
|
2014-08-14 15:16:42 -04:00
|
|
|
`-width` [value]
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Set the width of the menu as a percentage of the screen width.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
rofi -width 60
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-14 15:16:42 -04:00
|
|
|
If value is larger then 100, the size is set in pixels. e.g. to span a full hd monitor:
|
|
|
|
|
2015-02-04 08:02:33 -05:00
|
|
|
rofi -width 1920
|
2014-08-14 15:16:42 -04:00
|
|
|
|
|
|
|
If the value is negative, it tries to estimates a character width. To show 30 characters on a row:
|
|
|
|
|
2014-10-20 14:29:26 -04:00
|
|
|
rofi -width -30
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-10-20 14:29:26 -04:00
|
|
|
Character width is a rough estimation, and might not be correct, but should work for most monospaced fonts.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *50*
|
|
|
|
|
2014-07-24 14:38:21 -04:00
|
|
|
`-location`
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
Specify where the window should be located. The numbers map to the following location on the
|
|
|
|
monitor:
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
1 2 3
|
|
|
|
8 0 4
|
|
|
|
7 6 5
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *0*
|
|
|
|
|
2014-05-22 04:37:25 -04:00
|
|
|
`-fixed-num-lines`
|
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
Keep a fixed number of visible lines (See the `-lines` option.)
|
2014-05-22 04:37:25 -04:00
|
|
|
|
|
|
|
`-padding`
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Define the inner margin of the window.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *5*
|
|
|
|
|
2014-11-09 07:10:24 -05:00
|
|
|
`-sidebar-mode`
|
|
|
|
|
|
|
|
Go into side-bar mode, it will show list of modi at the bottom.
|
|
|
|
To show sidebar use:
|
|
|
|
|
2015-03-30 14:36:34 -04:00
|
|
|
rofi -show run -sidebar-mode -lines 0
|
2014-11-09 07:10:24 -05:00
|
|
|
|
2015-01-18 12:17:09 -05:00
|
|
|
`-lazy-filter-limit` *limit*
|
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
The number of entries required for **rofi** to go into lazy filter mode.
|
|
|
|
In lazy filter mode, it won't re-filter the list on each keypress, but only after **rofi** been
|
|
|
|
idle for 250ms. Experiments shows that the default (5000 lines) works well, set to 0 to always
|
|
|
|
enable.
|
2015-01-18 12:17:09 -05:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *5000*
|
|
|
|
|
2015-02-24 11:34:25 -05:00
|
|
|
`-auto-select`
|
|
|
|
|
|
|
|
When one entry is left, automatically select this.
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
### PATTERN setting
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-10-20 14:29:26 -04:00
|
|
|
`-terminal`
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Specify what terminal to start.
|
2014-08-01 17:29:01 -04:00
|
|
|
|
2014-10-20 14:29:26 -04:00
|
|
|
rofi -terminal xterm
|
2014-08-01 17:29:01 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Pattern: *{terminal}*
|
|
|
|
Default: *x-terminal-emulator*
|
2014-10-20 14:29:26 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
`-ssh-client` *client*
|
2014-10-20 14:29:26 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Override the used ssh client.
|
2014-05-22 15:56:57 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Pattern: *{ssh-client}*
|
|
|
|
Default: *ssh*
|
2014-05-22 04:37:25 -04:00
|
|
|
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
### SSH settings
|
2014-09-03 07:07:26 -04:00
|
|
|
|
|
|
|
`-ssh-command` *cmd*
|
|
|
|
|
|
|
|
Set the command to execute when starting a ssh session.
|
2015-01-19 09:49:23 -05:00
|
|
|
The pattern *{host}* is replaced by the selected ssh entry.
|
|
|
|
|
|
|
|
Default: *{terminal} -e {ssh-client} {host}*
|
2014-09-03 07:07:26 -04:00
|
|
|
|
2015-03-29 06:27:00 -04:00
|
|
|
`-parse-hosts`
|
|
|
|
|
|
|
|
Parse the `/etc/hosts` files for entries.
|
|
|
|
|
|
|
|
|
2014-10-20 14:29:26 -04:00
|
|
|
### Run settings
|
|
|
|
|
2014-09-03 07:07:26 -04:00
|
|
|
`-run-command` *cmd*
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Set the command (*{cmd}*) to execute when running an application.
|
2014-09-03 07:07:26 -04:00
|
|
|
See *PATTERN*.
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *{cmd}*
|
|
|
|
|
2014-09-03 07:07:26 -04:00
|
|
|
`-run-shell-command` *cmd*
|
|
|
|
|
|
|
|
Set the command to execute when running an application in a shell.
|
|
|
|
See *PATTERN*.
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *{terminal} -e {cmd}*
|
|
|
|
|
2015-01-05 15:53:50 -05:00
|
|
|
`-run-list-command` *cmd*
|
|
|
|
|
|
|
|
If set, use an external tool to generate list of executable commands. Uses 'run-command'
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *""*
|
|
|
|
|
2015-04-01 08:49:27 -04:00
|
|
|
### Combi settings
|
|
|
|
|
|
|
|
`-combi-modi` *mode1,mode2*
|
|
|
|
|
|
|
|
The modi to combine in the combi mode.
|
2015-05-24 01:48:04 -04:00
|
|
|
For syntax to see `-modi`.
|
2015-04-01 08:49:27 -04:00
|
|
|
To get one merge view, of window,run,ssh:
|
|
|
|
|
|
|
|
rofi -show combi -combi-mode "window,run,ssh"
|
|
|
|
|
2014-10-20 14:29:26 -04:00
|
|
|
### History and Sorting
|
2014-09-03 07:07:26 -04:00
|
|
|
|
2014-06-05 15:55:47 -04:00
|
|
|
`-disable-history`
|
2015-04-19 07:19:20 -04:00
|
|
|
`-no-disable-history` (re-enable history)
|
2014-06-05 15:55:47 -04:00
|
|
|
|
|
|
|
Disable history
|
|
|
|
|
2015-04-19 07:19:20 -04:00
|
|
|
`-levenshtein-sort` to enable
|
|
|
|
`-no-levenshtein-sort` to disable
|
2014-07-16 02:42:42 -04:00
|
|
|
|
|
|
|
When searching sort the result based on levenshtein distance.
|
|
|
|
|
2014-10-20 12:11:10 -04:00
|
|
|
### Dmenu specific
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2014-10-19 13:42:02 -04:00
|
|
|
`-sep` *separator*
|
|
|
|
|
2014-10-20 12:11:10 -04:00
|
|
|
Separator for dmenu. For example to show list a to e with '|' as separator:
|
|
|
|
|
|
|
|
echo "a|b|c|d|e" | rofi -sep '|' -dmenu
|
|
|
|
|
|
|
|
`-p` *prompt*
|
|
|
|
|
|
|
|
Specify the prompt to show in dmenu mode. E.g. select monkey a,b,c,d or e.
|
|
|
|
|
|
|
|
echo "a|b|c|d|e" | rofi -sep '|' -dmenu -p "monkey:"
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *dmenu*
|
2014-10-30 12:53:22 -04:00
|
|
|
|
2014-12-16 15:08:12 -05:00
|
|
|
`-l` *selected line*
|
|
|
|
|
|
|
|
Select a certain line.
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
Default: *0*
|
|
|
|
|
2015-03-11 13:05:39 -04:00
|
|
|
`-i`
|
|
|
|
|
|
|
|
Number mode, return the index of the selected row. (starting at 0)
|
|
|
|
|
2015-04-04 10:46:30 -04:00
|
|
|
`-a` *X*
|
|
|
|
|
|
|
|
Active row, mark row X as active. (starting at 0)
|
2015-04-05 05:53:08 -04:00
|
|
|
You can specify single element: -a 3
|
|
|
|
A range: -a 3-8
|
|
|
|
or a set of rows: -a 0,2
|
|
|
|
Or any combination: -a 0,2-3,9
|
2015-04-04 10:46:30 -04:00
|
|
|
|
|
|
|
`-u` *X*
|
|
|
|
|
|
|
|
Urgent row, mark row X as urgent. (starting at 0)
|
2015-04-05 05:53:08 -04:00
|
|
|
You can specify single element: -u 3
|
|
|
|
A range: -u 3-8
|
|
|
|
or a set of rows: -u 0,2
|
|
|
|
Or any combination: -u 0,2-3,9
|
2015-04-04 10:46:30 -04:00
|
|
|
|
2015-05-07 15:07:15 -04:00
|
|
|
`-only-match`
|
|
|
|
|
2015-05-24 01:48:04 -04:00
|
|
|
Only return a selected item, do not allow custom entry.
|
2015-05-07 15:07:15 -04:00
|
|
|
This mode always returns an entry, or returns directly when no entries given.
|
|
|
|
|
2015-05-10 06:08:08 -04:00
|
|
|
`-format` *format*
|
|
|
|
|
2015-05-11 17:20:34 -04:00
|
|
|
Allows the output of dmenu to be customized (N is total number of input entries):
|
2015-05-10 06:08:08 -04:00
|
|
|
|
|
|
|
* 's' selected string.
|
2015-05-11 17:20:34 -04:00
|
|
|
* 'i' index (0 - (N-1)).
|
|
|
|
* 'd' index (1 - N).
|
2015-05-13 12:35:55 -04:00
|
|
|
* 'q' quote string.
|
2015-05-16 07:58:09 -04:00
|
|
|
* 'f' filter string (user input).
|
|
|
|
* 'F' quoted filter string (user input).
|
2015-05-24 01:48:04 -04:00
|
|
|
|
2015-05-10 06:08:08 -04:00
|
|
|
Default: 's'
|
|
|
|
|
2015-05-17 08:49:56 -04:00
|
|
|
`-filter` *filter*
|
|
|
|
|
|
|
|
Preset user filter to *filter* in the entry box and pre-filter the list.
|
|
|
|
|
2015-05-24 01:48:04 -04:00
|
|
|
`-select` *string*
|
|
|
|
|
|
|
|
Select first line that matches the given string
|
|
|
|
|
|
|
|
`-mesg` *string*
|
2015-05-23 14:06:06 -04:00
|
|
|
|
|
|
|
Add a message line beneath filter. Supports pango markdown.
|
|
|
|
|
2014-10-20 12:11:10 -04:00
|
|
|
### Message dialog
|
|
|
|
|
|
|
|
`-e` *message*
|
|
|
|
|
|
|
|
Popup a message dialog (used internally for showing errors) with *message*.
|
|
|
|
Message can be multi-line.
|
2014-10-19 13:42:02 -04:00
|
|
|
|
2015-01-31 12:23:17 -05:00
|
|
|
### Other
|
|
|
|
|
|
|
|
'-pid' *path*
|
|
|
|
|
|
|
|
Make **rofi** create a pid file and check this on startup. Avoiding multiple copies running
|
2015-05-24 01:48:04 -04:00
|
|
|
simultaneous. This is useful when running **rofi** from a keybinding daemon.
|
2015-01-31 12:23:17 -05:00
|
|
|
|
2014-10-20 14:31:15 -04:00
|
|
|
### Debug
|
2014-10-20 14:29:26 -04:00
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
`-dump-Xresources`
|
2014-10-20 14:29:26 -04:00
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
Dump the current active configuration in Xresources format to the command-line.
|
2014-10-20 14:29:26 -04:00
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
## PATTERN
|
2014-09-03 07:07:26 -04:00
|
|
|
|
2015-05-05 05:33:54 -04:00
|
|
|
To launch commands (e.g. when using the ssh launcher) the user can enter the used command-line,
|
2014-09-03 07:07:26 -04:00
|
|
|
the following keys can be used that will be replaced at runtime:
|
|
|
|
|
|
|
|
* `{host}`: The host to connect to.
|
|
|
|
* `{terminal}`: The configured terminal (See -terminal-emulator)
|
|
|
|
* `{ssh-client}`: The configured ssh client (See -ssh-client)
|
|
|
|
* `{cmd}`: The command to execute.
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
## DMENU REPLACEMENT
|
2014-11-05 04:27:46 -05:00
|
|
|
|
|
|
|
If `argv[0]` (calling command) is dmenu, **rofi** will start in dmenu mode.
|
|
|
|
This way it can be used as a drop-in replacement for dmenu. just copy or symlink **rofi** to dmenu in `$PATH`.
|
|
|
|
|
|
|
|
|
|
|
|
ln -s /usr/bin/dmenu /usr/bin/rofi
|
|
|
|
|
2015-04-22 15:03:02 -04:00
|
|
|
## SIGNALS
|
2014-11-05 04:52:10 -05:00
|
|
|
|
|
|
|
`HUP`
|
|
|
|
|
2015-01-19 09:49:23 -05:00
|
|
|
If in daemon mode, reload the configuration from Xresources. (commandline arguments still
|
2015-04-25 11:40:01 -04:00
|
|
|
override Xresources).
|
2014-11-05 04:52:10 -05:00
|
|
|
|
2015-04-22 15:03:02 -04:00
|
|
|
## THEMING
|
2015-04-06 16:17:05 -04:00
|
|
|
|
2015-04-11 06:04:14 -04:00
|
|
|
With **rofi** 0.15.4 we have a new way of specifying colors, the old settings still apply (for now).
|
|
|
|
To enable the new setup, set `rofi.color-enabled` to true. The new setup allows you to specify
|
|
|
|
colors per state, similar to **i3**
|
2015-04-06 16:17:05 -04:00
|
|
|
Currently 3 states exists:
|
|
|
|
|
|
|
|
* **normal** Normal row.
|
2015-05-24 01:48:04 -04:00
|
|
|
* **urgent** Highlighted row (urgent)
|
2015-04-06 16:17:05 -04:00
|
|
|
* **active** Highlighted row (active)
|
|
|
|
|
|
|
|
For each state the following 5 colors must be set:
|
|
|
|
|
|
|
|
* **bg** Background color row
|
|
|
|
* **fg** Text color
|
|
|
|
* **bgalt** Background color alternating row
|
|
|
|
* **hlfg** Foreground color selected row
|
|
|
|
* **hlbg** Background color selected row
|
|
|
|
|
|
|
|
The window background and border color should be specified separate. The key `color-window` contains
|
|
|
|
a pair `background,border`.
|
|
|
|
An example for `Xresources` file:
|
|
|
|
|
|
|
|
```
|
2015-04-11 06:04:14 -04:00
|
|
|
! State: 'bg', 'fg', 'bgalt', 'hlbg', 'hlfg'
|
2015-04-06 16:17:05 -04:00
|
|
|
rofi.color-normal: #fdf6e3, #002b36, #eee8d5, #586e75, #eee8d5
|
|
|
|
rofi.color-urgent: #fdf6e3, #dc322f, #eee8d5, #dc322f, #fdf6e3
|
|
|
|
rofi.color-active: #fdf6e3, #268bd2, #eee8d5, #268bd2, #fdf6e3
|
2015-05-24 01:48:04 -04:00
|
|
|
|
2015-04-06 16:17:05 -04:00
|
|
|
! 'background', 'border'
|
2015-05-24 01:48:04 -04:00
|
|
|
rofi.color-window: #fdf6e3, #002b36
|
2015-04-06 16:17:05 -04:00
|
|
|
```
|
|
|
|
|
|
|
|
Same settings can also be specified on command-line:
|
|
|
|
|
|
|
|
```
|
|
|
|
rofi -color-normal "#fdf6e3,#002b36,#eee8d5,#586e75,#eee8d5"
|
|
|
|
```
|
2015-01-22 09:25:40 -05:00
|
|
|
|
2015-04-22 15:03:02 -04:00
|
|
|
## COLORS
|
2015-01-22 09:25:40 -05:00
|
|
|
|
|
|
|
Rofi has an experimental mode for a 'nicer' transparency. The idea is that you can make the
|
2015-01-27 04:02:12 -05:00
|
|
|
background of the window transparent but the text not. This way, in contrast to the `-opacity`
|
2015-01-22 09:25:40 -05:00
|
|
|
option, the text is still fully visible and readable.
|
|
|
|
To use this there are 2 requirements: 1. Your Xserver supports TrueColor, 2. You are running a
|
|
|
|
composite manager. If this is satisfied you can use the following format for colors:
|
|
|
|
|
|
|
|
argb:FF444444
|
|
|
|
|
|
|
|
The first two fields specify the alpha level. This determines how much the background shines through
|
|
|
|
the color (00 everything, FF nothing). E.g. 'argb:00FF0000' gives you a bright red color with the
|
|
|
|
background shining through. If you want a dark greenish transparent color use: 'argb:dd2c3311'. This
|
2015-01-27 04:02:12 -05:00
|
|
|
can be done for any color; it is therefore possible to have solid borders, the selected row solid,
|
2015-01-22 09:25:40 -05:00
|
|
|
and the others slightly transparent.
|
|
|
|
|
2015-04-22 15:03:02 -04:00
|
|
|
## KEYBINDINGS
|
2014-05-22 04:37:25 -04:00
|
|
|
|
2015-04-05 16:29:26 -04:00
|
|
|
**rofi** has the following key-bindings:
|
2014-08-03 15:51:31 -04:00
|
|
|
|
|
|
|
* `Ctrl-v, Insert`: Paste clipboard
|
|
|
|
* `Ctrl-Shift-v, Shift-Insert`: Paste primary selection
|
|
|
|
* `Ctrl-u`: Clear the line
|
|
|
|
* `Ctrl-a`: Beginning of line
|
|
|
|
* `Ctrl-e`: End of line
|
|
|
|
* `Ctrl-f, Right`: Forward one character
|
2015-02-07 10:42:42 -05:00
|
|
|
* `Alt-f`: Forward one word
|
2014-08-03 15:51:31 -04:00
|
|
|
* `Ctrl-b, Left`: Back one character
|
2015-02-07 10:42:42 -05:00
|
|
|
* `Alt-b`: Back one word
|
2014-08-03 15:51:31 -04:00
|
|
|
* `Ctrl-d, Delete`: Delete character
|
2015-02-07 10:42:42 -05:00
|
|
|
* `Ctrl-Alt-d': Delete word
|
2014-08-03 15:51:31 -04:00
|
|
|
* `Ctrl-h, Backspace`: Backspace (delete previous character)
|
2015-02-07 10:42:42 -05:00
|
|
|
* `Ctrl-Alt-h`: Delete previous word
|
2014-08-03 15:51:31 -04:00
|
|
|
* `Ctrl-j,Ctrl-m,Enter`: Accept entry
|
|
|
|
* `Ctrl-n,Down`: Select next entry
|
|
|
|
* `Ctrl-p,Up`: Select previous entry
|
|
|
|
* `Page Up`: Go to the previous page
|
|
|
|
* `Page Down`: Go to the next page
|
|
|
|
* `Ctrl-Page Up`: Go to the previous column
|
|
|
|
* `Ctrl-Page Down`: Go to the next column
|
2015-02-23 02:39:29 -05:00
|
|
|
* `Ctrl-Enter`: Use entered text as command (in ssh/run modi)
|
|
|
|
* `Shift-Enter`: Launch the application in a terminal (in run mode)
|
2015-01-23 14:07:56 -05:00
|
|
|
* `Shift-Enter`: Return the selected entry and move to the next item while keeping Rofi open. (in dmenu)
|
2015-02-06 02:45:21 -05:00
|
|
|
* `Shift-Right`: Switch to the next modi. The list can be customized with the `-switchers` argument.
|
|
|
|
* `Shift-Left`: Switch to the previous modi. The list can be customized with the `-switchers` argument.
|
2015-03-12 12:57:00 -04:00
|
|
|
* `Ctrl-Tab`: Switch to the next modi. The list can be customized with the `-switchers` argument.
|
|
|
|
* `Ctrl-Shift-Tab`: Switch to the previous modi. The list can be customized with the `-switchers` argument.
|
2014-09-03 13:40:24 -04:00
|
|
|
* `Ctrl-space`: Set selected item as input text.
|
2014-12-24 10:16:24 -05:00
|
|
|
* `Shift-Del`: Delete entry from history.
|
2015-04-23 16:14:31 -04:00
|
|
|
* `Ctrl-grave`: Toggle case sensitivity.
|
2014-08-05 14:09:39 -04:00
|
|
|
|
2015-05-02 06:38:37 -04:00
|
|
|
To get a full list of keybindings, see `rofi -dump-xresources | grep kb-`.
|
|
|
|
Keybindings can be modified using the configuration systems.
|
|
|
|
|
2014-11-08 07:51:41 -05:00
|
|
|
## FAQ
|
|
|
|
|
|
|
|
`Text in window switcher is not nicely lined out`
|
|
|
|
|
|
|
|
Try using a mono-space font.
|
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
`**rofi** is completely black.`
|
2014-12-07 10:04:22 -05:00
|
|
|
|
|
|
|
Check quotes used on the commandline: e.g. used “ instead of ".
|
|
|
|
|
2015-04-22 15:03:02 -04:00
|
|
|
## LICENSE
|
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
MIT/X11
|
2015-05-24 01:48:04 -04:00
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
Permission is hereby granted, free of charge, to any person obtaining
|
|
|
|
a copy of this software and associated documentation files (the
|
|
|
|
"Software"), to deal in the Software without restriction, including
|
|
|
|
without limitation the rights to use, copy, modify, merge, publish,
|
|
|
|
distribute, sublicense, and/or sell copies of the Software, and to
|
|
|
|
permit persons to whom the Software is furnished to do so, subject to
|
|
|
|
the following conditions:
|
2015-05-24 01:48:04 -04:00
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
The above copyright notice and this permission notice shall be
|
|
|
|
included in all copies or substantial portions of the Software.
|
2015-05-24 01:48:04 -04:00
|
|
|
|
2015-04-25 11:40:01 -04:00
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
|
|
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
|
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
|
|
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
|
|
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
|
|
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
|
|
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
2015-04-22 15:03:02 -04:00
|
|
|
|
2014-08-05 14:09:39 -04:00
|
|
|
## WEBSITE
|
|
|
|
|
|
|
|
**rofi** website can be found at [here](https://davedavenport.github.io/rofi/)
|
2014-08-03 15:51:31 -04:00
|
|
|
|
2014-09-06 08:57:30 -04:00
|
|
|
**rofi** bugtracker can be found [here](https://github.com/DaveDavenport/rofi/issues)
|
|
|
|
|
2014-08-01 17:29:01 -04:00
|
|
|
## AUTHOR
|
2014-05-22 04:37:25 -04:00
|
|
|
|
|
|
|
Qball Cow <qball@gmpclient.org>
|
|
|
|
|
2015-05-05 05:33:54 -04:00
|
|
|
Rasmus Steinke
|
|
|
|
|
2014-05-22 04:37:25 -04:00
|
|
|
Original code based on work by: Sean Pringle <sean.pringle@gmail.com>
|
2015-04-25 11:40:01 -04:00
|
|
|
|
|
|
|
For a full list of authors, check the AUTHORS file.
|
2015-05-05 05:33:54 -04:00
|
|
|
|