From 0ee39c1ce96dbd9152a597eb5bf3da51daa6d15f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Sl=C3=A1vek=20Banko?= <slavek.banko@axis.cz>
Date: Thu, 27 Dec 2018 20:19:13 +0100
Subject: Add CMakeL10n rules. Update translation templates.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
---
 CMakeL10n.txt                      |   23 +
 diff_ext_for_kdiff3/CMakeL10n.txt  |    6 +
 diff_ext_for_kdiff3/diff_ext.pot   |   78 ++-
 diff_ext_for_kdiff3/diff_ext_de.po |    2 +-
 kdiff3plugin/CMakeL10n.txt         |    6 +
 kdiff3plugin/po/kdiff3_plugin.pot  |   88 +++
 po/kdiff3.pot                      | 1229 ++++++++++++++++++++----------------
 src/CMakeL10n.txt                  |    6 +
 src/smalldialogs.cpp               |    4 +-
 9 files changed, 861 insertions(+), 581 deletions(-)
 create mode 100644 CMakeL10n.txt
 create mode 100644 diff_ext_for_kdiff3/CMakeL10n.txt
 create mode 100644 kdiff3plugin/CMakeL10n.txt
 create mode 100644 kdiff3plugin/po/kdiff3_plugin.pot
 create mode 100644 src/CMakeL10n.txt

diff --git a/CMakeL10n.txt b/CMakeL10n.txt
new file mode 100644
index 0000000..a525b71
--- /dev/null
+++ b/CMakeL10n.txt
@@ -0,0 +1,23 @@
+#################################################
+#
+#  (C) 2018 Slávek Banko
+#  slavek.banko (AT) axis.cz
+#
+#  Improvements and feedback are welcome
+#
+#  This file is released under GPL >= 2
+#
+#################################################
+
+cmake_minimum_required( VERSION 2.8 )
+
+
+##### include our cmake modules #################
+
+set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules" )
+include( TDEL10n )
+
+
+##### create translation templates ##############
+
+tde_l10n_auto_add_subdirectories( )
diff --git a/diff_ext_for_kdiff3/CMakeL10n.txt b/diff_ext_for_kdiff3/CMakeL10n.txt
new file mode 100644
index 0000000..9784c39
--- /dev/null
+++ b/diff_ext_for_kdiff3/CMakeL10n.txt
@@ -0,0 +1,6 @@
+##### create translation templates ##############
+
+tde_l10n_create_template(
+    CATALOG "diff_ext"
+    DESTINATION "."
+)
diff --git a/diff_ext_for_kdiff3/diff_ext.pot b/diff_ext_for_kdiff3/diff_ext.pot
index 6cc829c..0fd57a0 100644
--- a/diff_ext_for_kdiff3/diff_ext.pot
+++ b/diff_ext_for_kdiff3/diff_ext.pot
@@ -1,96 +1,116 @@
-# Diff-ext-for-KDiff3
-# Copyright (C) 2006 Joachim Eibl
-# This file is distributed under the same license as the diff-ext-for-KDiff3 package.
-# PO-Template created by Joachim Eibl <Joachim dot Eibl at gmx dot de>, 2006.
+# SOME DESCRIPTIVE TITLE.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
 #
+#, fuzzy
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-10-03 06:05+0200\n"
+"POT-Creation-Date: 2018-12-27 19:51+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: diff_ext.cpp:368 diff_ext.cpp:402
-msgid "Compare with"
+#: _translatorinfo:1
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr ""
+
+#: _translatorinfo:2
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
 msgstr ""
 
 #: diff_ext.cpp:369
-msgid "Merge with"
+#, c-format
+msgid "Compare with %1"
+msgstr ""
+
+#: diff_ext.cpp:370
+#, c-format
+msgid "Merge with %1"
 msgstr ""
 
-#: diff_ext.cpp:384
+#: diff_ext.cpp:386
 msgid "3-way merge with base"
 msgstr ""
 
-#: diff_ext.cpp:387
-msgid "Save '%1' for later comparison or merge"
+#: diff_ext.cpp:389
+msgid "Save '%1' for later"
 msgstr ""
 
-#: diff_ext.cpp:408
-msgid "Compare"
+#: diff_ext.cpp:404
+msgid "Compare with ..."
+msgstr ""
+
+#: diff_ext.cpp:407
+msgid "Clear list"
 msgstr ""
 
 #: diff_ext.cpp:412
+msgid "Compare"
+msgstr ""
+
+#: diff_ext.cpp:416
 msgid "3 way comparison"
 msgstr ""
 
-#: diff_ext.cpp:418
+#: diff_ext.cpp:422
 msgid "About Diff-Ext ..."
 msgstr ""
 
-#: diff_ext.cpp:482
+#: diff_ext.cpp:491
 msgid "Diff-Ext Copyright (c) 2003-2006, Sergey Zorin. All rights reserved.\n"
 msgstr ""
 
-#: diff_ext.cpp:483
+#: diff_ext.cpp:492
 msgid "This software is distributable under the BSD license.\n"
 msgstr ""
 
-#: diff_ext.cpp:484
+#: diff_ext.cpp:493
 msgid "Some extensions for KDiff3 by Joachim Eibl.\n"
 msgstr ""
 
-#: diff_ext.cpp:485
+#: diff_ext.cpp:494
 msgid "Homepage for Diff-Ext: http://diff-ext.sourceforge.net\n"
 msgstr ""
 
-#: diff_ext.cpp:486
+#: diff_ext.cpp:495
 msgid "Homepage for KDiff3: http://kdiff3.sourceforge.net"
 msgstr ""
 
-#: diff_ext.cpp:487
+#: diff_ext.cpp:496
 msgid "About Diff-Ext for KDiff3"
 msgstr ""
 
-#: diff_ext.cpp:512
+#: diff_ext.cpp:521
 msgid "Compare selected files"
 msgstr ""
 
-#: diff_ext.cpp:518 diff_ext.cpp:538
+#: diff_ext.cpp:527 diff_ext.cpp:547
 msgid "Compare '%1' with '%2'"
 msgstr ""
 
-#: diff_ext.cpp:524
+#: diff_ext.cpp:533
 msgid "Save '%1' for later operation"
 msgstr ""
 
-#: diff_ext.cpp:576
+#: diff_ext.cpp:585
 msgid "Could not start KDiff3. Please rerun KDiff3 installation."
 msgstr ""
 
-#: diff_ext.cpp:577
+#: diff_ext.cpp:586
 msgid "Command"
 msgstr ""
 
-#: diff_ext.cpp:578
+#: diff_ext.cpp:587
 msgid "CommandLine"
 msgstr ""
 
-#: diff_ext.cpp:579
+#: diff_ext.cpp:588
 msgid "Diff-Ext For KDiff3"
 msgstr ""
diff --git a/diff_ext_for_kdiff3/diff_ext_de.po b/diff_ext_for_kdiff3/diff_ext_de.po
index cde56e8..d1fd901 100644
--- a/diff_ext_for_kdiff3/diff_ext_de.po
+++ b/diff_ext_for_kdiff3/diff_ext_de.po
@@ -12,7 +12,7 @@ msgstr ""
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
 #: diff_ext.cpp:363
diff --git a/kdiff3plugin/CMakeL10n.txt b/kdiff3plugin/CMakeL10n.txt
new file mode 100644
index 0000000..ba5eeeb
--- /dev/null
+++ b/kdiff3plugin/CMakeL10n.txt
@@ -0,0 +1,6 @@
+##### create translation templates ##############
+
+tde_l10n_create_template(
+    CATALOG "kdiff3_plugin"
+    DESTINATION "po"
+)
diff --git a/kdiff3plugin/po/kdiff3_plugin.pot b/kdiff3plugin/po/kdiff3_plugin.pot
new file mode 100644
index 0000000..24b8313
--- /dev/null
+++ b/kdiff3plugin/po/kdiff3_plugin.pot
@@ -0,0 +1,88 @@
+# SOME DESCRIPTIVE TITLE.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2018-12-27 19:51+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: _translatorinfo:1
+msgid ""
+"_: NAME OF TRANSLATORS\n"
+"Your names"
+msgstr ""
+
+#: _translatorinfo:2
+msgid ""
+"_: EMAIL OF TRANSLATORS\n"
+"Your emails"
+msgstr ""
+
+#: kdiff3plugin.cpp:97
+msgid "KDiff3"
+msgstr ""
+
+#: kdiff3plugin.cpp:104
+#, c-format
+msgid "Compare with %1"
+msgstr ""
+
+#: kdiff3plugin.cpp:109
+#, c-format
+msgid "Merge with %1"
+msgstr ""
+
+#: kdiff3plugin.cpp:114
+msgid "Save '%1' for later"
+msgstr ""
+
+#: kdiff3plugin.cpp:119
+msgid "3-way merge with base"
+msgstr ""
+
+#: kdiff3plugin.cpp:125
+msgid "Compare with ..."
+msgstr ""
+
+#: kdiff3plugin.cpp:134
+msgid "Clear list"
+msgstr ""
+
+#: kdiff3plugin.cpp:141
+msgid "Compare"
+msgstr ""
+
+#: kdiff3plugin.cpp:146
+msgid "3 way comparison"
+msgstr ""
+
+#: kdiff3plugin.cpp:149
+msgid "About KDiff3 menu plugin ..."
+msgstr ""
+
+#: kdiff3plugin.cpp:250
+msgid ""
+"KDiff3 Menu Plugin: Copyright (C) 2006 Joachim Eibl\n"
+"KDiff3 homepage: http://kdiff3.sourceforge.net\n"
+"\n"
+msgstr ""
+
+#: kdiff3plugin.cpp:252
+msgid ""
+"Using the contextmenu extension:\n"
+"For simple comparison of two selected 2 files choose \"Compare\".\n"
+"If the other file is somewhere else \"Save\" the first file for later. It "
+"will appear in the \"Compare With ...\" submenu. Then use \"Compare With\" "
+"on second file.\n"
+"For a 3-way merge first \"Save\" the base file, then the branch to merge and "
+"choose \"3-way merge with base\" on the other branch which will be used as "
+"destination.\n"
+"Same also applies to directory comparison and merge."
+msgstr ""
diff --git a/po/kdiff3.pot b/po/kdiff3.pot
index 3cd029c..6317e90 100644
--- a/po/kdiff3.pot
+++ b/po/kdiff3.pot
@@ -1,13 +1,11 @@
 # SOME DESCRIPTIVE TITLE.
-# This file is put in the public domain.
 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
 #
 #, fuzzy
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-14 15:14+0200\n"
+"POT-Creation-Date: 2018-12-27 20:04+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -15,27 +13,27 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: _translatorinfo.cpp:1
+#: _translatorinfo:1
 msgid ""
 "_: NAME OF TRANSLATORS\n"
 "Your names"
 msgstr ""
 
-#: _translatorinfo.cpp:3
+#: _translatorinfo:2
 msgid ""
 "_: EMAIL OF TRANSLATORS\n"
 "Your emails"
 msgstr ""
 
-#: diff.cpp:245
+#: diff.cpp:247
 msgid "Writing clipboard data to temp file failed."
 msgstr ""
 
-#: diff.cpp:249
+#: diff.cpp:251
 msgid "From Clipboard"
 msgstr ""
 
-#: diff.cpp:451
+#: diff.cpp:493
 msgid ""
 "Preprocessing possibly failed. Check this command:\n"
 "\n"
@@ -44,7 +42,7 @@ msgid ""
 "The preprocessing command will be disabled now."
 msgstr ""
 
-#: diff.cpp:486
+#: diff.cpp:528
 msgid ""
 "The line-matching-preprocessing possibly failed. Check this command:\n"
 "\n"
@@ -53,21 +51,21 @@ msgid ""
 "The line-matching-preprocessing command will be disabled now."
 msgstr ""
 
-#: diff.cpp:1587 diff.cpp:1601
+#: diff.cpp:1633 diff.cpp:1647
 msgid ""
 "Data loss error:\n"
 "If it is reproducable please contact the author.\n"
 msgstr ""
 
