# HG changeset patch # User Thomas Arendsen Hein # Date 1305538908 -7200 # Node ID 3b9a896af09c33bf34fcea4a173d59b80cfbed7c # Parent 473d0aaf765544020e53fe62d556c5fd519c00c4 paths: Add support for -q/--quiet Suppresses output (resolved paths or "not found!") when searching a path, similar to "grep -q". Sample usage: hg paths -q foo || echo "there is no foo" Just prints path names (instead of "name = result") when listing all path definitions, like "hg bookmarks -q". Sample usage: hg paths -q | while read i; do hg incoming "$i"; done diff -r 473d0aaf7655 -r 3b9a896af09c mercurial/commands.py --- a/mercurial/commands.py Mon May 16 11:14:06 2011 +0200 +++ b/mercurial/commands.py Mon May 16 11:41:48 2011 +0200 @@ -3591,6 +3591,9 @@ Show definition of symbolic path name NAME. If no name is given, show definition of all available names. + Option -q/--quiet suppresses all output when searching for NAME + and shows only the path names when listing all definitions. + Path names are defined in the [paths] section of your configuration file and in ``/etc/mercurial/hgrc``. If run inside a repository, ``.hg/hgrc`` is used, too. @@ -3613,13 +3616,17 @@ if search: for name, path in ui.configitems("paths"): if name == search: - ui.write("%s\n" % util.hidepassword(path)) + ui.status("%s\n" % util.hidepassword(path)) return - ui.warn(_("not found!\n")) + if not ui.quiet: + ui.warn(_("not found!\n")) return 1 else: for name, path in ui.configitems("paths"): - ui.write("%s = %s\n" % (name, util.hidepassword(path))) + if ui.quiet: + ui.write("%s\n" % name) + else: + ui.write("%s = %s\n" % (name, util.hidepassword(path))) def postincoming(ui, repo, modheads, optupdate, checkout): if modheads == 0: diff -r 473d0aaf7655 -r 3b9a896af09c tests/test-paths.t --- a/tests/test-paths.t Mon May 16 11:14:06 2011 +0200 +++ b/tests/test-paths.t Mon May 16 11:41:48 2011 +0200 @@ -25,6 +25,17 @@ $ SOMETHING=/foo hg paths dupe = $TESTTMP/b expand = /foo/bar + $ hg paths -q + dupe + expand + $ hg paths dupe + $TESTTMP/b + $ hg paths -q dupe + $ hg paths unknown + not found! + [1] + $ hg paths -q unknown + [1] $ cd .. 'file:' disables [paths] entries for clone destination