[jsword-svn] r1997 - in trunk/bibledesktop: .settings etc/eclipse src/main/java/org/crosswire/bibledesktop/book src/main/java/org/crosswire/bibledesktop/book/install src/main/java/org/crosswire/bibledesktop/desktop src/main/java/org/crosswire/bibledesktop/display src/main/java/org/crosswire/bibledesktop/display/basic src/main/java/org/crosswire/bibledesktop/passage src/main/java/org/crosswire/bibledesktop/util src/main/resources

dmsmith at crosswire.org dmsmith at crosswire.org
Sat Oct 23 13:53:47 MST 2010


Author: dmsmith
Date: 2010-10-23 13:53:47 -0700 (Sat, 23 Oct 2010)
New Revision: 1997

Modified:
   trunk/bibledesktop/.settings/org.eclipse.jdt.core.prefs
   trunk/bibledesktop/etc/eclipse/BD-app-jdk15.launch
   trunk/bibledesktop/etc/eclipse/BD-app-jdk16.launch
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_vi.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_zh.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_zh_CN.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BibleComboBoxModel.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BibleNameCellRenderer.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BibleViewPane.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BookListCellRenderer.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BooksListModel.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_vi.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_zh.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_zh_CN.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_vi.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh_CN.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/MultiBookPane.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/ParallelBookPicker.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_vi.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_zh.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_zh_CN.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookFont.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookIcon.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookTreeCellRenderer.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/EditSitePane.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/EditSitePane_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/IndexResolver.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/InternetWarning.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_zh.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_zh_CN.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_zh.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_zh_CN.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SwordSiteEditor.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/TextPaneBookMetaDataDisplay.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/AboutPane.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/DesktopActions.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_tr.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_vi.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_zh.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_zh_CN.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_vi.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_zh.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_zh_CN.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Splash.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/StatusBar.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/ViewSourcePane.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/XSLTProperty.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/BookDataDisplay.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_vi.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_zh.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_zh_CN.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/SplitBookDataDisplay.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/TabbedBookDataDisplay.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/TextPaneBookDataDisplay.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/URITipHelper.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_zh.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_zh_CN.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeyTreeCellRenderer.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_zh.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_zh_CN.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/WholeBibleTreeNode.java
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/util/ConfigurableSwingConverter.java
   trunk/bibledesktop/src/main/resources/config.properties
   trunk/bibledesktop/src/main/resources/config_de.properties
   trunk/bibledesktop/src/main/resources/config_fa.properties
   trunk/bibledesktop/src/main/resources/config_in.properties
   trunk/bibledesktop/src/main/resources/config_vi.properties
   trunk/bibledesktop/src/main/resources/config_zh.properties
   trunk/bibledesktop/src/main/resources/config_zh_CN.properties
   trunk/bibledesktop/src/main/resources/limboConfig.properties
Log:
remove NON-NLS comments
Start a new methodology for messages. Goal is a single file per jar for translation. It will take a while.

Modified: trunk/bibledesktop/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/bibledesktop/.settings/org.eclipse.jdt.core.prefs	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/.settings/org.eclipse.jdt.core.prefs	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,4 +1,4 @@
-#Thu Oct 29 08:52:55 EDT 2009
+#Mon Jan 25 14:04:36 EST 2010
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -27,12 +27,16 @@
 org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
 org.eclipse.jdt.core.compiler.problem.autoboxing=warning
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
 org.eclipse.jdt.core.compiler.problem.deprecation=warning
 org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
 org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
 org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
 org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
 org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
 org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
 org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
 org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
@@ -48,6 +52,7 @@
 org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
 org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
 org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
 org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
@@ -56,15 +61,18 @@
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
 org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
 org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
 org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
 org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
 org.eclipse.jdt.core.compiler.problem.nullReference=warning
 org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
 org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
 org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
 org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
 org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
 org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
 org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
 org.eclipse.jdt.core.compiler.problem.suppressWarnings=disabled
@@ -78,13 +86,18 @@
 org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
 org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
 org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
 org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
 org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
 org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
 org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
 org.eclipse.jdt.core.compiler.source=1.4
 org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled

Modified: trunk/bibledesktop/etc/eclipse/BD-app-jdk15.launch
===================================================================
--- trunk/bibledesktop/etc/eclipse/BD-app-jdk15.launch	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/etc/eclipse/BD-app-jdk15.launch	2010-10-23 20:53:47 UTC (rev 1997)
@@ -8,12 +8,12 @@
 </listAttribute>
 <booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
 <listAttribute key="org.eclipse.debug.ui.favoriteGroups">
+<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
 <listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
-<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
 </listAttribute>
 <stringAttribute key="org.eclipse.debug.ui.target_debug_perspective" value="perspective_default"/>
 <stringAttribute key="org.eclipse.debug.ui.target_run_perspective" value="perspective_default"/>
-<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JVM 1.5.0/"/>
+<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.6.0"/>
 <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.crosswire.bibledesktop.desktop.Desktop"/>
 <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="bibledesktop"/>
 <stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx512m -ea"/>

Modified: trunk/bibledesktop/etc/eclipse/BD-app-jdk16.launch
===================================================================
--- trunk/bibledesktop/etc/eclipse/BD-app-jdk16.launch	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/etc/eclipse/BD-app-jdk16.launch	2010-10-23 20:53:47 UTC (rev 1997)
@@ -13,7 +13,7 @@
 </listAttribute>
 <stringAttribute key="org.eclipse.debug.ui.target_debug_perspective" value="perspective_default"/>
 <stringAttribute key="org.eclipse.debug.ui.target_run_perspective" value="perspective_default"/>
-<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JVM 1.6.0 (MacOS X Default)/"/>
+<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jdk1.6.0"/>
 <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.crosswire.bibledesktop.desktop.Desktop"/>
 <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="bibledesktop"/>
 <stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xmx512m -ea"/>

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -78,7 +78,14 @@
      * This is the default constructor
      */
     public AdvancedSearchPane() {
-        presets = Msg.PRESETS.toString().split("\\|"); //$NON-NLS-1$
+        // TRANSLATOR: This pattern allows one to specify different, potentially overlapping divisions of the Bible.
+        // Each division is separated by a '|', which will not be shown to the user.
+        // If the division represents a part of the Bible, that part is shown after the division name.
+        // If it is not appropriate for the part to be shown in ( ), but rather some other pair of characters,
+        //    even the same character (other than '|') this can be done.
+        // The book names should be given as something that JSword can understand. Chapter and verse numbers should be 1-9 and not localized.
+        // The last choice should not have a division marker and is used when the user types something other than what is in the list.
+        presets = Msg.gettext("The Whole Bible|All Prophecy (Deu 28, Isa-Mal, Rev)|Old Testament (Gen-Mal)|New Testament (Mat-Rev)|The Pentateuch (Gen-Deu)|History (Josh-Est)|Poetry (Job-Song)|Major Prophets (Isa-Dan)|Minor Prophets (Hos-Mal)|Gospels and Acts (Mat-Act)|Letters to People (Rom-Heb)|Letters from People (Jam-Jude)|Custom").split("\\|");
 
         initialize();
     }
@@ -88,8 +95,10 @@
      */
     private void initialize() {
         shaper = new NumberShaper();
-        presetStart = Msg.PRESET_START.toString();
-        presetEnd = Msg.PRESET_END.toString();
+        // TRANSLATOR: The start of the passage list for the division of the Bible
+        presetStart = Msg.gettext("(");
+        // TRANSLATOR: The end of the passage list for the division of the Bible
+        presetEnd = Msg.gettext(")");
 
         actions = new ActionFactory(AdvancedSearchPane.class, this);
 
@@ -327,11 +336,18 @@
 
     public final void setLabelRank(int val) {
         if (val == 0) {
-            lblRank.setText(shaper.shape(Msg.RANK.toString("All"))); //$NON-NLS-1$
+            // TRANSLATOR: Dynamic label for prioritization slider on Advanced Search.
+            // The user has chosen 0, which means to show all verses.
+            // This used to be "Show {0} verses:" and {0} was a placeholder for the English word "All".
+            lblRank.setText(shaper.shape(Msg.gettext("Show all verses:", "All")));
         } else if (val == 1) {
-            lblRank.setText(shaper.shape(Msg.RANK_ONE.toString()));
+            // TRANSLATOR: Dynamic label for prioritization slider on Advanced Search.
+            // The user has chosen 1, which means to show one verse, presumably the one that best satisfies the search.
+            lblRank.setText(shaper.shape(Msg.gettext("Show best verse:")));
         } else {
-            lblRank.setText(shaper.shape(Msg.RANK.toString(new Integer(val))));
+            // TRANSLATOR: Dynamic label for prioritization slider on Advanced Search.
+            // The user has chosen a number other than 0 or 1. 
+            lblRank.setText(shaper.shape(Msg.gettext("Show {0} verses:", new Integer(val))));
         }
     }
 
@@ -426,7 +442,8 @@
             dlgSelect = new PassageSelectionPane();
         }
 
-        String passg = dlgSelect.showInDialog(this, Msg.ADVANCED_SELECT_TITLE.toString(), true, txtRestrict.getText());
+        // TRANSLATOR: This is the title to the dialog allowing a user to select passages for a restricted search.
+        String passg = dlgSelect.showInDialog(this, Msg.gettext("Select Passages to Restrict Search to"), true, txtRestrict.getText());
         if (passg != null) {
             cboPresets.setSelectedItem(presets[presets.length - 1]);
             txtRestrict.setText(passg);
@@ -449,11 +466,11 @@
             return;
         }
 
-        String include = ""; //$NON-NLS-1$
+        String include = "";
         String preset = (String) cboPresets.getSelectedItem();
         if (preset != null) {
             int open = preset.indexOf(presetStart);
-            int close = preset.indexOf(presetEnd);
+            int close = preset.indexOf(presetEnd, open + 1);
 
             if (open != -1 && close != -1) {
                 include = preset.substring(open + 1, close);
@@ -583,7 +600,7 @@
     // {
     // LookAndFeelUtil.initialize();
     // AdvancedSearchPane adv = new AdvancedSearchPane();
-    //        String reply = adv.showInDialog(null, "Advanced Search", true, "test"); //$NON-NLS-1$ //$NON-NLS-2$
+    //        String reply = adv.showInDialog(null, "Advanced Search", true, "test");
     // log.debug(reply);
     // System.exit(0);
     // }
@@ -618,35 +635,35 @@
     /*
      * Action constants
      */
-    private static final String DONE = "Done"; //$NON-NLS-1$
-    private static final String PHRASE = "Phrase"; //$NON-NLS-1$
-    private static final String RESTRICT = "Restrict"; //$NON-NLS-1$
-    private static final String HEAD_RANK = "HeadRank"; //$NON-NLS-1$
-    private static final String RANK = "RankSomeSlider"; //$NON-NLS-1$
-    private static final String HEAD_RESTRICT = "HeadRestrict"; //$NON-NLS-1$
-    private static final String HEAD_BASE = "HeadBase"; //$NON-NLS-1$
-    private static final String INCLUDES = "Includes"; //$NON-NLS-1$
-    private static final String EXCLUDES = "Excludes"; //$NON-NLS-1$
-    private static final String SPELL = "Spell"; //$NON-NLS-1$
-    private static final String STARTS_WITH = "StartsWith"; //$NON-NLS-1$
-    private static final String PRESETS = "Presets"; //$NON-NLS-1$
-    private static final String RESTRICT_SELECT = "RestrictSelect"; //$NON-NLS-1$
-    private static final String HEAD_SUMMARY = "HeadSummary"; //$NON-NLS-1$
-    private static final String SUMMARY = "Summary"; //$NON-NLS-1$
-    //    private static final String HEAD_ORIGINAL = "HeadOriginal"; //$NON-NLS-1$
-    //    private static final String HEBREW_INCLUDE = "HebrewInclude"; //$NON-NLS-1$
-    //    private static final String HEBREW_EXCLUDE = "HebrewExclude"; //$NON-NLS-1$
-    //    private static final String GREEK_INCLUDE = "GreekInclude"; //$NON-NLS-1$
-    //    private static final String GREEK_EXCLUDE = "GreekExclude"; //$NON-NLS-1$
-    //    private static final String HEAD_TIME = "HeadTime"; //$NON-NLS-1$
-    //    private static final String AFTER = "After"; //$NON-NLS-1$
-    //    private static final String BEFORE = "Before"; //$NON-NLS-1$
+    private static final String DONE = "Done";
+    private static final String PHRASE = "Phrase";
+    private static final String RESTRICT = "Restrict";
+    private static final String HEAD_RANK = "HeadRank";
+    private static final String RANK = "RankSomeSlider";
+    private static final String HEAD_RESTRICT = "HeadRestrict";
+    private static final String HEAD_BASE = "HeadBase";
+    private static final String INCLUDES = "Includes";
+    private static final String EXCLUDES = "Excludes";
+    private static final String SPELL = "Spell";
+    private static final String STARTS_WITH = "StartsWith";
+    private static final String PRESETS = "Presets";
+    private static final String RESTRICT_SELECT = "RestrictSelect";
+    private static final String HEAD_SUMMARY = "HeadSummary";
+    private static final String SUMMARY = "Summary";
+    //    private static final String HEAD_ORIGINAL = "HeadOriginal";
+    //    private static final String HEBREW_INCLUDE = "HebrewInclude";
+    //    private static final String HEBREW_EXCLUDE = "HebrewExclude";
+    //    private static final String GREEK_INCLUDE = "GreekInclude";
+    //    private static final String GREEK_EXCLUDE = "GreekExclude";
+    //    private static final String HEAD_TIME = "HeadTime";
+    //    private static final String AFTER = "After";
+    //    private static final String BEFORE = "Before";
 
     /**
      * In our parsing we use space quite a lot and this ensures there is only
      * one and that we don't have lots of NON-NLS comments everywhere
      */
-    private static final String SPACE = " "; //$NON-NLS-1$
+    private static final String SPACE = " ";
 
     private String presetEnd;
 

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,26 +1,46 @@
-After.Name=Restrict to verses written after\:
-Before.Name=Restrict to verses written before\:
-Done.MnemonicKey=S
-Done.Name=Search
-Excludes.Name=Excludes all these words\:
-GreekExclude.Name=Excludes Greek Nos\:
-GreekInclude.Name=Includes Greek Nos\:
-HeadBase.Name=Search for verses with the following details
-HeadOriginal.Name=Contains Strong's Hebrew and Greek
-HeadRank.Name=Prioritize the found verses
-HeadRestrict.Name=Restrict search to parts of the Bible
-HeadSummary.Name=Show quick search syntax
-HeadTime.Name=Narrow search by time period
-HebrewExclude.Name=Excludes Hebrew Nos\:
-HebrewInclude.Name=Includes Hebrew Nos\:
-Includes.Name=Includes these words\:
-Phrase.Name=Includes this phrase\:
-Presets.Name=Preset Ranges\:
-RankSomeSlider.MnemonicKey=L
-RankSomeSlider.Name=Show
-Restrict.Name=Include these verses\:
-RestrictSelect.MnemonicKey=T
-RestrictSelect.Name=Select
-Spell.Name=Something like this spelling\:
-StartsWith.Name=Includes words starting with\:
-Summary.Name=Quick search syntax\:
+
+After.Name = Restrict to verses written after:
+
+Before.Name = Restrict to verses written before:
+
+Done.Name = &Search
+
+Excludes.Name = Excludes all these words:
+
+GreekExclude.Name = Excludes Greek Numbers:
+
+GreekInclude.Name = Includes Greek Numbers:
+
+HeadBase.Name = Search for verses with the following details
+
+HeadOriginal.Name = Contains Strong's Hebrew and Greek
+
+HeadRank.Name = Prioritize the found verses
+
+HeadRestrict.Name = Restrict search to parts of the Bible
+
+HeadSummary.Name = Show quick search syntax
+
+HeadTime.Name = Narrow search by time period
+
+HebrewExclude.Name = Excludes Hebrew Numbers:
+
+HebrewInclude.Name = Includes Hebrew Numbers:
+
+Includes.Name = Includes these words:
+
+Phrase.Name = Includes this phrase:
+
+Presets.Name = Preset Ranges:
+
+RankSomeSlider.Name = Show
+
+Restrict.Name       = Include these verses:
+
+RestrictSelect.Name = Select
+
+Spell.Name = Something like this spelling:
+
+StartsWith.Name = Includes words starting with:
+
+Summary.Name = Quick search syntax:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,28 +1,46 @@
-#Created by JInto - www.guh-software.de
-#Sun Feb 17 21:49:14 CET 2008
-After.Name=Restrict to verses written after\:
-Before.Name=Restrict to verses written before\:
-Done.MnemonicKey=
-Done.Name=Suche
-Excludes.Name=Schlie\u00DFe diese W\u00F6rter aus\:
-GreekExclude.Name=Excludes Greek Nos\:
-GreekInclude.Name=Includes Greek Nos\:
-HeadBase.Name=Detaillierte Sucheinstellungen
-HeadOriginal.Name=Contains Strong's Hebrew and Greek
-HeadRank.Name=Gefundene Verse priorisieren
-HeadRestrict.Name=Nur bestimmte Teile der Bibel durchsuchen
-HeadSummary.Name=Verk\u00FCrzte Such-Syntax anzeigen
-HeadTime.Name=Narrow search by time period
-HebrewExclude.Name=Excludes Hebrew Nos\:
-HebrewInclude.Name=Includes Hebrew Nos\:
-Includes.Name=Suche nach diesen W\u00F6rtern\:
-Phrase.Name=Suche nach dieser Phrase\:
-Presets.Name=Bereiche\:
-RankSomeSlider.MnemonicKey=Z
-RankSomeSlider.Name=Zeige
-Restrict.Name=Diese Verse miteinbeziehen\:
-RestrictSelect.MnemonicKey=
-RestrictSelect.Name=Auswahl
-Spell.Name=So \u00E4hnlich\:
-StartsWith.Name=Beginnt mit\:
-Summary.Name=Verk\u00FCrzte Such-Syntax\:
+
+After.Name = Restrict to verses written after:
+
+Before.Name = Restrict to verses written before:
+
+Done.Name = Suche
+
+Excludes.Name = Schlie\u00DFe diese W\u00F6rter aus:
+
+GreekExclude.Name = Excludes Greek Numbers:
+
+GreekInclude.Name = Includes Greek Numbers:
+
+HeadBase.Name = Detaillierte Sucheinstellungen
+
+HeadOriginal.Name = Contains Strong's Hebrew and Greek
+
+HeadRank.Name = Gefundene Verse priorisieren
+
+HeadRestrict.Name = Nur bestimmte Teile der Bibel durchsuchen
+
+HeadSummary.Name = Verk\u00FCrzte Such-Syntax anzeigen
+
+HeadTime.Name = Narrow search by time period
+
+HebrewExclude.Name = Excludes Hebrew Numbers:
+
+HebrewInclude.Name = Includes Hebrew Numbers:
+
+Includes.Name = Suche nach diesen W\u00F6rtern:
+
+Phrase.Name = Suche nach dieser Phrase:
+
+Presets.Name = Bereiche:
+
+RankSomeSlider.Name = Zeige
+
+Restrict.Name       = Diese Verse miteinbeziehen:
+
+RestrictSelect.Name = Auswahl
+
+Spell.Name = So \u00E4hnlich:
+
+StartsWith.Name = Beginnt mit:
+
+Summary.Name = Verk\u00FCrzte Such-Syntax:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,27 +1,46 @@
 
-After.Name=Restrict to verses written after\:
-Before.Name=Restrict to verses written before\:
-Done.MnemonicKey=
-Done.Name=\u0642\u0628\u0648\u0644
-Excludes.Name=\u0628\u062F\u0648\u0646 \u0627\u06CC\u0646 \u06A9\u0644\u0645\u0627\u062A
-GreekExclude.Name=\u0628\u062F\u0648\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u06CC\u0648\u0646\u0627\u0646\u06CC
-GreekInclude.Name=\u0628\u0627 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u06CC\u0648\u0646\u0627\u0646\u06CC
-HeadBase.Name=\u062C\u0633\u062A\u062C\u0648\u06CC \u0622\u06CC\u0627\u062A \u0628\u0627 \u062C\u0632\u062B\u06CC\u0627\u062A \u0632\u06CC\u0631
-HeadOriginal.Name=\u062C\u0633\u062A\u062C\u0648 \u0628\u0627 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u06A9\u0634\u06CC\u0634 \u0627\u0633\u062A\u0631\u0648\u0646\u06AF
-HeadRank.Name=\u062A\u0639\u062F\u0627\u062F \u0622\u06CC\u0627\u062A\u06CC \u06A9\u0647 \u0645\u06CC\u062E\u0648\u0627\u0647\u06CC\u062F \u062C\u0633\u062A\u062C\u0648 \u06A9\u0646\u06CC\u062F 
-HeadRestrict.Name=\u0642\u0633\u0645\u062A\u200C\u0647\u0627 \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u06A9\u0647 \u0645\u06CC\u062E\u0648\u0627\u0647\u06CC\u062F \u062C\u0633\u062A\u062C\u0648 \u06A9\u0646\u06CC\u062F
-HeadSummary.Name=\u062C\u0633\u062A\u062C\u0648\u06CC \u06A9\u0627\u0645\u0644
-HeadTime.Name=Narrow search by time peroid
-HebrewExclude.Name=\u0628\u062F\u0648\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u0639\u0628\u0631\u06CC
-HebrewInclude.Name=\u0628\u0627 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u0639\u0628\u0631\u06CC
-Includes.Name=\u0645\u062D\u062A\u0648\u06CC \u0627\u06CC\u0646 \u06A9\u0644\u0645\u0627\u062A
-Phrase.Name=\u0645\u062D\u062A\u0648\u06CC \u0622\u06CC\u0646 \u0627\u0645\u0637\u0644\u0627\u062D\:
-Presets.Name=\u0642\u0633\u0645\u062A\200C\u0647\u0627 \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633
-RankSomeSlider.MnemonicKey=
-RankSomeSlider.Name=\u0622\u06CC\u0647
-Restrict.Name=\u0627\u06CC\u0646 \u0622\u06CC\u0627\u062A \u0631\u0627 \u062C\u0633\u062A\u062C\u0648 \u06A9\u0646
-RestrictSelect.MnemonicKey=
-RestrictSelect.Name=\u202D \u202C\u0627\u0646\u062A\u062E\u0627\u0628\u202E \u202C\u06A9\u0646
-Spell.Name=\u062F\u0627\u0631\u0627\u06CC \u0627\u0645\u0644\u0627\u0621 \u0645\u0634\u0627\u0628\u0647 \u0628\u0627 
-StartsWith.Name=\u0645\u062D\u062A\u0648\u06CC \u06A9\u0644\u0645\u0627\u062A\u06CC \u06A9\u0647 \u0628\u0627 \u0627\u06CC\u0646 \u0634\u0631\u0648\u0639 \u0634\u0648\u062F\:
-Summary.Name=\u062C\u0633\u062A\u062C\u0648\u06CC \u06A9\u0627\u0645\u0644
+After.Name = Restrict to verses written after:
+
+Before.Name = Restrict to verses written before:
+
+Done.Name = \u0642\u0628\u0648\u0644
+
+Excludes.Name = \u0628\u062F\u0648\u0646 \u0627\u06CC\u0646 \u06A9\u0644\u0645\u0627\u062A
+
+GreekExclude.Name = \u0628\u062F\u0648\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u06CC\u0648\u0646\u0627\u0646\u06CC
+
+GreekInclude.Name = \u0628\u0627 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u06CC\u0648\u0646\u0627\u0646\u06CC
+
+HeadBase.Name = \u062C\u0633\u062A\u062C\u0648\u06CC \u0622\u06CC\u0627\u062A \u0628\u0627 \u062C\u0632\u062B\u06CC\u0627\u062A \u0632\u06CC\u0631
+
+HeadOriginal.Name = \u062C\u0633\u062A\u062C\u0648 \u0628\u0627 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u06A9\u0634\u06CC\u0634 \u0627\u0633\u062A\u0631\u0648\u0646\u06AF
+
+HeadRank.Name = \u062A\u0639\u062F\u0627\u062F \u0622\u06CC\u0627\u062A\u06CC \u06A9\u0647 \u0645\u06CC\u062E\u0648\u0627\u0647\u06CC\u062F \u062C\u0633\u062A\u062C\u0648 \u06A9\u0646\u06CC\u062F 
+
+HeadRestrict.Name = \u0642\u0633\u0645\u062A\u200C\u0647\u0627 \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u06A9\u0647 \u0645\u06CC\u062E\u0648\u0627\u0647\u06CC\u062F \u062C\u0633\u062A\u062C\u0648 \u06A9\u0646\u06CC\u062F
+
+HeadSummary.Name = \u062C\u0633\u062A\u062C\u0648\u06CC \u06A9\u0627\u0645\u0644
+
+HeadTime.Name = Narrow search by time peroid
+
+HebrewExclude.Name = \u0628\u062F\u0648\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u0639\u0628\u0631\u06CC
+
+HebrewInclude.Name = \u0628\u0627 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u0639\u0628\u0631\u06CC
+
+Includes.Name = \u0645\u062D\u062A\u0648\u06CC \u0627\u06CC\u0646 \u06A9\u0644\u0645\u0627\u062A
+
+Phrase.Name = \u0645\u062D\u062A\u0648\u06CC \u0622\u06CC\u0646 \u0627\u0645\u0637\u0644\u0627\u062D:
+
+Presets.Name = \u0642\u0633\u0645\u062A200C\u0647\u0627 \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633
+
+RankSomeSlider.Name = \u0622\u06CC\u0647
+
+Restrict.Name       = \u0627\u06CC\u0646 \u0622\u06CC\u0627\u062A \u0631\u0627 \u062C\u0633\u062A\u062C\u0648 \u06A9\u0646
+
+RestrictSelect.Name = \u202D \u202C\u0627\u0646\u062A\u062E\u0627\u0628\u202E \u202C\u06A9\u0646
+
+Spell.Name = \u062F\u0627\u0631\u0627\u06CC \u0627\u0645\u0644\u0627\u0621 \u0645\u0634\u0627\u0628\u0647 \u0628\u0627 
+
+StartsWith.Name = \u0645\u062D\u062A\u0648\u06CC \u06A9\u0644\u0645\u0627\u062A\u06CC \u06A9\u0647 \u0628\u0627 \u0627\u06CC\u0646 \u0634\u0631\u0648\u0639 \u0634\u0648\u062F:
+
+Summary.Name = \u062C\u0633\u062A\u062C\u0648\u06CC \u06A9\u0627\u0645\u0644

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,26 +1,46 @@
-After.Name=Batasi ayat sesudah\:
-Before.Name=Batasi ayar sebelum\:
-Done.MnemonicKey=C
-Done.Name=Cari
-Excludes.Name=Tidak mengandung kata\:
-GreekExclude.Name=Tidak mengandung Yunani Nos\:
-GreekInclude.Name=Mengandung Yunani Nos\:
-HeadBase.Name=Cari ayat dengan specifikasi
-HeadOriginal.Name=Berisikan Strong's Ibrani dan Yunani
-HeadRank.Name=Urutkan prioritas hasil pencarian
-HeadRestrict.Name=Batasan hasil pencarian
-HeadSummary.Name=Tampilan sintaksis pencarian cepat
-HeadTime.Name=Narrow search by time period
-HebrewExclude.Name=Tidak mengandung Ibrani Nos\:
-HebrewInclude.Name=Mengandung Ibrani Nos\:
-Includes.Name=Termasuk kata\:
-Phrase.Name=Mengandung frase\:
-Presets.Name=Lingkup Kitab\:
-RankSomeSlider.MnemonicKey=T
-RankSomeSlider.Name=Tampilkan
-Restrict.Name=Termasuk ayat ini\:
-RestrictSelect.MnemonicKey=T
-RestrictSelect.Name=Select
-Spell.Name=Seperti pengejaan\:
-StartsWith.Name=Berawalan dengan\:
-Summary.Name=Tampilan sintaksis pencarian\:
+
+After.Name = Batasi ayat sesudah:
+
+Before.Name = Batasi ayar sebelum:
+
+Done.Name = &Cari
+
+Excludes.Name = Tidak mengandung kata:
+
+GreekExclude.Name = Tidak mengandung Yunani Nos:
+
+GreekInclude.Name = Mengandung Yunani Nos:
+
+HeadBase.Name = Cari ayat dengan specifikasi
+
+HeadOriginal.Name = Berisikan Strong's Ibrani dan Yunani
+
+HeadRank.Name = Urutkan prioritas hasil pencarian
+
+HeadRestrict.Name = Batasan hasil pencarian
+
+HeadSummary.Name = Tampilan sintaksis pencarian cepat
+
+HeadTime.Name = Narrow search by time period
+
+HebrewExclude.Name = Tidak mengandung Ibrani Nos:
+
+HebrewInclude.Name = Mengandung Ibrani Nos:
+
+Includes.Name = Termasuk kata:
+
+Phrase.Name = Mengandung frase:
+
+Presets.Name = Lingkup Kitab:
+
+RankSomeSlider.Name = Tampilkan
+
+Restrict.Name       = Termasuk ayat ini:
+
+RestrictSelect.Name = Select
+
+Spell.Name = Seperti pengejaan:
+
+StartsWith.Name = Berawalan dengan:
+
+Summary.Name = Tampilan sintaksis pencarian:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_vi.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_vi.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_vi.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,56 +1,46 @@
-
-HeadBase.Name:T\u00ECm c\u00E2u v\u1EDBi chi ti\u1EBFt ti\u1EBFp theo
-#Search for verses with the following details
-Phrase.Name=Bao g\u1ED3m c\u1EE5m t\u1EEB n\u00E0y:
-#Includes this phrase:
-
-Includes.Name=Bao g\u1ED3m c\u00E1c t\u1EEB ng\u1EEF n\u00E0y:
-#Includes these words:
-Excludes.Name=Lo\u1EA1i tr\u1EEB t\u1EA5t c\u1EA3 c\u00E1c t\u1EEB ng\u1EEF n\u00E0y:
-#Excludes all these words:
-Spell.Name=Ch\u00EDnh t\u1EA3 g\u1EA7n gi\u1ED1ng n\u00E0y:
-#Something like this spelling:
-StartsWith.Name=Bao g\u1ED3m t\u1EEB ng\u1EEF b\u1EAFt \u0111\u1EA7u v\u1EDBi:
-#Includes words starting with:
-
-HeadRank.Name=D\u00E0nh \u01B0u ti\u00EAn c\u00E1c c\u00E2u \u0111\u01B0\u1EE3c t\u00ECm
-#Prioritize the found verses
-RankSomeSlider.Name=Hi\u1EC7n
-#Show
-RankSomeSlider.MnemonicKey=
-
-HeadRestrict.Name=Gi\u1EDBi h\u1EA1n t\u00ECm ki\u1EBFm cho ph\u1EA7n c\u1EE7a Kinh Th\u00E1nh
-#Restrict search to parts of the Bible
-Restrict.Name=Ch\u1EE9a \u0111\u01B0ng c\u00E1c c\u00E2u n\u00E0y:
-#Include these verses:
-RestrictSelect.Name=Ch\u1ECDn
-#Select
-RestrictSelect.MnemonicKey=
-Presets.Name=Ph\u1EA7n \u0110\u1EB7t S\u1EB5n
-#Preset Ranges:
-
-HeadSummary.Name=Hi\u1EC7n c\u00FA ph\u00E1p t\u00ECm ki\u1EBFm nhanh
-#Show quick search syntax
-Summary.Name=C\u00FA Ph\u00E1p T\u00ECm Ki\u1EBFm Nhanh
-#Quick search syntax:
-
-HeadOriginal.Name=Bao g\u1ED3m ti\u1EBFng H\u00EA\u002Db\u01A1\u002Dr\u01A1 v\u00E0 ti\u1EBFng Hy\u002Dl\u1EA1p c\u1EE7a Strong
-#Contains Strong's Hebrew and Greek
-HebrewInclude.Name=Bao g\u1ED3m s\u1ED1 Strong ti\u1EBFng H\u00EA\u002Db\u01A1\u002Dr\u01A1
-#Includes Hebrew Nos:
-HebrewExclude.Name=Lo\u1EA1i tr\u1EEB s\u1ED1 Strong ti\u1EBFng H\u00EA\u002Db\u01A1\u002Dr\u01A1
-#Excludes Hebrew Nos:
-GreekInclude.Name=Bao g\u1ED3m s\u1ED1 Strong ti\u1EBFng Hy\u002Dl\u1EA1p
-#Includes Greek Nos:
-GreekExclude.Name=Lo\u1EA1i tr\u00F9 s\u1ED1 Strong ti\u1EBFng Hy\u002Dl\u1EA1p
-#Excludes Greek Nos:
-
-HeadTime.Name=Narrow search by time period
-After.Name=Gi\u1EDBi h\u1EA1n t\u00ECm ki\u1EBFm cho c\u00E2u vi\u1EBFt sau:
-#Restrict to verses written after:
-Before.Name=Gi\u1EDBi h\u1EA1n t\u00ECm ki\u1EBFm cho c\u00E1c c\u00E2u vi\u1EBFt tr\u01B0\u1EDBc:
-#Restrict to verses written before:
-
-Done.Name=T\u00ECm Ki\u1EBFm
-#Search
-Done.MnemonicKey=
+
+After.Name = Gi\u1EDBi h\u1EA1n t\u00ECm ki\u1EBFm cho c\u00E2u vi\u1EBFt sau:
+
+Before.Name = Gi\u1EDBi h\u1EA1n t\u00ECm ki\u1EBFm cho c\u00E1c c\u00E2u vi\u1EBFt tr\u01B0\u1EDBc:
+
+Done.Name = T\u00ECm Ki\u1EBFm
+
+Excludes.Name = Lo\u1EA1i tr\u1EEB t\u1EA5t c\u1EA3 c\u00E1c t\u1EEB ng\u1EEF n\u00E0y:
+
+GreekExclude.Name = Lo\u1EA1i tr\u00F9 s\u1ED1 Strong ti\u1EBFng Hy-l\u1EA1p
+
+GreekInclude.Name = Bao g\u1ED3m s\u1ED1 Strong ti\u1EBFng Hy-l\u1EA1p
+
+HeadBase.Name = T\u00ECm c\u00E2u v\u1EDBi chi ti\u1EBFt ti\u1EBFp theo
+
+HeadOriginal.Name = Bao g\u1ED3m ti\u1EBFng H\u00EA-b\u01A1-r\u01A1 v\u00E0 ti\u1EBFng Hy-l\u1EA1p c\u1EE7a Strong
+
+HeadRank.Name = D\u00E0nh \u01B0u ti\u00EAn c\u00E1c c\u00E2u \u0111\u01B0\u1EE3c t\u00ECm
+
+HeadRestrict.Name = Gi\u1EDBi h\u1EA1n t\u00ECm ki\u1EBFm cho ph\u1EA7n c\u1EE7a Kinh Th\u00E1nh
+
+HeadSummary.Name = Hi\u1EC7n c\u00FA ph\u00E1p t\u00ECm ki\u1EBFm nhanh
+
+HeadTime.Name = Narrow search by time period
+
+HebrewExclude.Name = Lo\u1EA1i tr\u1EEB s\u1ED1 Strong ti\u1EBFng H\u00EA-b\u01A1-r\u01A1
+
+HebrewInclude.Name = Bao g\u1ED3m s\u1ED1 Strong ti\u1EBFng H\u00EA-b\u01A1-r\u01A1
+
+Includes.Name = Bao g\u1ED3m c\u00E1c t\u1EEB ng\u1EEF n\u00E0y:
+
+Phrase.Name = Bao g\u1ED3m c\u1EE5m t\u1EEB n\u00E0y:
+
+Presets.Name = Ph\u1EA7n \u0110\u1EB7t S\u1EB5n
+
+RankSomeSlider.Name = Hi\u1EC7n
+
+Restrict.Name       = Ch\u1EE9a \u0111\u01B0ng c\u00E1c c\u00E2u n\u00E0y:
+
+RestrictSelect.Name = Ch\u1ECDn
+
+Spell.Name = Ch\u00EDnh t\u1EA3 g\u1EA7n gi\u1ED1ng n\u00E0y:
+
+StartsWith.Name = Bao g\u1ED3m t\u1EEB ng\u1EEF b\u1EAFt \u0111\u1EA7u v\u1EDBi:
+
+Summary.Name = C\u00FA Ph\u00E1p T\u00ECm Ki\u1EBFm Nhanh

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_zh.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_zh.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,27 +1,46 @@
 
-After.Name=Restrict to verses written after\:
-Before.Name=Restrict to verses written before\:
-Done.MnemonicKey=
-Done.Name=\u641C\u5C0B
-Excludes.Name=\u6392\u9664 \u5B57\:
-GreekExclude.Name=Excludes Greek Nos\:
-GreekInclude.Name=Includes Greek Nos\:
-HeadBase.Name=\u9032\u968E\u641C\u5C0B
-HeadOriginal.Name=Contains Strong's Hebrew and Greek
-HeadRank.Name=\u689D\u76EE\u6578\u91CF
-HeadRestrict.Name=\u9650\u5236\u641C\u5C0B
-HeadSummary.Name=\u986F\u793A\u5FEB\u901F\u641C\u5C0B\u8A9E\u6CD5
-HeadTime.Name=Narrow search by time period
-HebrewExclude.Name=Excludes Hebrew Nos\:
-HebrewInclude.Name=Includes Hebrew Nos\:
-Includes.Name=\u5305\u542B \u5B57\:
-Phrase.Name=\u5305\u542B \u53E5\u5B50\:
-Presets.Name=Preset Ranges\:
-RankSomeSlider.MnemonicKey=L
-RankSomeSlider.Name=Show
-Restrict.Name=Include these verses\:
-RestrictSelect.MnemonicKey=T
-RestrictSelect.Name=Select
-Spell.Name=\u6A21\u7CCA\u641C\u5C0B\:
-StartsWith.Name=\u8D77\u982D\u7684\u5B57\u53E5\:
-Summary.Name=\u5FEB\u901F\u641C\u5C0B\u8A9E\u6CD5\:
+After.Name = Restrict to verses written after:
+
+Before.Name = Restrict to verses written before:
+
+Done.Name = \u641C\u5C0B
+
+Excludes.Name = \u6392\u9664 \u5B57:
+
+GreekExclude.Name = Excludes Greek Nos:
+
+GreekInclude.Name = Includes Greek Nos:
+
+HeadBase.Name = \u9032\u968E\u641C\u5C0B
+
+HeadOriginal.Name = Contains Strong's Hebrew and Greek
+
+HeadRank.Name = \u689D\u76EE\u6578\u91CF
+
+HeadRestrict.Name = \u9650\u5236\u641C\u5C0B
+
+HeadSummary.Name = \u986F\u793A\u5FEB\u901F\u641C\u5C0B\u8A9E\u6CD5
+
+HeadTime.Name = Narrow search by time period
+
+HebrewExclude.Name = Excludes Hebrew Nos:
+
+HebrewInclude.Name = Includes Hebrew Nos:
+
+Includes.Name = \u5305\u542B \u5B57:
+
+Phrase.Name = \u5305\u542B \u53E5\u5B50:
+
+Presets.Name = Preset Ranges:
+
+RankSomeSlider.Name = Show
+
+Restrict.Name       = Include these verses:
+
+RestrictSelect.Name = Select
+
+Spell.Name = \u6A21\u7CCA\u641C\u5C0B:
+
+StartsWith.Name = \u8D77\u982D\u7684\u5B57\u53E5:
+
+Summary.Name = \u5FEB\u901F\u641C\u5C0B\u8A9E\u6CD5:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_zh_CN.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/AdvancedSearchPane_zh_CN.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,27 +1,46 @@
 
-After.Name=Restrict to verses written after\:
-Before.Name=Restrict to verses written before\:
-Done.MnemonicKey=
-Done.Name=\u641C\u5BFB
-Excludes.Name=\u6392\u9664 \u5B57\:
-GreekExclude.Name=Excludes Greek Nos\:
-GreekInclude.Name=Includes Greek Nos\:
-HeadBase.Name=\u9AD8\u7EA7\u641C\u5BFB
-HeadOriginal.Name=Contains Strong's Hebrew and Greek
-HeadRank.Name=\u6761\u76EE\u6570\u91CF
-HeadRestrict.Name=\u9650\u5236\u641C\u5BFB
-HeadSummary.Name=\u663E\u793A\u5FEB\u901F\u641C\u5BFB\u8BED\u6CD5
-HeadTime.Name=Narrow search by time period
-HebrewExclude.Name=Excludes Hebrew Nos\:
-HebrewInclude.Name=Includes Hebrew Nos\:
-Includes.Name=\u5305\u542B \u5B57\:
-Phrase.Name=\u5305\u542B \u53E5\u5B50\:
-Presets.Name=Preset Ranges\:
-RankSomeSlider.MnemonicKey=L
-RankSomeSlider.Name=Show
-Restrict.Name=Include these verses\:
-RestrictSelect.MnemonicKey=T
-RestrictSelect.Name=Select
-Spell.Name=\u6A21\u7CCA\u641C\u5BFB\:
-StartsWith.Name=\u5F00\u59CB\u7684\u5B57\u53E5\:
-Summary.Name=\u5FEB\u901F\u641C\u5BFB\u8BED\u6CD5\:
+After.Name = Restrict to verses written after:
+
+Before.Name = Restrict to verses written before:
+
+Done.Name = \u641C\u5BFB
+
+Excludes.Name = \u6392\u9664 \u5B57:
+
+GreekExclude.Name = Excludes Greek Nos:
+
+GreekInclude.Name = Includes Greek Nos:
+
+HeadBase.Name = \u9AD8\u7EA7\u641C\u5BFB
+
+HeadOriginal.Name = Contains Strong's Hebrew and Greek
+
+HeadRank.Name = \u6761\u76EE\u6570\u91CF
+
+HeadRestrict.Name = \u9650\u5236\u641C\u5BFB
+
+HeadSummary.Name = \u663E\u793A\u5FEB\u901F\u641C\u5BFB\u8BED\u6CD5
+
+HeadTime.Name = Narrow search by time period
+
+HebrewExclude.Name = Excludes Hebrew Nos:
+
+HebrewInclude.Name = Includes Hebrew Nos:
+
+Includes.Name = \u5305\u542B \u5B57:
+
+Phrase.Name = \u5305\u542B \u53E5\u5B50:
+
+Presets.Name = Preset Ranges:
+
+RankSomeSlider.Name = Show
+
+Restrict.Name       = Include these verses:
+
+RestrictSelect.Name = Select
+
+Spell.Name = \u6A21\u7CCA\u641C\u5BFB:
+
+StartsWith.Name = \u5F00\u59CB\u7684\u5B57\u53E5:
+
+Summary.Name = \u5FEB\u901F\u641C\u5BFB\u8BED\u6CD5:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BibleComboBoxModel.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BibleComboBoxModel.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BibleComboBoxModel.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -76,7 +76,7 @@
      * @see javax.swing.ComboBoxModel#setSelectedItem(java.lang.Object)
      */
     public void setSelectedItem(Object selected) {
-        log.debug("setSelectedItem(" + selected + ") level=" + level); //$NON-NLS-1$ //$NON-NLS-2$
+        log.debug("setSelectedItem(" + selected + ") level=" + level);
 
         switch (level) {
         case LEVEL_BOOK:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BibleNameCellRenderer.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BibleNameCellRenderer.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BibleNameCellRenderer.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -84,7 +84,8 @@
         setToolTipText(null);
 
         if (value == null) {
-            setText(Msg.NONE.toString());
+            // TRANSLATOR: This is the replacement text for a blank book name in a list.
+            setText(Msg.gettext("None"));
             setEnabled(false);
         }
 
@@ -108,7 +109,7 @@
     /**
      * Make sure that book names are not too wide
      */
-    public static final String PROTOTYPE_BOOK_NAME = "0123456789"; //$NON-NLS-1$
+    public static final String PROTOTYPE_BOOK_NAME = "0123456789";
 
     /**
      * Serialization ID

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BibleViewPane.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BibleViewPane.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BibleViewPane.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -113,7 +113,7 @@
             }
         });
 
-        pnlSelect.setBorder(UIManager.getBorder("SelectPanel.border")); //$NON-NLS-1$
+        pnlSelect.setBorder(UIManager.getBorder("SelectPanel.border"));
 
         this.setLayout(new BorderLayout());
         this.setMinimumSize(new Dimension(0, 0));
@@ -210,7 +210,7 @@
                 ref.writeDescription(out);
             } else {
                 out.write(key.getName());
-                out.write("\n"); //$NON-NLS-1$
+                out.write("\n");
             }
         } finally {
             if (out != null) {
@@ -238,7 +238,8 @@
         if (reply == JFileChooser.APPROVE_OPTION) {
             saved = chooser.getSelectedFile();
             if (saved.length() == 0) {
-                Reporter.informUser(getRootPane(), Msg.EMPTY_FILE, saved.getName());
+                // TRANSLATOR: Let the user know that the file is empty. {0} is a placeholder for the filename.
+                Reporter.informUser(getRootPane(), Msg.gettext("File {0} is empty", saved.getName()));
                 return;
             }
 
@@ -363,8 +364,8 @@
     private DisplaySelectPane pnlSelect;
     protected SplitBookDataDisplay pnlPassg;
     private JFileChooser chooser;
-    private static final String BOOKMARK_DIR = "bookmarks"; //$NON-NLS-1$
-    private static final String EXTENSION = ".lst"; //$NON-NLS-1$
+    private static final String BOOKMARK_DIR = "bookmarks";
+    private static final String EXTENSION = ".lst";
 
     /**
      * The log stream
@@ -393,7 +394,8 @@
          */
         /* @Override */
         public String getDescription() {
-            return Msg.VERSE_LIST_DESC.toString(EXTENSION);
+            // TRANSLATOR: This is the label for the verse list extension. {0} is a placeholder for that extension, which must be ".lst".
+            return Msg.gettext("Verse Lists ({0})", EXTENSION);
         }
     }
 }

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BookListCellRenderer.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BookListCellRenderer.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BookListCellRenderer.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -87,7 +87,8 @@
         setToolTipText(null);
 
         if (value == null) {
-            setText(Msg.NONE.toString());
+            // TRANSLATOR: This is the replacement text for a blank book name in a list.
+            setText(Msg.gettext("None"));
             setEnabled(false);
         }
 
@@ -112,7 +113,7 @@
     /**
      * Make sure that book names are not too wide
      */
-    public static final String PROTOTYPE_BOOK_NAME = "0123456789"; //$NON-NLS-1$
+    public static final String PROTOTYPE_BOOK_NAME = "0123456789";
 
     /**
      * Serialization ID

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BooksListModel.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BooksListModel.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/BooksListModel.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -95,7 +95,7 @@
     public synchronized Object getElementAt(int index) {
         // PARANOIA(joe): this check shouldn't be needed
         if (index > books.size()) {
-            log.error("trying to get book at " + index + " when there are only " + books.size() + " known books."); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+            log.error("trying to get book at " + index + " when there are only " + books.size() + " known books.");
             return null;
         }
 

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -95,7 +95,8 @@
 
         advanced = new AdvancedSearchPane();
 
-        title = Msg.UNTITLED.toString(new Integer(base++));
+        // TRANSLATOR: This is the initial title of a Bible View. {0} is a placeholder for a number that uniquely identifies the Bible View.
+        title = Msg.gettext("Untitled {0}", new Integer(base++));
 
         actions = new ActionFactory(DisplaySelectPane.class, this);
 
@@ -131,7 +132,7 @@
                 int chapter = start.getChapter();
                 try {
                     VerseRange range = new VerseRange(start, new Verse(book, chapter, BibleInfo.versesInChapter(book, chapter)));
-                    txtSearch.setText(""); //$NON-NLS-1$
+                    txtSearch.setText("");
                     txtKey.setText(range.getName());
                     doGoPassage();
                 } catch (NoSuchVerseException ex) {
@@ -172,7 +173,12 @@
         btnSearch = new JButton(actions.getAction(GO_SEARCH));
 
         JButton btnHelp = actions.createActionIcon(HELP);
-        dlgHelp = new QuickHelpDialog(GuiUtil.getFrame(this), Msg.HELP_TITLE.toString(), Msg.HELP_TEXT.toString());
+        // TRANSLATOR: Title to the dialog that shows search tips.
+        String dialogTitle = Msg.gettext("Search Quick Help");
+        // TRANSLATOR: This is html formatted examples of how to use search.
+        // TODO(DMS): Split this into individual examples and bring in each separately.
+        String msg = Msg.gettext("<html><b>Search Tips.</b><br>You can use || to join phrases, for example \"<code>balaam || balak</code>\" finds passages containing Balak OR Balaam<br>Using && requires both words, e.g. \"<code>aaron && moses</code>\" finds passages containing both Aaron AND Moses<br>Using a ! removes words from the result e.g. \"<code>lord ! jesus</code>\" is passages containing Lord BUT NOT Jesus<br>Using ~2 widens the passage by 2 verses either side on any match. So \"<code>amminadab ~1 perez</code>\" finds<br>verses containting Amminadab within 1 verse of mention of Perez.<br>Using +[Gen-Exo] at the beginning will restrict a search to that range of verses.");
+        dlgHelp = new QuickHelpDialog(GuiUtil.getFrame(this), dialogTitle, msg);
 
         btnAdvanced = new JButton(actions.getAction(ADVANCED));
         btnIndex = new JButton(actions.getAction(INDEX));
@@ -219,7 +225,7 @@
         int chapter = start.getChapter();
         try {
             VerseRange range = new VerseRange(start, new Verse(book, chapter, BibleInfo.versesInChapter(book, chapter)));
-            txtSearch.setText(""); //$NON-NLS-1$
+            txtSearch.setText("");
             txtKey.setText(range.getName());
             doGoPassage();
         } catch (NoSuchVerseException ex) {
@@ -253,7 +259,9 @@
      *
      */
     public boolean isClear() {
-        return title.indexOf(Msg.CLEAR.toString()) != -1;
+        // TRANSLATOR: This must match the word that is used for "Untitled {0}".
+        // This is used to determine whether a tab is unused or not.
+        return title.indexOf(Msg.gettext("Untitled")) != -1;
     }
 
     /**
@@ -283,7 +291,7 @@
     public void doPassageAction() {
         setKey(txtKey.getText());
         if (!key.isEmpty()) {
-            txtSearch.setText(""); //$NON-NLS-1$
+            txtSearch.setText("");
             setTitle(PASSAGE);
         }
     }
@@ -326,18 +334,29 @@
             }
 
             if (total == 0) {
-                Reporter.informUser(this, Msg.NO_HITS, new Object[] {
+                // TRANSLATOR: There were no verses that satisfied the search request.
+                // {0} is a placeholder for the search request.
+                Reporter.informUser(this, Msg.gettext("Could not find verses with: {0}", new Object[] {
                     param
-                });
+                }));
             } else {
                 if (total == partial) {
-                    Reporter.informUser(this, Msg.HITS, new Object[] {
+                    // TRANSLATOR: There were verses that satisfied the search request. This tells the user how many.
+                    // {0} is a placeholder for the search request.
+                    // {1} is a placeholder for the number of verses that satisfied the search request.
+                    // I18N(DMS): This needs support for singular/plural and to show internationalized numbers.
+                    Reporter.informUser(this, Msg.gettext("There are {1} verses with: {0}", new Object[] {
                             param, new Integer(total)
-                    });
+                    }));
                 } else {
-                    Reporter.informUser(this, Msg.PARTIAL_HITS, new Object[] {
+                    // TRANSLATOR: The user has done a prioritized search and there are more hits that the user has requested.
+                    // {0} is a placeholder for the search request.
+                    // {1} is a placeholder for the number of verses that is being given back to the user. This is the number of prioritized verses that the user requested.
+                    // {2} is a placeholder for the number of verses that satisfied the search request.
+                    // I18N(DMS): This needs support for singular/plural and to show internationalized numbers.
+                    Reporter.informUser(this, Msg.gettext("Showing {1} of {2} verses with: {0}", new Object[] {
                             param, Integer.toString(partial), Integer.toString(total)
-                    });
+                    }));
                 }
                 setTitle(SEARCH);
                 setKey(results);
@@ -351,7 +370,8 @@
      * Someone has clicked on the advanced search button
      */
     public void doAdvanced() {
-        String reply = advanced.showInDialog(this, Msg.ADVANCED_TITLE.toString(), true, txtSearch.getText());
+        // TRANSLATOR: This is the title for the Advanced Search dialog.
+        String reply = advanced.showInDialog(this, Msg.gettext("Advanced Search"), true, txtSearch.getText());
         if (reply != null) {
             txtSearch.setText(reply);
             doSearchAction();
@@ -429,8 +449,8 @@
         if (newKey == null || newKey.isEmpty()) {
             if (!key.isEmpty()) {
                 key = selected[0].createEmptyKeyList();
-                txtKey.setText(""); //$NON-NLS-1$
-                txtSearch.setText(""); //$NON-NLS-1$
+                txtKey.setText("");
+                txtSearch.setText("");
 
                 updateDisplay();
                 setTitle(CLEAR);
@@ -442,7 +462,7 @@
             updateDisplay();
             if (isClear()) {
                 setTitle(PASSAGE);
-                txtSearch.setText(""); //$NON-NLS-1$
+                txtSearch.setText("");
             }
         }
     }
@@ -498,7 +518,8 @@
         mode = newMode;
         switch (mode) {
         case CLEAR:
-            title = Msg.UNTITLED.toString(new Integer(base++));
+            // TRANSLATOR: This is the initial title of a Bible View. {0} is a placeholder for a number that uniquely identifies the Bible View.
+            title = Msg.gettext("Untitled {0}", new Integer(base++));
             break;
         case PASSAGE:
             title = key.getName();
@@ -520,7 +541,13 @@
      * Display a dialog indicating that no Bible is installed.
      */
     private void noBookInstalled() {
-        String noBible = Msg.NO_INSTALLED_BIBLE.toString();
+        // TRANSLATOR: The user is trying to do something that requires at least one Bible to be installed.
+        // There are a variety of common reasons that this can happen:
+        //     The user has chosen to not install a Bible when starting the program for the first time.
+        //     The user has never installed a Bible.
+        //     The user has deleted the last installed Bible.
+        //     The books are on a CD, USB or someother removeable media and are not available.
+        String noBible = Msg.gettext("No Bible is installed");
         CWOptionPane.showMessageDialog(this, noBible, noBible, JOptionPane.WARNING_MESSAGE);
     }
 
@@ -553,7 +580,8 @@
             dlgSelect = new PassageSelectionPane();
         }
 
-        String passg = dlgSelect.showInDialog(this, Msg.SELECT_PASSAGE_TITLE.toString(), true, txtKey.getText());
+        // TRANSLATOR: The title to the "Select Passage" dialog.
+        String passg = dlgSelect.showInDialog(this, Msg.gettext("Select Passage"), true, txtKey.getText());
         if (passg != null) {
             txtKey.setText(passg);
             doPassageAction();
@@ -696,17 +724,17 @@
     }
 
     // For the Passage card
-    private static final String VIEW_LABEL = "ViewLabel"; //$NON-NLS-1$
-    private static final String PASSAGE_FIELD = "PassageAction"; //$NON-NLS-1$
-    private static final String MORE = "More"; //$NON-NLS-1$
-    private static final String GO_PASSAGE = "GoPassage"; //$NON-NLS-1$
-    private static final String HELP = "HelpAction"; //$NON-NLS-1$
-    private static final String SEARCH_LABEL = "SearchLabel"; //$NON-NLS-1$
-    private static final String GO_SEARCH = "GoSearch"; //$NON-NLS-1$
-    private static final String SEARCH_FIELD = "SearchAction"; //$NON-NLS-1$
-    private static final String ADVANCED = "Advanced"; //$NON-NLS-1$
-    private static final String BIBLE = "Bible"; //$NON-NLS-1$
-    private static final String INDEX = "Index"; //$NON-NLS-1$
+    private static final String VIEW_LABEL = "ViewLabel";
+    private static final String PASSAGE_FIELD = "PassageAction";
+    private static final String MORE = "More";
+    private static final String GO_PASSAGE = "GoPassage";
+    private static final String HELP = "HelpAction";
+    private static final String SEARCH_LABEL = "SearchLabel";
+    private static final String GO_SEARCH = "GoSearch";
+    private static final String SEARCH_FIELD = "SearchAction";
+    private static final String ADVANCED = "Advanced";
+    private static final String BIBLE = "Bible";
+    private static final String INDEX = "Index";
 
     /**
      * Keep the selection up to date with indexing.

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,26 +1,30 @@
 
-Advanced.MnemonicKey=V
-Advanced.Name=Advanced
-Advanced.ToolTip=Advanced Search
-Bible.MnemonicKey=B
-Bible.Name=Bible\:
-GoPassage.Name=Alias.Go
-GoPassage.ToolTip=Display the passage
-GoSearch.MnemonicKey=G
-GoSearch.Name=Alias.Go
-GoSearch.ToolTip=Search for a passage
-HelpAction.Name=Search Help
-HelpAction.ToolTip=Quick Search Help
-Index.MnemonicKey=E
-Index.Name=Enable Search
-Index.ToolTip=Create a Search Index
-More.Name=Select
-More.ToolTip=Pick a passage to display
-PassageAction.Name=Passage
-PassageAction.ToolTip=Enter a passage to display. Press CTRL+ENTER or press the ... button for a Passage selection window.
-SearchAction.Name=Search
-SearchAction.ToolTip=Search for a passage.
-SearchLabel.MnemonicKey=S
-SearchLabel.Name=Search\:
-ViewLabel.MnemonicKey=W
-ViewLabel.Name=Show Passage\:
+Advanced.Name    = Advanced
+Advanced.ToolTip = Advanced Search
+
+Bible.Name = Bible:
+
+GoPassage.Name    = Alias.Go
+GoPassage.ToolTip = Display the passage
+
+GoSearch.Name    = Alias.Go
+GoSearch.ToolTip = Search for a passage
+
+HelpAction.Name    = Search Help
+HelpAction.ToolTip = Quick Search Help
+
+Index.Name    = Enable Search
+Index.ToolTip = Create a Search Index
+
+More.Name    = Select
+More.ToolTip = Pick a passage to display
+
+PassageAction.Name    = Passage
+PassageAction.ToolTip = Enter a passage to display. Press CTRL+ENTER or press the ... button for a Passage selection window.
+
+SearchAction.Name    = Search
+SearchAction.ToolTip = Search for a passage.
+
+SearchLabel.Name = Search:
+
+ViewLabel.Name = Show Passage:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,27 +1,30 @@
-#Created by JInto - www.guh-software.de
-#Sat Apr 05 20:10:55 CEST 2008
-Advanced.MnemonicKey=
-Advanced.Name=Fortgeschritten
-Advanced.ToolTip=Fortgeschrittenene Suche
-Bible.MnemonicKey=B
-Bible.Name=Bibel\:
-GoPassage.Name=Anzeigen
-GoPassage.ToolTip=Abschnitt anzeigen
-GoSearch.MnemonicKey=
-GoSearch.Name=Starten
-GoSearch.ToolTip=Suche nach einem Abschnitt
-HelpAction.Name=Hilfe
-HelpAction.ToolTip=Hilfe
-Index.MnemonicKey=
-Index.Name=Suchindex erstellen
-Index.ToolTip=Suchindex erstellen
-More.Name=Auswahl
-More.ToolTip=Abschnitt ausw\u00E4hlen
-PassageAction.Name=Abschnitt
-PassageAction.ToolTip=Gew\u00FCnschten Abschnitt eingeben. CTRL+ENTER oder den... Knopf dr\u00FCcken um ein Auswahlfenster zu \u00F6ffnen.
-SearchAction.Name=Suche
-SearchAction.ToolTip=Suche nach einem Abschnitt.
-SearchLabel.MnemonicKey=S
-SearchLabel.Name=Suche\:
-ViewLabel.MnemonicKey=
-ViewLabel.Name=Abschnitt zeigen\:
+
+Advanced.Name    = Fortgeschritten
+Advanced.ToolTip = Fortgeschrittenene Suche
+
+Bible.Name = Bibel:
+
+GoPassage.Name    = Anzeigen
+GoPassage.ToolTip = Abschnitt anzeigen
+
+GoSearch.Name    = Starten
+GoSearch.ToolTip = Suche nach einem Abschnitt
+
+HelpAction.Name    = Hilfe
+HelpAction.ToolTip = Hilfe
+
+Index.Name    = Suchindex erstellen
+Index.ToolTip = Suchindex erstellen
+
+More.Name    = Auswahl
+More.ToolTip = Abschnitt ausw\u00E4hlen
+
+PassageAction.Name    = Abschnitt
+PassageAction.ToolTip = Gew\u00FCnschten Abschnitt eingeben. CTRL+ENTER oder den... Knopf dr\u00FCcken um ein Auswahlfenster zu \u00F6ffnen.
+
+SearchAction.Name    = Suche
+SearchAction.ToolTip = Suche nach einem Abschnitt.
+
+SearchLabel.Name = Suche:
+
+ViewLabel.Name = Abschnitt zeigen:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,26 +1,30 @@
 
-Advanced.MnemonicKey=
-Advanced.Name=\u067E\u06CC\u0634\u0631\u0641\u062A\u0647
-Advanced.ToolTip=\u0646\u0645\u0627\u06CC\u0634 \u062C\u0633\u062A\u062C\u0648\u06CC \u067E\u06CC\u0634\u0631\u0641\u062A\u0647
-Bible.MnemonicKey=
-Bible.Name=\u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633
-GoPassage.Name=Alias.Go
-GoPassage.ToolTip=\u0628\u0631\u0648
-GoSearch.MnemonicKey=
-GoSearch.Name=Alias.Go
-GoSearch.ToolTip=\u062C\u0633\u062A\u062C\u0648\u06CC \u0645\u062A\u0646
-HelpAction.Name=\u06A9\u0645\u06A9 \u062C\u0633\u062A\u062C\u0648
-HelpAction.ToolTip=\u06A9\u0645\u06A9 \u062C\u0633\u062A\u062C\u0648
-Index.MnemonicKey=
-Index.Name=\u062C\u0627\u0627\u0646\u06AF\u0634\u062A\u06CC \u062C\u0633\u062A\u062C\u0648
-Index.ToolTip=\u062C\u0627\u0627\u0646\u06AF\u0634\u062A\u06CC \u062C\u0633\u062A\u062C\u0648
-More.Name=\u0627\u0646\u062A\u062E\u0627\u0628
-More.ToolTip=\u0645\u062A\u0646\u06CC \u0631\u0627 \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646\u06CC\u062F.
-PassageAction.Name=\u0645\u062A\u0646
-PassageAction.ToolTip=\u0645\u062A\u0646\u06CC \u0631\u0627 \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u0648\u0627\u0631\u062F \u06A9\u0646. \u062F\u06AF\u0645\u0647 \u06A9\u0646\u062A\u0631\u0644+ \u0648\u0631\u0648\u062F \u0631\u0627 \u0641\u0634\u0627\u0631 \u062F\u0647\u06CC\u062F \u06CC\u0627 \u062F\u06AF\u0645\u0647 ... \u0631\u0627 \u0628\u0631\u0627\u06CC \u0627\u0646\u062A\u062E\u0627\u0628 \u067E\u0646\u062C\u0631\u0647 \u0645\u062A\u0646 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u0641\u0634\u0627\u0631 \u062F\u0647\u06CC\u062F. 
-SearchAction.Name=\u062C\u0633\u062A\u062C\u0648
-SearchAction.ToolTip=\u062C\u0633\u062A\u062C\u0648\u06CC \u0645\u062A\u0646.
-SearchLabel.MnemonicKey=
-SearchLabel.Name=\u062C\u0633\u062A\u062C\u0648\:
-ViewLabel.MnemonicKey=
-ViewLabel.Name=\u0645\u062A\u0646 \u0631\u0627 \u0646\u0634\u0627\u0646 \u0628\u062F\u0647
+Advanced.Name    = \u067E\u06CC\u0634\u0631\u0641\u062A\u0647
+Advanced.ToolTip = \u0646\u0645\u0627\u06CC\u0634 \u062C\u0633\u062A\u062C\u0648\u06CC \u067E\u06CC\u0634\u0631\u0641\u062A\u0647
+
+Bible.Name = \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633
+
+GoPassage.Name    = Alias.Go
+GoPassage.ToolTip = \u0628\u0631\u0648
+
+GoSearch.Name    = Alias.Go
+GoSearch.ToolTip = \u062C\u0633\u062A\u062C\u0648\u06CC \u0645\u062A\u0646
+
+HelpAction.Name    = \u06A9\u0645\u06A9 \u062C\u0633\u062A\u062C\u0648
+HelpAction.ToolTip = \u06A9\u0645\u06A9 \u062C\u0633\u062A\u062C\u0648
+
+Index.Name    = \u062C\u0627\u0627\u0646\u06AF\u0634\u062A\u06CC \u062C\u0633\u062A\u062C\u0648
+Index.ToolTip = \u062C\u0627\u0627\u0646\u06AF\u0634\u062A\u06CC \u062C\u0633\u062A\u062C\u0648
+
+More.Name    = \u0627\u0646\u062A\u062E\u0627\u0628
+More.ToolTip = \u0645\u062A\u0646\u06CC \u0631\u0627 \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646\u06CC\u062F.
+
+PassageAction.Name    = \u0645\u062A\u0646
+PassageAction.ToolTip = \u0645\u062A\u0646\u06CC \u0631\u0627 \u0628\u0631\u0627\u06CC \u0646\u0645\u0627\u06CC\u0634 \u0648\u0627\u0631\u062F \u06A9\u0646. \u062F\u06AF\u0645\u0647 \u06A9\u0646\u062A\u0631\u0644+ \u0648\u0631\u0648\u062F \u0631\u0627 \u0641\u0634\u0627\u0631 \u062F\u0647\u06CC\u062F \u06CC\u0627 \u062F\u06AF\u0645\u0647 ... \u0631\u0627 \u0628\u0631\u0627\u06CC \u0627\u0646\u062A\u062E\u0627\u0628 \u067E\u0646\u062C\u0631\u0647 \u0645\u062A\u0646 \u0645\u0648\u0631\u062F \u0646\u0638\u0631 \u0641\u0634\u0627\u0631 \u062F\u0647\u06CC\u062F. 
+
+SearchAction.Name    = \u062C\u0633\u062A\u062C\u0648
+SearchAction.ToolTip = \u062C\u0633\u062A\u062C\u0648\u06CC \u0645\u062A\u0646.
+
+SearchLabel.Name = \u062C\u0633\u062A\u062C\u0648:
+
+ViewLabel.Name = \u0645\u062A\u0646 \u0631\u0627 \u0646\u0634\u0627\u0646 \u0628\u062F\u0647

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,26 +1,30 @@
 
-Advanced.MnemonicKey=P
-Advanced.Name=Pencarian Khusus
-Advanced.ToolTip=Pencarian Khusus
-Bible.MnemonicKey=B
-Bible.Name=Biblika\:
-GoPassage.Name=Alias.Go
-GoPassage.ToolTip=Tampilkan ayat
-GoSearch.MnemonicKey=G
-GoSearch.Name=Alias.Go
-GoSearch.ToolTip=Pencarian ayat
-HelpAction.Name=Bantuan Pencarian
-HelpAction.ToolTip=Bantuan Pencarian
-Index.MnemonicKey=E
-Index.Name=Membuat Indeks
-Index.ToolTip=Create a Search Index
-More.Name=Pilih
-More.ToolTip=Pilih ayat untuk di tamplkan
-PassageAction.Name=Ayat
-PassageAction.ToolTip=Masukan ayat yang akan di tampilkan. Tekan CTRL+ENTER atau tekan ... tombol untuk membuka pilihan ayat.
-SearchAction.Name=Pencarian
-SearchAction.ToolTip=Pencarian Ayat
-SearchLabel.MnemonicKey=P
-SearchLabel.Name=Cari\:
-ViewLabel.MnemonicKey=W
-ViewLabel.Name=Tampilkan Ayat\:
+Advanced.Name    = Pencarian Khusus
+Advanced.ToolTip = Pencarian Khusus
+
+Bible.Name = Biblika:
+
+GoPassage.Name    = Alias.Go
+GoPassage.ToolTip = Tampilkan ayat
+
+GoSearch.Name    = Alias.Go
+GoSearch.ToolTip = Pencarian ayat
+
+HelpAction.Name    = Bantuan Pencarian
+HelpAction.ToolTip = Bantuan Pencarian
+
+Index.Name    = Membuat Indeks
+Index.ToolTip = Create a Search Index
+
+More.Name    = Pilih
+More.ToolTip = Pilih ayat untuk di tamplkan
+
+PassageAction.Name    = Ayat
+PassageAction.ToolTip = Masukan ayat yang akan di tampilkan. Tekan CTRL+ENTER atau tekan ... tombol untuk membuka pilihan ayat.
+
+SearchAction.Name    = Pencarian
+SearchAction.ToolTip = Pencarian Ayat
+
+SearchLabel.Name = Cari:
+
+ViewLabel.Name = Tampilkan Ayat:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_vi.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_vi.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_vi.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,26 +1,30 @@
 
-Advanced.MnemonicKey=
-Advanced.Name=N\u00E2ng Cao
-Advanced.ToolTip=T\u00ECm Ki\u1EBFm N\u00E2ng Cao
-Bible.MnemonicKey=
-Bible.Name=Kinh Th\u00E1nh\:
-GoPassage.Name=Chuy\u1EC3n
-GoPassage.ToolTip=Hi\u1EC7n ph\u00E2n \u0111o\u1EA1n
-GoSearch.MnemonicKey=
-GoSearch.Name=Chuy\u1EC3n
-GoSearch.ToolTip=T\u00ECm ki\u1EBFm ph\u00E2n \u0111o\u1EA1n
-HelpAction.Name=T\u00ECm Ki\u1EBFm trong Tr\u1EE3 Gi\u00FAp
-HelpAction.ToolTip=T\u00ECm Ki\u1EBFm Nhanh Tr\u1EE3 Gi\u00FAp
-Index.MnemonicKey=
-Index.Name=B\u1EADt T\u00ECm Ki\u1EBFm
-Index.ToolTip=T\u1EA1o ra b\u1EA3n li\u1EC7t k\u00EA t\u00ECm ki\u1EBFm
-More.Name=Ch\u1ECDn
-More.ToolTip=Ch\u1ECDn ph\u00E2n \u0111o\u1EA1n \u0111\u1EC3 hi\u1EC7n.
-PassageAction.Name=Ph\u00E2n \u0110o\u1EA1n
-PassageAction.ToolTip=\u0110i\u1EC1n m\u1ED9t ph\u00E2n \u0111o\u1EA1n \u0111\u1EC3 hi\u1EC7n. B\u1EA5m CTRL+ENTER ho\u1EB7c b\u1EA5m n\u00FAt ... cho c\u1EED s\u1ED5 ch\u1ECDn ph\u00E2n \u0111o\u1EA1n.
-SearchAction.Name=T\u00ECm Ki\u1EBFm
-SearchAction.ToolTip=T\u00ECm ki\u1EBFm ph\u00E2n \u0111o\u1EA1n
-SearchLabel.MnemonicKey=
-SearchLabel.Name=T\u00ECm Ki\u1EBFm\:
-ViewLabel.MnemonicKey=
-ViewLabel.Name=Hi\u1EC7n Ph\u00E2n \u0110o\u1EA1n\:
+Advanced.Name    = N\u00E2ng Cao
+Advanced.ToolTip = T\u00ECm Ki\u1EBFm N\u00E2ng Cao
+
+Bible.Name = Kinh Th\u00E1nh:
+
+GoPassage.Name    = Chuy\u1EC3n
+GoPassage.ToolTip = Hi\u1EC7n ph\u00E2n \u0111o\u1EA1n
+
+GoSearch.Name    = Chuy\u1EC3n
+GoSearch.ToolTip = T\u00ECm ki\u1EBFm ph\u00E2n \u0111o\u1EA1n
+
+HelpAction.Name    = T\u00ECm Ki\u1EBFm trong Tr\u1EE3 Gi\u00FAp
+HelpAction.ToolTip = T\u00ECm Ki\u1EBFm Nhanh Tr\u1EE3 Gi\u00FAp
+
+Index.Name    = B\u1EADt T\u00ECm Ki\u1EBFm
+Index.ToolTip = T\u1EA1o ra b\u1EA3n li\u1EC7t k\u00EA t\u00ECm ki\u1EBFm
+
+More.Name    = Ch\u1ECDn
+More.ToolTip = Ch\u1ECDn ph\u00E2n \u0111o\u1EA1n \u0111\u1EC3 hi\u1EC7n.
+
+PassageAction.Name    = Ph\u00E2n \u0110o\u1EA1n
+PassageAction.ToolTip = \u0110i\u1EC1n m\u1ED9t ph\u00E2n \u0111o\u1EA1n \u0111\u1EC3 hi\u1EC7n. B\u1EA5m CTRL+ENTER ho\u1EB7c b\u1EA5m n\u00FAt ... cho c\u1EED s\u1ED5 ch\u1ECDn ph\u00E2n \u0111o\u1EA1n.
+
+SearchAction.Name    = T\u00ECm Ki\u1EBFm
+SearchAction.ToolTip = T\u00ECm ki\u1EBFm ph\u00E2n \u0111o\u1EA1n
+
+SearchLabel.Name = T\u00ECm Ki\u1EBFm:
+
+ViewLabel.Name = Hi\u1EC7n Ph\u00E2n \u0110o\u1EA1n:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_zh.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_zh.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,26 +1,30 @@
 
-Advanced.MnemonicKey=
-Advanced.Name=\u9032\u968E\u641C\u5C0B
-Advanced.ToolTip=\u9032\u968E\u641C\u5C0B
-Bible.MnemonicKey=
-Bible.Name=\u8056\u7D93\:
-GoPassage.Name=Alias.Go
-GoPassage.ToolTip=\u7814\u8B80\u7D93\u5377
-GoSearch.MnemonicKey=G
-GoSearch.Name=Alias.Go
-GoSearch.ToolTip=Search for a passage
-HelpAction.Name=Search Help
-HelpAction.ToolTip=Quick Search Help
-Index.MnemonicKey=
-Index.Name=\u958B\u555F\u641C\u5C0B
-Index.ToolTip=\u5EFA\u7ACB\u7D22\u5F15\u76EE\u9304
-More.Name=\u4E3B\u984C\u95B1\u8B80
-More.ToolTip=\u9078\u64C7\u60F3\u8B80\u7684\u7D93\u6587
-PassageAction.Name=Passage
-PassageAction.ToolTip=\u76F4\u63A5\u8F38\u5165\u7D93\u5377\u540D\u8207\u7AE0\u7BC0\uFF0C\u5F8C\u6309 CTRL+ENTER  \u6216\u662F\u76F4\u63A5\u9EDE\u9078\u4E3B\u984C\u95B1\u8B80\u4EE5\u9078\u51FA\u4F60\u60F3\u7814\u8B80\u7684\u7D93\u7BC0
-SearchAction.Name=\u641C\u5C0B
-SearchAction.ToolTip=\u8F38\u5165\u60F3\u627E\u7684\u5B57\u6216\u53E5\u5B50,\u6216\u9EDE\u9078\u53F3\u908A\u7684\u9032\u968E\u641C\u5C0B\u6309\u9215
-SearchLabel.MnemonicKey=
-SearchLabel.Name=\u641C\u5C0B\:
-ViewLabel.MnemonicKey=
-ViewLabel.Name=\u7814\u8B80\u7D93\u5377\:
+Advanced.Name    = \u9032\u968E\u641C\u5C0B
+Advanced.ToolTip = \u9032\u968E\u641C\u5C0B
+
+Bible.Name = \u8056\u7D93:
+
+GoPassage.Name    = Alias.Go
+GoPassage.ToolTip = \u7814\u8B80\u7D93\u5377
+
+GoSearch.Name    = Alias.Go
+GoSearch.ToolTip = Search for a passage
+
+HelpAction.Name    = Search Help
+HelpAction.ToolTip = Quick Search Help
+
+Index.Name    = \u958B\u555F\u641C\u5C0B
+Index.ToolTip = \u5EFA\u7ACB\u7D22\u5F15\u76EE\u9304
+
+More.Name    = \u4E3B\u984C\u95B1\u8B80
+More.ToolTip = \u9078\u64C7\u60F3\u8B80\u7684\u7D93\u6587
+
+PassageAction.Name    = Passage
+PassageAction.ToolTip = \u76F4\u63A5\u8F38\u5165\u7D93\u5377\u540D\u8207\u7AE0\u7BC0\uFF0C\u5F8C\u6309 CTRL+ENTER  \u6216\u662F\u76F4\u63A5\u9EDE\u9078\u4E3B\u984C\u95B1\u8B80\u4EE5\u9078\u51FA\u4F60\u60F3\u7814\u8B80\u7684\u7D93\u7BC0
+
+SearchAction.Name    = \u641C\u5C0B
+SearchAction.ToolTip = \u8F38\u5165\u60F3\u627E\u7684\u5B57\u6216\u53E5\u5B50,\u6216\u9EDE\u9078\u53F3\u908A\u7684\u9032\u968E\u641C\u5C0B\u6309\u9215
+
+SearchLabel.Name = \u641C\u5C0B:
+
+ViewLabel.Name = \u7814\u8B80\u7D93\u5377:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_zh_CN.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/DisplaySelectPane_zh_CN.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,26 +1,30 @@
 
-Advanced.MnemonicKey=
-Advanced.Name=\u9AD8\u7EA7\u641C\u5BFB
-Advanced.ToolTip=\u9AD8\u7EA7\u641C\u5BFB
-Bible.MnemonicKey=
-Bible.Name=\u5723\u7ECF\:
-GoPassage.Name=Alias.Go
-GoPassage.ToolTip=\u7814\u8BFB\u7ECF\u5377
-GoSearch.MnemonicKey=G
-GoSearch.Name=Alias.Go
-GoSearch.ToolTip=Search for a passage
-HelpAction.Name=Search Help
-HelpAction.ToolTip=Quick Search Help
-Index.MnemonicKey=
-Index.Name=\u5F00\u542F\u641C\u5BFB
-Index.ToolTip=\u5EFA\u7ACB\u7D22\u5F15\u76EE\u5F55
-More.Name=\u4E3B\u9898\u9605\u8BFB
-More.ToolTip=\u9009\u62E9\u60F3\u8BFB\u7684\u7ECF\u6587
-PassageAction.Name=Passage
-PassageAction.ToolTip=\u76F4\u63A5\u8F93\u5165\u7ECF\u5377\u540D\u4E0E\u7AE0\u8282\uFF0C\u540E\u6309 CTRL+ENTER  \u6216\u662F\u76F4\u63A5\u70B9\u9009\u4E3B\u9898\u9605\u8BFB
-SearchAction.Name=\u641C\u5BFB
-SearchAction.ToolTip=\u8F93\u5165\u60F3\u627E\u7684\u5B57\u6216\u53E5\u5B50\uFF0C\u6216\u70B9\u9009\u53F3\u8FB9\u7684\u9AD8\u7EA7\u641C\u5BFB\u6309\u94AE
-SearchLabel.MnemonicKey=
-SearchLabel.Name=\u641C\u5BFB\:
-ViewLabel.MnemonicKey=
-ViewLabel.Name=\u7814\u8BFB\u7ECF\u5377\:
+Advanced.Name    = \u9AD8\u7EA7\u641C\u5BFB
+Advanced.ToolTip = \u9AD8\u7EA7\u641C\u5BFB
+
+Bible.Name = \u5723\u7ECF:
+
+GoPassage.Name    = Alias.Go
+GoPassage.ToolTip = \u7814\u8BFB\u7ECF\u5377
+
+GoSearch.Name    = Alias.Go
+GoSearch.ToolTip = Search for a passage
+
+HelpAction.Name    = Search Help
+HelpAction.ToolTip = Quick Search Help
+
+Index.Name    = \u5F00\u542F\u641C\u5BFB
+Index.ToolTip = \u5EFA\u7ACB\u7D22\u5F15\u76EE\u5F55
+
+More.Name    = \u4E3B\u9898\u9605\u8BFB
+More.ToolTip = \u9009\u62E9\u60F3\u8BFB\u7684\u7ECF\u6587
+
+PassageAction.Name    = Passage
+PassageAction.ToolTip = \u76F4\u63A5\u8F93\u5165\u7ECF\u5377\u540D\u4E0E\u7AE0\u8282\uFF0C\u540E\u6309 CTRL+ENTER  \u6216\u662F\u76F4\u63A5\u70B9\u9009\u4E3B\u9898\u9605\u8BFB
+
+SearchAction.Name    = \u641C\u5BFB
+SearchAction.ToolTip = \u8F93\u5165\u60F3\u627E\u7684\u5B57\u6216\u53E5\u5B50\uFF0C\u6216\u70B9\u9009\u53F3\u8FB9\u7684\u9AD8\u7EA7\u641C\u5BFB\u6309\u94AE
+
+SearchLabel.Name = \u641C\u5BFB:
+
+ViewLabel.Name = \u7814\u8BFB\u7ECF\u5377:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -31,40 +31,43 @@
  * @author Joe Walker [joe at eireneh dot com]
  */
 final class Msg extends MsgBase {
-    static final Msg EMPTY_FILE = new Msg("BibleViewPane.EmptyFile"); //$NON-NLS-1$
-    static final Msg VERSE_LIST_DESC = new Msg("BibleViewPane.VerseListDesc"); //$NON-NLS-1$
-    static final Msg BOOKS = new Msg("BibleViewPane.Books"); //$NON-NLS-1$
-    static final Msg SELECT_BOOK = new Msg("BibleViewPane.SelectBook"); //$NON-NLS-1$
-    static final Msg SELECT_CHAPTER = new Msg("BibleViewPane.SelectChapter"); //$NON-NLS-1$
-    static final Msg SELECT_VERSE = new Msg("BibleViewPane.SelectVerse"); //$NON-NLS-1$
-    static final Msg NONE = new Msg("BibleViewPane.None"); //$NON-NLS-1$
 
-    static final Msg BAD_VERSE = new Msg("DisplaySelectPane.BadVerse"); //$NON-NLS-1$
-    static final Msg NO_INSTALLED_BIBLE = new Msg("DisplaySelectPane.NoInstalledBible"); //$NON-NLS-1$
-    static final Msg SELECT_PASSAGE_TITLE = new Msg("DisplaySelectPane.SelectPassageTitle"); //$NON-NLS-1$
-    static final Msg CLEAR = new Msg("DisplaySelectPane.Clear"); //$NON-NLS-1$
-    static final Msg UNTITLED = new Msg("DisplaySelectPane.Untitled"); //$NON-NLS-1$
-    static final Msg NO_HITS = new Msg("DisplaySelectPane.NoHits"); //$NON-NLS-1$
-    static final Msg HITS = new Msg("DisplaySelectPane.Hits"); //$NON-NLS-1$
-    static final Msg PARTIAL_HITS = new Msg("DisplaySelectPane.PartialHits"); //$NON-NLS-1$
-    static final Msg ADVANCED_TITLE = new Msg("DisplaySelectPane.AdvancedTitle"); //$NON-NLS-1$
-    static final Msg HELP_TEXT = new Msg("DisplaySelectPane.HelpText"); //$NON-NLS-1$
-    static final Msg HELP_TITLE = new Msg("DisplaySelectPane.HelpTitle"); //$NON-NLS-1$
+    /**
+     * Get the internationalized text, but return key if key is unknown.
+     * 
+     * @param key
+     * @return the internationalized text
+     */
+    public static String gettext(String key)
+    {
+        return msg.lookup(key);
+    }
 
-    static final Msg ERROR = new Msg("PassageSelectionPane.Error"); //$NON-NLS-1$
-    static final Msg SUMMARY = new Msg("PassageSelectionPane.Summary"); //$NON-NLS-1$
+    /**
+     * Get the internationalized text, but return key if key is unknown.
+     * The text requires one parameter to be passed.
+     * 
+     * @param key
+     * @param param
+     * @return the formatted, internationalized text
+     */
+    public static String gettext(String key, Object param)
+    {
+        return msg.toString(key, param);
+    }
 
-    static final Msg PRESET_START = new Msg("AdvancedSearchPane.PresetStart"); //$NON-NLS-1$
-    static final Msg PRESET_END = new Msg("AdvancedSearchPane.PresetEnd"); //$NON-NLS-1$
-    static final Msg PRESETS = new Msg("AdvancedSearchPane.Presets"); //$NON-NLS-1$
-    static final Msg ADVANCED_SELECT_TITLE = new Msg("AdvancedSearchPane.SelectPassageTitle"); //$NON-NLS-1$
-    static final Msg RANK = new Msg("AdvancedSearchPane.Rank"); //$NON-NLS-1$
-    static final Msg RANK_ONE = new Msg("AdvancedSearchPane.RankOne"); //$NON-NLS-1$
-
     /**
-     * Passthrough ctor
+     * Get the internationalized text, but return key if key is unknown.
+     * The text requires one parameter to be passed.
+     * 
+     * @param key
+     * @param param
+     * @return the formatted, internationalized text
      */
-    private Msg(String name) {
-        super(name);
+    public static String gettext(String key, Object[] params)
+    {
+        return msg.toString(key, params);
     }
+
+    private static MsgBase msg = new Msg();
 }

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,58 +1,56 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
 
-BibleViewPane.EmptyFile=File {0} is empty
-BibleViewPane.VerseListDesc=Verse Lists ({0})
-BibleViewPane.Books=Books
-BibleViewPane.SelectBook=Select a book
-BibleViewPane.SelectChapter=Select a chapter
-BibleViewPane.SelectVerse=Select a verse
-BibleViewPane.None=None
+( = (
 
-DisplaySelectPane.BadVerse=Error finding verse
-DisplaySelectPane.NoInstalledBible=No Bible is installed
-DisplaySelectPane.SelectPassageTitle=Select Passage
-# Clear is the "key" word in Untitled
-DisplaySelectPane.Clear=Untitled
-DisplaySelectPane.Untitled=Untitled {0}
-DisplaySelectPane.NoHits=Could not find verses with: {0}
-DisplaySelectPane.Hits=There are {1} verses with: {0}
-DisplaySelectPane.PartialHits=Showing {1} of {2} verses with: {0}
-DisplaySelectPane.HelpTitle=Search Quick Help
-DisplaySelectPane.HelpText=<html><b>Search Tips.</b><br>\
-	You can use || to join phrases, for example "<code>balaam || balak</code>" finds passages containing Balak OR Balaam<br>\
-	Using && requires both words, e.g. "<code>aaron && moses</code>" finds passages containing both Aaron AND Moses<br>\
-	Using a ! removes words from the result e.g. "<code>lord ! jesus</code>" is passages containing Lord BUT NOT Jesus<br>\
-	Using ~2 widens the passage by 2 verses either side on any match. So "<code>amminadab ~1 perez</code>" finds<br>\
-	verses containting Amminadab within 1 verse of mention of Perez.<br>\
-	Using +[Gen-Exo] at the beginning will restrict a search to that range of verses.
-DisplaySelectPane.Bible=Bible:
-DisplaySelectPane.AdvancedTitle=Advanced Search
+) = )
 
-PassageSelectionPane.Error=Error: {0}
-PassageSelectionPane.Summary=Summary: {0}
+<html><b>Search\ Tips.</b><br>You\ can\ use\ ||\ to\ join\ phrases,\ for\ example\ "<code>balaam\ ||\ balak</code>"\ finds\ passages\ containing\ Balak\ OR\ Balaam<br>Using\ &&\ requires\ both\ words,\ e.g.\ "<code>aaron\ &&\ moses</code>"\ finds\ passages\ containing\ both\ Aaron\ AND\ Moses<br>Using\ a\ \!\ removes\ words\ from\ the\ result\ e.g.\ "<code>lord\ \!\ jesus</code>"\ is\ passages\ containing\ Lord\ BUT\ NOT\ Jesus<br>Using\ ~2\ widens\ the\ passage\ by\ 2\ verses\ either\ side\ on\ any\ match.\ So\ "<code>amminadab\ ~1\ perez</code>"\ finds<br>verses\ containting\ Amminadab\ within\ 1\ verse\ of\ mention\ of\ Perez.<br>Using\ +[Gen-Exo]\ at\ the\ beginning\ will\ restrict\ a\ search\ to\ that\ range\ of\ verses. = <html><b>Search Tips.</b><br>You can use || to join phrases, for example "<code>balaam || balak</code>" finds passages containing Balak OR Balaam<br>Using && requires both words, e.g. "<code>aaron && moses</code>" finds passages containing both Aaron AND Moses<br>Using a ! removes words from the result e.g. "<code>lord ! jesus</code>" is passages containing Lord BUT NOT Jesus<br>Using ~2 widens the passage by 2 verses either side on any match. So "<code>amminadab ~1 perez</code>" finds<br>verses containting Amminadab within 1 verse of mention of Perez.<br>Using +[Gen-Exo] at the beginning will restrict a search to that range of verses.
 
-AdvancedSearchPane.PresetStart=(
-AdvancedSearchPane.PresetEnd=)
-AdvancedSearchPane.Presets=The Whole Bible|\
-	All Prophecy (Deu 28, Isa-Mal, Rev)|\
-	Old Testament (Gen-Mal)|\
-	New Testament (Mat-Rev)|\
-	The Pentateuch (Gen-Deu)|\
-	History (Josh-Est)|\
-	Poetry (Job-Song)|\
-	Major Prophets (Isa-Dan)|\
-	Minor Prophets (Hos-Mal)|\
-	Gospels and Acts (Mat-Act)|\
-	Letters to People (Rom-Heb)|\
-	Letters from People (Jam-Jude)|\
-	Custom
+Advanced\ Search = Advanced Search
 
-AdvancedSearchPane.SelectPassageTitle=Select Passages to Restrict Search to
-AdvancedSearchPane.Rank=Show {0} verses:
-AdvancedSearchPane.RankOne=Show best verse:
+Bible\: = Bible:
 
+Books = Books
+
+Could\ not\ find\ verses\ with\:\ {0} = Could not find verses with: {0}
+
+Error\ finding\ verse = Error finding verse
+
+Error\:\ {0} = Error: {0}
+
+File\ {0}\ is\ empty = File {0} is empty
+
+No\ Bible\ is\ installed = No Bible is installed
+
+None = None
+
+Search\ Quick\ Help = Search Quick Help
+
+Select\ Passage = Select Passage
+
+Select\ Passages\ to\ Restrict\ Search\ to = Select Passages to Restrict Search to
+
+Select\ a\ book = Select a book
+
+Select\ a\ chapter = Select a chapter
+
+Select\ a\ verse = Select a verse
+
+Show\ all\ verses\: = Show all verses:
+
+Show\ best\ verse\: = Show best verse:
+
+Show\ {0}\ verses\: = Show {0} verses:
+
+Showing\ {1}\ of\ {2}\ verses\ with\:\ {0} = Showing {1} of {2} verses with: {0}
+
+Summary\:\ {0} = Summary: {0}
+
+The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom = The Whole Bible|All Prophecy (Deu 28, Isa-Mal, Rev)|Old Testament (Gen-Mal)|New Testament (Mat-Rev)|The Pentateuch (Gen-Deu)|History (Josh-Est)|Poetry (Job-Song)|Major Prophets (Isa-Dan)|Minor Prophets (Hos-Mal)|Gospels and Acts (Mat-Act)|Letters to People (Rom-Heb)|Letters from People (Jam-Jude)|Custom
+
+There\ are\ {1}\ verses\ with\:\ {0} = There are {1} verses with: {0}
+
+Untitled = Untitled
+
+Untitled\ {0} = Untitled {0}
+
+Verse\ Lists\ ({0}) = Verse Lists ({0})

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,29 +1,56 @@
-#Created by JInto - www.guh-software.de
-#Sat Apr 05 20:07:48 CEST 2008
-AdvancedSearchPane.PresetEnd=)
-AdvancedSearchPane.PresetStart=(
-AdvancedSearchPane.Presets=Die ganze Bibel|Alle Propheten (Deu 28, Isa-Mal, Rev)|Altes Testament Testament (Gen-Mal)|Neues Testament (Mat-Rev)|Der Pentateuch (Gen-Deu)|Geschichtschreibung (Josh-Est)|Poesie (Job-Song)|Gro\u00DFe Propheten (Isa-Dan)|Kleine Propheten (Hos-Mal)|Evangelien und Apostelgeschichte (Mat-Act)|Pauslusbriefe (Rom-Heb)|Briefe von anderen Aposteln (Jam-Jude)|Custom
-AdvancedSearchPane.Rank=Zeige {0} Verse\:
-AdvancedSearchPane.RankOne=Zeige den besten Vers\:
-AdvancedSearchPane.SelectPassageTitle=Beschr\u00E4nkung der Passagen
-BibleViewPane.Books=B\u00FCcher
-BibleViewPane.EmptyFile=Datei {0} ist leer
-BibleViewPane.None=Keines
-BibleViewPane.SelectBook=Buch
-BibleViewPane.SelectChapter=Kapitel
-BibleViewPane.SelectVerse=Vers
-BibleViewPane.VerseListDesc=Versliste ({0})
-DisplaySelectPane.AdvancedTitle=Suche (fortgeschritten)
-DisplaySelectPane.BadVerse=Vers nicht gefunden
-DisplaySelectPane.Bible=Bibel\:
-DisplaySelectPane.Clear=Ohne Titel
-DisplaySelectPane.HelpText=<html><b>Suchhilfe\:</b><br>Mit || k\u00F6nnen verschiedene Suchbegriffe miteinander verbunden werden. Zum Beispiel "<code>Balaam || Balak</code>" findet alle Abschnitte mit Balak oder Balaam<br>Mit && verbundene Worte, z.B. "<code>Aaron && Moses</code>" findet alle Abschnitte die sowohl Aaron UND Moses enthalten<br>Mit \! k\u00F6nnen Sie bestimmte Suchbegriffe ausschlie\u00DFen, z.B "<code>Herr \! Jesus</code>" sucht nach allen Passagen die Herr enthalten aber NICHT Jesus<br>Um Ihre Suche \u00FCber Nachbarverse auszuweiten k\u00F6nnen Sie ~2 verwenden. <code>Amminadab ~1 Perez</code>" findet<br>alle Verse mit Amminadab mit Perez in der n\u00E4chsten Umgebung (Ein Vers nach oben oder unten)
-DisplaySelectPane.HelpTitle=Kurzhilfe zur Suche
-DisplaySelectPane.Hits=Folgende {1} Verse mit {0} gefunden
-DisplaySelectPane.NoHits=Verse mit {0} nicht gefunden
-DisplaySelectPane.NoInstalledBible=Keine Bibel installiert
-DisplaySelectPane.PartialHits=Folgende {1} von {2} Versen mit\: {0}
-DisplaySelectPane.SelectPassageTitle=Abschnitt ausw\u00E4hlen
-DisplaySelectPane.Untitled=Ohne Titel {0}
-PassageSelectionPane.Error=Fehler\: {0}
-PassageSelectionPane.Summary=Zusammenfassung\: {0}
+
+( = (
+
+) = )
+
+<html><b>Search\ Tips.</b><br>You\ can\ use\ ||\ to\ join\ phrases,\ for\ example\ "<code>balaam\ ||\ balak</code>"\ finds\ passages\ containing\ Balak\ OR\ Balaam<br>Using\ &&\ requires\ both\ words,\ e.g.\ "<code>aaron\ &&\ moses</code>"\ finds\ passages\ containing\ both\ Aaron\ AND\ Moses<br>Using\ a\ \!\ removes\ words\ from\ the\ result\ e.g.\ "<code>lord\ \!\ jesus</code>"\ is\ passages\ containing\ Lord\ BUT\ NOT\ Jesus<br>Using\ ~2\ widens\ the\ passage\ by\ 2\ verses\ either\ side\ on\ any\ match.\ So\ "<code>amminadab\ ~1\ perez</code>"\ finds<br>verses\ containting\ Amminadab\ within\ 1\ verse\ of\ mention\ of\ Perez.<br>Using\ +[Gen-Exo]\ at\ the\ beginning\ will\ restrict\ a\ search\ to\ that\ range\ of\ verses. = <html><b>Suchhilfe:</b><br>Mit || k\u00F6nnen verschiedene Suchbegriffe miteinander verbunden werden. Zum Beispiel "<code>Balaam || Balak</code>" findet alle Abschnitte mit Balak oder Balaam<br>Mit && verbundene Worte, z.B. "<code>Aaron && Moses</code>" findet alle Abschnitte die sowohl Aaron UND Moses enthalten<br>Mit ! k\u00F6nnen Sie bestimmte Suchbegriffe ausschlie\u00DFen, z.B "<code>Herr ! Jesus</code>" sucht nach allen Passagen die Herr enthalten aber NICHT Jesus<br>Um Ihre Suche \u00FCber Nachbarverse auszuweiten k\u00F6nnen Sie ~2 verwenden. <code>Amminadab ~1 Perez</code>" findet<br>alle Verse mit Amminadab mit Perez in der n\u00E4chsten Umgebung (Ein Vers nach oben oder unten)
+
+Advanced\ Search = Suche (fortgeschritten)
+
+Bible\: = Bibel:
+
+Books = B\u00FCcher
+
+Could\ not\ find\ verses\ with\:\ {0} = Verse mit {0} nicht gefunden
+
+Error\ finding\ verse = Vers nicht gefunden
+
+Error\:\ {0} = Fehler: {0}
+
+File\ {0}\ is\ empty = Datei {0} ist leer
+
+No\ Bible\ is\ installed = Keine Bibel installiert
+
+None = Keines
+
+Search\ Quick\ Help = Kurzhilfe zur Suche
+
+Select\ Passage = Abschnitt ausw\u00E4hlen
+
+Select\ Passages\ to\ Restrict\ Search\ to = Beschr\u00E4nkung der Passagen
+
+Select\ a\ book = Buch
+
+Select\ a\ chapter = Kapitel
+
+Select\ a\ verse = Vers
+
+Show\ all\ verses\: = Zeige {0} Verse:
+
+Show\ best\ verse\: = Zeige den besten Vers:
+
+Show\ {0}\ verses\: = Zeige {0} Verse:
+
+Showing\ {1}\ of\ {2}\ verses\ with\:\ {0} = Folgende {1} von {2} Versen mit: {0}
+
+Summary\:\ {0} = Zusammenfassung: {0}
+
+The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom = Die ganze Bibel|Alle Propheten (Deu 28, Isa-Mal, Rev)|Altes Testament Testament (Gen-Mal)|Neues Testament (Mat-Rev)|Der Pentateuch (Gen-Deu)|Geschichtschreibung (Josh-Est)|Poesie (Job-Song)|Gro\u00DFe Propheten (Isa-Dan)|Kleine Propheten (Hos-Mal)|Evangelien und Apostelgeschichte (Mat-Act)|Pauslusbriefe (Rom-Heb)|Briefe von anderen Aposteln (Jam-Jude)|Custom
+
+There\ are\ {1}\ verses\ with\:\ {0} = Folgende {1} Verse mit {0} gefunden
+
+Untitled = Ohne Titel
+
+Untitled\ {0} = Ohne Titel {0}
+
+Verse\ Lists\ ({0}) = Versliste ({0})

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,58 +1,56 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
 
-BibleViewPane.EmptyFile={0} \u062E\u0644\u06CC \u0647\u0627\u0633\u062A
-BibleViewPane.VerseListDesc=\u0622\u06CC\u0627\u062A ({0})
-BibleViewPane.Books=\u06A9\u062A\u0627\u0628\u0647\u0627
-BibleViewPane.SelectBook=\u06A9\u062A\u0627\u0628 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
-BibleViewPane.SelectChapter=\u0628\u0627\u0628 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
-BibleViewPane.SelectVerse=\u0622\u06CC\u0647 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
-BibleViewPane.None=\u0647\u06CC\u062C
+( = (
 
-DisplaySelectPane.BadVerse=\u0627\u0634\u062A\u0628\u0627 \u0628\u0627 \u0627\u0646 \u0622\u06CC\u0647
-DisplaySelectPane.NoInstalledBible=\u0647\u06CC\u062C \u06A9\u062A\u0627\u0628 \u0646\u0636\u0628 \u0646\u0634\u062F\u0647
-DisplaySelectPane.SelectPassageTitle=\u0627\u0646\u062A\u062E\u0627\u0628 \u0642\u0633\u0645\u062A
-# Clear is the "key" word in Untitled
-DisplaySelectPane.Clear=\u0628\u06CC \u0627\u0633\u0645
-DisplaySelectPane.Untitled=\u0628\u06CC \u0627\u0633\u0645 {0}
-DisplaySelectPane.NoHits=\u0647\u06CC\u062C \u0622\u06CC\u0647 \u0628\u0627 {0} \u067E\u06CC\u062F\u0627 \u0646\u0634\u062F
-DisplaySelectPane.Hits= {1} \u0622\u06CC\u0647 \u0628\u0627 {0}
-DisplaySelectPane.PartialHits= {1} \u0627\u0632 {2} \u0622\u06CC\u0647 \u0628\u0627 {0}
-DisplaySelectPane.HelpTitle=\u0631\u0647\u0646\u0645\u0627
-DisplaySelectPane.HelpText=<html><b>\u0631\u0647\u0646\u0645\u0627\u06CC \u062C\u0633\u062A\u062C\u0648.</b><br>\
-	You can use || to join phrases, for example "<code>balaam || balak</code>" finds passages containing Balak OR Balaam<br>\
-	Using && requires both words, e.g. "<code>aaron && moses</code>" finds passages containing both Aaron AND Moses<br>\
-	Using a ! removes words from the result e.g. "<code>lord ! jesus</code>" is passages containing Lord BUT NOT Jesus<br>\
-	Using ~2 widens the passage by 2 verses either side on any match. So "<code>amminadab ~1 perez</code>" finds<br>\
-	verses containting Amminadab within 1 verse of mention of Perez.<br>\
-	Using +[Gen-Exo] at the beginning will restrict a search to that range of verses.
-DisplaySelectPane.Bible=\u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633:
-DisplaySelectPane.AdvancedTitle=\u062C\u0633\u062A\u062C\u0648
+) = )
 
-PassageSelectionPane.Error=\u0627\u0634\u062A\u0628\u0627: {0}
-PassageSelectionPane.Summary=\u062E\u0644\u0627\u0645\u0647: {0}
+<html><b>Search\ Tips.</b><br>You\ can\ use\ ||\ to\ join\ phrases,\ for\ example\ "<code>balaam\ ||\ balak</code>"\ finds\ passages\ containing\ Balak\ OR\ Balaam<br>Using\ &&\ requires\ both\ words,\ e.g.\ "<code>aaron\ &&\ moses</code>"\ finds\ passages\ containing\ both\ Aaron\ AND\ Moses<br>Using\ a\ \!\ removes\ words\ from\ the\ result\ e.g.\ "<code>lord\ \!\ jesus</code>"\ is\ passages\ containing\ Lord\ BUT\ NOT\ Jesus<br>Using\ ~2\ widens\ the\ passage\ by\ 2\ verses\ either\ side\ on\ any\ match.\ So\ "<code>amminadab\ ~1\ perez</code>"\ finds<br>verses\ containting\ Amminadab\ within\ 1\ verse\ of\ mention\ of\ Perez.<br>Using\ +[Gen-Exo]\ at\ the\ beginning\ will\ restrict\ a\ search\ to\ that\ range\ of\ verses. = <html><b>\u0631\u0647\u0646\u0645\u0627\u06CC \u062C\u0633\u062A\u062C\u0648.</b><br>You can use || to join phrases, for example "<code>balaam || balak</code>" finds passages containing Balak OR Balaam<br>Using && requires both words, e.g. "<code>aaron && moses</code>" finds passages containing both Aaron AND Moses<br>Using a ! removes words from the result e.g. "<code>lord ! jesus</code>" is passages containing Lord BUT NOT Jesus<br>Using ~2 widens the passage by 2 verses either side on any match. So "<code>amminadab ~1 perez</code>" finds<br>verses containting Amminadab within 1 verse of mention of Perez.<br>Using +[Gen-Exo] at the beginning will restrict a search to that range of verses.
 
-AdvancedSearchPane.PresetStart=(
-AdvancedSearchPane.PresetEnd=)
-AdvancedSearchPane.Presets=\u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u06A9\u0627\u0645\u0644|\
-	\u0646\u0628\u0627\u0648\u062A\u06CC \u06A9\u0627\u0645\u0644 (Deu 28, Isa-Mal, Rev)|\
-	\u0639\u0647\u062F \u0639\u062A\u06CC\u0642 (Gen-Mal)|\
-	\u0639\u0647\u062F \u062C\u062F\u06CC\u062F (Mat-Rev)|\
-	\u062A\u0648\u0631\u0627\u062A (Gen-Deu)|\
-	\u062A\u0631\u06CC\u062E(Josh-Est)|\
-	\u0634\u0627\u0639\u0631 (Job-Song)|\
-	\u0646\u0628\u06CC\u200C\u0647\u0627 \u0628\u0632\u0631\u06AF (Isa-Dan)|\
-	\u0646\u0628\u06CC\u200C\u0647\u0627 \u06A9\u0648\u062C\u06A9 (Hos-Mal)|\
-	\u0627\u062D\u0646\u062C\u062D\u0644 \u0648 \u0627\u0639\u0645\u0627\u0644 (Mat-Act)|\
-	\u0646\u0645\u0647\u200C\u0647\u0627 \u067E \u067E\u0648\u0644\u0627\u0633 (Rom-Heb)|\
-	\u0646\u0627\u0645\u0647\u200C\u0647\u0627 \u0631\u0633\u0648\u0644\u0627\u0646 \u062F\u06CC\u06AF\u0627\u0631 (Jam-Jude)|\
-	\u0633\u0627\u062E\u062A\u0647 \u0634\u0645\u0627
+Advanced\ Search = \u062C\u0633\u062A\u062C\u0648
 
-AdvancedSearchPane.SelectPassageTitle=\u0642\u0633\u0645\u062A\u0647\u0627 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
-AdvancedSearchPane.Rank= {0}\u0622\u06CC\u0647
-AdvancedSearchPane.RankOne=\u0622\u06CC\u0647 \u0628\u0647\u062A\u0631\u06CC\u0646
+Bible\: = \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633:
 
+Books = \u06A9\u062A\u0627\u0628\u0647\u0627
+
+Could\ not\ find\ verses\ with\:\ {0} = \u0647\u06CC\u062C \u0622\u06CC\u0647 \u0628\u0627 {0} \u067E\u06CC\u062F\u0627 \u0646\u0634\u062F
+
+Error\ finding\ verse = \u0627\u0634\u062A\u0628\u0627 \u0628\u0627 \u0627\u0646 \u0622\u06CC\u0647
+
+Error\:\ {0} = \u0627\u0634\u062A\u0628\u0627: {0}
+
+File\ {0}\ is\ empty = {0} \u062E\u0644\u06CC \u0647\u0627\u0633\u062A
+
+No\ Bible\ is\ installed = \u0647\u06CC\u062C \u06A9\u062A\u0627\u0628 \u0646\u0636\u0628 \u0646\u0634\u062F\u0647
+
+None = \u0647\u06CC\u062C
+
+Search\ Quick\ Help = \u0631\u0647\u0646\u0645\u0627
+
+Select\ Passage = \u0627\u0646\u062A\u062E\u0627\u0628 \u0642\u0633\u0645\u062A
+
+Select\ Passages\ to\ Restrict\ Search\ to = \u0642\u0633\u0645\u062A\u0647\u0627 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
+
+Select\ a\ book = \u06A9\u062A\u0627\u0628 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
+
+Select\ a\ chapter = \u0628\u0627\u0628 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
+
+Select\ a\ verse = \u0622\u06CC\u0647 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
+
+Show\ all\ verses\: = {0}\u0622\u06CC\u0647
+
+Show\ best\ verse\: = \u0622\u06CC\u0647 \u0628\u0647\u062A\u0631\u06CC\u0646
+
+Show\ {0}\ verses\: = {0}\u0622\u06CC\u0647
+
+Showing\ {1}\ of\ {2}\ verses\ with\:\ {0} = {1} \u0627\u0632 {2} \u0622\u06CC\u0647 \u0628\u0627 {0}
+
+Summary\:\ {0} = \u062E\u0644\u0627\u0645\u0647: {0}
+
+The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom = \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u06A9\u0627\u0645\u0644|\u0646\u0628\u0627\u0648\u062A\u06CC \u06A9\u0627\u0645\u0644 (Deu 28, Isa-Mal, Rev)|\u0639\u0647\u062F \u0639\u062A\u06CC\u0642 (Gen-Mal)|\u0639\u0647\u062F \u062C\u062F\u06CC\u062F (Mat-Rev)|\u062A\u0648\u0631\u0627\u062A (Gen-Deu)|\u062A\u0631\u06CC\u062E(Josh-Est)|\u0634\u0627\u0639\u0631 (Job-Song)|\u0646\u0628\u06CC\u200C\u0647\u0627 \u0628\u0632\u0631\u06AF (Isa-Dan)|\u0646\u0628\u06CC\u200C\u0647\u0627 \u06A9\u0648\u062C\u06A9 (Hos-Mal)|\u0627\u062D\u0646\u062C\u062D\u0644 \u0648 \u0627\u0639\u0645\u0627\u0644 (Mat-Act)|\u0646\u0645\u0647\u200C\u0647\u0627 \u067E \u067E\u0648\u0644\u0627\u0633 (Rom-Heb)|\u0646\u0627\u0645\u0647\u200C\u0647\u0627 \u0631\u0633\u0648\u0644\u0627\u0646 \u062F\u06CC\u06AF\u0627\u0631 (Jam-Jude)|\u0633\u0627\u062E\u062A\u0647 \u0634\u0645\u0627
+
+There\ are\ {1}\ verses\ with\:\ {0} = {1} \u0622\u06CC\u0647 \u0628\u0627 {0}
+
+Untitled = \u0628\u06CC \u0627\u0633\u0645
+
+Untitled\ {0} = \u0628\u06CC \u0627\u0633\u0645 {0}
+
+Verse\ Lists\ ({0}) = \u0622\u06CC\u0627\u062A ({0})

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,58 +1,56 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
 
-BibleViewPane.EmptyFile=Berkas {0} kosong
-BibleViewPane.VerseListDesc=Daftar Ayat ({0})
-BibleViewPane.Books=Buku
-BibleViewPane.SelectBook=Pilih Buku
-BibleViewPane.SelectChapter=Pilih Pasal
-BibleViewPane.SelectVerse=Pilih Ayat
-BibleViewPane.None=None
+( = (
 
-DisplaySelectPane.BadVerse=Gagal mencari ayat
-DisplaySelectPane.NoInstalledBible=Tidak ada Teks Biblika yang terinstall
-DisplaySelectPane.SelectPassageTitle=Pilih Ayat
-# Clear is the "key" word in Untitled
-DisplaySelectPane.Clear=Untitled
-DisplaySelectPane.Untitled=Untitled {0}
-DisplaySelectPane.NoHits=Tidak dapat menemukan ayat: {0}
-DisplaySelectPane.Hits=Ada {1} ayat dengan: {0}
-DisplaySelectPane.PartialHits=Menampilkan {1} dari {2} ayat dengan: {0}
-DisplaySelectPane.HelpTitle=Bantuan Pencarian
-DisplaySelectPane.HelpText=<html><b>Tips pencarian.</b><br>\
-	Gunakan || untuk menggabungkan frase, mis "<code>balaam || balak</code>" mencari ayat berisi Balak ATAU Balaam<br>\
-	Penggunaan && membutuhkan kedua kata, mis "<code>aaron && moses</code>" mencari ayat berisi baik Aaron DAN Moses<br>\
-	Penggunaan ! removes words dari hasil mis "<code>lord ! jesus</code>" mencari ayat yang berisi Lord TETAPI TIDAK Jesus<br>\
-	Penggunaan ~2 memperlebar hasil pencarian dengan 2 ayat baik sebelum atau sesudah. So "<code>amminadab ~1 perez</code>" mencari<br>\
-	ayat berisi Amminadab dengan batasn  1 ayat berisi Perez.<br>\
-	Penggunaan +[Gen-Exo] pada awalan akan membatasi pencarian pada kitab tersebut.
-DisplaySelectPane.Bible=Alkitab:
-DisplaySelectPane.AdvancedTitle=Pencarian Khusus
+) = )
 
-PassageSelectionPane.Error=Kesalahan: {0}
-PassageSelectionPane.Summary=Kesimpulan: {0}
+<html><b>Search\ Tips.</b><br>You\ can\ use\ ||\ to\ join\ phrases,\ for\ example\ "<code>balaam\ ||\ balak</code>"\ finds\ passages\ containing\ Balak\ OR\ Balaam<br>Using\ &&\ requires\ both\ words,\ e.g.\ "<code>aaron\ &&\ moses</code>"\ finds\ passages\ containing\ both\ Aaron\ AND\ Moses<br>Using\ a\ \!\ removes\ words\ from\ the\ result\ e.g.\ "<code>lord\ \!\ jesus</code>"\ is\ passages\ containing\ Lord\ BUT\ NOT\ Jesus<br>Using\ ~2\ widens\ the\ passage\ by\ 2\ verses\ either\ side\ on\ any\ match.\ So\ "<code>amminadab\ ~1\ perez</code>"\ finds<br>verses\ containting\ Amminadab\ within\ 1\ verse\ of\ mention\ of\ Perez.<br>Using\ +[Gen-Exo]\ at\ the\ beginning\ will\ restrict\ a\ search\ to\ that\ range\ of\ verses. = <html><b>Tips pencarian.</b><br>Gunakan || untuk menggabungkan frase, mis "<code>balaam || balak</code>" mencari ayat berisi Balak ATAU Balaam<br>Penggunaan && membutuhkan kedua kata, mis "<code>aaron && moses</code>" mencari ayat berisi baik Aaron DAN Moses<br>Penggunaan ! removes words dari hasil mis "<code>lord ! jesus</code>" mencari ayat yang berisi Lord TETAPI TIDAK Jesus<br>Penggunaan ~2 memperlebar hasil pencarian dengan 2 ayat baik sebelum atau sesudah. So "<code>amminadab ~1 perez</code>" mencari<br>ayat berisi Amminadab dengan batasn  1 ayat berisi Perez.<br>Penggunaan +[Gen-Exo] pada awalan akan membatasi pencarian pada kitab tersebut.
 
-AdvancedSearchPane.PresetStart=(
-AdvancedSearchPane.PresetEnd=)
-AdvancedSearchPane.Presets=Semua Kitab|\
-	Nubuatan (Deu 28, Isa-Mal, Rev)|\
-	Perjanjian Lama (Gen-Mal)|\
-	Perjanjian Baru (Mat-Rev)|\
-	5 Kitab Musa (Gen-Deu)|\
-	Sejarah (Josh-Est)|\
-	Puisi (Job-Song)|\
-	Nabi Besar (Isa-Dan)|\
-	Nabi Kecil (Hos-Mal)|\
-	Injil dan Kis (Mat-Act)|\
-	Surat kepada Jemaat (Rom-Heb)|\
-	Surat dari Jemaat (Jam-Jude)|\
-	Kustom
+Advanced\ Search = Pencarian Khusus
 
-AdvancedSearchPane.SelectPassageTitle=Pilih ayat dengan batasan
-AdvancedSearchPane.Rank=Menampilkan {0} ayat:
-AdvancedSearchPane.RankOne=Menampilan ayat:
+Bible\: = Alkitab:
 
+Books = Buku
+
+Could\ not\ find\ verses\ with\:\ {0} = Tidak dapat menemukan ayat: {0}
+
+Error\ finding\ verse = Gagal mencari ayat
+
+Error\:\ {0} = Kesalahan: {0}
+
+File\ {0}\ is\ empty = Berkas {0} kosong
+
+No\ Bible\ is\ installed = Tidak ada Teks Biblika yang terinstall
+
+None = None
+
+Search\ Quick\ Help = Bantuan Pencarian
+
+Select\ Passage = Pilih Ayat
+
+Select\ Passages\ to\ Restrict\ Search\ to = Pilih ayat dengan batasan
+
+Select\ a\ book = Pilih Buku
+
+Select\ a\ chapter = Pilih Pasal
+
+Select\ a\ verse = Pilih Ayat
+
+Show\ all\ verses\: = Menampilkan {0} ayat:
+
+Show\ best\ verse\: = Menampilan ayat:
+
+Show\ {0}\ verses\: = Menampilkan {0} ayat:
+
+Showing\ {1}\ of\ {2}\ verses\ with\:\ {0} = Menampilkan {1} dari {2} ayat dengan: {0}
+
+Summary\:\ {0} = Kesimpulan: {0}
+
+The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom = Semua Kitab|Nubuatan (Deu 28, Isa-Mal, Rev)|Perjanjian Lama (Gen-Mal)|Perjanjian Baru (Mat-Rev)|5 Kitab Musa (Gen-Deu)|Sejarah (Josh-Est)|Puisi (Job-Song)|Nabi Besar (Isa-Dan)|Nabi Kecil (Hos-Mal)|Injil dan Kis (Mat-Act)|Surat kepada Jemaat (Rom-Heb)|Surat dari Jemaat (Jam-Jude)|Kustom
+
+There\ are\ {1}\ verses\ with\:\ {0} = Ada {1} ayat dengan: {0}
+
+Untitled = Untitled
+
+Untitled\ {0} = Untitled {0}
+
+Verse\ Lists\ ({0}) = Daftar Ayat ({0})

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_vi.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_vi.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_vi.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,99 +1,56 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, \u002D, ', ...)
-
-BibleViewPane.EmptyFile=T\u1EADp Tin {0} tr\u1ED1ng r\u1ED7ng
-#File {0} is empty
-BibleViewPane.VerseListDesc=C\u00E1c Danh S\u00E1ch C\u00E2u
-#Verse Lists ({0})
-BibleViewPane.Books=C\u00E1c S\u00E1ch
-#Books
-BibleViewPane.SelectBook=Ch\u1ECDn m\u1ED9t quy\u1EC3n s\u00E1ch
-#Select a book
-BibleViewPane.SelectChapter=Ch\u1ECDn m\u1ED9t ch\u01B0\u01A1ng
-#Select a chapter
-BibleViewPane.SelectVerse=Ch\u1ECDn m\u1ED9t c\u00E2u
-#Select a verse
-BibleViewPane.None=Kh\u00F4ng c\u00F3
-#None
-
-DisplaySelectPane.BadVerse=L\u1ED7i t\u00ECm c\u00E2u
-#Error finding verse
-DisplaySelectPane.NoInstalledBible=Ch\u01B0a c\u00F3 cu\u1ED1n Kinh Th\u00E1nh c\u00E0i \u0111\u1EB7t
-#No Bible is installed
-DisplaySelectPane.SelectPassageTitle=Ch\u1ECDn Ph\u00E2n \u0110o\u1EA1n
-#Select Passage
-# Clear is the "key" word in Untitled
-DisplaySelectPane.Clear=Untitled
-DisplaySelectPane.Untitled=Untitled {0}
-DisplaySelectPane.NoHits=Kh\u00F4ng t\u00ECm \u0111\u01B0\u1EE3c c\u00E2u c\u00F3: {0}
-#Could not find verses with: {0}
-DisplaySelectPane.Hits=C\u00F3 {1} c\u00E2u v\u1EDBi: {0}
-#There are {1} verses with: {0}
-DisplaySelectPane.PartialHits=Hi\u1EC7n {1} c\u00E2u v\u1EDBi: {0}
-#Showing {1} of {2} verses with: {0}
-DisplaySelectPane.HelpTitle=T\u00ECm Ki\u1EBFm trong Tr\u1EE3 Gi\u00FAp Nhanh
-#Search Quick Help
-DisplaySelectPane.HelpText=#<html><b>G\u1EE3i \u00DD T\u00ECm Ki\u1EBFm.</b><br>\
-#<html><b>Search Tips.</b><br>\
-	B\u1EA1n c\u00F3 th\u1EC3 s\u1EED d\u1EE5ng || \u0111\u1EC3 k\u1EBFt h\u1EE3p c\u1EE5m t\u1EEB. V\u00ED d\u1EE5, "<code>\u0111a\u002Dv\u00EDt || sa\u002Dl\u00F4\u002Dm\u00F4n</code>" t\u00ECm \u0111\u01B0\u1EE3c ph\u00E2n \u0111o\u1EA1n ch\u1EE9a \u0111\u1EF1ng \u0110a\u002Dv\u00EDt ho\u1EB7c Sa\u002Dl\u00F4\u002Dm\u00F4n.<br>\
-#	You can use || to join phrases, for example "<code>balaam || balak</code>" finds passages containing Balak OR Balaam<br>\
-	S\u1EED d\u1EE5ng && y\u00EAu c\u1EA7u c\u1EA3 hai t\u1EEB ng\u1EEF. V\u00ED d\u1EE5, "<code>a\u002Dr\u00F4n && m\u00F4i\u002Dse</code>" t\u00ECm \u0111\u01B0\u1EE3c ph\u00E2n \u0111o\u1EA1n ch\u1EE9a \u0111\u1EF1ng c\u1EA3 A\u002Dr\u00F4n l\u1EABn M\u00F4i\u002Dse.<br>\
-#	Using && requires both words, e.g. "<code>aaron && moses</code>" finds passages containing both Aaron AND Moses<br>\
-	S\u1EED d\u1EE5ng m\u1ED9t ! lo\u1EA1i tr\u1EEB t\u1EEB. V\u00ED d\u1EE5, "<code>ch\u00FAa ! j\u00EAsus</code>" s\u1EBD t\u00ECm ph\u00E2n \u0111o\u1EA1n ch\u1EE9a \u0111\u1EF1ng Ch\u00FAa NH\u01AFNG KH\u00D4NG J\u00EAsus<br>\
-#	Using a ! removes words from the result e.g. "<code>lord ! jesus</code>" is passages containing Lord BUT NOT Jesus<br>\
-	S\u1EED d\u1EE5ng ~2 m\u1EDF r\u1ED9ng ph\u00E2n \u0111o\u1EA1n 2 c\u00E2u tr\u01B0\u1EDBc v\u00E0 sau. Th\u1EBF th\u00EC "<code>gi\u00EA\u002Dru\u002Dsa\u002Dlem ~1 giu\u002D\u0111\u00EA</code>" t\u00ECm<br>\
-#	Using ~2 widens the passage by 2 verses either side on any match. So "<code>amminadab ~1 perez</code>" finds<br>\
-	c\u00E1c c\u00E2u ch\u1EE9a \u0111\u1EF1ng Gi\u00EA\u002Dru\u002Dsa\u002Dlem v\u00E0 Giu\u002D\u0111\u00EA c\u00E1ch nhau m\u1ED9t c\u00E2u.<br>\
-#	verses containting Amminadab within 1 verse of mention of Perez.<br>\
-	S\u1EED d\u1EE5ng +[Gen\u002DExo] \u1EDF \u0111\u1EA7u s\u1EBD gi\u1EDBi h\u1EA1n t\u00ECm ki\u1EBFm cho ph\u1EA1m vi c\u00E2u \u0111\u00F3.
-#	Using +[Gen\u002DExo] at the beginning will restrict a search to that range of verses.
-DisplaySelectPane.Bible=Kinh Th\u00E1nh:
-#Bible:
-DisplaySelectPane.AdvancedTitle=T\u00ECm Ki\u1EBFm N\u00E2ng Cao
-#Advanced Search
-
-PassageSelectionPane.Error=L\u1ED7i: {0}
-#Error: {0}
-PassageSelectionPane.Summary=T\u00F3m T\u1EAFt: {0}
-#Summary: {0}
-
-AdvancedSearchPane.PresetStart=(
-AdvancedSearchPane.PresetEnd=)
-AdvancedSearchPane.Presets=C\u1EA3 Kinh Th\u00E1nh|\
-#The Whole Bible|\
-	T\u1EA5t C\u1EA3 S\u00E1ch Ti\u00EAn Tri (Deu 28, Isa\u002DMal, Rev)|\
-#	All Prophecy (Deu 28, Isa\u002DMal, Rev)|\
-	C\u1EF1u \u01AF\u1EDBc (Gen\u002DMal)|\
-#	Old Testament (Gen\u002DMal)|\
-	T\u00E2n \u01AF\u1EDBc (Mat\u002DRev)|\
-#	New Testament (Mat\u002DRev)|\
-	Ng\u0169 Kinh (Gen\u002DDeu)|\
-#	The Pentateuch (Gen\u002DDeu)|\
-	S\u00E1ch L\u1ECBch S\u1EED (Josh\u002DEst)|\
-#	History (Josh\u002DEst)|\
-	S\u00E1ch Th\u01A1 Ca (Job\u002DSong)|\
-#	Poetry (Job\u002DSong)|\
-	\u0110\u1EA1i Ti\u00EAn Tri (Isa\u002DDan)|\
-#	Major Prophets (Isa\u002DDan)|\
-	Ti\u1EC3u Ti\u00EAn Tri (Hos\u002DMal)|\
-#	Minor Prophets (Hos\u002DMal)|\
-	S\u00E1ch Ph\u00FAc \u00C2m v\u00E0 C\u00F4ng V\u1EE5 (Mat\u002DAct)|\
-#	Gospels and Acts (Mat\u002DAct)|\
-	Th\u01B0 T\u00EDn cho Ng\u01B0\u1EDDi (Rom\u002DHeb)|\
-#	Letters to People (Rom\u002DHeb)|\
-	Th\u01B0 T\u00EDn t\u1EEB Ng\u01B0\u1EDDi (Jam\u002DJude)|\
-#	Letters from People (Jam\u002DJude)|\
-	Tu\u1EF3 Ch\u1ECDn
-#	Custom
-
-AdvancedSearchPane.SelectPassageTitle=Ch\u1ECDn Ph\u00E2n \u0110o\u1EA1n \u0110\u1EC3 Gi\u1EDBi H\u1EA1n T\u00ECm Ki\u1EBFm
-#Select Passages to Restrict Search to
-AdvancedSearchPane.Rank=Hi\u1EC7n {0} c\u00E2u:
-#Show {0} verses:
-AdvancedSearchPane.RankOne=Hi\u1EC7n c\u00E2u t\u1ED1t nh\u1EA5t:
-#Show best verse:
-
+
+( = (
+
+) = )
+
+<html><b>Search\ Tips.</b><br>You\ can\ use\ ||\ to\ join\ phrases,\ for\ example\ "<code>balaam\ ||\ balak</code>"\ finds\ passages\ containing\ Balak\ OR\ Balaam<br>Using\ &&\ requires\ both\ words,\ e.g.\ "<code>aaron\ &&\ moses</code>"\ finds\ passages\ containing\ both\ Aaron\ AND\ Moses<br>Using\ a\ \!\ removes\ words\ from\ the\ result\ e.g.\ "<code>lord\ \!\ jesus</code>"\ is\ passages\ containing\ Lord\ BUT\ NOT\ Jesus<br>Using\ ~2\ widens\ the\ passage\ by\ 2\ verses\ either\ side\ on\ any\ match.\ So\ "<code>amminadab\ ~1\ perez</code>"\ finds<br>verses\ containting\ Amminadab\ within\ 1\ verse\ of\ mention\ of\ Perez.<br>Using\ +[Gen-Exo]\ at\ the\ beginning\ will\ restrict\ a\ search\ to\ that\ range\ of\ verses. = <html><b>G\u1EE3i \u00DD T\u00ECm Ki\u1EBFm.</b><br>B\u1EA1n c\u00F3 th\u1EC3 s\u1EED d\u1EE5ng || \u0111\u1EC3 k\u1EBFt h\u1EE3p c\u1EE5m t\u1EEB. V\u00ED d\u1EE5, "<code>\u0111a-v\u00EDt || sa-l\u00F4-m\u00F4n</code>" t\u00ECm \u0111\u01B0\u1EE3c ph\u00E2n \u0111o\u1EA1n ch\u1EE9a \u0111\u1EF1ng \u0110a-v\u00EDt ho\u1EB7c Sa-l\u00F4-m\u00F4n.<br>S\u1EED d\u1EE5ng && y\u00EAu c\u1EA7u c\u1EA3 hai t\u1EEB ng\u1EEF. V\u00ED d\u1EE5, "<code>a-r\u00F4n && m\u00F4i-se</code>" t\u00ECm \u0111\u01B0\u1EE3c ph\u00E2n \u0111o\u1EA1n ch\u1EE9a \u0111\u1EF1ng c\u1EA3 A-r\u00F4n l\u1EABn M\u00F4i-se.<br>S\u1EED d\u1EE5ng m\u1ED9t ! lo\u1EA1i tr\u1EEB t\u1EEB. V\u00ED d\u1EE5, "<code>ch\u00FAa ! j\u00EAsus</code>" s\u1EBD t\u00ECm ph\u00E2n \u0111o\u1EA1n ch\u1EE9a \u0111\u1EF1ng Ch\u00FAa NH\u01AFNG KH\u00D4NG J\u00EAsus<br>S\u1EED d\u1EE5ng ~2 m\u1EDF r\u1ED9ng ph\u00E2n \u0111o\u1EA1n 2 c\u00E2u tr\u01B0\u1EDBc v\u00E0 sau. Th\u1EBF th\u00EC "<code>gi\u00EA-ru-sa-lem ~1 giu-\u0111\u00EA</code>" t\u00ECm<br>c\u00E1c c\u00E2u ch\u1EE9a \u0111\u1EF1ng Gi\u00EA-ru-sa-lem v\u00E0 Giu-\u0111\u00EA c\u00E1ch nhau m\u1ED9t c\u00E2u.<br>S\u1EED d\u1EE5ng +[Gen-Exo] \u1EDF \u0111\u1EA7u s\u1EBD gi\u1EDBi h\u1EA1n t\u00ECm ki\u1EBFm cho ph\u1EA1m vi c\u00E2u \u0111\u00F3.
+
+Advanced\ Search = T\u00ECm Ki\u1EBFm N\u00E2ng Cao
+
+Bible\: = Kinh Th\u00E1nh:
+
+Books = C\u00E1c S\u00E1ch
+
+Could\ not\ find\ verses\ with\:\ {0} = Kh\u00F4ng t\u00ECm \u0111\u01B0\u1EE3c c\u00E2u c\u00F3: {0}
+
+Error\ finding\ verse = L\u1ED7i t\u00ECm c\u00E2u
+
+Error\:\ {0} = L\u1ED7i: {0}
+
+File\ {0}\ is\ empty = T\u1EADp Tin {0} tr\u1ED1ng r\u1ED7ng
+
+No\ Bible\ is\ installed = Ch\u01B0a c\u00F3 cu\u1ED1n Kinh Th\u00E1nh c\u00E0i \u0111\u1EB7t
+
+None = Kh\u00F4ng c\u00F3
+
+Search\ Quick\ Help = T\u00ECm Ki\u1EBFm trong Tr\u1EE3 Gi\u00FAp Nhanh
+
+Select\ Passage = Ch\u1ECDn Ph\u00E2n \u0110o\u1EA1n
+
+Select\ Passages\ to\ Restrict\ Search\ to = Ch\u1ECDn Ph\u00E2n \u0110o\u1EA1n \u0110\u1EC3 Gi\u1EDBi H\u1EA1n T\u00ECm Ki\u1EBFm
+
+Select\ a\ book = Ch\u1ECDn m\u1ED9t quy\u1EC3n s\u00E1ch
+
+Select\ a\ chapter = Ch\u1ECDn m\u1ED9t ch\u01B0\u01A1ng
+
+Select\ a\ verse = Ch\u1ECDn m\u1ED9t c\u00E2u
+
+Show\ all\ verses\: = Hi\u1EC7n {0} c\u00E2u:
+
+Show\ best\ verse\: = Hi\u1EC7n c\u00E2u t\u1ED1t nh\u1EA5t:
+
+Show\ {0}\ verses\: = Hi\u1EC7n {0} c\u00E2u:
+
+Showing\ {1}\ of\ {2}\ verses\ with\:\ {0} = Hi\u1EC7n {1} c\u00E2u v\u1EDBi: {0}
+
+Summary\:\ {0} = T\u00F3m T\u1EAFt: {0}
+
+The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom = =C\u1EA3 Kinh Th\u00E1nh|T\u1EA5t C\u1EA3 S\u00E1ch Ti\u00EAn Tri (Deu 28, Isa-Mal, Rev)|C\u1EF1u \u01AF\u1EDBc (Gen-Mal)|T\u00E2n \u01AF\u1EDBc (Mat-Rev)|Ng\u0169 Kinh (Gen-Deu)|S\u00E1ch L\u1ECBch S\u1EED (Josh-Est)|S\u00E1ch Th\u01A1 Ca (Job-Song)|\u0110\u1EA1i Ti\u00EAn Tri (Isa-Dan)|Ti\u1EC3u Ti\u00EAn Tri (Hos-Mal)|S\u00E1ch Ph\u00FAc \u00C2m v\u00E0 C\u00F4ng V\u1EE5 (Mat-Act)|Th\u01B0 T\u00EDn cho Ng\u01B0\u1EDDi (Rom-Heb)|Th\u01B0 T\u00EDn t\u1EEB Ng\u01B0\u1EDDi (Jam-Jude)|Tu\u1EF3 Ch\u1ECDn
+
+There\ are\ {1}\ verses\ with\:\ {0} = C\u00F3 {1} c\u00E2u v\u1EDBi: {0}
+
+Untitled = Untitled
+
+Untitled\ {0} = Untitled {0}
+
+Verse\ Lists\ ({0}) = C\u00E1c Danh S\u00E1ch C\u00E2u

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,29 +1,56 @@
-#Created by JInto - www.guh-software.de
-#Wed Dec 26 09:54:34 CST 2007
-AdvancedSearchPane.PresetEnd=)
-AdvancedSearchPane.PresetStart=(
-AdvancedSearchPane.Presets=The Whole Bible|All Prophecy (Deu 28, Isa-Mal, Rev)|Old Testament (Gen-Mal)|New Testament (Mat-Rev)|The Pentateuch (Gen-Deu)|History (Josh-Est)|Poetry (Job-Song)|Major Prophets (Isa-Dan)|Minor Prophets (Hos-Mal)|Gospels and Acts (Mat-Act)|Letters to People (Rom-Heb)|Letters from People (Jam-Jude)|Custom
-AdvancedSearchPane.Rank=\u986F\u793A {0} \u7D93\u7BC0\:
-AdvancedSearchPane.RankOne=\u986F\u793A\u8F03\u597D\u6216\u559C\u611B\u7684\u7D93\u7BC0\:
-AdvancedSearchPane.SelectPassageTitle=\u689D\u4EF6\u5F0F\u4E3B\u984C\u95B1\u8B80
-BibleViewPane.Books=\u66F8\u672C
-BibleViewPane.EmptyFile=\u6A94\u6848 {0} \u662F\u7A7A\u7684
-BibleViewPane.None=\u7121
-BibleViewPane.SelectBook=\u9078\u64C7\u66F8\u5377
-BibleViewPane.SelectChapter=\u9078\u64C7\u7AE0
-BibleViewPane.SelectVerse=\u9078\u64C7\u7BC0
-BibleViewPane.VerseListDesc=\u5217\u51FA\u7D93\u7BC0 ({0})
-DisplaySelectPane.AdvancedTitle=\u9032\u968E\u641C\u5C0B
-DisplaySelectPane.BadVerse=\u932F\u8AA4\u7684\u641C\u5C0B\u65B9\u5F0F
-DisplaySelectPane.Bible=\u8056\u7D93\:
-DisplaySelectPane.Clear=Untitled
-DisplaySelectPane.HelpText=<html><b>\u641C\u5C0B\u52A9\u624B.</b><br>You can use || to join phrases, for example "<code>balaam || balak</code>" finds passages containing Balak OR Balaam<br>Using && requires both words, e.g. "<code>aaron && moses</code>" finds passages containing both Aaron AND Moses<br>Using a \! removes words from the result e.g. "<code>lord \! jesus</code>" is passages containing Lord BUT NOT Jesus<br>Using ~2 widens the passage by 2 verses either side on any match. So "<code>amminadab ~1 perez</code>" finds<br>verses containting Amminadab within 1 verse of mention of Perez.<br>Using +[Gen-Exo] at the beginning will restrict a search to that range of verses.
-DisplaySelectPane.HelpTitle=\u641C\u5C0B\u5FEB\u901F\u5E6B\u52A9
-DisplaySelectPane.Hits=\u627E\u5230 {1} \u7D93\u53E5\u95DC\u65BC\: {0}
-DisplaySelectPane.NoHits=\u6C92\u6709\u627E\u5230\: {0}
-DisplaySelectPane.NoInstalledBible=\u4F60\u9084\u6C92\u5B89\u88DD\u4EFB\u4F55\u7684\u8056\u7D93\u7248\u672C\uFF0C\u8ACB\u9EDE\u9078\u5DE5\u5177(Tool)-->\u66F8\u7C4D(book).\u5F8C\u9078\u64C7\u4F60\u60F3\u5B89\u88DD\u7684\u8056\u7D93\u6216\u53C3\u8003\u66F8\u3002
-DisplaySelectPane.PartialHits=\u986F\u793A {1} \u5728{2}\u7684\u7D93\u53E5\u95DC\u65BC\: {0}
-DisplaySelectPane.SelectPassageTitle=\u4E3B\u984C\u95B1\u8B80
-DisplaySelectPane.Untitled=Untitled {0}
-PassageSelectionPane.Error=\u932F\u8AA4\: {0}
-PassageSelectionPane.Summary=\u6458\u8981\: {0}
+
+( = (
+
+) = )
+
+<html><b>Search\ Tips.</b><br>You\ can\ use\ ||\ to\ join\ phrases,\ for\ example\ "<code>balaam\ ||\ balak</code>"\ finds\ passages\ containing\ Balak\ OR\ Balaam<br>Using\ &&\ requires\ both\ words,\ e.g.\ "<code>aaron\ &&\ moses</code>"\ finds\ passages\ containing\ both\ Aaron\ AND\ Moses<br>Using\ a\ \!\ removes\ words\ from\ the\ result\ e.g.\ "<code>lord\ \!\ jesus</code>"\ is\ passages\ containing\ Lord\ BUT\ NOT\ Jesus<br>Using\ ~2\ widens\ the\ passage\ by\ 2\ verses\ either\ side\ on\ any\ match.\ So\ "<code>amminadab\ ~1\ perez</code>"\ finds<br>verses\ containting\ Amminadab\ within\ 1\ verse\ of\ mention\ of\ Perez.<br>Using\ +[Gen-Exo]\ at\ the\ beginning\ will\ restrict\ a\ search\ to\ that\ range\ of\ verses. = <html><b>\u641C\u5C0B\u52A9\u624B.</b><br>You can use || to join phrases, for example "<code>balaam || balak</code>" finds passages containing Balak OR Balaam<br>Using && requires both words, e.g. "<code>aaron && moses</code>" finds passages containing both Aaron AND Moses<br>Using a ! removes words from the result e.g. "<code>lord ! jesus</code>" is passages containing Lord BUT NOT Jesus<br>Using ~2 widens the passage by 2 verses either side on any match. So "<code>amminadab ~1 perez</code>" finds<br>verses containting Amminadab within 1 verse of mention of Perez.<br>Using +[Gen-Exo] at the beginning will restrict a search to that range of verses.
+
+Advanced\ Search = \u9032\u968E\u641C\u5C0B
+
+Bible\: = \u8056\u7D93:
+
+Books = \u66F8\u672C
+
+Could\ not\ find\ verses\ with\:\ {0} = \u6C92\u6709\u627E\u5230: {0}
+
+Error\ finding\ verse = \u932F\u8AA4\u7684\u641C\u5C0B\u65B9\u5F0F
+
+Error\:\ {0} = \u932F\u8AA4: {0}
+
+File\ {0}\ is\ empty = \u6A94\u6848 {0} \u662F\u7A7A\u7684
+
+No\ Bible\ is\ installed = \u4F60\u9084\u6C92\u5B89\u88DD\u4EFB\u4F55\u7684\u8056\u7D93\u7248\u672C\uFF0C\u8ACB\u9EDE\u9078\u5DE5\u5177(Tool)-->\u66F8\u7C4D(book).\u5F8C\u9078\u64C7\u4F60\u60F3\u5B89\u88DD\u7684\u8056\u7D93\u6216\u53C3\u8003\u66F8\u3002
+
+None = \u7121
+
+Search\ Quick\ Help = \u641C\u5C0B\u5FEB\u901F\u5E6B\u52A9
+
+Select\ Passage = \u4E3B\u984C\u95B1\u8B80
+
+Select\ Passages\ to\ Restrict\ Search\ to = \u689D\u4EF6\u5F0F\u4E3B\u984C\u95B1\u8B80
+
+Select\ a\ book = \u9078\u64C7\u66F8\u5377
+
+Select\ a\ chapter = \u9078\u64C7\u7AE0
+
+Select\ a\ verse = \u9078\u64C7\u7BC0
+
+Show\ all\ verses\: = \u986F\u793A {0} \u7D93\u7BC0:
+
+Show\ best\ verse\: = \u986F\u793A\u8F03\u597D\u6216\u559C\u611B\u7684\u7D93\u7BC0:
+
+Show\ {0}\ verses\: = \u986F\u793A {0} \u7D93\u7BC0:
+
+Showing\ {1}\ of\ {2}\ verses\ with\:\ {0} = \u986F\u793A {1} \u5728{2}\u7684\u7D93\u53E5\u95DC\u65BC: {0}
+
+Summary\:\ {0} = \u6458\u8981: {0}
+
+The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom = The Whole Bible|All Prophecy (Deu 28, Isa-Mal, Rev)|Old Testament (Gen-Mal)|New Testament (Mat-Rev)|The Pentateuch (Gen-Deu)|History (Josh-Est)|Poetry (Job-Song)|Major Prophets (Isa-Dan)|Minor Prophets (Hos-Mal)|Gospels and Acts (Mat-Act)|Letters to People (Rom-Heb)|Letters from People (Jam-Jude)|Custom
+
+There\ are\ {1}\ verses\ with\:\ {0} = \u627E\u5230 {1} \u7D93\u53E5\u95DC\u65BC: {0}
+
+Untitled = Untitled
+
+Untitled\ {0} = Untitled {0}
+
+Verse\ Lists\ ({0}) = \u5217\u51FA\u7D93\u7BC0 ({0})

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh_CN.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh_CN.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,29 +1,53 @@
-#Created by JInto - www.guh-software.de
-#Fri Dec 28 14:11:01 CST 2007
-AdvancedSearchPane.PresetEnd=)
-AdvancedSearchPane.PresetStart=(
-AdvancedSearchPane.Presets=The Whole Bible|All Prophecy (Deu 28, Isa-Mal, Rev)|Old Testament (Gen-Mal)|New Testament (Mat-Rev)|The Pentateuch (Gen-Deu)|History (Josh-Est)|Poetry (Job-Song)|Major Prophets (Isa-Dan)|Minor Prophets (Hos-Mal)|Gospels and Acts (Mat-Act)|Letters to People (Rom-Heb)|Letters from People (Jam-Jude)|Custom
-AdvancedSearchPane.Rank=\u663E\u793A {0} \u7ECF\u8282\:
-AdvancedSearchPane.RankOne=\u663E\u793A\u8F83\u597D\u6216\u8F83\u559C\u7231\u7684\u7ECF\u8282\:
-AdvancedSearchPane.SelectPassageTitle=\u6761\u4EF6\u5F0F\u4E3B\u9898\u9605\u8BFB
-BibleViewPane.Books=\u4E66\u672C
-BibleViewPane.EmptyFile=\u6863\u6848 {0} \u662F\u7A7A\u7684
-BibleViewPane.None=\u65E0
-BibleViewPane.SelectBook=\u9009\u62E9\u4E66\u5377
-BibleViewPane.SelectChapter=\u9009\u62E9\u7AE0
-BibleViewPane.SelectVerse=\u9009\u62E9\u8282
-BibleViewPane.VerseListDesc=\u5217\u51FA\u7ECF\u8282 ({0})
-DisplaySelectPane.AdvancedTitle=\u9AD8\u7EA7\u641C\u5BFB
-DisplaySelectPane.BadVerse=\u9519\u52A1\u7684\u641C\u5BFB\u65B9\u5F0F
-DisplaySelectPane.Bible=\u5723\u7ECF\:
-DisplaySelectPane.Clear=Untitled
-DisplaySelectPane.HelpText=<html><b>\u641C\u5BFB\u52A9\u624B.</b><br>You can use || to join phrases, for example "<code>balaam || balak</code>" finds passages containing Balak OR Balaam<br>Using && requires both words, e.g. "<code>aaron && moses</code>" finds passages containing both Aaron AND Moses<br>Using a \! removes words from the result e.g. "<code>lord \! jesus</code>" is passages containing Lord BUT NOT Jesus<br>Using ~2 widens the passage by 2 verses either side on any match. So "<code>amminadab ~1 perez</code>" finds<br>verses containting Amminadab within 1 verse of mention of Perez.<br>Using +[Gen-Exo] at the beginning will restrict a search to that range of verses.
-DisplaySelectPane.HelpTitle=\u641C\u5BFB\u5FEB\u901F\u5E2E\u52A9
-DisplaySelectPane.Hits=\u627E\u5230 {1} \u7ECF\u53E5\u5173\u65BC\: {0}
-DisplaySelectPane.NoHits=\u6CA1\u6709\u627E\u5230\: {0}
-DisplaySelectPane.NoInstalledBible=\u4F60\u8FD8\u6CA1\u5B89\u88C5\u4EFB\u4F55\u7248\u672C\u7684\u5723\u7ECF\uFF0C\u8BF7\u70B9\u9009\u5DE5\u5177-->\u4E66\u7C4D.\u5B89\u88C5\u5723\u7ECF\u6216\u53C2\u8003\u4E66\u3002
-DisplaySelectPane.PartialHits=\u663E\u793A {1} \u5728{2}\u7684\u7ECF\u53E5\u5173\u65BC\: {0}
-DisplaySelectPane.SelectPassageTitle=\u4E3B\u9898\u9605\u8BFB
-DisplaySelectPane.Untitled=Untitled {0}
-PassageSelectionPane.Error=\u9519\u52A1\: {0}
-PassageSelectionPane.Summary=\u6458\u8981\: {0}
+( = (
+
+) = )
+
+<html><b>Search\ Tips.</b><br>You\ can\ use\ ||\ to\ join\ phrases,\ for\ example\ "<code>balaam\ ||\ balak</code>"\ finds\ passages\ containing\ Balak\ OR\ Balaam<br>Using\ &&\ requires\ both\ words,\ e.g.\ "<code>aaron\ &&\ moses</code>"\ finds\ passages\ containing\ both\ Aaron\ AND\ Moses<br>Using\ a\ \!\ removes\ words\ from\ the\ result\ e.g.\ "<code>lord\ \!\ jesus</code>"\ is\ passages\ containing\ Lord\ BUT\ NOT\ Jesus<br>Using\ ~2\ widens\ the\ passage\ by\ 2\ verses\ either\ side\ on\ any\ match.\ So\ "<code>amminadab\ ~1\ perez</code>"\ finds<br>verses\ containting\ Amminadab\ within\ 1\ verse\ of\ mention\ of\ Perez.<br>Using\ +[Gen-Exo]\ at\ the\ beginning\ will\ restrict\ a\ search\ to\ that\ range\ of\ verses. = <html><b>\u641C\u5BFB\u52A9\u624B.</b><br>You can use || to join phrases, for example "<code>balaam || balak</code>" finds passages containing Balak OR Balaam<br>Using && requires both words, e.g. "<code>aaron && moses</code>" finds passages containing both Aaron AND Moses<br>Using a ! removes words from the result e.g. "<code>lord ! jesus</code>" is passages containing Lord BUT NOT Jesus<br>Using ~2 widens the passage by 2 verses either side on any match. So "<code>amminadab ~1 perez</code>" finds<br>verses containting Amminadab within 1 verse of mention of Perez.<br>Using +[Gen-Exo] at the beginning will restrict a search to that range of verses.
+
+Advanced\ Search = \u9AD8\u7EA7\u641C\u5BFB
+
+Bible\: = \u5723\u7ECF:
+
+Books = \u4E66\u672C
+
+Could\ not\ find\ verses\ with\:\ {0} = \u6CA1\u6709\u627E\u5230: {0}
+
+Error\ finding\ verse = \u9519\u52A1\u7684\u641C\u5BFB\u65B9\u5F0F
+
+Error\:\ {0} = \u9519\u52A1: {0}
+
+File\ {0}\ is\ empty = \u6863\u6848 {0} \u662F\u7A7A\u7684
+
+No\ Bible\ is\ installed = \u4F60\u8FD8\u6CA1\u5B89\u88C5\u4EFB\u4F55\u7248\u672C\u7684\u5723\u7ECF\uFF0C\u8BF7\u70B9\u9009\u5DE5\u5177-->\u4E66\u7C4D.\u5B89\u88C5\u5723\u7ECF\u6216\u53C2\u8003\u4E66\u3002
+
+None = \u65E0
+
+Search\ Quick\ Help = \u641C\u5BFB\u5FEB\u901F\u5E2E\u52A9
+
+Select\ Passage = \u4E3B\u9898\u9605\u8BFB
+
+Select\ Passages\ to\ Restrict\ Search\ to = \u6761\u4EF6\u5F0F\u4E3B\u9898\u9605\u8BFB
+
+Select\ a\ book = \u9009\u62E9\u4E66\u5377
+
+Select\ a\ chapter = \u9009\u62E9\u7AE0
+
+Select\ a\ verse = \u9009\u62E9\u8282
+
+Show\ best\ verse\: = \u663E\u793A\u8F83\u597D\u6216\u8F83\u559C\u7231\u7684\u7ECF\u8282:
+
+Show\ {0}\ verses\: = \u663E\u793A {0} \u7ECF\u8282:
+
+Showing\ {1}\ of\ {2}\ verses\ with\:\ {0} = \u663E\u793A {1} \u5728{2}\u7684\u7ECF\u53E5\u5173\u65BC: {0}
+
+Summary\:\ {0} = \u6458\u8981: {0}
+
+The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom = The Whole Bible|All Prophecy (Deu 28, Isa-Mal, Rev)|Old Testament (Gen-Mal)|New Testament (Mat-Rev)|The Pentateuch (Gen-Deu)|History (Josh-Est)|Poetry (Job-Song)|Major Prophets (Isa-Dan)|Minor Prophets (Hos-Mal)|Gospels and Acts (Mat-Act)|Letters to People (Rom-Heb)|Letters from People (Jam-Jude)|Custom
+
+There\ are\ {1}\ verses\ with\:\ {0} = \u627E\u5230 {1} \u7ECF\u53E5\u5173\u65BC: {0}
+
+Untitled = Untitled
+
+Untitled\ {0} = Untitled {0}
+
+Verse\ Lists\ ({0}) = \u5217\u51FA\u7ECF\u8282 ({0})

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/MultiBookPane.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/MultiBookPane.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/MultiBookPane.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -357,7 +357,7 @@
         genBookKeyTree.setModel(new KeyTreeModel(null));
         genBookKeyTree.setShowsRootHandles(true);
         genBookKeyTree.setRootVisible(false);
-        genBookKeyTree.putClientProperty("JTree.lineStyle", "Angled"); //$NON-NLS-1$//$NON-NLS-2$
+        genBookKeyTree.putClientProperty("JTree.lineStyle", "Angled");
         genBookKeyTree.setCellRenderer(new KeyTreeCellRenderer());
         genBookKeyTree.addTreeSelectionListener(new TreeSelectionListener() {
             public void valueChanged(TreeSelectionEvent ev) {
@@ -440,7 +440,7 @@
     /*protected*/final void updateDisplay() {
         Book selectedBook = (Book) bookList.getSelectedValue();
         if (selectedBook == null) {
-            log.warn("no selected book"); //$NON-NLS-1$
+            log.warn("no selected book");
             return;
         }
 

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/ParallelBookPicker.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/ParallelBookPicker.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/ParallelBookPicker.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -75,8 +75,8 @@
         actions = new ActionFactory(ParallelBookPicker.class, this);
 
         JPanel buttonBox = new JPanel(new FlowLayout(FlowLayout.LEADING, 0, 0));
-        buttonBox.add(actions.createActionIcon("RemovePicker")); //$NON-NLS-1$
-        buttonBox.add(actions.createActionIcon("AddPicker")); //$NON-NLS-1$
+        buttonBox.add(actions.createActionIcon("RemovePicker"));
+        buttonBox.add(actions.createActionIcon("AddPicker"));
         add(buttonBox);
 
         // Add the first picker
@@ -203,8 +203,8 @@
 
     public void enableButtons() {
         int count = getComponentCount() - 1;
-        actions.getAction("RemovePicker").setEnabled(count > 1); //$NON-NLS-1$
-        actions.getAction("AddPicker").setEnabled(count < maxPickers); //$NON-NLS-1$
+        actions.getAction("RemovePicker").setEnabled(count > 1);
+        actions.getAction("AddPicker").setEnabled(count < maxPickers);
         getComponent(0).setVisible(maxPickers >= 2 || count > maxPickers);
     }
 

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -119,7 +119,7 @@
         treAll.setModel(new WholeBibleTreeModel());
         treAll.setShowsRootHandles(true);
         treAll.setRootVisible(false);
-        treAll.putClientProperty("JTree.lineStyle", "Angled"); //$NON-NLS-1$//$NON-NLS-2$
+        treAll.putClientProperty("JTree.lineStyle", "Angled");
         treAll.addTreeSelectionListener(new TreeSelectionListener() {
             public void valueChanged(TreeSelectionEvent ev) {
                 treeSelected();
@@ -232,7 +232,9 @@
      * @param ex
      */
     private void updateMessage(NoSuchKeyException ex) {
-        lblMessage.setText(Msg.ERROR.toString(ex.getMessage()));
+        // TRANSLATOR: Error condition: An unexpected unknown error occurred.
+        // Tell the user about it. {0} is a placeholder for the error that occurred.
+        lblMessage.setText(Msg.gettext("Error: {0}", ex.getMessage()));
         lblMessage.setIcon(icoBad);
     }
 
@@ -240,7 +242,10 @@
      * Write out an summary message to the message label
      */
     private void updateMessageSummary() {
-        lblMessage.setText(Msg.SUMMARY.toString(ref.getOverview()));
+        // TRANSLATOR: Output the Summary label followed by the passage
+        // that the user has built using the Select Passage Wizard.
+        // {0} is the placeholder for the passage reference.
+        lblMessage.setText(Msg.gettext("Summary: {0}", ref.getOverview()));
         lblMessage.setIcon(icoGood);
     }
 
@@ -378,14 +383,14 @@
         is.defaultReadObject();
     }
 
-    private static final String BIBLE_TREE = "BibleTree"; //$NON-NLS-1$
-    private static final String ADD = "AddVerse"; //$NON-NLS-1$
-    private static final String DELETE = "DeleteVerse"; //$NON-NLS-1$
-    private static final String SELECTED_VERSES = "SelectedVerses"; //$NON-NLS-1$
-    private static final String VERSES = "Verses"; //$NON-NLS-1$
-    private static final String DONE = "Done"; //$NON-NLS-1$
-    private static final String GOOD_ICON = "toolbarButtonGraphics/general/About24.gif"; //$NON-NLS-1$
-    private static final String BAD_ICON = "toolbarButtonGraphics/general/Stop24.gif"; //$NON-NLS-1$
+    private static final String BIBLE_TREE = "BibleTree";
+    private static final String ADD = "AddVerse";
+    private static final String DELETE = "DeleteVerse";
+    private static final String SELECTED_VERSES = "SelectedVerses";
+    private static final String VERSES = "Verses";
+    private static final String DONE = "Done";
+    private static final String GOOD_ICON = "toolbarButtonGraphics/general/About24.gif";
+    private static final String BAD_ICON = "toolbarButtonGraphics/general/Stop24.gif";
 
     /**
      * To convert strings into Biblical keys

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,16 +1,16 @@
 
-AddVerse.MnemonicKey=A
-AddVerse.Name=Add >
-AddVerse.ToolTip=Add verses to list selected.
-BibleTree.MnemonicKey=A
-BibleTree.Name=All Verses
-DeleteVerse.MnemonicKey=R
-DeleteVerse.Name=Remove <
-DeleteVerse.ToolTip=Delete verses from the list selected.
-Done.Name=Alias.OK
-Done.ToolTip=Close this window.
-SelectedVerses.MnemonicKey=S
-SelectedVerses.Name=Selected Verses
-Verses.MnemonicKey=V
-Verses.Name=Verses
-Verses.ToolTip=Selected Verses.
+AddVerse.Name    = Add >
+AddVerse.ToolTip = Add verses to list selected.
+
+BibleTree.Name = All Verses
+
+DeleteVerse.Name    = Remove <
+DeleteVerse.ToolTip = Delete verses from the list selected.
+
+Done.Name    = Alias.OK
+Done.ToolTip = Close this window.
+
+SelectedVerses.Name = Selected Verses
+
+Verses.Name    = Verses
+Verses.ToolTip = Selected Verses.

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,16 +1,16 @@
 
-AddVerse.MnemonicKey=
-AddVerse.Name=Hinzuf\u00FCgen >
-AddVerse.ToolTip=Verse zur Liste hinzuf\u00FCgen
-BibleTree.MnemonicKey=
-BibleTree.Name=Alle Verse
-DeleteVerse.MnemonicKey=
-DeleteVerse.Name=Entfernen 
-DeleteVerse.ToolTip=Verse von Liste entfernen.
-Done.Name=Alias.OK
-Done.ToolTip=Fenster schliessen
-SelectedVerses.MnemonicKey=
-SelectedVerses.Name=Ausgew\u00E4hlte Verse
-Verses.MnemonicKey=
-Verses.Name=Verse
-Verses.ToolTip=Ausgew\u00E4hlte Verse.
+AddVerse.Name    = Hinzuf\u00FCgen >
+AddVerse.ToolTip = Verse zur Liste hinzuf\u00FCgen
+
+BibleTree.Name = Alle Verse
+
+DeleteVerse.Name    = Entfernen 
+DeleteVerse.ToolTip = Verse von Liste entfernen.
+
+Done.Name    = Alias.OK
+Done.ToolTip = Fenster schliessen
+
+SelectedVerses.Name = Ausgew\u00E4hlte Verse
+
+Verses.Name    = Verse
+Verses.ToolTip = Ausgew\u00E4hlte Verse.

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,16 +1,16 @@
 
-AddVerse.MnemonicKey=
-AddVerse.Name=\u0628\u0631\u06AF\u0632\u06CC\u062F >
-AddVerse.ToolTip=\u0627\u0641\u0632\u0627\u06CC\u0634 \u0622\u06CC\u0627\u062A \u0628\u0647 \u0641\u0647\u0631\u0633\u062A \u0628\u0631\u06AF\u0632\u06CC\u062F\u0647 \u0634\u062F\u0647
-BibleTree.MnemonicKey=
-BibleTree.Name=\u062A\u0645\u0627\u0645 \u0622\u06CC\u0627\u062A
-DeleteVerse.MnemonicKey=
-DeleteVerse.Name=\u0628\u0631\u06AF\u0632\u06CC\u062F <
-DeleteVerse.ToolTip=\u062D\u0630\u0641 \u0622\u06CC\u0627\u062A \u0627\u0632 \u0641\u0647\u0631\u0633\u062A \u0628\u0631\u06AF\u0632\u06CC\u062F\u0647 \u0634\u062F\u0647
-Done.Name=Alias.OK
-Done.ToolTip=\u0628\u0633\u062A\u0646 \u0627\u06CC\u0646 \u067E\u0646\u062C\u0631\u0647 
-SelectedVerses.MnemonicKey=
-SelectedVerses.Name=\u0622\u06CC\u0627\u062A \u0628\u0631\u06AF\u0632\u06CC\u062F\u0647 \u0634\u062F\u0647
-Verses.MnemonicKey=
-Verses.Name=\u0622\u06CC\u0627\u062A
-Verses.ToolTip=\u0622\u06CC\u0627\u062A \u0628\u0632\u06AF\u0632\u06CC\u062F\u0647 \u0634\u062F\u0647
+AddVerse.Name    = \u0628\u0631\u06AF\u0632\u06CC\u062F >
+AddVerse.ToolTip = \u0627\u0641\u0632\u0627\u06CC\u0634 \u0622\u06CC\u0627\u062A \u0628\u0647 \u0641\u0647\u0631\u0633\u062A \u0628\u0631\u06AF\u0632\u06CC\u062F\u0647 \u0634\u062F\u0647
+
+BibleTree.Name = \u062A\u0645\u0627\u0645 \u0622\u06CC\u0627\u062A
+
+DeleteVerse.Name    = \u0628\u0631\u06AF\u0632\u06CC\u062F <
+DeleteVerse.ToolTip = \u062D\u0630\u0641 \u0622\u06CC\u0627\u062A \u0627\u0632 \u0641\u0647\u0631\u0633\u062A \u0628\u0631\u06AF\u0632\u06CC\u062F\u0647 \u0634\u062F\u0647
+
+Done.Name    = Alias.OK
+Done.ToolTip = \u0628\u0633\u062A\u0646 \u0627\u06CC\u0646 \u067E\u0646\u062C\u0631\u0647 
+
+SelectedVerses.Name = \u0622\u06CC\u0627\u062A \u0628\u0631\u06AF\u0632\u06CC\u062F\u0647 \u0634\u062F\u0647
+
+Verses.Name    = \u0622\u06CC\u0627\u062A
+Verses.ToolTip = \u0622\u06CC\u0627\u062A \u0628\u0632\u06AF\u0632\u06CC\u062F\u0647 \u0634\u062F\u0647

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,16 +1,16 @@
 
-AddVerse.MnemonicKey=A
-AddVerse.Name=Tambah >
-AddVerse.ToolTip=Tambakan ayat pada daftar.
-BibleTree.MnemonicKey=A
-BibleTree.Name=Semua Ayat
-DeleteVerse.MnemonicKey=R
-DeleteVerse.Name=Kurangi <
-DeleteVerse.ToolTip=Kurangi ayat dari daftar
-Done.Name=Alias.OK
-Done.ToolTip=Tutup jendela ini.
-SelectedVerses.MnemonicKey=S
-SelectedVerses.Name=Ayat Pilihan
-Verses.MnemonicKey=V
-Verses.Name=Ayat
-Verses.ToolTip=Ayat Tersedia
+AddVerse.Name    = Tambah >
+AddVerse.ToolTip = Tambakan ayat pada daftar.
+
+BibleTree.Name = Semua Ayat
+
+DeleteVerse.Name    = Kurangi <
+DeleteVerse.ToolTip = Kurangi ayat dari daftar
+
+Done.Name    = Alias.OK
+Done.ToolTip = Tutup jendela ini.
+
+SelectedVerses.Name = Ayat Pilihan
+
+Verses.Name    = Ayat
+Verses.ToolTip = Ayat Tersedia

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_vi.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_vi.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_vi.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,16 +1,16 @@
 
-AddVerse.MnemonicKey=
-AddVerse.Name=Th\u00EAm >
-AddVerse.ToolTip=Th\u00EAm c\u00E2u v\u00E0o danh s\u00E1ch l\u1EF1a ch\u1ECDn.
-BibleTree.MnemonicKey=
-BibleTree.Name=T\u1EA5t C\u1EA3 C\u00E1c C\u00E2u
-DeleteVerse.MnemonicKey=
-DeleteVerse.Name=Xo\u00E1
-DeleteVerse.ToolTip=Xo\u00E1 c\u00E1c c\u00E2u t\u1EEB danh s\u00E1ch l\u1EF1a ch\u1ECDn.
-Done.Name=Alias.OK
-Done.ToolTip=\u0110\u00F3ng c\u1EEDa s\u1ED5 n\u00E0y.
-SelectedVerses.MnemonicKey=
-SelectedVerses.Name=C\u00E1c C\u00E2u L\u1EF1a Ch\u1ECDn
-Verses.MnemonicKey=
-Verses.Name=C\u00E1c C\u00E2u
-Verses.ToolTip=C\u00E1c C\u00E2u L\u1EF1a Ch\u1ECDn
+AddVerse.Name    = Th\u00EAm >
+AddVerse.ToolTip = Th\u00EAm c\u00E2u v\u00E0o danh s\u00E1ch l\u1EF1a ch\u1ECDn.
+
+BibleTree.Name = T\u1EA5t C\u1EA3 C\u00E1c C\u00E2u
+
+DeleteVerse.Name    = Xo\u00E1
+DeleteVerse.ToolTip = Xo\u00E1 c\u00E1c c\u00E2u t\u1EEB danh s\u00E1ch l\u1EF1a ch\u1ECDn.
+
+Done.Name    = Alias.OK
+Done.ToolTip = \u0110\u00F3ng c\u1EEDa s\u1ED5 n\u00E0y.
+
+SelectedVerses.Name = C\u00E1c C\u00E2u L\u1EF1a Ch\u1ECDn
+
+Verses.Name    = C\u00E1c C\u00E2u
+Verses.ToolTip = C\u00E1c C\u00E2u L\u1EF1a Ch\u1ECDn

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_zh.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_zh.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,16 +1,16 @@
 
-AddVerse.MnemonicKey=
-AddVerse.Name=\u589E\u52A0 >
-AddVerse.ToolTip=\u9078\u64C7\u60F3\u7814\u8B80\u7684\u7D93\u7BC0
-BibleTree.MnemonicKey=
-BibleTree.Name=\u6240\u6709\u7684\u7D93\u7BC0
-DeleteVerse.MnemonicKey=
-DeleteVerse.Name=\u79FB\u9664 <
-DeleteVerse.ToolTip=\u79FB\u9664\u5DF2\u9078\u8B80\u7684\u7D93\u7BC0
-Done.Name=Alias.OK
-Done.ToolTip=\u95DC\u9589\u9019\u500B\u4ECB\u9762
-SelectedVerses.MnemonicKey=
-SelectedVerses.Name=\u9078\u64C7\u7D93\u7BC0
-Verses.MnemonicKey=
-Verses.Name=\u7D93\u7BC0
-Verses.ToolTip=\u9078\u64C7\u7D93\u7BC0
+AddVerse.Name    = \u589E\u52A0 >
+AddVerse.ToolTip = \u9078\u64C7\u60F3\u7814\u8B80\u7684\u7D93\u7BC0
+
+BibleTree.Name = \u6240\u6709\u7684\u7D93\u7BC0
+
+DeleteVerse.Name    = \u79FB\u9664 <
+DeleteVerse.ToolTip = \u79FB\u9664\u5DF2\u9078\u8B80\u7684\u7D93\u7BC0
+
+Done.Name    = Alias.OK
+Done.ToolTip = \u95DC\u9589\u9019\u500B\u4ECB\u9762
+
+SelectedVerses.Name = \u9078\u64C7\u7D93\u7BC0
+
+Verses.Name    = \u7D93\u7BC0
+Verses.ToolTip = \u9078\u64C7\u7D93\u7BC0

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_zh_CN.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/PassageSelectionPane_zh_CN.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,16 +1,16 @@
 
-AddVerse.MnemonicKey=
-AddVerse.Name=\u589E\u52A0 >
-AddVerse.ToolTip=\u9009\u62E9\u60F3\u7814\u8BFB\u7684\u7ECF\u53E5\u7814\u8B80\u7684\u7D93\u53E5
-BibleTree.MnemonicKey=
-BibleTree.Name=\u6240\u6709\u7684\u7ECF\u8282
-DeleteVerse.MnemonicKey=
-DeleteVerse.Name=\u79FB\u9664 <
-DeleteVerse.ToolTip=\u79FB\u9664\u5DF2\u9009\u8BFB\u7684\u7ECF\u8282
-Done.Name=Alias.OK
-Done.ToolTip=\u5173\u95ED\u8FD9\u4E2A\u4ECB\u9762
-SelectedVerses.MnemonicKey=
-SelectedVerses.Name=\u9009\u62E9\u7ECF\u8282
-Verses.MnemonicKey=
-Verses.Name=\u7ECF\u8282
-Verses.ToolTip=\u9009\u62E9\u7ECF\u8282
+AddVerse.Name    = \u589E\u52A0 >
+AddVerse.ToolTip = \u9009\u62E9\u60F3\u7814\u8BFB\u7684\u7ECF\u53E5\u7814\u8B80\u7684\u7D93\u53E5
+
+BibleTree.Name = \u6240\u6709\u7684\u7ECF\u8282
+
+DeleteVerse.Name    = \u79FB\u9664 <
+DeleteVerse.ToolTip = \u79FB\u9664\u5DF2\u9009\u8BFB\u7684\u7ECF\u8282
+
+Done.Name    = Alias.OK
+Done.ToolTip = \u5173\u95ED\u8FD9\u4E2A\u4ECB\u9762
+
+SelectedVerses.Name = \u9009\u62E9\u7ECF\u8282
+
+Verses.Name    = \u7ECF\u8282
+Verses.ToolTip = \u9009\u62E9\u7ECF\u8282

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookFont.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookFont.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookFont.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -45,7 +45,7 @@
      * Create a persistent Book Font Store.
      */
     private BookFont() {
-        super("BookFonts", CWProject.instance().getWritableProjectDir()); //$NON-NLS-1$
+        super("BookFonts", CWProject.instance().getWritableProjectDir());
     }
 
     public static BookFont instance() {

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookIcon.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookIcon.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookIcon.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -76,46 +76,46 @@
     /**
      * The small version icon
      */
-    private static final Icon ICON_BIBLE = GuiUtil.getIcon("images/book-b16.png"); //$NON-NLS-1$
+    private static final Icon ICON_BIBLE = GuiUtil.getIcon("images/book-b16.png");
 
     /**
      * The small version icon
      */
-    private static final Icon ICON_COMNT = GuiUtil.getIcon("images/book-c16.png"); //$NON-NLS-1$
+    private static final Icon ICON_COMNT = GuiUtil.getIcon("images/book-c16.png");
 
     /**
      * The small version icon
      */
-    private static final Icon ICON_DICT = GuiUtil.getIcon("images/book-d16.png"); //$NON-NLS-1$
+    private static final Icon ICON_DICT = GuiUtil.getIcon("images/book-d16.png");
 
     /**
      * The small version icon
      */
-    private static final Icon ICON_READ = GuiUtil.getIcon("images/book-r16.png"); //$NON-NLS-1$
+    private static final Icon ICON_READ = GuiUtil.getIcon("images/book-r16.png");
 
     /**
      * The small version icon
      */
-    private static final Icon ICON_GLOSS = GuiUtil.getIcon("images/book-g16.png"); //$NON-NLS-1$
+    private static final Icon ICON_GLOSS = GuiUtil.getIcon("images/book-g16.png");
 
     /**
      * The small version icon
      */
-    private static final Icon ICON_OTHER = GuiUtil.getIcon("images/book-o16.png"); //$NON-NLS-1$
+    private static final Icon ICON_OTHER = GuiUtil.getIcon("images/book-o16.png");
 
     /**
      * The small version icon
      */
-    private static final Icon ICON_QUESTIONABLE = GuiUtil.getIcon("images/overlay-q16.png"); //$NON-NLS-1$
+    private static final Icon ICON_QUESTIONABLE = GuiUtil.getIcon("images/overlay-q16.png");
 
     /**
      * An overlay icon
      */
-    private static final Icon ICON_LOCKED = GuiUtil.getIcon("images/overlay-lock16.png"); //$NON-NLS-1$
+    private static final Icon ICON_LOCKED = GuiUtil.getIcon("images/overlay-lock16.png");
 
     /**
      * An overlay icon
      */
-    private static final Icon ICON_UNSUPPORTED = GuiUtil.getIcon("images/overlay-x16.png"); //$NON-NLS-1$
+    private static final Icon ICON_UNSUPPORTED = GuiUtil.getIcon("images/overlay-x16.png");
 
 }

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookTreeCellRenderer.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookTreeCellRenderer.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/BookTreeCellRenderer.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -48,13 +48,16 @@
                 setLeafIcon(BookIcon.getIcon(book));
 
                 if (book.isQuestionable()) {
-                    tooltip = Msg.BOOK_QUESTIONABLE.toString();
+                    // TRANSLATOR: The book is categorized as either the work of a cult, or it is unorthodox or it is otherwise questionable.
+                    tooltip = Msg.gettext("Cult / Unorthodox / Questionable");
                 }
 
                 if (!book.isSupported()) {
-                    tooltip = Msg.BOOK_UNSUPPORTED.toString();
+                    // TRANSLATOR: The book is not supported by JSword
+                    tooltip = Msg.gettext("Unsupported");
                 } else if (book.isLocked()) {
-                    tooltip = Msg.BOOK_LOCKED.toString();
+                    // TRANSLATOR: The book is enciphered and needs to be unlocked
+                    tooltip = Msg.gettext("Locked");
                 }
             }
         }

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/EditSitePane.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/EditSitePane.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/EditSitePane.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -231,7 +231,8 @@
         dlgMain.getRootPane().setDefaultButton(btnClose);
         dlgMain.getRootPane().registerKeyboardAction(closer, esc, JComponent.WHEN_IN_FOCUSED_WINDOW);
         dlgMain.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
-        dlgMain.setTitle(Msg.EDIT_SITE_TITLE.toString());
+        // TRANSLATOR: Title for the dialog allowing the editing of SWORD download sites.
+        dlgMain.setTitle(Msg.gettext("Edit Update Sites"));
         dlgMain.setResizable(true);
         dlgMain.setModal(true);
 
@@ -258,12 +259,14 @@
             String name = txtName.getText().trim();
 
             if (name.length() == 0) {
-                setState(STATE_EDIT_ERROR, Msg.MISSING_SITE.toString());
+                // TRANSLATOR: Indicate to the user that they did not supply a download site name.
+                setState(STATE_EDIT_ERROR, Msg.gettext("Missing site name"));
                 return;
             }
 
             if (imanager.getInstaller(name) != null) {
-                setState(STATE_EDIT_ERROR, Msg.DUPLICATE_SITE.toString());
+                // TRANSLATOR: Indicate that the user supplied a name that matched a download site that they already have.
+                setState(STATE_EDIT_ERROR, Msg.gettext("Duplicate site name"));
                 return;
             }
 
@@ -330,7 +333,11 @@
     public void doEdit() {
         String name = (String) lstSite.getSelectedValue();
         if (name == null) {
-            CWOptionPane.showMessageDialog(this, Msg.NO_SELECTED_SITE.toString(), Msg.NO_SITE.toString(), JOptionPane.INFORMATION_MESSAGE);
+            // TRANSLATOR: Dialog title letting the user know that they they have not selected a download site to edit.
+            String title = Msg.gettext("No Site");
+            // TRANSLATOR: Let the user know that they have not selected a download site to edit.
+            String msg = Msg.gettext("No selected site to edit");
+            CWOptionPane.showMessageDialog(this, msg, title, JOptionPane.INFORMATION_MESSAGE);
             return;
         }
 
@@ -353,8 +360,11 @@
         if (name == null) {
             return;
         }
-
-        if (CWOptionPane.showConfirmDialog(this, Msg.CONFIRM_DELETE_SITE.toString(name), Msg.DELETE_SITE.toString(), JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
+        // TRANSLATOR: Dialog title asking the user to confirm the delete of a download site.
+        String title = Msg.gettext("Delete Site?");
+        // TRANSLATOR: Message asking the user to confirm the delete of a download site. {0} is a placeholder for the name of the download site.
+        String msg = Msg.gettext("Are you sure you want to delete {0}?", name);
+        if (CWOptionPane.showConfirmDialog(this, msg, title, JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
             imanager.removeInstaller(name);
         }
 
@@ -509,16 +519,16 @@
         is.defaultReadObject();
     }
 
-    private static final String ADD = "Add"; //$NON-NLS-1$
-    private static final String EDIT = "Edit"; //$NON-NLS-1$
-    private static final String DELETE = "Delete"; //$NON-NLS-1$
-    private static final String NAME = "Name"; //$NON-NLS-1$
-    private static final String TYPE = "Type"; //$NON-NLS-1$
-    private static final String RESET = "Reset"; //$NON-NLS-1$
-    private static final String SAVE = "Save"; //$NON-NLS-1$
-    private static final String CLOSE = "Close"; //$NON-NLS-1$
-    private static final String EMPTY_STRING = ""; //$NON-NLS-1$
-    private static final String BLANK_STRING = " "; //$NON-NLS-1$
+    private static final String ADD = "Add";
+    private static final String EDIT = "Edit";
+    private static final String DELETE = "Delete";
+    private static final String NAME = "Name";
+    private static final String TYPE = "Type";
+    private static final String RESET = "Reset";
+    private static final String SAVE = "Save";
+    private static final String CLOSE = "Close";
+    private static final String EMPTY_STRING = "";
+    private static final String BLANK_STRING = " ";
 
     /**
      * The state is viewing a site

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/EditSitePane_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/EditSitePane_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/EditSitePane_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,5 +1,3 @@
-#Created by JInto - www.guh-software.de
-#Sun Feb 17 21:44:44 CET 2008
 Add.Name=Alias.Add
 Add.ToolTip=Neue Installationsseite hinzuf\u00FCgen.
 Close.Name=Alias.Close

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/IndexResolver.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/IndexResolver.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/IndexResolver.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -98,11 +98,13 @@
                 }
 
                 if (ex != null) {
-                    log.error("index download failed: ", ex); //$NON-NLS-1$
-                    // Reporter.informUser(parent, ex);
-
-                    String gtitle = Msg.HOW_GENERATE_TITLE.toString();
-                    Msg gmsg = Msg.HOW_GENERATE;
+                    log.error("index download failed: ", ex);
+                    // TRANSLATOR: Title to a dialog that asks whether the user wants to generate an index.
+                    // Currently unused.
+                    String gtitle = Msg.gettext("Download or generate?");
+                    // TRANSLATOR: The download failed for one reason or another. So now the user is asked whether the index should be generated.
+                    // Currently unused.
+                    String gmsg = Msg.gettext("Downloading failed.\nDo you wish to generate an index anyway?");
                     int yn = CWOptionPane.showConfirmDialog(parent, gmsg, gtitle, JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
 
                     if (yn == JOptionPane.YES_OPTION) {
@@ -140,12 +142,16 @@
             installer = (Installer) it.next();
         } else {
             JComboBox choice = new JComboBox(new InstallManagerComboBoxModel(insman));
-            JLabel label = new JLabel(Msg.HOW_SITE.toString());
+            // TRANSLATOR: Label for a list of index download sites.
+            // Currently unused.
+            JLabel label = new JLabel(Msg.gettext("Which download site do you wish to use?"));
             JPanel panel = new JPanel(new BorderLayout());
             panel.add(label, BorderLayout.NORTH);
             panel.add(choice, BorderLayout.CENTER);
 
-            String title = Msg.HOW_SITE_TITLE.toString();
+            // TRANSLATOR: Title for a dialog that asks whether the user should download the index.
+            // Currently unused.
+            String title = Msg.gettext("Download an index?");
 
             int yn = CWOptionPane.showConfirmDialog(parent, panel, title, JOptionPane.YES_OPTION);
             if (yn == JOptionPane.YES_OPTION) {

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/InternetWarning.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/InternetWarning.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/InternetWarning.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -83,8 +83,8 @@
         final InternetWarning webWarning = new InternetWarning();
 
         JPanel buttons = new JPanel();
-        JButton yesButton = new JButton(webWarning.actions.getAction("Yes")); //$NON-NLS-1$
-        JButton noButton = new JButton(webWarning.actions.getAction("No")); //$NON-NLS-1$
+        JButton yesButton = new JButton(webWarning.actions.getAction("Yes"));
+        JButton noButton = new JButton(webWarning.actions.getAction("No"));
         buttons.add(yesButton);
         buttons.add(noButton);
 

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -31,57 +31,43 @@
  * @author Joe Walker [joe at eireneh dot com]
  */
 final class Msg extends MsgBase {
-    static final Msg AVAILABLE_BOOKS = new Msg("SitesPane.AvailableBooks"); //$NON-NLS-1$
-    static final Msg LOCAL_BOOKS = new Msg("SitesPane.Local"); //$NON-NLS-1$
 
-    static final Msg KB_SIZE = new Msg("SitePane.KBSize"); //$NON-NLS-1$
-    static final Msg MB_SIZE = new Msg("SitePane.MBSize"); //$NON-NLS-1$
-    static final Msg CONFIRMATION_TITLE = new Msg("SitePane.ConfirmationTitle"); //$NON-NLS-1$
-    static final Msg INSTALLED = new Msg("SitePane.Installed"); //$NON-NLS-1$
-    static final Msg INSTALLED_DESC = new Msg("SitePane.InstalledDesc"); //$NON-NLS-1$
-    static final Msg DELETE_FAILED = new Msg("SitePane.DeleteFailed"); //$NON-NLS-1$
-    static final Msg AVAILABLE_DESC = new Msg("SitePane.AvailableDesc"); //$NON-NLS-1$
-    static final Msg NONE_AVAILABLE_DESC = new Msg("SitePane.NoneAvailableDesc"); //$NON-NLS-1$
-    static final Msg CONFIRM_DELETE_TITLE = new Msg("SitePane.ConfirmDeleteTitle"); //$NON-NLS-1$
-    static final Msg CONFIRM_DELETE_BOOK = new Msg("SitePane.ConfirmDeleteBook"); //$NON-NLS-1$
-    static final Msg UNLOCK_TITLE = new Msg("SitePane.UnlockTitle"); //$NON-NLS-1$
-    static final Msg UNLOCK_BOOK = new Msg("SitePane.UnlockBook"); //$NON-NLS-1$
-    static final Msg CONFIRM_UNINSTALL_TITLE = new Msg("SitePane.ConfirmUninstallTitle"); //$NON-NLS-1$
-    static final Msg CONFIRM_UNINSTALL_BOOK = new Msg("SitePane.ConfirmUninstallBook"); //$NON-NLS-1$
-    static final Msg FONT_CHOOSER = new Msg("SitePane.FontChooser"); //$NON-NLS-1$
+    /**
+     * Get the internationalized text, but return key if key is unknown.
+     * 
+     * @param key
+     * @return the internationalized text
+     */
+    public static String gettext(String key)
+    {
+        return msg.lookup(key);
+    }
 
-    static final Msg EDIT_SITE_TITLE = new Msg("EditSitePane.EditSitesTitle"); //$NON-NLS-1$
-    static final Msg MISSING_SITE = new Msg("EditSitePane.MissingSite"); //$NON-NLS-1$
-    static final Msg DUPLICATE_SITE = new Msg("EditSitePane.DuplicateSite"); //$NON-NLS-1$
-    static final Msg NO_SELECTED_SITE = new Msg("EditSitePane.NoSelectedSite"); //$NON-NLS-1$
-    static final Msg NO_SITE = new Msg("EditSitePane.NoSite"); //$NON-NLS-1$
-    static final Msg CONFIRM_DELETE_SITE = new Msg("EditSitePane.ConfirmDeleteSite"); //$NON-NLS-1$
-    static final Msg DELETE_SITE = new Msg("EditSitePane.DeleteSite"); //$NON-NLS-1$
+    /**
+     * Get the internationalized text, but return key if key is unknown.
+     * The text requires one parameter to be passed.
+     * 
+     * @param key
+     * @param param
+     * @return the formatted, internationalized text
+     */
+    public static String gettext(String key, Object param)
+    {
+        return msg.toString(key, param);
+    }
 
-    static final Msg HOW_MESSAGE_TITLE = new Msg("IndexResolver.HowMessageTitle"); //$NON-NLS-1$
-    static final Msg HOW_MESSAGE = new Msg("IndexResolver.HowMessage"); //$NON-NLS-1$
-    static final Msg HOW_GENERATE_TITLE = new Msg("IndexResolver.HowGenerateTitle"); //$NON-NLS-1$
-    static final Msg HOW_GENERATE = new Msg("IndexResolver.HowGenerate"); //$NON-NLS-1$
-    static final Msg HOW_SITE_TITLE = new Msg("IndexResolver.HowSiteTitle"); //$NON-NLS-1$
-    static final Msg HOW_SITE = new Msg("IndexResolver.HowSite"); //$NON-NLS-1$
-    static final Msg OPTION_DOWNLOAD = new Msg("IndexResolver.OptionDownload"); //$NON-NLS-1$
-    static final Msg OPTION_GENERATE = new Msg("IndexResolver.OptionGenerate"); //$NON-NLS-1$
-    static final Msg OPTION_CANCEL = new Msg("IndexResolver.OptionCancel"); //$NON-NLS-1$
-
-    static final Msg HOST = new Msg("SwordSiteEditor.Host"); //$NON-NLS-1$
-    static final Msg CATALOG_DIR = new Msg("SwordSiteEditor.CatalogDir"); //$NON-NLS-1$
-    static final Msg PACKAGE_DIR = new Msg("SwordSiteEditor.PackageDir"); //$NON-NLS-1$
-    static final Msg PROXY_HOST = new Msg("SwordSiteEditor.ProxyHost"); //$NON-NLS-1$
-    static final Msg PROXY_PORT = new Msg("SwordSiteEditor.ProxyPort"); //$NON-NLS-1$
-
-    static final Msg BOOK_LOCKED = new Msg("BookTreeCellRenderer.BookLocked"); //$NON-NLS-1$
-    static final Msg BOOK_UNSUPPORTED = new Msg("BookTreeCellRenderer.BookUnsupported"); //$NON-NLS-1$
-    static final Msg BOOK_QUESTIONABLE = new Msg("BookTreeCellRenderer.BookQuestionable"); //$NON-NLS-1$
-
     /**
-     * Passthrough ctor
+     * Get the internationalized text, but return key if key is unknown.
+     * The text requires one parameter to be passed.
+     * 
+     * @param key
+     * @param param
+     * @return the formatted, internationalized text
      */
-    private Msg(String name) {
-        super(name);
+    public static String gettext(String key, Object[] params)
+    {
+        return msg.toString(key, params);
     }
+
+    private static MsgBase msg = new Msg();
 }

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,62 +1,83 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
 
-BookChooser.Cancel=Cancel
-BookChooser.OK=OK
-BookChooser.Title=Select a Bible
+<html><b>Click\ 'Update\ Available\ Books'\ to\ download\ an\ up\ to\ date\ book\ list.</b> = <html><b>Click 'Update Available Books' to download an up to date book list.</b>
 
-SitesPane.AvailableBooks=Available Books
-SitesPane.Local=Installed Books
+<html>Please\ enter\ the\ unlock\ key\ for\:<br>\ {0}? = <html>Please enter the unlock key for:<br> {0}?
 
-SitePane.KBSize={0} is {1,number,###,###,###.#}KB. Continue?
-SitePane.MBSize={0} is {1,number,###,###,###.#}MB. Continue?
-SitePane.ConfirmationTitle=Download Book
-SitePane.Installed=Book already installed: {0}
-SitePane.InstalledDesc={0} books installed.
-SitePane.DeleteFailed=Unable to delete: {0}
-SitePane.AvailableDesc={0} books available for download.
-SitePane.NoneAvailableDesc=<html><b>Click 'Update Available Books' to download an up to date book list.</b>
-SitePane.ConfirmDeleteTitle=Delete Book
-SitePane.ConfirmDeleteBook=Are you sure you want to delete {0}?
-SitePane.UnlockTitle=Unlock Book
-SitePane.UnlockBook=<html>Please enter the unlock key for:<br> {0}?
-SitePane.ConfirmUninstallTitle=Remove Index for Book
-SitePane.ConfirmUninstallBook=Are you sure you want to remove the index for {0}?
-SitePane.FontChooser=Choose Font
+Are\ you\ sure\ you\ want\ to\ delete\ {0}? = Are you sure you want to delete {0}?
 
-EditSitePane.EditSitesTitle=Edit Update Sites
-EditSitePane.MissingSite=Missing site name
-EditSitePane.DuplicateSite=Duplicate site name
-EditSitePane.NoSelectedSite=No selected site to edit
-EditSitePane.NoSite=No Site
-EditSitePane.ConfirmDeleteSite=Are you sure you want to delete {0}?
-EditSitePane.DeleteSite=Delete Site?
+Are\ you\ sure\ you\ want\ to\ remove\ the\ index\ for\ {0}? = Are you sure you want to remove the index for {0}?
 
-SwordSiteEditor.Host=Host:
-SwordSiteEditor.CatalogDir=Catalog Directory:
-SwordSiteEditor.PackageDir=Zip Directory:
-SwordSiteEditor.ProxyHost=Proxy Host:
-SwordSiteEditor.ProxyPort=Proxy Port:
+Available\ Books = Available Books
 
-BookTreeCellRenderer.BookLocked=Locked
-BookTreeCellRenderer.BookUnsupported=Unsupported
-BookTreeCellRenderer.BookQuestionable=Cult / Unorthodox / Questionable
+Book\ already\ installed\:\ {0} = Book already installed: {0}
 
-# IndexResolver is not used at this time.
-IndexResolver.HowMessageTitle=Download or generate?
-IndexResolver.HowMessage=Do you wish to try to download and index or generate one for yourself?\n\
-	Downloading (2-3Mb) will take around 10 mins on a modem or 1 min on broadband.\n\
-	Generating an index will take around 5 mins on an average computer.\n\
-	Not all books have indexes so download may not be possible.
-IndexResolver.HowSiteTitle=Which download site?
-IndexResolver.HowSite=Which download site do you wish to use?
-IndexResolver.HowGenerateTitle=Generate an index anyway?
-IndexResolver.HowGenerate=Downloading failed.\n\
-	Do you wish to generate an index anyway?
-IndexResolver.OptionDownload=Download
-IndexResolver.OptionGenerate=Generate
-IndexResolver.OptionCancel=Cancel
+Cancel = Cancel
+
+Catalog\ Directory\: = Catalog Directory:
+
+Choose\ Font = Choose Font
+
+Cult\ /\ Unorthodox\ /\ Questionable = Cult / Unorthodox / Questionable
+
+Delete\ Book = Delete Book
+
+Delete\ Site? = Delete Site?
+
+Do\ you\ wish\ to\ try\ to\ download\ and\ index\ or\ generate\ one\ for\ yourself?u000ADownloading\ (2-3Mb)\ will\ take\ around\ 10\ mins\ on\ a\ modem\ or\ 1\ min\ on\ broadband.u000AGenerating\ an\ index\ will\ take\ around\ 5\ mins\ on\ an\ average\ computer.u000ANot\ all\ books\ have\ indexes\ so\ download\ may\ not\ be\ possible. = Do you wish to try to download and index or generate one for yourself?\nDownloading (2-3Mb) will take around 10 mins on a modem or 1 min on broadband.\nGenerating an index will take around 5 mins on an average computer.\nNot all books have indexes so download may not be possible.
+
+Download = Download
+
+Download\ Book = Download Book
+
+Download\ an\ index? = Download an index?\n
+
+Download\ or\ generate? = Download or generate?
+
+Downloading\ failed.u000ADo\ you\ wish\ to\ generate\ an\ index\ anyway? = Downloading failed.\nDo you wish to generate an index anyway?
+
+Duplicate\ site\ name = Duplicate site name
+
+Edit\ Update\ Sites = Edit Update Sites
+
+Generate = Generate
+
+Host\: = Host:
+
+Installed\ Books = Installed Books
+
+Locked = Locked
+
+Missing\ site\ name = Missing site name
+
+No\ Site = No Site
+
+No\ selected\ site\ to\ edit = No selected site to edit
+
+OK = OK
+
+Proxy\ Host\: = Proxy Host:
+
+Proxy\ Port\: = Proxy Port:
+
+Remove\ Index\ for\ Book = Remove Index for Book
+
+Select\ a\ Bible = Select a Bible
+
+Unable\ to\ delete\:\ {0} = Unable to delete: {0}
+
+Unlock\ Book = Unlock Book
+
+Unsupported = Unsupported
+
+Which\ download\ site\ do\ you\ wish\ to\ use? = Which download site do you wish to use?
+
+Which\ download\ site? = Which download site?
+
+Zip\ Directory\: = Zip Directory:
+
+{0}\ books\ available\ for\ download. = {0} books available for download.
+
+{0}\ books\ installed. = {0} books installed.
+
+{0}\ is\ {1,number,\#\#\#,\#\#\#,\#\#\#.\#}KB.\ Continue? = {0} is {1,number,###,###,###.#}KB. Continue?
+{0}\ is\ {1,number,\#\#\#,\#\#\#,\#\#\#.\#}MB.\ Continue? = {0} is {1,number,###,###,###.#}MB. Continue?

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,46 +1,81 @@
-#Created by JInto - www.guh-software.de
-#Sun Mar 02 18:10:23 CET 2008
-BookChooser.Cancel=Abbrechen
-BookChooser.OK=OK 
-BookChooser.Title=Bibel ausw\u00E4hlen
-BookTreeCellRenderer.BookLocked=Gesperrt
-BookTreeCellRenderer.BookQuestionable=Kult / Unorthodox / Fragw\u00FCrdig
-BookTreeCellRenderer.BookUnsupported=Nicht unterst\u00FCtzt
-EditSitePane.ConfirmDeleteSite=Wollen Sie {0} wirklich l\u00F6schen?
-EditSitePane.DeleteSite=Seite l\u00F6schen?
-EditSitePane.DuplicateSite=Doppelter Seitenname
-EditSitePane.EditSitesTitle=Update-Seiten editieren
-EditSitePane.MissingSite=Seitenname fehlt
-EditSitePane.NoSelectedSite=No selected site to edit
-EditSitePane.NoSite=Keine Seite
-IndexResolver.HowGenerate=Downloading failed.\nDo you wish to generate an index anyway?
-IndexResolver.HowGenerateTitle=Generate an index anyway?
-IndexResolver.HowMessage=Do you wish to try to download and index or generate one for yourself?\nDownloading (2-3Mb) will take around 10 mins on a modem or 1 min on broadband.\nGenerating an index will take around 5 mins on an average computer.\nNot all books have indexes so download may not be possible.
-IndexResolver.HowMessageTitle=Download or generate?
-IndexResolver.HowSite=Which download site do you wish to use?
-IndexResolver.HowSiteTitle=Which download site?
-IndexResolver.OptionCancel=Cancel
-IndexResolver.OptionDownload=Download
-IndexResolver.OptionGenerate=Generate
-SitePane.AvailableDesc={0} B\u00FCcher zum Download verf\u00FCgbar.
-SitePane.ConfirmDeleteBook=Wollen Sie {0} sicher l\u00F6schen?
-SitePane.ConfirmDeleteTitle=Buch l\u00F6schen
-SitePane.ConfirmUninstallBook=Sind sie sicher, dass Sie den Index f\u00FCr {0} entfernen wollen?
-SitePane.ConfirmUninstallTitle=Index entfernen f\u00FCr das Buch
-SitePane.ConfirmationTitle=Buch herunterladen
-SitePane.DeleteFailed=Konnte nicht gel\u00F6scht werden\: {0}
-SitePane.FontChooser=Schriftart ausw\u00E4hlen
-SitePane.Installed=Buch ist schon installiert\: {0}
-SitePane.InstalledDesc={0} B\u00FCcher installiert.
-SitePane.KBSize={0} ist {1,number,\#\#\#,\#\#\#,\#\#\#.\#}KB gro\u00DF. Fortfahren?
-SitePane.MBSize={0} ist {1,number,\#\#\#,\#\#\#,\#\#\#.\#}MB gro\u00DF. Fortfahren?
-SitePane.NoneAvailableDesc=<html><b>Auf 'Liste aktualisieren' klicken um eine aktuelle Buchliste herunterzuladen.</b>
-SitePane.UnlockBook=<html>Bitte Freischaltcode eingeben f\u00FCr\:<br> {0}?
-SitePane.UnlockTitle=Buch freischalten
-SitesPane.AvailableBooks=Verf\u00FCgbare B\u00FCcher
-SitesPane.Local=Installierte B\u00FCcher
-SwordSiteEditor.CatalogDir=Catalog-Ordner\:
-SwordSiteEditor.Host=Server-Adresse(Host)\:
-SwordSiteEditor.PackageDir=Zip-Ordner\:
-SwordSiteEditor.ProxyHost=Proxy Host\:
-SwordSiteEditor.ProxyPort=Proxy Port\:
+
+<html><b>Click\ 'Update\ Available\ Books'\ to\ download\ an\ up\ to\ date\ book\ list.</b> = <html><b>Auf 'Liste aktualisieren' klicken um eine aktuelle Buchliste herunterzuladen.</b>
+
+<html>Please\ enter\ the\ unlock\ key\ for\:<br>\ {0}? = <html>Bitte Freischaltcode eingeben f\u00FCr:<br> {0}?
+
+Are\ you\ sure\ you\ want\ to\ delete\ {0}? = Wollen Sie {0} sicher l\u00F6schen?
+
+Are\ you\ sure\ you\ want\ to\ remove\ the\ index\ for\ {0}? = Sind sie sicher, dass Sie den Index f\u00FCr {0} entfernen wollen?
+
+Available\ Books = Verf\u00FCgbare B\u00FCcher
+
+Book\ already\ installed\:\ {0} = Buch ist schon installiert: {0}
+
+Cancel = Cancel
+
+Catalog\ Directory\: = Catalog-Ordner:
+
+Choose\ Font = Schriftart ausw\u00E4hlen
+
+Cult\ /\ Unorthodox\ /\ Questionable = Kult / Unorthodox / Fragw\u00FCrdig
+
+Delete\ Book = Buch l\u00F6schen
+
+Delete\ Site? = Seite l\u00F6schen?
+
+Do\ you\ wish\ to\ try\ to\ download\ and\ index\ or\ generate\ one\ for\ yourself?u000ADownloading\ (2-3Mb)\ will\ take\ around\ 10\ mins\ on\ a\ modem\ or\ 1\ min\ on\ broadband.u000AGenerating\ an\ index\ will\ take\ around\ 5\ mins\ on\ an\ average\ computer.u000ANot\ all\ books\ have\ indexes\ so\ download\ may\ not\ be\ possible. = Do you wish to try to download and index or generate one for yourself?\nDownloading (2-3Mb) will take around 10 mins on a modem or 1 min on broadband.\nGenerating an index will take around 5 mins on an average computer.\nNot all books have indexes so download may not be possible.
+
+Download = Download
+
+Download\ Book = Buch herunterladen
+
+Download\ or\ generate? = Download or generate?
+
+Downloading\ failed.u000ADo\ you\ wish\ to\ generate\ an\ index\ anyway? = Downloading failed.\nDo you wish to generate an index anyway?
+
+Duplicate\ site\ name = Doppelter Seitenname
+
+Edit\ Update\ Sites = Update-Seiten editieren
+
+Generate = Generate
+
+Host\: = Server-Adresse(Host):
+
+Installed\ Books = Installierte B\u00FCcher
+
+Locked = Gesperrt
+
+Missing\ site\ name = Seitenname fehlt
+
+No\ Site = Keine Seite
+
+No\ selected\ site\ to\ edit = No selected site to edit
+
+OK = OK 
+
+Proxy\ Host\: = Proxy Host:
+
+Proxy\ Port\: = Proxy Port:
+
+Remove\ Index\ for\ Book = Index entfernen f\u00FCr das Buch
+
+Select\ a\ Bible = Bibel ausw\u00E4hlen
+
+Unable\ to\ delete\:\ {0} = Konnte nicht gel\u00F6scht werden: {0}
+
+Unlock\ Book = Buch freischalten
+
+Unsupported = Nicht unterst\u00FCtzt
+
+Which\ download\ site\ do\ you\ wish\ to\ use? = Which download site do you wish to use?
+
+Which\ download\ site? = Which download site?
+
+Zip\ Directory\: = Zip-Ordner:
+
+{0}\ books\ available\ for\ download. = {0} B\u00FCcher zum Download verf\u00FCgbar.
+
+{0}\ books\ installed. = {0} B\u00FCcher installiert.
+
+{0}\ is\ {1,number,\#\#\#,\#\#\#,\#\#\#.\#}KB.\ Continue? = {0} ist {1,number,###,###,###.#}KB gro\u00DF. Fortfahren?
+{0}\ is\ {1,number,\#\#\#,\#\#\#,\#\#\#.\#}MB.\ Continue? = {0} ist {1,number,###,###,###.#}MB gro\u00DF. Fortfahren?

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,65 +1,81 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
 
-BookChooser.Cancel=\u0627\u0646\u0636\u0631\u0627\u0641
-BookChooser.OK=\u0642\u0628\u064A\u0648\u0644
-BookChooser.Title=\u062A\u0631\u062C\u0648\u0645\u0647 \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
+<html><b>Click\ 'Update\ Available\ Books'\ to\ download\ an\ up\ to\ date\ book\ list.</b> = <html><b> '\u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0642\u0627\u0628\u0644 \u062F\u0627\u0646\u0644\u0648\u062F \u06A9\u0631\u062F\u0646' \u0628\u0633\u0646\u06CC\u062F \u0628\u0631\u0627\u06CC \u0644\u062D\u0633\u062A \u062C\u062F\u06CC\u062F \u06A9\u062A\u0627\u0628\u200C\u0647\u0627.</b>
 
-SitesPane.AvailableBooks=\u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0642\u0627\u0628\u0644 \u062F\u0627\u0646\u0644\u0648\u062F \u06A9\u0631\u062F\u0646
-SitesPane.Local=\u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0645\u0648\u062C\u0648\u062F
+<html>Please\ enter\ the\ unlock\ key\ for\:<br>\ {0}? = <html>\u06A9\u0644\u06CC\u062F \u0642\u0641\u0644 \u0627\u0632 \u06A9\u062A\u0627\u0628<br> {0}?
 
-SitePane.KBSize=\u0627\u0646\u062F\u0627\u0632\u0647{0}  {1,number,###,###,###.#}KB \u0647\u0633\u062A.  \u062F\u0627\u0646\u0644\u0648\u062F \u0631\u0627 \u0642\u0628\u0648\u0644 \u06A9\u0646\u06CC\u062F\u061F
-SitePane.MBSize={0} \u0627\u0646\u062F\u0627\u0632\u0647 {1,number,###,###,###.#}MB \u0647\u0633\u062A. \u062F\u0627\u0646\u0644\u0648\u062F \u0631\u0627 \u0642\u0628\u0648\u0644 \u06A9\u0646\u06CC\u062F\u061F
-SitePane.ConfirmationTitle=\u062F\u0627\u0646\u0644\u0648\u062F \u06A9\u062A\u0627\u0628
-SitePane.Installed=\u0627\u06CC\u0646 \u06A9\u062A\u0627\u0628  {0} \u062F\u0627\u0631\u06CC\u062F
-SitePane.InstalledDesc={0} \u06A9\u062A\u0627\u0628\u0647\u0627 \u0646\u0636\u0628 \u0647\u0633\u062A\u0646\u062A \u062F\u0631 \u0627\u06CC\u0646 \u06A9\u0645\u067E\u0648\u062A\u0631
-SitePane.DeleteFailed=\u062D\u0632\u0641 \u06A9\u0631\u062F\u0627\u0646 {0} \u0645\u0645\u06A9\u0646 \u0646\u06CC\u0633\u062A
-SitePane.AvailableDesc={0} \u06A9\u062A\u0627\u0628 \u0642\u0628\u0644 \u062F\u0627\u0646\u0644\u0648\u062F 
-SitePane.NoneAvailableDesc=<html><b> '\u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0642\u0627\u0628\u0644 \u062F\u0627\u0646\u0644\u0648\u062F \u06A9\u0631\u062F\u0646' \u0628\u0633\u0646\u06CC\u062F \u0628\u0631\u0627\u06CC \u0644\u062D\u0633\u062A \u062C\u062F\u06CC\u062F \u06A9\u062A\u0627\u0628\u200C\u0647\u0627.</b>
-SitePane.ConfirmDeleteTitle=\u06A9\u062A\u0627\u0628 \u062D\u0632\u0641 \u06A9\u0646
-SitePane.ConfirmDeleteBook=\u0645\u0637\u0645\u062B\u0646?
-SitePane.UnlockTitle=\u0642\u0641\u0644 \u06A9\u062A\u0627\u0628 \u0628\u0627\u0632 \u06A9\u0646
-SitePane.UnlockBook=<html>\u06A9\u0644\u06CC\u062F \u0642\u0641\u0644 \u0627\u0632 \u06A9\u062A\u0627\u0628<br> {0}?
-SitePane.ConfirmUninstallTitle=\u062D\u0632\u0641\u200C\u0686\u0627 \u0627\u0646\u06AF\u0634\u062A\u06CC \u06A9\u062A\u0627\u0628
-SitePane.ConfirmUninstallBook=\u0645\u0637\u0645\u062B\u0646 ?
-SitePane.FontChooser=\u0627\u0646\u062A\u062E\u0627\u0628 \u0641\u0648\u0646\u062A
+Are\ you\ sure\ you\ want\ to\ delete\ {0}? = \u0645\u0637\u0645\u062B\u0646?
 
-EditSitePane.EditSitesTitle=\u0648\u06CC\u0631\u0627\u06CC\u0634
-EditSitePane.MissingSite=\u0627\u0633\u0645 \u0633\u0627\u06CC\u062A \u0646\u062F\u062F\u06CC\u062F
-EditSitePane.DuplicateSite=\u0627\u0633\u0645 \u0633\u0627\u062D\u062A \u062F\u0648 \u0628\u0627\u0631 \u0627\u0633\u062A\u0641\u062F\u0647 \u06A9\u0631\u062F\u06CC\u062F
-EditSitePane.NoSelectedSite=\u0647\u06CC\u062C \u0633\u0627\u06CC\u062A \u0628\u0631\u0627\u06CC \u0648\u06CC\u0631\u0627\u06CC\u0634 \u06A9\u0631\u062F\u0646 \u0627\u0646\u062A\u062E\u0627\u0628 \u0646\u06A9\u0631\u062F\u06CC\u062F
-EditSitePane.NoSite=\u0627\u0633\u0645 \u0633\u0627\u06CC\u062A \u062C\u06CC\u0633\u062A\u061F
-EditSitePane.ConfirmDeleteSite=\u0645\u0637\u0645\u062B\u0646 ?
-EditSitePane.DeleteSite=\u0647\u0632\u0641\u061F
+Are\ you\ sure\ you\ want\ to\ remove\ the\ index\ for\ {0}? = \u0645\u0637\u0645\u062B\u0646 ?
 
-# The following paragraph will not be translated for the moment - no one knew how to formulate it and it seemed that those who know what a proxy is know it in English too.
+Available\ Books = \u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0642\u0627\u0628\u0644 \u062F\u0627\u0646\u0644\u0648\u062F \u06A9\u0631\u062F\u0646
 
-SwordSiteEditor.Host=\u0622\u062F\u0631\u0633 \u0633\u0627\u06CC\u062A \u062F\u0627\u0646\u0644\u0648\u062F:
-SwordSiteEditor.CatalogDir=\u0641\u0647\u0631\u0633\u062A \u0644\u06CC\u0633\u062A \u0645\u062F\u0648\u0644\u200C\u0647\u0627:
-SwordSiteEditor.PackageDir=\u0641\u0647\u0631\u0633\u062A \u0645\u062F\u0648\u0644\u0647\u0627:
-SwordSiteEditor.ProxyHost=\u0627\u062F\u0631\u0633 \u0633\u0627\u06CC\u062A \u067E\u0631\u0648\u06A9\u0633\u06CC:
-SwordSiteEditor.ProxyPort=\u067E\u0648\u0631\u062A \u0633\u0627\u06CC\u062A \u067E\u0631\u0648\u06A9\u0633\u06CC:
-# 
+Book\ already\ installed\:\ {0} = \u0627\u06CC\u0646 \u06A9\u062A\u0627\u0628  {0} \u062F\u0627\u0631\u06CC\u062F
 
-BookTreeCellRenderer.BookLocked=\u0642\u0641\u0644
-BookTreeCellRenderer.BookUnsupported=\u0628\u0627 \u0627\u06CC\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u06A9\u0627\u0631 \u0646\u0645\u06CC\u06A9\u0646\u062F
-BookTreeCellRenderer.BookQuestionable=\u063A\u06CC\u0631 \u0645\u0633\u06CC\u0647\u06CC\u0627\u062A
+Cancel = \u0627\u0646\u0636\u0631\u0627\u0641
 
-# IndexResolver is not used at this time.
-IndexResolver.HowMessageTitle=Download or generate?
-IndexResolver.HowMessage=Do you wish to try to download and index or generate one for yourself?\n\
-	Downloading (2-3Mb) will take around 10 mins on a modem or 1 min on broadband.\n\
-	Generating an index will take around 5 mins on an average computer.\n\
-	Not all books have indexes so download may not be possible.
-IndexResolver.HowSiteTitle=Which download site?
-IndexResolver.HowSite=Which download site do you wish to use?
-IndexResolver.HowGenerateTitle=Generate an index anyway?
-IndexResolver.HowGenerate=Downloading failed.\n\
-	Do you wish to generate an index anyway?
-IndexResolver.OptionDownload=\u062F\u0627\u0646\u0644\u0648\u062F
-IndexResolver.OptionGenerate=Generate
-IndexResolver.OptionCancel=\u0627\u0646\u0636\u0631\u0627\u0641
+Catalog\ Directory\: = \u0641\u0647\u0631\u0633\u062A \u0644\u06CC\u0633\u062A \u0645\u062F\u0648\u0644\u200C\u0647\u0627:
+
+Choose\ Font = \u0627\u0646\u062A\u062E\u0627\u0628 \u0641\u0648\u0646\u062A
+
+Cult\ /\ Unorthodox\ /\ Questionable = \u063A\u06CC\u0631 \u0645\u0633\u06CC\u0647\u06CC\u0627\u062A
+
+Delete\ Book = \u06A9\u062A\u0627\u0628 \u062D\u0632\u0641 \u06A9\u0646
+
+Delete\ Site? = \u0647\u0632\u0641\u061F
+
+Do\ you\ wish\ to\ try\ to\ download\ and\ index\ or\ generate\ one\ for\ yourself?u000ADownloading\ (2-3Mb)\ will\ take\ around\ 10\ mins\ on\ a\ modem\ or\ 1\ min\ on\ broadband.u000AGenerating\ an\ index\ will\ take\ around\ 5\ mins\ on\ an\ average\ computer.u000ANot\ all\ books\ have\ indexes\ so\ download\ may\ not\ be\ possible. = Do you wish to try to download and index or generate one for yourself?\nDownloading (2-3Mb) will take around 10 mins on a modem or 1 min on broadband.\nGenerating an index will take around 5 mins on an average computer.\nNot all books have indexes so download may not be possible.
+
+Download = \u062F\u0627\u0646\u0644\u0648\u062F
+
+Download\ Book = \u062F\u0627\u0646\u0644\u0648\u062F \u06A9\u062A\u0627\u0628
+
+Download\ or\ generate? = Download or generate?
+
+Downloading\ failed.u000ADo\ you\ wish\ to\ generate\ an\ index\ anyway? = Downloading failed.\nDo you wish to generate an index anyway?
+
+Duplicate\ site\ name = \u0627\u0633\u0645 \u0633\u0627\u062D\u062A \u062F\u0648 \u0628\u0627\u0631 \u0627\u0633\u062A\u0641\u062F\u0647 \u06A9\u0631\u062F\u06CC\u062F
+
+Edit\ Update\ Sites = \u0648\u06CC\u0631\u0627\u06CC\u0634
+
+Generate = Generate
+
+Host\: = \u0622\u062F\u0631\u0633 \u0633\u0627\u06CC\u062A \u062F\u0627\u0646\u0644\u0648\u062F:
+
+Installed\ Books = \u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0645\u0648\u062C\u0648\u062F
+
+Locked = \u0642\u0641\u0644
+
+Missing\ site\ name = \u0627\u0633\u0645 \u0633\u0627\u06CC\u062A \u0646\u062F\u062F\u06CC\u062F
+
+No\ Site = \u0627\u0633\u0645 \u0633\u0627\u06CC\u062A \u062C\u06CC\u0633\u062A\u061F
+
+No\ selected\ site\ to\ edit = \u0647\u06CC\u062C \u0633\u0627\u06CC\u062A \u0628\u0631\u0627\u06CC \u0648\u06CC\u0631\u0627\u06CC\u0634 \u06A9\u0631\u062F\u0646 \u0627\u0646\u062A\u062E\u0627\u0628 \u0646\u06A9\u0631\u062F\u06CC\u062F
+
+OK = \u0642\u0628\u064A\u0648\u0644
+
+Proxy\ Host\: = \u0627\u062F\u0631\u0633 \u0633\u0627\u06CC\u062A \u067E\u0631\u0648\u06A9\u0633\u06CC:
+
+Proxy\ Port\: = \u067E\u0648\u0631\u062A \u0633\u0627\u06CC\u062A \u067E\u0631\u0648\u06A9\u0633\u06CC:
+
+Remove\ Index\ for\ Book = \u062D\u0632\u0641\u200C\u0686\u0627 \u0627\u0646\u06AF\u0634\u062A\u06CC \u06A9\u062A\u0627\u0628
+
+Select\ a\ Bible = \u062A\u0631\u062C\u0648\u0645\u0647 \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
+
+Unable\ to\ delete\:\ {0} = \u062D\u0632\u0641 \u06A9\u0631\u062F\u0627\u0646 {0} \u0645\u0645\u06A9\u0646 \u0646\u06CC\u0633\u062A
+
+Unlock\ Book = \u0642\u0641\u0644 \u06A9\u062A\u0627\u0628 \u0628\u0627\u0632 \u06A9\u0646
+
+Unsupported = \u0628\u0627 \u0627\u06CC\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u06A9\u0627\u0631 \u0646\u0645\u06CC\u06A9\u0646\u062F
+
+Which\ download\ site\ do\ you\ wish\ to\ use? = Which download site do you wish to use?
+
+Which\ download\ site? = Which download site?
+
+Zip\ Directory\: = \u0641\u0647\u0631\u0633\u062A \u0645\u062F\u0648\u0644\u0647\u0627:
+
+{0}\ books\ available\ for\ download. = {0} \u06A9\u062A\u0627\u0628 \u0642\u0628\u0644 \u062F\u0627\u0646\u0644\u0648\u062F 
+
+{0}\ books\ installed. = {0} \u06A9\u062A\u0627\u0628\u0647\u0627 \u0646\u0636\u0628 \u0647\u0633\u062A\u0646\u062A \u062F\u0631 \u0627\u06CC\u0646 \u06A9\u0645\u067E\u0648\u062A\u0631
+
+{0}\ is\ {1,number,\#\#\#,\#\#\#,\#\#\#.\#}KB.\ Continue? = \u0627\u0646\u062F\u0627\u0632\u0647{0}  {1,number,###,###,###.#}KB \u0647\u0633\u062A.  \u062F\u0627\u0646\u0644\u0648\u062F \u0631\u0627 \u0642\u0628\u0648\u0644 \u06A9\u0646\u06CC\u062F\u061F
+{0}\ is\ {1,number,\#\#\#,\#\#\#,\#\#\#.\#}MB.\ Continue? = {0} \u0627\u0646\u062F\u0627\u0632\u0647 {1,number,###,###,###.#}MB \u0647\u0633\u062A. \u062F\u0627\u0646\u0644\u0648\u062F \u0631\u0627 \u0642\u0628\u0648\u0644 \u06A9\u0646\u06CC\u062F\u061F

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,62 +1,81 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
 
-BookChooser.Cancel=Batal
-BookChooser.OK=OK
-BookChooser.Title=Pilih Alkitab
+<html><b>Click\ 'Update\ Available\ Books'\ to\ download\ an\ up\ to\ date\ book\ list.</b> = <html><b>Click 'Update Buku Tersedia' untuk mengunduh daftar buku terbaru.</b>
 
-SitesPane.AvailableBooks=Buku Tersedia
-SitesPane.Local=Buku Terinstall
+<html>Please\ enter\ the\ unlock\ key\ for\:<br>\ {0}? = <html>Silahkan masukan kata kunci untuk:<br> {0}?
 
-SitePane.KBSize={0} adalah {1,number,###,###,###.#}KB. Melanjutkan?
-SitePane.MBSize={0} adalah {1,number,###,###,###.#}MB. Melanjutkan?
-SitePane.ConfirmationTitle=Mengunduh Buku
-SitePane.Installed=Buku sudah terinstall: {0}
-SitePane.InstalledDesc={0} buku terinstall.
-SitePane.DeleteFailed=Hapus gagal: {0}
-SitePane.AvailableDesc={0} buku tersedia untuk di unduh.
-SitePane.NoneAvailableDesc=<html><b>Click 'Update Buku Tersedia' untuk mengunduh daftar buku terbaru.</b>
-SitePane.ConfirmDeleteTitle=Hapus Buku
-SitePane.ConfirmDeleteBook=Apakah anda yakin mau menghapus {0}?
-SitePane.UnlockTitle=Unlock Buku
-SitePane.UnlockBook=<html>Silahkan masukan kata kunci untuk:<br> {0}?
-SitePane.ConfirmUninstallTitle=Hapus Indeks
-SitePane.ConfirmUninstallBook=Apakah anda yakin mau menghapus indeks untuk {0}?
-SitePane.FontChooser=Pilih Font
+Are\ you\ sure\ you\ want\ to\ delete\ {0}? = Apakah anda yakin mau menghapus {0}?
 
-EditSitePane.EditSitesTitle=Update Update Situs
-EditSitePane.MissingSite=Nama situs wajib diisi
-EditSitePane.DuplicateSite=Duplikasi nama situs
-EditSitePane.NoSelectedSite=Pilih situs untuk di ubah
-EditSitePane.NoSite=Tidak ada situs
-EditSitePane.ConfirmDeleteSite=Apakah anda yakin mau menghapus {0}?
-EditSitePane.DeleteSite=Hapus Situs?
+Are\ you\ sure\ you\ want\ to\ remove\ the\ index\ for\ {0}? = Apakah anda yakin mau menghapus indeks untuk {0}?
 
-SwordSiteEditor.Host=Host:
-SwordSiteEditor.CatalogDir=Daftar Katalog:
-SwordSiteEditor.PackageDir=Zip Directory:
-SwordSiteEditor.ProxyHost=Proxy Host:
-SwordSiteEditor.ProxyPort=Proxy Port:
+Available\ Books = Buku Tersedia
 
-BookTreeCellRenderer.BookLocked=Terkunci
-BookTreeCellRenderer.BookUnsupported=Tidak disupport
-BookTreeCellRenderer.BookQuestionable=Aliran / Tidak Lazim / Meragukan
+Book\ already\ installed\:\ {0} = Buku sudah terinstall: {0}
 
-# IndexResolver is not used at this time.
-IndexResolver.HowMessageTitle=Unduh or buat sendiri?
-IndexResolver.HowMessage=Apakah anda ingin mengunduh atau membuat indeks sendiri?\n\
-	Mengunduh (2-3Mb) akam memakan waktu 10 menit pada atau 1 menit pada broadband.\n\
-	Membuat indeks sendiri akan memakan waktu 10 menit pada komputer.\n\
-	Tidak semua buku terdapat indeks yang dapat di unduh.
-IndexResolver.HowSiteTitle=Situs mana?
-IndexResolver.HowSite=Situs mana yang akan anda gunakan?
-IndexResolver.HowGenerateTitle=Membuat indeks?
-IndexResolver.HowGenerate=Gagal mengunduh.\n\
-	Apakah anda tetap mau membuat indeks?
-IndexResolver.OptionDownload=Unduh
-IndexResolver.OptionGenerate=Buat
-IndexResolver.OptionCancel=Batal
+Cancel = Batal
+
+Catalog\ Directory\: = Daftar Katalog:
+
+Choose\ Font = Pilih Font
+
+Cult\ /\ Unorthodox\ /\ Questionable = Aliran / Tidak Lazim / Meragukan
+
+Delete\ Book = Hapus Buku
+
+Delete\ Site? = Hapus Situs?
+
+Do\ you\ wish\ to\ try\ to\ download\ and\ index\ or\ generate\ one\ for\ yourself?u000ADownloading\ (2-3Mb)\ will\ take\ around\ 10\ mins\ on\ a\ modem\ or\ 1\ min\ on\ broadband.u000AGenerating\ an\ index\ will\ take\ around\ 5\ mins\ on\ an\ average\ computer.u000ANot\ all\ books\ have\ indexes\ so\ download\ may\ not\ be\ possible. = Apakah anda ingin mengunduh atau membuat indeks sendiri?\nMengunduh (2-3Mb) akam memakan waktu 10 menit pada atau 1 menit pada broadband.\nMembuat indeks sendiri akan memakan waktu 10 menit pada komputer.\nTidak semua buku terdapat indeks yang dapat di unduh.
+
+Download = Unduh
+
+Download\ Book = Mengunduh Buku
+
+Download\ or\ generate? = Unduh or buat sendiri?
+
+Downloading\ failed.u000ADo\ you\ wish\ to\ generate\ an\ index\ anyway? = Gagal mengunduh.\nApakah anda tetap mau membuat indeks?
+
+Duplicate\ site\ name = Duplikasi nama situs
+
+Edit\ Update\ Sites = Update Update Situs
+
+Generate = Buat
+
+Host\: = Host:
+
+Installed\ Books = Buku Terinstall
+
+Locked = Terkunci
+
+Missing\ site\ name = Nama situs wajib diisi
+
+No\ Site = Tidak ada situs
+
+No\ selected\ site\ to\ edit = Pilih situs untuk di ubah
+
+OK = OK
+
+Proxy\ Host\: = Proxy Host:
+
+Proxy\ Port\: = Proxy Port:
+
+Remove\ Index\ for\ Book = Hapus Indeks
+
+Select\ a\ Bible = Pilih Alkitab
+
+Unable\ to\ delete\:\ {0} = Hapus gagal: {0}
+
+Unlock\ Book = Unlock Buku
+
+Unsupported = Tidak disupport
+
+Which\ download\ site\ do\ you\ wish\ to\ use? = Situs mana yang akan anda gunakan?
+
+Which\ download\ site? = Situs mana?
+
+Zip\ Directory\: = Zip Directory:
+
+{0}\ books\ available\ for\ download. = {0} buku tersedia untuk di unduh.
+
+{0}\ books\ installed. = {0} buku terinstall.
+
+{0}\ is\ {1,number,\#\#\#,\#\#\#,\#\#\#.\#}KB.\ Continue? = {0} adalah {1,number,###,###,###.#}KB. Melanjutkan?
+{0}\ is\ {1,number,\#\#\#,\#\#\#,\#\#\#.\#}MB.\ Continue? = {0} adalah {1,number,###,###,###.#}MB. Melanjutkan?

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_zh.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_zh.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,45 +1,81 @@
 
-BookChooser.Cancel=\u53D6\u6D88
-BookChooser.OK=\u78BA\u8A8D
-BookChooser.Title=\u9078\u64C7\u8056\u7D93
-BookTreeCellRenderer.BookLocked=\u9396\u5B9A
-BookTreeCellRenderer.BookQuestionable=\u904E\u65BC\u5D07\u62DC / \u975E\u6B63\u7D71 / \u53EF\u7591\u7684
-BookTreeCellRenderer.BookUnsupported=\u7121\u652F\u6301
-EditSitePane.ConfirmDeleteSite=\u4F60\u78BA\u5B9A\u8981\u522A\u9664 {0}?
-EditSitePane.DeleteSite=\u522A\u9664\u7AD9\u53F0?
-EditSitePane.DuplicateSite=\u540C\u6A23\u7684\u7AD9\u53F0\u540D\u7A31
-EditSitePane.EditSitesTitle=\u7DE8\u8F2F\u66F4\u65B0\u7AD9\u53F0
-EditSitePane.MissingSite=\u672A\u627E\u5230\u7AD9\u53F0\u540D\u7A31
-EditSitePane.NoSelectedSite=\u7DE8\u8F2F\u524D\u8ACB\u5148\u9078\u64C7\u7AD9\u53F0
-EditSitePane.NoSite=\u7121\u7AD9\u53F0
-IndexResolver.HowGenerate=\u4E0B\u8F09\u5931\u6557.\n \u4F60\u8981\u7522\u751F\u7D22\u5F15\u55CE?
-IndexResolver.HowGenerateTitle=\u7522\u751F\u7D22\u5F15?
-IndexResolver.HowMessage=\u4F60\u8981\u4E0B\u8F09\u6216\u7522\u751F\u7D22\u5F15\u6A94?\nDownloading (2-3Mb) will take around 10 mins on a modem or 1 min on broadband.\nGenerating an index will take around 5 mins on an average computer.\nNot all books have indexes so download may not be possible.
-IndexResolver.HowMessageTitle=\u4E0B\u8F09\u6216\u7522\u751F?
-IndexResolver.HowSite=\u4F7F\u7528\u90A3\u3127\u500B\u7AD9\u53F0\u4EE5\u4E0B\u8F09\u8CC7\u6599?
-IndexResolver.HowSiteTitle=\u4F7F\u7528\u90A3\u3127\u500B\u7AD9\u53F0\u4EE5\u4E0B\u8F09\u8CC7\u6599?
-IndexResolver.OptionCancel=\u53D6\u6D88
-IndexResolver.OptionDownload=\u4E0B\u8F09
-IndexResolver.OptionGenerate=\u7522\u751F
-SitePane.AvailableDesc=\u5171{0} \u672C\u66F8\u53EF\u4EE5\u4E0B\u8F09
-SitePane.ConfirmDeleteBook=\u4F60\u78BA\u5B9A\u8981\u522A\u9664\u66F8\u7C4D {0}?
-SitePane.ConfirmDeleteTitle=\u522A\u9664\u66F8\u7C4D
-SitePane.ConfirmUninstallBook=\u4F60\u78BA\u5B9A\u8981\u79FB\u9664 {0}\u7684\u7D22\u5F15?
-SitePane.ConfirmUninstallTitle=\u79FB\u9664\u66F8\u7C4D\u7684\u7D22\u5F15
-SitePane.ConfirmationTitle=\u4E0B\u8F09\u66F8\u7C4D
-SitePane.DeleteFailed=\u7121\u6CD5\u522A\u9664\: {0}
-SitePane.FontChooser=\u9078\u64C7\u5B57\u578B
-SitePane.Installed=\u66F8\u7C4D\u5DF2\u5B89\u88DD\: {0}
-SitePane.InstalledDesc={0} \u66F8\u5DF2\u5B89\u88DD.
-SitePane.KBSize={0} \u5171 {1,number,\#\#\#,\#\#\#,\#\#\#.\#}KB. \u7E7C\u7E8C?
-SitePane.MBSize={0} \u5171 {1,number,\#\#\#,\#\#\#,\#\#\#.\#}MB. \u7E7C\u7E8C?
-SitePane.NoneAvailableDesc=<html><b>Click 'Update Available Books' to download an up to date book list.</b>
-SitePane.UnlockBook=<html>\u8ACB\u8F38\u5165\u89E3\u9396\u78BC\:<br> {0}?
-SitePane.UnlockTitle=\u89E3\u9396\u66F8\u7C4D
-SitesPane.AvailableBooks=\u53EF\u7528\u7684\u66F8\u7C4D
-SitesPane.Local=\u5DF2\u5B89\u88DD\u7684\u66F8\u7C4D
-SwordSiteEditor.CatalogDir=\u76EE\u9304\u5B57\u5178\:
-SwordSiteEditor.Host=Host\:
-SwordSiteEditor.PackageDir=Zip Directory\:
-SwordSiteEditor.ProxyHost=Proxy Host\:
-SwordSiteEditor.ProxyPort=Proxy Port\:
+<html><b>Click\ 'Update\ Available\ Books'\ to\ download\ an\ up\ to\ date\ book\ list.</b> = <html><b>Click 'Update Available Books' to download an up to date book list.</b>
+
+<html>Please\ enter\ the\ unlock\ key\ for\:<br>\ {0}? = <html>\u8ACB\u8F38\u5165\u89E3\u9396\u78BC:<br> {0}?
+
+Are\ you\ sure\ you\ want\ to\ delete\ {0}? = \u4F60\u78BA\u5B9A\u8981\u522A\u9664\u66F8\u7C4D {0}?
+
+Are\ you\ sure\ you\ want\ to\ remove\ the\ index\ for\ {0}? = \u4F60\u78BA\u5B9A\u8981\u79FB\u9664 {0}\u7684\u7D22\u5F15?
+
+Available\ Books = \u53EF\u7528\u7684\u66F8\u7C4D
+
+Book\ already\ installed\:\ {0} = \u66F8\u7C4D\u5DF2\u5B89\u88DD: {0}
+
+Cancel = \u53D6\u6D88
+
+Catalog\ Directory\: = \u76EE\u9304\u5B57\u5178:
+
+Choose\ Font = \u9078\u64C7\u5B57\u578B
+
+Cult\ /\ Unorthodox\ /\ Questionable = \u904E\u65BC\u5D07\u62DC / \u975E\u6B63\u7D71 / \u53EF\u7591\u7684
+
+Delete\ Book = \u522A\u9664\u66F8\u7C4D
+
+Delete\ Site? = \u522A\u9664\u7AD9\u53F0?
+
+Do\ you\ wish\ to\ try\ to\ download\ and\ index\ or\ generate\ one\ for\ yourself?u000ADownloading\ (2-3Mb)\ will\ take\ around\ 10\ mins\ on\ a\ modem\ or\ 1\ min\ on\ broadband.u000AGenerating\ an\ index\ will\ take\ around\ 5\ mins\ on\ an\ average\ computer.u000ANot\ all\ books\ have\ indexes\ so\ download\ may\ not\ be\ possible. = \u4F60\u8981\u4E0B\u8F09\u6216\u7522\u751F\u7D22\u5F15\u6A94?\nDownloading (2-3Mb) will take around 10 mins on a modem or 1 min on broadband.\nGenerating an index will take around 5 mins on an average computer.\nNot all books have indexes so download may not be possible.
+
+Download = \u4E0B\u8F09
+
+Download\ Book = \u4E0B\u8F09\u66F8\u7C4D
+
+Download\ or\ generate? = \u4E0B\u8F09\u6216\u7522\u751F?
+
+Downloading\ failed.u000ADo\ you\ wish\ to\ generate\ an\ index\ anyway? = \u4E0B\u8F09\u5931\u6557.\n \u4F60\u8981\u7522\u751F\u7D22\u5F15\u55CE?
+
+Duplicate\ site\ name = \u540C\u6A23\u7684\u7AD9\u53F0\u540D\u7A31
+
+Edit\ Update\ Sites = \u7DE8\u8F2F\u66F4\u65B0\u7AD9\u53F0
+
+Generate = \u7522\u751F
+
+Host\: = Host:
+
+Installed\ Books = \u5DF2\u5B89\u88DD\u7684\u66F8\u7C4D
+
+Locked = \u9396\u5B9A
+
+Missing\ site\ name = \u672A\u627E\u5230\u7AD9\u53F0\u540D\u7A31
+
+No\ Site = \u7121\u7AD9\u53F0
+
+No\ selected\ site\ to\ edit = \u7DE8\u8F2F\u524D\u8ACB\u5148\u9078\u64C7\u7AD9\u53F0
+
+OK = \u78BA\u8A8D
+
+Proxy\ Host\: = Proxy Host:
+
+Proxy\ Port\: = Proxy Port:
+
+Remove\ Index\ for\ Book = \u79FB\u9664\u66F8\u7C4D\u7684\u7D22\u5F15
+
+Select\ a\ Bible = \u9078\u64C7\u8056\u7D93
+
+Unable\ to\ delete\:\ {0} = \u7121\u6CD5\u522A\u9664: {0}
+
+Unlock\ Book = \u89E3\u9396\u66F8\u7C4D
+
+Unsupported = \u7121\u652F\u6301
+
+Which\ download\ site\ do\ you\ wish\ to\ use? = \u4F7F\u7528\u90A3\u3127\u500B\u7AD9\u53F0\u4EE5\u4E0B\u8F09\u8CC7\u6599?
+
+Which\ download\ site? = \u4F7F\u7528\u90A3\u3127\u500B\u7AD9\u53F0\u4EE5\u4E0B\u8F09\u8CC7\u6599?
+
+Zip\ Directory\: = Zip Directory:
+
+{0}\ books\ available\ for\ download. = \u5171{0} \u672C\u66F8\u53EF\u4EE5\u4E0B\u8F09
+
+{0}\ books\ installed. = {0} \u66F8\u5DF2\u5B89\u88DD.
+
+{0}\ is\ {1,number,\#\#\#,\#\#\#,\#\#\#.\#}KB.\ Continue? = {0} \u5171 {1,number,###,###,###.#}KB. \u7E7C\u7E8C?
+{0}\ is\ {1,number,\#\#\#,\#\#\#,\#\#\#.\#}MB.\ Continue? = {0} \u5171 {1,number,###,###,###.#}MB. \u7E7C\u7E8C?

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_zh_CN.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/Msg_zh_CN.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,45 +1,81 @@
 
-BookChooser.Cancel=\u53D6\u6D88
-BookChooser.OK=\u786E\u8BA4
-BookChooser.Title=\u9009\u62E9\u5723\u7ECF
-BookTreeCellRenderer.BookLocked=\u9501\u5B9A
-BookTreeCellRenderer.BookQuestionable=\u8FC7\u65BC\u5D07\u62DC / \u975E\u6B63\u7EDF / \u53EF\u7591\u7684
-BookTreeCellRenderer.BookUnsupported=\u65E0\u652F\u6301
-EditSitePane.ConfirmDeleteSite=\u4F60\u786E\u5B9A\u8981\u5220\u9664 {0}?
-EditSitePane.DeleteSite=\u5220\u9664\u7AD9\u53F0?
-EditSitePane.DuplicateSite=\u540C\u6837\u7684\u7AD9\u53F0\u540D\u79F0
-EditSitePane.EditSitesTitle=\u7F16\u8F91\u66F4\u65B0\u7AD9\u53F0
-EditSitePane.MissingSite=\u672A\u627E\u5230\u7AD9\u53F0\u540D\u79F0
-EditSitePane.NoSelectedSite=\u7F16\u8F91\u524D\u8BF7\u5148\u9009\u62E9\u7AD9\u53F0
-EditSitePane.NoSite=\u65E0\u7AD9\u53F0\u7121\u7AD9\u53F0
-IndexResolver.HowGenerate=\u4E0B\u8F7D\u5931\u8D25.\n \u4F60\u8981\u4EA7\u751F\u7D22\u5F15\u5417?
-IndexResolver.HowGenerateTitle=\u4EA7\u751F\u7D22\u5F15?
-IndexResolver.HowMessage=\u4F60\u8981\u4E0B\u8F7D\u6216\u4EA7\u751F\u7D22\u5F15\u6863?\nDownloading (2-3Mb) will take around 10 mins on a modem or 1 min on broadband.\nGenerating an index will take around 5 mins on an average computer.\nNot all books have indexes so download may not be possible.
-IndexResolver.HowMessageTitle=\u4E0B\u8F7D\u6216\u4EA7\u751F?
-IndexResolver.HowSite=\u4F7F\u7528\u90A3\u3127\u7AD9\u53F0\u4E0B\u8F7D\u8D44\u6599?
-IndexResolver.HowSiteTitle=\u4F7F\u7528\u90A3\u3127\u7AD9\u53F0\u4E0B\u8F7D\u8D44\u6599?
-IndexResolver.OptionCancel=\u53D6\u6D88
-IndexResolver.OptionDownload=\u4E0B\u8F7D
-IndexResolver.OptionGenerate=\u4EA7\u751F
-SitePane.AvailableDesc=\u5171{0} \u672C\u4E66\u53EF\u4EE5\u4E0B\u8F7D
-SitePane.ConfirmDeleteBook=\u4F60\u786E\u5B9A\u8981\u5220\u9664\u4E66\u7C4D {0}?
-SitePane.ConfirmDeleteTitle=\u5220\u9664\u4E66\u7C4D
-SitePane.ConfirmUninstallBook=\u4F60\u786E\u5B9A\u8981\u79FB\u9664 {0}\u7684\u7D22\u5F15?
-SitePane.ConfirmUninstallTitle=\u79FB\u9664\u4E66\u7C4D\u7684\u7D22\u5F15
-SitePane.ConfirmationTitle=\u4E0B\u8F7D\u4E66\u7C4D
-SitePane.DeleteFailed=\u65E0\u6CD5\u5220\u9664\: {0}
-SitePane.FontChooser=\u9009\u62E9\u5B57\u578B
-SitePane.Installed=\u4E66\u7C4D\u5DF2\u5B89\u88C5\: {0}
-SitePane.InstalledDesc={0} \u4E66\u5DF2\u5B89\u88C5.
-SitePane.KBSize={0} \u5171 {1,number,\#\#\#,\#\#\#,\#\#\#.\#}KB. \u7EE7\u7EED?
-SitePane.MBSize={0} \u5171 {1,number,\#\#\#,\#\#\#,\#\#\#.\#}MB. \u7EE7\u7EED?
-SitePane.NoneAvailableDesc=<html><b>Click 'Update Available Books' to download an up to date book list.</b>
-SitePane.UnlockBook=<html>\u8BF7\u8F93\u5165\u89E3\u9501\u7801\:<br> {0}?
-SitePane.UnlockTitle=\u89E3\u9501\u4E66\u7C4D
-SitesPane.AvailableBooks=\u53EF\u7528\u7684\u4E66\u7C4D
-SitesPane.Local=\u5DF2\u5B89\u88C5\u7684\u4E66\u7C4D
-SwordSiteEditor.CatalogDir=\u76EE\u5F55\u5B57\u5178\:
-SwordSiteEditor.Host=Host\:
-SwordSiteEditor.PackageDir=Zip Directory\:
-SwordSiteEditor.ProxyHost=Proxy Host\:
-SwordSiteEditor.ProxyPort=Proxy Port\:
+<html><b>Click\ 'Update\ Available\ Books'\ to\ download\ an\ up\ to\ date\ book\ list.</b> = <html><b>Click 'Update Available Books' to download an up to date book list.</b>
+
+<html>Please\ enter\ the\ unlock\ key\ for\:<br>\ {0}? = <html>\u8BF7\u8F93\u5165\u89E3\u9501\u7801:<br> {0}?
+
+Are\ you\ sure\ you\ want\ to\ delete\ {0}? = \u4F60\u786E\u5B9A\u8981\u5220\u9664\u4E66\u7C4D {0}?
+
+Are\ you\ sure\ you\ want\ to\ remove\ the\ index\ for\ {0}? = \u4F60\u786E\u5B9A\u8981\u79FB\u9664 {0}\u7684\u7D22\u5F15?
+
+Available\ Books = \u53EF\u7528\u7684\u4E66\u7C4D
+
+Book\ already\ installed\:\ {0} = \u4E66\u7C4D\u5DF2\u5B89\u88C5: {0}
+
+Cancel = \u53D6\u6D88
+
+Catalog\ Directory\: = \u76EE\u5F55\u5B57\u5178:
+
+Choose\ Font = \u9009\u62E9\u5B57\u578B
+
+Cult\ /\ Unorthodox\ /\ Questionable = \u8FC7\u65BC\u5D07\u62DC / \u975E\u6B63\u7EDF / \u53EF\u7591\u7684
+
+Delete\ Book = \u5220\u9664\u4E66\u7C4D
+
+Delete\ Site? = \u5220\u9664\u7AD9\u53F0?
+
+Do\ you\ wish\ to\ try\ to\ download\ and\ index\ or\ generate\ one\ for\ yourself?u000ADownloading\ (2-3Mb)\ will\ take\ around\ 10\ mins\ on\ a\ modem\ or\ 1\ min\ on\ broadband.u000AGenerating\ an\ index\ will\ take\ around\ 5\ mins\ on\ an\ average\ computer.u000ANot\ all\ books\ have\ indexes\ so\ download\ may\ not\ be\ possible. = \u4F60\u8981\u4E0B\u8F7D\u6216\u4EA7\u751F\u7D22\u5F15\u6863?\nDownloading (2-3Mb) will take around 10 mins on a modem or 1 min on broadband.\nGenerating an index will take around 5 mins on an average computer.\nNot all books have indexes so download may not be possible.
+
+Download = \u4E0B\u8F7D
+
+Download\ Book = \u4E0B\u8F7D\u4E66\u7C4D
+
+Download\ or\ generate? = \u4E0B\u8F7D\u6216\u4EA7\u751F?
+
+Downloading\ failed.u000ADo\ you\ wish\ to\ generate\ an\ index\ anyway? = \u4E0B\u8F7D\u5931\u8D25.\n \u4F60\u8981\u4EA7\u751F\u7D22\u5F15\u5417?
+
+Duplicate\ site\ name = \u540C\u6837\u7684\u7AD9\u53F0\u540D\u79F0
+
+Edit\ Update\ Sites = \u7F16\u8F91\u66F4\u65B0\u7AD9\u53F0
+
+Generate = \u4EA7\u751F
+
+Host\: = Host:
+
+Installed\ Books = \u5DF2\u5B89\u88C5\u7684\u4E66\u7C4D
+
+Locked = \u9501\u5B9A
+
+Missing\ site\ name = \u672A\u627E\u5230\u7AD9\u53F0\u540D\u79F0
+
+No\ Site = \u65E0\u7AD9\u53F0\u7121\u7AD9\u53F0
+
+No\ selected\ site\ to\ edit = \u7F16\u8F91\u524D\u8BF7\u5148\u9009\u62E9\u7AD9\u53F0
+
+OK = \u786E\u8BA4
+
+Proxy\ Host\: = Proxy Host:
+
+Proxy\ Port\: = Proxy Port:
+
+Remove\ Index\ for\ Book = \u79FB\u9664\u4E66\u7C4D\u7684\u7D22\u5F15
+
+Select\ a\ Bible = \u9009\u62E9\u5723\u7ECF
+
+Unable\ to\ delete\:\ {0} = \u65E0\u6CD5\u5220\u9664: {0}
+
+Unlock\ Book = \u89E3\u9501\u4E66\u7C4D
+
+Unsupported = \u65E0\u652F\u6301
+
+Which\ download\ site\ do\ you\ wish\ to\ use? = \u4F7F\u7528\u90A3\u3127\u7AD9\u53F0\u4E0B\u8F7D\u8D44\u6599?
+
+Which\ download\ site? = \u4F7F\u7528\u90A3\u3127\u7AD9\u53F0\u4E0B\u8F7D\u8D44\u6599?
+
+Zip\ Directory\: = Zip Directory:
+
+{0}\ books\ available\ for\ download. = \u5171{0} \u672C\u4E66\u53EF\u4EE5\u4E0B\u8F7D
+
+{0}\ books\ installed. = {0} \u4E66\u5DF2\u5B89\u88C5.
+
+{0}\ is\ {1,number,\#\#\#,\#\#\#,\#\#\#.\#}KB.\ Continue? = {0} \u5171 {1,number,###,###,###.#}KB. \u7EE7\u7EED?
+{0}\ is\ {1,number,\#\#\#,\#\#\#,\#\#\#.\#}MB.\ Continue? = {0} \u5171 {1,number,###,###,###.#}MB. \u7EE7\u7EED?

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -46,7 +46,6 @@
 import javax.swing.tree.TreePath;
 import javax.swing.tree.TreeSelectionModel;
 
-import org.crosswire.common.icu.NumberShaper;
 import org.crosswire.common.swing.ActionFactory;
 import org.crosswire.common.swing.CWOptionPane;
 import org.crosswire.common.swing.CWScrollPane;
@@ -101,8 +100,6 @@
 
         actions = new ActionFactory(SitePane.class, this);
 
-        shaper = new NumberShaper();
-
         BookList bl = installer;
         if (bl == null) {
             bl = Books.installed();
@@ -132,19 +129,23 @@
      *
      */
     private void updateDescription() {
-        String desc = "#ERROR#"; //$NON-NLS-1$
+        String desc = "#ERROR#";
 
         if (installer == null) {
             int bookCount = Books.installed().getBooks().size();
-            desc = Msg.INSTALLED_DESC.toString(new Object[] {
+            // TRANSLATOR: This label give the number of books that are installed. {0} is a placeholder for the number.
+            desc = Msg.gettext("{0} books installed.", new Object[] {
                 new Integer(bookCount)
             });
         } else {
             int bookCount = installer.getBooks().size();
             if (bookCount == 0) {
-                desc = Msg.NONE_AVAILABLE_DESC.toString();
+                // TRANSLATOR: This label shows up when the list of available books for a download site is missing.
+                // Change the text between <html><b> and </b>.
+                desc = Msg.gettext("<html><b>Click 'Update Available Books' to download an up to date book list.</b>");
             } else {
-                desc = Msg.AVAILABLE_DESC.toString(new Object[] {
+                // TRANSLATOR: This label give the number of books available at a download site. {0} is a placeholder for the number.
+                desc = Msg.gettext("{0} books available for download.", new Object[] {
                     new Integer(bookCount)
                 });
             }
@@ -215,7 +216,7 @@
 
         setTreeModel(books);
         // Add lines if viewed in Java Look & Feel
-        treAvailable.putClientProperty("JTree.lineStyle", "Angled"); //$NON-NLS-1$ //$NON-NLS-2$
+        treAvailable.putClientProperty("JTree.lineStyle", "Angled");
         treAvailable.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
         treAvailable.setCellEditor(null);
         treAvailable.setRootVisible(false);
@@ -232,7 +233,7 @@
     private TreeModel createTreeModel(BookList books) {
         // return new BooksTreeModel(books);
         BookSet bmds = new BookSet(books.getBooks());
-        TreeNode bookRoot = new BookNode("root", bmds, 0, new Object[] { BookMetaData.KEY_CATEGORY, BookMetaData.KEY_XML_LANG}); //$NON-NLS-1$
+        TreeNode bookRoot = new BookNode("root", bmds, 0, new Object[] { BookMetaData.KEY_CATEGORY, BookMetaData.KEY_XML_LANG});
         return new DefaultTreeModel(bookRoot);
     }
 
@@ -293,10 +294,12 @@
         Book book = getBook(last);
 
         try {
-            String msg = shaper.shape(Msg.CONFIRM_DELETE_BOOK.toString(new Object[] {
+            // TRANSLATOR: Message asking for confirmation of a delete of a book.
+            String msg = Msg.gettext("Are you sure you want to delete {0}?", new Object[] {
                 book.getName()
-            }));
-            if (CWOptionPane.showConfirmDialog(this, msg, Msg.CONFIRM_DELETE_TITLE.toString(), JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
+            });
+            // TRANSLATOR: Title of a dialog that asks whether the book should be deleted.
+            if (CWOptionPane.showConfirmDialog(this, msg, Msg.gettext("Delete Book"), JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
                 book.getDriver().delete(book);
 
                 IndexManager imanager = IndexManagerFactory.getIndexManager();
@@ -321,9 +324,16 @@
         Object last = path.getLastPathComponent();
         Book book = getBook(last);
 
-        String unlockKey = (String) CWOptionPane.showInputDialog(this, Msg.UNLOCK_BOOK.toString(new Object[] {
+        // TRANSLATOR: Title to a dialog asking the user to provide an unlock key.
+        String title = Msg.gettext("Unlock Book");
+        // TRANSLATOR: Message asking the user to provide an unlock key.
+        // The unlock key is typically a string like AbCd8364efGH8472.
+        // {0} is a placeholder for the books name.
+        // In order to have long titles on the next line we use <html> and <br> to provide this.
+        String msg = Msg.gettext("<html>Please enter the unlock key for:<br> {0}?", new Object[] {
             book.getName()
-        }), Msg.UNLOCK_TITLE.toString(), JOptionPane.QUESTION_MESSAGE, null, null, book.getUnlockKey());
+        });
+        String unlockKey = (String) CWOptionPane.showInputDialog(this, msg, title, JOptionPane.QUESTION_MESSAGE, null, null, book.getUnlockKey());
 
         if (unlockKey != null && unlockKey.length() > 0) {
             book.unlock(unlockKey);
@@ -346,10 +356,14 @@
         try {
             IndexManager imanager = IndexManagerFactory.getIndexManager();
             if (imanager.isIndexed(book)) {
-                String formattedMsg = Msg.CONFIRM_UNINSTALL_BOOK.toString(new Object[] {
+                // TRANSLATOR: Message asking the user to confirm the delete of a search index for a book.
+                // {0} is a placeholder for the name of the book.
+                String formattedMsg = Msg.gettext("Are you sure you want to remove the index for {0}?", new Object[] {
                     book.getName()
                 });
-                if (CWOptionPane.showConfirmDialog(this, formattedMsg, Msg.CONFIRM_UNINSTALL_TITLE.toString(), JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
+                // TRANSLATOR: Title to the dialog that asks for confirmation of the deletion 
+                // of a book's search index.
+                if (CWOptionPane.showConfirmDialog(this, formattedMsg, Msg.gettext("Remove Index for Book"), JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
                     imanager.deleteIndex(book);
                 }
             }
@@ -367,7 +381,7 @@
             try {
                 int webAccess = InternetWarning.GRANTED;
                 if (WebWarning.instance().isShown()) {
-                    webAccess = InternetWarning.showDialog(this, "?"); //$NON-NLS-1$
+                    webAccess = InternetWarning.showDialog(this, "?");
                 }
 
                 if (webAccess == InternetWarning.GRANTED) {
@@ -395,7 +409,7 @@
 
         int webAccess = InternetWarning.GRANTED;
         if (WebWarning.instance().isShown()) {
-            webAccess = InternetWarning.showDialog(this, "?"); //$NON-NLS-1$
+            webAccess = InternetWarning.showDialog(this, "?");
         }
 
         if (webAccess != InternetWarning.GRANTED) {
@@ -409,21 +423,38 @@
             // Is the book already installed? Then nothing to do.
             Book book = Books.installed().getBook(name.getName());
             if (book != null && !installer.isNewer(name)) {
-                Reporter.informUser(this, Msg.INSTALLED, name.getName());
+                // TRANSLATOR: Popup message indicating that the book is already installed.
+                // {0} is a placeholder for the name of the book.
+                Reporter.informUser(this, Msg.gettext("Book already installed: {0}", name.getName()));
                 return;
             }
 
             float size = installer.getSize(name) / 1024.0F;
-            Msg msg = Msg.KB_SIZE;
+            
+            String formattedMsg = "";
             if (size > 1024.0F) {
                 size /= 1024.0F;
-                msg = Msg.MB_SIZE;
+                // TRANSLATOR: The size of the book is provided so that the user can decide whether to continue a download.
+                // {0} is a placeholder for the name of the book.
+                // {1,number,###,###,###.#} is a placeholder for the size of the download in megabytes.
+                // The pattern ###,###,###.# says to separate the number at every third digit and
+                //    to show one digit of fractional part.
+                // The , and . will automatically be converted into the user's proper separators.
+                formattedMsg = Msg.gettext("{0} is {1,number,###,###,###.#}MB. Continue?", new Object[] {name.getName(), new Float(size / 1024.0F)});
             }
+            else
+            {
+                // TRANSLATOR: The size of the book is provided so that the user can decide whether to continue a download.
+                // {0} is a placeholder for the name of the book.
+                // {1,number,###,###,###.#} is a placeholder for the size of the download in kilobytes.
+                // The pattern ###,###,###.# says to separate the number at every third digit and
+                //    to show one digit of fractional part.
+                // The , and . will automatically be converted into the user's proper separators.
+                formattedMsg = Msg.gettext("{0} is {1,number,###,###,###.#}KB. Continue?", new Object[] {name.getName(), new Float(size)});
+            }
 
-            String formattedMsg = msg.toString(new Object[] {
-                    name.getName(), new Float(size)
-            });
-            if (CWOptionPane.showConfirmDialog(this, formattedMsg, Msg.CONFIRMATION_TITLE.toString(), JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
+            // TRANSLATOR: Title to a dialog asking whether the user should download the book based on it's size.
+            if (CWOptionPane.showConfirmDialog(this, formattedMsg, Msg.gettext("Download Book"), JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
                 installer.install(name);
             }
         } catch (InstallException ex) {
@@ -457,13 +488,15 @@
         Object last = path.getLastPathComponent();
         Book book = getBook(last);
         if (book != null) {
-            Font picked = FontChooser.showDialog(this, Msg.FONT_CHOOSER.toString(), BookFont.instance().getFont(book));
+            // TRANSLATOR: Title to a dialog allowing the user to choose a font face, size and style.
+            Font picked = FontChooser.showDialog(this, Msg.gettext("Choose Font"), BookFont.instance().getFont(book));
             BookFont.instance().setFont(book, picked);
         }
 
         Language language = getLanguage(last);
         if (language != null) {
-            Font picked = FontChooser.showDialog(this, Msg.FONT_CHOOSER.toString(), BookFont.instance().getFont(language));
+            // TRANSLATOR: Title to a dialog allowing the user to choose a font face, size and style.
+            Font picked = FontChooser.showDialog(this, Msg.gettext("Choose Font"), BookFont.instance().getFont(language));
             BookFont.instance().setFont(language, picked);
         }
         actions.getAction(RESET_FONT).setEnabled(BookFont.instance().isSet(book, language));
@@ -548,17 +581,17 @@
         is.defaultReadObject();
     }
 
-    private static final String INSTALLED_BOOKS_LABEL = "InstalledBooksLabel"; //$NON-NLS-1$
-    private static final String AVAILABLE_BOOKS_LABEL = "AvailableBooksLabel"; //$NON-NLS-1$
-    private static final String SELECTED_BOOK_LABEL = "SelectedBookLabel"; //$NON-NLS-1$
-    private static final String REFRESH = "Refresh"; //$NON-NLS-1$
-    private static final String INSTALL = "Install"; //$NON-NLS-1$
-    private static final String INSTALL_SEARCH = "InstallSearch"; //$NON-NLS-1$
-    private static final String DELETE = "Delete"; //$NON-NLS-1$
-    private static final String UNLOCK = "Unlock"; //$NON-NLS-1$
-    private static final String CHOOSE_FONT = "ChooseFont"; //$NON-NLS-1$
-    private static final String UNINDEX = "Unindex"; //$NON-NLS-1$
-    private static final String RESET_FONT = "ResetFont"; //$NON-NLS-1$
+    private static final String INSTALLED_BOOKS_LABEL = "InstalledBooksLabel";
+    private static final String AVAILABLE_BOOKS_LABEL = "AvailableBooksLabel";
+    private static final String SELECTED_BOOK_LABEL = "SelectedBookLabel";
+    private static final String REFRESH = "Refresh";
+    private static final String INSTALL = "Install";
+    private static final String INSTALL_SEARCH = "InstallSearch";
+    private static final String DELETE = "Delete";
+    private static final String UNLOCK = "Unlock";
+    private static final String CHOOSE_FONT = "ChooseFont";
+    private static final String UNINDEX = "Unindex";
+    private static final String RESET_FONT = "ResetFont";
 
     /**
      * From which we get our list of installable books
@@ -570,7 +603,6 @@
      */
     private transient ActionFactory actions;
 
-    private NumberShaper shaper;
     /*
      * GUI Components
      */

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,34 +1,33 @@
 
-AvailableBooksLabel.MnemonicKey=A
-AvailableBooksLabel.Name=Available Books\:
-AvailableBooksLabel.ToolTip=Books that are available.
-ChooseFont.MnemonicKey=F
-ChooseFont.Name=Font...
-ChooseFont.ToolTip=Choose a Font for the Language or Book
-ResetFont.MnemonicKey=E
-ResetFont.Name=Reset Font
-ResetFont.ToolTip=Reset the custom font set for this Language or Book
-Delete.MnemonicKey=D
-Delete.Name=Delete Book
-Delete.ToolTip=Delete the selected book
-Install.MnemonicKey=I
-Install.Name=Install
-Install.ToolTip=Install the selected book
-InstallSearch.MnemonicKey=S
-InstallSearch.Name=Install with Search
-InstallSearch.ToolTip=Install the selected book along with a search index.
-InstalledBooksLabel.MnemonicKey=B
-InstalledBooksLabel.Name=Installed Books\:
-InstalledBooksLabel.ToolTip=Show books that are installed.
-Refresh.MnemonicKey=U
-Refresh.Name=Update Available Books
-Refresh.ToolTip=Download a current listing of books.
-SelectedBookLabel.MnemonicKey=S
-SelectedBookLabel.Name=Selected Book\:
-SelectedBookLabel.ToolTip=The selected book.
-Unindex.MnemonicKey=R
-Unindex.Name=Remove Search Index
-Unindex.ToolTip=Remove the search index of the selected book
-Unlock.MnemonicKey=L
-Unlock.Name=Unlock
-Unlock.ToolTip=Unlock the selected book
+AvailableBooksLabel.Name    = Available Books:
+AvailableBooksLabel.ToolTip = Books that are available.
+
+ChooseFont.Name    = Font...
+ChooseFont.ToolTip = Choose a Font for the Language or Book
+
+Delete.Name    = Delete Book
+Delete.ToolTip = Delete the selected book
+
+Install.Name                = Install
+Install.ToolTip             = Install the selected book
+
+InstallSearch.Name    = Install with Search
+InstallSearch.ToolTip = Install the selected book along with a search index.
+
+InstalledBooksLabel.Name    = Installed Books:
+InstalledBooksLabel.ToolTip = Show books that are installed.
+
+Refresh.Name    = Update Available Books
+Refresh.ToolTip = Download a current listing of books.
+
+ResetFont.Name    = Reset Font
+ResetFont.ToolTip = Reset the custom font set for this Language or Book
+
+SelectedBookLabel.Name    = Selected Book:
+SelectedBookLabel.ToolTip = The selected book.
+
+Unindex.Name    = Remove Search Index
+Unindex.ToolTip = Remove the search index of the selected book
+
+Unlock.Name    = Unlock
+Unlock.ToolTip = Unlock the selected book

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,32 +1,30 @@
-#Created by JInto - www.guh-software.de
-#Sun Mar 02 18:10:21 CET 2008
-AvailableBooksLabel.MnemonicKey=
-AvailableBooksLabel.Name=Verf\u00FCgbare B\u00FCcher\:
-AvailableBooksLabel.ToolTip=Verf\u00FCgbare B\u00FCcher
-ChooseFont.MnemonicKey=
-ChooseFont.Name=Schriftart...
-ChooseFont.ToolTip=Font ausw\u00E4hlen.
-Delete.MnemonicKey=
-Delete.Name=Buch l\u00F6schen
-Delete.ToolTip=Ausgew\u00E4hltes Buch l\u00F6schen
-Install.MnemonicKey=
-Install.Name=Installieren
-Install.ToolTip=Ausgew\u00E4hltes Buch installieren
-InstallSearch.MnemonicKey=
-InstallSearch.Name=Installieren mit Suchindex
-InstallSearch.ToolTip=Buch mit Suchindex herunterladen
-InstalledBooksLabel.MnemonicKey=
-InstalledBooksLabel.Name=Installierte B\u00FCcher\:
-InstalledBooksLabel.ToolTip=Installierte B\u00FCcher anzeigen
-Refresh.MnemonicKey=
-Refresh.Name=Liste aktualisieren
-Refresh.ToolTip=Aktuelle Liste verf\u00FCgbarer B\u00FCcher herunterladen
-SelectedBookLabel.MnemonicKey=
-SelectedBookLabel.Name=Ausgew\u00E4hltes Buch\:
-SelectedBookLabel.ToolTip=Ausgew\u00E4hltes Buch
-Unindex.MnemonicKey=
-Unindex.Name=Suchindex entfernen
-Unindex.ToolTip=Suchindex des ausgew\u00E4hlten Buchs entfernen
-Unlock.MnemonicKey=
-Unlock.Name=Entsperren
-Unlock.ToolTip=Das ausgew\u00E4hlte Buch entsperren
+
+AvailableBooksLabel.Name    = Verf\u00FCgbare B\u00FCcher:
+AvailableBooksLabel.ToolTip = Verf\u00FCgbare B\u00FCcher
+
+ChooseFont.Name    = Schriftart...
+ChooseFont.ToolTip = Font ausw\u00E4hlen.
+
+Delete.Name    = Buch l\u00F6schen
+Delete.ToolTip = Ausgew\u00E4hltes Buch l\u00F6schen
+
+Install.Name                = Installieren
+Install.ToolTip             = Ausgew\u00E4hltes Buch installieren
+
+InstallSearch.Name    = Installieren mit Suchindex
+InstallSearch.ToolTip = Buch mit Suchindex herunterladen
+
+InstalledBooksLabel.Name    = Installierte B\u00FCcher:
+InstalledBooksLabel.ToolTip = Installierte B\u00FCcher anzeigen
+
+Refresh.Name    = Liste aktualisieren
+Refresh.ToolTip = Aktuelle Liste verf\u00FCgbarer B\u00FCcher herunterladen
+
+SelectedBookLabel.Name    = Ausgew\u00E4hltes Buch:
+SelectedBookLabel.ToolTip = Ausgew\u00E4hltes Buch
+
+Unindex.Name    = Suchindex entfernen
+Unindex.ToolTip = Suchindex des ausgew\u00E4hlten Buchs entfernen
+
+Unlock.Name    = Entsperren
+Unlock.ToolTip = Das ausgew\u00E4hlte Buch entsperren

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,31 +1,30 @@
 
-AvailableBooksLabel.MnemonicKey=
-AvailableBooksLabel.Name=\u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0645\u0648\u062C\u0648\u062F
-AvailableBooksLabel.ToolTip=\u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0645\u0648\u062C\u0648\u062F
-ChooseFont.MnemonicKey=
-ChooseFont.Name=\u0641\u0648\u0646\u062A
-ChooseFont.ToolTip=\u0627\u0646\u062A\u062E\u0627\u0628 \u0641\u0648\u0646\u062A
-Delete.MnemonicKey=
-Delete.Name=\u062D\u0641\u0632 \u06A9\u062A\u0627\u0628
-Delete.ToolTip=\u062D\u0641\u0632 \u06A9\u062A\u0627\u0628
-Install.MnemonicKey=
-Install.Name=\u0646\u0636\u0628 \u06A9\u0631\u062F\u0646
-Install.ToolTip=\u0646\u0636\u0628 \u06A9\u0631\u062F\u0646 \u06A9\u062A\u0627\u0628
-InstallSearch.MnemonicKey=
-InstallSearch.Name=Install with Search
-InstallSearch.ToolTip=Download a book and search index.
-InstalledBooksLabel.MnemonicKey=
-InstalledBooksLabel.Name=\u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0642\u0627\u0628\u0644 \u062F\u0627\u0646\u0644\u0648\u062F \u06A9\u0631\u062F\u0646 
-InstalledBooksLabel.ToolTip=\u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0642\u0627\u0628\u0644 \u062F\u0627\u0646\u0644\u0648\u062F \u06A9\u0631\u062F\u0646
-Refresh.MnemonicKey=
-Refresh.Name=\u06A9\u062A\u0627\u0628\u0647\u0627 \u062A\u0627\u0632\u0647 \u0647\u0633\u062A\u0646\u062F\u061F
-Refresh.ToolTip=\u0644\u06CC\u0633\u062A \u062A\u0627\u0632\u0647 \u0627\u0632 \u06A9\u062A\u0627\u0628\u0647\u0627 \u0628\u06AF\u06CC\u0631\u06CC\u062F
-SelectedBookLabel.MnemonicKey=
-SelectedBookLabel.Name=\u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0627\u0646\u062A\u062E\u0627\u0628 \u0634\u062F\u0647
-SelectedBookLabel.ToolTip=\u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u06A9\u0647 \u0627\u0646\u062A\u062E\u0627\u0628 \u0634\u062F\u0647
-Unindex.MnemonicKey=
-Unindex.Name=\u062D\u0632\u0641 \u062C\u0627\u0627\u0646\u06AF\u0634\u062A\u06CC  
-Unindex.ToolTip=\u062D\u0632\u0641 \u062C\u0627\u0627\u0646\u06AF\u0634\u062A\u06CC
-Unlock.MnemonicKey=
-Unlock.Name=\u0642\u0641\u0644 \u06A9\u0648\u062F\u06CC \u0628\u0627\u0632 \u06A9\u0631\u062F\u0646
-Unlock.ToolTip=\u0642\u0641\u0644 \u06A9\u0648\u062F\u06CC \u0628\u0627\u0632 \u06A9\u0631\u062F\u0646
+AvailableBooksLabel.Name    = \u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0645\u0648\u062C\u0648\u062F
+AvailableBooksLabel.ToolTip = \u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0645\u0648\u062C\u0648\u062F
+
+ChooseFont.Name    = \u0641\u0648\u0646\u062A
+ChooseFont.ToolTip = \u0627\u0646\u062A\u062E\u0627\u0628 \u0641\u0648\u0646\u062A
+
+Delete.Name    = \u062D\u0641\u0632 \u06A9\u062A\u0627\u0628
+Delete.ToolTip = \u062D\u0641\u0632 \u06A9\u062A\u0627\u0628
+
+Install.Name                = \u0646\u0636\u0628 \u06A9\u0631\u062F\u0646
+Install.ToolTip             = \u0646\u0636\u0628 \u06A9\u0631\u062F\u0646 \u06A9\u062A\u0627\u0628
+
+InstallSearch.Name    = Install with Search
+InstallSearch.ToolTip = Download a book and search index.
+
+InstalledBooksLabel.Name    = \u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0642\u0627\u0628\u0644 \u062F\u0627\u0646\u0644\u0648\u062F \u06A9\u0631\u062F\u0646 
+InstalledBooksLabel.ToolTip = \u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0642\u0627\u0628\u0644 \u062F\u0627\u0646\u0644\u0648\u062F \u06A9\u0631\u062F\u0646
+
+Refresh.Name    = \u06A9\u062A\u0627\u0628\u0647\u0627 \u062A\u0627\u0632\u0647 \u0647\u0633\u062A\u0646\u062F\u061F
+Refresh.ToolTip = \u0644\u06CC\u0633\u062A \u062A\u0627\u0632\u0647 \u0627\u0632 \u06A9\u062A\u0627\u0628\u0647\u0627 \u0628\u06AF\u06CC\u0631\u06CC\u062F
+
+SelectedBookLabel.Name    = \u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u0627\u0646\u062A\u062E\u0627\u0628 \u0634\u062F\u0647
+SelectedBookLabel.ToolTip = \u06A9\u062A\u0627\u0628\u200C\u0647\u0627 \u06A9\u0647 \u0627\u0646\u062A\u062E\u0627\u0628 \u0634\u062F\u0647
+
+Unindex.Name    = \u062D\u0632\u0641 \u062C\u0627\u0627\u0646\u06AF\u0634\u062A\u06CC  
+Unindex.ToolTip = \u062D\u0632\u0641 \u062C\u0627\u0627\u0646\u06AF\u0634\u062A\u06CC
+
+Unlock.Name    = \u0642\u0641\u0644 \u06A9\u0648\u062F\u06CC \u0628\u0627\u0632 \u06A9\u0631\u062F\u0646
+Unlock.ToolTip = \u0642\u0641\u0644 \u06A9\u0648\u062F\u06CC \u0628\u0627\u0632 \u06A9\u0631\u062F\u0646

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,31 +1,30 @@
 
-AvailableBooksLabel.MnemonicKey=B
-AvailableBooksLabel.Name=Buku Tersedia\:
-AvailableBooksLabel.ToolTip=Buku buku yang tersedia.
-ChooseFont.MnemonicKey=F
-ChooseFont.Name=Font...
-ChooseFont.ToolTip=Pilih Font untuk bahasa atau buku
-Delete.MnemonicKey=H
-Delete.Name=Hapus Book
-Delete.ToolTip=Hapus buku
-Install.MnemonicKey=I
-Install.Name=Install
-Install.ToolTip=Install pilihan buku
-InstallSearch.MnemonicKey=S
-InstallSearch.Name=Install dengan index
-InstallSearch.ToolTip=Install pilihan buku dengan indeks.
-InstalledBooksLabel.MnemonicKey=B
-InstalledBooksLabel.Name=Installed Books\:
-InstalledBooksLabel.ToolTip=Tampilan buku yang terinstall.
-Refresh.MnemonicKey=U
-Refresh.Name=Update Daftar Buku
-Refresh.ToolTip=Mengunduh daftar buku tersedia.
-SelectedBookLabel.MnemonicKey=S
-SelectedBookLabel.Name=Selected Book\:
-SelectedBookLabel.ToolTip=Pilihan Buku.
-Unindex.MnemonicKey=R
-Unindex.Name=Hapus Indeks
-Unindex.ToolTip=Hapus Indeks Pencarian
-Unlock.MnemonicKey=L
-Unlock.Name=Unlock
-Unlock.ToolTip=Unlock pilihan buku
+AvailableBooksLabel.Name    = Buku Tersedia:
+AvailableBooksLabel.ToolTip = Buku buku yang tersedia.
+
+ChooseFont.Name    = Font...
+ChooseFont.ToolTip = Pilih Font untuk bahasa atau buku
+
+Delete.Name    = Hapus Book
+Delete.ToolTip = Hapus buku
+
+Install.Name                = Install
+Install.ToolTip             = Install pilihan buku
+
+InstallSearch.Name    = Install dengan index
+InstallSearch.ToolTip = Install pilihan buku dengan indeks.
+
+InstalledBooksLabel.Name    = Installed Books:
+InstalledBooksLabel.ToolTip = Tampilan buku yang terinstall.
+
+Refresh.Name    = Update Daftar Buku
+Refresh.ToolTip = Mengunduh daftar buku tersedia.
+
+SelectedBookLabel.Name    = Selected Book:
+SelectedBookLabel.ToolTip = Pilihan Buku.
+
+Unindex.Name    = Hapus Indeks
+Unindex.ToolTip = Hapus Indeks Pencarian
+
+Unlock.Name    = Unlock
+Unlock.ToolTip = Unlock pilihan buku

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_zh.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_zh.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,31 +1,30 @@
 
-AvailableBooksLabel.MnemonicKey=
-AvailableBooksLabel.Name=\u53EF\u7528\u66F8\u7C4D\:
-AvailableBooksLabel.ToolTip=\u986F\u793A\u53EF\u7528\u7684\u66F8\u7C4D.
-ChooseFont.MnemonicKey=
-ChooseFont.Name=\u5B57\u578B...
-ChooseFont.ToolTip=\u9078\u64C7\u3127\u500B\u8A9E\u8A00\u6216\u66F8\u7C4D\u53EF\u7528\u7684\u5B57\u578B
-Delete.MnemonicKey=
-Delete.Name=\u522A\u9664\u66F8\u7C4D
-Delete.ToolTip=\u522A\u9664\u5DF2\u9078\u7684\u66F8\u7C4D
-Install.MnemonicKey=
-Install.Name=\u5B89\u88DD
-Install.ToolTip=\u5B89\u88DD\u5DF2\u9078\u66F8\u7C4D
-InstallSearch.MnemonicKey=
-InstallSearch.Name=\u5B89\u88DD\u8207\u641C\u7D22
-InstallSearch.ToolTip=\u4E0B\u8F09\u66F8\u7C4D\u548C\u641C\u5C0B\u7D22\u5F15
-InstalledBooksLabel.MnemonicKey=
-InstalledBooksLabel.Name=\u5B89\u88DD\u66F8\u7C4D\:
-InstalledBooksLabel.ToolTip=\u986F\u793A\u5DF2\u5B89\u88DD\u7684\u66F8\u7C4D
-Refresh.MnemonicKey=
-Refresh.Name=\u66F4\u65B0\u53EF\u7528\u66F8\u7C4D
-Refresh.ToolTip=\u4E0B\u8F09\u76EE\u524D\u5217\u51FA\u7684\u66F8\u7C4D.
-SelectedBookLabel.MnemonicKey=
-SelectedBookLabel.Name=\u5DF2\u9078\u66F8\u7C4D\:
-SelectedBookLabel.ToolTip=\u5DF2\u9078\u66F8\u7C4D.
-Unindex.MnemonicKey=
-Unindex.Name=\u79FB\u9664\u641C\u5C0B\u7D22\u5F15
-Unindex.ToolTip=\u5F9E\u6240\u9078\u7684\u66F8\u7C4D\u88E1\u79FB\u9664\u641C\u5C0B\u7D22\u5F15
-Unlock.MnemonicKey=
-Unlock.Name=\u89E3\u9396
-Unlock.ToolTip=\u5C07\u6240\u9078\u66F8\u7C4D\u89E3\u9396
+AvailableBooksLabel.Name    = \u53EF\u7528\u66F8\u7C4D:
+AvailableBooksLabel.ToolTip = \u986F\u793A\u53EF\u7528\u7684\u66F8\u7C4D.
+
+ChooseFont.Name    = \u5B57\u578B...
+ChooseFont.ToolTip = \u9078\u64C7\u3127\u500B\u8A9E\u8A00\u6216\u66F8\u7C4D\u53EF\u7528\u7684\u5B57\u578B
+
+Delete.Name    = \u522A\u9664\u66F8\u7C4D
+Delete.ToolTip = \u522A\u9664\u5DF2\u9078\u7684\u66F8\u7C4D
+
+Install.Name                = \u5B89\u88DD
+Install.ToolTip             = \u5B89\u88DD\u5DF2\u9078\u66F8\u7C4D
+
+InstallSearch.Name    = \u5B89\u88DD\u8207\u641C\u7D22
+InstallSearch.ToolTip = \u4E0B\u8F09\u66F8\u7C4D\u548C\u641C\u5C0B\u7D22\u5F15
+
+InstalledBooksLabel.Name    = \u5B89\u88DD\u66F8\u7C4D:
+InstalledBooksLabel.ToolTip = \u986F\u793A\u5DF2\u5B89\u88DD\u7684\u66F8\u7C4D
+
+Refresh.Name    = \u66F4\u65B0\u53EF\u7528\u66F8\u7C4D
+Refresh.ToolTip = \u4E0B\u8F09\u76EE\u524D\u5217\u51FA\u7684\u66F8\u7C4D.
+
+SelectedBookLabel.Name    = \u5DF2\u9078\u66F8\u7C4D:
+SelectedBookLabel.ToolTip = \u5DF2\u9078\u66F8\u7C4D.
+
+Unindex.Name    = \u79FB\u9664\u641C\u5C0B\u7D22\u5F15
+Unindex.ToolTip = \u5F9E\u6240\u9078\u7684\u66F8\u7C4D\u88E1\u79FB\u9664\u641C\u5C0B\u7D22\u5F15
+
+Unlock.Name    = \u89E3\u9396
+Unlock.ToolTip = \u5C07\u6240\u9078\u66F8\u7C4D\u89E3\u9396

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_zh_CN.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitePane_zh_CN.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,31 +1,30 @@
 
-AvailableBooksLabel.MnemonicKey=
-AvailableBooksLabel.Name=\u53EF\u7528\u4E66\u7C4D\:
-AvailableBooksLabel.ToolTip=\u663E\u793A\u53EF\u7528\u7684\u4E66\u7C4D.
-ChooseFont.MnemonicKey=
-ChooseFont.Name=\u5B57\u578B...
-ChooseFont.ToolTip=\u9009\u62E9\u3127\u4E2A\u8BED\u8A00\u6216\u4E66\u7C4D\u53EF\u7528\u7684\u5B57\u578B
-Delete.MnemonicKey=
-Delete.Name=\u5220\u9664\u4E66\u7C4D
-Delete.ToolTip=\u5220\u9664\u5DF2\u9009\u7684\u4E66\u7C4D
-Install.MnemonicKey=
-Install.Name=\u5B89\u88C5
-Install.ToolTip=\u5B89\u88C5\u5DF2\u9009\u4E66\u7C4D
-InstallSearch.MnemonicKey=
-InstallSearch.Name=\u5B89\u88C5\u4E0E\u641C\u7D22
-InstallSearch.ToolTip=\u4E0B\u8F7D\u4E66\u7C4D\u548C\u641C\u5BFB\u7D22\u5F15
-InstalledBooksLabel.MnemonicKey=
-InstalledBooksLabel.Name=\u5B89\u88C5\u4E66\u7C4D\:
-InstalledBooksLabel.ToolTip=\u663E\u793A\u5DF2\u5B89\u88C5\u7684\u4E66\u7C4D
-Refresh.MnemonicKey=
-Refresh.Name=\u66F4\u65B0\u53EF\u7528\u4E66\u7C4D
-Refresh.ToolTip=\u4E0B\u8F7D\u76EE\u524D\u5217\u51FA\u7684\u4E66\u7C4D.
-SelectedBookLabel.MnemonicKey=
-SelectedBookLabel.Name=\u5DF2\u9009\u4E66\u7C4D
-SelectedBookLabel.ToolTip=\u5DF2\u9009\u4E66\u7C4D
-Unindex.MnemonicKey=
-Unindex.Name=\u79FB\u9664\u641C\u5BFB\u7D22\u5F15
-Unindex.ToolTip=\u4ECE\u6240\u9009\u7684\u4E66\u7C4D\u91CC\u79FB\u9664\u641C\u5BFB\u7D22\u5F15
-Unlock.MnemonicKey=
-Unlock.Name=\u89E3\u9501
-Unlock.ToolTip=\u5C06\u6240\u9009\u4E66\u7C4D\u89E3\u9501
+AvailableBooksLabel.Name    = \u53EF\u7528\u4E66\u7C4D:
+AvailableBooksLabel.ToolTip = \u663E\u793A\u53EF\u7528\u7684\u4E66\u7C4D.
+
+ChooseFont.Name    = \u5B57\u578B...
+ChooseFont.ToolTip = \u9009\u62E9\u3127\u4E2A\u8BED\u8A00\u6216\u4E66\u7C4D\u53EF\u7528\u7684\u5B57\u578B
+
+Delete.Name    = \u5220\u9664\u4E66\u7C4D
+Delete.ToolTip = \u5220\u9664\u5DF2\u9009\u7684\u4E66\u7C4D
+
+Install.Name                = \u5B89\u88C5
+Install.ToolTip             = \u5B89\u88C5\u5DF2\u9009\u4E66\u7C4D
+
+InstallSearch.Name    = \u5B89\u88C5\u4E0E\u641C\u7D22
+InstallSearch.ToolTip = \u4E0B\u8F7D\u4E66\u7C4D\u548C\u641C\u5BFB\u7D22\u5F15
+
+InstalledBooksLabel.Name    = \u5B89\u88C5\u4E66\u7C4D:
+InstalledBooksLabel.ToolTip = \u663E\u793A\u5DF2\u5B89\u88C5\u7684\u4E66\u7C4D
+
+Refresh.Name    = \u66F4\u65B0\u53EF\u7528\u4E66\u7C4D
+Refresh.ToolTip = \u4E0B\u8F7D\u76EE\u524D\u5217\u51FA\u7684\u4E66\u7C4D.
+
+SelectedBookLabel.Name    = \u5DF2\u9009\u4E66\u7C4D
+SelectedBookLabel.ToolTip = \u5DF2\u9009\u4E66\u7C4D
+
+Unindex.Name    = \u79FB\u9664\u641C\u5BFB\u7D22\u5F15
+Unindex.ToolTip = \u4ECE\u6240\u9009\u7684\u4E66\u7C4D\u91CC\u79FB\u9664\u641C\u5BFB\u7D22\u5F15
+
+Unlock.Name    = \u89E3\u9501
+Unlock.ToolTip = \u5C06\u6240\u9009\u4E66\u7C4D\u89E3\u9501

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -105,8 +105,8 @@
             tabMain.add(name, site);
         }
 
-        // Add the panel for the locally installed books
-        tabMain.add(Msg.LOCAL_BOOKS.toString(), new SitePane());
+        // TRANSLATOR: Label for the tab showing the installed books.
+        tabMain.add(Msg.gettext("Installed Books"), new SitePane());
     }
 
     /**
@@ -143,11 +143,12 @@
         dlgMain.getContentPane().setLayout(new BorderLayout());
         dlgMain.getContentPane().add(this, BorderLayout.CENTER);
         dlgMain.getContentPane().add(createButtons(), BorderLayout.SOUTH);
-        dlgMain.setTitle(Msg.AVAILABLE_BOOKS.toString());
+        // TRANSLATOR: Title to the window that allows the management of books. 
+        dlgMain.setTitle(Msg.gettext("Available Books"));
         dlgMain.setResizable(true);
         // dlgMain.setModal(true);
         // Set the name for Persistent Layout
-        dlgMain.setName("Sites"); //$NON-NLS-1$
+        dlgMain.setName("Sites");
         dlgMain.addWindowListener(new WindowAdapter() {
             /* (non-Javadoc)
              * @see java.awt.event.WindowListener#windowClosed(java.awt.event.WindowEvent)
@@ -242,8 +243,8 @@
         }
     }
 
-    private static final String CLOSE = "SitesClose"; //$NON-NLS-1$
-    private static final String EDIT_SITE = "ManageSites"; //$NON-NLS-1$
+    private static final String CLOSE = "SitesClose";
+    private static final String EDIT_SITE = "ManageSites";
 
     /**
      * The known installers fetched from InstallManager

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,4 +1,4 @@
-SitesClose.Name=Alias.OK
 
-ManageSites.Name=Edit Sites ...
-ManageSites.MnemonicKey=S
+ManageSites.Name = Edit Sites ...
+
+SitesClose.Name = Alias.OK

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,4 +1,4 @@
 
-ManageSites.MnemonicKey=S
-ManageSites.Name=Download-Seiten bearbeiten ...
-SitesClose.Name=Alias.OK
+ManageSites.Name = Download-Seiten bearbeiten ...
+
+SitesClose.Name = Alias.OK

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,4 +1,4 @@
 
-ManageSites.MnemonicKey=
-ManageSites.Name=\u0633\u0627\u06CC\u062A\u200C\u0647\u0627 \u062F\u0627\u0646\u0644\u0648\u062F
-SitesClose.Name=Alias.OK
+ManageSites.Name = \u0633\u0627\u06CC\u062A\u200C\u0647\u0627 \u062F\u0627\u0646\u0644\u0648\u062F
+
+SitesClose.Name = Alias.OK

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SitesPane_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,4 +1,4 @@
-SitesClose.Name=Alias.OK
 
-ManageSites.Name=Ubah Situs ...
-ManageSites.MnemonicKey=S
+ManageSites.Name = Ubah Situs ...
+
+SitesClose.Name = Alias.OK

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SwordSiteEditor.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SwordSiteEditor.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/SwordSiteEditor.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -44,19 +44,29 @@
 public class SwordSiteEditor extends JPanel implements SiteEditor {
     public void initialize() {
         host = new JTextField();
-        JLabel hostLabel = getLabelForText(Msg.HOST, host);
+        // TRANSLATOR: Label for the host field.
+        // This is something like www.crosswire.org.
+        JLabel hostLabel = getLabelForText(Msg.gettext("Host:"), host);
 
         catalogDir = new JTextField();
-        JLabel catalogDirLabel = getLabelForText(Msg.CATALOG_DIR, catalogDir);
+        // TRANSLATOR: Label for the catalog directory field.
+        // This is the folder that contains mods.d.tar.gz.
+        JLabel catalogDirLabel = getLabelForText(Msg.gettext("Catalog Directory:"), catalogDir);
 
         packageDir = new JTextField();
-        JLabel packageDirLabel = getLabelForText(Msg.PACKAGE_DIR, packageDir);
+        // TRANSLATOR: Label for the zip directory field.
+        // SWORD modules are cached as zip files in this directory.
+        JLabel packageDirLabel = getLabelForText(Msg.gettext("Zip Directory:"), packageDir);
 
         proxyHost = new JTextField();
-        JLabel proxyHostLabel = getLabelForText(Msg.PROXY_HOST, proxyHost);
+        // TRANSLATOR: Label for the proxy host field.
+        // Sometimes users have their internet access proxied. This field allows the user to enter the proxy host.
+        JLabel proxyHostLabel = getLabelForText(Msg.gettext("Proxy Host:"), proxyHost);
 
         proxyPort = new JTextField();
-        JLabel proxyPortLabel = getLabelForText(Msg.PROXY_PORT, proxyPort);
+        // TRANSLATOR: Label for the proxy port field.
+        // Sometimes users have their internet access proxied. This field allows the user to enter the proxy port, if not 80.
+        JLabel proxyPortLabel = getLabelForText(Msg.gettext("Proxy Port:"), proxyPort);
 
         setLayout(new GridBagLayout());
         add(hostLabel,       new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.LINE_END, GridBagConstraints.NONE, new Insets(2, 10, 2, 2), 0, 0));
@@ -157,9 +167,9 @@
         }
     }
 
-    private JLabel getLabelForText(Msg title, JTextField field) {
+    private JLabel getLabelForText(String title, JTextField field) {
         JLabel label = new JLabel();
-        label.setText(title.toString());
+        label.setText(title);
         label.setLabelFor(field);
         return label;
     }

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/TextPaneBookMetaDataDisplay.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/TextPaneBookMetaDataDisplay.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/install/TextPaneBookMetaDataDisplay.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -66,7 +66,7 @@
      */
     public void setBook(Book book) {
         if (book == null) {
-            txtView.setText(""); //$NON-NLS-1$
+            txtView.setText("");
             return;
         }
 

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/AboutPane.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/AboutPane.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/AboutPane.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -71,7 +71,10 @@
      * Build the GUI components
      */
     private void init() {
-        Icon icon = GuiUtil.getIcon(Msg.SPLASH_IMAGE.toString());
+        // TRANSLATOR: This image is of an English Bible. It can be replaced with a localized one.
+        // It should be named splash_ll.png where ll is the 2 letter language code and put in the
+        // images directory. Then point this to it.
+        Icon icon = GuiUtil.getIcon(Msg.gettext("/images/splash.png"));
 
         JLabel lblPicture = new JLabel();
         lblPicture.setIcon(icon);
@@ -111,7 +114,7 @@
         tabMain.add(pnlSplash, appName);
 
         License license = new License(appName);
-        //        Font fixedFont = new Font("Monospaced", 0, 18); //$NON-NLS-1$
+        //        Font fixedFont = new Font("Monospaced", 0, 18);
         JTextPane warranty = new AntiAliasedTextPane();
         // warranty.setFont(fixedFont);
         warranty.setEditable(false);
@@ -123,7 +126,8 @@
         JPanel warrantyPnl = new JPanel(new BorderLayout());
         warrantyPnl.add(warrantyScr, BorderLayout.CENTER);
         warrantyPnl.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
-        tabMain.add(warrantyPnl, Msg.WARRANTY_TAB_TITLE.toString());
+        // TRANSLATOR: The label for the tab that shows BibleDesktop's GPL Non-Warranty
+        tabMain.add(warrantyPnl, Msg.gettext("Warranty"));
 
         JTextPane details = new AntiAliasedTextPane();
         // details.setFont(fixedFont);
@@ -136,7 +140,8 @@
         JPanel detailsPnl = new JPanel(new BorderLayout());
         detailsPnl.add(detailScr, BorderLayout.CENTER);
         detailsPnl.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
-        tabMain.add(detailsPnl, Msg.DETAILS_TAB_TITLE.toString());
+        // TRANSLATOR: The label for the tab that shows BibleDesktop's GPL License
+        tabMain.add(detailsPnl, Msg.gettext("License"));
 
         // Put in tabs if advanced
         if (advanced) {
@@ -152,7 +157,9 @@
             pnlProps.setLayout(new BorderLayout());
             pnlProps.add(scrProps, BorderLayout.CENTER);
             pnlProps.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
-            tabMain.add(pnlProps, Msg.SYSTEM_PROPS_TAB_TITLE.toString());
+            // TRANSLATOR: The label for the tab that shows Java's System Properties.
+            // This is an advanced option not intended for end users.
+            tabMain.add(pnlProps, Msg.gettext("System Properties"));
         }
         GuiUtil.applyDefaultOrientation(pnlMain);
     }
@@ -210,9 +217,9 @@
         AboutPane.advanced = advanced;
     }
 
-    private static final String SPLASH_FONT = "SanSerif"; //$NON-NLS-1$
+    private static final String SPLASH_FONT = "SanSerif";
 
-    private static final String ABOUT_OK = "AboutOK"; //$NON-NLS-1$
+    private static final String ABOUT_OK = "AboutOK";
 
     private static boolean advanced;
     private JDialog dlgMain;

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -125,7 +125,7 @@
     private static final CWProject PROJECT = CWProject.instance();
 
     static {
-        CWProject.setHome("jsword.home", ".jsword", "JSword"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+        CWProject.setHome("jsword.home", ".jsword", "JSword");
     }
 
     /**
@@ -136,7 +136,7 @@
      */
     public static void main(String[] args) {
         try {
-            ThreadGroup group = new CatchingThreadGroup("BibleDesktopUIGroup"); //$NON-NLS-1$
+            ThreadGroup group = new CatchingThreadGroup("BibleDesktopUIGroup");
             Thread t = new DesktopThread(group);
             t.start();
         } catch (Exception ex) {
@@ -152,7 +152,7 @@
      */
     public Desktop() {
         // Set the name that is used for Layout Persistence
-        setName("Desktop"); //$NON-NLS-1$
+        setName("Desktop");
 
         // The first thing that has to be done is to set the locale.
         Translations.instance().setLocale();
@@ -172,22 +172,25 @@
 
         // Splash screen
         URI predictURI = PROJECT.getWritableURI(SPLASH_PROPS, FileUtil.EXTENSION_PROPERTIES);
-        Progress startJob = JobManager.createJob(Msg.STARTUP_TITLE.toString(), predictURI, true);
+        // TRANSLATOR: Progress label shown on BibleDesktop startup.
+        Progress startJob = JobManager.createJob(Msg.gettext("Startup"), predictURI, true);
         // startJob.setProgress(Msg.STARTUP_CONFIG.toString());
 
         // Create the Desktop Actions
         actions = new DesktopActions(this);
 
-        // Create the GUI components
-        startJob.setSectionName(Msg.STARTUP_GENERATE.toString());
+        // TRANSLATOR: Progress label shown while BibleDesktop
+        // creates the GUI components
+        startJob.setSectionName(Msg.gettext("Generating Components"));
         createComponents();
 
         // If necessary, make changes to the UI to help with debugging
         debug();
 
-        // Create the GUI layout with panes and panels,
-        // and create a few other GUI things
-        startJob.setSectionName(Msg.STARTUP_GENERAL_CONFIG.toString());
+        // TRANSLATOR: Progress label shown while BibleDesktop
+        // creates the GUI layout with panes and panels,
+        // and creates a few other GUI things
+        startJob.setSectionName(Msg.gettext("General configuration"));
         createLayout();
 
         // ReflectionBus.plug(this);
@@ -540,7 +543,7 @@
         Container contentPane = getContentPane();
         if (contentPane instanceof JComponent) {
             ((JComponent) contentPane).setPreferredSize(contentPane.getSize());
-            //log.warn("The size of the contentpane is: " + contentPane.getSize()); //$NON-NLS-1$
+            //log.warn("The size of the contentpane is: " + contentPane.getSize());
         }
     }
 
@@ -684,7 +687,8 @@
             } else if (protocol.equals(DICTIONARY_PROTOCOL)) {
                 jump(Defaults.getDictionary(), data);
             } else {
-                Reporter.informUser(this, new MalformedURLException(Msg.UNKNOWN_PROTOCOL.toString(protocol)));
+                // TRANSLATOR: Uncommon error condition: JSword has provided a link that is not handled.
+                Reporter.informUser(this, new MalformedURLException(Msg.gettext("Unknown protocol {0}", protocol)));
             }
         } catch (NoSuchKeyException ex) {
             Reporter.informUser(this, ex);
@@ -772,7 +776,8 @@
         // Get the list of books for each book type.
         fillChoiceFactory();
 
-        config = new Config(Msg.CONFIG_TITLE.toString());
+        // TRANSLATOR: The window title of BibleDesktop's preference/option dialog.
+        config = new Config(Msg.gettext("Desktop Options"));
         try {
             Document xmlconfig = XMLUtil.getDocument(CONFIG_KEY);
 
@@ -796,7 +801,7 @@
                 public void propertyChange(PropertyChangeEvent evt) {
                     // When the font changes update all the visible locations
                     // using it.
-                    if (evt.getPropertyName().equals("BibleDisplay.ConfigurableFont")) //$NON-NLS-1$
+                    if (evt.getPropertyName().equals("BibleDisplay.ConfigurableFont"))
                     {
                         BibleViewPane view = (BibleViewPane) getViews().getSelected();
                         SplitBookDataDisplay da = view.getPassagePane();
@@ -805,7 +810,7 @@
                         reference.refresh();
                     }
 
-                    if (evt.getPropertyName().equals("BibleDisplay.MaxPickers")) //$NON-NLS-1$
+                    if (evt.getPropertyName().equals("BibleDisplay.MaxPickers"))
                     {
                         BibleViewPane view = (BibleViewPane) getViews().getSelected();
                         DisplaySelectPane selector = view.getSelectPane();
@@ -831,7 +836,12 @@
         // hand getting to the installation dialog.
         List bibles = Books.installed().getBooks(BookFilters.getBibles());
         if (bibles.isEmpty()) {
-            int reply = CWOptionPane.showConfirmDialog(this, Msg.NO_BIBLES_MESSAGE, Msg.NO_BIBLES_TITLE.toString(), JOptionPane.OK_CANCEL_OPTION,
+            // TRANSLATOR: Title of dialog asking the user to install at least one Bible.
+            String title = Msg.gettext("Install Bibles?");
+            // TRANSLATOR: HTML formatted message, telling the user that they have no Bibles installed,
+            // giving them the option to do it now and instructions on how to do it later.
+            String msg = Msg.gettext("<html>You have no Bibles installed. Do you wish to install some now?<br>(This is also available from <b>Books</b> in the <b>Tools</b> menu)");
+            int reply = CWOptionPane.showConfirmDialog(this, msg, title, JOptionPane.OK_CANCEL_OPTION,
                     JOptionPane.QUESTION_MESSAGE);
             if (reply == JOptionPane.OK_OPTION) {
                 actions.doBooks();
@@ -1010,7 +1020,7 @@
      */
     private static final class DesktopThread extends Thread {
         DesktopThread(ThreadGroup group) {
-            super(group, "BibleDesktopUIThread"); //$NON-NLS-1$
+            super(group, "BibleDesktopUIThread");
         }
 
         /* (non-Javadoc)
@@ -1023,9 +1033,9 @@
 
             // These Mac properties give the application a Mac behavior
             if (OSType.MAC.equals(OSType.getOSType())) {
-                System.setProperty("apple.laf.useScreenMenuBar", "true"); //$NON-NLS-1$ //$NON-NLS-2$
-                System.setProperty("com.apple.mrj.application.apple.menu.about.name", Msg.getApplicationTitle()); //$NON-NLS-1$
-                System.setProperty("com.apple.mrj.application.live-resize", "true"); //$NON-NLS-1$ //$NON-NLS-2$
+                System.setProperty("apple.laf.useScreenMenuBar", "true");
+                System.setProperty("com.apple.mrj.application.apple.menu.about.name", Msg.getApplicationTitle());
+                System.setProperty("com.apple.mrj.application.live-resize", "true");
             }
 
             // new BusStart();
@@ -1082,25 +1092,25 @@
     private boolean hasRefBooks;
 
     // Strings for the names of property files.
-    private static final String SPLASH_PROPS = "splash"; //$NON-NLS-1$
+    private static final String SPLASH_PROPS = "splash";
 
     // Strings for URL protocols/URI schemes
-    public static final String BIBLE_PROTOCOL = "bible"; //$NON-NLS-1$
-    public static final String DICTIONARY_PROTOCOL = "dict"; //$NON-NLS-1$
-    public static final String GREEK_DEF_PROTOCOL = "gdef"; //$NON-NLS-1$
-    public static final String HEBREW_DEF_PROTOCOL = "hdef"; //$NON-NLS-1$
-    public static final String GREEK_MORPH_PROTOCOL = "gmorph"; //$NON-NLS-1$
-    public static final String HEBREW_MORPH_PROTOCOL = "hmorph"; //$NON-NLS-1$
-    public static final String COMMENTARY_PROTOCOL = "comment"; //$NON-NLS-1$
+    public static final String BIBLE_PROTOCOL = "bible";
+    public static final String DICTIONARY_PROTOCOL = "dict";
+    public static final String GREEK_DEF_PROTOCOL = "gdef";
+    public static final String HEBREW_DEF_PROTOCOL = "hdef";
+    public static final String GREEK_MORPH_PROTOCOL = "gmorph";
+    public static final String HEBREW_MORPH_PROTOCOL = "hmorph";
+    public static final String COMMENTARY_PROTOCOL = "comment";
 
     // Empty String
-    private static final String EMPTY_STRING = ""; //$NON-NLS-1$
+    private static final String EMPTY_STRING = "";
 
     // Various other strings used as keys
-    private static final String CONFIG_KEY = "config"; //$NON-NLS-1$
-    private static final String DESKTOP_KEY = "desktop"; //$NON-NLS-1$
-    private static final String CONV_KEY = "converters"; //$NON-NLS-1$
-    private static final String CSWING_KEY = "cswing-styles"; //$NON-NLS-1$
+    private static final String CONFIG_KEY = "config";
+    private static final String DESKTOP_KEY = "desktop";
+    private static final String CONV_KEY = "converters";
+    private static final String CSWING_KEY = "cswing-styles";
 
     /**
      * The configuration engine
@@ -1142,7 +1152,7 @@
     /**
      * The application icon
      */
-    private static final ImageIcon ICON_APP = GuiUtil.getIcon("images/BibleDesktop16.png"); //$NON-NLS-1$
+    private static final ImageIcon ICON_APP = GuiUtil.getIcon("images/BibleDesktop16.png");
 
     private transient ViewManager views;
     private JPanel corePanel;

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,150 +1,155 @@
 
-About.MnemonicKey=A
-About.Name=About ...
-About.ToolTip=Information about Bible Desktop
-BCVNum.Name=Show Book, Chapter and Verse Numbers
-BCVNum.ToolTip=Show Book, Chapter and Verse numbers
-Back.Name=Alias.Back
-Back.ToolTip=Go back to previous passage.
-Books.Name=Books ...
-Books.ToolTip=Display/Install Books
-CVNum.Name=Show Chapter and Verse Numbers
-CVNum.ToolTip=Show Chapter and Verse numbers
-ClearView.MnemonicKey=L
-ClearView.Name=Clear the current view
-ClearView.ToolTip=Clear the current view's passages
-CloseAllViews.MnemonicKey=A
-CloseAllViews.Name=Close All Views
-CloseAllViews.ToolTip=Close All Passages
-CloseOtherViews.MnemonicKey=O
-CloseOtherViews.Name=Close Other Views
-CloseOtherViews.ToolTip=Close all the other passages.
-CloseView.AcceleratorKey=0x73
-CloseView.AcceleratorKey.Modifiers=ctrl
-CloseView.MnemonicKey=C
-CloseView.Name=Close the current view
-CloseView.ToolTip=Close the current view
-CompareToggle.Name=Show Differences
-CompareToggle.ToolTip=Toggle display of differences between different Bibles
-Contents.AcceleratorKey=0x70
-Contents.MnemonicKey=C
-Contents.Name=Contents ...
-Contents.ToolTip=Help file contents.
-Copy.Name=Alias.Copy
-Copy.ToolTip=Copy the selection.
-Cut.Name=Alias.Cut
-Cut.ToolTip=Cut the selection.
-Edit.Name=Alias.Edit
-Edit.ToolTip=Edit
-Exit.AcceleratorKey=0x73
-Exit.AcceleratorKey.Modifiers=alt
-Exit.MnemonicKey=X
-Exit.Name=Exit
-Exit.ToolTip=Exit the Desktop application.
-File.MnemonicKey=F
-File.Name=File
-File.ToolTip=File
-Forward.Name=Alias.Forward
-Forward.ToolTip=Go forward to next passage.
-Go.MnemonicKey=G
-Go.Name=Alias.Go
-Go.ToolTip=Go
-Headings.Name=Show Headings
-Headings.ToolTip=Show Headings
-Help.MnemonicKey=H
-Help.Name=Alias.Help
-Help.ToolTip=Help
-JournalToggle.AcceleratorKey=J
-JournalToggle.AcceleratorKey.Modifiers=ctrl
-JournalToggle.MnemonicKey=J
-JournalToggle.Name=Show the Web Journal
-JournalToggle.ToolTip=Toggle display of the Web Journal
-Morph.Name=Show Word Morphology
-Morph.ToolTip=Show Word Morphology as Links
-NewTab.AcceleratorKey=N
-NewTab.AcceleratorKey.Modifiers=ctrl
-NewTab.MnemonicKey=N
-NewTab.Name=New Bible View
-NewTab.ToolTip=Open a new Bible View
-NoVNum.Name=Hide Verse Numbers
-NoVNum.ToolTip=Hide Verse numbers
-Notes.Name=Show Study Notes
-Notes.ToolTip=Show Study Notes
-Open.AcceleratorKey=O
-Open.AcceleratorKey.Modifiers=ctrl
-Open.MnemonicKey=O
-Open.Name=Open ...
-Open.ToolTip=Open a saved passage.
-Options.MnemonicKey=O
-Options.Name=Options ...
-Options.ToolTip=Alter system settings.
-Paste.AcceleratorKey=V
-Paste.AcceleratorKey.Modifiers=ctrl
-Paste.MnemonicKey=P
-Paste.Name=Paste
-Paste.ToolTip=Paste the selection.
-Print.AcceleratorKey=P
-Print.AcceleratorKey.Modifiers=ctrl
-Print.MnemonicKey=P
-Print.Name=Print
-Print.ToolTip=Print the current passage.
-Save.AcceleratorKey=S
-Save.AcceleratorKey.Modifiers=ctrl
-Save.MnemonicKey=S
-Save.Name=Save ...
-Save.ToolTip=Save the current passage.
-SaveAll.AcceleratorKey=S
-SaveAll.AcceleratorKey.Modifiers=ctrl,shift
-SaveAll.MnemonicKey=S
-SaveAll.Name=Save All
-SaveAll.ToolTip=Save All Passages
-SaveAs.AcceleratorKey=A
-SaveAs.AcceleratorKey.Modifiers=ctrl,shift
-SaveAs.MnemonicKey=A
-SaveAs.Name=Save As ...
-SaveAs.ToolTip=Save the current passage under a different name.
-Scripting.MnemonicKey=S
-Scripting.Name=Scripting ...
-Scripting.ToolTip=Run some commands in a scripting language.
-SidebarToggle.AcceleratorKey=B
-SidebarToggle.AcceleratorKey.Modifiers=ctrl
-SidebarToggle.MnemonicKey=B
-SidebarToggle.Name=Show the Passage Sidebar
-SidebarToggle.ToolTip=Toggle display of the Passage Sidebar
-StatusToggle.MnemonicKey=A
-StatusToggle.Name=Show the Status Area
-StatusToggle.ToolTip=Toggle display of the status area
-Strongs.Name=Show Strong's Links
-Strongs.ToolTip=Show Strong's Numbers as Links
-TabMode.MnemonicKey=T
-TabMode.Name=Tabbed Mode
-TabMode.ToolTip=View passages using tabs
-TinyVNum.Name=Use Small Verse Numbers
-TinyVNum.ToolTip=Use small verse numbers
-ToolTipToggle.AcceleratorKey=T
-ToolTipToggle.AcceleratorKey.Modifiers=ctrl
-ToolTipToggle.MnemonicKey=T
-ToolTipToggle.Name=Show Tool Tips
-ToolTipToggle.ToolTip=Toggle display of tool tips
-Tools.MnemonicKey=T
-Tools.Name=Tools
-Tools.ToolTip=Tools
-VLine.Name=Start Verses on Separate Lines
-VLine.ToolTip=Start each verses on a new line
-VNum.Name=Show Verse Numbers
-VNum.ToolTip=Show Verse numbers
-Verse.Name=Verse Numbers
-Verse.ToolTip=Set the style for verse numbers
-View.MnemonicKey=V
-View.Name=View
-View.ToolTip=View
-ViewSource.AcceleratorKey=U
-ViewSource.AcceleratorKey.Modifiers=ctrl
-ViewSource.MnemonicKey=U
-ViewSource.Name=View Source
-ViewSource.ToolTip=View the HTML and OSIS source to the current window
-WindowMode.MnemonicKey=M
-WindowMode.Name=Sub-Window Mode
-WindowMode.ToolTip=View passages using sub-windows
-XRef.Name=Use Cross Reference Linkings
-XRef.ToolTip=Use cross reference links
+About.Name    = &About ...
+About.ToolTip = Information about Bible Desktop
+
+BCVNum.Name    = Show Book, Chapter and Verse Numbers
+BCVNum.ToolTip = Show Book, Chapter and Verse numbers
+
+Back.Name    = Alias.Back
+Back.ToolTip = Go back to previous passage.
+
+Books.Name    = Books ...
+Books.ToolTip = Display/Install Books
+
+CVNum.Name    = Show Chapter and Verse Numbers
+CVNum.ToolTip = Show Chapter and Verse numbers
+
+ClearView.Name    = C&lear the current view
+ClearView.ToolTip = Clear the current view's passages
+
+CloseAllViews.Name    = Close &All Views
+CloseAllViews.ToolTip = Close All Passages
+
+CloseOtherViews.Name    = Close &Other Views
+CloseOtherViews.ToolTip = Close all the other passages.
+
+CloseView.AcceleratorKey = 0x73,ctrl
+CloseView.Name           = &Close the current view
+CloseView.ToolTip        = Close the current view
+
+CompareToggle.Name    = Show Differences
+CompareToggle.ToolTip = Toggle display of differences between different Bibles
+
+Contents.AcceleratorKey = 0x70
+Contents.Name           = &Contents ...
+Contents.ToolTip        = Help file contents.
+
+Copy.Name    = Alias.Copy
+Copy.ToolTip = Copy the selection.
+
+Cut.Name    = Alias.Cut
+Cut.ToolTip = Cut the selection.
+
+Edit.Name    = Alias.Edit
+Edit.ToolTip = Edit
+
+Exit.AcceleratorKey = 0x73,alt
+Exit.Name           = E&xit
+Exit.ToolTip        = Exit the Desktop application.
+
+File.Name    = &File
+File.ToolTip = File
+
+Forward.Name    = Alias.Forward
+Forward.ToolTip = Go forward to next passage.
+
+Go.Name    = Alias.Go
+Go.ToolTip = Go
+
+Headings.Name    = Show Headings
+Headings.ToolTip = Show Headings
+
+Help.Name    = Alias.Help
+Help.ToolTip = Help
+
+JournalToggle.AcceleratorKey = J,ctrl
+JournalToggle.Name           = Show the Web &Journal
+JournalToggle.ToolTip        = Toggle display of the Web Journal
+
+Morph.Name    = Show Word Morphology
+Morph.ToolTip = Show Word Morphology as Links
+
+NewTab.AcceleratorKey = N,ctrl
+NewTab.Name           = &New Bible View
+NewTab.ToolTip        = Open a new Bible View
+
+NoVNum.Name    = Hide Verse Numbers
+NoVNum.ToolTip = Hide Verse numbers
+
+Notes.Name    = Show Study Notes
+Notes.ToolTip = Show Study Notes
+
+Open.AcceleratorKey = O,ctrl
+Open.Name           = &Open ...
+Open.ToolTip        = Open a saved passage.
+
+Options.Name    = &Options ...
+Options.ToolTip = Alter system settings.
+
+Paste.AcceleratorKey = V,ctrl
+Paste.Name           = &Paste
+Paste.ToolTip        = Paste the selection.
+
+Print.AcceleratorKey = P,ctrl
+Print.Name           = &Print
+Print.ToolTip        = Print the current passage.
+
+Save.AcceleratorKey    = S,ctrl
+Save.Name              = &Save ...
+Save.ToolTip           = Save the current passage.
+
+SaveAll.AcceleratorKey = S,ctrl,shift
+SaveAll.Name           = &Save All
+SaveAll.ToolTip        = Save All Passages
+
+SaveAs.AcceleratorKey = A,ctrl,shift
+SaveAs.Name           = Save &As ...
+SaveAs.ToolTip        = Save the current passage under a different name.
+
+Scripting.Name    = Scripting ...
+Scripting.ToolTip = Run some commands in a scripting language.
+
+SidebarToggle.AcceleratorKey = B,ctrl
+SidebarToggle.Name           = Show the Passage Side&bar
+SidebarToggle.ToolTip        = Toggle display of the Passage Sidebar
+
+StatusToggle.Name    = Show the St&atus Area
+StatusToggle.ToolTip = Toggle display of the status area
+
+Strongs.Name    = Show Strong's Links
+Strongs.ToolTip = Show Strong's Numbers as Links
+
+TabMode.Name    = &Tabbed Mode
+TabMode.ToolTip = View passages using tabs
+
+TinyVNum.Name    = Use Small Verse Numbers
+TinyVNum.ToolTip = Use small verse numbers
+
+ToolTipToggle.AcceleratorKey = T,ctrl
+ToolTipToggle.Name           = Show Tool Tips
+ToolTipToggle.ToolTip        = Toggle display of tool tips
+
+Tools.Name    = &Tools
+Tools.ToolTip = Tools
+
+VLine.Name    = Start Verses on Separate Lines
+VLine.ToolTip = Start each verses on a new line
+
+VNum.Name    = Show Verse Numbers
+VNum.ToolTip = Show Verse numbers
+
+Verse.Name    = Verse Numbers
+Verse.ToolTip = Set the style for verse numbers
+
+View.Name                 = &View
+View.ToolTip              = View
+
+ViewSource.AcceleratorKey = U,ctrl
+ViewSource.Name           = View So&urce
+ViewSource.ToolTip        = View the HTML and OSIS source to the current window
+
+WindowMode.Name    = Sub-Window &Mode
+WindowMode.ToolTip = View passages using sub-windows
+
+XRef.Name    = Use Cross Reference Linkings
+XRef.ToolTip = Use cross reference links

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/DesktopActions.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/DesktopActions.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/DesktopActions.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -145,7 +145,9 @@
         try {
             BibleViewPane view = (BibleViewPane) getDesktop().getViews().getSelected();
             if (!view.maySave()) {
-                Reporter.informUser(getDesktop(), Msg.NO_PASSAGE);
+                // TRANSLATOR: The user is trying to save the passage in the visible
+                // Bible View pane, but it is empty.
+                Reporter.informUser(getDesktop(), Msg.gettext("No Passage to Save"));
                 return;
             }
 
@@ -162,7 +164,9 @@
         try {
             BibleViewPane view = (BibleViewPane) getDesktop().getViews().getSelected();
             if (!view.maySave()) {
-                Reporter.informUser(getDesktop(), Msg.NO_PASSAGE);
+                // TRANSLATOR: The user is trying to save the passage in the visible
+                // Bible View pane, but it is empty.
+                Reporter.informUser(getDesktop(), Msg.gettext("No Passage to Save"));
                 return;
             }
 
@@ -188,7 +192,9 @@
         }
 
         if (!ok) {
-            Reporter.informUser(getDesktop(), Msg.NO_PASSAGE);
+            // TRANSLATOR: The user is trying to save the passage in all the
+            // Bible View panes, but they are all empty.
+            Reporter.informUser(getDesktop(), Msg.gettext("No Passage to Save"));
             return;
         }
 
@@ -357,7 +363,9 @@
         Key key = bdd.getKey();
 
         if (key == null) {
-            Reporter.informUser(getDesktop(), Msg.SOURCE_MISSING);
+            // TRANSLATOR: The user is trying to view the source of the passage in the visible
+            // Bible View pane, but it is empty.
+            Reporter.informUser(getDesktop(), Msg.gettext("No current passage to view"));
             return;
         }
 
@@ -371,7 +379,7 @@
     public void doBooks() {
         int webAccess = InternetWarning.GRANTED;
         if (WebWarning.instance().isShown()) {
-            webAccess = InternetWarning.showDialog(desktop, "?"); //$NON-NLS-1$
+            webAccess = InternetWarning.showDialog(desktop, "?");
         }
 
         if (webAccess == InternetWarning.GRANTED) {
@@ -383,7 +391,7 @@
      * Opens the Options window
      */
     public void doOptions() {
-        URI configUri = CWProject.instance().getWritableURI("desktop", FileUtil.EXTENSION_PROPERTIES); //$NON-NLS-1$
+        URI configUri = CWProject.instance().getWritableURI("desktop", FileUtil.EXTENSION_PROPERTIES);
         ConfigEditorFactory.showDialog(desktop.getConfig(), desktop, configUri);
     }
 
@@ -391,7 +399,8 @@
      * For opening a help file.
      */
     public void doContents() {
-        CWOptionPane.showMessageDialog(getDesktop(), Msg.NO_HELP);
+        // TRANSLATOR: Someday we'll have real help but for now this points them to the Bible Desktop web site.
+        CWOptionPane.showMessageDialog(getDesktop(), Msg.gettext("Currently on-line help is only available via the Bible Desktop's website:\nhttp://www.crosswire.org/bibledesktop"));
     }
 
     /**
@@ -447,11 +456,11 @@
     public boolean macOSXRegistration() {
         if (OSType.MAC.equals(OSType.getOSType())) {
             try {
-                Class osxAdapter = ClassUtil.forName("org.crosswire.common.aqua.OSXAdapter"); //$NON-NLS-1$
+                Class osxAdapter = ClassUtil.forName("org.crosswire.common.aqua.OSXAdapter");
                 Object[] registerOSXArgs = {
                         actions, DesktopActions.ABOUT, DesktopActions.OPTIONS, DesktopActions.EXIT
                 };
-                ReflectionUtil.invoke(osxAdapter, osxAdapter, "registerMacOSXApplication", registerOSXArgs); //$NON-NLS-1$
+                ReflectionUtil.invoke(osxAdapter, osxAdapter, "registerMacOSXApplication", registerOSXArgs);
 
                 // To call a method taking a type of boolean, the type has to
                 // match but the object has to be wrapped
@@ -461,17 +470,17 @@
                 Object[] enablePrefArgs = {
                     Boolean.TRUE
                 };
-                ReflectionUtil.invoke(osxAdapter, osxAdapter, "enablePrefs", enablePrefArgs, enablePrefTypes); //$NON-NLS-1$
+                ReflectionUtil.invoke(osxAdapter, osxAdapter, "enablePrefs", enablePrefArgs, enablePrefTypes);
                 return true;
             } catch (NoClassDefFoundError e) {
                 // This is thrown when EAWT or MacOSXadapter is not present.
-                log.error("This version of Mac OS X does not support the Apple EAWT.  Application Menu handling has been disabled (" + e + ")"); //$NON-NLS-1$//$NON-NLS-2$
+                log.error("This version of Mac OS X does not support the Apple EAWT.  Application Menu handling has been disabled (" + e + ")");
             } catch (ClassNotFoundException e) {
                 // Should not happen
-                log.error("This version of Mac OS X does not support the Apple EAWT.  Application Menu handling has been disabled (" + e + ")"); //$NON-NLS-1$//$NON-NLS-2$
+                log.error("This version of Mac OS X does not support the Apple EAWT.  Application Menu handling has been disabled (" + e + ")");
             } catch (Exception e) {
                 // Everything else.
-                log.error("Exception while loading the OSXAdapter:", e); //$NON-NLS-1$
+                log.error("Exception while loading the OSXAdapter:", e);
             }
         }
         return false;
@@ -503,31 +512,31 @@
     }
 
     // Enumeration of all the keys to known actions
-    static final String FILE = "File"; //$NON-NLS-1$
-    static final String EDIT = "Edit"; //$NON-NLS-1$
-    static final String GO = "Go"; //$NON-NLS-1$
-    static final String VIEW = "View"; //$NON-NLS-1$
-    static final String TOOLS = "Tools"; //$NON-NLS-1$
-    static final String HELP = "Help"; //$NON-NLS-1$
-    static final String OPEN = "Open"; //$NON-NLS-1$
-    static final String SAVE = "Save"; //$NON-NLS-1$
-    static final String SAVE_AS = "SaveAs"; //$NON-NLS-1$
-    static final String SAVE_ALL = "SaveAll"; //$NON-NLS-1$
-    static final String EXIT = "Exit"; //$NON-NLS-1$
-    static final String COPY = "Copy"; //$NON-NLS-1$
-    static final String BACK = "Back"; //$NON-NLS-1$
-    static final String FORWARD = "Forward"; //$NON-NLS-1$
-    static final String COMPARE_TOGGLE = "CompareToggle"; //$NON-NLS-1$
-    static final String TOOLTIP_TOGGLE = "ToolTipToggle"; //$NON-NLS-1$
-    static final String STATUS_TOGGLE = "StatusToggle"; //$NON-NLS-1$
-    static final String SIDEBAR_TOGGLE = "SidebarToggle"; //$NON-NLS-1$
-    static final String JOURNAL_TOGGLE = "JournalToggle"; //$NON-NLS-1$
-    static final String VERSE = "Verse"; //$NON-NLS-1$
-    static final String VIEW_SOURCE = "ViewSource"; //$NON-NLS-1$
-    static final String BOOKS = "Books"; //$NON-NLS-1$
-    static final String OPTIONS = "Options"; //$NON-NLS-1$
-    static final String CONTENTS = "Contents"; //$NON-NLS-1$
-    static final String ABOUT = "About"; //$NON-NLS-1$
+    static final String FILE = "File";
+    static final String EDIT = "Edit";
+    static final String GO = "Go";
+    static final String VIEW = "View";
+    static final String TOOLS = "Tools";
+    static final String HELP = "Help";
+    static final String OPEN = "Open";
+    static final String SAVE = "Save";
+    static final String SAVE_AS = "SaveAs";
+    static final String SAVE_ALL = "SaveAll";
+    static final String EXIT = "Exit";
+    static final String COPY = "Copy";
+    static final String BACK = "Back";
+    static final String FORWARD = "Forward";
+    static final String COMPARE_TOGGLE = "CompareToggle";
+    static final String TOOLTIP_TOGGLE = "ToolTipToggle";
+    static final String STATUS_TOGGLE = "StatusToggle";
+    static final String SIDEBAR_TOGGLE = "SidebarToggle";
+    static final String JOURNAL_TOGGLE = "JournalToggle";
+    static final String VERSE = "Verse";
+    static final String VIEW_SOURCE = "ViewSource";
+    static final String BOOKS = "Books";
+    static final String OPTIONS = "Options";
+    static final String CONTENTS = "Contents";
+    static final String ABOUT = "About";
 
     /**
      * The desktop on which these actions work

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,151 +1,155 @@
-#Created by JInto - www.guh-software.de
-#Sun Feb 17 21:22:26 CET 2008
-About.MnemonicKey=
-About.Name=\u00DCber ...
-About.ToolTip=Informationen \u00FCber Bible Desktop
-BCVNum.Name=Buch-, Kapitel- und Versnummern anzeigen
-BCVNum.ToolTip=Buch-, Kapitel- und Versnummern anzeigen
-Back.Name=Alias.Back
-Back.ToolTip=Gehe zur letzten Schriftstelle.
-Books.Name=B\u00FCcher ...
-Books.ToolTip=B\u00FCcher anzeigen/installieren
-CVNum.Name=Kapitel- und Versnummern anzeigen
-CVNum.ToolTip=Kapitel- und Versnummern anzeigen
-ClearView.MnemonicKey=
-ClearView.Name=Aktuelle Ansicht zur\u00FCcksetzen
-ClearView.ToolTip=Setze die Schriftstellen der aktuellen Ansicht zur\u00FCck
-CloseAllViews.MnemonicKey=A
-CloseAllViews.Name=Alle Ansichten schlie\u00DFen
-CloseAllViews.ToolTip=Alle Ansichten schlie\u00DFen
-CloseOtherViews.MnemonicKey=
-CloseOtherViews.Name=Andere Ansichten schlie\u00DFen
-CloseOtherViews.ToolTip=Alle anderen Ansichten schlie\u00DFen.
-CloseView.AcceleratorKey=0x73
-CloseView.AcceleratorKey.Modifiers=ctrl
-CloseView.MnemonicKey=
-CloseView.Name=Aktuelle Ansicht schlie\u00DFen
-CloseView.ToolTip=Aktuelle Ansicht schlie\u00DFen
-CompareToggle.Name=Unterschiede (Diff) anzeigen
-CompareToggle.ToolTip=Anzeige von Unterschieden zwischen verschiedenen Bibeln ein/ausschalten
-Contents.AcceleratorKey=0x70
-Contents.MnemonicKey=
-Contents.Name=Inhalt ...
-Contents.ToolTip=Hilfe
-Copy.Name=Alias.Copy
-Copy.ToolTip=Kopiert die aktuelle Markierung.
-Cut.Name=Alias.Cut
-Cut.ToolTip=Schneide die aktuelle Markierung aus.
-Edit.Name=Alias.Edit
-Edit.ToolTip=Bearbeiten
-Exit.AcceleratorKey=0x73
-Exit.AcceleratorKey.Modifiers=alt
-Exit.MnemonicKey=
-Exit.Name=Beenden
-Exit.ToolTip=Schlie\u00DFt die Anwendung.
-File.MnemonicKey=D
-File.Name=Datei
-File.ToolTip=Datei
-Forward.Name=Alias.Forward
-Forward.ToolTip=Gehe Vorw\u00E4rts zur n\u00E4chsten Schriftstelle.
-Go.MnemonicKey=G
-Go.Name=Navigation
-Go.ToolTip=Navigation
-Headings.Name=\u00DCberschriften anzeigen
-Headings.ToolTip=\u00DCberschriften anzeigen
-Help.MnemonicKey=H
-Help.Name=Alias.Help
-Help.ToolTip=Helfe
-JournalToggle.AcceleratorKey=J
-JournalToggle.AcceleratorKey.Modifiers=ctrl
-JournalToggle.MnemonicKey=J
-JournalToggle.Name=Web-Journal anzeigen
-JournalToggle.ToolTip=Web-Journal anzeigen
-Morph.Name=Wort-Morphologie zeigen
-Morph.ToolTip=Wort-Morphologie als Link zeigen
-NewTab.AcceleratorKey=O
-NewTab.AcceleratorKey.Modifiers=ctrl
-NewTab.MnemonicKey=
-NewTab.Name=Neue Bibelansicht
-NewTab.ToolTip=\u00D6ffnet eine neue Bibelansicht
-NoVNum.Name=Versnummern verstecken
-NoVNum.ToolTip=Versnummern verstecken
-Notes.Name=Studier-Notizen zeigen
-Notes.ToolTip=Studier-Notizen zeigen
-Open.AcceleratorKey=A
-Open.AcceleratorKey.Modifiers=ctrl
-Open.MnemonicKey=
-Open.Name=\u00D6ffnen ...
-Open.ToolTip=\u00D6ffnet eine gespeicherte Versliste.
-Options.MnemonicKey=O
-Options.Name=Einstellungen ...
-Options.ToolTip=Einstellungen
-Paste.AcceleratorKey=V
-Paste.AcceleratorKey.Modifiers=ctrl
-Paste.MnemonicKey=
-Paste.Name=Einf\u00FCgen
-Paste.ToolTip=F\u00FCge die im Speicher befindliche Schriftstelle ein.
-Print.AcceleratorKey=P
-Print.AcceleratorKey.Modifiers=ctrl
-Print.MnemonicKey=
-Print.Name=Drucken
-Print.ToolTip=Druckt die aktuelle Schriftstelle.
-Save.AcceleratorKey=S
-Save.AcceleratorKey.Modifiers=ctrl
-Save.MnemonicKey=S
-Save.Name=Speichern ...
-Save.ToolTip=Speichert die aktuelle Schriftstelle.
-SaveAll.AcceleratorKey=S
-SaveAll.AcceleratorKey.Modifiers=ctrl,shift
-SaveAll.MnemonicKey=S
-SaveAll.Name=Alle speichern
-SaveAll.ToolTip=Alle Schriftstellen speichern
-SaveAs.AcceleratorKey=A
-SaveAs.AcceleratorKey.Modifiers=ctrl,shift
-SaveAs.MnemonicKey=
-SaveAs.Name=Speichern unter ...
-SaveAs.ToolTip=Die aktuelle Schriftstelle speichern
-Scripting.MnemonicKey=S
-Scripting.Name=Skript ...
-Scripting.ToolTip=F\u00FChre Kommandos in einer Skriptsprache aus.
-SidebarToggle.AcceleratorKey=B
-SidebarToggle.AcceleratorKey.Modifiers=ctrl
-SidebarToggle.MnemonicKey=B
-SidebarToggle.Name=Passage Sidebar anzeigen
-SidebarToggle.ToolTip=Passage Sidebar anzeigen
-StatusToggle.MnemonicKey=
-StatusToggle.Name=Statusleiste zeigen
-StatusToggle.ToolTip=Statusleiste zeigen
-Strongs.Name=Strong-Links anzeigen
-Strongs.ToolTip=Zeige Strong-Nummern als Links
-TabMode.MnemonicKey=T
-TabMode.Name=Tab-Modus
-TabMode.ToolTip=Zeige Schriftstellen im Tab-Modus
-TinyVNum.Name=Kleine Versnummern benutzen
-TinyVNum.ToolTip=Kleine Versnummern benutzen
-ToolTipToggle.AcceleratorKey=T
-ToolTipToggle.AcceleratorKey.Modifiers=ctrl
-ToolTipToggle.MnemonicKey=T
-ToolTipToggle.Name=Tooltips anzeigen
-ToolTipToggle.ToolTip=Schalte Tooltips an/aus
-Tools.MnemonicKey=
-Tools.Name=Extras
-Tools.ToolTip=Extras
-VLine.Name=Beginne Verse auf neuer Zeile
-VLine.ToolTip=Beginne jeden neuen Vers auf einer neuen Zeile
-VNum.Name=Versnummern anzeigen
-VNum.ToolTip=Versnummern anzeigen
-Verse.Name=Versnummern
-Verse.ToolTip=Bestimme das Aussehen der Versnummern
-View.MnemonicKey=A
-View.Name=Ansicht
-View.ToolTip=Ansicht
-ViewSource.AcceleratorKey=U
-ViewSource.AcceleratorKey.Modifiers=ctrl
-ViewSource.MnemonicKey=U
-ViewSource.Name=Quelltext anzeigen
-ViewSource.ToolTip=HTML und OSIS Quelltext anzeigen
-WindowMode.MnemonicKey=M
-WindowMode.Name=Fenstermodus
-WindowMode.ToolTip=Zeige Schriftstellen im Fenster im Fenstermodus
-XRef.Name=Querreferenzen anzeigen
-XRef.ToolTip=Querreferenzen anzeigen
+
+About.Name    = \u00DCber ...
+About.ToolTip = Informationen \u00FCber Bible Desktop
+
+BCVNum.Name    = Buch-, Kapitel- und Versnummern anzeigen
+BCVNum.ToolTip = Buch-, Kapitel- und Versnummern anzeigen
+
+Back.Name    = Alias.Back
+Back.ToolTip = Gehe zur letzten Schriftstelle.
+
+Books.Name    = B\u00FCcher ...
+Books.ToolTip = B\u00FCcher anzeigen/installieren
+
+CVNum.Name    = Kapitel- und Versnummern anzeigen
+CVNum.ToolTip = Kapitel- und Versnummern anzeigen
+
+ClearView.Name    = Aktuelle Ansicht zur\u00FCcksetzen
+ClearView.ToolTip = Setze die Schriftstellen der aktuellen Ansicht zur\u00FCck
+
+CloseAllViews.Name    = &Alle Ansichten schlie\u00DFen
+CloseAllViews.ToolTip = Alle Ansichten schlie\u00DFen
+
+CloseOtherViews.Name    = Andere Ansichten schlie\u00DFen
+CloseOtherViews.ToolTip = Alle anderen Ansichten schlie\u00DFen.
+
+CloseView.AcceleratorKey = 0x73,ctrl
+CloseView.Name           = Aktuelle Ansicht schlie\u00DFen
+CloseView.ToolTip        = Aktuelle Ansicht schlie\u00DFen
+
+CompareToggle.Name    = Unterschiede (Diff) anzeigen
+CompareToggle.ToolTip = Anzeige von Unterschieden zwischen verschiedenen Bibeln ein/ausschalten
+
+Contents.AcceleratorKey = 0x70
+Contents.Name           = Inhalt ...
+Contents.ToolTip        = Hilfe
+
+Copy.Name    = Alias.Copy
+Copy.ToolTip = Kopiert die aktuelle Markierung.
+
+Cut.Name    = Alias.Cut
+Cut.ToolTip = Schneide die aktuelle Markierung aus.
+
+Edit.Name    = Alias.Edit
+Edit.ToolTip = Bearbeiten
+
+Exit.AcceleratorKey = 0x73,alt
+Exit.Name           = Beenden
+Exit.ToolTip        = Schlie\u00DFt die Anwendung.
+
+File.Name    = &Datei
+File.ToolTip = Datei
+
+Forward.Name    = Alias.Forward
+Forward.ToolTip = Gehe Vorw\u00E4rts zur n\u00E4chsten Schriftstelle.
+
+Go.Name    = Navigation
+Go.ToolTip = Navigation
+
+Headings.Name    = \u00DCberschriften anzeigen
+Headings.ToolTip = \u00DCberschriften anzeigen
+
+Help.Name    = Alias.Help
+Help.ToolTip = Helfe
+
+JournalToggle.AcceleratorKey = J,ctrl
+JournalToggle.Name           = Web-&Journal anzeigen
+JournalToggle.ToolTip        = Web-Journal anzeigen
+
+Morph.Name    = Wort-Morphologie zeigen
+Morph.ToolTip = Wort-Morphologie als Link zeigen
+
+NewTab.AcceleratorKey = O,ctrl
+NewTab.Name           = Neue Bibelansicht
+NewTab.ToolTip        = \u00D6ffnet eine neue Bibelansicht
+
+NoVNum.Name    = Versnummern verstecken
+NoVNum.ToolTip = Versnummern verstecken
+
+Notes.Name    = Studier-Notizen zeigen
+Notes.ToolTip = Studier-Notizen zeigen
+
+Open.AcceleratorKey = A,ctrl
+Open.Name           = \u00D6ffnen ...
+Open.ToolTip        = \u00D6ffnet eine gespeicherte Versliste.
+
+Options.Name    = Einstellungen ...
+Options.ToolTip = Einstellungen
+
+Paste.AcceleratorKey = V,ctrl
+Paste.Name           = Einf\u00FCgen
+Paste.ToolTip        = F\u00FCge die im Speicher befindliche Schriftstelle ein.
+
+Print.AcceleratorKey = P,ctrl
+Print.Name           = Drucken
+Print.ToolTip        = Druckt die aktuelle Schriftstelle.
+
+Save.AcceleratorKey    = S,ctrl
+Save.Name              = &Speichern ...
+Save.ToolTip           = Speichert die aktuelle Schriftstelle.
+
+SaveAll.AcceleratorKey = S,ctrl,shift
+SaveAll.Name           = Alle &speichern
+SaveAll.ToolTip        = Alle Schriftstellen speichern
+
+SaveAs.AcceleratorKey = A,ctrl,shift
+SaveAs.Name           = Speichern unter ...
+SaveAs.ToolTip        = Die aktuelle Schriftstelle speichern
+
+Scripting.Name    = Skript ...
+Scripting.ToolTip = F\u00FChre Kommandos in einer Skriptsprache aus.
+
+SidebarToggle.AcceleratorKey = B,ctrl
+SidebarToggle.Name           = Passage Side&bar anzeigen
+SidebarToggle.ToolTip        = Passage Sidebar anzeigen
+
+StatusToggle.Name    = Statusleiste zeigen
+StatusToggle.ToolTip = Statusleiste zeigen
+
+Strongs.Name    = Strong-Links anzeigen
+Strongs.ToolTip = Zeige Strong-Nummern als Links
+
+TabMode.Name    = &Tab-Modus
+TabMode.ToolTip = Zeige Schriftstellen im Tab-Modus
+
+TinyVNum.Name    = Kleine Versnummern benutzen
+TinyVNum.ToolTip = Kleine Versnummern benutzen
+
+ToolTipToggle.AcceleratorKey = T,ctrl
+ToolTipToggle.Name           = Tooltips anzeigen
+ToolTipToggle.ToolTip        = Schalte Tooltips an/aus
+
+Tools.Name    = Extras
+Tools.ToolTip = Extras
+
+VLine.Name    = Beginne Verse auf neuer Zeile
+VLine.ToolTip = Beginne jeden neuen Vers auf einer neuen Zeile
+
+VNum.Name    = Versnummern anzeigen
+VNum.ToolTip = Versnummern anzeigen
+
+Verse.Name    = Versnummern
+Verse.ToolTip = Bestimme das Aussehen der Versnummern
+
+View.Name                 = &Ansicht
+View.ToolTip              = Ansicht
+
+ViewSource.AcceleratorKey = U,ctrl
+ViewSource.Name           = Q&uelltext anzeigen
+ViewSource.ToolTip        = HTML und OSIS Quelltext anzeigen
+
+WindowMode.Name    = Fenster&modus
+WindowMode.ToolTip = Zeige Schriftstellen im Fenster im Fenstermodus
+
+XRef.Name    = Querreferenzen anzeigen
+XRef.ToolTip = Querreferenzen anzeigen

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,149 +1,143 @@
-About.MnemonicKey=
-About.Name=\u062F\u0631\u0628\u0627\u0631\u0647.
-About.ToolTip=\u062F\u0631\u0628\u0627\u0631\u0647 \u0627\u06CC\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 
-BCVNum.Name=\u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u0622\u06CC\u0627\u062A\u060C \u0641\u0635\u0644 \u0648 \u06A9\u062A\u0627\u0628
-BCVNum.ToolTip=\u0646\u0634\u0627\u0646 \u062F\u0627\u062F\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u0622\u06CC\u0627\u062A\u060C \u0641\u0635\u0644 \u0648 \u06A9\u062A\u0627\u0628 
-Back.Name=Alias.Back
-Back.ToolTip=\u0639\u0642\u0628 .
-Books.Name=\u06A9\u062A\u0627\u0628 \u0647\u0627
-Books.ToolTip=\u0646\u0645\u0627\u06CC\u0634 \u0648 \u0646\u0633\u0628 \u06A9\u062A\u0627\u0628\u0647\u0622  
-CVNum.Name=\u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u0622\u06CC\u0627\u062A \u0648 \u0641\u0635\u0644 
-CVNum.ToolTip=\u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u0622\u06CC\u0627\u062A \u0648 \u0641\u0635\u0644
-ClearView.MnemonicKey=
-ClearView.Name=\u067E\u0627\u06A9 \u06A9\u0631\u062F\u0646 \u0635\u0641\u062D\u0647  \u062F\u0631 \u062D\u0627\u0644 \u0627\u0633\u062A\u0641\u0627\u062F\u0647  
-ClearView.ToolTip=\u067E\u0627\u06A9 \u06A9\u0631\u062F\u0646 \u0635\u0641\u062D\u0647  \u062F\u0631 \u062D\u0627\u0644 \u0627\u0633\u062A\u0641\u0627\u062F\u0647  
-CloseAllViews.MnemonicKey=
-CloseAllViews.Name=\u0628\u0633\u062A\u0646 \u062A\u0645\u0627\u0645 \u0635\u0641\u062D\u0647   
-CloseAllViews.ToolTip=\u0628\u0633\u062A\u0646 \u062A\u0645\u0627\u0645 \u0635\u0641\u062D\u0647
-CloseOtherViews.MnemonicKey=
-CloseOtherViews.Name=\u0628\u0633\u062A\u0646 \u0628\u0642\u064A\u0647 \u0635\u0641\u062D\u0647   
-CloseOtherViews.ToolTip=\u0628\u0633\u062A\u0646 \u0628\u0642\u064A\u0647 \u0635\u0641\u062D\u0647   
-CloseView.AcceleratorKey=
-CloseView.AcceleratorKey.Modifiers=
-CloseView.MnemonicKey=
-CloseView.Name=\u0628\u0633\u062A\u0646 \u0635\u0641\u062D\u0647  \u062F\u0631 \u062D\u0627\u0644 \u0627\u0633\u062A\u0641\u0627\u062F\u0647  
-CloseView.ToolTip=\u0628\u0633\u062A\u0646\u0647 \u0635\u0641\u062D\u0647  \u062F\u0631 \u062D\u0627\u0644 \u0627\u0633\u062A\u0641\u0627\u062F\u0647 
-CompareToggle.Name=\u0645\u0642\u0627\u06CC\u0633\u0647 \u062A\u0631\u062C\u0645\u0647 
-CompareToggle.ToolTip=\u0645\u0642\u0627\u06CC\u0633\u0647 \u062A\u0631\u062C\u0645\u0647 
-Contents.AcceleratorKey=
-Contents.MnemonicKey=
-Contents.Name=\u0645\u062A\u0646 \u062A\u0648\u0636\u06CC\u062D\u0627\u062A  
-Contents.ToolTip=\u0645\u062A\u0646 \u062A\u0648\u0636\u06CC\u062D\u0627\u062A
-Copy.Name=Alias.Copy
-Copy.ToolTip=\u06A9\u067E\u06CC 
-Cut.Name=Alias.Cut
-Cut.ToolTip=\u0628\u0631\u064A\u062F\u0646 \u0642\u0633\u0645\u062A\u0647 \u0627\u0646\u062A\u062E\u0627\u0628 \u0634\u062F\u0647.
-Edit.Name=Alias.Edit
-Edit.ToolTip=\u0648\u06CC\u0631\u0627\u06CC\u0634
-Exit.AcceleratorKey=0x73
-Exit.AcceleratorKey.Modifiers=alt
-Exit.MnemonicKey=
-Exit.Name=\u062E\u0631\u0648\u062C
-Exit.ToolTip=\u062E\u0631\u0648\u062C \u0627\u0632 \u0628\u0631\u0646\u0627\u0645\u0647.
-File.MnemonicKey=
-File.Name=\u067E\u0631\u0648\u0646\u062F\u0647
-File.ToolTip=\u067E\u0631\u0648\u0646\u062F\u0647
-Forward.Name=Alias.Forward
-Forward.ToolTip=\u062C\u0644\u0648.
-Go.MnemonicKey=
-Go.Name=Alias.Go
-Go.ToolTip=\u0686\u0647\u062A  \u062D\u0631\u06A9\u062A
-Headings.Name=\u0639\u0646\u0648\u0627\u0646 
-Headings.ToolTip=\u0646\u0634\u0627\u0646 \u062F\u0627\u062F\u0646 \u0639\u0646\u0648\u0627\u0646 
-Help.MnemonicKey=
-Help.Name=Alias.Help
-Help.ToolTip=\u0631\u0627\u0647\u0646\u0645\u0627 
-JournalToggle.AcceleratorKey=J
-JournalToggle.AcceleratorKey.Modifiers=ctrl
-JournalToggle.MnemonicKey=J
-JournalToggle.Name=Show the Web Journal
-JournalToggle.ToolTip=Toggle display of the Web Journal
-Morph.Name=\u0644\u063A\u062A \u0634\u0646\u0627\u0633\u06CC 
-Morph.ToolTip=\u0644\u063A\u062A \u0634\u0646\u0627\u0633\u06CC 
-NewTab.AcceleratorKey=
-NewTab.AcceleratorKey.Modifiers=
-NewTab.MnemonicKey=
-NewTab.Name=\u0635\u0641\u062D\u0647 \u062C\u062F\u064A\u062F
-NewTab.ToolTip=\u0646\u0645\u0627\u064A\u0634 \u0635\u0641\u062D\u0647 \u062C\u062F\u064A\u062F \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 
-NoVNum.Name=\u0645\u062E\u0641\u0641 \u06A9\u0631\u062F\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u0622\u06CC\u0627\u062A 
-NoVNum.ToolTip=\u0645\u062E\u0641\u0641 \u06A9\u0631\u062F\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u0622\u06CC\u0627\u062A 
-Notes.Name=\u0646\u0634\u0627\u0646 \u062F\u0627\u062F\u0646 \u06CC\u0627\u062F\u062F\u0627\u0634\u062A\u200C\u0647\u0627\u06CC \u062A\u0641\u0633\u06CC\u0631\u06CC 
-Notes.ToolTip=\u0646\u0634\u0627\u0646 \u062F\u0627\u062F\u0646 \u06CC\u0627\u062F\u062F\u0627\u0634\u062A\u200C\u0647\u0627\u06CC \u062A\u0641\u0633\u06CC\u0631\u06CC  
-Open.AcceleratorKey=
-Open.AcceleratorKey.Modifiers=
-Open.MnemonicKey=
-Open.Name=\u06AF\u0634\u0627\u06CC\u0634 ...  
-Open.ToolTip=\u06AF\u0634\u0627\u06CC\u0634 ... 
-Options.MnemonicKey=
-Options.Name=\u0627\u0646\u062A\u062E\u0627\u0628 ...
-Options.ToolTip=\u0627\u0646\u062A\u062E\u0627\u0628 ...
-Paste.AcceleratorKey=
-Paste.AcceleratorKey.Modifiers=ctrl
-Paste.MnemonicKey=
-Paste.Name=\u0686\u0633\u0628\u0627\u0646\u062F\u0646
-Paste.ToolTip=\u0686\u0633\u0628\u0627\u0646\u062F\u0646 \u0642\u0633\u0645\u062A\u0647 \u0627\u0646\u062A\u062E\u0627\u0628 \u0634\u062F\u0647.
-Print.AcceleratorKey=
-Print.AcceleratorKey.Modifiers=
-Print.MnemonicKey=
-Print.Name=\u0686\u0627\u067E
-Print.ToolTip=\u0686\u0627\u067E \u0628\u062E\u0634 \u062F\u0631\u062D\u0627\u0644\u0647 \u0627\u0633\u062A\u0641\u0627\u062F\u0647 
-Save.AcceleratorKey=
-Save.AcceleratorKey.Modifiers=
-Save.MnemonicKey=
-Save.Name=\u0630\u062E\u064A\u0631\u0647 \u0633\u0627\u0632\u06CC...
-Save.ToolTip=\u0628\u062E\u0634 \u0647\u0627\u06CC  \u062F\u0631 \u062D\u0627\u0644\u0647 \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0630\u062E\u064A\u0631\u0647 \u0633\u0627\u0632\u06CC.
-SaveAll.AcceleratorKey=
-SaveAll.AcceleratorKey.Modifiers=
-SaveAll.MnemonicKey=
-SaveAll.Name=\u0647\u0645\u0647 \u0631\u0627 \u0630\u062E\u064A\u0631\u0647 \u06A9\u0631\u062F\u0646
-SaveAll.ToolTip=\u0647\u0645\u0647 \u0628\u062E\u0634\u0647\u0627 \u0631\u0627 \u0630\u062E\u064A\u0631\u0647 \u06A9\u0631\u062F\u0646.
-SaveAs.AcceleratorKey=
-SaveAs.AcceleratorKey.Modifiers=
-SaveAs.MnemonicKey=
-SaveAs.Name=\u0628\u0647 \u0627\u0633\u0645 \u062C\u062F\u064A\u062F \u0630\u062E\u064A\u0631\u0647 \u06A9\u0631\u062F\u0646 
-SaveAs.ToolTip=\u0628\u0647 \u0627\u0633\u0645 \u062C\u062F\u064A\u062F \u0630\u062E\u064A\u0631\u0647 \u06A9\u0631\u062F\u0646
-Scripting.MnemonicKey=S
-Scripting.Name=Scripting ...
-Scripting.ToolTip=Run some commands in a scripting language.
-SidebarToggle.AcceleratorKey=
-SidebarToggle.AcceleratorKey.Modifiers=
-SidebarToggle.MnemonicKey=
-SidebarToggle.Name=\u0645\u062A\u0646 \u062F\u0631 \u0633\u062A\u0648\u0646 \u06A9\u0646\u0627\u0631\u06CC
-SidebarToggle.ToolTip=\u0645\u062A\u0646 \u062F\u0631 \u0633\u062A\u0648\u0646 \u06A9\u0646\u0627\u0631\u06CC
-StatusToggle.MnemonicKey=
-StatusToggle.Name=\u062A\u0631\u0636\u06CC\u0639 \u0627\u0628\u0632\u0627\u0631 \u0628\u0632\u0631\u06AF 
-StatusToggle.ToolTip=\u062A\u0631\u0636\u06CC\u0639 \u062D\u0628\u0632\u0627\u0631
-Strongs.Name=\u0645\u062A\u0631\u0627\u062F\u0641\u200C\u0647\u0627\u06CC \u06A9\u0634\u06CC\u0634 \u0627\u0633\u062A\u0631\u0648\u0646\u06AF
-Strongs.ToolTip=\u0645\u062A\u0631\u0627\u062F\u0641\u200C\u0647\u0627\u06CC \u06A9\u0634\u06CC\u0634 \u0627\u0633\u062A\u0631\u0648\u0646\u06AF 
-TabMode.MnemonicKey=
-TabMode.Name=\u0627\u0646\u062A\u062E\u0627\u0628  \u0635\u0641\u062D\u0647 
-TabMode.ToolTip=\u0627\u0646\u062A\u062E\u0627\u0628  \u0635\u0641\u062D\u0647 
-TinyVNum.Name=\u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0627\u0632 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u06A9\u0648\u0686\u06A9 \u0622\u06CC\u0627\u062A 
-TinyVNum.ToolTip=\u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0627\u0632 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0622\u06CC \u06A9\u0648\u062A\u0627\u0647\u0647 \u0622\u06CC\u0627\u062A 
-ToolTipToggle.AcceleratorKey=
-ToolTipToggle.AcceleratorKey.Modifiers=
-ToolTipToggle.MnemonicKey=
-ToolTipToggle.Name=\u062A\u0648\u0636\u06CC\u062D \u0627\u0628\u0632\u0627\u0631 \u06A9\u0648\u062C\u06A9
-ToolTipToggle.ToolTip=\u0639\u0648\u0636 \u06A9\u0631\u062F\u0646 \u0646\u0645\u0627\u06CC\u0634 \u062A\u0648\u0636\u06CC\u062D\u0647 \u0627\u0628\u0632\u0627\u0631 
-Tools.MnemonicKey=
-Tools.Name=\u0627\u0628\u0632\u0627\u0631
-Tools.ToolTip=\u0627\u0628\u0632\u0627\u0631 
-VLine.Name=\u0646\u0645\u0627\u06CC\u0634 \u062C\u062F\u0627\u06AF\u0627\u0646\u0647\u200C\u0647\u0631 \u0622\u06CC\u0647 
-VLine.ToolTip=\u0646\u0645\u0627\u06CC\u0634 \u062C\u062F\u0627\u06AF\u0627\u0646\u0647\u200C\u0647\u0631 \u0622\u06CC\u0647 .
-VNum.Name=\u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC  \u0622\u06CC\u0627\u062A
-VNum.ToolTip=\u0646\u0634\u0627\u0646 \u062F\u0627\u062F\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC  \u0622\u06CC\u0627\u062A 
-Verse.Name=\u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u0622\u06CC\u0627\u062A 
-Verse.ToolTip=\u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u0622\u06CC\u0627\u062A
-View.MnemonicKey=
-View.Name=\u0646\u0645\u0627\u06CC\u0634
-View.ToolTip=\u0646\u0645\u0627\u06CC\u0634
-ViewSource.AcceleratorKey=
-ViewSource.AcceleratorKey.Modifiers=
-ViewSource.MnemonicKey=
-ViewSource.Name=\u062F\u06CC\u062F\u0646  \u06A9\u062F \u0645\u0646\u0634\u0623 
-ViewSource.ToolTip=\u062F\u06CC\u062F\u0646  \u06A9\u062F \u0645\u0646\u0634\u0623  OSIS \u0648 HTML
-WindowMode.MnemonicKey=
-WindowMode.Name=\u0627\u0646\u062A\u062E\u0627\u0628 \u067E\u0646\u062C\u0631\u0647
-WindowMode.ToolTip=\u0627\u0646\u062A\u062E\u0627\u0628 \u067E\u0646\u062C\u0631\u0647
-XRef.Name=\u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0627\u0632 \u0627\u0631\u062C\u0639\u0627\u062A
-XRef.ToolTip=\u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0627\u0632\u0627\u0631\u062C\u0639\u0627\u062A 
+
+About.Name    = \u062F\u0631\u0628\u0627\u0631\u0647.
+About.ToolTip = \u062F\u0631\u0628\u0627\u0631\u0647 \u0627\u06CC\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 
+
+BCVNum.Name    = \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u0622\u06CC\u0627\u062A\u060C \u0641\u0635\u0644 \u0648 \u06A9\u062A\u0627\u0628
+BCVNum.ToolTip = \u0646\u0634\u0627\u0646 \u062F\u0627\u062F\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u0622\u06CC\u0627\u062A\u060C \u0641\u0635\u0644 \u0648 \u06A9\u062A\u0627\u0628 
+
+Back.Name    = Alias.Back
+Back.ToolTip = \u0639\u0642\u0628 .
+
+Books.Name    = \u06A9\u062A\u0627\u0628 \u0647\u0627
+Books.ToolTip = \u0646\u0645\u0627\u06CC\u0634 \u0648 \u0646\u0633\u0628 \u06A9\u062A\u0627\u0628\u0647\u0622  
+
+CVNum.Name    = \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u0622\u06CC\u0627\u062A \u0648 \u0641\u0635\u0644 
+CVNum.ToolTip = \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u0622\u06CC\u0627\u062A \u0648 \u0641\u0635\u0644
+
+ClearView.Name    = \u067E\u0627\u06A9 \u06A9\u0631\u062F\u0646 \u0635\u0641\u062D\u0647  \u062F\u0631 \u062D\u0627\u0644 \u0627\u0633\u062A\u0641\u0627\u062F\u0647  
+ClearView.ToolTip = \u067E\u0627\u06A9 \u06A9\u0631\u062F\u0646 \u0635\u0641\u062D\u0647  \u062F\u0631 \u062D\u0627\u0644 \u0627\u0633\u062A\u0641\u0627\u062F\u0647  
+
+CloseAllViews.Name    = \u0628\u0633\u062A\u0646 \u062A\u0645\u0627\u0645 \u0635\u0641\u062D\u0647   
+CloseAllViews.ToolTip = \u0628\u0633\u062A\u0646 \u062A\u0645\u0627\u0645 \u0635\u0641\u062D\u0647
+
+CloseOtherViews.Name    = \u0628\u0633\u062A\u0646 \u0628\u0642\u064A\u0647 \u0635\u0641\u062D\u0647   
+CloseOtherViews.ToolTip = \u0628\u0633\u062A\u0646 \u0628\u0642\u064A\u0647 \u0635\u0641\u062D\u0647   
+
+CloseView.Name    = \u0628\u0633\u062A\u0646 \u0635\u0641\u062D\u0647  \u062F\u0631 \u062D\u0627\u0644 \u0627\u0633\u062A\u0641\u0627\u062F\u0647  
+CloseView.ToolTip = \u0628\u0633\u062A\u0646\u0647 \u0635\u0641\u062D\u0647  \u062F\u0631 \u062D\u0627\u0644 \u0627\u0633\u062A\u0641\u0627\u062F\u0647 
+
+CompareToggle.Name    = \u0645\u0642\u0627\u06CC\u0633\u0647 \u062A\u0631\u062C\u0645\u0647 
+CompareToggle.ToolTip = \u0645\u0642\u0627\u06CC\u0633\u0647 \u062A\u0631\u062C\u0645\u0647 
+
+Contents.Name    = \u0645\u062A\u0646 \u062A\u0648\u0636\u06CC\u062D\u0627\u062A  
+Contents.ToolTip = \u0645\u062A\u0646 \u062A\u0648\u0636\u06CC\u062D\u0627\u062A
+
+Copy.Name    = Alias.Copy
+Copy.ToolTip = \u06A9\u067E\u06CC 
+
+Cut.Name    = Alias.Cut
+Cut.ToolTip = \u0628\u0631\u064A\u062F\u0646 \u0642\u0633\u0645\u062A\u0647 \u0627\u0646\u062A\u062E\u0627\u0628 \u0634\u062F\u0647.
+
+Edit.Name    = Alias.Edit
+Edit.ToolTip = \u0648\u06CC\u0631\u0627\u06CC\u0634
+
+Exit.AcceleratorKey = 0x73,alt
+Exit.Name           = \u062E\u0631\u0648\u062C
+Exit.ToolTip        = \u062E\u0631\u0648\u062C \u0627\u0632 \u0628\u0631\u0646\u0627\u0645\u0647.
+
+File.Name    = \u067E\u0631\u0648\u0646\u062F\u0647
+File.ToolTip = \u067E\u0631\u0648\u0646\u062F\u0647
+
+Forward.Name    = Alias.Forward
+Forward.ToolTip = \u062C\u0644\u0648.
+
+Go.Name    = Alias.Go
+Go.ToolTip = \u0686\u0647\u062A  \u062D\u0631\u06A9\u062A
+
+Headings.Name    = \u0639\u0646\u0648\u0627\u0646 
+Headings.ToolTip = \u0646\u0634\u0627\u0646 \u062F\u0627\u062F\u0646 \u0639\u0646\u0648\u0627\u0646 
+
+Help.Name    = Alias.Help
+Help.ToolTip = \u0631\u0627\u0647\u0646\u0645\u0627 
+
+JournalToggle.AcceleratorKey = J,ctrl
+JournalToggle.Name           = Show the Web Journal
+JournalToggle.ToolTip        = Toggle display of the Web Journal
+
+Morph.Name    = \u0644\u063A\u062A \u0634\u0646\u0627\u0633\u06CC 
+Morph.ToolTip = \u0644\u063A\u062A \u0634\u0646\u0627\u0633\u06CC 
+
+NewTab.Name    = \u0635\u0641\u062D\u0647 \u062C\u062F\u064A\u062F
+NewTab.ToolTip = \u0646\u0645\u0627\u064A\u0634 \u0635\u0641\u062D\u0647 \u062C\u062F\u064A\u062F \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 
+
+NoVNum.Name    = \u0645\u062E\u0641\u0641 \u06A9\u0631\u062F\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u0622\u06CC\u0627\u062A 
+NoVNum.ToolTip = \u0645\u062E\u0641\u0641 \u06A9\u0631\u062F\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u0622\u06CC\u0627\u062A 
+
+Notes.Name    = \u0646\u0634\u0627\u0646 \u062F\u0627\u062F\u0646 \u06CC\u0627\u062F\u062F\u0627\u0634\u062A\u200C\u0647\u0627\u06CC \u062A\u0641\u0633\u06CC\u0631\u06CC 
+Notes.ToolTip = \u0646\u0634\u0627\u0646 \u062F\u0627\u062F\u0646 \u06CC\u0627\u062F\u062F\u0627\u0634\u062A\u200C\u0647\u0627\u06CC \u062A\u0641\u0633\u06CC\u0631\u06CC  
+
+Open.Name    = \u06AF\u0634\u0627\u06CC\u0634 ...  
+Open.ToolTip = \u06AF\u0634\u0627\u06CC\u0634 ... 
+
+Options.Name    = \u0627\u0646\u062A\u062E\u0627\u0628 ...
+Options.ToolTip = \u0627\u0646\u062A\u062E\u0627\u0628 ...
+
+Paste.Name    = \u0686\u0633\u0628\u0627\u0646\u062F\u0646
+Paste.ToolTip = \u0686\u0633\u0628\u0627\u0646\u062F\u0646 \u0642\u0633\u0645\u062A\u0647 \u0627\u0646\u062A\u062E\u0627\u0628 \u0634\u062F\u0647.
+
+Print.Name    = \u0686\u0627\u067E
+Print.ToolTip = \u0686\u0627\u067E \u0628\u062E\u0634 \u062F\u0631\u062D\u0627\u0644\u0647 \u0627\u0633\u062A\u0641\u0627\u062F\u0647 
+
+Save.Name       = \u0630\u062E\u064A\u0631\u0647 \u0633\u0627\u0632\u06CC...
+Save.ToolTip    = \u0628\u062E\u0634 \u0647\u0627\u06CC  \u062F\u0631 \u062D\u0627\u0644\u0647 \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0630\u062E\u064A\u0631\u0647 \u0633\u0627\u0632\u06CC.
+
+SaveAll.Name    = \u0647\u0645\u0647 \u0631\u0627 \u0630\u062E\u064A\u0631\u0647 \u06A9\u0631\u062F\u0646
+SaveAll.ToolTip = \u0647\u0645\u0647 \u0628\u062E\u0634\u0647\u0627 \u0631\u0627 \u0630\u062E\u064A\u0631\u0647 \u06A9\u0631\u062F\u0646.
+
+SaveAs.Name    = \u0628\u0647 \u0627\u0633\u0645 \u062C\u062F\u064A\u062F \u0630\u062E\u064A\u0631\u0647 \u06A9\u0631\u062F\u0646 
+SaveAs.ToolTip = \u0628\u0647 \u0627\u0633\u0645 \u062C\u062F\u064A\u062F \u0630\u062E\u064A\u0631\u0647 \u06A9\u0631\u062F\u0646
+
+Scripting.Name    = Scripting ...
+Scripting.ToolTip = Run some commands in a scripting language.
+
+SidebarToggle.Name    = \u0645\u062A\u0646 \u062F\u0631 \u0633\u062A\u0648\u0646 \u06A9\u0646\u0627\u0631\u06CC
+SidebarToggle.ToolTip = \u0645\u062A\u0646 \u062F\u0631 \u0633\u062A\u0648\u0646 \u06A9\u0646\u0627\u0631\u06CC
+
+StatusToggle.Name    = \u062A\u0631\u0636\u06CC\u0639 \u0627\u0628\u0632\u0627\u0631 \u0628\u0632\u0631\u06AF 
+StatusToggle.ToolTip = \u062A\u0631\u0636\u06CC\u0639 \u062D\u0628\u0632\u0627\u0631
+
+Strongs.Name    = \u0645\u062A\u0631\u0627\u062F\u0641\u200C\u0647\u0627\u06CC \u06A9\u0634\u06CC\u0634 \u0627\u0633\u062A\u0631\u0648\u0646\u06AF
+Strongs.ToolTip = \u0645\u062A\u0631\u0627\u062F\u0641\u200C\u0647\u0627\u06CC \u06A9\u0634\u06CC\u0634 \u0627\u0633\u062A\u0631\u0648\u0646\u06AF 
+
+TabMode.Name    = \u0627\u0646\u062A\u062E\u0627\u0628  \u0635\u0641\u062D\u0647 
+TabMode.ToolTip = \u0627\u0646\u062A\u062E\u0627\u0628  \u0635\u0641\u062D\u0647 
+
+TinyVNum.Name    = \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0627\u0632 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u06A9\u0648\u0686\u06A9 \u0622\u06CC\u0627\u062A 
+TinyVNum.ToolTip = \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0627\u0632 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0622\u06CC \u06A9\u0648\u062A\u0627\u0647\u0647 \u0622\u06CC\u0627\u062A 
+
+ToolTipToggle.Name    = \u062A\u0648\u0636\u06CC\u062D \u0627\u0628\u0632\u0627\u0631 \u06A9\u0648\u062C\u06A9
+ToolTipToggle.ToolTip = \u0639\u0648\u0636 \u06A9\u0631\u062F\u0646 \u0646\u0645\u0627\u06CC\u0634 \u062A\u0648\u0636\u06CC\u062D\u0647 \u0627\u0628\u0632\u0627\u0631 
+
+Tools.Name    = \u0627\u0628\u0632\u0627\u0631
+Tools.ToolTip = \u0627\u0628\u0632\u0627\u0631 
+
+VLine.Name    = \u0646\u0645\u0627\u06CC\u0634 \u062C\u062F\u0627\u06AF\u0627\u0646\u0647\u200C\u0647\u0631 \u0622\u06CC\u0647 
+VLine.ToolTip = \u0646\u0645\u0627\u06CC\u0634 \u062C\u062F\u0627\u06AF\u0627\u0646\u0647\u200C\u0647\u0631 \u0622\u06CC\u0647 .
+
+VNum.Name    = \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC  \u0622\u06CC\u0627\u062A
+VNum.ToolTip = \u0646\u0634\u0627\u0646 \u062F\u0627\u062F\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC  \u0622\u06CC\u0627\u062A 
+
+Verse.Name    = \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u0622\u06CC\u0627\u062A 
+Verse.ToolTip = \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627\u06CC \u0622\u06CC\u0627\u062A
+
+View.Name          = \u0646\u0645\u0627\u06CC\u0634
+View.ToolTip       = \u0646\u0645\u0627\u06CC\u0634
+
+ViewSource.Name    = \u062F\u06CC\u062F\u0646  \u06A9\u062F \u0645\u0646\u0634\u0623 
+ViewSource.ToolTip = \u062F\u06CC\u062F\u0646  \u06A9\u062F \u0645\u0646\u0634\u0623  OSIS \u0648 HTML
+
+WindowMode.Name    = \u0627\u0646\u062A\u062E\u0627\u0628 \u067E\u0646\u062C\u0631\u0647
+WindowMode.ToolTip = \u0627\u0646\u062A\u062E\u0627\u0628 \u067E\u0646\u062C\u0631\u0647
+
+XRef.Name    = \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0627\u0632 \u0627\u0631\u062C\u0639\u0627\u062A
+XRef.ToolTip = \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u0627\u0632\u0627\u0631\u062C\u0639\u0627\u062A 

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,150 +1,155 @@
 
-About.MnemonicKey=
-About.Name=Mengenai ...
-About.ToolTip=Informasi mengenai Bible Desktop
-BCVNum.Name=Tampilkan No Kitab, Pasal dan Ayat
-BCVNum.ToolTip=Tampilkan No Kitab, Pasal dan Ayat
-Back.Name=Alias.Back
-Back.ToolTip=Kembali ke sebelumnya
-Books.Name=Buku ...
-Books.ToolTip=Buku Tersedia
-CVNum.Name=Tampilkan No Pasal dan Ayat
-CVNum.ToolTip=Tampilkan No Pasal dan Ayat
-ClearView.MnemonicKey=K
-ClearView.Name=Kosongkan ayat
-ClearView.ToolTip=Kosongkan ayat
-CloseAllViews.MnemonicKey=S
-CloseAllViews.Name=Tutup Semua Tampilan
-CloseAllViews.ToolTip=Tutup Semua Tampilan
-CloseOtherViews.MnemonicKey=L
-CloseOtherViews.Name=Tutup Tampilan Lain
-CloseOtherViews.ToolTip=Tutup Tampilan Lain
-CloseView.AcceleratorKey=0x73
-CloseView.AcceleratorKey.Modifiers=ctrl
-CloseView.MnemonicKey=C
-CloseView.Name=Tutup Tampilan
-CloseView.ToolTip=Tutup Tampilan
-CompareToggle.Name=Tampilan Permbanding
-CompareToggle.ToolTip=Tuas untuk Pembanding antar Alkitab
-Contents.AcceleratorKey=0x70
-Contents.MnemonicKey=K
-Contents.Name=Kontents ...
-Contents.ToolTip=Kontents Bantuan.
-Copy.Name=Alias.Copy
-Copy.ToolTip=Copy the selection.
-Cut.Name=Alias.Cut
-Cut.ToolTip=Cut the selection.
-Edit.Name=Alias.Edit
-Edit.ToolTip=Edit
-Exit.AcceleratorKey=0x73
-Exit.AcceleratorKey.Modifiers=alt
-Exit.MnemonicKey=e
-Exit.Name=Keluar
-Exit.ToolTip=Keluar dari Aplikasi.
-File.MnemonicKey=B
-File.Name=Berkas
-File.ToolTip=Berkas
-Forward.Name=Alias.Forward
-Forward.ToolTip=Ke pasal berikut
-Go.MnemonicKey=G
-Go.Name=Alias.Go
-Go.ToolTip=Go
-Headings.Name=Tampilkan Headings
-Headings.ToolTip=Tampilkan Headings
-Help.MnemonicKey=B
-Help.Name=Alias.Help
-Help.ToolTip=Bantuan
-JournalToggle.AcceleratorKey=J
-JournalToggle.AcceleratorKey.Modifiers=ctrl
-JournalToggle.MnemonicKey=J
-JournalToggle.Name=Tampilan Jurnal Web
-JournalToggle.ToolTip=Tuas Tampilan Jurnal Web
-Morph.Name=Tampilkan Ilmu Bentuk Kata (Morphology)
-Morph.ToolTip=Tampilkan Ilmu Bentuk Kata (Morphology) sebagai Links
-NewTab.AcceleratorKey=N
-NewTab.AcceleratorKey.Modifiers=ctrl
-NewTab.MnemonicKey=T
-NewTab.Name=Tampilan Baru
-NewTab.ToolTip=Membuka Tampilan Baru
-NoVNum.Name=Sembunyikan No Ayat
-NoVNum.ToolTip=Sembunyikan No Ayat
-Notes.Name=Tampilkan Catatan Belajar
-Notes.ToolTip=Tampilkan Catatan Belajar
-Open.AcceleratorKey=O
-Open.AcceleratorKey.Modifiers=ctrl
-Open.MnemonicKey=B
-Open.Name=Buka ...
-Open.ToolTip=Buka ayat.
-Options.MnemonicKey=O
-Options.Name=Opsi ...
-Options.ToolTip=Merubah Opsi.
-Paste.AcceleratorKey=V
-Paste.AcceleratorKey.Modifiers=ctrl
-Paste.MnemonicKey=P
-Paste.Name=Paste
-Paste.ToolTip=Paste the selection.
-Print.AcceleratorKey=P
-Print.AcceleratorKey.Modifiers=ctrl
-Print.MnemonicKey=C
-Print.Name=Cetak
-Print.ToolTip=Cetak Ayat.
-Save.AcceleratorKey=S
-Save.AcceleratorKey.Modifiers=ctrl
-Save.MnemonicKey=S
-Save.Name=Simpan ...
-Save.ToolTip=Simpan Ayat.
-SaveAll.AcceleratorKey=S
-SaveAll.AcceleratorKey.Modifiers=ctrl,shift
-SaveAll.MnemonicKey=S
-SaveAll.Name=Simpan Semua
-SaveAll.ToolTip=Simpan Semua Ayat
-SaveAs.AcceleratorKey=A
-SaveAs.AcceleratorKey.Modifiers=ctrl,shift
-SaveAs.MnemonicKey=A
-SaveAs.Name=Simpan Sebagai ...
-SaveAs.ToolTip=Simpan ayat dengan nama baru.
-Scripting.MnemonicKey=S
-Scripting.Name=Scripting ...
-Scripting.ToolTip=Jalankan perintah dalam bahasa script.
-SidebarToggle.AcceleratorKey=B
-SidebarToggle.AcceleratorKey.Modifiers=ctrl
-SidebarToggle.MnemonicKey=B
-SidebarToggle.Name=Tampilan Sidebar
-SidebarToggle.ToolTip=Tuas untuk Sidebar
-StatusToggle.MnemonicKey=A
-StatusToggle.Name=Tampilkan Status
-StatusToggle.ToolTip=Tampilkan Status
-Strongs.Name=Tampilkan Ilmu Bentuk Kata (Strong's)
-Strongs.ToolTip=Tampilkan Ilmu Bentuk Kata (Strong's) sebagai Links
-TabMode.MnemonicKey=T
-TabMode.Name=Mode Tabbed
-TabMode.ToolTip=Melihat ayat dengan tampilan Tab
-TinyVNum.Name=Menggunakan huruf kecil untuk No Ayat
-TinyVNum.ToolTip=Menggunakan huruf kecil untuk No Ayat
-ToolTipToggle.AcceleratorKey=T
-ToolTipToggle.AcceleratorKey.Modifiers=ctrl
-ToolTipToggle.MnemonicKey=T
-ToolTipToggle.Name=Tampilkan Tool Tips
-ToolTipToggle.ToolTip=Tuas Tampilan Tool Tips
-Tools.MnemonicKey=P
-Tools.Name=Perkakas
-Tools.ToolTip=Perkakas
-VLine.Name=Ayat dimulai dari Baris Baru
-VLine.ToolTip=Ayat dimulai dari Baris Baru
-VNum.Name=Tampilkan No Ayat
-VNum.ToolTip=Tampilkan No Ayat
-Verse.Name=No Ayat
-Verse.ToolTip=Tampilan untuk no ayat
-View.MnemonicKey=T
-View.Name=Tampilan
-View.ToolTip=Tampilan
-ViewSource.AcceleratorKey=U
-ViewSource.AcceleratorKey.Modifiers=ctrl
-ViewSource.MnemonicKey=U
-ViewSource.Name=Tampilkan Sumber/Asal
-ViewSource.ToolTip=Tampilkan sumber HTML dan OSIS
-WindowMode.MnemonicKey=M
-WindowMode.Name=Mode Sub-Jendela
-WindowMode.ToolTip=Melihat ayat dengan tampilan Sub-Jendela
-XRef.Name=Tampilkan Referensi Silang
-XRef.ToolTip=Tampilkan Referensi Silang
+About.Name    = Mengenai ...
+About.ToolTip = Informasi mengenai Bible Desktop
+
+BCVNum.Name    = Tampilkan No Kitab, Pasal dan Ayat
+BCVNum.ToolTip = Tampilkan No Kitab, Pasal dan Ayat
+
+Back.Name    = Alias.Back
+Back.ToolTip = Kembali ke sebelumnya
+
+Books.Name    = Buku ...
+Books.ToolTip = Buku Tersedia
+
+CVNum.Name    = Tampilkan No Pasal dan Ayat
+CVNum.ToolTip = Tampilkan No Pasal dan Ayat
+
+ClearView.Name    = &Kosongkan ayat
+ClearView.ToolTip = Kosongkan ayat
+
+CloseAllViews.Name    = Tutup &Semua Tampilan
+CloseAllViews.ToolTip = Tutup Semua Tampilan
+
+CloseOtherViews.Name    = Tutup Tampilan &Lain
+CloseOtherViews.ToolTip = Tutup Tampilan Lain
+
+CloseView.AcceleratorKey = 0x73,ctrl
+CloseView.Name           = Tutup Tampilan
+CloseView.ToolTip        = Tutup Tampilan
+
+CompareToggle.Name    = Tampilan Permbanding
+CompareToggle.ToolTip = Tuas untuk Pembanding antar Alkitab
+
+Contents.AcceleratorKey = 0x70
+Contents.Name           = &Kontents ...
+Contents.ToolTip        = Kontents Bantuan.
+
+Copy.Name    = Alias.Copy
+Copy.ToolTip = Copy the selection.
+
+Cut.Name    = Alias.Cut
+Cut.ToolTip = Cut the selection.
+
+Edit.Name    = Alias.Edit
+Edit.ToolTip = Edit
+
+Exit.AcceleratorKey = 0x73,alt
+Exit.Name           = K&eluar
+Exit.ToolTip        = Keluar dari Aplikasi.
+
+File.Name    = &Berkas
+File.ToolTip = Berkas
+
+Forward.Name    = Alias.Forward
+Forward.ToolTip = Ke pasal berikut
+
+Go.Name    = Alias.Go
+Go.ToolTip = Go
+
+Headings.Name    = Tampilkan Headings
+Headings.ToolTip = Tampilkan Headings
+
+Help.Name    = Alias.Help
+Help.ToolTip = Bantuan
+
+JournalToggle.AcceleratorKey = J,ctrl
+JournalToggle.Name           = Tampilan &Jurnal Web
+JournalToggle.ToolTip        = Tuas Tampilan Jurnal Web
+
+Morph.Name    = Tampilkan Ilmu Bentuk Kata (Morphology)
+Morph.ToolTip = Tampilkan Ilmu Bentuk Kata (Morphology) sebagai Links
+
+NewTab.AcceleratorKey = N,ctrl
+NewTab.Name           = &Tampilan Baru
+NewTab.ToolTip        = Membuka Tampilan Baru
+
+NoVNum.Name    = Sembunyikan No Ayat
+NoVNum.ToolTip = Sembunyikan No Ayat
+
+Notes.Name    = Tampilkan Catatan Belajar
+Notes.ToolTip = Tampilkan Catatan Belajar
+
+Open.AcceleratorKey = O,ctrl
+Open.Name           = &Buka ...
+Open.ToolTip        = Buka ayat.
+
+Options.Name    = &Opsi ...
+Options.ToolTip = Merubah Opsi.
+
+Paste.AcceleratorKey = V,ctrl
+Paste.Name           = &Paste
+Paste.ToolTip        = Paste the selection.
+
+Print.AcceleratorKey = P,ctrl
+Print.Name           = &Cetak
+Print.ToolTip        = Cetak Ayat.
+
+Save.AcceleratorKey    = S,ctrl
+Save.Name              = &Simpan ...
+Save.ToolTip           = Simpan Ayat.
+
+SaveAll.AcceleratorKey = S,ctrl,shift
+SaveAll.Name           = &Simpan Semua
+SaveAll.ToolTip        = Simpan Semua Ayat
+
+SaveAs.AcceleratorKey = A,ctrl,shift
+SaveAs.Name           = Simp&an Sebagai ...
+SaveAs.ToolTip        = Simpan ayat dengan nama baru.
+
+Scripting.Name    = Scripting ...
+Scripting.ToolTip = Jalankan perintah dalam bahasa script.
+
+SidebarToggle.AcceleratorKey = B,ctrl
+SidebarToggle.Name           = Tampilan Side&bar
+SidebarToggle.ToolTip        = Tuas untuk Sidebar
+
+StatusToggle.Name    = Tampilkan St&atus
+StatusToggle.ToolTip = Tampilkan Status
+
+Strongs.Name    = Tampilkan Ilmu Bentuk Kata (Strong's)
+Strongs.ToolTip = Tampilkan Ilmu Bentuk Kata (Strong's) sebagai Links
+
+TabMode.Name    = Mode &Tabbed
+TabMode.ToolTip = Melihat ayat dengan tampilan Tab
+
+TinyVNum.Name    = Menggunakan huruf kecil untuk No Ayat
+TinyVNum.ToolTip = Menggunakan huruf kecil untuk No Ayat
+
+ToolTipToggle.AcceleratorKey = T,ctrl
+ToolTipToggle.Name           = Tampilkan Tool Tips
+ToolTipToggle.ToolTip        = Tuas Tampilan Tool Tips
+
+Tools.Name    = &Perkakas
+Tools.ToolTip = Perkakas
+
+VLine.Name    = Ayat dimulai dari Baris Baru
+VLine.ToolTip = Ayat dimulai dari Baris Baru
+
+VNum.Name    = Tampilkan No Ayat
+VNum.ToolTip = Tampilkan No Ayat
+
+Verse.Name    = No Ayat
+Verse.ToolTip = Tampilan untuk no ayat
+
+View.Name                 = &Tampilan
+View.ToolTip              = Tampilan
+
+ViewSource.AcceleratorKey = U,ctrl
+ViewSource.Name           = Tampilkan S&umber/Asal
+ViewSource.ToolTip        = Tampilkan sumber HTML dan OSIS
+
+WindowMode.Name    = &Mode Sub-Jendela
+WindowMode.ToolTip = Melihat ayat dengan tampilan Sub-Jendela
+
+XRef.Name    = Tampilkan Referensi Silang
+XRef.ToolTip = Tampilkan Referensi Silang

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_tr.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_tr.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_tr.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,150 +1,155 @@
 
-About.MnemonicKey=
-About.Name=About ...
-About.ToolTip=Information about Bible Desktop
-BCVNum.Name=Show Book, Chapter and Verse Numbers
-BCVNum.ToolTip=Show Book, Chapter and Verse numbers
-Back.Name=Alias.Back
-Back.ToolTip=Go back to previous passage.
-Books.Name=Books ...
-Books.ToolTip=Display/Install Books
-CVNum.Name=Show Chapter and Verse Numbers
-CVNum.ToolTip=Show Chapter and Verse numbers
-ClearView.MnemonicKey=
-ClearView.Name=Clear the current view
-ClearView.ToolTip=Clear the current view's passages
-CloseAllViews.MnemonicKey=
-CloseAllViews.Name=Close All Views
-CloseAllViews.ToolTip=Close All Passages
-CloseOtherViews.MnemonicKey=
-CloseOtherViews.Name=Close Other Views
-CloseOtherViews.ToolTip=Close Other Passages
-CloseView.AcceleratorKey=0x73
-CloseView.AcceleratorKey.Modifiers=ctrl
-CloseView.MnemonicKey=
-CloseView.Name=Close the current view
-CloseView.ToolTip=Close the current view
-CompareToggle.Name=Show Differences
-CompareToggle.ToolTip=Toggle display of differences between different Bibles
-Contents.AcceleratorKey=0x70
-Contents.MnemonicKey=
-Contents.Name=Contents ...
-Contents.ToolTip=Help file contents.
-Copy.Name=Alias.Copy
-Copy.ToolTip=Copy the selection.
-Cut.Name=Alias.Cut
-Cut.ToolTip=Cut the selection.
-Edit.Name=Ara\u015Ft\u0131rmak
-Edit.ToolTip=Ara\u015Ft\u0131rmak
-Exit.AcceleratorKey=0x73
-Exit.AcceleratorKey.Modifiers=alt
-Exit.MnemonicKey=
-Exit.Name=Exit
-Exit.ToolTip=Exit the Desktop application.
-File.MnemonicKey=
-File.Name=Dosya
-File.ToolTip=Dosya
-Forward.Name=Alias.Forward
-Forward.ToolTip=Go forward to next passage.
-Go.MnemonicKey=G
-Go.Name=Git
-Go.ToolTip=Git
-Headings.Name=Show Headings
-Headings.ToolTip=Show Headings
-Help.MnemonicKey=
-Help.Name=Yard\u0131m
-Help.ToolTip=Yard\u0131m
-JournalToggle.AcceleratorKey=J
-JournalToggle.AcceleratorKey.Modifiers=ctrl
-JournalToggle.MnemonicKey=J
-JournalToggle.Name=Show the Web Journal
-JournalToggle.ToolTip=Toggle display of the Web Journal
-Morph.Name=Show Word Morphology
-Morph.ToolTip=Show Word Morphology as Links
-NewTab.AcceleratorKey=N
-NewTab.AcceleratorKey.Modifiers=ctrl
-NewTab.MnemonicKey=N
-NewTab.Name=New Bible View
-NewTab.ToolTip=Open a new Bible View
-NoVNum.Name=Hide Verse Numbers
-NoVNum.ToolTip=Hide Verse numbers
-Notes.Name=Show Study Notes
-Notes.ToolTip=Show Study Notes
-Open.AcceleratorKey=O
-Open.AcceleratorKey.Modifiers=ctrl
-Open.MnemonicKey=O
-Open.Name=Open ...
-Open.ToolTip=Open a saved passage.
-Options.MnemonicKey=O
-Options.Name=Options ...
-Options.ToolTip=Alter system settings.
-Paste.AcceleratorKey=V
-Paste.AcceleratorKey.Modifiers=ctrl
-Paste.MnemonicKey=P
-Paste.Name=Paste
-Paste.ToolTip=Paste the selection.
-Print.AcceleratorKey=P
-Print.AcceleratorKey.Modifiers=ctrl
-Print.MnemonicKey=P
-Print.Name=Print
-Print.ToolTip=Print the current passage.
-Save.AcceleratorKey=S
-Save.AcceleratorKey.Modifiers=ctrl
-Save.MnemonicKey=S
-Save.Name=Save ...
-Save.ToolTip=Save the current passage.
-SaveAll.AcceleratorKey=S
-SaveAll.AcceleratorKey.Modifiers=ctrl,shift
-SaveAll.MnemonicKey=S
-SaveAll.Name=Save All
-SaveAll.ToolTip=Save All Passages
-SaveAs.AcceleratorKey=A
-SaveAs.AcceleratorKey.Modifiers=ctrl,shift
-SaveAs.MnemonicKey=A
-SaveAs.Name=Save As ...
-SaveAs.ToolTip=Save the current passage under a different name.
-Scripting.MnemonicKey=S
-Scripting.Name=Scripting ...
-Scripting.ToolTip=Run some commands in a scripting language.
-SidebarToggle.AcceleratorKey=B
-SidebarToggle.AcceleratorKey.Modifiers=ctrl
-SidebarToggle.MnemonicKey=B
-SidebarToggle.Name=Show the Passage Sidebar
-SidebarToggle.ToolTip=Toggle display of the Passage Sidebar
-StatusToggle.MnemonicKey=A
-StatusToggle.Name=Show the Status Area
-StatusToggle.ToolTip=Toggle display of the status area
-Strongs.Name=Show Strong's Links
-Strongs.ToolTip=Show Strong's Numbers as Links
-TabMode.MnemonicKey=T
-TabMode.Name=Tabbed Mode
-TabMode.ToolTip=View passages using tabs
-TinyVNum.Name=Use Small Verse Numbers
-TinyVNum.ToolTip=Use small verse numbers
-ToolTipToggle.AcceleratorKey=T
-ToolTipToggle.AcceleratorKey.Modifiers=ctrl
-ToolTipToggle.MnemonicKey=T
-ToolTipToggle.Name=Show Tool Tips
-ToolTipToggle.ToolTip=Toggle display of tool tips
-Tools.MnemonicKey=
-Tools.Name=Aletler
-Tools.ToolTip=Aletler
-VLine.Name=Start Verses on Separate Lines
-VLine.ToolTip=Each verse starts on a new line.
-VNum.Name=Show Verse Numbers
-VNum.ToolTip=Show Verse numbers
-Verse.Name=Verse Numbers
-Verse.ToolTip=Set the style for verse numbers
-View.MnemonicKey=
-View.Name=Tema\u015Fa
-View.ToolTip=Tema\u015Fa
-ViewSource.AcceleratorKey=U
-ViewSource.AcceleratorKey.Modifiers=ctrl
-ViewSource.MnemonicKey=U
-ViewSource.Name=View Source
-ViewSource.ToolTip=View the HTML and OSIS source to the current window
-WindowMode.MnemonicKey=M
-WindowMode.Name=Sub-Window Mode
-WindowMode.ToolTip=View passages using sub-windows
-XRef.Name=Use Cross Reference Linkings
-XRef.ToolTip=Use cross reference links
+About.Name    = About ...
+About.ToolTip = Information about Bible Desktop
+
+BCVNum.Name    = Show Book, Chapter and Verse Numbers
+BCVNum.ToolTip = Show Book, Chapter and Verse numbers
+
+Back.Name    = Alias.Back
+Back.ToolTip = Go back to previous passage.
+
+Books.Name    = Books ...
+Books.ToolTip = Display/Install Books
+
+CVNum.Name    = Show Chapter and Verse Numbers
+CVNum.ToolTip = Show Chapter and Verse numbers
+
+ClearView.Name    = Clear the current view
+ClearView.ToolTip = Clear the current view's passages
+
+CloseAllViews.Name    = Close All Views
+CloseAllViews.ToolTip = Close All Passages
+
+CloseOtherViews.Name    = Close Other Views
+CloseOtherViews.ToolTip = Close Other Passages
+
+CloseView.AcceleratorKey = 0x73,ctrl
+CloseView.Name           = Close the current view
+CloseView.ToolTip        = Close the current view
+
+CompareToggle.Name    = Show Differences
+CompareToggle.ToolTip = Toggle display of differences between different Bibles
+
+Contents.AcceleratorKey = 0x70
+Contents.Name           = Contents ...
+Contents.ToolTip        = Help file contents.
+
+Copy.Name    = Alias.Copy
+Copy.ToolTip = Copy the selection.
+
+Cut.Name    = Alias.Cut
+Cut.ToolTip = Cut the selection.
+
+Edit.Name    = Ara\u015Ft\u0131rmak
+Edit.ToolTip = Ara\u015Ft\u0131rmak
+
+Exit.AcceleratorKey = 0x73,alt
+Exit.Name           = Exit
+Exit.ToolTip        = Exit the Desktop application.
+
+File.Name    = Dosya
+File.ToolTip = Dosya
+
+Forward.Name    = Alias.Forward
+Forward.ToolTip = Go forward to next passage.
+
+Go.Name    = Git
+Go.ToolTip = Git
+
+Headings.Name    = Show Headings
+Headings.ToolTip = Show Headings
+
+Help.Name    = Yard\u0131m
+Help.ToolTip = Yard\u0131m
+
+JournalToggle.AcceleratorKey = J,ctrl
+JournalToggle.Name           = Show the Web Journal
+JournalToggle.ToolTip        = Toggle display of the Web Journal
+
+Morph.Name    = Show Word Morphology
+Morph.ToolTip = Show Word Morphology as Links
+
+NewTab.AcceleratorKey = N,ctrl
+NewTab.Name           = New Bible View
+NewTab.ToolTip        = Open a new Bible View
+
+NoVNum.Name    = Hide Verse Numbers
+NoVNum.ToolTip = Hide Verse numbers
+
+Notes.Name    = Show Study Notes
+Notes.ToolTip = Show Study Notes
+
+Open.AcceleratorKey = O,ctrl
+Open.Name           = Open ...
+Open.ToolTip        = Open a saved passage.
+
+Options.Name    = Options ...
+Options.ToolTip = Alter system settings.
+
+Paste.AcceleratorKey = V,ctrl
+Paste.Name           = Paste
+Paste.ToolTip        = Paste the selection.
+
+Print.AcceleratorKey = P,ctrl
+Print.Name           = Print
+Print.ToolTip        = Print the current passage.
+
+Save.AcceleratorKey    = S,ctrl
+Save.Name              = Save ...
+Save.ToolTip           = Save the current passage.
+
+SaveAll.AcceleratorKey = S,ctrl,shift
+SaveAll.Name           = Save All
+SaveAll.ToolTip        = Save All Passages
+
+SaveAs.AcceleratorKey = A,ctrl,shift
+SaveAs.Name           = Save As ...
+SaveAs.ToolTip        = Save the current passage under a different name.
+
+Scripting.Name    = Scripting ...
+Scripting.ToolTip = Run some commands in a scripting language.
+
+SidebarToggle.AcceleratorKey = B,ctrl
+SidebarToggle.Name           = Show the Passage Sidebar
+SidebarToggle.ToolTip        = Toggle display of the Passage Sidebar
+
+StatusToggle.Name    = Show the Status Area
+StatusToggle.ToolTip = Toggle display of the status area
+
+Strongs.Name    = Show Strong's Links
+Strongs.ToolTip = Show Strong's Numbers as Links
+
+TabMode.Name    = Tabbed Mode
+TabMode.ToolTip = View passages using tabs
+
+TinyVNum.Name    = Use Small Verse Numbers
+TinyVNum.ToolTip = Use small verse numbers
+
+ToolTipToggle.AcceleratorKey = T,ctrl
+ToolTipToggle.Name           = Show Tool Tips
+ToolTipToggle.ToolTip        = Toggle display of tool tips
+
+Tools.Name    = Aletler
+Tools.ToolTip = Aletler
+
+VLine.Name    = Start Verses on Separate Lines
+VLine.ToolTip = Each verse starts on a new line.
+
+VNum.Name    = Show Verse Numbers
+VNum.ToolTip = Show Verse numbers
+
+Verse.Name    = Verse Numbers
+Verse.ToolTip = Set the style for verse numbers
+
+View.Name                 = Tema\u015Fa
+View.ToolTip              = Tema\u015Fa
+
+ViewSource.AcceleratorKey = U,ctrl
+ViewSource.Name           = View Source
+ViewSource.ToolTip        = View the HTML and OSIS source to the current window
+
+WindowMode.Name    = Sub-Window Mode
+WindowMode.ToolTip = View passages using sub-windows
+
+XRef.Name    = Use Cross Reference Linkings
+XRef.ToolTip = Use cross reference links

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_vi.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_vi.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_vi.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,150 +1,155 @@
 
-About.MnemonicKey=
-About.Name=V\u1EC1 ...
-About.ToolTip=Th\u00F4ng Tin v\u1EC1 Bible Desktop
-BCVNum.Name=Hi\u1EC7n T\u00EAn S\u00E1ch, S\u1ED1 Ch\u01B0\u01A1ng v\u00E0 C\u00E2u
-BCVNum.ToolTip=Hi\u1EC7n T\u00EAn S\u00E1ch, S\u1ED1 Ch\u01B0\u01A1ng v\u00E0 C\u00E2u
-Back.Name=Alias.Back
-Back.ToolTip=Quay l\u1EA1i ph\u00E2n \u0111o\u1EA1n v\u1EEBa qua.
-Books.Name=C\u00E1c S\u00E1ch ...
-Books.ToolTip=Hi\u1EC7n/C\u00E0i \u0110\u1EB7t S\u00E1ch
-CVNum.Name=Hi\u1EC7n S\u1ED1 Ch\u01B0\u01A1ng v\u00E0 C\u00E2u
-CVNum.ToolTip=Hi\u1EC7n S\u1ED1 Ch\u01B0\u01A1ng v\u00E0 C\u00E2u
-ClearView.MnemonicKey=
-ClearView.Name=Xo\u00E1 c\u1EEDa s\u1ED5 hi\u1EC7n th\u1EDDi
-ClearView.ToolTip=Xo\u00E1 c\u00E1c ph\u00E2n \u0111o\u1EA1n trong c\u1EEDa s\u1ED5 hi\u1EC7n th\u1EDDi
-CloseAllViews.MnemonicKey=
-CloseAllViews.Name=\u0110\u00F3ng C\u00E1c C\u1EEDa S\u1ED5
-CloseAllViews.ToolTip=\u0110\u00F3ng C\u00E1c C\u1EEDa S\u1ED5
-CloseOtherViews.MnemonicKey=
-CloseOtherViews.Name=\u0110\u00F3ng C\u00E1c C\u1EEDa S\u1ED5 Kh\u00E1c
-CloseOtherViews.ToolTip=\u0110\u00F3ng C\u00E1c C\u1EEDa S\u1ED5 Kh\u00E1c
-CloseView.AcceleratorKey=0x73
-CloseView.AcceleratorKey.Modifiers=ctrl
-CloseView.MnemonicKey=
-CloseView.Name=\u0110\u00F3ng c\u1EEDa s\u1ED5 hi\u1EC7n th\u1EDDi
-CloseView.ToolTip=\u0110\u00F3ng c\u1EEDa s\u1ED5 hi\u1EC7n th\u1EDDi
-CompareToggle.Name=So S\u00E1nh B\u1EA3n D\u1ECBch
-CompareToggle.ToolTip=So S\u00E1nh B\u1EA3n D\u1ECBch
-Contents.AcceleratorKey=0x70
-Contents.MnemonicKey=
-Contents.Name=N\u1ED9i Dung ...
-Contents.ToolTip=N\u1ED9i Dung T\u1EADp Tin Tr\u1EE3 Gi\u00FAp.
-Copy.Name=Ch\u00E9p
-Copy.ToolTip=Ch\u00E9p v\u00F9ng ch\u1ECDn hi\u1EC7n th\u1EDDi.
-Cut.Name=C\u1EAFt
-Cut.ToolTip=C\u1EAFt v\u00F9ng ch\u1ECDn hi\u1EC7n th\u1EDDi.
-Edit.Name=Alias.Edit
-Edit.ToolTip=S\u1EEDa
-Exit.AcceleratorKey=0x73
-Exit.AcceleratorKey.Modifiers=alt
-Exit.MnemonicKey=
-Exit.Name=Tho\u00E1t
-Exit.ToolTip=Tho\u00E1t ch\u01B0\u01A1ng tr\u00ECnh.
-File.MnemonicKey=
-File.Name=T\u1EADp Tin
-File.ToolTip=T\u1EADp Tin
-Forward.Name=Alias.Forward
-Forward.ToolTip=\u0110i t\u1EDBi ph\u00E2n \u0111o\u1EA1n k\u1EBF ti\u1EBFp.
-Go.MnemonicKey=
-Go.Name=Alias.Go
-Go.ToolTip=Chuy\u1EC3n
-Headings.Name=Hi\u1EC7n Ti\u00EAu \u0110\u1EC1
-Headings.ToolTip=Hi\u1EC7n Ti\u00EAu \u0110\u1EC1
-Help.MnemonicKey=
-Help.Name=Alias.Help
-Help.ToolTip=Tr\u1EE3 Gi\u00FAp
-JournalToggle.AcceleratorKey=J
-JournalToggle.AcceleratorKey.Modifiers=ctrl
-JournalToggle.MnemonicKey=J
-JournalToggle.Name=Hi\u1EC7n Web Journal
-JournalToggle.ToolTip=B\u1EADt/t\u1EAFt hi\u1EC3n th\u1ECB Web Journal
-Morph.Name=Hi\u1EC7n H\u00ECnh Th\u00E1i H\u1ECDc c\u1EE7a T\u1EEB Ng\u1EEF
-Morph.ToolTip=Hi\u1EC7n H\u00ECnh Th\u00E1i H\u1ECDc c\u1EE7a T\u1EEB Ng\u1EEF nh\u01B0 Li\u00EAn K\u1EBFt
-NewTab.AcceleratorKey=N
-NewTab.AcceleratorKey.Modifiers=ctrl
-NewTab.MnemonicKey=
-NewTab.Name=M\u1EDF C\u1EEDa S\u1ED5 Kinh Th\u00E1nh M\u1EDBi
-NewTab.ToolTip=M\u1EDF C\u1EEDa S\u1ED5 Kinh Th\u00E1nh M\u1EDBi
-NoVNum.Name=Gi\u1EA5u S\u1ED1 C\u00E2u
-NoVNum.ToolTip=Gi\u1EA5u S\u1ED1 C\u00E2u
-Notes.Name=Hi\u1EC7n Ghi Ch\u00FA Nghi\u00EAn C\u1EE9u
-Notes.ToolTip=Hi\u1EC7n Ghi Ch\u00FA Nghi\u00EAn C\u1EE9u
-Open.AcceleratorKey=O
-Open.AcceleratorKey.Modifiers=ctrl
-Open.MnemonicKey=
-Open.Name=M\u1EDF ...
-Open.ToolTip=M\u1EDF ph\u00E2n \u0111o\u1EA1n \u0111\u01B0\u1EE3c l\u01B0u.
-Options.MnemonicKey=
-Options.Name=T\u00F9y Ch\u1ECDn ...
-Options.ToolTip=\u0110i\u1EC1u khi\u1EC3n thi\u1EBFt l\u1EADp h\u1EC7 th\u1ED1ng.
-Paste.AcceleratorKey=V
-Paste.AcceleratorKey.Modifiers=alt
-Paste.MnemonicKey=
-Paste.Name=D\u00E1n
-Paste.ToolTip=D\u00E1n v\u00F9ng ch\u1ECDn hi\u1EC7n th\u1EDDi.
-Print.AcceleratorKey=P
-Print.AcceleratorKey.Modifiers=ctrl
-Print.MnemonicKey=
-Print.Name=In
-Print.ToolTip=In ph\u00E2n \u0111o\u1EA1n hi\u1EC7n th\u1EDDi.
-Save.AcceleratorKey=S
-Save.AcceleratorKey.Modifiers=ctrl
-Save.MnemonicKey=
-Save.Name=L\u01B0u ...
-Save.ToolTip=L\u01B0u ph\u00E2n \u0111o\u1EA1n hi\u1EC7n th\u1EDDi.
-SaveAll.AcceleratorKey=S
-SaveAll.AcceleratorKey.Modifiers=ctrl,shift
-SaveAll.MnemonicKey=
-SaveAll.Name=L\u01B0u T\u1EA5t C\u1EA3
-SaveAll.ToolTip=L\u01B0u T\u1EA5t C\u1EA3 C\u00E1c Ph\u00E2n \u0110o\u1EA1n
-SaveAs.AcceleratorKey=A
-SaveAs.AcceleratorKey.Modifiers=ctrl,shift
-SaveAs.MnemonicKey=
-SaveAs.Name=L\u01B0u nh\u01B0 ...
-SaveAs.ToolTip=L\u01B0u ph\u00E2n \u0111o\u1EA1n theo t\u00EAn kh\u00E1c.
-Scripting.MnemonicKey=
-Scripting.Name=Scripting ...
-Scripting.ToolTip=Ch\u1EA1y c\u00E2u l\u1EC7nh trong ng\u00F4n ng\u1EEF scripting.
-SidebarToggle.AcceleratorKey=B
-SidebarToggle.AcceleratorKey.Modifiers=ctrl
-SidebarToggle.MnemonicKey=
-SidebarToggle.Name=Hi\u1EC7n Thanh B\u00EAn Ph\u00E2n \u0110o\u1EA1n
-SidebarToggle.ToolTip=B\u1EADt/T\u1EAFt Hi\u1EC3n Th\u1ECB Thanh B\u00EAn Ph\u00E2n \u0110o\u1EA1n
-StatusToggle.MnemonicKey=
-StatusToggle.Name=Hi\u1EC7n V\u00F9ng Tr\u1EA1ng Th\u00E1i
-StatusToggle.ToolTip=B\u1EADt/T\u1EAFt Hi\u1EC3n Th\u1ECB Tr\u1EA1ng Th\u00E1i
-Strongs.Name=Hi\u1EC7n Li\u00EAn K\u1EBFt Strong's
-Strongs.ToolTip=Hi\u1EC7n S\u1ED1 Strong's nh\u01B0 Li\u00EAn K\u1EBFt
-TabMode.MnemonicKey=
-TabMode.Name=Ch\u1EBF \u0110\u1ED9 Th\u1EBB Tab
-TabMode.ToolTip=Xem Ph\u00E2n \u0110o\u1EA1n D\u00F9ng C\u1EEDa S\u1ED5 C\u00F3 Th\u1EBB Tab
-TinyVNum.Name=D\u00F9ng S\u1ED1 C\u00E2u Nh\u1ECF
-TinyVNum.ToolTip=D\u00F9ng S\u1ED1 C\u00E2u Nh\u1ECF
-ToolTipToggle.AcceleratorKey=T
-ToolTipToggle.AcceleratorKey.Modifiers=ctrl
-ToolTipToggle.MnemonicKey=
-ToolTipToggle.Name=Hi\u1EC7n M\u00E1ch N\u01B0\u1EDBc C\u00F4ng C\u1EE5
-ToolTipToggle.ToolTip=B\u1EADt/T\u1EAFt Hi\u1EC3n Th\u1ECB M\u00E1ch N\u01B0\u1EDBc C\u00F4ng C\u1EE5
-Tools.MnemonicKey=
-Tools.Name=C\u00F4ng C\u1EE5
-Tools.ToolTip=C\u00F4ng C\u1EE5
-VLine.Name=T\u1EEBng C\u00E2u B\u1EAFt \u0110\u1EA7u D\u00F2ng M\u1EDBi
-VLine.ToolTip=T\u1EEBng c\u00E2u b\u1EAFt \u0111\u1EA7u d\u00F2ng m\u1EDBi.
-VNum.Name=Hi\u1EC7n S\u1ED1 C\u00E2u
-VNum.ToolTip=Hi\u1EC7n S\u1ED1 C\u00E2u
-Verse.Name=S\u1ED1 C\u00E2u
-Verse.ToolTip=Ch\u1ECDn Ki\u1EC3u S\u1ED1 C\u00E2u
-View.MnemonicKey=
-View.Name=Xem
-View.ToolTip=Xem
-ViewSource.AcceleratorKey=U
-ViewSource.AcceleratorKey.Modifiers=ctrl
-ViewSource.MnemonicKey=
-ViewSource.Name=Xem Ngu\u1ED3n
-ViewSource.ToolTip=Xem HTML v\u00E0 ngu\u1ED3n OSIS c\u1EE7a c\u1EEDa s\u1ED5 hi\u1EC7n th\u1EDDi.
-WindowMode.MnemonicKey=
-WindowMode.Name=Ch\u1EBF \u0110\u1ED9 C\u1EEDa S\u1ED5 Ti\u1EC3u
-WindowMode.ToolTip=Xem Ph\u00E2n \u0110o\u1EA1n D\u00F9ng Ch\u1EBF \u0110\u1ED9 C\u1EEDa S\u1ED5 Ti\u1EC3u
-XRef.Name=D\u00F9ng Tham Chi\u1EBFu Ch\u00E9o
-XRef.ToolTip=D\u00F9ng Li\u00EAn K\u1EBFt Tham Chi\u1EBFu Ch\u00E9o
+About.Name    = V\u1EC1 ...
+About.ToolTip = Th\u00F4ng Tin v\u1EC1 Bible Desktop
+
+BCVNum.Name    = Hi\u1EC7n T\u00EAn S\u00E1ch, S\u1ED1 Ch\u01B0\u01A1ng v\u00E0 C\u00E2u
+BCVNum.ToolTip = Hi\u1EC7n T\u00EAn S\u00E1ch, S\u1ED1 Ch\u01B0\u01A1ng v\u00E0 C\u00E2u
+
+Back.Name    = Alias.Back
+Back.ToolTip = Quay l\u1EA1i ph\u00E2n \u0111o\u1EA1n v\u1EEBa qua.
+
+Books.Name    = C\u00E1c S\u00E1ch ...
+Books.ToolTip = Hi\u1EC7n/C\u00E0i \u0110\u1EB7t S\u00E1ch
+
+CVNum.Name    = Hi\u1EC7n S\u1ED1 Ch\u01B0\u01A1ng v\u00E0 C\u00E2u
+CVNum.ToolTip = Hi\u1EC7n S\u1ED1 Ch\u01B0\u01A1ng v\u00E0 C\u00E2u
+
+ClearView.Name    = Xo\u00E1 c\u1EEDa s\u1ED5 hi\u1EC7n th\u1EDDi
+ClearView.ToolTip = Xo\u00E1 c\u00E1c ph\u00E2n \u0111o\u1EA1n trong c\u1EEDa s\u1ED5 hi\u1EC7n th\u1EDDi
+
+CloseAllViews.Name    = \u0110\u00F3ng C\u00E1c C\u1EEDa S\u1ED5
+CloseAllViews.ToolTip = \u0110\u00F3ng C\u00E1c C\u1EEDa S\u1ED5
+
+CloseOtherViews.Name    = \u0110\u00F3ng C\u00E1c C\u1EEDa S\u1ED5 Kh\u00E1c
+CloseOtherViews.ToolTip = \u0110\u00F3ng C\u00E1c C\u1EEDa S\u1ED5 Kh\u00E1c
+
+CloseView.AcceleratorKey = 0x73,ctrl
+CloseView.Name           = \u0110\u00F3ng c\u1EEDa s\u1ED5 hi\u1EC7n th\u1EDDi
+CloseView.ToolTip        = \u0110\u00F3ng c\u1EEDa s\u1ED5 hi\u1EC7n th\u1EDDi
+
+CompareToggle.Name    = So S\u00E1nh B\u1EA3n D\u1ECBch
+CompareToggle.ToolTip = So S\u00E1nh B\u1EA3n D\u1ECBch
+
+Contents.AcceleratorKey = 0x70
+Contents.Name           = N\u1ED9i Dung ...
+Contents.ToolTip        = N\u1ED9i Dung T\u1EADp Tin Tr\u1EE3 Gi\u00FAp.
+
+Copy.Name    = Ch\u00E9p
+Copy.ToolTip = Ch\u00E9p v\u00F9ng ch\u1ECDn hi\u1EC7n th\u1EDDi.
+
+Cut.Name    = C\u1EAFt
+Cut.ToolTip = C\u1EAFt v\u00F9ng ch\u1ECDn hi\u1EC7n th\u1EDDi.
+
+Edit.Name    = Alias.Edit
+Edit.ToolTip = S\u1EEDa
+
+Exit.AcceleratorKey = 0x73,alt
+Exit.Name           = Tho\u00E1t
+Exit.ToolTip        = Tho\u00E1t ch\u01B0\u01A1ng tr\u00ECnh.
+
+File.Name    = T\u1EADp Tin
+File.ToolTip = T\u1EADp Tin
+
+Forward.Name    = Alias.Forward
+Forward.ToolTip = \u0110i t\u1EDBi ph\u00E2n \u0111o\u1EA1n k\u1EBF ti\u1EBFp.
+
+Go.Name    = Alias.Go
+Go.ToolTip = Chuy\u1EC3n
+
+Headings.Name    = Hi\u1EC7n Ti\u00EAu \u0110\u1EC1
+Headings.ToolTip = Hi\u1EC7n Ti\u00EAu \u0110\u1EC1
+
+Help.Name    = Alias.Help
+Help.ToolTip = Tr\u1EE3 Gi\u00FAp
+
+JournalToggle.AcceleratorKey = J,ctrl
+JournalToggle.Name           = Hi\u1EC7n Web Journal
+JournalToggle.ToolTip        = B\u1EADt/t\u1EAFt hi\u1EC3n th\u1ECB Web Journal
+
+Morph.Name    = Hi\u1EC7n H\u00ECnh Th\u00E1i H\u1ECDc c\u1EE7a T\u1EEB Ng\u1EEF
+Morph.ToolTip = Hi\u1EC7n H\u00ECnh Th\u00E1i H\u1ECDc c\u1EE7a T\u1EEB Ng\u1EEF nh\u01B0 Li\u00EAn K\u1EBFt
+
+NewTab.AcceleratorKey = N,ctrl
+NewTab.Name           = M\u1EDF C\u1EEDa S\u1ED5 Kinh Th\u00E1nh M\u1EDBi
+NewTab.ToolTip        = M\u1EDF C\u1EEDa S\u1ED5 Kinh Th\u00E1nh M\u1EDBi
+
+NoVNum.Name    = Gi\u1EA5u S\u1ED1 C\u00E2u
+NoVNum.ToolTip = Gi\u1EA5u S\u1ED1 C\u00E2u
+
+Notes.Name    = Hi\u1EC7n Ghi Ch\u00FA Nghi\u00EAn C\u1EE9u
+Notes.ToolTip = Hi\u1EC7n Ghi Ch\u00FA Nghi\u00EAn C\u1EE9u
+
+Open.AcceleratorKey = O,ctrl
+Open.Name           = M\u1EDF ...
+Open.ToolTip        = M\u1EDF ph\u00E2n \u0111o\u1EA1n \u0111\u01B0\u1EE3c l\u01B0u.
+
+Options.Name    = T\u00F9y Ch\u1ECDn ...
+Options.ToolTip = \u0110i\u1EC1u khi\u1EC3n thi\u1EBFt l\u1EADp h\u1EC7 th\u1ED1ng.
+
+Paste.AcceleratorKey = V,ctrl
+Paste.Name           = D\u00E1n
+Paste.ToolTip        = D\u00E1n v\u00F9ng ch\u1ECDn hi\u1EC7n th\u1EDDi.
+
+Print.AcceleratorKey = P,ctrl
+Print.Name           = In
+Print.ToolTip        = In ph\u00E2n \u0111o\u1EA1n hi\u1EC7n th\u1EDDi.
+
+Save.AcceleratorKey    = S,ctrl
+Save.Name              = L\u01B0u ...
+Save.ToolTip           = L\u01B0u ph\u00E2n \u0111o\u1EA1n hi\u1EC7n th\u1EDDi.
+
+SaveAll.AcceleratorKey = S,ctrl,shift
+SaveAll.Name           = L\u01B0u T\u1EA5t C\u1EA3
+SaveAll.ToolTip        = L\u01B0u T\u1EA5t C\u1EA3 C\u00E1c Ph\u00E2n \u0110o\u1EA1n
+
+SaveAs.AcceleratorKey = A,ctrl,shift
+SaveAs.Name           = L\u01B0u nh\u01B0 ...
+SaveAs.ToolTip        = L\u01B0u ph\u00E2n \u0111o\u1EA1n theo t\u00EAn kh\u00E1c.
+
+Scripting.Name    = Scripting ...
+Scripting.ToolTip = Ch\u1EA1y c\u00E2u l\u1EC7nh trong ng\u00F4n ng\u1EEF scripting.
+
+SidebarToggle.AcceleratorKey = B,ctrl
+SidebarToggle.Name           = Hi\u1EC7n Thanh B\u00EAn Ph\u00E2n \u0110o\u1EA1n
+SidebarToggle.ToolTip        = B\u1EADt/T\u1EAFt Hi\u1EC3n Th\u1ECB Thanh B\u00EAn Ph\u00E2n \u0110o\u1EA1n
+
+StatusToggle.Name    = Hi\u1EC7n V\u00F9ng Tr\u1EA1ng Th\u00E1i
+StatusToggle.ToolTip = B\u1EADt/T\u1EAFt Hi\u1EC3n Th\u1ECB Tr\u1EA1ng Th\u00E1i
+
+Strongs.Name    = Hi\u1EC7n Li\u00EAn K\u1EBFt Strong's
+Strongs.ToolTip = Hi\u1EC7n S\u1ED1 Strong's nh\u01B0 Li\u00EAn K\u1EBFt
+
+TabMode.Name    = Ch\u1EBF \u0110\u1ED9 Th\u1EBB Tab
+TabMode.ToolTip = Xem Ph\u00E2n \u0110o\u1EA1n D\u00F9ng C\u1EEDa S\u1ED5 C\u00F3 Th\u1EBB Tab
+
+TinyVNum.Name    = D\u00F9ng S\u1ED1 C\u00E2u Nh\u1ECF
+TinyVNum.ToolTip = D\u00F9ng S\u1ED1 C\u00E2u Nh\u1ECF
+
+ToolTipToggle.AcceleratorKey = T,ctrl
+ToolTipToggle.Name           = Hi\u1EC7n M\u00E1ch N\u01B0\u1EDBc C\u00F4ng C\u1EE5
+ToolTipToggle.ToolTip        = B\u1EADt/T\u1EAFt Hi\u1EC3n Th\u1ECB M\u00E1ch N\u01B0\u1EDBc C\u00F4ng C\u1EE5
+
+Tools.Name    = C\u00F4ng C\u1EE5
+Tools.ToolTip = C\u00F4ng C\u1EE5
+
+VLine.Name    = T\u1EEBng C\u00E2u B\u1EAFt \u0110\u1EA7u D\u00F2ng M\u1EDBi
+VLine.ToolTip = T\u1EEBng c\u00E2u b\u1EAFt \u0111\u1EA7u d\u00F2ng m\u1EDBi.
+
+VNum.Name    = Hi\u1EC7n S\u1ED1 C\u00E2u
+VNum.ToolTip = Hi\u1EC7n S\u1ED1 C\u00E2u
+
+Verse.Name    = S\u1ED1 C\u00E2u
+Verse.ToolTip = Ch\u1ECDn Ki\u1EC3u S\u1ED1 C\u00E2u
+
+View.Name                 = Xem
+View.ToolTip              = Xem
+
+ViewSource.AcceleratorKey = U,ctrl
+ViewSource.Name           = Xem Ngu\u1ED3n
+ViewSource.ToolTip        = Xem HTML v\u00E0 ngu\u1ED3n OSIS c\u1EE7a c\u1EEDa s\u1ED5 hi\u1EC7n th\u1EDDi.
+
+WindowMode.Name    = Ch\u1EBF \u0110\u1ED9 C\u1EEDa S\u1ED5 Ti\u1EC3u
+WindowMode.ToolTip = Xem Ph\u00E2n \u0110o\u1EA1n D\u00F9ng Ch\u1EBF \u0110\u1ED9 C\u1EEDa S\u1ED5 Ti\u1EC3u
+
+XRef.Name    = D\u00F9ng Tham Chi\u1EBFu Ch\u00E9o
+XRef.ToolTip = D\u00F9ng Li\u00EAn K\u1EBFt Tham Chi\u1EBFu Ch\u00E9o

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_zh.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_zh.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,150 +1,155 @@
 
-About.MnemonicKey=
-About.Name=\u95DC\u65BC ...
-About.ToolTip=Bible Desktop\u7684\u8CC7\u8A0A
-BCVNum.Name=\u5217\u51FA\u66F8\u540D,\u7AE0\u7BC0\u6578
-BCVNum.ToolTip=\u5217\u51FA\u66F8\u540D,\u7AE0\u7BC0\u6578
-Back.Name=Alias.Back
-Back.ToolTip=\u56DE\u5230\u4E0A\u3127\u500B\u4E3B\u984C\u95B1\u8B80
-Books.Name=\u66F8\u7C4D ...
-Books.ToolTip=Display/Install Books
-CVNum.Name=\u986F\u793A\u7AE0\u7BC0\u6578
-CVNum.ToolTip=\u986F\u793A\u7AE0\u7BC0\u6578
-ClearView.MnemonicKey=
-ClearView.Name=\u6E05\u9664\u76EE\u524D\u6240\u700F\u89BD\u7684\u5340\u57DF
-ClearView.ToolTip=\u6E05\u9664\u76EE\u524D\u6240\u700F\u89BD\u7684\u4E3B\u984C\u95B1\u8B80
-CloseAllViews.MnemonicKey=
-CloseAllViews.Name=\u95DC\u9589\u6240\u6709\u7684\u700F\u89BD
-CloseAllViews.ToolTip=\u95DC\u9589\u6240\u6709\u7684\u4E3B\u984C\u95B1\u8B80
-CloseOtherViews.MnemonicKey=
-CloseOtherViews.Name=\u95DC\u9589\u5176\u5B83\u7684\u700F\u89BD
-CloseOtherViews.ToolTip=\u95DC\u9589\u5176\u5B83\u7684\u4E3B\u984C\u95B1\u8B80
-CloseView.AcceleratorKey=0x73
-CloseView.AcceleratorKey.Modifiers=ctrl
-CloseView.MnemonicKey=
-CloseView.Name=\u95DC\u9589\u76EE\u524D\u7684\u700F\u89BD
-CloseView.ToolTip=\u95DC\u9589\u76EE\u524D\u7684\u700F\u89BD
-CompareToggle.Name=\u986F\u793A\u4E0D\u540C\u4E4B\u8655
-CompareToggle.ToolTip=\u5728\u4E0D\u540C\u7248\u672C\u8056\u7D93\u4E2D,\u6BD4\u8F03\u8207\u986F\u793A\u4E0D\u540C\u4E4B\u8655
-Contents.AcceleratorKey=0x70
-Contents.MnemonicKey=
-Contents.Name=\u76EE\u9304 ...
-Contents.ToolTip=\u5E6B\u52A9\u6A94\u6848\u76EE\u9304
-Copy.Name=Alias.Copy
-Copy.ToolTip=\u8986\u88FD\u6240\u9078
-Cut.Name=Alias.Cut
-Cut.ToolTip=Cut the selection.
-Edit.Name=Alias.Edit
-Edit.ToolTip=\u96E2\u958B
-Exit.AcceleratorKey=0x73
-Exit.AcceleratorKey.Modifiers=alt
-Exit.MnemonicKey=
-Exit.Name=\u96E2\u958B
-Exit.ToolTip=\u96E2\u958B\u9019\u500B\u7A0B\u5F0F
-File.MnemonicKey=
-File.Name=\u6A94\u6848
-File.ToolTip=\u6A94\u6848
-Forward.Name=Alias.Forward
-Forward.ToolTip=\u5230\u4E0B\u3127\u9801\u7684\u4E3B\u984C\u95B1\u8B80
-Go.MnemonicKey=
-Go.Name=Alias.Go
-Go.ToolTip=\u57F7\u884C
-Headings.Name=Show Headings
-Headings.ToolTip=Show Headings
-Help.MnemonicKey=
-Help.Name=Alias.Help
-Help.ToolTip=\u5E6B\u52A9
-JournalToggle.AcceleratorKey=J
-JournalToggle.AcceleratorKey.Modifiers=ctrl
-JournalToggle.MnemonicKey=J
-JournalToggle.Name=\u986F\u793AWeb Journal
-JournalToggle.ToolTip=\u5728Web Journal\u4E2D\u5207\u63DB\u986F\u793A
-Morph.Name=\u986F\u793A Word Morphology
-Morph.ToolTip=\u986F\u793A Word Morphology \u7684\u9023\u7D50
-NewTab.AcceleratorKey=N
-NewTab.AcceleratorKey.Modifiers=ctrl
-NewTab.MnemonicKey=
-NewTab.Name=\u700F\u89BD\u65B0\u7684\u8056\u7D93
-NewTab.ToolTip=\u6253\u958B\u3127\u672C\u65B0\u7684\u8056\u7D93\u700F\u89BD
-NoVNum.Name=\u96B1\u85CF\u7D93\u7BC0\u6578\u5B57
-NoVNum.ToolTip=\u96B1\u85CF\u7D93\u7BC0\u6578\u5B57
-Notes.Name=\u986F\u793A\u7814\u7D93\u8A3B\u91CB
-Notes.ToolTip=\u986F\u793A\u7814\u7D93\u8A3B\u91CB
-Open.AcceleratorKey=O
-Open.AcceleratorKey.Modifiers=ctrl
-Open.MnemonicKey=
-Open.Name=\u6253\u958B ...
-Open.ToolTip=\u6253\u958B\u5DF2\u5B58\u6A94\u7684\u4E3B\u984C\u95B1\u8B80
-Options.MnemonicKey=O
-Options.Name=\u9078\u9805 ...
-Options.ToolTip=\u4FEE\u6539\u7CFB\u7D71\u8A2D\u5B9A
-Paste.AcceleratorKey=V
-Paste.AcceleratorKey.Modifiers=alt
-Paste.MnemonicKey=
-Paste.Name=\u8CBC\u4E0A
-Paste.ToolTip=\u5C07\u6240\u9078\u8CC7\u6599\u8CBC\u4E0A
-Print.AcceleratorKey=P
-Print.AcceleratorKey.Modifiers=ctrl
-Print.MnemonicKey=
-Print.Name=\u5217\u5370
-Print.ToolTip=\u5370\u51FA\u76EE\u524D\u7684\u4E3B\u984C\u95B1\u8B80
-Save.AcceleratorKey=S
-Save.AcceleratorKey.Modifiers=ctrl
-Save.MnemonicKey=
-Save.Name=\u5132\u5B58...
-Save.ToolTip=\u5132\u5B58\u76EE\u524D\u7684\u4E3B\u984C\u95B1\u8B80
-SaveAll.AcceleratorKey=S
-SaveAll.AcceleratorKey.Modifiers=ctrl,shift
-SaveAll.MnemonicKey=S
-SaveAll.Name=\u5168\u90E8\u5132\u5B58
-SaveAll.ToolTip=\u5132\u5B58\u6240\u6709\u7684\u4E3B\u984C\u95B1\u8B80
-SaveAs.AcceleratorKey=A
-SaveAs.AcceleratorKey.Modifiers=ctrl,shift
-SaveAs.MnemonicKey=
-SaveAs.Name=\u5132\u5B58\u70BA ...
-SaveAs.ToolTip=\u4F7F\u7528\u4E0D\u540C\u7684\u540D\u7A31\u5132\u5B58\u76EE\u524D\u7684\u4E3B\u984C\u95B1\u8B80
-Scripting.MnemonicKey=
-Scripting.Name=\u8173\u672C ...
-Scripting.ToolTip=\u5728\u8173\u672C\u8A9E\u6CD5\u4E2D\u57F7\u884C\u90E8\u4EFD\u7684\u547D\u4EE4
-SidebarToggle.AcceleratorKey=B
-SidebarToggle.AcceleratorKey.Modifiers=ctrl
-SidebarToggle.MnemonicKey=
-SidebarToggle.Name=\u986F\u793A\u4E3B\u984C\u95B1\u8B80\u5074\u908A\u5DE5\u5177\u5217
-SidebarToggle.ToolTip=\u5728\u5074\u908A\u5DE5\u5177\u5217\u5207\u63DB\u986F\u793A
-StatusToggle.MnemonicKey=
-StatusToggle.Name=\u986F\u793A\u72C0\u614B\u5340
-StatusToggle.ToolTip=\u5728\u72C0\u614B\u5340\u5207\u63DB\u986F\u793A
-Strongs.Name=\u986F\u793A Strong's Links
-Strongs.ToolTip=\u986F\u793AStrong's Numbers\u9023\u7D50
-TabMode.MnemonicKey=
-TabMode.Name=\u55AE\u4ECB\u9762\u6A21\u5F0F
-TabMode.ToolTip=\u4F7F\u7528\u55AE\u4ECB\u9762\u6A21\u5F0F\u986F\u793A\u4E3B\u984C\u95B1\u8B80
-TinyVNum.Name=\u7D93\u7BC0\u6578\u5B57\u4F7F\u7528\u8F03\u5C0F\u7684\u5B57\u9AD4
-TinyVNum.ToolTip=\u7D93\u7BC0\u6578\u5B57\u4F7F\u7528\u8F03\u5C0F\u7684\u5B57\u9AD4
-ToolTipToggle.AcceleratorKey=T
-ToolTipToggle.AcceleratorKey.Modifiers=ctrl
-ToolTipToggle.MnemonicKey=
-ToolTipToggle.Name=\u986F\u793A\u5DE5\u5177\u63D0\u793A
-ToolTipToggle.ToolTip=\u5207\u63DB\u986F\u793A\u5DE5\u5177\u63D0\u793A
-Tools.MnemonicKey=
-Tools.Name=\u5DE5\u5177
-Tools.ToolTip=\u5DE5\u5177
-VLine.Name=\u65B7\u884C\u5F8C\u958B\u59CB\u53E6\u3127\u53E5\u7D93\u7BC0
-VLine.ToolTip=\u6BCF\u3127\u53E5\u7D93\u7BC0\u5728\u65B0\u7684\u3127\u884C\u958B\u59CB
-VNum.Name=\u986F\u793A\u7D93\u7BC0\u6578\u5B57
-VNum.ToolTip=\u986F\u793A\u7D93\u7BC0\u6578\u5B57
-Verse.Name=\u7D93\u7BC0\u6578\u5B57
-Verse.ToolTip=\u8A2D\u5B9A\u7D93\u7BC0\u6578\u5B57\u7684\u683C\u5F0F
-View.MnemonicKey=
-View.Name=\u700F\u89BD
-View.ToolTip=\u700F\u89BD
-ViewSource.AcceleratorKey=U
-ViewSource.AcceleratorKey.Modifiers=ctrl
-ViewSource.MnemonicKey=
-ViewSource.Name=\u700F\u89BD\u539F\u59CB\u78BC
-ViewSource.ToolTip=\u5728\u76EE\u524D\u7684\u4ECB\u9762\u700F\u89BD HTML \u53CA OSIS \u539F\u59CB\u78BC
-WindowMode.MnemonicKey=
-WindowMode.Name=\u591A\u4ECB\u9762\u6A21\u5F0F
-WindowMode.ToolTip=\u5728\u591A\u4ECB\u9762\u6A21\u5F0F\u700F\u89BD\u4E3B\u984C
-XRef.Name=\u4F7F\u7528\u57FA\u7763\u6559\u6307\u5411\u9023\u7D50
-XRef.ToolTip=\u4F7F\u7528\u57FA\u7763\u6559\u6307\u5411\u9023\u7D50
+About.Name    = \u95DC\u65BC ...
+About.ToolTip = Bible Desktop\u7684\u8CC7\u8A0A
+
+BCVNum.Name    = \u5217\u51FA\u66F8\u540D,\u7AE0\u7BC0\u6578
+BCVNum.ToolTip = \u5217\u51FA\u66F8\u540D,\u7AE0\u7BC0\u6578
+
+Back.Name    = Alias.Back
+Back.ToolTip = \u56DE\u5230\u4E0A\u3127\u500B\u4E3B\u984C\u95B1\u8B80
+
+Books.Name    = \u66F8\u7C4D ...
+Books.ToolTip = Display/Install Books
+
+CVNum.Name    = \u986F\u793A\u7AE0\u7BC0\u6578
+CVNum.ToolTip = \u986F\u793A\u7AE0\u7BC0\u6578
+
+ClearView.Name    = \u6E05\u9664\u76EE\u524D\u6240\u700F\u89BD\u7684\u5340\u57DF
+ClearView.ToolTip = \u6E05\u9664\u76EE\u524D\u6240\u700F\u89BD\u7684\u4E3B\u984C\u95B1\u8B80
+
+CloseAllViews.Name    = \u95DC\u9589\u6240\u6709\u7684\u700F\u89BD
+CloseAllViews.ToolTip = \u95DC\u9589\u6240\u6709\u7684\u4E3B\u984C\u95B1\u8B80
+
+CloseOtherViews.Name    = \u95DC\u9589\u5176\u5B83\u7684\u700F\u89BD
+CloseOtherViews.ToolTip = \u95DC\u9589\u5176\u5B83\u7684\u4E3B\u984C\u95B1\u8B80
+
+CloseView.AcceleratorKey = 0x73,ctrl
+CloseView.Name           = \u95DC\u9589\u76EE\u524D\u7684\u700F\u89BD
+CloseView.ToolTip        = \u95DC\u9589\u76EE\u524D\u7684\u700F\u89BD
+
+CompareToggle.Name    = \u986F\u793A\u4E0D\u540C\u4E4B\u8655
+CompareToggle.ToolTip = \u5728\u4E0D\u540C\u7248\u672C\u8056\u7D93\u4E2D,\u6BD4\u8F03\u8207\u986F\u793A\u4E0D\u540C\u4E4B\u8655
+
+Contents.AcceleratorKey = 0x70
+Contents.Name           = \u76EE\u9304 ...
+Contents.ToolTip        = \u5E6B\u52A9\u6A94\u6848\u76EE\u9304
+
+Copy.Name    = Alias.Copy
+Copy.ToolTip = \u8986\u88FD\u6240\u9078
+
+Cut.Name    = Alias.Cut
+Cut.ToolTip = Cut the selection.
+
+Edit.Name    = Alias.Edit
+Edit.ToolTip = \u96E2\u958B
+
+Exit.AcceleratorKey = 0x73,alt
+Exit.Name           = \u96E2\u958B
+Exit.ToolTip        = \u96E2\u958B\u9019\u500B\u7A0B\u5F0F
+
+File.Name    = \u6A94\u6848
+File.ToolTip = \u6A94\u6848
+
+Forward.Name    = Alias.Forward
+Forward.ToolTip = \u5230\u4E0B\u3127\u9801\u7684\u4E3B\u984C\u95B1\u8B80
+
+Go.Name    = Alias.Go
+Go.ToolTip = \u57F7\u884C
+
+Headings.Name    = Show Headings
+Headings.ToolTip = Show Headings
+
+Help.Name    = Alias.Help
+Help.ToolTip = \u5E6B\u52A9
+
+JournalToggle.AcceleratorKey = J,ctrl
+JournalToggle.Name           = \u986F\u793AWeb Journal
+JournalToggle.ToolTip        = \u5728Web Journal\u4E2D\u5207\u63DB\u986F\u793A
+
+Morph.Name    = \u986F\u793A Word Morphology
+Morph.ToolTip = \u986F\u793A Word Morphology \u7684\u9023\u7D50
+
+NewTab.AcceleratorKey = N,ctrl
+NewTab.Name           = \u700F\u89BD\u65B0\u7684\u8056\u7D93
+NewTab.ToolTip        = \u6253\u958B\u3127\u672C\u65B0\u7684\u8056\u7D93\u700F\u89BD
+
+NoVNum.Name    = \u96B1\u85CF\u7D93\u7BC0\u6578\u5B57
+NoVNum.ToolTip = \u96B1\u85CF\u7D93\u7BC0\u6578\u5B57
+
+Notes.Name    = \u986F\u793A\u7814\u7D93\u8A3B\u91CB
+Notes.ToolTip = \u986F\u793A\u7814\u7D93\u8A3B\u91CB
+
+Open.AcceleratorKey = O,ctrl
+Open.Name           = \u6253\u958B ...
+Open.ToolTip        = \u6253\u958B\u5DF2\u5B58\u6A94\u7684\u4E3B\u984C\u95B1\u8B80
+
+Options.Name    = \u9078\u9805 ...
+Options.ToolTip = \u4FEE\u6539\u7CFB\u7D71\u8A2D\u5B9A
+
+Paste.AcceleratorKey = V,ctrl
+Paste.Name           = \u8CBC\u4E0A
+Paste.ToolTip        = \u5C07\u6240\u9078\u8CC7\u6599\u8CBC\u4E0A
+
+Print.AcceleratorKey = P,ctrl
+Print.Name           = \u5217\u5370
+Print.ToolTip        = \u5370\u51FA\u76EE\u524D\u7684\u4E3B\u984C\u95B1\u8B80
+
+Save.AcceleratorKey    = S,ctrl
+Save.Name              = \u5132\u5B58...
+Save.ToolTip           = \u5132\u5B58\u76EE\u524D\u7684\u4E3B\u984C\u95B1\u8B80
+
+SaveAll.AcceleratorKey = S,ctrl,shift
+SaveAll.Name           = \u5168\u90E8\u5132\u5B58
+SaveAll.ToolTip        = \u5132\u5B58\u6240\u6709\u7684\u4E3B\u984C\u95B1\u8B80
+
+SaveAs.AcceleratorKey = A,ctrl,shift
+SaveAs.Name           = \u5132\u5B58\u70BA ...
+SaveAs.ToolTip        = \u4F7F\u7528\u4E0D\u540C\u7684\u540D\u7A31\u5132\u5B58\u76EE\u524D\u7684\u4E3B\u984C\u95B1\u8B80
+
+Scripting.Name    = \u8173\u672C ...
+Scripting.ToolTip = \u5728\u8173\u672C\u8A9E\u6CD5\u4E2D\u57F7\u884C\u90E8\u4EFD\u7684\u547D\u4EE4
+
+SidebarToggle.AcceleratorKey = B,ctrl
+SidebarToggle.Name           = \u986F\u793A\u4E3B\u984C\u95B1\u8B80\u5074\u908A\u5DE5\u5177\u5217
+SidebarToggle.ToolTip        = \u5728\u5074\u908A\u5DE5\u5177\u5217\u5207\u63DB\u986F\u793A
+
+StatusToggle.Name    = \u986F\u793A\u72C0\u614B\u5340
+StatusToggle.ToolTip = \u5728\u72C0\u614B\u5340\u5207\u63DB\u986F\u793A
+
+Strongs.Name    = \u986F\u793A Strong's Links
+Strongs.ToolTip = \u986F\u793AStrong's Numbers\u9023\u7D50
+
+TabMode.Name    = \u55AE\u4ECB\u9762\u6A21\u5F0F
+TabMode.ToolTip = \u4F7F\u7528\u55AE\u4ECB\u9762\u6A21\u5F0F\u986F\u793A\u4E3B\u984C\u95B1\u8B80
+
+TinyVNum.Name    = \u7D93\u7BC0\u6578\u5B57\u4F7F\u7528\u8F03\u5C0F\u7684\u5B57\u9AD4
+TinyVNum.ToolTip = \u7D93\u7BC0\u6578\u5B57\u4F7F\u7528\u8F03\u5C0F\u7684\u5B57\u9AD4
+
+ToolTipToggle.AcceleratorKey = T,ctrl
+ToolTipToggle.Name           = \u986F\u793A\u5DE5\u5177\u63D0\u793A
+ToolTipToggle.ToolTip        = \u5207\u63DB\u986F\u793A\u5DE5\u5177\u63D0\u793A
+
+Tools.Name    = \u5DE5\u5177
+Tools.ToolTip = \u5DE5\u5177
+
+VLine.Name    = \u65B7\u884C\u5F8C\u958B\u59CB\u53E6\u3127\u53E5\u7D93\u7BC0
+VLine.ToolTip = \u6BCF\u3127\u53E5\u7D93\u7BC0\u5728\u65B0\u7684\u3127\u884C\u958B\u59CB
+
+VNum.Name    = \u986F\u793A\u7D93\u7BC0\u6578\u5B57
+VNum.ToolTip = \u986F\u793A\u7D93\u7BC0\u6578\u5B57
+
+Verse.Name    = \u7D93\u7BC0\u6578\u5B57
+Verse.ToolTip = \u8A2D\u5B9A\u7D93\u7BC0\u6578\u5B57\u7684\u683C\u5F0F
+
+View.Name                 = \u700F\u89BD
+View.ToolTip              = \u700F\u89BD
+
+ViewSource.AcceleratorKey = U,ctrl
+ViewSource.Name           = \u700F\u89BD\u539F\u59CB\u78BC
+ViewSource.ToolTip        = \u5728\u76EE\u524D\u7684\u4ECB\u9762\u700F\u89BD HTML \u53CA OSIS \u539F\u59CB\u78BC
+
+WindowMode.Name    = \u591A\u4ECB\u9762\u6A21\u5F0F
+WindowMode.ToolTip = \u5728\u591A\u4ECB\u9762\u6A21\u5F0F\u700F\u89BD\u4E3B\u984C
+
+XRef.Name    = \u4F7F\u7528\u57FA\u7763\u6559\u6307\u5411\u9023\u7D50
+XRef.ToolTip = \u4F7F\u7528\u57FA\u7763\u6559\u6307\u5411\u9023\u7D50

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_zh_CN.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Desktop_zh_CN.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,150 +1,155 @@
 
-About.MnemonicKey=
-About.Name=\u5173\u65BC ...
-About.ToolTip=Bible Desktop\u7684\u8D44\u8BAF
-BCVNum.Name=\u5217\u51FA\u4E66\u540D,\u7AE0\u8282\u6570
-BCVNum.ToolTip=\u5217\u51FA\u4E66\u540D,\u7AE0\u8282\u6570
-Back.Name=Alias.Back
-Back.ToolTip=\u56DE\u5230\u4E0A\u3127\u4E2A\u4E3B\u9898\u9605\u8BFB
-Books.Name=\u4E66\u7C4D ...
-Books.ToolTip=Display/Install Books
-CVNum.Name=\u663E\u793A\u7AE0\u8282\u6570
-CVNum.ToolTip=\u663E\u793A\u7AE0\u8282\u6570
-ClearView.MnemonicKey=
-ClearView.Name=\u6E05\u9664\u76EE\u524D\u6240\u6D4F\u89C8\u7684\u533A\u57DF
-ClearView.ToolTip=\u6E05\u9664\u76EE\u524D\u6240\u6D4F\u89C8\u7684\u4E3B\u9898\u9605\u8BFB
-CloseAllViews.MnemonicKey=
-CloseAllViews.Name=\u5173\u95ED\u6240\u6709\u7684\u6D4F\u89C8
-CloseAllViews.ToolTip=\u5173\u95ED\u6240\u6709\u7684\u4E3B\u9898\u9605\u8BFB
-CloseOtherViews.MnemonicKey=
-CloseOtherViews.Name=\u5173\u95ED\u5176\u5B83\u7684\u6D4F\u89C8
-CloseOtherViews.ToolTip=\u5173\u95ED\u5176\u5B83\u7684\u4E3B\u9898\u9605\u8BFB
-CloseView.AcceleratorKey=0x73
-CloseView.AcceleratorKey.Modifiers=ctrl
-CloseView.MnemonicKey=
-CloseView.Name=\u5173\u95ED\u76EE\u524D\u7684\u6D4F\u89C8
-CloseView.ToolTip=\u5173\u95ED\u76EE\u524D\u7684\u6D4F\u89C8
-CompareToggle.Name=\u663E\u793A\u4E0D\u540C\u4E4B\u5904
-CompareToggle.ToolTip=\u5728\u4E0D\u540C\u7248\u672C\u7684\u5723\u7ECF\u4E2D,\u6BD4\u8F83\u4E0E\u663E\u793A\u4E0D\u540C\u4E4B\u5904
-Contents.AcceleratorKey=0x70
-Contents.MnemonicKey=
-Contents.Name=\u76EE\u5F55 ...
-Contents.ToolTip=\u5E2E\u52A9\u6863\u6848\u76EE\u5F55
-Copy.Name=Alias.Copy
-Copy.ToolTip=\u9ECF\u8D34\u6240\u9009
-Cut.Name=Alias.Cut
-Cut.ToolTip=Cut the selection.
-Edit.Name=Alias.Edit
-Edit.ToolTip=\u7F16\u8F91
-Exit.AcceleratorKey=0x73
-Exit.AcceleratorKey.Modifiers=alt
-Exit.MnemonicKey=
-Exit.Name=\u79BB\u5F00
-Exit.ToolTip=\u79BB\u5F00\u8FD9\u4E2A\u7A0B\u5E8F
-File.MnemonicKey=
-File.Name=\u6863\u6848
-File.ToolTip=\u6863\u6848
-Forward.Name=Alias.Forward
-Forward.ToolTip=\u5230\u4E0B\u3127\u9875\u7684\u4E3B\u9898\u9605\u8BFB
-Go.MnemonicKey=
-Go.Name=Alias.Go
-Go.ToolTip=\u6267\u884C
-Headings.Name=Show Headings
-Headings.ToolTip=Show Headings
-Help.MnemonicKey=
-Help.Name=Alias.Help
-Help.ToolTip=\u5E2E\u52A9
-JournalToggle.AcceleratorKey=J
-JournalToggle.AcceleratorKey.Modifiers=ctrl
-JournalToggle.MnemonicKey=J
-JournalToggle.Name=\u663E\u793AWeb Journal
-JournalToggle.ToolTip=\u5728Web Journal\u4E2D\u5207\u6362\u663E\u793A
-Morph.Name=\u663E\u793A Word Morphology
-Morph.ToolTip=\u663E\u793A Word Morphology \u7684\u8FDE\u7ED3
-NewTab.AcceleratorKey=N
-NewTab.AcceleratorKey.Modifiers=ctrl
-NewTab.MnemonicKey=
-NewTab.Name=\u6D4F\u89C8\u65B0\u7684\u5723\u7ECF
-NewTab.ToolTip=\u6253\u5F00\u3127\u672C\u5723\u7ECF\u6D4F\u89C8
-NoVNum.Name=\u9690\u85CF\u7ECF\u8282\u6570\u5B57
-NoVNum.ToolTip=\u9690\u85CF\u7ECF\u8282\u6570\u5B57
-Notes.Name=\u663E\u793A\u7814\u7ECF\u6CE8\u91CA
-Notes.ToolTip=\u663E\u793A\u7814\u7ECF\u6CE8\u91CA
-Open.AcceleratorKey=O
-Open.AcceleratorKey.Modifiers=ctrl
-Open.MnemonicKey=
-Open.Name=\u6253\u5F00 ...
-Open.ToolTip=\u6253\u5F00\u5DF2\u5B58\u6863\u7684\u4E3B\u9898\u9605\u8BFB
-Options.MnemonicKey=O
-Options.Name=\u9009\u9879 ...
-Options.ToolTip=\u4FEE\u6539\u7CFB\u7EDF\u8BBE\u5B9A
-Paste.AcceleratorKey=V
-Paste.AcceleratorKey.Modifiers=ctrl
-Paste.MnemonicKey=
-Paste.Name=\u9ECF\u8D34
-Paste.ToolTip=\u7279\u6B8A\u9ECF\u8D34
-Print.AcceleratorKey=P
-Print.AcceleratorKey.Modifiers=ctrl
-Print.MnemonicKey=
-Print.Name=\u6253\u5370
-Print.ToolTip=\u6253\u5370\u76EE\u524D\u7684\u4E3B\u9898\u9605\u8BFB
-Save.AcceleratorKey=S
-Save.AcceleratorKey.Modifiers=ctrl
-Save.MnemonicKey=
-Save.Name=\u50A8\u5B58...
-Save.ToolTip=\u50A8\u5B58\u76EE\u524D\u7684\u4E3B\u9898\u9605\u8BFB
-SaveAll.AcceleratorKey=S
-SaveAll.AcceleratorKey.Modifiers=ctrl,shift
-SaveAll.MnemonicKey=S
-SaveAll.Name=\u5168\u90E8\u50A8\u5B58
-SaveAll.ToolTip=\u50A8\u5B58\u6240\u6709\u7684\u4E3B\u9898\u9605\u8BFB
-SaveAs.AcceleratorKey=A
-SaveAs.AcceleratorKey.Modifiers=ctrl,shift
-SaveAs.MnemonicKey=
-SaveAs.Name=\u50A8\u5B58\u4E3A ...
-SaveAs.ToolTip=\u4F7F\u7528\u4E0D\u540C\u7684\u540D\u79F0\u50A8\u5B58\u76EE\u524D\u7684\u4E3B\u9898\u9605\u8BFB
-Scripting.MnemonicKey=
-Scripting.Name=\u811A\u672C ...
-Scripting.ToolTip=\u5728\u811A\u672C\u8BED\u6CD5\u4E2D\u6267\u884C\u90E8\u4EFD\u7684\u547D\u4EE4
-SidebarToggle.AcceleratorKey=B
-SidebarToggle.AcceleratorKey.Modifiers=ctrl
-SidebarToggle.MnemonicKey=
-SidebarToggle.Name=\u663E\u793A\u4E3B\u9898\u9605\u8BFB\u4FA7\u8FB9\u5DE5\u5177\u5217
-SidebarToggle.ToolTip=\u5728\u4FA7\u8FB9\u5DE5\u5177\u5217\u5207\u6362\u663E\u793A
-StatusToggle.MnemonicKey=
-StatusToggle.Name=\u663E\u793A\u72B6\u6001\u533A
-StatusToggle.ToolTip=\u5728\u72B6\u6001\u533A\u5207\u6362\u663E\u793A
-Strongs.Name=\u663E\u793A Strong's Links
-Strongs.ToolTip=\u663E\u793AStrong's Numbers\u8FDE\u7ED3
-TabMode.MnemonicKey=
-TabMode.Name=\u5355\u4ECB\u9762\u6A21\u5F0F
-TabMode.ToolTip=\u4F7F\u7528\u5355\u4ECB\u9762\u6A21\u5F0F\u663E\u5F0F\u4E3B\u9898\u9605\u8BFB
-TinyVNum.Name=\u7ECF\u8282\u6570\u5B57\u4F7F\u7528\u8F83\u5C0F\u7684\u5B57\u4F53
-TinyVNum.ToolTip=\u7ECF\u8282\u6570\u5B57\u4F7F\u7528\u8F83\u5C0F\u7684\u5B57\u4F53
-ToolTipToggle.AcceleratorKey=T
-ToolTipToggle.AcceleratorKey.Modifiers=ctrl
-ToolTipToggle.MnemonicKey=
-ToolTipToggle.Name=\u663E\u793A\u5DE5\u5177\u63D0\u793A
-ToolTipToggle.ToolTip=\u5207\u6362\u663E\u793A\u5DE5\u5177\u63D0\u793A
-Tools.MnemonicKey=
-Tools.Name=\u5DE5\u5177
-Tools.ToolTip=\u5DE5\u5177
-VLine.Name=\u65AD\u884C\u540E\u5F00\u59CB\u53E6\u3127\u53E5\u7ECF\u8282
-VLine.ToolTip=\u6BCF\u3127\u53E5\u7ECF\u8282\u5728\u65B0\u7684\u3127\u884C\u5F00\u59CB
-VNum.Name=\u663E\u793A\u7ECF\u8282\u6570\u5B57
-VNum.ToolTip=\u663E\u793A\u7ECF\u8282\u6570\u5B57
-Verse.Name=\u7ECF\u8282\u6570\u5B57
-Verse.ToolTip=\u8BBE\u5B9A\u7ECF\u8282\u6570\u5B57\u7684\u683C\u5F0F
-View.MnemonicKey=
-View.Name=\u6D4F\u89C8
-View.ToolTip=\u6D4F\u89C8
-ViewSource.AcceleratorKey=U
-ViewSource.AcceleratorKey.Modifiers=ctrl
-ViewSource.MnemonicKey=
-ViewSource.Name=\u6D4F\u89C8\u6E90\u7801
-ViewSource.ToolTip=\u5728\u76EE\u524D\u7684\u4ECB\u9762\u6D4F\u89C8 HTML \u53CA OSIS \u6E90\u7801
-WindowMode.MnemonicKey=
-WindowMode.Name=\u591A\u4ECB\u9762\u6A21\u5F0F
-WindowMode.ToolTip=\u5728\u591A\u4ECB\u9762\u6A21\u5F0F\u6D4F\u89C8\u4E3B\u9898
-XRef.Name=\u4F7F\u7528\u57FA\u7763\u5F92\u6307\u5411\u8FDE\u7ED3
-XRef.ToolTip=\u4F7F\u7528\u57FA\u7763\u5F92\u6307\u5411\u8FDE\u7ED3
+About.Name    = \u5173\u65BC ...
+About.ToolTip = Bible Desktop\u7684\u8D44\u8BAF
+
+BCVNum.Name    = \u5217\u51FA\u4E66\u540D,\u7AE0\u8282\u6570
+BCVNum.ToolTip = \u5217\u51FA\u4E66\u540D,\u7AE0\u8282\u6570
+
+Back.Name    = Alias.Back
+Back.ToolTip = \u56DE\u5230\u4E0A\u3127\u4E2A\u4E3B\u9898\u9605\u8BFB
+
+Books.Name    = \u4E66\u7C4D ...
+Books.ToolTip = Display/Install Books
+
+CVNum.Name    = \u663E\u793A\u7AE0\u8282\u6570
+CVNum.ToolTip = \u663E\u793A\u7AE0\u8282\u6570
+
+ClearView.Name    = \u6E05\u9664\u76EE\u524D\u6240\u6D4F\u89C8\u7684\u533A\u57DF
+ClearView.ToolTip = \u6E05\u9664\u76EE\u524D\u6240\u6D4F\u89C8\u7684\u4E3B\u9898\u9605\u8BFB
+
+CloseAllViews.Name    = \u5173\u95ED\u6240\u6709\u7684\u6D4F\u89C8
+CloseAllViews.ToolTip = \u5173\u95ED\u6240\u6709\u7684\u4E3B\u9898\u9605\u8BFB
+
+CloseOtherViews.Name    = \u5173\u95ED\u5176\u5B83\u7684\u6D4F\u89C8
+CloseOtherViews.ToolTip = \u5173\u95ED\u5176\u5B83\u7684\u4E3B\u9898\u9605\u8BFB
+
+CloseView.AcceleratorKey = 0x73,ctrl
+CloseView.Name           = \u5173\u95ED\u76EE\u524D\u7684\u6D4F\u89C8
+CloseView.ToolTip        = \u5173\u95ED\u76EE\u524D\u7684\u6D4F\u89C8
+
+CompareToggle.Name    = \u663E\u793A\u4E0D\u540C\u4E4B\u5904
+CompareToggle.ToolTip = \u5728\u4E0D\u540C\u7248\u672C\u7684\u5723\u7ECF\u4E2D,\u6BD4\u8F83\u4E0E\u663E\u793A\u4E0D\u540C\u4E4B\u5904
+
+Contents.AcceleratorKey = 0x70
+Contents.Name           = \u76EE\u5F55 ...
+Contents.ToolTip        = \u5E2E\u52A9\u6863\u6848\u76EE\u5F55
+
+Copy.Name    = Alias.Copy
+Copy.ToolTip = \u9ECF\u8D34\u6240\u9009
+
+Cut.Name    = Alias.Cut
+Cut.ToolTip = Cut the selection.
+
+Edit.Name    = Alias.Edit
+Edit.ToolTip = \u7F16\u8F91
+
+Exit.AcceleratorKey = 0x73,alt
+Exit.Name           = \u79BB\u5F00
+Exit.ToolTip        = \u79BB\u5F00\u8FD9\u4E2A\u7A0B\u5E8F
+
+File.Name    = \u6863\u6848
+File.ToolTip = \u6863\u6848
+
+Forward.Name    = Alias.Forward
+Forward.ToolTip = \u5230\u4E0B\u3127\u9875\u7684\u4E3B\u9898\u9605\u8BFB
+
+Go.Name    = Alias.Go
+Go.ToolTip = \u6267\u884C
+
+Headings.Name    = Show Headings
+Headings.ToolTip = Show Headings
+
+Help.Name    = Alias.Help
+Help.ToolTip = \u5E2E\u52A9
+
+JournalToggle.AcceleratorKey = J,ctrl
+JournalToggle.Name           = \u663E\u793AWeb Journal
+JournalToggle.ToolTip        = \u5728Web Journal\u4E2D\u5207\u6362\u663E\u793A
+
+Morph.Name    = \u663E\u793A Word Morphology
+Morph.ToolTip = \u663E\u793A Word Morphology \u7684\u8FDE\u7ED3
+
+NewTab.AcceleratorKey = N,ctrl
+NewTab.Name           = \u6D4F\u89C8\u65B0\u7684\u5723\u7ECF
+NewTab.ToolTip        = \u6253\u5F00\u3127\u672C\u5723\u7ECF\u6D4F\u89C8
+
+NoVNum.Name    = \u9690\u85CF\u7ECF\u8282\u6570\u5B57
+NoVNum.ToolTip = \u9690\u85CF\u7ECF\u8282\u6570\u5B57
+
+Notes.Name    = \u663E\u793A\u7814\u7ECF\u6CE8\u91CA
+Notes.ToolTip = \u663E\u793A\u7814\u7ECF\u6CE8\u91CA
+
+Open.AcceleratorKey = O,ctrl
+Open.Name           = \u6253\u5F00 ...
+Open.ToolTip        = \u6253\u5F00\u5DF2\u5B58\u6863\u7684\u4E3B\u9898\u9605\u8BFB
+
+Options.Name    = \u9009\u9879 ...
+Options.ToolTip = \u4FEE\u6539\u7CFB\u7EDF\u8BBE\u5B9A
+
+Paste.AcceleratorKey = V,ctrl
+Paste.Name           = \u9ECF\u8D34
+Paste.ToolTip        = \u7279\u6B8A\u9ECF\u8D34
+
+Print.AcceleratorKey = P,ctrl
+Print.Name           = \u6253\u5370
+Print.ToolTip        = \u6253\u5370\u76EE\u524D\u7684\u4E3B\u9898\u9605\u8BFB
+
+Save.AcceleratorKey    = S,ctrl
+Save.Name              = \u50A8\u5B58...
+Save.ToolTip           = \u50A8\u5B58\u76EE\u524D\u7684\u4E3B\u9898\u9605\u8BFB
+
+SaveAll.AcceleratorKey = S,ctrl,shift
+SaveAll.Name           = \u5168\u90E8\u50A8\u5B58
+SaveAll.ToolTip        = \u50A8\u5B58\u6240\u6709\u7684\u4E3B\u9898\u9605\u8BFB
+
+SaveAs.AcceleratorKey = A,ctrl,shift
+SaveAs.Name           = \u50A8\u5B58\u4E3A ...
+SaveAs.ToolTip        = \u4F7F\u7528\u4E0D\u540C\u7684\u540D\u79F0\u50A8\u5B58\u76EE\u524D\u7684\u4E3B\u9898\u9605\u8BFB
+
+Scripting.Name    = \u811A\u672C ...
+Scripting.ToolTip = \u5728\u811A\u672C\u8BED\u6CD5\u4E2D\u6267\u884C\u90E8\u4EFD\u7684\u547D\u4EE4
+
+SidebarToggle.AcceleratorKey = B,ctrl
+SidebarToggle.Name           = \u663E\u793A\u4E3B\u9898\u9605\u8BFB\u4FA7\u8FB9\u5DE5\u5177\u5217
+SidebarToggle.ToolTip        = \u5728\u4FA7\u8FB9\u5DE5\u5177\u5217\u5207\u6362\u663E\u793A
+
+StatusToggle.Name    = \u663E\u793A\u72B6\u6001\u533A
+StatusToggle.ToolTip = \u5728\u72B6\u6001\u533A\u5207\u6362\u663E\u793A
+
+Strongs.Name    = \u663E\u793A Strong's Links
+Strongs.ToolTip = \u663E\u793AStrong's Numbers\u8FDE\u7ED3
+
+TabMode.Name    = \u5355\u4ECB\u9762\u6A21\u5F0F
+TabMode.ToolTip = \u4F7F\u7528\u5355\u4ECB\u9762\u6A21\u5F0F\u663E\u5F0F\u4E3B\u9898\u9605\u8BFB
+
+TinyVNum.Name    = \u7ECF\u8282\u6570\u5B57\u4F7F\u7528\u8F83\u5C0F\u7684\u5B57\u4F53
+TinyVNum.ToolTip = \u7ECF\u8282\u6570\u5B57\u4F7F\u7528\u8F83\u5C0F\u7684\u5B57\u4F53
+
+ToolTipToggle.AcceleratorKey = T,ctrl
+ToolTipToggle.Name           = \u663E\u793A\u5DE5\u5177\u63D0\u793A
+ToolTipToggle.ToolTip        = \u5207\u6362\u663E\u793A\u5DE5\u5177\u63D0\u793A
+
+Tools.Name    = \u5DE5\u5177
+Tools.ToolTip = \u5DE5\u5177
+
+VLine.Name    = \u65AD\u884C\u540E\u5F00\u59CB\u53E6\u3127\u53E5\u7ECF\u8282
+VLine.ToolTip = \u6BCF\u3127\u53E5\u7ECF\u8282\u5728\u65B0\u7684\u3127\u884C\u5F00\u59CB
+
+VNum.Name    = \u663E\u793A\u7ECF\u8282\u6570\u5B57
+VNum.ToolTip = \u663E\u793A\u7ECF\u8282\u6570\u5B57
+
+Verse.Name    = \u7ECF\u8282\u6570\u5B57
+Verse.ToolTip = \u8BBE\u5B9A\u7ECF\u8282\u6570\u5B57\u7684\u683C\u5F0F
+
+View.Name                 = \u6D4F\u89C8
+View.ToolTip              = \u6D4F\u89C8
+
+ViewSource.AcceleratorKey = U,ctrl
+ViewSource.Name           = \u6D4F\u89C8\u6E90\u7801
+ViewSource.ToolTip        = \u5728\u76EE\u524D\u7684\u4ECB\u9762\u6D4F\u89C8 HTML \u53CA OSIS \u6E90\u7801
+
+WindowMode.Name    = \u591A\u4ECB\u9762\u6A21\u5F0F
+WindowMode.ToolTip = \u5728\u591A\u4ECB\u9762\u6A21\u5F0F\u6D4F\u89C8\u4E3B\u9898
+
+XRef.Name    = \u4F7F\u7528\u57FA\u7763\u5F92\u6307\u5411\u8FDE\u7ED3
+XRef.ToolTip = \u4F7F\u7528\u57FA\u7763\u5F92\u6307\u5411\u8FDE\u7ED3

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -31,67 +31,14 @@
  * @author Joe Walker [joe at eireneh dot com]
  */
 public final class Msg extends MsgBase {
-    // Strings used by Desktop
-    // String for the title and version
-    static final Msg APP_TITLE = new Msg("Desktop.Title"); //$NON-NLS-1$
-    static final Msg SPLASH_TITLE = new Msg("Desktop.Splash"); //$NON-NLS-1$
-    static final Msg APP_VERSION = new Msg("Desktop.Version"); //$NON-NLS-1$
-    static final Msg VERSION_TITLE = new Msg("Desktop.VersionTitle"); //$NON-NLS-1$
-    static final Msg VERSION_APP_TITLE = new Msg("Desktop.VersionAppTitle"); //$NON-NLS-1$
 
-    // Auto save of config failed
-    static final Msg CONFIG_SAVE_FAILED = new Msg("Desktop.ConfigSaveFailed"); //$NON-NLS-1$
-
-    // Strings for hyperlink URIs
-    static final Msg UNKNOWN_PROTOCOL = new Msg("Desktop.UnknownProtocol"); //$NON-NLS-1$
-
-    // Strings for the startup job
-    static final Msg STARTUP_TITLE = new Msg("Desktop.StartupTitle"); //$NON-NLS-1$
-    static final Msg STARTUP_GENERATE = new Msg("Desktop.StartupGenerate"); //$NON-NLS-1$
-    static final Msg STARTUP_GENERAL_CONFIG = new Msg("Desktop.StartupGeneral"); //$NON-NLS-1$
-
-    // No Bibles "wizard"
-    static final Msg NO_BIBLES_MESSAGE = new Msg("Desktop.NoBiblesMessage"); //$NON-NLS-1$
-    static final Msg NO_BIBLES_TITLE = new Msg("Desktop.NoBiblesTitle"); //$NON-NLS-1$
-
-    // Strings for DesktopAction
-    static final Msg NO_HELP = new Msg("DesktopActions.NoHelp"); //$NON-NLS-1$
-    static final Msg NO_PASSAGE = new Msg("DesktopActions.NoPassage"); //$NON-NLS-1$
-    static final Msg SOURCE_MISSING = new Msg("DesktopActions.SourceMissing"); //$NON-NLS-1$
-
-    // Strings for AboutPane and Splash
-    // The splash image is of an English version of the application
-    static final Msg SPLASH_IMAGE = new Msg("Splash.SplashImage"); //$NON-NLS-1$
-    static final Msg ABOUT_TITLE = new Msg("AboutPane.AboutTitle"); //$NON-NLS-1$
-    static final Msg WARRANTY_TAB_TITLE = new Msg("AboutPane.Warranty"); //$NON-NLS-1$
-    static final Msg DETAILS_TAB_TITLE = new Msg("AboutPane.Details"); //$NON-NLS-1$
-    static final Msg SYSTEM_PROPS_TAB_TITLE = new Msg("AboutPane.SystemPropsTabTitle"); //$NON-NLS-1$
-
-    // Strings for StatusBar
-    static final Msg STATUS_DEFAULT = new Msg("StatusBar.StatusDefault"); //$NON-NLS-1$
-
-    // Strings for OptionsAction
-    static final Msg CONFIG_TITLE = new Msg("OptionsAction.ConfigTitle"); //$NON-NLS-1$
-
-    // Strings for ViewSourcePane
-    static final Msg TEXT_VIEWER = new Msg("ViewSourcePane.TextViewer"); //$NON-NLS-1$
-    static final Msg ORIG = new Msg("ViewSourcePane.ORIG"); //$NON-NLS-1$
-    static final Msg OSIS = new Msg("ViewSourcePane.OSIS"); //$NON-NLS-1$
-    static final Msg HTML = new Msg("ViewSourcePane.HTML"); //$NON-NLS-1$
-
     /**
-     * Passthrough ctor
-     */
-    private Msg(String name) {
-        super(name);
-    }
-
-    /*
      * get the title of the application
      * @return the title of the application
      */
     public static String getApplicationTitle() {
-        return Msg.APP_TITLE.toString();
+        // TRANSLATOR: The name of the program.
+        return Msg.gettext("Bible Desktop");
     }
 
     /**
@@ -100,8 +47,9 @@
      * @return the version string
      */
     public static String getVersionInfo() {
-        String version = Msg.APP_VERSION.toString();
-        return Msg.VERSION_TITLE.toString(version);
+        // TRANSLATOR: Gets a version string in the form "Version 1.0"
+        // {0} is a placeholder for the version
+        return Msg.gettext("Version {0}", getVersion());
     }
 
     /**
@@ -110,10 +58,11 @@
      * @return a versioned title
      */
     public static String getVersionedApplicationTitle() {
-        String title = Msg.APP_TITLE.toString();
-        String version = Msg.APP_VERSION.toString();
-        return Msg.VERSION_APP_TITLE.toString(new Object[] {
-                title, version
+        // TRANSLATOR: Gets a version string in the form "Bible Desktop v1.0"
+        // {0} is a placeholder for the application name
+        // {1} is a placeholder for the version
+        return Msg.gettext("{0} v{1}", new Object[] {
+                getApplicationTitle(), getVersion()
         });
     }
 
@@ -123,6 +72,51 @@
      * @return Info for "About"
      */
     public static String getAboutInfo() {
-        return Msg.ABOUT_TITLE.toString(getApplicationTitle());
+        // TRANSLATOR: An "About" string in the form "About Bible Desktop"
+        return Msg.gettext("About {0}", getApplicationTitle());
     }
+
+    private static String getVersion() {
+        // TRANSLATOR the current version of the application.
+        // When translating use digits 0-9. They will be shaped appropriately.
+        return Msg.gettext("1.6");
+    }
+    /**
+     * Get the internationalized text, but return key if key is unknown.
+     * 
+     * @param key
+     * @return the internationalized text
+     */
+    public static String gettext(String key)
+    {
+        return msg.lookup(key);
+    }
+
+    /**
+     * Get the internationalized text, but return key if key is unknown.
+     * The text requires one parameter to be passed.
+     * 
+     * @param key
+     * @param param
+     * @return the formatted, internationalized text
+     */
+    public static String gettext(String key, Object param)
+    {
+        return msg.toString(key, param);
+    }
+
+    /**
+     * Get the internationalized text, but return key if key is unknown.
+     * The text requires one parameter to be passed.
+     * 
+     * @param key
+     * @param param
+     * @return the formatted, internationalized text
+     */
+    public static String gettext(String key, Object[] params)
+    {
+        return msg.toString(key, params);
+    }
+
+    private static MsgBase msg = new Msg();
 }

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,54 +1,49 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
+/images/splash.png = /images/splash.png
 
-# Property describing the name and version of the program
-Desktop.Title=Bible Desktop
-Desktop.Splash=Bible Desktop
-Desktop.Version=1.6
-Desktop.VersionTitle=Version {0}
-Desktop.VersionAppTitle={0} v{1}
+1.6 = 1.6
 
-# Property used by desktop for autosaving the config file
-Desktop.ConfigFileFailed=Could not save config file: {0}
+<html>You\ have\ no\ Bibles\ installed.\ Do\ you\ wish\ to\ install\ some\ now?<br>(This\ is\ also\ available\ from\ <b>Books</b>\ in\ the\ <b>Tools</b>\ menu) = <html>You have no Bibles installed. Do you wish to install some now?<br>(This is also available from <b>Books</b> in the <b>Tools</b> menu)
 
-# Properties used by Desktop for hyperlinks
-Desktop.UnknownProtocol=Unknown protocol {0}
+About\ {0} = About {0}
 
-# Properties for the startup job
-Desktop.StartupTitle=Startup
-Desktop.StartupGenerate=Generating Components
-Desktop.StartupGeneral=General configuration
+Bible\ Desktop = Bible Desktop
 
-Desktop.NoBiblesMessage=<html>You have no Bibles installed. Do you wish to install some now?<br>(This is also available from <b>Books</b> in the <b>Tools</b> menu)
-Desktop.NoBiblesTitle=Install Bibles?
+Could\ not\ save\ config\ file\:\ {0} = Could not save config file: {0}
 
-# Properties for DesktopActions
-# Properties used by Help
-DesktopActions.NoHelp=Currently on-line help is only available via the Bible Desktop's website:\nhttp://www.crosswire.org/bibledesktop
-DesktopActions.NoPassage=No Passage to Save
-DesktopActions.SourceMissing=No current passage to view
+Currently\ on-line\ help\ is\ only\ available\ via\ the\ Bible\ Desktop's\ website\:\u000Ahttp\://www.crosswire.org/bibledesktop = Currently on-line help is only available via the Bible Desktop's website:\nhttp://www.crosswire.org/bibledesktop
 
-# Properties for AboutPane and Splash
-# The splash image is of an English version of the application
-Splash.SplashImage=/images/splash.png
-AboutPane.AboutTitle=About {0}
-AboutPane.Warranty=Warranty
-AboutPane.Details=License
-AboutPane.SystemPropsTabTitle=System Properties
+Desktop\ Options = Desktop Options
 
-# Properties for StatusBar
-StatusBar.StatusDefault=Ready ...
+General\ configuration = General configuration
 
-# Properties for OptionsAction
-OptionsAction.ConfigTitle=Desktop Options
+Generating\ Components = Generating Components
 
-# Properties for ViewSourcePane
-ViewSourcePane.TextViewer=Source Viewer
-ViewSourcePane.ORIG=Original
-ViewSourcePane.OSIS=OSIS
-ViewSourcePane.HTML=HTML
+HTML = HTML
 
+Install\ Bibles? = Install Bibles?
+
+License = License
+
+No\ Passage\ to\ Save = No Passage to Save
+
+No\ current\ passage\ to\ view = No current passage to view
+
+OSIS = OSIS
+
+Original = Original
+
+Ready\ ... = Ready ...
+
+Source\ Viewer = Source Viewer
+
+Startup = Startup
+
+System\ Properties = System Properties
+
+Unknown\ protocol\ {0} = Unknown protocol {0}
+
+Version\ {0} = Version {0}
+
+Warranty = Warranty
+
+{0}\ v{1} = {0} v{1}

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,47 +1,47 @@
-Desktop.Splash=Bible Desktop
-#Desktop.Version=1.0.6
-Desktop.VersionTitle=Version {0}
-Desktop.VersionAppTitle={0} v{1}
+/images/splash.png = /images/splash.png
 
-# Property used by desktop for autosaving the config file
-Desktop.ConfigFileFailed=Konfigurationsdatei konnte nicht gespeichert werden\: {0}
+<html>You\ have\ no\ Bibles\ installed.\ Do\ you\ wish\ to\ install\ some\ now?<br>(This\ is\ also\ available\ from\ <b>Books</b>\ in\ the\ <b>Tools</b>\ menu) = <html>Sie haben keine Bibeln installiert. M\u00F6chten sie jetzt welche installieren?<br>(Sie k\u00F6nnen dies auch sp\u00E4ter \u00FCber <b>Extras</b> -> <b>B\u00FCcher...</b> nachholen)
 
-# Properties used by Desktop for hyperlinks
-Desktop.UnknownProtocol=Unbekanntes Protokoll {0}
+About\ {0} = About {0}
 
-# Properties for the startup job
-Desktop.StartupTitle=Start
-#Desktop.StartupConfig=Konfiguration laden
-Desktop.StartupGenerate=Komponenten laden
-Desktop.StartupGeneral=Allgemeine Einstellungen
+Bible\ Desktop = Bible Desktop
 
-Desktop.NoBiblesMessage=<html>Sie haben keine Bibeln installiert. M\u00F6chten sie jetzt welche installieren?<br>(Sie k\u00F6nnen dies auch sp\u00E4ter \u00FCber <b>Extras</b> -> <b>B\u00FCcher...</b> nachholen)
-Desktop.NoBiblesTitle=Bibeln aus dem Internet herunterladen?
+Could\ not\ save\ config\ file\:\ {0} = Konfigurationsdatei konnte nicht gespeichert werden: {0}
 
-# Properties for DesktopActions
-# Properties used by Help
-DesktopActions.NoHelp=Hilfe gibt es zur Zeit nur auf der Website:\nhttp://www.crosswire.org/bibledesktop
-#DesktopActions.NotImplemented={0} nicht implementiert
-DesktopActions.NoPassage=Kein Abschnitt ausgew\u00E4hlt zum Speichern
-DesktopActions.SourceMissing=Kein Abschnitt ausgew\u00E4hlt zum Anschauen
+Currently\ on-line\ help\ is\ only\ available\ via\ the\ Bible\ Desktop's\ website\:\u000Ahttp\://www.crosswire.org/bibledesktop = Hilfe gibt es zur Zeit nur auf der Website:\nhttp://www.crosswire.org/bibledesktop
 
-# Properties for AboutPane and Splash
-# The splash image is of an English version of the application
-Splash.SplashImage=/images/splash.png
-AboutPane.AboutTitle=About {0}
-AboutPane.Warranty=Garantie
-AboutPane.Details=Lizenz
-AboutPane.SystemPropsTabTitle=System-Einstellungen
+Desktop\ Options = Desktop-Einstellungen
 
-# Properties for StatusBar
-StatusBar.StatusDefault=Bereit ...
+General\ configuration = Allgemeine Einstellungen
 
-# Properties for OptionsAction
-OptionsAction.ConfigTitle=Desktop-Einstellungen
+Generating\ Components = Komponenten laden
 
-#ViewSourcePane.Close=Fenster schlie\u00DFen
-#ViewSourcePane.CopyToClipboard=In die Ablage kopieren
-ViewSourcePane.TextViewer=Quellcode anschauen
-ViewSourcePane.ORIG=Original
-ViewSourcePane.OSIS=OSIS
-ViewSourcePane.HTML=HTML
+HTML = HTML
+
+Install\ Bibles? = Bibeln aus dem Internet herunterladen?
+
+License = Lizenz
+
+No\ Passage\ to\ Save = Kein Abschnitt ausgew\u00E4hlt zum Speichern
+
+No\ current\ passage\ to\ view = Kein Abschnitt ausgew\u00E4hlt zum Anschauen
+
+OSIS = OSIS
+
+Original = Original
+
+Ready\ ... = Bereit ...
+
+Source\ Viewer = Quellcode anschauen
+
+Startup = Start
+
+System\ Properties = System-Einstellungen
+
+Unknown\ protocol\ {0} = Unbekanntes Protokoll {0}
+
+Version\ {0} = Version {0}
+
+Warranty = Garantie
+
+{0}\ v{1} = {0} v{1}

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,94 +1,41 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
-# Translated by GlasgowIranianChurch (c) 2006
-# Property describing the name and version of the program
-Desktop.Title=\u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633
-Desktop.Splash=\u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633
-#Desktop.Version=1.0.6
-Desktop.VersionTitle=\u0646\u06AF\u0627\u0631\u0634 {0}
-Desktop.VersionAppTitle={0} v{1}
+/images/splash.png = /images/splash_fa.png
 
-# Property used by desktop for autosaving the config file
-Desktop.ConfigFileFailed=\u0646\u0645\u06CC \u062A\u0648\u0627\u0646\u0633\u062A \u0641\u0627\u06CC\u0644 \u067E\u06CC\u06A9\u0631\u0628\u0646\u062F\u06CC \u0630\u062E\u06CC\u0631\u0647 \u0628\u0646\u0645\u0627\u06CC\u062F {0}
+<html>You\ have\ no\ Bibles\ installed.\ Do\ you\ wish\ to\ install\ some\ now?<br>(This\ is\ also\ available\ from\ <b>Books</b>\ in\ the\ <b>Tools</b>\ menu) = <html>\u0647\u0646\u0648\u0632 \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u0627\u06CC\u0646\u0633\u062A\u0627\u0644 \u0646\u06A9\u0631\u062F\u06CC\u062F. \u0627\u06CC\u0627 \u0634\u0645\u0627 \u0627\u0644\u0627\u0646 \u0627\u06CC\u0646 \u06A9\u0627\u0631 \u0645\u06CC\u062E\u0648\u0627\u0647\u06CC\u062F \u0628\u06A9\u0646\u06CC\u062F\u061F \u0628\u0639\u062F\u0646 \u0647\u0645 \u0645\u0648\u0645\u06A9\u0646 \u0647\u0633\u062A. 
 
-# Properties used by Desktop for hyperlinks
-#Desktop.UnknownProtocol=\u067E\u0631\u0648\u062A\u06A9\u0644 \u0646\u0627\u0634\u0646\u0627\u062E\u062A\u0647 {0}
-#Desktop.BadProtocolUrl=\u06AF\u0645 \u0634\u062F\u0647 \u062F\u0631 {0}
+About\ {0} = \u062F\u0631\u0628\u0627\u0631\u0647 {0}
 
+Bible\ Desktop = \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633
 
-# Properties for the startup job
-#Desktop.StartupTitle=\u0634\u0631\u0648
-#Desktop.StartupConfig=\u0634\u0631\u0648\u06CC \u067E\u06CC\u06A9\u0627\u0631\u0628\u0627\u0646\u062F\u06CC
-Desktop.StartupGenerate=\u067E\u06CC\u06A9\u0627\u0631\u0628\u0627\u0646\u062F\u06CC \u0627\u0633\u0628\u0627\u0628\u0647\u0627
-Desktop.StartupGeneral=\u067E\u06CC\u06A9\u0627\u0631\u0628\u0646\u062F\u06CC \u0627\u0648\u0645\u0648\u0645\u06CC
+Could\ not\ save\ config\ file\:\ {0} = \u0646\u0645\u06CC \u062A\u0648\u0627\u0646\u0633\u062A \u0641\u0627\u06CC\u0644 \u067E\u06CC\u06A9\u0631\u0628\u0646\u062F\u06CC \u0630\u062E\u06CC\u0631\u0647 \u0628\u0646\u0645\u0627\u06CC\u062F {0}
 
-Desktop.NoBiblesMessage=<html>\u0647\u0646\u0648\u0632 \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u0627\u06CC\u0646\u0633\u062A\u0627\u0644 \u0646\u06A9\u0631\u062F\u06CC\u062F. \u0627\u06CC\u0627 \u0634\u0645\u0627 \u0627\u0644\u0627\u0646 \u0627\u06CC\u0646 \u06A9\u0627\u0631 \u0645\u06CC\u062E\u0648\u0627\u0647\u06CC\u062F \u0628\u06A9\u0646\u06CC\u062F\u061F \u0628\u0639\u062F\u0646 \u0647\u0645 \u0645\u0648\u0645\u06A9\u0646 \u0647\u0633\u062A. 
-Desktop.NoBiblesTitle=\u0627\u06CC\u0627 \u0634\u0645\u0627 \u06A9\u062A\u0627\u0628\u0647\u0627 \u0627\u06CC\u0646\u0633\u062A\u0627\u0644 \u06A9\u0646\u06CC\u062F \u062E\u0648\u0627\u0647\u06CC\u062F\u061F
+Currently\ on-line\ help\ is\ only\ available\ via\ the\ Bible\ Desktop's\ website\:\u000Ahttp\://www.crosswire.org/bibledesktop = \u0647\u0645\u06CC\u0646\u0627\u0644\u0627\u0646 \u06A9\u0645\u06A9 \u0641\u0642\u062F \u062A\u0648\u06CC \u0627\u06CC\u0646\u062A\u0631\u0646\u062A \u0648\u062C\u0648\u062F \u062F\u0631\u062F:\nhttp://www.crosswire.org/bibledesktop
 
-# Properties for DesktopActions
-# Properties used by Help
-DesktopActions.NoHelp=\u0647\u0645\u06CC\u0646\u0627\u0644\u0627\u0646 \u06A9\u0645\u06A9 \u0641\u0642\u062F \u062A\u0648\u06CC \u0627\u06CC\u0646\u062A\u0631\u0646\u062A \u0648\u062C\u0648\u062F \u062F\u0631\u062F:\nhttp://www.crosswire.org/bibledesktop
-#DesktopActions.NotImplemented=\u0647\u0646\u0648\u0632 \u0648\u062C\u0648\u062F \u0646\u062F\u0631\u062F{0}
-DesktopActions.NoPassage=\u0647\u06CC\u062C \u0628\u0631\u0627\u06CC \u0627\u0646\u0628\u0627\u0631 \u06A9\u0631\u062F\u0646 \u0627\u0646\u062A\u062D\u0627\u0628 \u0646\u06A9\u0631\u062F\u06CC\u062F
-DesktopActions.SourceMissing=\u0647\u06CC\u062C \u0639\u0646\u062A\u062D\u0627\u0628 \u0648\u062C\u0648\u062F \u062F\u0627\u0631\u062F
+Desktop\ Options = \u0627\u0646\u062A\u0627\u062D\u0628\u062A
 
-# Properties for AboutPane and Splash
-# The splash image should be localized
-Splash.SplashImage=/images/splash_fa.png
-AboutPane.AboutTitle=\u062F\u0631\u0628\u0627\u0631\u0647 {0}
-AboutPane.Warranty=\u067E\u0627\u0628\u0646\u062F\u0627\u0646
-AboutPane.Details=\u0644\u06CC\u0632\u0627\u0646\u0632
+General\ configuration = \u067E\u06CC\u06A9\u0627\u0631\u0628\u0646\u062F\u06CC \u0627\u0648\u0645\u0648\u0645\u06CC
 
-# the next 4 are not implemented at this time
-#AboutPane.ErrorTabTitle=\u0627\u0634\u062A\u0628\u0627\u0647\u0627
-#AboutPane.TaskTabTitle=Running Tasks
-#AboutPane.SystemPropsTabTitle=System Properties
-#AboutPane.DebugTabTitle=Debug
+Generating\ Components = \u067E\u06CC\u06A9\u0627\u0631\u0628\u0627\u0646\u062F\u06CC \u0627\u0633\u0628\u0627\u0628\u0647\u0627
 
-# Properties for StatusBar
-StatusBar.StatusDefault=\u0647\u0627\u0632\u0631...
+HTML = HTML
 
-# Properties for OptionsAction
-OptionsAction.ConfigTitle=\u0627\u0646\u062A\u0627\u062D\u0628\u062A
+Install\ Bibles? = \u0627\u06CC\u0627 \u0634\u0645\u0627 \u06A9\u062A\u0627\u0628\u0647\u0627 \u0627\u06CC\u0646\u0633\u062A\u0627\u0644 \u06A9\u0646\u06CC\u062F \u062E\u0648\u0627\u0647\u06CC\u062F\u061F
 
-ViewSourcePane.Close=\u0628\u0628\u0646\u062F
-ViewSourcePane.CopyToClipboard=\u06A9\u067E\u06CC \u0628\u0647 \u06A9\u0644\u06CC\u067E\u0628\u0648\u0631\u062F
-ViewSourcePane.TextViewer=\u0646\u0645\u0627\u06CC \u0645\u0623\u0686\u0630
-ViewSourcePane.ORIG=\u0627\u0632\u0644
-ViewSourcePane.OSIS=OSIS
-ViewSourcePane.HTML=HTML
+License = \u0644\u06CC\u0632\u0627\u0646\u0632
 
-# not implemented at this time
-# Properties for ComparePane
-#ComparePane.Dialog=\u0645\u0642\u0627\u06CC\u0633\u0647 \u06A9\u0631\u062F\u0646 
-#ComparePane.IdentQuestion=\u0627\u06CC\u0627 \u0634\u0645\u0627\u0645\u06CC\u062E\u0648\u0627\u0647\u06CC\u062F \u062F\u0648\u0628\u0631 \u0647\u0645\u0627\u0646 \u06A9\u062A\u0627\u0628\u0647\u0627 \u0645\u0642\u0627\u06CC\u0633\u0647\u06A9\u0646\u06CC\u062F\u061F
-#ComparePane.IdentTitle=Compare Identical Books?
-#ComparePane.Words=\u06A9\u0644\u0645\u0627\u062A
-#ComparePane.Go=\u0645\u0642\u0627\u06CC\u0633\u0647 \u06A9\u0631\u062F\u0646
-#ComparePane.Using=\u0645\u0642\u0627\u06CC\u0633\u0647 \u0628\u06A9\u0646 \u0628\u0627
-#ComparePane.WordsTip=[empty] - test no words; * - test all words, text - test all words starting with 'text'
-#ComparePane.Title=\u06A9\u062A\u0627\u0628\u0647\u0627 \u0628\u0631\u0627\u06CC \u0645\u0642\u0627\u06CC\u0633\u0647
-#ComparePane.Verses=\u0639\u06CC\u0627\u062A
+No\ Passage\ to\ Save = \u0647\u06CC\u062C \u0628\u0631\u0627\u06CC \u0627\u0646\u0628\u0627\u0631 \u06A9\u0631\u062F\u0646 \u0627\u0646\u062A\u062D\u0627\u0628 \u0646\u06A9\u0631\u062F\u06CC\u062F
 
-# not implemented at this time
-# Properties for CompareResultsPane
-#CompareResultsPane.Title=\u0646\u062A\u06CC\u0686\u0647
-#CompareResultsPane.Start=\u0634\u0631\u0648
-#CompareResultsPane.Close=\u0628\u0628\u0646\u062F
-#CompareResultsPane.Dialog=\u0627\u0633\u0645\u0627\u06CC\u0634 \u0646\u062A\u06CC\u062C\u0647\u0647\u0627
-#CompareResultsPane.Books=\u06A9\u062A\u0627\u0628\u0647\u0627:
-#CompareResultsPane.Comparing=\u0645\u0642\u0627\u06CC\u0633\u0647:
-#CompareResultsPane.Passage=\u0642\u0633\u0645\u062A
-#CompareResultsPane.Words=\u06A9\u0644\u0645
-#CompareResultsPane.Stop=\u0627\u06CC\u0633\u062A!
+No\ current\ passage\ to\ view = \u0647\u06CC\u062C \u0639\u0646\u062A\u062D\u0627\u0628 \u0648\u062C\u0648\u062F \u062F\u0627\u0631\u062F
 
-# not implemented at this time
-# Properties for DebugPane
-#DebugPane.Steps= {0}/{1}
-#DebugPane.Views=\u0646\u0645\u0627\u0647\u0627
-#DebugPane.Go=\u0628\u0631\u0648
-#DebugPane.Method=\u0631\u0648\u0634:
+OSIS = OSIS
+
+Original = \u0627\u0632\u0644
+
+Ready\ ... = \u0647\u0627\u0632\u0631...
+
+Source\ Viewer = \u0646\u0645\u0627\u06CC \u0645\u0623\u0686\u0630
+
+Version\ {0} = \u0646\u06AF\u0627\u0631\u0634 {0}
+
+Warranty = \u067E\u0627\u0628\u0646\u062F\u0627\u0646
+
+{0}\ v{1} = {0} v{1}

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,54 +1,47 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
+/images/splash.png = /images/splash.png
 
-# Property describing the name and version of the program
-Desktop.Title=Bible Desktop
-Desktop.Splash=Bible Desktop
-#Desktop.Version=1.6
-Desktop.VersionTitle=Versi {0}
-Desktop.VersionAppTitle={0} v{1}
+<html>You\ have\ no\ Bibles\ installed.\ Do\ you\ wish\ to\ install\ some\ now?<br>(This\ is\ also\ available\ from\ <b>Books</b>\ in\ the\ <b>Tools</b>\ menu) = <html>Anda tidak memiliki Terjemahan Alkitab. Apakah anda mau menginstall Terjemahan Alkitab sekarang?<br>(Ini juga tersedia di <b>Buku</b> pada <b>Perkakas</b> menu)
 
-# Property used by desktop for autosaving the config file
-Desktop.ConfigFileFailed=Gagal menyimpan berkas config: {0}
+About\ {0} = Mengenai {0}
 
-# Properties used by Desktop for hyperlinks
-Desktop.UnknownProtocol=Unknown protocol {0}
+Bible\ Desktop = Bible Desktop
 
-# Properties for the startup job
-Desktop.StartupTitle=Startup
-Desktop.StartupGenerate=Generating Components
-Desktop.StartupGeneral=Configurasi Umum
+Could\ not\ save\ config\ file\:\ {0} = Gagal menyimpan berkas config: {0}
 
-Desktop.NoBiblesMessage=<html>Anda tidak memiliki Terjemahan Alkitab. Apakah anda mau menginstall Terjemahan Alkitab sekarang?<br>(Ini juga tersedia di <b>Buku</b> pada <b>Perkakas</b> menu)
-Desktop.NoBiblesTitle=Install Alkitab?
+Currently\ on-line\ help\ is\ only\ available\ via\ the\ Bible\ Desktop's\ website\:\u000Ahttp\://www.crosswire.org/bibledesktop = Untuk saat init Bantuan hanya tersedia melalui situs Bible Desktop's :\nhttp://www.crosswire.org/bibledesktop
 
-# Properties for DesktopActions
-# Properties used by Help
-DesktopActions.NoHelp=Untuk saat init Bantuan hanya tersedia melalui situs Bible Desktop's :\nhttp://www.crosswire.org/bibledesktop
-DesktopActions.NoPassage=Tidak ada ayat untuk di simpan
-DesktopActions.SourceMissing=Tidak ada ayat untuk di tampilkan
+Desktop\ Options = Opsi Desktop
 
-# Properties for AboutPane and Splash
-# The splash image is of an English version of the application
-Splash.SplashImage=/images/splash.png
-AboutPane.AboutTitle=Mengenai {0}
-AboutPane.Warranty=Jaminan
-AboutPane.Details=Lisensi
-AboutPane.SystemPropsTabTitle=System Properties
+General\ configuration = Configurasi Umum
 
-# Properties for StatusBar
-StatusBar.StatusDefault=Siap ...
+Generating\ Components = Generating Components
 
-# Properties for OptionsAction
-OptionsAction.ConfigTitle=Opsi Desktop
+HTML = HTML
 
-# Properties for ViewSourcePane
-ViewSourcePane.TextViewer=Tampilan Sumber
-ViewSourcePane.ORIG=Orisinil
-ViewSourcePane.OSIS=OSIS
-ViewSourcePane.HTML=HTML
+Install\ Bibles? = Install Alkitab?
 
+License = Lisensi
+
+No\ Passage\ to\ Save = Tidak ada ayat untuk di simpan
+
+No\ current\ passage\ to\ view = Tidak ada ayat untuk di tampilkan
+
+OSIS = OSIS
+
+Original = Orisinil
+
+Ready\ ... = Siap ...
+
+Source\ Viewer = Tampilan Sumber
+
+Startup = Startup
+
+System\ Properties = System Properties
+
+Unknown\ protocol\ {0} = Unknown protocol {0}
+
+Version\ {0} = Versi {0}
+
+Warranty = Jaminan
+
+{0}\ v{1} = {0} v{1}

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_vi.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_vi.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_vi.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,55 +1,47 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, \u002D, ', ...)
-
-# Property describing the name and version of the program
-Desktop.Title=Bible Desktop
-Desktop.Splash=Bible Desktop
-#Desktop.Version=1.0.6
-Desktop.VersionTitle=Version {0}
-Desktop.VersionAppTitle={0} v{1}
-
-# Property used by desktop for autosaving the config file
-Desktop.ConfigFileFailed=Kh\u00F4ng l\u01B0u \u0111\u01B0\u1EE3c t\u1EADp tin c\u1EA5u h\u00ECnh chung: {0}
-
-# Properties used by Desktop for hyperlinks
-Desktop.UnknownProtocol=Protocol kh\u00F4ng \u0111\u01B0\u1EE3c bi\u1EBFt {0}
-
-# Properties for the startup job
-Desktop.StartupTitle=B\u1EAFt \u0110\u1EA7u
-Desktop.StartupGenerate=Generating Components
-Desktop.StartupGeneral=General configuration
-
-Desktop.NoBiblesMessage=<html>B\u1EA1n ch\u01B0a c\u00E0i \u0111\u1EB7t Kinh Th\u00E1nh. B\u1EA1n c\u00F3 mu\u1ED1n c\u00E0i \u0111\u1EB7t Kinh Th\u00E1nh ngay b\u00E2y gi\u1EDD kh\u00F4ng?<br>(B\u1EA1n c\u00F3 th\u1EC3 t\u00ECm \u0111\u01B0\u1EE3c ch\u1EE9c n\u0103ng n\u00E0y t\u1EEB <b>C\u00E1c S\u00E1ch</b> trong <b>C\u00F4ng C\u1EE5</b>)
-Desktop.NoBiblesTitle=C\u00E0i D\u1EB7t Kinh Th\u00E1nh?
-
-# Properties for DesktopActions
-# Properties used by Help
-DesktopActions.NoHelp=Hi\u1EC7n nay ch\u1EC9 c\u00F3 tr\u1EE3 gi\u00FAp tr\u00EAn m\u1EA1ng qua trang c\u1EE7a BibleDesktop t\u1EA1i \nhttp://www.crosswire.org/bibledesktop
-DesktopActions.NoPassage=Kh\u00F4ng C\u00F3 Ph\u00E2n \u0110o\u1EA1n \u0110\u1EC3 L\u01B0u
-DesktopActions.SourceMissing=Kh\u00F4ng C\u00F3 Ph\u00E2n \u0110o\u1EA1n \u0110\u1EC3 Xem
-
-# Properties for AboutPane and Splash
-# The splash image is of an English version of the application
-Splash.SplashImage=/images/splash.png
-AboutPane.AboutTitle=About {0}
-AboutPane.Warranty=B\u1EA3o H\u00E0nh
-AboutPane.Details=Gi\u1EA5y Ph\u00E9p
-AboutPane.SystemPropsTabTitle=Thu\u1ED9c T\u00EDnh H\u1EC7 Th\u1ED1ng
-
-
-# Properties for StatusBar
-StatusBar.StatusDefault=S\u1EB5n S\u00E0ng ...
-
-# Properties for OptionsAction
-OptionsAction.ConfigTitle=Tu\u1EF3 Ch\u1ECDn cho Desktop
-
-# Properties for ViewSourcePane
-ViewSourcePane.TextViewer=C\u1EEDa S\u1ED5 Xem Ngu\u1ED3n
-ViewSourcePane.ORIG=G\u1ED1c
-ViewSourcePane.OSIS=OSIS
-ViewSourcePane.HTML=HTML
-
+/images/splash.png = /images/splash.png
+
+<html>You\ have\ no\ Bibles\ installed.\ Do\ you\ wish\ to\ install\ some\ now?<br>(This\ is\ also\ available\ from\ <b>Books</b>\ in\ the\ <b>Tools</b>\ menu) = <html>B\u1EA1n ch\u01B0a c\u00E0i \u0111\u1EB7t Kinh Th\u00E1nh. B\u1EA1n c\u00F3 mu\u1ED1n c\u00E0i \u0111\u1EB7t Kinh Th\u00E1nh ngay b\u00E2y gi\u1EDD kh\u00F4ng?<br>(B\u1EA1n c\u00F3 th\u1EC3 t\u00ECm \u0111\u01B0\u1EE3c ch\u1EE9c n\u0103ng n\u00E0y t\u1EEB <b>C\u00E1c S\u00E1ch</b> trong <b>C\u00F4ng C\u1EE5</b>)
+
+About\ {0} = About {0}
+
+Bible\ Desktop = Bible Desktop
+
+Could\ not\ save\ config\ file\:\ {0} = Kh\u00F4ng l\u01B0u \u0111\u01B0\u1EE3c t\u1EADp tin c\u1EA5u h\u00ECnh chung: {0}
+
+Currently\ on-line\ help\ is\ only\ available\ via\ the\ Bible\ Desktop's\ website\:\u000Ahttp\://www.crosswire.org/bibledesktop = Hi\u1EC7n nay ch\u1EC9 c\u00F3 tr\u1EE3 gi\u00FAp tr\u00EAn m\u1EA1ng qua trang c\u1EE7a BibleDesktop t\u1EA1i \nhttp://www.crosswire.org/bibledesktop
+
+Desktop\ Options = Tu\u1EF3 Ch\u1ECDn cho Desktop
+
+General\ configuration = General configuration
+
+Generating\ Components = Generating Components
+
+HTML = HTML
+
+Install\ Bibles? = C\u00E0i D\u1EB7t Kinh Th\u00E1nh?
+
+License = Gi\u1EA5y Ph\u00E9p
+
+No\ Passage\ to\ Save = Kh\u00F4ng C\u00F3 Ph\u00E2n \u0110o\u1EA1n \u0110\u1EC3 L\u01B0u
+
+No\ current\ passage\ to\ view = Kh\u00F4ng C\u00F3 Ph\u00E2n \u0110o\u1EA1n \u0110\u1EC3 Xem
+
+OSIS = OSIS
+
+Original = G\u1ED1c
+
+Ready\ ... = S\u1EB5n S\u00E0ng ...
+
+Source\ Viewer = C\u1EEDa S\u1ED5 Xem Ngu\u1ED3n
+
+Startup = B\u1EAFt \u0110\u1EA7u
+
+System\ Properties = Thu\u1ED9c T\u00EDnh H\u1EC7 Th\u1ED1ng
+
+Unknown\ protocol\ {0} = Protocol kh\u00F4ng \u0111\u01B0\u1EE3c bi\u1EBFt {0}
+
+Version\ {0} = Version {0}
+
+Warranty = B\u1EA3o H\u00E0nh
+
+{0}\ v{1} = {0} v{1}

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_zh.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_zh.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,2 +1,4 @@
-AboutPane.Details=\u7248\u6B0A
-Splash.SplashImage=/images/splash_zh_TW.png
+
+/images/splash.png = /images/splash_zh_TW.png
+
+License = \u7248\u6B0A

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_zh_CN.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Msg_zh_CN.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,2 +1,4 @@
-AboutPane.Details=\u7248\u6743
-Splash.SplashImage=/images/splash_zh_CN.png
+
+/images/splash.png = /images/splash_zh_CN.png
+
+License = \u7248\u6743

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Splash.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Splash.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/Splash.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -77,7 +77,10 @@
      * Init the graphics
      */
     private void init() {
-        Icon icon = GuiUtil.getIcon(Msg.SPLASH_IMAGE.toString());
+        // TRANSLATOR: This image is of an English Bible. It can be replaced with a localized one.
+        // It should be named splash_ll.png where ll is the 2 letter language code and put in the
+        // images directory. Then point this to it.
+        Icon icon = GuiUtil.getIcon(Msg.gettext("/images/splash.png"));
 
         JLabel lblPicture = new JLabel();
         lblPicture.setBackground(Color.WHITE);
@@ -175,7 +178,7 @@
 
     private transient CustomWorkListener listener = new CustomWorkListener();
 
-    private static final String SPLASH_FONT = "SanSerif"; //$NON-NLS-1$
+    private static final String SPLASH_FONT = "SanSerif";
 
     /**
      * Serialization ID

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/StatusBar.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/StatusBar.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/StatusBar.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -69,7 +69,8 @@
      * Init the GUI
      */
     private void initialize() {
-        labelMessage.setText(Msg.STATUS_DEFAULT.toString());
+        // TRANSLATOR: This is the text in the status bar when there is nothing else to say.
+        labelMessage.setText(Msg.gettext("Ready ..."));
 
         Font font = panelProgress.getFont();
         panelProgress.setFont(font.deriveFont(6.0F));
@@ -118,7 +119,7 @@
         if (protocol.length() == 0) {
             labelMessage.setText(uri);
         } else {
-            labelMessage.setText(protocol + "://" + uri); //$NON-NLS-1$
+            labelMessage.setText(protocol + "://" + uri);
         }
     }
 
@@ -126,7 +127,8 @@
      * @see org.crosswire.bibledesktop.display.URIEventListener#leaveURI(org.crosswire.bibledesktop.display.URIEvent)
      */
     public void leaveURI(URIEvent ev) {
-        labelMessage.setText(Msg.STATUS_DEFAULT.toString());
+        // TRANSLATOR: This is the text in the status bar when there is nothing else to say.
+        labelMessage.setText(Msg.gettext("Ready ..."));
     }
 
     /**
@@ -137,7 +139,8 @@
      */
     public void setText(String txt) {
         if (txt == null) {
-            labelMessage.setText(Msg.STATUS_DEFAULT.toString());
+            // TRANSLATOR: This is the text in the status bar when there is nothing else to say.
+            labelMessage.setText(Msg.gettext("Ready ..."));
         } else {
             labelMessage.setText(txt);
         }
@@ -186,7 +189,8 @@
      * @see java.awt.event.MouseListener#mouseExited(java.awt.event.MouseEvent)
      */
     public void mouseExited(MouseEvent ev) {
-        labelMessage.setText(Msg.STATUS_DEFAULT.toString());
+        // TRANSLATOR: This is the text in the status bar when there is nothing else to say.
+        labelMessage.setText(Msg.gettext("Ready ..."));
     }
 
     /**

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/ViewSourcePane.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/ViewSourcePane.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/ViewSourcePane.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -91,7 +91,7 @@
                     buf.append(book.getInitials());
                     buf.append(':');
                     buf.append(osisID);
-                    buf.append(" - "); //$NON-NLS-1$
+                    buf.append(" - ");
                     buf.append(book.getRawText(currentKey));
                 }
             }
@@ -114,10 +114,10 @@
 
             TransformingSAXEventProvider htmlsep = (TransformingSAXEventProvider) converter.convert(osissep);
 
-            XSLTProperty.DIRECTION.setState(bmd.isLeftToRight() ? "ltr" : "rtl"); //$NON-NLS-1$ //$NON-NLS-2$
+            XSLTProperty.DIRECTION.setState(bmd.isLeftToRight() ? "ltr" : "rtl");
 
             URI loc = bmd.getLocation();
-            XSLTProperty.BASE_URL.setState(loc == null ? "" : loc.getPath()); //$NON-NLS-1$
+            XSLTProperty.BASE_URL.setState(loc == null ? "" : loc.getPath());
 
             if (bmd.getBookCategory() == BookCategory.BIBLE) {
                 XSLTProperty.setProperties(htmlsep);
@@ -202,12 +202,18 @@
         };
 
         pnlButtons = new JPanel(new FlowLayout(FlowLayout.TRAILING));
-        pnlButtons.add(new JButton(actions.getAction("SourceClip")), null); //$NON-NLS-1$
+        pnlButtons.add(new JButton(actions.getAction("SourceClip")), null);
 
         tabMain = new JTabbedPane();
-        tabMain.add(pnlOrig, Msg.ORIG.toString());
-        tabMain.add(pnlOsis, Msg.OSIS.toString());
-        tabMain.add(pnlHtml, Msg.HTML.toString());
+        // TRANSLATOR: Label for the View Source tab holding the raw content
+        // of the passage in the active Bible View.
+        tabMain.add(pnlOrig, Msg.gettext("Original"));
+        // TRANSLATOR: Label for the View Source tab holding the OSIS transformation
+        // of the raw content in the prior tab for the passage in the active Bible View.
+        tabMain.add(pnlOsis, Msg.gettext("OSIS"));
+        // TRANSLATOR: Label for the View Source tab holding the HTML transformation
+        // of the OSIS in the prior tab for the passage in the active Bible View.
+        tabMain.add(pnlHtml, Msg.gettext("HTML"));
 
         this.setLayout(new BorderLayout());
         this.add(tabMain, BorderLayout.CENTER);
@@ -219,9 +225,10 @@
      * Display this Panel in a new JFrame
      */
     public void showInFrame(Frame parent) {
-        frame = new JDialog(parent, Msg.TEXT_VIEWER.toString());
+        // TRANSLATOR: title for the Source View dialog
+        frame = new JDialog(parent, Msg.gettext("Source Viewer"));
 
-        pnlButtons.add(new JButton(actions.getAction("SourceOK")), null); //$NON-NLS-1$
+        pnlButtons.add(new JButton(actions.getAction("SourceOK")), null);
 
         this.setBorder(BorderFactory.createEmptyBorder(5, 5, 0, 5));
 

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/XSLTProperty.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/XSLTProperty.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/desktop/XSLTProperty.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -40,80 +40,80 @@
     /**
      * Determines whether Strong's Numbers should show
      */
-    public static final XSLTProperty STRONGS_NUMBERS = new XSLTProperty("Strongs", false); //$NON-NLS-1$
+    public static final XSLTProperty STRONGS_NUMBERS = new XSLTProperty("Strongs", false);
 
     /**
      * Determines whether Word Morphology (e.g. Robinson) should show
      */
-    public static final XSLTProperty MORPH = new XSLTProperty("Morph", false); //$NON-NLS-1$
+    public static final XSLTProperty MORPH = new XSLTProperty("Morph", false);
 
     /**
      * Determines whether verses should start on a new line.
      */
-    public static final XSLTProperty START_VERSE_ON_NEWLINE = new XSLTProperty("VLine", false); //$NON-NLS-1$
+    public static final XSLTProperty START_VERSE_ON_NEWLINE = new XSLTProperty("VLine", false);
 
     /**
      * Show verse numbers
      */
-    public static final XSLTProperty VERSE_NUMBERS = new XSLTProperty("VNum", true); //$NON-NLS-1$
+    public static final XSLTProperty VERSE_NUMBERS = new XSLTProperty("VNum", true);
 
     /**
      * Show chapter and verse numbers.
      */
-    public static final XSLTProperty CV = new XSLTProperty("CVNum", false); //$NON-NLS-1$
+    public static final XSLTProperty CV = new XSLTProperty("CVNum", false);
 
     /**
      * Show book, chapter and verse numbers.
      */
-    public static final XSLTProperty BCV = new XSLTProperty("BCVNum", false); //$NON-NLS-1$
+    public static final XSLTProperty BCV = new XSLTProperty("BCVNum", false);
 
     /**
      * Show no verse numbers
      */
-    public static final XSLTProperty NO_VERSE_NUMBERS = new XSLTProperty("NoVNum", false); //$NON-NLS-1$
+    public static final XSLTProperty NO_VERSE_NUMBERS = new XSLTProperty("NoVNum", false);
 
     /**
      * Show verse numbers as a superscript.
      */
-    public static final XSLTProperty TINY_VERSE_NUMBERS = new XSLTProperty("TinyVNum", true); //$NON-NLS-1$
+    public static final XSLTProperty TINY_VERSE_NUMBERS = new XSLTProperty("TinyVNum", true);
 
     /**
      * Should headings be shown
      */
-    public static final XSLTProperty HEADINGS = new XSLTProperty("Headings", true); //$NON-NLS-1$
+    public static final XSLTProperty HEADINGS = new XSLTProperty("Headings", true);
 
     /**
      * Should notes be shown
      */
-    public static final XSLTProperty NOTES = new XSLTProperty("Notes", true); //$NON-NLS-1$
+    public static final XSLTProperty NOTES = new XSLTProperty("Notes", true);
 
     /**
      * Should cross references be shown
      */
-    public static final XSLTProperty XREF = new XSLTProperty("XRef", true); //$NON-NLS-1$
+    public static final XSLTProperty XREF = new XSLTProperty("XRef", true);
 
     /**
      * What is the base of the current document. Note this needs to be set each
      * time the document is shown.
      */
-    public static final XSLTProperty BASE_URL = new XSLTProperty("baseURL", "", true); //$NON-NLS-1$ //$NON-NLS-2$
+    public static final XSLTProperty BASE_URL = new XSLTProperty("baseURL", "", true);
 
     /**
      * What is the base of the current document. Note this needs to be set each
      * time the document is shown.
      */
-    public static final XSLTProperty DIRECTION = new XSLTProperty("direction", ""); //$NON-NLS-1$ //$NON-NLS-2$
+    public static final XSLTProperty DIRECTION = new XSLTProperty("direction", "");
 
     /**
      * What is the base of the current document. Note this needs to be set each
      * time the font changes.
      */
-    public static final XSLTProperty FONT = new XSLTProperty("font", "Serif-PLAIN-14"); //$NON-NLS-1$ //$NON-NLS-2$
+    public static final XSLTProperty FONT = new XSLTProperty("font", "Serif-PLAIN-14");
 
     /**
      * What is the base of the current document.
      */
-    public static final XSLTProperty CSS = new XSLTProperty("css", "", true); //$NON-NLS-1$ //$NON-NLS-2$
+    public static final XSLTProperty CSS = new XSLTProperty("css", "", true);
 
     /**
      * @param name

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/BookDataDisplay.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/BookDataDisplay.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/BookDataDisplay.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -41,7 +41,7 @@
      * Used by property change listeners to listen for when books should be
      * compared.
      */
-    String COMPARE_BOOKS = "ComparingBooks"; //$NON-NLS-1$
+    String COMPARE_BOOKS = "ComparingBooks";
 
     /**
      * Clear any BookData that is displayed. This is equivalent to:

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -31,17 +31,43 @@
  * @author Joe Walker [joe at eireneh dot com]
  */
 final class Msg extends MsgBase {
-    static final Msg TRANSFORM_FAIL = new Msg("TextPaneBookDataDisplay.TransformationFailure"); //$NON-NLS-1$
-    // Strings for hyperlink urls
-    static final Msg BAD_PROTOCOL_URL = new Msg("TextPaneBookDataDisplay.BadProtocolUrl"); //$NON-NLS-1$
 
-    // Used when there are more tabs to show.
-    static final Msg MORE = new Msg("MORE"); //$NON-NLS-1$
+    /**
+     * Get the internationalized text, but return key if key is unknown.
+     * 
+     * @param key
+     * @return the internationalized text
+     */
+    public static String gettext(String key)
+    {
+        return msg.lookup(key);
+    }
 
     /**
-     * Passthrough ctor
+     * Get the internationalized text, but return key if key is unknown.
+     * The text requires one parameter to be passed.
+     * 
+     * @param key
+     * @param param
+     * @return the formatted, internationalized text
      */
-    private Msg(String name) {
-        super(name);
+    public static String gettext(String key, Object param)
+    {
+        return msg.toString(key, param);
     }
+
+    /**
+     * Get the internationalized text, but return key if key is unknown.
+     * The text requires one parameter to be passed.
+     * 
+     * @param key
+     * @param param
+     * @return the formatted, internationalized text
+     */
+    public static String gettext(String key, Object[] params)
+    {
+        return msg.toString(key, params);
+    }
+
+    private static MsgBase msg = new Msg();
 }

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,13 +1,3 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
+Missing\ \:\ in\ {0} = Missing : in {0}
 
-TextPaneBookDataDisplay.TransformationFailure=Transformation Failure
-
-# Properties used for hyperlinks
-TextPaneBookDataDisplay.BadProtocolUrl=Missing : in {0}
-
-MORE=More ...
+More\ ... = More ...

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,13 +1,3 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
+Missing\ \:\ in\ {0} = Fehlt : in {0}
 
-TextPaneBookDataDisplay.TransformationFailure=Transformation Failure
-
-# Properties used for hyperlinks
-TextPaneBookDataDisplay.BadProtocolUrl=Fehlt : in {0}
-
-MORE=Mehr ...
+More\ ... = Mehr ...

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,13 +1,3 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
+Missing\ \:\ in\ {0} = \u0648\u062C\u0648\u062F \u0646\u062F\u0627\u0631\u062F \u062F\u0631 : {0}
 
-TextPaneBookDataDisplay.TransformationFailure=\u0627\u0634\u062A\u0628\u0627 \u062F\u0631 \u062A\u0631\u0646\u0632\u0641\u0648\u0631\u0645\u0627\u0632\u06CC\u0648\u0646
-
-# Properties used for hyperlinks
-TextPaneBookDataDisplay.BadProtocolUrl=\u0648\u062C\u0648\u062F \u0646\u062F\u0627\u0631\u062F \u062F\u0631 : {0}
-
-MORE=\u0628\u06CC\u0634\u062A\u0631...
+More\ ... = \u0628\u06CC\u0634\u062A\u0631...

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,13 +1,3 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
+Missing\ \:\ in\ {0} = Missing : dalam {0}
 
-TextPaneBookDataDisplay.TransformationFailure=Gagal Transformasi
-
-# Properties used for hyperlinks
-TextPaneBookDataDisplay.BadProtocolUrl=Missing : dalam {0}
-
-MORE=Lebih ...
+More\ ... = Lebih ...

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_vi.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_vi.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_vi.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,13 +1,3 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
-
-TextPaneBookDataDisplay.TransformationFailure=Transformation Failure
-
-# Properties used for hyperlinks
-TextPaneBookDataDisplay.BadProtocolUrl=Thi\u1EBFu : trong {0}
-
-MORE=Th\u00EAm ...
+Missing\ \:\ in\ {0} = Thi\u1EBFu : trong {0}
+
+More\ ... = Th\u00EAm ...

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_zh.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_zh.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,5 +1,3 @@
-#Created by JInto - www.guh-software.de
-#Wed Dec 26 10:56:48 CST 2007
-MORE=\u66F4\u591A ...
-TextPaneBookDataDisplay.BadProtocolUrl=Missing \: in {0}
-TextPaneBookDataDisplay.TransformationFailure=\u8F49\u63DB\u5931\u6557
+Missing\ \:\ in\ {0} = Missing : in {0}
+
+More\ ... = \u66F4\u591A ...

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_zh_CN.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/Msg_zh_CN.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,5 +1,3 @@
-#Created by JInto - www.guh-software.de
-#Fri Dec 28 15:28:12 CST 2007
-MORE=\u66F4\u591A ...
-TextPaneBookDataDisplay.BadProtocolUrl=Missing \: in {0}
-TextPaneBookDataDisplay.TransformationFailure=\u8F6C\u6362\u5931\u8D25
+Missing\ \:\ in\ {0} = Missing : in {0}
+
+More\ ... = \u66F4\u591A ...

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/SplitBookDataDisplay.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/SplitBookDataDisplay.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/SplitBookDataDisplay.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -98,11 +98,11 @@
 
         // Only set the passage if it has changed
         if (keyChanged) {
-            log.debug("new passage chosen: " + key.getName()); //$NON-NLS-1$
+            log.debug("new passage chosen: " + key.getName());
         }
 
         if (bookChanged) {
-            log.debug("new book(s) chosen: " + StringUtil.toString(books)); //$NON-NLS-1$
+            log.debug("new book(s) chosen: " + StringUtil.toString(books));
         }
 
         if (bookChanged || keyChanged) {

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/TabbedBookDataDisplay.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/TabbedBookDataDisplay.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/TabbedBookDataDisplay.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -147,7 +147,11 @@
             views.put(scrView, pnlNew);
 
             tabMain.add(getTabName(first), scrView);
-            tabMain.add(Msg.MORE.toString(), pnlMore);
+            // TRANSLATOR: Extra bottom tabs are created when there is too much to display in one.
+            // Rather than figuring out how many tabs there should be, we label one "More..."
+            // When the user clicks on it, it is filled with what remains. And if it is filled
+            // to overflowing, another "More..." tab is created.
+            tabMain.add(Msg.gettext("More ..."), pnlMore);
 
             setCenterComponent(tabMain);
         } else {
@@ -369,7 +373,11 @@
 
         // Do we need a new more tab
         if (waiting != null) {
-            tabMain.add(Msg.MORE.toString(), pnlMore);
+            // TRANSLATOR: Extra bottom tabs are created when there is too much to display in one.
+            // Rather than figuring out how many tabs there should be, we label one "More..."
+            // When the user clicks on it, it is filled with what remains. And if it is filled
+            // to overflowing, another "More..." tab is created.
+            tabMain.add(Msg.gettext("More ..."), pnlMore);
         }
 
         // Select the real new tab in place of any more tabs
@@ -441,7 +449,7 @@
         String tabname = key.getName();
         int len = tabname.length();
         if (len > TITLE_LENGTH) {
-            tabname = tabname.substring(0, 9) + " ... " + tabname.substring(len - 9, len); //$NON-NLS-1$
+            tabname = tabname.substring(0, 9) + " ... " + tabname.substring(len - 9, len);
         }
 
         return tabname;

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/TextPaneBookDataDisplay.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/TextPaneBookDataDisplay.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/TextPaneBookDataDisplay.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -96,7 +96,6 @@
                       new Dimension(400,300)));
     }
 
-    
     /* (non-Javadoc)
      * @see org.crosswire.bibledesktop.display.BookDataDisplay#clearBookData()
      */
@@ -133,14 +132,14 @@
      */
     public void refresh() {
         if (bdata == null) {
-            txtView.setText(""); //$NON-NLS-1$
+            txtView.setText("");
             return;
         }
 
         // Make sure Hebrew displays from Right to Left
         BookMetaData bmd = getFirstBook().getBookMetaData();
         if (bmd == null) {
-            txtView.setText(""); //$NON-NLS-1$
+            txtView.setText("");
             return;
         }
 
@@ -157,10 +156,10 @@
             SAXEventProvider osissep = bdata.getSAXEventProvider();
             TransformingSAXEventProvider htmlsep = (TransformingSAXEventProvider) converter.convert(osissep);
 
-            XSLTProperty.DIRECTION.setState(direction ? "ltr" : "rtl"); //$NON-NLS-1$ //$NON-NLS-2$
+            XSLTProperty.DIRECTION.setState(direction ? "ltr" : "rtl");
 
             URI loc = bmd.getLocation();
-            XSLTProperty.BASE_URL.setState(loc == null ? "" : loc.getPath()); //$NON-NLS-1$
+            XSLTProperty.BASE_URL.setState(loc == null ? "" : loc.getPath());
 
             if (bmd.getBookCategory() == BookCategory.BIBLE) {
                 XSLTProperty.setProperties(htmlsep);
@@ -179,10 +178,10 @@
              */
             /* Apply the fix if the text is too long and we are not Java 1.5 or greater */
             if (text.length() > 32768 && BookCategory.GENERAL_BOOK.equals(getFirstBook().getBookCategory())) {
-                String javaVersion = System.getProperty("java.specification.version"); //$NON-NLS-1$
-                if (javaVersion == null || "1.5".compareTo(javaVersion) > 0) //$NON-NLS-1$
+                String javaVersion = System.getProperty("java.specification.version");
+                if (javaVersion == null || "1.5".compareTo(javaVersion) > 0)
                 {
-                    text = text.substring(0, 32760) + "..."; //$NON-NLS-1$
+                    text = text.substring(0, 32760) + "...";
                 }
             }
             txtView.setText(text);
@@ -199,7 +198,7 @@
     /* (non-Javadoc)
      * @see javax.swing.event.HyperlinkListener#hyperlinkUpdate(javax.swing.event.HyperlinkEvent)
      */
-    public void hyperlinkUpdate(HyperlinkEvent ev) { 
+    public void hyperlinkUpdate(HyperlinkEvent ev) {
         // SPEEDUP(DMS): This needs to be optimized. It takes too much CPU
         try {
             HyperlinkEvent.EventType type = ev.getEventType();
@@ -278,7 +277,9 @@
             // We ignore the frame case (example code within JEditorPane
             // JavaDoc).
             if (data.charAt(0) != '#') {
-                throw new MalformedURLException(Msg.BAD_PROTOCOL_URL.toString(data));
+                // TRANSLATOR: Unexpected error condition: the cross reference was bad.
+                // {0} is a placeholder for the bad URL.
+                throw new MalformedURLException(Msg.gettext("Missing : in {0}", data));
             }
         } else {
             protocol = data.substring(0, match);
@@ -429,10 +430,10 @@
     }
 
     // Strings for hyperlinks
-    private static final String HYPERLINK_STYLE = "Hyperlink"; //$NON-NLS-1$
-    private static final String DOUBLE_SLASH = "//"; //$NON-NLS-1$
-    private static final String SCROLL_TO_URI = "scrolling to: {0}"; //$NON-NLS-1$
-    private static final String RELATIVE_URI_PROTOCOL = ""; //$NON-NLS-1$
+    private static final String HYPERLINK_STYLE = "Hyperlink";
+    private static final String DOUBLE_SLASH = "//";
+    private static final String SCROLL_TO_URI = "scrolling to: {0}";
+    private static final String RELATIVE_URI_PROTOCOL = "";
 
     /**
      * The log stream

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/URITipHelper.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/URITipHelper.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/display/basic/URITipHelper.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -124,7 +124,7 @@
         }
 
         if (book == null || Books.installed().getBook(book.getName()) == null)
-            return txt = "Book Unavailable!"; //$NON-NLS-1$
+            return txt = "Book Unavailable!";
 
         BookData bdata = null;
 
@@ -138,7 +138,7 @@
 
         BookMetaData bmd = book.getBookMetaData();
         if (bmd == null)
-            return txt = "Book Meta Data Unavailable!"; //$NON-NLS-1$
+            return txt = "Book Meta Data Unavailable!";
 
         // Make sure Hebrew displays from Right to Left
         // Set the correct direction
@@ -153,10 +153,10 @@
         try {
             SAXEventProvider osissep = bdata.getSAXEventProvider();
             TransformingSAXEventProvider htmlsep = (TransformingSAXEventProvider) converter.convert(osissep);
-            XSLTProperty.DIRECTION.setState(direction ? "ltr" : "rtl"); //$NON-NLS-1$ //$NON-NLS-2$
+            XSLTProperty.DIRECTION.setState(direction ? "ltr" : "rtl");
 
             URI loc = bmd.getLocation();
-            XSLTProperty.BASE_URL.setState(loc == null ? "" : loc.getPath()); //$NON-NLS-1$
+            XSLTProperty.BASE_URL.setState(loc == null ? "" : loc.getPath());
 
             if (bmd.getBookCategory() == BookCategory.BIBLE) {
                 XSLTProperty.setProperties(htmlsep);
@@ -175,10 +175,10 @@
              */
             /* Apply the fix if the text is too long and we are not Java 1.5 or greater */
             if (txt.length() > 32768 && BookCategory.GENERAL_BOOK.equals(book.getBookCategory())) {
-                String javaVersion = System.getProperty("java.specification.version"); //$NON-NLS-1$
-                if (javaVersion == null || "1.5".compareTo(javaVersion) > 0) //$NON-NLS-1$
+                String javaVersion = System.getProperty("java.specification.version");
+                if (javaVersion == null || "1.5".compareTo(javaVersion) > 0)
                 {
-                    txt = txt.substring(0, 32760) + "..."; //$NON-NLS-1$
+                    txt = txt.substring(0, 32760) + "...";
                 }
             }
 
@@ -193,7 +193,7 @@
 
     public String getTipTitle() {
         if (event == null)
-            return "Untitled Tip"; //$NON-NLS-1$
+            return "Untitled Tip";
         return event.getURI();
     }
 
@@ -292,7 +292,7 @@
         txtView = new AntiAliasedTextPane();
         txtView.setEditable(false);
         txtView.setEditorKit(new HTMLEditorKit());
-        this.add(txtView, "HTMLTip"); //$NON-NLS-1$
+        this.add(txtView, "HTMLTip");
     }
 
     public Dimension getPreferredSize() {

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -343,9 +343,9 @@
         is.defaultReadObject();
     }
 
-    private static final String BLUR1 = "Blur1"; //$NON-NLS-1$
-    private static final String BLUR5 = "Blur5"; //$NON-NLS-1$
-    private static final String DELETE_SELECTED = "DeleteSelected"; //$NON-NLS-1$
+    private static final String BLUR1 = "Blur1";
+    private static final String BLUR5 = "Blur5";
+    private static final String DELETE_SELECTED = "DeleteSelected";
 
     /**
      * The whole key that we are viewing

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,10 +1,9 @@
 
-Blur1.MnemonicKey=1
-Blur1.Name=Expand by 1 verse
-Blur1.ToolTip=Expand all or the selected passage by 1 verse.
-Blur5.MnemonicKey=5
-Blur5.Name=Expand by 5 verses
-Blur5.ToolTip=Expand all or the selected passage by 5 verses.
-DeleteSelected.MnemonicKey=D
-DeleteSelected.Name=Remove Selected
-DeleteSelected.ToolTip=Remove the selected passages in the current passage list.
+Blur1.Name    = Expand by 1 verse
+Blur1.ToolTip = Expand all or the selected passage by 1 verse.
+
+Blur5.Name    = Expand by 5 verses
+Blur5.ToolTip = Expand all or the selected passage by 5 verses.
+
+DeleteSelected.Name    = Remove Selected
+DeleteSelected.ToolTip = Remove the selected passages in the current passage list.

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,10 +1,9 @@
 
-Blur1.MnemonicKey=1
-Blur1.Name=Einen weiteren Vers zeigen
-Blur1.ToolTip=Einen weiteren Vers zeigen
-Blur5.MnemonicKey=5
-Blur5.Name=Zeige f\u00FCnf weitere Verse
-Blur5.ToolTip=Zeige f\u00FCnf weitere Verse.
-DeleteSelected.MnemonicKey=E
-DeleteSelected.Name=Entferne ausgew\u00E4hlte Verse 
-DeleteSelected.ToolTip=Entferne ausgew\u00E4hlte Verse von der Liste.
+Blur1.Name    = Einen weiteren Vers zeigen
+Blur1.ToolTip = Einen weiteren Vers zeigen
+
+Blur5.Name    = Zeige f\u00FCnf weitere Verse
+Blur5.ToolTip = Zeige f\u00FCnf weitere Verse.
+
+DeleteSelected.Name    = Entferne ausgew\u00E4hlte Verse 
+DeleteSelected.ToolTip = Entferne ausgew\u00E4hlte Verse von der Liste.

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,10 +1,9 @@
 
-Blur1.MnemonicKey=1
-Blur1.Name=1 \u0622\u06CC\u0647 \u0628\u06CC\u0634\u062A\u0631
-Blur1.ToolTip=1 \u0622\u06CC\u0647 \u0628\u06CC\u0634\u062A\u0631
-Blur5.MnemonicKey=5
-Blur5.Name=5 \u0622\u06CC\u0627\u062A \u0628\u06CC\u0634\u062A\u0631
-Blur5.ToolTip=5 \u0622\u06CC\u0627\u062A \u0628\u06CC\u0634\u062A\u0631
-DeleteSelected.MnemonicKey=
-DeleteSelected.Name=\u0627\u0646\u062A\u062E\u0627\u0628 \u062D\u0641\u0632 \u06A9\u0646
-DeleteSelected.ToolTip=\u0627\u0646\u062A\u062E\u0627\u0628 \u062D\u0641\u0632 \u06A9\u0646
+Blur1.Name    = 1 \u0622\u06CC\u0647 \u0628\u06CC\u0634\u062A\u0631
+Blur1.ToolTip = 1 \u0622\u06CC\u0647 \u0628\u06CC\u0634\u062A\u0631
+
+Blur5.Name    = 5 \u0622\u06CC\u0627\u062A \u0628\u06CC\u0634\u062A\u0631
+Blur5.ToolTip = 5 \u0622\u06CC\u0627\u062A \u0628\u06CC\u0634\u062A\u0631
+
+DeleteSelected.Name    = \u0627\u0646\u062A\u062E\u0627\u0628 \u062D\u0641\u0632 \u06A9\u0646
+DeleteSelected.ToolTip = \u0627\u0646\u062A\u062E\u0627\u0628 \u062D\u0641\u0632 \u06A9\u0646

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,10 +1,9 @@
 
-Blur1.MnemonicKey=1
-Blur1.Name=Kembangkan konteks sebanyak 1 ayat
-Blur1.ToolTip=Kembangkan konteks sebanyak 1 asyat
-Blur5.MnemonicKey=5
-Blur5.Name=Kembangkan konteks sebanyak 5 ayat
-Blur5.ToolTip=Kembangkan konteks sebanyak 5 ayat
-DeleteSelected.MnemonicKey=D
-DeleteSelected.Name=Kurangi Pilihan
-DeleteSelected.ToolTip=Kurangi pilihan dari daftar.
+Blur1.Name    = Kembangkan konteks sebanyak 1 ayat
+Blur1.ToolTip = Kembangkan konteks sebanyak 1 asyat
+
+Blur5.Name    = Kembangkan konteks sebanyak 5 ayat
+Blur5.ToolTip = Kembangkan konteks sebanyak 5 ayat
+
+DeleteSelected.Name    = Kurangi Pilihan
+DeleteSelected.ToolTip = Kurangi pilihan dari daftar.

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_zh.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_zh.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,10 +1,9 @@
 
-Blur1.MnemonicKey=
-Blur1.Name=\u8A73\u8FF0\u3127\u53E5\u7D93\u7BC0
-Blur1.ToolTip=\u8A73\u8FF0\u5168\u90E8\u6216\u662F\u6240\u9078\u7684\u3127\u53E5\u7D93\u7BC0
-Blur5.MnemonicKey=
-Blur5.Name=\u8A73\u8FF0\u4E94\u53E5\u7D93\u7BC0
-Blur5.ToolTip=\u8A73\u8FF0\u5168\u90E8\u6216\u662F\u6240\u9078\u7684\u4E94\u53E5\u7D93\u7BC0
-DeleteSelected.MnemonicKey=
-DeleteSelected.Name=\u79FB\u9664\u6240\u9078
-DeleteSelected.ToolTip=\u5F9E\u76EE\u524D\u7684\u5217\u8868\u79FB\u9664\u6240\u9078\u7684\u7D93\u7BC0
+Blur1.Name    = \u8A73\u8FF0\u3127\u53E5\u7D93\u7BC0
+Blur1.ToolTip = \u8A73\u8FF0\u5168\u90E8\u6216\u662F\u6240\u9078\u7684\u3127\u53E5\u7D93\u7BC0
+
+Blur5.Name    = \u8A73\u8FF0\u4E94\u53E5\u7D93\u7BC0
+Blur5.ToolTip = \u8A73\u8FF0\u5168\u90E8\u6216\u662F\u6240\u9078\u7684\u4E94\u53E5\u7D93\u7BC0
+
+DeleteSelected.Name    = \u79FB\u9664\u6240\u9078
+DeleteSelected.ToolTip = \u5F9E\u76EE\u524D\u7684\u5217\u8868\u79FB\u9664\u6240\u9078\u7684\u7D93\u7BC0

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_zh_CN.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeySidebar_zh_CN.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,10 +1,9 @@
 
-Blur1.MnemonicKey=
-Blur1.Name=\u8BE6\u8FF0\u3127\u53E5\u7ECF\u8282
-Blur1.ToolTip=\u8BE6\u8FF0\u5168\u90E8\u6216\u662F\u6240\u9009\u7684\u3127\u53E5\u7ECF\u8282
-Blur5.MnemonicKey=
-Blur5.Name=\u8BE6\u8FF0\u4E94\u53E5\u7ECF\u8282
-Blur5.ToolTip=\u8BE6\u8FF0\u5168\u90E8\u6216\u662F\u6240\u9009\u7684\u4E94\u53E5\u7ECF\u8282
-DeleteSelected.MnemonicKey=
-DeleteSelected.Name=\u79FB\u9664\u6240\u9009
-DeleteSelected.ToolTip=\u4ECE\u76EE\u524D\u7684\u5217\u8868\u79FB\u9664\u6240\u9009\u7684\u7ECF\u8282
+Blur1.Name    = \u8BE6\u8FF0\u3127\u53E5\u7ECF\u8282
+Blur1.ToolTip = \u8BE6\u8FF0\u5168\u90E8\u6216\u662F\u6240\u9009\u7684\u3127\u53E5\u7ECF\u8282
+
+Blur5.Name    = \u8BE6\u8FF0\u4E94\u53E5\u7ECF\u8282
+Blur5.ToolTip = \u8BE6\u8FF0\u5168\u90E8\u6216\u662F\u6240\u9009\u7684\u4E94\u53E5\u7ECF\u8282
+
+DeleteSelected.Name    = \u79FB\u9664\u6240\u9009
+DeleteSelected.ToolTip = \u4ECE\u76EE\u524D\u7684\u5217\u8868\u79FB\u9664\u6240\u9009\u7684\u7ECF\u8282

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeyTreeCellRenderer.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeyTreeCellRenderer.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/KeyTreeCellRenderer.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -52,7 +52,7 @@
                 setText(key.getName());
             }
         } else { // if (value != null)
-            log.warn("value is not a key: " + value.getClass().getName()); //$NON-NLS-1$
+            log.warn("value is not a key: " + value.getClass().getName());
         }
 
         return this;

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -31,10 +31,10 @@
  * @author Joe Walker [joe at eireneh dot com]
  */
 final class Msg extends MsgBase {
-    static final Msg WHOLE_BIBLE = new Msg("BibleTreeNode.WholeBible"); //$NON-NLS-1$
-    static final Msg PART_BIBLE = new Msg("BibleTreeNode.PartBible"); //$NON-NLS-1$
-    static final Msg ERROR = new Msg("WholeBibleTreeNode.Error"); //$NON-NLS-1$
-    static final Msg WHOLE = new Msg("WholeBibleTreeNode.Whole"); //$NON-NLS-1$
+    static final Msg WHOLE_BIBLE = new Msg("The Whole Bible");
+    static final Msg PART_BIBLE = new Msg("Search ({0})");
+    static final Msg ERROR = new Msg("Error");
+    static final Msg WHOLE = new Msg("The Bible");
 
     /**
      * Passthrough ctor
@@ -42,4 +42,43 @@
     private Msg(String name) {
         super(name);
     }
+    /**
+     * Get the internationalized text, but return key if key is unknown.
+     * 
+     * @param key
+     * @return the internationalized text
+     */
+    public static String gettext(String key)
+    {
+        return msg.lookup(key);
+    }
+
+    /**
+     * Get the internationalized text, but return key if key is unknown.
+     * The text requires one parameter to be passed.
+     * 
+     * @param key
+     * @param param
+     * @return the formatted, internationalized text
+     */
+    public static String gettext(String key, Object param)
+    {
+        return msg.toString(key, param);
+    }
+
+    /**
+     * Get the internationalized text, but return key if key is unknown.
+     * The text requires one parameter to be passed.
+     * 
+     * @param key
+     * @param param
+     * @return the formatted, internationalized text
+     */
+    public static String gettext(String key, Object[] params)
+    {
+        return msg.toString(key, params);
+    }
+
+    private static MsgBase msg = new Msg();
+    Msg() {}
 }

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,11 +1,7 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
+Error = Error
 
-BibleTreeNode.Whole_Bible=The Whole Bible
-BibleTreeNode.Part_Bible=Search ({0})
-WholeBibleTreeNode.Error=Error
-WholeBibleTreeNode.Whole=The Bible
+Search\ ({0}) = Search ({0})
+
+The\ Bible = The Bible
+
+The\ Whole\ Bible = The Whole Bible

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,11 +1,7 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
+Error = Fehler
 
-BibleTreeNode.Whole_Bible=Die ganze Bibel
-BibleTreeNode.Part_Bible=Suche ({0})
-WholeBibleTreeNode.Error=Fehler
-WholeBibleTreeNode.Whole=Die Bibel
+Search\ ({0}) = Suche ({0})
+
+The\ Bible = Die Bibel
+
+The\ Whole\ Bible = Die ganze Bibel

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,11 +1,7 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
+Error = \u0627\u0634\u062A\u0628\u0627
 
-BibleTreeNode.Whole_Bible=\u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u06A9\u0627\u0645\u0644
-BibleTreeNode.Part_Bible=\u0628\u0627\u0632 \u0631\u0633\u06CC \u0628\u06A9\u0646 ({0})
-WholeBibleTreeNode.Error=\u0627\u0634\u062A\u0628\u0627
-WholeBibleTreeNode.Whole=\u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633
+Search\ ({0}) = \u0628\u0627\u0632 \u0631\u0633\u06CC \u0628\u06A9\u0646 ({0})
+
+The\ Bible = \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633
+
+The\ Whole\ Bible = \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u06A9\u0627\u0645\u0644

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,11 +1,7 @@
-# The naming convention for the keys in the file is ClassName.MessageName
-# Where ClassName is the name of the class using the property.
-# When the resource is used by more than one class it should be the one
-# that the resource is most closely associated.
-# The MessageName should be mixed case, with a leading capital.
-# It should have no spaces or other punctuation (e.g. _, -, ', ...)
+Error = Kesalahan
 
-BibleTreeNode.Whole_Bible=Semua Alkitab
-BibleTreeNode.Part_Bible=Pencariaan ({0})
-WholeBibleTreeNode.Error=Kesalahan
-WholeBibleTreeNode.Whole=Alkitab
+Search\ ({0}) = Pencariaan ({0})
+
+The\ Bible = Alkitab
+
+The\ Whole\ Bible = Semua Alkitab

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_zh.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_zh.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,6 +1,7 @@
-#Created by JInto - www.guh-software.de
-#Fri Dec 28 15:26:41 CST 2007
-BibleTreeNode.Part_Bible=\u641C\u5C0B ({0})
-BibleTreeNode.Whole_Bible=\u65B0\u820A\u7D04\u8056\u7D93
-WholeBibleTreeNode.Error=\u932F\u8AA4
-WholeBibleTreeNode.Whole=\u8056\u7D93
+Error = \u932F\u8AA4
+
+Search\ ({0}) = \u641C\u5C0B ({0})
+
+The\ Bible = \u8056\u7D93
+
+The\ Whole\ Bible = \u65B0\u820A\u7D04\u8056\u7D93

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_zh_CN.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/Msg_zh_CN.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,6 +1,7 @@
-#Created by JInto - www.guh-software.de
-#Fri Dec 28 15:26:40 CST 2007
-BibleTreeNode.Part_Bible=\u641C\u5BFB ({0})
-BibleTreeNode.Whole_Bible=\u65B0\u65E7\u7EA6\u5723\u7ECF
-WholeBibleTreeNode.Error=\u9519\u8BEF
-WholeBibleTreeNode.Whole=\u5723\u7ECF
+Error = \u9519\u8BEF
+
+Search\ ({0}) = \u641C\u5BFB ({0})
+
+The\ Bible = \u5723\u7ECF
+
+The\ Whole\ Bible = \u65B0\u65E7\u7EA6\u5723\u7ECF

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/WholeBibleTreeNode.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/WholeBibleTreeNode.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/passage/WholeBibleTreeNode.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -133,7 +133,8 @@
         try {
             switch (level) {
             case LEVEL_BIBLE:
-                return Msg.WHOLE.toString();
+                // TRANSLATOR: The top level of the tree of Bible books, chapters and verses.
+                return Msg.gettext("The Bible");
 
             case LEVEL_BOOK:
                 return BibleInfo.getPreferredBookName(range.getStart().getBook());
@@ -145,11 +146,12 @@
                 return shaper.shape(Integer.toString(range.getStart().getVerse()));
 
             default:
-                return Msg.ERROR.toString();
+                // TRANSLATOR: Unexpected error condition.
+                return Msg.gettext("Error");
             }
         } catch (NoSuchVerseException ex) {
             assert false : ex;
-            return "!Error!"; //$NON-NLS-1$
+            return "!Error!";
         }
     }
 

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/util/ConfigurableSwingConverter.java
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/util/ConfigurableSwingConverter.java	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/util/ConfigurableSwingConverter.java	2010-10-23 20:53:47 UTC (rev 1997)
@@ -63,7 +63,7 @@
      */
     public String[] getStyles() {
         try {
-            String search = "xsl/cswing/" + NetUtil.INDEX_FILE; //$NON-NLS-1$
+            String search = "xsl/cswing/" + NetUtil.INDEX_FILE;
             URL index = ResourceUtil.getResource(search);
             return NetUtil.listByIndexFile(NetUtil.toURI(index), new XSLTFilter());
         } catch (IOException ex) {
@@ -76,7 +76,7 @@
      */
     public SAXEventProvider convert(SAXEventProvider xmlsep) throws TransformerException {
         try {
-            String path = "xsl/cswing/" + style; //$NON-NLS-1$
+            String path = "xsl/cswing/" + style;
             URL xslurl = ResourceUtil.getResource(path);
 
             TransformingSAXEventProvider tsep = new TransformingSAXEventProvider(NetUtil.toURI(xslurl), xmlsep);
@@ -141,10 +141,10 @@
     /**
      * The font to be used in OSIS->HTML generation
      */
-    private static String font = "Serif-PLAIN-14"; //$NON-NLS-1$
+    private static String font = "Serif-PLAIN-14";
 
     /**
      * The stylesheet we are transforming using
      */
-    private static String style = "simple.xsl"; //$NON-NLS-1$
+    private static String style = "simple.xsl";
 }

Modified: trunk/bibledesktop/src/main/resources/config.properties
===================================================================
--- trunk/bibledesktop/src/main/resources/config.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/resources/config.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,6 +1,3 @@
-# The naming convention for the keys in the file is to match that of the
-# keys of the options in the config.xml file.
-# Since the keys may have spaces these need to be escaped here.
 Bibles.name=Bibles
 Bibles.RetainCurrent.name=Use Current Bible
 Bibles.RetainCurrent.help=New Bible Views use the last chosen Bible. Otherwise, use the default Bible.
@@ -57,7 +54,6 @@
 Passages.BlurringRules.help=Stay within chapter boundaries or not.
 Passages.BlurringRules.alternative.0=None
 Passages.BlurringRules.alternative.1=Stay within chapter boundaries
-#Passages.BlurringRules.alternative.2=Stay within book boundaries
 Passages.BookCase.name=Book Case
 Passages.BookCase.help=What case should we use to display the Bible book names.
 Passages.BookCase.alternative.0=lower

Modified: trunk/bibledesktop/src/main/resources/config_de.properties
===================================================================
--- trunk/bibledesktop/src/main/resources/config_de.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/resources/config_de.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,5 +1,3 @@
-#Created by JInto - www.guh-software.de
-#Sun Mar 02 18:04:59 CET 2008
 Advanced.DefaultPassageType.alternative.0=Speed (Rocket)
 Advanced.DefaultPassageType.alternative.1=Write Speed (Bitwise)
 Advanced.DefaultPassageType.alternative.2=Size (Distinct)

Modified: trunk/bibledesktop/src/main/resources/config_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/resources/config_fa.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/resources/config_fa.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,7 +1,3 @@
-# The naming convention for the keys in the file is to match that of the
-# keys of the options in the config.xml file.
-# Since the keys may have spaces these need to be escaped here.
-
 Bibles.name=\u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633
 Bibles.RetainCurrent.name=\u0627\u0632 \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u0627\u062E\u06CC\u0631 \u0627\u0633\u062A\u0641\u0627\u062F\u0647 \u06A9\u0646\u06CC\u062F
 Bibles.RetainCurrent.help=\u0647\u0631 \u0634\u0645\u0627\u062D\u0644 \u062A\u0631\u0698\u0648\u0645\u0647\u06CC \u0642\u0628\u0644\u06CC \u06CC\u0627 \u062A\u0631\u0698\u0648\u0645\u0647\u06CC\u0627\u0639\u062F\u06CC \u0627\u0633\u062A\u0641\u062F\u0647 \u0645\u06CC\u06A9\u0646\u062F
@@ -45,8 +41,6 @@
 BibleDisplay.AntiAliasDisplay.name=\u0628\u0647\u0628\u0648\u062F \u0641\u0648\u0646\u062A
 BibleDisplay.AntiAliasDisplay.help=
 
-# All the above refers to the presentation of the Bibles in the central viewing pane.
-
 SwordBook.name=\u0645\u062F\u0648\u0644\u0647\u0627 \u06A9\u062A\u0627\u0628\u0647\u0627
 SwordBook.BookSearchPath.name=\u0641\u0647\u0631\u0633\u062A \u06A9\u062A\u0627\u0628\u0647\u0627
 SwordBook.BookSearchPath.help=
@@ -62,7 +56,6 @@
 Passages.BlurringRules.help=\u0628\u06CC\u0634\u062A\u0631 \u0627\u0633 \u06CC\u06A9 \u0628\u0627\u0628 \u062F\u0631 \u0647\u0631 \u0635\u0641\u0639\u0647\u061F
 Passages.BlurringRules.alternative.0=\u0647\u06CC\u062C
 Passages.BlurringRules.alternative.1=\u0628\u0627\u0628
-#Passages.BlurringRules.alternative.2=\u06A9\u062A\u0627\u0628
 
 # The BookCase option is relevant only for scripts with upper case. I have therefore taken them out. I also do not know exactly how to translate them anyway...
 Passages.BookCase.ignore=true
@@ -82,30 +75,3 @@
 Application.UIFont.help=\u0641\u0648\u0646\u062A \u0639\u0645\u0648\u0645\u06CC \u0628\u0631\u0646\u0627\u0645\u0647
 Application.WebWarning.name=\u0627\u062E\u0637\u0627\u0631 \u0627\u06CC\u0646\u062A\u0631\u0646\u062A
 Application.WebWarning.help=
-
-# The following are not for general use and are hidden from view
-#BibleDisplay.CSSOverride.name=CSS Override
-#BibleDisplay.CSSOverride.help=Use an alternate CSS Stylesheet.
-#BibleDisplay.Converter.name=Converter
-#BibleDisplay.Converter.help=The engine used to generate the book display
-#BibleDisplay.ConfigurableStylesheet.name=Configurable Stylesheet
-#BibleDisplay.ConfigurableStylesheet.help=The style applied to displayed Books when using the configurable styler.
-#Application.LookAndFeel.name=Look and Feel
-#Application.LookAndFeel.help=The look and feel of the application.
-#Advanced.name=Advanced
-#Advanced.ViewSource.hidden=true
-#Advanced.ViewSource.name=View Source
-#Advanced.ViewSource.help=Show View Source in the View menu.
-#Advanced.DetailShown.hidden=true
-#Advanced.DetailShown.name=Show Stack Trace
-#Advanced.DetailShown.help=Show the stack trace for reported exceptions.
-#Advanced.SourcePath.name=Source Path
-#Advanced.SourcePath.help=The directories to search for source code in when investigating an exception.
-#Advanced.DefaultPassageType.name=Default Passage Type
-#Advanced.DefaultPassageType.help=What type of passage does the PassageFactory create by default.
-#Advanced.DefaultPassageType.alternative.0=Speed (Rocket)
-#Advanced.DefaultPassageType.alternative.1=Write Speed (Bitwise)
-#Advanced.DefaultPassageType.alternative.2=Size (Distinct)
-#Advanced.DefaultPassageType.alternative.3=Mix (Ranged)
-#Advanced.IncludeAdvancedTabs.name=Include Advanced Tabs
-#Advanced.IncludeAdvancedTabs.help=Are the advanced tabs visible in the "About ..." Dialog. (Requires restart)

Modified: trunk/bibledesktop/src/main/resources/config_in.properties
===================================================================
--- trunk/bibledesktop/src/main/resources/config_in.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/resources/config_in.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,6 +1,3 @@
-# The naming convention for the keys in the file is to match that of the
-# keys of the options in the config.xml file.
-# Since the keys may have spaces these need to be escaped here.
 Bibles.name=Terjemahan
 Bibles.RetainCurrent.name=Gunakan Teks Biblika
 Bibles.RetainCurrent.help=Tampilan baru menggunakan pilihan terakhir. Selain itu, gunakan Teks Biblika Default
@@ -57,7 +54,6 @@
 Passages.BlurringRules.help=Dalam batasan pasal atau tidak.
 Passages.BlurringRules.alternative.0=Tidak
 Passages.BlurringRules.alternative.1=Dalam batasan pasal
-#Passages.BlurringRules.alternative.2=Stay within book boundaries
 Passages.BookCase.name=Buku Huruf Kapital
 Passages.BookCase.help=Tampilan name buku dalam huruf.
 Passages.BookCase.alternative.0=biasa
@@ -79,38 +75,3 @@
 Application.UIFont.help=Font untuk applikasi (Membutuhkan restart)
 Application.WebWarning.name=Peringatan Internet
 Application.WebWarning.help=Peringatan Internet
-
-# The following are not for general use and are hidden from view
-BibleDisplay.CSSOverride.hidden=true
-BibleDisplay.CSSOverride.name=CSS Override
-BibleDisplay.CSSOverride.help=Use an alternate CSS Stylesheet.
-BibleDisplay.Converter.hidden=true
-BibleDisplay.Converter.name=Converter
-BibleDisplay.Converter.help=The engine used to generate the book display
-BibleDisplay.ConfigurableStylesheet.hidden=true
-BibleDisplay.ConfigurableStylesheet.name=Configurable Stylesheet
-BibleDisplay.ConfigurableStylesheet.help=The style applied to displayed Books when using the configurable styler.
-Application.LookAndFeel.hidden=true
-Application.LookAndFeel.name=Look and Feel
-Application.LookAndFeel.help=The look and feel of the application.
-Advanced.name=Advanced
-Advanced.ViewSource
-Advanced.ViewSource.hidden=true
-Advanced.ViewSource.name=View Source
-Advanced.ViewSource.help=Show View Source in the View menu.
-Advanced.DetailShown.hidden=true
-Advanced.DetailShown.name=Show Stack Trace
-Advanced.DetailShown.help=Show the stack trace for reported exceptions.
-Advanced.SourcePath.hidden=true
-Advanced.SourcePath.name=Source Path
-Advanced.SourcePath.help=The directories to search for source code in when investigating an exception.
-Advanced.DefaultPassageType.hidden=true
-Advanced.DefaultPassageType.name=Default Passage Type
-Advanced.DefaultPassageType.help=What type of passage does the PassageFactory create by default.
-Advanced.DefaultPassageType.alternative.0=Speed (Rocket)
-Advanced.DefaultPassageType.alternative.1=Write Speed (Bitwise)
-Advanced.DefaultPassageType.alternative.2=Size (Distinct)
-Advanced.DefaultPassageType.alternative.3=Mix (Ranged)
-Advanced.IncludeAdvancedTabs.hidden=true
-Advanced.IncludeAdvancedTabs.name=Include Advanced Tabs
-Advanced.IncludeAdvancedTabs.help=Are the advanced tabs visible in the "About ..." Dialog. (Requires restart)

Modified: trunk/bibledesktop/src/main/resources/config_vi.properties
===================================================================
--- trunk/bibledesktop/src/main/resources/config_vi.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/resources/config_vi.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,159 +1,77 @@
-# The naming convention for the keys in the file is to match that of the
-# keys of the options in the config.xml file.
-# Since the keys may have spaces these need to be escaped here.
 Bibles.name=Kinh Th\u00E1nh 
-#Bibles
 Bibles.RetainCurrent.name=D\u00F9ng Kinh Th\u00E1nh Hi\u1EC7n Th\u1EDDi 
-#Use Current Bible
 Bibles.RetainCurrent.help=C\u1EEDa S\u1ED5 Kinh Th\u00E1nh m\u1EDBi d\u00F9ng Kinh Th\u00E1nh ch\u1ECDn tr\u01B0\u1EDBc. N\u1EBFu kh\u00F4ng th\u00EC d\u00F9ng Kinh Th\u00E1nh m\u1EB7c \u0111\u1ECBnh.   
-#New Bible Views use the last chosen Bible. Otherwise, use the default Bible.
 Bibles.DefaultBible.name=Kinh Th\u00E1nh M\u1EB7c \u0110\u1ECBnh 
-#Default Bible
 Bibles.DefaultBible.help=Kinh Th\u00E1nh n\u00E0o l\u00E0 m\u1EB7c \u0111\u1ECBnh.
-#Which of the available Bibles is the default.
 Bibles.DefaultDictionary.hidden=true
 Bibles.DefaultDictionary.name=T\u1EEB \u0110i\u1EC3n M\u1EB7c \u0110\u1ECBnh 
-#Default Dictionary
 Bibles.DefaultDictionary.help=T\u1EEB \u0111i\u1EC3n n\u00E0o l\u00E0 m\u1EB7c \u0111\u1ECBnh. 
-#Which of the available Dictionaries is the default.
 Bibles.DefaultCommentary.hidden=true
 Bibles.DefaultCommentary.name=S\u00E1ch Gi\u1EA3i Ngh\u0129a M\u1EB7c \u0110\u1ECBnh 
-#Default Commentary
 Bibles.DefaultCommentary.help=S\u00E1ch gi\u1EA3i ngh\u0129a n\u00E0o l\u00E0 m\u1EB7c \u0111\u1ECBnh. 
-#Which of the available Commentaries is the default.
 Bibles.DefaultDailyDevotional.name=S\u00E1ch B\u1ED3i Linh H\u1EB1ng Ng\u00E0y M\u1EB7c \u0110\u1ECBnh
-#Default Daily Devotional
 Bibles.DefaultDailyDevotional.help=S\u00E1ch b\u1ED3i linh h\u1EB1ng ng\u00E0y n\u00E0o l\u00E0 m\u1EB7c \u0111\u1ECBnh. 
-#Which of the available Daily Devotionals is the default.
 Bibles.DefaultGreekDefinitions.name=\u0110\u1ECBnh Ngh\u0129a Ti\u1EBFng Hy\u002Dl\u1EA1p M\u1EB7c \u0110\u1ECBnh (Strong's)  
-#Default Greek Definitions (Strong's)
 Bibles.DefaultGreekDefinitions.help=\u0110\u1ECBnh Ngh\u0129a ti\u1EBFng Hy\u002Dl\u1EA1p (Strong's) n\u00E0o l\u00E0 m\u1EB7c \u0111\u1ECBnh. 
-#Which of the available Greek Definitions (Strong's) is the default.
 Bibles.DefaultHebrewDefinitions.name=\u0110\u1ECBnh Ngh\u0129a Ti\u1EBFng H\u00EA\u002Db\u01A1\u002Dr\u01A1 M\u1EB7c \u0110\u1ECBnh (Strong's)   
-#Default Hebrew Definitions (Strong's)
 Bibles.DefaultHebrewDefinitions.help=\u0110\u1ECBnh Ngh\u0129a ti\u1EBFng H\u00EA\u002Db\u01A1\u002Dr\u01A1 (Strong's) n\u00E0o l\u00E0 m\u1EB7c \u0111\u1ECBnh. 
-#Which of the available Hebrew Definitions (Strong's) is the default.
 Bibles.DefaultGreekParse.name=S\u00E1ch H\u01B0\u1EDBng D\u1EABn Ph\u00E2n T\u00EDch T\u1EEB Ng\u1EEF Ti\u1EBFng Hy\u002Dl\u1EA1p M\u1EB7c \u0110\u1ECBnh
-#Default Greek Morphology/Parsing Guides
 Bibles.DefaultGreekParse.help=S\u00E1ch H\u01B0\u1EDBng D\u1EABn Ph\u00E2n T\u00EDch T\u1EEB Ng\u1EEF Ti\u1EBFng Hy\u002Dl\u1EA1p n\u00E0o l\u00E0 m\u1EB7c \u0111\u1ECBnh. 
-#Which of the available Greek Morphology/Parsing Guides is the default.
 Bibles.DefaultHebrewParse.hidden=true
 Bibles.DefaultHebrewParse.name=S\u00E1ch H\u01B0\u1EDBng D\u1EABn Ph\u00E2n T\u00EDch T\u1EEB Ng\u1EEF Ti\u1EBFng H\u00EA\u002Db\u01A1\u002Dr\u01A1 M\u1EB7c \u0110\u1ECBnh 
-#Default Hebrew Morphology/Parsing Guides
 Bibles.DefaultHebrewParse.help=S\u00E1ch H\u01B0\u1EDBng D\u1EABn Ph\u00E2n T\u00EDch T\u1EEB Ng\u1EEF Ti\u1EBFng H\u00EA\u002Db\u01A1\u002Dr\u01A1 n\u00E0o l\u00E0 m\u1EB7c \u0111\u1ECBnh.
-#Which of the available Hebrew Morphology/Parsing Guides is the default.
 
 BibleDisplay.name=Xem Kinh Th\u00E1nh 
-#Bible Display
 BibleDisplay.Reuse.name=M\u1EDF li\u00EAn k\u1EBFt trong c\u00F9ng c\u1EEDa s\u1ED5 Kinh Th\u00E1nh 
-#Open links in same Bible View
 BibleDisplay.Reuse.help=S\u1EED d\u1EE5ng l\u1EA1i c\u1EEDa s\u1ED5 Kinh Th\u00E1nh cho li\u00EAn k\u1EBFt.
-#Reuse Bible View for links.
 BibleDisplay.MaxPickers.name=H\u1EA1n \u0110\u1ED9 S\u1ED1 Cu\u1ED1n Kinh Th\u00E1nh \u0110\u1ED1i Chi\u1EBFu
-#Parallel Bible Limit
 BibleDisplay.MaxPickers.help=Gi\u1EDBi h\u1EA1n s\u1ED1 cu\u1ED1n Kinh Th\u00E1nh c\u00F3 th\u1EC3 xem m\u1ED9t l\u00FAc.
-#Limit the number of Bibles to show at once.
 BibleDisplay.Commentaries.name=Xem S\u00E1ch Gi\u1EA3i Ngh\u0129a c\u00F9ng v\u1EDBi Kinh Th\u00E1nh
-#List Commentaries with Bibles
 BibleDisplay.Commentaries.help=Xem S\u00E1ch Gi\u1EA3i Ngh\u0129a c\u00F9ng v\u1EDBi Kinh Th\u00E1nh
-#List Commentaries with Bibles
 BibleDisplay.Sidebar.name=Hi\u1EC7n Thanh B\u00EAn Ph\u00E2n \u0110o\u1EA1n
-#Show the Passage Sidebar
 BibleDisplay.Sidebar.help=Hi\u1EC7n Thanh B\u00EAn Ph\u00E2n \u0110o\u1EA1n
-#Show the Passage Sidebar
 BibleDisplay.VersesPerTab.name=S\u1ED1 C\u00E2u T\u1EEBng Th\u1EBB Tab
-#Verses Per Tab
 BibleDisplay.VersesPerTab.help=B\u1EA1n mu\u1ED1n hi\u1EC7n bao nhi\u00EAu c\u00E2u m\u1ED9t trang tr\u01B0\u1EDBc khi m\u1EDF theo ch\u1EBF \u0111\u1ED9 th\u1EBB tab.
-#How many verses do you want to display on a page before spilling to tabbed mode.
 BibleDisplay.RankedVerses.name=S\u1ED1 C\u00E2u M\u1EB7c \u0110\u1ECBnh t\u1EEB K\u1EBFt Qu\u1EA3 c\u1EE7a T\u00ECm Ki\u1EBFm
-#Default Number of Matched Verses
 BibleDisplay.RankedVerses.help=B\u1EA1n mu\u1ED1n hi\u1EC7n bao nhi\u00EAu c\u00E2u c\u1EE7a c\u00E2u \u0111\u01B0\u1EE3c t\u00ECm.
-#How many verses do you want to return from a Matched search.
 BibleDisplay.ConfigurableFont.name=Ch\u1ECDn Ph\u00F4ng Ch\u1EEF
-#Select Font
 BibleDisplay.ConfigurableFont.help=D\u00F9ng ph\u00F4ng ch\u1EEF n\u00E0y \u0111\u1EC3 hi\u1EC7n s\u00E1ch.
-#The font to be used to display books.
 BibleDisplay.AntiAliasDisplay.name=L\u00E0m Tr\u01A1n Ph\u00F4ng Ch\u1EEF
-#Font Smoothing
 BibleDisplay.AntiAliasDisplay.help=L\u00E0m tr\u01A1n ph\u00F4ng ch\u1EEF c\u00F3 th\u1EC3 ch\u1EADm nh\u01B0ng gi\u00FAp \u0111\u1EE1 di\u1EC7n m\u1EA1o c\u1EE7a m\u1ED9t s\u1ED1 ph\u00F4ng ch\u1EEF.
-#Font smoothing can be slow, but can help the appearance of some fonts.
-
 SwordBook.name=C\u00E1c S\u00E1ch D\u1EF1 \u00C1n G\u01B0\u01A1m 
-#Sword Books
 SwordBook.BookSearchPath.name=V\u1ECB Tr\u00ED Ph\u1EE5 V\u00E0o Ch\u1EE9a S\u00E1ch
-#Additional Book locations
 SwordBook.BookSearchPath.help=V\u1ECB tr\u00ED ph\u1EE5 v\u00E0o c\u00F3 th\u1EC3 t\u00ECm s\u00E1ch c\u1EE7a D\u1EF1 \u00C1n G\u01B0\u01A1m.
-#Additional places to look for SWORD books.
 SwordBook.DownloadDirectory.name=Th\u01B0 M\u1EF1c T\u1EA3i V\u1EC1
-#Download Directory
 SwordBook.DownloadDirectory.help=B\u1EA1n mu\u1ED1n gi\u1EEF s\u00E1ch t\u1EA3i v\u1EC1 m\u1EDBi \u1EDF \u0111\u00E2u.
-#Where should we store newly downloaded books.
-
 Passages.name=Ph\u00E2n \u0110o\u1EA1n
-#Passages
 Passages.PersistentNaming.name=Gi\u1EEF H\u00ECnh Th\u1EE9c c\u1EE7a Ph\u00E2n \u0110o\u1EA1n T\u1EEB Ngu\u1ED3n
-#Persistent Naming
 Passages.PersistentNaming.help=Gi\u1EEF h\u00ECnh th\u1EE9c c\u1EE7a ph\u00E2n \u0111o\u1EA1n t\u1EEB ngu\u1ED3n hay kh\u00F4ng.
-#Should your input of names .
 Passages.FullBookName.name=D\u00F9ng T\u00EAn S\u00E1ch Kinh Th\u00E1nh Ho\u00E0n Ch\u1EC9nh
-#Use Full Book Names
 Passages.FullBookName.help=D\u00F9ng t\u00EAn s\u00E1ch Kinh Th\u00E1nh ho\u00E0n ch\u1EC9nh hay kh\u00F4ng. 
-#Should full Bible book names or abbreviations be used.
 Passages.BlurringRules.name=Quy T\u1EAFc M\u1EDF R\u1ED9ng Ph\u00E2n \u0110o\u1EA1n 
-#Passage Expansion Rules
 Passages.BlurringRules.help=Quy t\u1EAFc m\u1EDF r\u1ED9ng ph\u00E2n \u0111o\u1EA1n m\u1EB7c \u0111\u1ECBnh \u002D ch\u1EC9 hi\u1EC7n theo ch\u01B0\u01A1ng hay kh\u00F4ng. 
-#What is the default expansion \u002D Stay within chapter boundaries or not.
 Passages.BlurringRules.alternative.0=Kh\u00F4ng 
-#None
 Passages.BlurringRules.alternative.1=Ch\u01B0\u01A1ng 
-#Chapter
-
-#Passages.BlurringRules.alternative.2=S\u00E1ch 
-#Book
 Passages.BookCase.name=T\u00EAn S\u00E1ch Vi\u1EBFt B\u1EB1ng Ch\u1EEF Hoa hay Ch\u1EEF Nh\u1ECF 
-#Book Case
 Passages.BookCase.help=Hi\u1EC7n t\u00EAn s\u00E1ch Kinh Th\u00E1nh b\u1EB1ng ch\u1EEF hoa hay ch\u1EEF nh\u1ECF. 
-#What case should we use to display the Bible book names.
 Passages.BookCase.alternative.0=ch\u1EEF nh\u1ECF 
-#lower
 Passages.BookCase.alternative.1=C\u00E2u 
-#Sentence
 Passages.BookCase.alternative.2=CH\u1EEE HOA 
-#UPPER
-
 Application.name=\u1EE8ng D\u1EE5ng 
-#Application
 Application.Language.name=Ng\u00F4n Ng\u1EEF 
-#Language
 Application.Language.help=Ng\u00F4n Ng\u1EEF c\u1EE7a \u1EE8ng D\u1EE5ng (Ph\u1EA3i Kh\u1EDFi \u0110\u1ED9ng L\u1EA1i) 
-#The language of the application. (Requires restart)
 Application.InitialLayout.name=C\u1EA5u H\u00ECnh M\u1EB7c \u0110\u1ECBnh
-#Initial Layout
 Application.InitialLayout.help=Kh\u1EDFi \u0110\u1ED9ng d\u00F9ng ch\u1EBF \u0111\u1ED9 th\u1EBB tab hay ch\u1EBF \u0111\u1ED9 c\u1EEDa s\u1ED5 ti\u1EC3u (Ph\u1EA3i Kh\u1EDFi \u0110\u1ED9ng L\u1EA1i)
-#Do you want to start in Tabbed or Multiple Document view mode (Requires restart)
 Application.InitialLayout.alternative.0=Ch\u1EBF \u0110\u1ED9 Th\u1EBB Tab 
-#Tabbed Document Interface
 Application.InitialLayout.alternative.1=Ch\u1EBF \u0110\u1ED9 C\u1EEDa S\u1ED5 Ti\u1EC3u
-#Multiple Document Interface
 Application.MaxHeight.name=Chi\u1EC1u Cao C\u1EEDa S\u1ED5 T\u1ED1i \u0110a
-#Maximum Window Height
 Application.MaxHeight.help=B\u1EA1n mu\u1ED1n chi\u1EC1u cao t\u1ED1i \u0111a c\u1EE7a c\u1EEDa s\u1ED5 bao nhi\u00EAu
-#The maximum height you want the window to be
 Application.MaxWidth.name=Chi\u1EC1u R\u1ED9ng C\u1EEDa S\u1ED5 T\u1ED1i \u0110a 
-#Maximum Window Width
 Application.MaxWidth.help=B\u1EA1n mu\u1ED1n chi\u1EC1u r\u1ED9ng t\u1ED1i \u0111a c\u1EE7a c\u1EEDa s\u1ED5 bao nhi\u00EAu 
-#The maximum width you want the window to be
 Application.UIFont.name=Ph\u00F4ng Ch\u1EEF Chung
-#General Font
 Application.UIFont.help=Ph\u00F4ng ch\u1EEF chung cho \u1EE9ng d\u1EE5ng (Ph\u1EA3i Kh\u1EDFi \u0110\u1ED9ng L\u1EA1i)
-#The font for the application (Requires restart)
 Application.WebWarning.name=C\u1EA3nh B\u00E1o Internet
-#Internet Warning
 Application.WebWarning.help=C\u1EA3nh B\u00E1o Internet
-#Internet Warning
-
-
-# The following are not for general use and are hidden from view
 BibleDisplay.CSSOverride.hidden=true
 BibleDisplay.CSSOverride.name=CSS Override
 BibleDisplay.CSSOverride.help=Use an alternate CSS Stylesheet.

Modified: trunk/bibledesktop/src/main/resources/config_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/resources/config_zh.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/resources/config_zh.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,5 +1,3 @@
-#Created by JInto - www.guh-software.de
-#Fri Dec 28 13:31:43 CST 2007
 Advanced.DefaultPassageType.alternative.0=Speed (Rocket)
 Advanced.DefaultPassageType.alternative.1=Write Speed (Bitwise)
 Advanced.DefaultPassageType.alternative.2=Size (Distinct)

Modified: trunk/bibledesktop/src/main/resources/config_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/resources/config_zh_CN.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/resources/config_zh_CN.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,5 +1,3 @@
-#Created by JInto - www.guh-software.de
-#Fri Dec 28 13:31:43 CST 2007
 Advanced.DefaultPassageType.alternative.0=Speed (Rocket)
 Advanced.DefaultPassageType.alternative.1=Write Speed (Bitwise)
 Advanced.DefaultPassageType.alternative.2=Size (Distinct)

Modified: trunk/bibledesktop/src/main/resources/limboConfig.properties
===================================================================
--- trunk/bibledesktop/src/main/resources/limboConfig.properties	2010-10-23 20:40:54 UTC (rev 1996)
+++ trunk/bibledesktop/src/main/resources/limboConfig.properties	2010-10-23 20:53:47 UTC (rev 1997)
@@ -1,7 +1,3 @@
-# The naming convention for the keys in the file is to match that of the
-# keys of the options in the config.xml file.
-# Since the keys may have spaces these need to be escaped here.
-
 Remote.RemoteHost.path=Remote.Remote Host
 Remote.RemoteHost.help=The URL of a remote HTTP host.
 Advanced.Raw.CacheData.path=Advanced.Raw.Cache Data




More information about the jsword-svn mailing list