From patchwork Wed Nov 17 05:46:38 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Foo Chuan Wei X-Patchwork-Id: 34558 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 9767B27BBE1; Wed, 17 Nov 2021 05:47:26 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, T_DKIM_INVALID,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id D5E5D27BBE3 for ; Wed, 17 Nov 2021 05:47:25 +0000 (GMT) Received: from localhost ([::1]:35228 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mnDn3-0001ij-1M for patchwork@mira.cbaines.net; Wed, 17 Nov 2021 00:47:25 -0500 Received: from eggs.gnu.org ([209.51.188.92]:41156) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mnDmg-0001hR-Ba for guix-patches@gnu.org; Wed, 17 Nov 2021 00:47:05 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:48199) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mnDmg-0003vE-3K for guix-patches@gnu.org; Wed, 17 Nov 2021 00:47:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mnDmg-0004a1-1Z for guix-patches@gnu.org; Wed, 17 Nov 2021 00:47:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#51912] [PATCH 2/2] gnu: Add cl-terminal-keypress. References: In-Reply-To: Resent-From: Foo Chuan Wei Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 17 Nov 2021 05:47:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 51912 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 51912@debbugs.gnu.org Received: via spool by 51912-submit@debbugs.gnu.org id=B51912.163712801017571 (code B ref 51912); Wed, 17 Nov 2021 05:47:01 +0000 Received: (at 51912) by debbugs.gnu.org; 17 Nov 2021 05:46:50 +0000 Received: from localhost ([127.0.0.1]:59744 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mnDmU-0004ZL-HS for submit@debbugs.gnu.org; Wed, 17 Nov 2021 00:46:50 -0500 Received: from mail-psaapc01olkn2094.outbound.protection.outlook.com ([40.92.52.94]:16318 helo=APC01-PSA-obe.outbound.protection.outlook.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mnDmS-0004Z1-Tl for 51912@debbugs.gnu.org; Wed, 17 Nov 2021 00:46:49 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=F0oVlFsv8D5Af1/9zjnRxqvVOLswLmPqzolbP4lLQ33VsfFZm9ovtSTsvY59PrpynGPTd9noLB1uCUZeUpVbPG0tPget74EGbLfmdOErl6FEPaSVZvfpYjLLOfccMk63/kLE/6d/Z7hlIFtgdC/sQOPwIvoZ7T+IpR9VMxiC1s2Uvy84cNcyeuWtjZT+XJOij/7m8tR8+v/whnDfeHRIoefswEZ0V31DkQ5eGY6h/Qkv5MfcUXzCgCMuRNXAO1rw5FTtp2PHH0Wv22wWt9cqQAjZY5hRp7K/4PwclEoqkDEZYK/pRe77ytL2kphaNqaDw1uU+lK2tU45Bbn7hEtI1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=joXVI9UdrpFJF+WKVA5hy3lBZ+aJOwqzwOr0zu8u5n8=; b=eBetqKdnXIFeblV34IIT2YJRJfKjOhf33EUhrJQgVAgTJYlFMnKa1pgHAoNXf6Ejmjh9+RlA1sacMgyQfq0+CI4b7/GOQ6mLOE1aikY20eXVHp3VZ2w1UbMqjbGFgo3XJqNVLAePhYMvToWLRAtPk0O/LDb9CE1mNK8k1dCnooW5M7hkyhcTNmyFYdgWDKCrc1xpzb+kPBxqF+GMGE8j6YJ1bxaRSO49Aiwp6CRAKdqvP7ewT0hOaOg0kFKyAYkvNCUt+llhx/dgNektnxAbHf4W1NdgoyeFiP8+FdwWb2FXWTccKVE1jAl6vd4jC0yT2+UBFBlPn2Op+PFxbNzFuw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=joXVI9UdrpFJF+WKVA5hy3lBZ+aJOwqzwOr0zu8u5n8=; b=IRARc8QD4JlPbbt1a5kfAvEuvLgEuDHs9bxAH6C1prw1vU3xVRDfwJROouRJMQw8BILgq+e/fYjdYyLm6Htq/Ria52iXq5Kh/12Z61OQfB75cFv+dNYWBkGXY9KEtkAn1GrUW6FiKEzvKcfiK1BJmGWmGM65wYSAM4cSWqaGLBNxZxdc563PcIGZKhSofOYY8ztIF5AlyDjAa37i70i6RK/uco6zG4xqvwAf8Y5a1IVbt8kTzk8oXzPw+TM2oepMYVvZeYcxLK1DJ+DgwOllYZjYQ/ca+ZWRLt+T0BBpi4INggW4t8ZkAxyCvNSzdKjeRftHpAWHjMCX7AJza5mgww== Received: from PU1PR01MB2155.apcprd01.prod.exchangelabs.com (2603:1096:803:1c::21) by PU1PR01MB2028.apcprd01.prod.exchangelabs.com (2603:1096:803:1d::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.26; Wed, 17 Nov 2021 05:46:41 +0000 Received: from PU1PR01MB2155.apcprd01.prod.exchangelabs.com ([fe80::258d:e124:fd3a:40ee]) by PU1PR01MB2155.apcprd01.prod.exchangelabs.com ([fe80::258d:e124:fd3a:40ee%7]) with mapi id 15.20.4690.027; Wed, 17 Nov 2021 05:46:41 +0000 Date: Wed, 17 Nov 2021 05:46:38 +0000 From: Foo Chuan Wei Message-ID: Content-Disposition: inline X-TMN: [HN7UtI5bbQ05SrGvo+SzNwuZUF6Zo9v3] X-ClientProxiedBy: HKAPR04CA0005.apcprd04.prod.outlook.com (2603:1096:203:d0::15) To PU1PR01MB2155.apcprd01.prod.exchangelabs.com (2603:1096:803:1c::21) X-Microsoft-Original-Message-ID: <20211117054638.cy5hrcwnbc2ln6n7@main> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from main (202.160.33.53) by HKAPR04CA0005.apcprd04.prod.outlook.com (2603:1096:203:d0::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.26 via Frontend Transport; Wed, 17 Nov 2021 05:46:40 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 12b24489-5f17-42b6-a06a-08d9a98da134 X-MS-TrafficTypeDiagnostic: PU1PR01MB2028: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9eP7Z7n7sTXLVqKQJjC4vgTN4hKGksKi3ivuGGuv7iF+WSJOg/zHOKM5/FuebgKi7j917i+wdNlDLToyRQ9pfLI9gVeuo96Bb6PTux2qE0/8b3oSHRTuOEZm56Op/MKlIIoWkqRebhEVFkr+JMKXLpX6Jn5wUSxOIEsUYfPQpoCLR7ZEugYk9qusTR+IwqZfNs0Nm/jrvezM7q8NGDy/LXPVmMHwErKgebOXlikyY5jUDJnLcUEK3TAPBo6uWvAufhI66JVJyyXZ0QBkhczFqfjMZ3+eUVkEVBx2VHnO+8h+zgwg2CGI2WBW6ZaGUCPvEs2dY7hA3NFiGamgjaFsmOXF06LgsutVq4C/2pHHpB6QOuOpbXoIXaihK71gMoA0DY0QJ9DkokifH5cmWIabOJ2V5HUL+/SDxgQhimqW9uEafv8LCnjGmWL1zn7ZVhWa/BWURJ+jIqpRWNBHRFdtWC73iysdSwLTYQMH3qX2FmZ1YTg1IIv3uUFrD+r0OVwL90MnPbBdRVLvR9iHeod5DM+O+WtLotIB1gX+a4uSi7uRiVKjaiq15p17DeYHSiV670ItAZYw0yJ25SNfqt2gJg== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: S7nIZPEIabSNWaBW26EVBduqrbGLr8+nhc3p4oV+jBVxhtWU7YbAB8Lt1Oqeki0Humix5szshxN8ZWC8Pesm+3wKqErfzKNsoXiNgMU/GVSTQhw213x6+WWn+s3GgB0+nndAmOTNTdJmQbkF+wCWk506QWCqQPsv3kdX17UfqcRTdJlsMVr/GR5kUNr3PxfozdQoO+gELfxVg+jpSCvPfJbn4xMCnZMv4dOvBBWhSViByWi18b2nIQM9xsyUtzKDs5s8cXd5uh48AHhoZ0mtHA7hDAK833mknxVa3KN7WVXK/wqwKU07sCeSr64Z73sqLauqfnUUnmV0B2tPkHFehgzaZk+EjBrRusRFsL9hHsw0wLQkpOVCWFuOOyKqhQcDTLUZNcj630tEO5q5Qg+g9xOT457p3eu2pkICspv7YCJwpufpIUQIZoD2/faMXCnhqMWSgVa+RZLkjLEaLjXfmXk0srviwyqvk8alQfFsUJ8cxgeCpGM6iHmiseARQ0ofbWs9BUJAgSZXj9E+Kj8HdzPNbtWszFkmJsa3OZBtRI4XTi4oy8zmd8t8QYqe03rVvfNSZf8zA9CkQ5aezHyNCTKDMgZVGc/YqmFoWLUnLawh7Sc/TqReuaRmzm5xWxJ5QJq/BP73ZlcMyE2zegi7d88X/qooC//8hweUq1A0B/byPYhjXtNNo4N+YtJ6zhzbYXb3cgxUf/d/Lgn6d+kZdQ== X-OriginatorOrg: sct-15-20-3174-20-msonline-outlook-5c337.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: 12b24489-5f17-42b6-a06a-08d9a98da134 X-MS-Exchange-CrossTenant-AuthSource: PU1PR01MB2155.apcprd01.prod.exchangelabs.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Nov 2021 05:46:41.2148 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PU1PR01MB2028 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 * gnu/packages/lisp-xyz.scm (cl-terminal-keypress, ecl-terminal-keypress, sbcl-terminal-keypress): New variables. --- gnu/packages/lisp-xyz.scm | 42 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index b63c89012a..fbf1a0ac8e 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -18750,6 +18750,48 @@ symbols: @code{with-raw-io}, @code{read-char}, and @code{read-line}.") (define-public ecl-trivial-raw-io (sbcl-package->ecl-package sbcl-trivial-raw-io)) +(define-public sbcl-terminal-keypress + (let ((commit "2ef48c045aa627229764b2aa393a83d392d93d08") + (revision "1")) + (package + (name "sbcl-terminal-keypress") + (version (git-version "0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/eudoxia0/terminal-keypress") + (commit commit))) + (file-name (git-file-name "cl-terminal-keypress" version)) + (sha256 + (base32 "11c4krpq5x55qkchx6ykcnb455ssb4r3jjywx3c3irfrkj733ybp")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("alexandria" ,sbcl-alexandria) + ("trivial-raw-io" ,sbcl-trivial-raw-io))) + (native-inputs + `(("fiveam" ,sbcl-fiveam))) + (home-page "https://github.com/eudoxia0/terminal-keypress") + (synopsis "Read keyboard events in the terminal from Common Lisp") + (description + "This is a library for reading semi-raw user input from terminals. +Semi-raw as in, we can't detect if the user pressed the @code{Control} key +alone, and the function keys are a mystery. What is supported, however, is: + +@itemize +@item Regular characters +@item Control+[key] +@item Alt+[key] +@item Control+Alt+[key] +@end itemize") + (license license:expat)))) + +(define-public cl-terminal-keypress + (sbcl-package->cl-source-package sbcl-terminal-keypress)) + +(define-public ecl-terminal-keypress + (sbcl-package->ecl-package sbcl-terminal-keypress)) + (define-public sbcl-periodic-table (package (name "sbcl-periodic-table")