Signficantly improved the performance of the story map, with minor
improvements to numerous other features. Thanks to Richard Lake and
Maarten ter Huurne for this.
Potentially fixed a crash involving dragging passages.
Fixed a bug where pasting passages would sometimes place them in
incorrect positions.
Added an "Update StoryIncludes Links" menu option, allowing
StoryIncludes passage availability to be manually refreshed. This
menu item will be disabled if StoryIncludes isn't present.
Added Option-Command-F as an alternative 'exit fullscreen' key
command.
Pressing control-A while typing in the passage title box should now
correctly select the title text.
If you highlight a link with separate link text and passage title
(such as [[link text|passage]]) then press control-L, a new
passage named "passage" (instead of "link text|passage") is created.
In the "create passages" prompt given when you close a passage
containing red links, the 'cancel' button now correctly cancels
closing the passage.
Fixed a bug where you couldn't import Twine HTML files which had
tags written in uppercase.
Fixed a bug where Twine HTML files with storeArea \<div>s with the
attribute "hidden" couldn't be imported.
Changed the MIME-type of imported TTF font files from
"application/x-font-ttf" to "application/font-sfnt", and added
"format(truetype)" to the generated @font-face CSS, and made similar
changes for OTF fonts.
Now, Twine will continue instead of crashing if, during startup, the
last opened story's format isn't available. Also, it will properly
error and quit if zero story formats are available (which should be
unlikely).
Changed the naming of custom story formats' Python files from
[story format name]/[story format name].py to [story format
name]/header.py, in order to fix the issue where if a user renames
the story format's directory, the custom Header file will no longer
be found. However, old story formats which still use [story format
name].py should continue to work correctly.
Fixed a missing Y in the "got itself in a mess" error message.
The storeArea's passage is now read using textContent instead of
innerText, fixing a number of minor bugs involving consecutive
whitespace in passages being truncated.