From 579ad1e1c0af57d58c1ab316a0708f96db3ca98b Mon Sep 17 00:00:00 2001
From: Philip Hands <phil@hands.com>
Date: Wed, 15 Apr 2020 21:47:12 +0200
Subject: [PATCH 2/2] get rid of (incorrect for English) spaces before ? & !

I noticed that greek and dutch probably also have the same issue (but
I am not sure about that).

BTW I can imagine that the changes to comments seem excessive, but
once my sed command had done them, I thought I'd leave them just in
case they were deemed useful.
---
 CreateTemplate.py              |  2 +-
 SPDebugDialog.py               |  4 ++--
 SPMainCore.py                  | 16 ++++++++--------
 SPlogCheck.py                  |  4 ++--
 activity_dev/CreateTemplate.py |  2 +-
 childsplay.py                  |  2 +-
 lib/fourrow.py                 |  4 ++--
 lib/photoalbum.py              |  2 +-
 lib/spinbottle.py              |  4 ++--
 po/childsplay_ar_SA.po         | 18 +++++++++---------
 po/childsplay_ca_ES.po         | 18 +++++++++---------
 po/childsplay_cs_CZ.po         | 18 +++++++++---------
 po/childsplay_de_DE.po         | 18 +++++++++---------
 po/childsplay_el_GR.po         | 22 +++++++++++-----------
 po/childsplay_eo_EO.po         | 18 +++++++++---------
 po/childsplay_es_ES.po         | 18 +++++++++---------
 po/childsplay_fr_FR.po         | 18 +++++++++---------
 po/childsplay_hu_HU.po         | 18 +++++++++---------
 po/childsplay_it_IT.po         | 18 +++++++++---------
 po/childsplay_latest.po        | 18 +++++++++---------
 po/childsplay_nb_NO.po         | 18 +++++++++---------
 po/childsplay_nl_NL.po         | 20 ++++++++++----------
 po/childsplay_pl_PL.po         | 18 +++++++++---------
 po/childsplay_pt_BR.po         | 18 +++++++++---------
 po/childsplay_pt_PT.po         | 18 +++++++++---------
 po/childsplay_ro_RO.po         | 18 +++++++++---------
 po/childsplay_ru_RU.po         | 26 +++++++++++++-------------
 po/childsplay_sk_SK.po         | 18 +++++++++---------
 po/childsplay_sl_SI.po         | 18 +++++++++---------
 po/childsplay_sv_SE.po         | 18 +++++++++---------
 po/childsplay_uk_UA.po         | 18 +++++++++---------
 po/childsplay_vi_VN.po         | 18 +++++++++---------
 32 files changed, 234 insertions(+), 234 deletions(-)
 mode change 100644 => 100755 childsplay.py

diff --git a/CreateTemplate.py b/CreateTemplate.py
index f3bbaab..6175efd 100644
--- a/CreateTemplate.py
+++ b/CreateTemplate.py
@@ -114,7 +114,7 @@ data_dict = {'datadirname':'',\
             'tablecols':[],
             'iconpath':''}
 
-print "For which theme will the activity be created ?"
+print "For which theme will the activity be created?"
 ans = raw_input("\nGive the theme name: ")
 check_for_q(ans)
 if not ans:
diff --git a/SPDebugDialog.py b/SPDebugDialog.py
index fe25047..93d292b 100644
--- a/SPDebugDialog.py
+++ b/SPDebugDialog.py
@@ -246,7 +246,7 @@ class Debugscreen:
         except Exception, info:
             self.logger.error("Failed to make screenshot %s" % info)
             text = _("Failed to make screenshot %s") % info
-            dlg = SPWidgets.Dialog(text, title="ERROR !")
+            dlg = SPWidgets.Dialog(text, title="ERROR!")
             dlg.run()
             raise utils.MyError, "failed to make a screenshot"
         return path
@@ -279,7 +279,7 @@ class Debugscreen:
         result = self._validate_data(data)
         if result:
             dlg = SPWidgets.Dialog("The following entries are empty or have to little text:\n%s" % result,dialogwidth=500,  \
-                    buttons=["OK"], title='Error !')
+                    buttons=["OK"], title='Error!')
             dlg.run()
             return
         
diff --git a/SPMainCore.py b/SPMainCore.py
index a565950..f649665 100644
--- a/SPMainCore.py
+++ b/SPMainCore.py
@@ -572,7 +572,7 @@ class MainCoreGui:
         except (utils.MyError, ImportError, AttributeError), info:
             self.logger.exception("Error importing activity %s" % name)
             dlg = Dialog(_("Error importing activity\n%s" % info),dialogwidth=500,  \
-                    buttons=[_("OK")], title=_('Error !'))
+                    buttons=[_("OK")], title=_('Error!'))
             dlg.run()
             self.activity = self.menu_saved
             self.activity.refresh_sprites()
