Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!selfless.tophat.at!newsfeed.xs4all.nl!newsfeed5.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.000 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'subject:ANN': 0.02; 'python.': 0.04; 'extensions': 0.04; 'executing': 0.05; 'args': 0.07; 'char': 0.07; 'path,': 0.07; 'paths': 0.07; 'repository': 0.07; 'width': 0.07; 'python': 0.08; '==========': 0.09; 'controlled': 0.09; 'ftp,': 0.09; 'function:': 0.09; 'incompatible': 0.09; 'rewritten': 0.09; 'substitution': 0.09; 'suggestions,': 0.09; 'examples': 0.12; 'written': 0.14; 'binary': 0.14; 'extension': 0.14; '"$*"': 0.16; '"$@"': 0.16; '".."': 0.16; '"/"': 0.16; 'bindings': 0.16; 'cache.': 0.16; 'canceled': 0.16; 'consult': 0.16; 'crashes': 0.16; 'curses': 0.16; 'emacs': 0.16; 'file"': 0.16; 'fuse': 0.16; 'modes': 0.16; 'ncurses': 0.16; 'skip:~ 10': 0.16; 'smb': 0.16; 'ssh,': 0.16; 'url:devel': 0.16; 'xxx"': 0.16; 'entries': 0.16; 'url:code': 0.17; 'shell': 0.19; 'command': 0.19; 'convert': 0.19; 'to:2**1': 0.20; 'interface': 0.21; 'variable': 0.21; 'file,': 0.22; 'trying': 0.23; 'documented': 0.23; 'tool,': 0.23; 'welcome.': 0.23; 'code': 0.24; "doesn't": 0.25; 'integration': 0.26; 'string': 0.26; 'fixed': 0.27; 'pass': 0.27; 'correct': 0.28; 'message-id:@mail.gmail.com': 0.28; 'bugs': 0.29; 'mode': 0.29; 'matches': 0.29; 'temporary': 0.29; 'version': 0.29; 'fails,': 0.30; 'tar': 0.30; 'unicode,': 0.30; 'changes': 0.30; 'entry': 0.31; 'sort': 0.31; 'hi,': 0.31; 'cases': 0.32; 'martin': 0.32; 'minor': 0.32; 'properly': 0.32; 'to:addr:python-list': 0.33; 'break': 0.33; 'handling': 0.33; 'asking': 0.33; 'lines': 0.33; 'error': 0.33; 'shows': 0.34; 'file': 0.34; 'corner': 0.34; 'characters': 0.34; 'licensed': 0.34; 'received:209.85.216.46': 0.34; 'received:mail- qw0-f46.google.com': 0.34; 'skip:= 10': 0.34; 'core': 0.35; 'description:': 0.35; 'skip:" 10': 0.35; 'flag': 0.35; 'gnu': 0.35; 'store': 0.35; 'from:': 0.36; 'options': 0.36; 'received:google.com': 0.37; 'issue': 0.37; 'useful': 0.37; 'change': 0.37; 'received:209.85': 0.37; 'bigger': 0.37; 'faq:': 0.37; 'skip:= 20': 0.37; 'to:addr:python-announce-list': 0.37; 'page': 0.37; 'platforms': 0.37; 'could': 0.38; 'screen': 0.38; 'url:org': 0.38; 'features.': 0.38; 'subject:: ': 0.38; 'some': 0.38; 'url:google': 0.38; 'should': 0.39; 'to:no real name:2**1': 0.39; 'received:209': 0.39; 'version:': 0.39; 'url:p': 0.63; 'full': 0.63; 'sfxlen:3': 0.63; 'link': 0.64; 'actions': 0.65; 'comments,': 0.65; 'direct': 0.65; 'view': 0.66; 'show': 0.66; 'compressed': 0.68; 'xxx': 0.68; 'offer': 0.71; 'anything.': 0.72; 'spaces': 0.73; 'saving': 0.74; 'url:es': 0.80; '(home': 0.84; 'isp': 0.84; 'mount': 0.84; 'panel,': 0.84; 'server)': 0.84; 'xin': 0.84; 'history,': 0.91; 'lists:': 0.91; 'reorganize': 0.91; 'completion': 0.97 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=VKiTAH1b7KdFF6lrsoRjRmij7g+h+prTv/gOEosXIyY=; b=IB6iTgon4VZ8WblWmv1c9yIQeg5Bor0/9wbk0lMig+SC9L7Ff9AEG8BlzZcEjW6rfa gGoTX3M9NZXnOdMq1vPbCf5OUI9HeMrEOsUAcaBp9Rp91w3nBSmI+ZGRGy5MtEGjdaDQ acX91ddS07FghiacLN5N4RG2k8F2XrW2D220A= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type :content-transfer-encoding; b=OFpwzOdL+tpLmDe///0SS9hfCc29Lj0rDW15scZqfapcMAS7zBrdnUwdJDqTsAnnVM KFYYS8a1L1+QPLEWCLhtVbKbiAfmdcWvnzsulvo4ZSEPbjaXEieus5tvUXWYOlBj0NW5 yD4DuO+Oyj5XNVsA1ZMNXsIyJzRmiwNcZn4ng= MIME-Version: 1.0 Date: Sat, 21 May 2011 13:25:31 +0200 Subject: ANN: lfm v2.3 From: =?UTF-8?B?ScOxaWdvIFNlcm5h?= To: python-list@python.org, python-announce-list@python.org Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 116 NNTP-Posting-Host: 82.94.164.166 X-Trace: 1305977142 news.xs4all.nl 49181 [::ffff:82.94.164.166]:44218 X-Complaints-To: abuse@xs4all.nl Xref: x330-a1.tempe.blueboxinc.net comp.lang.python:5915 Hi, new version of lfm. Note that it requires python v2.5+ now, and it's incompatible with v3.x. Description: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Last File Manager is a powerful file manager for the UNIX console. It has a curses interface and it's written in Python. 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 - tabs - bookmarks - history - vfs for compressed files - 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 - fast file viewer with text and binary modes - ...and many others Download it from: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D http://inigo.katxi.org/devel/lfm (home server) or http://code.google.com/p/lfm/ or from http://www.terra.es/personal7/inigoserna/lfm when crap ISP updates its cache. Changes since last version: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + About the code - lfm needs python version 2.5 or upper now + New features - PowerCLI, an advanced command line interface with completion, persisten= t history, variable substitution and many other useful features. As this is a very powerful tool, read the documentation for examples - history . use different types of history lists: path, file, glob, grep, exec, c= li for the different forms and actions . persistent history between sessions =3D> ~/.lfm_history . controlled by a flag in configuration - find/grep . configuration options for ignorecase and regex . sort results . show results as FILE:lineno . much faster - show diff between xxx.orig and xxx files - tar files compress/uncompress - messages.EntryLine has been rewritten, with many new key shorcuts. This= is the core behind most of the forms lfm shows when asking for anything. Consult the documentation + Minor changes - reorganize "un/compress file" and "compress directory xxx" in file_menu - config: sort entries when saving - improve load/save handling of new options not present in ~/.lfmrc - added new extensions - messages.error rewritten to offer better messages - added some new key shortcuts messages.SelectItem + Documentation - added a note about python v2.5+ is needed from now on - 'lfm' shell function: change "$*" to "$@" to properly handle paths containg spaces - FAQ: added information about fuse to mount ssh, ftp, smb and webdav - reorganized and fixed key bindings section - documented .lfmrc contents - added link to public BitBucket repository + lots of bugs fixed: - pyview: . last char is not shown if file size is small . last line and wrap: cursor_down or page_next . when number of lines =3D=3D window height - ncurses v5.8 doesn't accept 0 as width or height - UI crashes: . time string could contain non-ascii characters (reported by Martin Steigerwald) . when filenane length is large in full pane mode . MenuWin, SelectItem: ellipsize entries if bigger than screen width - find or find&grep: . pass "-type f" to find as ".#filename" are temporary emacs files/lin= ks that break search . show wrong matches if results contain directories or files with space= s . file->goto_file: move to correct page - copy/move "/file" to "/anydir/anyplace" fails, trying to copy/move to "= /" - executing non-ascii programname or args - convoluted issue with link to directory in corner cases (reported by Xin Wang) - rename/backup ".." crashes - we should not compress ".." - create_link, edit_link: don't show error if canceled - only store one copy of the same entry in history - tree: "disable" colors of active panel, "enable" at end - Config.save: work with unicode, only convert to encoding when saving Of course, all comments, suggestions, etc. are welcome. Best regards, I=C3=B1igo Serna