title: Python3 Argparse metavar brackets parsed weirdly
body: <p>I am using argparse in python3, and I get some strange things:</p>
  
  <p>A short version of code that I'm using is:</p>
  
  <pre><code>argparser = argparse.ArgumentParser(description='add/remove items')
  argparser.add_argument('-a', action='append',     metavar="Item(s)", help='add one or more items to the list')
  argparser.add_argument('-r', action='append',     metavar="Item(s)", help='remove one or more items from the list')
  args = argparser.parse_args()
  </code></pre>
  
  <p>When I run the script with the -h flag, I get this output:</p>
  
  <pre><code>usage: test.py [-h] [-a Items)] [-r Item(s]
  
  add/remove items
  
  optional arguments:
    -h, --help  show this help message and exit
    -a CPE(s)   add one or more items to the list
    -r CPE(s)   remove one or more items from the list
  </code></pre>
  
  <p>Mind the weird parsing of the brackets in the first line.</p>
  
  <p>What causes this, and how do I solve this?</p>