Masters

In Curio you’ve been able to create your own reusable figure styles & stencils and idea space styles & templates. You can save these in your personal repository and use them across all of your projects.

You are able to update a style and re-save it to your personal repository. You can then use the updated style with new figures and apply it to existing figures. Likewise you can update a saved personal stencil or template and then create new instances which will reflect those changes.

However, existing figures or idea spaces that used one of those personal styles, stencils, or templates aren’t spontaneously updated throughout all of your projects, as that could get quite messy.

Master Styles, Stencils, and Templates

This changes in Curio Professional with master styles, stencils, and templates. These are private to a specific project which means Curio can support dynamic updates across all the idea spaces in that project.

Create a “Heading” master figure style, use it across your project. Later change the style to a larger point size and color and the style change is instantly reflected across all uses of the figure style.

Create a master figure stencil for an web site interface prototype and use it throughout a project, then later update that stencil with a different fill color and font choices and instantly the change is reflected across the project.

Lastly, create a master idea space template with headings, subheading, and positioned body text. Use it as a basis for dozens of idea spaces in your project. Later, change the master with additional elements, changed fonts, or repositioned figures, and the changes is reflected across your project.

Master Styles

A master style is one that is private to your project and, if the master style is updated, then those changes are immediately broadcast and applied to all idea spaces or figures that adopt that style. A master style can be created from scratch or from an existing style found in a personal, bundled, or external repository.

If you’re familiar with Pages, Word, or even css then master styles are similar to the style support you see in those apps, where you can change a style, say for “Heading 1”, and throughout your document all “Heading 1” text items are updated to reflect the new style.

Note that a style only defines the look of the idea space or figure. It doesn’t include any boilerplate text or images.

Sample Workflow

  1. Create a text figure that you’ll use for a heading on an idea space and use the inspector to style it the way you wish with appropriate colorings, fonts, etc.
  2. Right-click on the figure and save the style as a master style named “Heading”.
  3. Use the “Heading” style with other text figure instances scattered on idea spaces throughout your project.
  4. If you want to change its look, click on an instance, change any properties you wish using the inspector such as font size and text color, then click the Update button in the Styles inspector. Or, if you wish, you can right-click on the instance and choose update style from its context menu. You could also choose to reapply the style if you didn’t mean to change its look.

Instantly the style change is broadcast and applied to all figures that adopted that style.

Video ▶️

Watch a master figure style demonstration video on our YouTube channel.

Using the Style Inspector Shelf

The Style inspector now includes a Masters option in the repository popup so you can see the styles available in that pseudo-repository.

Other style inspector shelf changes related to masters include: - Copy to Masters
Right-click on a style that isn’t a master style and choose to Copy to Master to copy the style into a master style and then associate the selected idea space or figure with that new style. - Delete / Mail
Right-click on a master style to delete it, or mail it to a friend or Zengobi. - Update
A new Update button allows you to instantly update a changed a master or even a personal style with changes. Note that this performs the same action as right-clicking on the figure or idea space background and choosing Update Style.

Using the Galleries

Within the various idea space and figure galleries you’ll find a new Masters pseudo-repository there which contains all applicable master styles (and stencils/templates).

Other gallery changes related to masters include:

  • Copy to Masters
    Right-click on an idea space template, figure stencil, or style that’s not in the Masters repository and choose Copy to Masters.
  • Drag and Drop
    Drag-and-drop an idea space template, figure stencil, or style from another repository into the Masters repository folder to make a copy. You can also drag from Masters to Personal if you wish.
  • Delete
    Right-click on an idea space template, figure stencil, or style in Masters repository and choose Delete. You may also simply press the Delete key. Existing instances of a template or stencil will remain as-is.
  • Edit
    Right-click on a master idea space template or stencil and choose Edit Template / Edit Stencil to switch the Organizer to masters, select the appropriate master item, and display the template or stencil in the main viewing area for editing. Click the Done Editing Masters button at the bottom of the masters Organizer to end editing.

Using Master Styles

