DARKTABLE(1)

NAME
darktable - a digital photography workflow application

SYNOPSIS
    darktable [options] [IMG_1234.{RAW,...}|image_folder/]

Options:

    --cachedir <user cache directory>
    --conf <key>=<value>
    --configdir <user config directory>
    -d {all,cache,camctl,camsupport,control,dev,fswatch,imageio,input,
        ioporder,lighttable,lua,masks,memory,nan,opencl,params,perf,
        pwstorage,print,signal,sql,undo}
    --datadir <data directory>
    --disable-opencl
    -h, --help
    --library <library file>
    --localedir <locale directory>
    --luacmd <lua command>
    --moduledir <module directory>
    --noiseprofiles <noiseprofiles json file>
    -t <num openmp threads>
    --tmpdir <tmp directory>
    --version

DESCRIPTION
darktable is a digital photography workflow application for Linux, Mac OS X and several other Unices.

The application is designed to ease editing and consistent processing of large photo sessions and provides an easy to use digital lighttable and a set of sophisticated post-processing tools.

Most processing is done in 32-bit floating point per channel mode in device independent CIE L*a*b* color space. darktable is also fully color managed, which gives you full control over the look of the photos.

The application relies on a modern plugin architecture thus making it easy for 3rd party developers to extend the existing capabilities of the application. All lighttable and darkroom features are implemented as plugins, so you can create your plugins reusing existing code. Most workflow specific things can also be scripted in Lua.

OPTIONS

IMG_1234.RAW or image_folder/
    You may optionally supply the filename of an image or the name of a folder containing image files. If a filename is given darktable starts in darkroom view with that file opened. If a folder is given darktable starts in lighttable view with the content of that folder as the current collection. If there is already an instance of darktable running (using the same library) the image or folder will be opened there, using D-Bus to communicate between the two processes.

--cachedir <cache directory>
    darktable keeps a cache of image thumbnails for fast image preview and of precompiled OpenCL binaries for fast startup. By default the cache is located in "$HOME/.cache/darktable/". There may exist multiple thumbnail caches in parallel - one for each library file.

--conf <key>=<value>
    darktable supports a rich set of configuration parameters which the user defines in "darktablerc" - darktable's configuration file in the user config directory. You may temporarily overwrite individual settings on the command line with this option - however, these settings will not be stored in "darktablerc".

--configdir <config directory>
    This option defines the directory where darktable stores the user specific configuration. The default place is "$HOME/.config/darktable/".

-d <debug option>
    This option enables debug output to the terminal. There are several subsystems of darktable and debugging of each of them can be activated separately. You can use this option multiple times if you want debugging output of more than one subsystem.

    A few of those debug options are:

    control
        Enable job queue debugging. If you redirect darktable's output to control.log and call ./tools/create_control_svg.sh control.log, you will get a nice control.svg with a visualization of the threads' work.

    cache
        This will give you a lot of debugging info about the thumbnail cache for lighttable mode. If compiled in debug mode, this will also tell you where in the code a certain buffer has last been locked.

    perf
        Use this for performance tweaking your darkroom modules. It will rdtsc-measure the runtimes of all plugins and print them to stdout.

    all Enable all debugging output. In general this is not very useful.

--datadir <data directory>
    This option defines the directory where darktable finds its runtime data. The default place depends on your installation. Typical places are "/opt/darktable/share/darktable/" and "/usr/share/darktable/".

--disable-opencl
    Prevent darktable from initializing the OpenCL subsystem. Use this option in case darktable crashes at startup due to a defective OpenCL implementation.

-h, --help
    Show the available command line options and exit.

--library <library file>
    darktable keeps image information in an sqlite database for fast access. The default location of that database file is "$HOME/.config/darktable/library.db". You may give an alternative location, e.g. if you want to do some experiments without compromising your original library.db. If the database file does not exist, darktable creates it for you. You may also give ":memory:" as a library file in which case the database is kept in system memory - all changes are discarded when darktable terminates.

