lfm v3.0 released
Yesterday I released lfm version 3.0, the powerful file manager for the UNIX console I started coding in 2000 or 2001.
This is an important release as it’s the first compatible with Python 3, in fact it requires Python 3.4+.
Some of the features you can find in lfm:
- console-based file manager for UNIX platforms
- 1-pane or 2-pane view
- tabs
- files filters
- bookmarks
- history
- VFS for compressed files
- tree view
- dialogs with entry completion
- PowerCLI, a command line interface with advanced features
- fast access to the shell
- direct integration of find/grep, df and other tools
- color files by extension [Andrey Skvortsov]
- fully customizable themes (colors)
- fully customizable key bindings
- support for filenames with wide chars, f.e. East Asian
- …and many others
NOTE: If you come from v2.3 please read the Upgrade section in the documentation.
More information
- Home page: https://inigo.katxi.org/devel/lfm/
- Pypi: https://pypi.python.org/pypi/lfm
- Code repository: https://bitbucket.org/inigoserna/lfm3
Of course, all comments, suggestions, etc. are welcome.
Changes since last version
Version 3.0 ("Only you") - 2015/10/23:
+ About the code
- almost completely rewritten from scratch
. it hasn't been tested as much as lfm v2.x series on non-linux OS
- requires Python v3.4+
- pyview, the file viewer, has been removed from lfm package
- configuration location has changed to a new directory and files:
~/.config/lfm/{lfm.ini, lfm.keys, lfm.theme, lfm.history}
+ New features
- fully customizable themes (colors)
- fully customizable key bindings
. allow Alt-key shorcuts (A-)
. only for main window (not for dialogs)
- files filters (using globs)
. information in pane frame: ".F" => show dotfiles, active filters
. filters are a property of a tab, they remain active even when chdir
. Ctrl-f: edit current filter
. Some examples:
. "*.png,*.jpg" => hide all PNG and JPEG files
. "*.jpg,!*shot*" => hide all JPEG files except those with 'shot' in the name
. "*,!*py" => hide all except python source files
- up to 35 bookmarks (0-9, a-z)
. b: go to bookmark, B: set bookmark, C-d: select bookmark
. fix: don't delete bookmark at start if path does not exist
- nested archive handling (vfs inside vfs) works now
- added optional support for filenames with wide chars, f.e. East Asian
. to enable, set 'use_wide_chars' flag in configuration or use -w command line flag
. it's disabled by default for performance
. it's not perfect, but it mostly works
- there are 2 different versions of move_file to chose from in the key
bindings file:
. move_file: old implementation
. move_file2: alternative version using shtutil.move instead of copy & delete. Faster but less control of errors
- new action: redraw screen (default key A-r)
+ Changes & improvements (vs v2.x):
- chmod & chown/chgrp are 2 different actions now
- cursor_goto_file (C-s): find text pattern (no regex or glob) in the whole file name, not at the beginning as v2.x
- cursor_goto_file_1char (A-s): go to file by 1st letter of name (old C-s behaviour)
- bookmarks have new key bindings:
b: go to bookmark, B: set bookmark, C-d: select bookmark
- PowerCLI:
. ending command with % must be $ now
. added new date variables: dm, dc, da, dn
. ending command with % must be $ now
. added new date variables: dm, dc, da, dn
. old $d variable is $p now
- find/grep: panelize = create vfs with matched files
. if rebuild: all files modifications or deletions are translated to original directory so be careful!
- pyview, the file viewer, has been removed from lfm package
+ Fixes in v3.0 (vs v2.x):
- nested archive handling (vfs inside vfs) works now
- find & grep with spaces in file name
- wide chars file names support (f.e. Eastern languages) => lfm -w
- sort by size after show dirs size
- move_file: not overwritten files in destination are not deleted