.highland is custom file format we developed to support the large feature set of Highland 2.
Based on the TextBundle file format, .highland was developed with the goals of maximizing compatibility while being flexible enough for us to add more features down the road.
.highland files are compressed using Zip to enable better drag-and-drop support and reduce file sizes.
.highland files are compressed versions of a customized .textbundle file. Like all TextBundle files, inside are the following contents:
|text.*||A plain text .fountain, .markdown, or .txt file that holds the main text of the document|
|info.json||Holds all the document metadata, including app specific settings|
|assets/||A folder holding any images the document needs|
In addition, a .highland document may store the user’s binned items, character highlighting data, gender analysis data, sprints, and milestones.
Yes! Highland 2 can open and edit .fountain, .markdown, and .txt files without a hitch. However, some of Highland 2’s cooler features (and more to come) require the .highland file format. You can convert from plain text to .highland, and export any .highland file to a plain text file at any time.
Not yet, but we plan to publish a full spec for the .highland format along with sample code to help you incorporate support into your own apps. However, because .highland is new we want to iron out all the kinks and make sure we optimize the format before releasing the spec.
Update (November 2019): As we add support for new platforms, the .highland format continues to evolve. So while it’s too soon to publish a full spec, we pledge to maintain compatibility with TextBundle. Most importantly, the plain text in the main directory reflects the current content of the document. Developers working with .highland files should take care to copy all subdirectories in order to prevent loss of metadata, such as revisions and security-scoped bookmarks.