Create a Master Style

  1. Right-click on an idea space in the Organizer, the idea space’s background, or on a figure within an idea space and choose Save as Style.
  2. In the dialog that appears choose whether to create a personal style, a master style, or both a personal and a master style. Choosing both will allow you to use the style as a master in this project, but also places it into your personal repository so you can use it in other projects.

Updating a Master Style

  1. Make changes to the appearance of your idea space or figure.
  2. Right-click on the idea space or figure and choose Update Style or click the Update button on the Style panel in the inspector shelf.

Reverting or Reapplying an Original Master Style

  • If you make changes to an idea space or figure and want to reapply the original master styling for that object then right-click and choose Reapply Style.

Deleting a Master Style

  • In the Style panel of the inspector shelf, right-click on the style and choose Delete Style.

Sharing a Master Style

  • In the Style panel of the inspector shelf, right-click on the style and choose Send to Friend or choose Send to Zengobi if you’d like to share your style with other Curio customers.

Copying a Master Style into Your Personal Repository

  1. If you create a master style that you’d like to use in other projects then you need to copy it into your personal repository.
  2. In the Style panel of the inspector shelf, right-click on the style and choose Copy to Personal.

Master Figure Stencils

A master stencil is one that is private to your project and, if the master stencil is updated, then those changes are immediately broadcast and applied to instances of the stencil.

If you’re familiar with the app Sketch then master stencils are similar to that app’s symbol support, where you can change a symbol, say for an elaborate UI component, and throughout your document all instances of that component are updated to reflect the new changes.

Note that while a style only defines the look of a figure, a stencil can be made up of several figures and include text and images, as while as the style information associated with each item. When you use a stencil then you are essentially creating and using an exact copy of the original figure stencil.

Sample Workflow

  1. Create a text figure that you’ll use as a note figure with a special flag adornment, coloring, font, freeform size, and placeholder text.
  2. Right-click on the figure and save the stencil as a master stencil named “Note”.
  3. Using the Stencils shelf or the Insert > Styled Shape or Stencil gallery, insert that Note stencil onto idea spaces throughout your project.
  4. Edit the stencil either by right-clicking on an instance of the stencil on the idea space, or on the stencil itself in the Stencils shelf or insert gallery, or by finding the stencil in the new Masters Organizer, discussed below.
  5. Change the look and contents of the stencil then click Done Editing Masters button at the bottom of the masters Organizer to end editing and broadcast the changes throughout the project to any instances.

Instantly the changes to the stencil are broadcast throughout the project to any instances.

Video ▶️

Watch a master figure stencil demonstration video on our YouTube channel.

Overrides

You can make some changes to your stencil instance and they won’t be replaced when you change the master.

  • Figure Position
    Changes made to the positions of individual figures within a complex master stencil are not broadcast to instances.
  • Figure Size
    Changes made to the size of a master stencil are broadcast and applied to instances, unless you manually change the size of an instance. This is handy if you need to change the size of an instance to accommodate more text, for example.
  • Figure Text
    Changes made to the text contents of figures on the master stencil are broadcast to instances, unless you manually change the text of an instance.
  • Figure Style
    Changes made to the style of figures on the master stencil are broadcast to instances, unless you manually change the style of an instance including font and font size.

Limitations

While figure stencils are quite powerful they do have some limitations:

  • Meta data such as tags, resources, dates, percent complete, priority, rating, notes, etc., are not propagated to instances as merging and conflicts would be difficult to resolve.
  • If you delete a figure from a complex master stencil then instances are removed elsewhere in the project. However, if top-level figures are added to the master then those new figures do not suddenly appear elsewhere in the project.
    • Key Exception: If you delete a figure within a grouped figure then that change is reflected elsewhere.
  • Newly added or removed items found within collection figure stencils, such as nodes within a mind map, will not be broadcast to instances.
    • Key Exception: If you add a figure within a grouped figure then that change is reflected elsewhere.

Using the Masters Organizer

