From: Peter Stephenson <p.w.stephenson@ntlworld.com> To: Risto Laitinen <risto.laitinen@gmail.com>, zsh-workers@zsh.org Subject: Re: [PATCH] zed fails with setopt nounset unless option -x is given Date: Wed, 25 May 2022 10:48:46 +0100 (BST) [thread overview] Message-ID: <440344651.366684.1653472126201@mail2.virginmedia.com> (raw) In-Reply-To: <641523655.251203.1653056242563@mail2.virginmedia.com> > On 20 May 2022 at 15:17 Peter Stephenson <p.w.stephenson@ntlworld.com> wrote: > > > > On 20 May 2022 at 15:06 Risto Laitinen <risto.laitinen@gmail.com> wrote: > > % zsh-5.9 -f > > % autoload zed > > % setopt nounset > > % zed a.txt > > zed:21: opts[-x]: parameter not set > > % > > Looks straightforward. This is a little better (it doesn't take account of the point Bart noted). The option handler will return on a bad argument, so actually the internal handling is now redundant. pws diff --git a/Functions/Misc/zed b/Functions/Misc/zed index 7d0d590db..bb075512c 100644 --- a/Functions/Misc/zed +++ b/Functions/Misc/zed @@ -14,15 +14,17 @@ local var opts zed_file_name integer TMOUT=0 okargs=1 fun hist bind local -a expand -zparseopts -D -A opts f h b x: +zparseopts -D -A opts f h b x: || return 1 fun=$+opts[-f] hist=$+opts[-h] bind=$+opts[-b] -if [[ $opts[-x] == <-> ]]; then - expand=(-x $opts[-x]) -elif (( $+opts[-x] )); then - print -r "Integer expected after -x: $opts[-x]" >&2 - return 1 +if (( $+opts[-x] )); then + if [[ $opts[-x] == <-> ]]; then + expand=(-x $opts[-x]) + else + print -r "Integer expected after -x: $opts[-x]" >&2 + return 1 + fi fi [[ $0 = fned ]] && fun=1
prev parent reply other threads:[~2022-05-25 9:49 UTC|newest] Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-05-20 14:06 Risto Laitinen 2022-05-20 14:17 ` Peter Stephenson 2022-05-20 14:39 ` Bart Schaefer 2022-05-20 15:00 ` Bart Schaefer 2022-05-25 9:48 ` Peter Stephenson [this message]
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=440344651.366684.1653472126201@mail2.virginmedia.com \ --to=p.w.stephenson@ntlworld.com \ --cc=risto.laitinen@gmail.com \ --cc=zsh-workers@zsh.org \ --subject='Re: [PATCH] zed fails with setopt nounset unless option -x is given' \ /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
Code repositories for project(s) associated with this 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).