rofi-file-browser-extended
- use rofi to quickly open files
rofi -show file-browser-extended [ -file-browser-dir <dir> ] [ -file-browser-cmd <cmd> ]
rofi -show file-browser-extended [ -file-browser-depth <depth> ] [ -file-browser-follow-symlinks ]
rofi -show file-browser-extended [ -file-browser-oc-cmd <cmd> ] [ -file-browser-oc-search-path ]
fd | rofi -show file-browser-extended -file-browser-stdin
rofi-file-browser-extended is a configurable file browser plugin for rofi. It's main use case is to quickly open files without having to open a window to navigate to the file.
-file-browser-depth
can be used to list files recursively up to a certain depth.
A depth of 0 means files are listed without a depth limit.
Symlinks are not followed by default.
-file-browser-follow-symlinks
can be used to follow symlinks.
When symlinks are followed, every file is still only reported once.
Press the open custom
key (see Key bindings) to enter open custom
mode on the selected file.
The plugin will then display a list of commands to open the selected file with.
$PATH
can be added to this list with -file-browser-oc-search-path
.-file-browser-oc-cmd
(multiple by passing the option multiple times).User-defined commands can optionally specify an icon and a display name (with pango markup).
Format:
<command>;icon:<icon-name>;name:<name-to-displayed>
icon
and name
are optional.
The order of icon
and name
does not matter as long as the command comes first.
Example:
-file-browser-oc-cmd "gimp"
-file-browser-oc-cmd "pcmanfm-qt;name:pcmanfm;icon:system-file-manager"
-file-browser-oc-cmd "deadbeef --queue;icon:deadbeef;name:deadbeef <i>(queue)</i>"
-file-browser-stdin
can be used to read displayed paths from stdin.
Paths must either be relative to the starting directory (-file-browser-dir
) or absolute.
It is not checked if the paths actually exist.
The paths are not sorted or matched to any exclude patters.
After reading the paths, the plugin behaves no different than usual.
You may want to use this option with -file-browser-no-descend
and / or -file-browser-stdout
to make it more dmenu-like.
Example:
fd | rofi -show file-browser-extended -file-browser-stdin
fd -a | rofi -show file-browser-extended -file-browser-stdin
ls somedir | rofi -show file-browser-extended -file-browser-stdin -file-browser-dir somedir
The default config file location is $XDG_USER_CONFIG_DIR/rofi/file-browser
(defaults to $HOME/config/rofi/file-browser
).
The config file consists of newline-separated command line options without the "-file-browser-" prefix.
Example:
icon-theme "Numix-Circle"
cmd "exo-open"
oc-cmd "evince;icon:evince"
oc-cmd "gimp;icon:gimp"
depth 2
open-parent-as-self
Comments start with #
.
Quotes inside string arguments must not be escaped.
Escape sequences are currently not supported.
Command line options will override the config file (or add to the config file arguments if the option can be specified multiple times).
A different config file can be specified with -file-browser-config
(multiple by passing the option multiple times).
All command line options but -file-browser-config
itself can be used in the config file.
kb-accept-alt
, (default: Shift+Return)
open custom
: Open the selected file with a custom command.
kb-custom-1
, (default: Alt+1)
open multi
: Open the selected file without closing rofi.
Can be used in the prompt of open custom
.
kb-custom-2
, (default: Alt+2)
Toggle hidden files.
Key bindings can be changed via command line options (see Command line options/Key bindings).
-file-browser-cmd
cmdSet the command to open selected files with.
(default: xdg-open
)
-file-browser-dir
pathSet the starting directory. (default: current working directory)
-file-browser-depth
depthList files recursively until a depth is reached. A value of 0 means no depth limit. (default: 1)
-file-browser-follow-symlinks
Follow symlinks when listing files recursively. (default: don't follow symlinks)
When symlinks are followed, every file is still only reported once.
-file-browser-show-hidden
Show hidden files. (default: hidden)
-file-browser-only-dirs
Only show directories. (default: disabled)
-file-browser-only-files
Only show files. (default: disabled)
-file-browser-no-descend
Open directories instead of descending into them. (default: disabled)
-file-browser-open-parent-as-self
Treat the parent directory (..
) as the current directory when opened.
(default: disabled)
-file-browser-exclude
Exclude paths by matching the basename to glob patterns. (default: none)
Supports *
and ?
.
-file-browser-stdin
Read paths from stdin. (default: disabled)
Paths must either be relative to the starting directory (-file-browser-dir
) or absolute.
It is not checked if the files actually exist.
The paths are not sorted or matched to any exclude patters.
-file-browser-stdout
Instead of opening files, print absolute paths of selected files to stdout. (default: disabled)
-file-browser-oc-search-path
Search $PATH
for executables and display them in open custom
mode (after user-defined commands).
(default: disabled)
-file-browser-oc-cmd
cmdSpecify user-defined commands to be displayed in open custom
mode.
(default: none)
Format: <command>;icon:<icon-name>;name:<name-to-displayed>
icon
and name
are optional.
The order of icon
and name
does not matter as long as the command comes first.
name
may use pango markup.
-file-browser-sort-by-type
, -file-browser-no-sort-by-type
Enable / disable sort-by-type (directories first, files second, inaccessible directories last). (default: enabled)
-file-browser-sort-by-depth
, -file-browser-no-sort-by-depth
Enable / disable sort-by-depth when listing files recursively. Sort-by-type is secondary to sort-by-depth if both are enabled. (default: disabled)
-file-browser-hide-parent
Hide the parent directory (..
).
(default: shown)
-file-browser-config
pathLoad options from the specified config file.
(default: $XDG_USER_CONFIG_DIR/rofi/file-browser
)
Can be used multiple times to load options from multiple config files. When this option is specified, the default config file will not be loaded.
Supported key bindings are kb-accept-alt
, kb-custom-[0-19]
and none
(disables the key binding).
You can change the actual key bindings that correspond to kb-accept-alt
and kb-custom-*
in rofi's options.
Run rofi -show keys
to display rofi's key bindings and what they are bound to.
Run rofi -dump-config
or rofi -dump-xresources
to get a list of available options.
-file-browser-open-custom-key
rofi-keySet the key binding for open custom
.
(default: kb-accept-alt
)
-file-browser-open-multi-key
rofi-keySet the key binding for open multi
.
(default: kb-custom-1
)
-file-browser-open-toggle-hidden
rofi-keySet the key binding for toggling hidden files.
(default: kb-custom-2
)
-file-browser-disable-icons
Disable icons. (default: enabled)
-file-browser-disable-thumbnails
Disable thumbnails for image files. (default: enabled)
-file-browser-disable-status
Disable the status line that shows the current path. (default: enabled)
-file-browser-path-sep
stringSet the path separator for the status line.
(default: " / "
)
-file-browser-hide-hidden-symbol
stringSet the indicator that hidden files are hidden.
(default: "[-]"
)
-file-browser-show-hidden-symbol
stringSet the indicator that hidden files are shown.
(default: "[+]"
)
-file-browser-up-text
stringSet the text for the parent directory.
(default: ".."
).
-file-browser-up-icon
icon-nameSet the icon for the parent directory.
(default: "go-up"
)
-file-browser-fallback-icon
icon-nameSet the fallback icon used for files without icons (e.g. block devices).
(default: "text-x-generic"
)
-file-browser-inaccessible-icon
icon-nameSet the icon for inaccessible directories.
(default: "error"
)
If you encounter a problem, try running rofi from the command line. The plugin prints error messages if things go wrong. If that doesn't help, feel free to create a new issue on GitHub.
rofi(1), nftw(3)