1ROFI(1)                                                                ROFI(1)
2
3
4

NAME

6       rofi  -  A  window switcher, application launcher, ssh dialog and dmenu
7       replacement
8

SYNOPSIS

10       rofi [ -show mode ]|[ -dmenu ]|[ -e msg ] [ CONFIGURATION ]
11

DESCRIPTION

13       rofi is an X11 pop-up window switcher, run dialog,  dmenu  replacement,
14       and more. It focuses on being fast to use and have minimal distraction.
15       It supports keyboard and mouse navigation, type  to  filter,  tokenized
16       search and more.
17

USAGE

19       rofi´s  main  functionality is to assist in your workflow, allowing you
20       to quickly switch between windows, start applications  or  log  into  a
21       remote machine via ssh. There are different modi for different types of
22       actions.
23
24       rofi can also function as (drop-in) replacement for dmenu(1).
25
26   Running rofi
27       To launch rofi directly in a certain mode, specify  a  mode  with  rofi
28       -show <mode>. To show the run dialog:
29
30
31
32           rofi -show run
33
34
35
36   Emulating dmenu
37       rofi can emulate dmenu(1) (a dynamic menu for X) when launched with the
38       -dmenu flag.
39
40       The  website  for  dmenu   can   be   found   here   http://tools.suck
41       less.org/dmenu/.
42
43       rofi  does  not  aim to be 100% compatible with dmenu. There are simply
44       too many different flavors of dmenu. The idea is that the  basic  usage
45       command-line  flags  are  obeyed, theme-related flags are not. Besides,
46       rofi offers some extended features  (like  multi-select,  highlighting,
47       message bar, extra key bindings).
48
49   Display Error message
50       rofi error dialog can also be called from the command line.
51
52
53
54           rofi -e "my message"
55
56
57
58       Markup support can be enabled, see CONFIGURATION options.
59

CONFIGURATION

