mirror of
https://github.com/davatorium/rofi.git
synced 2024-10-27 05:23:18 -04:00
1779 lines
37 KiB
Groff
1779 lines
37 KiB
Groff
.TH ROFI 1 rofi
|
|
.SH NAME
|
|
.PP
|
|
\fBrofi\fP \- A window switcher, application launcher, ssh dialog, dmenu replacement and more
|
|
|
|
.SH SYNOPSIS
|
|
.PP
|
|
\fBrofi\fP [ \-show \fImode\fP ]|[ \-dmenu ]|[ \-e \fImsg\fP ] [ CONFIGURATION ]
|
|
|
|
.SH DESCRIPTION
|
|
.PP
|
|
\fBrofi\fP is an X11 pop\-up window switcher, run dialog, dmenu replacement, and more. It focuses on
|
|
being fast to use and have minimal distraction. It supports keyboard and mouse navigation, type to
|
|
filter, tokenized search and more.
|
|
|
|
.SH USAGE
|
|
.PP
|
|
\fBrofi\fP\&'s main functionality is to assist in your workflow, allowing you to quickly switch
|
|
between windows, start applications or log into a remote machine via \fB\fCssh\fR\&.
|
|
There are different \fImodi\fP for different types of actions.
|
|
|
|
.PP
|
|
\fBrofi\fP can also function as (drop\-in) replacement for \fBdmenu(1)\fP\&.
|
|
|
|
.SS Running rofi
|
|
.PP
|
|
To launch \fBrofi\fP directly in a certain mode, specify a mode with \fB\fCrofi \-show <mode>\fR\&.
|
|
To show the \fB\fCrun\fR dialog:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-show run
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.SS Emulating dmenu
|
|
.PP
|
|
\fBrofi\fP can emulate \fBdmenu(1)\fP (a dynamic menu for X11) when launched with the \fB\fC\-dmenu\fR flag.
|
|
|
|
.PP
|
|
The website for \fB\fCdmenu\fR can be found here
|
|
\[la]http://tools.suckless.org/dmenu/\[ra]\&.
|
|
|
|
.PP
|
|
\fBrofi\fP does not aim to be 100% compatible with \fB\fCdmenu\fR\&. There are simply too many flavors of \fB\fCdmenu\fR\&.
|
|
The idea is that the basic usage command\-line flags are obeyed, theme\-related flags are not.
|
|
Besides, \fBrofi\fP offers some extended features (like multi\-select, highlighting, message bar, extra key bindings).
|
|
|
|
.SS Display Error message
|
|
.PP
|
|
\fBrofi\fP error dialog can also be called from the command line.
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-e "my message"
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Markup support can be enabled, see CONFIGURATION options.
|
|
|
|
.SH CONFIGURATION
|
|
.PP
|
|
There are currently three methods of setting configuration options (evaluated in order below):
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
System configuration file (for example \fB\fC/etc/rofi.rasi\fR).
|
|
It first checks \fB\fCXDG\_CONFIG\_DIRS\fR, and then \fB\fCSYSCONFDIR\fR (that is passed at compile time).
|
|
It loads the first config file it finds, it does not merge multiple system configuration files.
|
|
.IP \(bu 2
|
|
Rasi theme file: The new \fItheme\fP format can be used to set configuration values.
|
|
.IP \(bu 2
|
|
Command\-line options: Arguments passed to \fBrofi\fP\&.
|
|
|
|
.RE
|
|
|
|
.PP
|
|
To get a template config file, run: \fB\fCrofi \-dump\-config > config.rasi\fR
|
|
|
|
.PP
|
|
This will contain (commented) all current configuration options, modified options are uncommented.
|
|
|
|
.PP
|
|
The configuration system supports the following types:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
string
|
|
.IP \(bu 2
|
|
integer (signed and unsigned)
|
|
.IP \(bu 2
|
|
char
|
|
.IP \(bu 2
|
|
boolean
|
|
.IP \(bu 2
|
|
lists
|
|
|
|
.RE
|
|
|
|
.PP
|
|
For the syntax of these options, see the \fBrofi\-theme(5)\fP manpage.
|
|
|
|
.PP
|
|
For use on the command line, Boolean options have a non\-default command\-line
|
|
syntax. Example to enable option X:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
\-X
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
To disable option X:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
\-no\-X
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Below is a list of the most important options:
|
|
|
|
.SS General
|
|
.PP
|
|
\fB\fC\-help\fR
|
|
|
|
.PP
|
|
The help option shows the full list of command\-line options and the current set values.
|
|
These include dynamic (run\-time generated) options.
|
|
|
|
.PP
|
|
\fB\fC\-version\fR
|
|
|
|
.PP
|
|
Show the \fBrofi\fP version and exit.
|
|
|
|
.PP
|
|
\fB\fC\-dump\-config\fR
|
|
|
|
.PP
|
|
Dump the current active configuration, in rasi format, to stdout and exit.
|
|
Information about the rasi format can be found in the \fBrofi\-theme(5)\fP manpage.
|
|
|
|
.PP
|
|
\fB\fC\-dump\-theme\fR
|
|
|
|
.PP
|
|
Dump the current active theme, in rasi format, to stdout and exit.
|
|
|
|
.PP
|
|
\fB\fC\-rasi\-validate\fR \fIfilename\fP
|
|
|
|
.PP
|
|
Try to parse the file and return 0 when successful, non\-zero when failed.
|
|
|
|
.PP
|
|
\fB\fC\-threads\fR \fInum\fP
|
|
|
|
.PP
|
|
Specify the number of threads \fBrofi\fP should use:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
0: Autodetect the number of supported hardware threads.
|
|
.IP \(bu 2
|
|
1: Disable threading
|
|
.IP \(bu 2
|
|
|
|
.PP
|
|
2..n: Specify the maximum number of threads to use in the thread pool.
|
|
.PP
|
|
Default: Autodetect
|
|
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-display\fR \fIdisplay\fP
|
|
|
|
.PP
|
|
The X server to contact. Default is \fB\fC$DISPLAY\fR\&.
|
|
|
|
.PP
|
|
\fB\fC\-dmenu\fR
|
|
|
|
.PP
|
|
Run \fBrofi\fP in dmenu mode. This allows for interactive scripts.
|
|
In \fB\fCdmenu\fR mode, \fBrofi\fP reads from STDIN, and output to STDOUT.
|
|
A simple example, displaying three pre\-defined options:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
echo \-e "Option #1\\nOption #2\\nOption #3" | rofi \-dmenu
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Or get the options from a script:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
\~/my\_script.sh | rofi \-dmenu
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-show\fR \fImode\fP
|
|
|
|
.PP
|
|
Open \fBrofi\fP in a certain mode. Available modes are \fB\fCwindow\fR, \fB\fCrun\fR, \fB\fCdrun\fR, \fB\fCssh\fR, \fB\fCcombi\fR\&.
|
|
The special argument \fB\fCkeys\fR can be used to open a searchable list of supported key bindings
|
|
(see \fIKEY BINDINGS\fP)
|
|
|
|
.PP
|
|
To show the run\-dialog:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-show run
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
If \fB\fC\-show\fR is the last option passed to rofi, the first enabled modi is shown.
|
|
|
|
.PP
|
|
\fB\fC\-modi\fR \fImode1,mode2\fP
|
|
|
|
.PP
|
|
Specify an ordered, comma\-separated list of modes to enable.
|
|
Enabled modes can be changed at runtime. Default key is \fB\fCCtrl+Tab\fR\&.
|
|
If no modes are specified, all configured modes will be enabled.
|
|
To only show the \fB\fCrun\fR and \fB\fCssh\fR launcher:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-modi "run,ssh" \-show run
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Custom modes can be added using the internal \fB\fCscript\fR mode. Each such mode has two parameters:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
<name>:<script>
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Example: Have a mode called 'Workspaces' using the \fB\fCi3\_switch\_workspaces.sh\fR script:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-modi "window,run,ssh,Workspaces:i3\_switch\_workspaces.sh" \-show Workspaces
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Notes: The i3 window manager dislikes commas in the command when specifying an exec command.
|
|
For that case, \fB\fC#\fR can be used as a separator.
|
|
|
|
.PP
|
|
\fBTIP\fP: The name is allowed to contain spaces:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-modi "My File Browser:fb.sh" \-show "My File Browser"
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-case\-sensitive\fR
|
|
|
|
.PP
|
|
Start in case\-sensitive mode.
|
|
This option can be changed at run\-time using the \fB\fC\-kb\-toggle\-case\-sensitivity\fR key binding.
|
|
|
|
.PP
|
|
\fB\fC\-cycle\fR
|
|
|
|
.PP
|
|
Cycle through the result list. Default is 'true'.
|
|
|
|
.PP
|
|
\fB\fC\-filter\fR \fIfilter\fP
|
|
|
|
.PP
|
|
Filter the list by setting text in input bar to \fIfilter\fP
|
|
|
|
.PP
|
|
\fB\fC\-config\fR \fIfilename\fP
|
|
|
|
.PP
|
|
Load an alternative configuration file.
|
|
|
|
.PP
|
|
\fB\fC\-cache\-dir\fR \fIfilename\fP
|
|
|
|
.PP
|
|
Directory that is used to place temporary files, like history.
|
|
|
|
.PP
|
|
\fB\fC\-scroll\-method\fR \fImethod\fP
|
|
|
|
.PP
|
|
Select the scrolling method. 0: Per page, 1: continuous.
|
|
|
|
.PP
|
|
\fB\fC\-normalize\-match\fR
|
|
|
|
.PP
|
|
Normalize the string before matching, so \fB\fCo\fR will match \fB\fCö\fR, and \fB\fCé\fR matches \fB\fCe\fR\&.
|
|
.br
|
|
This is not a perfect implementation, but works. For now, it disables highlighting of the matched part.
|
|
|
|
.PP
|
|
\fB\fC\-no\-lazy\-grab\fR
|
|
|
|
.PP
|
|
Disables lazy grab, this forces the keyboard being grabbed before gui is shown.
|
|
|
|
.PP
|
|
\fB\fC\-no\-plugins\fR
|
|
|
|
.PP
|
|
Disable plugin loading.
|
|
|
|
.PP
|
|
\fB\fC\-plugin\-path\fR \fIdirectory\fP
|
|
|
|
.PP
|
|
Specify the directory where \fBrofi\fP should look for plugins.
|
|
|
|
.PP
|
|
\fB\fC\-show\-icons\fR
|
|
|
|
.PP
|
|
Show application icons in \fB\fCdrun\fR and \fB\fCwindow\fR modes.
|
|
|
|
.PP
|
|
\fB\fC\-icon\-theme\fR
|
|
|
|
.PP
|
|
Specify icon theme to be used.
|
|
If not specified default theme from DE is used, \fIAdwaita\fP and \fIgnome\fP themes act as
|
|
fallback themes.
|
|
|
|
.PP
|
|
\fB\fC\-fallback\-application\-icon\fR
|
|
|
|
.PP
|
|
Specify an icon to be used when the application icon in run/drun are not yet loaded or is not available.
|
|
|
|
.PP
|
|
\fB\fC\-markup\fR
|
|
|
|
.PP
|
|
Use Pango markup to format output wherever possible.
|
|
|
|
.PP
|
|
\fB\fC\-normal\-window\fR
|
|
|
|
.PP
|
|
Make \fBrofi\fP react like a normal application window. Useful for scripts like Clerk that are basically an application.
|
|
|
|
.PP
|
|
\fB\fC\-[no\-]steal\-focus\fR
|
|
|
|
.PP
|
|
Make rofi steal focus on launch and restore close to window that held it when launched.
|
|
|
|
.SS Matching
|
|
.PP
|
|
\fB\fC\-matching\fR \fImethod\fP
|
|
|
|
.PP
|
|
Specify the matching algorithm used.
|
|
Currently, the following methods are supported:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
\fBnormal\fP: match the int string
|
|
.IP \(bu 2
|
|
\fBregex\fP: match a regex input
|
|
.IP \(bu 2
|
|
\fBglob\fP: match a glob pattern
|
|
.IP \(bu 2
|
|
\fBfuzzy\fP: do a fuzzy match
|
|
.IP \(bu 2
|
|
\fBprefix\fP: match prefix
|
|
|
|
.RE
|
|
|
|
.PP
|
|
Default: \fInormal\fP
|
|
|
|
.PP
|
|
Note: glob matching might be slow for larger lists
|
|
|
|
.PP
|
|
\fB\fC\-tokenize\fR
|
|
|
|
.PP
|
|
Tokenize the input.
|
|
|
|
.PP
|
|
\fB\fC\-drun\-categories\fR \fIcategory1\fP,\fIcategory2\fP
|
|
|
|
.PP
|
|
Only show desktop files that are present in the listed categories.
|
|
|
|
.PP
|
|
\fB\fC\-drun\-match\-fields\fR \fIfield1\fP,\fIfield2\fP,...
|
|
|
|
.PP
|
|
When using \fB\fCdrun\fR, match only with the specified Desktop entry fields.
|
|
The different fields are:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
\fBname\fP: the application's name
|
|
.IP \(bu 2
|
|
\fBgeneric\fP: the application's generic name
|
|
.IP \(bu 2
|
|
\fBexec\fP: the application's executable
|
|
.IP \(bu 2
|
|
\fBcategories\fP: the application's categories
|
|
.IP \(bu 2
|
|
\fBcomment\fP: the application comment
|
|
.IP \(bu 2
|
|
|
|
.PP
|
|
\fBall\fP: all the above
|
|
.PP
|
|
Default: \fIname,generic,exec,categories,keywords\fP
|
|
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-drun\-display\-format\fR
|
|
|
|
.PP
|
|
The format string for the \fB\fCdrun\fR dialog:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
\fBname\fP: the application's name
|
|
.IP \(bu 2
|
|
\fBgeneric\fP: the application's generic name
|
|
.IP \(bu 2
|
|
\fBexec\fP: the application's executable
|
|
.IP \(bu 2
|
|
\fBcategories\fP: the application's categories
|
|
.IP \(bu 2
|
|
\fBcomment\fP: the application comment
|
|
|
|
.RE
|
|
|
|
.PP
|
|
Pango markup can be used to formatting the output.
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
Default: {name} [<span weight='light' size='small'><i>({generic})</i></span>]
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Note: Only fields enabled in \fB\fC\-drun\-match\-fields\fR can be used in the format string.
|
|
|
|
.PP
|
|
\fB\fC\-[no\-]drun\-show\-actions\fR
|
|
|
|
.PP
|
|
Show actions present in the Desktop files.
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
Default: false
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-window\-match\-fields\fR \fIfield1\fP,\fIfield2\fP,...
|
|
|
|
.PP
|
|
When using window mode, match only with the specified fields.
|
|
The different fields are:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
\fBtitle\fP: window's title
|
|
.IP \(bu 2
|
|
\fBclass\fP: window's class
|
|
.IP \(bu 2
|
|
\fBrole\fP: window's role
|
|
.IP \(bu 2
|
|
\fBname\fP: window's name
|
|
.IP \(bu 2
|
|
\fBdesktop\fP: window's current desktop
|
|
.IP \(bu 2
|
|
|
|
.PP
|
|
\fBall\fP: all the above
|
|
.PP
|
|
Default: \fIall\fP
|
|
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-matching\-negate\-char\fR \fIchar\fP
|
|
|
|
.PP
|
|
Set the character used to negate the query (i.e. if it does \fBnot\fP match the next keyword).
|
|
Set to '\\x0' to disable.
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
Default: '\-'
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.SS Layout and Theming
|
|
.PP
|
|
\fBIMPORTANT:\fP
|
|
In newer \fBrofi\fP releases, all the theming options have been moved into the new theme format. They are no longer normal
|
|
\fBrofi\fP options that can be passed directly on the command line (there are too many).
|
|
Small snippets can be passed on the command line: \fB\fCrofi \-theme\-str 'window {width: 50%;}'\fR to override a single
|
|
setting. They are merged into the current theme.
|
|
They can also be appended at the end of the \fBrofi\fP config file to override parts of the theme.
|
|
|
|
.PP
|
|
Most of the following options are \fBdeprecated\fP and should not be used. Please use the new theme format to customize
|
|
\fBrofi\fP\&. More information about the new format can be found in the \fBrofi\-theme(5)\fP manpage.
|
|
|
|
.PP
|
|
\fB\fC\-location\fR
|
|
|
|
.PP
|
|
Specify where the window should be located. The numbers map to the following locations on screen:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
1 2 3
|
|
8 0 4
|
|
7 6 5
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Default: \fI0\fP
|
|
|
|
.PP
|
|
\fB\fC\-fixed\-num\-lines\fR
|
|
|
|
.PP
|
|
Keep a fixed number of visible lines.
|
|
|
|
.PP
|
|
\fB\fC\-sidebar\-mode\fR
|
|
|
|
.PP
|
|
Open in sidebar\-mode. In this mode, a list of all enabled modes is shown at the bottom.
|
|
(See \fB\fC\-modi\fR option)
|
|
To show sidebar, use:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-show run \-sidebar\-mode
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-hover\-select\fR
|
|
|
|
.PP
|
|
Automatically select the entry the mouse is hovering over. This option is best combined with custom mouse bindings.
|
|
To utilize hover\-select and accept an entry in a single click, use:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-show run \-hover\-select \-me\-select\-entry '' \-me\-accept\-entry MousePrimary
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-eh\fR \fInumber\fP
|
|
|
|
.PP
|
|
Set row height (in chars)
|
|
Default: \fI1\fP
|
|
|
|
.PP
|
|
\fB\fC\-auto\-select\fR
|
|
|
|
.PP
|
|
When one entry is left, automatically select it.
|
|
|
|
.PP
|
|
\fB\fC\-m\fR \fInum\fP
|
|
|
|
.PP
|
|
\fB\fC\-m\fR \fIname\fP
|
|
|
|
.PP
|
|
\fB\fC\-monitor\fR \fInum\fP
|
|
|
|
.PP
|
|
\fB\fC\-monitor\fR \fIname\fP
|
|
|
|
.PP
|
|
Select monitor to display \fBrofi\fP on.
|
|
It accepts as input: \fIprimary\fP (if primary output is set), the \fIxrandr\fP output name, or integer number (in order of
|
|
detection). Negative numbers are handled differently:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
\fB\-1\fP: the currently focused monitor.
|
|
.IP \(bu 2
|
|
\fB\-2\fP: the currently focused window (that is, \fBrofi\fP will be displayed on top of the focused window).
|
|
.IP \(bu 2
|
|
\fB\-3\fP: Position of mouse (overrides the location setting to get normal context menu
|
|
behavior.)
|
|
.IP \(bu 2
|
|
\fB\-4\fP: the monitor with the focused window.
|
|
.IP \(bu 2
|
|
|
|
.PP
|
|
\fB\-5\fP: the monitor that shows the mouse pointer.
|
|
.PP
|
|
Default: \fI\-5\fP
|
|
|
|
.RE
|
|
|
|
.PP
|
|
See \fB\fCrofi \-h\fR output for the detected monitors, their position, and size.
|
|
|
|
.PP
|
|
\fB\fC\-theme\fR \fIfilename\fP
|
|
|
|
.PP
|
|
Path to the new theme file format. This overrides the old theme settings.
|
|
|
|
.PP
|
|
\fB\fC\-theme\-str\fR \fIstring\fP
|
|
|
|
.PP
|
|
Allow theme parts to be specified on the command line as an override.
|
|
|
|
.PP
|
|
For example:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-theme\-str '#window { fullscreen: true; }'
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
This option can be specified multiple times.
|
|
This is now the method to tweak the theme via the command line.
|
|
|
|
.PP
|
|
\fB\fC\-dpi\fR \fInumber\fP
|
|
|
|
.PP
|
|
Override the default DPI setting.
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
If set to \fB\fC0\fR, it tries to auto\-detect based on X11 screen size (similar to i3 and GTK).
|
|
.IP \(bu 2
|
|
If set to \fB\fC1\fR, it tries to auto\-detect based on the size of the monitor that \fBrofi\fP is displayed on (similar to latest Qt 5).
|
|
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-selected\-row\fR \fIselected row\fP
|
|
|
|
.PP
|
|
Select a certain row.
|
|
|
|
.PP
|
|
Default: \fI0\fP
|
|
|
|
.SS PATTERN setting
|
|
.PP
|
|
\fB\fC\-terminal\fR
|
|
|
|
.PP
|
|
Specify which terminal to start.
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-terminal xterm
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Pattern: \fI{terminal}\fP
|
|
|
|
.PP
|
|
Default: \fIx\-terminal\-emulator\fP
|
|
|
|
.PP
|
|
\fB\fC\-ssh\-client\fR \fIclient\fP
|
|
|
|
.PP
|
|
Override the used \fB\fCssh\fR client.
|
|
|
|
.PP
|
|
Pattern: \fI{ssh\-client}\fP
|
|
|
|
.PP
|
|
Default: \fIssh\fP
|
|
|
|
.SS SSH settings
|
|
.PP
|
|
\fB\fC\-ssh\-command\fR \fIcmd\fP
|
|
|
|
.PP
|
|
Set the command to execute when starting an ssh session.
|
|
The pattern \fI{host}\fP is replaced by the selected ssh entry.
|
|
|
|
.PP
|
|
Pattern: \fI{ssh\-client}\fP
|
|
|
|
.PP
|
|
Default: \fI{terminal} \-e {ssh\-client} {host}\fP
|
|
|
|
.PP
|
|
\fB\fC\-parse\-hosts\fR
|
|
|
|
.PP
|
|
Parse the \fB\fC/etc/hosts\fR file for entries.
|
|
|
|
.PP
|
|
Default: \fIdisabled\fP
|
|
|
|
.PP
|
|
\fB\fC\-parse\-known\-hosts\fR
|
|
\fB\fC\-no\-parse\-known\-hosts\fR
|
|
|
|
.PP
|
|
Parse the \fB\fC\~/.ssh/known\_hosts\fR file for entries.
|
|
|
|
.PP
|
|
Default: \fIenabled\fP
|
|
|
|
.SS Run settings
|
|
.PP
|
|
\fB\fC\-run\-command\fR \fIcmd\fP
|
|
|
|
.PP
|
|
Set command (\fI{cmd}\fP) to execute when running an application.
|
|
See \fIPATTERN\fP\&.
|
|
|
|
.PP
|
|
Default: \fI{cmd}\fP
|
|
|
|
.PP
|
|
\fB\fC\-run\-shell\-command\fR \fIcmd\fP
|
|
|
|
.PP
|
|
Set command to execute when running an application in a shell.
|
|
See \fIPATTERN\fP\&.
|
|
|
|
.PP
|
|
Default: \fI{terminal} \-e {cmd}\fP
|
|
|
|
.PP
|
|
\fB\fC\-run\-list\-command\fR \fIcmd\fP
|
|
|
|
.PP
|
|
If set, use an external tool to generate a list of executable commands. Uses \fB\fCrun\-command\fR\&.
|
|
|
|
.PP
|
|
Default: \fI{cmd}\fP
|
|
|
|
.SS Window switcher settings
|
|
.PP
|
|
\fB\fC\-window\-format\fR \fIformat\fP
|
|
|
|
.PP
|
|
Format what is being displayed for windows.
|
|
|
|
.PP
|
|
\fIformat\fP: {field[:len]}
|
|
|
|
.PP
|
|
\fIfield\fP:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
\fBw\fP: desktop name
|
|
.IP \(bu 2
|
|
\fBt\fP: title of window
|
|
.IP \(bu 2
|
|
\fBn\fP: name
|
|
.IP \(bu 2
|
|
\fBr\fP: role
|
|
.IP \(bu 2
|
|
\fBc\fP: class
|
|
|
|
.RE
|
|
|
|
.PP
|
|
\fIlen\fP: maximum field length (0 for auto\-size). If length and window \fIwidth\fP are negative, field length is \fIwidth \- len\fP\&.
|
|
.br
|
|
If length is positive, the entry will be truncated or padded to fill that length.
|
|
|
|
.PP
|
|
default: {w} {c} {t}
|
|
|
|
.PP
|
|
\fB\fC\-window\-command\fR \fIcmd\fP
|
|
|
|
.PP
|
|
Set command to execute on selected window for an alt action (\fB\fC\-kb\-accept\-alt\fR).
|
|
See \fIPATTERN\fP\&.
|
|
|
|
.PP
|
|
Default: \fI"wmctrl \-i \-R {window}"\fP
|
|
|
|
.PP
|
|
\fB\fC\-window\-thumbnail\fR
|
|
|
|
.PP
|
|
Show window thumbnail (if available) as icon in the window switcher.
|
|
|
|
.PP
|
|
You can stop rofi from exiting when closing a window (allowing multiple to be closed in a row).
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
configuration {
|
|
window {
|
|
close\-on\-delete: false;
|
|
}
|
|
}
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.SS Combi settings
|
|
.PP
|
|
\fB\fC\-combi\-modi\fR \fImode1\fP,\fImode2\fP
|
|
|
|
.PP
|
|
The modi to combine in combi mode.
|
|
For syntax to \fB\fC\-combi\-modi\fR, see \fB\fC\-modi\fR\&.
|
|
To get one merge view, of \fB\fCwindow\fR,\fB\fCrun\fR, and \fB\fCssh\fR:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-show combi \-combi\-modi "window,run,ssh" \-modi combi
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
\fBNOTE\fP: The i3 window manager dislikes commas in the command when specifying an exec command.
|
|
For that case, \fB\fC#\fR can be used as a separator.
|
|
|
|
.SS History and Sorting
|
|
.PP
|
|
\fB\fC\-disable\-history\fR
|
|
\fB\fC\-no\-disable\-history\fR (re\-enable history)
|
|
|
|
.PP
|
|
Disable history
|
|
|
|
.PP
|
|
\fB\fC\-sort\fR to enable
|
|
\fB\fC\-no\-sort\fR to disable
|
|
|
|
.PP
|
|
Enable, disable sorting.
|
|
This setting can be changed at runtime (see \fB\fC\-kb\-toggle\-sort\fR).
|
|
|
|
.PP
|
|
\fB\fC\-sorting\-method\fR 'method' to specify the sorting method.
|
|
|
|
.PP
|
|
There are 2 sorting methods:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
levenshtein (Default)
|
|
.IP \(bu 2
|
|
fzf sorting.
|
|
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-max\-history\-size\fR \fInumber\fP
|
|
|
|
.PP
|
|
Maximum number of entries to store in history. Defaults to 25. (WARNING: can cause slowdowns when set too high)
|
|
|
|
.SS Dmenu specific
|
|
.PP
|
|
\fB\fC\-sep\fR \fIseparator\fP
|
|
|
|
.PP
|
|
Separator for \fB\fCdmenu\fR\&. Example: To show a list of 'a' to 'e' with '|' as a separator:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
echo "a|b|c|d|e" | rofi \-sep '|' \-dmenu
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-p\fR \fIprompt\fP
|
|
|
|
.PP
|
|
Specify the prompt to show in \fB\fCdmenu\fR mode. For example, select 'monkey', a,b,c,d, or e.
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
echo "a|b|c|d|e" | rofi \-sep '|' \-dmenu \-p "monkey"
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Default: \fIdmenu\fP
|
|
|
|
.PP
|
|
\fB\fC\-l\fR \fInumber of lines to show\fP
|
|
|
|
.PP
|
|
Maximum number of lines the menu may show before scrolling.
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-dmenu \-l 25
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Default: \fI15\fP
|
|
|
|
.PP
|
|
\fB\fC\-i\fR
|
|
|
|
.PP
|
|
Makes \fB\fCdmenu\fR searches case\-insensitive
|
|
|
|
.PP
|
|
\fB\fC\-a\fR \fIX\fP
|
|
|
|
.PP
|
|
Active row, mark \fIX\fP as active. Where \fIX\fP is a comma\-separated list of python(1)\-style indices and ranges, e.g. indices start at 0, \-1 refers to the last row with \-2 preceding it, ranges are left\-open and right\-close, and so on. You can specify:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
A single row: '5'
|
|
.IP \(bu 2
|
|
A range of (last 3) rows: '\-3:'
|
|
.IP \(bu 2
|
|
4 rows starting from row 7: '7:11' (or in legacy notation: '7\-10')
|
|
.IP \(bu 2
|
|
A set of rows: '2,0,\-9'
|
|
.IP \(bu 2
|
|
Or any combination: '5,\-3:,7:11,2,0,\-9'
|
|
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-u\fR \fIX\fP
|
|
|
|
.PP
|
|
Urgent row, mark \fIX\fP as urgent. See \fB\fC\-a\fR option for details.
|
|
|
|
.PP
|
|
\fB\fC\-only\-match\fR
|
|
|
|
.PP
|
|
Only return a selected item, do not allow custom entry.
|
|
This mode always returns an entry. It will not return if no matching entry is
|
|
selected.
|
|
|
|
.PP
|
|
\fB\fC\-no\-custom\fR
|
|
|
|
.PP
|
|
Only return a selected item, do not allow custom entry.
|
|
This mode returns directly when no entries given.
|
|
|
|
.PP
|
|
\fB\fC\-format\fR \fIformat\fP
|
|
|
|
.PP
|
|
Allows the output of dmenu to be customized (N is the total number of input entries):
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
\&'s' selected string
|
|
.IP \(bu 2
|
|
\&'i' index (0 \-\& (N\-\&1))
|
|
.IP \(bu 2
|
|
\&'d' index (1 \-\& N)
|
|
.IP \(bu 2
|
|
\&'q' quote string
|
|
.IP \(bu 2
|
|
\&'p' Selected string stripped from Pango markup (Needs to be a valid string)
|
|
.IP \(bu 2
|
|
\&'f' filter string (user input)
|
|
.IP \(bu 2
|
|
\&'F' quoted filter string (user input)
|
|
|
|
.RE
|
|
|
|
.PP
|
|
Default: 's'
|
|
|
|
.PP
|
|
\fB\fC\-select\fR \fIstring\fP
|
|
|
|
.PP
|
|
Select first line that matches the given string
|
|
|
|
.PP
|
|
\fB\fC\-mesg\fR \fIstring\fP
|
|
|
|
.PP
|
|
Add a message line below the filter entry box. Supports Pango markup.
|
|
For more information on supported markup, see here
|
|
\[la]https://developer.gnome.org/pygtk/stable/pango-markup-language.html\[ra]
|
|
|
|
.PP
|
|
\fB\fC\-dump\fR
|
|
|
|
.PP
|
|
Dump the filtered list to stdout and quit.
|
|
This can be used to get the list as \fBrofi\fP would filter it.
|
|
Use together with \fB\fC\-filter\fR command.
|
|
|
|
.PP
|
|
\fB\fC\-input\fR \fIfile\fP
|
|
|
|
.PP
|
|
Reads from \fIfile\fP instead of stdin.
|
|
|
|
.PP
|
|
\fB\fC\-password\fR
|
|
|
|
.PP
|
|
Hide the input text. This should not be considered secure!
|
|
|
|
.PP
|
|
\fB\fC\-markup\-rows\fR
|
|
|
|
.PP
|
|
Tell \fBrofi\fP that DMenu input is Pango markup encoded, and should be rendered.
|
|
See here
|
|
\[la]https://developer.gnome.org/pygtk/stable/pango-markup-language.html\[ra] for details about Pango markup.
|
|
|
|
.PP
|
|
\fB\fC\-multi\-select\fR
|
|
|
|
.PP
|
|
Allow multiple lines to be selected. Adds a small selection indicator to the left of each entry.
|
|
|
|
.PP
|
|
\fB\fC\-sync\fR
|
|
|
|
.PP
|
|
Force \fBrofi\fP mode to first read all data from stdin before showing the selection window. This is original dmenu behavior.
|
|
|
|
.PP
|
|
Note: the default asynchronous mode will also be automatically disabled if used with conflicting options,
|
|
such as \fB\fC\-dump\fR, \fB\fC\-only\-match\fR or \fB\fC\-auto\-select\fR\&.
|
|
|
|
.PP
|
|
\fB\fC\-async\-pre\-read\fR \fInumber\fP
|
|
|
|
.PP
|
|
Reads the first \fInumber\fP entries blocking, then switches to async mode.
|
|
This makes it feel more 'snappy'.
|
|
|
|
.PP
|
|
\fIdefault\fP: 25
|
|
|
|
.PP
|
|
\fB\fC\-window\-title\fR \fItitle\fP
|
|
|
|
.PP
|
|
Set name used for the window title. Will be shown as Rofi \- \fItitle\fP
|
|
|
|
.PP
|
|
\fB\fC\-w\fR \fIwindowid\fP
|
|
|
|
.PP
|
|
Position \fBrofi\fP over the window with the given X11 window ID.
|
|
|
|
.PP
|
|
\fB\fC\-keep\-right\fR
|
|
|
|
.PP
|
|
Set ellipsize mode to start. So, the end of the string is visible.
|
|
|
|
.SS Message dialog
|
|
.PP
|
|
\fB\fC\-e\fR \fImessage\fP
|
|
|
|
.PP
|
|
Pops up a message dialog (used internally for showing errors) with \fImessage\fP\&.
|
|
Message can be multi\-line.
|
|
|
|
.SS File browser settings
|
|
.PP
|
|
File browser behavior can be controlled via the following options:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
configuration {
|
|
filebrowser {
|
|
/** Directory the file browser starts in. */
|
|
directory: "/some/directory";
|
|
/**
|
|
* Sorting method. Can be set to:
|
|
* \- "name"
|
|
* \- "mtime" (modification time)
|
|
* \- "atime" (access time)
|
|
* \- "ctime" (change time)
|
|
*/
|
|
sorting\-method: "name";
|
|
/** Group directories before files. */
|
|
directories\-first: true;
|
|
}
|
|
}
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.SS Other
|
|
.PP
|
|
\fB\fC\-drun\-use\-desktop\-cache\fR
|
|
|
|
.PP
|
|
Build and use a cache with the content of desktop files. Usable for systems with slow hard drives.
|
|
|
|
.PP
|
|
\fB\fC\-drun\-reload\-desktop\-cache\fR
|
|
|
|
.PP
|
|
If \fB\fCdrun\-use\-desktop\-cache\fR is enabled, rebuild a cache with the content of desktop files.
|
|
|
|
.PP
|
|
\fB\fC\-drun\-url\-launcher\fR \fIcommand\fP
|
|
|
|
.PP
|
|
Command to open a Desktop Entry that is a Link.
|
|
|
|
.PP
|
|
\fB\fC\-pid\fR \fIpath\fP
|
|
|
|
.PP
|
|
Make \fBrofi\fP create a pid file and check this on startup. The pid file prevents multiple \fBrofi\fP instances from running simultaneously. This is useful when running \fBrofi\fP from a key\-binding daemon.
|
|
|
|
.PP
|
|
\fB\fC\-display\-{mode}\fR \fIstring\fP
|
|
|
|
.PP
|
|
Set the name to use for mode. This is used as prompt and in combi\-browser.
|
|
|
|
.PP
|
|
It is now preferred to use the configuration file:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
configuration {
|
|
{mode} {
|
|
display\-name: *string*;
|
|
}
|
|
}
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
\fB\fC\-click\-to\-exit\fR
|
|
\fB\fC\-no\-click\-to\-exit\fR
|
|
|
|
.PP
|
|
Click the mouse outside the \fBrofi\fP window to exit.
|
|
|
|
.PP
|
|
Default: \fIenabled\fP
|
|
|
|
.SH PATTERN
|
|
.PP
|
|
To launch commands (for example, when using the ssh launcher), the user can enter the used command\-line. The following keys can be used that will be replaced at runtime:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
\fB\fC{host}\fR: the host to connect to
|
|
.IP \(bu 2
|
|
\fB\fC{terminal}\fR: the configured terminal (see \-terminal\-emulator)
|
|
.IP \(bu 2
|
|
\fB\fC{ssh\-client}\fR: the configured ssh client (see \-ssh\-client)
|
|
.IP \(bu 2
|
|
\fB\fC{cmd}\fR: the command to execute
|
|
.IP \(bu 2
|
|
\fB\fC{window}\fR: the window ID of the selected window (in \fB\fCwindow\-command\fR)
|
|
|
|
.RE
|
|
|
|
.SH DMENU REPLACEMENT
|
|
.PP
|
|
If \fB\fCargv[0]\fR (calling command) is dmenu, \fBrofi\fP will start in dmenu mode.
|
|
This way, it can be used as a drop\-in replacement for dmenu. Just copy or symlink \fBrofi\fP to dmenu in \fB\fC$PATH\fR\&.
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
ln \-s /usr/bin/rofi /usr/bin/dmenu
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.SH THEMING
|
|
.PP
|
|
Please see \fBrofi\-theme(5)\fP manpage for more information on theming.
|
|
|
|
.SH KEY BINDINGS
|
|
.PP
|
|
\fBrofi\fP has the following key bindings:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
\fB\fCControl\-v, Insert\fR: Paste from clipboard
|
|
.IP \(bu 2
|
|
\fB\fCControl\-Shift\-v, Shift\-Insert\fR: Paste primary selection
|
|
.IP \(bu 2
|
|
\fB\fCControl\-u\fR: Clear the line
|
|
.IP \(bu 2
|
|
\fB\fCControl\-a\fR: Beginning of line
|
|
.IP \(bu 2
|
|
\fB\fCControl\-e\fR: End of line
|
|
.IP \(bu 2
|
|
\fB\fCControl\-f, Right\fR: Forward one character
|
|
.IP \(bu 2
|
|
\fB\fCAlt\-f, Control\-Right\fR: Forward one word
|
|
.IP \(bu 2
|
|
\fB\fCControl\-b, Left\fR: Back one character
|
|
.IP \(bu 2
|
|
\fB\fCAlt\-b, Control\-Left\fR: Back one word
|
|
.IP \(bu 2
|
|
\fB\fCControl\-d, Delete\fR: Delete character
|
|
.IP \(bu 2
|
|
\fB\fCControl\-Alt\-d\fR: Delete word
|
|
.IP \(bu 2
|
|
\fB\fCControl\-h, Backspace, Shift\-Backspace\fR: Backspace (delete previous character)
|
|
.IP \(bu 2
|
|
\fB\fCControl\-Alt\-h\fR: Delete previous word
|
|
.IP \(bu 2
|
|
\fB\fCControl\-j,Control\-m,Enter\fR: Accept entry
|
|
.IP \(bu 2
|
|
\fB\fCControl\-n,Down\fR: Select next entry
|
|
.IP \(bu 2
|
|
\fB\fCControl\-p,Up\fR: Select previous entry
|
|
.IP \(bu 2
|
|
\fB\fCPage Up\fR: Go to previous page
|
|
.IP \(bu 2
|
|
\fB\fCPage Down\fR: Go to next page
|
|
.IP \(bu 2
|
|
\fB\fCControl\-Page Up\fR: Go to previous column
|
|
.IP \(bu 2
|
|
\fB\fCControl\-Page Down\fR: Go to next column
|
|
.IP \(bu 2
|
|
\fB\fCControl\-Enter\fR: Use entered text as a command (in \fB\fCssh/run modi\fR)
|
|
.IP \(bu 2
|
|
\fB\fCShift\-Enter\fR: Launch the application in a terminal (in run mode)
|
|
.IP \(bu 2
|
|
\fB\fCControl\-Shift\-Enter\fR: As Control\-Enter and run the command in terminal (in run mode)
|
|
.IP \(bu 2
|
|
\fB\fCShift\-Enter\fR: Return the selected entry and move to the next item while keeping \fBrofi\fP open. (in dmenu)
|
|
.IP \(bu 2
|
|
\fB\fCShift\-Right\fR: Switch to the next mode. The list can be customized with the \fB\fC\-modi\fR argument.
|
|
.IP \(bu 2
|
|
\fB\fCShift\-Left\fR: Switch to the previous mode. The list can be customized with the \fB\fC\-modi\fR argument.
|
|
.IP \(bu 2
|
|
\fB\fCControl\-Tab\fR: Switch to the next mode. The list can be customized with the \fB\fC\-modi\fR argument.
|
|
.IP \(bu 2
|
|
\fB\fCControl\-Shift\-Tab\fR: Switch to the previous mode. The list can be customized with the \fB\fC\-modi\fR argument.
|
|
.IP \(bu 2
|
|
\fB\fCControl\-space\fR: Set selected item as input text.
|
|
.IP \(bu 2
|
|
\fB\fCShift\-Del\fR: Delete entry from history.
|
|
.IP \(bu 2
|
|
\fB\fCgrave\fR: Toggle case sensitivity.
|
|
.IP \(bu 2
|
|
\fB\fCAlt\-grave\fR: Toggle sorting.
|
|
.IP \(bu 2
|
|
\fB\fCAlt\-Shift\-S\fR: Take a screenshot and store it in the Pictures directory.
|
|
.IP \(bu 2
|
|
\fB\fCControl\-l\fR: File complete for run dialog.
|
|
|
|
.RE
|
|
|
|
.PP
|
|
This list might not be complete, to get a full list of all key bindings
|
|
supported in your rofi, see \fB\fCrofi \-h\fR\&. The options starting with \fB\fC\-kb\fR are keybindings.
|
|
|
|
.PP
|
|
Key bindings can be modified using the configuration systems. Multiple keys can be bound
|
|
to one action by comma separating them. For example \fB\fC\-kb\-primary\-paste "Conctrol+v,Insert"\fR
|
|
|
|
.PP
|
|
To get a searchable list of key bindings, run \fB\fCrofi \-show keys\fR\&.
|
|
|
|
.PP
|
|
A key binding starting with \fB\fC!\fR will act when all keys have been released.
|
|
|
|
.SH Available Modi
|
|
.SS window
|
|
.PP
|
|
Show a list of all the windows and allow switching between them.
|
|
Pressing the \fB\fCdelete\-entry\fR binding (\fB\fCshift\-delete\fR) will close the window.
|
|
Pressing the \fB\fCaccept\-custom\fR binding (\fB\fCcontrol\-enter\fR or \fB\fCshift\-enter\fR) will run a command on the window.
|
|
(See option \fB\fCwindow\-command\fR );
|
|
|
|
.PP
|
|
If there is no match, it will try to launch the input.
|
|
|
|
.SS windowcd
|
|
.PP
|
|
Shows a list of the windows on the current desktop and allows switching between them.
|
|
Pressing the \fB\fCdelete\-entry\fR binding (\fB\fCshift\-delete\fR) will kill the window.
|
|
Pressing the \fB\fCaccept\-custom\fR binding (\fB\fCcontrol\-enter\fR or \fB\fCshift\-enter\fR) will run a command on the window.
|
|
(See option \fB\fCwindow\-command\fR );
|
|
|
|
.PP
|
|
If there is no match, it will try to launch the input.
|
|
|
|
.SS run
|
|
.PP
|
|
Shows a list of executables in \fB\fC$PATH\fR and can launch them (optional in a terminal).
|
|
Pressing the \fB\fCdelete\-entry\fR binding (\fB\fCshift\-delete\fR) will remove this entry from the run history.
|
|
Pressing the \fB\fCaccept\-custom\fR binding (\fB\fCcontrol\-enter\fR) will run the command as entered in the entry box.
|
|
Pressing the \fB\fCaccept\-alt\fR binding (\fB\fCshift\-enter\fR) will run the command in a terminal.
|
|
|
|
.PP
|
|
When pressing the \fB\fCmode\-complete\fR binding (\fB\fCControl\-l\fR), you can use the File Browser mode to launch the application
|
|
with a file as the first argument.
|
|
|
|
.SS drun
|
|
.PP
|
|
Same as the \fBrun\fP launches, but the list is created from the installed desktop files. It automatically launches them
|
|
in a terminal if specified in the Desktop File.
|
|
Pressing the \fB\fCdelete\-entry\fR binding (\fB\fCshift\-delete\fR) will remove this entry from the run history.
|
|
Pressing the \fB\fCaccept\-custom\fR binding (\fB\fCcontrol\-enter\fR) will run the command as entered in the entry box.
|
|
Pressing the \fB\fCaccept\-alt\fR binding (\fB\fCshift\-enter\fR) will run the command in a terminal.
|
|
|
|
.PP
|
|
When pressing the \fB\fCmode\-complete\fR binding (\fB\fCControl\-l\fR), you can use the File Browser mode to launch the application
|
|
passing a file as argument if specified in the desktop file.
|
|
|
|
.PP
|
|
The DRUN mode tries to follow the XDG Desktop Entry
|
|
Specification
|
|
\[la]https://freedesktop.org/wiki/Specifications/desktop-entry-spec/\[ra] and should be compatible with
|
|
applications using this standard. Some applications create invalid desktop files, \fBrofi\fP will discard these entries.
|
|
See the debugging section for more info on DRUN mode, this will print why desktop files are
|
|
discarded.
|
|
|
|
.PP
|
|
There are two advanced options to tweak the behaviour:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
configuration {
|
|
drun {
|
|
/** Parse user desktop files. */
|
|
parse\-user: true;
|
|
/** Parse system desktop files. */
|
|
parse\-system: false;
|
|
}
|
|
}
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.SS ssh
|
|
.PP
|
|
Shows a list of SSH targets based on your \fB\fCssh\fR config file, and allows to quickly \fB\fCssh\fR into them.
|
|
|
|
.SS keys
|
|
.PP
|
|
Shows a searchable list of key bindings.
|
|
|
|
.SS script
|
|
.PP
|
|
Allows custom scripted Modi to be added, see the \fBrofi\-script(5)\fP manpage for more information.
|
|
|
|
.SS combi
|
|
.PP
|
|
Combines multiple modi in one list. Specify which modi are included with the \fB\fC\-combi\-modi\fR option.
|
|
|
|
.PP
|
|
When using the combi mode, a \fI!bang\fP can be used to filter the results by modi.
|
|
All modi that match the bang as a prefix are included.
|
|
For example, say you have specified \fB\fC\-combi\-modi run,window,windowcd\fR\&. If your
|
|
query begins with the bang \fB\fC!w\fR, only results from the \fB\fCwindow\fR and \fB\fCwindowcd\fR
|
|
modi are shown, even if the rest of the input text would match results from \fB\fCrun\fR\&.
|
|
|
|
.PP
|
|
If no match, the input is handled by the first combined modi.
|
|
|
|
.SH FAQ
|
|
.SS The text in the window switcher is not nicely aligned.
|
|
.PP
|
|
Try using a mono\-space font.
|
|
|
|
.SS The window is completely black.
|
|
.PP
|
|
Check quotes used on the command\-line: you might have used \fB\fC“\fR ("smart quotes") instead of \fB\fC"\fR ("machine quotes").
|
|
|
|
.SS What does the icon in the top right show?
|
|
.PP
|
|
The indicator shows:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
` ` Case insensitive and no sorting.
|
|
`\-` Case sensitivity enabled, no sorting.
|
|
`+` Case insensitive and Sorting enabled
|
|
`±` Sorting and Case sensitivity enabled"
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.SH EXAMPLES
|
|
.PP
|
|
Some basic usage examples of \fBrofi\fP:
|
|
|
|
.PP
|
|
Show the run dialog:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-modi run \-show run
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Show the run dialog, and allow switching to Desktop File run dialog (\fB\fCdrun\fR):
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-modi run,drun \-show run
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Combine the run and Desktop File run dialog (\fB\fCdrun\fR):
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-modi combi \-show combi \-combi\-modi run,drun
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Combine the run and Desktop File run dialog (\fB\fCdrun\fR), and allow switching to window switcher:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-modi combi,window \-show combi \-combi\-modi run,drun
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Pop up a text message claiming that this is the end:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-e "This is the end"
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Pop up a text message in red, bold font claiming that this is still the end:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-e "<span color='red'><b>This is still the end</b></span>" \-markup
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Show all key bindings:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-show keys
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.PP
|
|
Use \fB\fCqalc\fR to get a simple calculator in \fBrofi\fP:
|
|
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
rofi \-show calc \-modi "calc:qalc +u8 \-nocurrencies"
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.SH i3
|
|
.PP
|
|
In i3
|
|
\[la]http://i3wm.org/\[ra] you want to bind \fBrofi\fP to be launched on key release. Otherwise, it cannot grab the keyboard.
|
|
See also the i3 manual
|
|
\[la]http://i3wm.org/docs/userguide.html\[ra]:
|
|
|
|
.PP
|
|
Some tools (such as \fB\fCimport\fR or \fB\fCxdotool\fR) might be unable to run upon a KeyPress event, because the keyboard/pointer is
|
|
still grabbed. For these situations, the \fB\fC\-\-release\fR flag can be used, as it will execute the command after the keys have
|
|
been released.
|
|
|
|
.SH LICENSE
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
MIT/X11
|
|
|
|
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:
|
|
|
|
The above copyright notice and this permission notice shall be
|
|
included in all copies or substantial portions of the Software.
|
|
|
|
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.
|
|
|
|
.fi
|
|
.RE
|
|
|
|
.SH WEBSITE
|
|
.PP
|
|
\fBrofi\fP website can be found here
|
|
\[la]https://davedavenport.github.io/rofi/\[ra]
|
|
|
|
.SH SUPPORT
|
|
.PP
|
|
\fBrofi\fP support can be obtained:
|
|
* GitHub Discussions
|
|
\[la]https://github.com/davatorium/rofi/discussions\[ra]
|
|
* Forum (Reddit)
|
|
\[la]https://reddit.com/r/qtools//\[ra]
|
|
* IRC
|
|
\[la]irc://irc.libera.chat:6697/#rofi\[ra] (#rofi on irc.libera.chat),
|
|
|
|
.SH DEBUGGING
|
|
.PP
|
|
To debug, it is smart to first try disabling your custom configuration:
|
|
\fB\fC\-no\-config\fR
|
|
|
|
.PP
|
|
Disable parsing of configuration. This runs rofi in \fIstock\fP mode.
|
|
|
|
.PP
|
|
If you run custom C plugins, you can disable them using:
|
|
|
|
.PP
|
|
\fB\fC\-no\-plugins\fR
|
|
|
|
.PP
|
|
Disables the loading of plugins.
|
|
|
|
.PP
|
|
To further debug the plugin, you can get a trace with (lots of) debug information. This debug output can be enabled for
|
|
multiple parts in rofi using the glib debug framework. Debug domains can be enabled by setting the G\_MESSAGES\_DEBUG
|
|
environment variable. At the time of creation of this page, the following debug domains exist:
|
|
|
|
.RS
|
|
.IP \(bu 2
|
|
all: Show debug information from all domains.
|
|
.IP \(bu 2
|
|
X11Helper: The X11 Helper functions.
|
|
.IP \(bu 2
|
|
View: The main window view functions.
|
|
.IP \(bu 2
|
|
Widgets.Box: The Box widget.
|
|
.IP \(bu 2
|
|
Dialogs.DMenu: The dmenu mode.
|
|
.IP \(bu 2
|
|
Dialogs.Run: The run mode.
|
|
.IP \(bu 2
|
|
Dialogs.DRun: The desktop file run mode.
|
|
.IP \(bu 2
|
|
Dialogs.Window: The window mode.
|
|
.IP \(bu 2
|
|
Dialogs.Script: The script mode.
|
|
.IP \(bu 2
|
|
Dialogs.Combi: The script mode.
|
|
.IP \(bu 2
|
|
Dialogs.Ssh: The ssh mode.
|
|
.IP \(bu 2
|
|
Rofi: The main application.
|
|
.IP \(bu 2
|
|
Timings: Get timing output.
|
|
.IP \(bu 2
|
|
Theme: Theme engine debug output. (warning lots of output).
|
|
.IP \(bu 2
|
|
Widgets.Icon: The Icon widget.
|
|
.IP \(bu 2
|
|
Widgets.Box: The box widget.
|
|
.IP \(bu 2
|
|
Widgets.Container: The container widget.
|
|
.IP \(bu 2
|
|
Widgets.Window: The window widget.
|
|
.IP \(bu 2
|
|
Helpers.IconFetcher: Information about icon lookup.
|
|
|
|
.RE
|
|
|
|
.PP
|
|
The output of this can provide useful information when writing an issue.
|
|
|
|
.PP
|
|
More information (possibly outdated) see this
|
|
\[la]https://github.com/DaveDavenport/rofi/wiki/Debugging%20Rofi\[ra] wiki entry.
|
|
|
|
.SH ISSUE TRACKER
|
|
.PP
|
|
The \fBrofi\fP issue tracker can be found here
|
|
\[la]https://github.com/DaveDavenport/rofi/issues\[ra]
|
|
|
|
.PP
|
|
When creating an issue, please read this
|
|
\[la]https://github.com/DaveDavenport/rofi/blob/master/.github/CONTRIBUTING.md\[ra]
|
|
first.
|
|
|
|
.SH SEE ALSO
|
|
.PP
|
|
\fBrofi\-sensible\-terminal(1)\fP, \fBdmenu(1)\fP, \fBrofi\-theme(5)\fP, \fBrofi\-script(5)\fP, \fBrofi\-theme\-selector(1)\fP
|
|
|
|
.SH AUTHOR
|
|
.RS
|
|
.IP \(bu 2
|
|
Qball Cow
|
|
\[la]qball@blame.services\[ra]
|
|
.IP \(bu 2
|
|
Rasmus Steinke
|
|
\[la]rasi@xssn.at\[ra]
|
|
.IP \(bu 2
|
|
Quentin Glidic
|
|
\[la]sardemff7+rofi@sardemff7.net\[ra]
|
|
|
|
.RE
|
|
|
|
.PP
|
|
Original code based on work by: Sean Pringle
|
|
\[la]https://github.com/seanpringle/simpleswitcher\[ra]
|
|
\[la]sean.pringle@gmail.com\[ra]
|
|
|
|
.PP
|
|
For a full list of authors, check the \fB\fCAUTHORS\fR file.
|