--localedir <locale directory>
    The place where darktable finds its language specific text strings. The default place depends on your installation. Typical places are "/opt/darktable/share/locale/" and "/usr/share/locale/".

--luacmd <lua command>
    A string containing lua commands to execute after lua initialization. These commands will be run after your "luarc" file.

    If lua is not compiled in, this option will be accepted but won't do anything.

--moduledir <module directory>
    darktable has a modular structure and organizes its modules as shared libraries for loading at runtime. With this option you tell darktable where to look for its shared libraries. The default place depends on your installation; typical places are "/opt/darktable/lib/darktable/" and "/usr/lib/darktable/".

--noiseprofiles <noiseprofiles json file>
    darktable's profiled denoise module uses camera specific profile data that gets loaded from an external JSON file. With this option the file to be loaded can be changed to allow testing alternative profiles. The default profile file is "noiseprofiles.json" and is typically found in "/opt/darktable/share/darktable/" or "/usr/share/darktable/".

-t <num openmp threads>
    darktable uses OpenMP to parallelize many computation steps and make use of all the available CPU cores. With this option you can specify the number of threads to use. Valid values are between 1 and 100.

--tmpdir <tmp directory>
    The place where darktable stores its temporary files. If this option is not supplied darktable uses the system default.

--version
    Show the darktable version along with some important build options and exit.

DEFAULT KEYBINDINGS
All modes

l   Switch to lighttable view

d   Switch to darkroom view

t   Switch to tethered capture view

m   Switch to map view

s   Switch to slideshow view

p   Switch to print view

.   Switch between lighttable and darkroom views

Ctrl-q
    Quit

F11 Switch between fullscreen and normal modes of the application's window

Esc Leave fullscreen mode

Ctrl-h
    Show/hide header

Tab Show/hide sidebars

Lighttable mode

g, Shift-g
    Navigate to top, bottom row

PageUp, PageDown
    Navigate one page up, down

'   Scroll center

Down, Left, Right, Up
    Scroll down, left, right, up

z   Preview image

Ctrl-z
    Preview image with focus detection

F1, F2, F3, F4, F5
    Color labels: toggle red, yellow, green, blue and purple

1, 2, 3, 4, 5
    Star rating

0   Strip all stars

r   Mark as rejected

l   Realign images to the grid

Alt-1
    Zoom in on first visible image

Alt-2, 3
    Adjust zoom

Alt-4
    Zoom out completely

Ctrl-a
    Select all images

Ctrl-Shift-a
    Select no images

Ctrl-i
    Invert selection

Ctrl-d
    Duplicate image

Ctrl-g, Ctrl-Shift-g
    Group/ungroup selected images

Delete
    Remove image from collection

Ctrl-c, Ctrl-Shift-c
    Copy all, selected history

Ctrl-v, Ctrl-Shift-v
    Paste all, selected history

Space
    Toggle selection of an image

Return
    Select an image

Ctrl-e
    Export currently selected images

Ctrl-k
    Jump back to the previous collection

Ctrl-t
    Open a popup to quickly tag an image

Ctrl-Shift-i
    Import a folder

Ctrl-j
    Jump to the filmroll of an image

Darkroom mode

Alt-1, 2, 3
    Zoom to 1:1, fill, and fit, respectively

Ctrl-f
    Show/hide filmstrip

Space, Backspace
    Step to next, previous image

Ctrl-e
    Export current image

Ctrl-c, Ctrl-Shift-c
    Copy all, selected history

Ctrl-v, Ctrl-Shift-v
    Paste all, selected history

o   Toggle show of over- and under-exposure

Ctrl-g
    Toggle gamut check

Ctrl-s
    Toggle softproofing

Enter
    In Crop & Rotate module, commit the crop

[, ]
    In Flip module, rotate 90 degrees ccw, cw

