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