61       There  are  currently  three  methods  of setting configuration options
62       (evaluated in order below):
63
64       ·   System configuration file (for example /etc/rofi.conf).
65
66       ·   Xresources: A method of storing key values in the Xserver. See here
67           https://en.wikipedia.org/wiki/X_resources for more information.
68
69       ·   Rasi theme file: The new theme format can be used to set configura‐
70           tion values.
71
72       ·   Configuration File: This uses the same  format  as  the  Xresources
73           file.  By  default it looks in XDG_USER_CONFIG_DIR/rofi/config, but
74           can be overridden on commandline.  By  default  XDG_USER_CONFIG_DIR
75           defaults to $HOME/.config. (See rofi -h for current location). This
76           is the recommended way of configuring rofi.
77
78       ·   Command-line options: Arguments passed to rofi.
79
80
81
82       TIP: To get  a  template  config  file  run:  rofi  -dump-xresources  >
83       rofi-example.config. NOTE: In version 1.4.0 we support configuration in
84       a new format, a config for this can be generated by: rofi -dump-config
85
86       The Xresources file expects options starting with rofi. followed by its
87       name. An example to set the number of lines:
88
89
90
91           rofi.lines: 10
92
93
94
95       Command  line  options override settings from Xresources file. The same
96       option set as argument — prefixed with a ´-´:
97
98
99
100           rofi -lines 10
101
102
103
104       To get a list of available options  formatted  as  Xresources  entries,
105       run:
106
107
108
109           rofi -dump-xresources
110
111
112
113       The configuration system supports the following types:
114
115       ·   string
116
117       ·   integer (signed and unsigned)
118
119       ·   char
120
121       ·   Boolean
122
123
124
125       Boolean  options  have  a  non-default  command-line syntax. Example to
126       enable option X:
127
128
129
130           -X
131
132
133
134       To disable option X:
135
136
137
138           -no-X
139
140
141
142       Below is a list of the most important options:
143
144   General
145       -help
146
147       The help option shows the full list of commandline options and the cur‐
148       rent set value. These include dynamic (run-time generated) options.
149
150       -dump-xresources
151
152       Dump  the current active configuration in Xresources format to the com‐
153       mand-line. This does not validate all passed values (for example,  col‐
154       ors).
155
156       -threads num
157
158       Specify the number of threads rofi should use:
159
160       ·   0: Autodetect the number of supported hardware threads.
161
162       ·   1: Disable threading
163
164       ·   2..N:  Specify  the  maximum number of threads to use in the thread
165           pool.
166
167
168
169       -dmenu
170
171       Run rofi in dmenu mode. This allows for interactive scripts.  In  dmenu
172       mode,  rofi  reads  from STDIN, and output to STDOUT. A simple example,
173       displaying three pre-defined options:
174
175
176
177           echo -e "Option #1\nOption #2\nOption #3" | rofi -dmenu
178
179
180
181       Or get the options from a script:
182
183
184
185           ~/my_script.sh | rofi -dmenu
186
187
188
189       -show mode
190
191       Open rofi in a certain mode. Available modes  are  window,  run,  drun,
192       ssh,  combi. The special argument keys can be used to open a searchable
193       list of supported key bindings (see KEY BINDINGS)
194
195       To show the run-dialog:
196
197
198
199           rofi -show run
200
201
202
203       -modi mode1,mode1
204
205       Specify an ordered, comma-separated list of modes  to  enable.  Enabled
206       modes  can  be changed at runtime. Default key is Ctrl+Tab. If no modes
207       are specified, all modes will be enabled. To only show the run and  ssh
208       launcher:
209
210
211
212           rofi -modi "run,ssh" -show run
213
214
215
216       Custom  modes  can be added using the internal ´script´ mode. Each mode
217       has two parameters:
218
219
220
221           <name>:<script>
222
223
224
225       Example: Have a mode  ´Workspaces´  using  the  i3_switch_workspaces.sh
226       script:
227
228
229
230           rofi -modi "window,run,ssh,Workspaces:i3_switch_workspaces.sh" -show Workspaces
231
232
233
234       Notes:  The  I3 Window manager does not like commas in the command when
235       specifying an exec command. For that case ´#´ can be used as an separa‐
236       tor.
237
238       -case-sensitive
239
240       Start  in  case  sensitive mode. This option can be changed at run-time
241       using the -kb-toggle-case-sensitivity key binding.
242
243       -cycle
244
245       Cycle through the result list. Default is ´true´.
246
247       -filter filter
248
249       Filter the list by setting text in input bar to filter
250
251       -config filename
252
253       Load an alternative configuration file.
254
255       -scroll-method method
256
257       Select the scrolling method. 0: Per page, 1: continuous.
258
259       -no-show-match
260
261       Hide the indicator that shows what part of the string is matched.
262
263       -no-lazy-grab
264
265       Disables lazy grab, this forces the keyboard being grabbed  before  gui
266       is shown.
267
268       -no-plugins
269
270       Disable plugin loading.
271
272       -plugin-path directory
273
274       Specify the directory where rofi should look for plugins.
275
276       -show-icons
277
278       Show application icons in drun and window modes.
279
280       -drun-icon-theme
281
282       Specify  icon  theme  to  be used in drun mode if show-icons setting is
283       enabled. If not specified default theme from DE is  used,  Adwaita  and
284       gnome themes act as fallback themes.
285
286   Matching
287       -matching method
288
289       Specify  the matching algorithm used. Current the following methods are
290       supported.
291
292       ·   normal: match the int string
293
294       ·   regex: match a regex input
295
296       ·   glob: match a glob pattern
297
298       ·   fuzzy: do a fuzzy match
299
300           Default: normal
301
302
303
304       Note: glob matching might be slow for larger lists
305
306       -tokenize
307
308       Tokenize the input.
309
310       -drun-match-fields field1,field2,...
311
312       When using drun, match only with the specified  Desktop  entry  fields.
313       The different fields are:
314
315       ·   name: the application´s name
316
317       ·   generic: the application´s generic name
318
319       ·   exec: the application´s executable
320
321       ·   categories: the application´s categories
322
323       ·   comment: the application comment
324
325       ·   all: all of the above
326
327           Default: name,generic,exec,categories
328
329
330
331       -window-match-fields field1,field2,...
332
333       When  using window mode, match only with the specified fields. The dif‐
334       ferent fields are:
335
336       ·   title: window´s title
337
338       ·   class: window´s class
339
340       ·   role: window´s role
341
342       ·   name: window´s name
343
344       ·   desktop: window´s current desktop
345
346       ·   all: all of the above
347
348           Default: all
349
350
351
352   Layout
353       Most of the following options are deprecated and should  not  be  used.
354       Please  use  the  new  theme format to customize rofi. More information
355       about the new format can be found in the rofi-theme(5) manpage.
356
357       -lines
358
359       Maximum number of lines to show before scrolling.
360
361
362
363           rofi -lines 25
364
365
366
367       Default: 15
368
369       -columns
370
371       Number of columns to show before scrolling.
372
373
374
375           rofi -columns 2
376
377
378
379       Default: 1
380
381       -width [value]
382
383       Set width of menu. [value] is specified in percentage.
384
385
386
387           rofi -width 60
388
389
390
391       If [value] is larger then 100, size is set in pixels. Example to span a
392       full-HD monitor:
393
394
395
396           rofi -width 1920
397
398
399
400       If  [value]  is  negative,  it tries to estimates a character width. To
401       show 30 characters in a row:
402
403
404
405           rofi -width -30
406
407
408
409       Character width is a rough estimate, and  might  not  be  correct,  but
410       should work for most monospaced fonts.
411
412       Default: 50
413
414       -location
415
416       Specify where the window should be located. The numbers map to the fol‐
417       lowing locations on screen:
418
419
420
421             1 2 3
422             8 0 4
423             7 6 5
424
425
426
427       Default: 0
428
429       -fixed-num-lines
430
431       Keep a fixed number of visible lines (See the -lines option.)
432
433       -padding
434
435       Define the inner margin of the window.
436
437       Default: 5
438
439       -fullscreen
440
441       Use the full-screen height and width.
442
443       -sidebar-mode
444
445       Open in sidebar-mode. In this mode a list of all enabled modes is shown
446       at the bottom. (See -modi option) To show sidebar, use:
447
448
449
450           rofi -show run -sidebar-mode -lines 0
451
452
453
454       -auto-select
455
456       When one entry is left, automatically select it.
457
458       -m num
459
460       -m name
461
462       -monitor num
463
464       -monitor name
465
466       Select  monitor  to  display  rofi on. It accepts as input: primary (if
467       primary output is set), the xrandr output name, or integer  number  (in
468       order of detection). Negative numbers are handled differently:
469
470       ·   -1: the currently focused monitor.
471
472       ·   -2:  the  currently focused window (that is, rofi will be displayed
473           on top of the focused window).
474
475       ·   -3: Position at mouse (overrides the location setting to get normal
476           context menu behavior.)
477
478       ·   -4: the monitor with the focused window.
479
480       ·   -5: the monitor that shows the mouse pointer.
481
482           Default: -5
483
484
485
486       See rofi -h output for the detected monitors, their position, and size.
487
488       -theme filename
489
490       Path  to  the  new theme file format. This overrides the old theme set‐
491       tings.
492
493       -theme-str string
494
495       Allow theme parts to be specified on the command line as an override.
496
497       For example:
498
499
500
501           rofi -theme-str ´#window { fullscreen: true; }´
502
503
504
505       This option can be specified multiple times.
506
507       -dpi number
508
509       Override the default DPI setting. If set to 0, it tries to  auto-detect
510       based on X11 screen size (similar to i3 and GTK). If set to 1, it tries
511       to auto-detect based on the size of the monitor that rofi is  displayed
512       on (similar to latest Qt 5).
513
514   PATTERN setting
515       -terminal
516
517       Specify which terminal to start.
518
519
520
521           rofi -terminal xterm
522
523
524
525       Pattern: {terminal} Default: x-terminal-emulator
526
527       -ssh-client client
528
529       Override the used ssh client.
530
531       Pattern: {ssh-client} Default: ssh
532
533   SSH settings
534       -ssh-command cmd
535
536       Set  the  command  to  execute when starting a ssh session. The pattern
537       {host} is replaced by the selected ssh entry.
538
539       Pattern: {ssh-client} Default: {terminal} -e {ssh-client} {host}
540
541       -parse-hosts
542
543       Parse the /etc/hosts file for entries.
544
545       Default: disabled
546
547       -parse-known-hosts -no-parse-known-hosts
548
549       Parse the ~/.ssh/known_hosts file for entries.
550
551       Default: enabled
552
553   Run settings
554       -run-command cmd
555
556       Set command ({cmd}) to execute when running an  application.  See  PAT‐
557       TERN.
558
559       Default: {cmd}
560
561       -run-shell-command cmd
562
563       Set command to execute when running an application in a shell. See PAT‐
564       TERN.
565
566       Default: {terminal} -e {cmd}
567
568       -run-list-command cmd
569
570       If set, use an external tool to generate list of  executable  commands.
571       Uses run-command.
572
573       Default: {cmd}
574
575   Window switcher settings
576       -window-format format
577
578       Format what is being displayed for windows.
579
580       format: {field[:len]}
581
582       field:
583
584       ·   w: desktop name
585
586       ·   t: title of window
587
588       ·   n: name
589
590       ·   r: role
591
592       ·   c: class
593
594
595
596       len: maximum field length (0 for auto-size). If length and window width
597       are negative, field length is width - len. if length is  positive,  the
598       entry will be truncated or padded to fill that length.
599
600       default: {w} {c} {t}
601
602       -window-command cmd
603
604       Set command to execute on selected window for a custom action. See PAT‐
605       TERN.
606
607       Default: "xkill -id {window}"
608
609   Combi settings
610       -combi-modi mode1,mode2
611
612       The modi to combine in combi mode. For syntax to see -modi. To get  one
613       merge view, of window,run, and ssh:
614
615
616
617           rofi -show combi -combi-modi "window,run,ssh" -modi combi
618
619
620
621       Notes:  The  I3 Window manager does not like commas in the command when
622       specifying an exec command. For that case ´#´ can be used as a  separa‐
623       tor.
624
625   History and Sorting
626       -disable-history -no-disable-history (re-enable history)
627
628       Disable history
629
630       -sort to enable -no-sort to disable
631
632       Enable,  disable  sorting.  This setting can be changed at runtime (see
633       -kb-toggle-sort).
634
635       -levenshtein-sort to enable -no-levenshtein-sort to disable
636
637       When searching, always sort the result based on  levenshtein  distance.
638       If  disabled,  fzf  sorting  is  used  when  fuzzy matching is used. If
639       enabled, levenshtein sorting is used event fuzzy matching is used.
640
641       For other matching modes sorting is always done via levenshtein-sort.
642
643   Dmenu specific
644       -sep separator
645
646       Separator for dmenu. Example: To show a list of ´a´ to ´e´ with ´|´  as
647       a separator:
648
649
650
651           echo "a|b|c|d|e" | rofi -sep ´|´ -dmenu
652
653
654
655       -p prompt
656
657       Specify the prompt to show in dmenu mode. For example, select ´monkey´,
658       a,b,c,d, or e.
659
660
661
662           echo "a|b|c|d|e" | rofi -sep ´|´ -dmenu -p "monkey:"
663
664
665
666       Default: dmenu
667
668       -selected-row selected row
669
670       Select a certain row.
671
672       Default: 0
673
674       -l number of lines to show
675
676       Maximum number of lines the menu may show before scrolling.
677
678
679
680           rofi -lines 25
681
682
683
684       Default: 15
685
686       -i
687
688       Makes dmenu searches case-insensitive
689
690       -a X
691
692       Active row, mark row X as active (starting at 0). You can specify  sin‐
693       gle  element: -a 3 A range: -a 3-8 or a set of rows: -a 0,2 or any com‐
694       bination: -a 0,2-3,9
695
696       -u X
697
698       Urgent row, mark row X as urgent (starting at 0). You can specify  sin‐
699       gle  element: -u 3 A range: -u 3-8 or a set of rows: -u 0,2 or any com‐
700       bination: -u 0,2-3,9
701
702       -only-match
703
704       Only return a selected item, do  not  allow  custom  entry.  This  mode
705       always returns an entry, or returns directly when no entries given.
706
707       -no-custom
708
709       Only  return  a  selected  item,  do  not allow custom entry. This mode
710       returns directly when no entries given.
711
712       -format format
713
714       Allows the output of dmenu to be customized (N is the total  number  of
715       input entries):
716
717       ·   ´s´ selected string
718
719       ·   ´i´ index (0 - (N-1))
720
721       ·   ´d´ index (1 - N)
722
723       ·   ´q´ quote string
724
725       ·   ´f´ filter string (user input)
726
727       ·   ´F´ quoted filter string (user input)
728
729
730
731       Default: ´s´
732
733       -select string
734
735       Select first line that matches the given string
736
737       -mesg string
738
739       Add  a  message line below the filter entry box. Supports pango markup.
740       For more  information  on  supported  markup  see  here  https://devel
741       oper.gnome.org/pango/stable/PangoMarkupFormat.html
742
743       -normal-window
744
745       Make  rofi  react  like a normal application window. Useful for scripts
746       like Clerk that are basically an application.
747
748       -dump
749
750       Dump the filtered list to stdout and quit. This can be used to get  the
751       list as rofi would filter it. Use together with -filter command.
752
753       -input file
754
755       Reads from file instead of stdin.
756
757       -password
758
759       Hide the input text. This should not be considered secure!
760
761       -markup-rows
762
763       Tell  rofi that DMenu input is pango markup encoded, and should be ren‐
764       dered. See  here  https://developer.gnome.org/pango/stable/PangoMarkup
765       Format.html for details about pango markup.
766
767       -multi-select
768
769       Allow  multiple  lines to be selected. Adds a small selection indicator
770       to the left of each entry.
771
772       -sync
773
774       Force rofi mode to first read all data from stdin  before  showing  the
775       selection window. This is original dmenu behavior.
776
777       Note: the default asynchronous mode will also be automatically disabled
778       if used  with  conflicting  options,  such  as  -dump,  -only-match  or
779       -auto-select.
780
781       -async-pre-read number
782
783       Reads  the first 25 entries blocking, then switches to async mode. This
784       makes it feel more ´snappy´.
785
786       default: 25
787
788   Message dialog
789       -e message
790
791       Pops up a message dialog (used internally for showing errors) with mes‐
792       sage. Message can be multi-line.
793
794   Other
795       -pid path
796
797       Make  rofi  create  a  pid file and check this on startup. The pid file
798       prevents multiple rofi instances from running simultaneously.  This  is
799       useful when running rofi from a key-binding daemon.
800
801       -fake-transparency
802
803       Enable  fake  transparency. This only works with transparent background
804       color in the theme.
805
806       -fake-background
807
808       Select what to use as background for fake  transparency.  This  can  be
809       ´background´,  ´screenshot´  or a path to an image file (currently only
810       supports png).
811
812       -display-{mode} string
813
814       Set the  name  to  use  for  mode.  This  is  used  as  prompt  and  in
815       combi-browser.
816
817       -click-to-exit -no-click-to-exit
818
819       Click the mouse outside of the rofi window to exit.
820
821       Default: enabled
822
823   Debug
824       -no-config
825
826       Disable parsing of configuration. This runs rofi in stock mode.
827
828       -no-plugins
829
830       Disables the loading of plugins.
831
832       To  get  a  trace  with  (lots of) debug information, set the following
833       environment variable when executing rofi:
834
835
836
837           G_MESSAGES_DEBUG=all
838
839
840
841       The trace can be filtered by only outputting the relevant domains,  for
842       example:
843
844
845
846           G_MESSAGES_DEBUG=Dialogs.DRun
847
848
849
850       For more information on debugging, see the wiki https://github.com/Dav
851       eDavenport/rofi/wiki/Debugging%20Rofi
852

