## Global State
Mindtouch.0100.illegalnames-urldecode.property=true
Mindtouch.0201.switch.hierarchy-builder=UseBuilder
Mindtouch.0202.classname.hierarchy-builder=com.atlassian.uwc.hierarchies.MindtouchHierarchy
## SET THIS - to the root directory of your export, or you'll end up with
## too many root directories when the hierarchy is created
#Mindtouch.0203.filepath-hierarchy-ignorable-ancestors.property=/Users/laura/tmp/exported_mindtouch_pages
Mindtouch.0204.filepath-hierarchy-ext.property=
Mindtouch.0205.filepath-hierarchy-matchpagename.property=false
Mindtouch.0300.justxml.filter=.xml
## Basic Syntax
Mindtouch.4100.bold.xmlevent={tag}b,strong{class}com.atlassian.uwc.converters.xml.example.BoldParser
Mindtouch.4110.italic.xmlevent={tag}i,em{class}com.atlassian.uwc.converters.xml.ItalicParser
Mindtouch.4120.underline.xmlevent={tag}u{class}com.atlassian.uwc.converters.xml.UnderlineParser
Mindtouch.4130.strike.xmlevent={tag}strike{class}com.atlassian.uwc.converters.xml.StrikeParser
Mindtouch.4140.quote.xmlevent={tag}blockquote{class}com.atlassian.uwc.converters.xml.QuoteParser
Mindtouch.4150.code.xmlevent={tag}code{class}com.atlassian.uwc.converters.xml.MonoParser
## Color and other styles
Mindtouch.4160.style.xmlevent={tag}span{class}com.atlassian.uwc.converters.mindtouch.StyleParser
## Headers
Mindtouch.4170.headers.xmlevent={tag}h1,h2,h3,h4,h5,h6{class}com.atlassian.uwc.converters.mindtouch.HeaderParser
## Lists
Mindtouch.4200.lists.xmlevent={tag}ol,ul,li{class}com.atlassian.uwc.converters.xml.ListParser
## Links
## SET THIS - used by the LinkParser to determine correct whitespace when
## linking to internal pages. You should set it to the location
## of your export directory.
#Mindtouch.4300.exportdir.property=/Users/laura/tmp/exported_mindtouch_pages
Mindtouch.4300.links.xmlevent={tag}a{class}com.atlassian.uwc.converters.mindtouch.LinkParser
## Tables
Mindtouch.4400.tables.xmlevent={tag}table,thead,tbody,tr,th,td,caption{class}com.atlassian.uwc.converters.mindtouch.TableParser
## Clean up unnecessary data
Mindtouch.4500.clean.java-regex=(?s)<body[^>]+target=[\"']toc[\"'].*?<\/body>{replace-with}
Mindtouch.4510.clean.java-regex=\u00a0{replace-with}
## Titles
## Hack the first content object so we keep it seperate from the comment's conntent objects
Mindtouch.4600.pagetitle.java-regex=(?<=<pagedata>)(?s)<content (.*?)<\/content>{replace-with}<page.content $1</page.content>
Mindtouch.4610.pagetitle.xmlevent={tag}page.content{class}com.atlassian.uwc.converters.mindtouch.TitleParser
## Comments
## * Set the date formatting using SimpleDateFormat patterns
## * http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html
## * comment-date-xmlformat represents how date.posted is formatted 
##   (minus TO and Z strings)
## * comment-date-renderformat represents how we should format it in Confluence
Mindtouch.4700.comment-date-xmlformat.property=yyyy-MM-dd HH:mm:ss
Mindtouch.4700.comment-date-renderformat.property=HH:mm, d MMM yyyy
Mindtouch.4700.comments.xmlevent={tag}comment,username,date.posted,content{class}com.atlassian.uwc.converters.mindtouch.CommentParser
## Tags
Mindtouch.4800.tags.xmlevent={tag}tag{class}com.atlassian.uwc.converters.mindtouch.TagParser
## Attachments
Mindtouch.4900.image.xmlevent={tag}img{class}com.atlassian.uwc.converters.mindtouch.ImageParser
Mindtouch.4910.attachments.xmlevent={tag}files{class}com.atlassian.uwc.converters.mindtouch.AttachmentParser
## Clean
Mindtouch.4990.clean.xmlevent={tag}nick,email,title,hash.email,uri.gravatar,number,description,filename,date,created.user,uri.ui,path,namespace,type,uri,date.created,contents,date.modified{class}com.atlassian.uwc.converters.mindtouch.CleanParser
Mindtouch.4991.trim-start.java-regex=(<((strong)|(em)|(i)(b)|(strike)|(u))>) +{replace-with}$1
Mindtouch.4992.trim-end.java-regex= +(<\/((strong)|(em)|(i)|(u)|(b)|(strike))>){replace-with}$1
## Parse XML 
Mindtouch.5000.xml.class=com.atlassian.uwc.converters.xml.XmlConverter

## Add a newline to end of doc (makes regression tests easier)
Mindtouch.9000.addnl.java-regex=(.)${replace-with}$1NEWLINE
