qiv(1) a fast gdk/imlib image viewer for X.


qiv [options] file ...


qiv is an image viewer developed with gdk/imlib. As a result, qiv is faster than traditional image viewers such as xv or xli.


-h, --help
Print out a brief help message.
--display disp
Open qiv window on display disp.
-F, --file file | stdin
Read file names from file or stdin, one name per line. This option can be specified multiple times to read from several files, and will not affect other file names passed on the command-line.
-u, --recursivedir
Change the behavior of qiv to recursively descend into the directories given on the command line.
-L, --followlinks
With --recursivedir, this allows a symlink to point to a directory. This is useful for organizing photo dirs into categories, but it is up to you to ensure that there are no symlink loops that would cause an infinite scan.
-e, --center
Disable window centering.
-w, --fixed_width x
Window with fixed width x.
-W, --fixed_zoom x.
Window with fixed zoom factor (percentage x).
-x, --root file
Set file as the current desktop background (centered) and exit.
-y, --root_t file
Set file as the current desktop background (tiled) and exit.
-z, --root_s file
Set file as the current desktop background (stretched) and exit.
-m, --maxpect
Expand image(s) to fit screen size while preserving aspect ratio.
-t, --scale_down
Shrink image(s) which are larger than screen size to fit.
-b, --brightness x
Set brightness to x (-32..32).
-c, --contrast x
Set contrast to x (-32..32).
-g, --gamma x
Set gamma to x (-32..32).
-n, --no_filter
Disable filtering of images by extension. Normally, qiv will only load images with an image extension such as .jpg, .png, .gif ... This option lets you load any file as an image.
-i, --no_statusbar
Disable statusbar.
-I, --statusbar
Enable statusbar.
-p, --transparency
Enable transparency for transparent images.
-a, --do_grab
Grab the pointer in windowed mode.
-G, --disable_grab
Disable grabbing the pointer/kbd in fullscreen mode. Useful e.g. if qiv displays images on a display other than where it was invoked from. Use with caution!
-v, --version
Print version information.
-o, --bg_color x
Set root background color to named color x or 24 bit hex RGB triple in the format #RRGGBB.
-C, --cycle
Change cycle behaviour. qiv will exit after last picture has been shown.
-s, --slide
Start slideshow immediately. This can also be used for the desktop background (x/y/z).
-r, --random
Randomize slideshow.
-R, --readonly
Disable the deletion feature.
-S, --shuffle
Shuffle images (random order with next/previous functionality).
-d, --delay x
Set slideshow delay to x seconds.
-f, --fullscreen
Use fullscreen window on start-up.
-P, --ignore_path_sort
Sort all the image files by just their filename, ignoring the path.
-M, --merged_case_sort
Sort all the image files in merged-case order (AaBbCc...).
-N, --numeric_sort
A "smart" numeric sort that attempts to sort filenames with numbers in a logical manner. For instance: 2.jpg sorts before 10.jpg; 1foo.jpg through 10foo.jpg sorts after 1bar.jpg through 15bar.jpg (because "foo" comes after "bar"); and baz0001.jpg through baz0010.jpg sorts after baz01.jpg through baz99.jpg (because the longer group of zero-padded digits indicates that they shouldn't be intermingled).
-D, --no_sort
Do not apply any sorting to the list of files.
-T, --watch
Reload the image if it has changed on disk.
-A, --select_dir dir
Store the selected files in dir (default is .qiv-select).
-q, --rotate x
Rotate each image 90(x=1),180(x=2),270(x=3) degrees clockwise. If x=11 or x=13, the 90 or 270 degree rotation is conditional on the image fitting better if rotated. e.g. if the display is wide and a tall image is too tall to fit on the screen, it will be rotated.
-l, --autorotate
Autorotate JPEGs according to EXIF rotation tag.
-X, --xineramascreen x
Use monitor x as preferred screen
-Y, --source_profile x
Use color profile file x as source profile for all images
-Z, --display_profile x
Use color profile file x as display profile for all images
-B, --browse
This option is useful when configuring qiv to be used with a file manager. qiv will scan the directory of the clicked image and allow you to scroll through those images.
Enable movement with h/j/k/l, vi-style (HJKL will do what hjkl previously did)


qiv -atsd2 *.jpg
qiv --maxpect --root image.png
qiv --maxpect --slide --random --delay=2 *
qiv --maxpect --scale_down --slide --delay=2 `find / *`
qiv --bg_color 0000FF --root image.png
qiv --bg_color blue --root image.png


space/left mouse/wheel down        next picture
backspace/right mouse/wheel up     previous picture
PgDn                               5 pictures forward
PgUp                               5 pictures backward
q/ESC/middle mouse                 exit
0-9                 run 'qiv-command <key> <current-img>'
^...<return>        run 'qiv-command ^... <current-img>' where ... can be any string
?/F1                show keys
F11/F12             in/decrease slideshow delay (1 second)
a/A                 copy picture to .qiv-select
d/D/del             move picture to .qiv-trash (-R disables this feature)
u                   undelete the previously trashed image
+/=/wheel r/btn fwd zoom in (10%)
-/wheel l/btn back  zoom out (10%)
e                   center mode on/off
f                   fullscreen mode on/off
m                   scale to screen size on/off
t                   scale down on/off
X                   cycle through monitors
s                   slide show on/off
p                   transparency on/off
r                   random order on/off
b                   - brightness
B                   + brightness
c                   - contrast
C                   + contrast
g                   - gamma
G                   + gamma
o                   reset brightness, contrast, gamma
h                   flip horizontally
v                   flip vertically
k                   rotate right
l                   rotate left
jtx<return>        jump to image number x
jfx<return>        jump forward x images
jbx<return>        jump backward x images
enter/return       reset zoom, rotation and color settings
E                  display Exif information
i                  statusbar on/off
I                  iconify window
w                  watch file on/off
x                  center image on background
y                  tile image on background
z                  stretch image on background
,                  grab on/off
<                  turn on/off magnifying window
arrow keys                 move image (in fullscreen mode)
arrow keys+Shift           move image faster (in fullscreen mode)
NumPad-arrow keys+NumLock  move image faster (in fullscreen mode)


Button 1                            next picture
Button 1 (hold down) & Mouse-Move   moving picture
Button 2                            quit
Button 3                            previous picture
Wheel Up                            next picture
Wheel Dn                            previous picture
Wheel Lt/Button back                zoom out (10%)
Wheel Rt/Button forward             zoom in (10%)


qiv doesn't actually delete files. It creates a directory named ".qiv-trash" and moves the images to that directory. qiv maintains the directory structure of your "deleted" images. You can also undelete the most recently trashed images in reverse order, which moves each file back into its original directory. There is a limit to how many deletions can be undone, but it should be pretty large (currently 1024 items). Sometimes this feature might be unwanted. To prevent accidents you can specify the "-R" option to disable this feature.


With XFree86 3.3.2+ server, using the wheel is seen as button 4 and 5 pressed. You only have to use "IMPS/2" or "Intellimouse" for protocol and add "ZAxisMapping 4 5 " in the "Pointer" section of XF86Config. If imwheel (a program used to emulate key pressed when wheel is used for program not supporting wheel), the following two lines must be add to imwheel config file :



Keys 0-9 will invoke qiv-command with the key pressed as the first argument and the current image filename as the second argument. qiv-command is not distributed with qiv; it is to be supplied by the user. Thus, this feature could be enabled by placing a simple shell script such as the following in the command search path (for example, in the user's ~/bin directory):

# Argument sanity checking eliminated for brevity
case $1 in
  0|1|2|3|4|5|6|7|8|9) mkdir -f dir$1; mv "$fname" dir$1 ;;
  *) echo "unrecognized command"; exit ;;

