Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3
2øªjœb ã
@ s‚ d dl jjZd dlmZ d dlmZ d dlmZ ddddd d
d
d
ddddd
œZ G dd„ de
ƒZG dd„ de
ƒZG dd„ deƒZ
dS )é N)ÚLexer)ÚVoltLibError)ÚopenÚparse_def_glyph_Úparse_def_group_Úparse_def_script_Úparse_def_lookup_Úparse_def_anchor_Úparse_ppem_Úparse_noarg_option_Úparse_cmap_format)Ú DEF_GLYPHÚ DEF_GROUPÚ
DEF_SCRIPTÚ
DEF_LOOKUPÚ
DEF_ANCHORZ GRID_PPEMZPRESENTATION_PPEMZPPOSITIONING_PPEMZCOMPILER_USEEXTENSIONLOOKUPSZCOMPILER_USEPAIRPOSFORMAT2ZCMAP_FORMATZDO_NOT_TOUCH_CMAPc @ s e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd d
„ Zdd„ Zd
d„ Z dd„ Z
dd„ Zdd„ Zdd„ Z
dd„ Zdd„ Zdd„ Zdd„ Zdd „ Zd!d"„ Zd#d$„ Zd%d&„ Zd'd(„ Zd)d*„ Zd+d,„ Zd-d.„ Zd/d0„ Zd1d2„ Zd3d4„ Zd5d6„ Zd7d8„ Zd9d:„ Zd;d<„ Z d=d>„ Z!d?d@„ Z"dAdB„ Z#dCS )DÚParserc C s` t jƒ | _tƒ | _tƒ | _i | _tƒ | _tƒ | _ tƒ | _
d\| _| _d | _
| j|ƒ | jƒ d S )N)NN)ÚastZVoltFileÚdoc_ÚOrderedSymbolTableÚglyphs_ÚSymbolTableÚgroups_Úanchors_Úscripts_Úlangs_Úlookups_Únext_token_type_Únext_token_Únext_token_location_Úmake_lexer_Úadvance_lexer_)ÚselfÚpath© r$ ú=/tmp/pip-build-_d5lkt3n/fonttools/fontTools/voltLib/parser.pyÚ__init__ s
zParser.__init__c
C sR t |dƒr t|dd ƒ}|jƒ }n"|}t|dƒ�}|jƒ }W d Q R X t||ƒ| _d S )NÚreadÚnameÚr)ÚhasattrÚgetattrr' r r Úlexer_)r" Zfile_or_pathÚfilenameÚdataÚfr$ r$ r% r $ s
zParser.make_lexer_c C s~ | j j}xn| jd k rv| jƒ | jtjƒ krHt| t| j ƒ}|j|ƒ ƒ q
| j dƒrVP q
t
ddjttjƒ ƒƒ | j
ƒ‚q
W | j S )NÚENDz Expected z, )r Ú
statementsr r! Ú
cur_token_ÚPARSE_FUNCSÚkeysr+ ÚappendÚis_cur_keyword_r ÚjoinÚsortedÚcur_token_location_)r" r1 Úfuncr$ r$ r% Úparse. s
zParser.parsec C s< | j dƒst‚| j}| jƒ }| jdƒ | jƒ }|dk rBtd| jƒ‚d }| jdkr~| jdƒ | jƒ g}|d dk rštd| jƒ‚n| jdkrš| jdƒ | jƒ }d }| jdkrÆ| jdƒ | j ƒ }|dksÆt‚d }| jd
kræ| jd
ƒ | jƒ }| jdƒ | j
j|ƒd k �rtd||f |ƒ‚tj
||||||d�}| j
j||ƒ |S )Nr
ZIDr zInvalid glyph IDÚUNICODEzInvalid glyph UNICODEZ
UNICODEVALUESZTYPEÚBASEÚLIGATUREÚMARKÚ COMPONENTZ
COMPONENTSZ END_GLYPHz#Glyph "%s" (gid %i) already defined)Úlocation)r= r> r? r@ )r6 ÚAssertionErrorr9 Úexpect_string_Úexpect_keyword_Úexpect_number_r r Úparse_unicode_values_Úexpect_name_r Úresolver ZGlyphDefinitionÚdefine)r" rA r( ÚgidZgunicodeZgtypeÚ
componentsZ def_glyphr$ r$ r% r = sH
zParser.parse_def_glyph_c C s| | j dƒst‚| j}| jƒ }d }| jdkr2| jƒ }| jdƒ | jj|ƒd k rZt d| |ƒ‚t
j|||d�}| jj||ƒ |S )Nr ÚENUMZ END_GROUPzBGlyph group "%s" already defined, group names are case insensitive)rA )
r6 rB r9 rC r Úparse_enum_rD r rH r r ZGroupDefinitionrI )r" rA r( ÚenumZ def_groupr$ r$ r% r d s
zParser.parse_def_group_c C s | j dƒst‚| j}d }| jdkr4| jdƒ | jƒ }| jdƒ | jƒ }| jj|ƒd k rdtd| |ƒ‚| j j
ƒ g }xh| jdkrÚ| jƒ | jƒ }| jdƒ | j j|j
ƒd k r¾td|j
|f |ƒ‚| j j|j
|ƒ |j|ƒ qtW | jdƒ | j jƒ tj||||d�}| jj||ƒ |S ) Nr ÚNAMEÚTAGz=Script "%s" already defined, script tags are case insensitiveZ
END_SCRIPTÚEND_LANGSYSzPLanguage "%s" already defined in script "%s", language tags are case insensitive)rA )r6 rB r9 r rD rC r rH r r Úenter_scoper! Úparse_langsys_ÚtagrI r5 Ú
exit_scoper ZScriptDefinition)r" rA r( rT ZlangsÚlangZ
def_scriptr$ r$ r% r w s>
zParser.parse_def_script_c C s” | j dƒst‚| j}d }| jdkr4| jdƒ | jƒ }| jdƒ | jƒ }g }x2| jdkr|| jƒ | jƒ }| jdƒ |j|ƒ qLW t j
||||d�}|S )NZDEF_LANGSYSrO rP rQ ÚEND_FEATURE)rA )r6 rB r9 r rD rC r! Úparse_feature_r5 r ZLangSysDefinition)r" rA r( rT ÚfeaturesÚfeatureZdef_langsysr$ r$ r% rS š s"
zParser.parse_langsys_c C s~ | j dƒst‚| j}| jdƒ | jƒ }| jdƒ | jƒ }g }x*| jdkrf| jdƒ | jƒ }|j|ƒ q>W tj||||d�}|S )NZDEF_FEATURErO rP rW ZLOOKUP)rA ) r6 rB r9 rD rC r r5 r ZFeatureDefinition)r" rA r( rT ZlookupsÚlookuprZ r$ r$ r% rX s
zParser.parse_feature_c
C s8 | j dƒst‚| j}| jƒ }|d jƒ s6td| |ƒ‚| jj|ƒd k rTtd| |ƒ‚d}| jdkrl| j ƒ n| jdkr‚| j ƒ d}d}d }| jd k�r| j ƒ | jd
krº| j ƒ | jƒ }nR| jdkrÎ| j ƒ n>| jdkræ| j ƒ d}n&| j
tjkrü| jƒ }ntd
| j
|ƒ‚n| jdk�r&| j ƒ d}d }| jdk�rV| j
dƒ | jƒ }|dk�sVt‚d }| jdk�rt| j
dƒ d}d }| jdk�rž| j
dƒ | jƒ jddƒ}g } x| jdk�r¼| jƒ } �q¤W | jƒ }
d }d }|
dk�rä| j|ƒ}n"|
dk�rø| jƒ }ntd|
|ƒ‚tj|||||||| |||d�}
| jj||
ƒ |
S )Nr r z)Lookup name "%s" must start with a letterz>Lookup "%s" already defined, lookup names are case insensitiveTZPROCESS_BASEZ SKIP_BASEFZ
PROCESS_MARKSZMARK_GLYPH_SETÚALLÚNONEz3Expected ALL, NONE, MARK_GLYPH_SET or an ID. Got %sZ
SKIP_MARKSZ DIRECTIONÚLTRÚRTLZREVERSALZCOMMENTSz\nÚ
ÚEXCEPT_CONTEXTÚ
IN_CONTEXTÚAS_SUBSTITUTIONÚAS_POSITIONz/Expected AS_SUBSTITUTION or AS_POSITION. Got %s)rA )r^ r_ )ra rb )r6 rB r9 rC Úisalphar r rH r r! r r ÚSTRINGrD rG ÚreplaceÚparse_context_Úparse_substitution_Úparse_position_r ZLookupDefinitionrI )r" rA r( Zprocess_baseZ
process_marksZmark_glyph_setÚ directionÚreversalÚcommentsÚcontextZ
as_pos_or_subÚsubÚposZ
def_lookupr$ r$ r% r ¾ sŽ
zParser.parse_def_lookup_c C s° | j }g }x | jdkrªd }d }| jƒ }| jdkržg }g }x<| jdkrt| jƒ }| jƒ }|dkrh|j|ƒ q:|j|ƒ q:W | jdƒ tj||||d�}|j|ƒ q| jdƒ qW |S ) Nra rb ZEND_CONTEXTÚLEFTÚRIGHT)rA )ra rb )rq rr )r9 r rG Úparse_coverage_r5 rD r ZContextDefinition) r" rA ZcontextsZsideÚcoverageZex_or_inÚleftÚrightrn r$ r$ r% rh s*
zParser.parse_context_c C sn | j dƒst‚| j}g }g }| jdkr0td|ƒ‚xH| jdkrx| jdƒ |j| jƒ ƒ | jdƒ |j| jƒ ƒ | jdƒ q2W | jdƒ tdd„ |D ƒƒ}td d„ |D ƒƒ}|d
kr¸|d
ksÌ|rÖ|d
ksÌ|d
krÖtd|ƒ‚t t
t|ƒt|ƒƒƒ}|d
koú|d
k�r$|�rtj
||d�}ntj||d�}nF|d
k�rH|d
k�rHtj||d�}n"|d
k�rj|d
k�rjtj||d�}|S )
Nrc ZSUBzExpected SUBZWITHZEND_SUBZEND_SUBSTITUTIONc S s g | ]}t |ƒ‘qS r$ )Úlen)Ú.0Úcovr$ r$ r% ú
3 s z.Parser.parse_substitution_..c S s g | ]}t |ƒ‘qS r$ )rw )rx ry r$ r$ r% rz 4 s é zInvalid substitution type)rA )r6 rB r9 r r rD r5 rs ÚmaxÚdictÚzipÚtupler Z+SubstitutionReverseChainingSingleDefinitionZSubstitutionSingleDefinitionZSubstitutionMultipleDefinitionZSubstitutionLigatureDefinition) r" rl rA ÚsrcÚdestZmax_srcZmax_destÚmappingro r$ r$ r% ri % sD
zParser.parse_substitution_c C s‚ | j dƒst‚| j}| jƒ }|dkr.td|ƒ‚|dkr@| jƒ }n4|dkrR| jƒ }n"|dkrd| jƒ }n|dkrt| jƒ }| j dƒ |S ) Nrd ÚATTACHÚATTACH_CURSIVEÚADJUST_PAIRÚ
ADJUST_SINGLEz;Expected ATTACH, ATTACH_CURSIVE, ADJUST_PAIR, ADJUST_SINGLEZEND_POSITION)rƒ r„ r… r† )
r6 rB r9 rG r Ú
parse_attach_Úparse_attach_cursive_Úparse_adjust_pair_Úparse_adjust_single_rD )r" rA Zpos_typeÚpositionr$ r$ r% rj K s$
zParser.parse_position_c C sŠ | j dƒst‚| j}| jƒ }g }| jdƒ x@| jdkrj| jƒ }| jdƒ | jdƒ | jƒ }|j||fƒ q,W | jdƒ tj |||d�}|S )Nrƒ ÚTOÚ
END_ATTACHÚATZANCHOR)rA )
r6 rB r9 rs rD r rC r5 r ZPositionAttachDefinition)r" rA rt Zcoverage_tory Zanchor_namer‹ r$ r$ r% r‡ _ s
zParser.parse_attach_c C sŠ | j dƒst‚| j}g }g }x&| jdkrB| jdƒ |j| jƒ ƒ qW x&| jdkrj| jdƒ |j| jƒ ƒ qFW | jdƒ tj|||d�}|S )Nr„ ZENTERZEXITr� )rA ) r6 rB r9 r rD r5 rs r ZPositionAttachCursiveDefinition)r" rA Zcoverages_exitZcoverages_enterr‹ r$ r$ r% rˆ p s
zParser.parse_attach_cursive_c C sÞ | j dƒst‚| j}g }g }i }x(| jdkrH| jƒ | jƒ }|j|ƒ q"W x(| jdkrr| jƒ | jƒ }|j|ƒ qLW xH| jdkr¼| jƒ }| jƒ }| jdƒ | j ƒ } | j ƒ }
| |
f|||f<