NEWS revision 222906
1
2                     NEWS about less
3
4======================================================================
5
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.
9
10  To report bugs, suggestions or comments, send email to 
11  bug-less@gnu.org or markn@greenwoodsoftware.com.
12
13======================================================================
14
15	Major changes between "less" versions 443 and 444
16
17* Fix bug in unget handling that can cause strange effects on the
18  command line.
19
20* Remove vestiges of obsolete -l option that can cause a crash.
21
22======================================================================
23
24	Major changes between "less" versions 436 and 443
25
26* Change search behavior such that when a search is given an explicit 
27  pattern, the entire displayed screen is included in the search and 
28  not just the portion after the target line.
29
30* Add -A option to change search behavior to the old way: only
31  the portion of the screen after the target line is searched.
32
33* Add %F formatting to prompt strings, replaced by the last component
34  of the input file.
35
36* Control-G while editing a command exits the command.
37
38* Less now exits with status 2 if control-C is pressed and -K is in effect.
39
40* Fix "ungetc overflow" when passing long commands via the -p option.
41
42* Fix bug in using line filtering via the & command 
43  in combination with -i and -I.
44
45* Fix bug in handling negative arguments to the -j option.
46
47* Fix bug in handling %t in prompt strings.
48
49* Improve handling of long option names.
50
51* Improve percentage calculation for very large files.
52
53======================================================================
54
55	Major changes between "less" versions 429 and 436
56
57* Don't pass "-" to non-pipe LESSOPEN unless it starts with "-".
58
59* Allow a fraction as the argument to the -# (--shift) option.
60
61* Fix highlight bug when underlined/overstruck text matches at end of line.
62
63* Fix non-regex searches with ctrl-R.
64
65======================================================================
66
67	Major changes between "less" versions 424 and 429
68
69* LESSOPEN pipe will now be used on standard input, if the LESSOPEN
70  environment variable begins with "|-".
71
72* The -D option with one number now means use the normal background color.
73
74* Don't change permissions on history file if it is not a regular file.
75
76* Fix non-ANSI-compliant code that caused problems with some compilers.
77
78* Fix binary file detection in UTF-8 mode.
79
80* Fix display problems with long lines on "ignaw" terminals.
81
82* Fix problem interrupting the line number calculation for initial prompt.
83
84* Fix SGR emulation when dealing with multiple attributes (eg. bold+underline).
85
86* Fix highlight bug when searching for underlined/overstruck text.
87
88======================================================================
89
90	Major changes between "less" versions 418 and 424
91
92* New "&" command allows filtering of lines based on a pattern.
93
94* Status column now displays a search match, even if the matched
95  string is scrolled off screen because -S is in effect.
96
97* Improve behavior of -F option.
98
99* Allow CSI character (0x9B) to work in UTF-8 mode.
100
101* Output carriage return at startup in case terminal doesn't default
102  to column 1.
103
104* Fix bug in '' (quote, quote) command after G command.
105
106======================================================================
107
108	Major changes between "less" versions 416 and 418
109
110* Color escape sequences are now supported in WIN32 build.
111
112* Makefile now uses EXEEXT feature of autoconf.
113
114* Fix search bug when using -R and text contains ANSI color escape sequences.
115
116* Fix crash when using -r with UTF-8 text containing 0x9B bytes.
117
118* Fix display bug when using ' command to move less than one page forward.
119
120* Update GPL to version 3.
121
122======================================================================
123
124	Major changes between "less" versions 409 and 416
125
126* New --follow-name option makes F command follow the name of a file
127  rather than the file descriptor if an open file is renamed.
128
129* Make searching with -i/-I work correctly with non-ASCII text.
130
131* Fix DJGPP build.
132
133======================================================================
134
135	Major changes between "less" versions 406 and 409
136
137* Support CSI escape sequences, like SGR escape sequences.
138
139* Fix bug which caused screen to fail to repaint when window is resized.
140
141* Fix bug in using -i and -I flags with non-ASCII text.
142
143* Fix configure bug on systems which don't support langinfo.h.
144
145* Fix crash when searching text containing certain invalid UTF-8 sequences.
146
147======================================================================
148
149	Major changes between "less" versions 394 and 406
150
151* Allow decimal point in number for % (percent) command.
152
153* Allow decimal point in number for -j option (fraction of screen height).
154
155* Make n command fetch previous pattern from history file on first search.
156
157* Don't rewrite history file if it has not changed.
158
159* Don't move to bottom of screen on first page.
160
161* Don't output extraneous newlines, so copy & pasting lines from the
162  output works better.
163
164* The -c option has been made identical with the -C option.
165
166* Allow "/dev/null" as synomym for "-" in LESSHISTFILE to indicate
167  that no history file should be used.
168
169* Search can now find text which follows a null byte, if the PCRE
170  library is used, or if no-regex searching (ctrl-R) is used.
171
172* Better compatibility with POSIX more specification.
173
174* Make -f work for directories.
175
176* Make "t" cmd traverse tags in the correct order.
177
178* Allow a few binary characters in the input file before warning
179  that the file is binary.
180
181* Don't warn that file is binary if it merely contains ANSI color sequences
182  and -R is in effect.
183
184* Update Unicode character tables.
185
186* Support DESTDIR in Makefile.
187
188* Fix bug when filename contains certain shell metacharacters such as "$".
189
190* Fix bug when resizing the window while waiting for input from a pipe.
191
192* Fix configure bugs.
193
194======================================================================
195
196	Major changes between "less" versions 382 and 394
197
198* Add history file to save search and shell command history between
199  invocations of less.
200
201* Improve behavior of history list for search and shell commands.
202
203* Add -K (or --quit-on-intr) option to make less exit immediately on ctrl-C.
204
205* Improve handling of UTF-8 files and commands, including better
206  line wrapping and handling double-width chars.
207
208* Added LESSUTFBINFMT environment variable to control display of
209  non-printable characters in a UTF-8 file.
210
211* Add --with-secure option to configure, to make it easier to
212  build a secure version of less.
213
214* Show search matches in the status column even if search highlights
215  are disabled via the -G option or the ESC-u command.
216
217* Improve performance when the file contains very long lines.
218
219* Add "windows" charset.
220
221* Add man page for lessecho.
222
223* Add support for erase2 character, treated same as erase.
224
225* Use ASCII lowercase/uppercase logic when operating on the command line.
226
227* Update makefile for Borland C++ 5.5.1.
228
229* Fix bug in calculating number of pages for %D prompt.
230
231* Fix bug in handling tag file error.
232
233* Fix obscure bug if input file is deleted while viewing help.
234
235* Fix bug handling filenames which include square brackets.
236
237* Fix possible buffer overflow in "global" tag search.
238
239* Fix possible buffer overflow in usage of LESSOPEN and LESSCLOSE.
240
241* Fix buffer overflow in reverse search.
242
243======================================================================
244
245	Major changes between "less" versions 381 and 382
246
247* Removed some old copyrighted code.
248  This probably breaks OS/9 support.
249
250======================================================================
251
252	Major changes between "less" versions 378 and 381
253
254* New -L option to disable LESSOPEN processing.
255
256* Further support for large (64 bit) file addressing.
257  Large file support is now set up by the configure script.
258
259* Use autoconf 2.54.
260  Replace configure.in, acconfig.h, defines.h.top with configure.ac.
261
262* Overstriking underscore with underscore is now bold or underlined 
263  depending on context.
264
265* Use only 7 spaces for line numbers in -N mode, if possible.
266
267* Fix some bugs in handling overstriking in UTF-8 files.
268
269* Fix some nroff issues in the man page.
270
271======================================================================
272
273	Major changes between "less" versions 376 and 378
274
275* Bug fixes:
276  Default buffer space is now 64K as documented.
277  Search highlighting works properly when used with -R.
278  Windows version works properly when input file contains carriage returns.
279  Clean up some compiler warnings.
280
281======================================================================
282
283	Major changes between "less" versions 358 and 376
284
285* -x option can now specify multiple variable-width tab stops.
286
287* -X option no longer disables keypad initialization.
288  New option --no-keypad disables keypad initialization.
289
290* New commands t and T step through multiple tag matches.
291  Added support for "global(1)" tags
292  (see http://www.gnu.org/software/global/global.html).
293
294* New prompt style set by option -Pw defines the message printed 
295  while waiting for data in the F command.
296
297* System-wide lesskey file now defaults to sysless in etc directory 
298  instead of .sysless in bin directory.
299  Use "configure --sysconfdir=..." to change it.
300  (For backwards compatibility, .sysless in bin is still recognized.)
301
302* Pressing RightArrow or LeftArrow while entering a number now shifts
303  the display N columns rather than editing the number itself.
304
305* Status column (enabled with -J) now shows search results.
306
307* Windows version sets window title.
308
309* Default LESSCHARSET for MS-DOS versions is now "dos".
310
311* Searching works better with ANSI (SGR) escape sequences.
312  ANSI color escape sequences are now supported in the MS-DOS (DJGPP) version.
313
314* Improved performance in reading very large pipes.
315
316* Eliminated some dependencies on file offets being 32 bits.
317
318* Fixed problems when viewing files with very long lines.
319
320* Fixed overstriking in UTF-8 mode, and overstriking tabs.
321
322* Improved horizontal shifting of text using -R option with ANSI color.
323
324* Improved handling of filenames containing shell metacharacters.
325
326* Some fixes for EBCDIC systems.
327
328* Some fixes for OS/2 systems.
329
330======================================================================
331
332	Major changes between "less" versions 354 and 358
333
334* Add -J (--status-column) option to display a status column.
335
336* Add -# (--shift) option to set default horizontal shift distance.
337  Default horizontal shift distance is now one-half screen width.
338
339* Horizontal shifting does not shift line numbers if -N is in effect.
340
341* Horizontal shifting acts as though -S were set, to avoid confusion.
342
343======================================================================
344
345
346	Major changes between "less" versions 352 and 354
347
348* Allow space after numeric-valued command line options.
349
350* Fix problem with configuring terminal libraries on some systems.
351
352* Add support for PCRE regular expression library.
353
354* Add --with-regex option to configure to allow manually selecting
355  a regular expression library.
356
357* Fix bug compiling with SECURE = 1.
358
359======================================================================
360
361
362	Major changes between "less" versions 346 and 352
363
364* Enable UTF-8 if "UTF-8" appears in locale-related environment variables.
365
366* Add --with-editor option to configure script.
367
368* The -M prompt and = message now show the top and bottom line number.
369
370* Fix bug in running the editor on a file whose name contains quotes, etc.
371
372* Fix bug in horizontal scrolling of long lines.
373
374* Fix bug in doing :d on a file which contains marks.
375
376* Fix bug causing cleared lines to sometimes be filled with standout, 
377  bold, underline, etc. on certain terminals.
378
379* Fixes for MS-DOS (DJGPP) version.
380
381======================================================================
382
383
384	Major changes between "less" versions 340 and 346
385
386* The UTF-8 character set is now supported.
387
388* The default character set is now latin1 rather than ascii.
389
390* New option -R (--RAW-CONTROL-CHARS) is like -r but handles 
391  long (wrapped) lines correctly, as long as the input contains only 
392  normal text and ANSI color escape sequences.
393
394* New option -F (--quit-if-one-screen) quits if the text fits on
395  the first screen.
396
397* The -w option now highlights the target line of a g or p command.
398
399* A system-wide lesskey file is supported (LESSKEY_SYSTEM).
400
401* New escape for prompt strings: %c is replaced by column number.
402
403* New escape for prompt strings: %P is replaced by percentage into
404  file, based on line number rather than byte offset.
405
406* HOME and END keys now jump to beginning of file or end of file.
407
408======================================================================
409
410
411	Major changes between "less" versions 337 and 340
412
413* Command line options for less may now be given in either the old 
414  single-letter form, or a new long name form (--option-name).
415  See the less man page or "less --help" for the list of long option names.
416
417* Command line options for lesskey may now be given in a new long name
418  form.  See the lesskey man page for the list of long option names.
419
420* New command -- toggles an option using the long option name.
421
422* New command __ queries an option using the long option name.
423
424* The old -- command is renamed as -!.
425
426* If a ^P is entered between the dash and the option letter of the -
427  command, the message describing the new setting is suppressed.
428
429* Lesskey files may now contain \k escape sequences to represent the
430  "special" keys (arrows, PAGE-UP/PAGE-DOWN, HOME, END, INSERT, DELETE).
431
432* New command :d removes the current file from the list of files.
433
434* New option -~ (like -w before version 335)
435  suppresses tildes after end-of-file.
436
437* Less is now released under the GNU General Public License.
438
439======================================================================
440
441
442	Major changes between "less" versions 335 and 337
443
444* Fixed bugs in "make install".
445
446======================================================================
447
448
449	Major changes between "less" versions 332 and 335
450
451* The old -w flag (suppress tildes after end-of-file) has been removed.
452
453* New -w flag highlights the first new line after a forward-screen.
454
455* New -W flag highlights the first new line after any forward movement.
456
457* Window resize works even if LINES and/or COLUMNS environment 
458  variables are incorrect.
459
460* New percent escapes for prompt strings:
461  %d is replaced by the page number, and
462  %D is replaced by the number of pages in the file.
463
464* Added charsets "iso8859" and "ebcdic".
465
466* In Windows version, uses HOMEDRIVE and HOMEPATH if HOME is not defined.
467
468* Fixed some bugs causing incorrect display on DOS/Windows.
469
470======================================================================
471
472
473	Major changes between "less" versions 330 and 332
474
475* Filenames from the command line are entered into the command history,
476  so UPARROW/DOWNARROW can be used to retrieve them from the :e command.
477
478* Now works correctly on Windows when using a scrolling terminal
479  window (buffer larger than display window).
480
481* On Windows, now restores the console screen on exit.  
482  Use -X to get the old behavior.
483
484* Fixed bug on Windows when CAPS-LOCK or NUM-LOCK is pressed.
485
486* Fixed bug on Windows when piping output of an interactive program.
487
488* Fixed bug in tags file processing when tags file has DOS-style
489  line terminators (CR/LF).
490
491* Fixed compilation problem on OS/2.
492
493======================================================================
494
495
496	Major changes between "less" versions 321 and 330
497
498* Now supports filenames containing spaces (in double quotes).
499  New option -" can be used to change the quoting characters.
500
501* In filename completion, a slash is appended to a directory name.
502  If the environment variable LESSSEPARATOR is set, the value of
503  that variable, rather than a slash, is appended.
504
505* LeftArrow and RightArrow are same as ESC-[ and ESC-].
506
507* Added commands ESC-( and ESC-), same as ESC-[ and ESC-].
508
509* A "quit" command defined in a lesskey file may now have an "extra" 
510  string, which is used to return an exit code from less when it quits.
511
512* New environment variables LESSMETACHARS and LESSMETAESCAPE provide
513  more control over how less interfaces to the shell.
514
515* Ported to Microsoft Visual C compiler for Windows.
516
517* Ported to DJGPP compiler for MS-DOS.
518
519* Bug fixes.
520
521======================================================================
522
523
524	Major changes between "less" versions 291 and 321
525
526* Command line at bottom of screen now scrolls, so it can be longer 
527  than the screen width.
528
529* New commands ESC-] and ESC-[ scroll the display horizontally.
530
531* New command ESC-SPACE scrolls forward a full screen, even if it
532  hits end-of-file.
533
534* Alternate modifiers for search commands: ^N is same as !,
535  ^F is same as @, and ^E is same as *.
536
537* New modifier for search commands: ^K means highlight the matches
538  currently on-screen, but don't move to the first match.
539
540* New modifier for search commands: ^R means don't use regular
541  expressions in the search.
542
543* Environment variable LESSKEY gives name of default lesskey file.
544
545* Environment variable LESSSECURE will force less to run in
546  "secure" mode.
547
548* Command line argument "--" signals that the rest of the arguments
549  are files (not option flags).
550
551* Help file (less.hlp) is no longer installed.  Help text is now 
552  embedded in the less executable itself.
553
554* Added -Ph to change the prompt for the help text.
555  Added -Ps to change the default short prompt (same as plain -P).
556
557* Ported to the Borland C compiler for MS-DOS.
558
559* Ported to Windows 95 & Windows NT.
560
561* Ported to OS-9.
562
563* Ported to GNU Hurd.
564
565======================================================================
566
567
568	Major changes between "less" versions 290 and 291
569
570* Less environment variables can be specified in lesskey files.
571
572* Fixed MS-DOS build.
573
574======================================================================
575
576
577	Major changes between "less" versions 278 and 290
578
579* Accepts GNU-style options "--help" and "--version".
580
581* OS/2 version looks for less.ini in $HOME before $INIT and $PATH.
582
583* Bug fixes
584
585======================================================================
586
587
588	Major changes between "less" versions 252 and 278
589
590* A LESSOPEN preprocessor may now pipe the converted file data to less,
591  rather than writing it to a temporary file.
592
593* Search pattern highlighting has been fixed.  It now highlights 
594  reliably, even if a string is split across two screen lines,
595  contains TABs, etc.
596
597* The -F flag (which suppress search highlighting) has been changed 
598  to -G.  A new flag, -g, changes search highlighting to highlight 
599  only the string found by the last search command, instead of all 
600  strings which match the last search command.
601
602* New flag -I acts like -i, but ignores case even if the search 
603  pattern contains uppercase letters.
604
605* Less now checks for the environment variable VISUAL before EDITOR.
606
607* Ported to OS/2.
608
609======================================================================
610
611
612	Major changes between "less" versions 237 and 252
613
614* Changes in line-editing keys:
615  The literal key is now ^V or ^A rather than \ (backslash).
616  Filename completion commands (TAB and ^L) are disabled 
617  when typing a search pattern.
618
619* Line-editing command keys can be redefined using lesskey.
620
621* Lesskey with no input file defaults to $HOME/.lesskey
622  rather than standard input.
623
624* New option -V displays version number of less.
625
626* New option -V displays version number of lesskey.
627
628* Help file less.hlp is now installed by default in /usr/local/share 
629  rather than /usr/local/lib.
630
631
632======================================================================
633
634
635	Major changes between "less" versions 170 and 237
636
637* By popular demand, text which matches the current search pattern
638  is highlighted.  New -F flag disables this feature.
639
640* Henry Spencer's regexp.c is now included, for systems which do not
641  have a regular expression library.
642  regexp.c is Copyright (c) 1986 by University of Toronto.
643
644* New line-editing keys, including command history (arrow keys) and 
645  filename completion (TAB).
646
647* Input preprocessor allows modification of input files (e.g. uncompress)
648  via LESSOPEN/LESSCLOSE environment variables.
649
650* New -X flag disables sending termcap "ti" and "te" (initialize and
651  deinitialize) strings to the terminal. 
652
653* Changing -i from within less now correctly affects a subsequent
654  repeated search.  
655
656* Searching for underlined or overstruck text now works when the -u
657  flag is in effect, rather than the -i flag.
658
659* Use setlocale (LANG and LC_CTYPE environment variables) to determine
660  the character set if LESSCHARSET/LESSCHARDEF are not set.
661
662* The default format for displaying binary characters is now standout
663  (reverse video) rather than blinking.  This can still be changed by
664  setting the LESSBINFMT environment variable.
665
666* Use autoconf installation technology.
667
668* Ported to MS-DOS.
669
670        ********************************
671          Things that may surprise you
672        ********************************
673
674* When you enter text at the bottom of the screen (search string, 
675  filename, etc.), some keys act different than previously.  
676  Specifically, \ (backslash), ESC, TAB, BACKTAB, and control-L 
677  now have line editing functions.
678
679* Some previous unofficial versions of less were able to display
680  compressed files.  The new LESSOPEN/LESSCLOSE feature now provides
681  this functionality in a different way.
682
683* Some previous unofficial versions of less provided a -Z flag to 
684  set the number of lines of text to retain between full screen scrolls.
685  The -z-n flag (that is, -z with a negative number) provides this 
686  functionality.
687
688
689======================================================================
690
691
692	Major changes between "less" versions 123 and 170
693
694* New option -j allows target lines to be positioned anywhere on screen.
695
696* New option -S truncates displayed line at the screen width,
697  rather than wrapping onto the next line.
698
699* New option -y limits amount of forward scroll.
700
701* New option -T specifies a "tags" file.
702
703* Non-printable, non-control characters are displayed in octal.
704  Such characters, as well as control characters, are displayed 
705  in blinking mode.
706
707* New command -+ sets an option to its default.
708* New command -- sets an option to the opposite of its default.
709
710* Lesskey file may have a string appended to a key's action,
711  which acts as though typed in after the command.
712
713* New commands ESC-^F and ESC-^B match arbitrary types of brackets.
714
715* New command F monitors a growing file (like "tail -f").
716
717* New command | pipes a section of the input file into a shell command.
718
719* New command :x directly jumps to a file in the command line list.
720
721* Search commands have been enhanced and reorganized:
722	n	Repeat search, same direction.
723	N	Repeat search, opposite direction.
724	ESC-/	Search forward thru file boundaries
725	ESC-?	Search backward thru file boundaries
726	ESC-n	Repeat search thru file boundaries, same direction.
727	ESC-N	Repeat search thru file boundaries, opposite direction.
728  Special character * causes search to search thru file boundaries.
729  Special character @ causes search to begin at start/end of file list.
730
731* Examining a new file adds it to the command line list.
732  A list of files, or an expression which matches more than one file,
733  may be examined; all of them are added to the command line list.
734
735* Environment variables LESSCHARSET and LESSCHARDEF can define
736  a non-ASCII character set.
737
738* Partial support for MSDOS, including options -R for repainting screen
739  on quit, -v/-V to select video mode, and -W to change window size.
740
741
742======================================================================
743
744
745	Major changes between "less" versions 97 and 123
746
747* New option (-N) causes line numbers to be displayed in the
748  text of the file (like vi "set nu").
749
750* New option (-?) prints help message immediately.
751
752* New option (-r) displays "raw" control characters, without
753  mapping them to ^X notation.
754
755* New option (-f) forces less to open non-regular files
756  (directories, etc).
757
758* New option (-k) can be used to specify lesskey files by name.
759
760* New option (-y) can be used to set a forward scroll limit
761  (like -h sets a backward scroll limit).
762
763* File marks (set by the m command) are now preserved when a new
764  file is edited.  The ' command can thus be used to switch files.
765
766* New command ESC-/ searches all files (on the command line) 
767  for a pattern.
768
769* New command ESC-n repeats previous search, spanning files.
770
771* The N command has been changed to repeat the previous search
772  in the reverse direction.  The old N command is still available 
773  via :n.
774
775* New command ESC-N repeats previous search in the reverse
776  direction and spanning files.
777
778* 8 bit characters are now supported.  A new option (-g) can be 
779  used to strip off the eighth bit (the previous behavior).
780
781* Options which take a following string (like -t) may now
782  optionally have a space between the option letter and the string.
783
784* Six new commands { } ( ) [ and ] can be used to match
785  brackets of specific types, similar to vi % command.
786
787* New commands z and w move forward/backward one window and
788  simultaneously set the window size.
789
790* Prompt string expansion now has %L for line number of the last
791  line in the file, and %E for the name of the editor.
792  Also, % escapes which refer to a line (b=bottom, t=top, etc.)
793  can use j for the jump target line.
794
795* New environment variable LESSEDIT can be used to tailor the
796  command string passed to the editor by the v command.
797
798* Examining a file which was previously examined will return
799  to the same position in the file.
800
801* A "%" is expanded to the current filename and a "#" to the 
802  previous filename, in both shell commands and the E command.
803  (Previously % worked only in shell commands and # worked 
804  only in the E command.)
805
806* New command ":ta" is equivalent to "-t".
807
808* New command "s" is equivalent to "-l".
809
810* The - command may be followed by "+X" to revert to the default
811  for option X, or "-X" to get the opposite of the default.
812
813* Lesskey files may now include characters after the action as
814  extra input to be parsed after the action; for example:
815  "toggle-option X" to toggle a specific option X.
816
817
818
819
820
821