Date: Mon, 22 Jul 2002 10:14:02 +1000 From: Tim Robbins <tjr@FreeBSD.ORG> To: Jon Mini <baka@elvis.mu.org> Cc: cvs-all@FreeBSD.ORG, cvs-committers@FreeBSD.ORG Subject: Re: cvs commit: src/bin/sh sh.1 Message-ID: <20020722101402.A61422@dilbert.robbins.dropbear.id.au> In-Reply-To: <20020721182928.GJ31134@elvis.mu.org>; from baka@elvis.mu.org on Sun, Jul 21, 2002 at 11:29:28AM -0700 References: <20020721180547.A29241@dilbert.robbins.dropbear.id.au> <20020721203021.D19918-100000@gamplex.bde.org> <20020721182928.GJ31134@elvis.mu.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Jul 21, 2002 at 11:29:28AM -0700, Jon Mini wrote: > On Sun, Jul 21, 2002 at 08:43:56PM +1000, Bruce Evans wrote: > > Right. I have tried removing those things before, and nothing except them > > has made a very large difference for many years. libedit doesn't seem to > > be very well engineered (it seems to cause more bloat than libreadline > > despite being much smaller and doing less), but the getpwnam() bloat is > > much larger and harder to fix. > > I have long contended that the only thing keeping me from using sh as my > login shell full-time is one feature that libreadline has but libedit > lacks (^R -> reverse incremental history search). libedit actually does have this feature, but our sh(1) lacks a command to change the bindings. If you add this to builtins.def: bindcmd bind then put this in histedit.c: int bindcmd(int argc, char **argv) { return (el_parse(el, argc, argv)); } You can then type: set -o emacs bind ^R em-inc-search-prev This hack isn't entirely correct, it will just segfault if you try to use the `bind' command when line editing is disabled. editrc(5) documents how the bind command works. Tim To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020722101402.A61422>