GIMPRC(5)

πŸ“¦
version 2.10.36 Β· 3 versions
, in ubuntu noble

πŸ’– GIMPRC πŸ’– (File Formats Manual, section 5)

okay bestie, sit down, hydrate, because we are reading the manual page for gimprc together and honestly? it's a whole journey. 🫢


🌸 NAME 🌸

gimprc β€” the GIMP configuration file. that's the name, that's the whole vibe. ✨


πŸŽ€ DESCRIPTION πŸŽ€

so the gimprc file is a configuration file that GIMP reads when it starts up. yes, when it starts up, so if you're editing it while GIMP is running, that's giving "why is nothing happening" energy. πŸ’€

there are two of these bad boys:

  • one system-wide one, stored in /etc/gimp/2.0/gimprc
  • one per-user one at $XDG_CONFIG_HOME/GIMP/2.10/gimprc, which may override the system settings πŸ‘‘

comments? introduced by a hash sign (#), and they run until the end of the line. blank lines get ignored, no drama, we love that for them. 🌸

the file associates values with properties. these properties can be set with lisp-like assignments that look like this:

(property-name value)

where:

  • property-name β€” is one of the property names described below. πŸ“‹
  • value β€” is the value the property is to be set to. 🎯

either spaces or tabs may be used to separate the name from the value. pick your fighter, bestie, both are valid. πŸ’…


✨ PROPERTIES ✨

valid properties and their default values are, in order, no skips, no cuts (iykyk):

  • (temp-path "${gimp_temp_dir}") β€” sets the folder for temporary storage. files will appear here during the course of running GIMP. most files will disappear when GIMP exits, but some files are likely to remain, so it is best if this folder not be one that is shared by other users. this is a single folder. πŸ—‚οΈ
  • (swap-path "${gimp_cache_dir}") β€” sets the swap file location. GIMP uses a tile based memory allocation scheme. the swap file is used to quickly and easily swap tiles out to disk and back in. be aware that the swap file can easily get very large if GIMP is used with large images. also, things can get horribly slow if the swap file is created on a folder that is mounted over NFS. for these reasons, it may be desirable to put your swap file in "/tmp". this is a single folder. 😭
  • (swap-compression "fast") β€” the compression method used for tile data stored in the swap file. this is a string value. πŸ—œοΈ
  • (num-processors 1) β€” sets how many threads GIMP should use for operations that support it. this is an integer value. 🧡
  • (tile-cache-size 2g) β€” when the amount of pixel data exceeds this limit, GIMP will start to swap tiles to disk. this is a lot slower but it makes it possible to work on images that wouldn't fit into memory otherwise. if you have a lot of RAM, you may want to set this to a higher value. the integer size can contain a suffix of 'B', 'K', 'M' or 'G' which makes GIMP interpret the size as being specified in bytes, kilobytes, megabytes or gigabytes. if no suffix is specified the size defaults to being specified in kilobytes. πŸ”₯
  • (use-opencl no) β€” when enabled, uses OpenCL for some operations. possible values are yes and no. ⚑
and then there's this line just... floating here with no property name attached, bestie: "Specifies the language to use for the user interface. This is a string value." 🫠 so yeah, that's the language setting. it's a string. we move.
  • (interpolation-type cubic) β€” sets the level of interpolation used for scaling and other transformations. possible values are none, linear, cubic, nohalo and lohalo. πŸ¦‹
  • (default-threshold 15) β€” tools such as fuzzy-select and bucket fill find regions based on a seed-fill algorithm. the seed fill starts at the initially selected pixel and progresses in all directions until the difference of pixel intensity from the original is greater than a specified threshold. this value represents the default threshold. this is an integer value. πŸͺ£
  • (plug-in-path "${gimp_dir}/plug-ins:${gimp_plug_in_dir}/plug-ins") β€” sets the plug-in search path. this is a colon-separated list of folders to search. πŸ”Œ
  • (module-path "${gimp_dir}/modules:${gimp_plug_in_dir}/modules") β€” sets the module search path. this is a colon-separated list of folders to search. 🧩
  • (interpreter-path "${gimp_dir}/interpreters:${gimp_plug_in_dir}/interpreters") β€” sets the interpreter search path. this is a colon-separated list of folders to search. πŸ—£οΈ
  • (environ-path "${gimp_dir}/environ:${gimp_plug_in_dir}/environ") β€” sets the environ search path. this is a colon-separated list of folders to search. 🌍
  • (brush-path "${gimp_dir}/brushes:${gimp_data_dir}/brushes") β€” sets the brush search path. this is a colon-separated list of folders to search. πŸ–ŒοΈ
  • (brush-path-writable "${gimp_dir}/brushes") β€” this is a colon-separated list of folders to search. ✍️
  • (dynamics-path "${gimp_dir}/dynamics:${gimp_data_dir}/dynamics") β€” sets the dynamics search path. this is a colon-separated list of folders to search. πŸŒ€
  • (dynamics-path-writable "${gimp_dir}/dynamics") β€” this is a colon-separated list of folders to search. ✍️
  • (mypaint-brush-path "/usr/share/mypaint-data/1.0/brushes:~/.mypaint/brushes") β€” sets the brush search path. this is a colon-separated list of folders to search. 🎨
  • (mypaint-brush-path-writable "~/.mypaint/brushes") β€” this is a colon-separated list of folders to search. ✍️
  • (pattern-path "${gimp_dir}/patterns:${gimp_data_dir}/patterns") β€” sets the pattern search path. this is a colon-separated list of folders to search. πŸ“
  • (pattern-path-writable "${gimp_dir}/patterns") β€” this is a colon-separated list of folders to search. ✍️
  • (palette-path "${gimp_dir}/palettes:${gimp_data_dir}/palettes") β€” sets the palette search path. this is a colon-separated list of folders to search. 🌈
  • (palette-path-writable "${gimp_dir}/palettes") β€” this is a colon-separated list of folders to search. ✍️
  • (gradient-path "${gimp_dir}/gradients:${gimp_data_dir}/gradients") β€” sets the gradient search path. this is a colon-separated list of folders to search. πŸŒ…
  • (gradient-path-writable "${gimp_dir}/gradients") β€” this is a colon-separated list of folders to search. ✍️
  • (tool-preset-path "${gimp_dir}/tool-presets:${gimp_data_dir}/tool-presets") β€” sets the dynamics search path. this is a colon-separated list of folders to search. 🧰
  • (tool-preset-path-writable "${gimp_dir}/tool-presets") β€” this is a colon-separated list of folders to search. ✍️
  • (font-path "${gimp_dir}/fonts:${gimp_data_dir}/fonts") β€” where to look for fonts in addition to the system-wide installed fonts. this is a colon-separated list of folders to search. πŸ”€
  • (default-brush "2. Hardness 050") β€” specify a default brush. the brush is searched for in the specified brush path. this is a string value. πŸ–ŒοΈ
  • (default-dynamics "Dynamics Off") β€” specify a default dynamics. the dynamics is searched for in the specified dynamics path. this is a string value. πŸŒ€
  • (default-mypaint-brush "Fixme") β€” specify a default MyPaint brush. this is a string value. 🎨
  • (default-pattern "Pine") β€” specify a default pattern. this is a string value. 🌲
  • (default-palette "Default") β€” specify a default palette. this is a string value. 🎨
  • (default-gradient "FG to BG (RGB)") β€” specify a default gradient. this is a string value. 🌈
  • (default-tool-preset "Current Options") β€” specify a default tool preset. the tool preset is searched for in the specified tool presets path. this is a string value. 🧰
  • (default-font "Sans-serif") β€” specify a default font. this is a string value. πŸ”€
  • (global-brush yes) β€” when enabled, the selected brush will be used for all tools. possible values are yes and no. 🌍
  • (global-dynamics yes) β€” when enabled, the selected dynamics will be used for all tools. possible values are yes and no. 🌍
  • (global-pattern yes) β€” when enabled, the selected pattern will be used for all tools. possible values are yes and no. 🌍
  • (global-palette yes) β€” when enabled, the selected palette will be used for all tools. possible values are yes and no. 🌍
  • (global-gradient yes) β€” when enabled, the selected gradient will be used for all tools. possible values are yes and no. 🌍
  • (global-font yes) β€” when enabled, the selected font will be used for all tools. possible values are yes and no. 🌍
  • (default-image ...) β€” sets the default image in the "File/New" dialog. this is a parameter list, and she is serving structure:
(default-image
            (width 1920)
            (height 1080)
            (unit pixels)
            (xresolution 300)
            (yresolution 300)
            (resolution-unit inches)
            (image-type rgb)
            (precision u8-gamma)
            (color-managed yes)
            (color-profile NULL)
            (fill-type background)
            (comment "Created with GIMP"))
  • (default-grid ...) β€” specify a default image grid. this is a parameter list, grid edition:
(default-grid
            (style solid)
            (fgcolor (color-rgba 0 0 0 1))
            (bgcolor (color-rgba 1 1 1 1))
            (xspacing 10)
            (yspacing 10)
            (spacing-unit inches)
            (xoffset 0)
            (yoffset 0)
            (offset-unit inches))
  • (undo-levels 5) β€” sets the minimal number of operations that can be undone. more undo levels are kept available until the undo-size limit is reached. this is an integer value. ↩️
  • (undo-size 1g) β€” sets an upper limit to the memory that is used per image to keep operations on the undo stack. regardless of this setting, at least as many undo-levels as configured can be undone. the integer size can contain a suffix of 'B', 'K', 'M' or 'G' which makes GIMP interpret the size as being specified in bytes, kilobytes, megabytes or gigabytes. if no suffix is specified the size defaults to being specified in kilobytes. πŸ”₯
  • (undo-preview-size large) β€” sets the size of the previews in the Undo History. possible values are tiny, extra-small, small, medium, large, extra-large, huge, enormous and gigantic. πŸ–ΌοΈ
  • (plug-in-history-size 10) β€” how many recently used filters and plug-ins to keep on the Filters menu. this is an integer value. πŸ•˜
  • (pluginrc-path "${gimp_dir}/pluginrc") β€” sets the pluginrc search path. this is a single filename. πŸ“„
  • (layer-previews yes) β€” sets whether GIMP should create previews of layers and channels. previews in the layers and channels dialog are nice to have but they can slow things down when working with large images. possible values are yes and no. πŸ–ΌοΈ
  • (group-layer-previews yes) β€” sets whether GIMP should create previews of layer groups. layer group previews are more expensive than ordinary layer previews. possible values are yes and no. πŸ–ΌοΈ
  • (layer-preview-size medium)

...and that's where part 1 leaves us, bestie β€” the layer preview size is just sitting there, mid-sentence, iconic behaviour honestly. more to come. πŸ’œ

Sets the preview size used for layers and channel previews in newly created dialogs. Possible values are tiny, extra-small, small, medium, large, extra-large, huge, enormous and gigantic. (Yeah bestie, that's the back half of a setting whose name line already walked past β€” we keep it moving πŸ’…)

  • (thumbnail-size normal) β€” sets the size of the thumbnail shown in the Open dialog. Possible values are none, normal and large.
  • (thumbnail-filesize-limit 4M) β€” the thumbnail in the Open dialog auto-updates if the file being previewed is smaller than this size. The integer can carry a suffix of 'B', 'K', 'M' or 'G', which makes GIMP read it as bytes, kilobytes, megabytes or gigabytes. No suffix? Then it defaults to kilobytes, no cap.
  • (color-management ...) β€” defines the color management behavior. This is a parameter list, and here's the whole thing verbatim:
(color-management
            (mode display)
            (display-profile-from-gdk no)
            (display-rendering-intent relative-colorimetric)
            (display-use-black-point-compensation yes)
            (display-optimize yes)
            (simulation-rendering-intent perceptual)
            (simulation-use-black-point-compensation no)
            (simulation-optimize yes)
            (simulation-gamut-check no)
            (out-of-gamut-color (color-rgb 1 0 1))
            (show-rgb-u8 no)
            (show-hsv no)
            (display-module "CdisplayLcms"))
  • (save-document-history yes) β€” keep a permanent record of everything you opened and saved in the Recent Documents list. Possible values are yes and no. Permanent. Like that tweet.
  • (quick-mask-color (color-rgba 1 0 0 0.5)) β€” the default quick mask color, written in the form (color-rgba red green blue alpha) with channel values as floats in the range 0.0 to 1.0.
  • (import-promote-float no) β€” promote imported images to floating point precision. Does not apply to indexed images. Possible values are yes and no.
  • (import-promote-dither yes) β€” when you're promoting imported images to floating point precision, also add a lil minimal noise so the color values get distributed a bit. Possible values are yes and no.
  • (import-add-alpha no) β€” add an alpha channel to all layers of imported images. Possible values are yes and no.
  • (import-raw-plug-in "") β€” which plug-in to use for importing raw digital camera files. This is a single filename.
  • (export-file-type png) β€” the export file type used by default. Possible values are png, jpg, ora, psd, pdf, tif, bmp and webp.
  • (export-color-profile yes) β€” export the image's color profile by default. Possible values are yes and no.
  • (export-metadata-exif yes) β€” export Exif metadata by default. Possible values are yes and no.
  • (export-metadata-xmp yes) β€” export XMP metadata by default. Possible values are yes and no.
  • (export-metadata-iptc yes) β€” export IPTC metadata by default. Possible values are yes and no.
  • (debug-policy fatal) β€” try generating debug data for bug reporting when appropriate. Possible values are warning, critical, fatal and never.
  • (check-updates yes) β€” check for availability of GIMP updates through background internet queries. Possible values are yes and no. She's nosy but respectfully.
  • (check-update-timestamp 0) β€” timestamp of the last update check. (null)
  • (last-release-timestamp 0) β€” the timestamp for the last known release date. (null)

The last known release version of GIMP as queried from official website. This is a string value.

  • (last-revision 0) β€” the timestamp for the last known release date. This is an integer value.

The last known release version of GIMP as queried from official website. This is a string value.

okay not me squinting at that β€” that's literally how it sits in the page, spacing and repeats and all. We report, we don't fix πŸ’€

  • (transparency-size medium-checks) β€” sets the size of the checkerboard used to display transparency. Possible values are small-checks, medium-checks and large-checks.
  • (transparency-type gray-checks) β€” sets the manner in which transparency is displayed in images. Possible values are light-checks, gray-checks, dark-checks, white-only, gray-only and black-only.
  • (snap-distance 8) β€” this is the distance in pixels where Guide and Grid snapping activates. This is an integer value.
  • (marching-ants-speed 200) β€” speed of marching ants in the selection outline. This value is in milliseconds (less time indicates faster marching). This is an integer value. little ants little ants 🐜
  • (resize-windows-on-zoom no) β€” when enabled, the image window will automatically resize itself when zooming into and out of images. This setting only takes effect in multi-window mode. Possible values are yes and no.
  • (resize-windows-on-resize no) β€” when enabled, the image window will automatically resize itself whenever the physical image size changes. This setting only takes effect in multi-window mode. Possible values are yes and no.
  • (default-show-all no) β€” show full image content by default. Possible values are yes and no.
  • (default-dot-for-dot yes) β€” when enabled, this will ensure that each pixel of an image gets mapped to a pixel on the screen. Possible values are yes and no.
  • (initial-zoom-to-fit yes) β€” when enabled, this will ensure that the full image is visible after a file is opened, otherwise it will be displayed with a scale of 1:1. Possible values are yes and no.
  • (cursor-mode tool-crosshair) β€” sets the type of mouse pointers to use. Possible values are tool-icon, tool-crosshair and crosshair.
  • (cursor-updating yes) β€” context-dependent mouse pointers are helpful. They are enabled by default. However, they require overhead that you may want to do without. Possible values are yes and no.
  • (show-brush-outline yes) β€” when enabled, all paint tools will show a preview of the current brush's outline. Possible values are yes and no.
  • (snap-brush-outline no) β€” when enabled, the brush outline will snap to individual dabs while painting. Possible values are yes and no.
  • (show-paint-tool-cursor yes) β€” when enabled, the mouse pointer will be shown over the image while using a paint tool. Possible values are yes and no.
  • (image-title-format "%D*%f-%p.%i (%t, %o, %L) %wx%h") β€” sets the text to appear in image window titles. This is a format string, and certain % character sequences are recognised and expanded as follows:
    • %% β€” literal percent sign
    • %f β€” bare filename, or "Untitled"
    • %F β€” full path to file, or "Untitled"
    • %p β€” PDB image id
    • %i β€” view instance number
    • %t β€” image type (RGB, grayscale, indexed)
    • %z β€” zoom factor as a percentage
    • %s β€” source scale factor
    • %d β€” destination scale factor
    • %Dx β€” expands to x if the image is dirty, the empty string otherwise
    • %Cx β€” expands to x if the image is clean, the empty string otherwise
    • %B β€” expands to (modified) if the image is dirty, the empty string otherwise
    • %A β€” expands to (clean) if the image is clean, the empty string otherwise
    • %Nx β€” expands to x if the image is export-dirty, the empty string otherwise
    • %Ex β€” expands to x if the image is export-clean, the empty string otherwise
    • %l β€” the number of layers
    • %L β€” the number of layers (long form)
    • %m β€” memory used by the image
    • %n β€” the name of the active layer/channel
    • %P β€” the PDB id of the active layer/channel
    • %w β€” image width in pixels
    • %W β€” image width in real-world units
    • %h β€” image height in pixels
    • %H β€” image height in real-world units
    • %M β€” the image size expressed in megapixels
    • %u β€” unit symbol
    • %U β€” unit abbreviation
    • %x β€” the width of the active layer/channel in pixels
    • %X β€” the width of the active layer/channel in real-world units
    • %y β€” the height of the active layer/channel in pixels
    • %Y β€” the height of the active layer/channel in real-world units
    • %o β€” the name of the image's color profile
  • (image-status-format "%n (%m)") β€” sets the text to appear in image window status bars. This is a format string, and certain % character sequences are recognised and expanded as follows:
    • %% β€” literal percent sign
    • %f β€” bare filename, or "Untitled"
    • %F β€” full path to file, or "Untitled"
    • %p β€” PDB image id
    • %i β€” view instance number
    • %t β€” image type (RGB, grayscale, indexed)
    • %z β€” zoom factor as a percentage
    • %s β€” source scale factor
    • %d β€” destination scale factor
    • %Dx β€” expands to x if the image is dirty, the empty string otherwise
    • %Cx β€” expands to x if the image is clean, the empty string otherwise
    • %B β€” expands to (modified) if the image is dirty, the empty string otherwise
    • %A β€” expands to (clean) if the image is clean, the empty string otherwise
    • %Nx β€” expands to x if the image is export-dirty, the empty string otherwise
    • %Ex β€” expands to x if the image is export-clean, the empty string otherwise
    • %l β€” the number of layers
    • %L β€” the number of layers (long form)
    • %m β€” memory used by the image
    • %n β€” the name of the active layer/channel
    • %P β€” the PDB id of the active layer/channel
    • %w β€” image width in pixels
    • %W β€” image width in real-world units
    • %h β€” image height in pixels
    • %H β€” image height in real-world units
    • %M β€” the image size expressed in megapixels
    • %u β€” unit symbol
    • %U β€” unit abbreviation
    • %x β€” the width of the active layer/channel in pixels
    • %X β€” the width of the active layer/channel in real-world units
    • %y β€” the height of the active layer/channel in pixels
    • %Y β€” the height of the active layer/channel in real-world units
    • %o β€” the name of the image's color profile
  • (monitor-xresolution 96) β€” sets the monitor's horizontal resolution, in dots per inch. If set to 0, forces the X server to be queried for both horizontal and vertical resolution information. This is a float value.
  • (monitor-yresolution 96) β€” sets the monitor's vertical resolution, in dots per inch. If set to 0, forces the X server to be queried for both horizontal and vertical resolution information. This is a float value.

and bestie we are so not done yet, keep scrolling πŸ‘‘

  • (monitor-resolution-from-windowing-system yes) β€” turn this on and GIMP just asks the windowing system what your monitor resolution is instead of guessing. possible values: yes and no. ✨
  • (navigation-preview-size medium) β€” how big the little navigation preview in the bottom right corner of the image window gets. possible values: tiny, extra-small, small, medium, large, extra-large, huge, enormous and gigantic. yes bestie there are literally nine sizes, they really said "choose your fighter" πŸ’…
  • (default-view ...) β€” the default settings for the image view. it's a parameter list, so it looks like this:
(show-menubar yes)
(show-statusbar yes)
(show-rulers yes)
(show-scrollbars yes)
(show-selection yes)
(show-layer-boundary yes)
(show-canvas-boundary yes)
(show-guides yes)
(show-grid no)
(show-sample-points yes)
(snap-to-guides yes)
(snap-to-grid no)
(snap-to-canvas no)
(snap-to-path no)
(padding-mode default)
(padding-color (color-rgb 1 1 1))
(padding-in-show-all no)

so like, what each of those lil sub-keys does 🫢

  • (show-menubar yes) β€” show the menubar
  • (show-statusbar yes) β€” show the statusbar
  • (show-rulers yes) β€” show the rulers
  • (show-scrollbars yes) β€” show the scrollbars
  • (show-selection yes) β€” show the selection
  • (show-layer-boundary yes) β€” show the layer boundary
  • (show-canvas-boundary yes) β€” show the canvas boundary
  • (show-guides yes) β€” show the guides
  • (show-grid no) β€” show the grid
  • (show-sample-points yes) β€” show the sample points
  • (snap-to-guides yes) β€” snap to guides
  • (snap-to-grid no) β€” snap to grid
  • (snap-to-canvas no) β€” snap to canvas
  • (snap-to-path no) β€” snap to path
  • (padding-mode default) β€” the padding mode
  • (padding-color (color-rgb 1 1 1)) β€” the padding color, given as (color-rgb 1 1 1)
  • (padding-in-show-all no) β€” padding when in "show all" mode
  • (default-fullscreen-view ...) β€” same deal but for when an image is viewed in fullscreen mode. also a parameter list, and here's the whole thing, identical sub-keys and all:
(show-menubar yes)
(show-statusbar yes)
(show-rulers yes)
(show-scrollbars yes)
(show-selection yes)
(show-layer-boundary yes)
(show-canvas-boundary yes)
(show-guides yes)
(show-grid no)
(show-sample-points yes)
(snap-to-guides yes)
(snap-to-grid no)
(snap-to-canvas no)
(snap-to-path no)
(padding-mode default)
(padding-color (color-rgb 1 1 1))
(padding-in-show-all no)

and the sub-keys, in order, so nobody has to squint:

  • (show-menubar yes) β€” show the menubar
  • (show-statusbar yes) β€” show the statusbar
  • (show-rulers yes) β€” show the rulers
  • (show-scrollbars yes) β€” show the scrollbars
  • (show-selection yes) β€” show the selection
  • (show-layer-boundary yes) β€” show the layer boundary
  • (show-canvas-boundary yes) β€” show the canvas boundary
  • (show-guides yes) β€” show the guides
  • (show-grid no) β€” show the grid
  • (show-sample-points yes) β€” show the sample points
  • (snap-to-guides yes) β€” snap to guides
  • (snap-to-grid no) β€” snap to grid
  • (snap-to-canvas no) β€” snap to canvas
  • (snap-to-path no) β€” snap to path
  • (padding-mode default) β€” the padding mode
  • (padding-color (color-rgb 1 1 1)) β€” the padding color, as (color-rgb 1 1 1)
  • (padding-in-show-all no) β€” padding when in "show all" mode
  • (activate-on-focus yes) β€” when it's on, an image becomes the active image the second its image window gets the focus. super handy for window managers that do "click to focus". possible values: yes and no.
  • (space-bar-action pan) β€” what happens when you smash the space bar inside the image window. possible values: none, pan and move. (yes, move is right there if you're feeling chaotic 🌈)
  • (zoom-quality high) β€” there's a whole tradeoff between speed and quality when you're zoomed out. possible values: low and high.
  • (use-event-history no) β€” ngl the event history buffer has frequent bugs, so if you're getting cursor offset problems, turning this off helps. possible values: yes and no. πŸ’€
  • (edit-non-visible no) β€” turn it on and non-visible layers can be edited like normal ones. possible values: yes and no.
  • (move-tool-changes-active no) β€” if enabled, the move tool sets the edited layer or path as active. heads up: this used to be the default behaviour in older versions. possible values: yes and no.
  • (filter-tool-max-recent 10) β€” how many recent settings get kept around in filter tools. this is an integer value.
  • (filter-tool-use-last-settings no) β€” default to the last used settings in filter tools. possible values: yes and no.
  • (filter-tool-show-color-options no) β€” show advanced color options in filter tools. possible values: yes and no.
  • (trust-dirty-flag no) β€” when enabled, GIMP will not save an image if it hasn't been changed since it was opened. possible values: yes and no.
  • (save-device-status yes) β€” remember your current tool, pattern, color and brush across GIMP sessions. possible values: yes and no.
  • (devices-share-tool no) β€” when enabled, the same tool and tool options get used for all input devices. no tool switching happens when the input device changes. possible values: yes and no.
  • (save-session-info yes) β€” save the positions and sizes of the main dialogs when GIMP exits. possible values: yes and no.
  • (restore-session yes) β€” let GIMP try to restore your last saved session on every startup. possible values: yes and no.
  • (restore-monitor no) β€” when enabled, GIMP tries to put windows back on the monitor they were open on before. when disabled, windows show up on the monitor you're currently using. possible values: yes and no.
  • (save-tool-options yes) β€” save the tool options when GIMP exits. possible values: yes and no.
  • (compact-sliders yes) β€” use the compact style for sliders. possible values: yes and no.
  • (show-tooltips yes) β€” show a tooltip when the pointer hovers over an item. possible values: yes and no.
  • (tearoff-menus yes) β€” when enabled, menus can be torn off. possible values: yes and no.
  • (can-change-accels no) β€” when enabled, you can change keyboard shortcuts for menu items by hitting a key combo while the menu item is highlighted. possible values: yes and no.
  • (save-accels yes) β€” save your changed keyboard shortcuts when GIMP exits. possible values: yes and no.
  • (restore-accels yes) β€” restore saved keyboard shortcuts on each GIMP startup. possible values: yes and no.
  • (last-opened-size 10) β€” how many recently opened image filenames to keep on the File menu. this is an integer value.
  • (max-new-image-size 128M) β€” GIMP warns you if you try to create an image that would eat more memory than the size you set here. the integer size can carry a suffix of 'B', 'K', 'M' or 'G', which makes GIMP read the size as bytes, kilobytes, megabytes or gigabytes. if you don't put a suffix, the size defaults to being in kilobytes. πŸ‘‘
  • (toolbox-color-area yes) β€” show the current foreground and background colors in the toolbox. possible values: yes and no.
  • (toolbox-foo-area no) β€” show the currently selected brush, pattern and gradient in the toolbox. possible values: yes and no.
  • (toolbox-image-area no) β€” show the currently active image in the toolbox. possible values: yes and no.
  • (toolbox-wilber yes) β€” show the GIMP mascot at the top of the toolbox. possible values: yes and no. (wilber stays winning, fr fr πŸŽ€)
  • (toolbox-groups yes) β€” use a single toolbox button for grouped tools. possible values: yes and no.
  • (toolbox-group-menu-mode hover-single-column) β€” the menu mode of grouped tools. possible values: click, hover and hover-single-column.
  • (theme-path "${gimp_dir}/themes:${gimp_data_dir}/themes") β€” sets the theme search path. this is a colon-separated list of folders to search.
  • (theme "Dark") β€” the name of the theme to use. this is a string value.
  • (icon-theme-path "${gimp_dir}/icons:${gimp_data_dir}/icons") β€” sets the icon theme search path. this is a colon-separated list of folders to search.
  • (icon-theme "Symbolic") β€” the name of the icon theme to use. this is a string value.
  • (icon-size auto) β€” the size of the icons to use. possible values: auto, theme, small, medium, large and huge.
  • (use-help yes) β€” when enabled, pressing F1 opens the help browser. possible values: yes and no.
  • (show-help-button yes) β€” when enabled, dialogs show a help button that gives access to the related help page. even without this button, you can still reach the help page by pressing F1. possible values: yes and no.
  • (help-locales "") β€” the language preferences used by the help system. this is a colon-separated list of language identifiers with decreasing priority. if it's empty, the language is taken from your user's locale setting. this is a string value.
  • (help-browser web-browser) β€” sets the browser used by the help system. possible values: gimp and web-browser.
  • (search-show-unavailable-actions no) β€” when enabled, a search of actions will also return inactive actions. possible values: yes and no.
  • (action-history-size 100) β€” the maximum number of actions saved in history. this is an integer value.
  • (user-manual-online no) β€” when enabled, the help system uses the online user manual. otherwise it uses the locally installed copy. possible values: yes and no.
  • (user-manual-online-uri "https://docs.gimp.org/2.10") β€” the location of the online user manual. this gets used if 'user-manual-online' is enabled. this is a string value.
  • (dock-window-hint utility) β€” the window type hint set on dock windows and the toolbox window. this may affect the way your window manager decorates and handles those windows. possible values: normal, utility and keep-above.
  • (cursor-handedness right) β€” sets the handedness for cursor positioning. possible values: left and right.
  • (playground-npd-tool no) β€” enable the N-Point Deformation tool. possible values: yes and no.
  • (playground-seamless-clone-tool no) β€” enable the Seamless Clone tool. possible values: yes and no.
  • (color-profile-policy ask) β€” how to handle embedded color profiles when opening a file. possible values: ask, keep and convert.

okay and then there's this one, and listen, the manpage really did just lose the property name here β€” the description is floating around all on its own:

Sets the default folder path for all color profile file dialogs. This is a single filename.

that's the whole thing, single filename and everything. πŸ™ˆ not me fixing it, that's genuinely what the page says.

  • (image-convert-profile-intent relative-colorimetric) β€” sets the default rendering intent for the 'Convert to Color Profile' dialog. possible values: perceptual, relative-colorimetric, saturation and absolute-colorimetric.
  • (image-convert-profile-black-point-compensation yes) β€” sets the default 'Black Point Compensation' state for the 'Convert to Color Profile' dialog. possible values: yes and no.
  • (image-convert-precision-layer-dither-method none) β€” sets the default layer dithering method for the 'Convert Precision' dialog. possible values: none, floyd-steinberg, bayer, random, random-covariant, add, add-covariant, xor, xor-covariant, blue-noise and blue-noise-covariant. that's eleven of them bestie, it's giving ✨options✨
  • (image-convert-precision-text-layer-dither-method none) β€”

This one sets the default text layer dithering method for the 'Convert Precision' dialog. Possible values are none, floyd-steinberg, bayer, random, random-covariant, add, add-covariant, xor, xor-covariant, blue-noise and blue-noise-covariant. Dithering is a whole vibe. ✨

  • (image-convert-precision-channel-dither-method none) β€” sets the default channel dithering method for the 'Convert Precision' dialog. Possible values are none, floyd-steinberg, bayer, random, random-covariant, add, add-covariant, xor, xor-covariant, blue-noise and blue-noise-covariant. Same energy, different channel. πŸ’…
  • (image-convert-indexed-palette-type generate) β€” sets the default palette type for the 'Convert to Indexed' dialog. Possible values are generate, web, mono and custom. Pick your palette poison. 🎨
  • (image-convert-indexed-max-colors 256) β€” sets the default maximum number of colors for the 'Convert to Indexed' dialog. This is an integer value. 256, iconic. ✨
  • (image-convert-indexed-remove-duplicates yes) β€” sets the default 'Remove duplicate colors' state for the 'Convert to Indexed' dialog. Possible values are yes and no. Yes means yes. πŸ’–
  • (image-convert-indexed-dither-type none) β€” sets the default dithering type for the 'Convert to Indexed' dialog. Possible values are none, fs, fs-lowbleed and fixed. fs is giving Floyd-Steinberg, iykyk. πŸ¦‹
  • (image-convert-indexed-dither-alpha no) β€” sets the default 'Dither alpha' state for the 'Convert to Indexed' dialog. Possible values are yes and no. No dithering alpha, no drama. πŸ™ˆ
  • (image-convert-indexed-dither-text-layers no) β€” sets the default 'Dither text layers' state for the 'Convert to Indexed' dialog. Possible values are yes and no. Text layers stay undithered by default. πŸ’€
  • (image-resize-fill-type transparent) β€” sets the default fill type for the 'Canvas Size' dialog. Possible values are foreground, background, white, transparent and pattern. Transparent is the main character here. πŸ‘‘
  • (image-resize-layer-set none) β€” sets the default set of layers to resize for the 'Canvas Size' dialog. Possible values are none, all, image-sized, visible and linked. None by default, periodt. πŸ’…
  • (image-resize-resize-text-layers no) β€” sets the default 'Resize text layers' state for the 'Canvas Size' dialog. Possible values are yes and no. No resize for text layers unless you say so. πŸŽ€
  • (layer-new-name "Layer") β€” sets the default layer name for the 'New Layer' dialog. This is a string value. "Layer" is literally the default name. πŸ’–
  • (layer-new-mode normal) β€” sets the default mode for the 'New Layer' dialog. Possible values are normal-legacy, dissolve, behind-legacy, multiply-legacy, screen-legacy, overlay-legacy, difference-legacy, addition-legacy, subtract-legacy, darken-only-legacy, lighten-only-legacy, hsv-hue-legacy, hsv-saturation-legacy, hsl-color-legacy, hsv-value-legacy, divide-legacy, dodge-legacy, burn-legacy, hardlight-legacy, softlight-legacy, grain-extract-legacy, grain-merge-legacy, color-erase-legacy, overlay, lch-hue, lch-chroma, lch-color, lch-lightness, normal, behind, multiply, screen, difference, addition, subtract, darken-only, lighten-only, hsv-hue, hsv-saturation, hsl-color, hsv-value, divide, dodge, burn, hardlight, softlight, grain-extract, grain-merge, vivid-light, pin-light, linear-light, hard-mix, exclusion, linear-burn, luma-darken-only, luma-lighten-only, luminance, color-erase, erase, merge, split, pass-through, replace and anti-erase. That's a lot of modes, bestie. Blend mode buffet. 🌈
  • (layer-new-blend-space auto) β€” sets the default blend space for the 'New Layer' dialog. Possible values are auto, rgb-linear, rgb-perceptual and lab. Auto is the default vibe. ✨
  • (layer-new-composite-space auto) β€” sets the default composite space for the 'New Layer' dialog. Possible values are auto, rgb-linear, rgb-perceptual and lab. Same spaces, composite edition. πŸ¦‹
  • (layer-new-composite-mode auto) β€” sets the default composite mode for the 'New Layer' dialog. Possible values are auto, union, clip-to-backdrop, clip-to-layer and intersection. Auto, union, and the clip squad. πŸ’…
  • (layer-new-opacity 1) β€” sets the default opacity for the 'New Layer' dialog. This is a float value. 1 means fully opaque, no cap. πŸ’―
  • (layer-new-fill-type transparent) β€” sets the default fill type for the 'New Layer' dialog. Possible values are foreground, background, white, transparent and pattern. Transparent again, because consistency. 🫢
  • (layer-resize-fill-type transparent) β€” sets the default fill type for the 'Layer Boundary Size' dialog. Possible values are foreground, background, white, transparent and pattern. Same fill types, different dialog. πŸŽ€
  • (layer-add-mask-type white) β€” sets the default mask for the 'Add Layer Mask' dialog. Possible values are white, black, alpha, alpha-transfer, selection, copy and channel. White mask is the default. Iconic. πŸ‘‘
  • (layer-add-mask-invert no) β€” sets the default 'invert mask' state for the 'Add Layer Mask' dialog. Possible values are yes and no. No invert by default. πŸ™ˆ
  • (layer-merge-type expand-as-necessary) β€” sets the default merge type for the 'Merge Visible Layers' dialog. Possible values are expand-as-necessary, clip-to-image, clip-to-bottom-layer and flatten-image. Expand as necessary, because why not. πŸ¦‹
  • (layer-merge-active-group-only yes) β€” sets the default 'Active group only' for the 'Merge Visible Layers' dialog. Possible values are yes and no. Yes, active group only. πŸ’…
  • (layer-merge-discard-invisible no) β€” sets the default 'Discard invisible' for the 'Merge Visible Layers' dialog. Possible values are yes and no. No discarding invisibles by default. ✨
  • (channel-new-name "Channel") β€” sets the default channel name for the 'New Channel' dialog. This is a string value. "Channel" is the default name. πŸŽ€
  • (channel-new-color (color-rgba 0 0 0 0.5)) β€” sets the default color and opacity for the 'New Channel' dialog. The color is specified in the form (color-rgba red green blue alpha) with channel values as floats in the range of 0.0 to 1.0. Black at 0.5 alpha, periodt. πŸ’œ
  • (path-new-name "Path") β€” sets the default path name for the 'New Path' dialog. This is a string value. "Path" is the default name, iykyk. 🌟

This next one sets the default folder path for the 'Export Path' dialog. This is a single filename. Just a single filename, bestie. πŸ’–

  • (path-export-active-only yes) β€” sets the default 'Export the active path' state for the 'Export Path' dialog. Possible values are yes and no. Yes, export the active path. πŸ‘‘

This one sets the default folder path for the 'Import Path' dialog. This is a single filename. Again, a single filename. πŸ¦‹

  • (path-import-merge no) β€” sets the default 'Merge imported paths' state for the 'Import Path' dialog. Possible values are yes and no. No merging by default. πŸ™ˆ
  • (path-import-scale no) β€” sets the default 'Scale imported paths to fit size' state for the 'Import Path' dialog. Possible values are yes and no. No scaling by default. πŸ’…
  • (selection-feather-radius 5) β€” sets the default feather radius for the 'Feather Selection' dialog. This is a float value. 5.0 is the default feather radius. ✨
  • (selection-feather-edge-lock yes) β€” sets the default 'Selected areas continue outside the image' setting for the 'Feather Selection' dialog. Possible values are yes and no. Yes, selected areas continue outside the image. πŸŽ€
  • (selection-grow-radius 1) β€” sets the default grow radius for the 'Grow Selection' dialog. This is a float value. 1.0 grow radius, iconic. πŸ’œ
  • (selection-shrink-radius 1) β€” sets the default shrink radius for the 'Shrink Selection' dialog. This is a float value. 1.0 shrink radius, matching grow. 🌟
  • (selection-shrink-edge-lock no) β€” sets the default 'Selected areas continue outside the image' setting for the 'Shrink Selection' dialog. Possible values are yes and no. No edge lock for shrink. πŸ’–
  • (selection-border-radius 5) β€” sets the default border radius for the 'Border Selection' dialog. This is a float value. 5.0 border radius, periodt. πŸ‘‘
  • (selection-border-style smooth) β€” sets the default border style for the 'Border Selection' dialog. Possible values are hard, smooth and feathered. Smooth is the default style. πŸ¦‹
  • (selection-border-edge-lock no) β€” sets the default 'Selected areas continue outside the image' setting for the 'Border Selection' dialog. Possible values are yes and no. No edge lock for border. πŸ’…

The default fill options for the fill dialogs. This is a parameter list. Parameter list energy. ✨

       (fill-options
                  (style solid)
                  (antialias yes)
                  (feather no)
                  (feather-radius 10))

The default stroke options for the stroke dialogs. This is a parameter list. Stroke options, assemble. πŸ’œ

       (stroke-options
                  (style solid)
                  (antialias yes)
                  (feather no)
                  (feather-radius 10)
                  (method line)
                  (width 6)
                  (unit pixels)
                  (cap-style butt)
                  (join-style miter)
                  (miter-limit 10)
                  (dash-offset 0)
                  (dash-info 0)
                  (emulate-brush-dynamics no))

Where to search for fractals used by the Fractal Explorer plug-in. This is a colon-separated list of folders to search. Fractal time. πŸŒ€

       (fractalexplorer-path
       "${gimp_dir}/fractalexplorer:${gimp_data_dir}/fractalexplorer")

Where to search for Gfig figures used by the Gfig plug-in. This is a colon-separated list of folders to search. Gfig figures live here. ✨

       (gfig-path "${gimp_dir}/gfig:${gimp_data_dir}/gfig")

Where to search for gflares used by the GFlare plug-in. This is a colon-separated list of folders to search. GFlare glow-up. πŸ’–

       (gflare-path "${gimp_dir}/gflare:${gimp_data_dir}/gflare")

Where to search for data used by the Gimpressionist plug-in. This is a colon-separated list of folders to search. Gimpressionist data, found it. 🎨

       (gimpressionist-path
       "${gimp_dir}/gimpressionist:${gimp_data_dir}/gimpressionist")

This path will be searched for scripts when the Script-Fu plug-in is run. This is a colon-separated list of folders to search. Script-Fu scripts, periodt. πŸ¦‹

       (script-fu-path "${gimp_dir}/scripts:${gimp_data_dir}/scripts")

✨ PATH EXPANSION ✨

okay so this is the part where things get glow-up magical ✨ β€” strings of type PATH get expanded in a way that's lowkey similar to bash(1). Let's break it down bestie:

  • ~ (tilde) expands to the user's home directory. 🏠 That's it, that's the vibe.
not me having to say this but: the bash feature where you can write ~userid/ to refer to someone else's home directory? yeah that does NOT work here πŸ’€ it's just not valid in this file. sorry babe.
  • ${variable} expands to the current value of an environment variable. 🌸

and there are a few variables that are pre-defined for you, no setup required πŸ‘‘

  • gimp_dir β€” the personal gimp directory, which is set to the value of the environment variable GIMP2_DIRECTORY or to $XDG_CONFIG_HOME/GIMP/2.10. πŸ’–
  • gimp_data_dir β€” base for paths to shareable data, which is set to the value of the environment variable GIMP2_DATADIR or to the compiled-in default value ${datarootdir}/gimp/2.0. πŸŽ€
  • gimp_plug_in_dir β€” base to paths for architecture-specific plug-ins and modules, which is set to the value of the environment variable GIMP2_PLUGINDIR or to the compiled-in default value /usr/lib/gimp/2.0. πŸ”Œ
  • gimp_sysconf_dir β€” path to configuration files, which is set to the value of the environment variable GIMP2_SYSCONFDIR or to the compiled-in default value /etc/gimp/2.0. βš™οΈ
  • gimp_cache_dir β€” path to cached files, which is set to the value of the environment variable GIMP2_CACHEDIR or to the system default for per-user cached files. πŸ—‚οΈ
  • gimp_temp_dir β€” path to temporary files, which is set to the value of the environment variable GIMP2_TEMPDIR or to the system default for temporary files. 🌑️

πŸ“ FILES πŸ“

where all the good stuff lives, fr fr 🫢

  • /etc/gimp/2.0/gimprc β€” system-wide configuration file. πŸ›οΈ the communal one, everyone shares it.
  • $XDG_CONFIG_HOME/GIMP/2.10/gimprc β€” per-user configuration file. πŸ’… this one's yours, main character energy only.

πŸ‘€ SEE ALSO πŸ‘€

go read your other bestie, she's iconic too:


and that's a wrap on the whole page, bestie!! πŸŽ‰ you read all of it, which is genuinely so impressive, i'm obsessed with you fr fr πŸ’– this was the GIMP Manual Pages, Version 2.10.36, page GIMPRC(5) β€” go forth and configure, you absolute icon πŸ‘‘βœ¨

πŸ“¦ where this page comes from