PATTERN

854       To launch commands (for example, when using the ssh launcher), the user
855       can  enter  the  used command-line. The following keys can be used that
856       will be replaced at runtime:
857
858       ·   {host}: the host to connect to
859
860       ·   {terminal}: the configured terminal (see -terminal-emulator)
861
862       ·   {ssh-client}: the configured ssh client (see -ssh-client)
863
864       ·   {cmd}: the command to execute
865
866       ·   {window}: the window ID of the selected window (in window-command)
867
868
869

DMENU REPLACEMENT

871       If argv[0] (calling command) is dmenu, rofi will start in  dmenu  mode.
872       This  way  it can be used as a drop-in replacement for dmenu. Just copy
873       or symlink rofi to dmenu in $PATH.
874
875
876
877           ln -s /usr/bin/rofi /usr/bin/dmenu
878
879
880

THEMING

882       The theme format below describes the old (pre version 1.4)  theme  for‐
883       mat. Please see rofi-theme(5) manpage for an updated manual.
884
885       The  theme  setup allows you to specify colors per state, similar to i3
886       Currently 3 states exist:
887
888       ·   normal: normal row
889
890       ·   urgent: highlighted row (urgent)
891
892       ·   active: highlighted row (active)
893
894
895
896       For each state, the following 5 colors must be set:
897
898       ·   bg: background color row
899
900       ·   fg: text color
901
902       ·   bgalt: background color alternating row
903
904       ·   hlfg: foreground color selected row
905
906       ·   hlbg: background color selected row
907
908
909
910       The window background and border color should be specified  separately.
911       The  key  color-window contains a tuple background,border,separator. An
912       example for Xresources file:
913
914
915
916           ! State:           ´bg´,     ´fg´,     ´bgalt´,  ´hlbg´,   ´hlfg´
917           rofi.color-normal: #fdf6e3,  #002b36,  #eee8d5,  #586e75,  #eee8d5
918           rofi.color-urgent: #fdf6e3,  #dc322f,  #eee8d5,  #dc322f,  #fdf6e3
919           rofi.color-active: #fdf6e3,  #268bd2,  #eee8d5,  #268bd2,  #fdf6e3
920
921           !                  ´background´, ´border´, ´separator´
922           rofi.color-window: #fdf6e3,      #002b36,  #002b36
923
924
925
926       Same settings can also be specified on command-line:
927
928
929
930           rofi -color-normal "#fdf6e3,#002b36,#eee8d5,#586e75,#eee8d5"
931
932
933