@@ -580,7 +580,7 @@ class MainCoreGui:
         except (utils.MyError, StandardError), info:
             self.logger.exception("Error constructing activity: %s" % info)
             dlg = Dialog(_("Error constructing activity\n%s" % info), dialogwidth=500, \
-                    buttons=[_("OK")], title=_('Error !'))
+                    buttons=[_("OK")], title=_('Error!'))
             dlg.run()
             self.activity = self.menu_saved
             self.activity.refresh_sprites()
@@ -725,8 +725,8 @@ class MainCoreGui:
         if nextlevel and self.activity.get_name() != 'dltr':
             if levelup and (self.levelcount + self.dicebuttons.get_minimal_level() -1) < 6:
                 if not no_question and not self.no_levelup_dlg:
-                    dlg = Dialog(_("You play very well, do you want to try the next level ?"), \
-                            buttons=[_("No"), _("Yes")], title=_('Question ?'), dialogwidth=300)
+                    dlg = Dialog(_("You play very well, do you want to try the next level?"), \
+                            buttons=[_("No"), _("Yes")], title=_('Question?'), dialogwidth=300)
                     dlg.run()
                     c = dlg.get_result()[0]
                 else:
@@ -810,8 +810,8 @@ class MainCoreGui:
     def ask_exit(self):
         self.logger.debug("ask_exit called")
         if not self.cmd_options.noexitquestion:
-            dlg = Dialog(_("Do you really want to quit ?"), fsize=20, dialogwidth=300,\
-                    buttons=[_("Cancel"), _("OK")], title=_('Quit ?'))
+            dlg = Dialog(_("Do you really want to quit?"), fsize=20, dialogwidth=300,\
+                    buttons=[_("Cancel"), _("OK")], title=_('Quit?'))
             dlg.run()
             c = dlg.get_result()[0]
             self.activity.refresh_sprites()
@@ -868,8 +868,8 @@ class MainCoreGui:
                 sprite.mouse_hover_leave()
                 if self.DTmode and self.DTactivity.get_name() == 'dltr':
                     self.lock.acquire()
-                    text = _("Are sure you want to quit the dailytraining ? All the results will be lost.")
-                    dlg = Dialog(text, buttons=[_("No"), _("Yes")], title=_('Question ?'), dialogwidth=300)
+                    text = _("Are sure you want to quit the dailytraining? All the results will be lost.")
+                    dlg = Dialog(text, buttons=[_("No"), _("Yes")], title=_('Question?'), dialogwidth=300)
                     dlg.run()
                     c = dlg.get_result()[0]
                     if c == _('No'):
diff --git a/SPlogCheck.py b/SPlogCheck.py
index 83e4540..7575683 100644
--- a/SPlogCheck.py
+++ b/SPlogCheck.py
@@ -48,12 +48,12 @@ try:
     #f = open('/home/stas/.schoolsplay.rc/test.log', 'r')
     lines = f.readlines()
 except IOError:
-    SPLCmodule_logger.warning("Can't find the SP logfile ?")
+    SPLCmodule_logger.warning("Can't find the SP logfile?")
     SPLCmodule_logger.warning("Start schoolsplay with minimal loglevel info to get a logfile.")
     SPLCmodule_logger.warning("Stopping the log parsing.")
 
 if not lines:
-    SPLCmodule_logger.warning("The logfile %s hasn't any content ?" % LOGPATH)
+    SPLCmodule_logger.warning("The logfile %s hasn't any content?" % LOGPATH)
     SPLCmodule_logger.warning("Stopping the log parsing.")
     lines =[]
     
diff --git a/activity_dev/CreateTemplate.py b/activity_dev/CreateTemplate.py
index f3bbaab..6175efd 100644
--- a/activity_dev/CreateTemplate.py
+++ b/activity_dev/CreateTemplate.py
@@ -114,7 +114,7 @@ data_dict = {'datadirname':'',\
             'tablecols':[],
             'iconpath':''}
 
-print "For which theme will the activity be created ?"
+print "For which theme will the activity be created?"
 ans = raw_input("\nGive the theme name: ")
 check_for_q(ans)
 if not ans:
diff --git a/childsplay.py b/childsplay.py
old mode 100644
new mode 100755
index 475d02e..6d563bf
--- a/childsplay.py
+++ b/childsplay.py
@@ -285,7 +285,7 @@ CPmodule_logger.info("Seniorplay stopped.")
 #    import SPlogCheck
 #except (ImportError, utils.SPError):
 #    text = _("Failed to parse the logfile, please contact the developers.\nMessage was: %s" % info)