Click on the dropdown arrow on the Organizer sidebar toolbar button and choose the Show Masters item in the menu that appears. Alternatively you can also Shift-click the Organizer sidebar toolbar button to instantly show masters. The sidebar toolbar button will change itself to a highlighted broadcast symbol, which is the symbol Curio uses for masters as changes to masters are broadcast throughout your project.

The Organizer itself will change to show your project’s master idea space templates. Its background coloring is blue to emphasize that you are now in a new mode and this isn’t your normal Organizer. Use the tabbed button pair at the bottom to choose between master idea space templates and master figure stencils.

In general working in the Masters Organizer is similar to the normal Organizer, but here are some notes:

  • Master templates and stencils can be rearranged, renamed, and deleted, but they cannot be indented or color-coded.
  • Right-click to copy, paste, duplicate, rename, or delete a selected item.

We you are finished making changes to your master templates and stencils you can end editing by either:

  1. Clicking the Done Editing Masters button at the bottom of the masters Organizer, or
  2. Clicking the highlighted masters icon in the toolbar.

The Organizer toolbar button will change itself back to the standard sidebar icon and the Organizer will be restored to its previous state.

Using the Stencils Shelf

The Masters option also appears in the Stencils shelf so you can see the stencils available in that pseudo-repository.

Other style inspector shelf changes related to masters include:

  • Copy to Masters
    Right-click on a stencil that’s not in the Masters repository and choose Copy to Master Stencils.

Using the Galleries

When you click the Insert toolbar button and go into the various figure galleries, you’ll find a Masters pseudo-repository there which contains all master styles and stencils. Select a master stencil and click the Insert button to insert a new instance of that master into your idea space. If you later update the stencil then this instance will be updated as well.

Other gallery changes related to masters include:

  • Copy to Masters
    Right-click on an idea space template, figure stencil, or style that’s not in the Masters repository and choose Copy to Masters.
  • Drag and Drop
    Drag-and-drop an idea space template, figure stencil, or style from another repository into the Masters repository folder to make a copy. You can also drag from Masters to Personal if you wish.
  • Delete
    Right-click on an idea space template, figure stencil, or style in Masters repository and choose Delete. You may also simply press the Delete key. Existing instances of a template or stencil will remain as-is.
  • Edit
    Right-click on a master idea space template or stencil and choose Edit Template / Edit Stencil to switch the Organizer to masters, select the appropriate master item, and display the template or stencil in the main viewing area for editing. Click the Done Editing Masters button at the bottom of the masters Organizer to end editing.

Using Master Stencils

Create a Master Stencil

  1. Right-click on a figure within an idea space and choose Save as Figure Stencil.
  2. In the dialog that appears choose whether to create a personal stencil, a master stencil, or both a personal and a master stencil. Choosing both will allow you to use the stencil as a master in this project, but also places it into your personal repository so you can use it in other projects.

Editing a Master Stencil

  1. Right-click on an instance of the stencil on the idea space and choose Edit, or…
  2. Right-click on the master stencil itself in the Stencils shelf and choose Edit, or…
  3. Click on the dropdown arrow on the Organizer sidebar toolbar button and choose the Show Masters item in the menu that appears, then find and edit the stencil manually.
  4. The Organizer will switch to the Masters Organizer and you will then edit your stencil within an idea space view. Once you are done, click the Done Editing Masters button at the bottom of the masters Organizer to end editing and broadcast the changes throughout the project to any instances.

Deleting a Master Stencil

  • In the stencil gallery or shelf, right-click on the stencil and choose Delete Stencil.

Sharing a Master Stencil

  • In the stencil gallery or shelf, right-click on the stencil and choose Send to Friend or choose Send to Zengobi if you’d like to share your stencil with other Curio customers.

Copying a Master Stencil into Your Personal Repository

  1. If you create a master stencil that you’d like to use in other projects then you need to copy it into your personal repository.
  2. In the stencil gallery or shelf, right-click on the style and choose Copy to Personal.

Master Idea Space Templates

A master idea space template is one that is private to your project and, if the master template is updated, then those changes are immediately broadcast and applied to instances of the template.

