9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: erik quanstrom <quanstro@quanstro.net>
To: 9fans@9fans.net
Subject: Re: [9fans] a bit OT, programming style question
Date: Tue,  7 Apr 2009 01:39:44 -0400	[thread overview]
Message-ID: <c98edc44e10de62560fe9a72d1cf061d@quanstro.net> (raw)
In-Reply-To: <1239082320.2778.20.camel@katy-laptop>

> Would there be any merit to breaking the shell apart into a number of
> smaller programs? Looking at GNU bash as an example (though I know GNU
> is probably one of the worst places to look for "Unix style"), It is my
> understanding that one program handles many things, such as keyboard
> bindings (which I believe in turn requires bash to read in cbreak or raw
> or whatever and do it's own line editing), glob expansion, aliases,
> history, syntax parsing, command execution, job control, etc. etc.
>
> IMO this results in a more complex program than necessary. Keyboard
> bindings for example; why couldn't they be handled by a program that
> just does keyboard bindings + line editing, and writes finalized lines
> to the shell. This in turn could also allow bindings to be more easily
> customized (such as binding autocomplete to Ctrl+F instead of tab)
> depending on its implementation.

fwiw, plan 9 handles key bindings in #κ.  the shell hasn't a clue.
rio (or acme) handles the editing.  again, the shell hasn't a clue.
and autocomplete?  yup.  same story.  hapless rc hasn't a clue.

rc is proof that ignorance is bliss.

- erik



  reply	other threads:[~2009-04-07  5:39 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-07  5:32 Corey
2009-04-07  5:39 ` erik quanstrom [this message]
2009-04-07  7:53 ` sqweek
2009-04-07  7:28   ` Eris Discordia
     [not found]   ` <3AB58E51F3A5C561C4B065E3@192.168.1.2>
2009-04-07 14:31     ` sqweek
2009-04-07 15:09     ` ron minnich
2009-04-07 18:21       ` Eris Discordia
     [not found]       ` <A297371273CD8D67A21A921E@192.168.1.2>
2009-04-07 19:57         ` J.R. Mauro
2009-04-08  1:48           ` Eris Discordia
2009-04-08  2:53             ` erik quanstrom
     [not found]           ` <A411EFAE2566F856F3034B12@192.168.1.2>
2009-04-08  3:04             ` J.R. Mauro
2009-04-09 13:44               ` Eris Discordia
2009-04-09 15:06                 ` erik quanstrom
2009-04-09 22:34                   ` Eris Discordia
2009-04-10 16:15                     ` john
2009-04-17 13:07                     ` Balwinder S Dheeman
2009-04-17 13:28                       ` erik quanstrom
2009-04-17 13:42                         ` Devon H. O'Dell
     [not found]                   ` <3F6B6589F529BEAECE105A71@192.168.1.2>
2009-04-10 19:35                     ` J.R. Mauro
     [not found]               ` <5EF90081E9B1D745047218E6@192.168.1.2>
2009-04-09 17:32                 ` J.R. Mauro
2009-04-09 18:10                   ` Charles Forsyth
2009-04-09 18:28                     ` Richard Miller
2009-04-09 19:28                       ` Devon H. O'Dell
2009-04-09 19:31                         ` erik quanstrom
2009-04-09 19:34                         ` J.R. Mauro
2009-04-09 22:09                           ` Eris Discordia
     [not found]                           ` <58ADE353D7158CD35973F13B@192.168.1.2>
2009-04-10 19:33                             ` J.R. Mauro
2009-04-11 11:13                               ` Eris Discordia
2009-04-09 21:01                         ` Richard Miller
2009-04-09 21:28                         ` Bakul Shah
2009-04-09 21:34                           ` J.R. Mauro
2009-04-09 22:16                           ` erik quanstrom
2009-04-09 22:37                           ` Devon H. O'Dell
2009-04-09 22:05                         ` Eris Discordia
2009-04-07 15:08 ` ron minnich
2009-04-07 16:05   ` Corey
2009-04-07 16:44     ` ron minnich
2009-04-07 18:34       ` erik quanstrom
2009-04-07 22:50         ` dave.l
2009-04-07 22:56           ` erik quanstrom

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c98edc44e10de62560fe9a72d1cf061d@quanstro.net \
    --to=quanstro@quanstro.net \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).