From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=MAILING_LIST_MULTI, RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from primenet.com.au (ns1.primenet.com.au [203.24.36.2]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id 847c90c2 for ; Sat, 4 Jan 2020 17:36:47 +0000 (UTC) Received: (qmail 26919 invoked by alias); 4 Jan 2020 17:36:36 -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: List-Unsubscribe: X-Seq: 45236 Received: (qmail 26126 invoked by uid 1010); 4 Jan 2020 17:36:36 -0000 X-Qmail-Scanner-Diagnostics: from out1-smtp.messagingengine.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.102.1/25677. spamassassin: 3.4.2. Clear:RC:0(66.111.4.25):SA:0(-2.6/5.0):. Processed in 4.713213 secs); 04 Jan 2020 17:36:36 -0000 X-Envelope-From: d.s@daniel.shahaf.name X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: none (ns1.primenet.com.au: domain at daniel.shahaf.name does not designate permitted sender hosts) X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedufedrvdeghedguddtvdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecunecujfgurhepofgfggfkjghffffhvffutgesth dtredtreertdenucfhrhhomhepfdffrghnihgvlhcuufhhrghhrghffdcuoegurdhssegu rghnihgvlhdrshhhrghhrghfrdhnrghmvgeqnecurfgrrhgrmhepmhgrihhlfhhrohhmpe gurdhssegurghnihgvlhdrshhhrghhrghfrdhnrghmvgenucevlhhushhtvghrufhiiigv pedt X-ME-Proxy: X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.1.7-694-gd5bab98-fmstable-20191218v1 Mime-Version: 1.0 Message-Id: In-Reply-To: References: <63663202-4b1d-428a-b16b-5be1425e84ef@www.fastmail.com> <0C0C9775-59EE-4FBB-AB84-3E7FEF6E5024@dana.is> <186D63AE-2F2A-41C3-9E09-CEE0714E2B7F@dana.is> <12F64C78-BFA2-460C-80D4-921F22C72F78@dana.is> <1578063609.4581.6.camel@samsung.com> <20200103204856.bv6f3dkqhtrjm6vm@tarpaulin.shahaf.local2> <54205248-124e-4e9a-942f-7ff0626791a6@www.fastmail.com> Date: Sat, 04 Jan 2020 17:35:32 +0000 From: "Daniel Shahaf" To: zsh-workers@zsh.org Subject: Re: Official plugin manager? Content-Type: text/plain Roman Perepelitsa wrote on Sat, 04 Jan 2020 16:41 +00:00: > On Sat, Jan 4, 2020 at 5:28 PM Daniel Shahaf wrote: > > > > Roman Perepelitsa wrote on Sat, 04 Jan 2020 15:46 +00:00: > > > zle -N zle-line-init my-zle-line-init > > > > > > This works. Until we source a plugin after setting up bindings and the > > > plugin happens to hook zle-line-init without calling our hook. This > > > time it's the plugin breaking our code rather than vise versa. > > > > That plugin is broken. > > Before crossing a road on green light, I first check if there are cars > speeding through the intersection. It's illegal for them to do so, but > I'd rather turn my head than die being right. The plugin is something you installed in your own home directory of your own free will; the hypothesized driver was not placed on the road by you of your own free will. The two are not analogous. Complaining about not being able to do something because of a plugin you had installed is like complaining that you have to sleep with earplugs after inviting someone to practice playing the trumpet in the guest bedroom. > I don't know of a downside to key translation I mentioned earlier, so > I'm not even paying the price of turning my head when I use it (or > maybe I do and just don't know it?). If I were using terminfo to fetch > the escape codes for home and end keys, I would still have to hardcode > escape codes for other keys or key combinations as terminfo is rather > sparse in this regard, and I would still have to handle NumLock the > same way I do now. Am I missing something? Your argument boils down to saying you won't use the zle-line-init feature for anything because some plugin has appropriated it for itself. It seems that it was concluded under the constraint that the plugin must be installed. Just throw that constraint out and use the obvious solution: deinstall the plugin and use zle-line-init however you like. (That's the entire point of this thread: that users should be able to customize their configurations to their liking.) (Or fix the plugin, as I pointed out in the part of the mail you had snipped.) As to making home and end work, that's not zshrc's job. There is very little about the problem of mapping escape sequences to zle widgets that varies per user.