exit from pyview by ESC
[lfm.git] / NEWS
blob394fca0572544e349cc9bb70acfc87b2008084d7
1 Version 2.0 ("Nine 1/2 weeks... ok, ok, and 3 years") - 2007/09/03:
3   + tabs implemented
4   + color files by extension [Andrey Skvortsov]
5   + new IPC code and API; more flexible, powerful and stable
6   + new un/compress vfs API, added support for .zip and .rar files
7   + make sort mode per tab, not globally
8   + support locale [Andrey Skvortsov]
9   + speed up loading directory contents
10   + speed cursor movement, don't waste much CPU
11   + use logging module in lfm and pyview for debugging
12   + overwrite_all_none: yes, all, no  => new options: "none", "skip all""
13   + rewrite/refactor most of code to make lfm more robust and clean
14   + preferences:
15     - change file name preferences.py => config.py
16     - use ConfigParser
17   + use tempfile secure versions mkdtemp() and mkstemp()
18   + added man pages [Sebastien Bacher]
19   + use reST for documentation
20   + check for python version 2.3 or higher in lfm and pyview
21   + updated to GPL v3 license
22   + and fixed lot of bugs, some of them:
23     - general:
24       . delete garbage if user stops action
25       . run 'do_special_view_file' as dettached from lfm window
26       . path expand in bookmarks ("~/") [Andrey Skvortsov]
27       . an ugly traceback crash appears when user starts "lfm path" and has 
28         no permissions to enter. Show error message and default to current 
29         directory
30       . lfm crashes when filename is not encoded with same codec than 
31         g_encoding utils.{decode|encode}. Needs curses module linked against 
32         ncursesw to work properly
33       . sort_mix_cases = 1 performance degrades on larger dirs.
34         Reported by Andrey Skvortsov
35       . escape filenames with chars $ ". Reported by Andrey Skvortsov
36     - user interface:
37       . maximize/minimize window don't crash lfm anymore
38       . dialogs appear at bad position after terminal is resized
39       . handle window resize in Tree mode
40       . refresh display after canceling completion dialog
41       . "the size of the right pane does not fill the last column in 
42         terminal if their number is odd" [Andrey Skvortsov]
43       . fix crash when "df" shows entries in two different lines (device 
44         name is too large, f.e. in linux lvm2 volumes)
45       . if you try to enter a directory with insufficient permissions, after 
46         the error message is closed the cursorline refreshes to the first line
47     - compress:
48       . added -i flag (--ignore-zeros) flag to tar [Andrey Skvortsov]
49       . standard tar needs - for flags
50     - vfs:
51       . vfs.py: regenerate_file, if user stops process, tempfile can't be 
52         deleted
53     - find/grep:
54       . escape special chars (- \ ( ) [ ]) in patterns
55       . don't crash when find/grep returns no results
56       . bug when matches occur in binary files
57     - pyview:
58       . goto line 0 in pyview showed a blank screen
59       . crash in file info if filename is too long
61 Version 1.0 was never publically released - 2006
63 Version 0.92 was never publically released - 2005
65 Version 0.91 ("It rocks... yeah!") - 2004/06/30:
67   + quite stable and robust, doesn't crash
68   + faster
69   + new option: show_dotfiles flag
70   + new option: detach_terminal_at_exec flag: useful f.e. if you 
71     want to run elinks as web browser attached to lfm terminal
72   + file associations and applications can be configured in preferences
73   + now each application has only 1 associated program, *breaking old .lfmrc*
74   + perms dialog: users & groups sorted alphabetically
75   + uncompress in other panel
76   + resizing terminal works in lfm, pyview. Be careful with dialogs
77   + columns size eliminated from preferences
78   + 1-panel view redesigned
79   + ESC closes dialogs, not lfm or pyview
80   + Ctrl-D: select bookmark dialog
81   + code reorganized: actions.py, vfs.py
82   + added classifiers to setup.py script
84 Version 0.90 was never publically released
86 Version 0.9 ("...and the day arrived") - 2002/09/05:
88   + ZIP files can be un/compressed now. ZIP vfs works too
89   + added 'rebuild vfs' and 'rebuild_vfs' question / option. Configurable.
90     There is no need to wait until vfs file is rebuilt
91   + Applied some good patches from Bartosz Oler (liar AT furrynet DOT org):
92     1. colors customization: Now you can customize the colors lfm use in
93        the configuration file, 'colors' section. Each color is defined by
94        a string with its name. It looks like this:
95               element foreground_color background_color
96     2. Allow preferences values to contain colons in the configuration file.
97     3. Lack of a bookmark's definition shouldn't be an error.
98   + pyview: new features:
99       - read from stdin
100       - go to / set bookmarks
101       - open shell
102   + pyview doesn't show blank screen a the end of the file, now it shows last
103     line
104   + lfm works now with "from __future__ import division", prepared for Python 3.0
105   + set python2 as default interpreter for setup.py, lfm, lfm.py, pyview and
106     pyview.py
107   + my email address has changed <inigoserna AT telefonica DOT net>
108   + Bugs fixes. See ChangeLog for complete list
109       - lfm:
110           * create temporary files with mask 0066 and directories with perms
111             0700, so only owner can read/write them
112           * avoid zombie processes when using 'fork' (now fork twice or threads)
113           * show correct filename when an error occurs while uncompressing file
114           * don't compress '..' directory
115           * when lfm exits after checking command line options, make 'lfm' shell
116             script don't show path error
117           * when un/compressing files cursorbar must remain in the same file
118           * when, at start, lfm can't enter into a dir due to directory permissions
119           * crash if len(line) == width of cursorbar window
120                   * don't append '*' to historic in entries
121                   * fix cursor bar position after sorting
122       - pyview:
123           * when user hasn't permissions to read file, exit gracefully instead
124             of crashing
125           * last char in file is not showed
127 Version 0.8 ("Close to Paradise") - 2002/03/04:
129   + Implemented VFS feature to enter into .tar.gz and .tar.bz2 files
130   + Panelize vfs option in find/grep implemented
131   + Tree panel implemented
132   + 'lfm' and 'pyview' are simple scripts now, not just a copy of the .py files.
133     __init__.py contains global variables now
134   + A new message window is used to show  work in progress, in place of a
135     message in status bar. 'run_thread' function has been cleaned too
136   + Copy / move features now use my own function to walk trees, instead of
137     'shutil.copytree' which originates some problems and bugs
138   + In ChangePermissions window, the cursor movement is circular now
139   + Change copyright date to years 2001-2
140   + I don't need a crypt / uncrypt feature, so eliminated from TODO list
141   + Many bugs fixes and functions rewrites. See ChangeLog for complete list
142       - lfm:
143           * if panel2 shows 'a' file in panel, and in panel1 'a' is moved or
144             deleted, lfm crashes
145           * after moving a file cursor goes to next directory as deletion does
146           * catching an exception after not been able to copy => it crashed
147             when trying to delete copied files
148           * "messages.SelectItem, messages.FindfilesWin, messages.MenuWin,
149             messages.ChangePerms: upperleft corner disappears"
150           * findgrep: fix bug: if selected file has a ':' in name
151       - pyview: 
152           * changing 'addch' by 'addstr' shows individual chars >= 0xA0 (meta
153             chars) correctly, neither in reversed video or as 2 chars
154           * "if wrap mode => fix prev/next page & up/down cursor". Now 
155             they move to screen lines, not to physical lines
157 Version 0.7 ("Hello Darling, I'm here") - 2001/11/30:
159   + 'pyview', a new pager/viewer for use with lfm or standalone,
160     internally or externally. It is used as default pager too.
161     Some features: Text / Hex view, backwards & forwards search, 
162                    goto line/byte, un/wrap mode, documentation, ...
163   + Rewrite 'show filesystems info' to use internal viewer
164   + New 'run_thread' function in which almost every proccess is executed, 
165     so they can be stopped and there is a working signal too.
166     'do_something_on_file' does not use it
167   + Implemented 'show file info'
168   + Check errors when un/compressing
169   + Support for .bz2
170   + Removed tar 'v' flag in un/compressing
171   + Fixed completition, it should work perfectly now
172   + Added Ctrl-D key to delete the whole content of the EntryLine
173   + Implemented help: README, NEWS, TODO, ChangeLog or COPYING files
174   + Added new function to show special files: html, graphics, ...,
175     so we have defined new programs and file types too
176   + Added new preference: show_output_after_exec, defaults to yes
177   + Fix cursor position after deleting files
178   + Default configuration is now saved inmediately
179   + Many other bugs fixed again (see ChangeLog)
181 Version 0.6 was never publically released
183 Version 0.5 ("Last call to London") - 2001/08/07:
185   + F2 file menu, added many functions
186   + F9 general menu, added many functions
187   + Implemented find and grep
188   + File permissions, owner and group has a window now
189   + Implemented preferences, edition has to be improved, of course,
190     but loading and saving works
191   + Added 'show filesystems info' feature
192   + Now 'q' or F10 exits to current path, see proper README section
193   + Default pager changed to 'less'
194   + Documentation has been improved
195   + 'setup.py' now installs docs
196   + Many bug fixes and functions rewrites:
197       - home and end keys work ok now
198       - not all people use bash-type shells, so don't use 2>&1
199       - use popen2.popen3 instead of os.popen to catch messages
200       - manage problems with move while files don't fit into destination
201       - option 'b' does not exist in Solaris' 'du -s' command
202       - fix a problem while moving files if destination has no enough space
203       - many others
205 Version 0.4 - 2001/07/19:
207   + First public release