当前位置: 首页>>代码示例>>Python>>正文


Python TextLexer.encoding方法代码示例

本文整理汇总了Python中pygments.lexers.TextLexer.encoding方法的典型用法代码示例。如果您正苦于以下问题:Python TextLexer.encoding方法的具体用法?Python TextLexer.encoding怎么用?Python TextLexer.encoding使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在pygments.lexers.TextLexer的用法示例。


在下文中一共展示了TextLexer.encoding方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: stdin

# 需要导入模块: from pygments.lexers import TextLexer [as 别名]
# 或者: from pygments.lexers.TextLexer import encoding [as 别名]
            print >>sys.stderr, 'Error: no lexer name given and reading ' + \
                                'from stdin (try using -g or -l <lexer>)'
            return 2
        else:
            code = sys.stdin.read()

    # No encoding given? Use latin1 if output file given,
    # stdin/stdout encoding otherwise.
    # (This is a compromise, I'm not too happy with it...)
    if 'encoding' not in parsed_opts and 'outencoding' not in parsed_opts:
        if outfn:
            # encoding pass-through
            fmter.encoding = 'latin1'
        else:
            # use terminal encoding
            lexer.encoding = getattr(sys.stdin, 'encoding', None) or 'ascii'
            fmter.encoding = getattr(sys.stdout, 'encoding', None) or 'ascii'

    # ... and do it!
    try:
        # process filters
        for fname, fopts in F_opts:
            lexer.add_filter(fname, **fopts)
        highlight(code, lexer, fmter, outfile)
    except Exception, err:
        import traceback
        info = traceback.format_exception(*sys.exc_info())
        msg = info[-1].strip()
        if len(info) >= 3:
            # extract relevant file and position info
            msg += '\n   (f%s)' % info[-2].split('\n')[0].strip()[1:]
开发者ID:B-Rich,项目名称:crashkit,代码行数:33,代码来源:cmdline.py

示例2: main

# 需要导入模块: from pygments.lexers import TextLexer [as 别名]
# 或者: from pygments.lexers.TextLexer import encoding [as 别名]

#.........这里部分代码省略.........
                print('Error:', err, file=sys.stderr)
                return 1
        try:
            outfile = open(outfn, 'wb')
        except Exception as err:
            print('Error: cannot open outfile:', err, file=sys.stderr)
            return 1
    else:
        if not fmter:
            fmter = TerminalFormatter(**parsed_opts)
        outfile = sys.stdout

    # select lexer
    lexer = opts.pop('-l', None)
    if lexer:
        try:
            lexer = get_lexer_by_name(lexer, **parsed_opts)
        except (OptionError, ClassNotFound) as err:
            print('Error:', err, file=sys.stderr)
            return 1

    if args:
        if len(args) > 1:
            print(usage, file=sys.stderr)
            return 2

        infn = args[0]
        try:
            code = open(infn, 'rb').read()
        except Exception as err:
            print('Error: cannot read infile:', err, file=sys.stderr)
            return 1

        if not lexer:
            try:
                lexer = get_lexer_for_filename(infn, code, **parsed_opts)
            except ClassNotFound as err:
                if '-g' in opts:
                    try:
                        lexer = guess_lexer(code, **parsed_opts)
                    except ClassNotFound:
                        lexer = TextLexer(**parsed_opts)
                else:
                    print('Error:', err, file=sys.stderr)
                    return 1
            except OptionError as err:
                print('Error:', err, file=sys.stderr)
                return 1

    else:
        if '-g' in opts:
            code = sys.stdin.read()
            try:
                lexer = guess_lexer(code, **parsed_opts)
            except ClassNotFound:
                lexer = TextLexer(**parsed_opts)
        elif not lexer:
            print('Error: no lexer name given and reading ' + \
                                'from stdin (try using -g or -l <lexer>)', file=sys.stderr)
            return 2
        else:
            code = sys.stdin.read()

    # No encoding given? Use latin1 if output file given,
    # stdin/stdout encoding otherwise.
    # (This is a compromise, I'm not too happy with it...)
    if 'encoding' not in parsed_opts and 'outencoding' not in parsed_opts:
        if outfn:
            # encoding pass-through
            fmter.encoding = 'latin1'
        else:
            if sys.version_info < (3,):
                # use terminal encoding; Python 3's terminals already do that
                lexer.encoding = getattr(sys.stdin, 'encoding',
                                         None) or 'ascii'
                fmter.encoding = getattr(sys.stdout, 'encoding',
                                         None) or 'ascii'
    elif not outfn and sys.version_info > (3,):
        # output to terminal with encoding -> use .buffer
        outfile = sys.stdout.buffer

    # ... and do it!
    try:
        # process filters
        for fname, fopts in F_opts:
            lexer.add_filter(fname, **fopts)
        highlight(code, lexer, fmter, outfile)
    except Exception:
        import traceback
        info = traceback.format_exception(*sys.exc_info())
        msg = info[-1].strip()
        if len(info) >= 3:
            # extract relevant file and position info
            msg += '\n   (f%s)' % info[-2].split('\n')[0].strip()[1:]
        print(file=sys.stderr)
        print('*** Error while highlighting:', file=sys.stderr)
        print(msg, file=sys.stderr)
        return 1

    return 0
