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

PATTERN

918       To launch commands (for example, when using the ssh launcher), the user
919       can  enter  the  used command-line. The following keys can be used that
920       will be replaced at runtime:
921
922       ·   {host}: the host to connect to
923
924       ·   {terminal}: the configured terminal (see -terminal-emulator)
925
926       ·   {ssh-client}: the configured ssh client (see -ssh-client)
927
928       ·   {cmd}: the command to execute
929
930       ·   {window}: the window ID of the selected window (in window-command)
931
932
933

DMENU REPLACEMENT

935       If argv[0] (calling command) is dmenu, rofi will start in  dmenu  mode.
936       This  way  it can be used as a drop-in replacement for dmenu. Just copy
937       or symlink rofi to dmenu in $PATH.
938
939
940
941           ln -s /usr/bin/rofi /usr/bin/dmenu
942
943
944

THEMING

946       The theme format below describes the old (pre version 1.4)  theme  for‐
947       mat. Please see rofi-theme(5) manpage for an updated manual.
948
949       The  theme  setup allows you to specify colors per state, similar to i3
950       Currently 3 states exist:
951
952       ·   normal: normal row
953
954       ·   urgent: highlighted row (urgent)
955
956       ·   active: highlighted row (active)
957
958
959
960       For each state, the following 5 colors must be set:
961
962       ·   bg: background color row
963
964       ·   fg: text color
965
966       ·   bgalt: background color alternating row
967
968       ·   hlfg: foreground color selected row
969
970       ·   hlbg: background color selected row
971
972
973
974       The window background and border color should be specified  separately.
975       The  key  color-window contains a tuple background,border,separator. An
976       example for Xresources file:
977
978
979
980           ! State:           ´bg´,     ´fg´,     ´bgalt´,  ´hlbg´,   ´hlfg´
981           rofi.color-normal: #fdf6e3,  #002b36,  #eee8d5,  #586e75,  #eee8d5
982           rofi.color-urgent: #fdf6e3,  #dc322f,  #eee8d5,  #dc322f,  #fdf6e3
983           rofi.color-active: #fdf6e3,  #268bd2,  #eee8d5,  #268bd2,  #fdf6e3
984
985           !                  ´background´, ´border´, ´separator´
986           rofi.color-window: #fdf6e3,      #002b36,  #002b36
987
988
989
990       Same settings can also be specified on command-line:
991
992
993
994           rofi -color-normal "#fdf6e3,#002b36,#eee8d5,#586e75,#eee8d5"
995
996
997

COLORS

999       RGB colors can be specified by either their  X11  name  or  hexadecimal
1000       notation. For example:
1001
1002
1003
1004           white
1005
1006
1007
1008       Or:
1009
1010
1011
1012           #FFFFFF
1013
1014
1015
1016       ARGB colors are also supported. These can be used to create a transpar‐
1017       ent window if (1) your Xserver supports TrueColor, and (2) you are run‐
1018       ning a composite manager. For example: argb:FF444444
1019
1020       Or:
1021
1022
1023
1024           #FF444444
1025
1026
1027
1028       The  first  two  fields  specify  the  alpha level. This determines the
1029       amount of transparency (00 everything, FF nothing).  The  other  fields
1030       represent the actual color, in hex.
1031
1032       Transparency can be used within rofi, for example if the selected back‐
1033       ground color is 50% transparent, the background  color  of  the  window
1034       will be visible through it.
1035

KEY BINDINGS

