diff options
author | 1997-01-16 05:18:27 +0000 | |
---|---|---|
committer | 1997-01-16 05:18:27 +0000 | |
commit | babb851a03da708c23432c3b0e2db2e2d63a0ef9 (patch) | |
tree | d668950408f4b1778018080418b2f76b9aff9340 /lib/libedit/read.c | |
parent | Speak in English and note that editline(3) now exists. (diff) | |
download | wireguard-openbsd-babb851a03da708c23432c3b0e2db2e2d63a0ef9.tar.xz wireguard-openbsd-babb851a03da708c23432c3b0e2db2e2d63a0ef9.zip |
Merge in NetBSD libedit changes and new man pages. Also fix some
strncpy() usage in their code. NetBSD change log was:
* add a man page for the editline routines
* add a man page describing editrc
* fix bugs in el_parse():
* didn't execute command when program name matched (test reversed)
* was checking against empty string instead of program name
* after checks, command to run also pointed to empty string
* document ^char and \ escape sequences
* when parsing ^char control chars, check the correct char when determining
validity (previously, ^char was a NOP interpreted as the literal string
because of this bug)
* Implement CC_REDISPLAY, which (unlike CC_REFRESH) redraws the entire input
* line (a la ^R). This is useful if the binding outputs information and
* mucks up the input line. To be used in ``list-choices'' bindings (refer
* to the ^D binding in csh when filec is set)
Diffstat (limited to 'lib/libedit/read.c')
-rw-r--r-- | lib/libedit/read.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/lib/libedit/read.c b/lib/libedit/read.c index ccfc88b8f59..2d1139c6e82 100644 --- a/lib/libedit/read.c +++ b/lib/libedit/read.c @@ -1,3 +1,5 @@ +/* $OpenBSD: read.c,v 1.2 1997/01/16 05:18:42 millert Exp $ */ + /*- * Copyright (c) 1992, 1993 * The Regents of the University of California. All rights reserved. @@ -35,9 +37,13 @@ */ #if !defined(lint) && !defined(SCCSID) +#if 0 static char sccsid[] = "@(#)read.c 8.1 (Berkeley) 6/4/93"; - +#else +static char rcsid[] = "$OpenBSD: read.c,v 1.2 1997/01/16 05:18:42 millert Exp $"; +#endif #endif /* not lint && not SCCSID */ + /* * read.c: Clean this junk up! This is horrible code. * Terminal read functions @@ -379,6 +385,11 @@ el_gets(el, nread) re_refresh_cursor(el); break; + case CC_REDISPLAY: + re_clear_lines(el); + re_clear_display(el); + /* FALLTHROUGH */ + case CC_REFRESH: el->el_state.argument = 1; el->el_state.doingarg = 0; |