If you’re familiar with Keynote or PowerPoint then master idea space templates are similar to the master slide feature in those apps, where you can change a particular master slide and throughout your presentation all slides based on that master are updated to reflect the new changes.

Note that while a style only defines the look of an idea space, an idea space template includes style information and any figures located on the idea space. When you use a template then you are essentially creating and using an exact copy of the original idea space template.

Sample Workflow

  1. Create an idea space with an appearance and containing the boilerplate figures you would like to use repeatedly throughout your project.
  2. Right-click on the idea space in the Organizer and choose “convert to master” to instantly save the idea space as a master template and then automatically convert the selected idea space into an instance of that master. Alternatively you can do the same thing via the “save as template” option from the context menu to show the standard save template dialog.
  3. Note that the icon for idea space instance now has a little master-broadcast icon so you know it inherits changes from a master template.
  4. Add new figures to this idea space instance, as you would work with a normal idea space.
  5. When you want to create another instance simply click the Add toolbar button and choose the master from the pick list where all masters are listed at the bottom with the little masters icon, or drill down in the idea space gallery and choose it from the masters repository.
  6. To edit an idea space’s master template, you can
    • Hold Option and double-click the idea space in the Organizer to zip right to it, or
    • Right-click on the Organizer item and choose “edit master”, or
    • Click on the dropdown arrow on the Organizer sidebar toolbar button and choose the Show Masters item in the menu that appears, then find the master to edit it.
  7. Change the look and contents of the master idea space template then click Done Editing Masters button at the bottom of the masters Organizer to end editing and broadcast the changes throughout the project to any instances.

Instantly the changes to the template are broadcast throughout the project to any instances, which could include other master templates that are based on this master template.

Video ▶️

Watch a master idea space template demonstration video on our YouTube channel.

Overrides

You can make some changes to your idea space instance and they won’t be replaced when you change the master.

  • Idea Space Dimensions
    Changes made to the dimensions of a master idea space are broadcast and applied to instances, unless you manually change the dimensions of an instance. Note that width and height are tracked separately so you can grow the idea space instance vertically and still inherit the width from the master, for example.
  • Figure Position
    Changes made to the positions of figures on the idea space master are broadcast and applied to instances, unless you manually change the size of an instance. This is handy if you need to change the size of an instance to accommodate more text, for example.
  • Figure Size
    Changes made to the size of figures on the idea space master are broadcast and applied to instances, unless you manually change the size of an instance. This is handy if you need to change the size of an instance to accommodate more text, for example.
  • Figure Text
    Changes made to the text contents of figures on the idea space master are broadcast to instances, unless you manually change the text of an instance.
  • Figure Style
    Changes made to the style of figures on the idea space master are broadcast to instances, unless you manually change the style of an instance including font and font size.

Limitations

While master idea space templates are quite powerful they do have some limitations:

  • Newly added or removed items found within collection figures, such as nodes within a mind map, will not be broadcast to instances.

Warning

While working on a master template it is very important to remember if you delete a top-level figure, or move a top-level figure into a collection, then when you commit the changes those figures that have not been edited will be deleted from all idea spaces that inherit from the master. If the inherited figure has been edited then it will remain on the idea space, even if the figure on the master was deleted, in order to prevent accidental deletion of important data.

Using the Masters Organizer

Click on the dropdown arrow on the Organizer sidebar toolbar button and choose the Show Masters item in the menu that appears. The sidebar toolbar button will change itself to a highlighted broadcast symbol, which is the symbol Curio uses for masters as changes to masters are broadcast throughout your project.

The Organizer itself will change to show your project’s master idea space templates. Its background coloring is blue to emphasize that you are now in a new mode and this isn’t your normal Organizer. Use the tabbed button pair at the bottom to choose between master idea space templates and master figure stencils.

In general working in the Masters Organizer is similar to the normal Organizer, but here are some notes:

  • Master templates and stencils can be rearranged, renamed, and deleted, but they cannot be indented or color-coded.
  • Right-click to copy, paste, duplicate, rename, or delete a selected item.

