Allow list of arguments instead of string in config['editor']

This helps whenever your editor commandline needs to escape spaces,
for example:

    vim -c set\ filetype=markdown

can now go in your config file as:

    { "editor": ["vim", "-c", "set filetype=markdown"] }
This commit is contained in:
James D. Amberger 2018-08-08 05:01:07 -04:00
parent c0050c3d23
commit ec93ffcd16

View file

@ -130,7 +130,12 @@ def get_text_from_editor(config, template=""):
with codecs.open(tmpfile, 'w', "utf-8") as f:
if template:
f.write(template)
subprocess.call(config['editor'].split() + [tmpfile])
try:
iter(config['editor'])
except:
subprocess.call(config['editor'].split() + [tmpfile])
else:
subprocess.call(config['editor'] + [tmpfile])
with codecs.open(tmpfile, "r", "utf-8") as f:
raw = f.read()
os.remove(tmpfile)