changeset 1581:cef502852c4f

resolved conflict
author Yoshiki Yazawa <yaz@honeyplanet.jp>
date Fri, 01 May 2009 15:48:11 +0900
parents 855d58cba862 (diff) 24ef7b610ed6 (current diff)
children c1e22cba4003
files src/image.c
diffstat 26 files changed, 750 insertions(+), 735 deletions(-) [+]
line wrap: on
line diff
--- a/geeqie.spec.in	Fri May 01 15:45:54 2009 +0900
+++ b/geeqie.spec.in	Fri May 01 15:48:11 2009 +0900
@@ -83,7 +83,8 @@
 %files 
 %defattr(-,root,root)
 %doc %{_docdir}/%{docname}
-%{_bindir}/geeqie
+%{_bindir}/geeqie*
+%{_datadir}/geeqie
 %{_datadir}/locale/*/LC_MESSAGES/*.mo
 %{_datadir}/applications/geeqie.desktop
 %{_datadir}/pixmaps/geeqie.png
--- a/plugins/Makefile.am	Fri May 01 15:45:54 2009 +0900
+++ b/plugins/Makefile.am	Fri May 01 15:48:11 2009 +0900
@@ -2,3 +2,5 @@
 qq_desktoptemplatedir = $(pkgdatadir)
 qq_desktoptemplate_DATA = template.desktop
 
+EXTRA_DIST = \
+	$(qq_desktoptemplate_DATA)
--- a/plugins/symlink/Makefile.am	Fri May 01 15:45:54 2009 +0900
+++ b/plugins/symlink/Makefile.am	Fri May 01 15:48:11 2009 +0900
@@ -3,4 +3,5 @@
 qq_desktopdir = $(pkgdatadir)/applications
 qq_desktop_DATA = symlink.desktop
 
-
+EXTRA_DIST = \
+	$(qq_desktop_DATA)
--- a/po/Makefile.in.in.patch	Fri May 01 15:45:54 2009 +0900
+++ b/po/Makefile.in.in.patch	Fri May 01 15:48:11 2009 +0900
@@ -1,10 +1,20 @@
---- Makefile.in.in	2008-04-19 14:36:53.000000000 +0200
-+++ Makefile.in.in.new	2008-04-19 14:39:19.000000000 +0200
-@@ -216,7 +216,30 @@
+--- Makefile.in.in	2009-04-28 23:27:08.000000000 +0200
++++ Makefile.in.in.new	2009-04-28 23:25:22.000000000 +0200
+@@ -92,7 +92,7 @@
+ all-yes: $(CATALOGS)
+ all-no:
+ 
+-$(srcdir)/$(GETTEXT_PACKAGE).pot: $(POTFILES)
++$(srcdir)/$(GETTEXT_PACKAGE).pot: $(POTFILES) $(srcdir)/POTFILES.in
+ 	$(XGETTEXT) --default-domain=$(GETTEXT_PACKAGE) --directory=$(top_srcdir) \
+ 	  --add-comments --keyword=_ --keyword=N_ \
+           --flag=g_strdup_printf:1:c-format \
+@@ -216,8 +216,31 @@
  	    || cp -p $(srcdir)/$$file $(distdir); \
  	done
  
 -update-po: Makefile
+-	$(MAKE) $(GETTEXT_PACKAGE).pot
 +### Updating po and gmo files
 +#
 +# Update by merging all .po files with the .po template master file.
@@ -12,11 +22,11 @@
 +# It is possible to update only a single .po file by setting the PO variable to
 +# either <lang> or <lang>.po when calling make. Example: make update-po PO=is
 +
-+update-po: Makefile $(GETTEXT_PACKAGE).pot
++update-po: Makefile $(srcdir)/$(GETTEXT_PACKAGE).pot
 +	@cd $(srcdir); \
 +	$(foreach lang,$(basename $(if $(strip $(PO)),$(PO),$(CATALOGS))), \
 +	  echo -n "$(lang): "; \
-+	  if $(MSGMERGE) $(lang).po $(GETTEXT_PACKAGE).pot -o $(lang).new.po; then \
++	  if $(MSGMERGE) $(lang).po $(srcdir)/$(GETTEXT_PACKAGE).pot -o $(lang).new.po; then \
 +	    mv -f $(lang).new.po $(lang).po; \
 +	  else \
 +	    echo "msgmerge failed!"; \
@@ -29,6 +39,16 @@
 +	@:
 +
 +update-po-orig: Makefile
- 	$(MAKE) $(GETTEXT_PACKAGE).pot
++	$(MAKE) $(srcdir)/$(GETTEXT_PACKAGE).pot
  	tmpdir=`pwd`; \
  	cd $(srcdir); \
+ 	catalogs='$(CATALOGS)'; \
+@@ -225,7 +248,7 @@
+ 	  cat=`basename $$cat`; \
+ 	  lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
+ 	  echo "$$lang:"; \
+-	  if $(MSGMERGE) $$lang.po $(GETTEXT_PACKAGE).pot -o $$tmpdir/$$lang.new.po; then \
++	  if $(MSGMERGE) $$lang.po $(srcdir)/$(GETTEXT_PACKAGE).pot -o $$tmpdir/$$lang.new.po; then \
+ 	    if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
+ 	      rm -f $$tmpdir/$$lang.new.po; \
+             else \
--- a/po/POTFILES.in	Fri May 01 15:45:54 2009 +0900
+++ b/po/POTFILES.in	Fri May 01 15:48:11 2009 +0900
@@ -7,11 +7,11 @@
 ./src/bar_sort.c
 ./src/cache.c
 ./src/cache_maint.c
-./src/cellrenderericon.c
 ./src/collect-dlg.c
 ./src/collect-io.c
 ./src/collect-table.c
 ./src/collect.c
+./src/color-man.c
 ./src/desktop_file.c
 ./src/dupe.c
 ./src/editors.c
--- a/po/fr.po	Fri May 01 15:45:54 2009 +0900
+++ b/po/fr.po	Fri May 01 15:48:11 2009 +0900
@@ -13,8 +13,8 @@
 msgstr ""
 "Project-Id-Version: geeqie-1.0alpha\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-04-14 22:20+0200\n"
-"PO-Revision-Date: 2009-04-14 22:24+0100\n"
+"POT-Creation-Date: 2009-04-28 23:29+0200\n"
+"PO-Revision-Date: 2009-04-28 23:30+0100\n"
 "Last-Translator: Laurent Monin <i18n@norz.org>\n"
 "Language-Team: french <geeqie-devel@lists.sourceforge.net>\n"
 "MIME-Version: 1.0\n"
@@ -24,13 +24,14 @@
 "X-Poedit-Language: French\n"
 "X-Poedit-Country: FRANCE\n"
 "X-Poedit-SourceCharset: utf-8\n"
+"X-Poedit-Basepath: .\n"
 
 #: src/advanced_exif.c:389 src/cache_maint.c:1284 src/preferences.c:86
-#: src/preferences.c:1327 src/preferences.c:1329
+#: src/preferences.c:1328 src/preferences.c:1330
 msgid "Metadata"
 msgstr "Méta-données"
 
-#: src/advanced_exif.c:437 src/preferences.c:1246
+#: src/advanced_exif.c:437 src/preferences.c:1247
 msgid "Description"
 msgstr "Description"
 
@@ -38,8 +39,8 @@
 msgid "Value"
 msgstr "Valeur"
 
-#: src/advanced_exif.c:439 src/desktop_file.c:509 src/dupe.c:2653
-#: src/dupe.c:3167 src/print.c:3249 src/search.c:2848 src/utilops.c:439
+#: src/advanced_exif.c:439 src/desktop_file.c:512 src/dupe.c:2653
+#: src/dupe.c:3167 src/print.c:3249 src/search.c:2848 src/utilops.c:446
 #: src/view_file_list.c:2022 src/view_file_list.c:2026
 msgid "Name"
 msgstr "Nom"
@@ -118,43 +119,43 @@
 msgid "Replace existing text in selected files"
 msgstr "Remplacer le texte existant dans les fichiers sélectionnés"
 
-#: src/bar_exif.c:536 src/bar_exif.c:546
+#: src/bar_exif.c:532 src/bar_exif.c:542
 msgid "Configure entry"
 msgstr "Configurer l'entrée"
 
 #. for the pane
-#: src/bar_exif.c:536 src/bar_exif.c:546 src/bar_exif.c:619
+#: src/bar_exif.c:532 src/bar_exif.c:542 src/bar_exif.c:615
 msgid "Add entry"
 msgstr "Ajouter l'entrée"
 
-#: src/bar_exif.c:552
+#: src/bar_exif.c:548
 msgid "Key:"
 msgstr "Clé:"
 
-#: src/bar_exif.c:561
+#: src/bar_exif.c:557
 msgid "Title:"
 msgstr "Titre:"
 
-#: src/bar_exif.c:570
+#: src/bar_exif.c:566
 msgid "Show only if set"
 msgstr "Montrer seulement si défini"
 
-#: src/bar_exif.c:571
+#: src/bar_exif.c:567
 msgid "Editable (supported only for XMP)"
 msgstr "Modifiable (seulement pour XMP)"
 
 #. for the entry
-#: src/bar_exif.c:607
+#: src/bar_exif.c:603
 #, c-format
 msgid "Configure \"%s\""
 msgstr "Configurer « %s »"
 
-#: src/bar_exif.c:608 src/bar_keywords.c:1135
+#: src/bar_exif.c:604 src/bar_keywords.c:1135
 #, c-format
 msgid "Remove \"%s\""
 msgstr "Enlever « %s »"
 
-#: src/bar_exif.c:620
+#: src/bar_exif.c:616
 msgid "Show hidden entries"
 msgstr "Montrer les entrées cachées"
 
@@ -328,15 +329,15 @@
 msgid "Folders"
 msgstr "Dossiers"
 
-#: src/bar_sort.c:607 src/options.c:138
+#: src/bar_sort.c:607 src/options.c:139
 msgid "Collections"
 msgstr "Collections"
 
-#: src/bar_sort.c:615 src/utilops.c:1773
+#: src/bar_sort.c:615 src/utilops.c:2080
 msgid "Copy"
 msgstr "Copier"
 
-#: src/bar_sort.c:618 src/utilops.c:1732
+#: src/bar_sort.c:618 src/utilops.c:2039
 msgid "Move"
 msgstr "Déplacer"
 
@@ -398,7 +399,7 @@
 msgid "S_tart"
 msgstr "Dé_but"
 
-#: src/cache_maint.c:886 src/preferences.c:1480
+#: src/cache_maint.c:886 src/preferences.c:1484
 msgid "Folder:"
 msgstr "Dossier :"
 
@@ -484,110 +485,6 @@
 msgid "Remove orphaned keywords and comments."
 msgstr "Supprimer les mots-clés et commentaires orphelins."
 
-#: src/cellrenderericon.c:152
-msgid "Pixbuf Object"
-msgstr "Objet Pixbuf"
-
-#: src/cellrenderericon.c:153
-msgid "The pixbuf to render"
-msgstr "Le pixbuf à rendre"
-
-#: src/cellrenderericon.c:160 src/print.c:3456
-msgid "Text"
-msgstr "Texte"
-
-#: src/cellrenderericon.c:161
-msgid "Text to render"
-msgstr "Texte à rendre"
-
-#: src/cellrenderericon.c:168
-msgid "Background color"
-msgstr "Couleur du fond"
-
-#: src/cellrenderericon.c:169
-msgid "Background color as a GdkColor"
-msgstr "Couleur d'arrière-plan en tant que GdkColor"
-
-#: src/cellrenderericon.c:176
-msgid "Foreground color"
-msgstr "Couleur de premier plan"
-
-#: src/cellrenderericon.c:177
-msgid "Foreground color as a GdkColor"
-msgstr "Couleur de premier plan en tant que GdkColor"
-
-#: src/cellrenderericon.c:184
-msgid "Focus"
-msgstr "Focus"
-
-#: src/cellrenderericon.c:185
-msgid "Draw focus indicator"
-msgstr "Dessiner l'indicateur de focus"
-
-#: src/cellrenderericon.c:192
-msgid "Fixed width"
-msgstr "Largeur fixe"
-
-#: src/cellrenderericon.c:193
-msgid "Width of cell"
-msgstr "Largeur de cellule"
-
-#: src/cellrenderericon.c:201
-msgid "Fixed height"
-msgstr "Hauteur fixe"
-
-#: src/cellrenderericon.c:202
-msgid "Height of icon excluding text"
-msgstr "Hauteur de l'icone sans le texte"
-
-#: src/cellrenderericon.c:210
-msgid "Background set"
-msgstr "Arrière-plan défini"
-
-#: src/cellrenderericon.c:211
-msgid "Whether this tag affects the background color"
-msgstr "Indique si cette balise affecte la couleur de fond"
-
-#: src/cellrenderericon.c:218
-msgid "Foreground set"
-msgstr "Premier plan défini"
-
-#: src/cellrenderericon.c:219
-msgid "Whether this tag affects the foreground color"
-msgstr "Indique si cette balise affecte la couleur d'avant-plan"
-
-#: src/cellrenderericon.c:226
-msgid "Show text"
-msgstr "Montrer le texte"
-
-#: src/cellrenderericon.c:227
-msgid "Whether the text is displayed"
-msgstr "Indique si ce texte est caché."
-
-#: src/cellrenderericon.c:234
-msgid "Show marks"
-msgstr "Montrer les marques"
-
-#: src/cellrenderericon.c:235
-msgid "Whether the marks are displayed"
-msgstr "Indique si les marques doivent être affichées"
-
-#: src/cellrenderericon.c:242 src/cellrenderericon.c:243
-msgid "Number of marks"
-msgstr "Nombre de marques"
-
-#: src/cellrenderericon.c:251
-msgid "Marks"
-msgstr "Marques"
-
-#: src/cellrenderericon.c:252
-msgid "Marks bit array"
-msgstr "Tableau de bits pour les marques"
-
-#: src/cellrenderericon.c:260 src/cellrenderericon.c:261
-msgid "Toggled mark"
-msgstr "Marque basculée"
-
 #: src/collect-dlg.c:59
 #, c-format
 msgid ""
@@ -687,7 +584,7 @@
 msgstr "%s, %d images"
 
 #: src/collect-table.c:223 src/layout_util.c:1094 src/layout_util.c:1260
-#: src/layout_util.c:2066
+#: src/layout_util.c:2067
 msgid "Empty"
 msgstr "Vide"
 
@@ -848,6 +745,19 @@
 msgid "_Discard"
 msgstr "_Ignorer"
 
+#: src/color-man.c:420 src/exif-common.c:403 src/exif.c:232
+#: src/layout_util.c:1143
+msgid "sRGB"
+msgstr "sRGB"
+
+#: src/color-man.c:422
+msgid "Adobe RGB compatible"
+msgstr "compatible Adobe RGB"
+
+#: src/color-man.c:430
+msgid "Custom profile"
+msgstr "Profil utilisateur"
+
 #: src/desktop_file.c:71 src/desktop_file.c:82
 msgid "Can't save"
 msgstr "Sauvegarde impossible"
@@ -856,11 +766,11 @@
 msgid "Please specify file name."
 msgstr "Merci d'indiquer un nom de fichier."
 
-#: src/desktop_file.c:165 src/desktop_file.c:485
+#: src/desktop_file.c:168 src/desktop_file.c:488
 msgid "Desktop file"
 msgstr "Fichier .desktop"
 
-#: src/desktop_file.c:274 src/ui_pathsel.c:494
+#: src/desktop_file.c:277 src/ui_pathsel.c:494
 #, c-format
 msgid ""
 "Unable to delete file:\n"
@@ -869,17 +779,17 @@
 "Impossible de supprimer le fichier :\n"
 "%s"
 
-#: src/desktop_file.c:275 src/ui_pathsel.c:495 src/utilops.c:1634
-#: src/utilops.c:1654 src/utilops.c:2113
+#: src/desktop_file.c:278 src/ui_pathsel.c:495 src/utilops.c:1934
+#: src/utilops.c:1956 src/utilops.c:2424
 msgid "File deletion failed"
 msgstr "La suppression du fichier a échoué"
 
-#: src/desktop_file.c:317 src/desktop_file.c:325 src/ui_pathsel.c:537
+#: src/desktop_file.c:320 src/desktop_file.c:328 src/ui_pathsel.c:537
 #: src/ui_pathsel.c:545
 msgid "Delete file"
 msgstr "Supprimer fichier"
 
-#: src/desktop_file.c:323 src/ui_pathsel.c:543
+#: src/desktop_file.c:326 src/ui_pathsel.c:543
 #, c-format
 msgid ""
 "About to delete the file:\n"
@@ -888,19 +798,19 @@
 "Sur le point de supprimer le fichier :\n"
 " %s"
 
-#: src/desktop_file.c:355
+#: src/desktop_file.c:358
 msgid "new.desktop"
 msgstr "nouveau.desktop"
 
-#: src/desktop_file.c:428
+#: src/desktop_file.c:431
 msgid "Editors"
 msgstr "Éditeurs"
 
-#: src/desktop_file.c:494
+#: src/desktop_file.c:497
 msgid "Hidden"
 msgstr "Caché"
 
-#: src/desktop_file.c:518 src/dupe.c:2659 src/dupe.c:3171 src/print.c:3251
+#: src/desktop_file.c:521 src/dupe.c:2659 src/dupe.c:3171 src/print.c:3251
 #: src/search.c:2852 src/ui_pathsel.c:1111
 msgid "Path"
 msgstr "Chemin"
@@ -972,7 +882,7 @@
 msgid "Name case-insensitive"
 msgstr "Nom insensible à la casse"
 
-#: src/dupe.c:2655 src/dupe.c:3168 src/preferences.c:1070 src/print.c:3255
+#: src/dupe.c:2655 src/dupe.c:3168 src/preferences.c:1071 src/print.c:3255
 #: src/search.c:2849 src/view_file_list.c:2030
 msgid "Size"
 msgstr "Taille"
@@ -1018,7 +928,7 @@
 msgid "Compare by:"
 msgstr "Comparer par :"
 
-#: src/dupe.c:3224 src/preferences.c:908 src/search.c:2865
+#: src/dupe.c:3224 src/preferences.c:909 src/search.c:2865
 msgid "Thumbnails"
 msgstr "Vignettes"
 
@@ -1157,10 +1067,6 @@
 msgid "dot"
 msgstr "point"
 
-#: src/exif-common.c:403 src/exif.c:232 src/layout_util.c:1143
-msgid "sRGB"
-msgstr "sRGB"
-
 #: src/exif-common.c:408
 msgid "AdobeRGB"
 msgstr "AdobeRGB"
@@ -1865,7 +1771,7 @@
 msgid "source and destination have different extension"
 msgstr "source et destination ont des extensions différentes"
 
-#: src/fullscreen.c:243 src/preferences.c:1083
+#: src/fullscreen.c:243 src/preferences.c:1084
 msgid "Full screen"
 msgstr "Plein écran"
 
@@ -1947,20 +1853,20 @@
 msgid " (Collection %s)"
 msgstr " (Collection %s)"
 
-#: src/img-view.c:1278 src/layout_image.c:494 src/layout_util.c:1363
-#: src/layout_util.c:1364 src/layout_util.c:1380 src/layout_util.c:1381
+#: src/img-view.c:1278 src/layout_image.c:494 src/layout_util.c:1362
+#: src/layout_util.c:1363 src/layout_util.c:1379 src/layout_util.c:1380
 #: src/pan-view.c:2806
 msgid "Zoom _in"
 msgstr "Zoom a_vant"
 
-#: src/img-view.c:1279 src/layout_image.c:495 src/layout_util.c:1365
-#: src/layout_util.c:1366 src/layout_util.c:1382 src/layout_util.c:1383
+#: src/img-view.c:1279 src/layout_image.c:495 src/layout_util.c:1364
+#: src/layout_util.c:1365 src/layout_util.c:1381 src/layout_util.c:1382
 #: src/pan-view.c:2808
 msgid "Zoom _out"
 msgstr "Zoom a_rrière"
 
-#: src/img-view.c:1280 src/layout_image.c:496 src/layout_util.c:1367
-#: src/layout_util.c:1368 src/layout_util.c:1384 src/layout_util.c:1385
+#: src/img-view.c:1280 src/layout_image.c:496 src/layout_util.c:1366
+#: src/layout_util.c:1367 src/layout_util.c:1383 src/layout_util.c:1384
 #: src/pan-view.c:2810
 msgid "Zoom _1:1"
 msgstr "Taille réelle (_1:1)"
@@ -1969,7 +1875,7 @@
 msgid "Fit image to _window"
 msgstr "Mettre à la taille de la _fenêtre"
 
-#: src/img-view.c:1287 src/layout_image.c:504 src/layout_util.c:1361
+#: src/img-view.c:1287 src/layout_image.c:504 src/layout_util.c:1360
 msgid "Set as _wallpaper"
 msgstr "Utiliser comme _papier peint"
 
@@ -2057,63 +1963,63 @@
 "Profil d'image : %s\n"
 "Profil d'écran : %s"
 
-#: src/layout.c:1306 src/layout_config.c:58
+#: src/layout.c:1308 src/layout_config.c:58
 msgid "Tools"
 msgstr "Outils"
 
-#: src/layout.c:1918
+#: src/layout.c:1920
 msgid "Window options and layout"
 msgstr "Options de fenêtre et de disposition"
 
-#: src/layout.c:1977
-msgid "General options"
-msgstr "Options générales"
-
 #: src/layout.c:1979
+msgid "General options"
+msgstr "Options générales"
+
+#: src/layout.c:1981
 msgid "Home path (empty to use your home directory)"
 msgstr "Dossier Accueil (laisser vide pour utiliser votre dossier personnel)"
 
-#: src/layout.c:1987
+#: src/layout.c:1989
 msgid "Use current"
 msgstr "Utiliser le dossier courant"
 
-#: src/layout.c:1990
+#: src/layout.c:1992
 msgid "Show date in directories list view"
 msgstr "Montrer la date dans la vue des répertoires sous forme de liste"
 
-#: src/layout.c:1993
+#: src/layout.c:1995
 msgid "Exit program when this window is closed"
 msgstr "Quitter le programme quand cette fenêtre est fermée"
 
-#: src/layout.c:1996
+#: src/layout.c:1998
 msgid "Start-up directory:"
 msgstr "Dossier de démarrage:"
 
-#: src/layout.c:1998
+#: src/layout.c:2000
 msgid "No change"
 msgstr "Pas de changement"
 
-#: src/layout.c:2001
+#: src/layout.c:2003
 msgid "Restore last path"
 msgstr "Restaurer le dernier chemin"
 
-#: src/layout.c:2004
+#: src/layout.c:2006
 msgid "Home path"
 msgstr "Dossier Accueil"
 
-#: src/layout.c:2008 src/print.c:3421 src/print.c:3428
+#: src/layout.c:2010 src/print.c:3421 src/print.c:3428
 msgid "Layout"
 msgstr "Disposition"
 
-#: src/layout.c:2246
+#: src/layout.c:2248
 msgid "Invalid geometry\n"
 msgstr "Géométrie invalide\n"
 
-#: src/layout_config.c:58 src/preferences.c:1180 src/ui_pathsel.c:1179
+#: src/layout_config.c:58 src/preferences.c:1181 src/ui_pathsel.c:1179
 msgid "Files"
 msgstr "Fichiers"
 
-#: src/layout_config.c:58 src/preferences.c:84 src/preferences.c:977
+#: src/layout_config.c:58 src/preferences.c:84 src/preferences.c:978
 #: src/print.c:123
 msgid "Image"
 msgstr "Image"
@@ -2126,7 +2032,7 @@
 msgid "Hide file _list"
 msgstr "Masquer la _liste des fichiers"
 
-#: src/layout_image.c:1549
+#: src/layout_image.c:1565
 #, c-format
 msgid "pos(%*d,%*d) rgb(%3d,%3d,%3d)"
 msgstr "pos(%*d,%*d) rvb(%3d,%3d,%3d)"
@@ -2152,11 +2058,11 @@
 msgid "Color profiles not supported"
 msgstr "Profils colorimétriques non supportés"
 
-#: src/layout_util.c:1128 src/layout_util.c:1431
+#: src/layout_util.c:1128 src/layout_util.c:1430
 msgid "Use _color profiles"
 msgstr "Utiliser les profils _colorimétriques"
 
-#: src/layout_util.c:1133 src/layout_util.c:1432
+#: src/layout_util.c:1133 src/layout_util.c:1431
 msgid "Use profile from _image"
 msgstr "Utiliser le profil contenu dans l'_image"
 
@@ -2169,7 +2075,7 @@
 msgid "Input _%d: %s%s"
 msgstr "Entrée _%d: %s%s"
 
-#: src/layout_util.c:1165 src/layout_util.c:2106
+#: src/layout_util.c:1165 src/layout_util.c:2107
 #, c-format
 msgid "Input _%d: %s"
 msgstr "Entrée _%d: %s"
@@ -2188,7 +2094,7 @@
 
 #: src/layout_util.c:1301
 msgid "_Go"
-msgstr "_Aller"
+msgstr "A_ller"
 
 #: src/layout_util.c:1302 src/menu.c:109
 msgid "_Edit"
@@ -2198,9 +2104,9 @@
 msgid "_Select"
 msgstr "_Sélection"
 
-#: src/layout_util.c:1304 src/menu.c:281
-msgid "_Adjust"
-msgstr "_Ajuster"
+#: src/layout_util.c:1304 src/menu.c:277
+msgid "_Orientation"
+msgstr "_Orientation"
 
 #: src/layout_util.c:1305
 msgid "E_xternal Editors"
@@ -2216,7 +2122,7 @@
 
 #: src/layout_util.c:1309
 msgid "Color _Management"
-msgstr "Gestion colori_métrie"
+msgstr "Gestion des _couleurs"
 
 #: src/layout_util.c:1310
 msgid "_Connected Zoom"
@@ -2228,7 +2134,7 @@
 
 #: src/layout_util.c:1312
 msgid "_Help"
-msgstr "_Aide"
+msgstr "A_ide"
 
 #: src/layout_util.c:1314
 msgid "_First Image"
@@ -2258,7 +2164,7 @@
 msgid "_Home"
 msgstr "_Rép. perso"
 
-#: src/layout_util.c:1323 src/options.c:134 src/ui_bookmark.c:543
+#: src/layout_util.c:1323 src/options.c:135 src/ui_bookmark.c:543
 #: src/ui_pathsel.c:1047
 msgid "Home"
 msgstr "Rép. perso"
@@ -2324,190 +2230,190 @@
 msgstr "Retournement _vertical"
 
 #: src/layout_util.c:1350 src/menu.c:234
-msgid "Toggle _grayscale"
-msgstr "Bascule niveaux de _gris"
-
-#: src/layout_util.c:1351 src/menu.c:237
 msgid "_Original state"
 msgstr "Etat _original"
 
+#: src/layout_util.c:1352
+msgid "Select _all"
+msgstr "_Tout sélectionner"
+
 #: src/layout_util.c:1353
-msgid "Select _all"
-msgstr "_Tout sélectionner"
+msgid "Select _none"
+msgstr "_Désélectionner"
 
 #: src/layout_util.c:1354
-msgid "Select _none"
-msgstr "_Désélectionner"
-
-#: src/layout_util.c:1355
 msgid "_Invert Selection"
 msgstr "_Inverser la sélection"
 
+#: src/layout_util.c:1356
+msgid "P_references..."
+msgstr "P_références ..."
+
 #: src/layout_util.c:1357
-msgid "P_references..."
-msgstr "P_références ..."
+msgid "Configure _Editors..."
+msgstr "Configur_er les éditeurs"
 
 #: src/layout_util.c:1358
-msgid "Configure _Editors..."
-msgstr "Configur_er les éditeurs"
-
-#: src/layout_util.c:1359
 msgid "_Configure this window..."
 msgstr "_Configurer cette fenêtre"
 
-#: src/layout_util.c:1360
+#: src/layout_util.c:1359
 msgid "_Thumbnail maintenance..."
 msgstr "Maintenance des _vignettes ..."
 
-#: src/layout_util.c:1363 src/layout_util.c:1364
+#: src/layout_util.c:1362 src/layout_util.c:1363
 msgid "Zoom in"
 msgstr "Zoom avant"
 
-#: src/layout_util.c:1365 src/layout_util.c:1366
+#: src/layout_util.c:1364 src/layout_util.c:1365
 msgid "Zoom out"
 msgstr "Zoom arrière"
 
-#: src/layout_util.c:1367 src/layout_util.c:1368
+#: src/layout_util.c:1366 src/layout_util.c:1367
 msgid "Zoom 1:1"
 msgstr "Taille réelle (1:1)"
 
-#: src/layout_util.c:1369 src/layout_util.c:1370 src/layout_util.c:1386
-#: src/layout_util.c:1387
+#: src/layout_util.c:1368 src/layout_util.c:1369 src/layout_util.c:1385
+#: src/layout_util.c:1386
 msgid "_Zoom to fit"
 msgstr "Taille de la fenê_tre"
 
-#: src/layout_util.c:1369 src/layout_util.c:1370
+#: src/layout_util.c:1368 src/layout_util.c:1369
 msgid "Zoom to fit"
 msgstr "Taille de la fenêtre"
 
+#: src/layout_util.c:1370 src/layout_util.c:1387
+msgid "Fit _Horizontally"
+msgstr "Maximiser _Horizontalement"
+
 #: src/layout_util.c:1371 src/layout_util.c:1388
-msgid "Fit _Horizontally"
-msgstr "Maximiser _Horizontalement"
+msgid "Fit _Vertically"
+msgstr "Maximiser _Verticalement"
 
 #: src/layout_util.c:1372 src/layout_util.c:1389
-msgid "Fit _Vertically"
-msgstr "Maximiser _Verticalement"
+msgid "Zoom _2:1"
+msgstr "Zoom _2:1"
 
 #: src/layout_util.c:1373 src/layout_util.c:1390
-msgid "Zoom _2:1"
-msgstr "Zoom _2:1"
+msgid "Zoom _3:1"
+msgstr "Zoom _3:1"
 
 #: src/layout_util.c:1374 src/layout_util.c:1391
-msgid "Zoom _3:1"
-msgstr "Zoom _3:1"
+msgid "Zoom _4:1"
+msgstr "Zoom _4:1"
 
 #: src/layout_util.c:1375 src/layout_util.c:1392
-msgid "Zoom _4:1"
-msgstr "Zoom _4:1"
+msgid "Zoom 1:2"
+msgstr "Zoom 1:2"
 
 #: src/layout_util.c:1376 src/layout_util.c:1393
-msgid "Zoom 1:2"
-msgstr "Zoom 1:2"
-
-#: src/layout_util.c:1377 src/layout_util.c:1394
 msgid "Zoom 1:3"
 msgstr "Zoom 1:3"
 
-#: src/layout_util.c:1378 src/layout_util.c:1395
+#: src/layout_util.c:1377 src/layout_util.c:1394
 msgid "Zoom 1:4"
 msgstr "Zoom 1:4"
 
-#: src/layout_util.c:1398
+#: src/layout_util.c:1397
 msgid "_View in new window"
 msgstr "_Voir dans une _nouvelle fenêtre"
 
-#: src/layout_util.c:1400 src/layout_util.c:1401 src/layout_util.c:1402
+#: src/layout_util.c:1399 src/layout_util.c:1400 src/layout_util.c:1401
 msgid "F_ull screen"
 msgstr "Plein _écran"
 
-#: src/layout_util.c:1403 src/layout_util.c:1404
+#: src/layout_util.c:1402 src/layout_util.c:1403
 msgid "Escape"
 msgstr "Echappement"
 
+#: src/layout_util.c:1404
+msgid "_Image Overlay"
+msgstr "Aff_ichage en surimpression"
+
 #: src/layout_util.c:1405
-msgid "_Image Overlay"
-msgstr "Aff_ichage en surimpression"
+msgid "Histogram _channels"
+msgstr "Canaux _histogramme"
 
 #: src/layout_util.c:1406
-msgid "Histogram _channels"
-msgstr "_Canaux histogramme"
+msgid "Histogram _log mode"
+msgstr "Mode _log histogramme"
 
 #: src/layout_util.c:1407
-msgid "Histogram _log mode"
-msgstr "Mode _log histogramme"
+msgid "_Hide file list"
+msgstr "Masquer la _liste des fichiers"
 
 #: src/layout_util.c:1408
-msgid "_Hide file list"
-msgstr "Masquer la _liste des fichiers"
+msgid "_Pause slideshow"
+msgstr "Sus_pendre le diaporama"
 
 #: src/layout_util.c:1409
-msgid "_Pause slideshow"
-msgstr "Sus_pendre le diaporama"
-
-#: src/layout_util.c:1410
 msgid "_Refresh"
 msgstr "_Rafraîchir"
 
-#: src/layout_util.c:1412
+#: src/layout_util.c:1411
 msgid "_Contents"
 msgstr "_Contenu"
 
+#: src/layout_util.c:1412
+msgid "_Keyboard shortcuts"
+msgstr "_Raccourcis clavier"
+
 #: src/layout_util.c:1413
-msgid "_Keyboard shortcuts"
-msgstr "_Raccourcis clavier"
+msgid "_Release notes"
+msgstr "_Notes pour cette version"
 
 #: src/layout_util.c:1414
-msgid "_Release notes"
-msgstr "_Notes pour cette version"
+msgid "_About"
+msgstr "À _propos"
 
 #: src/layout_util.c:1415
-msgid "_About"
-msgstr "À _propos"
-
-#: src/layout_util.c:1416
 msgid "_Log Window"
 msgstr "_Journal"
 
-#: src/layout_util.c:1418
+#: src/layout_util.c:1417
 msgid "E_xif window"
 msgstr "Fenêtre E_xif"
 
-#: src/layout_util.c:1423
+#: src/layout_util.c:1422
 msgid "Show _Thumbnails"
 msgstr "Montrer les vigne_ttes"
 
+#: src/layout_util.c:1422
+msgid "Show Thumbnails"
+msgstr "Montrer les vignettes"
+
 #: src/layout_util.c:1423
-msgid "Show Thumbnails"
-msgstr "Montrer les vignettes"
-
-#: src/layout_util.c:1424
 msgid "Show _Marks"
 msgstr "Montrer les _Marques"
 
-#: src/layout_util.c:1425
+#: src/layout_util.c:1424
 msgid "_Float file list"
 msgstr "Liste des fichiers _flottante"
 
+#: src/layout_util.c:1425
+msgid "Hide tool_bar"
+msgstr "Masquer la _barre d'outils"
+
 #: src/layout_util.c:1426
-msgid "Hide tool_bar"
-msgstr "Masquer la _barre d'outils"
-
-#: src/layout_util.c:1427
 msgid "Hide Pi_xel Info"
 msgstr "Cacher les infos sur le pi_xel"
 
-#: src/layout_util.c:1428
+#: src/layout_util.c:1427
 msgid "_Info"
 msgstr "_Informations"
 
+#: src/layout_util.c:1428
+msgid "Sort _manager"
+msgstr "_Gestionnaire de tris"
+
 #: src/layout_util.c:1429
-msgid "Sort _manager"
-msgstr "_Gestionnaire de tris"
-
-#: src/layout_util.c:1430
 msgid "Toggle _slideshow"
 msgstr "Mode _Diaporama"
 
+#: src/layout_util.c:1432
+msgid "Toggle _grayscale"
+msgstr "Bascule niveaux de _gris"
+
 #: src/layout_util.c:1436
 msgid "View Images as _List"
 msgstr "Images en _liste"
@@ -2556,42 +2462,42 @@
 msgid "Input _5"
 msgstr "Entrée _5"
 
-#: src/layout_util.c:1694
+#: src/layout_util.c:1695
 #, c-format
 msgid "Mark _%d"
 msgstr "Marque _%d"
 
-#: src/layout_util.c:1695 src/view_file.c:523
+#: src/layout_util.c:1696 src/view_file.c:523
 #, c-format
 msgid "_Set mark %d"
 msgstr "_Ajout marque %d"
 
-#: src/layout_util.c:1696 src/view_file.c:524
+#: src/layout_util.c:1697 src/view_file.c:524
 #, c-format
 msgid "_Reset mark %d"
 msgstr "_Suppression marque %d"
 
-#: src/layout_util.c:1697 src/layout_util.c:1698 src/view_file.c:525
+#: src/layout_util.c:1698 src/layout_util.c:1699 src/view_file.c:525
 #, c-format
 msgid "_Toggle mark %d"
 msgstr "_Bascule marque %d"
 
-#: src/layout_util.c:1699 src/layout_util.c:1700 src/view_file.c:526
+#: src/layout_util.c:1700 src/layout_util.c:1701 src/view_file.c:526
 #, c-format
 msgid "_Select mark %d"
 msgstr "_Sélectionner la marque %d"
 
-#: src/layout_util.c:1701 src/view_file.c:527
+#: src/layout_util.c:1702 src/view_file.c:527
 #, c-format
 msgid "_Add mark %d"
 msgstr "Ajouter la marque %d"
 
-#: src/layout_util.c:1702 src/view_file.c:528
+#: src/layout_util.c:1703 src/view_file.c:528
 #, c-format
 msgid "_Intersection with mark %d"
 msgstr "_Intersection avec marque %d"
 
-#: src/layout_util.c:1703 src/view_file.c:529
+#: src/layout_util.c:1704 src/view_file.c:529
 #, c-format
 msgid "_Unselect mark %d"
 msgstr "_Déselection marque %d"
@@ -2751,7 +2657,7 @@
 "Des collections ont été modifiées.\n"
 "Tout de même quitter ?"
 
-#: src/main.c:836 src/remote.c:552
+#: src/main.c:836 src/remote.c:601
 msgid "Command line"
 msgstr "Ligne de commande"
 
@@ -2787,239 +2693,239 @@
 msgid "Rotate _180"
 msgstr "Rotation de _180°"
 
-#: src/metadata.c:1316
+#: src/metadata.c:1342
 msgid "People"
 msgstr "Personnes"
 
-#: src/metadata.c:1317
+#: src/metadata.c:1343
 msgid "Family"
 msgstr "Famille"
 
-#: src/metadata.c:1318
+#: src/metadata.c:1344
 msgid "Free time"
 msgstr "Temps libre"
 
-#: src/metadata.c:1319
-msgid "Children"
-msgstr "Enfants"
-
-#: src/metadata.c:1320
-msgid "Sport"
-msgstr "Sport"
-
-#: src/metadata.c:1321
-msgid "Culture"
-msgstr "Culture"
-
-#: src/metadata.c:1322
-msgid "Festival"
-msgstr "Festival"
-
-#: src/metadata.c:1323
-msgid "Nature"
-msgstr "Nature"
-
-#: src/metadata.c:1324
-msgid "Animal"
-msgstr "Animal"
-
-#: src/metadata.c:1325
-msgid "Bird"
-msgstr "Oiseau"
-
-#: src/metadata.c:1326
-msgid "Insect"
-msgstr "Insecte"
-
-#: src/metadata.c:1327
-msgid "Pets"
-msgstr "Animaux familiers"
-
-#: src/metadata.c:1328
-msgid "Wildlife"
-msgstr "Vie sauvage"
-
-#: src/metadata.c:1329
-msgid "Zoo"
-msgstr "Zoo"
-
-#: src/metadata.c:1330
-msgid "Plant"
-msgstr "Plante"
-
-#: src/metadata.c:1331
-msgid "Tree"
-msgstr "Arbre"
-
-#: src/metadata.c:1332
-msgid "Flower"
-msgstr "Fleur"
-
-#: src/metadata.c:1333
-msgid "Water"
-msgstr "Eau"
-
-#: src/metadata.c:1334
-msgid "River"
-msgstr "Rivière"
-
-#: src/metadata.c:1335
-msgid "Lake"
-msgstr "Lac"
-
-#: src/metadata.c:1336
-msgid "Sea"
-msgstr "Mer"
-
-#: src/metadata.c:1337 src/print.c:375
-msgid "Landscape"
-msgstr "Paysage"
-
-#: src/metadata.c:1338
-msgid "Art"
-msgstr "Art"
-
-#: src/metadata.c:1339
-msgid "Statue"
-msgstr "Statue"
-
-#: src/metadata.c:1340
-msgid "Painting"
-msgstr "Peinture"
-
-#: src/metadata.c:1341 src/metadata.c:1355
-msgid "Historic"
-msgstr "Historique"
-
-#: src/metadata.c:1342 src/metadata.c:1356
-msgid "Modern"
-msgstr "Moderne"
-
-#: src/metadata.c:1343
-msgid "City"
-msgstr "Ville"
-
-#: src/metadata.c:1344
-msgid "Park"
-msgstr "Parc"
-
 #: src/metadata.c:1345
-msgid "Street"
-msgstr "Rue"
+msgid "Children"
+msgstr "Enfants"
 
 #: src/metadata.c:1346
-msgid "Square"
-msgstr "Square"
+msgid "Sport"
+msgstr "Sport"
 
 #: src/metadata.c:1347
-msgid "Architecture"
-msgstr "Architecture"
+msgid "Culture"
+msgstr "Culture"
 
 #: src/metadata.c:1348
-msgid "Buildings"
-msgstr "Constructions"
+msgid "Festival"
+msgstr "Festival"
 
 #: src/metadata.c:1349
-msgid "House"
-msgstr "Maison"
+msgid "Nature"
+msgstr "Nature"
 
 #: src/metadata.c:1350
-msgid "Cathedral"
-msgstr "Cathédrale"
+msgid "Animal"
+msgstr "Animal"
 
 #: src/metadata.c:1351
-msgid "Palace"
-msgstr "Palais"
+msgid "Bird"
+msgstr "Oiseau"
 
 #: src/metadata.c:1352
+msgid "Insect"
+msgstr "Insecte"
+
+#: src/metadata.c:1353
+msgid "Pets"
+msgstr "Animaux familiers"
+
+#: src/metadata.c:1354
+msgid "Wildlife"
+msgstr "Vie sauvage"
+
+#: src/metadata.c:1355
+msgid "Zoo"
+msgstr "Zoo"
+
+#: src/metadata.c:1356
+msgid "Plant"
+msgstr "Plante"
+
+#: src/metadata.c:1357
+msgid "Tree"
+msgstr "Arbre"
+
+#: src/metadata.c:1358
+msgid "Flower"
+msgstr "Fleur"
+
+#: src/metadata.c:1359
+msgid "Water"
+msgstr "Eau"
+
+#: src/metadata.c:1360
+msgid "River"
+msgstr "Rivière"
+
+#: src/metadata.c:1361
+msgid "Lake"
+msgstr "Lac"
+
+#: src/metadata.c:1362
+msgid "Sea"
+msgstr "Mer"
+
+#: src/metadata.c:1363 src/print.c:375
+msgid "Landscape"
+msgstr "Paysage"
+
+#: src/metadata.c:1364
+msgid "Art"
+msgstr "Art"
+
+#: src/metadata.c:1365
+msgid "Statue"
+msgstr "Statue"
+
+#: src/metadata.c:1366
+msgid "Painting"
+msgstr "Peinture"
+
+#: src/metadata.c:1367 src/metadata.c:1381
+msgid "Historic"
+msgstr "Historique"
+
+#: src/metadata.c:1368 src/metadata.c:1382
+msgid "Modern"
+msgstr "Moderne"
+
+#: src/metadata.c:1369
+msgid "City"
+msgstr "Ville"
+
+#: src/metadata.c:1370
+msgid "Park"
+msgstr "Parc"
+
+#: src/metadata.c:1371
+msgid "Street"
+msgstr "Rue"
+
+#: src/metadata.c:1372
+msgid "Square"
+msgstr "Square"
+
+#: src/metadata.c:1373
+msgid "Architecture"
+msgstr "Architecture"
+
+#: src/metadata.c:1374
+msgid "Buildings"
+msgstr "Constructions"
+
+#: src/metadata.c:1375
+msgid "House"
+msgstr "Maison"
+
+#: src/metadata.c:1376
+msgid "Cathedral"
+msgstr "Cathédrale"
+
+#: src/metadata.c:1377
+msgid "Palace"
+msgstr "Palais"
+
+#: src/metadata.c:1378
 msgid "Castle"
 msgstr "Château"
 
-#: src/metadata.c:1353
+#: src/metadata.c:1379
 msgid "Bridge"
 msgstr "Pont"
 
-#: src/metadata.c:1354
+#: src/metadata.c:1380
 msgid "Interior"
 msgstr "Intérieur"
 
-#: src/metadata.c:1357
+#: src/metadata.c:1383
 msgid "Places"
 msgstr "Lieux"
 
-#: src/metadata.c:1358
+#: src/metadata.c:1384
 msgid "Conditions"
 msgstr "Conditions"
 
-#: src/metadata.c:1359
+#: src/metadata.c:1385
 msgid "Night"
 msgstr "Nuit"
 
-#: src/metadata.c:1360
+#: src/metadata.c:1386
 msgid "Lights"
 msgstr "Lumières"
 
-#: src/metadata.c:1361
+#: src/metadata.c:1387
 msgid "Reflections"
 msgstr "Réflexions"
 
-#: src/metadata.c:1362
+#: src/metadata.c:1388
 msgid "Sun"
 msgstr "Soleil"
 
-#: src/metadata.c:1363
+#: src/metadata.c:1389
 msgid "Weather"
 msgstr "Méteorologie"
 
-#: src/metadata.c:1364
+#: src/metadata.c:1390
 msgid "Fog"
 msgstr "Brouillard"
 
-#: src/metadata.c:1365
+#: src/metadata.c:1391
 msgid "Rain"
 msgstr "Pluie"
 
-#: src/metadata.c:1366
+#: src/metadata.c:1392
 msgid "Clouds"
 msgstr "Nuages"
 
-#: src/metadata.c:1367
+#: src/metadata.c:1393
 msgid "Snow"
 msgstr "Neige"
 
-#: src/metadata.c:1368
+#: src/metadata.c:1394
 msgid "Sunny weather"
 msgstr "Temps ensoleillé"
 
-#: src/metadata.c:1369
+#: src/metadata.c:1395
 msgid "Photo"
 msgstr "Photo"
 
-#: src/metadata.c:1370
+#: src/metadata.c:1396
 msgid "Edited"
 msgstr "Editée"
 
-#: src/metadata.c:1371
+#: src/metadata.c:1397
 msgid "Detail"
 msgstr "Détail"
 
-#: src/metadata.c:1372
+#: src/metadata.c:1398
 msgid "Macro"
 msgstr "Macro"
 
-#: src/metadata.c:1373 src/print.c:374
+#: src/metadata.c:1399 src/print.c:374
 msgid "Portrait"
 msgstr "Portrait"
 
-#: src/metadata.c:1374
+#: src/metadata.c:1400
 msgid "Black and White"
 msgstr "Noir et blanc"
 
-#: src/metadata.c:1375
+#: src/metadata.c:1401
 msgid "Perspective"
 msgstr "Perspective"
 
-#: src/options.c:136 src/ui_bookmark.c:550
+#: src/options.c:137 src/ui_bookmark.c:550
 msgid "Desktop"
 msgstr "Bureau"
 
@@ -3049,7 +2955,7 @@
 msgid "Filename:"
 msgstr "Nom du fichier :"
 
-#: src/pan-view.c:1544 src/pan-view.c:2380 src/preferences.c:1087
+#: src/pan-view.c:1544 src/pan-view.c:2380 src/preferences.c:1088
 msgid "Location:"
 msgstr "Emplacement :"
 
@@ -3057,7 +2963,7 @@
 msgid "Date:"
 msgstr "Date :"
 
-#: src/pan-view.c:1548 src/preferences.c:911 src/print.c:3262 src/print.c:3473
+#: src/pan-view.c:1548 src/preferences.c:912 src/print.c:3262 src/print.c:3473
 msgid "Size:"
 msgstr "Taille :"
 
@@ -3176,7 +3082,7 @@
 "options doivent être validées pour apprécier un changement dans les "
 "performances."
 
-#: src/pan-view.c:2598 src/preferences.c:914
+#: src/pan-view.c:2598 src/preferences.c:915
 msgid "Cache thumbnails"
 msgstr "Mettre en cache les vignettes"
 
@@ -3227,43 +3133,43 @@
 "n°%d « %s »:\n"
 "%s"
 
-#: src/preferences.c:435
+#: src/preferences.c:436
 msgid "Nearest (worst, but fastest)"
 msgstr "Au plus près (moins bon, plus rapide)"
 
-#: src/preferences.c:437
+#: src/preferences.c:438
 msgid "Tiles"
 msgstr "Tuiles"
 
-#: src/preferences.c:439
+#: src/preferences.c:440
 msgid "Bilinear"
 msgstr "Bilinéaire"
 
-#: src/preferences.c:441
+#: src/preferences.c:442
 msgid "Hyper (best, but slowest)"
 msgstr "Hyper (meilleur, plus lent)"
 
-#: src/preferences.c:469
+#: src/preferences.c:470
 msgid "None"
 msgstr "Aucune"
 
-#: src/preferences.c:470
+#: src/preferences.c:471
 msgid "Normal"
 msgstr "Normale"
 
-#: src/preferences.c:471
+#: src/preferences.c:472
 msgid "Best"
 msgstr "Meilleure"
 
-#: src/preferences.c:533 src/print.c:380
+#: src/preferences.c:534 src/print.c:380
 msgid "Custom"
 msgstr "Spécifique"
 
-#: src/preferences.c:775 src/preferences.c:778
+#: src/preferences.c:776 src/preferences.c:779
 msgid "Reset filters"
 msgstr "RAZ des filtres"
 
-#: src/preferences.c:779
+#: src/preferences.c:780
 msgid ""
 "This will reset the file filters to the defaults.\n"
 "Continue?"
@@ -3271,19 +3177,19 @@
 "Ceci va remettre les filtres de fichiers à leur état par défaut.\n"
 "Continuer ?"
 
-#: src/preferences.c:806 src/preferences.c:809
+#: src/preferences.c:807 src/preferences.c:810
 msgid "Clear trash"
 msgstr "Vider la corbeille"
 
-#: src/preferences.c:810
+#: src/preferences.c:811
 msgid "This will remove the trash contents."
 msgstr "Ceci va supprimer le contenu de la corbeille"
 
-#: src/preferences.c:854 src/preferences.c:857
+#: src/preferences.c:855 src/preferences.c:858
 msgid "Reset image overlay template string"
 msgstr "Restaurer le modèle par défaut pour l'affichage en surimpression"
 
-#: src/preferences.c:858
+#: src/preferences.c:859
 msgid ""
 "This will reset the image overlay template string to the default.\n"
 "Continue?"
@@ -3292,20 +3198,20 @@
 "défaut.\n"
 "Continuer ?"
 
-#: src/preferences.c:906
+#: src/preferences.c:907
 msgid "General"
 msgstr "Général"
 
-#: src/preferences.c:912 src/preferences.c:985
+#: src/preferences.c:913 src/preferences.c:986
 msgid "Quality:"
 msgstr "Qualité :"
 
-#: src/preferences.c:920
+#: src/preferences.c:921
 msgid "Use standard thumbnail cache, shared with other applications"
 msgstr ""
 "Utiliser le cache de vignettes standard, partagé avec les autres applications"
 
-#: src/preferences.c:926
+#: src/preferences.c:927
 msgid ""
 "Store thumbnails in '.thumbnails' folder, local to image folder (non-"
 "standard)"
@@ -3313,173 +3219,173 @@
 "Sauver les vignettes dans le dossier « .thumbnails », local au dossier de "
 "l'image (non-standard)"
 
-#: src/preferences.c:930
+#: src/preferences.c:931
 msgid "Use xvpics thumbnails when found (read only)"
 msgstr "Utiliser les vignettes xvpics si existantes (lecture seule)"
 
-#: src/preferences.c:934
+#: src/preferences.c:935
 msgid "Use EXIF thumbnails when available (EXIF thumbnails may be outdated)"
 msgstr ""
 "Utiliser les vignettes EXIF si disponibles (les vignettes EXIF peuvent ne "
 "pas être à jour)"
 
-#: src/preferences.c:937
+#: src/preferences.c:938
 msgid "Slide show"
 msgstr "Diaporama"
 
-#: src/preferences.c:940
+#: src/preferences.c:941
 msgid "Delay between image change:"
 msgstr "Délai entre deux images :"
 
-#: src/preferences.c:940
+#: src/preferences.c:941
 msgid "seconds"
 msgstr "secondes"
 
-#: src/preferences.c:946
+#: src/preferences.c:947
 msgid "Random"
 msgstr "Aléatoire"
 
-#: src/preferences.c:947
+#: src/preferences.c:948
 msgid "Repeat"
 msgstr "En boucle"
 
-#: src/preferences.c:949
+#: src/preferences.c:950
 msgid "Image loading and caching"
 msgstr "Chargement et cache des images"
 
-#: src/preferences.c:952
+#: src/preferences.c:953
 msgid "Offscreen cache size (Mb per image):"
 msgstr "Taille du cache mémoire hors-écran (Mo par image) :"
 
-#: src/preferences.c:956
+#: src/preferences.c:957
 msgid "Decoded image cache size (Mb):"
 msgstr "Taille du cache mémoire pour les images décodées (Mo) :"
 
-#: src/preferences.c:958
+#: src/preferences.c:959
 msgid "Preload next image"
 msgstr "Précharger l'image suivante"
 
-#: src/preferences.c:961
+#: src/preferences.c:962
 msgid "Refresh on file change"
 msgstr "Rafraîchir la liste des fichiers"
 
-#: src/preferences.c:979
+#: src/preferences.c:980
 msgid "Zoom"
 msgstr "Zoom"
 
-#: src/preferences.c:982
+#: src/preferences.c:983
 msgid "Dithering method:"
 msgstr "Méthode de dithering :"
 
-#: src/preferences.c:987
+#: src/preferences.c:988
 msgid "Two pass rendering (apply HQ zoom and color correction in second pass)"
 msgstr ""
 "Rendu en 2 passes (applique le zoom haute qualité et la correction "
 "colorimétrique durant la seconde passe)"
 
-#: src/preferences.c:990
+#: src/preferences.c:991
 msgid "Allow enlargement of image for zoom to fit"
 msgstr "Permettre d'agrandir les images pour que le zoom convienne"
 
-#: src/preferences.c:994
+#: src/preferences.c:995
 msgid "Limit image size when autofitting (%):"
 msgstr "Limiter la taille de l'image lors de l'auto-dimensionnement  (%):"
 
-#: src/preferences.c:1002
+#: src/preferences.c:1003
 msgid "Zoom increment:"
 msgstr "Incrément de zoom :"
 
-#: src/preferences.c:1007
+#: src/preferences.c:1008
 msgid "When new image is selected:"
 msgstr "Sélection d'une nouvelle image :"
 
-#: src/preferences.c:1011
+#: src/preferences.c:1012
 msgid "Zoom to original size"
 msgstr "Zoom à sa taille d'origine"
 
-#: src/preferences.c:1014
+#: src/preferences.c:1015
 msgid "Fit image to window"
 msgstr "Mettre à la taille de la fenêtre"
 
-#: src/preferences.c:1017
+#: src/preferences.c:1018
 msgid "Leave Zoom at previous setting"
 msgstr "Garder la valeur précédente du zoom"
 
-#: src/preferences.c:1023
+#: src/preferences.c:1024
 msgid "Scroll to top left corner"
 msgstr "Défiler au coin en haut à gauche"
 
-#: src/preferences.c:1026
+#: src/preferences.c:1027
 msgid "Scroll to image center"
 msgstr "Défiler au centre de l'image"
 
-#: src/preferences.c:1029
+#: src/preferences.c:1030
 msgid "Keep the region from previous image"
 msgstr "Garder la région de l'image précédente"
 
-#: src/preferences.c:1034
+#: src/preferences.c:1035
 msgid "Appearance"
 msgstr "Apparence"
 
-#: src/preferences.c:1036
+#: src/preferences.c:1037
 msgid "Custom border color"
 msgstr "Couleur de bordure personnalisée"
 
-#: src/preferences.c:1039
+#: src/preferences.c:1040
 msgid "Border color"
 msgstr "Couleur de bordure"
 
-#: src/preferences.c:1042
+#: src/preferences.c:1043
 msgid "Convenience"
 msgstr "Commodités"
 
-#: src/preferences.c:1044
+#: src/preferences.c:1045
 msgid "Auto rotate image using Exif information"
 msgstr "Rotation automatique de l'image à l'aide des informations Exif"
 
-#: src/preferences.c:1061
+#: src/preferences.c:1062
 msgid "Windows"
 msgstr "Fenêtres"
 
-#: src/preferences.c:1063
+#: src/preferences.c:1064
 msgid "State"
 msgstr "État"
 
-#: src/preferences.c:1065
+#: src/preferences.c:1066
 msgid "Remember window positions"
 msgstr "Se rappeler la position des fenêtres"
 
-#: src/preferences.c:1067
+#: src/preferences.c:1068
 msgid "Remember tool state (float/hidden)"
 msgstr "Se rappeler l'état des outils (flottants/cachés)"
 
-#: src/preferences.c:1072
+#: src/preferences.c:1073
 msgid "Fit window to image when tools are hidden/floating"
 msgstr ""
 "Mettre la fenêtre à la taille de l'image quand les outils sont cachés/"
 "flottants"
 
-#: src/preferences.c:1076
+#: src/preferences.c:1077
 msgid "Limit size when auto-sizing window (%):"
 msgstr "Limiter la taille quand la fenêtre est auto-dimensionnable (%) :"
 
-#: src/preferences.c:1091
+#: src/preferences.c:1092
 msgid "Smooth image flip"
 msgstr "Lisser le basculement d'image"
 
-#: src/preferences.c:1093
+#: src/preferences.c:1094
 msgid "Disable screen saver"
 msgstr "Inhiber l'économiseur d'écran"
 
-#: src/preferences.c:1097
+#: src/preferences.c:1098
 msgid "Overlay Screen Display"
 msgstr "Affichage en surimpression (OSD)"
 
-#: src/preferences.c:1099
+#: src/preferences.c:1100
 msgid "Image overlay template"
 msgstr "Modèle pour l'affichage en surimpression"
 
-#: src/preferences.c:1113
+#: src/preferences.c:1114
 msgid ""
 "<i>%name%</i> results in the filename of the picture.\n"
 "Also available: <i>%collection%</i>, <i>%number%</i>, <i>%total%</i>, <i>%"
@@ -3520,234 +3426,238 @@
 "Si une ligne est vide, elle n'est pas affichée. Cela permet d'ajouter des "
 "lignes qui disparaitront totalement si aucune donnée n'est disponible.\n"
 
-#: src/preferences.c:1130 src/preferences.c:1303
+#: src/preferences.c:1131 src/preferences.c:1304
 msgid "Defaults"
 msgstr "Configuration par défaut"
 
-#: src/preferences.c:1184
+#: src/preferences.c:1185
 msgid "Show hidden files or folders"
 msgstr "Montrer les fichiers ou dossiers cachés"
 
-#: src/preferences.c:1187
+#: src/preferences.c:1188
 msgid "Show dot directory"
 msgstr "Montrer le répertoire point"
 
-#: src/preferences.c:1190
+#: src/preferences.c:1191
 msgid "Case sensitive sort"
 msgstr "Tri sensible à la casse"
 
-#: src/preferences.c:1193
+#: src/preferences.c:1194
 msgid "Disable File Filtering"
 msgstr "Désactiver les filtres de fichiers"
 
-#: src/preferences.c:1197
+#: src/preferences.c:1198
 msgid "Grouping sidecar extensions"
 msgstr "Groupage des extensions de fichiers sidecar"
 
-#: src/preferences.c:1204
+#: src/preferences.c:1205
 msgid "File types"
 msgstr "Types de fichier"
 
-#: src/preferences.c:1226
+#: src/preferences.c:1227
 msgid "Filter"
 msgstr "Filtre"
 
-#: src/preferences.c:1258
+#: src/preferences.c:1259
 msgid "Class"
 msgstr "Classe"
 
-#: src/preferences.c:1275
+#: src/preferences.c:1276
 msgid "Writable"
 msgstr "Inscriptible"
 
-#: src/preferences.c:1286
+#: src/preferences.c:1287
 msgid "Sidecar is allowed"
 msgstr "Sidecar permis"
 
-#: src/preferences.c:1331
+#: src/preferences.c:1332
 msgid ""
 "Store metadata in '.metadata' folder, local to image folder (non-standard)"
 msgstr ""
 "Sauver les métadonnées dans le dossier « .metadata », local au dossier de "
 "l'image (non-standard)"
 
-#: src/preferences.c:1334
+#: src/preferences.c:1335
 msgid "Store keywords and comments as XMP tags in image files (standard)"
 msgstr ""
 "Enregistrer les mots-clés et commentaires en tant que balises XMP dans les "
 "fichiers images (standard)"
 
-#: src/preferences.c:1340
+#: src/preferences.c:1341
 msgid "Store keywords and comments also in legacy IPTC tags"
 msgstr "Enregistrer aussi les mots-clés et commentaires dans les tags IPTC"
 
-#: src/preferences.c:1343
+#: src/preferences.c:1344
 msgid "Warn if the image files are unwritable"
 msgstr "Prévenir si les images sont protégés en écriture"
 
-#: src/preferences.c:1346
+#: src/preferences.c:1347
 msgid "Ask before writing to image files"
 msgstr "Demander avant l'écriture dans les images"
 
-#: src/preferences.c:1349
+#: src/preferences.c:1350
 msgid "Save metadata in GQview legacy metadata format"
 msgstr "Sauver les méta-données dans le format de GQview"
 
-#: src/preferences.c:1352
+#: src/preferences.c:1353
 msgid "Write the same keywords and comment to all files in a group"
 msgstr ""
 "Écrire les mêmes mots-clés et commentaires dans tous les fichiers d'un groupe"
 
-#: src/preferences.c:1355
+#: src/preferences.c:1356
 msgid "Write metadata after timeout"
 msgstr "Écrire les méta-données après un délai"
 
-#: src/preferences.c:1361
+#: src/preferences.c:1362
 msgid "Timeout (seconds):"
 msgstr "Délai (secondes):"
 
-#: src/preferences.c:1364
+#: src/preferences.c:1365
 msgid "Write metadata on image change"
 msgstr "Écrire les méta-données en cas de modification d'image"
 
-#: src/preferences.c:1367
+#: src/preferences.c:1368
 msgid "Write metadata on directory change"
 msgstr "Écrire les méta-données après une modification de dossier"
 
-#: src/preferences.c:1370
+#: src/preferences.c:1371
 msgid "Allow keywords to differ only in case"
 msgstr "Permettre aux mots-clés de différer sur la casse"
 
-#: src/preferences.c:1384
+#: src/preferences.c:1374
+msgid "Write altered image orientation to the metadata"
+msgstr "Sauver l'orientation modifiée dans les méta-données"
+
+#: src/preferences.c:1388
 msgid "Color management"
 msgstr "Gestion des couleurs"
 
-#: src/preferences.c:1386
+#: src/preferences.c:1390
 msgid "Input profiles"
 msgstr "Profils d'entrée"
 
-#: src/preferences.c:1394
+#: src/preferences.c:1398
 msgid "Type"
 msgstr "Type"
 
-#: src/preferences.c:1397
+#: src/preferences.c:1401
 msgid "Menu name"
 msgstr "Nom du menu"
 
-#: src/preferences.c:1400
+#: src/preferences.c:1404
 msgid "File"
 msgstr "Fichier"
 
-#: src/preferences.c:1425 src/preferences.c:1445
+#: src/preferences.c:1429 src/preferences.c:1449
 msgid "Select color profile"
 msgstr "Sélectionner un profil colorimétrique"
 
-#: src/preferences.c:1433
+#: src/preferences.c:1437
 msgid "Screen profile"
 msgstr "Profil d'écran"
 
-#: src/preferences.c:1437
+#: src/preferences.c:1441
 msgid "Use system screen profile if available"
 msgstr "Utiliser le profil d'écran du système si disponible"
 
-#: src/preferences.c:1442
+#: src/preferences.c:1446
 msgid "Screen:"
 msgstr "Écran:"
 
-#: src/preferences.c:1464 src/preferences.c:1507
+#: src/preferences.c:1468 src/preferences.c:1511
 msgid "Behavior"
 msgstr "Comportement"
 
-#: src/preferences.c:1466 src/utilops.c:1650
+#: src/preferences.c:1470 src/utilops.c:1952
 msgctxt "physical"
 msgid "Delete"
 msgstr "Suppression"
 
-#: src/preferences.c:1468
+#: src/preferences.c:1472
 msgid "Confirm file delete"
 msgstr "Confirmer la suppression des fichiers"
 
-#: src/preferences.c:1470
+#: src/preferences.c:1474
 msgid "Enable Delete key"
 msgstr "Utiliser la touche [Suppr]"
 
-#: src/preferences.c:1473
+#: src/preferences.c:1477
 msgid "Safe delete"
 msgstr "Suppression récupérable"
 
-#: src/preferences.c:1491
+#: src/preferences.c:1495
 msgid "Maximum size:"
 msgstr "Taille maximale :"
 
-#: src/preferences.c:1491
+#: src/preferences.c:1495
 msgid "MB"
 msgstr "Mo"
 
-#: src/preferences.c:1494
+#: src/preferences.c:1498
 msgid "Set to 0 for unlimited size"
 msgstr "Mettre à zéro pour taille infinie"
 
-#: src/preferences.c:1496
+#: src/preferences.c:1500
 msgid "View"
 msgstr "Vue"
 
-#: src/preferences.c:1509
+#: src/preferences.c:1513
 msgid "Rectangular selection in icon view"
 msgstr "Sélection rectangulaire dans la vue en icônes"
 
-#: src/preferences.c:1512
+#: src/preferences.c:1516
 msgid "Descend folders in tree view"
 msgstr "Parcourir les dossiers dans la vue arborescente"
 
-#: src/preferences.c:1515
+#: src/preferences.c:1519
 msgid "In place renaming"
 msgstr "Renommer en place"
 
-#: src/preferences.c:1518
+#: src/preferences.c:1522
 msgid "Open recent list maximum size"
 msgstr "Taille maximale de la liste des fichiers récemment ouverts"
 
-#: src/preferences.c:1521
+#: src/preferences.c:1525
 msgid "Drag'n drop icon size"
 msgstr "Taille de l'icône du glisser-déplacer"
 
-#: src/preferences.c:1524
+#: src/preferences.c:1528
 msgid "Navigation"
 msgstr "Navigation"
 
-#: src/preferences.c:1526
+#: src/preferences.c:1530
 msgid "Progressive keyboard scrolling"
 msgstr "Défilement clavier progressif"
 
-#: src/preferences.c:1528
+#: src/preferences.c:1532
 msgid "Mouse wheel scrolls image"
 msgstr "Navigation dans l'image avec la molette de la souris"
 
-#: src/preferences.c:1531
+#: src/preferences.c:1535
 msgid "Miscellaneous"
 msgstr "Divers"
 
-#: src/preferences.c:1533
+#: src/preferences.c:1537
 msgid "Custom similarity threshold:"
 msgstr "Seuil de similarité personalisé :"
 
-#: src/preferences.c:1538
+#: src/preferences.c:1542
 msgid "Debugging"
 msgstr "Déboguage"
 
-#: src/preferences.c:1540
+#: src/preferences.c:1544
 msgid "Debug level:"
 msgstr "Niveau de déboguage:"
 
-#: src/preferences.c:1556
+#: src/preferences.c:1560
 msgid "Preferences"
 msgstr "Préférences"
 
-#: src/preferences.c:1685
+#: src/preferences.c:1689
 msgid "About"
 msgstr "À propos"
 
-#: src/preferences.c:1702
+#: src/preferences.c:1706
 #, c-format
 msgid ""
 "%s %s\n"
@@ -3776,7 +3686,7 @@
 "\n"
 "Distribué sous GNU General Public License"
 
-#: src/preferences.c:1721
+#: src/preferences.c:1725
 msgid "Credits..."
 msgstr "Crédits ..."
 
@@ -4018,6 +3928,10 @@
 msgid "Proof size:"
 msgstr "Taille de l'aperçu :"
 
+#: src/print.c:3456
+msgid "Text"
+msgstr "Texte"
+
 #: src/print.c:3466
 msgid "Paper"
 msgstr "Papier"
@@ -4066,12 +3980,12 @@
 msgid "Remember print settings"
 msgstr "Conserver les paramètres d'impression"
 
-#: src/rcfile.c:492
+#: src/rcfile.c:493
 #, c-format
 msgid "error saving config file: %s\n"
 msgstr "erreur à la sauvegarde du fichier de configuration : %s\n"
 
-#: src/rcfile.c:550
+#: src/rcfile.c:551
 #, c-format
 msgid ""
 "error saving config file: %s\n"
@@ -4081,88 +3995,96 @@
 "erreur : %s\n"
 
 #. short, long                  callback,               extra, prefer,description
-#: src/remote.c:590
+#: src/remote.c:639
 msgid "next image"
 msgstr "image suivante"
 
-#: src/remote.c:591
+#: src/remote.c:640
 msgid "previous image"
 msgstr "image précédente"
 
-#: src/remote.c:592
+#: src/remote.c:641
 msgid "first image"
 msgstr "première image"
 
-#: src/remote.c:593
+#: src/remote.c:642
 msgid "last image"
 msgstr "dernière image"
 
-#: src/remote.c:594
+#: src/remote.c:643
 msgid "toggle full screen"
 msgstr "bascule le mode plein écran"
 
-#: src/remote.c:595
+#: src/remote.c:644
 msgid "start full screen"
 msgstr "démarre le mode plein écran"
 
-#: src/remote.c:596
+#: src/remote.c:645
 msgid "stop full screen"
 msgstr "arrête le mode plein écran"
 
-#: src/remote.c:597
+#: src/remote.c:646
 msgid "toggle slide show"
 msgstr "bascule le mode diaporama"
 
-#: src/remote.c:598
+#: src/remote.c:647
 msgid "start slide show"
 msgstr "démarre le diaporama"
 
-#: src/remote.c:599
+#: src/remote.c:648
 msgid "stop slide show"
 msgstr "arrête le diaporama"
 
-#: src/remote.c:600
+#: src/remote.c:649
 msgid "start recursive slide show"
 msgstr "démarre le diaporama récursif"
 
-#: src/remote.c:601
+#: src/remote.c:650
 msgid "set slide show delay in seconds"
 msgstr "définit le délai entre les diapos en secondes"
 
-#: src/remote.c:602
+#: src/remote.c:651
 msgid "show tools"
 msgstr "montre les outils"
 
-#: src/remote.c:603
+#: src/remote.c:652
 msgid "hide tools"
 msgstr "cache les outils"
 
-#: src/remote.c:604
+#: src/remote.c:653
 msgid "quit"
 msgstr "quitte le programme"
 
-#: src/remote.c:605
+#: src/remote.c:654
 msgid "load config file"
 msgstr "charge le fichier de configuration"
 
-#: src/remote.c:606
+#: src/remote.c:655
+msgid "get list of sidecars of the given file"
+msgstr "obtient la liste des sidecars pour le fichier donné"
+
+#: src/remote.c:656
+msgid "get destination path for the given file"
+msgstr "obtient le chemin de destination pour le fichier donné"
+
+#: src/remote.c:657
 msgid "open file"
 msgstr "ouvre le fichier indiqué"
 
-#: src/remote.c:607
+#: src/remote.c:658
 msgid "open file in new window"
 msgstr "ouvre le fichier indiqué dans une nouvelle fenêtre"
 
-#: src/remote.c:673
+#: src/remote.c:724
 msgid "Remote command list:\n"
 msgstr "Liste des commandes à distance :\n"
 
-#: src/remote.c:730
+#: src/remote.c:781
 #, c-format
 msgid "Remote %s not running, starting..."
 msgstr "Pas de %s distant, lancement ..."
 
-#: src/remote.c:866
+#: src/remote.c:917
 msgid "Remote not available\n"
 msgstr "Commande à distance indisponible\n"
 
@@ -4341,7 +4263,7 @@
 msgid "Thumbnail image in cache failed to load, trying to recreate.\n"
 msgstr "Impossible de charger la vignette depuis le cache, regénération.\n"
 
-#: src/trash.c:80 src/utilops.c:2052 src/utilops.c:2063 src/utilops.c:2120
+#: src/trash.c:80 src/utilops.c:2363 src/utilops.c:2374 src/utilops.c:2431
 msgid "Delete failed"
 msgstr "Échec de la suppression"
 
@@ -4497,8 +4419,8 @@
 "Impossible de lancer la commande :\n"
 "%s"
 
-#: src/ui_pathsel.c:433 src/ui_pathsel.c:439 src/utilops.c:1796
-#: src/utilops.c:1816 src/utilops.c:2240
+#: src/ui_pathsel.c:433 src/ui_pathsel.c:439 src/utilops.c:2103
+#: src/utilops.c:2125 src/utilops.c:2551
 msgid "Rename failed"
 msgstr "Échec de renommage"
 
@@ -4519,7 +4441,7 @@
 msgid "_Delete"
 msgstr "_Supprimer"
 
-#: src/ui_pathsel.c:748 src/ui_pathsel.c:1049 src/utilops.c:2274
+#: src/ui_pathsel.c:748 src/ui_pathsel.c:1049 src/utilops.c:2585
 msgid "New folder"
 msgstr "Nouveau dossier"
 
@@ -4556,12 +4478,12 @@
 msgid "All files"
 msgstr "Tous les fichiers"
 
-#: src/utilops.c:435
+#: src/utilops.c:442
 msgctxt "filesystem"
 msgid "Location"
 msgstr "Emplacement"
 
-#: src/utilops.c:524
+#: src/utilops.c:531
 msgid ""
 "\n"
 " Continue multiple file operation?"
@@ -4569,11 +4491,11 @@
 "\n"
 " Continuer l'opération de suppression multiple ?"
 
-#: src/utilops.c:531 src/utilops.c:955
+#: src/utilops.c:538 src/utilops.c:961
 msgid "Co_ntinue"
 msgstr "Co_ntinuer"
 
-#: src/utilops.c:709
+#: src/utilops.c:715
 #, c-format
 msgid ""
 "Removal of folder contents failed at this file:\n"
@@ -4584,7 +4506,7 @@
 "\n"
 "%s"
 
-#: src/utilops.c:844
+#: src/utilops.c:850
 #, c-format
 msgid ""
 "%s\n"
@@ -4593,168 +4515,220 @@
 "%s\n"
 "Impossible de démarrer la commande externe.\n"
 
-#: src/utilops.c:923
+#: src/utilops.c:929
 #, c-format
 msgid "%s is not a directory"
 msgstr "%s n'est pas un répertoire"
 
-#: src/utilops.c:953
+#: src/utilops.c:959
 msgid "Really continue?"
 msgstr "Vraiment continuer ?"
 
-#: src/utilops.c:967
+#: src/utilops.c:973
 msgid "This operation can't continue:"
 msgstr "Cette opération ne peut continuer:"
 
-#: src/utilops.c:1328 src/utilops.c:1422
+#: src/utilops.c:1336 src/utilops.c:1449 src/utilops.c:1846
+msgid "Discard changes"
+msgstr "Ignorer les changements"
+
+#: src/utilops.c:1337 src/utilops.c:1450 src/utilops.c:1797 src/utilops.c:1813
+msgid "File details"
+msgstr "Détails du fichier"
+
+#: src/utilops.c:1359 src/utilops.c:1457
 msgid "Sidecars"
 msgstr "Sidecars"
 
-#: src/utilops.c:1330
+#: src/utilops.c:1361
 msgid "Write to file"
 msgstr "Écrire dans le fichier"
 
-#: src/utilops.c:1370
+#: src/utilops.c:1401
 msgid "Choose the destination folder."
 msgstr "Choisir le dossier de destination."
 
-#: src/utilops.c:1424
+#: src/utilops.c:1459
 msgid "New name"
 msgstr "Nouveau nom"
 
-#: src/utilops.c:1454
+#: src/utilops.c:1489
 msgid "Manual rename"
 msgstr "Renommage manuel"
 
-#: src/utilops.c:1459
+#: src/utilops.c:1494
 msgid "Original name:"
 msgstr "Nom d'origine :"
 
-#: src/utilops.c:1462
+#: src/utilops.c:1497
 msgid "New name:"
 msgstr "Nouveau nom :"
 
-#: src/utilops.c:1475
+#: src/utilops.c:1510
 msgid "Auto rename"
 msgstr "Renommage auto"
 
-#: src/utilops.c:1481
+#: src/utilops.c:1516
 msgid "Begin text"
 msgstr "Texte de début"
 
-#: src/utilops.c:1489 src/utilops.c:1521
+#: src/utilops.c:1524 src/utilops.c:1556
 msgid "Start #"
 msgstr "N° début"
 
-#: src/utilops.c:1495
+#: src/utilops.c:1530
 msgid "End text"
 msgstr "Texte de fin"
 
-#: src/utilops.c:1503
+#: src/utilops.c:1538
 msgid "Padding:"
 msgstr "Bourrage :"
 
-#: src/utilops.c:1508
+#: src/utilops.c:1543
 msgid "Formatted rename"
 msgstr "Renommage formaté"
 
-#: src/utilops.c:1513
+#: src/utilops.c:1548
 msgid "Format (* = original name, ## = numbers)"
 msgstr "Format (* = nom original, ## = nombres)"
 
-#: src/utilops.c:1603
+#: src/utilops.c:1686
 msgid "Another operation in progress.\n"
 msgstr "Autre opération en cours\n"
 
-#: src/utilops.c:1651
+#: src/utilops.c:1756
+#, c-format
+msgid "File: '%s'\n"
+msgstr "Fichier: « %s »\n"
+
+#: src/utilops.c:1761
+msgid "with sidecar files:\n"
+msgstr "avec les fichiers sidecars:\n"
+
+#: src/utilops.c:1767
+#, c-format
+msgid " '%s'\n"
+msgstr "« %s »\n"
+
+#: src/utilops.c:1771
+msgid ""
+"\n"
+"Status: "
+msgstr ""
+"\n"
+"Etat:"
+
+#: src/utilops.c:1783
+msgid "no problem detected"
+msgstr "aucun problème détecté"
+
+#: src/utilops.c:1799 src/utilops.c:1845
+msgid "Exclude file"
+msgstr "Exclure le fichier"
+
+#: src/utilops.c:1843 src/utilops.c:1868
+msgid "Overview of changed metadata"
+msgstr "Aperçu des méta-données modifiées"
+
+#: src/utilops.c:1861
+#, c-format
+msgid "The following metadata tags will be written to '%s'."
+msgstr "Les méta-données suivantes seront écrites dans « %s »."
+
+#: src/utilops.c:1865
+#, c-format
+msgid "The following metadata tags will be written to the image file itself."
+msgstr "Les méta-données suivantes seront écrites dans le fichier de l'image."
+
+#: src/utilops.c:1953
 msgid "Delete files?"
 msgstr "Supprimer les fichiers ?"
 
-#: src/utilops.c:1652
+#: src/utilops.c:1954
 msgid "This will delete the following files"
 msgstr "Ceci supprimera les fichiers suivants"
 
-#: src/utilops.c:1671
+#: src/utilops.c:1974
 msgid "Can't write metadata"
 msgstr "Impossible d'écrire les méta-données"
 
-#: src/utilops.c:1690
+#: src/utilops.c:1997
 msgid "Write metadata"
 msgstr "Écrire les méta-données"
 
-#: src/utilops.c:1691
+#: src/utilops.c:1998
 msgid "Write metadata?"
 msgstr "Écrire les méta-données ?"
 
-#: src/utilops.c:1692
+#: src/utilops.c:1999
 msgid "This will write the changed metadata into the following files"
 msgstr "Cela écrira les méta-données modifiées dans les fichiers suivants"
 
-#: src/utilops.c:1694
+#: src/utilops.c:2001
 msgid "Metadata writting failed"
 msgstr "Échec de l'écriture des méta-données"
 
-#: src/utilops.c:1714 src/utilops.c:1736
+#: src/utilops.c:2021 src/utilops.c:2043
 msgid "Move failed"
 msgstr "Échec du déplacement"
 
-#: src/utilops.c:1733
+#: src/utilops.c:2040
 msgid "Move files?"
 msgstr "Déplacer les fichiers ?"
 
-#: src/utilops.c:1734
+#: src/utilops.c:2041
 msgid "This will move the following files"
 msgstr "Ceci déplacera les fichiers suivants"
 
-#: src/utilops.c:1755 src/utilops.c:1777
+#: src/utilops.c:2062 src/utilops.c:2084
 msgid "Copy failed"
 msgstr "Échec de la copie"
 
-#: src/utilops.c:1774
+#: src/utilops.c:2081
 msgid "Copy files?"
 msgstr "Copier les fichiers ?"
 
-#: src/utilops.c:1775 src/utilops.c:1864
+#: src/utilops.c:2082 src/utilops.c:2175
 msgid "This will copy the following files"
 msgstr "Ceci copiera les fichiers suivants"
 
-#: src/utilops.c:1812 src/utilops.c:2236
+#: src/utilops.c:2121 src/utilops.c:2547
 msgid "Rename"
 msgstr "Renommer"
 
-#: src/utilops.c:1813
+#: src/utilops.c:2122
 msgid "Rename files?"
 msgstr "Renommer les fichiers ?"
 
-#: src/utilops.c:1814
+#: src/utilops.c:2123
 msgid "This will rename the following files"
 msgstr "Ceci renommera les fichiers suivants"
 
-#: src/utilops.c:1835
+#: src/utilops.c:2144
 msgid "Can't run external editor"
 msgstr "Ne peut exécuter l'éditeur externe."
 
-#: src/utilops.c:1862
+#: src/utilops.c:2173
 msgid "Editor"
 msgstr "Éditeur"
 
-#: src/utilops.c:1863
+#: src/utilops.c:2174
 msgid "Run editor?"
 msgstr "Exécuter l'éditeur ?"
 
-#: src/utilops.c:1866
+#: src/utilops.c:2177
 msgid "External command failed"
 msgstr "Échec de la commande externe"
 
-#: src/utilops.c:2035 src/utilops.c:2108
+#: src/utilops.c:2346 src/utilops.c:2419
 msgid "Delete folder"
 msgstr "Supprimer un dossier"
 
-#: src/utilops.c:2036
+#: src/utilops.c:2347
 msgid "Delete symbolic link?"
 msgstr "Supprimer le lien symbolique ?"
 
-#: src/utilops.c:2038
+#: src/utilops.c:2349
 msgid ""
 "This will delete the symbolic link.\n"
 "The folder this link points to will not be deleted."
@@ -4762,11 +4736,11 @@
 "Cela supprimera le lien symbolique.\n"
 "Le dossier pointé par ce lien symbolique ne sera pas supprimé."
 
-#: src/utilops.c:2040
+#: src/utilops.c:2351
 msgid "Link deletion failed"
 msgstr "La suppression du lien a échoué"
 
-#: src/utilops.c:2050
+#: src/utilops.c:2361
 #, c-format
 msgid ""
 "Unable to remove folder %s\n"
@@ -4775,16 +4749,16 @@
 "Impossible de supprimer le dossier %s\n"
 "Pas de permission pour l'écriture."
 
-#: src/utilops.c:2062 src/utilops.c:2119
+#: src/utilops.c:2373 src/utilops.c:2430
 #, c-format
 msgid "Unable to list contents of folder %s"
 msgstr "Impossible de lister le contenu du dossier %s"
 
-#: src/utilops.c:2076 src/utilops.c:2084
+#: src/utilops.c:2387 src/utilops.c:2395
 msgid "Folder contains subfolders"
 msgstr "Dossier contenant des sous-dossiers"
 
-#: src/utilops.c:2080
+#: src/utilops.c:2391
 #, c-format
 msgid ""
 "Unable to delete the folder:\n"
@@ -4800,19 +4774,19 @@
 "Ce dossier contient des sous-dossiers qui doivent être déplacés avant sa "
 "suppression."
 
-#: src/utilops.c:2088
+#: src/utilops.c:2399
 msgid "Subfolders:"
 msgstr "Sous-dossiers:"
 
-#: src/utilops.c:2109
+#: src/utilops.c:2420
 msgid "Delete folder?"
 msgstr "Supprimer le dossier ?"
 
-#: src/utilops.c:2110
+#: src/utilops.c:2421
 msgid "The folder contains these files:"
 msgstr "Ce dossier contient ces fichiers:"
 
-#: src/utilops.c:2111
+#: src/utilops.c:2422
 msgid ""
 "This will delete the folder.\n"
 "The contents of this folder will also be deleted."
@@ -4820,23 +4794,23 @@
 "Cela supprimera le dossier.\n"
 "Le contenu de ce dossier sera aussi supprimé."
 
-#: src/utilops.c:2237
+#: src/utilops.c:2548
 msgid "Rename folder?"
 msgstr "Renommer le dossier ?"
 
-#: src/utilops.c:2238
+#: src/utilops.c:2549
 msgid "The folder contains the following files"
 msgstr "Ce dossier contient les fichiers suivants"
 
-#: src/utilops.c:2284
+#: src/utilops.c:2595
 msgid "Create Folder"
 msgstr "Créer un dossier"
 
-#: src/utilops.c:2285
+#: src/utilops.c:2596
 msgid "Create folder?"
 msgstr "Créer un dossier ?"
 
-#: src/utilops.c:2288
+#: src/utilops.c:2599
 msgid "Can't create folder"
 msgstr "Impossible de créer le dossier"
 
@@ -4916,73 +4890,3 @@
 #: src/window.c:251
 msgid "Help"
 msgstr "Aide"
-
-#~ msgid "Delete \"%s\""
-#~ msgstr "Supprimer « %s »"
-
-#~ msgid "Reset editors"
-#~ msgstr "RAZ des éditeurs"
-
-#~ msgid ""
-#~ "This will reset the edit commands to the defaults.\n"
-#~ "Continue?"
-#~ msgstr ""
-#~ "Ceci va remettre les commandes d'édition à leur état par défaut.\n"
-#~ "Continuer ?"
-
-#~ msgid "Startup"
-#~ msgstr "Démarrage"
-
-#~ msgid "Restore folder on startup"
-#~ msgstr "Restaurer le répertoire au démarrage"
-
-#~ msgid "Cache thumbnails into .thumbnails"
-#~ msgstr "Mettre en cache les vignettes dans .thumbnails"
-
-#~ msgid "Faster jpeg thumbnailing (may reduce quality)"
-#~ msgstr "Vignettes JPEG plus rapides (qualité dégradée)"
-
-#~ msgid "Two pass zooming"
-#~ msgstr "Zoom en 2 passes"
-
-#~ msgid "Scroll reset method:"
-#~ msgstr "Méthode de ré-initialisation du défilement:"
-
-#~ msgid "Top left"
-#~ msgstr "Haut gauche"
-
-#~ msgid "Center"
-#~ msgstr "Centre"
-
-#~ msgid "Filtering"
-#~ msgstr "Filtres"
-
-#~ msgid "#"
-#~ msgstr "N°"
-
-#~ msgid "Command Line"
-#~ msgstr "Ligne de commande"
-
-#~ msgid "What to show in properties dialog:"
-#~ msgstr "Que montrer dans le dialogue Propriétés:"
-
-#~ msgid "Advanced"
-#~ msgstr "Avancées"
-
-#~ msgid ""
-#~ "Show \"Copy path\" menu item which write the path of selected files to "
-#~ "clipboard"
-#~ msgstr ""
-#~ "Montrer l'entrée de menu \"Copier chemin\"  qui écrit le chemin des "
-#~ "fichiers sélectionnés dans le presse-papiers"
-
-#~ msgid "Store metadata and cache files in source image's directory"
-#~ msgstr ""
-#~ "Enregistrer les fichiers de cache et de méta-données dans le répertoire "
-#~ "des images source"
-
-#~ msgid "Image read buffer size (bytes):"
-#~ msgstr "Taille du tampon de lecture des images (octets):"
-
-#~ msgid "Image idle loop read count:"
-#~ msgstr "Compteur de la boucle de lecture des images lorsque inoccupé:"
--- a/src/Makefile.am	Fri May 01 15:45:54 2009 +0900
+++ b/src/Makefile.am	Fri May 01 15:48:11 2009 +0900
@@ -18,6 +18,7 @@
 
 module_SLIK = \
 	intl.h		\
+	gettext.h	\
 	ui_bookmark.c	\
 	ui_bookmark.h	\
 	ui_fileops.c	\
--- a/src/bar.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/bar.c	Fri May 01 15:48:11 2009 +0900
@@ -95,7 +95,7 @@
 "                <entry key = 'formatted.ColorProfile' if_set = 'true' editable = 'false' />"
 "                <entry key = 'formatted.SubjectDistance' if_set = 'true' editable = 'false' />"
 "                <entry key = 'formatted.Resolution' if_set = 'true' editable = 'false' />"
-"                <entry key = 'Exif.Image.Orientation' if_set = 'true' editable = 'false' />"
+"                <entry key = '" ORIENTATION_KEY "' if_set = 'true' editable = 'false' />"
 "            </pane_exif>"
 "        </bar>"
 "    </layout>"
--- a/src/bar_exif.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/bar_exif.c	Fri May 01 15:48:11 2009 +0900
@@ -235,16 +235,12 @@
 			g_signal_handlers_block_by_func(ee->value_widget, bar_pane_exif_entry_changed, ee);
 			gtk_entry_set_text(GTK_ENTRY(ee->value_widget), text ? text : "");
 			g_signal_handlers_unblock_by_func(ee->value_widget, bar_pane_exif_entry_changed, ee);
-#if GTK_CHECK_VERSION(2,12,0)
 			gtk_widget_set_tooltip_text(ee->box, NULL);
-#endif
 			}
 		else
 			{
 			gtk_label_set_text(GTK_LABEL(ee->value_widget), text);
-#if GTK_CHECK_VERSION(2,12,0)
 			gtk_widget_set_tooltip_text(ee->box, text);
-#endif
 			}
 		gtk_widget_show(entry);
 		ped->all_hidden = FALSE;
--- a/src/cellrenderericon.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/cellrenderericon.c	Fri May 01 15:48:11 2009 +0900
@@ -149,48 +149,48 @@
 	g_object_class_install_property(object_class,
 					PROP_PIXBUF,
 					g_param_spec_object("pixbuf",
-							_("Pixbuf Object"),
-							_("The pixbuf to render"),
+							"Pixbuf Object",
+							"The pixbuf to render",
 							GDK_TYPE_PIXBUF,
 							G_PARAM_READWRITE));
 
 	g_object_class_install_property(object_class,
 					PROP_TEXT,
 					g_param_spec_string("text",
-							_("Text"),
-							_("Text to render"),
+							"Text",
+							"Text to render",
 							NULL,
 							G_PARAM_READWRITE));
 
 	g_object_class_install_property(object_class,
 					PROP_BACKGROUND_GDK,
 					g_param_spec_boxed("background_gdk",
-							_("Background color"),
-							_("Background color as a GdkColor"),
+							"Background color",
+							"Background color as a GdkColor",
 							GDK_TYPE_COLOR,
 							G_PARAM_READWRITE));
 
 	g_object_class_install_property(object_class,
 					PROP_FOREGROUND_GDK,
 					g_param_spec_boxed("foreground_gdk",
-							_("Foreground color"),
-							_("Foreground color as a GdkColor"),
+							"Foreground color",
+							"Foreground color as a GdkColor",
 							GDK_TYPE_COLOR,
 							G_PARAM_READWRITE));
 
 	g_object_class_install_property(object_class,
 					PROP_FOCUSED,
 					g_param_spec_boolean("has_focus",
-							_("Focus"),
-							_("Draw focus indicator"),
+							"Focus",
+							"Draw focus indicator",
 							FALSE,
 							G_PARAM_READWRITE));
 
 	g_object_class_install_property(object_class,
 					PROP_FIXED_WIDTH,
 					g_param_spec_int("fixed_width",
-							_("Fixed width"),
-							_("Width of cell"),
+							"Fixed width",
+							"Width of cell",
 							-1, FIXED_ICON_SIZE_MAX,
 							-1,
 							G_PARAM_READWRITE));
@@ -198,8 +198,8 @@
 	g_object_class_install_property(object_class,
 					PROP_FIXED_HEIGHT,
 					g_param_spec_int("fixed_height",
-							_("Fixed height"),
-							_("Height of icon excluding text"),
+							"Fixed height",
+							"Height of icon excluding text",
 							-1, FIXED_ICON_SIZE_MAX,
 							-1,
 							G_PARAM_READWRITE));
@@ -207,40 +207,40 @@
 	g_object_class_install_property(object_class,
 					PROP_BACKGROUND_SET,
 					g_param_spec_boolean("background_set",
-							_("Background set"),
-							_("Whether this tag affects the background color"),
+							"Background set",
+							"Whether this tag affects the background color",
 							FALSE,
 							G_PARAM_READWRITE));
 
 	g_object_class_install_property(object_class,
 					PROP_FOREGROUND_SET,
 					g_param_spec_boolean("foreground_set",
-							_("Foreground set"),
-							_("Whether this tag affects the foreground color"),
+							"Foreground set",
+							"Whether this tag affects the foreground color",
 							FALSE,
 							G_PARAM_READWRITE));
 
 	g_object_class_install_property(object_class,
 					PROP_SHOW_TEXT,
 					g_param_spec_boolean("show_text",
-							_("Show text"),
-							_("Whether the text is displayed"),
+							"Show text",
+							"Whether the text is displayed",
 							TRUE,
 							G_PARAM_READWRITE));
 
 	g_object_class_install_property(object_class,
 					PROP_SHOW_MARKS,
 					g_param_spec_boolean("show_marks",
-							_("Show marks"),
-							_("Whether the marks are displayed"),
+							"Show marks",
+							"Whether the marks are displayed",
 							TRUE,
 							G_PARAM_READWRITE));
 
 	g_object_class_install_property(object_class,
 					PROP_NUM_MARKS,
 					g_param_spec_int("num_marks",
-							_("Number of marks"),
-							_("Number of marks"),
+							"Number of marks",
+							"Number of marks",
 							0, 32,
 							6,
 							G_PARAM_READWRITE));
@@ -248,8 +248,8 @@
 	g_object_class_install_property(object_class,
 					PROP_MARKS,
 					g_param_spec_uint("marks",
-							_("Marks"),
-							_("Marks bit array"),
+							"Marks",
+							"Marks bit array",
 							0, 0xffffffff,
 							0,
 							G_PARAM_READWRITE));
@@ -257,8 +257,8 @@
 	g_object_class_install_property(object_class,
 					PROP_TOGGLED,
 					g_param_spec_uint("toggled_mark",
-							_("Toggled mark"),
-							_("Toggled mark"),
+							"Toggled mark",
+							"Toggled mark",
 							0, 32,
 							0,
 							G_PARAM_READWRITE));
--- a/src/compat.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/compat.c	Fri May 01 15:48:11 2009 +0900
@@ -35,4 +35,24 @@
 		}
 #endif
 }
+
+#if !GLIB_CHECK_VERSION(2, 14, 0)
+static void hash_table_add(gpointer key, gpointer value, gpointer user_data)
+{
+	GList **list = user_data;
+	*list = g_list_prepend(*list, key);
+}
+#endif
+
+GList* hash_table_get_keys(GHashTable *hash_table)
+{
+#if GLIB_CHECK_VERSION(2, 14, 0)
+	return g_hash_table_get_keys(hash_table);
+#else
+	GList *list = NULL;
+	g_hash_table_foreach(hash_table, hash_table_add, &list);
+	return list;
+#endif
+}
+
 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */
--- a/src/compat.h	Fri May 01 15:45:54 2009 +0900
+++ b/src/compat.h	Fri May 01 15:48:11 2009 +0900
@@ -14,6 +14,12 @@
 #define COMPAT_H
 
 void radio_action_set_current_value(GtkRadioAction *action, gint current_value);
+GList* hash_table_get_keys(GHashTable *hash_table);
+
+#if !GTK_CHECK_VERSION(2,12,0)
+#define gtk_widget_set_tooltip_text(widget, text) /* ignored */
+#endif
+
 
 #endif /* COMPAT_H */
 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */
--- a/src/desktop_file.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/desktop_file.c	Fri May 01 15:48:11 2009 +0900
@@ -113,6 +113,9 @@
 		{
 		editor_window_save(ew);
 		}
+
+	gtk_widget_set_sensitive(ew->save_button, FALSE);
+	ew->modified = FALSE;
 }
 
 static void editor_window_text_modified_cb(GtkWidget *widget, gpointer data)
@@ -205,7 +208,7 @@
 	gtk_widget_show(ew->save_button);
 	ct_button = ew->save_button;
 
-	button = pref_button_new(NULL, GTK_STOCK_CANCEL, NULL, FALSE,
+	button = pref_button_new(NULL, GTK_STOCK_CLOSE, NULL, FALSE,
 				 G_CALLBACK(editor_window_close_cb), ew);
 	gtk_container_add(GTK_CONTAINER(button_hbox), button);
 	GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
--- a/src/exif.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/exif.c	Fri May 01 15:48:11 2009 +0900
@@ -1605,6 +1605,9 @@
 	
 	if (!key) return NULL;
 	
+	/* convert xmp key to exif key */
+	if (strcmp(key, "Xmp.tiff.Orientation") == 0) key = "Exif.Image.Orientation";
+	
 	if (format == METADATA_FORMATTED)
 		{
 		gchar *text;
--- a/src/exiv2.cc	Fri May 01 15:45:54 2009 +0900
+++ b/src/exiv2.cc	Fri May 01 15:48:11 2009 +0900
@@ -982,12 +982,12 @@
 #if EXIV2_TEST_VERSION(0,16,0)
 			Exiv2::Xmpdatum *xmpdatum;
 #endif
-			if ((exifdatum = dynamic_cast<Exiv2::Exifdatum *>(metadatum)))
+			if ((exifdatum = dynamic_cast<Exiv2::Exifdatum *>(&item)))
 				stream << *exifdatum;
-			else if ((iptcdatum = dynamic_cast<Exiv2::Iptcdatum *>(metadatum)))
+			else if ((iptcdatum = dynamic_cast<Exiv2::Iptcdatum *>(&item)))
 				stream << *iptcdatum;
 #if EXIV2_TEST_VERSION(0,16,0)
-			else if ((xmpdatum = dynamic_cast<Exiv2::Xmpdatum *>(metadatum)))
+			else if ((xmpdatum = dynamic_cast<Exiv2::Xmpdatum *>(&item)))
 				stream << *xmpdatum;
 #endif
 			str = stream.str();
--- a/src/image.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/image.c	Fri May 01 15:48:11 2009 +0900
@@ -405,10 +405,18 @@
 			break;
 		}
 
-	if (type != ALTER_NONE && type != ALTER_DESATURATE)
+	if (imd->orientation != imd->image_fd->exif_orientation ? imd->image_fd->exif_orientation : 1)
 		{
-		if (imd->image_fd->user_orientation == 0) file_data_ref(imd->image_fd);
-		imd->image_fd->user_orientation = imd->orientation;
+		if (!options->metadata.write_orientation)
+			{
+			/* user_orientation does not work together with options->metadata.write_orientation,
+			   use either one or the other.
+			   we must however handle switching metadata.write_orientation on and off, therefore
+			   we just disable referencing new fd's, not unreferencing the old ones
+			*/
+			if (imd->image_fd->user_orientation == 0) file_data_ref(imd->image_fd);
+			imd->image_fd->user_orientation = imd->orientation;
+			}
 		}
 	else
 		{
@@ -416,6 +424,18 @@
 		imd->image_fd->user_orientation = 0;
 		}
 
+	if (options->metadata.write_orientation)
+		{
+		if (type == ALTER_NONE)
+			{
+			metadata_write_revert(imd->image_fd, ORIENTATION_KEY);
+			}
+		else
+			{
+			metadata_write_int(imd->image_fd, ORIENTATION_KEY, imd->orientation);
+			}
+		}
+
 	pixbuf_renderer_set_orientation((PixbufRenderer *)imd->pr, imd->orientation);
 	if (imd->cm || imd->desaturate)
 		pixbuf_renderer_set_post_process_func((PixbufRenderer *)imd->pr, image_post_process_tile_color_cb, (gpointer) imd, (imd->cm != NULL) );
@@ -1073,7 +1093,7 @@
 			}
 		else if (options->image.exif_rotate_enable)
 			{
-			imd->orientation = metadata_read_int(imd->image_fd, "Exif.Image.Orientation", EXIF_ORIENTATION_TOP_LEFT);
+			imd->orientation = metadata_read_int(imd->image_fd, ORIENTATION_KEY, EXIF_ORIENTATION_TOP_LEFT);
 			imd->image_fd->exif_orientation = imd->orientation;
 			}
 		}
