My Darktable Customization

By popular demand[1], I present to you, my quirky and fun way of using darktable!

Film Sim Panel

In both the darkroom and the lighttable, this funny widget adorns my sidebar:

screenshot

Each button in this panel activates a particular style:

  • A Fuji or Ricoh film simulation
  • A “DR” dynamic range adjustment
  • A “S Tone” shadows adjustment
  • An exposure adjustment

The names and icons of the latter three mimic the same controls on Fujifilm camera controls. The DR modes adjust the tone equalizer bottom half by zero, one, or two stops. The Shadow Tone adjustments apply a shadow bump or dent in the RGB curve. The Exposure adjustment adjusts exposure.

The film simulations were extracted by the magic of darktable-chart and a photo of a color checker. I can’t say that they replicate the in-camera styles perfectly, but they are close enough to they serve as the starting point of most of my edits.

You can download both the film simulation panel and the film simulations from GitHub - bastibe/Darktable-Film-Simulation-Panel.

As a fun aside, the Film Sim Panel works not just in the darkroom, but in the lighttable as well. I often do my rough exposure adjustments directly in the lighttable during culling, before I even open the darkroom.

Keyboard Shortcuts

Please forgive me, for I have sinned. I have used commercial raw editing software. I’m just kidding, I’m not sorry. My sojourns to other software has been well-documented in these forums:

While I didn’t stick with neither Lightroom nor Capture One[2], they did have a thing or two to teach. One brilliant feature of Capture One are their so-called “Speed-Edit Keys”.

Just you hold down a key a on your keyboard and move the mouse to adjust most sliders!

In Capture One, the most important sliders are in a specific order:


Which they translate to Speed Edit Keys on the left-hand home row of the keyboard. These keys are not mnemonic, they’re just one slider after the next, mapped to the home row QWER, ASDF.

Since these keys became second nature to me after just a few minutes, I replicated the same logic in Darktable (with minor alterations):

  • Q: Exposure
  • W: Color Balance RGB Contrast
  • E: Color Balance RGB Global Saturation
  • R: Rotate and Perspective Rotation
  • A: Color Balance RGB Brilliance Highlights
  • S: Color Balance RGB Brilliance Shadows
  • D: Sigmoid Target White
  • F: Sigmoid Target Black

Additionally, I have set up Q for showing Retouch, and C for showing Crop, and M for displaying the currently active mask, once again mimicking the Capture One shortcuts, which somehow live rent-free in my brain.

May I take this minute to exclaim just how awesome Darktable’s keyboard shortcut system is? These keyboard shortcuts have completely revolutionized my editing! In other programs (Lightroom), I payed a rather astonishing amount of money for a plugin that didn’t do anything else than just replicating these shortcuts in Lightroom. DxO Photo Lab I just couldn’t get into because there’s no way of setting any keyboard shortcuts. And here Darktable just lets you build your own, no hacking required. Mad kudos! That’s just amazing!

Quick Access Panel and Presets

Another big boost to my editing speed is the Quick Access Panel. Mine looks like this:

Some of these modules (RGB Curve, Color Equalizer) are just a shortcut to the corresponding module. Some are essentially just a shortcut to select a preset (Contrast Equalizer, Local Contrast). I could expand these, but there’s more value in fitting the Quick Access Panel entirely on one screen than having all the things in it. Especially since I mapped ESC to always bring me back to it.

And then there a the few quirky modules in my Quick Access Panel:

  • My Color Calibration always shows the Temperature slider, as I pre-set my cameras to always shoot in daylight white balance. After much faffing with white balance, I have reached the conclusion that I’d prefer my mornings blue, my middays harsh, and my sunsets orange, just like in the film days.
  • The Tone Equalizer crucially includes the magic wand to set the exposure compensation and the adjustable graph. Therefore, I never need to go into that module and can use it right from the Quick Access Panel.

Add to that a few parametrized auto-presets that automatically apply correct Lens Corrections, and camera-appropriate levels of Denoise (Profiled) in variously pre-set ISO ranges, and the aforementioned Film Simulations and Quick Styles.