<, >
    When drawing masks, decrease, increase brush opacity, respectively

{, }
    When drawing masks, decrease, increase brush hardness, respectively

[, ]
    When drawing masks, decrease, increase brush size, respectively

Tethered mode

Ctrl-f
    Show/hide filmstrip

v   Toggle live view

Map mode

Ctrl-f
    Show/hide filmstrip

Ctrl-z
    Undo

Ctrl-r
    Redo

Filmstrip (when the cursor is on top of the filmstrip)

F1, F2, F3, F4, F5
    Color labels: toggle red, yellow, green, blue and purple

1, 2, 3, 4, 5
    Star rating

0   Strip all stars

r   Mark as rejected

Ctrl-d
    Duplicate image

Ctrl-a
    Select all images

Ctrl-Shift-a
    Select no images

Ctrl-i
    Invert selection

Ctrl-c, Ctrl-Shift-c
    Copy all, selected history

Ctrl-v, Ctrl-Shift-v
    Paste all, selected history

Slideshow mode

Space
    Start/stop playback

SEE ALSO
darktable-cli(1)

OTHER INFO
Please visit darktable's website for news, blog and bug tracker: <https://www.darktable.org/>

<https://www.darktable.org/usermanual/> The complete darktable usermanual.

darktablerc.html An overview over all default config settings. The default place depends on your installation. Typical places are "/opt/darktable/share/doc/darktable/" and "/usr/share/doc/darktable/".

REPORTING BUGS
Please use the bug tracker on <https://github.com/darktable-org/darktable/issues> to report bugs, feature requests and so on.

AUTHORS
The principal developer of darktable is Johannes Hanika. The (hopefully) complete list of contributors to the project is:

* developers: Pascal Obry Aldric Renaudin Roman Lebedev parafin Edouard Gomez * translators: Pascal Obry Victor Forsiuk Jeronimo Pellegrini Martin Straeten Kang-Wei Hsu EdgarLux Besmir Godolja Ryo Shinozaki Serkan ÖNDER mmardegan Luca Cignoni Marko Vertainen Maurizio Paglia Marcus Gama Nicolas Auffray Báthory Péter Matjaž Jeran Matt Maguire Petr Stasiak Stephan Hoek bajdero Matteo Mardegan alex alexbora Яна Тунгушпаева * contributors (at least 4 commits): Hanno Schwalm Victor Forsiuk Diederik ter Rahe Miloš Komarčević jandren Jeronimo Pellegrini Nicolas Auffray Martin Straeten Kang-Wei Hsu Simone Gotti Sakari Kapanen EdgarLux rawfiner Besmir Godolja cyruscook quovadit Ryo Shinozaki Philippe Weyland Ralf Brown Chris Elston Serkan ÖNDER mmardegan Luca Cignoni Apfelkraut Marcus Gama Marko Vertainen Maurizio Paglia Simon Raffeiner * Sub-module rawspeed contributors (at least 1 commit): Roman Lebedev Miloš Komarčević Daniel Vogelbacher maruncz Alex Tutubalin Artemis Tosini Georg Lukas Georg Niedrist LibRaw LLC Marko Toplak Milos Komarcevic Pascal Obry PeterWem Simon Raffeiner Sprite luz paz squid-f ubergeek801 * Sub-module integration contributors (at least 1 commit): Pascal Obry And all those of you that made previous releases possible

This man page was written by Alexandre Prokoudine <alexandre.prokoudine@gmail.com> and Richard Levitte <richard@levittr.org>. Additions were made by Tobias Ellinghaus <me@houz.org>.

HISTORY
The project was started by Johannes Hanika in early 2009 to fill the gap (or, rather, a black hole) of a digital photography workflow tool on Linux.

COPYRIGHT AND LICENSE
Copyright (C) 2009-2017 by Authors.

darktable is free software; you can redistribute it and/or modify it under the terms of the GPL v3 or (at your option) any later version.