-#: diff.cpp:1589 diff.cpp:1603
+#: diff.cpp:1635 diff.cpp:1649
 msgid "Severe Internal Error"
 msgstr ""
 
-#: difftextwindow.cpp:1637 kdiff3.cpp:743
+#: difftextwindow.cpp:1644 kdiff3.cpp:772
 msgid "Top line"
 msgstr ""
 
-#: difftextwindow.cpp:1647
+#: difftextwindow.cpp:1654
 msgid "End"
 msgstr ""
 
@@ -83,233 +81,244 @@ msgstr ""
 msgid "Size. "
 msgstr ""
 
-#: directorymergewindow.cpp:170
+#: directorymergewindow.cpp:170 directorymergewindow.cpp:180
 msgid "Date & Size: "
 msgstr ""
 
-#: directorymergewindow.cpp:179 directorymergewindow.cpp:185
+#: directorymergewindow.cpp:190 directorymergewindow.cpp:196
 msgid "Creating temp copy of %1 failed."
 msgstr ""
 
-#: directorymergewindow.cpp:196 directorymergewindow.cpp:204
+#: directorymergewindow.cpp:207 directorymergewindow.cpp:215
 msgid "Opening %1 failed."
 msgstr ""
 
-#: directorymergewindow.cpp:208
+#: directorymergewindow.cpp:219
 msgid "Comparing file..."
 msgstr ""
 
-#: directorymergewindow.cpp:218 directorymergewindow.cpp:224
+#: directorymergewindow.cpp:233 directorymergewindow.cpp:239
+#, c-format
 msgid "Error reading from %1"
 msgstr ""
 
-#: directorymergewindow.cpp:282
+#: directorymergewindow.cpp:297
 msgid "Name"
 msgstr ""
 
-#: directorymergewindow.cpp:286
+#: directorymergewindow.cpp:301
 msgid "Operation"
 msgstr ""
 
-#: directorymergewindow.cpp:287
+#: directorymergewindow.cpp:302
 msgid "Status"
 msgstr ""
 
-#: directorymergewindow.cpp:288
+#: directorymergewindow.cpp:303
 msgid "Unsolved"
 msgstr ""
 
-#: directorymergewindow.cpp:289
+#: directorymergewindow.cpp:304
 msgid "Solved"
 msgstr ""
 
-#: directorymergewindow.cpp:290
+#: directorymergewindow.cpp:305
 msgid "Nonwhite"
 msgstr ""
 
-#: directorymergewindow.cpp:291
+#: directorymergewindow.cpp:306
 msgid "White"
 msgstr ""
 
-#: directorymergewindow.cpp:319
+#: directorymergewindow.cpp:334
 msgid ""
 "You are currently doing a directory merge. Are you sure, you want to abort "
 "the merge and rescan the directory?"
 msgstr ""
 
-#: directorymergewindow.cpp:320 directorymergewindow.cpp:2864
+#: directorymergewindow.cpp:335 kdiff3.cpp:602 kdiff3.cpp:610 kdiff3.cpp:622
+#: mergeresultwindow.cpp:287 pdiff.cpp:981 pdiff.cpp:1724 pdiff.cpp:1732
+msgid "Warning"
+msgstr ""
+
+#: directorymergewindow.cpp:335 directorymergewindow.cpp:2930
 msgid "Rescan"
 msgstr ""
 
-#: directorymergewindow.cpp:320 kdiff3.cpp:594 pdiff.cpp:965
+#: directorymergewindow.cpp:335 kdiff3.cpp:622 pdiff.cpp:981
 msgid "Continue Merging"
 msgstr ""
 
-#: directorymergewindow.cpp:462
+#: directorymergewindow.cpp:507
 msgid "Opening of directories failed:"
 msgstr ""
 
-#: directorymergewindow.cpp:465
+#: directorymergewindow.cpp:510
 msgid "Dir A \"%1\" does not exist or is not a directory.\n"
 msgstr ""
 
-#: directorymergewindow.cpp:468
+#: directorymergewindow.cpp:513
 msgid "Dir B \"%1\" does not exist or is not a directory.\n"
 msgstr ""
 
-#: directorymergewindow.cpp:471
+#: directorymergewindow.cpp:516
 msgid "Dir C \"%1\" does not exist or is not a directory.\n"
 msgstr ""
 
-#: directorymergewindow.cpp:473
+#: directorymergewindow.cpp:518
 msgid "Directory Open Error"
 msgstr ""
 
-#: directorymergewindow.cpp:481
+#: directorymergewindow.cpp:526
 msgid ""
 "The destination directory must not be the same as A or B when three "
 "directories are merged.\n"
 "Check again before continuing."
 msgstr ""
 
-#: directorymergewindow.cpp:483
+#: directorymergewindow.cpp:528
 msgid "Parameter Warning"
 msgstr ""
 
-#: directorymergewindow.cpp:488
+#: directorymergewindow.cpp:533
 msgid "Scanning directories..."
 msgstr ""
 
-#: directorymergewindow.cpp:537
+#: directorymergewindow.cpp:582
 msgid "Reading Directory A"
 msgstr ""
 
-#: directorymergewindow.cpp:559
+#: directorymergewindow.cpp:604
 msgid "Reading Directory B"
 msgstr ""
 
-#: directorymergewindow.cpp:581
+#: directorymergewindow.cpp:626
 msgid "Reading Directory C"
 msgstr ""
 
-#: directorymergewindow.cpp:607
+#: directorymergewindow.cpp:652
 msgid "Some subdirectories were not readable in"
 msgstr ""
 
-#: directorymergewindow.cpp:612
+#: directorymergewindow.cpp:657
 msgid "Check the permissions of the subdirectories."
 msgstr ""
 
-#: directorymergewindow.cpp:646 kdiff3.cpp:547 kdiff3.cpp:627 kdiff3.cpp:651
-#: kdiff3.cpp:924 kdiff3.cpp:945 pdiff.cpp:1045 pdiff.cpp:1117 pdiff.cpp:1155
-#: pdiff.cpp:1171 pdiff.cpp:1201 pdiff.cpp:1212
+#: directorymergewindow.cpp:691 kdiff3.cpp:568 kdiff3.cpp:655 kdiff3.cpp:680
+#: kdiff3.cpp:953 kdiff3.cpp:974 pdiff.cpp:1070 pdiff.cpp:1142 pdiff.cpp:1180
+#: pdiff.cpp:1196 pdiff.cpp:1226 pdiff.cpp:1237
 msgid "Ready."
 msgstr ""
 
-#: directorymergewindow.cpp:660
+#: directorymergewindow.cpp:705
 msgid "Directory Comparison Status"
 msgstr ""
 
-#: directorymergewindow.cpp:661
+#: directorymergewindow.cpp:706
 msgid "Number of subdirectories:"
 msgstr ""
 
-#: directorymergewindow.cpp:662
+#: directorymergewindow.cpp:707
 msgid "Number of equal files:"
 msgstr ""
 
-#: directorymergewindow.cpp:663
+#: directorymergewindow.cpp:708
 msgid "Number of different files:"
 msgstr ""
 
-#: directorymergewindow.cpp:666
+#: directorymergewindow.cpp:711
 msgid "Number of manual merges:"
 msgstr ""
 
-#: directorymergewindow.cpp:802
+#: directorymergewindow.cpp:867
 msgid "This affects all merge operations."
 msgstr ""
 
-#: directorymergewindow.cpp:803
+#: directorymergewindow.cpp:868
 msgid "Changing All Merge Operations"
 msgstr ""
 
-#: directorymergewindow.cpp:803 mergeresultwindow.cpp:285
+#: directorymergewindow.cpp:868 mergeresultwindow.cpp:287
 msgid "C&ontinue"
 msgstr ""
 
-#: directorymergewindow.cpp:1169
+#: directorymergewindow.cpp:868 fileaccess.cpp:1476 mergeresultwindow.cpp:287
+#: smalldialogs.cpp:169 smalldialogs.cpp:381
+msgid "&Cancel"
+msgstr ""
+
+#: directorymergewindow.cpp:1236
 msgid "Processing "
 msgstr ""
 
-#: directorymergewindow.cpp:1644 directorymergewindow.cpp:1650
+#: directorymergewindow.cpp:1710 directorymergewindow.cpp:1716
 msgid "To do."
 msgstr ""
 
-#: directorymergewindow.cpp:1752 directorymergewindow.cpp:2895
+#: directorymergewindow.cpp:1819 directorymergewindow.cpp:2961
 msgid "Copy A to B"
 msgstr ""
 
-#: directorymergewindow.cpp:1753 directorymergewindow.cpp:2896
+#: directorymergewindow.cpp:1820 directorymergewindow.cpp:2962
 msgid "Copy B to A"
 msgstr ""
 
-#: directorymergewindow.cpp:1754 directorymergewindow.cpp:2897
+#: directorymergewindow.cpp:1821 directorymergewindow.cpp:2963
 msgid "Delete A"
 msgstr ""
 
-#: directorymergewindow.cpp:1755 directorymergewindow.cpp:2898
+#: directorymergewindow.cpp:1822 directorymergewindow.cpp:2964
 msgid "Delete B"
 msgstr ""
 
-#: directorymergewindow.cpp:1756
+#: directorymergewindow.cpp:1823
 msgid "Delete A & B"
 msgstr ""
 
-#: directorymergewindow.cpp:1757 directorymergewindow.cpp:2900
+#: directorymergewindow.cpp:1824 directorymergewindow.cpp:2966
 msgid "Merge to A"
 msgstr ""
 
-#: directorymergewindow.cpp:1758 directorymergewindow.cpp:2901
+#: directorymergewindow.cpp:1825 directorymergewindow.cpp:2967
 msgid "Merge to B"
 msgstr ""
 
-#: directorymergewindow.cpp:1759
+#: directorymergewindow.cpp:1826
 msgid "Merge to A & B"
 msgstr ""
 
-#: directorymergewindow.cpp:1763 directorymergewindow.cpp:2892
+#: directorymergewindow.cpp:1830 directorymergewindow.cpp:2958
 msgid "Delete (if exists)"
 msgstr ""
 
-#: directorymergewindow.cpp:1764 directorymergewindow.cpp:1765
-#: directorymergewindow.cpp:2891 smalldialogs.cpp:102
+#: directorymergewindow.cpp:1831 directorymergewindow.cpp:1832
+#: directorymergewindow.cpp:2957 optiondialog.cpp:800 smalldialogs.cpp:102
 msgid "Merge"
 msgstr ""
 
-#: directorymergewindow.cpp:1764 directorymergewindow.cpp:1765
+#: directorymergewindow.cpp:1831 directorymergewindow.cpp:1832
 msgid "Merge (manual)"
 msgstr ""
 
-#: directorymergewindow.cpp:1766
+#: directorymergewindow.cpp:1833
 msgid "Error: Conflicting File Types"
 msgstr ""
 
-#: directorymergewindow.cpp:1767
+#: directorymergewindow.cpp:1834
 msgid "Error: Dates are equal but files are not."
 msgstr ""
 
-#: directorymergewindow.cpp:1791 directorymergewindow.cpp:1820
-#: directorymergewindow.cpp:1845
+#: directorymergewindow.cpp:1861 directorymergewindow.cpp:1890
+#: directorymergewindow.cpp:1915
 msgid "This operation is currently not possible."
 msgstr ""
 
-#: directorymergewindow.cpp:1791 directorymergewindow.cpp:1820
-#: directorymergewindow.cpp:1845 directorymergewindow.cpp:2102
+#: directorymergewindow.cpp:1861 directorymergewindow.cpp:1890
+#: directorymergewindow.cpp:1915 directorymergewindow.cpp:2172
 msgid "Operation Not Possible"
 msgstr ""
 
-#: directorymergewindow.cpp:1884
+#: directorymergewindow.cpp:1954
 msgid ""
 "This should never happen: \n"
 "\n"
@@ -318,40 +327,46 @@ msgid ""
 "If you know how to reproduce this, please contact the program author."
 msgstr ""
 
-#: directorymergewindow.cpp:1884
+#: directorymergewindow.cpp:1954
 msgid "Program Error"
 msgstr ""
 
