Using Hookmark with EagleFiler by C-Command Software

This webpage documents Hookmark’s integration with EagleFiler, which is great personal information management software. EagleFiler enables you to organize, search, and archive your e-mail, web pages, files, and miscellaneous scraps of information. Your EagleFiler files are not stored in a proprietary database. EagleFiler stores content directly in the Finder; this makes it easy for you to access and modify the files in the software of your choice in an open, future-proof manner. EagleFiler is developed by C-Command Software, a company led by Michael Tsai.

Address (URL) used by Hookmark for EagleFiler items

When you select a file in EagleFiler and invoke Hookmark, Hookmark will resolve the file’s address in relation to the file system, generating a hook://file/ address rather than a x-eaglefiler:// address. Hookmark will then use this address to find all items that are linked to the file. This has the advantage that whether you invoke Hookmark on this resource in any app, Hookmark will always generate the same address for it. Therefore in the Hookmark contextual window, you will always see all the links from this resource, whether you are accessing this file in EagleFiler or another app (e.g., Preview, Skim, OmniOutliner, BBEdit, etc.)

Linking to new items stored in an EagleFiler library

Previous versions of the Hookmark integration scripts included a “Hook to New > EagleFiler” script. (See this). We’ve taken this out for the time being, for the following reasons.

First, there is a more general way to use Hookmark to create new content in EagleFiler. Users can set the default folder in which to create new files to be:

a. a folder that is scanned (watched) by EagleFiler. See EagleFiler Manual: Scan for New Files; or
b. an EagleFiler Library folder.

That is easy because EagleFiler stores its content directly in the Finder (i.e., on the file system).

It is also quite convenient. Because that puts Hookmark-generated content exactly where EagleFiler users want their content: in an EagleFiler library!

Hookmark users find themselves creating a lot of content with Hookmark’s very handy “Hook to New” command. Using EagleFiler and Hookmark together therefore makes a ton of sense.

Hookmark’s previous integration with EagleFiler

Hookmark’s integration with EagleFiler changed substantially on Feb 9, 2020 with version 100 of its integration scripts.

If you prefer, you can continue to use Hookmark’s previous integration with EagleFiler, by using the scripts described on this web page.

Future possibilities

Hookmark supports Reveal File in Finder; however, it does not currently support Reveal File in EagleFiler. This may be possible in the future. In fact, we are investigating generalizing this type of function to any app that has a library window (such as Apple Mail, OmniFocus, DEVONthink, Evernote and Things). The “reveal item in app” function would be analogous to the “open” function, except it would open them rather than reveal them.

Hookmark currently only supports one address scheme per app. As of this writing (2020-01-09) no one has asked us to lift this restriction. However, we can see benefits of doing so in edge cases. In particular, it would enable Reveal File in ... in a cross-app manner. So, in the future this restriction might be lifted. We alluded to this here

This would require that apps provide an API that takes one address as input, and returns another address as output. For instance, EagleFiler might take a file path, or partial path, as input and return an x-eaglefiler:// address. Another useful candidate for this would be DEVONthink, which does not yet provide convenient AppleScript for this as far as we know. We will discuss DEVONthink separately.


While we’re on the subject of C-Command Software, we should point out that Hookmark’s DMG is packaged using C-Command Software’s excellent DropDMG: The easy way to create and convert Mac disk images (.dmg files).

For information about this and other C-Command Mac Software, see its website.