And not to forget, I have an auto-applied Output Sharpening style that is applied in the export module. This adds a final level of Diffuse and Sharpen at the very end, without slowing down the rest of my editing.

Overall, this makes for a very quick editing workflow, where most images are just a click here, a tug there, and move on to the next frame.

Tool Tips

Lastly, I have customized the labels on the lighttable thumbnails and darkroom image information line to show all the relevant information in a pleasing manner:

Screenshot 2024-09-19 at 21.27.43

It’s a small thing, but the little touches with the bold-faced numbers and the complete set of exposure parameters, they bring me joy.

And as a small personal accomplishment, my lighttable no longer scrolls line-by-line, but smoothly and fractionally, like it befits a modern application.


And now I’d love to hear how you have customized your darktable!


  1. two people have asked, if you must know. ↩︎

  2. nor DxO Photo Lab, SilkyPix, ON1, Luminar, Zoner Photo, nor AfterShot, all of which I’ve owned a license for at one point or another. Yes, I realize that that’s a crazy collection. In my defense, many of these were bought in a sale for a heavily discounted price, and I have donated a lot to Darktable’s development as well. ↩︎

28 Likes

There are some nice touches in there, thanks for sharing! The thumbnails bolding is especially clever, I think I’ll borrow that :smiley:

And the hotkey system is really nice, I’ve got mine mapped more to mnemonics, but its all just preference and makes editing really fast and easy. I’ve considered getting a large macropad so I can get some blank keycaps and write things on them, but I haven’t gone that far yet.

1 Like

I got the film simulation panel working with darktable on Windows 11. The one problem I ran into was in the luarc script. I had to use the following line to get the panel to appear:

require “contrib\\FilmSimPanel”

The provided instructions didn’t work with Windows 11. I had to change from a single forward slash to a double backslash as shown above.

1 Like

@sshapiro63, I hope you don’t mind me dragging our private conversation about this topic into the public thread:

I have experimented with LUTs in the past. I’ve used external LUTs, such as Sowerby’s Fuji LUTs, and also wrote a program to build my own.

External LUTs are cool, but they generally expect a certain base-line render. That may be the raw data, in which case they include the display transform, which locks you out of many of darktable’s coolest tools. Which is sad. Or they’re meant to be applied onto an existing sRGB render, but this usually doesn’t perfectly match darktable’s rendering, in which case the colors are off.

So I tried building my own. This worked well in general, but you need a lot of training data to fill even a small LUT. In particular, a LUT should cover not just naturally occurring colors, but also hyper-saturated inputs from a processed image. And that training data is really hard to come by. So you extrapolate and smooth and guess and tweak to get this right.

But at the end of the day, I found a simple lookup-table solution with 24 color-checker-derived swatches more robust and much easier to do. And it’s built-in with darktable-chart, and automatically separates the Tone Curve from the Color Lookup Table.

If you’re interested, the code and training data for my LUTs is still available on github, and no doubt linked somewhere on this forum.

This looks very cool! I’m not a big fan of film simulations myself, but I’ll definitely adopt some of your keyboard shortcuts. I also like the thumbnails info.

Just a note: The Film Sim Panel is currently set up to apply film simulations, but really, each button just applies a style. With very minimal effort, one can adapt it to all kinds of use cases (so long as they’re expressible as a set of styles).

2 Likes

I find it excellent!

Since my label customizations seem to be popular, I opened a pull request on github to include them as a new default:

Feel free to join the pull request and discuss further labeling ideas.

3 Likes

This is amazing, I was just thinking about attempting these film sims! Thank you for saving me from banging my head against the wall.

A question about usage—you say they are meant to be applied after Sigmoid. The default location for the Color Lookup Table is below Sigmoid in the scene referred part of the chain, isn’t it? Does that mean I should drag it above Sigmoid?

Also, for the DR100/200/400, I see they make use of the Tone Equalizer, I presume I should optimize the mask per image for this to work correctly… dumb question probably but I’m still not totally sure how Styles are actually applied in DT. Whether they override modules, add news ones, affect the order, or what.

