# 6.3.1

# HIGHLIGHTS

Attributes: Intervals

A new attribute type, Interval, represents time intervals and durations. For example, the interval value

> 01:25:40

represents a duration of one hour, twenty-five minutes, and forty seconds. The duration

> 01:30

represents one minute and thirty seconds. The duration

> 1h30

represents one hour and thirty minutes. A duration may be preceded by a number of days:

> 1 day 01:00:00 (25 hours)

> 2d2h30 (two days, two hours and 30 minutes)

An interval may have negative duration:

> -5:30

Intervals may be added or subtracted from durations, multiplied or divided by constants or numeric attributes, and may be compared for equality using == and != or for magnitude using < and >. Interval may be added to dates. Note that subtracting two dates does not currently return an interval — rather, it returns the number of days between the two dates.

The interval “2d5” is now treated as 2 days, 5 hours. (1544)

The interval “1h30m10s” is now treated as one hour, thirty minutes and 10 seconds; previously the seconds field was ignored in this format. (1544)

The function interval(start,end) returns the interval between two dates. For example,

> interval($Created,$Modified)

returns the interval between a note’s initial creation and its most recent modification.

The “unknown attribute” popover used when adding key attributes now lets you define interval attributes. (1542)

DEVONthink Integration

When any item is dragged from DEVONthink into Tinderbox, the newly-created note’s URL points to the DEVONthink database record for the original item. This has always been possible through the DEVONthink “Copy URL” command, but now it works seamlessly whenever you drag from DEVONthink. (Requires DEVONthink 2 or later)

Storyspace Support

Later this year, Eastgate expects to announce Storyspace 3, a new tool for writing hypertext narrative that builds on and extends the Storyspace legacy. Storyspace helped pioneer the craft of hypertext fiction, and Storyspace 3 will bring a wealth of new capabilities to this effort.

Tinderbox and Storyspace will share files, letting writers move seamlessly between them.

This release incorporates many changes in support of Storyspace, none of which should significantly affect Tinderbox. Several new System attributes have been added in the new Storyspace category, but these aren’t likely to provoke collisions.

Using Tinderbox From Other Applications

URLs that begin

> tinderbox://

let other tools link to Tinderbox documents and specific tabs, views, and notes. The tinderbox:// protocol has been substantially improved.

The protocol handler for tinderbox:// urls will now automatically open documents in the Recent Files list as well as documents that are already open.

The tinderbox:// protocol now accepts an additional command, select, which takes as an argument a semicolon-delimited list of IDs to be selected.

> tinderbox://Notes/Issues?select=1429560859

Alternatively, the argument can be a URL-encoded name

> tinderbox://Notes/Issues?select=Find%20Issues

If a single note is selected, Tinderbox will attempt to scroll it into view.

The contextual item menu for notes now contains an option to Copy Note URL which places the note’s tinderbox:// url on the clipboard. (1546)

Clarified fix 560, in which a contextual menu item places the URL of a document tab on the clipboard.

RevisedApplescriptManager to handle escaping more reliably, and corrected some mistakes in encoding tinderbox:// URLs.

# ALSO OF NOTE

Actions

Using undefined colors — such assigning a note the $Color “Red” or “rde” when you meant “red” — previously had undefined behavior. We now return a specific arbitrary color (currently a brick red) for all undefined colors. (1538)

The dot operators .uppercase, .lowercase, and .captialize had too high an operator precedence, and so expressions like MyList.at(n).substr(0,3).lowercase required extra parenthesis to be parsed correctly. (1495)

Actions restoring the default or inherited value of a visible attribute

> $Badge=;

incorrectly marked the attribute as changed even when the note’s value did not, in fact, change, potentially forcing necessary screen updates and interfering with scrolling.

Export

When exporting with $HTMLEntities false, some paragraphs ignored the note’s $HTMLEntities setting and export with entities anyway, causing difficulties when exporting East Asian languages (among others) to HTML. (1061, 1523, 1524)

New HTML markup elements ^firstSibling and ^lastSibling return the relative URL the the eldest and youngest sibling of this note, respectively.

Export as Text could display the export sheet in the inspector window if the inspector happened to have the keyboard focus. Tinderbox now disables Export As Text if the inspector has the focus. (1547)

Help

Corrected Help ▸ Feathering Your Nest ▸ Color Schemes

Many corrections to Tinderbox Help (thanks, Mark Anderson!)

Key Attributes

