From: Peter Stephenson <pws@ifh.de>
To: ramos@ih4ess.ih.lucent.com, zsh-users@math.gatech.edu (Zsh users list)
Subject: Re: Perl replacement challenge
Date: Wed, 29 Oct 1997 17:46:58 +0100 [thread overview]
Message-ID: <199710291646.RAA02780@hydra.ifh.de> (raw)
In-Reply-To: "ramos@ih4ess.ih.lucent.com"'s message of "Wed, 29 Oct 1997 10:19:56 MET." <199710291619.KAA11548@ihnns581.ih.lucent.com>
ramos@ih4ess.ih.lucent.com wrote:
> I have a very simple and effective solution:
>
> # Use "kshdot some_ksh_script" instead of ". some_ksh_script"
>
> kshdot() { source =(ksh -c ". $* 1>&2; senv") }
>
> Where 'senv' is the following Perl script:
> ...
As a minimal modification which omits the Perl script, how about
kshdot() {
setopt allexport localoptions
source =(ksh -c ". $* 1>&2; typeset +x _ PWD; typeset -x")
}
This lists exported variables directly from ksh, which quotes them
where necessary; also it unexports _ and PWD (this does not reach back
to the calling zsh of course) so they don't appear in the list. Since
ksh doesn't put the `export' in front, you can use `allexport'; that
only lasts for the length of the function.
But remember you can make emulate local to a function. You might get
away with something like
kshdot() { emulate ksh; setopt localoptions; . $*; }
at least for some of the scripts.
--
Peter Stephenson <pws@ifh.de> Tel: +49 33762 77366
WWW: http://www.ifh.de/~pws/ Fax: +49 33762 77413
Deutsches Elektronen-Synchrotron --- Institut fuer Hochenergiephysik Zeuthen
DESY-IfH, Platanenallee 6, 15738 Zeuthen, Germany.
next prev parent reply other threads:[~1997-10-29 16:52 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
1997-10-29 16:19 ramos
1997-10-29 16:46 ` Peter Stephenson [this message]
1997-10-29 16:59 ` Bruce Stephens
1997-10-29 17:08 ` Andrew Main
1997-10-29 17:11 ` Bart Schaefer
1997-10-29 17:09 ramos
1997-10-29 20:20 ` TGAPE!
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=199710291646.RAA02780@hydra.ifh.de \
--to=pws@ifh.de \
--cc=ramos@ih4ess.ih.lucent.com \
--cc=zsh-users@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).