1
0
Fork 0
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:
Dave Davenport 2021-04-22 11:10:28 +02:00 committed by GitHub
parent 413eddd825
commit 7824b1c84e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

194
README.md
View file

@ -46,195 +46,25 @@ Its main features are:
* Easily extensible using scripts
* 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**).
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)
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`
**Rofi** is known to work on Linux and BSD.
# 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