If the first line of the output is like "NEWNAME=xxxxxxx" then qiv thinks that the filename of the currently displayed image has changed to this new name and updates its internal filelist. This is very useful when using qiv-command to rename files.

Please also see the example that came together with qiv.


Adam Kopacz             <[email protected]>
Andy Spiegl             <[email protected]>
Darren Smith            <[email protected]>
Pavel Andreev           <[email protected]>
Decklin Foster          <[email protected]>
Holger Mueller          <[email protected]>
Scott Sams              <[email protected]>
Serge Winitzki          <[email protected]>
Frederic Crozat         <[email protected]>
Rutger Nijlunsing       <[email protected]>
John Knottenbelt        <[email protected]>
Danny                   <[email protected]>
Tomas Ogren             <[email protected]>
Erik Jacobsen           <[email protected]>
Alfred Weyers           <[email protected]>
Daniel                  <[email protected]>
Henning Kulander        <[email protected]>
Ask Bjoern Hansen       <[email protected]>
Adrian Lopez            <[email protected]>
Y Furuhashi             <[email protected]>
Wayne Davison           <[email protected]>
Johannes Stezenbach     <[email protected]>
OEyvind Kolaas          <[email protected]>
Matthieu Castet         <[email protected]>
Geoffrey T. Dairik      <[email protected]>
Leopoldo Cerbaro        <[email protected]>
Heikki Lehvaslaiho      <[email protected]>
Larry Doolittle         <[email protected]>
S. Dobrev               <[email protected]>
Thomas Wiegner          <[email protected]>
Barry deFreese          <[email protected]>
Peter deWachter         <[email protected]>
Akos Pasztory           <[email protected]>


qiv homepage: http://qiv.spiegl.de/

homepage of original author Adam Kopacz <[email protected]>

Mail bug, reports and comments to Andy Spiegl <[email protected]>

Sending a SIGUSR1 to qiv will cause the program to flip to next picture. SIGUSR2 will move to previous.

This program is covered by the GNU GPL; see the file COPYING for details.