COLORS

935       RGB colors can be specified by either their  X11  name  or  hexadecimal
936       notation. For example:
937
938
939
940           white
941
942
943
944       Or:
945
946
947
948           #FFFFFF
949
950
951
952       ARGB colors are also supported. These can be used to create a transpar‐
953       ent window if (1) your Xserver supports TrueColor, and (2) you are run‐
954       ning a composite manager. For example: argb:FF444444
955
956       Or:
957
958
959
960           #FF444444
961
962
963
964       The  first  two  fields  specify  the  alpha level. This determines the
965       amount of transparency (00 everything, FF nothing).  The  other  fields
966       represent the actual color, in hex.
967
968       Transparency can be used within rofi, for example if the selected back‐
969       ground color is 50% transparent, the background  color  of  the  window
970       will be visible through it.
971

KEY BINDINGS

973       rofi has the following key bindings:
974
975       ·   Ctrl-v, Insert: Paste from clipboard
976
977       ·   Ctrl-Shift-v, Shift-Insert: Paste primary selection
978
979       ·   Ctrl-u: Clear the line
980
981       ·   Ctrl-a: Beginning of line
982
983       ·   Ctrl-e: End of line
984
985       ·   Ctrl-f, Right: Forward one character
986
987       ·   Alt-f: Forward one word
988
989       ·   Ctrl-b, Left: Back one character
990
991       ·   Alt-b: Back one word
992
993       ·   Ctrl-d, Delete: Delete character
994
995       ·   Ctrl-Alt-d: Delete word
996
997       ·   Ctrl-h, Backspace: Backspace (delete previous character)
998
999       ·   Ctrl-Alt-h: Delete previous word
1000
1001       ·   Ctrl-j,Ctrl-m,Enter: Accept entry
1002
1003       ·   Ctrl-n,Down: Select next entry
1004
1005       ·   Ctrl-p,Up: Select previous entry
1006
1007       ·   Page Up: Go to previous page
1008
1009       ·   Page Down: Go to next page
1010
1011       ·   Ctrl-Page Up: Go to previous column
1012
1013       ·   Ctrl-Page Down: Go to next column
1014
1015       ·   Ctrl-Enter: Use entered text as a command (in ssh/run modi)
1016
1017       ·   Shift-Enter: Launch the application in a terminal (in run mode)
1018
1019       ·   Shift-Enter:  Return  the  selected entry and move to the next item
1020           while keeping rofi open. (in dmenu)
1021
1022       ·   Shift-Right: Switch to the next modi. The list  can  be  customized
1023           with the -switchers argument.
1024
1025       ·   Shift-Left: Switch to the previous modi. The list can be customized
1026           with the -switchers argument.
1027
1028       ·   Ctrl-Tab: Switch to the next modi. The list can be customized  with
1029           the -switchers argument.
1030
1031       ·   Ctrl-Shift-Tab:  Switch  to the previous modi. The list can be cus‐
1032           tomized with the -switchers argument.
1033
1034       ·   Ctrl-space: Set selected item as input text.
1035
1036       ·   Shift-Del: Delete entry from history.
1037
1038       ·   grave: Toggle case sensitivity.
1039
1040       ·   Alt-grave: Toggle levenshtein sorting.
1041
1042       ·   Alt-Shift-S: Take a screenshot and store it in the Pictures  direc‐
1043           tory.
1044
1045
1046
1047       To get a full list of key bindings on the commandline, see rofi -h. The
1048       options starting with -kb are keybindings. Key bindings can be modified
1049       using  the configuration systems. To get a searchable list of key bind‐
1050       ings, run rofi -show keys.
1051
1052       A key binding starting  with  !  will  act  when  all  keys  have  been
1053       released.
1054

