From patchwork Fri Jun 24 15:23:14 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?QW5kcsOpIEEuIEdvbWVz?= X-Patchwork-Id: 40300 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 864CB27BBEA; Fri, 24 Jun 2022 16:24:13 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id A902227BBE9 for ; Fri, 24 Jun 2022 16:24:12 +0100 (BST) Received: from localhost ([::1]:58774 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o4lAJ-0008DM-Qx for patchwork@mira.cbaines.net; Fri, 24 Jun 2022 11:24:11 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36774) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o4lAA-0008D0-4c for guix-patches@gnu.org; Fri, 24 Jun 2022 11:24:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:49327) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o4lA9-0005wd-Qw for guix-patches@gnu.org; Fri, 24 Jun 2022 11:24:01 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1o4lA9-00051Y-O3 for guix-patches@gnu.org; Fri, 24 Jun 2022 11:24:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#56195] [PATCH]: Add sbcl-nkeymaps Resent-From: =?utf-8?b?QW5kcsOp?= A. Gomes Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 24 Jun 2022 15:24:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 56195 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 56195@debbugs.gnu.org Cc: pierre@atlas.engineer X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.165608420119231 (code B ref -1); Fri, 24 Jun 2022 15:24:01 +0000 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?b?QW5kcsOp?= A. Gomes 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 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-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches Hi Guix, Please find the patch attached. Thanks. From 1f0680c2ec15ccebf286054730469b2121d57f4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20A=2E=20Gomes?= 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 (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 Emacs. +@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 after +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 bound, +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 keymaps +for lookup-key). + +@item Key remapping à-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)) -- 2.36.1