-#: directorymergewindow.cpp:1895
+#: directorymergewindow.cpp:1965
 msgid "An error occurred while copying.\n"
 msgstr ""
 
-#: directorymergewindow.cpp:1896 directorymergewindow.cpp:2302
+#: directorymergewindow.cpp:1965 directorymergewindow.cpp:2034
+#: directorymergewindow.cpp:2066 directorymergewindow.cpp:2112
+#: directorymergewindow.cpp:2121 directorymergewindow.cpp:2371
+msgid "Error"
+msgstr ""
+
+#: directorymergewindow.cpp:1966 directorymergewindow.cpp:2372
 msgid "Merge Error"
 msgstr ""
 
-#: directorymergewindow.cpp:1901 directorymergewindow.cpp:2307
+#: directorymergewindow.cpp:1971 directorymergewindow.cpp:2377
 msgid "Error."
 msgstr ""
 
-#: directorymergewindow.cpp:1906 directorymergewindow.cpp:2198
-#: directorymergewindow.cpp:2238
+#: directorymergewindow.cpp:1976 directorymergewindow.cpp:2268
+#: directorymergewindow.cpp:2308
 msgid "Done."
 msgstr ""
 
-#: directorymergewindow.cpp:1929
+#: directorymergewindow.cpp:1999
 msgid "Not saved."
 msgstr ""
 
-#: directorymergewindow.cpp:1964
+#: directorymergewindow.cpp:2034
 msgid "Unknown merge operation. (This must never happen!)"
 msgstr ""
 
-#: directorymergewindow.cpp:1996
+#: directorymergewindow.cpp:2066
 msgid "Unknown merge operation."
 msgstr ""
 
-#: directorymergewindow.cpp:2011
+#: directorymergewindow.cpp:2081
 msgid ""
 "The merge is about to begin.\n"
 "\n"
@@ -363,721 +378,748 @@ msgid ""
 "whatsoever! Make backups of your vital data!"
 msgstr ""
 
-#: directorymergewindow.cpp:2016
+#: directorymergewindow.cpp:2086
 msgid "Starting Merge"
 msgstr ""
 
-#: directorymergewindow.cpp:2016
+#: directorymergewindow.cpp:2086
 msgid "Do It"
 msgstr ""
 
-#: directorymergewindow.cpp:2016
+#: directorymergewindow.cpp:2086
 msgid "Simulate It"
 msgstr ""
 
-#: directorymergewindow.cpp:2042
+#: directorymergewindow.cpp:2112
 msgid ""
 "The highlighted item has a different type in the different directories. "
 "Select what to do."
 msgstr ""
 
-#: directorymergewindow.cpp:2051
+#: directorymergewindow.cpp:2121
 msgid ""
 "The modification dates of the file are equal but the files are not. Select "
 "what to do."
 msgstr ""
 
-#: directorymergewindow.cpp:2102
+#: directorymergewindow.cpp:2172
 msgid ""
 "This operation is currently not possible because directory merge is "
 "currently running."
 msgstr ""
 
-#: directorymergewindow.cpp:2162
+#: directorymergewindow.cpp:2232
 msgid ""
 "There was an error in the last step.\n"
 "Do you want to continue with the item that caused the error or do you want "
 "to skip this item?"
 msgstr ""
 
-#: directorymergewindow.cpp:2164
+#: directorymergewindow.cpp:2234
 msgid "Continue merge after an error"
 msgstr ""
 
-#: directorymergewindow.cpp:2164
+#: directorymergewindow.cpp:2234
 msgid "Continue With Last Item"
 msgstr ""
 
-#: directorymergewindow.cpp:2164
+#: directorymergewindow.cpp:2234
 msgid "Skip Item"
 msgstr ""
 
-#: directorymergewindow.cpp:2198
+#: directorymergewindow.cpp:2268
 msgid "Skipped."
 msgstr ""
 
-#: directorymergewindow.cpp:2205 directorymergewindow.cpp:2431
+#: directorymergewindow.cpp:2275 directorymergewindow.cpp:2501
 msgid "In progress..."
 msgstr ""
 
-#: directorymergewindow.cpp:2253
+#: directorymergewindow.cpp:2323
 msgid "Merge operation complete."
 msgstr ""
 
-#: directorymergewindow.cpp:2253 directorymergewindow.cpp:2256
+#: directorymergewindow.cpp:2323 directorymergewindow.cpp:2326
 msgid "Merge Complete"
 msgstr ""
 
-#: directorymergewindow.cpp:2265
+#: directorymergewindow.cpp:2335
 msgid ""
 "Simulated merge complete: Check if you agree with the proposed operations."
 msgstr ""
 
-#: directorymergewindow.cpp:2301
+#: directorymergewindow.cpp:2371
 msgid "An error occurred. Press OK to see detailed information.\n"
 msgstr ""
 
-#: directorymergewindow.cpp:2344
+#: directorymergewindow.cpp:2414
 msgid "Error: While deleting %1: Creating backup failed."
 msgstr ""
 
-#: directorymergewindow.cpp:2351
+#: directorymergewindow.cpp:2421
 msgid "delete directory recursively( %1 )"
 msgstr ""
 
-#: directorymergewindow.cpp:2353
+#: directorymergewindow.cpp:2423
 msgid "delete( %1 )"
 msgstr ""
 
-#: directorymergewindow.cpp:2368
+#: directorymergewindow.cpp:2438
 msgid "Error: delete dir operation failed while trying to read the directory."
 msgstr ""
 
-#: directorymergewindow.cpp:2387
+#: directorymergewindow.cpp:2457
 msgid "Error: rmdir( %1 ) operation failed."
 msgstr ""
 
-#: directorymergewindow.cpp:2397
+#: directorymergewindow.cpp:2467
 msgid "Error: delete operation failed."
 msgstr ""
 
-#: directorymergewindow.cpp:2423
+#: directorymergewindow.cpp:2493
 msgid "manual merge( %1, %2, %3 -> %4)"
 msgstr ""
 
-#: directorymergewindow.cpp:2426
+#: directorymergewindow.cpp:2496
 msgid ""
 "     Note: After a manual merge the user should continue by pressing F7."
 msgstr ""
 
-#: directorymergewindow.cpp:2449
+#: directorymergewindow.cpp:2519
 msgid "Error: copy( %1 -> %2 ) failed.Deleting existing destination failed."
 msgstr ""
 
-#: directorymergewindow.cpp:2459
+#: directorymergewindow.cpp:2529
 msgid "copyLink( %1 -> %2 )"
 msgstr ""
 
-#: directorymergewindow.cpp:2470
+#: directorymergewindow.cpp:2540
 msgid "Error: copyLink failed: Remote links are not yet supported."
 msgstr ""
 
-#: directorymergewindow.cpp:2476
+#: directorymergewindow.cpp:2546
 msgid "Error: copyLink failed."
 msgstr ""
 
-#: directorymergewindow.cpp:2496
+#: directorymergewindow.cpp:2566
 msgid "copy( %1 -> %2 )"
 msgstr ""
 
-#: directorymergewindow.cpp:2522
+#: directorymergewindow.cpp:2592
 msgid "Error during rename( %1 -> %2 ): Cannot delete existing destination."
 msgstr ""
 
-#: directorymergewindow.cpp:2528
+#: directorymergewindow.cpp:2598
 msgid "rename( %1 -> %2 )"
 msgstr ""
 
-#: directorymergewindow.cpp:2537
+#: directorymergewindow.cpp:2607
 msgid "Error: Rename failed."
 msgstr ""
 
-#: directorymergewindow.cpp:2555
+#: directorymergewindow.cpp:2625
 msgid "Error during makeDir of %1. Cannot delete existing file."
 msgstr ""
 
-#: directorymergewindow.cpp:2571
+#: directorymergewindow.cpp:2641
 msgid "makeDir( %1 )"
 msgstr ""
 
-#: directorymergewindow.cpp:2581
+#: directorymergewindow.cpp:2651
 msgid "Error while creating directory."
 msgstr ""
 
-#: directorymergewindow.cpp:2604 directorymergewindow.cpp:2721
+#: directorymergewindow.cpp:2674 directorymergewindow.cpp:2787
 msgid "Dest"
 msgstr ""
 
-#: directorymergewindow.cpp:2608 directorymergewindow.cpp:2646
+#: directorymergewindow.cpp:2678 directorymergewindow.cpp:2712
 msgid "Dir"
 msgstr ""
 
-#: directorymergewindow.cpp:2609
+#: directorymergewindow.cpp:2679
 msgid "Type"
 msgstr ""
 
-#: directorymergewindow.cpp:2610
+#: directorymergewindow.cpp:2680
 msgid "Size"
 msgstr ""
 
-#: directorymergewindow.cpp:2611
+#: directorymergewindow.cpp:2681
 msgid "Attr"
 msgstr ""
 
-#: directorymergewindow.cpp:2612
+#: directorymergewindow.cpp:2682
 msgid "Last Modification"
 msgstr ""
 
-#: directorymergewindow.cpp:2613
+#: directorymergewindow.cpp:2683
 msgid "Link-Destination"
 msgstr ""
 
-#: directorymergewindow.cpp:2663
+#: directorymergewindow.cpp:2712
+msgid "File"
+msgstr ""
+
+#: directorymergewindow.cpp:2729
 msgid "not available"
 msgstr ""
 
-#: directorymergewindow.cpp:2683
+#: directorymergewindow.cpp:2749
 msgid "A (Dest): "
 msgstr ""
 
-#: directorymergewindow.cpp:2686
+#: directorymergewindow.cpp:2752
 msgid "A (Base): "
 msgstr ""
 
-#: directorymergewindow.cpp:2692
+#: directorymergewindow.cpp:2758
 msgid "B (Dest): "
 msgstr ""
 
-#: directorymergewindow.cpp:2700
+#: directorymergewindow.cpp:2766
 msgid "C (Dest): "
 msgstr ""
 
-#: directorymergewindow.cpp:2706
+#: directorymergewindow.cpp:2772
 msgid "Dest: "
 msgstr ""
 
-#: directorymergewindow.cpp:2771
+#: directorymergewindow.cpp:2837
 msgid "Save Directory Merge State As..."
 msgstr ""
 
-#: directorymergewindow.cpp:2858
+#: directorymergewindow.cpp:2924
 msgid "Start/Continue Directory Merge"
 msgstr ""
 
-#: directorymergewindow.cpp:2859
+#: directorymergewindow.cpp:2925
 msgid "Run Operation for Current Item"
 msgstr ""
 
-#: directorymergewindow.cpp:2860
+#: directorymergewindow.cpp:2926
 msgid "Compare Selected File"
 msgstr ""
 
-#: directorymergewindow.cpp:2861
+#: directorymergewindow.cpp:2927
 msgid "Merge Current File"
 msgstr ""
 
-#: directorymergewindow.cpp:2862
+#: directorymergewindow.cpp:2928
 msgid "Fold All Subdirs"
 msgstr ""
 
-#: directorymergewindow.cpp:2863
+#: directorymergewindow.cpp:2929
 msgid "Unfold All Subdirs"
 msgstr ""
 
-#: directorymergewindow.cpp:2867
+#: directorymergewindow.cpp:2933
 msgid "Choose A for All Items"
 msgstr ""
 
-#: directorymergewindow.cpp:2868
+#: directorymergewindow.cpp:2934
 msgid "Choose B for All Items"
 msgstr ""
 
-#: directorymergewindow.cpp:2869
+#: directorymergewindow.cpp:2935
 msgid "Choose C for All Items"
 msgstr ""
 
-#: directorymergewindow.cpp:2870
+#: directorymergewindow.cpp:2936
 msgid "Auto-Choose Operation for All Items"
 msgstr ""
 
-#: directorymergewindow.cpp:2871
+#: directorymergewindow.cpp:2937
 msgid "No Operation for All Items"
 msgstr ""
 
-#: directorymergewindow.cpp:2876
+#: directorymergewindow.cpp:2942
 msgid "Show Identical Files"
 msgstr ""
 
