Workaround for Mozilla browsers?

In the Mozilla Firefox forum, a user posed this question:

>>firefox (like mozilla) doesn’t support os x’s “services”. i rely on services … especially when browsing and storing websites in devonThink (a database) via services. this means: when i am on a web page i want to store as .rtfd via safari or camino (the only browsers so far supporting “services” … i highlight the parts i want to save, go to the services menu and select devonThink -> save as rtf, thats it - everything including the graphics gets neatly stored in the database). <<

This is also my dilemma. Firefox is my default browser and is likely to remain so. As I understand it, support for Services cannot happen because this is not a native-Mac Cocoa app.

Is there a workaround to ease the use of DEVONthink in this situation? I can imagine a clumsy, multi-step process to get the job done, but that rather defeats the elegance of the technology, no?

Thanks in advance!

Use PDf services. "Print" the web page, but instead of printing it out, save it as a pdf in DT.

My understanding is that support for System Services is available for Carbon applications but most developers don’t use it.

Thanks for the feedback!

For some reason (likely no fault of DEVON’s) the print-to-PDF trick does not work with the current (0.8+) preview version of Firefox that I’m using. I am reluctant to draw any conclusions from this.

The pdf thing is part of OSX printing and PDF services built into OS X, AFAIK.

Although Safari is my default browser, I do use other browsers on occasion.

But I rarely use the OS X Services mode to capture Web page content into DEVONthink – at lease, for working with Web sites that I frequently visit. I did that in the past, but because Services doesn’t allow capture of the URL along with page content, I always had to copy the URL from the Web page, then paste it into the new DEVONthink item.

There’s a still more elegant approach when working under OS X 10.3.2 or higher and DEVONthink 1.8.1a (the current DT version). It involves using the WebKit browser built into DEVONthink, and contextual menu captures instead of OS X Services. URLs are grabbed along with Web page content.

I’ve set up a "Bookmarks" group in my DT database, with sub-groups such as "Scientific Journals", "News Sites," etc. For example, I added the URL for Science Magazine to my Scientific Journals group by copying the URL into the clipboard, then (in DT) pressing Cmd-N to insert a new item from the clipboard. I renamed the new item "Science Magazine," and moved it into the Scientific Journals sub-group in my Bookmarks group.

Now, when I want to go through the current issue of Science and capture items of interest, I click on the Science Magazine bookmark. A browser opens within DEVONthink, and I can navagate through the Science Web site. To capture an HTML page, Control-click and choose Capture Page (HTML text will be imported to DT, but graphics will be viewable only when you are online.). To capture material as RTFD with text and/or graphics, select the desired material, Control-click to bring up a contextual menu, and choose Capture Note. URLs are automatically entered in the new item’s Info panel.

This is so quick and easy that it continues to blow me away. It’s really elegant.

But what if I’m viewing a Web page in Mozilla (Services don’t work), or even Safari – and I don’t want to bookmark the page within DT? If I want to capture material into DEVONthink, I’ve gotten in the habit of copying the URL, pasting it into DEVONagent, and clicking the DEVONthink button in the  Tool Bar to capture the page (including its URL) into DT.

As of now, the contextual menu options to capture a page or capture a note (from selected material) exist only in DEVONthink’s WebKit browser.

I’m sure you’re right.  My guess is that the breakdown is in Firefox’s [in]ability to properly handle the "Save to DEVONthink" script.  But I’m a non-techie and basically clueness about this kind of thing.

Bill DeV, that is a beautiful tip – thank you.  I suppose my ability to implement it must await my upgrading to 10.3.x (which, sadly, will occur after the DEVON trial period expires).

This brings us in a roundabout way to my global reaction to DEVON*, which is basically this:  I can "get" it, but not right away, and not without a bit of help.  The help might come from good documentation or from thoughtful posts like Bill’s.  But without it, for some reason, I just don’t seem to "grok" the overall DEVON paradigm.

I think there’s consensus that some documentation improvements, including tutorial examples, would be helpful. Still, there’s no substitute for experience before you really "grok" something. :slight_smile:

It took me a couple months before I was comfortable enough with DEVONthink to be using it "reasonably" efficiently. I’d test something until I was satisfied that I understood how it worked, asking questions here when I couldn’t figure it out. And that’s still an ongoing process.

Sometimes I’ll get enthusiastic about some software (maybe tainted with anticipation of immediate gratification), dabble with it for awhile, then lose interest. It may not be what I originally expected, isn’t worth investing more time overcoming an initial learning hump or other obstacles (e.g. lack of patience). DT’s floating evaluation period was generous enough that I had enough time to decide whether I’d really commit to learning and using it before purchasing it. My impressions of the company and this forum were also important factors.

That’s a bit of my background with DT so far.

