svn commit: r206182 - head/bin/sh

Jilles Tjoelker jilles at FreeBSD.org
Mon Apr 5 14:15:51 UTC 2010


Author: jilles
Date: Mon Apr  5 14:15:51 2010
New Revision: 206182
URL: http://svn.freebsd.org/changeset/base/206182

Log:
  sh: Automatically enable -o emacs in interactive shells with terminals.
  
  This makes sh a bit more friendly in single user mode, make buildenv, chroot
  and the like, and matches other shells.
  
  The -o emacs can be overridden on the command line or in the ENV file.

Modified:
  head/bin/sh/options.c
  head/bin/sh/sh.1

Modified: head/bin/sh/options.c
==============================================================================
--- head/bin/sh/options.c	Mon Apr  5 13:48:23 2010	(r206181)
+++ head/bin/sh/options.c	Mon Apr  5 14:15:51 2010	(r206182)
@@ -93,8 +93,11 @@ procargs(int argc, char **argv)
 	options(1);
 	if (*argptr == NULL && minusc == NULL)
 		sflag = 1;
-	if (iflag == 2 && sflag == 1 && isatty(0) && isatty(1))
+	if (iflag != 0 && sflag == 1 && isatty(0) && isatty(1)) {
 		iflag = 1;
+		if (Eflag == 2)
+			Eflag = 1;
+	}
 	if (mflag == 2)
 		mflag = iflag;
 	for (i = 0; i < NOPTS; i++)

Modified: head/bin/sh/sh.1
==============================================================================
--- head/bin/sh/sh.1	Mon Apr  5 13:48:23 2010	(r206181)
+++ head/bin/sh/sh.1	Mon Apr  5 14:15:51 2010	(r206182)
@@ -32,7 +32,7 @@
 .\"	from: @(#)sh.1	8.6 (Berkeley) 5/4/95
 .\" $FreeBSD$
 .\"
-.Dd April 4, 2010
+.Dd April 5, 2010
 .Dt SH 1
 .Os
 .Sh NAME
@@ -210,7 +210,8 @@ Enable the built-in
 .Xr emacs 1
 command line editor (disables the
 .Fl V
-option if it has been set).
+option if it has been set;
+set automatically when interactive on terminals).
 .It Fl e Li errexit
 Exit immediately if any untested command fails in non-interactive mode.
 The exit status of a command is considered to be


More information about the svn-src-all mailing list