Show pageOld revisionsBacklinksAdd to bookBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== Block ====== //Block// - style definition with open tag defined as character sequence and close block as character sequence or character set. <code xml><Blocks> <Block open="{" close="}"/> </Blocks></code> ===== Attributes ===== ==== open ==== Obligatory attribute, defining character sequence starting of syntax block. Shall be unique through of all styles allowed in [[syntax:styles#containers|open container]]. Block can have only one open tag. ==== close ==== Optional attribute, defining character sequence ending of syntax block. Block can have more than one close tag. Additional close tags can be defined inside of block as separated nodes <code xml><Block open="<script" close="</script>"> <Close text="/>"/> </Block></code> ==== start_pos ==== Indicates from which line column style should start (position of open tag). ==== first_pos ==== Alternative for start_pos, used if you want to specify first non white space position in the line. //start_pos// is absolute, and count all symbols. Can be used, for example for specifying comment style starting if found on before any non-white space character (inno_spec.xml). ==== escaping ==== The option controls, if escaping rules shall be used for the block. Make sense if [[syntax:specification##escapechar|EscapeChar]] is defined. Overwrites [[syntax:styles#escaping|escaping setting of style]]. Value: //true or false//\\ Default: [[syntax:styles#escaping|style escaping settings]] ==== noneof ==== Indicates, that tag stops, if next character is not found in provided set (like regular expression [0-9]* ). This attribute can be only used together with close tag. You need to define it in a node way: <code xml><Close noneof="0-9"/></code> ==== anyof ==== Indicates, that tag stops, if next character is found in provided set (like regular expression [^a-z]* ). This attribute can be only used together with close tag. You need to define it in a node way: <code xml><Close anyof="a-z"/></code> ==== text ==== Indicates that block should be treated as sequence (not open and close pair). In this case only char sequence provided in text attribute is highlighted. This can be used as workaround, if you want to define "keyword" which contains characters not mentioned in //Words// node.\\ The attribute can not be combined with open or close tags. ===== Special cases ===== If no close tag is provided (not as close attribute for block, not as Close node for block) than block is also treated as sequence (see text attribute). //open// tag than has same meaning as text. Better use text attribute, because missing close tag, when open is provided, is generally error in definition. The //open// tag is obligatory fixed (you can not use any dynamic condition here, till now). //open// tag should be unique in complete schema, otherwise first definition wins. There are several predefined attribute values: * If //close// tag contains symbol "\n", this mean that block ends by line end. * If //close// tag is empty close="", this mean that block is closed by first delimiter (space or one defined in schema).