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