Making Mori a LinkBack server

Tags ( )

I'm now investigating LinkBack to add support to Mori for embedding data in Mori entry notes from other applications that support LinkBack. Although you should really check out the page for more information, let me present briefly how LinkBack works and then ask my question.

There's two parts of LinkBack application support, clients and servers. A client is an application that supports embedding data from a LinkBack server application. In Mori this would be like including an ER diagram you created in OmniGraffle in an entry about your new database. You will then be able to edit the diagram in OmniGraffle from Mori by double-clicking on the image of the diagram, which will launch OmniGraffle, where you can edit it. When you save in OmniGraffle, the update will be reflected in Mori.

A LinkBack server is an application, like OmniGraffle, from which you can embed data. In the case of OmniGraffle it's pictures of diagrams, if it was iMovie it would be a video. What, if anything, should Mori provide as a server application?

My thoughts are that it could provide the notes of entries, but that's not really all there is to Mori. The outline structure of entries, for some people, might be more useful in another application than the actual notes. Still others might find being able to embed an entire Mori document inside another document useful. At what level(s) should Mori be a server?

My initial thought is that the main value of LinkBack with Mori will be in having Mori be a client to include content from LinkBack server applications. But after that is working, what data do you guys think would be most useful in other programs?

I agree that the big benefit

I agree that the big benefit would be for Mori to work as a link-back client, and I'm not sure if it would be worth the effort, complication to make it work as a server. In general it seems like link-back server programs are mostly specialized content creators (like diagrams, charts, or stock feeds as described in their example) while "general" programs are mostly just clients. For example Nisus Writer is the driving force behind the standard and they don't appear to work as a server. (i could be wrong, but I couldn't figure out how to make Nisus work as a server, and didn't see anything in the docs)

More linkback thoughts

If you decide to work on this keep general file attachments in the back of your head. OmniOutliner seems to handle them both with nearly the same UI mechanism and it seems to work out quite well.

I'm not quite sure what you

I'm not quite sure what you mean. Mori already allows you to insert any file as an attachment, since this is a feature of RTFD (although not all file types are rendered).

Right, but the attachments

Right, but the attachments are embedded in the RTFD in the database and not accessible to the outside world. For things like images, sounds, movies, this works OK, but if you attach a file (like a word document) that you later want to open and edit, it doesn't work. In fact one of Mori's least endearing features is that as it now stands once you attach a file there is no way to open it again in an external application... well you can but you need to copy the attachment, paste into a TextEdit RTFD document, save, and then double click the document.

In text edit this works (i think) because the RTFD data is saved directly to disk in a package format with the attachment files hidden inside. And the default NSTextView knows how to open and find them in this case. But Mori doesn't store the RTFD in package format on disk, instead it's just a blob in the database that the NSTextView doesn't know how to handle. So at some point Mori (probably MITextStorage) needs to smarten up and save attachment files to disk when it is saved. And Mori's text view (or maybe attachment cells) needs to smarten up and load the attachment files created by MITextStorage when the cell is double clicked.

...

The plan is still to get everyone a preview of Mori today, but it's going to be central or western time today, because i've only got 3 minutes left of eastern time today :)

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.