The shell-like, command line terminal file manager: simple, fast, extensible, and lightweight as hell.
--list-and-quit --long-view --full-dir-size
.max-files
is set.ls
and company.../<TAB>
and the current directory is a symlink.../
if the current directory is a symlink.pp
on a broken link.ft =d
).--invalid-option --valid-option
, clifm complains about --valid-option
.../dir/file_name
.PrintSelfiles
not updated automatically after editing the configuration file..hidden
file (includes wildcards support) via ReadDotHidden
in the config file.-L,--follow-symlinks-long
to dereference symbolic links in long view.k
, to toggle follow-links
in long view (keybind Alt-+).I
in PropFields
(not available on Termux).PropFields
.b
in PropFields
).l
in PropFields
). Color code: dk
.B
in PropFields
). Color code: db
.G
in PropFields
).de
.--prop-fields=FORMAT
(same values as PropFields
).PropFieldsGap
in the config file.nord
, base16
, and zenburn
color schemes.0
for empty dirs, ?
for dirs with no read permission, and -
for no-dirs.--ls
as short for --list-and-quit
.--stat
and --stat-full
to process multiple files at once (ex: --stat FILE FILE2 ...
).--secure-env
or --secure-cmds
).--time-style
(long view) and --ptime-style
(p/pp
command).p/pp
command).blocks
and links
.Sort
in the config file accept names, and not just numbers.kk
to toggle max-filename-len
.p/pp
command: Do not abbreviate symlinks target.--color-links-as-target
command line option.pg once
.PagerView
in the config file or --pager-view
in the command line.-a
and -l
to disable hidden files and long view respectively (instead of enabling them, like most files listers do (ex: ls
, exa
, eza
, lsd
)), and 2) we were using uppercase options sometimes to enable and sometimes to disable features (which is not consistent), we made the following changes:
-a
enables hidden-files
and -A
disables it-f
enables dirs-first
and -F
disables it-l
enables long-view
-L
like ls(1) -L
option (long form: --follow-symlinks-long
)-o
enables autocd
and -O
disables ittrash list
screen.clifmimg
script if running with --preview
.ow dir/<TAB>
inserts space char instead of listing subdirectories in dir
.ow FILE APP
fails with "Key has expired" when APP does not exist.config
(in the current directory) instead of running the command config
.bl sel
command creates broken symbolic links when directory in path contains spaces.q
or quit
cannot be opened in the bookmarks screen (these names are now disallowed).md
sometimes fails as new
.new
fails to create file.p/pp
cannot handle relative symbolic links.l/le
do not allow creating relative symbolic links.only-dirs
and no-follow-symlinks
are enabled.--fuzzy-matching
.trash list
screen.bl
command.bl
: Do not ask for links suffix: use the original filename (plus integer suffix to make it unique).cd-on-quit
work with plain q
command. Q
(uppercase) command is deprecated.history clear
..cfm.in
and .cfm.out
) won't be read unless ReadAutocmdFiles
is set to true
in the main config file.PropFields
-c
, -b
, and -k
) and config dir (-D
) ignored after editing the main config file.clifm -c -V
wrongly assumes that -V
is a parameter to -c
.s *.conf :/dir
: .conf files selected in the CWD if /dir
does not exist.pc
and oc
commands allow commands history.ad
command) is broken.n file file/
reports two created files, but only one was actually created.file
and dir/file
at the same time (name collision).p/pp
and le
commands do not properly handle symlink to symlink.br
command).rr
opens temp file even if the current directory is empty.MaxJumpTotalRank
is set to zero.MaxPrintSelfiles
not working with -1
.s01
selects the first listed file, but triggers the warning prompt.n 1
takes 1
as an ELN (and attempts to create the corresponding file) instead as a new file name...
now suggests the parent directory (this makes it more consistent with the fastback function).Umask
option.md
now runs n
internally instead of mkdir(1).-T,--trash-dir
.r
command always ask for confirmation before removing files.--lscolors
(GNU ls style only).untrash
and the trash del
screens.br
command)./tmp/clifm-USER
(700 permissions).u
and t del
commands).p
command (which does not follow symlinks).@
) (if the target has them) in long view.p
command).dh !NUM
not working.--disk-usage
crashes on file systems reporting zero total size (ex: /proc
).ws
and st
commands not working with fused numbers (ex: ws2
)..~*#
) and MS-Office temp files (~$*
) as temp files.DateShades
and SizeShades
in color scheme file.p
/pp
: List files ACLs (Linux).p
/pp
: Files with extended attributes/caps/ACLs are marked with @
. This replaces the +
in previous versions, which was a mark for ACLs only (Linux).--disk-usage
): FREE/TOTAL (FREE_PERC) FS_TYPE_NAME DEV_NAME.c
/m
behavior for cp
/mv
: add final "." if last parameter is "sel".sel
: Do not try regex if pattern contains just asterisks as metacharacters.Mime
: case insensitively match file name patterns (for example, file extensions).foot-extra
, foot-extra-direct
, rio
, and rio-base
to our internal terminfo database.CMD1 2
not expanding ELNs (1 and 2).t sel
and there are no selected files.sel *
loop after keybind.--list-and-quit
and no parameter is provided.--stat
and --stat-full
in shell completion files.m
wrongly performs regex expansion on the last parameter (new name).stats
command).hw
).--readonly
or the Readonly
option in the config file).update_trash_indicator
routine is almost 5x faster.ColorLinkAsTarget
is enabled.^
and append $
to queries).--secure-env
.bleach
(if using the generic files system events monitor).desel
command.dup
fails when file name starts with a dash (subsequent characters are taken as command options)....
) not working in Macos and Haiku.p
command) in case of broken symbolic links.p
command sometimes prints garbage values.sudo !!
not working).l
command cannot create link names containing spaces.n
command); close non-standard file descriptors.te
command sets the executable bit for the file owner only (unsets it for owner, group, and others).1
= secure-cmds + secure-env; 2
= secure-cmds + secure-env-full; 3
= same as 2, plus stealth-mode.rr
command with text editors.cd_on_quit.sh
and file_picker.sh
shell functions (by @spenserblack).clifm-no-color
prompt).QuotingStyle
option in the config file).~
) or #*#
(emacs auto-save)) using the color specified for TEMP in the color scheme file.r
command.HistIgnore
option in the config file.DirhistIgnore
option in the config file.p/pp
command can now tell whether a file is sparse (has holes), in which case it adds the sparse
label to the Size field.p
cmd: print file capabilities if available (Linux).--stat
and --stat-full
command line options.PTimeStyle
option in the config file.--int-vars
.clifm --open=~PATH
not working.n
command with an empty string: n ""
.clifmrun
are broken since ueberzug 18.2.0.x/X
command.new
command is not properly handling file names with tilde (via secondary prompt)Alt-b
and then Alt-m
)new
or the filter
commands are expanded (wordexp(3)).=f
) wrongly expands to non-regular files.new
command splits quoted names containing spaces (ex: n "a b/"
).j
command.rr
).cs
(color scheme) does not work in autocommands if it's not the last directive.jo
command removed: not useful and broken since 1.11.s /path/to/dir/.*
selects self and parent directories (instead of just hidden files).s * -d
fails to select a directory file named -dir
../dir/<TAB>
).--indicator-style=none
when previewing directories on BSD..clifm
extension.?
) fails if the *PAGER environment variable is set and contains spaces.No matches found
) after recursive search (-x
)Scanning ...
message not properly removed in case of empty directories.--no-warning-prompt
not working.MinFilenameTrim
is overriden by MaxFilenameLen
in long view.RlEditMode
to 1
does not switch back to emacs mode.bm add Camera/ cm
, when suggested string is bm add Camera/ Camera cm
)cd_on_quit.sh
shell function, the shell directory is always changed, even if the exit command was not Q
.grm
(the GNU version of rm
) if available.reload
command.umask
builtin command.pwd
is now a builtin.p
command do not follows symlinks (unless it is a symlink to a dir and ends with a slash), while pp
always does.sudo
) with available command names.new
and dup
commands (via secondary prompts)new
command).fzy
has been inactive for more than a year (and our patch has not been even reviewed), we forked it as fnf
and migrated clifm to it: --fzytab
is now --fnftab
, and the TabCompletionMode
option now takes fnf
instead of fzy
as value.p
/pp
command.p
/pp
command).mtimes
(for when neither inotify nor kqueue are available).ELN
nor FILENAME
nor FILENAME APP
)s:
, b:
, or t:
constructsuc
a command description is provided, but the command doesn't exist anymorels
returns exit code 1 (even when there is no error) when running with --no-autols
ow
not honoring ![EO]
notation in the opening application stringtag FILE :<TAB>
p
command for symlink targetsp
commandp
command when the target is a special filene
color code has no effect at all. Removed.cmdxxxx<TAB>
performs TAB completion as if the string were just cmd
file10
before file9
!)mm --help
returns 1 (error) as exit status--print-sel
is not workingte
command reports success even if the operation failed (e.g. permission denied)...file
is wrongly converted into ../../
by the fastback function--no-color
s \~
")clifm -P .
creates a profile that cannot be managed via the 'pf' commandp
command) as human-size/bytes (as done for regular files) (GNU du
only)apparent-size
and si
options for directories on BSD systemsunset
, to remove variables from the environmentll
, to toggle long view modeff
, hf
, and lm
commands just toggle state if no parameter is givenhh
is now an alias for hf, hidden
--disk-usage
, DiskUsage
)rf
clears the screen even when ClearScreen
is set to false
TrimNames
(config file) and --no-trim-names
tag list FILENAME...
)jl
commandColorLinksAsTarget
, to colorize symlinks as target filesp
command)xclip.sh
, to copy the current line buffer to the clipboard via a custom keybindingexport
can now export multiple variables at onceadd
subcommand to tag
for consistency with the remaining subcommandsedit
subcommand to the config
commandlist
subcommand to the net
commandset
subcommand to the prompt
commandlist
subcommand to kb
. Add both list
and readline
to TAB completion.log
command has now this syntax: log [cmd, msg [on, off, status, clear]]
actions
, config
, fc
, mime
, net
, log
, and prompt
commands.filescounter
command was removed (only fc
remains)log.clifm
file split into two files: cmdlogs.clifm
and msglogs.clifm
--no-bold
!
whenever there was an error reading a subdir (total size may not be accurate)cd
returns 1 in case of EACCESS error, like most shells do.cmd edit <TAB>
with available text editors (for all internal commands taking edit
as subcommand)=
), MIME types (@
), and bookmarks (b:
)jl
(an actual command) triggers the warning promptjl STR
is returning an error code even if a match was founddir/*<TAB>
as first word triggers the warning prompt. PARTIALLY SOLVED: if there are matches, the prompt switches back to normal.ListDirsFirst
in the config file is brokenhn
) not workingclifm.1
crashes man(1) in TermuxLira
fails to identify Zstandard files not ending with .zst
./FILE
triggers the warning prompt even if FILE exists in CWD./FILE
if FILE is not an executable file/bin/ls
triggers the warning prompt, even if /bin/ls
existsLira
)pp
command) and running colorlessp
command for character and block devices wrongly set to device ID instead of ID of device containing fileClip
plugin reintroduced and rewritten--purge [RANK]
option to jump: purge both non existent dirs (no param) and dirs ranked below RANKj<ENTER>
), right pad fields, and sort by rankfzfpreview
by defaultconfig
command can be used instead of edit
(which is now deprecated)config dump
: List current settings highlighting those that deviate from the default valuesjump edit
and prompt edit
commandsdefault-256
(a 256 colors version of the default theme)default-256
color scheme if 256 colors support is detected (ColorScheme
must be unset)TimeStyle
(config file)ws
command)unset
subcommand (ws NUM unset
)cs
command)--no-ctrl-d-quits
, --unicode
, --no-unicode
, and --no-toggle-workspaces
switchesuc, unicode
commandPropFields
in the config file.--apparent-size
changed to --no-apparent-size
)p
command for character and block devices