亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? content.py

?? 附上freetype2.1.10的源代碼,這個和上面?zhèn)鞯氖且黄鸬?
?? PY
?? 第 1 頁 / 共 2 頁
字號:
##  this file contains routines used to parse the content of documentation#  comment block and build a more structured objects out of them#from sources import *from utils import *import string, re# this regular expresion is used to detect code sequences. these# are simply code fragments embedded in '{' and '}' like in:##  {#    x = y + z;#    if ( zookoo == 2 )#    {#      foobar();#    }#  }## note that identation of the starting and ending accolades must be# exactly the same. the code sequence can contain accolades at greater# indentation#re_code_start = re.compile( r"(\s*){\s*$" )re_code_end   = re.compile( r"(\s*)}\s*$" )# this regular expression is used to isolate identifiers from# other text#re_identifier = re.compile( r'(\w*)' )############################################################################### The DocCode class is used to store source code lines.##   'self.lines' contains a set of source code lines that will be dumped as#   HTML in a <PRE> tag.##   The object is filled line by line by the parser; it strips the leading#   "margin" space from each input line before storing it in 'self.lines'.#class DocCode:    def __init__( self, margin, lines ):        self.lines  = []        self.words  = None        # remove margin spaces        for l in lines:            if string.strip( l[:margin] ) == "":                l = l[margin:]            self.lines.append( l )    def dump( self, prefix = "", width=60 ):        lines = self.dump_lines( 0, width )        for l in lines:            print prefix + l        def dump_lines( self, margin=0, width=60 ):        result = []        for l in self.lines:            result.append( " "*margin + l )        return result    ############################################################################### The DocPara class is used to store "normal" text paragraph.##   'self.words' contains the list of words that make up the paragraph#class DocPara:    def __init__( self, lines ):        self.lines = None        self.words = []        for l in lines:            l = string.strip(l)            self.words.extend( string.split( l ) )    def dump( self, prefix = "", width = 60 ):        lines = self.dump_lines( 0, width )        for l in lines:            print prefix + l        def dump_lines( self, margin=0, width = 60 ):        cur    = ""  # current line        col    = 0   # current width        result = []        for word in self.words:            ln = len(word)            if col > 0:                ln = ln+1            if col + ln > width:                result.append( " "*margin + cur )                cur = word                col = len(word)            else:                if col > 0:                    cur = cur + " "                cur = cur + word                col = col + ln        if col > 0:            result.append( " "*margin + cur )                    return result    ###############################################################################  The DocField class is used to store a list containing either DocPara or#  DocCode objects. Each DocField also has an optional "name" which is used#  when the object corresponds to a field of value definition#class DocField:    def __init__( self, name, lines ):        self.name  = name  # can be None for normal paragraphs/sources        self.items = []     # list of items        mode_none  = 0   # start parsing mode        mode_code  = 1   # parsing code sequences        mode_para  = 3   # parsing normal paragraph        margin     = -1  # current code sequence indentation        cur_lines  = []        # now analyze the markup lines to see if they contain paragraphs,        # code sequences or fields definitions        #        start = 0        mode  = mode_none        for l in lines:            # are we parsing a code sequence ?            if mode == mode_code:                m = re_code_end.match( l )                if m and len(m.group(1)) <= margin:                    # that's it, we finised the code sequence                    code = DocCode( 0, cur_lines )                    self.items.append( code )                    margin    = -1                    cur_lines = []                    mode      = mode_none                else:                    # nope, continue the code sequence                    cur_lines.append( l[margin:] )            else:                # start of code sequence ?                m = re_code_start.match( l )                if m:                    # save current lines                    if cur_lines:                        para = DocPara( cur_lines )                        self.items.append( para )                        cur_lines = []                    # switch to code extraction mode                    margin = len(m.group(1))                    mode   = mode_code                else:                    if not string.split( l ) and cur_lines:                        # if the line is empty, we end the current paragraph,                        # if any                        para = DocPara( cur_lines )                        self.items.append( para )                        cur_lines = []                    else:                        # otherwise, simply add the line to the current                        # paragraph                        cur_lines.append( l )        if mode == mode_code:            # unexpected end of code sequence            code = DocCode( margin, cur_lines )            self.items.append( code )        elif cur_lines:            para = DocPara( cur_lines )            self.items.append( para )    def dump( self, prefix = "" ):        if self.field:            print prefix + self.field + " ::"            prefix = prefix + "----"        first = 1        for p in self.items:            if not first:                print ""            p.dump( prefix )            first = 0    def dump_lines( self, margin=0, width=60 ):        result = []        nl     = None        for p in self.items:            if nl:                result.append( "" )                            result.extend( p.dump_lines( margin, width ) )            nl = 1                    return result# this regular expression is used to detect field definitions#re_field  = re.compile( r"\s*(\w*)\s*::" )class DocMarkup:    def __init__( self, tag, lines ):        self.tag       = string.lower(tag)        self.fields    = []        cur_lines = []        field     = None        mode      = 0        for l in lines:            m = re_field.match( l )            if m:                # we detected the start of a new field definition                # first, save the current one                if cur_lines:                    f = DocField( field, cur_lines )                    self.fields.append( f )                    cur_lines = []                    field     = None                field     = m.group(1)   # record field name                ln        = len(m.group(0))                l         = " "*ln + l[ln:]                cur_lines = [ l ]            else:                cur_lines.append( l )        if field or cur_lines:            f = DocField( field, cur_lines )            self.fields.append( f )    def get_name( self ):        try:            return self.fields[0].items[0].words[0]        except:            return None            def get_start( self ):        try:            result = ""            for word in self.fields[0].items[0].words:                result = result + " " + word            return result[1:]                except:            return "ERROR"    def dump( self, margin ):        print " "*margin + "<" + self.tag + ">"        for f in self.fields:            f.dump( "  " )        print " "*margin + "</" + self.tag + ">"class DocChapter:    def __init__( self, block ):        self.block    = block        self.sections = []        if block:            self.name     = block.name            self.title    = block.get_markup_words( "title" )            self.order    = block.get_markup_words( "sections" )        else:

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一二三区在线观看| 不卡一区在线观看| 丁香婷婷综合激情五月色| 在线免费观看日韩欧美| 国产亚洲视频系列| 日韩国产欧美在线观看| 99视频一区二区三区| 2020国产精品自拍| 日韩精品每日更新| 色综合一区二区| 国产精品色噜噜| 激情深爱一区二区| 欧美浪妇xxxx高跟鞋交| 亚洲免费毛片网站| 成人黄页毛片网站| 欧美精品一区二区三区一线天视频 | 欧美狂野另类xxxxoooo| 亚洲免费看黄网站| 91伊人久久大香线蕉| 中文字幕不卡在线| 国产一区二三区好的| 欧美变态凌虐bdsm| 奇米888四色在线精品| 4438亚洲最大| 午夜视频一区二区| 欧美日韩一区二区三区不卡| 洋洋成人永久网站入口| 在线视频国产一区| 亚洲一区精品在线| 日本韩国一区二区| 一区二区三区在线不卡| 91激情在线视频| 一卡二卡三卡日韩欧美| 91美女片黄在线观看| 亚洲精品欧美专区| 欧美午夜一区二区| 青青草国产精品97视觉盛宴| 日韩欧美国产一区二区三区 | 欧美精品一区二区高清在线观看 | 日韩不卡一二三区| 91精品国产综合久久小美女| 免费黄网站欧美| 精品国产乱码久久久久久免费 | 狂野欧美性猛交blacked| 日韩欧美一区二区免费| 狠狠网亚洲精品| 久久婷婷久久一区二区三区| 国产成人欧美日韩在线电影| 国产精品无圣光一区二区| 一本一道综合狠狠老| 亚洲国产精品久久不卡毛片| 日韩一区二区免费电影| 国产一区福利在线| 亚洲天堂免费看| 91精品麻豆日日躁夜夜躁| 精品一二三四区| 中文字幕在线不卡国产视频| 91福利精品视频| 精品一区二区三区香蕉蜜桃 | 日韩欧美综合一区| 国产不卡视频一区| 一区二区三区成人| 日韩免费高清av| 成+人+亚洲+综合天堂| 亚洲福利一二三区| 精品三级在线观看| 91免费观看视频| 美女一区二区在线观看| 国产精品女主播在线观看| 欧美色区777第一页| 国产精品自拍三区| 亚洲综合男人的天堂| 久久毛片高清国产| 欧美系列亚洲系列| 成人av免费网站| 麻豆精品国产传媒mv男同| 亚洲日本在线天堂| 精品对白一区国产伦| 欧美日韩黄色影视| 波多野结衣精品在线| 日本欧美在线看| 亚洲自拍与偷拍| 国产欧美日韩久久| 91精品国产欧美一区二区18| 91美女片黄在线| 国产超碰在线一区| 精油按摩中文字幕久久| 亚洲h动漫在线| 中文字幕亚洲视频| 久久这里只有精品6| 91精品国产综合久久国产大片| 不卡的av电影| 懂色一区二区三区免费观看| 美女视频免费一区| 日日欢夜夜爽一区| 亚洲三级电影全部在线观看高清| 国产清纯白嫩初高生在线观看91| 日韩欧美精品在线视频| 欧美日韩国产天堂| 欧美丝袜丝交足nylons| 色女孩综合影院| a4yy欧美一区二区三区| 国产成人精品在线看| 狠狠色丁香婷婷综合| 免费观看在线综合| 日韩专区欧美专区| 天堂va蜜桃一区二区三区漫画版| 一区二区在线免费观看| 一区二区三区美女| 亚洲裸体在线观看| 亚洲日本va在线观看| 中文字幕一区二区三区四区不卡 | 日韩视频一区二区三区在线播放| 欧美亚洲高清一区| 欧洲一区二区av| 91国偷自产一区二区三区成为亚洲经典| 成人免费黄色在线| 99久久婷婷国产综合精品| 成人免费毛片嘿嘿连载视频| 成人av免费在线| 色域天天综合网| 欧美午夜不卡视频| 欧美精品在线观看播放| 日韩视频在线一区二区| 精品国产一区二区三区四区四| 精品久久国产老人久久综合| 久久免费看少妇高潮| 国产精品天美传媒沈樵| 亚洲女同女同女同女同女同69| 亚洲一区二区在线免费看| 亚洲成人av免费| 国内一区二区在线| 成人h动漫精品一区二区| 99久久精品99国产精品| 欧美日韩国产精品成人| 在线综合视频播放| 久久麻豆一区二区| 亚洲蜜桃精久久久久久久| 视频一区视频二区中文字幕| 久久99精品国产麻豆不卡| 国产成人在线视频播放| 91精彩视频在线| 91精品国产综合久久精品性色| 久久综合色一综合色88| 最新国产成人在线观看| 天堂精品中文字幕在线| 高清成人免费视频| 欧美日韩一区二区三区四区| 久久久av毛片精品| 亚洲精品精品亚洲| 精品一区二区免费在线观看| 成人av中文字幕| 正在播放一区二区| 中文字幕av一区二区三区免费看| 亚洲午夜一区二区| 国产一区二区视频在线播放| 99久久免费国产| 日韩女优制服丝袜电影| 亚洲日本一区二区三区| 精品一区二区三区视频在线观看| 色噜噜久久综合| 久久人人97超碰com| 亚洲成人av一区| 成人av片在线观看| 精品久久久网站| 午夜精品免费在线观看| 99在线热播精品免费| 精品久久免费看| 日韩国产欧美在线视频| 色中色一区二区| 国产精品久久福利| 国产精品99精品久久免费| 欧美日韩国产首页| 依依成人精品视频| 成人免费av资源| 久久久久青草大香线综合精品| 亚洲bt欧美bt精品777| 99免费精品在线| 久久久久久久性| 久久99精品国产.久久久久久| 欧美色爱综合网| 一区二区三区**美女毛片| 成人激情动漫在线观看| 久久青草国产手机看片福利盒子| 男女男精品视频| 538在线一区二区精品国产| 一区二区三区四区激情| 91丨九色porny丨蝌蚪| 国产精品护士白丝一区av| 国产99久久久精品| 亚洲精品在线电影| 久久精品国产精品青草| 日韩一区二区三区电影在线观看 | 国产精品三级在线观看| 精品一区二区免费| 欧美电影免费观看高清完整版| 日韩精品一卡二卡三卡四卡无卡| 欧美日韩一区二区三区高清| 亚洲va在线va天堂| 7777精品伊人久久久大香线蕉超级流畅 |