The formatting of dates in the Key Attribute table is now adjustable. By default, the date and time are shown using the system’s short formats for the current locale. Other formats may be chosen by changing the value of $KeyAttributeDateFormat. Suggested values include “L” and “l” to display only the date in long and short format respectively. (1421)

A new popup menu in the Text pane of Document settings lets you conveniently set the default format for dates in the Key Attribute Table. (1421)

In the key attribute table, the drop-down menu for set attributes now displays a checkmark next to items that are currently selected. (1519)

Typing in the key attributes picker prematurely ended an editing session if the text happened to include a text link or a smart link. Changing key attributes forced update rulers which toggled the text field, deselecting the token field and then reselecting it. (1525)

Maps

Tinderbox tabs should do a better job of keeping track of their scroll positions.

Avoid unsightly scrolling and unwanted boundary animation when dragging notes into a container. (1508)

Fixed several problems with the font button in Document Settings:Maps. (1539)

When right-clicking in the background of map views, Tinderbox displays the map coordinates of the click point as a disabled item in the menu.New Xcode beta.

Changing caption alignment in the caption pane of the Name inspector should now update the map view immediately. (1400)

Outlines

The “title bar” for agent icons is now heavier in outline view, allowing Tinderbox to better differentiate between agents that are running and those that are “off”. (1513)

Text

Ctrl-return now inserts a line break without also inserting a paragraph break. We avoid the conventional shift-return for this, on advice of the best authorities, because some typists press the shift key early in anticipation of capitalizing the first letter of a new paragraph. Ctrl-return should please Tinderbox users who work with poetry.

When editing the text pane, ⌘⌥-up-arrow and ⌘⌥-down arrow select the next and previous note, but now return the keyboard focus to the text pane. Previously, the view pane gained the focus. (1352)

Tinderbox no longer enforces $ParagraphSpacing if you override it while editing text. For example, if you are discussing a poem, you might want no additional spacing between lines of the poem, while still using $ParagraphSpacing to separate paragraphs. (1537 in part)

Automatic Link Detection (“Smart Links”), which makes URLs clickable (and blue) when typed in the text pane, is now disabled in template notes. (1489)

Forward-delete/fn-Delete when typed in the text pane was incorrectly intercepted and acted upon by the attribute browser view pane. (1536,1299)

Lengthy and complicated pastes were not inscribed in the document unless they were subsequently edited. If they were not inscribed, the text was also not marked as modified after pasting. (1548)

The text size of columns now adapts correctly to changes in the note’s font size and the view’s magnification. (1540)

Treemaps

Links may now be dragged from the parking spaces to notes in treemap view. (1514)

Workflow – Menus and Shortcuts

Added shortcut keys to item contextual menu’s entry for Roadmap ⇧⌥⌘-R (1516)

Document windows now remember whether or not the text ruler is visible. (1535)

The item contextual menu now includes Browse Links. (1549)

Browse Links is now disabled if the selected note has no links to browse.

# MISCELLANEOUS

Edicts failed to run at hourly intervals, because the edict queue was suspended and not reactivated.

New (beta) version of development environment, with numerous changes to accommodate new SDKs.

Numerous corrections in Actions and Dashboards, and several fixes to the corresponding Tinderbox document.

Rewrote Network Updates::CheckForLatestVersion to allow a longer timeout and more reliable operations.

Fixed a crash when choosing a scheme from the color scheme picker. (1512)

To prevent accidents, Forward-delete is no longer active in attribute browser. (1522)

Explode now uses the prototype “/Prototypes/exploded notes” to contain exploded notes, creating a prototype if none exists. The default prototype simply adds $ChildCount as a key attribute. (1521)

Fixed an intermittent problem with layout in the Explode popover. (1537)

While closing a document, took steps to ensure that roadmap and get info windows do not attempt to use pointers to the now-deleted hypertext object. (1509)

Changes in network code to support El Capitan.

Addressed a possible crash when closing a window that is in the process of rendering an HTML preview. (1118)

Addressed a crash when creating Agents from the menu bar, arising because Tinderbox was updating the screen before the agent was properly baked

Tinderbox no longer performs Storyspace OnVisit actions when a note is selected. (1533)

Addressed a crash that could occur when the outline view pane was narrow — but not too narrow – because it proved impossible to measure the text rectangles.

Fixed a possible crash when editing Tinderbox Code Fields, when trying to find the names of attributes that begin with a given prefix.