1037       rofi has the following key bindings:
1038
1039       ·   Ctrl-v, Insert: Paste from clipboard
1040
1041       ·   Ctrl-Shift-v, Shift-Insert: Paste primary selection
1042
1043       ·   Ctrl-u: Clear the line
1044
1045       ·   Ctrl-a: Beginning of line
1046
1047       ·   Ctrl-e: End of line
1048
1049       ·   Ctrl-f, Right: Forward one character
1050
1051       ·   Alt-f, Ctrl-Right: Forward one word
1052
1053       ·   Ctrl-b, Left: Back one character
1054
1055       ·   Alt-b, Ctrl-Left: Back one word
1056
1057       ·   Ctrl-d, Delete: Delete character
1058
1059       ·   Ctrl-Alt-d: Delete word
1060
1061       ·   Ctrl-h,  Backspace,  Shift-Backspace:  Backspace  (delete  previous
1062           character)
1063
1064       ·   Ctrl-Alt-h: Delete previous word
1065
1066       ·   Ctrl-j,Ctrl-m,Enter: Accept entry
1067
1068       ·   Ctrl-n,Down: Select next entry
1069
1070       ·   Ctrl-p,Up: Select previous entry
1071
1072       ·   Page Up: Go to previous page
1073
1074       ·   Page Down: Go to next page
1075
1076       ·   Ctrl-Page Up: Go to previous column
1077
1078       ·   Ctrl-Page Down: Go to next column
1079
1080       ·   Ctrl-Enter: Use entered text as a command (in ssh/run modi)
1081
1082       ·   Shift-Enter: Launch the application in a terminal (in run mode)
1083
1084       ·   Shift-Enter: Return the selected entry and move to  the  next  item
1085           while keeping rofi open. (in dmenu)
1086
1087       ·   Shift-Right:  Switch  to  the next mode. The list can be customized
1088           with the -switchers argument.
1089
1090       ·   Shift-Left: Switch to the previous mode. The list can be customized
1091           with the -switchers argument.
1092
1093       ·   Ctrl-Tab:  Switch to the next mode. The list can be customized with
1094           the -switchers argument.
1095
1096       ·   Ctrl-Shift-Tab: Switch to the previous mode. The list can  be  cus‐
1097           tomized with the -switchers argument.
1098
1099       ·   Ctrl-space: Set selected item as input text.
1100
1101       ·   Shift-Del: Delete entry from history.
1102
1103       ·   grave: Toggle case sensitivity.
1104
1105       ·   Alt-grave: Toggle sorting.
1106
1107       ·   Alt-Shift-S:  Take a screenshot and store it in the Pictures direc‐
1108           tory.
1109
1110
1111
1112       To get a full list of key bindings on the commandline, see rofi -h. The
1113       options starting with -kb are keybindings. Key bindings can be modified
1114       using the configuration systems. To get a searchable list of key  bind‐
1115       ings, run rofi -show keys.
1116
1117       A  key  binding  starting  with  !  will  act  when  all keys have been
1118       released.
1119

Available Modi

1121   Window
1122       Show a list of all the windows and allow switching between them. Press‐
1123       ing  the  delete-entry  binding  (shift-delete)  will close the window.
1124       Pressing the accept-custom binding (control-enter or shift-enter)  will
1125       run a command on the window. (See option window-command );
1126
1127   WindowCD
1128       Shows a list of the windows on the current desktop and allows switching
1129       between them. Pressing the  delete-entry  binding  (shift-delete)  will
1130       kill  the  window. Pressing the accept-custom binding (control-enter or
1131       shift-enter) will run a command on the window. (See option  window-com‐
1132       mand );
1133
1134   Run
1135       Shows a list of executables in $PATH and can launch them (optional in a
1136       terminal). Pressing the delete-entry binding (shift-delete) will remove
1137       this  entry  from  the  run history. Pressing the accept-custom binding
1138       (control-enter or shift-enter) will run the command in a terminal.
1139
1140   DRun
1141       Same as the run launches, but the list is created  from  the  installed
1142       desktop  files.  It automatically launches them in a terminal if speci‐
1143       fied  in  the  Desktop  File.   Pressing   the   delete-entry   binding
1144       (shift-delete)  will  remove  this entry from the run history. Pressing
1145       the accept-custom binding (control-enter or  shift-enter)  with  custom
1146       input (no entry matching) will run the command in a terminal.
1147
1148   SSH
1149       Shows  a  list of SSH targets based on your ssh config file, and allows
1150       to quickly ssh into them.
1151
1152   Keys
1153       Shows a searchable list of key bindings.
1154
1155   Script
1156       Allows custom scripted Modi to be added.
1157

FAQ