-#: directorymergewindow.cpp:2877
+#: directorymergewindow.cpp:2943
 msgid "Show Different Files"
 msgstr ""
 
-#: directorymergewindow.cpp:2878
+#: directorymergewindow.cpp:2944
 msgid "Show Files only in A"
 msgstr ""
 
-#: directorymergewindow.cpp:2879
+#: directorymergewindow.cpp:2945
 msgid "Show Files only in B"
 msgstr ""
 
-#: directorymergewindow.cpp:2880
+#: directorymergewindow.cpp:2946
 msgid "Show Files only in C"
 msgstr ""
 
-#: directorymergewindow.cpp:2884
+#: directorymergewindow.cpp:2950
 msgid "Compare Explicitly Selected Files"
 msgstr ""
 
-#: directorymergewindow.cpp:2885
+#: directorymergewindow.cpp:2951
 msgid "Merge Explicitly Selected Files"
 msgstr ""
 
-#: directorymergewindow.cpp:2887 directorymergewindow.cpp:2894
+#: directorymergewindow.cpp:2953 directorymergewindow.cpp:2960
 msgid "Do Nothing"
 msgstr ""
 
-#: directorymergewindow.cpp:2888
+#: directorymergewindow.cpp:2954
 msgid "A"
 msgstr ""
 
-#: directorymergewindow.cpp:2889
+#: directorymergewindow.cpp:2955
 msgid "B"
 msgstr ""
 
-#: directorymergewindow.cpp:2890
+#: directorymergewindow.cpp:2956
 msgid "C"
 msgstr ""
 
-#: directorymergewindow.cpp:2899
+#: directorymergewindow.cpp:2965
 msgid "Delete A && B"
 msgstr ""
 
-#: directorymergewindow.cpp:2902
+#: directorymergewindow.cpp:2968
 msgid "Merge to A && B"
 msgstr ""
 
-#: fileaccess.cpp:567
+#: fileaccess.cpp:599
 msgid ""
 "While trying to make a backup, deleting an older backup failed. \n"
 "Filename: "
 msgstr ""
 
-#: fileaccess.cpp:574
+#: fileaccess.cpp:606
 msgid ""
 "While trying to make a backup, renaming failed. \n"
 "Filenames: "
 msgstr ""
 
-#: fileaccess.cpp:596
+#: fileaccess.cpp:628
+#, c-format
 msgid "Getting file status: %1"
 msgstr ""
 
-#: fileaccess.cpp:639
+#: fileaccess.cpp:671
+#, c-format
 msgid "Reading file: %1"
 msgstr ""
 
-#: fileaccess.cpp:675
+#: fileaccess.cpp:707
+#, c-format
 msgid "Writing file: %1"
 msgstr ""
 
-#: fileaccess.cpp:703
+#: fileaccess.cpp:735
 msgid "Out of memory"
 msgstr ""
 
-#: fileaccess.cpp:738
+#: fileaccess.cpp:770
+#, c-format
 msgid "Making directory: %1"
 msgstr ""
 
-#: fileaccess.cpp:758
+#: fileaccess.cpp:790
+#, c-format
 msgid "Removing directory: %1"
 msgstr ""
 
-#: fileaccess.cpp:773
+#: fileaccess.cpp:805
+#, c-format
 msgid "Removing file: %1"
 msgstr ""
 
-#: fileaccess.cpp:789
+#: fileaccess.cpp:821
 msgid "Creating symbolic link: %1 -> %2"
 msgstr ""
 
-#: fileaccess.cpp:815
+#: fileaccess.cpp:851
 msgid "Renaming file: %1 -> %2"
 msgstr ""
 
-#: fileaccess.cpp:851
+#: fileaccess.cpp:887
 msgid "Copying file: %1 -> %2"
 msgstr ""
 
-#: fileaccess.cpp:865
+#: fileaccess.cpp:901
+#, c-format
 msgid ""
 "Error during file copy operation: Opening file for reading failed. Filename: "
 "%1"
 msgstr ""
 
-#: fileaccess.cpp:871
+#: fileaccess.cpp:907
+#, c-format
 msgid ""
 "Error during file copy operation: Opening file for writing failed. Filename: "
 "%1"
 msgstr ""
 
-#: fileaccess.cpp:886
+#: fileaccess.cpp:919
+#, c-format
 msgid "Error during file copy operation: Reading failed. Filename: %1"
 msgstr ""
 
-#: fileaccess.cpp:895
+#: fileaccess.cpp:928
+#, c-format
 msgid "Error during file copy operation: Writing failed. Filename: %1"
 msgstr ""
 
-#: fileaccess.cpp:1191
+#: fileaccess.cpp:1218
 msgid "Reading directory: "
 msgstr ""
 
-#: fileaccess.cpp:1320
+#: fileaccess.cpp:1347
+#, c-format
 msgid "Listing directory: %1"
 msgstr ""
 
-#: kdiff3.cpp:142
+#: kdiff3.cpp:145
 msgid "Current Configuration:"
 msgstr ""
 
-#: kdiff3.cpp:147
+#: kdiff3.cpp:150
 msgid "Config Option Error:"
 msgstr ""
 
-#: kdiff3.cpp:187
+#: kdiff3.cpp:193
 msgid "Option --auto used, but no output file specified."
 msgstr ""
 
-#: kdiff3.cpp:318
+#: kdiff3.cpp:331
 msgid "Option --auto ignored for directory comparison."
 msgstr ""
 
-#: kdiff3.cpp:354
+#: kdiff3.cpp:367
 msgid "Saving failed."
 msgstr ""
 
-#: kdiff3.cpp:381 pdiff.cpp:1027 pdiff.cpp:1098
+#: kdiff3.cpp:402 pdiff.cpp:1052 pdiff.cpp:1123
 msgid "Opening of these files failed:"
 msgstr ""
 
-#: kdiff3.cpp:390
+#: kdiff3.cpp:411
 msgid "File Open Error"
 msgstr ""
 
-#: kdiff3.cpp:413
+#: kdiff3.cpp:434
 msgid "Opens documents for comparison..."
 msgstr ""
 
-#: kdiff3.cpp:418
+#: kdiff3.cpp:436
+msgid "Reload"
+msgstr ""
+
+#: kdiff3.cpp:439
 msgid "Saves the merge result. All conflicts must be solved!"
 msgstr ""
 
-#: kdiff3.cpp:420
+#: kdiff3.cpp:441
 msgid "Saves the current document as..."
 msgstr ""
 
-#: kdiff3.cpp:422
+#: kdiff3.cpp:443
 msgid "Print the differences"
 msgstr ""
 
-#: kdiff3.cpp:424
+#: kdiff3.cpp:445
 msgid "Quits the application"
 msgstr ""
 
-#: kdiff3.cpp:426
+#: kdiff3.cpp:447
 msgid "Cuts the selected section and puts it to the clipboard"
 msgstr ""
 
-#: kdiff3.cpp:428
+#: kdiff3.cpp:449
 msgid "Copies the selected section to the clipboard"
 msgstr ""
 
-#: kdiff3.cpp:430
+#: kdiff3.cpp:451
 msgid "Pastes the clipboard contents to actual position"
 msgstr ""
 
-#: kdiff3.cpp:432
+#: kdiff3.cpp:453
 msgid "Select everything in current window"
 msgstr ""
 
-#: kdiff3.cpp:434
+#: kdiff3.cpp:455
 msgid "Search for a string"
 msgstr ""
 
-#: kdiff3.cpp:436
+#: kdiff3.cpp:457
 msgid "Search again for the string"
 msgstr ""
 
-#: kdiff3.cpp:438
+#: kdiff3.cpp:459
 msgid "Enables/disables the toolbar"
 msgstr ""
 
-#: kdiff3.cpp:440
+#: kdiff3.cpp:461
 msgid "Enables/disables the statusbar"
 msgstr ""
 
-#: kdiff3.cpp:444
+#: kdiff3.cpp:465
 msgid "Configure KDiff3..."
 msgstr ""
 
-#: kdiff3.cpp:465
+#: kdiff3.cpp:486
 msgid "Go to Current Delta"
 msgstr ""
 
-#: kdiff3.cpp:466
+#: kdiff3.cpp:487
 msgid "Go to First Delta"
 msgstr ""
 
-#: kdiff3.cpp:467
+#: kdiff3.cpp:488
 msgid "Go to Last Delta"
 msgstr ""
 
-#: kdiff3.cpp:468
+#: kdiff3.cpp:489
 msgid "(Skips white space differences when \"Show White Space\" is disabled.)"
 msgstr ""
 
-#: kdiff3.cpp:469
+#: kdiff3.cpp:490
 msgid ""
 "(Does not skip white space differences even when \"Show White Space\" is "
 "disabled.)"
 msgstr ""
 
-#: kdiff3.cpp:470
+#: kdiff3.cpp:491
 msgid "Go to Previous Delta"
 msgstr ""
 
-#: kdiff3.cpp:472
+#: kdiff3.cpp:493
 msgid "Go to Next Delta"
 msgstr ""
 
-#: kdiff3.cpp:474
+#: kdiff3.cpp:495
 msgid "Go to Previous Conflict"
 msgstr ""
 
-#: kdiff3.cpp:476
+#: kdiff3.cpp:497
 msgid "Go to Next Conflict"
 msgstr ""
 
-#: kdiff3.cpp:478
+#: kdiff3.cpp:499
 msgid "Go to Previous Unsolved Conflict"
 msgstr ""
 
-#: kdiff3.cpp:480
+#: kdiff3.cpp:501
 msgid "Go to Next Unsolved Conflict"
 msgstr ""
 
-#: kdiff3.cpp:482
+#: kdiff3.cpp:503
 msgid "Select Line(s) From A"
 msgstr ""
 
-#: kdiff3.cpp:483
+#: kdiff3.cpp:504
 msgid "Select Line(s) From B"
 msgstr ""
 
-#: kdiff3.cpp:484
+#: kdiff3.cpp:505
 msgid "Select Line(s) From C"
 msgstr ""
 
-#: kdiff3.cpp:485
+#: kdiff3.cpp:506
 msgid "Automatically Go to Next Unsolved Conflict After Source Selection"
 msgstr ""
 
-#: kdiff3.cpp:487
+#: kdiff3.cpp:508
 msgid "Show Space && Tabulator Characters for Differences"
 msgstr ""
 
-#: kdiff3.cpp:488
+#: kdiff3.cpp:509
 msgid "Show White Space"
 msgstr ""
 
-#: kdiff3.cpp:490
+#: kdiff3.cpp:511
 msgid "Show Line Numbers"
 msgstr ""
 
-#: kdiff3.cpp:491
+#: kdiff3.cpp:512
 msgid "Choose A Everywhere"
 msgstr ""
 
-#: kdiff3.cpp:492
+#: kdiff3.cpp:513
 msgid "Choose B Everywhere"
 msgstr ""
 
-#: kdiff3.cpp:493
+#: kdiff3.cpp:514
 msgid "Choose C Everywhere"
 msgstr ""
 
-#: kdiff3.cpp:494
+#: kdiff3.cpp:515
 msgid "Choose A for All Unsolved Conflicts"
 msgstr ""
 
-#: kdiff3.cpp:495
+#: kdiff3.cpp:516
 msgid "Choose B for All Unsolved Conflicts"
 msgstr ""
 
-#: kdiff3.cpp:496
+#: kdiff3.cpp:517
 msgid "Choose C for All Unsolved Conflicts"
 msgstr ""
 
-#: kdiff3.cpp:497
+#: kdiff3.cpp:518
 msgid "Choose A for All Unsolved Whitespace Conflicts"
 msgstr ""
 
-#: kdiff3.cpp:498
+#: kdiff3.cpp:519
 msgid "Choose B for All Unsolved Whitespace Conflicts"
 msgstr ""
 
-#: kdiff3.cpp:499
+#: kdiff3.cpp:520
 msgid "Choose C for All Unsolved Whitespace Conflicts"
 msgstr ""
 
-#: kdiff3.cpp:500
+#: kdiff3.cpp:521
 msgid "Automatically Solve Simple Conflicts"
 msgstr ""
 
