DaisyNotes for Lightroom

A Lightroom Plugin for adding notes to collections and folders (sources)

It’s always been an annoyance to me that Lightroom doesn’t allow metadata at the source level. In particular it seems obvious that you’d want to annotate folders and collections in some way; shoot notes, post processing information … it just seems like the logical thing to do. But it doesn’t and hence DaisyNotes. It’s not perfect – SDK limitations – but I’ve used it for a while and it seems to work.


Download the plugin Here
and nstall as you would any Lightroom plugin using File->Plugin Manager from Lightroom

In the plugin’s settings panel select the Markdown edit/view apps you’d like to use to edit and view notes. Some users prefer different apps for editing and viewing. Personally, I use Typora for both editing and viewing, only using the Edit Note menu item.

If you want to speed up the note workflow I’d suggest adding shortcuts for DaisyNotes’ two menu items using System Preferences->Keyboard->Shortcuts as described here


From the File->Plugin Extras menu select Edit Note or View Note. If the source you have selected doesn’t have an attached note, one is created for you with the source path as a header in trh file. The new or existing note is displayed for you.


The plugin has been tested on OS X 10.15, Catalina using Lightroom CLassic, 8.4.1. It may work on earlier versions of Lightroom and Windows but might require some adjustment to code. I have no way of testing on other operating systems or verrsions but I’d be happy to include any changes anybody may make in this release. The plugin contains source and is uncompiled

DaisyNotes requires a Markdown editor of some kind. My preference is Typora (http://typora.io, although most editors should function. Set your own editor preference in the plugin’s preferences.

Note locations

Folder notes are named for the folder they’re attached to – <foldername>.md – and placed in their associated folder.

Other source – collection – notes are named using the source uid and placed in <catalogName>.md in the same folder as the Lightroom catalog being worked on

The plugin loosely assumes markdown, for no other reason than I like its convenience but there’s no reason, in principle, why other formats or apps couldn’t be used. I’d be happy to look at it if there’s demand.

Hacking Lightroom: The Big Fat Export Plugin

The Big Fat Export Plugin (BFEP) is my plugin for exporting images to disk that fills in a few of the gaps that I’ve found in Lightroom’s vanilla export to disk. I’ve added to it over the years and it’s become so useful I thought I’d share. I hope people find it useful.

BFEP started life when I needed to add tags to images after they were exported to keep track of postings to social networks, competitions and other destinations that don’t easily lend themselves to the excellent Publish Services. I post regularly toTwitter, Instagram and a few others and I maintain a set of smart collections which match keywords so I can see what I’ve posted and to where. I was adding keywords to images by hand which seemed a silly thing to do on a computer so I wrote this plugin, later adding a couple of other features as the need arose.

It’s not a particularly complex plugin, in fact it’s really no more than a simple wrapper for Lightroom’s own Hard Drive exporter but it adds three extra features that the Lightroom exporter doesn’t have.

  1. It allows you to specify a comma separated list of keywords that are added to images exported by the plugin.
  2. It adds a BFEPExportData metadata Field to which date and keyword information is added every time an image is exported using the plugin.
  3. It can optionally run a script or app after an image has been exported. The image path and a user defined set of parameters are included on the script command line. Most commonly the script will be something like Bash, AppleScript or Python. I’ve found it useful for, amongst other things:
  • adding borders to images
  • square padding for Instagram
  • automatically posting images to Twitter
  • Emailing to IFTTT, Evernote, or even people

Example scripts are included with the plugin


Download the zip  file from here and unpack


Install the unzipped plugin as you would any plugin suing Lightroom’s Plugin Manager File->Plug-In Manager.

Using the plugin

Select BFEP for export using the Export To drop-down menu at the top of the Export dialog. Export in the normal way.


Add keywords you wish added to export images, comma separated, to the Keywords input box in the plugin dialog. You may find it. Useful to save export settings for particular destinations in the export list to the left of the dialog. Keywords are stored as children of the BFEP keyword.

Post Export Scripts

Note: Mac only instructions. Windows can almost certainly be made to work but I don’t have the facilities to test.

Enter the path to the script you wish to run in the Post Script entry box in the export dialog or browse to the script using the Browse for Script button above the entry box. If you wish to pass parameters, for example a border width or email address, to the script enter them, separated by commas, into the Parameters entry box. Avoid new lines in the parameter list.

By default your script will be run by Bash. If you wish it to be run by anything else – Python, PHP, AppleScript – include a shebang at the top of the file with the full path to programme you would like to run it with. For example:


def foo( arg ):
	print( arg )

When the plugin calls the script it includes parameters on the command line:

<script> PathToExportedImageFile commaSeparatedKeywordList commaSeparatedParameterList

Script Output and Debugging

Script stdout – bash ‘echo’, python ‘print()’ – and stderr is redirected to a log file named after the script file and placed in the same directory as the script. In MacOS you may also use system notifications:

From Bash:

osascript -e 'display notification "Hello world!" with title "Hi!"'

Or from AppleScript just:

display notification "Hello world!" with title "Hi!"

If the script returns non-zero then an error box is displayed containing the contents of the output log.

Example Post Export Scripts

A set of example scripts are included with the plugin it the Scripts folder.


Adds a border to exported images using convert. You can add width & colour parameters in the BFEP dialog box, width followed by colour. Width is a percentage of the image size, without the ‘%’ character. For colour see the convert colour documentation. Width defaults to 0.5 (thin), colour to black


Mails the exported image somewhere. Parameters need to be given in the dialog Parameters box, sender, recipient, content in that order


Imports exported images into the Apple Photos app. I find this for posting images to Instagram.

By default exported images go into a BFEP album. A different album can be given in the Parameters entry box


Tweet an image. You’ll need Tweetbot installed for this. The script opens Tweetbot with a new tweet window open and the exported image attached ready for you to add text.


Pads an image to square by adding padding equally to either end of the shortest edge. Padding colour defaults to white. Set your own colour by adding a parameter to the Parameters entry box. See  convert colour documentation for available colour parameters.


A menubar assistant for Bear, the MacOS note taking app, a lightweight applet for MacOS that sits in the menubar that lets you:

  • Quickly append text to any Bear Note
  • Optionally add a named hashtag with the appended text if the note doesn’t already contain the hashtag
  • Define a global hotkey to append the contents of the clipboard to the named Bear Note from any app
  • Define a global hotkey to append the contents of the clipboard into BearBar’s text input window from any app.

Download & Installation

  • Download the BearBar binary here
  • Unzip (double click)
  • Copy to your Applications folder
  • Run

Automatically Start on Login

Add BearBar to your login items in System Preferences->Users & Groups->Your Name->Login Items.

Problems, Suggestions, Pizza

Please use the contact form on this site to contact Kim or add a comment at the bottom of this article.