Available Modi

1056   Window
1057       Show a list of all the windows and allow switching between them. Press‐
1058       ing the delete-entry binding  (shift-delete)  will  close  the  window.
1059       Pressing  the accept-custom binding (control-enter or shift-enter) will
1060       run a command on the window. (See option window-command );
1061
1062   WindowCD
1063       Shows a list of the windows on the current desktop and allows switching
1064       between  them.  Pressing  the  delete-entry binding (shift-delete) will
1065       kill the window. Pressing the accept-custom binding  (control-enter  or
1066       shift-enter)  will run a command on the window. (See option window-com‐
1067       mand );
1068
1069   Run
1070       Shows a list of executables in $PATH and can launch them (optional in a
1071       terminal). Pressing the delete-entry binding (shift-delete) will remove
1072       this entry from the run history.  Pressing  the  accept-custom  binding
1073       (control-enter or shift-enter) will run the command in a terminal.
1074
1075   DRun
1076       Same  as  the  run launches, but the list is created from the installed
1077       desktop files. It automatically launches them in a terminal  if  speci‐
1078       fied   in   the   Desktop   File.  Pressing  the  delete-entry  binding
1079       (shift-delete) will remove this entry from the  run  history.  Pressing
1080       the  accept-custom  binding  (control-enter or shift-enter) with custom
1081       input (no entry matching) will run the command in a terminal.
1082
1083   SSH
1084       Shows a list of SSH targets based on your ssh config file,  and  allows
1085       to quickly ssh into them.
1086
1087   Keys
1088       Shows a searchable list of key bindings.
1089
1090   Script
1091       Allows custom scripted Modi to be added.
1092

