From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id EFRTJQjFAWDYdAAA0tVLHw (envelope-from ) for ; Fri, 15 Jan 2021 16:38:32 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id SJAaIQjFAWDwHwAAB5/wlQ (envelope-from ) for ; Fri, 15 Jan 2021 16:38:32 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 8B2EA9403D5 for ; Fri, 15 Jan 2021 16:38:31 +0000 (UTC) Received: from localhost ([::1]:39092 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1l0S7K-0005Gr-CX for larch@yhetil.org; Fri, 15 Jan 2021 11:38:30 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57912) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l0S6s-0004zW-FO for guix-patches@gnu.org; Fri, 15 Jan 2021 11:38:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:58237) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1l0S6s-0007ax-5s for guix-patches@gnu.org; Fri, 15 Jan 2021 11:38:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1l0S6s-0006I7-3M for guix-patches@gnu.org; Fri, 15 Jan 2021 11:38:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#45893] [PATCH 0/2] DRAFT: Hint for options. Resent-From: zimoun Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 15 Jan 2021 16:38:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 45893 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 45893@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.161072866724159 (code B ref -1); Fri, 15 Jan 2021 16:38:01 +0000 Received: (at submit) by debbugs.gnu.org; 15 Jan 2021 16:37:47 +0000 Received: from localhost ([127.0.0.1]:41549 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l0S6d-0006Hb-6h for submit@debbugs.gnu.org; Fri, 15 Jan 2021 11:37:47 -0500 Received: from lists.gnu.org ([209.51.188.17]:59300) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1l0S6a-0006HS-9O for submit@debbugs.gnu.org; Fri, 15 Jan 2021 11:37:46 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57840) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l0S6Z-0004N6-DO for guix-patches@gnu.org; Fri, 15 Jan 2021 11:37:43 -0500 Received: from mail-wr1-x42a.google.com ([2a00:1450:4864:20::42a]:34617) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1l0S6Y-0007Rq-1j for guix-patches@gnu.org; Fri, 15 Jan 2021 11:37:43 -0500 Received: by mail-wr1-x42a.google.com with SMTP id q18so9926533wrn.1 for ; Fri, 15 Jan 2021 08:37:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=JMZOLS3ugLGM82Mz74arzHiwXl2cpsvWRqGHX6Ycw4Q=; b=DRuzG74eEpVXsMry+ys74AqR2Y93wg8QnsbXbxIiNHsNtWkfd2X8ApUGJfivp4OpHx 019GilUntVJYBAZTgdXMohzf0rXs5aw3Vcr95N9IAxZp1DIMC6PaEXM8am/MbNJd141B NLRSJVcEAuT7BpYrhDEkmxwEF63A9OMihwzwHwIO0Tn53BoL3cMoqtEBWD8xKZa/vDJD O+HAJJkUn7cjO4pccRWl1Qbrb0BEJpe+/Y0E6plcJzp97weG3/kbKKw6aWBVh94zt9Kh yBgOWAZSHGmIZyvKb3uUxQIyB/Xw7W/d6fkoUGmoALF5xXxwV8KXj6PsnRcwnFnIwNLJ xjYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=JMZOLS3ugLGM82Mz74arzHiwXl2cpsvWRqGHX6Ycw4Q=; b=mD32XPVcibwcj136uSyaUccq1ZYLnfuu3zUJjmN3gURSaSm9uF2OYLUV7XhRTFU4fg RrD58vTI5zyorTzYN4vzSC4pvCZcY3YJ18E+DpLo39mn7z8oy4oIkLn3EUaGaoBzCCJl t9kENrElj20A/Zfs7Z23PHrjQK1gE7QTW3f59XxpXnkiIY9bZ6Z2s1dsIcKcnTHQpuRB fpdq8MAncVh1a4MeCqq1U+8iyHY3SK7YnEvEtNjhlwUuNlxK2i6PEecyYDW3XCtPyS9V dQYQDQt8VvRiwCYNwQN3NnLIl+bexv0IzxKW05Kml8BMitUkGrGI3B4ehEC7CGr064GA mrPQ== X-Gm-Message-State: AOAM533a00QH3eIao2L1Z8RHeEeKtFm1HdTUVKQvF1EZfqtuIya6xRnC NYyjsHF98o9THJugZwjIpU0yF/qnk6s= X-Google-Smtp-Source: ABdhPJwYC7MJ9XJieOMqDJ/kICFjdQ58cuzp0PeFFjqO/GUIxzSGkpPP3AqEw39qH3SeCBXDUomqXA== X-Received: by 2002:a5d:44c6:: with SMTP id z6mr14069124wrr.306.1610728660652; Fri, 15 Jan 2021 08:37:40 -0800 (PST) Received: from localhost.localdomain ([193.48.40.110]) by smtp.gmail.com with ESMTPSA id r20sm12535154wmh.15.2021.01.15.08.37.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Jan 2021 08:37:40 -0800 (PST) From: zimoun Date: Fri, 15 Jan 2021 17:37:32 +0100 Message-Id: <20210115163732.53665-1-zimon.toutoune@gmail.com> X-Mailer: git-send-email 2.29.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=2a00:1450:4864:20::42a; envelope-from=zimon.toutoune@gmail.com; helo=mail-wr1-x42a.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 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+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: 2.74 Authentication-Results: aspmx1.migadu.com; dkim=fail (headers rsa verify failed) header.d=gmail.com header.s=20161025 header.b=DRuzG74e; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: 8B2EA9403D5 X-Spam-Score: 2.74 X-Migadu-Scanner: scn0.migadu.com X-TUID: nr1MOvUPA5tW Hi, The first patch uniformize. If this proposal is ok, then more Guix scripts have to be replaced; so the v2 could do that. The second patch is the interesting one. The naive implementation of Levenshtein distance by recursion is enough here when memoize is applied. However, the 'car' and 'cdr' is not in the Guix style, feedback welcome. Maybe abuse of fold, again feeback welcome. Well, the current result is: --8<---------------cut here---------------start------------->8--- $ ./pre-inst-env guix show --lead-paht hello hint: Do you mean `load-path'? guix show: error: lead-paht: unrecognized option --8<---------------cut here---------------end--------------->8--- All the best, simon zimoun (2): scripts: search, show: Replace 'args-fold*' by 'parse-command-line'. guix: scripts: Add hint for option typo. guix/scripts.scm | 58 +++++++++++++++++++++++++++++++++++++++++ guix/scripts/search.scm | 7 ++--- guix/scripts/show.scm | 8 ++---- 3 files changed, 62 insertions(+), 11 deletions(-) base-commit: c03875b0361f114634caeb54935fe37a9b7b05af -- 2.29.2