--- a/src/main.h	Fri May 01 15:45:54 2009 +0900
+++ b/src/main.h	Fri May 01 15:48:11 2009 +0900
@@ -57,6 +57,7 @@
 #include <gdk-pixbuf/gdk-pixbuf.h>
 #include <gdk-pixbuf/gdk-pixbuf-loader.h>
 
+#include "compat.h"
 
 /*
  *----------------------------------------------------------------------------
--- a/src/metadata.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/metadata.c	Fri May 01 15:48:11 2009 +0900
@@ -189,6 +189,25 @@
 	return FALSE;
 }
 
+gboolean metadata_write_revert(FileData *fd, const gchar *key)
+{
+	if (!fd->modified_xmp) return FALSE;
+	
+	g_hash_table_remove(fd->modified_xmp, key);
+	
+	if (g_hash_table_size(fd->modified_xmp) == 0)
+		{
+		metadata_write_queue_remove(fd);
+		}
+	else
+		{
+		/* reread the metadata to restore the original value */
+		file_data_increment_version(fd);
+		file_data_send_notification(fd, NOTIFY_REREAD);
+		}
+	return TRUE;
+}
+
 gboolean metadata_write_list(FileData *fd, const gchar *key, const GList *values)
 {
 	if (!fd->modified_xmp)
@@ -231,6 +250,13 @@
 	return ret;
 }
 
