zsh-workers
 help / color / mirror / code / Atom feed
From: "Bart Schaefer" <schaefer@candle.brasslantern.com>
To: zsh-users@math.gatech.edu, zsh-workers@math.gatech.edu
Subject: Re: Builtin append() and prepend() to PATH, CDPATH, etc.
Date: Wed, 5 Jun 1996 14:25:56 -0700	[thread overview]
Message-ID: <960605142558.ZM7112@candle.brasslantern.com> (raw)
In-Reply-To: Zoltan Hidvegi <hzoli@cs.elte.hu> "Re: Builtin append() and prepend() to PATH, CDPATH, etc." (Jun  2, 11:26pm)
In-Reply-To: Zefram <A.Main@dcs.warwick.ac.uk> "Re: A peep into the future." (Jun  4, 11:27am)
In-Reply-To: Zoltan Hidvegi <hzoli@cs.elte.hu> "Re: A peep into the future." (Jun  4, 10:37pm)

On Jun 4, 11:27am, Zefram wrote:
} Subject: Re: A peep into the future.
}
} >6. Hierarchical option settings.  E.g. unsetopt zle automatically
} >   unsetopts's the options dependant on its being set.  It itself also
} >   is an option.  It's there to make understanding the plethora of
} >   options easier for new users.
} 
} That's rather pointless.  If an option has no effect due to the state
} of another option, I'd rather it stayed the way it is, rather than get
} unset.

Exactly.  I don't want to have to reset half a dozen options to get back
to where I started after unsetting only one option!  (That doesn't mean
it wouldn't be a good idea to rearrange the to make option explanations
heirarchical.)

An alternative, however, would be to have options with three states: set,
unset, and disabled.  Options would become disabled if any other option,
upon which they depend, becomes unset or disabled; disabled options go
back to set if all the options on which they depend become set.

Then the question becomes, what happens if you set an unset option, and
it depends on some other unset or disabled option?  Does the newly set
option simply become disabled, or does it force all options upon which
it depends to also become set?

} >zsh 4.0:
} >
} >1.  wzsh (windowing zsh) is now available.  Also, zsh now has colour
} >    and menu capabilities on text only terminals.  
} 
} It has colour capabilities to some extent: you can put colour sequences
} into prompts quite easily.  I don't see any advantage in having zsh use
} windows in any way.

I tend to agree.  At this point you've rewritten emacs.  Just *get* emacs,
and run zsh in a shell buffer.

} >2.  mount/umount is a shell builtin which simulates working with
} >    virtual filesystems e.g. ftpfs, tarfs, libfs, memfs.
}
} Virtual filesystems, of
} course, should be done in the kernel (for example, userfs under
} Linux).

I agree with Zefram.

} I'd like to see quite a lot of basic administration commands added as
} optional builtins, to make a sysadmin's shell.  There would be a
} configuration option to strip out ZLE, and to add builtins for cp, mv,
} rm, link, sln and so on.

This, on the other hand, has possibilities.

} >3.  zsh can now byte-code its scripts.
} 
} I never tried this, but I think it used to be possible, if you just put
} the token control characters into a script.

Not only does this not save you much, as Zoltan pointed out, but it's
problematic in the face of SH_WORD_SPLIT.  If a single variable reference
can explode into multiple tokens, the script ends up having to be reparsed
and interpreted anyway, and you've actually made parsing MORE expensive.

(Of course, zsh already does a little of this with shell functions.)

} >4.  zsh now supports dynamic files.  If a file has a specific magic no,
} >    it can be handled like a normal file of the *output* of that file.

What the heck does that even MEAN?

} >zsh 10.0:
} >
} >OS_TYPE is a shell variables which can be changed.  zsh simulates the
} >given OS.  Everything is a shell builtin.

(Run screaming in terror)

On Jun 4, 10:37pm, Zoltan Hidvegi wrote:
} Subject: Re: A peep into the future.
}
} I have already did some private hacks to add loadable module support to
} zsh.  This is quite trivial on elf systems (I did this on Linux) but I do
} not know how can it be ported to non-elf systems.

It probably can't be ported to every system on which zsh runs.  I think
with some carefully selected primitives, you could construct scripts to
handle nearly everything that would be useful as a loadable module.

-- 
Bart Schaefer                             Brass Lantern Enterprises
http://www.well.com/user/barts            http://www.nbn.com/people/lantern

