<% '------------------------------------------ 'Server Script Variables access shortcuts: dim path_info '\$p dim this_page '\$f (file) const path_info_esc = "p" const this_page_esc = "f" '------------------------------------------ const VarEsc = "$" const SelfNamed = "+" 'KK.07.17.01 const SelfClosed = "|" 'seems never used; dim SelfNamedFlag 'KK.07.17.01 dim IndentFlag 'if "" then indent ignored; 'IndentFlag = ve 'wrong place to set; do this in default.asp or 'form schema/source headers; dim t, d, c 'horrible globals; dim tt 'will be a collected result ... dim this_version dim elemcur, i_next_el, pcurrent dim not_halfcurr dim ilowcurr 'convert current element to low case and take its index dim contrcurr 'current state made by control contcurr dim ForeignScriptFlag 'current state is a foreign tag dim tagelem dim element(170) 'string; element; '---------------------------------------------------------------------------------------- 'contructs used for "long shortcut"=more-than-two-chars shortcut dim saved_the_rest_of_line ' from NextT saved_the_rest_of_line = "" dim SML_E_key SML_E_key = "^" ' key for "long shortcuts" wich value can take all ' rest of the line. dim SML_E_long(170) ' index of more-than-two-chars shortcut; dim SML_E_scut(80) ' key=shortcut it self as a text; dim SML_E_value(80) ' replace scut with this value; dim SML_E_i,SML_E_m, SML_E_L '//- current, maximum, limit for current; SML_E_i = 0 ' index for long_shortcut arrays; SML_E_m = 80 ' restriction for this index; '---------------------------------------------------------------------------------------- dim extended(170) dim tagable(170) dim any_scut(170) ' storing some control char which can open this el. dim mark(170) ' boolean; marks nesting level in comments (good for tables) dim foreign(170) ' for foreign scripts like php ... dim halftag(170) ' one of the main functions which builds sml: dim tar(128,170) ' tar(shortcut,scope) = target-element ' shortcut here is asc value of actual shortcut. dim abbr(170) ' element just abbreviation like ` ` dim elim elim = 170 ' limit for elements quantity dim sub_el_cut(170,30) ' shortcut met inside tag for subtag element dim subelement(170,30) dim subeltype(170,30), enext(170,30) ' 0 - numbers, 1,2,3, 9 - parameters string length ' |sub_el_cut index dim enumb ' elements number dim tlim tlim = 30 dim short, short2 dim xescape, xcomment, icommon, iistart, xtend dim ibody ' index for element body dim xself const xxescape = "." dim h(200) dim TLen dim source dim m_pointer,t_pointer dim p(100), pscut(100), escape, comment, shortcut, element_state dim low_elemcur, e_next_el, c_control, tag_state dim indents, indented dim no_more_scuts ' for tag dim tag_div %>