2014-03-01 16:27:52 +00:00
|
|
|
# Rofi
|
2012-07-18 12:24:04 +00:00
|
|
|
|
|
|
|
A popup window switcher roughly based on [superswitcher](http://code.google.com/p/superswitcher/), requiring only xlib and xft.
|
2014-01-10 12:38:38 +00:00
|
|
|
This version is based on the version from [Sean
|
2014-01-11 16:19:12 +00:00
|
|
|
Pringle](http://github.com/seanpringle/simpleswitcher). All credit for this great tool should go to him.
|
2012-07-18 12:24:04 +00:00
|
|
|
|
2014-03-18 07:40:23 +00:00
|
|
|
Some of the features of rofi are:
|
|
|
|
|
2012-07-18 12:24:04 +00:00
|
|
|
* Switcher centered on screen (or monitor for multi-head).
|
2012-07-18 12:24:40 +00:00
|
|
|
|
2014-01-09 23:04:57 +00:00
|
|
|
* Vertical list with two columns:
|
2014-03-18 07:40:23 +00:00
|
|
|
1. Desktop number (optional, not shown in i3 mode)
|
|
|
|
2. Window class.
|
|
|
|
3. Window title.
|
2012-07-18 12:24:40 +00:00
|
|
|
|
2012-07-18 12:24:04 +00:00
|
|
|
* Controls like dmenu:
|
|
|
|
* Type to filter windows.
|
2014-01-09 23:04:57 +00:00
|
|
|
* Tokonized filter. Type any word in any order to filter.
|
2012-07-18 12:24:04 +00:00
|
|
|
* Arrows to highlight selections.
|
|
|
|
* Return to select.
|
2012-07-18 12:24:40 +00:00
|
|
|
|
2014-01-14 05:36:12 +00:00
|
|
|
* Rudimentary run dialog
|
|
|
|
* Type to filter.
|
|
|
|
* Tokonized filter. Type any word in any order to filter.
|
|
|
|
* Arrows to highlight selections.
|
|
|
|
* Return to select.
|
2014-01-15 08:27:03 +00:00
|
|
|
* Shift-Return to run in terminal.
|
2014-03-18 07:40:23 +00:00
|
|
|
* Favorites list.
|
|
|
|
|
|
|
|
* Quickly ssh into remote machines
|
|
|
|
* Parses ~/.ssh/config to find hosts.
|
2014-01-14 05:36:12 +00:00
|
|
|
|
2013-02-16 17:41:40 +00:00
|
|
|
* Runs in background or once-off.
|
|
|
|
|
2014-03-18 07:40:23 +00:00
|
|
|
* Drop in dmenu replacement.
|
|
|
|
|
2014-01-10 12:38:38 +00:00
|
|
|
If compiled with I3 support, it should autodetect if I3 window manager is running.
|
2014-01-09 23:04:57 +00:00
|
|
|
|
2014-03-18 08:34:17 +00:00
|
|
|
## Usage
|
2014-01-09 23:04:57 +00:00
|
|
|
|
2013-02-16 17:41:40 +00:00
|
|
|
e.g.
|
2014-01-09 23:04:57 +00:00
|
|
|
|
2014-03-01 16:27:52 +00:00
|
|
|
bindsym $mod+Tab exec rofi -now -font "snap-10" -fg "#505050" -bg "#000000" -hlfg "#ffb964" -hlbg "#000000" -o 85
|
2014-01-10 12:38:38 +00:00
|
|
|
|
2014-03-18 08:34:17 +00:00
|
|
|
## Switching Between Modi
|
2014-01-16 08:21:48 +00:00
|
|
|
|
|
|
|
Type '?' (enter) to switch from Window list mode to Run mode and back.
|
2014-01-10 12:38:38 +00:00
|
|
|
|
2014-03-18 08:34:17 +00:00
|
|
|
## Compilation
|
2014-01-10 12:38:38 +00:00
|
|
|
|
2014-03-18 07:40:23 +00:00
|
|
|
If compiling from GIT, first run to generate the needed build files:
|
|
|
|
|
2014-03-17 22:48:32 +00:00
|
|
|
autoreconf --install
|
2014-03-18 07:40:23 +00:00
|
|
|
|
|
|
|
To build rofi, run the following steps:
|
|
|
|
|
|
|
|
mkdir build/
|
|
|
|
cd build/
|
|
|
|
../configure
|
2014-03-17 22:48:32 +00:00
|
|
|
make
|
|
|
|
make install
|
|
|
|
|
2014-03-18 07:40:23 +00:00
|
|
|
The build system will autodetect the i3 header file during compilation. If it fails, make sure you
|
|
|
|
have i3/ipc.h installed. Check config.log for more information.
|
|
|
|
|
2014-03-18 08:34:17 +00:00
|
|
|
## Dependencies
|
2014-03-18 07:40:23 +00:00
|
|
|
|
|
|
|
Rofi requires the following tools and libraries to be installed:
|
2014-01-10 12:38:38 +00:00
|
|
|
|
2014-03-18 07:40:23 +00:00
|
|
|
* libx11
|
|
|
|
* libxinerama
|
|
|
|
* libxdg-basedir
|
|
|
|
* libxft
|
2014-01-11 21:36:34 +00:00
|
|
|
|
2014-03-18 08:34:17 +00:00
|
|
|
## Configuration
|
|
|
|
|
|
|
|
There are 3 ways to configure rofi:
|
|
|
|
|
|
|
|
### 1. Pre-compile time
|
|
|
|
|
|
|
|
You can change the default behavior by modifying config/config.c
|
|
|
|
|
|
|
|
### 2. Xresources
|
|
|
|
|
|
|
|
Another solution is to configure it via X resources, e.g. add the following to your
|
|
|
|
Xresources file:
|
|
|
|
|
|
|
|
rofi.background: #333
|
|
|
|
rofi.foreground: #1aa
|
|
|
|
rofi.highlightbg: #1aa
|
|
|
|
rofi.highlightfg: #111
|
|
|
|
rofi.bordercolor: #277
|
|
|
|
rofi.font: times-10
|
|
|
|
rofi.padding: 3
|
|
|
|
rofi.lines: 5
|
|
|
|
rofi.borderwidth: 3
|
|
|
|
|
|
|
|
### 3. Runtime
|
|
|
|
|
|
|
|
All the above settings can be overridden by rofi's commandline flags.
|
|
|
|
|
|
|
|
## Archlinux
|
2014-01-11 21:36:34 +00:00
|
|
|
|
2014-03-01 16:27:52 +00:00
|
|
|
This version of rofi has been made available on the
|
2014-03-12 11:24:15 +00:00
|
|
|
[AUR](https://aur.archlinux.org/packages/rofi-git/).
|
2014-03-02 12:15:05 +00:00
|
|
|
|
2014-03-20 07:53:50 +00:00
|
|
|
## Contact
|
2014-03-02 12:15:05 +00:00
|
|
|
|
|
|
|
Issues, feature requests can be filed at the github [issue
|
|
|
|
tracker](https://github.com/DaveDavenport/rofi/issues).
|
|
|
|
|
|
|
|
If you need to ask a direct question or get support installing, please find us on IRC: #gmpc on
|
|
|
|
[freenode.net](https://webchat.freenode.net/?channels=#gmpc).
|
|
|
|
|