xref: /freebsd/contrib/less/NEWS (revision c7919fb92d201ab1d5bd3ab0c18cbcea961ef761)
1
2                     NEWS about less
3
4======================================================================
5
6  For the latest news about less, see https://greenwoodsoftware.com/less
7  You can also download the latest version of less from there.
8
9  Report bugs, suggestions or comments at
10  https://github.com/gwsw/less/issues.
11
12======================================================================
13
14	Major changes between "less" versions 661 and 668
15
16* Make 256/true colors work better on Windows without -Da
17  (github #539, github #546, github #562).
18
19* Fix build using --with-secure (github #544).
20
21* Fix crash when using --header on command line (github #545).
22
23* Fix possible crash when scrolling left/right or toggling -S (github #547).
24
25* Fix bug when using #stop in a lesskey file (github #551).
26
27* Fix bug when using --shift or --match-shift on command line with
28  a parameter starting with '.' (github #554).
29
30* Fix bug in R command when file size changes (github #553).
31
32* Fix bug using --header when file does not fill screen (github #556).
33
34* Fix ^X bug when output is not a terminal (github #558).
35
36* Fix bug where ^Z is not handled immediately (github #563).
37
38* Fix bug where first byte from a LESSOPEN filter is deleted if it is
39  greater than 0x7F (github #568).
40
41* Fix uninitialized variable in edit_ifile (github #573).
42
43* Fix incorrect handling of UTF-8 chars in prompts (github #576).
44
45======================================================================
46
47	Major changes between "less" versions 643 and 661
48
49* Add ^O^N, ^O^P, ^O^L and ^O^O commands and mouse clicks (with --mouse)
50  to find and open OSC8 hyperlinks (github #251).
51
52* Add --match-shift option.
53
54* Add --lesskey-content option (github #447).
55
56* Add LESSKEY_CONTENT environment variable (github #447).
57
58* Add --no-search-header-lines and --no-search-header-columns options
59  (github #397).
60
61* Add ctrl-L search modifier (github #367).
62
63* A ctrl-P at the start of a shell command suppresses the "done"
64  message (github #462).
65
66* Add attribute characters ('*', '~', '_', '&') to --color
67  parameter (github #471).
68
69* Allow expansion of environment variables in lesskey files.
70
71* Add LESSSECURE_ALLOW environment variable (github #449).
72
73* Add LESS_UNSUPPORT environment variable.
74
75* Add line number parameter to --header option (github #436).
76
77* Mouse right-click jumps to position marked by left-click (github #390).
78
79* Ensure that the target line is not obscured by a header line
80  set by --header (github #444).
81
82* Change default character set to "utf-8", except remains "dos" on MS-DOS.
83
84* Add message when search with ^W wraps (github #459).
85
86* UCRT builds on Windows 10 and later now support Unicode file names
87  (github #438).
88
89* Improve behavior of interrupt while reading non-terminated pipe
90  (github #414).
91
92* Improve parsing of -j, -x and -# options (github #393).
93
94* Support files larger than 4GB on Windows (github #417).
95
96* Support entry of Unicode chars larger than U+FFFF on Windows (github #391).
97
98* Improve colors of bold, underline and standout text on Windows.
99
100* Allow --rscroll to accept non-ASCII characters (github #483).
101
102* Allow the parameter to certain options to be terminated with a
103  space (--color, --quotes, --rscroll, --search-options
104  and --intr) (github #495).
105
106* Fix bug where # substitution failed after viewing help (github #420).
107
108* Fix crash if files are deleted while less is viewing them (github #404).
109
110* Workaround unreliable ReadConsoleInputW behavior on Windows
111  with non-ASCII input.
112
113* Fix -J display when searching for non-ASCII characters (github #422).
114
115* Don't filter header lines via the & command (github #423).
116
117* Fix bug when horizontally shifting long lines (github #425).
118
119* Add -x and -D options to lesstest, to make it easier to diagnose
120  a failed lesstest run.
121
122* Fix bug searching long lines with --incsearch and -S (github #428).
123
124* Fix bug that made ESC-} fail if top line on screen was empty (github #429).
125
126* Fix bug with --mouse on Windows when used with pipes (github #440).
127
128* Fix bug in --+OPTION command line syntax.
129
130* Fix display bug when using -w with an empty line with a CR/LF
131  line ending (github #474).
132
133* When substituting '#' or '%' with a filename, quote the filename
134  if it contains a space (github #480).
135
136* Fix wrong sleep time when system has usleep but not nanosleep (github #489).
137
138* Fix bug when file name contains a newline.
139
140* Fix bug when file name contains nonprintable characters (github #503).
141
142* Fix DJGPP build (github #497).
143
144* Update Unicode tables.
145
146======================================================================
147
148	Major changes between "less" versions 633 and 643
149
150* Fix problem when a program piping into less reads from the tty,
151  like sudo asking for password (github #368).
152
153* Fix search modifier ^E after ^W.
154
155* Fix bug using negated (^N) search (github #374).
156
157* Fix bug setting colors with -D on Windows build (github #386).
158
159* Fix reading special chars like PageDown on Windows (github #378).
160
161* Fix mouse wheel scrolling on Windows (github #379).
162
163* Fix erroneous EOF when terminal window size changes (github #372).
164
165* Fix compile error with some definitions of ECHONL (github #395).
166
167* Fix crash on Windows when writing logfile (github #405).
168
169* Fix regression in exit code when stdin is /dev/null and
170  output is a file (github #373).
171
172* Add lesstest test suite to production release (github #344).
173
174* Change lesstest output to conform with
175  automake Simple Test Format (github #399).
176
177======================================================================
178
179	Major changes between "less" versions 632 and 633
180
181* Fix build on systems which have ncurses/termcap.h or
182  ncursesw/termcap.h but not termcap.h.
183
184======================================================================
185
186	Major changes between "less" versions 608 and 632
187
188* Add LESSUTFCHARDEF environment variable (github #275).
189
190* Add # command (github #330).
191
192* Add ^S search modifier (github #196).
193
194* Add --wordwrap option (github #113).
195
196* Add --no-vbell option (github #304).
197
198* Add --no-search-headers option (github #44).
199
200* Add --modelines option (github #89).
201
202* Add --intr option (github #224).
203
204* Add --proc-backspace, --proc-tab and --proc-return options (github #335).
205
206* Add --show-preproc-errors option (github #258).
207
208* Add LESS_LINES and LESS_COLUMNS environment variables (github #84).
209
210* Add LESS_DATA_DELAY environment variable (github #337).
211
212* Allow empty "lines" field in --header option.
213
214* Update Unicode tables.
215
216* Improve ability of ^X to interrupt F command (github #49).
217
218* Status column (-J) shows off-screen matches.
219
220* Parenthesized sub-patterns in searches are colored with unique colors,
221  if supported by the regular expression library (github #196).
222
223* Don't allow opening a tty as file input unless -f is set (github #309).
224
225* Don't require newline input after +&... option (github #339).
226
227* Fix incorrect handling of some Private Use Unicode characters.
228
229* Fix ANSI color bug when overstriking with colored chars (github #276).
230
231* Fix compiler const warning (github #279).
232
233* Fix signal race in iread (github #280).
234
235* Fix reading procfs files on Linux (github #282).
236
237* Fix --ignore-case with ctrl-R (no regex) search (github #300).
238
239* Fix bug doing repeat search after setting & filter (github #299).
240
241* Fix bug doing repeat search before non-repeat search.
242
243* Fix crash with -R and certain line lengths (github #338).
244
245* Fix input of Windows dead keys (github #352).
246
247* Don't retain search options from a cancelled search (github #302).
248
249* Don't call realpath on fake filenames like "-" (github #289).
250
251* Implement lesstest test suite.
252
253* Convert function parameter definitions from K&R to C89 (github #316).
254
255======================================================================
256
257	Major changes between "less" versions 590 and 608
258
259* Add the --header option (github #43).
260
261* Add the --no-number-headers option (github #178).
262
263* Add the --status-line option.
264
265* Add the --redraw-on-quit option (github #36).
266
267* Add the --search-options option (github #213).
268
269* Add the --exit-follow-on-close option (github #244).
270
271* Add 'H' color type to set color of header lines.
272
273* Add #version conditional to lesskey.
274
275* Add += syntax to variable section in lesskey files.
276
277* Allow option name in -- command to end with '=' in addition to '\n'.
278
279* Add $HOME/.config to possible locations of lesskey file (github #153).
280
281* Add $XDG_STATE_HOME and $HOME/.local/state to possible locations
282  of history file (github #223).
283
284* Don't read or write history file in secure mode (github #201).
285
286* Fix display of multibyte and double-width chars in prompt.
287
288* Fix ESC-BACKSPACE command when BACKSPACE key does not send 0x08
289  (github #188).
290
291* Add more \k codes to lesskey format.
292
293* Fix bug when empty file is modified while viewing it.
294
295* Fix bug when parsing a malformed lesskey file (githb #234).
296
297* Fix bug scrolling history when --incsearch is set (github #214).
298
299* Fix buffer overflow when invoking lessecho with more than 63 -m/-n
300  options (github #198).
301
302* Fix buffer overflow in bin_file (github #271).
303
304* Fix bug restoring color at end of highlighted text.
305
306* Fix bug in parsing lesskey file.
307
308* Defer moving cursor to lower left in some more cases.
309
310* Suppress TAB filename expansion in some cases where it doesn't make sense.
311
312* Fix termlib detection when compiler doesn't accept
313  calls to undeclared functions.
314
315* Fix bug in input of non-ASCII characters on Windows (github #247)
316
317* Escape filenames when invoking LESSCLOSE.
318
319* Fix bug using multibyte UTF-8 char in search string
320  with --incsearch (github #273).
321
322======================================================================
323
324	Major changes between "less" versions 581 and 590
325
326* Make less able to read lesskey source files (deprecating lesskey).
327
328* If XDG_CONFIG_HOME is set, find lesskey source file
329  in $XDG_CONFIG_HOME/lesskey rather than $HOME/.lesskey.
330
331* If XDG_DATA_HOME is set, find and store history file
332  in $XDG_DATA_HOME/lesshst rather than $HOME/.lesshst.
333
334* Add the --lesskey-src option.
335
336* Add the --file-size option.
337
338* With -F, if screen is resized to make file fit on one screen, don't exit.
339
340* Fix bug which could leave terminal in mouse-reporting mode
341  after exiting less.
342
343* Fix bug which caused failure to respond to window resize.
344
345* Fix backslash bug searching in tag file.
346
347======================================================================
348
349	Major changes between "less" versions 563 and 581
350
351* Change ESC-u command to toggle, not disable, highlighting per man page.
352
353* Add ESC-U command.
354
355* Add ctrl-W search modifier for wrapping search.
356
357* F command can be interrupted by ^X.
358
359* Support OSC 8 hyperlinks when -R is in effect.
360
361* g command with no number will ignore -j and put first line at top of screen.
362
363* Multiple + or -p command line options are handled better.
364
365* Add the --incsearch option.
366
367* Add the --line-num-width option.
368
369* Add the --status-col-width option.
370
371* Add the --use-color and --color options.
372
373* Display -w highlight even if highlighted line is empty.
374
375* If search result is in a long line, scroll to ensure it is visible.
376
377* Editing the same file under different names now creates only
378  one entry in the file list.
379
380* Make visual bell more visible on some terminals.
381
382* Ring end-of-file bell no more than once per second.
383
384* Build can use either Python or Perl for Makefile.aut operations.
385
386* Fix crash when using the @ search modifier.
387
388* Fix crash in the 's' command due to duplicate free.
389
390* Fix realpath crash on Darwin.
391
392======================================================================
393
394	Major changes between "less" versions 551 and 563
395
396* Update Unicode tables.
397
398* Treat Hangul Jamo medial vowels and final consonants as zero width.
399
400* Display error message immediately when -o is toggled and
401  input is not a pipe.
402
403* Fix regression: make screen repaint when "squished" and
404  a no-movement command is given.
405
406* Fix erroneous EOF calculation when F command is interrupted.
407
408* Make WIN32C version include this fix from 551:
409  Don't count lines in initial screen if using -X with -F.
410
411* Fix display bug in WIN32C version.
412
413* Fix memory corruption when built with libtermcap.
414
415* Support libtinfow.
416
417======================================================================
418
419	Major changes between "less" versions 530 and 551
420
421* Add --mouse option.
422
423* Add --wheel-lines option.
424
425* Add --no-histdups option.
426
427* Add --save-marks option.
428
429* Support PCRE2 regular expression library.
430
431* Redraw screen on SIGWINCH even if screen size doesn't change.
432
433* Shell-escape filenames in history so they can be used again.
434
435* Ring bell if user enters invalid long option name.
436
437* Use PCRE_UTF8 flag for pcre regular expressions when in UTF-8 mode.
438
439* Windows: use wide-char string to set console title.
440
441* Don't count lines in initial screen if using -X with -F.
442
443* Support mingw build system.
444
445* Fix bug in v command on empty file.
446
447* Fix bug in v command when filename contains shell metacharacters.
448
449======================================================================
450
451	Major changes between "less" versions 487 and 530
452
453* Don't output terminal init sequence if using -F and file fits on one screen.
454
455* When using -S, mark truncated lines with a special character.
456  The character can be changed or disabled via the new --rscroll option.
457
458* New command M marks the last line displayed on the screen.
459
460* New command ESC-m removes a line mark.
461
462* Status column (enabled via -J) now shows mark letters.
463
464* Status column shows search matches even if highlighting is disabled via -G.
465
466* A second ESC-u command will clear search match markers in the status column.
467
468* Do same ANSI escape code filtering for tag matching that we do for
469  searching, to help when viewing syntax-highlighted code.
470
471* Catch SIGTERM and clean up before exiting.
472
473* Fix bug initializing default charset on Windows.
474
475* Handle keypad ENTER key correctly if it sends something other than newline.
476
477* Fix buffering bug when using stdin with a LESSOPEN pipe.
478
479* On Windows, allow 'u' in -D option to enable underlining.
480
481* On Windows, use underline in sgr mode.
482
483* On Windows, convert UTF-8 to multibyte if console is not UTF-8.
484
485* Update Unicode tables to 2017-03-08.
486
487* Pass-thru Unicode formatting chars (Cf type) instead of treating them
488  as binary chars. But treat them as binary if -U is set.
489
490* Fix erroneous binary file warning when UTF-8 file contains ANSI SGR sequences.
491
492* Fix bugs when using LESSOPEN and switching between stdin and other files.
493
494* Fix some bugs handling filenames containing shell metacharacters.
495
496* Fix some memory leaks.
497
498* Allow some debugging environment variables to be set in lesskey file.
499
500* Code improvements:
501  . Use ANSI prototypes in funcs.h declarations.
502  . Fix some const mismatches.
503  . Remove archaic "register" in variable declarations.
504
505======================================================================
506
507	Major changes between "less" versions 481 and 487
508
509* New commands ESC-{ and ESC-} to shift to start/end of displayed lines.
510
511* Make search highlights work correctly when changing caselessness with -i.
512
513* New option -Da in Windows version to enable SGR mode.
514
515* Fix "nothing to search" error when top or bottom line on screen is empty.
516
517* Fix bug when terminal has no "cm" termcap entry.
518
519* Fix incorrect display when entering double-width chars in search string.
520
521* Fix bug in Unicode handling that missed some double width characters.
522
523* Update Unicode database to 9.0.0.
524
525======================================================================
526
527	Major changes between "less" versions 458 and 481
528
529* Don't overwrite history file; just append to it.
530
531* New command ESC-G goes to end of currently buffered data in a pipe.
532
533* Disable history feature when compiled with LESSHISTFILE set to "-".
534
535* In more-compatible mode, make the -p option apply to every file opened,
536  not just the first one.
537
538* In more-compatible mode, change the -e option to work like -E, not -EF.
539
540* Treat multiple CRs before LF are like one CR (all the CRs are hidden).
541
542* Allow "extra" string in lesskey file to append to a multi-char command
543  (like a search pattern), without executing the command.
544
545* Ignore -u/-U setting while viewing help file, so that
546  underline and bold chars are displayed correctly.
547
548* Improve detection of "binary" files in UTF-8 mode.
549
550* Fix bug with ++ commands.
551
552* Fix bug where prompt was sometimes not displayed with +G.
553
554* Fix possible memory corruption
555
556* Fix bugs and improve performance in ampersand filtering.
557
558* Automate construction of Unicode tables from Unicode database.
559
560* Allow %% escape sequence in LESSOPEN variable.
561
562======================================================================
563
564	Major changes between "less" versions 451 and 458
565
566* Allow backslash escaping of metacharacters in LESS environment variable
567  after the --use-backslash option.
568
569* Don't quit if syntax errors are found in command line options.
570
571* Increase sizes of some internal buffers.
572
573* Fix configure bug with --with-regex=none.
574
575* Fix crash with "stty rows 0".
576
577* Fix Win32 attribute display bug.
578
579* Fix display bug when using up/down arrow on the command line.
580
581======================================================================
582
583	Major changes between "less" versions 444 and 451
584
585* Add ESC-F command to keep reading data until a pattern is found.
586
587* Use exit code of LESSOPEN script if LESSOPEN starts with "||".
588
589* When up/down arrow is used on the command line immediately after
590  typing text, the next command starting with that text is found.
591
592* Add support for GNU regex.
593
594* Add configure option --with-regex=none and fix compile errors
595  when compiling with no regex library.
596
597* Fix bugs handling SGR sequences in Win32.
598
599* Fix possible crashes caused by malformed LESSOPEN or
600  LESSCLOSE variables.
601
602* Fix bug highlighting text which is discontiguous in the file
603  due to backspace processing.
604
605* Fix bug in displaying status column when scrolling backwards
606  with -J and -S in effect.
607
608======================================================================
609
610	Major changes between "less" versions 443 and 444
611
612* Fix bug in unget handling that can cause strange effects on the
613  command line.
614
615* Remove vestiges of obsolete -l option that can cause a crash.
616
617======================================================================
618
619	Major changes between "less" versions 436 and 443
620
621* Change search behavior such that when a search is given an explicit
622  pattern, the entire displayed screen is included in the search and
623  not just the portion after the target line.
624
625* Add -A option to change search behavior to the old way: only
626  the portion of the screen after the target line is searched.
627
628* Add %F formatting to prompt strings, replaced by the last component
629  of the input file.
630
631* Control-G while editing a command exits the command.
632
633* Less now exits with status 2 if control-C is pressed and -K is in effect.
634
635* Fix "ungetc overflow" when passing long commands via the -p option.
636
637* Fix bug in using line filtering via the & command
638  in combination with -i and -I.
639
640* Fix bug in handling negative arguments to the -j option.
641
642* Fix bug in handling %t in prompt strings.
643
644* Improve handling of long option names.
645
646* Improve percentage calculation for very large files.
647
648======================================================================
649
650	Major changes between "less" versions 429 and 436
651
652* Don't pass "-" to non-pipe LESSOPEN unless it starts with "-".
653
654* Allow a fraction as the argument to the -# (--shift) option.
655
656* Fix highlight bug when underlined/overstruck text matches at end of line.
657
658* Fix non-regex searches with ctrl-R.
659
660======================================================================
661
662	Major changes between "less" versions 424 and 429
663
664* LESSOPEN pipe will now be used on standard input, if the LESSOPEN
665  environment variable begins with "|-".
666
667* The -D option with one number now means use the normal background color.
668
669* Don't change permissions on history file if it is not a regular file.
670
671* Fix non-ANSI-compliant code that caused problems with some compilers.
672
673* Fix binary file detection in UTF-8 mode.
674
675* Fix display problems with long lines on "ignaw" terminals.
676
677* Fix problem interrupting the line number calculation for initial prompt.
678
679* Fix SGR emulation when dealing with multiple attributes (e.g. bold+underline).
680
681* Fix highlight bug when searching for underlined/overstruck text.
682
683======================================================================
684
685	Major changes between "less" versions 418 and 424
686
687* New "&" command allows filtering of lines based on a pattern.
688
689* Status column now displays a search match, even if the matched
690  string is scrolled off screen because -S is in effect.
691
692* Improve behavior of -F option.
693
694* Allow CSI character (0x9B) to work in UTF-8 mode.
695
696* Output carriage return at startup in case terminal doesn't default
697  to column 1.
698
699* Fix bug in '' (quote, quote) command after G command.
700
701======================================================================
702
703	Major changes between "less" versions 416 and 418
704
705* Color escape sequences are now supported in WIN32 build.
706
707* Makefile now uses EXEEXT feature of autoconf.
708
709* Fix search bug when using -R and text contains ANSI color escape sequences.
710
711* Fix crash when using -r with UTF-8 text containing 0x9B bytes.
712
713* Fix display bug when using ' command to move less than one page forward.
714
715* Update GPL to version 3.
716
717======================================================================
718
719	Major changes between "less" versions 409 and 416
720
721* New --follow-name option makes F command follow the name of a file
722  rather than the file descriptor if an open file is renamed.
723
724* Make searching with -i/-I work correctly with non-ASCII text.
725
726* Fix DJGPP build.
727
728======================================================================
729
730	Major changes between "less" versions 406 and 409
731
732* Support CSI escape sequences, like SGR escape sequences.
733
734* Fix bug which caused screen to fail to repaint when window is resized.
735
736* Fix bug in using -i and -I flags with non-ASCII text.
737
738* Fix configure bug on systems which don't support langinfo.h.
739
740* Fix crash when searching text containing certain invalid UTF-8 sequences.
741
742======================================================================
743
744	Major changes between "less" versions 394 and 406
745
746* Allow decimal point in number for % (percent) command.
747
748* Allow decimal point in number for -j option (fraction of screen height).
749
750* Make n command fetch previous pattern from history file on first search.
751
752* Don't rewrite history file if it has not changed.
753
754* Don't move to bottom of screen on first page.
755
756* Don't output extraneous newlines, so copy & pasting lines from the
757  output works better.
758
759* The -c option has been made identical with the -C option.
760
761* Allow "/dev/null" as synonym for "-" in LESSHISTFILE to indicate
762  that no history file should be used.
763
764* Search can now find text which follows a null byte, if the PCRE
765  library is used, or if no-regex searching (ctrl-R) is used.
766
767* Better compatibility with POSIX more specification.
768
769* Make -f work for directories.
770
771* Make "t" cmd traverse tags in the correct order.
772
773* Allow a few binary characters in the input file before warning
774  that the file is binary.
775
776* Don't warn that file is binary if it merely contains ANSI color sequences
777  and -R is in effect.
778
779* Update Unicode character tables.
780
781* Support DESTDIR in Makefile.
782
783* Fix bug when filename contains certain shell metacharacters such as "$".
784
785* Fix bug when resizing the window while waiting for input from a pipe.
786
787* Fix configure bugs.
788
789======================================================================
790
791	Major changes between "less" versions 382 and 394
792
793* Add history file to save search and shell command history between
794  invocations of less.
795
796* Improve behavior of history list for search and shell commands.
797
798* Add -K (or --quit-on-intr) option to make less exit immediately on ctrl-C.
799
800* Improve handling of UTF-8 files and commands, including better
801  line wrapping and handling double-width chars.
802
803* Added LESSUTFBINFMT environment variable to control display of
804  non-printable characters in a UTF-8 file.
805
806* Add --with-secure option to configure, to make it easier to
807  build a secure version of less.
808
809* Show search matches in the status column even if search highlights
810  are disabled via the -G option or the ESC-u command.
811
812* Improve performance when the file contains very long lines.
813
814* Add "windows" charset.
815
816* Add man page for lessecho.
817
818* Add support for erase2 character, treated same as erase.
819
820* Use ASCII lowercase/uppercase logic when operating on the command line.
821
822* Update makefile for Borland C++ 5.5.1.
823
824* Fix bug in calculating number of pages for %D prompt.
825
826* Fix bug in handling tag file error.
827
828* Fix obscure bug if input file is deleted while viewing help.
829
830* Fix bug handling filenames which include square brackets.
831
832* Fix possible buffer overflow in "global" tag search.
833
834* Fix possible buffer overflow in usage of LESSOPEN and LESSCLOSE.
835
836* Fix buffer overflow in reverse search.
837
838======================================================================
839
840	Major changes between "less" versions 381 and 382
841
842* Removed some old copyrighted code.
843  This probably breaks OS/9 support.
844
845======================================================================
846
847	Major changes between "less" versions 378 and 381
848
849* New -L option to disable LESSOPEN processing.
850
851* Further support for large (64 bit) file addressing.
852  Large file support is now set up by the configure script.
853
854* Use autoconf 2.54.
855  Replace configure.in, acconfig.h, defines.h.top with configure.ac.
856
857* Overstriking underscore with underscore is now bold or underlined
858  depending on context.
859
860* Use only 7 spaces for line numbers in -N mode, if possible.
861
862* Fix some bugs in handling overstriking in UTF-8 files.
863
864* Fix some nroff issues in the man page.
865
866======================================================================
867
868	Major changes between "less" versions 376 and 378
869
870* Bug fixes:
871  Default buffer space is now 64K as documented.
872  Search highlighting works properly when used with -R.
873  Windows version works properly when input file contains carriage returns.
874  Clean up some compiler warnings.
875
876======================================================================
877
878	Major changes between "less" versions 358 and 376
879
880* -x option can now specify multiple variable-width tab stops.
881
882* -X option no longer disables keypad initialization.
883  New option --no-keypad disables keypad initialization.
884
885* New commands t and T step through multiple tag matches.
886  Added support for "global(1)" tags
887  (see http://www.gnu.org/software/global/global.html).
888
889* New prompt style set by option -Pw defines the message printed
890  while waiting for data in the F command.
891
892* System-wide lesskey file now defaults to sysless in etc directory
893  instead of .sysless in bin directory.
894  Use "configure --sysconfdir=..." to change it.
895  (For backwards compatibility, .sysless in bin is still recognized.)
896
897* Pressing RightArrow or LeftArrow while entering a number now shifts
898  the display N columns rather than editing the number itself.
899
900* Status column (enabled with -J) now shows search results.
901
902* Windows version sets window title.
903
904* Default LESSCHARSET for MS-DOS versions is now "dos".
905
906* Searching works better with ANSI (SGR) escape sequences.
907  ANSI color escape sequences are now supported in the MS-DOS (DJGPP) version.
908
909* Improved performance in reading very large pipes.
910
911* Eliminated some dependencies on file offsets being 32 bits.
912
913* Fixed problems when viewing files with very long lines.
914
915* Fixed overstriking in UTF-8 mode, and overstriking tabs.
916
917* Improved horizontal shifting of text using -R option with ANSI color.
918
919* Improved handling of filenames containing shell metacharacters.
920
921* Some fixes for EBCDIC systems.
922
923* Some fixes for OS/2 systems.
924
925======================================================================
926
927	Major changes between "less" versions 354 and 358
928
929* Add -J (--status-column) option to display a status column.
930
931* Add -# (--shift) option to set default horizontal shift distance.
932  Default horizontal shift distance is now one-half screen width.
933
934* Horizontal shifting does not shift line numbers if -N is in effect.
935
936* Horizontal shifting acts as though -S were set, to avoid confusion.
937
938======================================================================
939
940
941	Major changes between "less" versions 352 and 354
942
943* Allow space after numeric-valued command line options.
944
945* Fix problem with configuring terminal libraries on some systems.
946
947* Add support for PCRE regular expression library.
948
949* Add --with-regex option to configure to allow manually selecting
950  a regular expression library.
951
952* Fix bug compiling with SECURE = 1.
953
954======================================================================
955
956
957	Major changes between "less" versions 346 and 352
958
959* Enable UTF-8 if "UTF-8" appears in locale-related environment variables.
960
961* Add --with-editor option to configure script.
962
963* The -M prompt and = message now show the top and bottom line number.
964
965* Fix bug in running the editor on a file whose name contains quotes, etc.
966
967* Fix bug in horizontal scrolling of long lines.
968
969* Fix bug in doing :d on a file which contains marks.
970
971* Fix bug causing cleared lines to sometimes be filled with standout,
972  bold, underline, etc. on certain terminals.
973
974* Fixes for MS-DOS (DJGPP) version.
975
976======================================================================
977
978
979	Major changes between "less" versions 340 and 346
980
981* The UTF-8 character set is now supported.
982
983* The default character set is now latin1 rather than ascii.
984
985* New option -R (--RAW-CONTROL-CHARS) is like -r but handles
986  long (wrapped) lines correctly, as long as the input contains only
987  normal text and ANSI color escape sequences.
988
989* New option -F (--quit-if-one-screen) quits if the text fits on
990  the first screen.
991
992* The -w option now highlights the target line of a g or p command.
993
994* A system-wide lesskey file is supported (LESSKEY_SYSTEM).
995
996* New escape for prompt strings: %c is replaced by column number.
997
998* New escape for prompt strings: %P is replaced by percentage into
999  file, based on line number rather than byte offset.
1000
1001* HOME and END keys now jump to beginning of file or end of file.
1002
1003======================================================================
1004
1005
1006	Major changes between "less" versions 337 and 340
1007
1008* Command line options for less may now be given in either the old
1009  single-letter form, or a new long name form (--option-name).
1010  See the less man page or "less --help" for the list of long option names.
1011
1012* Command line options for lesskey may now be given in a new long name
1013  form.  See the lesskey man page for the list of long option names.
1014
1015* New command -- toggles an option using the long option name.
1016
1017* New command __ queries an option using the long option name.
1018
1019* The old -- command is renamed as -!.
1020
1021* If a ^P is entered between the dash and the option letter of the -
1022  command, the message describing the new setting is suppressed.
1023
1024* Lesskey files may now contain \k escape sequences to represent the
1025  "special" keys (arrows, PAGE-UP/PAGE-DOWN, HOME, END, INSERT, DELETE).
1026
1027* New command :d removes the current file from the list of files.
1028
1029* New option -~ (like -w before version 335)
1030  suppresses tildes after end-of-file.
1031
1032* Less is now released under the GNU General Public License.
1033
1034======================================================================
1035
1036
1037	Major changes between "less" versions 335 and 337
1038
1039* Fixed bugs in "make install".
1040
1041======================================================================
1042
1043
1044	Major changes between "less" versions 332 and 335
1045
1046* The old -w flag (suppress tildes after end-of-file) has been removed.
1047
1048* New -w flag highlights the first new line after a forward-screen.
1049
1050* New -W flag highlights the first new line after any forward movement.
1051
1052* Window resize works even if LINES and/or COLUMNS environment
1053  variables are incorrect.
1054
1055* New percent escapes for prompt strings:
1056  %d is replaced by the page number, and
1057  %D is replaced by the number of pages in the file.
1058
1059* Added charsets "iso8859" and "ebcdic".
1060
1061* In Windows version, uses HOMEDRIVE and HOMEPATH if HOME is not defined.
1062
1063* Fixed some bugs causing incorrect display on DOS/Windows.
1064
1065======================================================================
1066
1067
1068	Major changes between "less" versions 330 and 332
1069
1070* Filenames from the command line are entered into the command history,
1071  so UPARROW/DOWNARROW can be used to retrieve them from the :e command.
1072
1073* Now works correctly on Windows when using a scrolling terminal
1074  window (buffer larger than display window).
1075
1076* On Windows, now restores the console screen on exit.
1077  Use -X to get the old behavior.
1078
1079* Fixed bug on Windows when CAPS-LOCK or NUM-LOCK is pressed.
1080
1081* Fixed bug on Windows when piping output of an interactive program.
1082
1083* Fixed bug in tags file processing when tags file has DOS-style
1084  line terminators (CR/LF).
1085
1086* Fixed compilation problem on OS/2.
1087
1088======================================================================
1089
1090
1091	Major changes between "less" versions 321 and 330
1092
1093* Now supports filenames containing spaces (in double quotes).
1094  New option -" can be used to change the quoting characters.
1095
1096* In filename completion, a slash is appended to a directory name.
1097  If the environment variable LESSSEPARATOR is set, the value of
1098  that variable, rather than a slash, is appended.
1099
1100* LeftArrow and RightArrow are same as ESC-[ and ESC-].
1101
1102* Added commands ESC-( and ESC-), same as ESC-[ and ESC-].
1103
1104* A "quit" command defined in a lesskey file may now have an "extra"
1105  string, which is used to return an exit code from less when it quits.
1106
1107* New environment variables LESSMETACHARS and LESSMETAESCAPE provide
1108  more control over how less interfaces to the shell.
1109
1110* Ported to Microsoft Visual C compiler for Windows.
1111
1112* Ported to DJGPP compiler for MS-DOS.
1113
1114* Bug fixes.
1115
1116======================================================================
1117
1118
1119	Major changes between "less" versions 291 and 321
1120
1121* Command line at bottom of screen now scrolls, so it can be longer
1122  than the screen width.
1123
1124* New commands ESC-] and ESC-[ scroll the display horizontally.
1125
1126* New command ESC-SPACE scrolls forward a full screen, even if it
1127  hits end-of-file.
1128
1129* Alternate modifiers for search commands: ^N is same as !,
1130  ^F is same as @, and ^E is same as *.
1131
1132* New modifier for search commands: ^K means highlight the matches
1133  currently on-screen, but don't move to the first match.
1134
1135* New modifier for search commands: ^R means don't use regular
1136  expressions in the search.
1137
1138* Environment variable LESSKEY gives name of default lesskey file.
1139
1140* Environment variable LESSSECURE will force less to run in
1141  "secure" mode.
1142
1143* Command line argument "--" signals that the rest of the arguments
1144  are files (not option flags).
1145
1146* Help file (less.hlp) is no longer installed.  Help text is now
1147  embedded in the less executable itself.
1148
1149* Added -Ph to change the prompt for the help text.
1150  Added -Ps to change the default short prompt (same as plain -P).
1151
1152* Ported to the Borland C compiler for MS-DOS.
1153
1154* Ported to Windows 95 & Windows NT.
1155
1156* Ported to OS-9.
1157
1158* Ported to GNU Hurd.
1159
1160======================================================================
1161
1162
1163	Major changes between "less" versions 290 and 291
1164
1165* Less environment variables can be specified in lesskey files.
1166
1167* Fixed MS-DOS build.
1168
1169======================================================================
1170
1171
1172	Major changes between "less" versions 278 and 290
1173
1174* Accepts GNU-style options "--help" and "--version".
1175
1176* OS/2 version looks for less.ini in $HOME before $INIT and $PATH.
1177
1178* Bug fixes
1179
1180======================================================================
1181
1182
1183	Major changes between "less" versions 252 and 278
1184
1185* A LESSOPEN preprocessor may now pipe the converted file data to less,
1186  rather than writing it to a temporary file.
1187
1188* Search pattern highlighting has been fixed.  It now highlights
1189  reliably, even if a string is split across two screen lines,
1190  contains TABs, etc.
1191
1192* The -F flag (which suppress search highlighting) has been changed
1193  to -G.  A new flag, -g, changes search highlighting to highlight
1194  only the string found by the last search command, instead of all
1195  strings which match the last search command.
1196
1197* New flag -I acts like -i, but ignores case even if the search
1198  pattern contains uppercase letters.
1199
1200* Less now checks for the environment variable VISUAL before EDITOR.
1201
1202* Ported to OS/2.
1203
1204======================================================================
1205
1206
1207	Major changes between "less" versions 237 and 252
1208
1209* Changes in line-editing keys:
1210  The literal key is now ^V or ^A rather than \ (backslash).
1211  Filename completion commands (TAB and ^L) are disabled
1212  when typing a search pattern.
1213
1214* Line-editing command keys can be redefined using lesskey.
1215
1216* Lesskey with no input file defaults to $HOME/.lesskey
1217  rather than standard input.
1218
1219* New option -V displays version number of less.
1220
1221* New option -V displays version number of lesskey.
1222
1223* Help file less.hlp is now installed by default in /usr/local/share
1224  rather than /usr/local/lib.
1225
1226
1227======================================================================
1228
1229
1230	Major changes between "less" versions 170 and 237
1231
1232* By popular demand, text which matches the current search pattern
1233  is highlighted.  New -F flag disables this feature.
1234
1235* Henry Spencer's regexp.c is now included, for systems which do not
1236  have a regular expression library.
1237  regexp.c is Copyright (c) 1986 by University of Toronto.
1238
1239* New line-editing keys, including command history (arrow keys) and
1240  filename completion (TAB).
1241
1242* Input preprocessor allows modification of input files (e.g. uncompress)
1243  via LESSOPEN/LESSCLOSE environment variables.
1244
1245* New -X flag disables sending termcap "ti" and "te" (initialize and
1246  deinitialize) strings to the terminal.
1247
1248* Changing -i from within less now correctly affects a subsequent
1249  repeated search.
1250
1251* Searching for underlined or overstruck text now works when the -u
1252  flag is in effect, rather than the -i flag.
1253
1254* Use setlocale (LANG and LC_CTYPE environment variables) to determine
1255  the character set if LESSCHARSET/LESSCHARDEF are not set.
1256
1257* The default format for displaying binary characters is now standout
1258  (reverse video) rather than blinking.  This can still be changed by
1259  setting the LESSBINFMT environment variable.
1260
1261* Use autoconf installation technology.
1262
1263* Ported to MS-DOS.
1264
1265        ********************************
1266          Things that may surprise you
1267        ********************************
1268
1269* When you enter text at the bottom of the screen (search string,
1270  filename, etc.), some keys act different than previously.
1271  Specifically, \ (backslash), ESC, TAB, BACKTAB, and control-L
1272  now have line editing functions.
1273
1274* Some previous unofficial versions of less were able to display
1275  compressed files.  The new LESSOPEN/LESSCLOSE feature now provides
1276  this functionality in a different way.
1277
1278* Some previous unofficial versions of less provided a -Z flag to
1279  set the number of lines of text to retain between full screen scrolls.
1280  The -z-n flag (that is, -z with a negative number) provides this
1281  functionality.
1282
1283
1284======================================================================
1285
1286
1287	Major changes between "less" versions 123 and 170
1288
1289* New option -j allows target lines to be positioned anywhere on screen.
1290
1291* New option -S truncates displayed line at the screen width,
1292  rather than wrapping onto the next line.
1293
1294* New option -y limits amount of forward scroll.
1295
1296* New option -T specifies a "tags" file.
1297
1298* Non-printable, non-control characters are displayed in octal.
1299  Such characters, as well as control characters, are displayed
1300  in blinking mode.
1301
1302* New command -+ sets an option to its default.
1303* New command -- sets an option to the opposite of its default.
1304
1305* Lesskey file may have a string appended to a key's action,
1306  which acts as though typed in after the command.
1307
1308* New commands ESC-^F and ESC-^B match arbitrary types of brackets.
1309
1310* New command F monitors a growing file (like "tail -f").
1311
1312* New command | pipes a section of the input file into a shell command.
1313
1314* New command :x directly jumps to a file in the command line list.
1315
1316* Search commands have been enhanced and reorganized:
1317	n	Repeat search, same direction.
1318	N	Repeat search, opposite direction.
1319	ESC-/	Search forward thru file boundaries
1320	ESC-?	Search backward thru file boundaries
1321	ESC-n	Repeat search thru file boundaries, same direction.
1322	ESC-N	Repeat search thru file boundaries, opposite direction.
1323  Special character * causes search to search thru file boundaries.
1324  Special character @ causes search to begin at start/end of file list.
1325
1326* Examining a new file adds it to the command line list.
1327  A list of files, or an expression which matches more than one file,
1328  may be examined; all of them are added to the command line list.
1329
1330* Environment variables LESSCHARSET and LESSCHARDEF can define
1331  a non-ASCII character set.
1332
1333* Partial support for MSDOS, including options -R for repainting screen
1334  on quit, -v/-V to select video mode, and -W to change window size.
1335
1336
1337======================================================================
1338
1339
1340	Major changes between "less" versions 97 and 123
1341
1342* New option (-N) causes line numbers to be displayed in the
1343  text of the file (like vi "set nu").
1344
1345* New option (-?) prints help message immediately.
1346
1347* New option (-r) displays "raw" control characters, without
1348  mapping them to ^X notation.
1349
1350* New option (-f) forces less to open non-regular files
1351  (directories, etc).
1352
1353* New option (-k) can be used to specify lesskey files by name.
1354
1355* New option (-y) can be used to set a forward scroll limit
1356  (like -h sets a backward scroll limit).
1357
1358* File marks (set by the m command) are now preserved when a new
1359  file is edited.  The ' command can thus be used to switch files.
1360
1361* New command ESC-/ searches all files (on the command line)
1362  for a pattern.
1363
1364* New command ESC-n repeats previous search, spanning files.
1365
1366* The N command has been changed to repeat the previous search
1367  in the reverse direction.  The old N command is still available
1368  via :n.
1369
1370* New command ESC-N repeats previous search in the reverse
1371  direction and spanning files.
1372
1373* 8 bit characters are now supported.  A new option (-g) can be
1374  used to strip off the eighth bit (the previous behavior).
1375
1376* Options which take a following string (like -t) may now
1377  optionally have a space between the option letter and the string.
1378
1379* Six new commands { } ( ) [ and ] can be used to match
1380  brackets of specific types, similar to vi % command.
1381
1382* New commands z and w move forward/backward one window and
1383  simultaneously set the window size.
1384
1385* Prompt string expansion now has %L for line number of the last
1386  line in the file, and %E for the name of the editor.
1387  Also, % escapes which refer to a line (b=bottom, t=top, etc.)
1388  can use j for the jump target line.
1389
1390* New environment variable LESSEDIT can be used to tailor the
1391  command string passed to the editor by the v command.
1392
1393* Examining a file which was previously examined will return
1394  to the same position in the file.
1395
1396* A "%" is expanded to the current filename and a "#" to the
1397  previous filename, in both shell commands and the E command.
1398  (Previously % worked only in shell commands and # worked
1399  only in the E command.)
1400
1401* New command ":ta" is equivalent to "-t".
1402
1403* New command "s" is equivalent to "-l".
1404
1405* The - command may be followed by "+X" to revert to the default
1406  for option X, or "-X" to get the opposite of the default.
1407
1408* Lesskey files may now include characters after the action as
1409  extra input to be parsed after the action; for example:
1410  "toggle-option X" to toggle a specific option X.
1411
1412
1413
1414
1415
1416