MFV r366990: less v563.
MFC after: 2 weeks Relnotes: yes
This commit is contained in:
commit
6f26c71d76
@ -9,6 +9,31 @@
|
|||||||
|
|
||||||
To report bugs, suggestions or comments, send email to bug-less@gnu.org
|
To report bugs, suggestions or comments, send email to bug-less@gnu.org
|
||||||
|
|
||||||
|
======================================================================
|
||||||
|
|
||||||
|
Major changes between "less" versions 551 and 563
|
||||||
|
|
||||||
|
* Update Unicode tables.
|
||||||
|
|
||||||
|
* Treat Hangul Jamo medial vowels and final consonants as zero width.
|
||||||
|
|
||||||
|
* Display error message immediately when -o is toggled and
|
||||||
|
input is not a pipe.
|
||||||
|
|
||||||
|
* Fix regression: make screen repaint when "squished" and
|
||||||
|
a no-movement command is given.
|
||||||
|
|
||||||
|
* Fix erroneous EOF calculation when F command is interrupted.
|
||||||
|
|
||||||
|
* Make WIN32C version include this fix from 551:
|
||||||
|
Don't count lines in initial screen if using -X with -F.
|
||||||
|
|
||||||
|
* Fix display bug in WIN32C version.
|
||||||
|
|
||||||
|
* Fix memory corruption when built with libtermcap.
|
||||||
|
|
||||||
|
* Support libtinfow.
|
||||||
|
|
||||||
======================================================================
|
======================================================================
|
||||||
|
|
||||||
Major changes between "less" versions 530 and 551
|
Major changes between "less" versions 530 and 551
|
||||||
|
@ -7,9 +7,9 @@
|
|||||||
**************************************************************************
|
**************************************************************************
|
||||||
**************************************************************************
|
**************************************************************************
|
||||||
|
|
||||||
Less, version 551
|
Less, version 563
|
||||||
|
|
||||||
This is the distribution of less, version 551, released 11 Jun 2019.
|
This is the distribution of less, version 563, released 13 Jun 2020.
|
||||||
This program is part of the GNU project (http://www.gnu.org).
|
This program is part of the GNU project (http://www.gnu.org).
|
||||||
|
|
||||||
This program is free software. You may redistribute it and/or
|
This program is free software. You may redistribute it and/or
|
||||||
@ -33,6 +33,14 @@ The formatted manual page is in less.man.
|
|||||||
The manual page nroff source is in less.nro.
|
The manual page nroff source is in less.nro.
|
||||||
Major changes made since the last posted version are in NEWS.
|
Major changes made since the last posted version are in NEWS.
|
||||||
|
|
||||||
|
=======================================================================
|
||||||
|
PRE-INSTALLATION (when using git)
|
||||||
|
|
||||||
|
If you are building from a clone of a git repository,
|
||||||
|
type "make -f Makefile.aut".
|
||||||
|
If you are building from a numbered release package (a tar or zip file
|
||||||
|
with a name like less-999.tar.gz or less-999.zip), you should skip this step.
|
||||||
|
|
||||||
=======================================================================
|
=======================================================================
|
||||||
INSTALLATION (Unix systems only):
|
INSTALLATION (Unix systems only):
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -408,6 +408,7 @@ end_logfile(VOID_PARAM)
|
|||||||
}
|
}
|
||||||
close(logfile);
|
close(logfile);
|
||||||
logfile = -1;
|
logfile = -1;
|
||||||
|
free(namelogfile);
|
||||||
namelogfile = NULL;
|
namelogfile = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -842,7 +843,8 @@ seekable(f)
|
|||||||
public void
|
public void
|
||||||
ch_set_eof(VOID_PARAM)
|
ch_set_eof(VOID_PARAM)
|
||||||
{
|
{
|
||||||
ch_fsize = ch_fpos;
|
if (ch_fsize != NULL_POSITION && ch_fsize < ch_fpos)
|
||||||
|
ch_fsize = ch_fpos;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -509,7 +509,7 @@ prutfchar(ch)
|
|||||||
*/
|
*/
|
||||||
public int
|
public int
|
||||||
utf_len(ch)
|
utf_len(ch)
|
||||||
unsigned char ch;
|
int ch;
|
||||||
{
|
{
|
||||||
if ((ch & 0x80) == 0)
|
if ((ch & 0x80) == 0)
|
||||||
return 1;
|
return 1;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -34,7 +34,7 @@ static int literal; /* Next input char should not be interpreted */
|
|||||||
static int updown_match = -1; /* Prefix length in up/down movement */
|
static int updown_match = -1; /* Prefix length in up/down movement */
|
||||||
|
|
||||||
#if TAB_COMPLETE_FILENAME
|
#if TAB_COMPLETE_FILENAME
|
||||||
static int cmd_complete();
|
static int cmd_complete LESSPARAMS((int action));
|
||||||
/*
|
/*
|
||||||
* These variables are statics used by cmd_complete.
|
* These variables are statics used by cmd_complete.
|
||||||
*/
|
*/
|
||||||
@ -960,10 +960,7 @@ cmd_istr(str)
|
|||||||
step_char(&s, +1, endline);
|
step_char(&s, +1, endline);
|
||||||
action = cmd_ichar(os, s - os);
|
action = cmd_ichar(os, s - os);
|
||||||
if (action != CC_OK)
|
if (action != CC_OK)
|
||||||
{
|
|
||||||
bell();
|
|
||||||
return (action);
|
return (action);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return (CC_OK);
|
return (CC_OK);
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* $FreeBSD$ */
|
/* $FreeBSD$ */
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -90,7 +90,7 @@ struct ungot {
|
|||||||
};
|
};
|
||||||
static struct ungot* ungot = NULL;
|
static struct ungot* ungot = NULL;
|
||||||
|
|
||||||
static void multi_search();
|
static void multi_search LESSPARAMS((char *pattern, int n, int silent));
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Move the cursor to start of prompt line before executing a command.
|
* Move the cursor to start of prompt line before executing a command.
|
||||||
@ -1806,6 +1806,12 @@ commands(VOID_PARAM)
|
|||||||
optgetname = FALSE;
|
optgetname = FALSE;
|
||||||
mca_opt_toggle();
|
mca_opt_toggle();
|
||||||
c = getcc();
|
c = getcc();
|
||||||
|
cbuf = opt_toggle_disallowed(c);
|
||||||
|
if (cbuf != NULL)
|
||||||
|
{
|
||||||
|
error(cbuf, NULL_PARG);
|
||||||
|
break;
|
||||||
|
}
|
||||||
goto again;
|
goto again;
|
||||||
|
|
||||||
case A_DISP_OPTION:
|
case A_DISP_OPTION:
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Generated by "./mkutable -f2 Mn Me -- unicode/UnicodeData.txt" on Wed Feb 13 17:57:05 PST 2019 */
|
/* Generated by "./mkutable -f2 Mn Me -- unicode/UnicodeData.txt" on Tue May 19 14:47:34 PDT 2020 */
|
||||||
{ 0x0300, 0x036f }, /* Mn */
|
{ 0x0300, 0x036f }, /* Mn */
|
||||||
{ 0x0483, 0x0487 }, /* Mn */
|
{ 0x0483, 0x0487 }, /* Mn */
|
||||||
{ 0x0488, 0x0489 }, /* Me */
|
{ 0x0488, 0x0489 }, /* Me */
|
||||||
@ -58,7 +58,7 @@
|
|||||||
{ 0x0b3f, 0x0b3f }, /* Mn */
|
{ 0x0b3f, 0x0b3f }, /* Mn */
|
||||||
{ 0x0b41, 0x0b44 }, /* Mn */
|
{ 0x0b41, 0x0b44 }, /* Mn */
|
||||||
{ 0x0b4d, 0x0b4d }, /* Mn */
|
{ 0x0b4d, 0x0b4d }, /* Mn */
|
||||||
{ 0x0b56, 0x0b56 }, /* Mn */
|
{ 0x0b55, 0x0b56 }, /* Mn */
|
||||||
{ 0x0b62, 0x0b63 }, /* Mn */
|
{ 0x0b62, 0x0b63 }, /* Mn */
|
||||||
{ 0x0b82, 0x0b82 }, /* Mn */
|
{ 0x0b82, 0x0b82 }, /* Mn */
|
||||||
{ 0x0bc0, 0x0bc0 }, /* Mn */
|
{ 0x0bc0, 0x0bc0 }, /* Mn */
|
||||||
@ -81,6 +81,7 @@
|
|||||||
{ 0x0d41, 0x0d44 }, /* Mn */
|
{ 0x0d41, 0x0d44 }, /* Mn */
|
||||||
{ 0x0d4d, 0x0d4d }, /* Mn */
|
{ 0x0d4d, 0x0d4d }, /* Mn */
|
||||||
{ 0x0d62, 0x0d63 }, /* Mn */
|
{ 0x0d62, 0x0d63 }, /* Mn */
|
||||||
|
{ 0x0d81, 0x0d81 }, /* Mn */
|
||||||
{ 0x0dca, 0x0dca }, /* Mn */
|
{ 0x0dca, 0x0dca }, /* Mn */
|
||||||
{ 0x0dd2, 0x0dd4 }, /* Mn */
|
{ 0x0dd2, 0x0dd4 }, /* Mn */
|
||||||
{ 0x0dd6, 0x0dd6 }, /* Mn */
|
{ 0x0dd6, 0x0dd6 }, /* Mn */
|
||||||
@ -88,8 +89,7 @@
|
|||||||
{ 0x0e34, 0x0e3a }, /* Mn */
|
{ 0x0e34, 0x0e3a }, /* Mn */
|
||||||
{ 0x0e47, 0x0e4e }, /* Mn */
|
{ 0x0e47, 0x0e4e }, /* Mn */
|
||||||
{ 0x0eb1, 0x0eb1 }, /* Mn */
|
{ 0x0eb1, 0x0eb1 }, /* Mn */
|
||||||
{ 0x0eb4, 0x0eb9 }, /* Mn */
|
{ 0x0eb4, 0x0ebc }, /* Mn */
|
||||||
{ 0x0ebb, 0x0ebc }, /* Mn */
|
|
||||||
{ 0x0ec8, 0x0ecd }, /* Mn */
|
{ 0x0ec8, 0x0ecd }, /* Mn */
|
||||||
{ 0x0f18, 0x0f19 }, /* Mn */
|
{ 0x0f18, 0x0f19 }, /* Mn */
|
||||||
{ 0x0f35, 0x0f35 }, /* Mn */
|
{ 0x0f35, 0x0f35 }, /* Mn */
|
||||||
@ -112,6 +112,7 @@
|
|||||||
{ 0x1085, 0x1086 }, /* Mn */
|
{ 0x1085, 0x1086 }, /* Mn */
|
||||||
{ 0x108d, 0x108d }, /* Mn */
|
{ 0x108d, 0x108d }, /* Mn */
|
||||||
{ 0x109d, 0x109d }, /* Mn */
|
{ 0x109d, 0x109d }, /* Mn */
|
||||||
|
{ 0x1160, 0x11ff }, /* Mn */
|
||||||
{ 0x135d, 0x135f }, /* Mn */
|
{ 0x135d, 0x135f }, /* Mn */
|
||||||
{ 0x1712, 0x1714 }, /* Mn */
|
{ 0x1712, 0x1714 }, /* Mn */
|
||||||
{ 0x1732, 0x1734 }, /* Mn */
|
{ 0x1732, 0x1734 }, /* Mn */
|
||||||
@ -140,6 +141,7 @@
|
|||||||
{ 0x1a7f, 0x1a7f }, /* Mn */
|
{ 0x1a7f, 0x1a7f }, /* Mn */
|
||||||
{ 0x1ab0, 0x1abd }, /* Mn */
|
{ 0x1ab0, 0x1abd }, /* Mn */
|
||||||
{ 0x1abe, 0x1abe }, /* Me */
|
{ 0x1abe, 0x1abe }, /* Me */
|
||||||
|
{ 0x1abf, 0x1ac0 }, /* Mn */
|
||||||
{ 0x1b00, 0x1b03 }, /* Mn */
|
{ 0x1b00, 0x1b03 }, /* Mn */
|
||||||
{ 0x1b34, 0x1b34 }, /* Mn */
|
{ 0x1b34, 0x1b34 }, /* Mn */
|
||||||
{ 0x1b36, 0x1b3a }, /* Mn */
|
{ 0x1b36, 0x1b3a }, /* Mn */
|
||||||
@ -183,6 +185,7 @@
|
|||||||
{ 0xa806, 0xa806 }, /* Mn */
|
{ 0xa806, 0xa806 }, /* Mn */
|
||||||
{ 0xa80b, 0xa80b }, /* Mn */
|
{ 0xa80b, 0xa80b }, /* Mn */
|
||||||
{ 0xa825, 0xa826 }, /* Mn */
|
{ 0xa825, 0xa826 }, /* Mn */
|
||||||
|
{ 0xa82c, 0xa82c }, /* Mn */
|
||||||
{ 0xa8c4, 0xa8c5 }, /* Mn */
|
{ 0xa8c4, 0xa8c5 }, /* Mn */
|
||||||
{ 0xa8e0, 0xa8f1 }, /* Mn */
|
{ 0xa8e0, 0xa8f1 }, /* Mn */
|
||||||
{ 0xa8ff, 0xa8ff }, /* Mn */
|
{ 0xa8ff, 0xa8ff }, /* Mn */
|
||||||
@ -191,7 +194,7 @@
|
|||||||
{ 0xa980, 0xa982 }, /* Mn */
|
{ 0xa980, 0xa982 }, /* Mn */
|
||||||
{ 0xa9b3, 0xa9b3 }, /* Mn */
|
{ 0xa9b3, 0xa9b3 }, /* Mn */
|
||||||
{ 0xa9b6, 0xa9b9 }, /* Mn */
|
{ 0xa9b6, 0xa9b9 }, /* Mn */
|
||||||
{ 0xa9bc, 0xa9bc }, /* Mn */
|
{ 0xa9bc, 0xa9bd }, /* Mn */
|
||||||
{ 0xa9e5, 0xa9e5 }, /* Mn */
|
{ 0xa9e5, 0xa9e5 }, /* Mn */
|
||||||
{ 0xaa29, 0xaa2e }, /* Mn */
|
{ 0xaa29, 0xaa2e }, /* Mn */
|
||||||
{ 0xaa31, 0xaa32 }, /* Mn */
|
{ 0xaa31, 0xaa32 }, /* Mn */
|
||||||
@ -209,6 +212,8 @@
|
|||||||
{ 0xabe5, 0xabe5 }, /* Mn */
|
{ 0xabe5, 0xabe5 }, /* Mn */
|
||||||
{ 0xabe8, 0xabe8 }, /* Mn */
|
{ 0xabe8, 0xabe8 }, /* Mn */
|
||||||
{ 0xabed, 0xabed }, /* Mn */
|
{ 0xabed, 0xabed }, /* Mn */
|
||||||
|
{ 0xd7b0, 0xd7c6 }, /* Mn */
|
||||||
|
{ 0xd7cb, 0xd7fb }, /* Mn */
|
||||||
{ 0xfb1e, 0xfb1e }, /* Mn */
|
{ 0xfb1e, 0xfb1e }, /* Mn */
|
||||||
{ 0xfe00, 0xfe0f }, /* Mn */
|
{ 0xfe00, 0xfe0f }, /* Mn */
|
||||||
{ 0xfe20, 0xfe2f }, /* Mn */
|
{ 0xfe20, 0xfe2f }, /* Mn */
|
||||||
@ -222,6 +227,7 @@
|
|||||||
{ 0x10a3f, 0x10a3f }, /* Mn */
|
{ 0x10a3f, 0x10a3f }, /* Mn */
|
||||||
{ 0x10ae5, 0x10ae6 }, /* Mn */
|
{ 0x10ae5, 0x10ae6 }, /* Mn */
|
||||||
{ 0x10d24, 0x10d27 }, /* Mn */
|
{ 0x10d24, 0x10d27 }, /* Mn */
|
||||||
|
{ 0x10eab, 0x10eac }, /* Mn */
|
||||||
{ 0x10f46, 0x10f50 }, /* Mn */
|
{ 0x10f46, 0x10f50 }, /* Mn */
|
||||||
{ 0x11001, 0x11001 }, /* Mn */
|
{ 0x11001, 0x11001 }, /* Mn */
|
||||||
{ 0x11038, 0x11046 }, /* Mn */
|
{ 0x11038, 0x11046 }, /* Mn */
|
||||||
@ -235,6 +241,7 @@
|
|||||||
{ 0x11180, 0x11181 }, /* Mn */
|
{ 0x11180, 0x11181 }, /* Mn */
|
||||||
{ 0x111b6, 0x111be }, /* Mn */
|
{ 0x111b6, 0x111be }, /* Mn */
|
||||||
{ 0x111c9, 0x111cc }, /* Mn */
|
{ 0x111c9, 0x111cc }, /* Mn */
|
||||||
|
{ 0x111cf, 0x111cf }, /* Mn */
|
||||||
{ 0x1122f, 0x11231 }, /* Mn */
|
{ 0x1122f, 0x11231 }, /* Mn */
|
||||||
{ 0x11234, 0x11234 }, /* Mn */
|
{ 0x11234, 0x11234 }, /* Mn */
|
||||||
{ 0x11236, 0x11237 }, /* Mn */
|
{ 0x11236, 0x11237 }, /* Mn */
|
||||||
@ -270,6 +277,12 @@
|
|||||||
{ 0x11727, 0x1172b }, /* Mn */
|
{ 0x11727, 0x1172b }, /* Mn */
|
||||||
{ 0x1182f, 0x11837 }, /* Mn */
|
{ 0x1182f, 0x11837 }, /* Mn */
|
||||||
{ 0x11839, 0x1183a }, /* Mn */
|
{ 0x11839, 0x1183a }, /* Mn */
|
||||||
|
{ 0x1193b, 0x1193c }, /* Mn */
|
||||||
|
{ 0x1193e, 0x1193e }, /* Mn */
|
||||||
|
{ 0x11943, 0x11943 }, /* Mn */
|
||||||
|
{ 0x119d4, 0x119d7 }, /* Mn */
|
||||||
|
{ 0x119da, 0x119db }, /* Mn */
|
||||||
|
{ 0x119e0, 0x119e0 }, /* Mn */
|
||||||
{ 0x11a01, 0x11a0a }, /* Mn */
|
{ 0x11a01, 0x11a0a }, /* Mn */
|
||||||
{ 0x11a33, 0x11a38 }, /* Mn */
|
{ 0x11a33, 0x11a38 }, /* Mn */
|
||||||
{ 0x11a3b, 0x11a3e }, /* Mn */
|
{ 0x11a3b, 0x11a3e }, /* Mn */
|
||||||
@ -296,7 +309,9 @@
|
|||||||
{ 0x11ef3, 0x11ef4 }, /* Mn */
|
{ 0x11ef3, 0x11ef4 }, /* Mn */
|
||||||
{ 0x16af0, 0x16af4 }, /* Mn */
|
{ 0x16af0, 0x16af4 }, /* Mn */
|
||||||
{ 0x16b30, 0x16b36 }, /* Mn */
|
{ 0x16b30, 0x16b36 }, /* Mn */
|
||||||
|
{ 0x16f4f, 0x16f4f }, /* Mn */
|
||||||
{ 0x16f8f, 0x16f92 }, /* Mn */
|
{ 0x16f8f, 0x16f92 }, /* Mn */
|
||||||
|
{ 0x16fe4, 0x16fe4 }, /* Mn */
|
||||||
{ 0x1bc9d, 0x1bc9e }, /* Mn */
|
{ 0x1bc9d, 0x1bc9e }, /* Mn */
|
||||||
{ 0x1d167, 0x1d169 }, /* Mn */
|
{ 0x1d167, 0x1d169 }, /* Mn */
|
||||||
{ 0x1d17b, 0x1d182 }, /* Mn */
|
{ 0x1d17b, 0x1d182 }, /* Mn */
|
||||||
@ -314,6 +329,9 @@
|
|||||||
{ 0x1e01b, 0x1e021 }, /* Mn */
|
{ 0x1e01b, 0x1e021 }, /* Mn */
|
||||||
{ 0x1e023, 0x1e024 }, /* Mn */
|
{ 0x1e023, 0x1e024 }, /* Mn */
|
||||||
{ 0x1e026, 0x1e02a }, /* Mn */
|
{ 0x1e026, 0x1e02a }, /* Mn */
|
||||||
|
{ 0x1e130, 0x1e136 }, /* Mn */
|
||||||
|
{ 0x1e2ae, 0x1e2ae }, /* Mn */
|
||||||
|
{ 0x1e2ec, 0x1e2ef }, /* Mn */
|
||||||
{ 0x1e8d0, 0x1e8d6 }, /* Mn */
|
{ 0x1e8d0, 0x1e8d6 }, /* Mn */
|
||||||
{ 0x1e944, 0x1e94a }, /* Mn */
|
{ 0x1e944, 0x1e94a }, /* Mn */
|
||||||
{ 0xe0100, 0xe01ef }, /* Mn */
|
{ 0xe0100, 0xe01ef }, /* Mn */
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -854,7 +854,6 @@ use_logfile(filename)
|
|||||||
/*
|
/*
|
||||||
* Don't do anything.
|
* Don't do anything.
|
||||||
*/
|
*/
|
||||||
free(filename);
|
|
||||||
return;
|
return;
|
||||||
case 'q':
|
case 'q':
|
||||||
quit(QUIT_OK);
|
quit(QUIT_OK);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -795,7 +795,7 @@ lglob(filename)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @@@
|
* Return canonical pathname.
|
||||||
*/
|
*/
|
||||||
public char *
|
public char *
|
||||||
lrealpath(path)
|
lrealpath(path)
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Generated by "./mkutable -f2 Cf -- unicode/UnicodeData.txt" on Wed Feb 13 17:57:05 PST 2019 */
|
/* Generated by "./mkutable -f2 Cf -- unicode/UnicodeData.txt" on Tue May 19 14:47:34 PDT 2020 */
|
||||||
{ 0x00ad, 0x00ad }, /* Cf */
|
{ 0x00ad, 0x00ad }, /* Cf */
|
||||||
{ 0x0600, 0x0605 }, /* Cf */
|
{ 0x0600, 0x0605 }, /* Cf */
|
||||||
{ 0x061c, 0x061c }, /* Cf */
|
{ 0x061c, 0x061c }, /* Cf */
|
||||||
@ -14,6 +14,7 @@
|
|||||||
{ 0xfff9, 0xfffb }, /* Cf */
|
{ 0xfff9, 0xfffb }, /* Cf */
|
||||||
{ 0x110bd, 0x110bd }, /* Cf */
|
{ 0x110bd, 0x110bd }, /* Cf */
|
||||||
{ 0x110cd, 0x110cd }, /* Cf */
|
{ 0x110cd, 0x110cd }, /* Cf */
|
||||||
|
{ 0x13430, 0x13438 }, /* Cf */
|
||||||
{ 0x1bca0, 0x1bca3 }, /* Cf */
|
{ 0x1bca0, 0x1bca3 }, /* Cf */
|
||||||
{ 0x1d173, 0x1d17a }, /* Cf */
|
{ 0x1d173, 0x1d17a }, /* Cf */
|
||||||
{ 0xe0001, 0xe0001 }, /* Cf */
|
{ 0xe0001, 0xe0001 }, /* Cf */
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* $FreeBSD$ */
|
/* $FreeBSD$ */
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -21,7 +21,6 @@ public int screen_trashed;
|
|||||||
public int squished;
|
public int squished;
|
||||||
public int no_back_scroll = 0;
|
public int no_back_scroll = 0;
|
||||||
public int forw_prompt;
|
public int forw_prompt;
|
||||||
public int same_pos_bell = 1;
|
|
||||||
|
|
||||||
extern int sigs;
|
extern int sigs;
|
||||||
extern int top_scroll;
|
extern int top_scroll;
|
||||||
@ -290,7 +289,7 @@ forw(n, pos, force, only_last, nblank)
|
|||||||
forw_prompt = 1;
|
forw_prompt = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (nlines == 0 && !ignore_eoi && same_pos_bell)
|
if (nlines == 0 && !ignore_eoi)
|
||||||
eof_bell();
|
eof_bell();
|
||||||
else if (do_repaint)
|
else if (do_repaint)
|
||||||
repaint();
|
repaint();
|
||||||
@ -350,7 +349,7 @@ back(n, pos, force, only_last)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (nlines == 0 && same_pos_bell)
|
if (nlines == 0)
|
||||||
eof_bell();
|
eof_bell();
|
||||||
else if (do_repaint)
|
else if (do_repaint)
|
||||||
repaint();
|
repaint();
|
||||||
|
@ -61,7 +61,7 @@ public int binary_char LESSPARAMS ((LWCHAR c));
|
|||||||
public int control_char LESSPARAMS ((LWCHAR c));
|
public int control_char LESSPARAMS ((LWCHAR c));
|
||||||
public char * prchar LESSPARAMS ((LWCHAR c));
|
public char * prchar LESSPARAMS ((LWCHAR c));
|
||||||
public char * prutfchar LESSPARAMS ((LWCHAR ch));
|
public char * prutfchar LESSPARAMS ((LWCHAR ch));
|
||||||
public int utf_len LESSPARAMS ((unsigned char ch));
|
public int utf_len LESSPARAMS ((int ch));
|
||||||
public int is_utf8_well_formed LESSPARAMS ((char *ss, int slen));
|
public int is_utf8_well_formed LESSPARAMS ((char *ss, int slen));
|
||||||
public void utf_skip_to_lead LESSPARAMS ((char **pp, char *limit));
|
public void utf_skip_to_lead LESSPARAMS ((char **pp, char *limit));
|
||||||
public LWCHAR get_wchar LESSPARAMS ((constant char *p));
|
public LWCHAR get_wchar LESSPARAMS ((constant char *p));
|
||||||
@ -187,10 +187,10 @@ public void pshift_all LESSPARAMS ((VOID_PARAM));
|
|||||||
public int is_ansi_end LESSPARAMS ((LWCHAR ch));
|
public int is_ansi_end LESSPARAMS ((LWCHAR ch));
|
||||||
public int is_ansi_middle LESSPARAMS ((LWCHAR ch));
|
public int is_ansi_middle LESSPARAMS ((LWCHAR ch));
|
||||||
public void skip_ansi LESSPARAMS ((char **pp, constant char *limit));
|
public void skip_ansi LESSPARAMS ((char **pp, constant char *limit));
|
||||||
public int pappend LESSPARAMS ((unsigned char c, POSITION pos));
|
public int pappend LESSPARAMS ((int c, POSITION pos));
|
||||||
public int pflushmbc LESSPARAMS ((VOID_PARAM));
|
public int pflushmbc LESSPARAMS ((VOID_PARAM));
|
||||||
public void pdone LESSPARAMS ((int endline, int chopped, int forw));
|
public void pdone LESSPARAMS ((int endline, int chopped, int forw));
|
||||||
public void set_status_col LESSPARAMS ((char c));
|
public void set_status_col LESSPARAMS ((int c));
|
||||||
public int gline LESSPARAMS ((int i, int *ap));
|
public int gline LESSPARAMS ((int i, int *ap));
|
||||||
public void null_line LESSPARAMS ((VOID_PARAM));
|
public void null_line LESSPARAMS ((VOID_PARAM));
|
||||||
public POSITION forw_raw_line LESSPARAMS ((POSITION curr_pos, char **linep, int *line_lenp));
|
public POSITION forw_raw_line LESSPARAMS ((POSITION curr_pos, char **linep, int *line_lenp));
|
||||||
@ -243,6 +243,7 @@ public void scan_option LESSPARAMS ((char *s));
|
|||||||
public void toggle_option LESSPARAMS ((struct loption *o, int lower, char *s, int how_toggle));
|
public void toggle_option LESSPARAMS ((struct loption *o, int lower, char *s, int how_toggle));
|
||||||
public int opt_has_param LESSPARAMS ((struct loption *o));
|
public int opt_has_param LESSPARAMS ((struct loption *o));
|
||||||
public char * opt_prompt LESSPARAMS ((struct loption *o));
|
public char * opt_prompt LESSPARAMS ((struct loption *o));
|
||||||
|
public char * opt_toggle_disallowed LESSPARAMS ((int c));
|
||||||
public int isoptpending LESSPARAMS ((VOID_PARAM));
|
public int isoptpending LESSPARAMS ((VOID_PARAM));
|
||||||
public void nopendopt LESSPARAMS ((VOID_PARAM));
|
public void nopendopt LESSPARAMS ((VOID_PARAM));
|
||||||
public int getnum LESSPARAMS ((char **sp, char *printopt, int *errp));
|
public int getnum LESSPARAMS ((char **sp, char *printopt, int *errp));
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* This file was generated by mkhelp.pl from less.hlp at 18:12 on 2019/6/11 */
|
/* This file was generated by mkhelp.pl from less.hlp at 3:34 on 2020/6/14 */
|
||||||
#include "less.h"
|
#include "less.h"
|
||||||
constant char helpdata[] = {
|
constant char helpdata[] = {
|
||||||
'\n',
|
'\n',
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -219,7 +219,7 @@ jump_loc(pos, sline)
|
|||||||
nline -= sindex;
|
nline -= sindex;
|
||||||
if (nline > 0)
|
if (nline > 0)
|
||||||
forw(nline, position(BOTTOM_PLUS_ONE), 1, 0, 0);
|
forw(nline, position(BOTTOM_PLUS_ONE), 1, 0, 0);
|
||||||
else if (nline < 0)
|
else
|
||||||
back(-nline, position(TOP), 1, 0);
|
back(-nline, position(TOP), 1, 0);
|
||||||
#if HILITE_SEARCH
|
#if HILITE_SEARCH
|
||||||
if (show_attn)
|
if (show_attn)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
.TH LESS 1 "Version 551: 11 Jun 2019"
|
'\" t
|
||||||
|
.TH LESS 1 "Version 563: 13 Jun 2020"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
less \- opposite of more
|
less \- opposite of more
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
@ -21,19 +22,18 @@ less \- opposite of more
|
|||||||
.B " [\-# \fIshift\/\fP] [+[+]\fIcmd\/\fP] [\-\-] [\fIfilename\/\fP]..."
|
.B " [\-# \fIshift\/\fP] [+[+]\fIcmd\/\fP] [\-\-] [\fIfilename\/\fP]..."
|
||||||
.br
|
.br
|
||||||
(See the OPTIONS section for alternate option syntax with long option names.)
|
(See the OPTIONS section for alternate option syntax with long option names.)
|
||||||
|
.
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
.I Less
|
.I Less
|
||||||
is a program similar to
|
is a program similar to
|
||||||
.I more
|
.IR more (1),
|
||||||
(1), but which allows backward movement
|
but which allows backward movement
|
||||||
in the file as well as forward movement.
|
in the file as well as forward movement.
|
||||||
Also,
|
Also,
|
||||||
.I less
|
.I less
|
||||||
does not have to read the entire input file before starting,
|
does not have to read the entire input file before starting,
|
||||||
so with large input files it starts up faster than text editors like
|
so with large input files it starts up faster than text editors like
|
||||||
.I vi
|
.IR vi (1).
|
||||||
(1).
|
|
||||||
.I Less
|
.I Less
|
||||||
uses termcap (or terminfo on some systems),
|
uses termcap (or terminfo on some systems),
|
||||||
so it can run on a variety of terminals.
|
so it can run on a variety of terminals.
|
||||||
@ -48,7 +48,7 @@ and
|
|||||||
Commands may be preceded by a decimal number,
|
Commands may be preceded by a decimal number,
|
||||||
called N in the descriptions below.
|
called N in the descriptions below.
|
||||||
The number is used by some commands, as indicated.
|
The number is used by some commands, as indicated.
|
||||||
|
.
|
||||||
.SH COMMANDS
|
.SH COMMANDS
|
||||||
In the following descriptions, ^X means control-X.
|
In the following descriptions, ^X means control-X.
|
||||||
ESC stands for the ESCAPE key; for example ESC-v means the
|
ESC stands for the ESCAPE key; for example ESC-v means the
|
||||||
@ -229,7 +229,7 @@ that is, do a simple textual comparison.
|
|||||||
.RE
|
.RE
|
||||||
.IP ?pattern
|
.IP ?pattern
|
||||||
Search backward in the file for the N-th line containing the pattern.
|
Search backward in the file for the N-th line containing the pattern.
|
||||||
The search starts at the last line displayed
|
The search starts at the last line displayed
|
||||||
(but see the \-a and \-j options, which change this).
|
(but see the \-a and \-j options, which change this).
|
||||||
.sp
|
.sp
|
||||||
Certain characters are special as in the / command:
|
Certain characters are special as in the / command:
|
||||||
@ -376,7 +376,7 @@ this will reset the option to the "opposite" of its default setting
|
|||||||
and print a message describing the new setting.
|
and print a message describing the new setting.
|
||||||
This does not work for numeric or string-valued options.
|
This does not work for numeric or string-valued options.
|
||||||
.IP \-\-!
|
.IP \-\-!
|
||||||
Like the \-! command, but takes a long option name
|
Like the \-!\& command, but takes a long option name
|
||||||
rather than a single option letter.
|
rather than a single option letter.
|
||||||
.IP _
|
.IP _
|
||||||
(Underscore.)
|
(Underscore.)
|
||||||
@ -405,7 +405,7 @@ Exits
|
|||||||
The following
|
The following
|
||||||
four
|
four
|
||||||
commands may or may not be valid, depending on your particular installation.
|
commands may or may not be valid, depending on your particular installation.
|
||||||
.PP
|
.
|
||||||
.IP v
|
.IP v
|
||||||
Invokes an editor to edit the current file being viewed.
|
Invokes an editor to edit the current file being viewed.
|
||||||
The editor is taken from the environment variable VISUAL if defined,
|
The editor is taken from the environment variable VISUAL if defined,
|
||||||
@ -425,7 +425,7 @@ On MS-DOS and OS/2 systems, the shell is the normal command processor.
|
|||||||
.IP "| <m> shell-command"
|
.IP "| <m> shell-command"
|
||||||
<m> represents any mark letter.
|
<m> represents any mark letter.
|
||||||
Pipes a section of the input file to the given shell command.
|
Pipes a section of the input file to the given shell command.
|
||||||
The section of the file to be piped is between the position marked by
|
The section of the file to be piped is between the position marked by
|
||||||
the letter and the current screen.
|
the letter and the current screen.
|
||||||
The entire current screen is included, regardless of whether the
|
The entire current screen is included, regardless of whether the
|
||||||
marked position is before or after the current screen.
|
marked position is before or after the current screen.
|
||||||
@ -434,7 +434,7 @@ If <m> is \&.\& or newline, the current screen is piped.
|
|||||||
.IP "s filename"
|
.IP "s filename"
|
||||||
Save the input to a file.
|
Save the input to a file.
|
||||||
This only works if the input is a pipe, not an ordinary file.
|
This only works if the input is a pipe, not an ordinary file.
|
||||||
.PP
|
.
|
||||||
.SH OPTIONS
|
.SH OPTIONS
|
||||||
Command line options are described below.
|
Command line options are described below.
|
||||||
Most options may be changed while
|
Most options may be changed while
|
||||||
@ -518,7 +518,7 @@ This was the default behavior in less versions prior to 441.
|
|||||||
Specifies the amount of buffer space
|
Specifies the amount of buffer space
|
||||||
.I less
|
.I less
|
||||||
will use for each file, in units of kilobytes (1024 bytes).
|
will use for each file, in units of kilobytes (1024 bytes).
|
||||||
By default 64\ K of buffer space is used for each file
|
By default 64\ KB of buffer space is used for each file
|
||||||
(unless the file is a pipe; see the \-B option).
|
(unless the file is a pipe; see the \-B option).
|
||||||
The \-b option specifies instead that \fIn\fP kilobytes of
|
The \-b option specifies instead that \fIn\fP kilobytes of
|
||||||
buffer space should be used for each file.
|
buffer space should be used for each file.
|
||||||
@ -530,7 +530,7 @@ buffers are allocated automatically as needed.
|
|||||||
If a large amount of data is read from the pipe, this can cause
|
If a large amount of data is read from the pipe, this can cause
|
||||||
a large amount of memory to be allocated.
|
a large amount of memory to be allocated.
|
||||||
The \-B option disables this automatic allocation of buffers for pipes,
|
The \-B option disables this automatic allocation of buffers for pipes,
|
||||||
so that only 64\ K
|
so that only 64\ KB
|
||||||
(or the amount of space specified by the \-b option)
|
(or the amount of space specified by the \-b option)
|
||||||
is used for the pipe.
|
is used for the pipe.
|
||||||
Warning: use of \-B can result in erroneous display, since only the
|
Warning: use of \-B can result in erroneous display, since only the
|
||||||
@ -563,8 +563,9 @@ A single number \fIN\fP is the same as \fIN.M\fP,
|
|||||||
where \fIM\fP is the normal background color.
|
where \fIM\fP is the normal background color.
|
||||||
The color may start or end with \fBu\fP to use underline (with the normal
|
The color may start or end with \fBu\fP to use underline (with the normal
|
||||||
color, if by itself), if the system supports it (Windows only).
|
color, if by itself), if the system supports it (Windows only).
|
||||||
\fBx\fP may also be \fBa\fP to toggle strict ANSI sequence rendering (SGR mode).
|
\fBx\fP may also be \fBa\fP to toggle strict ANSI sequence rendering
|
||||||
|
(SGR mode).
|
||||||
|
.
|
||||||
.IP "\-e or \-\-quit-at-eof"
|
.IP "\-e or \-\-quit-at-eof"
|
||||||
Causes
|
Causes
|
||||||
.I less
|
.I less
|
||||||
@ -654,8 +655,8 @@ The status column is also used if the \-w or \-W option is in effect.
|
|||||||
Causes
|
Causes
|
||||||
.I less
|
.I less
|
||||||
to open and interpret the named file as a
|
to open and interpret the named file as a
|
||||||
.I lesskey
|
.IR lesskey (1)
|
||||||
(1) file.
|
file.
|
||||||
Multiple \-k options may be specified.
|
Multiple \-k options may be specified.
|
||||||
If the LESSKEY or LESSKEY_SYSTEM environment variable is set, or
|
If the LESSKEY or LESSKEY_SYSTEM environment variable is set, or
|
||||||
if a lesskey file is found in a standard place (see KEY BINDINGS),
|
if a lesskey file is found in a standard place (see KEY BINDINGS),
|
||||||
@ -746,7 +747,7 @@ to that string.
|
|||||||
\-Ph changes the prompt for the help screen.
|
\-Ph changes the prompt for the help screen.
|
||||||
\-P= changes the message printed by the = command.
|
\-P= changes the message printed by the = command.
|
||||||
\-Pw changes the message printed while waiting for data (in the F command).
|
\-Pw changes the message printed while waiting for data (in the F command).
|
||||||
|
.sp 1
|
||||||
All prompt strings consist of a sequence of
|
All prompt strings consist of a sequence of
|
||||||
letters and special escape sequences.
|
letters and special escape sequences.
|
||||||
See the section on PROMPTS for more details.
|
See the section on PROMPTS for more details.
|
||||||
@ -762,7 +763,7 @@ The default is to ring the terminal bell in all such cases.
|
|||||||
.IP "\-Q or \-\-QUIET or \-\-SILENT"
|
.IP "\-Q or \-\-QUIET or \-\-SILENT"
|
||||||
Causes totally "quiet" operation:
|
Causes totally "quiet" operation:
|
||||||
the terminal bell is never rung.
|
the terminal bell is never rung.
|
||||||
If the terminal has a "visual bell", it is used in all cases
|
If the terminal has a "visual bell", it is used in all cases
|
||||||
where the terminal bell would have been rung.
|
where the terminal bell would have been rung.
|
||||||
.IP "\-r or \-\-raw-control-chars"
|
.IP "\-r or \-\-raw-control-chars"
|
||||||
Causes "raw" control characters to be displayed.
|
Causes "raw" control characters to be displayed.
|
||||||
@ -804,7 +805,7 @@ output.
|
|||||||
Causes lines longer than the screen width to be
|
Causes lines longer than the screen width to be
|
||||||
chopped (truncated) rather than wrapped.
|
chopped (truncated) rather than wrapped.
|
||||||
That is, the portion of a long line that does not fit in
|
That is, the portion of a long line that does not fit in
|
||||||
the screen width is not shown.
|
the screen width is not displayed until you press RIGHT-ARROW.
|
||||||
The default is to wrap long lines; that is, display the remainder
|
The default is to wrap long lines; that is, display the remainder
|
||||||
on the next line.
|
on the next line.
|
||||||
.IP "\-t\fItag\fP or \-\-tag=\fItag\fP"
|
.IP "\-t\fItag\fP or \-\-tag=\fItag\fP"
|
||||||
@ -813,12 +814,12 @@ will edit the file containing that tag.
|
|||||||
For this to work, tag information must be available;
|
For this to work, tag information must be available;
|
||||||
for example, there may be a file in the current directory called "tags",
|
for example, there may be a file in the current directory called "tags",
|
||||||
which was previously built by
|
which was previously built by
|
||||||
.I ctags
|
.IR ctags (1)
|
||||||
(1) or an equivalent command.
|
or an equivalent command.
|
||||||
If the environment variable LESSGLOBALTAGS is set, it is taken to be
|
If the environment variable LESSGLOBALTAGS is set, it is taken to be
|
||||||
the name of a command compatible with
|
the name of a command compatible with
|
||||||
.I global
|
.IR global (1),
|
||||||
(1), and that command is executed to find the tag.
|
and that command is executed to find the tag.
|
||||||
(See http://www.gnu.org/software/global/global.html).
|
(See http://www.gnu.org/software/global/global.html).
|
||||||
The \-t option may also be specified from within
|
The \-t option may also be specified from within
|
||||||
.I less
|
.I less
|
||||||
@ -870,7 +871,7 @@ If only one \fIn\fP is specified, tab stops are set at multiples of \fIn\fP.
|
|||||||
If multiple values separated by commas are specified, tab stops
|
If multiple values separated by commas are specified, tab stops
|
||||||
are set at those positions, and then continue with the same spacing as the
|
are set at those positions, and then continue with the same spacing as the
|
||||||
last two.
|
last two.
|
||||||
For example, \fI-x9,17\fP will set tabs at positions 9, 17, 25, 33, etc.
|
For example, \fI\-x9,17\fP will set tabs at positions 9, 17, 25, 33, etc.
|
||||||
The default for \fIn\fP is 8.
|
The default for \fIn\fP is 8.
|
||||||
.IP "\-X or \-\-no-init"
|
.IP "\-X or \-\-no-init"
|
||||||
Disables sending the termcap initialization and deinitialization strings
|
Disables sending the termcap initialization and deinitialization strings
|
||||||
@ -944,15 +945,15 @@ will display the contents of that new file.
|
|||||||
Enables mouse input:
|
Enables mouse input:
|
||||||
scrolling the mouse wheel down moves forward in the file,
|
scrolling the mouse wheel down moves forward in the file,
|
||||||
scrolling the mouse wheel up moves backwards in the file,
|
scrolling the mouse wheel up moves backwards in the file,
|
||||||
and clicking the mouse sets the "#" mark to the line
|
and clicking the mouse sets the "#" mark to the line
|
||||||
where the mouse is clicked.
|
where the mouse is clicked.
|
||||||
The number of lines to scroll when the wheel is moved
|
The number of lines to scroll when the wheel is moved
|
||||||
can be set by the \-\-wheel-lines option.
|
can be set by the \-\-wheel-lines option.
|
||||||
Mouse input works only on terminals which support X11 mouse reporting,
|
Mouse input works only on terminals which support X11 mouse reporting,
|
||||||
and on the Windows version of
|
and on the Windows version of
|
||||||
.IR less .
|
.IR less .
|
||||||
.IP "\-\-MOUSE"
|
.IP "\-\-MOUSE"
|
||||||
Like \-\-mouse, except the direction scrolled
|
Like \-\-mouse, except the direction scrolled
|
||||||
on mouse wheel movement is reversed.
|
on mouse wheel movement is reversed.
|
||||||
.IP "\-\-no-keypad"
|
.IP "\-\-no-keypad"
|
||||||
Disables sending the keypad initialization and deinitialization strings
|
Disables sending the keypad initialization and deinitialization strings
|
||||||
@ -961,7 +962,7 @@ This is sometimes useful if the keypad strings make the numeric
|
|||||||
keypad behave in an undesirable manner.
|
keypad behave in an undesirable manner.
|
||||||
.IP "\-\-no-histdups"
|
.IP "\-\-no-histdups"
|
||||||
This option changes the behavior so that if a search string or
|
This option changes the behavior so that if a search string or
|
||||||
file name is typed in, and the same string is already in the history list,
|
file name is typed in, and the same string is already in the history list,
|
||||||
the existing copy is removed from the history list before the new one is added.
|
the existing copy is removed from the history list before the new one is added.
|
||||||
Thus, a given string will appear only once in the history list.
|
Thus, a given string will appear only once in the history list.
|
||||||
Normally, a string may appear multiple times.
|
Normally, a string may appear multiple times.
|
||||||
@ -969,7 +970,7 @@ Normally, a string may appear multiple times.
|
|||||||
This option changes the character used to mark truncated lines.
|
This option changes the character used to mark truncated lines.
|
||||||
It may begin with a two-character attribute indicator like LESSBINFMT does.
|
It may begin with a two-character attribute indicator like LESSBINFMT does.
|
||||||
If there is no attribute indicator, standout is used.
|
If there is no attribute indicator, standout is used.
|
||||||
If set to "-", truncated lines are not marked.
|
If set to "\-", truncated lines are not marked.
|
||||||
.IP "\-\-save-marks"
|
.IP "\-\-save-marks"
|
||||||
Save marks in the history file, so marks are retained
|
Save marks in the history file, so marks are retained
|
||||||
across different invocations of \fIless\fP.
|
across different invocations of \fIless\fP.
|
||||||
@ -1001,7 +1002,7 @@ If the option starts with ++, the initial command applies to
|
|||||||
every file being viewed, not just the first one.
|
every file being viewed, not just the first one.
|
||||||
The + command described previously
|
The + command described previously
|
||||||
may also be used to set (or change) an initial command for every file.
|
may also be used to set (or change) an initial command for every file.
|
||||||
|
.
|
||||||
.SH "LINE EDITING"
|
.SH "LINE EDITING"
|
||||||
When entering command line at the bottom of the screen
|
When entering command line at the bottom of the screen
|
||||||
(for example, a filename for the :e command,
|
(for example, a filename for the :e command,
|
||||||
@ -1069,13 +1070,12 @@ If you have changed your line-kill character in Unix to something
|
|||||||
other than ^U, that character is used instead of ^U.
|
other than ^U, that character is used instead of ^U.
|
||||||
.IP "^G"
|
.IP "^G"
|
||||||
Delete the entire command line and return to the main prompt.
|
Delete the entire command line and return to the main prompt.
|
||||||
|
.
|
||||||
.SH "KEY BINDINGS"
|
.SH "KEY BINDINGS"
|
||||||
You may define your own
|
You may define your own
|
||||||
.I less
|
.I less
|
||||||
commands by using the program
|
commands by using the program
|
||||||
.I lesskey
|
.IR lesskey (1)
|
||||||
(1)
|
|
||||||
to create a lesskey file.
|
to create a lesskey file.
|
||||||
This file specifies a set of command keys and an action
|
This file specifies a set of command keys and an action
|
||||||
associated with each key.
|
associated with each key.
|
||||||
@ -1125,7 +1125,7 @@ was built with a different sysconf directory than /usr/local/etc,
|
|||||||
that directory is where the sysless file is found.)
|
that directory is where the sysless file is found.)
|
||||||
On MS-DOS and Windows systems, the system-wide lesskey file is c:\e_sysless.
|
On MS-DOS and Windows systems, the system-wide lesskey file is c:\e_sysless.
|
||||||
On OS/2 systems, the system-wide lesskey file is c:\esysless.ini.
|
On OS/2 systems, the system-wide lesskey file is c:\esysless.ini.
|
||||||
|
.
|
||||||
.SH "INPUT PREPROCESSOR"
|
.SH "INPUT PREPROCESSOR"
|
||||||
You may define an "input preprocessor" for
|
You may define an "input preprocessor" for
|
||||||
.IR less .
|
.IR less .
|
||||||
@ -1294,7 +1294,7 @@ Similarly, if the first two characters of LESSOPEN are vertical bar and dash
|
|||||||
the input pipe is used on standard input as well as other files.
|
the input pipe is used on standard input as well as other files.
|
||||||
Again, in this case the dash is not considered to be part of
|
Again, in this case the dash is not considered to be part of
|
||||||
the input pipe command.
|
the input pipe command.
|
||||||
|
.
|
||||||
.SH "NATIONAL CHARACTER SETS"
|
.SH "NATIONAL CHARACTER SETS"
|
||||||
There are three types of characters in the input file:
|
There are three types of characters in the input file:
|
||||||
.IP "normal characters"
|
.IP "normal characters"
|
||||||
@ -1349,7 +1349,7 @@ In this case, the environment variable LESSCHARDEF can be used
|
|||||||
to define a character set.
|
to define a character set.
|
||||||
It should be set to a string where each character in the string represents
|
It should be set to a string where each character in the string represents
|
||||||
one character in the character set.
|
one character in the character set.
|
||||||
The character "." is used for a normal character, "c" for control,
|
The character ".\&" is used for a normal character, "c" for control,
|
||||||
and "b" for binary.
|
and "b" for binary.
|
||||||
A decimal number may be used for repetition.
|
A decimal number may be used for repetition.
|
||||||
For example, "bccc4b.\&" would mean character 0 is binary,
|
For example, "bccc4b.\&" would mean character 0 is binary,
|
||||||
@ -1361,26 +1361,22 @@ represent any real character set.)
|
|||||||
.PP
|
.PP
|
||||||
This table shows the value of LESSCHARDEF which is equivalent
|
This table shows the value of LESSCHARDEF which is equivalent
|
||||||
to each of the possible values for LESSCHARSET:
|
to each of the possible values for LESSCHARSET:
|
||||||
.sp
|
.
|
||||||
ascii\ 8bcccbcc18b95.b
|
.RS 5m
|
||||||
.br
|
.TS
|
||||||
dos\ \ \ 8bcccbcc12bc5b95.b.
|
l l.
|
||||||
.br
|
ascii 8bcccbcc18b95.b
|
||||||
ebcdic 5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b
|
dos 8bcccbcc12bc5b95.b.
|
||||||
.br
|
ebcdic 5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b
|
||||||
\ \ \ \ \ \ 9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b.
|
9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b.
|
||||||
.br
|
IBM-1047 4cbcbc3b9cbccbccbb4c6bcc5b3cbbc4bc4bccbc
|
||||||
IBM-1047 4cbcbc3b9cbccbccbb4c6bcc5b3cbbc4bc4bccbc
|
191.b
|
||||||
.br
|
iso8859 8bcccbcc18b95.33b.
|
||||||
\ \ \ \ \ \ 191.b
|
koi8-r 8bcccbcc18b95.b128.
|
||||||
.br
|
latin1 8bcccbcc18b95.33b.
|
||||||
iso8859 8bcccbcc18b95.33b.
|
next 8bcccbcc18b95.bb125.bb
|
||||||
.br
|
.TE
|
||||||
koi8-r 8bcccbcc18b95.b128.
|
.RE
|
||||||
.br
|
|
||||||
latin1 8bcccbcc18b95.33b.
|
|
||||||
.br
|
|
||||||
next\ \ 8bcccbcc18b95.bb125.bb
|
|
||||||
.PP
|
.PP
|
||||||
If neither LESSCHARSET nor LESSCHARDEF is set,
|
If neither LESSCHARSET nor LESSCHARDEF is set,
|
||||||
but any of the strings "UTF-8", "UTF8", "utf-8" or "utf8"
|
but any of the strings "UTF-8", "UTF8", "utf-8" or "utf8"
|
||||||
@ -1429,11 +1425,11 @@ setting ("*x") so specifying one will affect both;
|
|||||||
LESSUTFBINFMT is read after LESSBINFMT so its setting, if any,
|
LESSUTFBINFMT is read after LESSBINFMT so its setting, if any,
|
||||||
will have priority.
|
will have priority.
|
||||||
Problematic octets in a UTF-8 file (octets of a truncated sequence,
|
Problematic octets in a UTF-8 file (octets of a truncated sequence,
|
||||||
octets of a complete but non-shortest form sequence, illegal octets,
|
octets of a complete but non-shortest form sequence, invalid octets,
|
||||||
and stray trailing octets)
|
and stray trailing octets)
|
||||||
are displayed individually using LESSBINFMT so as to facilitate diagnostic
|
are displayed individually using LESSBINFMT so as to facilitate diagnostic
|
||||||
of how the UTF-8 file is ill-formed.
|
of how the UTF-8 file is ill-formed.
|
||||||
|
.
|
||||||
.SH "PROMPTS"
|
.SH "PROMPTS"
|
||||||
The \-P option allows you to tailor the prompt to your preference.
|
The \-P option allows you to tailor the prompt to your preference.
|
||||||
The string given to the \-P option replaces the specified prompt string.
|
The string given to the \-P option replaces the specified prompt string.
|
||||||
@ -1500,7 +1496,8 @@ Causes any trailing spaces to be removed.
|
|||||||
Usually used at the end of the string, but may appear anywhere.
|
Usually used at the end of the string, but may appear anywhere.
|
||||||
.IP "%T"
|
.IP "%T"
|
||||||
Normally expands to the word "file".
|
Normally expands to the word "file".
|
||||||
However if viewing files via a tags list using the \-t option, it expands to the word "tag".
|
However if viewing files via a tags list using the \-t option,
|
||||||
|
it expands to the word "tag".
|
||||||
.IP "%x"
|
.IP "%x"
|
||||||
Replaced by the name of the next input file in the list.
|
Replaced by the name of the next input file in the list.
|
||||||
.PP
|
.PP
|
||||||
@ -1620,7 +1617,7 @@ line number, followed by the shell-escaped file name.
|
|||||||
If your editor does not accept the "+linenumber" syntax, or has other
|
If your editor does not accept the "+linenumber" syntax, or has other
|
||||||
differences in invocation syntax, the LESSEDIT variable can be
|
differences in invocation syntax, the LESSEDIT variable can be
|
||||||
changed to modify this default.
|
changed to modify this default.
|
||||||
|
.
|
||||||
.SH SECURITY
|
.SH SECURITY
|
||||||
When the environment variable LESSSECURE is set to 1,
|
When the environment variable LESSSECURE is set to 1,
|
||||||
.I less
|
.I less
|
||||||
@ -1641,14 +1638,14 @@ log files
|
|||||||
use of lesskey files
|
use of lesskey files
|
||||||
.IP "\-t"
|
.IP "\-t"
|
||||||
use of tags files
|
use of tags files
|
||||||
.IP " "
|
.IP
|
||||||
metacharacters in filenames, such as *
|
metacharacters in filenames, such as *
|
||||||
.IP " "
|
.IP
|
||||||
filename completion (TAB, ^L)
|
filename completion (TAB, ^L)
|
||||||
.RE
|
.RE
|
||||||
.PP
|
.PP
|
||||||
Less can also be compiled to be permanently in "secure" mode.
|
Less can also be compiled to be permanently in "secure" mode.
|
||||||
|
.
|
||||||
.SH "COMPATIBILITY WITH MORE"
|
.SH "COMPATIBILITY WITH MORE"
|
||||||
If the environment variable LESS_IS_MORE is set to 1,
|
If the environment variable LESS_IS_MORE is set to 1,
|
||||||
or if the program is invoked via a file link named "more",
|
or if the program is invoked via a file link named "more",
|
||||||
@ -1666,7 +1663,7 @@ behaves as if the \-E option were set.
|
|||||||
.PP
|
.PP
|
||||||
The \-m option works differently.
|
The \-m option works differently.
|
||||||
If the \-m option is not set, the medium prompt is used,
|
If the \-m option is not set, the medium prompt is used,
|
||||||
and it is prefixed with the string "--More--".
|
and it is prefixed with the string "\-\-More\-\-".
|
||||||
If the \-m option is set, the short prompt is used.
|
If the \-m option is set, the short prompt is used.
|
||||||
.PP
|
.PP
|
||||||
The \-n option acts like the \-z option.
|
The \-n option acts like the \-z option.
|
||||||
@ -1678,12 +1675,12 @@ command rather than a search pattern.
|
|||||||
.PP
|
.PP
|
||||||
The LESS environment variable is ignored,
|
The LESS environment variable is ignored,
|
||||||
and the MORE environment variable is used in its place.
|
and the MORE environment variable is used in its place.
|
||||||
|
.
|
||||||
.SH "ENVIRONMENT VARIABLES"
|
.SH "ENVIRONMENT VARIABLES"
|
||||||
Environment variables may be specified either in the system environment
|
Environment variables may be specified either in the system environment
|
||||||
as usual, or in a
|
as usual, or in a
|
||||||
.I lesskey
|
.IR lesskey (1)
|
||||||
(1) file.
|
file.
|
||||||
If environment variables are defined in more than one place,
|
If environment variables are defined in more than one place,
|
||||||
variables defined in a local lesskey file take precedence over
|
variables defined in a local lesskey file take precedence over
|
||||||
variables defined in the system environment, which take precedence
|
variables defined in the system environment, which take precedence
|
||||||
@ -1738,8 +1735,8 @@ See discussion under PROMPTS.
|
|||||||
.IP LESSGLOBALTAGS
|
.IP LESSGLOBALTAGS
|
||||||
Name of the command used by the \-t option to find global tags.
|
Name of the command used by the \-t option to find global tags.
|
||||||
Normally should be set to "global" if your system has the
|
Normally should be set to "global" if your system has the
|
||||||
.I global
|
.IR global (1)
|
||||||
(1) command. If not set, global tags are not used.
|
command. If not set, global tags are not used.
|
||||||
.IP LESSHISTFILE
|
.IP LESSHISTFILE
|
||||||
Name of the history file used to remember search commands and
|
Name of the history file used to remember search commands and
|
||||||
shell commands between invocations of
|
shell commands between invocations of
|
||||||
@ -1752,9 +1749,13 @@ on OS/2 systems.
|
|||||||
The maximum number of commands to save in the history file.
|
The maximum number of commands to save in the history file.
|
||||||
The default is 100.
|
The default is 100.
|
||||||
.IP LESSKEY
|
.IP LESSKEY
|
||||||
Name of the default lesskey(1) file.
|
Name of the default
|
||||||
|
.IR lesskey (1)
|
||||||
|
file.
|
||||||
.IP LESSKEY_SYSTEM
|
.IP LESSKEY_SYSTEM
|
||||||
Name of the default system-wide lesskey(1) file.
|
Name of the default system-wide
|
||||||
|
.IR lesskey (1)
|
||||||
|
file.
|
||||||
.IP LESSMETACHARS
|
.IP LESSMETACHARS
|
||||||
List of characters which are considered "metacharacters" by the shell.
|
List of characters which are considered "metacharacters" by the shell.
|
||||||
.IP LESSMETAESCAPE
|
.IP LESSMETAESCAPE
|
||||||
@ -1773,8 +1774,8 @@ String to be appended to a directory name in filename completion.
|
|||||||
Format for displaying non-printable Unicode code points.
|
Format for displaying non-printable Unicode code points.
|
||||||
.IP LESS_IS_MORE
|
.IP LESS_IS_MORE
|
||||||
Emulate the
|
Emulate the
|
||||||
.I more
|
.IR more (1)
|
||||||
(1) command.
|
command.
|
||||||
.IP LINES
|
.IP LINES
|
||||||
Sets the number of lines on the screen.
|
Sets the number of lines on the screen.
|
||||||
Takes precedence over the number of lines specified by the TERM variable.
|
Takes precedence over the number of lines specified by the TERM variable.
|
||||||
@ -1791,19 +1792,19 @@ compatible mode.
|
|||||||
User's search path (used to find a lesskey file
|
User's search path (used to find a lesskey file
|
||||||
on MS-DOS and OS/2 systems).
|
on MS-DOS and OS/2 systems).
|
||||||
.IP SHELL
|
.IP SHELL
|
||||||
The shell used to execute the ! command, as well as to expand filenames.
|
The shell used to execute the !\& command, as well as to expand filenames.
|
||||||
.IP TERM
|
.IP TERM
|
||||||
The type of terminal on which
|
The type of terminal on which
|
||||||
.I less
|
.I less
|
||||||
is being run.
|
is being run.
|
||||||
.IP VISUAL
|
.IP VISUAL
|
||||||
The name of the editor (used for the v command).
|
The name of the editor (used for the v command).
|
||||||
|
.
|
||||||
.SH "SEE ALSO"
|
.SH "SEE ALSO"
|
||||||
lesskey(1)
|
.BR lesskey (1)
|
||||||
|
.
|
||||||
.SH COPYRIGHT
|
.SH COPYRIGHT
|
||||||
Copyright (C) 1984-2019 Mark Nudelman
|
Copyright (C) 1984-2020 Mark Nudelman
|
||||||
.PP
|
.PP
|
||||||
less is part of the GNU project and is free software.
|
less is part of the GNU project and is free software.
|
||||||
You can redistribute it and/or modify it
|
You can redistribute it and/or modify it
|
||||||
@ -1823,9 +1824,9 @@ less is distributed in the hope that it will be useful, but
|
|||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE.
|
or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
See the GNU General Public License for more details.
|
See the GNU General Public License for more details.
|
||||||
|
.
|
||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
.PP
|
.
|
||||||
Mark Nudelman
|
Mark Nudelman
|
||||||
.br
|
.br
|
||||||
Report bugs at https://github.com/gwsw/less/issues.
|
Report bugs at https://github.com/gwsw/less/issues.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
.TH LESSECHO 1 "Version 551: 11 Jun 2019"
|
.TH LESSECHO 1 "Version 563: 13 Jun 2020"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
lessecho \- expand metacharacters
|
lessecho \- expand metacharacters
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
@ -44,7 +44,7 @@ Specifies "n" to be the escape char for metachars, as an integer.
|
|||||||
Specifies that all arguments are to be quoted.
|
Specifies that all arguments are to be quoted.
|
||||||
The default is that only arguments containing metacharacters are quoted
|
The default is that only arguments containing metacharacters are quoted
|
||||||
.SH "SEE ALSO"
|
.SH "SEE ALSO"
|
||||||
less(1)
|
.BR less (1)
|
||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
This manual page was written by Thomas Schoepf <schoepf@debian.org>,
|
This manual page was written by Thomas Schoepf <schoepf@debian.org>,
|
||||||
for the Debian GNU/Linux system (but may be used by others).
|
for the Debian GNU/Linux system (but may be used by others).
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,29 +1,30 @@
|
|||||||
.TH LESSKEY 1 "Version 551: 11 Jun 2019"
|
'\" t
|
||||||
|
.TH LESSKEY 1 "Version 563: 13 Jun 2020"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
lesskey \- specify key bindings for less
|
lesskey \- specify key bindings for less
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
.B "lesskey [-o output] [--] [input]"
|
.B "lesskey [\-o output] [\-\-] [input]"
|
||||||
.br
|
.br
|
||||||
.B "lesskey [--output=output] [--] [input]"
|
.B "lesskey [\-\-output=output] [\-\-] [input]"
|
||||||
.br
|
.br
|
||||||
.B "lesskey -V"
|
.B "lesskey \-V"
|
||||||
.br
|
.br
|
||||||
.B "lesskey --version"
|
.B "lesskey \-\-version"
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
.I Lesskey
|
.I Lesskey
|
||||||
is used to specify a set of key bindings to be used by
|
is used to specify a set of key bindings to be used by
|
||||||
.I less.
|
.IR less .
|
||||||
The input file is a text file which describes the key bindings.
|
The input file is a text file which describes the key bindings.
|
||||||
If the input file is "-", standard input is read.
|
If the input file is "\-", standard input is read.
|
||||||
If no input file is specified, a standard filename is used
|
If no input file is specified, a standard filename is used
|
||||||
as the name of the input file, which depends on the system being used:
|
as the name of the input file, which depends on the system being used:
|
||||||
On Unix systems, $HOME/.lesskey is used;
|
On Unix systems, $HOME/.lesskey is used;
|
||||||
on MS-DOS systems, $HOME/_lesskey is used;
|
on MS-DOS systems, $HOME/_lesskey is used;
|
||||||
and on OS/2 systems $HOME/lesskey.ini is used,
|
and on OS/2 systems $HOME/lesskey.ini is used,
|
||||||
or $INIT/lesskey.ini if $HOME is undefined.
|
or $INIT/lesskey.ini if $HOME is undefined.
|
||||||
The output file is a binary file which is used by
|
The output file is a binary file which is used by
|
||||||
.I less.
|
.IR less .
|
||||||
If no output file is specified,
|
If no output file is specified,
|
||||||
and the environment variable LESSKEY is set,
|
and the environment variable LESSKEY is set,
|
||||||
the value of LESSKEY is used as the name of the output file.
|
the value of LESSKEY is used as the name of the output file.
|
||||||
Otherwise, a standard filename is used as the name of the output file,
|
Otherwise, a standard filename is used as the name of the output file,
|
||||||
@ -36,10 +37,10 @@ If the output file already exists,
|
|||||||
.I lesskey
|
.I lesskey
|
||||||
will overwrite it.
|
will overwrite it.
|
||||||
.PP
|
.PP
|
||||||
The -V or --version option causes
|
The \-V or \-\-version option causes
|
||||||
.I lesskey
|
.I lesskey
|
||||||
to print its version number and immediately exit.
|
to print its version number and immediately exit.
|
||||||
If -V or --version is present, other options and arguments are ignored.
|
If \-V or \-\-version is present, other options and arguments are ignored.
|
||||||
.PP
|
.PP
|
||||||
The input file consists of one or more
|
The input file consists of one or more
|
||||||
.I sections.
|
.I sections.
|
||||||
@ -54,7 +55,7 @@ Defines environment variables.
|
|||||||
.PP
|
.PP
|
||||||
Blank lines and lines which start with a pound sign (#) are ignored,
|
Blank lines and lines which start with a pound sign (#) are ignored,
|
||||||
except for the special section header lines.
|
except for the special section header lines.
|
||||||
|
.
|
||||||
.SH "COMMAND SECTION"
|
.SH "COMMAND SECTION"
|
||||||
The command section begins with the line
|
The command section begins with the line
|
||||||
.sp
|
.sp
|
||||||
@ -112,10 +113,10 @@ caret, space, tab and the backslash itself.
|
|||||||
.PP
|
.PP
|
||||||
An action may be followed by an "extra" string.
|
An action may be followed by an "extra" string.
|
||||||
When such a command is entered while running
|
When such a command is entered while running
|
||||||
.I less,
|
.IR less ,
|
||||||
the action is performed, and then the extra
|
the action is performed, and then the extra
|
||||||
string is parsed, just as if it were typed in to
|
string is parsed, just as if it were typed in to
|
||||||
.I less.
|
.IR less .
|
||||||
This feature can be used in certain cases to extend
|
This feature can be used in certain cases to extend
|
||||||
the functionality of a command.
|
the functionality of a command.
|
||||||
For example, see the "{" and ":t" commands in the example below.
|
For example, see the "{" and ":t" commands in the example below.
|
||||||
@ -123,131 +124,134 @@ The extra string has a special meaning for the "quit" action:
|
|||||||
when
|
when
|
||||||
.I less
|
.I less
|
||||||
quits, first character of the extra string is used as its exit status.
|
quits, first character of the extra string is used as its exit status.
|
||||||
|
.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
The following input file describes the set of
|
The following input file describes the set of
|
||||||
default command keys used by less:
|
default command keys used by less:
|
||||||
.sp
|
.sp
|
||||||
.nf
|
.RS 5m
|
||||||
#command
|
.TS
|
||||||
\er forw-line
|
l l.
|
||||||
\en forw-line
|
#command
|
||||||
e forw-line
|
\er forw-line
|
||||||
j forw-line
|
\en forw-line
|
||||||
\ekd forw-line
|
e forw-line
|
||||||
^E forw-line
|
j forw-line
|
||||||
^N forw-line
|
\ekd forw-line
|
||||||
k back-line
|
^E forw-line
|
||||||
y back-line
|
^N forw-line
|
||||||
^Y back-line
|
k back-line
|
||||||
^K back-line
|
y back-line
|
||||||
^P back-line
|
^Y back-line
|
||||||
J forw-line-force
|
^K back-line
|
||||||
K back-line-force
|
^P back-line
|
||||||
Y back-line-force
|
J forw-line-force
|
||||||
d forw-scroll
|
K back-line-force
|
||||||
^D forw-scroll
|
Y back-line-force
|
||||||
u back-scroll
|
d forw-scroll
|
||||||
^U back-scroll
|
^D forw-scroll
|
||||||
\e40 forw-screen
|
u back-scroll
|
||||||
f forw-screen
|
^U back-scroll
|
||||||
^F forw-screen
|
\e40 forw-screen
|
||||||
^V forw-screen
|
f forw-screen
|
||||||
\ekD forw-screen
|
^F forw-screen
|
||||||
b back-screen
|
^V forw-screen
|
||||||
^B back-screen
|
\ekD forw-screen
|
||||||
\eev back-screen
|
b back-screen
|
||||||
\ekU back-screen
|
^B back-screen
|
||||||
z forw-window
|
\eev back-screen
|
||||||
w back-window
|
\ekU back-screen
|
||||||
\ee\e40 forw-screen-force
|
z forw-window
|
||||||
F forw-forever
|
w back-window
|
||||||
\eeF forw-until-hilite
|
\ee\e40 forw-screen-force
|
||||||
R repaint-flush
|
F forw-forever
|
||||||
r repaint
|
\eeF forw-until-hilite
|
||||||
^R repaint
|
R repaint-flush
|
||||||
^L repaint
|
r repaint
|
||||||
\eeu undo-hilite
|
^R repaint
|
||||||
g goto-line
|
^L repaint
|
||||||
\ekh goto-line
|
\eeu undo-hilite
|
||||||
< goto-line
|
g goto-line
|
||||||
\ee< goto-line
|
\ekh goto-line
|
||||||
p percent
|
< goto-line
|
||||||
% percent
|
\ee< goto-line
|
||||||
\ee[ left-scroll
|
p percent
|
||||||
\ee] right-scroll
|
% percent
|
||||||
\ee( left-scroll
|
\ee[ left-scroll
|
||||||
\ee) right-scroll
|
\ee] right-scroll
|
||||||
\ekl left-scroll
|
\ee( left-scroll
|
||||||
\ekr right-scroll
|
\ee) right-scroll
|
||||||
\ee{ no-scroll
|
\ekl left-scroll
|
||||||
\ee} end-scroll
|
\ekr right-scroll
|
||||||
{ forw-bracket {}
|
\ee{ no-scroll
|
||||||
} back-bracket {}
|
\ee} end-scroll
|
||||||
( forw-bracket ()
|
{ forw-bracket {}
|
||||||
) back-bracket ()
|
} back-bracket {}
|
||||||
[ forw-bracket []
|
( forw-bracket ()
|
||||||
] back-bracket []
|
) back-bracket ()
|
||||||
\ee^F forw-bracket
|
[ forw-bracket []
|
||||||
\ee^B back-bracket
|
] back-bracket []
|
||||||
G goto-end
|
\ee^F forw-bracket
|
||||||
\ee> goto-end
|
\ee^B back-bracket
|
||||||
> goto-end
|
G goto-end
|
||||||
\eke goto-end
|
\ee> goto-end
|
||||||
\eeG goto-end-buffered
|
> goto-end
|
||||||
= status
|
\eke goto-end
|
||||||
^G status
|
\eeG goto-end-buffered
|
||||||
:f status
|
\&= status
|
||||||
/ forw-search
|
^G status
|
||||||
? back-search
|
:f status
|
||||||
\ee/ forw-search *
|
/ forw-search
|
||||||
\ee? back-search *
|
? back-search
|
||||||
n repeat-search
|
\ee/ forw-search *
|
||||||
\een repeat-search-all
|
\ee? back-search *
|
||||||
N reverse-search
|
n repeat-search
|
||||||
\eeN reverse-search-all
|
\een repeat-search-all
|
||||||
& filter
|
N reverse-search
|
||||||
m set-mark
|
\eeN reverse-search-all
|
||||||
M set-mark-bottom
|
& filter
|
||||||
\eem clear-mark
|
m set-mark
|
||||||
' goto-mark
|
M set-mark-bottom
|
||||||
^X^X goto-mark
|
\eem clear-mark
|
||||||
E examine
|
' goto-mark
|
||||||
:e examine
|
^X^X goto-mark
|
||||||
^X^V examine
|
E examine
|
||||||
:n next-file
|
:e examine
|
||||||
:p prev-file
|
^X^V examine
|
||||||
t next-tag
|
:n next-file
|
||||||
T prev-tag
|
:p prev-file
|
||||||
:x index-file
|
t next-tag
|
||||||
:d remove-file
|
T prev-tag
|
||||||
- toggle-option
|
:x index-file
|
||||||
:t toggle-option t
|
:d remove-file
|
||||||
s toggle-option o
|
- toggle-option
|
||||||
_ display-option
|
:t toggle-option t
|
||||||
| pipe
|
s toggle-option o
|
||||||
v visual
|
\&_ display-option
|
||||||
! shell
|
| pipe
|
||||||
+ firstcmd
|
v visual
|
||||||
H help
|
! shell
|
||||||
h help
|
+ firstcmd
|
||||||
V version
|
H help
|
||||||
0 digit
|
h help
|
||||||
1 digit
|
V version
|
||||||
2 digit
|
0 digit
|
||||||
3 digit
|
1 digit
|
||||||
4 digit
|
2 digit
|
||||||
5 digit
|
3 digit
|
||||||
6 digit
|
4 digit
|
||||||
7 digit
|
5 digit
|
||||||
8 digit
|
6 digit
|
||||||
9 digit
|
7 digit
|
||||||
q quit
|
8 digit
|
||||||
Q quit
|
9 digit
|
||||||
:q quit
|
q quit
|
||||||
:Q quit
|
Q quit
|
||||||
ZZ quit
|
:q quit
|
||||||
.fi
|
:Q quit
|
||||||
|
ZZ quit
|
||||||
|
.TE
|
||||||
|
.RE
|
||||||
.sp
|
.sp
|
||||||
.SH PRECEDENCE
|
.SH PRECEDENCE
|
||||||
Commands specified by
|
Commands specified by
|
||||||
@ -255,13 +259,13 @@ Commands specified by
|
|||||||
take precedence over the default commands.
|
take precedence over the default commands.
|
||||||
A default command key may be disabled by including it in the
|
A default command key may be disabled by including it in the
|
||||||
input file with the action "invalid".
|
input file with the action "invalid".
|
||||||
Alternatively, a key may be defined
|
Alternatively, a key may be defined
|
||||||
to do nothing by using the action "noaction".
|
to do nothing by using the action "noaction".
|
||||||
"noaction" is similar to "invalid", but
|
"noaction" is similar to "invalid", but
|
||||||
.I less
|
.I less
|
||||||
will give an error beep for an "invalid" command,
|
will give an error beep for an "invalid" command,
|
||||||
but not for a "noaction" command.
|
but not for a "noaction" command.
|
||||||
In addition, ALL default commands may be disabled by
|
In addition, ALL default commands may be disabled by
|
||||||
adding this control line to the input file:
|
adding this control line to the input file:
|
||||||
.sp
|
.sp
|
||||||
#stop
|
#stop
|
||||||
@ -269,60 +273,63 @@ adding this control line to the input file:
|
|||||||
This will cause all default commands to be ignored.
|
This will cause all default commands to be ignored.
|
||||||
The #stop line should be the last line in that section of the file.
|
The #stop line should be the last line in that section of the file.
|
||||||
.PP
|
.PP
|
||||||
Be aware that #stop can be dangerous.
|
Be aware that #stop can be dangerous.
|
||||||
Since all default commands are disabled,
|
Since all default commands are disabled,
|
||||||
you must provide sufficient commands before the #stop line
|
you must provide sufficient commands before the #stop line
|
||||||
to enable all necessary actions.
|
to enable all necessary actions.
|
||||||
For example, failure to provide a "quit" command can lead to frustration.
|
For example, failure to provide a "quit" command can lead to frustration.
|
||||||
|
.
|
||||||
.SH "LINE EDITING SECTION"
|
.SH "LINE EDITING SECTION"
|
||||||
The line-editing section begins with the line:
|
The line-editing section begins with the line:
|
||||||
.sp
|
.sp
|
||||||
#line-edit
|
#line-edit
|
||||||
.sp
|
.sp
|
||||||
This section specifies new key bindings for the line editing commands,
|
This section specifies new key bindings for the line editing commands,
|
||||||
in a manner similar to the way key bindings for
|
in a manner similar to the way key bindings for
|
||||||
ordinary commands are specified in the #command section.
|
ordinary commands are specified in the #command section.
|
||||||
The line-editing section consists of a list of keys and actions,
|
The line-editing section consists of a list of keys and actions,
|
||||||
one per line as in the example below.
|
one per line as in the example below.
|
||||||
|
.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
The following input file describes the set of
|
The following input file describes the set of
|
||||||
default line-editing keys used by less:
|
default line-editing keys used by less:
|
||||||
.sp
|
.sp
|
||||||
.nf
|
.RS 5m
|
||||||
#line-edit
|
.TS
|
||||||
\et forw-complete
|
l l.
|
||||||
\e17 back-complete
|
#line-edit
|
||||||
\ee\et back-complete
|
\et forw-complete
|
||||||
^L expand
|
\e17 back-complete
|
||||||
^V literal
|
\ee\et back-complete
|
||||||
^A literal
|
^L expand
|
||||||
\eel right
|
^V literal
|
||||||
\ekr right
|
^A literal
|
||||||
\eeh left
|
\eel right
|
||||||
\ekl left
|
\ekr right
|
||||||
\eeb word-left
|
\eeh left
|
||||||
\ee\ekl word-left
|
\ekl left
|
||||||
\eew word-right
|
\eeb word-left
|
||||||
\ee\ekr word-right
|
\ee\ekl word-left
|
||||||
\eei insert
|
\eew word-right
|
||||||
\eex delete
|
\ee\ekr word-right
|
||||||
\ekx delete
|
\eei insert
|
||||||
\eeX word-delete
|
\eex delete
|
||||||
\eekx word-delete
|
\ekx delete
|
||||||
\ee\eb word-backspace
|
\eeX word-delete
|
||||||
\ee0 home
|
\eekx word-delete
|
||||||
\ekh home
|
\ee\eb word-backspace
|
||||||
\ee$ end
|
\ee0 home
|
||||||
\eke end
|
\ekh home
|
||||||
\eek up
|
\ee$ end
|
||||||
\eku up
|
\eke end
|
||||||
\eej down
|
\eek up
|
||||||
^G abort
|
\eku up
|
||||||
.fi
|
\eej down
|
||||||
|
^G abort
|
||||||
|
.TE
|
||||||
|
.RE
|
||||||
.sp
|
.sp
|
||||||
|
.
|
||||||
.SH "LESS ENVIRONMENT VARIABLES"
|
.SH "LESS ENVIRONMENT VARIABLES"
|
||||||
The environment variable section begins with the line
|
The environment variable section begins with the line
|
||||||
.sp
|
.sp
|
||||||
@ -333,37 +340,37 @@ Each line consists of an environment variable name, an equals sign (=)
|
|||||||
and the value to be assigned to the environment variable.
|
and the value to be assigned to the environment variable.
|
||||||
White space before and after the equals sign is ignored.
|
White space before and after the equals sign is ignored.
|
||||||
Variables assigned in this way are visible only to
|
Variables assigned in this way are visible only to
|
||||||
.I less.
|
.IR less .
|
||||||
If a variable is specified in the system environment and also in a
|
If a variable is specified in the system environment and also in a
|
||||||
lesskey file, the value in the lesskey file takes precedence.
|
lesskey file, the value in the lesskey file takes precedence.
|
||||||
Although the lesskey file can be used to override variables set in the
|
Although the lesskey file can be used to override variables set in the
|
||||||
environment, the main purpose of assigning variables in the lesskey file
|
environment, the main purpose of assigning variables in the lesskey file
|
||||||
is simply to have all
|
is simply to have all
|
||||||
.I less
|
.I less
|
||||||
configuration information stored in one file.
|
configuration information stored in one file.
|
||||||
|
.
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
The following input file sets the -i option whenever
|
The following input file sets the \-i option whenever
|
||||||
.I less
|
.I less
|
||||||
is run, and specifies the character set to be "latin1":
|
is run, and specifies the character set to be "latin1":
|
||||||
.sp
|
.sp
|
||||||
.nf
|
.nf
|
||||||
#env
|
#env
|
||||||
LESS = -i
|
LESS = \-i
|
||||||
LESSCHARSET = latin1
|
LESSCHARSET = latin1
|
||||||
.fi
|
.fi
|
||||||
.sp
|
.sp
|
||||||
|
.
|
||||||
.SH "SEE ALSO"
|
.SH "SEE ALSO"
|
||||||
less(1)
|
.BR less (1)
|
||||||
|
.
|
||||||
.SH WARNINGS
|
.SH WARNINGS
|
||||||
On MS-DOS and OS/2 systems, certain keys send a sequence of characters
|
On MS-DOS and OS/2 systems, certain keys send a sequence of characters
|
||||||
which start with a NUL character (0).
|
which start with a NUL character (0).
|
||||||
This NUL character should be represented as \e340 in a lesskey file.
|
This NUL character should be represented as \e340 in a lesskey file.
|
||||||
|
.
|
||||||
.SH COPYRIGHT
|
.SH COPYRIGHT
|
||||||
Copyright (C) 1984-2019 Mark Nudelman
|
Copyright (C) 1984-2020 Mark Nudelman
|
||||||
.PP
|
.PP
|
||||||
less is part of the GNU project and is free software.
|
less is part of the GNU project and is free software.
|
||||||
You can redistribute it and/or modify it
|
You can redistribute it and/or modify it
|
||||||
@ -383,9 +390,9 @@ less is distributed in the hope that it will be useful, but
|
|||||||
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||||
or FITNESS FOR A PARTICULAR PURPOSE.
|
or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
See the GNU General Public License for more details.
|
See the GNU General Public License for more details.
|
||||||
|
.
|
||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
.PP
|
.
|
||||||
Mark Nudelman
|
Mark Nudelman
|
||||||
.br
|
.br
|
||||||
Send bug reports or comments to <bug-less@gnu.org>.
|
Send bug reports or comments to <bug-less@gnu.org>.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -69,7 +69,7 @@
|
|||||||
char dir[_MAX_DIR]; \
|
char dir[_MAX_DIR]; \
|
||||||
char fname[_MAX_FNAME]; \
|
char fname[_MAX_FNAME]; \
|
||||||
char ext[_MAX_EXT]; \
|
char ext[_MAX_EXT]; \
|
||||||
long handle;
|
intptr_t handle;
|
||||||
|
|
||||||
#else
|
#else
|
||||||
#if MSDOS_COMPILER==WIN32C && !defined(_MSC_VER) /* Borland C for Windows */
|
#if MSDOS_COMPILER==WIN32C && !defined(_MSC_VER) /* Borland C for Windows */
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -794,7 +794,7 @@ flush_mbc_buf(pos)
|
|||||||
*/
|
*/
|
||||||
public int
|
public int
|
||||||
pappend(c, pos)
|
pappend(c, pos)
|
||||||
unsigned char c;
|
int c;
|
||||||
POSITION pos;
|
POSITION pos;
|
||||||
{
|
{
|
||||||
int r;
|
int r;
|
||||||
@ -1164,7 +1164,7 @@ pdone(endline, chopped, forw)
|
|||||||
*/
|
*/
|
||||||
public void
|
public void
|
||||||
set_status_col(c)
|
set_status_col(c)
|
||||||
char c;
|
int c;
|
||||||
{
|
{
|
||||||
set_linebuf(0, c, AT_NORMAL|AT_HILITE);
|
set_linebuf(0, c, AT_NORMAL|AT_HILITE);
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
/* $FreeBSD$ */
|
/* $FreeBSD$ */
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -119,7 +119,6 @@ main(argc, argv)
|
|||||||
init_mark();
|
init_mark();
|
||||||
init_cmds();
|
init_cmds();
|
||||||
get_term();
|
get_term();
|
||||||
expand_cmd_tables();
|
|
||||||
init_charset();
|
init_charset();
|
||||||
init_line();
|
init_line();
|
||||||
init_cmdhist();
|
init_cmdhist();
|
||||||
@ -168,6 +167,8 @@ main(argc, argv)
|
|||||||
if (less_is_more)
|
if (less_is_more)
|
||||||
no_init = TRUE;
|
no_init = TRUE;
|
||||||
|
|
||||||
|
expand_cmd_tables();
|
||||||
|
|
||||||
#if EDITOR
|
#if EDITOR
|
||||||
editor = lgetenv("VISUAL");
|
editor = lgetenv("VISUAL");
|
||||||
if (editor == NULL || *editor == '\0')
|
if (editor == NULL || *editor == '\0')
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -7,8 +7,9 @@ my $USAGE = <<__EOF__;
|
|||||||
-f = zero-based type field (default 2)
|
-f = zero-based type field (default 2)
|
||||||
__EOF__
|
__EOF__
|
||||||
|
|
||||||
use vars qw( $opt_f $opt_n );
|
|
||||||
use Getopt::Std;
|
use Getopt::Std;
|
||||||
|
use vars qw( $opt_f $opt_n );
|
||||||
|
|
||||||
my $type_field = 2;
|
my $type_field = 2;
|
||||||
|
|
||||||
# Override Unicode tables for certain control chars
|
# Override Unicode tables for certain control chars
|
||||||
@ -21,16 +22,20 @@ my %force_space = (
|
|||||||
0x0d => 1, # carriage return
|
0x0d => 1, # carriage return
|
||||||
);
|
);
|
||||||
|
|
||||||
|
# Hangul Jamo medial vowels and final consonants should be zero width.
|
||||||
|
my @force_compose = (
|
||||||
|
[0x1160, 0x11ff],
|
||||||
|
[0xd7b0, 0xd7c6],
|
||||||
|
[0xd7cb, 0xd7fb]
|
||||||
|
);
|
||||||
|
|
||||||
exit (main() ? 0 : 1);
|
exit (main() ? 0 : 1);
|
||||||
|
|
||||||
sub main {
|
sub main {
|
||||||
my $date = `date`;
|
|
||||||
chomp $date;
|
|
||||||
my $args = join ' ', @ARGV;
|
my $args = join ' ', @ARGV;
|
||||||
my $header = "/* Generated by \"$0 $args\" on $date */\n";
|
|
||||||
|
|
||||||
die $USAGE if not getopts('f:n');
|
die $USAGE if not getopts('f:n');
|
||||||
$type_field = $opt_f if $opt_f;
|
$type_field = $opt_f if $opt_f;
|
||||||
|
|
||||||
my %types;
|
my %types;
|
||||||
my $arg;
|
my $arg;
|
||||||
while ($arg = shift @ARGV) {
|
while ($arg = shift @ARGV) {
|
||||||
@ -39,7 +44,18 @@ sub main {
|
|||||||
}
|
}
|
||||||
my %out = ( 'types' => \%types );
|
my %out = ( 'types' => \%types );
|
||||||
|
|
||||||
print $header;
|
my %force_compose;
|
||||||
|
foreach my $comp (@force_compose) {
|
||||||
|
my ($lo,$hi) = @$comp;
|
||||||
|
for (my $ch = $lo; $ch <= $hi; ++$ch) {
|
||||||
|
$force_compose{$ch} = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
my $date = `date`;
|
||||||
|
chomp $date;
|
||||||
|
print "/* Generated by \"$0 $args\" on $date */\n";
|
||||||
|
|
||||||
my $last_code = 0;
|
my $last_code = 0;
|
||||||
while (<>) {
|
while (<>) {
|
||||||
chomp;
|
chomp;
|
||||||
@ -52,13 +68,13 @@ sub main {
|
|||||||
$lo_code = hex $1;
|
$lo_code = hex $1;
|
||||||
$hi_code = hex $2;
|
$hi_code = hex $2;
|
||||||
} else {
|
} else {
|
||||||
$lo_code = $hi_code = hex $fields[0];
|
$lo_code = $hi_code = hex $codes;
|
||||||
}
|
}
|
||||||
my $type = $fields[$type_field];
|
my $type = $fields[$type_field];
|
||||||
$type =~ s/\s//g;
|
$type =~ s/\s//g;
|
||||||
for ($last_code = $lo_code; $last_code <= $hi_code; ++$last_code) {
|
for ($last_code = $lo_code; $last_code <= $hi_code; ++$last_code) {
|
||||||
$type = 'Zs' if $force_space{$last_code};
|
output(\%out, $last_code,
|
||||||
output(\%out, $last_code, $type);
|
$force_space{$last_code} ? 'Zs' : $force_compose{$last_code} ? 'Mn' : $type);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
output(\%out, $last_code);
|
output(\%out, $last_code);
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -513,7 +513,7 @@ opt__V(type, s)
|
|||||||
putstr(" (");
|
putstr(" (");
|
||||||
putstr(pattern_lib_name());
|
putstr(pattern_lib_name());
|
||||||
putstr(" regular expressions)\n");
|
putstr(" regular expressions)\n");
|
||||||
putstr("Copyright (C) 1984-2019 Mark Nudelman\n\n");
|
putstr("Copyright (C) 1984-2020 Mark Nudelman\n\n");
|
||||||
putstr("less comes with NO WARRANTY, to the extent permitted by law.\n");
|
putstr("less comes with NO WARRANTY, to the extent permitted by law.\n");
|
||||||
putstr("For information about the terms of redistribution,\n");
|
putstr("For information about the terms of redistribution,\n");
|
||||||
putstr("see the file named README in the less distribution.\n");
|
putstr("see the file named README in the less distribution.\n");
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -23,8 +23,9 @@
|
|||||||
static struct loption *pendopt;
|
static struct loption *pendopt;
|
||||||
public int plusoption = FALSE;
|
public int plusoption = FALSE;
|
||||||
|
|
||||||
static char *optstring();
|
static char *optstring LESSPARAMS((char *s, char **p_str, char *printopt,
|
||||||
static int flip_triple();
|
char *validchars));
|
||||||
|
static int flip_triple LESSPARAMS((int val, int lc));
|
||||||
|
|
||||||
extern int screen_trashed;
|
extern int screen_trashed;
|
||||||
extern int less_is_more;
|
extern int less_is_more;
|
||||||
@ -525,6 +526,24 @@ opt_prompt(o)
|
|||||||
return (o->odesc[0]);
|
return (o->odesc[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If the specified option can be toggled, return NULL.
|
||||||
|
* Otherwise return an appropriate error message.
|
||||||
|
*/
|
||||||
|
public char *
|
||||||
|
opt_toggle_disallowed(c)
|
||||||
|
int c;
|
||||||
|
{
|
||||||
|
switch (c)
|
||||||
|
{
|
||||||
|
case 'o':
|
||||||
|
if (ch_getflags() & CH_CANSEEK)
|
||||||
|
return "Input is not a pipe";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Return whether or not there is a string option pending;
|
* Return whether or not there is a string option pending;
|
||||||
* that is, if the previous option was a string-valued option letter
|
* that is, if the previous option was a string-valued option letter
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -500,8 +500,8 @@ type funcname(buf, ebuf) \
|
|||||||
return val; \
|
return val; \
|
||||||
}
|
}
|
||||||
|
|
||||||
STR_TO_TYPE_FUNC(lstrtopos, POSITION);
|
STR_TO_TYPE_FUNC(lstrtopos, POSITION)
|
||||||
STR_TO_TYPE_FUNC(lstrtoi, int);
|
STR_TO_TYPE_FUNC(lstrtoi, int)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Output an integer in a given radix.
|
* Output an integer in a given radix.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -219,8 +219,9 @@ extern int binattr;
|
|||||||
extern int one_screen;
|
extern int one_screen;
|
||||||
|
|
||||||
#if !MSDOS_COMPILER
|
#if !MSDOS_COMPILER
|
||||||
static char *cheaper();
|
static char *cheaper LESSPARAMS((char *t1, char *t2, char *def));
|
||||||
static void tmodes();
|
static void tmodes LESSPARAMS((char *incap, char *outcap, char **instr,
|
||||||
|
char **outstr, char *def_instr, char *def_outstr, char **spp));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -253,6 +254,11 @@ extern int hilite_search;
|
|||||||
#endif
|
#endif
|
||||||
#if MSDOS_COMPILER==WIN32C
|
#if MSDOS_COMPILER==WIN32C
|
||||||
extern HANDLE tty;
|
extern HANDLE tty;
|
||||||
|
extern DWORD console_mode;
|
||||||
|
#ifndef ENABLE_EXTENDED_FLAGS
|
||||||
|
#define ENABLE_EXTENDED_FLAGS 0x80
|
||||||
|
#define ENABLE_QUICK_EDIT_MODE 0x40
|
||||||
|
#endif
|
||||||
#else
|
#else
|
||||||
extern int tty;
|
extern int tty;
|
||||||
#endif
|
#endif
|
||||||
@ -642,7 +648,6 @@ ltget_env(capname)
|
|||||||
char *capname;
|
char *capname;
|
||||||
{
|
{
|
||||||
char name[64];
|
char name[64];
|
||||||
char *s;
|
|
||||||
|
|
||||||
if (termcap_debug)
|
if (termcap_debug)
|
||||||
{
|
{
|
||||||
@ -1080,7 +1085,6 @@ get_term(VOID_PARAM)
|
|||||||
#else
|
#else
|
||||||
#if MSDOS_COMPILER==WIN32C
|
#if MSDOS_COMPILER==WIN32C
|
||||||
{
|
{
|
||||||
DWORD nread;
|
|
||||||
CONSOLE_SCREEN_BUFFER_INFO scr;
|
CONSOLE_SCREEN_BUFFER_INFO scr;
|
||||||
|
|
||||||
con_out_save = con_out = GetStdHandle(STD_OUTPUT_HANDLE);
|
con_out_save = con_out = GetStdHandle(STD_OUTPUT_HANDLE);
|
||||||
@ -1090,8 +1094,7 @@ get_term(VOID_PARAM)
|
|||||||
*/
|
*/
|
||||||
SET_BINARY(0);
|
SET_BINARY(0);
|
||||||
GetConsoleScreenBufferInfo(con_out, &scr);
|
GetConsoleScreenBufferInfo(con_out, &scr);
|
||||||
ReadConsoleOutputAttribute(con_out, &curr_attr,
|
curr_attr = scr.wAttributes;
|
||||||
1, scr.dwCursorPosition, &nread);
|
|
||||||
sy_bg_color = (curr_attr & BG_COLORS) >> 4; /* normalize */
|
sy_bg_color = (curr_attr & BG_COLORS) >> 4; /* normalize */
|
||||||
sy_fg_color = curr_attr & FG_COLORS;
|
sy_fg_color = curr_attr & FG_COLORS;
|
||||||
}
|
}
|
||||||
@ -1122,8 +1125,11 @@ get_term(VOID_PARAM)
|
|||||||
char *sp;
|
char *sp;
|
||||||
char *t1, *t2;
|
char *t1, *t2;
|
||||||
char *term;
|
char *term;
|
||||||
char termbuf[TERMBUF_SIZE];
|
/*
|
||||||
|
* Some termcap libraries assume termbuf is static
|
||||||
|
* (accessible after tgetent returns).
|
||||||
|
*/
|
||||||
|
static char termbuf[TERMBUF_SIZE];
|
||||||
static char sbuf[TERMSBUF_SIZE];
|
static char sbuf[TERMSBUF_SIZE];
|
||||||
|
|
||||||
#if OS2
|
#if OS2
|
||||||
@ -1146,12 +1152,13 @@ get_term(VOID_PARAM)
|
|||||||
/*
|
/*
|
||||||
* Find out what kind of terminal this is.
|
* Find out what kind of terminal this is.
|
||||||
*/
|
*/
|
||||||
if ((term = lgetenv("TERM")) == NULL)
|
if ((term = lgetenv("TERM")) == NULL)
|
||||||
term = DEFAULT_TERM;
|
term = DEFAULT_TERM;
|
||||||
hardcopy = 0;
|
hardcopy = 0;
|
||||||
if (tgetent(termbuf, term) != TGETENT_OK)
|
/* {{ Should probably just pass NULL instead of termbuf. }} */
|
||||||
hardcopy = 1;
|
if (tgetent(termbuf, term) != TGETENT_OK)
|
||||||
if (ltgetflag("hc"))
|
hardcopy = 1;
|
||||||
|
if (ltgetflag("hc"))
|
||||||
hardcopy = 1;
|
hardcopy = 1;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -1562,7 +1569,9 @@ init_mouse(VOID_PARAM)
|
|||||||
tputs(sc_s_mousecap, sc_height, putchr);
|
tputs(sc_s_mousecap, sc_height, putchr);
|
||||||
#else
|
#else
|
||||||
#if MSDOS_COMPILER==WIN32C
|
#if MSDOS_COMPILER==WIN32C
|
||||||
SetConsoleMode(tty, ENABLE_PROCESSED_INPUT | ENABLE_MOUSE_INPUT);
|
SetConsoleMode(tty, ENABLE_PROCESSED_INPUT | ENABLE_MOUSE_INPUT
|
||||||
|
| ENABLE_EXTENDED_FLAGS /* disable quick edit */);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -1580,7 +1589,8 @@ deinit_mouse(VOID_PARAM)
|
|||||||
tputs(sc_e_mousecap, sc_height, putchr);
|
tputs(sc_e_mousecap, sc_height, putchr);
|
||||||
#else
|
#else
|
||||||
#if MSDOS_COMPILER==WIN32C
|
#if MSDOS_COMPILER==WIN32C
|
||||||
SetConsoleMode(tty, ENABLE_PROCESSED_INPUT);
|
SetConsoleMode(tty, ENABLE_PROCESSED_INPUT | ENABLE_EXTENDED_FLAGS
|
||||||
|
| (console_mode & ENABLE_QUICK_EDIT_MODE));
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@ -1616,8 +1626,13 @@ init(VOID_PARAM)
|
|||||||
line_left();
|
line_left();
|
||||||
#else
|
#else
|
||||||
#if MSDOS_COMPILER==WIN32C
|
#if MSDOS_COMPILER==WIN32C
|
||||||
if (!no_init)
|
if (!(quit_if_one_screen && one_screen))
|
||||||
win32_init_term();
|
{
|
||||||
|
if (!no_init)
|
||||||
|
win32_init_term();
|
||||||
|
init_mouse();
|
||||||
|
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
initcolor();
|
initcolor();
|
||||||
flush();
|
flush();
|
||||||
@ -1646,8 +1661,12 @@ deinit(VOID_PARAM)
|
|||||||
/* Restore system colors. */
|
/* Restore system colors. */
|
||||||
SETCOLORS(sy_fg_color, sy_bg_color);
|
SETCOLORS(sy_fg_color, sy_bg_color);
|
||||||
#if MSDOS_COMPILER==WIN32C
|
#if MSDOS_COMPILER==WIN32C
|
||||||
if (!no_init)
|
if (!(quit_if_one_screen && one_screen))
|
||||||
win32_deinit_term();
|
{
|
||||||
|
deinit_mouse();
|
||||||
|
if (!no_init)
|
||||||
|
win32_deinit_term();
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
/* Need clreol to make SETCOLORS take effect. */
|
/* Need clreol to make SETCOLORS take effect. */
|
||||||
clreol();
|
clreol();
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -44,13 +44,14 @@ enum {
|
|||||||
T_GPATH /* 'GPATH': path name (global) */
|
T_GPATH /* 'GPATH': path name (global) */
|
||||||
};
|
};
|
||||||
|
|
||||||
static enum tag_result findctag();
|
static enum tag_result findctag LESSPARAMS((char *tag));
|
||||||
static enum tag_result findgtag();
|
static enum tag_result findgtag LESSPARAMS((char *tag, int type));
|
||||||
static char *nextgtag();
|
static char *nextgtag(VOID_PARAM);
|
||||||
static char *prevgtag();
|
static char *prevgtag(VOID_PARAM);
|
||||||
static POSITION ctagsearch();
|
static POSITION ctagsearch(VOID_PARAM);
|
||||||
static POSITION gtagsearch();
|
static POSITION gtagsearch(VOID_PARAM);
|
||||||
static int getentry();
|
static int getentry LESSPARAMS((char *buf, char **tag, char **file,
|
||||||
|
char **line));
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The list of tags generated by the last findgtag() call.
|
* The list of tags generated by the last findgtag() call.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -23,7 +23,7 @@
|
|||||||
#define _WIN32_WINNT 0x400
|
#define _WIN32_WINNT 0x400
|
||||||
#endif
|
#endif
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
static DWORD console_mode;
|
public DWORD console_mode;
|
||||||
public HANDLE tty;
|
public HANDLE tty;
|
||||||
#else
|
#else
|
||||||
public int tty;
|
public int tty;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Generated by "./mkutable -f2 Cc Cs Co Zl Zp -- unicode/UnicodeData.txt" on Wed Feb 13 17:57:06 PST 2019 */
|
/* Generated by "./mkutable -f2 Cc Cs Co Zl Zp -- unicode/UnicodeData.txt" on Tue May 19 14:47:34 PDT 2020 */
|
||||||
{ 0x0000, 0x0007 }, /* Cc */
|
{ 0x0000, 0x0007 }, /* Cc */
|
||||||
{ 0x000b, 0x000b }, /* Cc */
|
{ 0x000b, 0x000b }, /* Cc */
|
||||||
{ 0x000e, 0x001f }, /* Cc */
|
{ 0x000e, 0x001f }, /* Cc */
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 1984-2019 Mark Nudelman
|
* Copyright (C) 1984-2020 Mark Nudelman
|
||||||
*
|
*
|
||||||
* You may distribute under the terms of either the GNU General Public
|
* You may distribute under the terms of either the GNU General Public
|
||||||
* License or the Less License, as specified in the README file.
|
* License or the Less License, as specified in the README file.
|
||||||
@ -880,6 +880,20 @@ v549 2/10/19 Support X11 mouse extension 1006;
|
|||||||
Win32 fixes (thanks to Jason Hood).
|
Win32 fixes (thanks to Jason Hood).
|
||||||
v550 2/16/19 Fix Win32 build; don't enable mouse unless --mouse is set.
|
v550 2/16/19 Fix Win32 build; don't enable mouse unless --mouse is set.
|
||||||
v551 6/10/19 Doc changes.
|
v551 6/10/19 Doc changes.
|
||||||
|
-----------------------------------------------------------------
|
||||||
|
v552 7/8/19 Update Unicode tables.
|
||||||
|
v553 10/17/19 Support tinfow; handle zero-width Hangul chars.
|
||||||
|
v554 1/19/20 Remove erroneous free().
|
||||||
|
v555 3/15/20 Display error msg immediately when toggle -o without stdin.
|
||||||
|
v556 3/15/20 Update copyright.
|
||||||
|
v557 3/21/20 Fix memory corruption with libtermcap.
|
||||||
|
v558 4/17/20 Don't init terminal if -F and file fits on one screen (WIN32).
|
||||||
|
v559 4/19/20 Handle deinit correctly on WIN32.
|
||||||
|
v560 5/3/20 Fix regression when command results in no movement;
|
||||||
|
fix some less.nro issues (thanks to Bjarni I. Gislason).
|
||||||
|
v561 5/11/20 Fix erroneous EOF calculation when F command is interrupted.
|
||||||
|
v562 5/19/20 Update Unicode tables; minor doc formatting.
|
||||||
|
v563 6/13/20 Fix crash due to realpath() incompatibility.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
char version[] = "551";
|
char version[] = "563";
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Generated by "./mkutable -f1 W F -- unicode/EastAsianWidth.txt" on Thu Feb 14 08:30:47 PST 2019 */
|
/* Generated by "./mkutable -f1 W F -- unicode/EastAsianWidth.txt" on Tue May 19 14:47:35 PDT 2020 */
|
||||||
{ 0x1100, 0x115f }, /* W */
|
{ 0x1100, 0x115f }, /* W */
|
||||||
{ 0x231a, 0x231b }, /* W */
|
{ 0x231a, 0x231b }, /* W */
|
||||||
{ 0x2329, 0x232a }, /* W */
|
{ 0x2329, 0x232a }, /* W */
|
||||||
@ -44,12 +44,10 @@
|
|||||||
{ 0x3099, 0x30ff }, /* W */
|
{ 0x3099, 0x30ff }, /* W */
|
||||||
{ 0x3105, 0x312f }, /* W */
|
{ 0x3105, 0x312f }, /* W */
|
||||||
{ 0x3131, 0x318e }, /* W */
|
{ 0x3131, 0x318e }, /* W */
|
||||||
{ 0x3190, 0x31ba }, /* W */
|
{ 0x3190, 0x31e3 }, /* W */
|
||||||
{ 0x31c0, 0x31e3 }, /* W */
|
|
||||||
{ 0x31f0, 0x321e }, /* W */
|
{ 0x31f0, 0x321e }, /* W */
|
||||||
{ 0x3220, 0x3247 }, /* W */
|
{ 0x3220, 0x3247 }, /* W */
|
||||||
{ 0x3250, 0x32fe }, /* W */
|
{ 0x3250, 0x4dbf }, /* W */
|
||||||
{ 0x3300, 0x4dbf }, /* W */
|
|
||||||
{ 0x4e00, 0xa48c }, /* W */
|
{ 0x4e00, 0xa48c }, /* W */
|
||||||
{ 0xa490, 0xa4c6 }, /* W */
|
{ 0xa490, 0xa4c6 }, /* W */
|
||||||
{ 0xa960, 0xa97c }, /* W */
|
{ 0xa960, 0xa97c }, /* W */
|
||||||
@ -61,10 +59,14 @@
|
|||||||
{ 0xfe68, 0xfe6b }, /* W */
|
{ 0xfe68, 0xfe6b }, /* W */
|
||||||
{ 0xff01, 0xff60 }, /* F */
|
{ 0xff01, 0xff60 }, /* F */
|
||||||
{ 0xffe0, 0xffe6 }, /* F */
|
{ 0xffe0, 0xffe6 }, /* F */
|
||||||
{ 0x16fe0, 0x16fe1 }, /* W */
|
{ 0x16fe0, 0x16fe4 }, /* W */
|
||||||
{ 0x17000, 0x187f1 }, /* W */
|
{ 0x16ff0, 0x16ff1 }, /* W */
|
||||||
{ 0x18800, 0x18af2 }, /* W */
|
{ 0x17000, 0x187f7 }, /* W */
|
||||||
|
{ 0x18800, 0x18cd5 }, /* W */
|
||||||
|
{ 0x18d00, 0x18d08 }, /* W */
|
||||||
{ 0x1b000, 0x1b11e }, /* W */
|
{ 0x1b000, 0x1b11e }, /* W */
|
||||||
|
{ 0x1b150, 0x1b152 }, /* W */
|
||||||
|
{ 0x1b164, 0x1b167 }, /* W */
|
||||||
{ 0x1b170, 0x1b2fb }, /* W */
|
{ 0x1b170, 0x1b2fb }, /* W */
|
||||||
{ 0x1f004, 0x1f004 }, /* W */
|
{ 0x1f004, 0x1f004 }, /* W */
|
||||||
{ 0x1f0cf, 0x1f0cf }, /* W */
|
{ 0x1f0cf, 0x1f0cf }, /* W */
|
||||||
@ -96,15 +98,21 @@
|
|||||||
{ 0x1f680, 0x1f6c5 }, /* W */
|
{ 0x1f680, 0x1f6c5 }, /* W */
|
||||||
{ 0x1f6cc, 0x1f6cc }, /* W */
|
{ 0x1f6cc, 0x1f6cc }, /* W */
|
||||||
{ 0x1f6d0, 0x1f6d2 }, /* W */
|
{ 0x1f6d0, 0x1f6d2 }, /* W */
|
||||||
|
{ 0x1f6d5, 0x1f6d7 }, /* W */
|
||||||
{ 0x1f6eb, 0x1f6ec }, /* W */
|
{ 0x1f6eb, 0x1f6ec }, /* W */
|
||||||
{ 0x1f6f4, 0x1f6f9 }, /* W */
|
{ 0x1f6f4, 0x1f6fc }, /* W */
|
||||||
{ 0x1f910, 0x1f93e }, /* W */
|
{ 0x1f7e0, 0x1f7eb }, /* W */
|
||||||
{ 0x1f940, 0x1f970 }, /* W */
|
{ 0x1f90c, 0x1f93a }, /* W */
|
||||||
{ 0x1f973, 0x1f976 }, /* W */
|
{ 0x1f93c, 0x1f945 }, /* W */
|
||||||
{ 0x1f97a, 0x1f97a }, /* W */
|
{ 0x1f947, 0x1f978 }, /* W */
|
||||||
{ 0x1f97c, 0x1f9a2 }, /* W */
|
{ 0x1f97a, 0x1f9cb }, /* W */
|
||||||
{ 0x1f9b0, 0x1f9b9 }, /* W */
|
{ 0x1f9cd, 0x1f9ff }, /* W */
|
||||||
{ 0x1f9c0, 0x1f9c2 }, /* W */
|
{ 0x1fa70, 0x1fa74 }, /* W */
|
||||||
{ 0x1f9d0, 0x1f9ff }, /* W */
|
{ 0x1fa78, 0x1fa7a }, /* W */
|
||||||
|
{ 0x1fa80, 0x1fa86 }, /* W */
|
||||||
|
{ 0x1fa90, 0x1faa8 }, /* W */
|
||||||
|
{ 0x1fab0, 0x1fab6 }, /* W */
|
||||||
|
{ 0x1fac0, 0x1fac2 }, /* W */
|
||||||
|
{ 0x1fad0, 0x1fad6 }, /* W */
|
||||||
{ 0x20000, 0x2fffd }, /* W */
|
{ 0x20000, 0x2fffd }, /* W */
|
||||||
{ 0x30000, 0x3fffd }, /* W */
|
{ 0x30000, 0x3fffd }, /* W */
|
||||||
|
Loading…
Reference in New Issue
Block a user