ANN: lfm 2.0

Iñigo Serna inigoserna at
Tue Sep 4 00:02:36 CEST 2007

Hi out there,

After a few years working silently I'm very pleased to announce here the
so much awaited new version of 'lfm'.

Last File Manager is a simple but powerful file manager for the
UNIX console. It's written in Python, using curses module.
Licensed under GNU Public License version 3.

Some of the features you could find in lfm:
- console-based file manager for UNIX platforms
- 1-pane or 2-pane view
- bookmarks
- vfs for compressed files
- dialogs with entry completion
- fast access to a shell
- direct integration of find/grep, df and other tools
- tabs per pane
- color files by extension [Andrey Skvortsov]
- fast file viewer with text and binary modes
- ...and many others

Download it from:

or if it doesn't show last version (crap of ISP reverse proxy), try this
low-bandwidth home server:

Of course, all comments, suggestions etc. are welcome.

Changes since previous version:

Version 2.0 ("Nine 1/2 weeks... ok, ok, and 3 years") - 2007/09/03:

  + tabs implemented
  + color files by extension [Andrey Skvortsov]
  + new IPC code and API; more flexible, powerful and stable
  + new un/compress vfs API, added support for .zip and .rar files
  + make sort mode per tab, not globally
  + support locale [Andrey Skvortsov]
  + speed up loading directory contents
  + speed cursor movement, don't waste much CPU
  + use logging module in lfm and pyview for debugging
  + overwrite_all_none: yes, all, no  => new options: "none", 
    "skip all""
  + rewrite/refactor most of code to make lfm more robust and clean
  + preferences:
    - change file name =>
    - use ConfigParser
  + use tempfile secure versions mkdtemp() and mkstemp()
  + added man pages [Sebastien Bacher]
  + use reST for documentation
  + check for python version 2.3 or higher in lfm and pyview
  + updated to GPL v3 license
  + and fixed lot of bugs, some of them:
    - general:
      . delete garbage if user stops action
      . run 'do_special_view_file' as dettached from lfm window
      . path expand in bookmarks ("~/") [Andrey Skvortsov]
      . an ugly traceback crash appears when user starts "lfm path" and 
	has no permissions to enter. Show error message and default to
	current directory
      . lfm crashes when filename is not encoded with same codec than
        g_encoding utils.{decode|encode}. Needs curses module linked
	against ncursesw to work properly
      . sort_mix_cases = 1 performance degrades on larger dirs.
        Reported by Andrey Skvortsov
      . escape filenames with chars $ ". Reported by Andrey Skvortsov
    - user interface:
      . maximize/minimize window don't crash lfm anymore
      . dialogs appear at bad position after terminal is resized
      . handle window resize in Tree mode
      . refresh display after canceling completion dialog
      . "the size of the right pane does not fill the last column in
        terminal if their number is odd" [Andrey Skvortsov]
      . fix crash when "df" shows entries in two different lines (device
        name is too large, f.e. in linux lvm2 volumes)
      . if you try to enter a directory with insufficient permissions,
	after the error message is closed the cursorline refreshes to
	the first line
    - compress:
      . added -i flag (--ignore-zeros) flag to tar [Andrey Skvortsov]
      . standard tar needs - for flags
    - vfs:
      . regenerate_file, if user stops process, tempfile can't
	be deleted
    - find/grep:
      . escape special chars (- \ ( ) [ ]) in patterns
      . don't crash when find/grep returns no results
      . bug when matches occur in binary files
    - pyview:
      . goto line 0 in pyview showed a blank screen
      . crash in file info if filename is too long

Version 1.0 was never released in public

Best regards,
Iñigo Serna

More information about the Python-announce-list mailing list