-#    dlg = Dialog(text, buttons=[_('OK')], title=_('Warning !'))
+#    dlg = Dialog(text, buttons=[_('OK')], title=_('Warning!'))
 #    dlg.run()
 #except utils.MyError, info:
 #    text = "%s" % info
diff --git a/lib/fourrow.py b/lib/fourrow.py
index dece532..ac37da7 100644
--- a/lib/fourrow.py
+++ b/lib/fourrow.py
@@ -533,9 +533,9 @@ class Activity:
     def _restart(self):
         self.actives.empty()
         if self.winner == 'user':
-            txt = _("Congratulations, try again ?")
+            txt = _("Congratulations, try again?")
         else:
-            txt = _("Pity, try again ?")
+            txt = _("Pity, try again?")
         but = ButtonDynamic(txt, (250,110), fgcol=WHITE)
         but.connect_callback(self.next_exercise, MOUSEBUTTONUP)
         but.display_sprite()
diff --git a/lib/photoalbum.py b/lib/photoalbum.py
index 93eeb7f..ed617f7 100644
--- a/lib/photoalbum.py
+++ b/lib/photoalbum.py
@@ -230,7 +230,7 @@ class Activity:
         if extra_albums:
             albums += extra_albums
         if not albums:
-            self.SPG.tellcore_info_dialog(_("No photo albums found !\nYou should place your pictures inside directories called 'Album_1', 'Album_2' etc\n Place these directories inside %s" % self.my_datadir))
+            self.SPG.tellcore_info_dialog(_("No photo albums found!\nYou should place your pictures inside directories called 'Album_1', 'Album_2' etc\n Place these directories inside %s" % self.my_datadir))
             self.stopme = True
         # check that we don't use empty albums.
         self.logger.debug("found albums: %s" % albums)
diff --git a/lib/spinbottle.py b/lib/spinbottle.py
index 8480ea3..412d0bf 100644
--- a/lib/spinbottle.py
+++ b/lib/spinbottle.py
@@ -54,7 +54,7 @@ class SpinningWheel(pygame.sprite.Sprite):
         self.selected=0
 
     def clicked(self, target):
-        # FIXME: Dead code ??
+        # FIXME: Dead code??
         "returns true if the iwheel gets clicked"
 #        if not self.selected:
 #            self.selected= 1
@@ -63,7 +63,7 @@ class SpinningWheel(pygame.sprite.Sprite):
         return hitbox.colliderect(target)
 
     def update(self, current_time, bottom):
-        # FIXME: What's the purpose ? It doesn't stop at the letter
+        # FIXME: What's the purpose? It doesn't stop at the letter
         # Update every 10 milliseconds = 1/100th of a second.
         if self.next_update_time < current_time:
             # rotate and recenter sprite
diff --git a/po/childsplay_ar_SA.po b/po/childsplay_ar_SA.po
index 81ca841..754e827 100644
--- a/po/childsplay_ar_SA.po
+++ b/po/childsplay_ar_SA.po
@@ -99,7 +99,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -210,7 +210,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -249,7 +249,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "هل تريد الخروج فعلا؟"
 
 #: ../lib/electro_sp.py:185
@@ -257,7 +257,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -481,7 +481,7 @@ msgstr "لا"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -552,7 +552,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -589,12 +589,12 @@ msgid "Puzzle"
 msgstr "الغاز"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "خروج"
 
 #: ../lib/quiz.py:134
@@ -959,7 +959,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "يتحتم عليك جعل الكرة الزرقاء تدخل الحفرة (في المستوى الأول)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_ca_ES.po b/po/childsplay_ca_ES.po
index 3f48204..869ca1e 100644
--- a/po/childsplay_ca_ES.po
+++ b/po/childsplay_ca_ES.po
@@ -107,7 +107,7 @@ msgstr "Contesta les qüestions de la prova"
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 "Està segur de que vol surtir de l'entrenament diari? Tots els resultats es "
 "perderan."
@@ -233,7 +233,7 @@ msgid "Close"
 msgstr "Tancar"
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr "Felicitats, ¿provem un altra vegada?"
 
 #: ../SPHelpText.py:129
@@ -271,7 +271,7 @@ msgid "Details"
 msgstr "Detalls"
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Realment voleu eixir ?"
 
 #: ../lib/electro_sp.py:185
@@ -279,7 +279,7 @@ msgid "Electro_sp"
 msgstr "Electro_sp"
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr "¡Error!"
 
 #: ../SPMainCore.py:582
@@ -514,7 +514,7 @@ msgstr "No"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -594,7 +594,7 @@ msgid "Picture import"
 msgstr "Importar imatge"
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr "És una pena, intentar-ho un altre cop?"
 
 #: ../lib/puzzle.py:245