We you are finished making changes to your master templates and stencils you can end editing by either:

  1. Clicking the Done Editing Masters button at the bottom of the masters Organizer, or
  2. Clicking the highlighted masters icon in the toolbar.

The Organizer toolbar button will change itself back to the standard sidebar icon and the Organizer will be restored to its previous state.

Adding a Master Template Instance

To add an instance of a master template to your project, click the Add toolbar button you’ll notice that any master templates are listed at the very bottom of the popup, with the masters “broadcast” symbol on the right side. Choose one and a new idea space instance of that master template will be added to your project.

Notice when you use a master template to create an idea space, the preview image for the new idea space in the Organizer will show a little masters broadcast symbol in its lower-right corner. This way you know it’s based on a master template.

Nested Masters

You can create a master template which is itself based on a master template.

Switch over to the Masters Organizer, then create a new master based on an existing master using the Add toolbar button. That new master will inherit changes made to its “parent” master. You can continue this process so that changes to Master A go to Master B go to Master C go to…

This might be useful if you define a “Background” idea space master then create duplicates that define “Chapter” and “Slide” masters. Change the background of Background and instantly all masters change and thus all instances of all of those masters change.

Using the Galleries

When you click the Add toolbar button and go into the idea space gallery, you’ll find a Masters pseudo-repository there which contains all master idea space styles and templates. Select a master template and click the Choose button to add a new instance of the master to your project. If you later update the master template then this instance will be updated as well.

Other gallery changes related to masters include:

  • Copy to Masters
    Right-click on an idea space template, figure stencil, or style that’s not in the Masters repository and choose Copy to Masters.
  • Drag and Drop
    Drag-and-drop an idea space template, figure stencil, or style from another repository into the Masters repository folder to make a copy. You can also drag from Masters to Personal if you wish.
  • Delete
    Right-click on an idea space template, figure stencil, or style in Masters repository and choose Delete. You may also simply press the Delete key. Existing instances of a template or stencil will remain as-is.
  • Edit
    Right-click on a master idea space template or stencil and choose Edit Template / Edit Stencil to switch the Organizer to masters, select the appropriate master item, and display the template or stencil in the main viewing area for editing. Click the Done Editing Masters button at the bottom of the masters Organizer to end editing.

Tagged Sets of Master Idea Space Templates

If you create a whole series of master idea spaces for a project and want to re-use them it’s super easy! Just select all the master idea spaces in the Masters Organizer, right-click and choose to save them to a named tagged set in your personal repository, such as “Portfolio”. You can choose an existing tag or enter a new name.

Later when you want to use that set, simply choose File > New, select the name of your personal tag set, “Portfolio” in this case, and click the Use Tagged Set as Masters button. A new project will be created with all the idea spaces in that tagged set preloaded as master idea space templates.

Master Styles via Master Templates

Say you define that “Heading” master figure style then you apply it to figures on several master idea space templates. Change the master style and then all master templates update and thus all instances of those master templates update.

Next, say you save your master idea space as a personal idea space template (or perhaps as a tagged set in your personal repository) then you use that template in another project. If that template becomes a master template then any master styles embedded within the template will be automatically recovered and available as master styles in the new project.

Note this only happens if the idea space template becomes a master again, simply inserting an instance of the personal template into your Organizer won’t recover the master styles. You could do this via tagged sets, described above, or the convert to master idea space template right-click option in the Organizer.

Using Master Templates

Create a Master Template

  1. Right-click on an idea space and choose Save as Master Template, or…
  2. In the Masters Organizer, you can create a new master template using the Add toolbar button. With this technique you can create a master template based on another master template, thus nesting the templates. Changing a “parent” master will reflect those changes down the line to other masters (recursively), and then refresh all impacted idea spaces that use those masters.
  3. In the Masters Organizer, you can duplicate an existing master template via the Edit > Duplicate menu item. The result is another master which is an exact copy of the original master.

