emerge: add --misspell-suggestions=n option
authorZac Medico <zmedico@gentoo.org>
Thu, 28 Apr 2011 16:10:02 +0000 (09:10 -0700)
committerZac Medico <zmedico@gentoo.org>
Wed, 4 May 2011 19:33:27 +0000 (12:33 -0700)
This will fix bug #363137.

man/emerge.1
pym/_emerge/depgraph.py
pym/_emerge/help.py
pym/_emerge/main.py

index 0be6e299355b7cfa99b9251a4bf1175263cffabc..5441b0fb2da3e49cf055ee620bc623fd930f53b0 100644 (file)
@@ -1,4 +1,4 @@
-.TH "EMERGE" "1" "Mar 2011" "Portage VERSION" "Portage"
+.TH "EMERGE" "1" "Apr 2011" "Portage VERSION" "Portage"
 .SH "NAME"
 emerge \- Command\-line interface to the Portage system
 .SH "SYNOPSIS"
@@ -428,6 +428,12 @@ order to avoid excess load. See \fBmake\fR(1) for information about
 analogous options that should be configured via \fBMAKEOPTS\fR in
 \fBmake.conf\fR(5).
 .TP
+.BR "\-\-misspell\-suggestions < y | n >"
+Enable or disable misspell suggestions. By default, emerge will show
+a list of packages with similar names when a package doesn't exist.
+The \fIEMERGE_DEFAULT_OPTS\fR variable may be used to disable this
+option by default.
+.TP
 .BR "\-\-newuse " (\fB\-N\fR)
 Tells emerge to include installed packages where USE
 flags have changed since compilation. This option
index fabc2df10a814ef8a3d2bda6f0dbfdd4ef432f13..e0c3e22c6dfeead2eeab7241aaa349bfca1beace 100644 (file)
@@ -2746,7 +2746,9 @@ class depgraph(object):
                        mask_docs = True
                else:
                        writemsg_stdout("\nemerge: there are no ebuilds to satisfy "+green(xinfo)+".\n", noiselevel=-1)
-                       if isinstance(myparent, AtomArg):
+                       if isinstance(myparent, AtomArg) and \
+                               self._frozen_config.myopts.get(
+                               "--misspell-suggestions", "y") != "n":
                                cp = myparent.atom.cp.lower()
                                cat, pkg = portage.catsplit(cp)
                                if cat == "null":
index bc7811d91142f6bd7a64bf1d22ce84d82e8138af..9ba7892e5659d3490ab9067ec8a92881bdf7c65b 100644 (file)
@@ -512,6 +512,15 @@ def help(myopts, havecolor=1):
                for line in wrap(desc, desc_width):
                        print(desc_indent + line)
                print()
+               print("       " + green("--misspell-suggestions") + " < %s | %s >" % \
+                       (turquoise("y"), turquoise("n")))
+               desc = "Enable or disable misspell suggestions. By default, " + \
+                       "emerge will show a list of packages with similar names " + \
+                       "when a package doesn't exist. The EMERGE_DEFAULT_OPTS " + \
+                       "variable may be used to disable this option by default"
+               for line in wrap(desc, desc_width):
+                       print(desc_indent + line)
+               print()
                print("       "+green("--newuse")+" ("+green("-N")+" short option)")
                desc = "Tells emerge to include installed packages where USE " + \
                        "flags have changed since compilation. This option " + \
index e89e8bbf104189608f7de6aed4fabe6efb8d57b5..fa83556160aac2bfa0ba02c6507febbf1c95f22d 100644 (file)
@@ -669,6 +669,12 @@ def parse_opts(tmpcmdline, silent=False):
                        "action" : "store"
                },
 
+               "--misspell-suggestions": {
+                       "help"    : "enable package name misspell suggestions",
+                       "type"    : "choice",
+                       "choices" : ("y", "n")
+               },
+
                "--with-bdeps": {
                        "help":"include unnecessary build time dependencies",
                        "type":"choice",