1 ###################################################################
4 ## Copyright (C) 2008 - 2009 The Geeqie Team ##
5 ## Copyright (C) 1999 - 2006 John Ellis. ##
7 ## Use at your own risk! ##
9 ## This software released under the GNU General Public License. ##
10 ## Please read the COPYING file for more information. ##
11 ###################################################################
13 This is Geeqie, a successor of GQview.
15 Geeqie has been forked from GQview project, because it was not
16 possible to contact gqview author and the only maintainer.
17 Geeqie projects goal is to move the development forward and
18 also integrate the existing patches.
20 Geeqie is currently in alpha state. Everybody is encouraged
21 to try the new features, however for stable software look at
25 http://geeqie.sourceforge.net
30 Please send any question or suggestions to
31 geeqie-devel@lists.sourceforge.net
36 ======== README contents:
39 * Notes and changes for this release
41 * Description / Features
42 * Documentation (keyboard shortcuts)
43 * Editor command macros
51 GTK+ 2.4.x: ftp://ftp.gtk.org/pub/gtk
54 lcms, for color management support: http://www.littlecms.com
55 (disable with configure option: '--without-lcms')
56 exiv2, for enhanced exif support: http://www.exiv2.org/
57 (disable with configure option: '--without-exiv2')
58 lirc, for remote control support: http://www.lirc.org/
59 (disable with configure option: '--disable-lirc')
61 ======== Notes and changes for this release [section:release_notes]
65 + Add support for color profiles (requires lcms, see Notes).
66 + Add ability to delete a folder and it's contents (with restrictions).
67 - Add support for jpegs embedded in pentax and olympus raw files.
68 - Add icons for image state, enabled with I keyboard shortcut.
69 - For pan view calendar only show months that contain an image.
70 - Make scrolling with overlays (full screen info display) a bit smoother.
71 - Make sort menus display choices as radio group instead of checkbox.
72 - Use white background for transparent images when printing.
73 * Escape filename characters "`$\ before passing them to the system shell
74 when running an editor command.
75 * Fix occasional crash in icon view when removing files.
76 * Always use aligned memory access in EXIF parser, fixes crash
77 with BUS error on sparc.
78 * Fix progress bar warning when removing files while loading thumbnails.
79 * Fix image count in full screen information overlay when in slideshow.
80 * Fix memory leak when unable to start a slideshow.
84 For translation status list, see further below.
86 Version in parentheses indicates first appearance of feature or change.
88 !!! FIXME Geeqie changes !!!
90 Below are GQView releases:
91 (2.1.5) Add support for color profiles when lcms is installed. To
92 disable color profiles and use of lcms, run configure
93 with '--without-lcms'.
95 (2.1.1) Add support for viewing jpeg images and EXIF embedded within
96 raw files for Canon (.crw, .cr2) Fujifilm (.raf), and Nikon (.nef).
97 Note that not all cameras that support a raw format will necessarily
98 save a usable jpeg in the raw file (for example some Nikon cameras only
99 store a tiny thumbnail within the raw .nef file).
101 (1.5.6) The "shared thumbnail cache" is a proposal to unify the method
102 of storing thumbnails, so that they are compatible between different
103 applications. Using this option will allow GQview to share it's
104 thumbnails with, and use thumbnails from, other applications. Current
105 releases of GNOME (through nautilus and gthumb) and the gimp use this
106 new thumbnailing system. The latest draft of the thumbnail standard
107 is located on freedesktop.org in the standards section, and links to:
109 http://triq.net/~jens/thumbnail-spec/index.html
111 The shared thumbnail standard and GQview's classic mechanism can
112 not be used at the same time, enabling the "use shared thumbnail cache"
113 option will disable the use of classic thumbnails and use the new
116 (1.5.6) Collections contained in $HOME/.gqview/collections are now
117 updated when moving or renaming files, even if the collection is not
120 (1.5.6) The new option to the keep the full screen window above other
121 windows is only available when using at least GTK+ 2.4.0
123 (1.5.5) Dialog buttons are now ordered as recommended by the GNOME HIG.
124 The GNOME Human Interface Guidelines live at:
125 http://developer.gnome.org/projects/gup/hig/
126 To restore the old button order you must be using GTK 2.6 and set
127 the "gtk-alternative-button-order" key to TRUE in the gtkrc file:
129 by changing or adding this line:
130 gtk-alternative-button-order = 1
132 (1.5.5) The dithering option is now a hidden option, to change it
133 please refer to section 10.7 of the manual (help -> contents).
135 (1.5.0) Keywords and comments can now be entered for a file. Two places
136 allow keyword and comment entry. The first is via the new image details
137 sidebar accessed with (Ctrl-K), and the second is a details tab in the
138 properties dialog. If multiple files are selected, two buttons are
139 available: One allows adding the keywords to the selected files, the
140 other replaces existing keywords with the new keywords.
142 Keyword and comment metadata is stored in $(HOME)/.gqview/metadata, and
143 mirrors the existing filesystem tree. Metadata filenames have a suffix
144 of .meta appended. If 'cache into .thumbnails' is enabled, metadata is
145 stored locally to the original file in a hidden subfolder ".metadata".
146 If write permissions do not allow local saving of metadata, GQview falls
147 back to the default $(HOME)/.gqview/metadata location.
149 (1.5.0) Search dialog (F3 key) types:
150 Path searches files in the entered folder.
151 Comments searches all file metadata stored in ~/.gqview/metadata.
152 Results searches the current list of results, allowing refinement.
154 (1.3.6) Drag and drop has been significantly improved, with a few
155 changes. Button 1 will now initiate a drag, button 2 will still work
156 for this, the difference is button 2 will not change the selection.
158 (1.3.6) A middle button click will now toggle selection of clicked item.
160 (1.3.5) UTF-8 and filenames: GQview works fine if your filenames
161 correctly match the preferred locale encoding (LANG environment
162 variable), and prints errors on the console when they do not.
164 (1.3.3) Safe delete does not include undo, you will need to go to the
165 trash folder and retrieve the file(s) manually. The files can be viewed
166 by clicking the view button near the safe delete option in the preferences
167 window. Files moved to the trash folder are prefixed with a 6 digit
168 number. Lower numbers are older, and deleted (permanently) first when the
169 trash size limit is reached.
171 (1.3.2) New in 1.3.2 are sidebars for EXIF data display and a sort
172 manager. EXIF (ctrl + E) should be self explanatory. The Sort manager is a
173 directory list that allows copying or moving the displayed image to that
174 destination with one click of the button - very helpful when visually
175 sorting many images into subdirectories. To edit, reorder, or remove items
176 in the sort list, use the right click menu. The keyboard can also be used
177 by moving the focus to the desired button, then pressing menu/ctrl+f10 key
178 to display the popup menu, or shift+up/shift+down keys to change the
179 button location in the list. Items can also be added to the list by
180 dragging a directory onto the list.
184 If you plan on making any major changes to the code that will be offered
185 for inclusion to the main source, please contact us first - so that we
186 can avoid duplication of effort. A good example is porting any part of
187 GQview that uses deprecated widgets to GTK2 widgets, there are already
188 several such patches floating around. This is especially true if the
189 change is listed in the TODO!
194 see the Geeqie Bug Tracker at TODO file.
196 ======== Installation
198 Compilation: ./configure ; make
199 General install: make install
200 Removal: make uninstall
203 - To build an RPM binary:
205 on RedHat 6.x, 7.x use 'rpm -tb gqview-x.x.x.tar.gz'.
206 on RedHat 8 and 9 use 'rpmbuild -tb gqview-x.x.x.tar.gz'.
207 on other rpm distros, it depends on which version of rpm is used, if
208 the option fails with the rpm command, try rpmbuild.
210 Where the resulting package is placed is distribution specific, for
211 example in RedHat it is placed in /usr/src/redhat/RPMS/{architecture}/
213 ======== Description / Features
215 Geeqie is a graphics file viewer. Basic features:
217 - Single click image viewing / navigation.
219 - Thumbnails, with optional caching and .xvpics support.
220 - Multiple file selection for move, copy, delete, rename, drag and drop.
224 - Ability to open images in external editors (configurable).
226 - Comparison of images to find duplicates by name, size, date,
227 dimensions, or image content similarity.
230 ======== Documentation (brief) [section:documentation]
233 [PageDown], [Keypad PageDown] next image
234 [PageUp], [Keypad PageUp] previous image
235 [Home], [Keypad Home] first image in list
236 [End], [Keypad End] last image in list
237 [Tab] tab completion in path entry window
238 [Escape] cancel completion in path entry window
240 Keyboard commands valid when image has focus (image has black rectangle)
241 arrow keys, [Keypad arrows] pan image
242 [Shift] - arrow keys pan image faster
244 [Backspace] , B previous image
247 [Ctrl] - N new window
248 C new empty collection
250 D open a Find Duplicates window
251 [Shift]- P open Print dialog
252 [Ctrl] - F new folder
255 [Ctrl] - R rename file
256 [Ctrl] - D, [Delete] delete file
257 [Ctrl] - W close window
258 [Ctrl] - Q exit GQview
261 [Ctrl] - 1 .. 0 run external editor
262 [Ctrl] - A select all files
263 [Ctrl] - [Shift] - A unselect all files
264 [Ctrl] - P display image properties window
265 [Ctrl] - O configure Options
266 ] rotate image clockwise
267 [ rotate image counterclockwise
268 [Shift] - R rotate image 180 degrees
269 [Shift] - M mirror image (horizontal)
270 [Shift] - F flip image (vertical)
271 [Shift] - G grayscale image
274 +, =, [Keypad +] zoom in
275 -, [Keypad -] zoom out
276 Z, [Keypad /] zoom to original size
277 X, [Keypad *] zoom to fit within window
278 W zoom to fit width of window
279 H zoom to fit height of window
280 1, 2, 3, 4 zoom to Nx (3 = 3x)
281 9, 8, 7 zoom to -2, -3, -4, respectively
282 T toggle thumbnails in list view
283 [Ctrl] - L display files as list view
284 [Ctrl] - I display files as icon view
285 [Ctrl] - T toggle tree view of directories
287 L (Un)float file selection area
288 [ctrl] - H (Un)hide file selection area
289 [Ctrl] - K toggle Keywords sidebar
290 [Ctrl] - E toggle EXIF sidebar
291 [Ctrl] - S toggle sort manager sidebar
292 F, V toggle full screen
294 P (Un)pause slideshow
295 [Ctrl] - V display current image in new window
299 arrows, [Keypad arrows] move selection
300 [Shift] + arrows select multiple images
301 [Ctrl] + arrows move without changing selection
302 [Space] select only image with focus
303 [Ctrl] + [Space] toggle selection of image with focus
304 [Home], [Keypad Home] move focus to top of images
305 [End], [Keypad End] move focus to end of images
306 (shift and ctrl work with Home, End, PageUp/Down as with arrows)
307 [Ctrl] - A select all images
308 [Ctrl] - [Shift] - A unselect all images
310 [Delete], [Keypad Delete] remove selected images from collection
311 (does not delete file)
312 [Ctrl] - L add images from main window file list
314 [Ctrl] - T toggle display of icon filename text
316 N sort collection by name
317 D sort collection by date
318 B sort collection by size (bytes)
319 P sort collection by location (path)
320 I (*) sort collection by name numerically
321 (file1 file10 file2 -> file1 file2 file10)
323 [Enter], [Keypad Enter] view image with focus in main window
324 V view image with focus in new window
325 [Ctrl] - 1 .. 0 open selected image(s) in editor
328 [Ctrl] - S save collection as...
329 A append to collection...
331 [Shift] - P print selected images...
333 [Ctrl] - C copy selected files...
334 [Ctrl] - M move selected files...
335 [Ctrl] - R rename selected files...
336 [Ctrl] - D delete selected files
338 [Ctrl] - P display image properties window
340 [Ctrl] - W close window
342 Find Duplicates window:
344 [Ctrl] - A select all images
345 [Ctrl] - [Shift] - A unselect all images
346 1 select group 1 duplicates
347 2 select group 2 duplicates
349 [Ctrl] - L add images from main window file list
350 C add selected images to new collection
352 [Delete], [Keypad Delete] remove selected images from list
353 [Ctrl] - [Delete] clear window
355 [Enter], [Keypad Enter] view image with focus in main window
356 V view image with focus in new window
357 [Ctrl] - 1 .. 0 open selected image(s) in editor
359 [Ctrl] - C copy selected files...
360 [Ctrl] - M move selected files...
361 [Ctrl] - R rename selected files...
362 [Ctrl] - D delete selected files
364 [Ctrl] - P display image properties window
366 [Ctrl] - W close window
370 [Ctrl] - F, / show search bar
371 [Ctrl] - G repeat previous search
373 (*) This is a compile time option enabled when strverscmp is found.
377 Button 1 view next image
378 Button 2 view previous image
379 Button 3 context menu
381 Button 1 drag scroll/pan image
382 Button 2 drag initiate drag and drop
384 Wheel up/down change to previous/next image
385 Wheel up/down + [Shift] scroll image up/down
386 Wheel up/down + [Control] zoom image in/out
389 ======== Editor command macros [section:editors]
391 Any one of the following filename markers may be used:
393 %f Replaced with list of selected files, may occur once.
394 %p Command is run once for each selected file, may occur multiple times.
396 Use of the following to display output window for the command:
398 %v Display result of command in output window, must occur as first two
399 characters in the command, or immediately after the "%w" macro.
400 %V Like v above, but when used with %p, only displays output window for
401 multiple files. The output of a single file is suppressed.
405 %w Prevent full screen from deactivating when command is executed,
406 must occur as the first two characters.
408 %% This will be replaced by one '%'. This is the way to escape '%'.
410 %d This only makes sense for external commands like copy or move as this
411 is replaced by the destination.
413 ======== Overlay Info [section:overlay]
415 Overlay info format string syntax is: %tag[:max_length][:extra]%
417 %name% Filename of the picture.
418 %collection% Name of the collection
419 %number% Current number of image in the list
420 %total% Total number of images
424 %height% Image height
425 %res% Image resolution
426 %keywords% Image keywords from metadata
427 %comment% Image comment from metadata
429 To access exif data use the exif name:
430 %Exif.Photo.DateTimeOriginal% Date of the original shot
432 Pre-formatted exif data is also available:
433 formatted.Camera Camera and sofware name
434 formatted.DateTime Image Date
435 formatted.ShutterSpeed Shutter speed in seconds (ie. 1/60s)
436 formatted.Aperture Aperture (ie. f5.6)
437 formatted.ExposureBias Exposure bias (ie. +0.3)
438 formatted.ISOSpeedRating ISO sensitivity (ie. 100)
439 formatted.FocalLength Focal length
440 formatted.FocalLength35mmFilm Focal length 35mm
441 formatted.SubjectDistance Subject distance
442 formatted.Flash Flash
443 formatted.Resolution Resolution
444 formatted.ColorProfile Color profile
445 formatted.GPSPosition GPS position
446 formatted.GPSAltitude GPS altitude
448 You can limit the length of displayed data using :number notation:
449 %formatted.Camera:20% will truncate the displayed data to 20 characters
450 and will add 3 dots at the end to denote the truncation.
452 If two or more variables are connected with the |-sign, it prints available
453 variables with a separator:
454 %formatted.ShutterSpeed%|%formatted.ISOSpeedRating%|%formatted.FocalLength%
456 "1/20s - 400 - 80 mm"
458 "1/200 - 80 mm" if there's no ISO information in the Exif data.
460 If a line is empty, it is removed.
461 This allows to add lines that totally disappear when no data is available.
463 Extra string uses special character '*' to mark the position of the data.
464 If no '*' is present, then extra string is just appended to data.
465 Any "\n" is replaced by a newline on display.
466 Pango mark up is accepted in left and right parts.
467 If data is empty, nothing will be displayed.
470 "%name:<i>*</i>\n%" -> name is displayed in italics ended with a newline
471 "%size:\n%" -> size is displayed with a newline at end
472 "%formatted.ISOSpeedRating:ISO *%" -> ie. "ISO 100"
473 "Collection <b>*</b>\n" -> display collection name in bold prefixed by
474 "Collection " and a newline is appended
477 ======== Additional comments:
480 These options are not adjustable in the preferences window, to change
481 them edit $(HOME)/.geeqie/geeqierc while Geeqie is not running. An option
482 becomes 'hidden' when it is removed from the user's visibility, and
483 only remains so that those few users that really want it will not complain
484 about it's removal :)
486 lazy_image_sync: false
487 Set true to enable the old behavior of lazy image updates when changing
488 directories. (viewed image will remain until a new file is selected)
490 display_dialogs_under_mouse: false
491 Set true to force dialogs to display under the current mouse position,
492 note that this goes against the preference set for the window manager.
496 ======== Credits [section:credits]
501 Grzegorz Kowal <g_kowal@poczta.onet.pl>
502 Zbigniew Chyla <cyba@gnome.pl>
503 Emil Nowak <emil5@go2.pl>
504 Wit Wilinski <wit.wilinski@gmail.com>
505 for Polish translation
507 Christopher R. Gabriel <cgabriel@pluto.linux.it>
508 Di Maggio Salvatore <Salvatore.Dimaggio@bologna.marelli.it>
509 Costantino <inverness1ATvirgilio.it>
510 for Italian translation
512 Sandokan <cortex@nextra.sk>
513 Ivan Priesol <priesol@iris-sk.sk>
514 Mgr. Peter Tuharsky <tuharsky@misbb.sk>
515 for Slovak translation
517 Rodrigo Sancho Senosiain <ruy_ikari@bigfoot.com>
518 Ariel Fermani <the_end@bbs.frc.utn.edu.ar>
519 for Spanish translation
521 Laurent Monin <i18n@norz.org>
522 Eric Lassauge <lassauge@users.sf.net>
523 Jean-Pierre Pedron <jppedron@club-internet.fr>
524 Pascal Bleser <pascal.bleser@atosorigin.com>
525 Nicolas Boos <nicolas.boos@wanadoo.fr>
526 Nicolas Bonifas <nicolas_bonifas@users.sf.net>
527 for French translation
529 Fâtih Demir <kabalak@gmx.net>
530 for Turkish translation
532 Kam Tik <kamtik@hongkong.com>
533 Abel Cheung <deaddog@deaddog.ws>
534 S.J. Luo <crystal@mickey.ee.nctu.edu.tw>
535 for Traditional Chinese (Big5) translation
537 Junichi Uekawa <dancer@debian.org>
538 Oleg Andrjushenko <oandr@itec.cn.ua>
539 Michael Bravo <mbravo@tag-ltd.spb.ru>
540 Sergey Pinaev <dfo@antex.ru>
541 for Russian translation
543 Guilherme M. Schroeder <slump@ieg.com.br>
544 Vitor Fernandes <vitor_fernandes@SoftHome.net>
545 Herval Ribeiro de Azevêdo <heraze@gmail.com>
546 for Brazilian Portuguese translation
548 Shingo Akagaki <akagaki@ece.numazu-ct.ac.jp>
549 Yuuki Ninomiya <gm@debian.or.jp>
550 Sato Satoru <ss@gnome.gr.jp>
551 Takeshi AIHANA <aihana@gnome.gr.jp>
552 for Japanese translation
554 Matthias Warkus <mawarkus@t-online.de>
555 Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>
556 Danny Milosavljevic <danny_milo@yahoo.com>
557 Ronny Steiner <Post@SIRSteiner.de>
558 Klaus Ethgen <Klaus@Ethgen.de>
559 for German translation
561 Matej Erman <matej.erman@guest.arnes.si>
562 for Slovene translation
564 MÃtyÃs Tibor <templar@tempi.scene.hu>
565 Koblinger Egmont <egmont@uhulinux.hu>
566 Sári Gábor <saga@externet.hu>
567 for Hungarian translation
569 Wu Yulun <migr@operamail.com>
570 Charles Wang <charlesw1234cn@yahoo.com.cn>
571 for simplified Chinese translation
573 H.J.Visser <H.J.Visser@harrie.mine.nu>
574 Tino Meinen <a.t.meinen@chello.nl>
575 for Dutch translation
577 Lauri Nurmi <lanurmi@iki.fi>
578 for Finnish translation
580 Ilmar Kerm <ikerm@hot.ee>
581 for Estonian translation
583 Volodymyr M. Lisivka <lvm@mystery.lviv.net>
584 for Ukrainian translation
586 Birger Langkjer <birger.langkjer@image.dk>
587 for Danish translation
589 Torgeir Ness Sundli <torgeir@mp3bil.no>
590 for Norwegian translation
592 Jan Raska <jan.raska@tiscali.cz>
593 Michal Bukovjan <bukm@centrum.cz>
594 for Czech translation
596 Phanumas Thanyaboon <maskung@hotmail.com>
599 Harald Ersch <hersch@romatsa.ro>
600 for Romanian translation
602 pclouds <pclouds@vnlinux.org>
603 for Vietnamese translation
605 Tedi Heriyanto <tedi_h@gmx.net>
606 for Indonesian translation
608 Vladimir Petrov <vladux@mail.bg>
609 for Bulgarian translation
611 Hans Öfverbeck <hans.ofverbeck@home.se>
612 for Swedish translation
614 Youssef Assad <youssef@devcabal.org>
615 for Arabic translation
617 catux.org <mecatxis@ya.com>
618 for Catalan translation
620 Hyun-Jin Moon <moonhyunjin@gmail.com
621 for Korean translation
623 Pavel Piatruk <berserker@neolocation.com>
624 for Belarusian translation
626 Piarres Beobide <pi@beobide.net>
627 for Basque translation
629 Antonio C. Codazzi <f_sophia@libero.it>
630 for Esperanto translation
632 Fixes, additions, and patches:
636 for initial Exif support.
638 Daniel M. German <dmgerman at uvic.ca>
639 for Canon raw image support.
642 for Fujifilm raw image support.
644 Diederen Damien <D.Diederen@student.ulg.ac.be>
645 for .xvpics thumbnail reading support.
647 Nick Rusnov <nick@grawk.net>
648 Ryan Murray <rmurray@debian.org>
651 Martin Pool <mbp@samba.org>
652 for sort by number, misc. improvements.
654 Jörg Mensmann <joerg.mensmann@gmx.de>
655 for Xinerama support patch.
658 for miscellaneous fixes.
661 for Exif enhancements, histogram and other patches
664 for customizable fullscreen overlay
667 for print related enhancements
670 for copy path to clipboard patch
673 for random slide show speedup patch
675 Klaus Ethgen <Klaus@Ethgen.de>
676 for GPS integration, Search enhancement and other patches
679 Thanks to the users for finding Geeqie useful.
682 ======== Translation status:
684 Please send po files/patches in gzipped form to ensure data integrity.
686 Translations statistics
687 Date: Fri, 05 Sep 2008 00:30:54 +0200
689 Note: completion % in the chart below may not be quite correct
690 when fuzzy translations exist but do not appear in the source.
691 For exact results, run make update-po with up to date POTFILES.in.
692 comp % = trans / (trans + fuzzy + untrans)
694 Language Comp(%) Trans Fuzzy Untrans Total
695 fr 100.00 996 0 0 996
696 be 82.43 821 77 98 996
697 ru 71.99 717 128 151 996
698 eu 62.05 618 185 193 996
699 eo 61.95 617 186 193 996
700 vi 61.85 616 192 188 996
701 it 61.65 614 187 195 996
702 pt_BR 61.65 614 187 195 996
703 zh_TW 60.84 606 183 207 996
704 sk 60.34 601 192 203 996
705 fi 58.23 580 211 205 996
706 nl 58.23 580 214 202 996
707 sv 58.03 578 207 211 996
708 bg 57.93 577 208 211 996
709 ca 57.93 577 208 211 996
710 cs 57.93 577 208 211 996
711 de 57.93 577 208 211 996
712 es 57.93 577 208 211 996
713 ja 57.93 577 208 211 996
714 pl 55.32 551 180 265 996
715 ar 38.86 387 332 277 996
716 ro 34.34 342 352 302 996
717 hu 32.93 328 342 326 996
718 id 17.17 171 412 413 996
719 et 16.77 167 411 418 996
720 uk 14.86 148 413 435 996
721 nb 13.76 137 418 441 996
722 zh_CN.GB2312 13.76 137 419 440 996
723 th 12.95 129 413 454 996
724 sl 12.55 125 422 449 996
725 da 11.85 118 406 472 996
726 ko 11.04 110 65 821 996
727 tr 4.92 49 395 552 996