← Back to team overview

quickshotdevs team mailing list archive

[Merge] lp:~dpm/quickshot/enable-translations into lp:quickshot

 

David Planella has proposed merging lp:~dpm/quickshot/enable-translations into lp:quickshot.

Requested reviews:
  Quickshot Developers (quickshotdevs)


This branch provides internationalization support for Quickshot by initializing gettext and marking some remaining strings for translation.
-- 
https://code.launchpad.net/~dpm/quickshot/enable-translations/+merge/25548
Your team Quickshot Developers is requested to review the proposed merge of lp:~dpm/quickshot/enable-translations into lp:quickshot.
=== modified file 'bin/quickshot'
--- bin/quickshot	2010-04-22 19:12:19 +0000
+++ bin/quickshot	2010-05-18 18:44:25 +0000
@@ -21,6 +21,9 @@
 import logging
 import optparse
 import gtk
+import gettext
+_ = gettext.gettext
+ngettext = gettext.ngettext
 
 # optional Launchpad integration
 # this shouldn't crash if not found as it is simply used for bug reporting
@@ -152,7 +155,7 @@
            p.wait()
            if not '10.04' in p.stdout.read():
                self.next_1.hide()
-               self.builder.get_object('label1').set_text("Welcome, to Quickshot.\n\n The Ubuntu manual requires the screenshots in ubuntu 10.04, \n please see your web browser for more information")  
+               self.builder.get_object('label1').set_text(_("Welcome, to Quickshot.\n\n The Ubuntu manual requires the screenshots in ubuntu 10.04, \n please see your web browser for more information"))  
                subprocess.Popen(['sensible-browser', 'https://wiki.ubuntu.com/ubuntu-manual/quickshot/getquickshot'])
 
 
@@ -195,7 +198,7 @@
             self.usersetup.show()
             if userutils.checkForUser():
                 """If the user already exists, skip ahead."""