Now to google “luarc” to figure out what that means and how to implement the panel…

An astute observation. But the default location is fine, actually. My comment was meant to mean that you should use it with Sigmoid with 50% color preservation, instead of filmic. (It is true that you can achieve better accuracy if you design a LUT for application after sigmoid, but these presets are not that precise anyway.)

Since the effect is so broad, you don’t actually need to modify the mask. The preset raises all shadows and midtones, and rolls off smoothly towards the highlights. This is another way of saying, it raises exposure in all but the highlights. The important bit is that everything gets brighter and highlights are preserved. The precise tonal transition point does not matter.

2 Likes

It’s in either the main or the Lua manual here:

1 Like

Thank you for sharing so many hints, Bastian!
You asked how others have customized darktable. To be honest only minimal customization on my side. Some keyboard shortcuts similar to yours. And for a long time I used a lot of auto-applied presets depending on different cameras and lenses. But as transferring this presets between different installations doesn’t work to good and is vital for the way I use dt - I stopped using them mostly.

My workflow speed is a bit slower as I usually do everything manually with a few key shortcuts. Most of the time I use history copy functions on series of images to speed up.

Your hints lit up the flame again - I redesigned a few key shortcuts and tested your Film Sim Panel successfully. GPT helped me to configure the tool tips similar to you - a simple but great idea!

Unfortunately I have no speedups to share. I try to shoot less but better pictures, delete a lot and develop a few RAWs slowly and intensely. Many times I find myself optimizing the best images over and over again in darktable until I am finally satisfied.

1 Like

Hi Bastian.

Thanks for sharing this information and giving us useful data to customize darktable even more than it already allows.

I like the result of customizing and mimicking some Capture One functions.
I’m going to try to put some of those shortcuts you kindly showed us in darktable customization, I’ve already made a few changes to mine, and I hope they will be of great use to me. My personal darktable theme. - #44 by difrkaguilar

In the case of the thumbnails, before I put a lot of useful information under the thumbnails besides the stars, but I realized that it was not so useful, because if I passed the mouse over the thumbnails, the popup showed me the same information, so I decided to leave only the file name and the stars, if I want more detailed information, I put the mouse over the thumbnail. This way I gain more viewing area of the image.

Here is an example of how I have the thumbnails configured to only show the file name and stars, in the popup then the more detailed information.

Greetings from La Habana, Cuba.

1 Like

What is the problem? I’ve shared some presets (they can be exported and imported), and have never heard people reporting issues.

Do you mean good-working transfer is vital, and since you encountered problems, you gave up on presets? If so, please describe said problems. The problems may be user errors /due to misunderstanding, in which case maybe they can be solved here; or they may be caused by a bug, in which case we’ll need to report it on Github so it can be fixed for everyone. But maybe let’s do that investigation in a new topic, so this one does not get highjacked.

This is a game changer. Thank you so much for addressing this.

1 Like

So I am not alone after all. Glad to hear it!

1 Like

For people using a mouse I don’t see this a game changer :slight_smile: I do prefer having a full row of thumb always visible, I don’t see the point of having a partial view of thumbs. I do see a benefit for people using a touch-pad as it feels lot more natural to scroll smoothly. Anyway, good news, you have the choice now… And thanks @bastibe for the implementation.

Hi kofa! My problem is about transferring presets that shall auto-apply. See here: Problems on export/import of auto-applied presets

Export and import of presets is fine, but auto-apply settings don’t work after import and in the end you have to completely delete them and create them new.
The workaround to always copy the entire dt database is not an option I want to go.

kind regards and thanks for your interest!

I think this depends a bit on the photographs shown. I was shooting a lot of sports in recent years, and therefore have a lot of similar photos. With the fix raster I often lose track which photograph I was looking at when browsing through the lighttable. If I would have very different photographs, it would not be a game changer.

With pdf documents, I often prefer a page-wise scroll behavior (which evince refuses to remember as default :angry:), which also seems odd to many people. So maybe it’s me, but I really love the choice I will have with the next darktable release :crossed_fingers::wink:.