ThirdParty/Pygments/pygments/cmdline.py

changeset 2426
da76c71624de
parent 1705
b0fbc9300f2b
child 2525
8b507a9a2d40
equal deleted inserted replaced
2425:ace8a08028f3 2426:da76c71624de
3 pygments.cmdline 3 pygments.cmdline
4 ~~~~~~~~~~~~~~~~ 4 ~~~~~~~~~~~~~~~~
5 5
6 Command line interface. 6 Command line interface.
7 7
8 :copyright: Copyright 2006-2012 by the Pygments team, see AUTHORS. 8 :copyright: Copyright 2006-2013 by the Pygments team, see AUTHORS.
9 :license: BSD, see LICENSE for details. 9 :license: BSD, see LICENSE for details.
10 """ 10 """
11 import sys 11 import sys
12 import getopt 12 import getopt
13 from textwrap import dedent 13 from textwrap import dedent
190 """ 190 """
191 # pylint: disable-msg=R0911,R0912,R0915 191 # pylint: disable-msg=R0911,R0912,R0915
192 192
193 usage = USAGE % ((args[0],) * 6) 193 usage = USAGE % ((args[0],) * 6)
194 194
195 if sys.platform in ['win32', 'cygwin']:
196 try:
197 # Provide coloring under Windows, if possible
198 import colorama
199 colorama.init()
200 except ImportError:
201 pass
202
195 try: 203 try:
196 popts, args = getopt.getopt(args[1:], "l:f:F:o:O:P:LS:a:N:hVHg") 204 popts, args = getopt.getopt(args[1:], "l:f:F:o:O:P:LS:a:N:hVHg")
197 except getopt.GetoptError as err: 205 except getopt.GetoptError as err:
198 print(usage, file=sys.stderr) 206 print(usage, file=sys.stderr)
199 return 2 207 return 2
217 if opts.pop('-h', None) is not None: 225 if opts.pop('-h', None) is not None:
218 print(usage) 226 print(usage)
219 return 0 227 return 0
220 228
221 if opts.pop('-V', None) is not None: 229 if opts.pop('-V', None) is not None:
222 print('Pygments version %s, (c) 2006-2011 by Georg Brandl.' % __version__) 230 print('Pygments version %s, (c) 2006-2013 by Georg Brandl.' % __version__)
223 return 0 231 return 0
224 232
225 # handle ``pygmentize -L`` 233 # handle ``pygmentize -L``
226 L_opt = opts.pop('-L', None) 234 L_opt = opts.pop('-L', None)
227 if L_opt is not None: 235 if L_opt is not None:
368 try: 376 try:
369 lexer = get_lexer_for_filename(infn, code, **parsed_opts) 377 lexer = get_lexer_for_filename(infn, code, **parsed_opts)
370 except ClassNotFound as err: 378 except ClassNotFound as err:
371 if '-g' in opts: 379 if '-g' in opts:
372 try: 380 try:
373 lexer = guess_lexer(code) 381 lexer = guess_lexer(code, **parsed_opts)
374 except ClassNotFound: 382 except ClassNotFound:
375 lexer = TextLexer() 383 lexer = TextLexer(**parsed_opts)
376 else: 384 else:
377 print('Error:', err, file=sys.stderr) 385 print('Error:', err, file=sys.stderr)
378 return 1 386 return 1
379 except OptionError as err: 387 except OptionError as err:
380 print('Error:', err, file=sys.stderr) 388 print('Error:', err, file=sys.stderr)
382 390
383 else: 391 else:
384 if '-g' in opts: 392 if '-g' in opts:
385 code = sys.stdin.read() 393 code = sys.stdin.read()
386 try: 394 try:
387 lexer = guess_lexer(code) 395 lexer = guess_lexer(code, **parsed_opts)
388 except ClassNotFound: 396 except ClassNotFound:
389 lexer = TextLexer() 397 lexer = TextLexer(**parsed_opts)
390 elif not lexer: 398 elif not lexer:
391 print('Error: no lexer name given and reading ' + \ 399 print('Error: no lexer name given and reading ' + \
392 'from stdin (try using -g or -l <lexer>)', file=sys.stderr) 400 'from stdin (try using -g or -l <lexer>)', file=sys.stderr)
393 return 2 401 return 2
394 else: 402 else:

eric ide

mercurial