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