Import of less version 394
[dragonfly.git] / contrib / less-394 / NEWS
blob4a532f4725451ddf8a1198e38cf107f569b3c64d
2                      NEWS about less
4 ======================================================================
6   For the latest news about less, see the "less" Web page:
7       http://www.greenwoodsoftware.com/less
8   You can also download the latest version of less from there.
10   To report bugs, suggestions or comments, send email to bug-less@gnu.org.
12 ======================================================================
15         Major changes between "less" versions 382 and 394
17 * Add history file to save search and shell command history between
18   invocations of less.
20 * Improve behavior of history list for search and shell commands.
22 * Add -K (or --quit-on-intr) option to make less exit immediately on ctrl-C.
24 * Improve handling of UTF-8 files and commands, including better
25   line wrapping and handling double-width chars.
27 * Added LESSUTFBINFMT environment variable to control display of
28   non-printable characters in a UTF-8 file.
30 * Add --with-secure option to configure, to make it easier to
31   build a secure version of less.
33 * Show search matches in the status column even if search highlights
34   are disabled via the -G option or the ESC-u command.
36 * Improve performance when the file contains very long lines.
38 * Add "windows" charset.
40 * Add man page for lessecho.
42 * Add support for erase2 character, treated same as erase.
44 * Use ASCII lowercase/uppercase logic when operating on the command line.
46 * Update makefile for Borland C++ 5.5.1.
48 * Fix bug in calculating number of pages for %D prompt.
50 * Fix bug in handling tag file error.
52 * Fix obscure bug if input file is deleted while viewing help.
54 * Fix bug handling filenames which include square brackets.
56 * Fix possible buffer overflow in "global" tag search.
58 * Fix possible buffer overflow in usage of LESSOPEN and LESSCLOSE.
60 * Fix buffer overflow in reverse search.
62 ======================================================================
64         Major changes between "less" versions 381 and 382
66 * Removed some old copyrighted code.
67   This probably breaks OS/9 support.
69 ======================================================================
71         Major changes between "less" versions 378 and 381
73 * New -L option to disable LESSOPEN processing.
75 * Further support for large (64 bit) file addressing.
76   Large file support is now set up by the configure script.
78 * Use autoconf 2.54.
79   Replace configure.in, acconfig.h, defines.h.top with configure.ac.
81 * Overstriking underscore with underscore is now bold or underlined 
82   depending on context.
84 * Use only 7 spaces for line numbers in -N mode, if possible.
86 * Fix some bugs in handling overstriking in UTF-8 files.
88 * Fix some nroff issues in the man page.
90 ======================================================================
92         Major changes between "less" versions 376 and 378
94 * Bug fixes:
95   Default buffer space is now 64K as documented.
96   Search highlighting works properly when used with -R.
97   Windows version works properly when input file contains carriage returns.
98   Clean up some compiler warnings.
100 ======================================================================
102         Major changes between "less" versions 358 and 376
104 * -x option can now specify multiple variable-width tab stops.
106 * -X option no longer disables keypad initialization.
107   New option --no-keypad disables keypad initialization.
109 * New commands t and T step through multiple tag matches.
110   Added support for "global(1)" tags
111   (see http://www.gnu.org/software/global/global.html).
113 * New prompt style set by option -Pw defines the message printed 
114   while waiting for data in the F command.
116 * System-wide lesskey file now defaults to sysless in etc directory 
117   instead of .sysless in bin directory.
118   Use "configure --sysconfdir=..." to change it.
119   (For backwards compatibility, .sysless in bin is still recognized.)
121 * Pressing RightArrow or LeftArrow while entering a number now shifts
122   the display N columns rather than editing the number itself.
124 * Status column (enabled with -J) now shows search results.
126 * Windows version sets window title.
128 * Default LESSCHARSET for MS-DOS versions is now "dos".
130 * Searching works better with ANSI (SGR) escape sequences.
131   ANSI color escape sequences are now supported in the MS-DOS (DJGPP) version.
133 * Improved performance in reading very large pipes.
135 * Eliminated some dependencies on file offets being 32 bits.
137 * Fixed problems when viewing files with very long lines.
139 * Fixed overstriking in UTF-8 mode, and overstriking tabs.
141 * Improved horizontal shifting of text using -R option with ANSI color.
143 * Improved handling of filenames containing shell metacharacters.
145 * Some fixes for EBCDIC systems.
147 * Some fixes for OS/2 systems.
149 ======================================================================
151         Major changes between "less" versions 354 and 358
153 * Add -J (--status-column) option to display a status column.
155 * Add -# (--shift) option to set default horizontal shift distance.
156   Default horizontal shift distance is now one-half screen width.
158 * Horizontal shifting does not shift line numbers if -N is in effect.
160 * Horizontal shifting acts as though -S were set, to avoid confusion.
162 ======================================================================
165         Major changes between "less" versions 352 and 354
167 * Allow space after numeric-valued command line options.
169 * Fix problem with configuring terminal libraries on some systems.
171 * Add support for PCRE regular expression library.
173 * Add --with-regex option to configure to allow manually selecting
174   a regular expression library.
176 * Fix bug compiling with SECURE = 1.
178 ======================================================================
181         Major changes between "less" versions 346 and 352
183 * Enable UTF-8 if "UTF-8" appears in locale-related environment variables.
185 * Add --with-editor option to configure script.
187 * The -M prompt and = message now show the top and bottom line number.
189 * Fix bug in running the editor on a file whose name contains quotes, etc.
191 * Fix bug in horizontal scrolling of long lines.
193 * Fix bug in doing :d on a file which contains marks.
195 * Fix bug causing cleared lines to sometimes be filled with standout, 
196   bold, underline, etc. on certain terminals.
198 * Fixes for MS-DOS (DJGPP) version.
200 ======================================================================
203         Major changes between "less" versions 340 and 346
205 * The UTF-8 character set is now supported.
207 * The default character set is now latin1 rather than ascii.
209 * New option -R (--RAW-CONTROL-CHARS) is like -r but handles 
210   long (wrapped) lines correctly, as long as the input contains only 
211   normal text and ANSI color escape sequences.
213 * New option -F (--quit-if-one-screen) quits if the text fits on
214   the first screen.
216 * The -w option now highlights the target line of a g or p command.
218 * A system-wide lesskey file is supported (LESSKEY_SYSTEM).
220 * New escape for prompt strings: %c is replaced by column number.
222 * New escape for prompt strings: %P is replaced by percentage into
223   file, based on line number rather than byte offset.
225 * HOME and END keys now jump to beginning of file or end of file.
227 ======================================================================
230         Major changes between "less" versions 337 and 340
232 * Command line options for less may now be given in either the old 
233   single-letter form, or a new long name form (--option-name).
234   See the less man page or "less --help" for the list of long option names.
236 * Command line options for lesskey may now be given in a new long name
237   form.  See the lesskey man page for the list of long option names.
239 * New command -- toggles an option using the long option name.
241 * New command __ queries an option using the long option name.
243 * The old -- command is renamed as -!.
245 * If a ^P is entered between the dash and the option letter of the -
246   command, the message describing the new setting is suppressed.
248 * Lesskey files may now contain \k escape sequences to represent the
249   "special" keys (arrows, PAGE-UP/PAGE-DOWN, HOME, END, INSERT, DELETE).
251 * New command :d removes the current file from the list of files.
253 * New option -~ (like -w before version 335)
254   suppresses tildes after end-of-file.
256 * Less is now released under the GNU General Public License.
258 ======================================================================
261         Major changes between "less" versions 335 and 337
263 * Fixed bugs in "make install".
265 ======================================================================
268         Major changes between "less" versions 332 and 335
270 * The old -w flag (suppress tildes after end-of-file) has been removed.
272 * New -w flag highlights the first new line after a forward-screen.
274 * New -W flag highlights the first new line after any forward movement.
276 * Window resize works even if LINES and/or COLUMNS environment 
277   variables are incorrect.
279 * New percent escapes for prompt strings:
280   %d is replaced by the page number, and
281   %D is replaced by the number of pages in the file.
283 * Added charsets "iso8859" and "ebcdic".
285 * In Windows version, uses HOMEDRIVE and HOMEPATH if HOME is not defined.
287 * Fixed some bugs causing incorrect display on DOS/Windows.
289 ======================================================================
292         Major changes between "less" versions 330 and 332
294 * Filenames from the command line are entered into the command history,
295   so UPARROW/DOWNARROW can be used to retrieve them from the :e command.
297 * Now works correctly on Windows when using a scrolling terminal
298   window (buffer larger than display window).
300 * On Windows, now restores the console screen on exit.  
301   Use -X to get the old behavior.
303 * Fixed bug on Windows when CAPS-LOCK or NUM-LOCK is pressed.
305 * Fixed bug on Windows when piping output of an interactive program.
307 * Fixed bug in tags file processing when tags file has DOS-style
308   line terminators (CR/LF).
310 * Fixed compilation problem on OS/2.
312 ======================================================================
315         Major changes between "less" versions 321 and 330
317 * Now supports filenames containing spaces (in double quotes).
318   New option -" can be used to change the quoting characters.
320 * In filename completion, a slash is appended to a directory name.
321   If the environment variable LESSSEPARATOR is set, the value of
322   that variable, rather than a slash, is appended.
324 * LeftArrow and RightArrow are same as ESC-[ and ESC-].
326 * Added commands ESC-( and ESC-), same as ESC-[ and ESC-].
328 * A "quit" command defined in a lesskey file may now have an "extra" 
329   string, which is used to return an exit code from less when it quits.
331 * New environment variables LESSMETACHARS and LESSMETAESCAPE provide
332   more control over how less interfaces to the shell.
334 * Ported to Microsoft Visual C compiler for Windows.
336 * Ported to DJGPP compiler for MS-DOS.
338 * Bug fixes.
340 ======================================================================
343         Major changes between "less" versions 291 and 321
345 * Command line at bottom of screen now scrolls, so it can be longer 
346   than the screen width.
348 * New commands ESC-] and ESC-[ scroll the display horizontally.
350 * New command ESC-SPACE scrolls forward a full screen, even if it
351   hits end-of-file.
353 * Alternate modifiers for search commands: ^N is same as !,
354   ^F is same as @, and ^E is same as *.
356 * New modifier for search commands: ^K means highlight the matches
357   currently on-screen, but don't move to the first match.
359 * New modifier for search commands: ^R means don't use regular
360   expressions in the search.
362 * Environment variable LESSKEY gives name of default lesskey file.
364 * Environment variable LESSSECURE will force less to run in
365   "secure" mode.
367 * Command line argument "--" signals that the rest of the arguments
368   are files (not option flags).
370 * Help file (less.hlp) is no longer installed.  Help text is now 
371   embedded in the less executable itself.
373 * Added -Ph to change the prompt for the help text.
374   Added -Ps to change the default short prompt (same as plain -P).
376 * Ported to the Borland C compiler for MS-DOS.
378 * Ported to Windows 95 & Windows NT.
380 * Ported to OS-9.
382 * Ported to GNU Hurd.
384 ======================================================================
387         Major changes between "less" versions 290 and 291
389 * Less environment variables can be specified in lesskey files.
391 * Fixed MS-DOS build.
393 ======================================================================
396         Major changes between "less" versions 278 and 290
398 * Accepts GNU-style options "--help" and "--version".
400 * OS/2 version looks for less.ini in $HOME before $INIT and $PATH.
402 * Bug fixes
404 ======================================================================
407         Major changes between "less" versions 252 and 278
409 * A LESSOPEN preprocessor may now pipe the converted file data to less,
410   rather than writing it to a temporary file.
412 * Search pattern highlighting has been fixed.  It now highlights 
413   reliably, even if a string is split across two screen lines,
414   contains TABs, etc.
416 * The -F flag (which suppress search highlighting) has been changed 
417   to -G.  A new flag, -g, changes search highlighting to highlight 
418   only the string found by the last search command, instead of all 
419   strings which match the last search command.
421 * New flag -I acts like -i, but ignores case even if the search 
422   pattern contains uppercase letters.
424 * Less now checks for the environment variable VISUAL before EDITOR.
426 * Ported to OS/2.
428 ======================================================================
431         Major changes between "less" versions 237 and 252
433 * Changes in line-editing keys:
434   The literal key is now ^V or ^A rather than \ (backslash).
435   Filename completion commands (TAB and ^L) are disabled 
436   when typing a search pattern.
438 * Line-editing command keys can be redefined using lesskey.
440 * Lesskey with no input file defaults to $HOME/.lesskey
441   rather than standard input.
443 * New option -V displays version number of less.
445 * New option -V displays version number of lesskey.
447 * Help file less.hlp is now installed by default in /usr/local/share 
448   rather than /usr/local/lib.
451 ======================================================================
454         Major changes between "less" versions 170 and 237
456 * By popular demand, text which matches the current search pattern
457   is highlighted.  New -F flag disables this feature.
459 * Henry Spencer's regexp.c is now included, for systems which do not
460   have a regular expression library.
461   regexp.c is Copyright (c) 1986 by University of Toronto.
463 * New line-editing keys, including command history (arrow keys) and 
464   filename completion (TAB).
466 * Input preprocessor allows modification of input files (e.g. uncompress)
467   via LESSOPEN/LESSCLOSE environment variables.
469 * New -X flag disables sending termcap "ti" and "te" (initialize and
470   deinitialize) strings to the terminal. 
472 * Changing -i from within less now correctly affects a subsequent
473   repeated search.  
475 * Searching for underlined or overstruck text now works when the -u
476   flag is in effect, rather than the -i flag.
478 * Use setlocale (LANG and LC_CTYPE environment variables) to determine
479   the character set if LESSCHARSET/LESSCHARDEF are not set.
481 * The default format for displaying binary characters is now standout
482   (reverse video) rather than blinking.  This can still be changed by
483   setting the LESSBINFMT environment variable.
485 * Use autoconf installation technology.
487 * Ported to MS-DOS.
489         ********************************
490           Things that may surprise you
491         ********************************
493 * When you enter text at the bottom of the screen (search string, 
494   filename, etc.), some keys act different than previously.  
495   Specifically, \ (backslash), ESC, TAB, BACKTAB, and control-L 
496   now have line editing functions.
498 * Some previous unofficial versions of less were able to display
499   compressed files.  The new LESSOPEN/LESSCLOSE feature now provides
500   this functionality in a different way.
502 * Some previous unofficial versions of less provided a -Z flag to 
503   set the number of lines of text to retain between full screen scrolls.
504   The -z-n flag (that is, -z with a negative number) provides this 
505   functionality.
508 ======================================================================
511         Major changes between "less" versions 123 and 170
513 * New option -j allows target lines to be positioned anywhere on screen.
515 * New option -S truncates displayed line at the screen width,
516   rather than wrapping onto the next line.
518 * New option -y limits amount of forward scroll.
520 * New option -T specifies a "tags" file.
522 * Non-printable, non-control characters are displayed in octal.
523   Such characters, as well as control characters, are displayed 
524   in blinking mode.
526 * New command -+ sets an option to its default.
527 * New command -- sets an option to the opposite of its default.
529 * Lesskey file may have a string appended to a key's action,
530   which acts as though typed in after the command.
532 * New commands ESC-^F and ESC-^B match arbitrary types of brackets.
534 * New command F monitors a growing file (like "tail -f").
536 * New command | pipes a section of the input file into a shell command.
538 * New command :x directly jumps to a file in the command line list.
540 * Search commands have been enhanced and reorganized:
541         n       Repeat search, same direction.
542         N       Repeat search, opposite direction.
543         ESC-/   Search forward thru file boundaries
544         ESC-?   Search backward thru file boundaries
545         ESC-n   Repeat search thru file boundaries, same direction.
546         ESC-N   Repeat search thru file boundaries, opposite direction.
547   Special character * causes search to search thru file boundaries.
548   Special character @ causes search to begin at start/end of file list.
550 * Examining a new file adds it to the command line list.
551   A list of files, or an expression which matches more than one file,
552   may be examined; all of them are added to the command line list.
554 * Environment variables LESSCHARSET and LESSCHARDEF can define
555   a non-ASCII character set.
557 * Partial support for MSDOS, including options -R for repainting screen
558   on quit, -v/-V to select video mode, and -W to change window size.
561 ======================================================================
564         Major changes between "less" versions 97 and 123
566 * New option (-N) causes line numbers to be displayed in the
567   text of the file (like vi "set nu").
569 * New option (-?) prints help message immediately.
571 * New option (-r) displays "raw" control characters, without
572   mapping them to ^X notation.
574 * New option (-f) forces less to open non-regular files
575   (directories, etc).
577 * New option (-k) can be used to specify lesskey files by name.
579 * New option (-y) can be used to set a forward scroll limit
580   (like -h sets a backward scroll limit).
582 * File marks (set by the m command) are now preserved when a new
583   file is edited.  The ' command can thus be used to switch files.
585 * New command ESC-/ searches all files (on the command line) 
586   for a pattern.
588 * New command ESC-n repeats previous search, spanning files.
590 * The N command has been changed to repeat the previous search
591   in the reverse direction.  The old N command is still available 
592   via :n.
594 * New command ESC-N repeats previous search in the reverse
595   direction and spanning files.
597 * 8 bit characters are now supported.  A new option (-g) can be 
598   used to strip off the eighth bit (the previous behavior).
600 * Options which take a following string (like -t) may now
601   optionally have a space between the option letter and the string.
603 * Six new commands { } ( ) [ and ] can be used to match
604   brackets of specific types, similar to vi % command.
606 * New commands z and w move forward/backward one window and
607   simultaneously set the window size.
609 * Prompt string expansion now has %L for line number of the last
610   line in the file, and %E for the name of the editor.
611   Also, % escapes which refer to a line (b=bottom, t=top, etc.)
612   can use j for the jump target line.
614 * New environment variable LESSEDIT can be used to tailor the
615   command string passed to the editor by the v command.
617 * Examining a file which was previously examined will return
618   to the same position in the file.
620 * A "%" is expanded to the current filename and a "#" to the 
621   previous filename, in both shell commands and the E command.
622   (Previously % worked only in shell commands and # worked 
623   only in the E command.)
625 * New command ":ta" is equivalent to "-t".
627 * New command "s" is equivalent to "-l".
629 * The - command may be followed by "+X" to revert to the default
630   for option X, or "-X" to get the opposite of the default.
632 * Lesskey files may now include characters after the action as
633   extra input to be parsed after the action; for example:
634   "toggle-option X" to toggle a specific option X.