From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9455 invoked by alias); 9 Dec 2014 04:43:29 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 33937 Received: (qmail 25241 invoked from network); 9 Dec 2014 04:43:16 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.2 X-CMAE-Score: 0 X-CMAE-Analysis: v=2.1 cv=AMzggXLk c=1 sm=1 tr=0 a=FT8er97JFeGWzr5TCOCO5w==:117 a=kj9zAlcOel0A:10 a=q2GGsy2AAAAA:8 a=oR5dmqMzAAAA:8 a=-9mUelKeXuEA:10 a=A92cGCtB03wA:10 a=lrNIEt3F9fyPxM5DfjcA:9 a=CjuIK1q_8ugA:10 From: Bart Schaefer Message-id: <141208204310.ZM5625@torch.brasslantern.com> Date: Mon, 08 Dec 2014 20:43:10 -0800 In-reply-to: <20141208202717.46678b7d@pws-pc.ntlworld.com> Comments: In reply to Peter Stephenson "Re: Interrupts in completion, traps in _main_complete" (Dec 8, 8:27pm) References: <20141202155452.647182b4@pwslap01u.europe.root.pri> <141202084858.ZM31517@torch.brasslantern.com> <20141202172654.30e7d380@pwslap01u.europe.root.pri> <141204085606.ZM9146@torch.brasslantern.com> <20141204171226.301e9d2c@pwslap01u.europe.root.pri> <141205002023.ZM19736@torch.brasslantern.com> <20141205145054.655a2f70@pwslap01u.europe.root.pri> <141205100632.ZM508@torch.brasslantern.com> <20141205181330.2b458b46@pwslap01u.europe.root.pri> <20141205203417.2bc66b7b@pws-pc.ntlworld.com> <141206215911.ZM16010@torch.brasslantern.com> <20141207162157.27cf418f@pws-pc.ntlworld.com> <141207150140.ZM24076@torch.brasslantern.com> <20141208202717.46678b7d@pws-pc.ntlworld.com> X-Mailer: OpenZMail Classic (0.9.2 24April2005) To: "Zsh Hackers' List" Subject: Re: Interrupts in completion, traps in _main_complete MIME-version: 1.0 Content-type: text/plain; charset=us-ascii On Dec 8, 8:27pm, Peter Stephenson wrote: } } I'm probably missing a lot, but it struck me that if you're aborting out } of completion completely, as it were, then the stuff that doesn't get } executed doesn't typically matter all that much. The stuff you really } want to get right on exit --- options, IFS, etc. --- is already local. I'm looking at LISTPROMPT, MENUPROMPT, MENUSCROLL, MENUSELECT, MENUMODE, and ZLS_COLORS. Of which I guess only ZLS_COLORS gets reset right now, but on an interrupt even it won't get restored. Incidentally, MENUMODE appears to be entirely undocumented. } Beyond that I couldn't offhand say which the most important things to } restore were. If you aborted completion, did you want to set _lastcomp } or do you actually want to steer clear of setting it? There is that question ... also, did you want compstate[old_list] or not? What about other values of compstate? Whether you want the post-funcs to run probably depends on what the pre-funcs were, so that's a bit ugly.