Difference between revisions of "Xebra Create Tag Library"
(New page: This tutorial shows you how you can create a tag library for your own needs. It makes sense to add a custom library if some functionality recurs in your project(s). We will create a simple...) |
(→Setting up) |
||
Line 11: | Line 11: | ||
With this configuration we created a tag library with the namespace "font" and no tags. | With this configuration we created a tag library with the namespace "font" and no tags. | ||
+ | Since tag libraries are used as libraries we need to add a font_tag_library.ecf in the same folder as well: | ||
+ | |||
+ | <xml> | ||
+ | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
+ | <system xmlns="http://www.eiffel.com/developers/xml/configuration-1-5-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.eiffel.com/developers/xml/configuration-1-5-0 http://www.eiffel.com/developers/xml/configuration-1-5-0.xsd" name="font_tag_library" uuid="491B4344-79AF-43CB-891B-47EDEAC11056" library_target="font_tag_library"> | ||
+ | <target name="font_tag_library"> | ||
+ | <root all_classes="true"/> | ||
+ | <option full_class_checking="true" syntax="transitional"> | ||
+ | <assertions precondition="true" postcondition="true" check="true" invariant="true" loop="true" supplier_precondition="true"/> | ||
+ | </option> | ||
+ | <library name="base" location="$ISE_LIBRARY\library\base\base.ecf"/> | ||
+ | <library name="xebra_ast_elements" location="$XEBRA_DEV\eiffel_projects\library\xebra_ast_elements\xebra_ast_elements-voidunsafe.ecf"/> | ||
+ | <library name="xebra_tags" location="$XEBRA_DEV\eiffel_projects\library\xebra_tags\xebra_tags-voidunsafe.ecf"/> | ||
+ | <library name="xebra_utilities" location="$XEBRA_DEV\eiffel_projects\library\xebra_utilities\xebra_utilities-voidunsafe.ecf"/> | ||
+ | <cluster name="font_tag_library" location=".\" recursive="true"> | ||
+ | <file_rule> | ||
+ | <exclude>/EIFGENs$</exclude> | ||
+ | <exclude>/.svn$</exclude> | ||
+ | <exclude>/CVS$</exclude> | ||
+ | </file_rule> | ||
+ | </cluster> | ||
+ | </target> | ||
+ | </system> | ||
+ | </xml> | ||
=Adding Tags= | =Adding Tags= |
Revision as of 16:05, 23 July 2009
This tutorial shows you how you can create a tag library for your own needs. It makes sense to add a custom library if some functionality recurs in your project(s). We will create a simple tag library ("font") with a tag with the ability to format text as bold (bold).
Setting up
Every tag library needs a unique namespace (like xeb or page). We create a folder in $FONT_TAG_LIBRARY where we put all our configuration and tag library files. The API of our tag library is defined in a file called config.taglib and has to be located in $FONT_TAG_LIBRARY. Since we don't have any tags yet, the file will just contain a skeleton:
<taglib id="font"> </taglib>
With this configuration we created a tag library with the namespace "font" and no tags. Since tag libraries are used as libraries we need to add a font_tag_library.ecf in the same folder as well:
<?xml version="1.0" encoding="ISO-8859-1"?> <system xmlns="http://www.eiffel.com/developers/xml/configuration-1-5-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.eiffel.com/developers/xml/configuration-1-5-0 http://www.eiffel.com/developers/xml/configuration-1-5-0.xsd" name="font_tag_library" uuid="491B4344-79AF-43CB-891B-47EDEAC11056" library_target="font_tag_library"> <target name="font_tag_library"> <root all_classes="true"/> <option full_class_checking="true" syntax="transitional"> <assertions precondition="true" postcondition="true" check="true" invariant="true" loop="true" supplier_precondition="true"/> </option> <library name="base" location="$ISE_LIBRARY\library\base\base.ecf"/> <library name="xebra_ast_elements" location="$XEBRA_DEV\eiffel_projects\library\xebra_ast_elements\xebra_ast_elements-voidunsafe.ecf"/> <library name="xebra_tags" location="$XEBRA_DEV\eiffel_projects\library\xebra_tags\xebra_tags-voidunsafe.ecf"/> <library name="xebra_utilities" location="$XEBRA_DEV\eiffel_projects\library\xebra_utilities\xebra_utilities-voidunsafe.ecf"/> <cluster name="font_tag_library" location=".\" recursive="true"> <file_rule> <exclude>/EIFGENs$</exclude> <exclude>/.svn$</exclude> <exclude>/CVS$</exclude> </file_rule> </cluster> </target> </system>