+gboolean metadata_write_int(FileData *fd, const gchar *key, guint64 value)
+{
+	gchar string[50];
+	
+	g_snprintf(string, sizeof(string), "%ld", value);
+	return metadata_write_string(fd, key, string);
+}
 
 /*
  *-------------------------------------------------------------------
--- a/src/metadata.h	Fri May 01 15:45:54 2009 +0900
+++ b/src/metadata.h	Fri May 01 15:48:11 2009 +0900
@@ -16,6 +16,7 @@
 
 #define COMMENT_KEY "Xmp.dc.description"
 #define KEYWORD_KEY "Xmp.dc.subject"
+#define ORIENTATION_KEY "Xmp.tiff.Orientation"
 
 gboolean metadata_write_queue_remove(FileData *fd);
 gboolean metadata_write_queue_remove_list(GList *list);
@@ -24,8 +25,10 @@
 
 gint metadata_queue_length(void);
 
+gboolean metadata_write_revert(FileData *fd, const gchar *key);
 gboolean metadata_write_list(FileData *fd, const gchar *key, const GList *values);
 gboolean metadata_write_string(FileData *fd, const gchar *key, const char *value);
+gboolean metadata_write_int(FileData *fd, const gchar *key, guint64 value);
 
 GList *metadata_read_list(FileData *fd, const gchar *key, MetadataFormat format);
 gchar *metadata_read_string(FileData *fd, const gchar *key, MetadataFormat format);
--- a/src/options.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/options.c	Fri May 01 15:48:11 2009 +0900
@@ -104,6 +104,7 @@
 	options->metadata.confirm_on_image_change = FALSE;
 	options->metadata.confirm_on_dir_change = TRUE;
 	options->metadata.tags_case_sensitive = FALSE;
+	options->metadata.write_orientation = TRUE;
 	
 	options->show_icon_names = TRUE;
 
--- a/src/options.h	Fri May 01 15:45:54 2009 +0900
+++ b/src/options.h	Fri May 01 15:48:11 2009 +0900
@@ -178,6 +178,7 @@
 		gboolean confirm_on_image_change;
 		gboolean confirm_on_dir_change;
 		gboolean tags_case_sensitive;
+		gboolean write_orientation;
 	} metadata;
 
 };
--- a/src/preferences.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/preferences.c	Fri May 01 15:48:11 2009 +0900
@@ -325,6 +325,7 @@
 	options->metadata.confirm_on_image_change = c_options->metadata.confirm_on_image_change;
 	options->metadata.confirm_on_dir_change = c_options->metadata.confirm_on_dir_change;
 	options->metadata.tags_case_sensitive = c_options->metadata.tags_case_sensitive;
+	options->metadata.write_orientation = c_options->metadata.write_orientation;
 
 #ifdef DEBUG
 	set_debug_level(debug_c);
@@ -1369,6 +1370,9 @@
 
 	pref_checkbox_new_int(group, _("Allow keywords to differ only in case"),
 			      options->metadata.tags_case_sensitive, &c_options->metadata.tags_case_sensitive);
+
+	pref_checkbox_new_int(group, _("Write altered image orientation to the metadata"),
+			      options->metadata.write_orientation, &c_options->metadata.write_orientation);
 }
 
 /* metadata tab */