Editing a Master Template

  1. Hold Option and double-click the idea space instance in the Organizer, or…
  2. Right-click on the idea space instance in the Organizer and choose Edit, or…
  3. Click on the dropdown arrow on the Organizer sidebar toolbar button and choose the Show Masters item in the menu that appears, then find and edit the template manually.
  4. The Organizer will switch to the Masters Organizer where you can edit your master idea space template.
  5. Once you are done, simply click the Done Editing Masters button at the bottom of the masters Organizer to end editing to save and broadcast the changes throughout the project to any instances.

Deleting a Master Template

  1. Click on the dropdown arrow on the Organizer sidebar toolbar button and choose the Show Masters item in the menu that appears.
  2. Select the master template you wish to delete and press the Delete key. Note that all uses of this master will still remain intact in your project.

Sharing a Master Template

  • In the add idea space gallery, right-click on the template and choose Send to Friend or choose Send to Zengobi if you’d like to share your template with other Curio customers.

Copying a Master Template into Your Personal Repository

  1. If you create a master template that you’d like to use in other projects then you need to copy it into your personal repository.
  2. In the add idea space gallery, right-click on the style and choose Copy to Personal.

Disconnecting from a Master Template

  • If you want to disconnect a master template instance from its master then right-click and choose Disconnect from Master. After confirmation, the idea space will be independent and no longer receive updates from its former master template.

Assigning Identifiers to Figures to Support Change Master

  1. When editing a master template, select a figure and click the Info inspector bar button to bring up the Info inspector popover.
  2. There you can enter an identifier such as title, subheading, or body.
  3. Curio uses identifiers with the same names across different masters to support the Change Master functionality.

Changing to a Different Master

  1. You can change an idea space so it adopts a different master either by right-clicking on the idea space in the Organizer and choose Change to Master, or click on the new master at the top of the inspector shelf.
  2. Note this list of master templates you can change to is filtered to only include other masters which support figures with identifiers that the user has changed in the current idea space. Therefore if, in your instance, you have changed the “title” figure then only other masters that contain a “title” figure will available. That way you can’t switch to a master that wouldn’t support your changed figure.

Creating a Reusable Set of Master Templates for Use in Creating New Projects

  1. Click on the dropdown arrow on the Organizer sidebar toolbar button and choose the Show Masters item in the menu that appears.
  2. Select all the masters you wish to want to include in the set.
  3. Right-click and choose Save to Tagged Set.
  4. Enter a new tag or choose an existing tag to add to an existing set.

Using a Tagged Set of Masters When Creating a New Project

  1. Choose the File > New menu item to bring up the new project gallery.
  2. On the far left, expand the list of templates available under the Personal repository.
  3. Select the name of your personal tag set then click the Use Tagged Set as Masters button.
  4. A new project will be created with all the idea spaces in that tagged set preloaded as master idea space templates.

Change Masters

Normally you can’t apply an idea space template to an existing idea space, since Curio wouldn’t know what to do with the existing figures. However, this is indeed possible with master templates and a new figure identifier property.

Recall that a master template defines the style of the idea space and contains boilerplate figures. In many instances you may want those boilerplate figures to be placeholders (perhaps with “lorem ipsum…” text) that you’ll edit and fill in with real data in the instance of the template.

For instance, you may have master templates with “title” and “body” placeholder text figures but where the figures are positioned and styled very differently. Perhaps these templates also contain other figures unique to themselves in addition to those placeholder items. If you create an instance of one of these masters, edit and replace all the placeholders, then realize you wish you had used a different master, it would be nice if you can click to switch it to the stylings of the other, without having to recreate the whole thing from scratch.

Identifier

Using the new figure Identifier field, accessible via the figure’s Info inspector, this is now possible. Curio has what it needs to map placeholders figures from one master to another.

Edit your master templates and give the figures that represent placeholder items appropriate identifier values, such as “title” and “body”.

Identifier Glow

When you edit an idea space that has figures with locally defined identifiers (that is, not inherited from a master) then those figures will glow green instead of blue and their tooltips will show their identifiers. This is helpful when you want to quickly make sure appropriate figures have set identifiers.

Change Master

Click Done to exist editing masters, then create a new instance of one of those masters.