-#: kdiff3.cpp:501
+#: kdiff3.cpp:522
 msgid "Set Deltas to Conflicts"
 msgstr ""
 
-#: kdiff3.cpp:502
+#: kdiff3.cpp:523
 msgid "Run Regular Expression Auto Merge"
 msgstr ""
 
-#: kdiff3.cpp:503
+#: kdiff3.cpp:524
 msgid "Automatically Solve History Conflicts"
 msgstr ""
 
-#: kdiff3.cpp:504
+#: kdiff3.cpp:525
 msgid "Split Diff At Selection"
 msgstr ""
 
-#: kdiff3.cpp:505
+#: kdiff3.cpp:526
 msgid "Join Selected Diffs"
 msgstr ""
 
-#: kdiff3.cpp:507
+#: kdiff3.cpp:528
 msgid "Show Window A"
 msgstr ""
 
-#: kdiff3.cpp:508
+#: kdiff3.cpp:529
 msgid "Show Window B"
 msgstr ""
 
-#: kdiff3.cpp:509
+#: kdiff3.cpp:530
 msgid "Show Window C"
 msgstr ""
 
-#: kdiff3.cpp:510 kdiff3.cpp:521
+#: kdiff3.cpp:531 kdiff3.cpp:542
 msgid "Focus Next Window"
 msgstr ""
 
-#: kdiff3.cpp:512
+#: kdiff3.cpp:533
 msgid "Normal Overview"
 msgstr ""
 
-#: kdiff3.cpp:513
+#: kdiff3.cpp:534
 msgid "A vs. B Overview"
 msgstr ""
 
-#: kdiff3.cpp:514
+#: kdiff3.cpp:535
 msgid "A vs. C Overview"
 msgstr ""
 
-#: kdiff3.cpp:515
+#: kdiff3.cpp:536
 msgid "B vs. C Overview"
 msgstr ""
 
-#: kdiff3.cpp:516
+#: kdiff3.cpp:537
 msgid "Word Wrap Diff Windows"
 msgstr ""
 
-#: kdiff3.cpp:517
+#: kdiff3.cpp:538
 msgid "Add Manual Diff Alignment"
 msgstr ""
 
-#: kdiff3.cpp:518
+#: kdiff3.cpp:539
 msgid "Clear All Manual Diff Alignments"
 msgstr ""
 
-#: kdiff3.cpp:523
+#: kdiff3.cpp:544
 msgid "Focus Prev Window"
 msgstr ""
 
-#: kdiff3.cpp:524
+#: kdiff3.cpp:545
 msgid "Toggle Split Orientation"
 msgstr ""
 
-#: kdiff3.cpp:526
+#: kdiff3.cpp:547
 msgid "Dir && Text Split Screen View"
 msgstr ""
 
-#: kdiff3.cpp:528
+#: kdiff3.cpp:549
 msgid "Toggle Between Dir && Text View"
 msgstr ""
 
-#: kdiff3.cpp:573 pdiff.cpp:1698
+#: kdiff3.cpp:601 pdiff.cpp:1723
 msgid "The merge result hasn't been saved."
 msgstr ""
 
-#: kdiff3.cpp:574
+#: kdiff3.cpp:602
 msgid "Save && Quit"
 msgstr ""
 
-#: kdiff3.cpp:574
+#: kdiff3.cpp:602
 msgid "Quit Without Saving"
 msgstr ""
 
-#: kdiff3.cpp:582 pdiff.cpp:1707
+#: kdiff3.cpp:610 pdiff.cpp:1732
 msgid "Saving the merge result failed."
 msgstr ""
 
-#: kdiff3.cpp:593 pdiff.cpp:964
+#: kdiff3.cpp:621 pdiff.cpp:980
 msgid ""
 "You are currently doing a directory merge. Are you sure, you want to abort?"
 msgstr ""
 
-#: kdiff3.cpp:616
+#: kdiff3.cpp:622
+msgid "Quit"
+msgstr ""
+
+#: kdiff3.cpp:644
 msgid "Saving file..."
 msgstr ""
 
-#: kdiff3.cpp:633
+#: kdiff3.cpp:661
 msgid "Saving file with a new filename..."
 msgstr ""
 
-#: kdiff3.cpp:722
+#: kdiff3.cpp:663
+msgid "Save As..."
+msgstr ""
+
+#: kdiff3.cpp:751
 msgid "Printing..."
 msgstr ""
 
-#: kdiff3.cpp:728 kdiff3.cpp:890
+#: kdiff3.cpp:757 kdiff3.cpp:919
 msgid "Printing aborted."
 msgstr ""
 
-#: kdiff3.cpp:860
+#: kdiff3.cpp:889
 msgid "Selection"
 msgstr ""
 
-#: kdiff3.cpp:886
+#: kdiff3.cpp:915
 msgid "Printing completed."
 msgstr ""
 
-#: kdiff3.cpp:896
+#: kdiff3.cpp:925
 msgid "Exiting..."
 msgstr ""
 
-#: kdiff3.cpp:908
+#: kdiff3.cpp:937
 msgid "Toggling toolbar..."
 msgstr ""
 
-#: kdiff3.cpp:929
+#: kdiff3.cpp:958
 msgid "Toggle the statusbar..."
 msgstr ""
 
@@ -1092,8 +1134,8 @@ msgstr ""
 #: kdiff3_shell.cpp:78
 msgid ""
 "Could not find our part!\n"
-"This usually happens due to an installation problem. Please read the README-"
-"file in the source package for details."
+"This usually happens due to an installation problem. Please read the "
+"README-file in the source package for details."
 msgstr ""
 
 #: main.cpp:35
@@ -1170,393 +1212,393 @@ msgstr ""
 msgid "Ignored. (User defined.)"
 msgstr ""
 
-#. i18n: file kdiff3_part.rc line 16
-#: main.cpp:171 rc.cpp:9
+#: kdiff3_part.rc:16 main.cpp:173
 #, no-c-format
 msgid "KDiff3"
 msgstr ""
 
-#: main.cpp:184
+#: main.cpp:191
 msgid "+ Many thanks to those who reported bugs and contributed ideas!"
 msgstr ""
 
-#: mergeresultwindow.cpp:133 mergeresultwindow.cpp:937
-#: mergeresultwindow.cpp:951 mergeresultwindow.cpp:963
-#: mergeresultwindow.cpp:975
+#: mergeresultwindow.cpp:136 mergeresultwindow.cpp:950
+#: mergeresultwindow.cpp:964 mergeresultwindow.cpp:976
+#: mergeresultwindow.cpp:988
 msgid "Number of remaining unsolved conflicts: %1 (of which %2 are whitespace)"
 msgstr ""
 
-#: mergeresultwindow.cpp:283
+#: mergeresultwindow.cpp:285
 msgid ""
 "The output has been modified.\n"
 "If you continue your changes will be lost."
 msgstr ""
 
-#: mergeresultwindow.cpp:795 pdiff.cpp:507
+#: mergeresultwindow.cpp:808 pdiff.cpp:511
 msgid "All input files are binary equal."
 msgstr ""
 
-#: mergeresultwindow.cpp:797
+#: mergeresultwindow.cpp:810
 msgid "All input files contain the same text."
 msgstr ""
 
-#: mergeresultwindow.cpp:799
-msgid "Files A and B are binary equal.\n"
-msgstr ""
-
-#: mergeresultwindow.cpp:800
-msgid "Files A and B have equal text. \n"
-msgstr ""
-
-#: mergeresultwindow.cpp:801
-msgid "Files A and C are binary equal.\n"
-msgstr ""
-
-#: mergeresultwindow.cpp:802
-msgid "Files A and C have equal text. \n"
-msgstr ""
-
-#: mergeresultwindow.cpp:803
-msgid "Files B and C are binary equal.\n"
+#: mergeresultwindow.cpp:812 mergeresultwindow.cpp:814
+#: mergeresultwindow.cpp:816 pdiff.cpp:515 pdiff.cpp:517 pdiff.cpp:519
+msgid "Files %1 and %2 are binary equal.\n"
 msgstr ""
 
-#: mergeresultwindow.cpp:804
-msgid "Files B and C have equal text. \n"
+#: mergeresultwindow.cpp:813 mergeresultwindow.cpp:815
+#: mergeresultwindow.cpp:817
+msgid "Files %1 and %2 have equal text.\n"
 msgstr ""
 
-#: mergeresultwindow.cpp:810
+#: mergeresultwindow.cpp:823
 msgid "Total number of conflicts: "
 msgstr ""
 
-#: mergeresultwindow.cpp:811
+#: mergeresultwindow.cpp:824
 msgid ""
 "\n"
 "Nr of automatically solved conflicts: "
 msgstr ""
 
-#: mergeresultwindow.cpp:812
+#: mergeresultwindow.cpp:825
 msgid ""
 "\n"
 "Nr of unsolved conflicts: "
 msgstr ""
 
-#: mergeresultwindow.cpp:814
+#: mergeresultwindow.cpp:827
 msgid "Conflicts"
 msgstr ""
 
-#: mergeresultwindow.cpp:1650
+#: mergeresultwindow.cpp:1691
 msgid "<No src line>"
 msgstr ""
 
-#: mergeresultwindow.cpp:1658
+#: mergeresultwindow.cpp:1699
 msgid "<Merge Conflict (Whitespace only)>"
 msgstr ""
 
-#: mergeresultwindow.cpp:1660 mergeresultwindow.cpp:2446
+#: mergeresultwindow.cpp:1701 mergeresultwindow.cpp:2469
 msgid "<Merge Conflict>"
 msgstr ""
 
-#: mergeresultwindow.cpp:1730
-msgid "Output"
-msgstr ""
-
-#: mergeresultwindow.cpp:1732
-msgid "[Modified]"
-msgstr ""
-
-#: mergeresultwindow.cpp:2656
+#: mergeresultwindow.cpp:2677
 msgid ""
 "Not all conflicts are solved yet.\n"
 "File not saved.\n"
 msgstr ""
 
-#: mergeresultwindow.cpp:2658
+#: mergeresultwindow.cpp:2679
 msgid "Conflicts Left"
 msgstr ""
 
-#: mergeresultwindow.cpp:2670
+#: mergeresultwindow.cpp:2691
 msgid ""
 "\n"
 "\n"
 "Creating backup failed. File not saved."
 msgstr ""
 
-#: mergeresultwindow.cpp:2670 mergeresultwindow.cpp:2710
+#: mergeresultwindow.cpp:2691 mergeresultwindow.cpp:2730
 msgid "File Save Error"
 msgstr ""
 
-#: mergeresultwindow.cpp:2710
+#: mergeresultwindow.cpp:2730
 msgid "Error while writing."
 msgstr ""
 
-#: optiondialog.cpp:361
-msgid "Unicode, 8 bit"
+#: mergeresultwindow.cpp:3061
+msgid "Output"
+msgstr ""
+
+#: mergeresultwindow.cpp:3073 mergeresultwindow.cpp:3180
+msgid "[Modified]"
+msgstr ""
+
+#: mergeresultwindow.cpp:3080
+msgid "Encoding for saving"
+msgstr ""
+
+#: mergeresultwindow.cpp:3116 mergeresultwindow.cpp:3122
+#: mergeresultwindow.cpp:3128
+msgid "Codec from"
 msgstr ""
 
 #: optiondialog.cpp:362
-msgid "Unicode"
+msgid "Unicode, 8 bit"
 msgstr ""
 
 #: optiondialog.cpp:363
+msgid "Unicode"
+msgstr ""
+
+#: optiondialog.cpp:364
 msgid "Latin1"
 msgstr ""
 
-#: optiondialog.cpp:382
+#: optiondialog.cpp:383
 msgid "Change this if non-ASCII characters are not displayed correctly."
 msgstr ""
 
-#: optiondialog.cpp:507
+#: optiondialog.cpp:455
+msgid "Configure"
+msgstr ""
+
+#: optiondialog.cpp:510
+msgid "Font"
+msgstr ""
+
+#: optiondialog.cpp:510
 msgid "Editor & Diff Output Font"
 msgstr ""
 
-#: optiondialog.cpp:528
+#: optiondialog.cpp:531
 msgid "Italic font for deltas"
 msgstr ""
 
-#: optiondialog.cpp:531
+#: optiondialog.cpp:534
 msgid ""
 "Selects the italic version of the font for differences.\n"
 "If the font doesn't support italic characters, then this does nothing."
 msgstr ""
 
-#: optiondialog.cpp:539
+#: optiondialog.cpp:542
 msgid "Color"
 msgstr ""
 
-#: optiondialog.cpp:539
+#: optiondialog.cpp:542
 msgid "Colors Settings"
 msgstr ""
 
-#: optiondialog.cpp:553
+#: optiondialog.cpp:556
 msgid "Editor and Diff Views:"
 msgstr ""
 
-#: optiondialog.cpp:561
+#: optiondialog.cpp:564
 msgid "Foreground color:"
 msgstr ""
 
-#: optiondialog.cpp:567
+#: optiondialog.cpp:570
 msgid "Background color:"
 msgstr ""
 
-#: optiondialog.cpp:575
+#: optiondialog.cpp:578
 msgid "Diff background color:"
 msgstr ""
 
-#: optiondialog.cpp:582
+#: optiondialog.cpp:585
 msgid "Color A:"
 msgstr ""
 
-#: optiondialog.cpp:589
+#: optiondialog.cpp:592
 msgid "Color B:"
 msgstr ""
 
-#: optiondialog.cpp:596
+#: optiondialog.cpp:599
 msgid "Color C:"
 msgstr ""
 
-#: optiondialog.cpp:602
+#: optiondialog.cpp:605
 msgid "Conflict color:"
 msgstr ""
 
-#: optiondialog.cpp:609
+#: optiondialog.cpp:612
 msgid "Current range background color:"
 msgstr ""
 
-#: optiondialog.cpp:616
+#: optiondialog.cpp:619
 msgid "Current range diff background color:"
 msgstr ""
 
-#: optiondialog.cpp:622
+#: optiondialog.cpp:625
 msgid "Color for manually aligned difference ranges:"
 msgstr ""
 
-#: optiondialog.cpp:627
+#: optiondialog.cpp:630
 msgid "Directory Comparison View:"
 msgstr ""
 
-#: optiondialog.cpp:633
+#: optiondialog.cpp:636
 msgid "Newest file color:"
 msgstr ""
 
-#: optiondialog.cpp:636
+#: optiondialog.cpp:639
 msgid ""
 "Changing this color will only be effective when starting the next directory "
 "comparison."
 msgstr ""
 
-#: optiondialog.cpp:641
+#: optiondialog.cpp:644
 msgid "Oldest file color:"
 msgstr ""
 
-#: optiondialog.cpp:648
+#: optiondialog.cpp:651
 msgid "Middle age file color:"
 msgstr ""
 
-#: optiondialog.cpp:655
+#: optiondialog.cpp:658
 msgid "Color for missing files:"
 msgstr ""
 
-#: optiondialog.cpp:667
+#: optiondialog.cpp:670
 msgid "Editor"
 msgstr ""
 
-#: optiondialog.cpp:667
+#: optiondialog.cpp:670
 msgid "Editor Behavior"
 msgstr ""
 
-#: optiondialog.cpp:677
+#: optiondialog.cpp:680
 msgid "Tab inserts spaces"
 msgstr ""
 
-#: optiondialog.cpp:680
+#: optiondialog.cpp:683
 msgid ""
 "On: Pressing tab generates the appropriate number of spaces.\n"
 "Off: A Tab-character will be inserted."
 msgstr ""
 
-#: optiondialog.cpp:686
+#: optiondialog.cpp:689
 msgid "Tab size:"
 msgstr ""
 
-#: optiondialog.cpp:691
+#: optiondialog.cpp:694
 msgid "Auto indentation"
 msgstr ""
 
-#: optiondialog.cpp:694
+#: optiondialog.cpp:697
 msgid "On: The indentation of the previous line is used for a new line.\n"
 msgstr ""
 
-#: optiondialog.cpp:698
+#: optiondialog.cpp:701
 msgid "Auto copy selection"
 msgstr ""
 
-#: optiondialog.cpp:701
+#: optiondialog.cpp:704
 msgid ""
 "On: Any selection is immediately written to the clipboard.\n"
 "Off: You must explicitely copy e.g. via Ctrl-C."
 msgstr ""
 
-#: optiondialog.cpp:706
+#: optiondialog.cpp:709
 msgid "Line end style:"
 msgstr ""
 
-#: optiondialog.cpp:718
+#: optiondialog.cpp:721
 msgid ""
 "Sets the line endings for when an edited file is saved.\n"
 "DOS/Windows: CR+LF; UNIX: LF; with CR=0D, LF=0A"
 msgstr ""
 
-#: optiondialog.cpp:729
-msgid "Diff and Merge"
-msgstr ""
-
-#: optiondialog.cpp:729
-msgid "Diff and Merge Settings"
+#: optiondialog.cpp:732
+msgid "Diff"
 msgstr ""
 
-#: optiondialog.cpp:740
-msgid "Preserve carriage return"
+#: optiondialog.cpp:732
+msgid "Diff Settings"
 msgstr ""
 
-#: optiondialog.cpp:743
-msgid ""
-"Show carriage return characters '\\r' if they exist.\n"
-"Helps to compare files that were modified under different operating systems."
+#: optiondialog.cpp:750
+msgid "Treat as white space."
 msgstr ""
 
-#: optiondialog.cpp:748
+#: optiondialog.cpp:752
 msgid "Ignore numbers"
 msgstr ""
 
-#: optiondialog.cpp:751
+#: optiondialog.cpp:755
 msgid ""
 "Ignore number characters during line matching phase. (Similar to Ignore "
 "white space.)\n"
 "Might help to compare files with numeric data."
 msgstr ""
 
-#: optiondialog.cpp:756
+#: optiondialog.cpp:760
 msgid "Ignore C/C++ comments"
 msgstr ""
 
-#: optiondialog.cpp:758
+#: optiondialog.cpp:762
 msgid "Treat C/C++ comments like white space."
 msgstr ""
 
-#: optiondialog.cpp:762
+#: optiondialog.cpp:766
 msgid "Ignore case"
 msgstr ""
 
-#: optiondialog.cpp:765
+#: optiondialog.cpp:769
 msgid "Treat case differences like white space changes. ('a'<=>'A')"
 msgstr ""
 
-#: optiondialog.cpp:769
+#: optiondialog.cpp:773
 msgid "Preprocessor command:"
 msgstr ""
 
-#: optiondialog.cpp:773
+#: optiondialog.cpp:777
 msgid "User defined pre-processing. (See the docs for details.)"
 msgstr ""
 
-#: optiondialog.cpp:776
+#: optiondialog.cpp:780
 msgid "Line-matching preprocessor command:"
 msgstr ""
 
-#: optiondialog.cpp:780
+#: optiondialog.cpp:784
 msgid ""
 "This pre-processor is only used during line matching.\n"
 "(See the docs for details.)"
 msgstr ""
 
-#: optiondialog.cpp:783
+#: optiondialog.cpp:787
 msgid "Try hard (slower)"
 msgstr ""
 
-#: optiondialog.cpp:786
+#: optiondialog.cpp:790
 msgid ""
 "Enables the --minimal option for the external diff.\n"
 "The analysis of big files will be much slower."
 msgstr ""
 
-#: optiondialog.cpp:791
+#: optiondialog.cpp:800
+msgid "Merge Settings"
+msgstr ""
+
+#: optiondialog.cpp:813
 msgid "Auto advance delay (ms):"
 msgstr ""
 
-#: optiondialog.cpp:796
+#: optiondialog.cpp:818
 msgid ""
 "When in Auto-Advance mode the result of the current selection is shown \n"
 "for the specified time, before jumping to the next conflict. Range: 0-2000 ms"
 msgstr ""
 
-#: optiondialog.cpp:801
+#: optiondialog.cpp:823
 msgid "White space 2-file merge default:"
 msgstr ""
 
-#: optiondialog.cpp:805 optiondialog.cpp:818
+#: optiondialog.cpp:827 optiondialog.cpp:840
 msgid "Manual Choice"
 msgstr ""
 
-#: optiondialog.cpp:809 optiondialog.cpp:823
+#: optiondialog.cpp:831 optiondialog.cpp:845
 msgid ""
-"Allow the merge algorithm to automatically select an input for white-space-"
-"only changes."
+"Allow the merge algorithm to automatically select an input for "
+"white-space-only changes."
 msgstr ""
 
-#: optiondialog.cpp:814
+#: optiondialog.cpp:836
 msgid "White space 3-file merge default:"
 msgstr ""
 
-#: optiondialog.cpp:828
+#: optiondialog.cpp:850
 msgid "Automatic Merge Regular Expression"
 msgstr ""
 
-#: optiondialog.cpp:837 smalldialogs.cpp:379
+#: optiondialog.cpp:859 smalldialogs.cpp:397
 msgid "Auto merge regular expression:"
 msgstr ""
 
-#: optiondialog.cpp:841
+#: optiondialog.cpp:863
 msgid ""
 "Regular expression for lines where KDiff3 should automatically choose one "
 "source.\n"
@@ -1564,36 +1606,36 @@ msgid ""
 "- if available - C, otherwise B will be chosen."
 msgstr ""
 
-#: optiondialog.cpp:847
+#: optiondialog.cpp:869
 msgid "Run regular expression auto merge on merge start"
 msgstr ""
 
-#: optiondialog.cpp:849
+#: optiondialog.cpp:871
 msgid ""
 "Run the merge for auto merge regular expressions\n"
 "immediately when a merge starts.\n"
 msgstr ""
 
-#: optiondialog.cpp:854
+#: optiondialog.cpp:876
 msgid "Version Control History Merging"
 msgstr ""
 
-#: optiondialog.cpp:863 smalldialogs.cpp:406
+#: optiondialog.cpp:885 smalldialogs.cpp:424
 msgid "History start regular expression:"
 msgstr ""
 
-#: optiondialog.cpp:867
+#: optiondialog.cpp:889
 msgid ""
 "Regular expression for the start of the version control history entry.\n"
 "Usually this line contains the \"$Log$\"-keyword.\n"
 "Default value: \".*\\$Log.*\\$.*\""
 msgstr ""
 
-#: optiondialog.cpp:873 smalldialogs.cpp:435
+#: optiondialog.cpp:895 smalldialogs.cpp:453
 msgid "History entry start regular expression:"
 msgstr ""
 
-#: optiondialog.cpp:885
+#: optiondialog.cpp:907
 msgid ""
 "A version control history entry consists of several lines.\n"
 "Specify the regular expression to detect the first line (without the leading "
@@ -1604,19 +1646,19 @@ msgid ""
 "See the documentation for details."
 msgstr ""
 
-#: optiondialog.cpp:893
+#: optiondialog.cpp:915
 msgid "History merge sorting"
 msgstr ""
 
-#: optiondialog.cpp:895
+#: optiondialog.cpp:917
 msgid "Sort version control history by a key."
 msgstr ""
 
-#: optiondialog.cpp:905
+#: optiondialog.cpp:927
 msgid "History entry start sort key order:"
 msgstr ""
 
-#: optiondialog.cpp:909
+#: optiondialog.cpp:931
 msgid ""
 "Each parentheses used in the regular expression for the history start entry\n"
 "groups a key that can be used for sorting.\n"
@@ -1626,121 +1668,141 @@ msgid ""
 "See the documentation for details."
 msgstr ""
 
-#: optiondialog.cpp:920
+#: optiondialog.cpp:942
 msgid "Merge version control history on merge start"
 msgstr ""
 
-#: optiondialog.cpp:922
+#: optiondialog.cpp:944
 msgid "Run version control history automerge on merge start."
 msgstr ""
 
-#: optiondialog.cpp:926
+#: optiondialog.cpp:948
+msgid "Max number of history entries:"
+msgstr ""
+
+#: optiondialog.cpp:951
+msgid "Cut off after specified number. Use -1 for infinite number of entries."
+msgstr ""
+
+#: optiondialog.cpp:955
 msgid "Test your regular expressions"
 msgstr ""
 
-#: optiondialog.cpp:931
+#: optiondialog.cpp:960
 msgid "Irrelevant merge command:"
 msgstr ""
 
-#: optiondialog.cpp:935
+#: optiondialog.cpp:964
 msgid ""
 "If specified this script is run after automerge\n"
 "when no other relevant changes were detected.\n"
 "Called with the parameters: filename1 filename2 filename3"
 msgstr ""
 
-#: optiondialog.cpp:945
+#: optiondialog.cpp:970
+msgid "Auto save and quit on merge without conflicts"
+msgstr ""
+
+#: optiondialog.cpp:973
+msgid ""
+"When KDiff3 was started for a file-merge from the commandline and all\n"
+"conflicts are solvable without user interaction then automatically save and "
+"quit.\n"
+"(Similar to command line option \"--auto\"."
+msgstr ""
+
+#: optiondialog.cpp:983
 msgid "Directory Merge"
 msgstr ""
 
-#: optiondialog.cpp:954
+#: optiondialog.cpp:992
 msgid "Recursive directories"
 msgstr ""
 
-#: optiondialog.cpp:956
+#: optiondialog.cpp:994
 msgid "Whether to analyze subdirectories or not."
 msgstr ""
 
-#: optiondialog.cpp:958
+#: optiondialog.cpp:996
 msgid "File pattern(s):"
 msgstr ""
 
-#: optiondialog.cpp:963
+#: optiondialog.cpp:1001
 msgid ""
 "Pattern(s) of files to be analyzed. \n"
 "Wildcards: '*' and '?'\n"
 "Several Patterns can be specified by using the separator: ';'"
 msgstr ""
 
-#: optiondialog.cpp:969
+#: optiondialog.cpp:1007
 msgid "File-anti-pattern(s):"
 msgstr ""
 
-#: optiondialog.cpp:974
+#: optiondialog.cpp:1012
 msgid ""
 "Pattern(s) of files to be excluded from analysis. \n"
 "Wildcards: '*' and '?'\n"
 "Several Patterns can be specified by using the separator: ';'"
 msgstr ""
 
-#: optiondialog.cpp:980
+#: optiondialog.cpp:1018
 msgid "Dir-anti-pattern(s):"
 msgstr ""
 
-#: optiondialog.cpp:985
+#: optiondialog.cpp:1023
 msgid ""
 "Pattern(s) of directories to be excluded from analysis. \n"
 "Wildcards: '*' and '?'\n"
 "Several Patterns can be specified by using the separator: ';'"
 msgstr ""
 
-#: optiondialog.cpp:991
+#: optiondialog.cpp:1029
 msgid "Use .cvsignore"
 msgstr ""
 
-#: optiondialog.cpp:994
+#: optiondialog.cpp:1032
 msgid ""
 "Extends the antipattern to anything that would be ignored by CVS.\n"
 "Via local \".cvsignore\"-files this can be directory specific."
 msgstr ""
 
-#: optiondialog.cpp:999
+#: optiondialog.cpp:1037
 msgid "Find hidden files and directories"
 msgstr ""
 
-#: optiondialog.cpp:1002
+#: optiondialog.cpp:1040
 msgid "Finds files and directories with the hidden attribute."
 msgstr ""
 
-#: optiondialog.cpp:1004
+#: optiondialog.cpp:1042
 msgid "Finds files and directories starting with '.'."
 msgstr ""
 
-#: optiondialog.cpp:1008
+#: optiondialog.cpp:1046
 msgid "Follow file links"
 msgstr ""
 
-#: optiondialog.cpp:1011
+#: optiondialog.cpp:1049
 msgid ""
 "On: Compare the file the link points to.\n"
 "Off: Compare the links."
 msgstr ""
 
-#: optiondialog.cpp:1016
+#: optiondialog.cpp:1054
 msgid "Follow directory links"
 msgstr ""
 
-#: optiondialog.cpp:1019
+#: optiondialog.cpp:1057
 msgid ""
 "On: Compare the directory the link points to.\n"
 "Off: Compare the links."
 msgstr ""
 
-#: optiondialog.cpp:1035
+#: optiondialog.cpp:1073
 msgid "Case sensitive filename comparison"
 msgstr ""
 
-#: optiondialog.cpp:1038
+#: optiondialog.cpp:1076
 msgid ""
 "The directory comparison will compare files or directories when their names "
 "match.\n"
@@ -1748,163 +1810,203 @@ msgid ""
 "off, otherwise on.)"
 msgstr ""
 
-#: optiondialog.cpp:1042
+#: optiondialog.cpp:1080
 msgid "File Comparison Mode"
 msgstr ""
 
-#: optiondialog.cpp:1046
+#: optiondialog.cpp:1084
 msgid "Binary comparison"
 msgstr ""
 
-#: optiondialog.cpp:1047
+#: optiondialog.cpp:1085
 msgid "Binary comparison of each file. (Default)"
 msgstr ""
 
-#: optiondialog.cpp:1049
+#: optiondialog.cpp:1087
 msgid "Full analysis"
 msgstr ""
 
-#: optiondialog.cpp:1050
+#: optiondialog.cpp:1088
 msgid ""
 "Do a full analysis and show statistics information in extra columns.\n"
 "(Slower than a binary comparison, much slower for binary files.)"
 msgstr ""
 
-#: optiondialog.cpp:1053
-msgid "Trust the modification date (unsafe)"
+#: optiondialog.cpp:1091
+msgid "Trust the size and modification date (unsafe)"
 msgstr ""
 
-#: optiondialog.cpp:1054
+#: optiondialog.cpp:1092
 msgid ""
 "Assume that files are equal if the modification date and file length are "
 "equal.\n"
+"Files with equal contents but different modification dates will appear as "
+"different.\n"
 "Useful for big directories or slow networks."
 msgstr ""
 
-#: optiondialog.cpp:1057
+#: optiondialog.cpp:1096
+msgid ""
+"Trust the size and date, but use binary comparison if date doesn't match "
+"(unsafe)"
+msgstr ""
+
+#: optiondialog.cpp:1097
+msgid ""
+"Assume that files are equal if the modification date and file length are "
+"equal.\n"
+"If the date isn't equal but the sizes are, use binary comparison.\n"
+"Useful for big directories or slow networks."
+msgstr ""
+
+#: optiondialog.cpp:1101
 msgid "Trust the size (unsafe)"
 msgstr ""
 
-#: optiondialog.cpp:1058
+#: optiondialog.cpp:1102
 msgid ""
 "Assume that files are equal if their file lengths are equal.\n"
 "Useful for big directories or slow networks when the date is modified during "
 "download."
 msgstr ""
 
-#: optiondialog.cpp:1062
+#: optiondialog.cpp:1106
 msgid "Synchronize directories"
 msgstr ""
 
-#: optiondialog.cpp:1065
+#: optiondialog.cpp:1109
 msgid ""
 "Offers to store files in both directories so that\n"
 "both directories are the same afterwards.\n"
 "Works only when comparing two directories without specifying a destination."
 msgstr ""
 
-#: optiondialog.cpp:1071
+#: optiondialog.cpp:1115
 msgid "White space differences considered equal"
 msgstr ""
 
-#: optiondialog.cpp:1074
+#: optiondialog.cpp:1118
 msgid ""
 "If files differ only by white space consider them equal.\n"
 "This is only active when full analysis is chosen."
 msgstr ""
 
-#: optiondialog.cpp:1080
+#: optiondialog.cpp:1124
 msgid "Copy newer instead of merging (unsafe)"
 msgstr ""
 
-#: optiondialog.cpp:1083
+#: optiondialog.cpp:1127
 msgid ""
 "Don't look inside, just take the newer file.\n"
 "(Use this only if you know what you are doing!)\n"
 "Only effective when comparing two directories."
 msgstr ""
 
-#: optiondialog.cpp:1088
+#: optiondialog.cpp:1132
 msgid "Backup files (.orig)"
 msgstr ""
 
-#: optiondialog.cpp:1091
+#: optiondialog.cpp:1135
 msgid ""
 "When a file would be saved over an old file, then the old file\n"
 "will be renamed with a '.orig'-extension instead of being deleted."
 msgstr ""
 
-#: optiondialog.cpp:1118
+#: optiondialog.cpp:1213
 msgid "Regional Settings"
 msgstr ""
 
-#: optiondialog.cpp:1214
+#: optiondialog.cpp:1309
 msgid "Language (restart required)"
 msgstr ""
 
-#: optiondialog.cpp:1246
+#: optiondialog.cpp:1341
 msgid ""
 "Choose the language of the GUI-strings or \"Auto\".\n"
 "For a change of language to take place, quit and restart KDiff3."
 msgstr ""
 
-#: optiondialog.cpp:1264
+#: optiondialog.cpp:1359
 msgid "Use the same encoding for everything:"
 msgstr ""
 
-#: optiondialog.cpp:1267
+#: optiondialog.cpp:1362
 msgid ""
 "Enable this allows to change all encodings by changing the first only.\n"
 "Disable this if different individual settings are needed."
 msgstr ""
 
-#: optiondialog.cpp:1272
+#: optiondialog.cpp:1367
 msgid "Note: Local Encoding is "
 msgstr ""
 
-#: optiondialog.cpp:1276
+#: optiondialog.cpp:1371
 msgid "File Encoding for A:"
 msgstr ""
 
-#: optiondialog.cpp:1281
+#: optiondialog.cpp:1377
+msgid ""
+"If enabled then Unicode (UTF-16 or UTF-8) encoding will be detected.\n"
+"If the file encoding is not detected then the selected encoding will be used "
+"as fallback.\n"
+"(Unicode detection depends on the first bytes of a file - the byte order "
+"mark \"BOM\".)"
+msgstr ""
+
+#: optiondialog.cpp:1381 optiondialog.cpp:1390 optiondialog.cpp:1399
+msgid "Auto Detect Unicode"
+msgstr ""
+
+#: optiondialog.cpp:1386
 msgid "File Encoding for B:"
 msgstr ""
 
-#: optiondialog.cpp:1286
+#: optiondialog.cpp:1395
 msgid "File Encoding for C:"
 msgstr ""
 
-#: optiondialog.cpp:1291
+#: optiondialog.cpp:1404
 msgid "File Encoding for Merge Output and Saving:"
 msgstr ""
 
-#: optiondialog.cpp:1296
+#: optiondialog.cpp:1408
+msgid "Auto Select"
+msgstr ""
+
+#: optiondialog.cpp:1411
+msgid ""
+"If enabled then the encoding from the input files is used.\n"
+"In ambiguous cases a dialog will ask the user to choose the encoding for "
+"saving."
+msgstr ""
+
+#: optiondialog.cpp:1415
 msgid "File Encoding for Preprocessor Files:"
 msgstr ""
 
-#: optiondialog.cpp:1305
+#: optiondialog.cpp:1426
 msgid "Right To Left Language"
 msgstr ""
 
-#: optiondialog.cpp:1308
+#: optiondialog.cpp:1429
 msgid ""
 "Some languages are read from right to left.\n"
 "This setting will change the viewer and editor accordingly."
 msgstr ""
 
-#: optiondialog.cpp:1318
+#: optiondialog.cpp:1443
 msgid "Integration"
 msgstr ""
 
-#: optiondialog.cpp:1318
+#: optiondialog.cpp:1443
 msgid "Integration Settings"
 msgstr ""
 
-#: optiondialog.cpp:1328
+#: optiondialog.cpp:1453
 msgid "Command line options to ignore:"
 msgstr ""
 
-#: optiondialog.cpp:1333
+#: optiondialog.cpp:1458
 msgid ""
 "List of command line options that should be ignored when KDiff3 is used by "
 "other tools.\n"
@@ -1912,7 +2014,27 @@ msgid ""
 "This will suppress the \"Unknown option\"-error."
 msgstr ""
 
