mirror of
https://github.com/davatorium/rofi.git
synced 2024-11-18 13:54:36 -05:00
Update README.md
Remove outdated information from README and point to manpage. Add platforms it is known to work on.
This commit is contained in:
parent
413eddd825
commit
7824b1c84e
1 changed files with 12 additions and 182 deletions
194
README.md
194
README.md
|
@ -46,195 +46,25 @@ Its main features are:
|
||||||
* Easily extensible using scripts
|
* Easily extensible using scripts
|
||||||
* Theming
|
* Theming
|
||||||
|
|
||||||
**Rofi** has several built-in modes implementing common use cases and can be extended by scripts (either called from
|
**Rofi** has several built-in modi implementing common use cases and can be extended by scripts (either called from
|
||||||
**Rofi** or calling **Rofi**).
|
**Rofi** or calling **Rofi**).
|
||||||
|
|
||||||
Below is a list of the different modes:
|
Below is a list of the different modi:
|
||||||
|
|
||||||
## Window Switcher
|
* **run**: launch applications from $PATH, with option to launch in terminal.
|
||||||
|
* **drun**: launch applications based on desktop files. It tries to be compliant to the XDG standard.
|
||||||
|
* **window**: Switch between windows on an EWMH compatible window manager.
|
||||||
|
* **ssh**: Connect to a remote host via ssh.
|
||||||
|
* **file-browser**: A basic file-browser for opening files.
|
||||||
|
* **keys**: list internal keybindings.
|
||||||
|
* **script**: Write (limited) custom mode using simple scripts.
|
||||||
|
* **combi**: Combine multiple modi into one.
|
||||||
|
|
||||||
![Window List](https://davatorium.github.io/rofi/images/rofi/window-list.png)
|
**Rofi** is known to work on Linux and BSD.
|
||||||
|
|
||||||
The window switcher shows the following informations in columns (can be customized):
|
|
||||||
|
|
||||||
1. Desktop name
|
|
||||||
2. Window class
|
|
||||||
3. Window title
|
|
||||||
|
|
||||||
Window mode features:
|
|
||||||
|
|
||||||
* Closing applications with `Shift-Delete`
|
|
||||||
* Custom command with `Shift-Return`
|
|
||||||
|
|
||||||
## Application launcher
|
|
||||||
|
|
||||||
![run mode](https://davatorium.github.io/rofi/images/rofi/run-dialog.png)
|
|
||||||
|
|
||||||
The run mode allows users to quickly search for and launch a program.
|
|
||||||
|
|
||||||
Run mode features:
|
|
||||||
|
|
||||||
* `Shift-Return` to run the selected program in a terminal
|
|
||||||
* Favorites list, with frequently used programs sorted on top
|
|
||||||
* Custom entries, like aliases, added by executing a command
|
|
||||||
|
|
||||||
## Desktop File Application launcher
|
|
||||||
|
|
||||||
The desktop run mode allows users to quickly search and launch an application from the *freedesktop.org* Desktop
|
|
||||||
Entries. These are used by most Desktop Environments to populate launchers and menus.
|
|
||||||
Drun mode features:
|
|
||||||
|
|
||||||
* Favorites list, with frequently used programs sorted on top
|
|
||||||
* Auto starting terminal applications in a terminal
|
|
||||||
|
|
||||||
## SSH launcher
|
|
||||||
|
|
||||||
![SSH Launcher](https://davatorium.github.io/rofi/images/rofi/ssh-dialog.png)
|
|
||||||
|
|
||||||
Quickly `ssh` into remote machines. Parses `~/.ssh/config` and `~/.ssh/known_hosts` to find hosts.
|
|
||||||
|
|
||||||
## Script mode
|
|
||||||
|
|
||||||
Loads external scripts to add modes to **Rofi**, for example a file-browser.
|
|
||||||
|
|
||||||
rofi -show fb -modi fb:../Examples/rofi-file-browser.sh
|
|
||||||
|
|
||||||
## COMBI mode
|
|
||||||
|
|
||||||
Combine multiple modes in one view. This is especially useful when merging the window and run mode into one view.
|
|
||||||
Allowing to quickly switch to an application, either by switching to it when it is already running or starting it.
|
|
||||||
|
|
||||||
Example to combine Desktop run and the window switcher:
|
|
||||||
|
|
||||||
rofi -combi-modi window,drun -show combi -modi combi
|
|
||||||
|
|
||||||
## dmenu replacement
|
|
||||||
|
|
||||||
![DMENU replacement (running teiler)](https://davatorium.github.io/rofi/images/rofi/dmenu-replacement.png)
|
|
||||||
|
|
||||||
Drop in dmenu replacement. (Screenshot shows rofi used by
|
|
||||||
[teiler](https://github.com/carnager/teiler) ).
|
|
||||||
|
|
||||||
**Rofi** features several improvements over dmenu to improve usability. There is the option to add
|
|
||||||
an extra message bar (`-mesg`), pre-entering of text (`-filter`), or selecting entries based on a
|
|
||||||
pattern (`-select`). Also highlighting (`-u` and `-a`) options and modi to force user to select one
|
|
||||||
provided option (`-only-match`). In addition to this, rofi's dmenu mode can select multiple lines and
|
|
||||||
write them to stdout.
|
|
||||||
|
|
||||||
# Usage
|
|
||||||
|
|
||||||
If used with `-show [mode]`, rofi will immediately open in the specified \[mode].
|
|
||||||
|
|
||||||
If used with `-dmenu`, rofi will use data from STDIN to let the user select an option.
|
|
||||||
|
|
||||||
For example, to show a run dialog:
|
|
||||||
|
|
||||||
`rofi -show run`
|
|
||||||
|
|
||||||
To show a ssh dialog:
|
|
||||||
|
|
||||||
`rofi -show ssh`
|
|
||||||
|
|
||||||
## dmenu
|
|
||||||
|
|
||||||
If rofi is passed the `-dmenu` option, or run as `dmenu` (ie, /usr/bin/dmenu is symlinked to /usr/bin/rofi),
|
|
||||||
it will use the data passed from STDIN.
|
|
||||||
|
|
||||||
~/scripts/my_script.sh | rofi -dmenu
|
|
||||||
echo -e "Option #1\nOption #2\nOption #3" | rofi -dmenu
|
|
||||||
|
|
||||||
In both cases, rofi will output the user's selection to STDOUT.
|
|
||||||
|
|
||||||
## Switching Between Modi
|
|
||||||
|
|
||||||
Type `Shift-/Left/Right` to switch between active modi.
|
|
||||||
|
|
||||||
## Key bindings
|
|
||||||
|
|
||||||
| Key | Action |
|
|
||||||
|:-------------------------------------|:-------------------------------------------------------------------|
|
|
||||||
|`Ctrl-v, Insert` | Paste from clipboard |
|
|
||||||
|`Ctrl-Shift-v, Shift-Insert` | Paste primary selection |
|
|
||||||
|`Ctrl-w` | Clear the line |
|
|
||||||
|`Ctrl-u` | Delete till the start of line |
|
|
||||||
|`Ctrl-a` | Move to beginning of line |
|
|
||||||
|`Ctrl-e` | Move to end of line |
|
|
||||||
|`Ctrl-f, Right` | Move forward one character |
|
|
||||||
|`Alt-f, Ctrl-Right` | Move forward one word |
|
|
||||||
|`Ctrl-b, Left` | Move back one character |
|
|
||||||
|`Alt-b, Ctrl-Left` | Move back one word |
|
|
||||||
|`Ctrl-d, Delete` | Delete character |
|
|
||||||
|`Ctrl-Alt-d` | Delete word |
|
|
||||||
|`Ctrl-h, Backspace, Shift-Backspace` | Backspace (delete previous character) |
|
|
||||||
|`Ctrl-Alt-h` | Delete previous word |
|
|
||||||
|`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 |
|
|
||||||
|`Ctrl-Enter` | Use entered text as a command (in `ssh/run modi`) |
|
|
||||||
|`Shift-Enter` | Launch the application in a terminal (in run mode) |
|
|
||||||
|`Shift-Enter` | Return the selected entry and move to the next item while keeping Rofi open. (in dmenu) |
|
|
||||||
|`Shift-Right` | Switch to the next modi. The list can be customized with the -modi option. |
|
|
||||||
|`Shift-Left` | Switch to the previous modi. The list can be customized with the -modi option. |
|
|
||||||
|`Ctrl-Tab` | Switch to the next modi. The list can be customized with the -modi option. |
|
|
||||||
|`Ctrl-Shift-Tab` | Switch to the previous modi. The list can be customized with the -modi option. |
|
|
||||||
|`Ctrl-space` | Set selected item as input text. |
|
|
||||||
|`Shift-Del` | Delete entry from history. |
|
|
||||||
|`grave` | Toggle case sensitivity. |
|
|
||||||
|`Alt-grave` | Toggle levenshtein sort. |
|
|
||||||
|`Alt-Shift-S` | Take a screenshot and store it in the Pictures directory. |
|
|
||||||
|
|
||||||
For the full list of key bindings, see: `rofi -show keys` or `rofi -help`.
|
|
||||||
|
|
||||||
# Configuration
|
|
||||||
|
|
||||||
There are currently three methods of setting configuration options:
|
|
||||||
|
|
||||||
* Local configuration. Normally, depending on XDG, in `~/.config/rofi/config`. This uses the Xresources format.
|
|
||||||
* Xresources: A method of storing key values in the Xserver. See
|
|
||||||
[here](https://en.wikipedia.org/wiki/X_resources) for more information.
|
|
||||||
* Command line options: Arguments are passed to **Rofi**.
|
|
||||||
|
|
||||||
A distribution can ship defaults in `/etc/rofi.conf`.
|
|
||||||
|
|
||||||
The Xresources options and the command line options are aliased. To define option X set:
|
|
||||||
|
|
||||||
`rofi.X: value`
|
|
||||||
|
|
||||||
In the Xresources file. To set/override this from command line pass the same key
|
|
||||||
prefixed with '-':
|
|
||||||
|
|
||||||
`rofi -X value`
|
|
||||||
|
|
||||||
To get a list of available options formatted as Xresources entries, run:
|
|
||||||
|
|
||||||
`rofi -dump-Xresources`
|
|
||||||
|
|
||||||
or in a more readable format:
|
|
||||||
|
|
||||||
`rofi -help`
|
|
||||||
|
|
||||||
The configuration system supports the following types:
|
|
||||||
|
|
||||||
* String
|
|
||||||
* Integer (signed and unsigned)
|
|
||||||
* Char
|
|
||||||
* Boolean
|
|
||||||
|
|
||||||
The Boolean option has a non-default command line syntax, to enable option X you do:
|
|
||||||
|
|
||||||
`rofi -X`
|
|
||||||
|
|
||||||
to disable it:
|
|
||||||
|
|
||||||
`rofi -no-X`
|
|
||||||
|
|
||||||
# Manpage
|
# Manpage
|
||||||
|
|
||||||
For more detailed information, please see the [manpage](doc/rofi.1.markdown), the [wiki](https://github.com/davatorium/rofi/wiki), or the [forum](https://reddit.com/r/qtools/).
|
For more up to date information, please see the [manpage](doc/rofi.1.markdown), the [wiki](https://github.com/davatorium/rofi/wiki), or the [forum](https://reddit.com/r/qtools/).
|
||||||
|
|
||||||
# Installation
|
# Installation
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue