Tips for Working with the HotDocs Markup Tool

In working on the CIC exam for HotDocs, I took the opportunity to master the HotDocs Markup Tool and HotDocs Template Generator.  In this article, I examine some tips on how to use the tool to the best advantage.

HotDocs has recently released the HotDocs Markup Tool.  A few of you may have dismissed it as a toy … real coders don’t need markup tools.  But I took the challenge to see if I could find a use for the tool.  Following the NYMetro user’s group where Marshall demonstrated the tool, I started seeing additional features, not obvious on the surface that have been built into the tool.

Now, I am a big believer in planning.  I build spreadsheets for complete template systems.  I layout all the fields, organize by topic and series and name consistently.  The concept of a markup tool, therefore is appealing, but only if I can have my categories and groupings.

Conclusions about the Tool

There are limitations to the tool, but on balance, its ability to write directly to a HotDocs component file and to interpret directly IF expressions and variables with formatting, promise the potential of much faster template development.  Doing work faster and more efficiently means projects get done.  There is a value to finishing, as a significant number of HotDocs systems never get finished.

So … if you are going to use the tool, here are some tips

  • Code: This is the markup that will actually show up in the document.  Use abbreviations that group the variables by target dialog and then identify the type of variable.  Do not try to get the exact HotDocs variable name.  Use something descriptive.
  • Variable Name:  Take some time to think out the variable name.  Realize, this is a database, so you can change the variable name BEFORE you publish it into a component file.  Give it your best shot.  Use a prefix that groups the variable by the target dialog.  Use a suffix that identifies the data type.
  • Type:  This is merely a matter of telling which type of component to create.  There is now support for Multiple choice variables.  Also, note the support for computation variables.  This does not mean you can actually create the computation, but you can place a computed variable in the template and it will create a blank computation that you will later use.
  • Default:  This is the format example.  It is worthwhile setting this, particularly for dates and numbers.
  • Options:  This applies only to Multiple Choice variables.  There is support for setting both the options and the prompts
  • Resources:  This is a fancy name for Help Text.  For some reason, HotDocs persists in calling this “resources” when it is really just links for help text. At the moment, the only support is for the standard help text, not for links and URLs
  • Notes:  Very useful for notes and status.  Not sure where these end up in the component file.

Now what can be done with the data?

  • Drag and Drop:  You can drag and drop from the list into a template.  It uses square bracket notation for the variables
  • Add Logic:  The square bracket notation can also read IF expressions and Repeats and End Repeats, End Ifs etc and translates them into chevron notation.  It is not clear whether the if expressions can use the pseudo variables in the markup and replace them with the actual variables or whether you have to use the HotDocs Variable.
  • Copy All Rows to Clipboard:  This lets you copy the complete database to the windows clipboard.  You can then “paste” it into a spreadsheet.
  • Paste Rows from Clipbard:  Assuming your clipboard matches the columns on the spreadsheet, you can now copy from Excel into your markup database, effectively creating a data dictionary that you can supply to your authors for template markup.