-#: optiondialog.cpp:1386
+#: optiondialog.cpp:1465
+msgid "Integrate with ClearCase"
+msgstr ""
+
+#: optiondialog.cpp:1468
+msgid ""
+"Integrate with Rational ClearCase from IBM.\n"
+"Modifies the \"map\" file in ClearCase-subdir \"lib/mgrs\"\n"
+"(Only enabled when ClearCase \"bin\" directory is in the path.)"
+msgstr ""
+
+#: optiondialog.cpp:1474
+msgid "Remove ClearCase Integration"
+msgstr ""
+
+#: optiondialog.cpp:1477
+msgid ""
+"Restore the old \"map\" file from before doing the Clearcase integration."
+msgstr ""
+
+#: optiondialog.cpp:1558
 msgid ""
 "You selected a variable width font.\n"
 "\n"
@@ -1922,19 +2044,19 @@ msgid ""
 "Do you want to continue or do you want to select another font."
 msgstr ""
 
-#: optiondialog.cpp:1390
+#: optiondialog.cpp:1562
 msgid "Incompatible Font"
 msgstr ""
 
-#: optiondialog.cpp:1391
+#: optiondialog.cpp:1563
 msgid "Continue at Own Risk"
 msgstr ""
 
-#: optiondialog.cpp:1391
+#: optiondialog.cpp:1563
 msgid "Select Another Font"
 msgstr ""
 
-#: optiondialog.cpp:1416
+#: optiondialog.cpp:1599
 msgid "This resets all options. Not only those of the current topic."
 msgstr ""
 
@@ -2001,127 +2123,69 @@ msgstr ""
 msgid "Linediff: A <-> C"
 msgstr ""
 
-#: pdiff.cpp:509
+#: pdiff.cpp:513
 msgid "All input files contain the same text, but are not binary equal."
 msgstr ""
 
-#: pdiff.cpp:511 pdiff.cpp:513 pdiff.cpp:515
-msgid "Files %1 and %2 are binary equal.\n"
-msgstr ""
-
-#: pdiff.cpp:512 pdiff.cpp:514 pdiff.cpp:516
+#: pdiff.cpp:516 pdiff.cpp:518 pdiff.cpp:520
 msgid "Files %1 and %2 have equal text, but are not binary equal. \n"
 msgstr ""
 
-#: pdiff.cpp:526
+#: pdiff.cpp:530
 msgid ""
 "Some inputfiles don't seem to be pure textfiles.\n"
 "Note that the KDiff3-merge was not meant for binary data.\n"
 "Continue at your own risk."
 msgstr ""
 
-#: pdiff.cpp:965
+#: pdiff.cpp:981
 msgid "Abort"
 msgstr ""
 
-#: pdiff.cpp:971 pdiff.cpp:1059
+#: pdiff.cpp:987 pdiff.cpp:1084
 msgid "Opening files..."
 msgstr ""
 
-#: pdiff.cpp:1036 pdiff.cpp:1107
+#: pdiff.cpp:1061 pdiff.cpp:1132
 msgid "File open error"
 msgstr ""
 
-#: pdiff.cpp:1139
+#: pdiff.cpp:1164
 msgid "Cutting selection..."
 msgstr ""
 
-#: pdiff.cpp:1160
+#: pdiff.cpp:1185
 msgid "Copying selection to clipboard..."
 msgstr ""
 
-#: pdiff.cpp:1176
+#: pdiff.cpp:1201
 msgid "Inserting clipboard contents..."
 msgstr ""
 
-#: pdiff.cpp:1699
+#: pdiff.cpp:1724
 msgid "Save && Continue"
 msgstr ""
 
-#: pdiff.cpp:1699
+#: pdiff.cpp:1724
 msgid "Continue Without Saving"
 msgstr ""
 
-#: pdiff.cpp:1906
+#: pdiff.cpp:1931
 msgid "Search complete."
 msgstr ""
 
-#: pdiff.cpp:1906
+#: pdiff.cpp:1931
 msgid "Search Complete"
 msgstr ""
 
-#: pdiff.cpp:2130
+#: pdiff.cpp:2155
 msgid "Nothing is selected in either diff input window."
 msgstr ""
 
-#: pdiff.cpp:2130
+#: pdiff.cpp:2155
 msgid "Error while adding manual diff range"
 msgstr ""
 
-#. i18n: file kdiff3_part.rc line 4
-#: rc.cpp:3
-#, no-c-format
-msgid "&KDiff3"
-msgstr ""
-
-#. i18n: file kdiff3_part.rc line 13
-#: rc.cpp:6
-#, no-c-format
-msgid "Configure KDiff3"
-msgstr ""
-
-#. i18n: file kdiff3_shell.rc line 7
-#: rc.cpp:15
-#, no-c-format
-msgid "&Directory"
-msgstr ""
-
-#. i18n: file kdiff3_shell.rc line 30
-#: rc.cpp:18
-#, no-c-format
-msgid "Current Item Merge Operation"
-msgstr ""
-
-#. i18n: file kdiff3_shell.rc line 38
-#: rc.cpp:21
-#, no-c-format
-msgid "Current Item Sync Operation"
-msgstr ""
-
-#. i18n: file kdiff3_shell.rc line 50
-#: rc.cpp:24
-#, no-c-format
-msgid "&Movement"
-msgstr ""
-
-#. i18n: file kdiff3_shell.rc line 61
-#: rc.cpp:27
-#, no-c-format
-msgid "D&iffview"
-msgstr ""
-
-#. i18n: file kdiff3_shell.rc line 73
-#: rc.cpp:30
-#, no-c-format
-msgid "&Merge"
-msgstr ""
-
-#. i18n: file kdiff3_shell.rc line 95
-#: rc.cpp:33
-#, no-c-format
-msgid "&Window"
-msgstr ""
-
 #: smalldialogs.cpp:53
 msgid "A (Base):"
 msgstr ""
@@ -2164,86 +2228,153 @@ msgstr ""
 msgid "Configure..."
 msgstr ""
 
-#: smalldialogs.cpp:329
+#: smalldialogs.cpp:164
+msgid "&OK"
+msgstr ""
+
+#: smalldialogs.cpp:347
 msgid "Search text:"
 msgstr ""
 
-#: smalldialogs.cpp:336
+#: smalldialogs.cpp:354
 msgid "Case sensitive"
 msgstr ""
 
-#: smalldialogs.cpp:339
+#: smalldialogs.cpp:357
 msgid "Search A"
 msgstr ""
 
-#: smalldialogs.cpp:344
+#: smalldialogs.cpp:362
 msgid "Search B"
 msgstr ""
 
-#: smalldialogs.cpp:349
+#: smalldialogs.cpp:367
 msgid "Search C"
 msgstr ""
 
-#: smalldialogs.cpp:354
+#: smalldialogs.cpp:372
 msgid "Search output"
 msgstr ""
 
-#: smalldialogs.cpp:359
+#: smalldialogs.cpp:377
 msgid "&Search"
 msgstr ""
 
-#: smalldialogs.cpp:376
+#: smalldialogs.cpp:394
 msgid "Regular Expression Tester"
 msgstr ""
 
-#: smalldialogs.cpp:387
+#: smalldialogs.cpp:405
 msgid "Example auto merge line:"
 msgstr ""
 
-#: smalldialogs.cpp:389
+#: smalldialogs.cpp:407
 msgid "For auto merge test copy a line as used in your files."
 msgstr ""
 
-#: smalldialogs.cpp:395 smalldialogs.cpp:424 smalldialogs.cpp:461
+#: smalldialogs.cpp:413 smalldialogs.cpp:442 smalldialogs.cpp:479
 msgid "Match result:"
 msgstr ""
 
-#: smalldialogs.cpp:414
+#: smalldialogs.cpp:432
 msgid "Example history start line (with leading comment):"
 msgstr ""
 
-#: smalldialogs.cpp:417
+#: smalldialogs.cpp:435
 msgid ""
 "Copy a history start line as used in your files,\n"
 "including the leading comment."
 msgstr ""
 
-#: smalldialogs.cpp:443
+#: smalldialogs.cpp:461
 msgid "History sort key order:"
 msgstr ""
 
-#: smalldialogs.cpp:451
+#: smalldialogs.cpp:469
 msgid "Example history entry start line (without leading comment):"
 msgstr ""
 
-#: smalldialogs.cpp:453
+#: smalldialogs.cpp:471
 msgid ""
 "Copy a history entry start line as used in your files,\n"
 "but omit the leading comment."
 msgstr ""
 
-#: smalldialogs.cpp:468
+#: smalldialogs.cpp:486
 msgid "Sort key result:"
 msgstr ""
 
-#: smalldialogs.cpp:519 smalldialogs.cpp:529 smalldialogs.cpp:550
+#: smalldialogs.cpp:493
+msgid "OK"
+msgstr ""
+
+#: smalldialogs.cpp:497
+msgid "Cancel"
+msgstr ""
+
+#: smalldialogs.cpp:537 smalldialogs.cpp:547 smalldialogs.cpp:568
 msgid "Match success."
 msgstr ""
 
-#: smalldialogs.cpp:523 smalldialogs.cpp:533 smalldialogs.cpp:556
+#: smalldialogs.cpp:541 smalldialogs.cpp:551 smalldialogs.cpp:574
 msgid "Match failed."
 msgstr ""
 
-#: smalldialogs.cpp:541
+#: smalldialogs.cpp:559
 msgid "Opening and closing parentheses don't match in regular expression."
 msgstr ""
+
+#: kdiff3_part.rc:4
+#, no-c-format
+msgid "&KDiff3"
+msgstr ""
+
+#: kdiff3_part.rc:13
+#, no-c-format
+msgid "Configure KDiff3"
+msgstr ""
+
+#: kdiff3_shell.rc:4
+#, no-c-format
+msgid "&File"
+msgstr ""
+
+#: kdiff3_shell.rc:7
+#, no-c-format
+msgid "&Directory"
+msgstr ""
+
+#: kdiff3_shell.rc:30
+#, no-c-format
+msgid "Current Item Merge Operation"
+msgstr ""
+
+#: kdiff3_shell.rc:38
+#, no-c-format
+msgid "Current Item Sync Operation"
+msgstr ""
+
+#: kdiff3_shell.rc:50
+#, no-c-format
+msgid "&Movement"
+msgstr ""
+
+#: kdiff3_shell.rc:61
+#, no-c-format
+msgid "D&iffview"
+msgstr ""
+
+#: kdiff3_shell.rc:73
+#, no-c-format
+msgid "&Merge"
+msgstr ""
+
+#: kdiff3_shell.rc:95
+#, no-c-format
+msgid "&Window"
+msgstr ""
+
+#: kdiff3_shell.rc:106
+#, no-c-format
+msgid "Main Toolbar"
+msgstr ""
diff --git a/src/CMakeL10n.txt b/src/CMakeL10n.txt
new file mode 100644
index 0000000..57ddd42
--- /dev/null
+++ b/src/CMakeL10n.txt
@@ -0,0 +1,6 @@
+##### create translation templates ##############
+
+tde_l10n_create_template(
+    CATALOG "kdiff3"
+    EXCLUDES "^kreplacements/"
+)
diff --git a/src/smalldialogs.cpp b/src/smalldialogs.cpp
index da75242..b27aed5 100644
--- a/src/smalldialogs.cpp
+++ b/src/smalldialogs.cpp
@@ -557,7 +557,7 @@ void RegExpTester::slotRecalc()
    if ( ! bSuccess )
    {
       m_pHistoryEntryStartMatchResult->setText( i18n("Opening and closing parentheses don't match in regular expression.") );
-      m_pHistorySortKeyResult->setText( i18n("") );
+      m_pHistorySortKeyResult->setText( "" );
       return;
    }
    TQRegExp historyEntryStartRegExp = m_pHistoryEntryStartRegExpEdit->text();
@@ -572,7 +572,7 @@ void RegExpTester::slotRecalc()
    else
    {
       m_pHistoryEntryStartMatchResult->setText( i18n("Match failed.") );
-      m_pHistorySortKeyResult->setText( i18n("") );
+      m_pHistorySortKeyResult->setText( "" );
    }
 }
 
-- 
cgit v1.2.1