GIMP from SVN (2.7.x) comes with a built-in single-window mode (can be disabled) but I find it unstable sometimes so I prefer to use the stable GIMP 2.6.x, especially since there are so many goodies you can use to enhance it, like GIMP Painter and GIMP Paint Studio, G'MIC or the GIMP Plugin Registry package.
So if you want to use the stable GIMP 2.6.x (tested with GIMP 2.6.11 under Ubuntu 11.04) and still get a single-window mode in GIMP, here's how to do it using a script called GIMPBox.
GIMPBox is a python script which wraps all the GIMP windows into one window. It does not modify GIMP and you use it by changing the GIMP shortcut to launch GIMPBox instead of GIMP. You can open multiple images at the time thanks to a tab bar that GIMPBox will display at the bottom of the window (the tabs include previews too).
GIMPBox is a python script which wraps all the GIMP windows into one window. It does not modify GIMP and you use it by changing the GIMP shortcut to launch GIMPBox instead of GIMP. You can open multiple images at the time thanks to a tab bar that GIMPBox will display at the bottom of the window (the tabs include previews too).
Before proceeding, there are a few issues that occur when using GIMPBox that you should know about:
- when launching GIMPBox, there is a slight delay (probably 1-2 seconds) when GIMP is not running as single-window. But like I said, the delay is very small;
- If you use Unity and AppMenu (Global Menu) is enabled, the GIMP menu won't show up on the top panel. You can still access the menu by right clicking inside the GIMP window or by running GIMPBox with a special command (see below) which will make the menu to show up in GIMP (but it's not possible to get the menu to show up on the top panel) like in my screenshot.
- You can't open multiple images by right clicking an image and selecting to open it with GIMP.
- By default, the keyboard shortcuts won't work. However, there is a way around this: you can press TAB and then you should be able to use the keyboard shortcuts. This is only required once for a session, but if you edit multiple images in the same time and keep switching between them, you'll have to press TAB again to use keyboard shortcuts.
- it doesn't work with GNOME3
If you are ok with these issue and want to use GIMPBox, let's proceed.
GIMPBox: single-window mode for GIMP (stable - 2.6.x)
1. Install the GIMPBox script.
If you want to take a look at the script, download it from HERE. For easier installation, copy/paste the commands below in a terminal:
sudo apt-get install python-wnck
sudo wget http://gimpbox.googlecode.com/hg/gimpbox.py -O /usr/local/bin/gimpbox
sudo chmod +x /usr/local/bin/gimpbox
2. Edit the GIMP shortcut to run the GIMPBox script instead of GIMP.
Search for "Main Menu" in Dash or for the classic GNOME desktop, right click the menu and select "Edit Menus". Then, under "Graphics" select "GIMP Image Editor", click Properties and:
a) If you don't use Unity with AppMenu (global menu), replace "gimp-2.6 %U" with "gimpbox %U":
b) If you use Unity with AppMenu (global menu) enabled, replace "gimp-2.6 %U" with "env UBUNTU_MENUPROXY= gimpbox %U" (yes, there's a space after "="):
The special shortcut for those who use AppMenu is required because using GIMPBox, the AppMenu won't work. Using "UBUNTU_MENUPROXY= " will disable the AppMenu for GIMPBox so the menu will be displayed inside the window, like in my screenshot.
If you want to edit the system-wide GIMP shortcut, open a terminal and copy/paste this:
gksudo gedit /usr/share/applications/gimp.desktop
And in this file, use the same command as explained above (under a and b) for launching GIMP.
TIP: If you change Toolbox or the "Layers, Channels, Paths..." dialogs and they don't stick in GIMPBox anymore, close GIMP and run the following command to fix this:
rm ~/.gimp-2.6/sessionrc
Thanks to Pinguy for sending us the tip; info via PinguyOS forums (we've adapted the instructions for Unity / Appmenu; if you use the old GNOME2 Global Menu panel applet, see Pinguy's post for instructions on getting the menu to show in in GIMP/GIMPBox).