youtube-dl

Another place where youtube-dl lives on
git clone git://git.oshgnacknak.de/youtube-dl.git
Log | Files | Refs | README | LICENSE

commit e66dca5e4aa9e55762a5541dc1b0a332208451ee
parent 3f1ce16876931f2aa57b566736d875a760f35f43
Author: Fabian Stahl <fabian.m.stahl@posteo.de>
Date:   Wed, 14 Sep 2016 17:28:17 +0200

Add option --config-location

A configfile can now be passed to youtube_dl.

undo changes

Raise parser error if file not found, change to user_conf

change metavar hand helptext for --configfile

Fix help for --configfile

Update help for --configfile

Numbering placeholder in configfile error msg

minor fix

Change option --configfile top --config-file

Fix -config-file error

Diffstat:
Myoutube_dl/__init__.py | 1+
Myoutube_dl/options.py | 14++++++++++++++
2 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/youtube_dl/__init__.py b/youtube_dl/__init__.py @@ -405,6 +405,7 @@ def _real_main(argv=None): 'postprocessor_args': postprocessor_args, 'cn_verification_proxy': opts.cn_verification_proxy, 'geo_verification_proxy': opts.geo_verification_proxy, + 'configfile': opts.configfile, } diff --git a/youtube_dl/options.py b/youtube_dl/options.py @@ -179,6 +179,10 @@ def parseOpts(overrideArguments=None): 'Do not read the user configuration in ~/.config/youtube-dl/config ' '(%APPDATA%/youtube-dl/config.txt on Windows)') general.add_option( + '--config-file', + dest='configfile', metavar='FILE', + help='File to read configuration from.') + general.add_option( '--flat-playlist', action='store_const', dest='extract_flat', const='in_playlist', default=False, @@ -845,19 +849,29 @@ def parseOpts(overrideArguments=None): return conf command_line_conf = compat_conf(sys.argv[1:]) + opts, args = parser.parse_args(command_line_conf) if '--ignore-config' in command_line_conf: system_conf = [] user_conf = [] + elif '--config-file' in command_line_conf: + if not os.path.isfile(opts.configfile): + parser.error('Config file {0} not found.'.format(opts.configfile)) + else: + user_conf = _readOptions(opts.configfile) + system_conf = [] + else: system_conf = _readOptions('/etc/youtube-dl.conf') if '--ignore-config' in system_conf: user_conf = [] else: user_conf = _readUserConf() + argv = system_conf + user_conf + command_line_conf opts, args = parser.parse_args(argv) + if opts.verbose: write_string('[debug] System config: ' + repr(_hide_login_info(system_conf)) + '\n') write_string('[debug] User config: ' + repr(_hide_login_info(user_conf)) + '\n')