1ROFI(1) General Commands Manual ROFI(1)
2
3
4
6 rofi - A window switcher, application launcher, ssh dialog and dmenu
7 replacement
8
9
11 rofi [ -show mode ]|[ -dmenu ]|[ -e msg ] [ CONFIGURATION ]
12
13
15 rofi is an X11 pop-up window switcher, run dialog, dmenu replacement,
16 and more. It focuses on being fast to use and have minimal distraction.
17 It supports keyboard and mouse navigation, type to filter, tokenized
18 search and more.
19
20
22 rofi's main functionality is to assist in your workflow, allowing you
23 to quickly switch between windows, start applications or log into a
24 remote machine via ssh. There are different modi for different types
25 of actions.
26
27
28 rofi can also function as (drop-in) replacement for dmenu(1).
29
30
31 Running rofi
32 To launch rofi directly in a certain mode, specify a mode with rofi
33 -show <mode>. To show the run dialog:
34
35
36 rofi -show run
37
38
39
40 Emulating dmenu
41 rofi can emulate dmenu(1) (a dynamic menu for X) when launched with the
42 -dmenu flag.
43
44
45 The website for dmenu can be found here ⟨http://tools.suck‐
46 less.org/dmenu/⟩.
47
48
49 rofi does not aim to be 100% compatible with dmenu. There are simply
50 too many different flavors of dmenu. The idea is that the basic usage
51 command-line flags are obeyed, theme-related flags are not. Besides,
52 rofi offers some extended features (like multi-select, highlighting,
53 message bar, extra key bindings).
54
55
56 Display Error message
57 rofi error dialog can also be called from the command line.
58
59
60 rofi -e "my message"
61
62
63
64 Markup support can be enabled, see CONFIGURATION options.
65
66
68 There are currently three methods of setting configuration options
69 (evaluated in order below):
70
71 · System configuration file (for example /etc/rofi.rasi or old format
72 /etc/rofi.conf). It first checks XDG_CONFIG_DIRS and then
73 SYSCONFDIR (that is passed at compile time). It loads the first con‐
74 fig file it finds, it does not merge multiple system configuration
75 files.
76
77 · Xresources: A method of storing key values in the Xserver. See here
78 ⟨https://en.wikipedia.org/wiki/X_resources⟩ for more information.
79
80 · Rasi theme file: The new theme format can be used to set configura‐
81 tion values.
82
83 · Configuration File: This uses the same format as the Xresources file.
84 By default it looks in XDG_CONFIG_HOME/rofi/config, but can be over‐
85 ridden on commandline. By default XDG_CONFIG_HOME defaults to
86 $HOME/.config. (See rofi -h for current location). This is the rec‐
87 ommended way of configuring rofi.
88
89 · Command-line options: Arguments passed to rofi.
90
91
92 TIP: To get a template config file run: rofi -dump-xresources >
93 rofi-example.config.
94
95
96 NOTE: In version 1.4.0 we support configuration in a new format, a con‐
97 fig for this can be generated by: rofi -dump-config > config.rasi
98
99
100 NOTE: If you want to use the new configuration format, the config file
101 should be named config.rasi.
102
103
104 NOTE: You can upgrade to the new configuration file format using rofi
105 -upgrade-config
106
107
108 The Xresources file expects options starting with rofi. followed by its
109 name. An example to set the number of lines:
110
111
112 rofi.lines: 10
113
114
115
116 Command-line options override settings from the Xresources file. The
117 same option set as argument — prefixed with a '-':
118
119
120 rofi -lines 10
121
122
123
124 To get a list of available options formatted as Xresources entries,
125 run:
126
127
128 rofi -dump-xresources
129
130
131
132 The configuration system supports the following types:
133
134 · string
135
136 · integer (signed and unsigned)
137
138 · char
139
140 · Boolean
141
142
143 Boolean options have a non-default command-line syntax. Example to
144 enable option X:
145
146
147 -X
148
149
150
151 To disable option X:
152
153
154 -no-X
155
156
157
158 Below is a list of the most important options:
159
160
161 General
162 -help
163
164
165 The help option shows the full list of command-line options and the
166 current set values. These include dynamic (run-time generated)
167 options.
168
169
170 -version
171
172
173 Show the rofi version and exit.
174
175
176 -dump-config
177
178
179 Dump the current active configuration, in rasi format, to stdout and
180 exit. Information about the rasi format can be found in the
181 rofi-theme(5) manpage.
182
183
184 -dump-theme
185
186
187 Dump the current active theme, in rasi format, to stdout and exit.
188
189
190 -dump-xresources
191
192
193 Dump the current active configuration, in Xresources format, to stdout.
194 This does not validate all passed values (for example, colors).
195
196
197 -threads num
198
199
200 Specify the number of threads rofi should use:
201
202 · 0: Autodetect the number of supported hardware threads.
203
204 · 1: Disable threading
205
206 · 2..N: Specify the maximum number of threads to use in the thread
207 pool.
208
209
210 -display display
211
212
213 The X server to contact. Default is $DISPLAY.
214
215
216 -dmenu
217
218
219 Run rofi in dmenu mode. This allows for interactive scripts. In dmenu
220 mode, rofi reads from STDIN, and output to STDOUT. A simple example,
221 displaying three pre-defined options:
222
223
224 echo -e "Option #1\nOption #2\nOption #3" | rofi -dmenu
225
226
227
228 Or get the options from a script:
229
230
231 /my_script.sh | rofi -dmenu
232
233
234
235 -show mode
236
237
238 Open rofi in a certain mode. Available modes are window, run, drun,
239 ssh, combi. The special argument keys can be used to open a searchable
240 list of supported key bindings (see KEY BINDINGS)
241
242
243 To show the run-dialog:
244
245
246 rofi -show run
247
248
249
250 -modi mode1,mode2
251
252
253 Specify an ordered, comma-separated list of modes to enable. Enabled
254 modes can be changed at runtime. Default key is Ctrl+Tab. If no modes
255 are specified, all configured modes will be enabled. To only show the
256 run and ssh launcher:
257
258
259 rofi -modi "run,ssh" -show run
260
261
262
263 Custom modes can be added using the internal script mode. Each such
264 mode has two parameters:
265
266
267 <name>:<script>
268
269
270
271 Example: Have a mode called 'Workspaces' using the
272 i3_switch_workspaces.sh script:
273
274
275 rofi -modi "window,run,ssh,Workspaces:i3_switch_workspaces.sh" -show Workspaces
276
277
278
279 Notes: The i3 window manager does not like commas in the command when
280 specifying an exec command. For that case '#' can be used as an sepa‐
281 rator.
282
283
284 -case-sensitive
285
286
287 Start in case sensitive mode. This option can be changed at run-time
288 using the -kb-toggle-case-sensitivity key binding.
289
290
291 -cycle
292
293
294 Cycle through the result list. Default is 'true'.
295
296
297 -filter filter
298
299
300 Filter the list by setting text in input bar to filter
301
302
303 -config filename
304
305
306 Load an alternative configuration file.
307
308
309 -cache-dir filename
310
311
312 Directory that is used to place temporary files, like history.
313
314
315 -scroll-method method
316
317
318 Select the scrolling method. 0: Per page, 1: continuous.
319
320
321 -[no-]show-match
322
323
324 Show the indicator that shows what part of the string is matched.
325
326
327 Default: *true*
328
329
330
331 -normalize-match
332
333
334 Normalize the string before matching, so o will match ö, and é matches
335 e. This is not a perfect implementation, but works. For now it dis‐
336 abled highlighting of the matched part.
337
338
339 -no-lazy-grab
340
341
342 Disables lazy grab, this forces the keyboard being grabbed before gui
343 is shown.
344
345
346 -no-plugins
347
348
349 Disable plugin loading.
350
351
352 -plugin-path directory
353
354
355 Specify the directory where rofi should look for plugins.
356
357
358 -show-icons
359
360
361 Show application icons in drun and window modes.
362
363
364 -icon-theme
365
366
367 Specify icon theme to be used. If not specified default theme from DE
368 is used, Adwaita and gnome themes act as fallback themes.
369
370
371 -markup
372
373
374 Use Pango markup to format output wherever possible.
375
376
377 -normal-window
378
379
380 Make rofi react like a normal application window. Useful for scripts
381 like Clerk that are basically an application.
382
383
384 Matching
385 -matching method
386
387
388 Specify the matching algorithm used. Current the following methods are
389 supported.
390
391 · normal: match the int string
392
393 · regex: match a regex input
394
395 · glob: match a glob pattern
396
397 · fuzzy: do a fuzzy match
398
399
400 Default: normal
401
402
403 Note: glob matching might be slow for larger lists
404
405
406 -tokenize
407
408
409 Tokenize the input.
410
411
412 -drun-categories category1,category2
413
414
415 Only show desktop files that are present in the listed categories.
416
417
418 -drun-match-fields field1,field2,...
419
420
421 When using drun, match only with the specified Desktop entry fields.
422 The different fields are:
423
424 · name: the application's name
425
426 · generic: the application's generic name
427
428 · exec: the application's executable
429
430 · categories: the application's categories
431
432 · comment: the application comment
433
434 ·
435
436
437 all: all of the above
438
439 Default: name,generic,exec,categories,keywords
440
441
442 -drun-display-format
443
444
445 The format string for the drun dialog:
446
447 · name: the application's name
448
449 · generic: the application's generic name
450
451 · exec: the application's executable
452
453 · categories: the application's categories
454
455 · comment: the application comment
456
457
458 Pango markup can be used to formatting the output.
459
460
461 Default: {name} [<span weight='light' size='small'><i>({generic})</i></span>]
462
463
464
465 Note: Only fields enabled in -drun-match-fields can be used in the for‐
466 mat string.
467
468
469 -[no-]drun-show-actions
470
471
472 Show actions present in the Desktop files.
473
474
475 Default: false
476
477
478
479 -window-match-fields field1,field2,...
480
481
482 When using window mode, match only with the specified fields. The dif‐
483 ferent fields are:
484
485 · title: window's title
486
487 · class: window's class
488
489 · role: window's role
490
491 · name: window's name
492
493 · desktop: window's current desktop
494
495 ·
496
497
498 all: all of the above
499
500 Default: all
501
502
503 -matching-negate-char char
504
505
506 Set the character used to negate the query (i.e. if it does not match
507 the next keyword ). Set to '\x0' to disable.
508
509
510 Default: '-'
511
512
513
514 Layout
515 Most of the following options are deprecated and should not be used.
516 Please use the new theme format to customize rofi. More information
517 about the new format can be found in the rofi-theme(5) manpage.
518
519
520 -lines
521
522
523 Maximum number of lines to show before scrolling.
524
525
526 rofi -lines 25
527
528
529
530 Default: 15
531
532
533 -columns
534
535
536 Number of columns to show before scrolling.
537
538
539 rofi -columns 2
540
541
542
543 Default: 1
544
545
546 -width [value]
547
548
549 Set width of menu. [value] is specified in percentage.
550
551
552 rofi -width 60
553
554
555
556 If [value] is larger then 100, size is set in pixels. Example to span a
557 full-HD monitor:
558
559
560 rofi -width 1920
561
562
563
564 If [value] is negative, it tries to estimates a character width. To
565 show 30 characters in a row:
566
567
568 rofi -width -30
569
570
571
572 Character width is a rough estimate, and might not be correct, but
573 should work for most monospaced fonts.
574
575
576 Default: 50
577
578
579 -location
580
581
582 Specify where the window should be located. The numbers map to the fol‐
583 lowing locations on screen:
584
585
586 1 2 3
587 8 0 4
588 7 6 5
589
590
591
592 Default: 0
593
594
595 -fixed-num-lines
596
597
598 Keep a fixed number of visible lines (See the -lines option.)
599
600
601 -padding
602
603
604 Define the inner margin of the window.
605
606
607 Default: 5
608
609
610 -fullscreen
611
612
613 Use the full-screen height and width.
614
615
616 -sidebar-mode
617
618
619 Open in sidebar-mode. In this mode a list of all enabled modes is shown
620 at the bottom. (See -modi option) To show sidebar, use:
621
622
623 rofi -show run -sidebar-mode -lines 0
624
625
626
627 -eh number
628
629
630 Set row height (in chars) Default: 1
631
632
633 -auto-select
634
635
636 When one entry is left, automatically select it.
637
638
639 -m num
640
641
642 -m name
643
644
645 -monitor num
646
647
648 -monitor name
649
650
651 Select monitor to display rofi on. It accepts as input: primary (if
652 primary output is set), the xrandr output name, or integer number (in
653 order of detection). Negative numbers are handled differently:
654
655 · -1: the currently focused monitor.
656
657 · -2: the currently focused window (that is, rofi will be displayed on
658 top of the focused window).
659
660 · -3: Position at mouse (overrides the location setting to get normal
661 context menu behavior.)
662
663 · -4: the monitor with the focused window.
664
665 ·
666
667
668 -5: the monitor that shows the mouse pointer.
669
670 Default: -5
671
672
673 See rofi -h output for the detected monitors, their position, and size.
674
675
676 -theme filename
677
678
679 Path to the new theme file format. This overrides the old theme set‐
680 tings.
681
682
683 -theme-str string
684
685
686 Allow theme parts to be specified on the command line as an override.
687
688
689 For example:
690
691
692 rofi -theme-str '#window { fullscreen: true; }'
693
694
695
696 This option can be specified multiple times.
697
698
699 -dpi number
700
701
702 Override the default DPI setting.
703
704 · If set to 0, it tries to auto-detect based on X11 screen size (simi‐
705 lar to i3 and GTK).
706
707 · If set to 1, it tries to auto-detect based on the size of the monitor
708 that rofi is displayed on (similar to latest Qt 5).
709
710
711 -selected-row selected row
712
713
714 Select a certain row.
715
716
717 Default: 0
718
719
720 PATTERN setting
721 -terminal
722
723
724 Specify which terminal to start.
725
726
727 rofi -terminal xterm
728
729
730
731 Pattern: {terminal}
732
733
734 Default: x-terminal-emulator
735
736
737 -ssh-client client
738
739
740 Override the used ssh client.
741
742
743 Pattern: {ssh-client}
744
745
746 Default: ssh
747
748
749 SSH settings
750 -ssh-command cmd
751
752
753 Set the command to execute when starting a ssh session. The pattern
754 {host} is replaced by the selected ssh entry.
755
756
757 Pattern: {ssh-client}
758
759
760 Default: {terminal} -e {ssh-client} {host}
761
762
763 -parse-hosts
764
765
766 Parse the /etc/hosts file for entries.
767
768
769 Default: disabled
770
771
772 -parse-known-hosts -no-parse-known-hosts
773
774
775 Parse the /.ssh/known_hosts file for entries.
776
777
778 Default: enabled
779
780
781 Run settings
782 -run-command cmd
783
784
785 Set command ({cmd}) to execute when running an application. See PAT‐
786 TERN.
787
788
789 Default: {cmd}
790
791
792 -run-shell-command cmd
793
794
795 Set command to execute when running an application in a shell. See
796 PATTERN.
797
798
799 Default: {terminal} -e {cmd}
800
801
802 -run-list-command cmd
803
804
805 If set, use an external tool to generate list of executable commands.
806 Uses run-command.
807
808
809 Default: {cmd}
810
811
812 Window switcher settings
813 -window-format format
814
815
816 Format what is being displayed for windows.
817
818
819 format: {field[:len]}
820
821
822 field:
823
824 · w: desktop name
825
826 · t: title of window
827
828 · n: name
829
830 · r: role
831
832 · c: class
833
834
835 len: maximum field length (0 for auto-size). If length and window width
836 are negative, field length is width - len. if length is positive, the
837 entry will be truncated or padded to fill that length.
838
839
840 default: {w} {c} {t}
841
842
843 -window-command cmd
844
845
846 Set command to execute on selected window for a alt action
847 (-kb-accept-alt). See PATTERN.
848
849
850 Default: "wmctrl -i -R {window}"
851
852
853 -window-thumbnail
854
855
856 Show window thumbnail (if available) as icon in the window switcher.
857
858
859 Combi settings
860 -combi-modi mode1,mode2
861
862
863 The modi to combine in combi mode. For syntax to -combi-modi, see
864 -modi. To get one merge view, of window,run, and ssh:
865
866
867 rofi -show combi -combi-modi "window,run,ssh" -modi combi
868
869
870
871 NOTE: The i3 window manager does not like commas in the command when
872 specifying an exec command. For that case '#' can be used as a separa‐
873 tor.
874
875
876 History and Sorting
877 -disable-history -no-disable-history (re-enable history)
878
879
880 Disable history
881
882
883 -sort to enable -no-sort to disable
884
885
886 Enable, disable sorting. This setting can be changed at runtime (see
887 -kb-toggle-sort).
888
889
890 -sorting-method 'method' to specify the sorting method.
891
892
893 There are 2 sorting method:
894
895 · levenshtein (Default)
896
897 · fzf sorting.
898
899
900 Dmenu specific
901 -sep separator
902
903
904 Separator for dmenu. Example: To show a list of 'a' to 'e' with '|' as
905 a separator:
906
907
908 echo "a|b|c|d|e" | rofi -sep '|' -dmenu
909
910
911
912 -p prompt
913
914
915 Specify the prompt to show in dmenu mode. For example, select 'monkey',
916 a,b,c,d, or e.
917
918
919 echo "a|b|c|d|e" | rofi -sep '|' -dmenu -p "monkey"
920
921
922
923 Default: dmenu
924
925
926 -l number of lines to show
927
928
929 Maximum number of lines the menu may show before scrolling.
930
931
932 rofi -lines 25
933
934
935
936 Default: 15
937
938
939 -i
940
941
942 Makes dmenu searches case-insensitive
943
944
945 -a X
946
947
948 Active row, mark X as active. Where X is a comma-separated list of
949 python(1)-style indices and ranges, e.g. indices start at 0, -1 refers
950 to the last row with -2 preceding it, ranges are left-open and
951 right-close, and so on. You can specify:
952
953 · A single row: '5'
954
955 · A range of (last 3) rows: '-3:'
956
957 · 4 rows starting from row 7: '7:11' (or in legacy notation: '7-10')
958
959 · A set of rows: '2,0,-9'
960
961 · Or any combination: '5,-3:,7:11,2,0,-9'
962
963
964 -u X
965
966
967 Urgent row, mark X as urgent. See -a option for details.
968
969
970 -only-match
971
972
973 Only return a selected item, do not allow custom entry. This mode
974 always returns an entry. It will not return if no matching entry is
975 selected.
976
977
978 -no-custom
979
980
981 Only return a selected item, do not allow custom entry. This mode
982 returns directly when no entries given.
983
984
985 -format format
986
987
988 Allows the output of dmenu to be customized (N is the total number of
989 input entries):
990
991 · 's' selected string
992
993 · 'i' index (0 - (N-1))
994
995 · 'd' index (1 - N)
996
997 · 'q' quote string
998
999 · 'p' Selected string stripped from Pango markup (Needs to be a valid
1000 string)
1001
1002 · 'f' filter string (user input)
1003
1004 · 'F' quoted filter string (user input)
1005
1006
1007 Default: 's'
1008
1009
1010 -select string
1011
1012
1013 Select first line that matches the given string
1014
1015
1016 -mesg string
1017
1018
1019 Add a message line below the filter entry box. Supports Pango markup.
1020 For more information on supported markup see here ⟨https://devel‐
1021 oper.gnome.org/pygtk/stable/pango-markup-language.html⟩
1022
1023
1024 -dump
1025
1026
1027 Dump the filtered list to stdout and quit. This can be used to get the
1028 list as rofi would filter it. Use together with -filter command.
1029
1030
1031 -input file
1032
1033
1034 Reads from file instead of stdin.
1035
1036
1037 -password
1038
1039
1040 Hide the input text. This should not be considered secure!
1041
1042
1043 -markup-rows
1044
1045
1046 Tell rofi that DMenu input is Pango markup encoded, and should be ren‐
1047 dered. See here ⟨https://developer.gnome.org/pygtk/stable/pango-
1048 markup-language.html⟩ for details about Pango markup.
1049
1050
1051 -multi-select
1052
1053
1054 Allow multiple lines to be selected. Adds a small selection indicator
1055 to the left of each entry.
1056
1057
1058 -sync
1059
1060
1061 Force rofi mode to first read all data from stdin before showing the
1062 selection window. This is original dmenu behavior.
1063
1064
1065 Note: the default asynchronous mode will also be automatically disabled
1066 if used with conflicting options, such as -dump, -only-match or
1067 -auto-select.
1068
1069
1070 -async-pre-read number
1071
1072
1073 Reads the first number entries blocking, then switches to async mode.
1074 This makes it feel more 'snappy'.
1075
1076
1077 default: 25
1078
1079
1080 -window-title title
1081
1082
1083 Set name used for the window title. Will be shown as Rofi - title
1084
1085
1086 -w windowid
1087
1088
1089 Position rofi over the window with the given X11 window ID.
1090
1091
1092 -keep-right
1093
1094
1095 Set ellipsize mode to start. So end of string is visible.
1096
1097
1098 Message dialog
1099 -e message
1100
1101
1102 Pops up a message dialog (used internally for showing errors) with mes‐
1103 sage. Message can be multi-line.
1104
1105
1106 Other
1107 -drun-use-desktop-cache
1108
1109
1110 Build and use a cache with the content of desktop files. Usable for
1111 systems with slow hard drives.
1112
1113
1114 -drun-reload-desktop-cache
1115
1116
1117 If drun-use-desktop-cache is enabled, rebuild a cache with the content
1118 of desktop files.
1119
1120
1121 -pid path
1122
1123
1124 Make rofi create a pid file and check this on startup. The pid file
1125 prevents multiple rofi instances from running simultaneously. This is
1126 useful when running rofi from a key-binding daemon.
1127
1128
1129 -fake-transparency
1130
1131
1132 Enable fake transparency. This only works with transparent background
1133 color in the theme.
1134
1135
1136 -fake-background
1137
1138
1139 Select what to use as background for fake transparency. This can be
1140 'background', 'screenshot' or a path to an image file (currently only
1141 supports png).
1142
1143
1144 -display-{mode} string
1145
1146
1147 Set the name to use for mode. This is used as prompt and in
1148 combi-browser.
1149
1150
1151 -click-to-exit -no-click-to-exit
1152
1153
1154 Click the mouse outside of the rofi window to exit.
1155
1156
1157 Default: enabled
1158
1159
1160 Debug
1161 -no-config
1162
1163
1164 Disable parsing of configuration. This runs rofi in stock mode.
1165
1166
1167 -no-plugins
1168
1169
1170 Disables the loading of plugins.
1171
1172
1173 To get a trace with (lots of) debug information, set the following
1174 environment variable when executing rofi:
1175
1176
1177 G_MESSAGES_DEBUG=all
1178
1179
1180
1181 The trace can be filtered by only outputting the relevant domains, for
1182 example:
1183
1184
1185 G_MESSAGES_DEBUG=Dialogs.DRun
1186
1187
1188
1189 For more information on debugging, see the wiki
1190 ⟨https://github.com/DaveDavenport/rofi/wiki/Debugging%20Rofi⟩
1191
1192
1194 To launch commands (for example, when using the ssh launcher), the user
1195 can enter the used command-line. The following keys can be used that
1196 will be replaced at runtime:
1197
1198 · {host}: the host to connect to
1199
1200 · {terminal}: the configured terminal (see -terminal-emulator)
1201
1202 · {ssh-client}: the configured ssh client (see -ssh-client)
1203
1204 · {cmd}: the command to execute
1205
1206 · {window}: the window ID of the selected window (in window-command)
1207
1208
1210 If argv[0] (calling command) is dmenu, rofi will start in dmenu mode.
1211 This way it can be used as a drop-in replacement for dmenu. Just copy
1212 or symlink rofi to dmenu in $PATH.
1213
1214
1215 ln -s /usr/bin/rofi /usr/bin/dmenu
1216
1217
1218
1220 The theme format below describes the old (pre version 1.4) theme for‐
1221 mat. Please see rofi-theme(5) manpage for an updated manual.
1222
1223
1224 The theme setup allows you to specify colors per state, similar to i3
1225 Currently 3 states exist:
1226
1227 · normal: normal row
1228
1229 · urgent: highlighted row (urgent)
1230
1231 · active: highlighted row (active)
1232
1233
1234 For each state, the following 5 colors must be set:
1235
1236 · bg: background color row
1237
1238 · fg: text color
1239
1240 · bgalt: background color alternating row
1241
1242 · hlfg: foreground color selected row
1243
1244 · hlbg: background color selected row
1245
1246
1247 The window background and border color should be specified separately.
1248 The key color-window contains a tuple background,border,separator. An
1249 example Xresources file:
1250
1251
1252 ! State: 'bg', 'fg', 'bgalt', 'hlbg', 'hlfg'
1253 rofi.color-normal: #fdf6e3, #002b36, #eee8d5, #586e75, #eee8d5
1254 rofi.color-urgent: #fdf6e3, #dc322f, #eee8d5, #dc322f, #fdf6e3
1255 rofi.color-active: #fdf6e3, #268bd2, #eee8d5, #268bd2, #fdf6e3
1256
1257 ! 'background', 'border', 'separator'
1258 rofi.color-window: #fdf6e3, #002b36, #002b36
1259
1260
1261
1262 Same settings can also be specified on the command-line:
1263
1264
1265 rofi -color-normal "#fdf6e3,#002b36,#eee8d5,#586e75,#eee8d5"
1266
1267
1268
1270 RGB colors can be specified by either their X11 name or hexadecimal
1271 notation. For example:
1272
1273
1274 white
1275
1276
1277
1278 Or:
1279
1280
1281 #FFFFFF
1282
1283
1284
1285 ARGB colors are also supported. These can be used to create a transpar‐
1286 ent window if (1) your Xserver supports TrueColor, and (2) you are run‐
1287 ning a composite manager. For example:
1288 argb:FF444444
1289
1290
1291 Or:
1292
1293
1294 #FF444444
1295
1296
1297
1298 The first two fields specify the alpha level. This determines the
1299 amount of transparency (00 everything, FF nothing). The other fields
1300 represent the actual color, in hex.
1301
1302
1303 Transparency can be used within rofi, for example if the selected back‐
1304 ground color is 50% transparent, the background color of the window
1305 will be visible through it.
1306
1307
1309 rofi has the following key bindings:
1310
1311 · Ctrl-v, Insert: Paste from clipboard
1312
1313 · Ctrl-Shift-v, Shift-Insert: Paste primary selection
1314
1315 · Ctrl-u: Clear the line
1316
1317 · Ctrl-a: Beginning of line
1318
1319 · Ctrl-e: End of line
1320
1321 · Ctrl-f, Right: Forward one character
1322
1323 · Alt-f, Ctrl-Right: Forward one word
1324
1325 · Ctrl-b, Left: Back one character
1326
1327 · Alt-b, Ctrl-Left: Back one word
1328
1329 · Ctrl-d, Delete: Delete character
1330
1331 · Ctrl-Alt-d: Delete word
1332
1333 · Ctrl-h, Backspace, Shift-Backspace: Backspace (delete previous char‐
1334 acter)
1335
1336 · Ctrl-Alt-h: Delete previous word
1337
1338 · Ctrl-j,Ctrl-m,Enter: Accept entry
1339
1340 · Ctrl-n,Down: Select next entry
1341
1342 · Ctrl-p,Up: Select previous entry
1343
1344 · Page Up: Go to previous page
1345
1346 · Page Down: Go to next page
1347
1348 · Ctrl-Page Up: Go to previous column
1349
1350 · Ctrl-Page Down: Go to next column
1351
1352 · Ctrl-Enter: Use entered text as a command (in ssh/run modi)
1353
1354 · Shift-Enter: Launch the application in a terminal (in run mode)
1355
1356 · Shift-Enter: Return the selected entry and move to the next item
1357 while keeping rofi open. (in dmenu)
1358
1359 · Shift-Right: Switch to the next mode. The list can be customized with
1360 the -switchers argument.
1361
1362 · Shift-Left: Switch to the previous mode. The list can be customized
1363 with the -switchers argument.
1364
1365 · Ctrl-Tab: Switch to the next mode. The list can be customized with
1366 the -switchers argument.
1367
1368 · Ctrl-Shift-Tab: Switch to the previous mode. The list can be custom‐
1369 ized with the -switchers argument.
1370
1371 · Ctrl-space: Set selected item as input text.
1372
1373 · Shift-Del: Delete entry from history.
1374
1375 · grave: Toggle case sensitivity.
1376
1377 · Alt-grave: Toggle sorting.
1378
1379 · Alt-Shift-S: Take a screenshot and store it in the Pictures direc‐
1380 tory.
1381
1382
1383 To get a full list of key bindings on the commandline, see rofi -h.
1384 The options starting with -kb are keybindings. Key bindings can be
1385 modified using the configuration systems. To get a searchable list of
1386 key bindings, run rofi -show keys.
1387
1388
1389 A key binding starting with ! will act when all keys have been
1390 released.
1391
1392
1394 window
1395 Show a list of all the windows and allow switching between them.
1396 Pressing the delete-entry binding (shift-delete) will close the window.
1397 Pressing the accept-custom binding (control-enter or shift-enter) will
1398 run a command on the window. (See option window-command );
1399
1400
1401 windowcd
1402 Shows a list of the windows on the current desktop and allows switching
1403 between them. Pressing the delete-entry binding (shift-delete) will
1404 kill the window. Pressing the accept-custom binding (control-enter or
1405 shift-enter) will run a command on the window. (See option window-com‐
1406 mand );
1407
1408
1409 If there is no match, it will try to launch the input.
1410
1411
1412 run
1413 Shows a list of executables in $PATH and can launch them (optional in a
1414 terminal). Pressing the delete-entry binding (shift-delete) will
1415 remove this entry from the run history. Pressing the accept-custom
1416 binding (control-enter or shift-enter) will run the command in a termi‐
1417 nal.
1418
1419
1420 drun
1421 Same as the run launches, but the list is created from the installed
1422 desktop files. It automatically launches them in a terminal if speci‐
1423 fied in the Desktop File. Pressing the delete-entry binding
1424 (shift-delete) will remove this entry from the run history. Pressing
1425 the accept-custom binding (control-enter or shift-enter) will run the
1426 command in a terminal.
1427
1428
1429 ssh
1430 Shows a list of SSH targets based on your ssh config file, and allows
1431 to quickly ssh into them.
1432
1433
1434 keys
1435 Shows a searchable list of key bindings.
1436
1437
1438 script
1439 Allows custom scripted Modi to be added.
1440
1441
1442 combi
1443 Combines multiple modi in one list. Specify which modi are included
1444 with the -combi-modi option.
1445
1446
1447 When using the combi mode, a !bang can be used to filter the results by
1448 modi. All modi that match the bang as a prefix are included. For
1449 example, say you have specified -combi-modi run,window,windowcd. If
1450 your query begins with the bang !w, only results from the window and
1451 windowcd modi are shown, even if the rest of the input text would match
1452 results from run.
1453
1454
1455 If no match, the input is handled by the first combined modi.
1456
1457
1459 The text in the window switcher is not nicely aligned.
1460 Try using a mono-space font.
1461
1462
1463 The window is completely black.
1464 Check quotes used on the command-line: you might have used “ ("smart
1465 quotes") instead of " ("machine quotes").
1466
1467
1468 What does the icon in the top right show?
1469 The indicator shows:
1470
1471
1472 ` ` Case insensitive and no sorting.
1473 `-` Case sensitivity enabled, no sorting.
1474 `+` Case insensitive and Sorting enabled
1475 `±` Sorting and Case sensitivity enabled"
1476
1477
1478
1480 Some basic usage examples of rofi:
1481
1482
1483 Show the run dialog:
1484
1485
1486 rofi -modi run -show run
1487
1488
1489
1490 Show the run dialog, and allow switching to Desktop File run dialog
1491 (drun):
1492
1493
1494 rofi -modi run,drun -show run
1495
1496
1497
1498 Combine the run and Desktop File run dialog (drun):
1499
1500
1501 rofi -modi combi -show combi -combi-modi run,drun
1502
1503
1504
1505 Combine the run and Desktop File run dialog (drun), and allow switching
1506 to window switcher:
1507
1508
1509 rofi -modi combi,window -show combi -combi-modi run,drun
1510
1511
1512
1513 Run rofi full monitor width at the top of the monitor like a dropdown
1514 menu:
1515
1516
1517 rofi -show run -width 100 -location 1 -lines 5 -bw 2 -yoffset -2
1518
1519
1520
1521 Pop up a text message claiming that this is the end:
1522
1523
1524 rofi -e "This is the end"
1525
1526
1527
1528 Pop up a text message in red, bold font claiming that this is still the
1529 end:
1530
1531
1532 rofi -e "<span color='red'><b>This is still the end</b></span>" -markup
1533
1534
1535
1536 Show all key bindings:
1537
1538
1539 rofi -show keys
1540
1541
1542
1543 Use qalc to get a simple calculator in rofi:
1544
1545
1546 rofi -show calc -modi "calc:qalc +u8 -nocurrencies"
1547
1548
1549
1551 In i3 ⟨http://i3wm.org/⟩ you want to bind rofi to be launched on key
1552 release. Otherwise, it cannot grab the keyboard. See also the i3 man‐
1553 ual ⟨http://i3wm.org/docs/userguide.html⟩:
1554
1555
1556 Some tools (such as import or xdotool) might be unable to run upon a
1557 KeyPress event, because the keyboard/pointer is still grabbed. For
1558 these situations, the --release flag can be used, as it will execute
1559 the command after the keys have been released.
1560
1561
1563 MIT/X11
1564
1565 Permission is hereby granted, free of charge, to any person obtaining
1566 a copy of this software and associated documentation files (the
1567 "Software"), to deal in the Software without restriction, including
1568 without limitation the rights to use, copy, modify, merge, publish,
1569 distribute, sublicense, and/or sell copies of the Software, and to
1570 permit persons to whom the Software is furnished to do so, subject to
1571 the following conditions:
1572
1573 The above copyright notice and this permission notice shall be
1574 included in all copies or substantial portions of the Software.
1575
1576 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
1577 OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
1578 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
1579 IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
1580 CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
1581 TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
1582 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
1583
1584
1585
1587 rofi website can be found here ⟨https://davedavenport.github.io/rofi/⟩
1588
1589
1591 rofi support can be obtained here ⟨irc://irc.freenode.net/#rofi⟩ (#rofi
1592 on irc.freenode.net), or via the forum ⟨https://reddit.com/r/qtools//⟩
1593
1594
1596 Please see this ⟨https://github.com/DaveDavenport/rofi/wiki/Debugging
1597 Rofi⟩ wiki entry.
1598
1599
1601 The rofi issue tracker can be found here ⟨https://github.com/DaveDaven‐
1602 port/rofi/issues⟩
1603
1604
1605 When creating an issue, please read this ⟨https://github.com/DaveDaven‐
1606 port/rofi/blob/master/.github/CONTRIBUTING.md⟩ first.
1607
1608
1610 rofi-sensible-terminal(1), dmenu(1), rofi-theme(5), rofi-script(5),
1611 rofi-theme-selector(1)
1612
1613
1615 Qball Cow ⟨qball@gmpclient.org⟩
1616
1617 · Rasmus Steinke ⟨rasi@xssn.at⟩
1618
1619 · Quentin Glidic ⟨sardemff7+rofi@sardemff7.net⟩
1620
1621
1622 Original code based on work by: Sean Pringle ⟨sean.pringle@gmail.com⟩
1623
1624
1625 For a full list of authors, check the AUTHORS file.
1626
1627
1628
1629 rofi ROFI(1)