Edit and change the placeholder text as necessary. If you decide you want to change to the different master, notice that the normal styles area of the inspector shelf shows master templates for the idea space instead. Just click on a different master in the inspector, or right-click on the idea space in the Organizer and choose Change Master, to instantly change to that master.

Behind the scenes, Curio will style the idea space to match the new master’s style, use the identifiers to map figures from the old master to the new master thus keeping their contents intact, remove any figures that were unique to the old master, add any figures that are a part of the new master, and leave any figures you added on your own to the instance in place, as is.

As a note, this list of master templates you can change to is filtered to only include other masters which support figures with identifiers that the user has changed in the current idea space. Therefore if, in your instance, you have changed the “title” figure then only other masters that contain a “title” figure will available. That way you can’t switch to a master that wouldn’t support your changed figure.

Master Markdown Styles

Heavy users of markdown will appreciate Curio’s support for master markdown styles.

Using a specified style file, Curio can apply styling attributes to certain markdown elements within a project.

Since Curio’s markdown is rendered within a rich text view, instead of a web view, our file format is a bit different than markdown styles created using css. However, many of the same features are supported.

Here’s a portion of a sample master markdown style file:

body = font-family:Helvetica Neue;font-size:16;font-color:#666666;
* = font-color:#ff0000;
** = font-color:#00bb00;
*** = font-color:#0000ff;
highlight = background-color:rgb(150, 0, 255, 0.10);
# = font-family:Helvetica Neue UltraLight;font-size:32;font-color:#376098;
## = font-family:Helvetica;font-size:28;font-color:#ff00ff;font-bold:1;
- = line-spacing:5; paragraph-spacing-after:20;
> = font-color:#338888; font-italic:1; first-line-head-indent:36; head-indent:36; tail-indent:-36;
` = background-color: #f1ffff; font-color: #00ff00;
``` = background-color: #fff1ff;

