All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] help.autocorrect: do not run a command if the command given is junk
@ 2009-12-14 13:03 Johannes Sixt
  2009-12-14 13:29 ` Alex Riesen
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Johannes Sixt @ 2009-12-14 13:03 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Johannes Schindelin, Git Mailing List, Alex Riesen

From: Johannes Sixt <j6t@kdbg.org>

If a given command is not found, then help.c tries to guess which one the
user could have meant. If help.autocorrect is 0 or unset, then a list of
suggestions is given as long as the dissimilarity between the given command
and the candidates is not excessively high. But if help.autocorrect was
non-zero (i.e., a delay after which the command is run automatically), the
latter restriction on dissimilarity was not obeyed.

In my case, this happened:

 $ git ..daab02
 WARNING: You called a Git command named '..daab02', which does not exist.
 Continuing under the assumption that you meant 'read-tree'
 in 4.0 seconds automatically...

The similarity limit that this patch introduces is already used a few lines
later where the list of suggested commands is printed.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
---
 help.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/help.c b/help.c
index e8db31f..db888cf 100644
--- a/help.c
+++ b/help.c
@@ -331,7 +331,7 @@ const char *help_unknown_cmd(const char *cmd)
 	n = 1;
 	while (n < main_cmds.cnt && best_similarity == main_cmds.names[n]->len)
 		++n;
-	if (autocorrect && n == 1) {
+	if (autocorrect && n == 1 && best_similarity < 6) {
 		const char *assumed = main_cmds.names[0]->name;
 		main_cmds.names[0] = NULL;
 		clean_cmdnames(&main_cmds);
-- 
1.6.6.rc1.46.g1635

^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2009-12-15  7:57 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-14 13:03 [PATCH] help.autocorrect: do not run a command if the command given is junk Johannes Sixt
2009-12-14 13:29 ` Alex Riesen
2009-12-14 14:17   ` Johannes Schindelin
2009-12-14 14:16 ` Johannes Schindelin
2009-12-14 20:08 ` Junio C Hamano
2009-12-14 21:09   ` Johannes Schindelin
2009-12-14 21:47     ` Junio C Hamano
2009-12-14 22:04       ` Johannes Schindelin
2009-12-14 21:55   ` Johannes Sixt
2009-12-14 23:39     ` Junio C Hamano
2009-12-15  7:57       ` Johannes Sixt

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.