New male in /home/schaefer:
>N  2 Justin William Schaefer  Sat May 11 03:43  53/4040  "Happy Birthday"



  parent reply	other threads:[~1996-06-05 21:38 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-04-10 10:31 History file locking? Russell Senior
1996-04-10 12:12 ` Zefram
1996-04-10 12:41   ` Zoltan Hidvegi
1996-04-10 12:50     ` Zefram
     [not found]       ` <A.Main@dcs.warwick.ac.uk>
1996-04-10 16:26         ` Barton E. Schaefer
1996-04-10 17:08           ` Anthony Heading
     [not found]             ` <aheading@jpmorgan.com>
1996-04-10 17:12               ` Barton E. Schaefer
1996-04-10 18:03                 ` Anthony Heading
1996-06-05 21:25         ` Bart Schaefer [this message]
     [not found]           ` <schaefer@candle.brasslantern.com>
1996-06-10 19:22             ` Builtin append() and prepend() to PATH, CDPATH, etc Clinton Bunch
1996-06-10 19:54               ` Bart Schaefer
1996-06-10 20:24                 ` Hrvoje Niksic
1996-06-10 20:58             ` Clinton Bunch
1996-06-24 18:26             ` BUG: useheap in doexpandhist() Barton E. Schaefer
1996-06-24 19:11               ` Zoltan Hidvegi
1996-06-24 21:20                 ` Barton E. Schaefer
1996-06-25  0:01                   ` Zoltan Hidvegi
1996-06-25  0:22                     ` Barton E. Schaefer
1996-07-23 20:01             ` Bug in case stmt with '(' Morris M. Siegel
1996-07-23 21:55               ` Bart Schaefer
1996-07-24  8:29                 ` Zefram
1996-07-24  9:52                 ` Peter Stephenson
1996-07-24 11:10         ` Bart Schaefer
1996-07-24 14:16           ` Zoltan Hidvegi
1996-04-10 21:21       ` History file locking? Zoltan Hidvegi
  -- strict thread matches above, loose matches on Subject: below --
2001-04-27 19:54 comptest* failed to load module: zsh/termcap Peter Whaite
2001-04-28  6:10 ` Bart Schaefer
2001-04-28  8:55   ` Andrej Borsenkow
2001-04-30 15:44     ` Peter Whaite
2001-04-30 16:30       ` Bart Schaefer
2001-04-30 16:47         ` Andrej Borsenkow
2001-04-30 17:16           ` PATCH: " Bart Schaefer
2001-04-30 18:54         ` Peter Whaite
2001-04-30 19:12           ` Bart Schaefer
2001-04-30 15:32   ` Peter Whaite
1997-01-31 10:47 history-search-backward Peter Stephenson
1997-01-31 12:16 ` history-search-backward Zefram
1997-01-31 12:42   ` history-search-backward Peter Stephenson
1997-01-31 15:02     ` history-search-backward Bart Schaefer
1997-01-31 15:23       ` history-search-backward Vinnie Shelton
1997-01-31 19:02     ` history-search-backward Zoltan Hidvegi
1997-01-31 19:13 ` history-search-backward Wayne Davison
1996-12-13  2:30 fifo configure check Zoltan Hidvegi
1996-10-31 14:41 Parameter expansion bug? Anthony Heading
1996-10-31 15:13 ` Hrvoje Niksic
1996-10-31 16:12 ` Zoltan Hidvegi
1996-10-31 20:49   ` Anthony Heading
     [not found] <17651.199607222123@stone.dcs.warwick.ac.uk>
1996-07-23 14:08 ` Bug in case stmt with '(' Zoltan Hidvegi
1996-07-23 16:25   ` Bart Schaefer
1996-06-22 20:12 BUG: useheap in doexpandhist() Bart Schaefer
1996-06-02 17:59 Builtin append() and prepend() to PATH, CDPATH, etc Fung-Chai Lim
1996-06-02 21:26 ` Zoltan Hidvegi
     [not found]   ` <1062.199606041027@stone.dcs.warwick.ac.uk>
1996-03-12 19:03 Buffered stderr on Linux Zoltan Hidvegi
1996-03-12 19:24 ` Bart Schaefer
1996-03-12 20:26   ` Zoltan Hidvegi
1996-03-12 23:17   ` Zoltan Hidvegi
1996-03-13  0:16     ` Steven L Baur
     [not found]     ` <hzoli@cs.elte.hu>
1996-03-16 18:46       ` Bart Schaefer
1996-04-10 21:41       ` History file locking? Barton E. Schaefer
1996-04-10 22:16         ` Daniel Dignam
1996-06-26 13:51       ` Use of qualifiers without glob pattern? Bart Schaefer
1996-06-26 14:01         ` Regression tests Bas V. de Bakker
1996-06-26 14:52         ` Use of qualifiers without glob pattern? Zoltan Hidvegi
1996-06-26 15:54           ` Bart Schaefer
1996-06-27  1:03             ` Zoltan Hidvegi
1996-10-31 16:55       ` Parameter expansion bug? Bart Schaefer
1996-10-31 16:57         ` Hrvoje Niksic
1996-10-31 17:04         ` Zoltan Hidvegi
1996-10-31 17:47           ` Bart Schaefer
1996-12-13  3:37       ` fifo configure check Bart Schaefer
1996-12-13  8:58         ` fifo configure check (seems to work here: Solaris 2.4) C. v. Stuckrad
1996-12-13 14:44         ` fifo configure check Zefram
1996-12-13 17:33           ` Zoltan Hidvegi
     [not found]       ` <wayne@clari.net>
1997-01-31 22:01         ` history-search-backward Bart Schaefer

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=960605142558.ZM7112@candle.brasslantern.com \
    --to=schaefer@candle.brasslantern.com \
    --cc=schaefer@nbn.com \
    --cc=zsh-users@math.gatech.edu \
    --cc=zsh-workers@math.gatech.edu \
    /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.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

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).