From b24dc6e7251de8ab3722581c7d8650b9a4fbc0cc Mon Sep 17 00:00:00 2001 From: tg Date: Tue, 30 Sep 2008 18:43:07 +0000 Subject: [PATCH] add regression tests, sync manpage, bump version number --- check.t | 24 ++++++++++++++++++++++-- mksh.1 | 21 +++++++++++++++++---- sh.h | 4 ++-- 3 files changed, 41 insertions(+), 8 deletions(-) diff --git a/check.t b/check.t index e6bdca2..a6bfb98 100644 --- a/check.t +++ b/check.t @@ -1,4 +1,4 @@ -# $MirOS: src/bin/mksh/check.t,v 1.224 2008/09/20 19:17:59 tg Exp $ +# $MirOS: src/bin/mksh/check.t,v 1.225 2008/09/30 18:43:06 tg Exp $ # $OpenBSD: bksl-nl.t,v 1.2 2001/01/28 23:04:56 niklas Exp $ # $OpenBSD: history.t,v 1.5 2001/01/28 23:04:56 niklas Exp $ # $OpenBSD: read.t,v 1.3 2003/03/10 03:48:16 david Exp $ @@ -7,7 +7,7 @@ # http://www.research.att.com/~gsf/public/ifs.sh expected-stdout: - @(#)MIRBSD KSH R35 2008/09/20 + @(#)MIRBSD KSH R35 2008/09/30 description: Check version of shell. stdin: @@ -1726,6 +1726,26 @@ expected-stdout: expected-stderr-pattern: /^X*$/ --- +name: history-dups +description: + Verify duplicates and spaces are not entered +arguments: !-i! +env-setup: !ENV=./Env!HISTFILE=hist.file! +file-setup: file 644 "Env" + PS1=X +stdin: + echo hi + echo yo + echo hi + fc -l +expected-stdout: + hi + yo + hi + 1 echo hi +expected-stderr-pattern: + /^X*$/ +--- name: history-unlink description: Check if broken HISTFILEs do not cause trouble diff --git a/mksh.1 b/mksh.1 index 7a996d1..2f732dd 100644 --- a/mksh.1 +++ b/mksh.1 @@ -1,4 +1,4 @@ -.\" $MirOS: src/bin/mksh/mksh.1,v 1.136 2008/09/17 19:31:30 tg Exp $ +.\" $MirOS: src/bin/mksh/mksh.1,v 1.137 2008/09/30 18:43:07 tg Exp $ .\" $OpenBSD: ksh.1,v 1.122 2008/05/17 23:31:52 sobrado Exp $ .\"- .\" Try to make GNU groff and AT&T nroff more compatible @@ -30,7 +30,7 @@ .el .xD \\$1 \\$2 \\$3 \\$4 \\$5 \\$6 \\$7 \\$8 .. .\"- -.Dd $Mdocdate: September 17 2008 $ +.Dd $Mdocdate: September 30 2008 $ .Dt MKSH 1 .Os MirBSD .Sh NAME @@ -4532,6 +4532,9 @@ character is displayed in the last column indicating that there are more characters after, before and after, or before the current position, respectively. The line is scrolled horizontally as necessary. +.Pp +Completed lines are pushed into the history, unless they begin with an IFS +character of IFS white space, or are the same as the previous history line. .Ss Emacs editing mode When the .Ic emacs @@ -4697,6 +4700,15 @@ has been performed. Lowercases the next .Ar n words. +.It Xo edit\-line: +.Op Ar n +.No \*(haXe +.Xc +Edit line +.Ar n +or the current line, if not specified, interactively. +The actual command executed is +.Ic fc \-e ${VISUAL:\-${EDITOR:\-vi}} Ar n . .It end\-of\-history: \*(ha[\*(Gt Moves to the end of the history. .It end\-of\-line: \*(haE @@ -4819,7 +4831,8 @@ An initial .Ql \*(ha in the search string anchors the search. The escape key will leave search mode. -Other commands will be executed after leaving search mode. +Other commands, including sequences of escape as prefix-1 followed by a +prefix-1 or prefix-2 key will be executed after leaving search mode. Successive .Ic search\-history commands continue searching backward to the next previous occurrence of the @@ -5532,7 +5545,7 @@ and many other persons, and is currently maintained by .An Thorsten Glaser Aq tg@mirbsd.de . .Sh BUGS This document attempts to describe -.Nm mksh\ R35c +.Nm mksh\ R36 and up, compiled without any options impacting functionality, such as .Dv MKSH_SMALL , diff --git a/sh.h b/sh.h index 9111cf6..d599b4c 100644 --- a/sh.h +++ b/sh.h @@ -100,9 +100,9 @@ #define __SCCSID(x) __IDSTRING(sccsid,x) #ifdef EXTERN -__RCSID("$MirOS: src/bin/mksh/sh.h,v 1.234 2008/09/30 17:49:26 tg Exp $"); +__RCSID("$MirOS: src/bin/mksh/sh.h,v 1.235 2008/09/30 18:43:07 tg Exp $"); #endif -#define MKSH_VERSION "R35 2008/09/20" +#define MKSH_VERSION "R35 2008/09/30" #ifndef MKSH_INCLUDES_ONLY