@@ -631,11 +631,11 @@ msgid "Puzzle"
 msgstr "Trecaclosques"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr "¿Pregunta?"
 
 #: ../SPMainCore.py:814
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "¿Surtir?"
 
 #: ../lib/quiz.py:134
@@ -1028,7 +1028,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Heu de posar la bola blava al forat ( al nivell 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr "Jugues molt bé, ¿vols provar el següent nivell?"
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_cs_CZ.po b/po/childsplay_cs_CZ.po
index e8606ae..cfd3428 100644
--- a/po/childsplay_cs_CZ.po
+++ b/po/childsplay_cs_CZ.po
@@ -93,7 +93,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -204,7 +204,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -243,7 +243,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Opravdu chcete skončit?"
 
 #: ../lib/electro_sp.py:185
@@ -251,7 +251,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -474,7 +474,7 @@ msgstr "Ne"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -545,7 +545,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -582,12 +582,12 @@ msgid "Puzzle"
 msgstr "Skládačka"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Konec"
 
 #: ../lib/quiz.py:134
@@ -953,7 +953,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Musíte dostat modrý míč do otvoru (v úrovni 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_de_DE.po b/po/childsplay_de_DE.po
index 89daf72..daa2ab6 100644
--- a/po/childsplay_de_DE.po
+++ b/po/childsplay_de_DE.po
@@ -97,7 +97,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -209,7 +209,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -248,7 +248,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Wollen Sie wirklich aufhören ?"
 
 #: ../lib/electro_sp.py:185
@@ -256,7 +256,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -482,7 +482,7 @@ msgstr "Nein"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -555,7 +555,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -592,12 +592,12 @@ msgid "Puzzle"
 msgstr "Puzzle"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Beenden "
 
 #: ../lib/quiz.py:134
@@ -974,7 +974,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Der blaue Ball muss in das Loch (in Level 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_el_GR.po b/po/childsplay_el_GR.po
index fab2c7c..e2fd6bb 100644
--- a/po/childsplay_el_GR.po
+++ b/po/childsplay_el_GR.po
@@ -109,7 +109,7 @@ msgstr "Απάντησε τις ερωτήσεις του κουίζ."
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 "Είσαι σίγουρος/ ή ότι θέλεις να εγκαταλείψεις την καθημερινή προπόνηση; "
 "Τότε, όλα τα αποτελέσματα θα χαθούν."
@@ -238,7 +238,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -277,7 +277,7 @@ msgid "Details"
 msgstr "Λεπτομέρειες"
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Θέλεις πραγματικά να κλείσεις το πρόγραμμα;"
 
 #: ../lib/electro_sp.py:185
@@ -285,7 +285,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr "Σφάλμα !"
 
 #: ../SPMainCore.py:582
@@ -530,7 +530,7 @@ msgstr "Όχι"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -608,7 +608,7 @@ msgid "Picture import"
 msgstr "Κουίζ με εικόνες"
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -646,11 +646,11 @@ msgid "Puzzle"
 msgstr "Παζλ"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr "Ερώτηση ;"
 
 #: ../SPMainCore.py:814
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Έξοδος ;"
 
 #: ../lib/quiz.py:134
@@ -1054,7 +1054,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Πρέπει να βάλεις τη μπλε μπάλα στην τρύπα (Επίπεδο 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr "Παίζεις πολύ καλά. Μήπως θέλεις να προσπαθήσεις το επόμενο επίπεδο ;"
 
 #: ../lib/electro_sp.py:196
@@ -1425,8 +1425,8 @@ msgstr ""
 #~ msgid "UppercaseMemory"
 #~ msgstr "Μνημονική τεχνική για τα κεφαλαία γράμματα"
 
-#~ msgid "Warning !"
-#~ msgstr "Προειδοποίηση !"
+#~ msgid "Warning!"
+#~ msgstr "Προειδοποίηση!"
 
 #~ msgid ""
 #~ "When a letter is hit on the keyboard, a corresponding animal is shown."
diff --git a/po/childsplay_eo_EO.po b/po/childsplay_eo_EO.po
index 84f6c1a..13f7f02 100644
--- a/po/childsplay_eo_EO.po
+++ b/po/childsplay_eo_EO.po
@@ -99,7 +99,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -210,7 +210,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -249,7 +249,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Ĉu certe vi volas ĉesi?"
 
 #: ../lib/electro_sp.py:185
@@ -257,7 +257,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -481,7 +481,7 @@ msgstr "Ne"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -552,7 +552,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -589,12 +589,12 @@ msgid "Puzzle"
 msgstr "Puzlo"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Finu"
 
 #: ../lib/quiz.py:134
@@ -968,7 +968,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Vi devas enirigi la bluan globon en la truon (en nivelo 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_es_ES.po b/po/childsplay_es_ES.po
index 9aa4aab..3406f19 100644
--- a/po/childsplay_es_ES.po
+++ b/po/childsplay_es_ES.po
@@ -105,7 +105,7 @@ msgstr "Responde  las preguntas del cuestionario."
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 "¿Está seguro de que quiere salir del entrenamiento diario? Todos los "
 "resultados se perderán."
@@ -234,7 +234,7 @@ msgid "Close"
 msgstr "Cerrar"
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr "Felicidades, ¿intentarlo de nuevo?"
 
 #: ../SPHelpText.py:129
@@ -272,7 +272,7 @@ msgid "Details"
 msgstr "Detalles"
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "¿Seguro que deseas salir?"
 
 #: ../lib/electro_sp.py:185
@@ -280,7 +280,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr "¡Error!"
 
 #: ../SPMainCore.py:582
@@ -515,7 +515,7 @@ msgstr "No"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -595,7 +595,7 @@ msgid "Picture import"
 msgstr "Importar imágen"
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr "Es una pena, ¿intentamos de nuevo?"
 
 #: ../lib/puzzle.py:245
@@ -632,11 +632,11 @@ msgid "Puzzle"
 msgstr "Rompecabezas"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr "¿Pregunta?"
 
 #: ../SPMainCore.py:814
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "¿Salir?"
 
 #: ../lib/quiz.py:134
@@ -1033,7 +1033,7 @@ msgstr ""
 "Tienes que conseguir que la bola azul entre en el agujero (en el nivel 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr "Juegas muy bien, ¿quieres intentar el siguiente nivel?"
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_fr_FR.po b/po/childsplay_fr_FR.po
index 29117bf..f3178cf 100644
--- a/po/childsplay_fr_FR.po
+++ b/po/childsplay_fr_FR.po
@@ -97,7 +97,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -208,7 +208,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -247,7 +247,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Voulez-vous réellement quitter ?"
 
 #: ../lib/electro_sp.py:185
@@ -255,7 +255,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -483,7 +483,7 @@ msgstr "Non"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -556,7 +556,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -593,12 +593,12 @@ msgid "Puzzle"
 msgstr "Puzzle"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Quitter"
 
 #: ../lib/quiz.py:134
@@ -977,7 +977,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Tu dois faire entrer la boule bleue dans le trou (dans le niveau 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_hu_HU.po b/po/childsplay_hu_HU.po
index 0ce9a51..c846975 100644
--- a/po/childsplay_hu_HU.po
+++ b/po/childsplay_hu_HU.po
@@ -98,7 +98,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -209,7 +209,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -248,7 +248,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Tényleg ki szeretnél lépni?"
 
 #: ../lib/electro_sp.py:185
@@ -256,7 +256,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -480,7 +480,7 @@ msgstr "Nem"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -551,7 +551,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -588,12 +588,12 @@ msgid "Puzzle"
 msgstr "Kirakó"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Kilép"
 
 #: ../lib/quiz.py:134
@@ -962,7 +962,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Az első szinten a kék golyót kell a lyukba löknöd,"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_it_IT.po b/po/childsplay_it_IT.po
index 639582c..58bc633 100644
--- a/po/childsplay_it_IT.po
+++ b/po/childsplay_it_IT.po
@@ -99,7 +99,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -211,7 +211,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -250,7 +250,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Vuoi veramente uscire ?"
 
 #: ../lib/electro_sp.py:185
@@ -258,7 +258,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -486,7 +486,7 @@ msgstr "No"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -557,7 +557,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -594,12 +594,12 @@ msgid "Puzzle"
 msgstr "Puzzle"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Esci"
 
 #: ../lib/quiz.py:134
@@ -973,7 +973,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Nel livello 1 devi far entrare in buca la palla blu mentre"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_latest.po b/po/childsplay_latest.po
index 9b81eed..e30e221 100644
--- a/po/childsplay_latest.po
+++ b/po/childsplay_latest.po
@@ -94,7 +94,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -205,7 +205,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -243,7 +243,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr ""
 
 #: ../lib/electro_sp.py:185
@@ -251,7 +251,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -468,7 +468,7 @@ msgstr ""
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -538,7 +538,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -575,11 +575,11 @@ msgid "Puzzle"
 msgstr ""
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
-msgid "Quit ?"
+msgid "Quit?"
 msgstr ""
 
 #: ../lib/quiz.py:134
@@ -933,7 +933,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr ""
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_nb_NO.po b/po/childsplay_nb_NO.po
index 0788586..afb22a1 100644
--- a/po/childsplay_nb_NO.po
+++ b/po/childsplay_nb_NO.po
@@ -99,7 +99,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -210,7 +210,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -250,7 +250,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Vil du avslutte?"
 
 #: ../lib/electro_sp.py:185
@@ -258,7 +258,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -482,7 +482,7 @@ msgstr "Nei"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -555,7 +555,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -592,12 +592,12 @@ msgid "Puzzle"
 msgstr "Puslespill"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Avslutt "
 
 #: ../lib/quiz.py:134
@@ -965,7 +965,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Målet i level 1 er å få den blå ballen ned i hullet"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_nl_NL.po b/po/childsplay_nl_NL.po
index 63fb742..803c11d 100644
--- a/po/childsplay_nl_NL.po
+++ b/po/childsplay_nl_NL.po
@@ -108,7 +108,7 @@ msgstr "Beantwoord de quizvragen."
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 "Weet je zeker dat je wilt stoppen met de dagelijkse training? Alle "
 "resultaten zullen verloren gaan."
@@ -228,7 +228,7 @@ msgid "Close"
 msgstr "Afsluiten"
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr "Gefeliciteerd. Nog eens?"
 
 #: ../SPHelpText.py:129
@@ -266,7 +266,7 @@ msgid "Details"
 msgstr "Details"
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Wil je echt stoppen?"
 
 #: ../lib/electro_sp.py:185
@@ -274,7 +274,7 @@ msgid "Electro_sp"
 msgstr "Electro"
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr "Fout!"
 
 #: ../SPMainCore.py:582
@@ -510,7 +510,7 @@ msgstr "Nee"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -589,7 +589,7 @@ msgid "Picture import"
 msgstr "Foto's ophalen"
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr "Jammer. Nog eens?"
 
 #: ../lib/puzzle.py:245
@@ -626,11 +626,11 @@ msgid "Puzzle"
 msgstr "Puzzel"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr "Vraag?"
 
 #: ../SPMainCore.py:814
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Stoppen?"
 
 #: ../lib/quiz.py:134
@@ -1028,7 +1028,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Je moet zorgen dat de blauwe bal in het gat komt (in niveau 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr "Je speelt erg goed. Wil je het op een volgend niveau proberen?"
 
 #: ../lib/electro_sp.py:196
@@ -1397,7 +1397,7 @@ msgstr ""
 #~ msgid "UppercaseMemory"
 #~ msgstr "Hoofdlettersmemory"
 
-#~ msgid "Warning !"
+#~ msgid "Warning!"
 #~ msgstr "Waarschuwing !"
 
 #~ msgid ""
diff --git a/po/childsplay_pl_PL.po b/po/childsplay_pl_PL.po
index 57477a2..45e445a 100644
--- a/po/childsplay_pl_PL.po
+++ b/po/childsplay_pl_PL.po
@@ -96,7 +96,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -210,7 +210,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -249,7 +249,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Czy naprawdę chcesz wyjść?"
 
 #: ../lib/electro_sp.py:185
@@ -257,7 +257,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -481,7 +481,7 @@ msgstr "Nie"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -552,7 +552,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -589,12 +589,12 @@ msgid "Puzzle"
 msgstr "Puzle"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Wyjście"
 
 #: ../lib/quiz.py:134
@@ -969,7 +969,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Wprowadź niebieską kulę (bilę) do dziury (na poziomie 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_pt_BR.po b/po/childsplay_pt_BR.po
index f0da124..d59538d 100644
--- a/po/childsplay_pt_BR.po
+++ b/po/childsplay_pt_BR.po
@@ -106,7 +106,7 @@ msgstr "Resposta as questões do quiz."
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 "Você quer realmente sair do treino diário ? Todos os resultados serão "
 "perdidos."
@@ -224,7 +224,7 @@ msgid "Close"
 msgstr "Fechar"
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr "Parabéns, tentar novamente ?"
 
 #: ../SPHelpText.py:129
@@ -262,7 +262,7 @@ msgid "Details"
 msgstr "Detalhes"
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Você quer realmente sair ?"
 
 #: ../lib/electro_sp.py:185
@@ -270,7 +270,7 @@ msgid "Electro_sp"
 msgstr "Electro_sp"
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr "Erro !"
 
 #: ../SPMainCore.py:582
@@ -508,7 +508,7 @@ msgstr "Não"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -588,7 +588,7 @@ msgid "Picture import"
 msgstr "Importar imagens"
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr "Que pena, tentar novamente ?"
 
 #: ../lib/puzzle.py:245
@@ -626,11 +626,11 @@ msgid "Puzzle"
 msgstr "Quebra cabeça"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr "Pergunta ?"
 
 #: ../SPMainCore.py:814
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Sair ?"
 
 #: ../lib/quiz.py:134
@@ -1017,7 +1017,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Você tem que fazer a bola azul entrar no buraco (no nível 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr "Você jogou muito bem, você quer tentar o próximo nível ?"
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_pt_PT.po b/po/childsplay_pt_PT.po
index b87820a..ed3c756 100644
--- a/po/childsplay_pt_PT.po
+++ b/po/childsplay_pt_PT.po
@@ -98,7 +98,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -209,7 +209,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -248,7 +248,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "De certeza que queres sair?"
 
 #: ../lib/electro_sp.py:185
@@ -256,7 +256,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -482,7 +482,7 @@ msgstr "Não"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -553,7 +553,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -590,12 +590,12 @@ msgid "Puzzle"
 msgstr "Puzzle"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Sair"
 
 #: ../lib/quiz.py:134
@@ -970,7 +970,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Tens de fazer com que a bola azul entre no buraco(no nível 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_ro_RO.po b/po/childsplay_ro_RO.po
index 2ec9594..549ce7b 100644
--- a/po/childsplay_ro_RO.po
+++ b/po/childsplay_ro_RO.po
@@ -99,7 +99,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -210,7 +210,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -250,7 +250,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Vrei să renunţi?"
 
 #: ../lib/electro_sp.py:185
@@ -258,7 +258,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -486,7 +486,7 @@ msgstr "Nu"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -559,7 +559,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -596,12 +596,12 @@ msgid "Puzzle"
 msgstr "Puzzle"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Renunţă"
 
 #: ../lib/quiz.py:134
@@ -973,7 +973,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Mingea albastră trebuie să intre în gaură (la nivel 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_ru_RU.po b/po/childsplay_ru_RU.po
index 10bed15..88ef28b 100644
--- a/po/childsplay_ru_RU.po
+++ b/po/childsplay_ru_RU.po
@@ -107,7 +107,7 @@ msgstr "Ответьте на вопросы викторины."
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 "Вы правда хотите прекратить дневную тренировку? Результаты не сохраняются."
 
@@ -229,7 +229,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -268,15 +268,15 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
-msgstr "Вы правда хотите завершить ?"
+msgid "Do you really want to quit?"
+msgstr "Вы правда хотите завершить?"
 
 #: ../lib/electro_sp.py:185
 msgid "Electro_sp"
 msgstr "Electro_sp"
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr "Ошибка !"
 
 #: ../SPMainCore.py:582
@@ -512,7 +512,7 @@ msgstr "Нет"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -593,7 +593,7 @@ msgid "Picture import"
 msgstr "Угадай картинку"
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -631,12 +631,12 @@ msgid "Puzzle"
 msgstr "Пазл"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
-msgstr "Вопрос ?"
+msgid "Question?"
+msgstr "Вопрос?"
 
 #: ../SPMainCore.py:814
-msgid "Quit ?"
-msgstr "Завершить ?"
+msgid "Quit?"
+msgstr "Завершить?"
 
 #: ../lib/quiz.py:134
 #, fuzzy
@@ -1018,7 +1018,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Надо загнать синий шар в лунку (на уровне 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr "Ты играешь очень хорошо, хочешь перейти на следующий уровнеь?"
 
 #: ../lib/electro_sp.py:196
@@ -1128,7 +1128,7 @@ msgstr "файл xml %s не найден, это ошибка, обратите
 #~ msgid "Seniorplay"
 #~ msgstr "Играютпожилые"
 
-#~ msgid "Warning !"
+#~ msgid "Warning!"
 #~ msgstr "Внимание!"
 
 #~ msgid "XML data file is incorrect, please contact the maintainers."
diff --git a/po/childsplay_sk_SK.po b/po/childsplay_sk_SK.po
index 8dd511f..85e41b8 100644
--- a/po/childsplay_sk_SK.po
+++ b/po/childsplay_sk_SK.po
@@ -100,7 +100,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -211,7 +211,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -250,7 +250,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Naozaj chceš ukončiť program?"
 
 #: ../lib/electro_sp.py:185
@@ -258,7 +258,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -478,7 +478,7 @@ msgstr "NIE"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -549,7 +549,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -586,12 +586,12 @@ msgid "Puzzle"
 msgstr "Puzzle"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Ukončíť"
 
 #: ../lib/quiz.py:134
@@ -957,7 +957,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Musíte modré gule dostať do otvoru (level 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_sl_SI.po b/po/childsplay_sl_SI.po
index 9f7aabc..fce72cc 100644
--- a/po/childsplay_sl_SI.po
+++ b/po/childsplay_sl_SI.po
@@ -98,7 +98,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -209,7 +209,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -248,7 +248,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Res želite zapreti?"
 
 #: ../lib/electro_sp.py:185
@@ -256,7 +256,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -480,7 +480,7 @@ msgstr "Ne"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -551,7 +551,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -588,12 +588,12 @@ msgid "Puzzle"
 msgstr "Sestavljanka"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Zapri"
 
 #: ../lib/quiz.py:134
@@ -958,7 +958,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Modro žogico morate spraviti v luknjo (v 1. nivoju)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_sv_SE.po b/po/childsplay_sv_SE.po
index dfee5b7..95283ff 100644
--- a/po/childsplay_sv_SE.po
+++ b/po/childsplay_sv_SE.po
@@ -93,7 +93,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -204,7 +204,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -243,7 +243,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Vill du verkligen avsluta ?"
 
 #: ../lib/electro_sp.py:185
@@ -251,7 +251,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -476,7 +476,7 @@ msgstr "Nej"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -547,7 +547,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -584,12 +584,12 @@ msgid "Puzzle"
 msgstr "Pussel"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Avsluta"
 
 #: ../lib/quiz.py:134
@@ -961,7 +961,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Du måste få blå bollen in i hålet (på nivå 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_uk_UA.po b/po/childsplay_uk_UA.po
index 1474685..2e2624b 100644
--- a/po/childsplay_uk_UA.po
+++ b/po/childsplay_uk_UA.po
@@ -102,7 +102,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -213,7 +213,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -252,7 +252,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Чи Ви справді хочете вийти?"
 
 #: ../lib/electro_sp.py:185
@@ -260,7 +260,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -484,7 +484,7 @@ msgstr "Ні"
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -555,7 +555,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -592,12 +592,12 @@ msgid "Puzzle"
 msgstr "Головоломка"
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
 #, fuzzy
-msgid "Quit ?"
+msgid "Quit?"
 msgstr "Вихід"
 
 #: ../lib/quiz.py:134
@@ -974,7 +974,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Ви повинні зробити так, аби синя куля вкотилася у отвір (на рівні 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
diff --git a/po/childsplay_vi_VN.po b/po/childsplay_vi_VN.po
index f10438a..059207b 100644
--- a/po/childsplay_vi_VN.po
+++ b/po/childsplay_vi_VN.po
@@ -94,7 +94,7 @@ msgstr ""
 
 #: ../SPMainCore.py:871
 msgid ""
-"Are sure you want to quit the dailytraining ? All the results will be lost."
+"Are sure you want to quit the dailytraining? All the results will be lost."
 msgstr ""
 
 #: ../lib/puzzle.py:247
@@ -205,7 +205,7 @@ msgid "Close"
 msgstr ""
 
 #: ../lib/fourrow.py:536
-msgid "Congratulations, try again ?"
+msgid "Congratulations, try again?"
 msgstr ""
 
 #: ../SPHelpText.py:129
@@ -243,7 +243,7 @@ msgid "Details"
 msgstr ""
 
 #: ../SPMainCore.py:813
-msgid "Do you really want to quit ?"
+msgid "Do you really want to quit?"
 msgstr "Bạn có thực sự muốn thoát?"
 
 #: ../lib/electro_sp.py:185
@@ -251,7 +251,7 @@ msgid "Electro_sp"
 msgstr ""
 
 #: ../SPMainCore.py:575 ../SPMainCore.py:583
-msgid "Error !"
+msgid "Error!"
 msgstr ""
 
 #: ../SPMainCore.py:582
@@ -469,7 +469,7 @@ msgstr ""
 #: ../lib/photoalbum.py:233
 #, python-format
 msgid ""
-"No photo albums found !\n"
+"No photo albums found!\n"
 "You should place your pictures inside directories called 'Album_1', "
 "'Album_2' etc\n"
 " Place these directories inside %s"
@@ -542,7 +542,7 @@ msgid "Picture import"
 msgstr ""
 
 #: ../lib/fourrow.py:538
-msgid "Pity, try again ?"
+msgid "Pity, try again?"
 msgstr ""
 
 #: ../lib/puzzle.py:245
@@ -579,11 +579,11 @@ msgid "Puzzle"
 msgstr ""
 
 #: ../SPMainCore.py:729 ../SPMainCore.py:872
-msgid "Question ?"
+msgid "Question?"
 msgstr ""
 
 #: ../SPMainCore.py:814
-msgid "Quit ?"
+msgid "Quit?"
 msgstr ""
 
 #: ../lib/quiz.py:134
@@ -940,7 +940,7 @@ msgid "You have to make the blue ball enter the hole (in level 1)"
 msgstr "Bạn phải đánh quả bóng màu xanh vào lỗ (trong cấp độ 1)"
 
 #: ../SPMainCore.py:728
-msgid "You play very well, do you want to try the next level ?"
+msgid "You play very well, do you want to try the next level?"
 msgstr ""
 
 #: ../lib/electro_sp.py:196
-- 
2.20.1