FAQ

1094   The text in the window switcher is not nicely lined out.
1095       Try using a mono-space font.
1096
1097   The window is completely black.
1098       Check  quotes  used  on  the commandline: you might have used ("smart
1099       quotes") instead of " ("machine quotes").
1100
1101   What does the icon in the top right show?
1102       The indicator shows:
1103
1104
1105
1106           ` ` Case insensitive and no sorting.
1107           `-` Case sensitivity enabled, no sorting.
1108           `+` Case insensitive and Sorting enabled
1109           `±` Sorting and Case sensitivity enabled"
1110
1111
1112

EXAMPLES

1114       Some basic usage examples of rofi:
1115
1116       Show the run dialog:
1117
1118
1119
1120           rofi -modi run -show run
1121
1122
1123
1124       Show the the run dialog, and allow switching to Desktop File run dialog
1125       (drun):
1126
1127
1128
1129           rofi -modi run,drun -show run
1130
1131
1132
1133       Combine the run and Desktop File run dialog (drun):
1134
1135
1136
1137           rofi -modi combi -show combi -combi-modi run,drun
1138
1139
1140
1141       Combine the run and Desktop File run dialog (drun), and allow switching
1142       to window switcher:
1143
1144
1145
1146           rofi -modi combi,window -show combi -combi-modi run,drun
1147
1148
1149
1150       Run rofi full monitor width at the top of the monitor like  a  dropdown
1151       menu:
1152
1153
1154
1155           rofi -show run -width 100 -location 1 -lines 5 -bw 2 -yoffset -2
1156
1157
1158
1159       Get a colored list of available wi-fi networks:
1160
1161
1162
1163           tty-pipe nmcli device wifi | out2html -p | rofi -dmenu -markup-rows
1164
1165
1166
1167       Pop up a text message claiming that this is the end:
1168
1169
1170
1171           rofi -e "This is the end"
1172
1173
1174
1175       Pop up a text message in red, bold font claiming that this is still the
1176       end:
1177
1178
1179
1180           rofi -e "<span color=´red´><b>This is still the end</b></span>" -markup
1181
1182
1183
1184       Show all key bindings:
1185
1186
1187
1188           rofi -show keys
1189
1190
1191
1192       Use qalc to get a simple calculator in rofi:
1193
1194
1195
1196            rofi -show calc -modi "calc:qalc +u8 -nocurrencies"
1197
1198
1199

i3

1201       In i3 http://i3wm.org/ you want to bind rofi  to  be  launched  on  key
1202       release. Otherwise, it cannot grab the keyboard. See also the i3 manual
1203       http://i3wm.org/docs/userguide.html:
1204
1205       Some tools (such as import or xdotool) might be unable to  run  upon  a
1206       KeyPress  event,  because  the  keyboard/pointer  is still grabbed. For
1207       these situations, the --release flag can be used, as  it  will  execute
1208       the command after the keys have been released.
1209

LICENSE

1211       MIT/X11
1212
1213       Permission is hereby granted, free of charge, to any person obtaining
1214       a copy of this software and associated documentation files (the
1215       "Software"), to deal in the Software without restriction, including
1216       without limitation the rights to use, copy, modify, merge, publish,
1217       distribute, sublicense, and/or sell copies of the Software, and to
1218       permit persons to whom the Software is furnished to do so, subject to
1219       the following conditions:
1220
1221       The above copyright notice and this permission notice shall be
1222       included in all copies or substantial portions of the Software.
1223
1224       THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
1225       OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
1226       MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
1227       IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
1228       CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
1229       TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
1230       SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
1231

WEBSITE

1233       rofi website can be found here https://davedavenport.github.io/rofi/
1234

SUPPORT

1236       rofi  support  can be obtained here irc://irc.freenode.net/#rofi (#rofi
1237       on irc.freenode.net), or via the forum https://reddit.com/r/qtools//
1238

DEBUGGING

1240       Please   see   this   https://github.com/DaveDavenport/rofi/wiki/Debug
1241       ging%20Rofi wiki entry.
1242

ISSUE TRACKER

1244       rofi  issue  tracker  can  be  found here https://github.com/DaveDaven
1245       port/rofi/issues
1246
1247       When creating an issue, please read this  https://github.com/DaveDaven
1248       port/rofi/blob/master/.github/CONTRIBUTING.md first.
1249

SEE ALSO

1251       rofi-sensible-terminal(1),  dmenu(1),  rofi-theme(5), rofi-theme-selec‐
1252       tor(1)
1253

AUTHOR

1255       Qball Cow qball@gmpclient.org
1256
1257       Rasmus Steinke rasi@xssn.at
1258
1259       Quentin Glidic sardemff7+rofi@sardemff7.net
1260
1261       Original code based on work by: Sean Pringle sean.pringle@gmail.com
1262
1263       For a full list of authors, check the AUTHORS file.
1264
1265
1266
1267                                 December 2017                         ROFI(1)
Impressum