--- a/src/rcfile.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/rcfile.c	Fri May 01 15:48:11 2009 +0900
@@ -438,6 +438,7 @@
 	WRITE_NL(); WRITE_BOOL(*options, metadata.confirm_on_image_change);
 	WRITE_NL(); WRITE_BOOL(*options, metadata.confirm_on_dir_change);
 	WRITE_NL(); WRITE_BOOL(*options, metadata.tags_case_sensitive);
+	WRITE_NL(); WRITE_BOOL(*options, metadata.write_orientation);
 
 }
 
@@ -697,6 +698,7 @@
 		if (READ_BOOL(*options, metadata.confirm_on_image_change)) continue;
 		if (READ_BOOL(*options, metadata.confirm_on_dir_change)) continue;
 		if (READ_BOOL(*options, metadata.tags_case_sensitive)) continue;
+		if (READ_BOOL(*options, metadata.write_orientation)) continue;
 
 		log_printf("unknown attribute %s = %s\n", option, value);
 		}
--- a/src/thumb.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/thumb.c	Fri May 01 15:48:11 2009 +0900
@@ -142,7 +142,7 @@
 		{
 		if (!tl->fd->exif_orientation)
 			{
-			tl->fd->exif_orientation = metadata_read_int(tl->fd, "Exif.Image.Orientation", EXIF_ORIENTATION_TOP_LEFT);
+			tl->fd->exif_orientation = metadata_read_int(tl->fd, ORIENTATION_KEY, EXIF_ORIENTATION_TOP_LEFT);
 			}
 		
 		if (tl->fd->exif_orientation != EXIF_ORIENTATION_TOP_LEFT)
--- a/src/thumb_standard.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/thumb_standard.c	Fri May 01 15:48:11 2009 +0900
@@ -388,7 +388,7 @@
 		{
 		if (!tl->fd->exif_orientation)
 			{
-			tl->fd->exif_orientation = metadata_read_int(tl->fd, "Exif.Image.Orientation", EXIF_ORIENTATION_TOP_LEFT);
+			tl->fd->exif_orientation = metadata_read_int(tl->fd, ORIENTATION_KEY, EXIF_ORIENTATION_TOP_LEFT);
 			}
 		
 		if (tl->fd->exif_orientation != EXIF_ORIENTATION_TOP_LEFT)
--- a/src/utilops.c	Fri May 01 15:45:54 2009 +0900
+++ b/src/utilops.c	Fri May 01 15:48:11 2009 +0900
@@ -1834,7 +1834,7 @@
 	
 	if (fd && fd->modified_xmp)
 		{
-		keys = g_hash_table_get_keys(fd->modified_xmp);
+		keys = hash_table_get_keys(fd->modified_xmp);
 		}
 	
 	g_assert(keys);