1159   The text in the window switcher is not nicely lined out.
1160       Try using a mono-space font.
1161
1162   The window is completely black.
1163       Check quotes used on the commandline: you might  have  used  ("smart
1164       quotes") instead of " ("machine quotes").
1165
1166   What does the icon in the top right show?
1167       The indicator shows:
1168
1169
1170
1171           ` ` Case insensitive and no sorting.
1172           `-` Case sensitivity enabled, no sorting.
1173           `+` Case insensitive and Sorting enabled
1174           `±` Sorting and Case sensitivity enabled"
1175
1176
1177

EXAMPLES

1179       Some basic usage examples of rofi:
1180
1181       Show the run dialog:
1182
1183
1184
1185           rofi -modi run -show run
1186
1187
1188
1189       Show the the run dialog, and allow switching to Desktop File run dialog
1190       (drun):
1191
1192
1193
1194           rofi -modi run,drun -show run
1195
1196
1197
1198       Combine the run and Desktop File run dialog (drun):
1199
1200
1201
1202           rofi -modi combi -show combi -combi-modi run,drun
1203
1204
1205
1206       Combine the run and Desktop File run dialog (drun), and allow switching
1207       to window switcher:
1208
1209
1210
1211           rofi -modi combi,window -show combi -combi-modi run,drun
1212
1213
1214
1215       Run  rofi  full monitor width at the top of the monitor like a dropdown
1216       menu:
1217
1218
1219
1220           rofi -show run -width 100 -location 1 -lines 5 -bw 2 -yoffset -2
1221
1222
1223
1224       Pop up a text message claiming that this is the end:
1225
1226
1227
1228           rofi -e "This is the end"
1229
1230
1231
1232       Pop up a text message in red, bold font claiming that this is still the
1233       end:
1234
1235
1236
1237           rofi -e "<span color=´red´><b>This is still the end</b></span>" -markup
1238
1239
1240
1241       Show all key bindings:
1242
1243
1244
1245           rofi -show keys
1246
1247
1248
1249       Use qalc to get a simple calculator in rofi:
1250
1251
1252
1253            rofi -show calc -modi "calc:qalc +u8 -nocurrencies"
1254
1255
1256

i3

1258       In  i3  http://i3wm.org/  you  want  to bind rofi to be launched on key
1259       release. Otherwise, it cannot grab the keyboard. See also the i3 manual
1260       http://i3wm.org/docs/userguide.html:
1261
1262       Some  tools  (such  as import or xdotool) might be unable to run upon a
1263       KeyPress event, because the  keyboard/pointer  is  still  grabbed.  For
1264       these  situations,  the  --release flag can be used, as it will execute
1265       the command after the keys have been released.
1266

LICENSE

1268       MIT/X11
1269
1270       Permission is hereby granted, free of charge, to any person obtaining
1271       a copy of this software and associated documentation files (the
1272       "Software"), to deal in the Software without restriction, including
1273       without limitation the rights to use, copy, modify, merge, publish,
1274       distribute, sublicense, and/or sell copies of the Software, and to
1275       permit persons to whom the Software is furnished to do so, subject to
1276       the following conditions:
1277
1278       The above copyright notice and this permission notice shall be
1279       included in all copies or substantial portions of the Software.
1280
1281       THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
1282       OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
1283       MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
1284       IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
1285       CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
1286       TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
1287       SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
1288

WEBSITE

1290       rofi website can be found here https://davedavenport.github.io/rofi/
1291

SUPPORT

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

DEBUGGING

1297       Please   see   this   https://github.com/DaveDavenport/rofi/wiki/Debug
1298       ging%20Rofi wiki entry.
1299

ISSUE TRACKER

1301       rofi issue tracker  can  be  found  here  https://github.com/DaveDaven
1302       port/rofi/issues
1303
1304       When  creating an issue, please read this https://github.com/DaveDaven
1305       port/rofi/blob/master/.github/CONTRIBUTING.md first.
1306

SEE ALSO

1308       rofi-sensible-terminal(1), dmenu(1),  rofi-theme(5),  rofi-theme-selec‐
1309       tor(1)
1310

AUTHOR

1312       Qball Cow qball@gmpclient.org
1313
1314       Rasmus Steinke rasi@xssn.at
1315
1316       Quentin Glidic sardemff7+rofi@sardemff7.net
1317
1318       Original code based on work by: Sean Pringle sean.pringle@gmail.com
1319
1320       For a full list of authors, check the AUTHORS file.
1321
1322
1323
1324                                   June 2019                           ROFI(1)
Impressum