There is yet another way to bring a web page into DT 1.8.1 (and possibly earlier… by now I don’t remember which feature was introduced when ::)).  Using the trusty folder action script that ships with DT, I’ve set up a folder on my desktop entitled "Save to DT."  Now when I surf and find something interesting, I just drag the URL into the folder.  DT dutifully launches (if not already open), creates the new content entry, and posts the URL into the appropriate URL box in DT.  

Later, when I make the time to do so, I manually file into my DT group structure the webloc content that was just created.  Or convert it to HTML or RTFD first, then file.

I’ve also customized my DT toolbar (thanks, Cocoa!) to include the icons for "Capture Page" and "Capture Note."  These buttons have the same function as their contextual menu counterparts.

I haven’t found other software that handles internet content with the same level of functionality, let alone ease of use.

Fred, thanks for reminding me about the tool bar customization options. That’s handy. :slight_smile:

I really like Fred’s workaround of using Folder Actions to get web pages from non-Services browsers (I use iCab) into DT.  I have now set up my own “Save to DT” folder, which works great.  But can anyone tell me if the Action Import script can be modified so that material lands in a specific folder in DT, rather that at the root level?  I have a folder in DT called “To Be Filed”, and ideally anything I drag to my “Save to DT” folder on the Desktop would land in there.


I’ll second that request.  I also have a "File Me" group in DT. Using Preferences > Notes, I’ve established it as the landing spot for "Notes, Summaries, and Web Content."  As Vesuvio points out, however, the Folder Action’s behavior doesn’t follow this preference.

Any scripters out there?

This sounds like a great tip, but I’m having trouble figuring out what and where the "folder action script" is.  I’ve looked in the scripts folder on the DT disk image to no avail.  Assuming I find this script, do I simply put it inside an empty folder, then drag stuff into it?

Thanks for your patience.

Folder actions are an AppleScript-enabled feature of Mac OS X.  In essence, small AppleScript programs are "attached" to a particular folder.  Thereafter, when something happens within the folder (e.g. documents are placed in it, or taken out), the script automatically executes, and Good Things happen.

The installation process is as follows:

  1. you, the user, "enables" folder actions system wide.
    Apple has a good web page that explains this:

  2. you then select a folder with a control-click (or right mouse button, if you’re that kind of Mac user :smiley: ) and select “Attach a Folder Action…” from the contextual menu.  Apple’s web page also shows this.

  3. in this case, the script that you want is called “Action Import” and it’s contained in the “Scripts and Macros” folder that ships with DT.  Apple’s documentation recommends that you place this script in the folder called Folder Actions Scripts in the the Scripts folder in the Library folder that’s at the top level of your startup disk.  Put the “Action Import” script in that folder first, then attach it to your folder of choice.

When the Action Import folder action is active for a folder and files are copied to to it they’re imported into DT but remain in the folder.  Anyone know how the system tracks which files Action Import has already been applied to so it doesn’t reimport them again?

As I mentioned somewhere earlier it would be very cool if a destination group could somehow by chosen for the DT folder action scripts.  One use would be to attach Action Link to photo libraries and have newly-added files automatically linked to corresponding DT groups.  I don’t have the action script source to see if/how that might be possible and I’m guessing there isn’t even a way to send group information to DT.  Might that (or similar functionality, via AppleScript?) be possible in a future release?

When I “grokked” was when I reverted to dragging and dropping as in the old (pre X) days. . .out of frustration, impatience–and because it’s there!

Drag a url onto NotePad view and behold, the page. Capture it, make a note from it, somehow this unlocked what it really a very simple structure.

So simple, people knock themselves out looking for rules. I use DThink, for example, in quite a reverse way, preferring it to the Finder for an organized view of my work. The emphasis in the documenation is on retrieval–and that threw me off track for months. In point of fact, this is a powerful, wonderful tool that for me represents and facilitates a whole level of thinking, idea gestation and preparation that really only existed before in scattered notes, notebooks, the hard disk and my head. This is collecting and sorting - and erasing - and viewing and prioritizing raised to high art.


The action script file format was changed from Application to Script in 1.8.1b so the source is readable now.  Thanks.

The next release will feature a floating hierarchy panel displaying all groups. Therefore you’ll be able to drag & drop contents from other applications (e.g. browsers not supporting services) directly to the desired group (this panel is also very useful to drag & drop contents within DEVONthink as only the groups and not all contents are listed).

In the meantime, another workaround is of course to copy the content to the clipboard and use the “New with clipboard” command available in DEVONthink’s Dock menu.

Will it eventually be possible to specify a destination group with the import/index/link functions in AppleScript?  The DT editions comparison page says “Full” AS support is planned for Pro but doesn’t say specifically what that’ll include.

The script suite of DT Pro will provide such a possibility (not yet sure if the index/link/import command need a target parameter because the "move" command could be easily applied afterwards).