Support quoting for command arguments
I've encountered a problem when trying to use a passphrase with spaces in `/olm import`. The arguments were just broken by spaces. shlex has more advanced splitting which allows taking multi-word arguments in quotes.
This commit is contained in:
parent
2b668080bd
commit
f05a55a0af
1 changed files with 2 additions and 1 deletions
|
@ -19,6 +19,7 @@ from __future__ import unicode_literals
|
||||||
import argparse
|
import argparse
|
||||||
import os
|
import os
|
||||||
import re
|
import re
|
||||||
|
import shlex
|
||||||
from builtins import str
|
from builtins import str
|
||||||
from future.moves.itertools import zip_longest
|
from future.moves.itertools import zip_longest
|
||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
|
@ -60,7 +61,7 @@ class WeechatCommandParser(object):
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def _run_parser(parser, args):
|
def _run_parser(parser, args):
|
||||||
try:
|
try:
|
||||||
parsed_args = parser.parse_args(args.split())
|
parsed_args = parser.parse_args(shlex.split(args))
|
||||||
return parsed_args
|
return parsed_args
|
||||||
except ParseError:
|
except ParseError:
|
||||||
return None
|
return None
|
||||||
|
|
Loading…
Reference in a new issue