开发者ID:JosmanPS,项目名称:sublime-evernote,代码行数:104,代码来源:cmdline.py

示例3: stdin

# 需要导入模块: from pygments.lexers import TextLexer [as 别名]
# 或者: from pygments.lexers.TextLexer import encoding [as 别名]
                                'from stdin (try using -g or -l <lexer>)'
            return 2
        else:
            code = sys.stdin.read()

    # No encoding given? Use utf-8 if output file given,
    # stdin/stdout encoding otherwise.
    # (This is a compromise, I'm not too happy with it...)
    if 'encoding' not in parsed_opts and 'outencoding' not in parsed_opts:
        if outfn:
            # encoding pass-through
            fmter.encoding = 'utf-8'
        else:
            if sys.version_info < (3,):
                # use terminal encoding; Python 3's terminals already do that
                lexer.encoding = getattr(sys.stdin, 'encoding',
                                         None) or 'utf-8'
                fmter.encoding = getattr(sys.stdout, 'encoding',
                                         None) or 'utf-8'

    # ... and do it!
    try:
        # process filters
        for fname, fopts in F_opts:
            lexer.add_filter(fname, **fopts)
        highlight(code, lexer, fmter, outfile)
    except Exception, err:
        import traceback
        info = traceback.format_exception(*sys.exc_info())
        msg = info[-1].strip()
        if len(info) >= 3:
            # extract relevant file and position info
开发者ID:leeight,项目名称:feutils,代码行数:34,代码来源:cmdline.py

示例4: len

# 需要导入模块: from pygments.lexers import TextLexer [as 别名]
# 或者: from pygments.lexers.TextLexer import encoding [as 别名]
args = sys.argv[1:]
if len(args) == 1:
    filename = args[0]
    content = codecs.open(args[0], "r", "utf-8").read()
elif len(args) == 2:
    filename = args[0]
    assert args[1] == "-"
    content = sys.stdin.read()

# Cheesy hack for override some false guesses by Pygments.
# A better answer might be to look at lexing errors and try a secondary
# guess.
overrides = {"Makefile.py": ".py"}
basename = basename(filename)
try:
    lexer = get_lexer_for_filename(overrides.get(basename, filename), content)
except ClassNotFound:
    try:
        lexer = guess_lexer(content)
    except ClassNotFound:
        lexer = TextLexer()
sys.stderr.write("lexer: %r\n" % lexer)

fmter = get_formatter_by_name("html")
fmter.encoding = "utf-8"
lexer.encoding = "utf-8"
outfile = sys.stdout

highlight(content, lexer, fmter, outfile)
开发者ID:jacques,项目名称:molybdenum,代码行数:31,代码来源:pyg.py

示例5: stdin

