diff --git a/mercurial/commands.py b/mercurial/commands.py --- a/mercurial/commands.py +++ b/mercurial/commands.py @@ -980,8 +980,8 @@ def bookmark(ui, repo, *names, **opts): raise error.Abort(_("--rev is incompatible with --%s") % action) if names and action == 'active': raise error.Abort(_("NAMES is incompatible with --active")) - if inactive and action == 'active': - raise error.Abort(_("--inactive is incompatible with --active")) + if inactive and action in {'delete', 'active'}: + raise error.Abort(_("--inactive is incompatible with --%s") % action) if not names and action in {'add', 'delete'}: raise error.Abort(_("bookmark name required")) diff --git a/tests/test-bookmarks.t b/tests/test-bookmarks.t --- a/tests/test-bookmarks.t +++ b/tests/test-bookmarks.t @@ -327,6 +327,12 @@ delete nonexistent bookmark abort: bookmark 'A' does not exist [255] +delete with --inactive + + $ hg bookmark -d --inactive Y + abort: --inactive is incompatible with --delete + [255] + bookmark name with spaces should be stripped $ hg bookmark ' x y '