-                self.usersetup.labeltop.set_label(" A \"quickshot\" user already exists.")
+                self.usersetup.labeltop.set_label(_(" A \"quickshot\" user already exists."))
                 self.usersetup.table1.hide()
                 self.usersetup.okbutton.hide()
                 self.usersetup.label.set_label(''.join((
@@ -413,7 +416,7 @@
             subprocess.Popen(["gnome-session-save", "--kill", "--silent"])
             #os.system("gnome-session-save --kill --silent")
         else:
-            self.builder.get_object('label19').set_text("Remaining:" + str(counter))
+            self.builder.get_object('label19').set_text("Remaining: %s" % str(counter))
 
     def show_next(self, button , data=None):
         """button in we can't change resolution window"""
@@ -474,8 +477,8 @@
 
         if self.screenshots is None:
             logging.getLogger().info('Fetching screencap state data from server')
-            self.screenshotdesclabel.set_text("Please wait while the screenshot list is downloaded...")
-            p = ProgressDialog.NewProgressDialog("Retrieving the list of screenshots...")
+            self.screenshotdesclabel.set_text(_("Please wait while the screenshot list is downloaded..."))
+            p = ProgressDialog.NewProgressDialog(_("Retrieving the list of screenshots..."))
             p.run_function_async(_update)
 
         if self.screenshots:
@@ -495,11 +498,11 @@
             #    self.screenshotstore.append([screenshot, "approved for inclusion"])
 
             if uncaptured:
-                self.screenshotdesclabel.set_text("Click on a screenshot entry in the list above to view a summary and begin capturing")
+                self.screenshotdesclabel.set_text(_("Click on a screenshot entry in the list above to view a summary and begin capturing"))
             else:
-                self.screenshotdesclabel.set_text("Every screenshot required for your language has been uploaded")
+                self.screenshotdesclabel.set_text(_("Every screenshot required for your language has been uploaded"))
         else:
-            self.screenshotdesclabel.set_text('Unable to retreve screenshot list from server: reason unknown; see console events')
+            self.screenshotdesclabel.set_text(_('Unable to retreve screenshot list from server: reason unknown; see console events'))
             
     def on_screenshotinfo_show(self, sender):
         logging.getLogger().debug('Displaying screenshot information')
@@ -538,7 +541,7 @@
         if "steps" in details:
             self.capture_label.set_text(details["steps"])
         else:
-            self.capture_label.set_text("Click \"Capture\" to take the screenshot.")
+            self.capture_label.set_text(_("Click \"Capture\" to take the screenshot."))
 
         self.screenshotinfo.hide()
         self.shotcheck.hide()
@@ -558,7 +561,8 @@
         
         self.capture_timer -= 1
         if self.capture_timer > 0:
-            self.capture_label.set_text("Taking the screenshot in " + str(self.capture_timer) + " seconds.")
+            sec_count = str(self.capture_timer)
+            self.capture_label.set_text(ngettext("Taking the screenshot in %(seconds)s second.", "Taking the screenshot in %(seconds)s seconds.", sec_count) % {'seconds': sec_count})
             return True
         else:
             self.capture.hide()
@@ -592,7 +596,7 @@
         
         name = self.screenshotstore.get_value(self.screenshottreeview.get_selection().get_selected()[1], 0)
         #TODO: check for errors
-        p = ProgressDialog.NewProgressDialog("Uploading the screenshot...")
+        p = ProgressDialog.NewProgressDialog(_("Uploading the screenshot..."))
         p.run_function_async(quickshot.lib.upload, options.server, {"language": self.get_active_language()[0], "name": name})
 
         #add the screenshot to the pending screenshots
@@ -619,7 +623,7 @@
     def on_screenshottreeview_cursor_changed(self, sender):
         logging.getLogger().debug('Updating screenshot details')
         
-        self.screenshotdesclabel.set_text("Please wait while screenshot details are downloaded...")
+        self.screenshotdesclabel.set_text(_("Please wait while screenshot details are downloaded..."))
         try:
             name = self.screenshotstore.get_value(self.screenshottreeview.get_selection().get_selected()[1], 0)
             self.screenshotdetails = quickshot.lib.get_screencap_details(options.server, {"name": name})
@@ -650,20 +654,25 @@
         ui_filename = None
 
     builder = gtk.Builder()
+    builder.set_translation_domain(gettext.textdomain())
     builder.add_from_file(ui_filename)
     window = builder.get_object("main")
     window.finish_initializing(builder)
     return window
 
 if __name__ == "__main__":
+    gettext.textdomain('quickshot')
+    gettext.bindtextdomain(gettext.textdomain(), '/usr/share/locale')
+    locale.bindtextdomain(gettext.textdomain(), gettext.bindtextdomain(gettext.textdomain()))
+
     #support for command line options
     parser = optparse.OptionParser(version="%prog %ver")
-    parser.add_option("-v", "--verbose", action="store_true", dest="verbose", help="Show debug messages")
-    parser.add_option("-r", "--remove", action="store_true", dest="remove", help="Remove quickshot user")
-    parser.add_option("-n", "--no-change-resolution", action="store_true", dest="no_resolution_change", help="Don't try to change the resolution")
-    parser.add_option("-s", "--server", action="store", type="string", dest="server", default="http://screenshots.ubuntu-manual.org/";, help="The server to use for screenshot data")
-    parser.add_option("--debug", action="store_true", dest="debug_mode", help="Enable debug behaviour and output")
-    parser.add_option("--devel", action="store_true", dest="development_mode", help="Enable development behaviour")
+    parser.add_option("-v", "--verbose", action="store_true", dest="verbose", help=_("Show debug messages"))
+    parser.add_option("-r", "--remove", action="store_true", dest="remove", help=_("Remove quickshot user"))
+    parser.add_option("-n", "--no-change-resolution", action="store_true", dest="no_resolution_change", help=_("Don't try to change the resolution"))
+    parser.add_option("-s", "--server", action="store", type="string", dest="server", default="http://screenshots.ubuntu-manual.org/";, help=_("The server to use for screenshot data"))
+    parser.add_option("--debug", action="store_true", dest="debug_mode", help=_("Enable debug behaviour and output"))
+    parser.add_option("--devel", action="store_true", dest="development_mode", help=_("Enable development behaviour"))
 
     (options, args) = parser.parse_args()
     

=== modified file 'po/quickshot.pot'
--- po/quickshot.pot	2010-04-22 17:01:44 +0000
+++ po/quickshot.pot	2010-05-18 18:44:25 +0000
@@ -8,13 +8,14 @@
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-04-22 19:51+0530\n"
+"POT-Creation-Date: 2010-05-18 20:40+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@xxxxxx>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
 
 #: ../data/ui/PreferencesQuickshotDialog.ui.h:1
 msgid "gtk-cancel"
@@ -173,7 +174,7 @@
 "the same password as your main account!</b>\n"
 msgstr ""
 
-#: ../data/ui/QuickshotWindow.ui.h:43
+#: ../data/ui/QuickshotWindow.ui.h:43 ../quickshot.desktop.in.h:1
 msgid "Quickshot"
 msgstr ""
 
@@ -260,3 +261,87 @@
 #: ../data/ui/QuickshotWindow.ui.h:73 ../data/ui/ProgressDialog.ui.h:1
 msgid "label"
 msgstr ""
+
+#: ../bin/quickshot.py:158
+msgid ""
+"Welcome, to Quickshot.\n"
+"\n"
+" The Ubuntu manual requires the screenshots in ubuntu 10.04, \n"
+" please see your web browser for more information"
+msgstr ""
+
+#: ../bin/quickshot.py:201
+msgid " A \"quickshot\" user already exists."
+msgstr ""
+
+#: ../bin/quickshot.py:480
+msgid "Please wait while the screenshot list is downloaded..."
+msgstr ""
+
+#: ../bin/quickshot.py:481
+msgid "Retrieving the list of screenshots..."
+msgstr ""
+
+#: ../bin/quickshot.py:501
+msgid ""
+"Click on a screenshot entry in the list above to view a summary and begin "
+"capturing"
+msgstr ""
+
+#: ../bin/quickshot.py:503
+msgid "Every screenshot required for your language has been uploaded"
+msgstr ""
+
+#: ../bin/quickshot.py:505
+msgid ""
+"Unable to retreve screenshot list from server: reason unknown; see console "
+"events"
+msgstr ""
+
+#: ../bin/quickshot.py:544
+msgid "Click \"Capture\" to take the screenshot."
+msgstr ""
+
+#: ../bin/quickshot.py:565
+#, python-format
+msgid "Taking the screenshot in %(seconds)s second."
+msgid_plural "Taking the screenshot in %(seconds)s seconds."
+msgstr[0] ""
+msgstr[1] ""
+
+#. TODO: check for errors
+#: ../bin/quickshot.py:599
+msgid "Uploading the screenshot..."
+msgstr ""
+
+#: ../bin/quickshot.py:626
+msgid "Please wait while screenshot details are downloaded..."
+msgstr ""
+
+#: ../bin/quickshot.py:670
+msgid "Show debug messages"
+msgstr ""
+
+#: ../bin/quickshot.py:671
+msgid "Remove quickshot user"
+msgstr ""
+
+#: ../bin/quickshot.py:672
+msgid "Don't try to change the resolution"
+msgstr ""
+
+#: ../bin/quickshot.py:673
+msgid "The server to use for screenshot data"
+msgstr ""
+
+#: ../bin/quickshot.py:674
+msgid "Enable debug behaviour and output"
+msgstr ""
+
+#: ../bin/quickshot.py:675
+msgid "Enable development behaviour"
+msgstr ""
+
+#: ../quickshot.desktop.in.h:2
+msgid "Quickshot application"
+msgstr ""

=== modified file 'quickshot.desktop.in'
--- quickshot.desktop.in	2010-03-25 19:11:42 +0000
+++ quickshot.desktop.in	2010-05-18 18:44:25 +0000
@@ -1,6 +1,6 @@
 [Desktop Entry]
-Name=Quickshot
-Comment=Quickshot application
+_Name=Quickshot
+_Comment=Quickshot application
 Categories=GNOME;Utility;
 Exec=quickshot
 Icon=/usr/share/quickshot/media/icon.png


Follow ups