# 需要导入模块: from pygments.lexers import TextLexer [as 别名]
# 或者: from pygments.lexers.TextLexer import encoding [as 别名]
            print >> sys.stderr, "Error: no lexer name given and reading " + "from stdin (try using -g or -l <lexer>)"
            return 2
        else:
            code = sys.stdin.read()

    # No encoding given? Use latin1 if output file given,
    # stdin/stdout encoding otherwise.
    # (This is a compromise, I'm not too happy with it...)
    if "encoding" not in parsed_opts and "outencoding" not in parsed_opts:
        if outfn:
            # encoding pass-through
            fmter.encoding = "latin1"
        else:
            if sys.version_info < (3,):
                # use terminal encoding; Python 3's terminals already do that
                lexer.encoding = getattr(sys.stdin, "encoding", None) or "ascii"
                fmter.encoding = getattr(sys.stdout, "encoding", None) or "ascii"
    elif not outfn and sys.version_info > (3,):
        # output to terminal with encoding -> use .buffer
        outfile = sys.stdout.buffer

    # ... and do it!
    try:
        # process filters
        for fname, fopts in F_opts:
            lexer.add_filter(fname, **fopts)
        highlight(code, lexer, fmter, outfile)
    except Exception, err:
        import traceback

        info = traceback.format_exception(*sys.exc_info())
开发者ID:hammouda,项目名称:pydown,代码行数:33,代码来源:cmdline.py

示例6: main

# 需要导入模块: from pygments.lexers import TextLexer [as 别名]
# 或者: from pygments.lexers.TextLexer import encoding [as 别名]

#.........这里部分代码省略.........
                print("Error:", err, file=sys.stderr)
                return 1
        try:
            outfile = open(outfn, "wb")
        except Exception as err:
            print("Error: cannot open outfile:", err, file=sys.stderr)
            return 1
    else:
        if not fmter:
            fmter = TerminalFormatter(**parsed_opts)
        outfile = sys.stdout

    # select lexer
    lexer = opts.pop("-l", None)
    if lexer:
        try:
            lexer = get_lexer_by_name(lexer, **parsed_opts)
        except (OptionError, ClassNotFound) as err:
            print("Error:", err, file=sys.stderr)
            return 1

    if args:
        if len(args) > 1:
            print(usage, file=sys.stderr)
            return 2

        infn = args[0]
        try:
            code = open(infn, "rb").read()
        except Exception as err:
            print("Error: cannot read infile:", err, file=sys.stderr)
            return 1

        if not lexer:
            try:
                lexer = get_lexer_for_filename(infn, code, **parsed_opts)
            except ClassNotFound as err:
                if "-g" in opts:
                    try:
                        lexer = guess_lexer(code, **parsed_opts)
                    except ClassNotFound:
                        lexer = TextLexer(**parsed_opts)
                else:
                    print("Error:", err, file=sys.stderr)
                    return 1
            except OptionError as err:
                print("Error:", err, file=sys.stderr)
                return 1

    else:
        if "-g" in opts:
            code = sys.stdin.read()
            try:
                lexer = guess_lexer(code, **parsed_opts)
            except ClassNotFound:
                lexer = TextLexer(**parsed_opts)
        elif not lexer:
            print(
                "Error: no lexer name given and reading " + "from stdin (try using -g or -l <lexer>)", file=sys.stderr
            )
            return 2
        else:
            code = sys.stdin.read()

    # No encoding given? Use latin1 if output file given,
    # stdin/stdout encoding otherwise.
    # (This is a compromise, I'm not too happy with it...)
    if "encoding" not in parsed_opts and "outencoding" not in parsed_opts:
        if outfn:
            # encoding pass-through
            fmter.encoding = "latin1"
        else:
            if sys.version_info < (3,):
                # use terminal encoding; Python 3's terminals already do that
                lexer.encoding = getattr(sys.stdin, "encoding", None) or "ascii"
                fmter.encoding = getattr(sys.stdout, "encoding", None) or "ascii"
    elif not outfn and sys.version_info > (3,):
        # output to terminal with encoding -> use .buffer
        outfile = sys.stdout.buffer

    # ... and do it!
    try:
        # process filters
        for fname, fopts in F_opts:
            lexer.add_filter(fname, **fopts)
        highlight(code, lexer, fmter, outfile)
    except Exception as err:
        import traceback

        info = traceback.format_exception(*sys.exc_info())
        msg = info[-1].strip()
        if len(info) >= 3:
            # extract relevant file and position info
            msg += "\n   (f%s)" % info[-2].split("\n")[0].strip()[1:]
        print(file=sys.stderr)
        print("*** Error while highlighting:", file=sys.stderr)
        print(msg, file=sys.stderr)
        return 1

    return 0
开发者ID:maverickhuenlam,项目名称:blog,代码行数:104,代码来源:cmdline.py


注:本文中的pygments.lexers.TextLexer.encoding方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。