From debbugs-submit-bounces@debbugs.gnu.org Fri Jun 24 11:23:21 2022 Received: (at submit) by debbugs.gnu.org; 24 Jun 2022 15:23:21 +0000 Received: from localhost ([127.0.0.1]:43217 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o4l9V-000507-GT for submit@debbugs.gnu.org; Fri, 24 Jun 2022 11:23:21 -0400 Received: from lists.gnu.org ([209.51.188.17]:37976) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o4l9U-0004zz-21 for submit@debbugs.gnu.org; Fri, 24 Jun 2022 11:23:21 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36636) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o4l9T-00088t-T5 for guix-patches@gnu.org; Fri, 24 Jun 2022 11:23:19 -0400 Received: from mail-wr1-x42f.google.com ([2a00:1450:4864:20::42f]:44952) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o4l9S-0005ue-51 for guix-patches@gnu.org; Fri, 24 Jun 2022 11:23:19 -0400 Received: by mail-wr1-x42f.google.com with SMTP id e10so3539307wra.11 for ; Fri, 24 Jun 2022 08:23:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:user-agent:mime-version; bh=UIxKyyeAMg9QZ6A7X/PWQj7wRO7tEC2pQ6peEVnCDp8=; b=BcUJxrKLkk1i4+D6rhBGRhQh/r+IidqFkxMHpLw5pH8uHmn64UtpPNZBjIIClhDEIm ferDJJX6jMdFgvHz31yqQoNgGVeEkM6tLclIoV0t3D1dlv+QCRZMQ+FjZDY/CYj5UBrJ aPy5X1HKD+Hq3EEpn3MvbVsVfHBSr/hNcCqSB+2C8ELV/YOl4Q9xsxHB/wMUKDVC18B2 k7NhTgfxWqWHbIgoUFYr1MSJ9/Z/x70zgNOHlljT/6aLyd10gIqJO2gRie4JGNtsmu6r yjCyM5J5PK7s6R7OukJpWIdSZu1PbDphEBdnxyBPscrNV/Cby85f33TpL2mgmBwKxtYC gcGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:user-agent :mime-version; bh=UIxKyyeAMg9QZ6A7X/PWQj7wRO7tEC2pQ6peEVnCDp8=; b=CvBOC1vumJhbydNEjPbYwVJHtQthmAPil0LLuA5tNL/be9TXjwZx+gbWw/OLaEdZwR /c0qRZ3QUWPZ0DFiLzK/8P9KXuzudu8iLEmuYCYUnjmHvQGMy6UGzYSRCBz+8q8ORpXi 7Gvezdky44Xcx0ln/R+IXtWr5wl9asR/pI9JcqvMP7mjqalAg77WAgZYN0qLlxlZ30Zx APiASMqfc+NxedIttu6Z18XA6mdBUiLi4a5PKFMwZK6IeXv0f3C1btKfgv7tIqHrCOqB C014C9uiT+da9oUMu/Mu4EOxaWE5wO5KAB2DNtYQsGUgfvxvHnkBz5gfxKoPvxkkLQAX jgww== X-Gm-Message-State: AJIora8gobmWZ8Z3gKB7hk6fGOwaDmDHHUfZeLq6uQaKhnRJNyjbKH+N gqjJ4Y5he7RQTybtvdp+aoo= X-Google-Smtp-Source: AGRyM1tS8IftvwPpBvi0QwoQ7oil6f/bFShBPdxM+O4gzmouJwdZuj5QclbY4zUilWtIopTEJ1SBsQ== X-Received: by 2002:adf:fd84:0:b0:21a:3d9d:dfa5 with SMTP id d4-20020adffd84000000b0021a3d9ddfa5mr13676920wrr.345.1656084196519; Fri, 24 Jun 2022 08:23:16 -0700 (PDT) Received: from guix-xps13 ([2001:818:daa9:6700:f21c:5ab6:8d75:5824]) by smtp.gmail.com with ESMTPSA id z2-20020a5d44c2000000b0021a3d94c7bdsm2627066wrr.28.2022.06.24.08.23.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 24 Jun 2022 08:23:15 -0700 (PDT) From: =?utf-8?Q?Andr=C3=A9_A=2E_Gomes?= To: guix-patches@gnu.org Subject: [PATCH]: Add sbcl-nkeymaps Date: Fri, 24 Jun 2022 16:23:14 +0100 Message-ID: <877d56jdb1.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=2a00:1450:4864:20::42f; envelope-from=andremegafone@gmail.com; helo=mail-wr1-x42f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit Cc: pierre@atlas.engineer X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi Guix, Please find the patch attached. Thanks. --=20 Andr=C3=A9 A. Gomes "You cannot even find the ruins..." --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: attachment; filename=0001-gnu-Add-sbcl-nkeymaps.patch Content-Transfer-Encoding: quoted-printable From 1f0680c2ec15ccebf286054730469b2121d57f4b Mon Sep 17 00:00:00 2001 From: =3D?UTF-8?q?Andr=3DC3=3DA9=3D20A=3D2E=3D20Gomes?=3D Date: Fri, 24 Jun 2022 16:19:26 +0100 Subject: [PATCH] gnu: Add sbcl-nkeymaps. * gnu/packages/lisp-xyz.scm (sbcl-nkeymaps): New variable. --- gnu/packages/lisp-xyz.scm | 73 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index a88f19e28e..7cf7943b7f 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -21467,3 +21467,76 @@ (define-public cl-clog =20 (define-public ecl-clog (sbcl-package->ecl-package sbcl-clog)) + +(define-public sbcl-nkeymaps + (package + (name "sbcl-nkeymaps") + (version "0.1.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/atlas-engineer/nkeymaps") + (commit version))) + (file-name (git-file-name "nkeymaps" version)) + (sha256 + (base32 + "0jiw9k4041mqdjl06q1haf5bsnz8f2xk9ajkismv0yjx8cdqsi7r")))) + (build-system asdf-build-system/sbcl) + (inputs + (list sbcl-alexandria + sbcl-cl-str + sbcl-fset + sbcl-trivial-package-local-nicknames)) + (native-inputs + (list sbcl-prove)) + (home-page "https://github.com/atlas-engineer/nkeymaps") + (synopsis "Keymap facility for Common Lisp") + (description "Inspired by Emacsy (keymap.scm) which is inspired by Ema= cs. +@itemize + +@item Support prefix keys to other keymaps. For instance, if you prefix +my-mode-map with C-c, then all bindings for my-mode will be accessible aft= er +pressing C-c. + +@item List all bindings matching a given prefix. (Also known as which-key = in +Emacs.) + +@item List the bindings associated to a command. + +@item Support multiple inheritance. + +@item Support keycode. + +@item Validate keyspec at compile time. + +@item define-key can set multiple bindings in a single call. + +@item Support multiple scheme to make it easy to switch between, say, +Emacs-style and VI-style bindings. This orthogonality to keymaps composes +better than having multiple keymaps: changing scheme applies to the entire +program, which is easier than looping through all keymaps to change them. + +@item Translate keyspecs as a fallback. For instance if shift-a is not bou= nd, +check A. + +@item Behaviour can be customized with global parameters such as +*print-shortcut*. + +@item The compose function can merge multiple keymaps together. + +@item Support multiple arguments when that makes sense (e.g. multiple keym= aps +for lookup-key). + +@item Key remapping =C3=A0-la Emacs. + +@item Typed keymaps, i.e. keymaps where bound values can only be of a given +type. This is convenient to catch typos, for instance when binding 'FOO +instead of #'FOO.") + (license license:expat))) + +(define-public cl-nkeymaps + (sbcl-package->cl-source-package sbcl-nkeymaps)) + +(define-public ecl-nkeymaps + (sbcl-package->ecl-package sbcl-nkeymaps)) --=20 2.36.1 --=-=-=--