It’s a pretty simple text file format:

  • Each element (body, *, #, …, ######, etc) is defined on its own line.
  • The font attributes are a semicolon-delimited collection of key/value pairings each separated by a colon.
  • Spaces before and after the =, :, and ; are ignored.

When the style file is changed, the updated style changes will be broadcast throughout your project instantly updating all text figures which use those markdown elements.

Working with the Master Markdown Style File

Edit the Global Master Markdown Style File

Hold Option when clicking the Format menu and you will see the Format > Edit Global Master Markdown Style File menu item. This allows you to edit the Markdown Styles.txt file in your personal repository (~/Library/Application Support/Curio/Version XX/Repository folder).

It defines the default master markdown styles for all Curio projects. Styles defined in that file will be read first, then you can override or add more styles with your project specific master markdown styles.

Edit a Project’s Master Markdown Style File

  1. Use the Format > Edit Master Markdown Style File menu item to edit your project’s master style file in the default editor for .txt files, such as TextEdit.
  2. When you save your changes and switch back to Curio, Curio will automatically notice the updates and re-render your visible idea spaces and queue up preview regeneration for all project idea spaces just in case they contain markdown as well.
  3. If you remove the contents of the style file then the file itself will be automatically removed from the project package when you switch back to Curio.

Import a Master Markdown Style File into a Project

  • Alternatively, if you have an existing markdown style file you wish to use, choose the Format > Import Master Markdown Style File menu item and the file will be copied into your project and then stylings applied throughout.

Markdown Style Common Attributes

Here are the attributes you can set for many of the markdown elements detailed below:

Attribute Example Description
font-family:Helvetica The specific font face like “Helvetica Neue UltraLight” or general font family like “Helvetica”.
font-size:32 The font size.
font-color:#ffff00 The color for the font, in hex syntax.
font-bold:1 Enable bold. Useful if a general font family is specified instead of specific font face.
font-italic:1 Enable italics. Useful if a general font family is specified instead of specific font face.
font-underline:1 Enable underline.
font-strikethrough:1 Enable strikethrough.
font-smallcaps:1 Enable small caps. Note only a few fonts support small caps, see details below.
line-height:22 A forced line height in points (default is 0 for automatic).
line-height-multiple:1.2 The natural line height will be multiplied by this value (default is 1).
line-spacing:5 The additional distance in points between lines (default is 0).
paragraph-spacing-before:5 The distance in points before this header (default is 5).
paragraph-spacing-after:2 The distance in points after this header (default is 2).
Small Caps

You can enable a small caps setting, as shown above, but note that only a few fonts actually support true small caps. Curio will not attempt to perform a fake small caps by uppercasing lowercased letters and decreasing their font size.

You can determine which fonts installed on your system support true small caps.

  1. Launch TextEdit.
  2. Bring up the standard macOS Fonts helper (⌘T) and then use the actions button to bring up the Typography window.
  3. Then select various fonts until the Lower Case option appears in Typography with a Small Capitals value.

For example, Avenir Next and SF Pro support small caps, for example, but the very popular Helvetica font does not.

Markdown Body Text

By default the markdown syntax, like bold, will be applied to whatever font is assigned to the text figure itself.

However, you can define an override body text file like this:

body = font-family:Helvetica Neue;font-size:16;font-color:#666666;

Markdown Italic and Bold Text

Italic (*sample*), bold (**sample**), and both italic and bold (***sample***) can be styled like this:

* = font-color:#ff0000;
** = font-color:#00bb00;
*** = font-color:#0000ff;

Markdown Header Text

The six markdown headers (#, …, ######) can be styled like this:

# = font-family:Helvetica Neue UltraLight;font-size:32;font-color:#376098;
## = font-family:Helvetica;font-size:28;font-color:#ff00ff;font-bold:1;

Markdown Lists

List items (-) can be defined with the following additional attributes:

Attribute Example Description
line-spacing:5 An additional distance in points between a list item’s wrapped lines (default is 0).
paragraph-spacing-after:20 An additional distance in points between list items (default is 0).

Like this:

- = font-color:#333333; font-size:14; line-spacing:5; paragraph-spacing-after:20;

Markdown Tables

Table cells (table-cell) can be styled with the following additional attributes:

Attribute Example Description
cell-color:#333333 The cell background color.
border-color:#ffffff The cell border color.
border-width:1 The cell border width.
padding:5 The cell padding.

There are other related cell styles which inherit table-cell values by default but you can override specific values if you wish:

  • Header row cells: table-cell-header
  • Footer row cells: table-cell-footer
  • Left column cells: table-cell-left
  • Right column cells: table-cell-right
  • Alternating row cells: table-cell-alt

Like this:

table-cell = border-color:#d4d9dd; 
table-cell-alt = cell-color:#f6f8fa
table-cell-header = cell-color:#666666; border-color:#d4d9dd; font-color:#ffffff; font-size:14; font-bold:1
table-cell-footer = cell-color:#dddddd; font-bold:1
table-cell-left = cell-color:#eeeeee
table-cell-right = cell-color:#eeeeee

Markdown Block Quotes

The style for block quotes (>) can be defined with the following additional attributes:

Attribute Example Description
first-line-head-indent:36; The distance from the leading margin to the beginning of the paragraph’s first line (default is 18).
head-indent:36 The distance from the leading margin to the beginning of lines other than the first (default is 18).
tail-indent:-36 The distance from the trailing margin (default is -18).

Like this:

> = font-color:#338888; font-italic:1; first-line-head-indent:36; head-indent:36; tail-indent:-36;
Limitations

Curio’s blockquote styling has some limitations compared to HTML/CSS renderers due to its reliance on the Mac’s internal rich text framework. For instance, the rich text system doesn’t support a left or right border. Also we’ve been unable to figure out a way of supporting text which is both indented and background colored. The text system doesn’t want to color the first indent so the result looks odd.

Markdown Code Blocks

Code blocks (```) and inline code (`) styles can be defined with the same attributes as described above. Specifically background-color and font-color may be useful.

` = background-color:#eeeeee; font-color:#338888;
``` = background-color:#eeeeee; font-color:#338888;