[gnome-games] Updated Traditional Chinese translation(Hong Kong and Taiwan)



commit e22171e324e810e576b921daf7ed77a562c1c9e8
Author: Chao-Hsiung Liao <j_h_liau yahoo com tw>
Date:   Sat Jul 24 19:58:18 2010 +0800

    Updated Traditional Chinese translation(Hong Kong and Taiwan)

 po/zh_HK.po | 2163 +++++++++++++++++++++++++++++++----------------------------
 po/zh_TW.po | 2167 +++++++++++++++++++++++++++++++----------------------------
 2 files changed, 2267 insertions(+), 2063 deletions(-)
---
diff --git a/po/zh_HK.po b/po/zh_HK.po
index ad43c96..ece13a5 100644
--- a/po/zh_HK.po
+++ b/po/zh_HK.po
@@ -6,10 +6,10 @@
 # Chao-Hsiung Liao <j_h_liau yahoo com tw>, 2010.
 msgid ""
 msgstr ""
-"Project-Id-Version: gnome-games 2.29.92\n"
+"Project-Id-Version: gnome-games 2.31.5\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-20 20:17+0800\n"
-"PO-Revision-Date: 2010-03-20 20:18+0800\n"
+"POT-Creation-Date: 2010-07-24 19:57+0800\n"
+"PO-Revision-Date: 2010-07-24 19:57+0800\n"
 "Last-Translator: Chao-Hsiung Liao <j_h_liau yahoo com tw>\n"
 "Language-Team: Chinese (Hong Kong) <community linuxhall org>\n"
 "MIME-Version: 1.0\n"
@@ -38,7 +38,7 @@ msgstr "å??ç?«"
 msgid "Recently played games"
 msgstr "æ??è¿?ç?©é??ç??é??æ?²"
 
-#: ../aisleriot/aisleriot.schemas.in.h:5 ../gnotravex/gnotravex.schemas.in.h:3
+#: ../aisleriot/aisleriot.schemas.in.h:5 ../gnotravex/gnotravex.schemas.in.h:1
 msgid "Select the style of control"
 msgstr "é?¸æ??å?¤ç??移å??æ?¹å¼?"
 
@@ -91,7 +91,7 @@ msgid "Whether or not to show the toolbar"
 msgstr "æ?¯å?¦é¡¯ç¤ºå·¥å?·å??"
 
 #. Now construct the window contents
-#: ../aisleriot/ar-game-chooser.c:238 ../aisleriot/window.c:2581
+#: ../aisleriot/ar-game-chooser.c:238 ../aisleriot/window.c:2547
 msgid "Select Game"
 msgstr "é?¸æ??é??æ?²"
 
@@ -99,8 +99,8 @@ msgstr "é?¸æ??é??æ?²"
 msgid "_Select"
 msgstr "é?¸æ??(_S)"
 
-#: ../aisleriot/freecell.desktop.in.in.h:1 ../aisleriot/sol.c:336
-#: ../aisleriot/window.c:459 ../aisleriot/window.c:467
+#: ../aisleriot/freecell.desktop.in.in.h:1 ../aisleriot/sol.c:324
+#: ../aisleriot/window.c:448 ../aisleriot/window.c:456
 msgid "FreeCell Solitaire"
 msgstr "FreeCell å?¤ç??æ?¥é¾?é??æ?²"
 
@@ -1020,36 +1020,36 @@ msgid "Hopscotch"
 msgstr "Hopscotch"
 
 #. String reserve
-#: ../aisleriot/sol.c:65
+#: ../aisleriot/sol.c:70
 msgid "Solitaire"
 msgstr "Solitaire"
 
-#: ../aisleriot/sol.c:66
+#: ../aisleriot/sol.c:71
 msgid "GNOME Solitaire"
 msgstr "GNOME å?¤ç??æ?¥é¾?é??æ?²"
 
-#: ../aisleriot/sol.c:67
+#: ../aisleriot/sol.c:72
 msgid "About Solitaire"
 msgstr "é??æ?¼å?¤ç??æ?¥é¾?é??æ?²"
 
-#: ../aisleriot/sol.c:229
+#: ../aisleriot/sol.c:211
 msgid "Select the game type to play"
 msgstr "é?¸æ??è¦?ç?©ç??é??æ?²é¡?å??"
 
-#: ../aisleriot/sol.c:229 ../gnobots2/gnobots.c:85 ../gnobots2/gnobots.c:87
+#: ../aisleriot/sol.c:211 ../gnobots2/gnobots.c:85 ../gnobots2/gnobots.c:87
 msgid "NAME"
 msgstr "å??稱"
 
-#: ../aisleriot/sol.c:231
+#: ../aisleriot/sol.c:213
 msgid "Select the game number"
 msgstr "é?¸æ??é??æ?²ç·¨è??"
 
-#: ../aisleriot/sol.c:231 ../gnomine/gnomine.c:1007 ../gtali/gyahtzee.c:107
+#: ../aisleriot/sol.c:213 ../gnomine/gnomine.c:933 ../gtali/gyahtzee.c:107
 #: ../gtali/gyahtzee.c:109 ../gtali/gyahtzee.c:113 ../gtali/gyahtzee.c:115
 msgid "NUMBER"
 msgstr "æ?¸é??"
 
-#: ../aisleriot/sol.c:336 ../aisleriot/window.c:468 ../aisleriot/window.c:2041
+#: ../aisleriot/sol.c:324 ../aisleriot/window.c:457 ../aisleriot/window.c:2013
 msgid "AisleRiot"
 msgstr "AisleRiot"
 
@@ -1462,41 +1462,41 @@ msgstr "%d:%02d"
 msgid "Could not show help for â??%sâ??"
 msgstr "ç?¡æ³?顯示â??%sâ??ç??æ±?å?©æ??件"
 
-#: ../aisleriot/window.c:265
+#: ../aisleriot/window.c:254
 msgid "Congratulations, you have won!"
 msgstr "æ?­å??ï¼?ä½ å·²ç¶?è´?äº?ï¼?"
 
-#: ../aisleriot/window.c:269
+#: ../aisleriot/window.c:258
 msgid "There are no more moves"
 msgstr "å·²ç¶?æ²?æ??å?¶ä»?å?¯ç§»å??ç??æ?¹æ³?äº?"
 
 #. Empty title shows up as "<unnamed>" on maemo
-#: ../aisleriot/window.c:282 ../quadrapassel/blockops.cpp:788
+#: ../aisleriot/window.c:271 ../quadrapassel/blockops.cpp:788
 msgid "Game Over"
 msgstr "���"
 
-#: ../aisleriot/window.c:416 ../gnomine/gnomine.c:450
-#: ../mahjongg/mahjongg.c:906
+#: ../aisleriot/window.c:405 ../gnomine/gnomine.c:440
+#: ../mahjongg/mahjongg.c:871
 msgid "Main game:"
 msgstr "主é??æ?²ï¼?"
 
-#: ../aisleriot/window.c:424
+#: ../aisleriot/window.c:413
 msgid "Card games:"
 msgstr "å?¤ç??é??æ?²ï¼?"
 
-#: ../aisleriot/window.c:438
+#: ../aisleriot/window.c:427
 msgid "Card themes:"
 msgstr "å?¤ç??主é¡?:"
 
-#: ../aisleriot/window.c:470
+#: ../aisleriot/window.c:459
 msgid "About FreeCell Solitaire"
 msgstr "é??æ?¼ FreeCell å?¤ç??æ?¥é¾?é??æ?²"
 
-#: ../aisleriot/window.c:471
+#: ../aisleriot/window.c:460
 msgid "About AisleRiot"
 msgstr "é??æ?¼ AisleRiot æ?¥é¾?é??æ?²"
 
-#: ../aisleriot/window.c:477
+#: ../aisleriot/window.c:466
 msgid ""
 "AisleRiot provides a rule-based solitaire card engine that allows many "
 "different games to be played.\n"
@@ -1505,12 +1505,15 @@ msgstr ""
 "AisleRiot æ?¯ä»¥è¦?å??ç?ºå?ºç¤?ç??æ?¥é¾?å?¤ç??é??æ?²ï¼?å?¯æ??ä¾?å¾?å¤?種ä¸?å??ç??ç?©æ³?ã??\n"
 "AisleRiot æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../aisleriot/window.c:488 ../glchess/src/lib/gtkui/gtkui.py:861
-#: ../glines/glines.c:1225 ../gnect/src/main.c:909 ../gnibbles/main.c:247
-#: ../gnobots2/menu.c:274 ../quadrapassel/tetris.cpp:1313
-#: ../gnome-sudoku/src/lib/main.py:720 ../gnomine/gnomine.c:490
-#: ../gnotravex/gnotravex.c:1921 ../gnotski/gnotski.c:1542
-#: ../gtali/gyahtzee.c:620 ../iagno/gnothello.c:272 ../mahjongg/mahjongg.c:951
+#. this doesn't work for anyone
+#: ../aisleriot/window.c:477 ../glchess/src/lib/gtkui/gtkui.py:831
+#: ../glines/glines.c:1225 ../gnect/src/main.c:879 ../gnibbles/main.c:213
+#: ../gnobots2/menu.c:267 ../quadrapassel/tetris.cpp:1303
+#: ../gnome-sudoku/src/lib/main.py:691 ../gnomine/gnomine.c:480
+#: ../gnotravex/gnotravex.c:1642 ../gnotski/gnotski.c:1497
+#: ../gtali/gyahtzee.c:620 ../iagno/gnothello.c:272
+#: ../lightsoff/src/About.js:20 ../mahjongg/mahjongg.c:916
+#: ../swell-foop/src/About.js:20
 msgid "translator-credits"
 msgstr ""
 "å¦?å°?翻譯æ??ä»»ä½?æ??è¦?ï¼?è«?é??ä¸?å°?é?»å­?é?µä»¶çµ¦\n"
@@ -1520,21 +1523,23 @@ msgstr ""
 "Abel Cheung <abel oaka org>, 2001-07\n"
 "Fernando <bv1al journalist com tw>, 1999"
 
-#: ../aisleriot/window.c:492 ../glchess/src/lib/defaults.py.in:56
-#: ../glines/glines.c:1228 ../gnect/src/main.c:906 ../gnibbles/main.c:250
-#: ../gnobots2/menu.c:270 ../quadrapassel/tetris.cpp:1310
-#: ../gnome-sudoku/src/lib/defaults.py.in:43 ../gnomine/gnomine.c:493
-#: ../gnotravex/gnotravex.c:1924 ../gnotski/gnotski.c:1545
-#: ../gtali/gyahtzee.c:624 ../iagno/gnothello.c:274 ../mahjongg/mahjongg.c:954
+#: ../aisleriot/window.c:481 ../glchess/src/lib/defaults.py.in:62
+#: ../glines/glines.c:1228 ../gnect/src/main.c:876 ../gnibbles/main.c:216
+#: ../gnobots2/menu.c:263 ../quadrapassel/tetris.cpp:1300
+#: ../gnome-sudoku/src/lib/defaults.py.in:45 ../gnomine/gnomine.c:483
+#: ../gnotravex/gnotravex.c:1645 ../gnotski/gnotski.c:1500
+#: ../gtali/gyahtzee.c:624 ../iagno/gnothello.c:274
+#: ../lightsoff/src/About.js:19 ../mahjongg/mahjongg.c:919
+#: ../swell-foop/src/About.js:19
 msgid "GNOME Games web site"
 msgstr "GNOME Games 網�"
 
-#: ../aisleriot/window.c:1366
+#: ../aisleriot/window.c:1353
 #, c-format
 msgid "Play â??%sâ??"
 msgstr "ç?©â??%sâ??"
 
-#: ../aisleriot/window.c:1537
+#: ../aisleriot/window.c:1524
 #, c-format
 msgid "Display cards with â??%sâ?? card theme"
 msgstr "使ç?¨å?¤ç??主é¡?â??%sâ??顯示å?¤ç??"
@@ -1543,203 +1548,199 @@ msgstr "使ç?¨å?¤ç??主é¡?â??%sâ??顯示å?¤ç??"
 #. * then translate this string to "%I6d", else to "%6d".
 #. * Do not translate it to anything else!
 #.
-#: ../aisleriot/window.c:1632
+#: ../aisleriot/window.c:1619
 #, c-format
 msgctxt "score"
 msgid "%6d"
 msgstr "%6d"
 
-#: ../aisleriot/window.c:1910
+#: ../aisleriot/window.c:1882
 msgid "A scheme exception occurred"
 msgstr "ç?¼ç?? scheme ä¾?å¤?"
 
-#: ../aisleriot/window.c:1913
+#: ../aisleriot/window.c:1885
 msgid "Please report this bug to the developers."
 msgstr "è«?å°?é??å??é?¯èª¤å?¯å ±çµ¦é??ç?¼è??ã??"
 
 #. Empty title shows up as "<unnamed>" on maemo
-#: ../aisleriot/window.c:1917 ../libgames-support/games-show.c:151
+#: ../aisleriot/window.c:1889 ../libgames-support/games-show.c:151
 msgid "Error"
 msgstr "�誤"
 
-#: ../aisleriot/window.c:1925
+#: ../aisleriot/window.c:1897
 msgid "_Don't report"
 msgstr "ä¸?è¦?å??å ±(_D)"
 
-#: ../aisleriot/window.c:1926
+#: ../aisleriot/window.c:1898
 msgid "_Report"
 msgstr "å ±å??(_R)"
 
-#: ../aisleriot/window.c:2039
+#: ../aisleriot/window.c:2011
 msgid "Freecell Solitaire"
 msgstr "FreeCell å?¤ç??æ?¥é¾?é??æ?²"
 
 #. Menu actions
 #. Preferences Dialog: Title of game options tab
-#: ../aisleriot/window.c:2202 ../glchess/data/glchess.ui.h:24
-#: ../glchess/data/preferences.ui.h:24 ../glines/glines.c:1691
-#: ../gnect/src/main.c:1273 ../gnibbles/main.c:738 ../gnobots2/menu.c:68
-#: ../quadrapassel/tetris.cpp:107 ../gnome-sudoku/src/lib/main.py:241
-#: ../gnomine/gnomine.c:834 ../gnotravex/gnotravex.c:303
-#: ../gnotski/gnotski.c:414 ../gtali/gyahtzee.c:705 ../iagno/gnothello.c:828
-#: ../lightsoff/data/lightsoff.ui.h:2 ../mahjongg/mahjongg.c:1242
+#: ../aisleriot/window.c:2174 ../glchess/data/glchess.ui.h:22
+#: ../glchess/data/preferences.ui.h:28 ../glines/glines.c:1662
+#: ../gnect/src/main.c:1243 ../gnibbles/main.c:692 ../gnobots2/menu.c:66
+#: ../quadrapassel/tetris.cpp:108 ../gnome-sudoku/src/lib/main.py:231
+#: ../gnomine/gnomine.c:773 ../gnotravex/gnotravex.c:1752
+#: ../gnotski/gnotski.c:411 ../gtali/gyahtzee.c:705 ../iagno/gnothello.c:828
+#: ../lightsoff/data/lightsoff.ui.h:2 ../mahjongg/mahjongg.c:1208
 #: ../swell-foop/data/swell-foop.ui.h:2
 msgid "_Game"
 msgstr "é??æ?²(_G)"
 
-#. Preferences Dialog: Title of view options tab
-#: ../aisleriot/window.c:2203 ../glchess/data/glchess.ui.h:29
-#: ../glchess/data/preferences.ui.h:30 ../gnect/src/main.c:1274
-#: ../gnibbles/main.c:739 ../gnobots2/menu.c:69
-#: ../gnome-sudoku/src/lib/main.py:251 ../gnotravex/gnotravex.c:304
-#: ../gnotski/gnotski.c:415
+#: ../aisleriot/window.c:2175 ../gnect/src/main.c:1244 ../gnibbles/main.c:693
+#: ../gnobots2/menu.c:67 ../gnotski/gnotski.c:412
 msgid "_View"
 msgstr "檢�(_V)"
 
-#: ../aisleriot/window.c:2204
+#: ../aisleriot/window.c:2176
 msgid "_Control"
 msgstr "��(_C)"
 
-#: ../aisleriot/window.c:2206 ../glchess/data/glchess.ui.h:25
-#: ../glines/glines.c:1693 ../gnect/src/main.c:1276 ../gnibbles/main.c:741
-#: ../gnobots2/menu.c:72 ../quadrapassel/tetris.cpp:109
-#: ../gnome-sudoku/src/lib/main.py:269 ../gnomine/gnomine.c:836
-#: ../gnotravex/gnotravex.c:307 ../gnotski/gnotski.c:416
+#: ../aisleriot/window.c:2178 ../glchess/data/glchess.ui.h:23
+#: ../glines/glines.c:1664 ../gnect/src/main.c:1246 ../gnibbles/main.c:695
+#: ../gnobots2/menu.c:70 ../quadrapassel/tetris.cpp:110
+#: ../gnome-sudoku/src/lib/main.py:254 ../gnomine/gnomine.c:775
+#: ../gnotravex/gnotravex.c:1756 ../gnotski/gnotski.c:413
 #: ../gtali/gyahtzee.c:707 ../iagno/gnothello.c:830
-#: ../lightsoff/data/lightsoff.ui.h:3 ../mahjongg/mahjongg.c:1244
+#: ../lightsoff/data/lightsoff.ui.h:3 ../mahjongg/mahjongg.c:1210
 #: ../swell-foop/data/swell-foop.ui.h:3
 msgid "_Help"
 msgstr "æ±?å?©(_H)"
 
-#: ../aisleriot/window.c:2211 ../glchess/data/glchess.ui.h:18
-#: ../gnobots2/menu.c:73 ../libgames-support/games-stock.c:53
-#: ../mahjongg/mahjongg.c:1245
+#: ../aisleriot/window.c:2183 ../glchess/data/glchess.ui.h:16
+#: ../gnobots2/menu.c:71 ../libgames-support/games-stock.c:53
+#: ../mahjongg/mahjongg.c:1211
 msgid "Start a new game"
 msgstr "é??å§?å?¦ä¸?å±?"
 
-#: ../aisleriot/window.c:2214 ../libgames-support/games-stock.c:57
+#: ../aisleriot/window.c:2186 ../libgames-support/games-stock.c:57
 msgid "Restart the game"
 msgstr "å??ç?©é??ä¸?å±?"
 
-#: ../aisleriot/window.c:2216
+#: ../aisleriot/window.c:2188
 msgid "_Select Game..."
 msgstr "é?¸æ??é??æ?²(_S)..."
 
-#: ../aisleriot/window.c:2218
+#: ../aisleriot/window.c:2190
 msgid "Play a different game"
 msgstr "é?¸æ??å?¦ä¸?種é??æ?²"
 
-#: ../aisleriot/window.c:2220
+#: ../aisleriot/window.c:2192
 msgid "_Recently Played"
 msgstr "æ??è¿?ç?©é??ç??(_R)"
 
-#: ../aisleriot/window.c:2221
+#: ../aisleriot/window.c:2193
 msgid "S_tatistics"
 msgstr "統�(_T)"
 
-#: ../aisleriot/window.c:2222
+#: ../aisleriot/window.c:2194
 msgid "Show gameplay statistics"
 msgstr "顯示é??æ?²ç´?é??çµ±è¨?æ?¸å­?"
 
-#: ../aisleriot/window.c:2225 ../libgames-support/games-stock.c:62
+#: ../aisleriot/window.c:2197 ../libgames-support/games-stock.c:62
 msgid "Close this window"
 msgstr "é??é??é??å??è¦?çª?"
 
-#: ../aisleriot/window.c:2228 ../libgames-support/games-stock.c:60
-#: ../mahjongg/mahjongg.c:1253
+#: ../aisleriot/window.c:2200 ../libgames-support/games-stock.c:60
+#: ../mahjongg/mahjongg.c:1215
 msgid "Undo the last move"
 msgstr "é??å??ä¸?ä¸?æ­¥"
 
-#: ../aisleriot/window.c:2231 ../libgames-support/games-stock.c:56
+#: ../aisleriot/window.c:2203 ../libgames-support/games-stock.c:56
 msgid "Redo the undone move"
 msgstr "é??æ?°é?²è¡?å??æ??é??å??ç??ä¸?æ­¥"
 
-#: ../aisleriot/window.c:2234
+#: ../aisleriot/window.c:2206
 msgid "Deal next card or cards"
 msgstr "ç¹¼çº?ç?¼ç??"
 
-#: ../aisleriot/window.c:2237 ../libgames-support/games-stock.c:49
+#: ../aisleriot/window.c:2209 ../libgames-support/games-stock.c:49
 msgid "Get a hint for your next move"
 msgstr "給ä¸?ä¸?æ­¥ç??æ??示"
 
-#: ../aisleriot/window.c:2240
+#: ../aisleriot/window.c:2212
 msgid "View help for Aisleriot"
 msgstr "顯示 Aisleriot 說æ??æ??件"
 
-#: ../aisleriot/window.c:2244 ../libgames-support/games-stock.c:46
+#: ../aisleriot/window.c:2216 ../libgames-support/games-stock.c:46
 msgid "View help for this game"
 msgstr "顯示æ??é??æ?¬é??æ?²ç??說æ??æ??件"
 
-#: ../aisleriot/window.c:2247 ../libgames-support/games-stock.c:61
+#: ../aisleriot/window.c:2219 ../libgames-support/games-stock.c:61
 msgid "About this game"
 msgstr "é??æ?¼æ?¬é??æ?²"
 
-#: ../aisleriot/window.c:2250
+#: ../aisleriot/window.c:2222
 msgid "Install card themesâ?¦"
 msgstr "å®?è£?å?¤ç??主é¡?..."
 
-#: ../aisleriot/window.c:2251
+#: ../aisleriot/window.c:2223
 msgid "Install new card themes from the distribution packages repositories"
 msgstr "å¾?ç?¼è¡?ç??æ?¬å¥?件庫中å®?è£?æ?°ç??å?¤ç??主é¡?"
 
-#: ../aisleriot/window.c:2261
+#: ../aisleriot/window.c:2231
 msgid "_Card Style"
 msgstr "å?¤ç??樣å¼?(_C)"
 
-#: ../aisleriot/window.c:2302 ../gnobots2/menu.c:96
-#: ../mahjongg/mahjongg.c:1273
+#: ../aisleriot/window.c:2272 ../gnobots2/menu.c:90
+#: ../mahjongg/mahjongg.c:1231
 msgid "_Toolbar"
 msgstr "å·¥å?·å??(_T)"
 
-#: ../aisleriot/window.c:2303 ../glchess/data/preferences.ui.h:17
-#: ../gnobots2/menu.c:96 ../mahjongg/mahjongg.c:1273
+#: ../aisleriot/window.c:2273 ../glchess/data/preferences.ui.h:19
+#: ../gnobots2/menu.c:90 ../mahjongg/mahjongg.c:1231
 msgid "Show or hide the toolbar"
 msgstr "顯示æ??é?±è??å·¥å?·å??"
 
-#: ../aisleriot/window.c:2308
+#: ../aisleriot/window.c:2278
 msgid "_Statusbar"
 msgstr "ç??æ??å??(_S)"
 
-#: ../aisleriot/window.c:2309
+#: ../aisleriot/window.c:2279
 msgid "Show or hide statusbar"
 msgstr "顯示æ??é?±è??ç??æ??å??"
 
-#: ../aisleriot/window.c:2314 ../gnotravex/gnotravex.c:352
+#: ../aisleriot/window.c:2284 ../gnotravex/gnotravex.c:1776
 msgid "_Click to Move"
 msgstr "é»?é?¸ç??ä¾?移å??(_C)"
 
-#: ../aisleriot/window.c:2315
+#: ../aisleriot/window.c:2285
 msgid "Pick up and drop cards by clicking"
 msgstr "以é»?é?¸æ??èµ·æ??æ?¾ä¸?å?¤ç??"
 
-#: ../aisleriot/window.c:2319
+#: ../aisleriot/window.c:2289
 msgid "_Sound"
 msgstr "é?³æ??(_S)"
 
-#: ../aisleriot/window.c:2320
+#: ../aisleriot/window.c:2290
 msgid "Whether or not to play event sounds"
 msgstr "æ?¯å?¦æ?­æ?¾äº?件é?³æ??"
 
-#: ../aisleriot/window.c:2325
+#: ../aisleriot/window.c:2295
 msgid "_Animations"
 msgstr "å??ç?«(_A)"
 
-#: ../aisleriot/window.c:2326
+#: ../aisleriot/window.c:2296
 msgid "Whether or not to animate card moves"
 msgstr "å?¤ç??移å??æ?¯å?¦ä½¿ç?¨å??ç?«"
 
-#: ../aisleriot/window.c:2633 ../glines/glines.c:1905
+#: ../aisleriot/window.c:2599 ../glines/glines.c:1866
 #: ../gnobots2/statusbar.c:67 ../quadrapassel/scoreframe.cpp:47
-#: ../gnomine/gnomine.c:453
+#: ../gnomine/gnomine.c:443
 msgid "Score:"
 msgstr "å¾?å??ï¼?"
 
-#: ../aisleriot/window.c:2645 ../gnotravex/gnotravex.c:1384
-#: ../mahjongg/mahjongg.c:1465
+#: ../aisleriot/window.c:2611 ../gnotravex/gnotravex.c:1436
+#: ../mahjongg/mahjongg.c:1418
 msgid "Time:"
 msgstr "æ??é??ï¼?"
 
-#: ../aisleriot/window.c:3011
+#: ../aisleriot/window.c:2956
 #, c-format
 msgid "Cannot start the game â??%sâ??"
 msgstr "ä¸?è?½å??å??é??æ?²ã??%sã??"
@@ -2506,17 +2507,16 @@ msgstr "交æ??é¡?è?²"
 #: ../aisleriot/rules/giant.scm.h:2
 #, fuzzy
 msgid "Deal a row"
-msgstr "è®?å?ºæ?´å??"
+msgstr "å??ä¸?移å??"
 
 #: ../aisleriot/rules/giant.scm.h:3
 #, fuzzy
 msgid "Deals left: ~a"
-msgstr "å?©é¤?ç??æ?¸ï¼?"
+msgstr "�左��"
 
 #: ../aisleriot/rules/giant.scm.h:4
-#, fuzzy
 msgid "Same suit"
-msgstr "ä¸?æ??ç??è?±è?²"
+msgstr "å??樣ç??è?±è?²"
 
 #: ../aisleriot/rules/giant.scm.h:5
 #, fuzzy
@@ -2532,7 +2532,6 @@ msgid "Try moving card piles around"
 msgstr "å??試移å??ä¸?äº?ç??"
 
 #: ../aisleriot/rules/giant.scm.h:8
-#, fuzzy
 msgid "an empty foundation place"
 msgstr "ç?®æ¨?ç??å ?空ä½?"
 
@@ -2917,16 +2916,24 @@ msgid "The height of the window"
 msgstr "���度"
 
 #: ../glchess/data/glchess.schemas.in.h:24
+msgid "The piece style to use"
+msgstr "è¦?使ç?¨ç??æ£?å­?樣å¼?"
+
+#: ../glchess/data/glchess.schemas.in.h:25
+msgid "The piece style to use. Can be one of: 'simple' or 'fancy'"
+msgstr "è¦?使ç?¨ç??æ£?å­?樣å¼?ã??å?¯ä»¥ä½¿ç?¨ï¼?ã??simpleã??(ç°¡æ??)æ??ã??fancyã??(精緻)"
+
+#: ../glchess/data/glchess.schemas.in.h:26
 msgid "The piece to promote pawns to"
 msgstr "士å?µç??å??è®?"
 
-#: ../glchess/data/glchess.schemas.in.h:25
+#: ../glchess/data/glchess.schemas.in.h:27
 msgid ""
 "The piece to promote to when a human player moves a pawn to the far rank. "
 "Can be one of: 'queen', 'knight', 'rook', 'bishop'."
 msgstr "ç?¶äººé¡?é??æ?²è??移å??士å?µå?°å°?æ?¹åº?ç·?æ??ï¼?å°±å?¯ä»¥æ??å??å?¶é??ç´?ï¼?å?¯ä»¥æ??ç?ºã??ç??å??ã??ã??ã??é¨?士ã??ã??ã??å??å ¡ã??ã??ã??主æ??ã??ä¹?ä¸?ã??"
 
-#: ../glchess/data/glchess.schemas.in.h:26
+#: ../glchess/data/glchess.schemas.in.h:28
 msgid ""
 "The side of the board that is in the foreground, either 'white', 'black', "
 "'current' (the current player), 'human' (the side of the current human "
@@ -2934,11 +2941,11 @@ msgid ""
 "handhelds)"
 msgstr "å?¨å??æ?¯æ£?ç?¤ç??ä¸?æ?¹ï¼?å?¯ä»¥æ?¯ã??whiteã??ã??ã??blackã??ã??ã??currentã??ï¼?ç?®å??ç??é??æ?²è??ï¼?ã??ã??humanã??ï¼?ç?®å??ç?ºäººé¡?ç?©å®¶ç??ä¸?æ?¹ï¼?æ??ã??facetofaceã??ï¼?é?©å??ç?©å®¶å?¨è?¢å¹?ç??å?©ç«¯ï¼?ä¾?å¦?使ç?¨æ??ä¸?å??è£?ç½®æ??ï¼?"
 
-#: ../glchess/data/glchess.schemas.in.h:27
+#: ../glchess/data/glchess.schemas.in.h:29
 msgid "The width of the main window in pixels."
 msgstr "主è¦?çª?ç??é??度 (å??ç´ )ã??"
 
-#: ../glchess/data/glchess.schemas.in.h:28
+#: ../glchess/data/glchess.schemas.in.h:30
 msgid "The width of the window"
 msgstr "è¦?çª?é??度"
 
@@ -2951,87 +2958,80 @@ msgstr "3_D å??é??象æ£?檢è¦?"
 msgid "Claim _Draw"
 msgstr "宣å??å¹³æ??(_D)"
 
-#: ../glchess/data/glchess.ui.h:3
-msgid "Load a saved game"
-msgstr "è¼?å?¥ä¸?å±?å·²å?²å­?ç??æ£?å±?"
-
 #. The title of the log dialaog
-#: ../glchess/data/glchess.ui.h:5
+#: ../glchess/data/glchess.ui.h:4
 msgid "Logs"
 msgstr "ç´?é??æª?"
 
 #. The Network Game toolbar button
-#: ../glchess/data/glchess.ui.h:7 ../libgames-support/games-stock.c:337
+#: ../glchess/data/glchess.ui.h:6 ../libgames-support/games-stock.c:303
 msgid "Network _Game"
 msgstr "網絡é??æ?²(_G)"
 
 #. The New Game toolbar button
 #. Title of the new game dialog
-#: ../glchess/data/glchess.ui.h:9 ../glchess/data/new_game.ui.h:13
+#: ../glchess/data/glchess.ui.h:8 ../glchess/data/new_game.ui.h:13
 #: ../libgames-support/games-scores-dialog.c:437
 msgid "New Game"
 msgstr "é??æ?°å±?"
 
 #. The tooltip for the Resign toolbar button
-#: ../glchess/data/glchess.ui.h:11
+#: ../glchess/data/glchess.ui.h:10
 msgid "Resign"
 msgstr "�輸"
 
-#: ../glchess/data/glchess.ui.h:12
+#: ../glchess/data/glchess.ui.h:11
 msgid "Rewind to the game start"
 msgstr "å??æ?²å?°é??æ?²å??é??å§?ç??æ??å??"
 
-#: ../glchess/data/glchess.ui.h:13
-msgid "Save the current game"
-msgstr "å?²å­?é??å±?æ£?"
-
-#: ../glchess/data/glchess.ui.h:14
+#: ../glchess/data/glchess.ui.h:12
 msgid "Show _Logs"
 msgstr "顯示ç´?é??(_L)"
 
-#: ../glchess/data/glchess.ui.h:15
+#: ../glchess/data/glchess.ui.h:13
 msgid "Show the current move"
 msgstr "顯示é??ä¸?æ­¥"
 
-#: ../glchess/data/glchess.ui.h:16
+#: ../glchess/data/glchess.ui.h:14
 msgid "Show the next move"
 msgstr "顯示��步"
 
-#: ../glchess/data/glchess.ui.h:17
+#: ../glchess/data/glchess.ui.h:15
 msgid "Show the previous move"
 msgstr "顯示��步"
 
-#: ../glchess/data/glchess.ui.h:19 ../libgames-support/games-stock.c:51
+#: ../glchess/data/glchess.ui.h:17 ../libgames-support/games-stock.c:51
 msgid "Start a new multiplayer network game"
 msgstr "é??å§?ä¸?å??æ?°ç??å¤?人網絡é??æ?²"
 
 #. Message displayed in log window when no logs are present
-#: ../glchess/data/glchess.ui.h:21
+#: ../glchess/data/glchess.ui.h:19
 msgid "There are no active logs."
 msgstr "æ²?æ??使ç?¨ä¸­ç??ç´?é??ã??"
 
-#: ../glchess/data/glchess.ui.h:22
+#: ../glchess/data/glchess.ui.h:20
 msgid "Undo Move"
 msgstr "å??æ??"
 
-#: ../glchess/data/glchess.ui.h:23 ../gnome-sudoku/src/lib/main.py:273
-#: ../libgames-support/games-stock.c:321
+#: ../glchess/data/glchess.ui.h:21 ../gnome-sudoku/src/lib/main.py:255
+#: ../libgames-support/games-stock.c:287
 msgid "_Contents"
 msgstr "�容(_C)"
 
-#: ../glchess/data/glchess.ui.h:26
+#: ../glchess/data/glchess.ui.h:24
 msgid "_Resign"
 msgstr "�輸(_R)"
 
-#: ../glchess/data/glchess.ui.h:27 ../glines/glines.c:1692
-#: ../gnect/src/main.c:1275 ../gnibbles/main.c:740 ../gnobots2/menu.c:71
-#: ../quadrapassel/tetris.cpp:108 ../gnomine/gnomine.c:835
+#: ../glchess/data/glchess.ui.h:25 ../glines/glines.c:1663
+#: ../gnect/src/main.c:1245 ../gnibbles/main.c:694 ../gnobots2/menu.c:69
+#: ../quadrapassel/tetris.cpp:109 ../gnome-sudoku/src/lib/main.py:245
+#: ../gnomine/gnomine.c:774 ../gnotravex/gnotravex.c:1754
 #: ../gtali/gyahtzee.c:706 ../iagno/gnothello.c:829
-#: ../mahjongg/mahjongg.c:1243
+#: ../mahjongg/mahjongg.c:1209
 msgid "_Settings"
 msgstr "設��(_S)"
 
-#: ../glchess/data/glchess.ui.h:28 ../libgames-support/games-stock.c:333
+#: ../glchess/data/glchess.ui.h:26 ../libgames-support/games-stock.c:299
 msgid "_Undo Move"
 msgstr "å??æ??(_U)"
 
@@ -3193,61 +3193,71 @@ msgstr "æ£?ç?¤æ?¹å??ï¼?"
 msgid "Move Format:"
 msgstr "��格��"
 
+#. Preferences Dialog: Label before piece style combo box
+#: ../glchess/data/preferences.ui.h:8
+msgid "Piece Style:"
+msgstr "��樣��"
+
 #. Title for preferences dialog
-#: ../glchess/data/preferences.ui.h:8 ../glines/glines.c:197
-#: ../mahjongg/mahjongg.c:140
+#: ../glchess/data/preferences.ui.h:10 ../glines/glines.c:197
+#: ../mahjongg/mahjongg.c:141
 msgid "Preferences"
 msgstr "å??好設å®?"
 
 #. Preferences Dialog: Label before promotion type combo box
-#: ../glchess/data/preferences.ui.h:10
+#: ../glchess/data/preferences.ui.h:12
 msgid "Promotion Type:"
 msgstr "å??è®?é¡?å??ï¼?"
 
 #. Preferences Dialog: Check box for selecting if history browser is visible
-#: ../glchess/data/preferences.ui.h:12
+#: ../glchess/data/preferences.ui.h:14
 msgid "Show _History"
 msgstr "顯示ç´?é??(_H)"
 
 #. Preferences Dialog: Check box for selecting if toolbar is visible
-#: ../glchess/data/preferences.ui.h:14 ../gnome-sudoku/src/lib/main.py:293
+#: ../glchess/data/preferences.ui.h:16 ../gnome-sudoku/src/lib/main.py:275
 msgid "Show _Toolbar"
 msgstr "顯示工å?·å??(_T)"
 
-#: ../glchess/data/preferences.ui.h:15
+#: ../glchess/data/preferences.ui.h:17
 msgid "Show or hide numbering on the chess board"
 msgstr "顯示æ??é?±è??å??é??象æ£?ç?¤ç??å??æ¨?å??稱"
 
-#: ../glchess/data/preferences.ui.h:16
+#: ../glchess/data/preferences.ui.h:18
 msgid "Show or hide the game history panel"
 msgstr "顯示æ??é?±è??é??æ?²ç´?é??é?¢æ?¿"
 
-#: ../glchess/data/preferences.ui.h:18
+#: ../glchess/data/preferences.ui.h:20
 msgid "Shows hints during chess games"
 msgstr "å?¨æ£?é¡?é??æ?²ä¸­é¡¯ç¤ºæ??示"
 
-#: ../glchess/data/preferences.ui.h:19
+#: ../glchess/data/preferences.ui.h:21
 msgid "Smooth edges of the 3D elements (anti-alias)"
 msgstr "3D å??ç´ ç??å¹³æ»?é??ç·£ï¼?å??é?¸é½?ï¼?"
 
-#: ../glchess/data/preferences.ui.h:20
+#: ../glchess/data/preferences.ui.h:22
 msgid ""
 "View the chess board by default in 2D mode, or optionally in 3D mode using "
 "OpenGL."
 msgstr "é ?設以 2D 模å¼?檢è¦?æ£?ç?¤ï¼?æ??è??å?¯é?¸æ??使ç?¨ OpenGL ç?? 3D 模å¼?ã??"
 
+#. Preferences Dialog: Title of appearance options tab
+#: ../glchess/data/preferences.ui.h:24
+msgid "_Appearance"
+msgstr "��(_A)"
+
 #. Preferences Dialog: Check box for selecting if board numbering is visible
-#: ../glchess/data/preferences.ui.h:22
+#: ../glchess/data/preferences.ui.h:26
 msgid "_Board Numbering"
 msgstr "æ£?ç?¤å??æ¨?(_B)"
 
 #. Preferences Dialog: Check box for selecting if move hints are visible
-#: ../glchess/data/preferences.ui.h:26
+#: ../glchess/data/preferences.ui.h:30
 msgid "_Move Hints"
 msgstr "èµ°æ³?æ??示(_M)"
 
 #. Preferences Dialog: Check box for selecting if the 3D view is smoothed (anti-aliased)
-#: ../glchess/data/preferences.ui.h:28
+#: ../glchess/data/preferences.ui.h:32
 msgid "_Smooth Display"
 msgstr "平�顯示(_S)"
 
@@ -3257,7 +3267,7 @@ msgid "Save Chess Game"
 msgstr "å?²å­?é??å±?æ£?"
 
 #. Translators: Window title when not playing a game
-#: ../glchess/glchess.desktop.in.in.h:1 ../glchess/src/lib/gtkui/gtkui.py:332
+#: ../glchess/glchess.desktop.in.in.h:1 ../glchess/src/lib/gtkui/gtkui.py:299
 msgid "Chess"
 msgstr "å??é??象æ£?"
 
@@ -3265,11 +3275,11 @@ msgstr "å??é??象æ£?"
 msgid "Play the classic two-player boardgame of chess"
 msgstr "ç?©å?³çµ±ç??å?©äººå?¶å??é??象æ£?"
 
-#: ../glchess/src/glchess.in.in:50
+#: ../glchess/src/glchess.in.in:51
 msgid "Chess incorrectly installed"
 msgstr "å??é??象æ£?å®?è£?é?¯èª¤"
 
-#: ../glchess/src/glchess.in.in:52
+#: ../glchess/src/glchess.in.in:53
 msgid ""
 "Chess is not able to start because required application files are not "
 "installed. If you are currently upgrading your system please wait until the "
@@ -3277,90 +3287,90 @@ msgid ""
 msgstr "å??é??象æ£?ä¸?è?½å??å??ï¼?å? ç?ºæ²?æ??å®?è£?å¿?é??ç??æ??ç?¨ç¨?å¼?ã??å¦?æ??ä½ ç?®å??å?¨å??ç´?系統ï¼?è«?ç­?å?°æ?´æ?°å®?æ??ç?ºæ­¢ã??"
 
 #. Translators: Time Combo: There is no time limit
-#: ../glchess/src/lib/gtkui/dialogs.py:125
+#: ../glchess/src/lib/gtkui/dialogs.py:135
 msgid "Unlimited"
 msgstr "ç?¡é??"
 
 #. Translators: Time Combo: Game will last one minute
-#: ../glchess/src/lib/gtkui/dialogs.py:127
+#: ../glchess/src/lib/gtkui/dialogs.py:137
 msgid "One minute"
 msgstr "1 å??é??"
 
 #. Translators: Time Combo: Game will last five minutes
-#: ../glchess/src/lib/gtkui/dialogs.py:129
+#: ../glchess/src/lib/gtkui/dialogs.py:139
 msgid "Five minutes"
 msgstr "5 å??é??"
 
 #. Translators: Time Combo: Game will last 30 minutes
-#: ../glchess/src/lib/gtkui/dialogs.py:131
+#: ../glchess/src/lib/gtkui/dialogs.py:141
 msgid "30 minutes"
 msgstr "30 å??é??"
 
 #. Translators: Time Combo: Game will last one hour
-#: ../glchess/src/lib/gtkui/dialogs.py:133
+#: ../glchess/src/lib/gtkui/dialogs.py:143
 msgid "One hour"
 msgstr "1 å°?æ??"
 
 #. Translators: Time Combo: User will configure game duration
 #. Translators: Add Network Profile Dialog: Use a custom server
-#: ../glchess/src/lib/gtkui/dialogs.py:135
+#: ../glchess/src/lib/gtkui/dialogs.py:145
 #: ../glchess/src/lib/gtkui/network.py:30
 msgid "Custom"
 msgstr "��"
 
 #. Translators: Custom Time Combo: User specifying number of seconds for game duration
-#: ../glchess/src/lib/gtkui/dialogs.py:156
+#: ../glchess/src/lib/gtkui/dialogs.py:166
 msgid "seconds"
 msgstr "�"
 
 #. Translators: Custom Time Combo: User specifying number of minutes for game duration
-#: ../glchess/src/lib/gtkui/dialogs.py:158
+#: ../glchess/src/lib/gtkui/dialogs.py:168
 msgid "minutes"
 msgstr "å??é??"
 
 #. Translators: Custom Time Combo: User specifying number of hours for game duration
-#: ../glchess/src/lib/gtkui/dialogs.py:160
+#: ../glchess/src/lib/gtkui/dialogs.py:170
 msgid "hours"
 msgstr "å°?æ??"
 
 #. Translators: AI Difficulty Combo: AI set to easy difficulty
-#: ../glchess/src/lib/gtkui/dialogs.py:178
-#: ../gnome-sudoku/src/lib/sudoku.py:516
+#: ../glchess/src/lib/gtkui/dialogs.py:188
+#: ../gnome-sudoku/src/lib/sudoku.py:690
 msgid "Easy"
 msgstr "容æ??"
 
 #. Translators: AI Difficulty Combo: AI set to normal diffuculty
-#: ../glchess/src/lib/gtkui/dialogs.py:180
+#: ../glchess/src/lib/gtkui/dialogs.py:190 ../swell-foop/src/Score.js:145
 msgid "Normal"
 msgstr "��"
 
 #. Translators: AI Difficulty Combo: AI set to hard diffuculty
-#: ../glchess/src/lib/gtkui/dialogs.py:182
-#: ../gnome-sudoku/src/lib/sudoku.py:514
+#: ../glchess/src/lib/gtkui/dialogs.py:192
+#: ../gnome-sudoku/src/lib/sudoku.py:688
 msgid "Hard"
 msgstr "å?°é?£"
 
 #. Translators: Error displayed when unable to load a game due to
 #. the require game engine not being available. %s is replaced with
 #. the name of the missing engine.
-#: ../glchess/src/lib/gtkui/dialogs.py:247
+#: ../glchess/src/lib/gtkui/dialogs.py:257
 #, python-format
 msgid "Unable to find %s engine"
 msgstr "æ?¾ä¸?å?° %s å¼?æ??"
 
 #. Translators: New Game Dialog: Title of the dialog when continuing a loaded game
-#: ../glchess/src/lib/gtkui/dialogs.py:259
+#: ../glchess/src/lib/gtkui/dialogs.py:269
 #, python-format
 msgid "Configure loaded game (%i moves)"
 msgstr "設å®?è¼?å?¥ç??é??æ?²ï¼?%i æ­¥ï¼?"
 
 #. Translators: New Game Dialog: Title of error box when loaded game had AI engines missing
-#: ../glchess/src/lib/gtkui/dialogs.py:264
+#: ../glchess/src/lib/gtkui/dialogs.py:274
 msgid "Game settings changed"
 msgstr "é??æ?²è¨­å®?å?¼å·²æ?´æ?¹"
 
 #. Translators: Default name for a new game. %(white) and %(black) are substituted for the names of the white and black players.
-#: ../glchess/src/lib/gtkui/dialogs.py:327
+#: ../glchess/src/lib/gtkui/dialogs.py:337
 #, python-format
 msgid "%(white)s versus %(black)s"
 msgstr "%(white)s å°? %(black)s"
@@ -3368,163 +3378,173 @@ msgstr "%(white)s å°? %(black)s"
 #. Translators: Default name for the white player
 #. Translators: GGZ seat is occupied by the white player
 #. Translators: Name of white player in a default game
-#: ../glchess/src/lib/gtkui/dialogs.py:351
-#: ../glchess/src/lib/gtkui/network.py:360
-#: ../glchess/src/lib/gtkui/network.py:537 ../glchess/src/lib/main.py:687
+#: ../glchess/src/lib/gtkui/dialogs.py:361
+#: ../glchess/src/lib/gtkui/network.py:374
+#: ../glchess/src/lib/gtkui/network.py:551 ../glchess/src/lib/main.py:687
 msgid "White"
 msgstr "��"
 
 #. Translators: Default name for the black player
 #. Translators: GGZ seat is occupied by the black player
 #. Translators: Name of black player in a default game
-#: ../glchess/src/lib/gtkui/dialogs.py:358
-#: ../glchess/src/lib/gtkui/network.py:363
-#: ../glchess/src/lib/gtkui/network.py:543 ../glchess/src/lib/main.py:689
+#: ../glchess/src/lib/gtkui/dialogs.py:368
+#: ../glchess/src/lib/gtkui/network.py:377
+#: ../glchess/src/lib/gtkui/network.py:557 ../glchess/src/lib/main.py:689
 msgid "Black"
 msgstr "é»?æ?¹"
 
 #. Translators: Load Game Dialog: Name of filter to show only PGN files
 #. Translators: Save Game Dialog: Name of filter to show only PGN files
-#: ../glchess/src/lib/gtkui/dialogs.py:443
-#: ../glchess/src/lib/gtkui/dialogs.py:518
+#: ../glchess/src/lib/gtkui/dialogs.py:463
+#: ../glchess/src/lib/gtkui/dialogs.py:550
 msgid "PGN files"
 msgstr "PGN ��"
 
 #. Translators: Load Game Dialog: Name of filter to show all files
 #. Translators: Save Game Dialog: Name of filter to show all files
-#: ../glchess/src/lib/gtkui/dialogs.py:449
-#: ../glchess/src/lib/gtkui/dialogs.py:524
+#: ../glchess/src/lib/gtkui/dialogs.py:469
+#: ../glchess/src/lib/gtkui/dialogs.py:556
 msgid "All files"
 msgstr "æ??æ??æª?æ¡?"
 
 #. Translators: Load Game Dialog: Message displayed when no file is selected
-#: ../glchess/src/lib/gtkui/dialogs.py:471
+#: ../glchess/src/lib/gtkui/dialogs.py:491
 msgid "Please select a file to load"
 msgstr "è«?é?¸æ??è¦?è¼?å?¥ç??æª?æ¡?"
 
 #. Translators: Title of error box when unable to load game
-#: ../glchess/src/lib/gtkui/dialogs.py:479
+#: ../glchess/src/lib/gtkui/dialogs.py:499
 msgid "Unabled to load game"
 msgstr "ç?¡æ³?è¼?å?¥é??æ?²"
 
 #. Translators: Save Game Dialog: Error displayed when no file name entered
-#: ../glchess/src/lib/gtkui/dialogs.py:552
+#: ../glchess/src/lib/gtkui/dialogs.py:585
 msgid "Please enter a file name"
 msgstr "è«?輸å?¥æª?æ¡?å??稱ã??"
 
 #. Translators: Save Game Dialog: Error title when unable to save game
-#: ../glchess/src/lib/gtkui/dialogs.py:565
+#: ../glchess/src/lib/gtkui/dialogs.py:598
 msgid "Unabled to save game"
 msgstr "ç?¡æ³?å?²å­?é??æ?²"
 
 #. Translators: Move Format Combo: Moves shown in human descriptive notation
 #. Translators: Player Type Combo: Player is human controlled
-#: ../glchess/src/lib/gtkui/dialogs.py:592
-#: ../glchess/src/lib/gtkui/gtkui.py:205 ../gnect/src/prefs.c:250
+#: ../glchess/src/lib/gtkui/dialogs.py:625
+#: ../glchess/src/lib/gtkui/gtkui.py:196 ../gnect/src/prefs.c:250
 #: ../gtali/gyahtzee.c:993 ../gtali/yahtzee.c:69 ../iagno/properties.c:452
 #: ../iagno/properties.c:493
 msgid "Human"
 msgstr "人�"
 
 #. Translators: Move Format Combo: Moves shown in standard algebraic notation (SAN)
-#: ../glchess/src/lib/gtkui/dialogs.py:594
+#: ../glchess/src/lib/gtkui/dialogs.py:627
 msgid "Standard Algebraic"
 msgstr "��代�"
 
 #. Translators: Move Format Combo: Moves shown in standard figurine algebraic notation (FAN)
-#: ../glchess/src/lib/gtkui/dialogs.py:596
+#: ../glchess/src/lib/gtkui/dialogs.py:629
 msgid "Figurine"
 msgstr "å??å??"
 
 #. Translators: Move Format Combo: Moves shown in long algebraic notation (LAN)
-#: ../glchess/src/lib/gtkui/dialogs.py:598
+#: ../glchess/src/lib/gtkui/dialogs.py:631
 msgid "Long Algebraic"
 msgstr "�代����"
 
 #. Translators: Board Side Combo: Camera will face white player's side
-#: ../glchess/src/lib/gtkui/dialogs.py:608
+#: ../glchess/src/lib/gtkui/dialogs.py:641
 msgid "White Side"
 msgstr "��"
 
 #. Translators: Board Side Combo: Camera will face black player's side
-#: ../glchess/src/lib/gtkui/dialogs.py:610
+#: ../glchess/src/lib/gtkui/dialogs.py:643
 msgid "Black Side"
 msgstr "é»?æ?¹"
 
 #. Translators: Board Side Combo: Camera will face human player's side
-#: ../glchess/src/lib/gtkui/dialogs.py:612
+#: ../glchess/src/lib/gtkui/dialogs.py:645
 msgid "Human Side"
 msgstr "人��家�"
 
 #. Translators: Board Side Combo: Camera will face current player's side
-#: ../glchess/src/lib/gtkui/dialogs.py:614
+#: ../glchess/src/lib/gtkui/dialogs.py:647
 msgid "Current Player"
 msgstr "ç?®å??ç?©å®¶"
 
 #. Translators: Board Side Combo: Board will be drawn suitable for players on each side of screen, e.g. handhelds
-#: ../glchess/src/lib/gtkui/dialogs.py:616
+#: ../glchess/src/lib/gtkui/dialogs.py:649
 msgid "Face to Face"
 msgstr "���"
 
 #. Translators: Promotion Combo: Promote to a queen
-#: ../glchess/src/lib/gtkui/dialogs.py:626
+#: ../glchess/src/lib/gtkui/dialogs.py:659
 msgctxt "chess-piece"
 msgid "Queen"
 msgstr "ç??å??"
 
 #. Translators: Promotion Combo: Promote to a knight
-#: ../glchess/src/lib/gtkui/dialogs.py:628
+#: ../glchess/src/lib/gtkui/dialogs.py:661
 msgctxt "chess-piece"
 msgid "Knight"
 msgstr "�士"
 
 #. Translators: Promotion Combo: Promote to a rook
-#: ../glchess/src/lib/gtkui/dialogs.py:630
+#: ../glchess/src/lib/gtkui/dialogs.py:663
 msgctxt "chess-piece"
 msgid "Rook"
 msgstr "å??å ¡"
 
 #. Translators: Promotion Combo: Promote to a bishop
-#: ../glchess/src/lib/gtkui/dialogs.py:632
+#: ../glchess/src/lib/gtkui/dialogs.py:665
 msgctxt "chess-piece"
 msgid "Bishop"
 msgstr "主æ??"
 
+#. Translators: a simple piece set will be used in 2d mode
+#: ../glchess/src/lib/gtkui/dialogs.py:675
+msgid "Simple"
+msgstr "ç°¡æ??"
+
+#. Translators: a fancy piece set will be used in 2d mode
+#: ../glchess/src/lib/gtkui/dialogs.py:677
+msgid "Fancy"
+msgstr "精緻"
+
 #. Translators: Window title when playing a game that needs saving
-#: ../glchess/src/lib/gtkui/gtkui.py:326
+#: ../glchess/src/lib/gtkui/gtkui.py:293
 #, python-format
 msgid "Chess - *%(game_name)s"
 msgstr "å??é??象æ£? - *%(game_name)s"
 
 #. Translators: Window title when playing a game that is saved
-#: ../glchess/src/lib/gtkui/gtkui.py:329
+#: ../glchess/src/lib/gtkui/gtkui.py:296
 #, python-format
 msgid "Chess - %(game_name)s"
 msgstr "å??é??象æ£? - %(game_name)s"
 
 #. Translators: Game Timer Label: Indicates that game has no time limit
-#: ../glchess/src/lib/gtkui/gtkui.py:344
+#: ../glchess/src/lib/gtkui/gtkui.py:311
 msgid "â??"
 msgstr "â??"
 
 #. Translators: Save Game Dialog: Notice that game needs saving
-#: ../glchess/src/lib/gtkui/gtkui.py:417
+#: ../glchess/src/lib/gtkui/gtkui.py:384
 msgid "If you don't save the changes to this game will be permanently lost"
 msgstr "å¦?æ??ä¸?å°?å°?é??å??é??æ?²ç??æ?´æ?¹å?²å­?ï¼?æ??æ??æ?´æ?¹é?½æ??æ°¸ä¹?æ¶?失ã??"
 
 #. Translators: Save Game Dialog: Discard game button
-#: ../glchess/src/lib/gtkui/gtkui.py:419
+#: ../glchess/src/lib/gtkui/gtkui.py:386
 msgid "Close _without saving"
 msgstr "é??é??ä½?ä¸?å?²å­?(_W)"
 
 #. Translators: No 3D Dialog: Title
-#: ../glchess/src/lib/gtkui/gtkui.py:534
+#: ../glchess/src/lib/gtkui/gtkui.py:501
 msgid "Unable to enable 3D mode"
 msgstr "ç?¡æ³?å??ç?¨ 3D 模å¼?"
 
 #. Translators: No 3D Dialog: Notification to user that they do not have libraries required to enable 3D.
 #. %(error)s will be replaced with a list of reasons why 3D is not available.
-#: ../glchess/src/lib/gtkui/gtkui.py:538
+#: ../glchess/src/lib/gtkui/gtkui.py:505
 #, python-format
 msgid ""
 "You are unable to play in 3D mode due to the following problems:\n"
@@ -3539,12 +3559,12 @@ msgstr ""
 "è«?é?£ç·?ä½ ç??系統管ç??è??以解決é??äº?å??é¡?ï¼?å?¨é?£ä¹?å??ä½ å?¯ä»¥å?¨ 2D 模å¼?ä¸?ç?©å??é??象æ£?ã??"
 
 #. Translators: Draw Dialog: Title
-#: ../glchess/src/lib/gtkui/gtkui.py:800
+#: ../glchess/src/lib/gtkui/gtkui.py:770
 msgid "Unable to claim draw"
 msgstr "ç?¡æ³?宣å??å¹³æ??"
 
 #. Translators: Draw Dialog: Notify user why they cannot claim draw
-#: ../glchess/src/lib/gtkui/gtkui.py:802
+#: ../glchess/src/lib/gtkui/gtkui.py:772
 msgid ""
 "You may claim a draw when:\n"
 "a) The board has been in the same state three times (Three fold repetition)\n"
@@ -3557,7 +3577,7 @@ msgstr ""
 
 #. TODO: This should be a pop-up dialog
 #. FIXME: This should create a pop-up dialog
-#: ../glchess/src/lib/gtkui/gtkui.py:824 ../gnome-sudoku/src/lib/main.py:730
+#: ../glchess/src/lib/gtkui/gtkui.py:794 ../gnome-sudoku/src/lib/main.py:701
 #, python-format
 msgid "Unable to display help: %s"
 msgstr "ç?¡æ³?顯示說æ??æ??件ï¼?%s"
@@ -3578,515 +3598,509 @@ msgid "OpenGL libraries do not support required display mode"
 msgstr "OpenGL ç¨?å¼?庫ä¸?æ?¯æ?´è¦?æ±?ç??顯示模å¼?"
 
 #. Translators: Move History Combo: Go to the start of the game
-#: ../glchess/src/lib/gtkui/chessview.py:270
-#: ../glchess/src/lib/gtkui/chessview.py:303
+#: ../glchess/src/lib/gtkui/chessview.py:279
 msgid "Game Start"
 msgstr "æ£?å±?é??å§?"
 
-#. Translators: Comment text when move has no comment
-#: ../glchess/src/lib/gtkui/chessview.py:308
-msgid "No comment"
-msgstr "æ²?æ??è©?è«?"
-
 #. Translators: Human Move String: Description of the white player making a long castle
-#: ../glchess/src/lib/gtkui/chessview.py:435
+#: ../glchess/src/lib/gtkui/chessview.py:413
 msgid "White castles long"
 msgstr "ç?½æ?¹é?·æ??ä½?"
 
 #. Translators: Human Move String: Description of the black player making a long castle
-#: ../glchess/src/lib/gtkui/chessview.py:437
+#: ../glchess/src/lib/gtkui/chessview.py:415
 msgid "Black castles long"
 msgstr "é»?æ?¹é?·æ??ä½?"
 
 #. Translators: Human Move String: Description of the white player making a short castle
-#: ../glchess/src/lib/gtkui/chessview.py:440
+#: ../glchess/src/lib/gtkui/chessview.py:418
 msgid "White castles short"
 msgstr "ç?½æ?¹ç?­æ??ä½?"
 
 #. Translators: Human Move String: Description of the black player making a short castle
-#: ../glchess/src/lib/gtkui/chessview.py:442
+#: ../glchess/src/lib/gtkui/chessview.py:420
 msgid "Black castles short"
 msgstr "é»?æ?¹ç?­æ??ä½?"
 
 #. Note there are no move formats for pieces taking kings and this is not allowed in Chess rules
 #. Translators: Human Move String: Description of a white pawn moving from %(start)s to %(end)s, e.g. 'c2 to c4'
-#: ../glchess/src/lib/gtkui/chessview.py:446
+#: ../glchess/src/lib/gtkui/chessview.py:424
 #, python-format
 msgid "White pawn moves from %(start)s to %(end)s"
 msgstr "ç?½æ?¹å£«å?µå¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:447
+#: ../glchess/src/lib/gtkui/chessview.py:425
 #, python-format
 msgid "White pawn at %(start)s takes the black pawn at %(end)s"
 msgstr "ç?½æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:448
+#: ../glchess/src/lib/gtkui/chessview.py:426
 #, python-format
 msgid "White pawn at %(start)s takes the black rook at %(end)s"
 msgstr "ç?½æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:449
+#: ../glchess/src/lib/gtkui/chessview.py:427
 #, python-format
 msgid "White pawn at %(start)s takes the black knight at %(end)s"
 msgstr "ç?½æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:450
+#: ../glchess/src/lib/gtkui/chessview.py:428
 #, python-format
 msgid "White pawn at %(start)s takes the black bishop at %(end)s"
 msgstr "ç?½æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:451
+#: ../glchess/src/lib/gtkui/chessview.py:429
 #, python-format
 msgid "White pawn at %(start)s takes the black queen at %(end)s"
 msgstr "ç?½æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a white rook moving from %(start)s to %(end)s, e.g. 'a1 to a5'
-#: ../glchess/src/lib/gtkui/chessview.py:453
+#: ../glchess/src/lib/gtkui/chessview.py:431
 #, python-format
 msgid "White rook moves from %(start)s to %(end)s"
 msgstr "ç?½æ?¹å??å ¡å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:454
+#: ../glchess/src/lib/gtkui/chessview.py:432
 #, python-format
 msgid "White rook at %(start)s takes the black pawn at %(end)s"
 msgstr "ç?½æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:455
+#: ../glchess/src/lib/gtkui/chessview.py:433
 #, python-format
 msgid "White rook at %(start)s takes the black rook at %(end)s"
 msgstr "ç?½æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:456
+#: ../glchess/src/lib/gtkui/chessview.py:434
 #, python-format
 msgid "White rook at %(start)s takes the black knight at %(end)s"
 msgstr "ç?½æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:457
+#: ../glchess/src/lib/gtkui/chessview.py:435
 #, python-format
 msgid "White rook at %(start)s takes the black bishop at %(end)s"
 msgstr "ç?½æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:458
+#: ../glchess/src/lib/gtkui/chessview.py:436
 #, python-format
 msgid "White rook at %(start)s takes the black queen at %(end)s"
 msgstr "ç?½æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a white knight moving from %(start)s to %(end)s, e.g. 'b1 to c3'
-#: ../glchess/src/lib/gtkui/chessview.py:460
+#: ../glchess/src/lib/gtkui/chessview.py:438
 #, python-format
 msgid "White knight moves from %(start)s to %(end)s"
 msgstr "ç?½æ?¹é¨?士å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:461
+#: ../glchess/src/lib/gtkui/chessview.py:439
 #, python-format
 msgid "White knight at %(start)s takes the black pawn at %(end)s"
 msgstr "ç?½æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:462
+#: ../glchess/src/lib/gtkui/chessview.py:440
 #, python-format
 msgid "White knight at %(start)s takes the black rook at %(end)s"
 msgstr "ç?½æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:463
+#: ../glchess/src/lib/gtkui/chessview.py:441
 #, python-format
 msgid "White knight at %(start)s takes the black knight at %(end)s"
 msgstr "ç?½æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:464
+#: ../glchess/src/lib/gtkui/chessview.py:442
 #, python-format
 msgid "White knight at %(start)s takes the black bishop at %(end)s"
 msgstr "ç?½æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:465
+#: ../glchess/src/lib/gtkui/chessview.py:443
 #, python-format
 msgid "White knight at %(start)s takes the black queen at %(end)s"
 msgstr "ç?½æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a white bishop moving from %(start)s to %(end)s, e.g. 'f1 to b5'
-#: ../glchess/src/lib/gtkui/chessview.py:467
+#: ../glchess/src/lib/gtkui/chessview.py:445
 #, python-format
 msgid "White bishop moves from %(start)s to %(end)s"
 msgstr "ç?½æ?¹ä¸»æ??å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:468
+#: ../glchess/src/lib/gtkui/chessview.py:446
 #, python-format
 msgid "White bishop at %(start)s takes the black pawn at %(end)s"
 msgstr "ç?½æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:469
+#: ../glchess/src/lib/gtkui/chessview.py:447
 #, python-format
 msgid "White bishop at %(start)s takes the black rook at %(end)s"
 msgstr "ç?½æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:470
+#: ../glchess/src/lib/gtkui/chessview.py:448
 #, python-format
 msgid "White bishop at %(start)s takes the black knight at %(end)s"
 msgstr "ç?½æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:471
+#: ../glchess/src/lib/gtkui/chessview.py:449
 #, python-format
 msgid "White bishop at %(start)s takes the black bishop at %(end)s"
 msgstr "ç?½æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:472
+#: ../glchess/src/lib/gtkui/chessview.py:450
 #, python-format
 msgid "White bishop at %(start)s takes the black queen at %(end)s"
 msgstr "ç?½æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a white queen moving from %(start)s to %(end)s, e.g. 'd1 to d4'
-#: ../glchess/src/lib/gtkui/chessview.py:474
+#: ../glchess/src/lib/gtkui/chessview.py:452
 #, python-format
 msgid "White queen moves from %(start)s to %(end)s"
 msgstr "ç?½æ?¹ç??å??å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:475
+#: ../glchess/src/lib/gtkui/chessview.py:453
 #, python-format
 msgid "White queen at %(start)s takes the black pawn at %(end)s"
 msgstr "ç?½æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:476
+#: ../glchess/src/lib/gtkui/chessview.py:454
 #, python-format
 msgid "White queen at %(start)s takes the black rook at %(end)s"
 msgstr "ç?½æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:477
+#: ../glchess/src/lib/gtkui/chessview.py:455
 #, python-format
 msgid "White queen at %(start)s takes the black knight at %(end)s"
 msgstr "ç?½æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:478
+#: ../glchess/src/lib/gtkui/chessview.py:456
 #, python-format
 msgid "White queen at %(start)s takes the black bishop at %(end)s"
 msgstr "ç?½æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:479
+#: ../glchess/src/lib/gtkui/chessview.py:457
 #, python-format
 msgid "White queen at %(start)s takes the black queen at %(end)s"
 msgstr "ç?½æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a white king moving from %(start)s to %(end)s, e.g. 'e1 to f1'
-#: ../glchess/src/lib/gtkui/chessview.py:481
+#: ../glchess/src/lib/gtkui/chessview.py:459
 #, python-format
 msgid "White king moves from %(start)s to %(end)s"
 msgstr "ç?½æ?¹å??ç??å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:482
+#: ../glchess/src/lib/gtkui/chessview.py:460
 #, python-format
 msgid "White king at %(start)s takes the black pawn at %(end)s"
 msgstr "ç?½æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:483
+#: ../glchess/src/lib/gtkui/chessview.py:461
 #, python-format
 msgid "White king at %(start)s takes the black rook at %(end)s"
 msgstr "ç?½æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:484
+#: ../glchess/src/lib/gtkui/chessview.py:462
 #, python-format
 msgid "White king at %(start)s takes the black knight at %(end)s"
 msgstr "ç?½æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:485
+#: ../glchess/src/lib/gtkui/chessview.py:463
 #, python-format
 msgid "White king at %(start)s takes the black bishop at %(end)s"
 msgstr "ç?½æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:486
+#: ../glchess/src/lib/gtkui/chessview.py:464
 #, python-format
 msgid "White king at %(start)s takes the black queen at %(end)s"
 msgstr "ç?½æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a black pawn moving from %(start)s to %(end)s, e.g. 'c8 to c6'
-#: ../glchess/src/lib/gtkui/chessview.py:488
+#: ../glchess/src/lib/gtkui/chessview.py:466
 #, python-format
 msgid "Black pawn moves from %(start)s to %(end)s"
 msgstr "é»?æ?¹å£«å?µå¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:489
+#: ../glchess/src/lib/gtkui/chessview.py:467
 #, python-format
 msgid "Black pawn at %(start)s takes the white pawn at %(end)s"
 msgstr "é»?æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:490
+#: ../glchess/src/lib/gtkui/chessview.py:468
 #, python-format
 msgid "Black pawn at %(start)s takes the white rook at %(end)s"
 msgstr "é»?æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:491
+#: ../glchess/src/lib/gtkui/chessview.py:469
 #, python-format
 msgid "Black pawn at %(start)s takes the white knight at %(end)s"
 msgstr "é»?æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:492
+#: ../glchess/src/lib/gtkui/chessview.py:470
 #, python-format
 msgid "Black pawn at %(start)s takes the white bishop at %(end)s"
 msgstr "é»?æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:493
+#: ../glchess/src/lib/gtkui/chessview.py:471
 #, python-format
 msgid "Black pawn at %(start)s takes the white queen at %(end)s"
 msgstr "é»?æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a black rook moving from %(start)s to %(end)s, e.g. 'a8 to a4'
-#: ../glchess/src/lib/gtkui/chessview.py:495
+#: ../glchess/src/lib/gtkui/chessview.py:473
 #, python-format
 msgid "Black rook moves from %(start)s to %(end)s"
 msgstr "é»?æ?¹å??å ¡å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:496
+#: ../glchess/src/lib/gtkui/chessview.py:474
 #, python-format
 msgid "Black rook at %(start)s takes the white pawn at %(end)s"
 msgstr "é»?æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:497
+#: ../glchess/src/lib/gtkui/chessview.py:475
 #, python-format
 msgid "Black rook at %(start)s takes the white rook at %(end)s"
 msgstr "é»?æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:498
+#: ../glchess/src/lib/gtkui/chessview.py:476
 #, python-format
 msgid "Black rook at %(start)s takes the white knight at %(end)s"
 msgstr "é»?æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:499
+#: ../glchess/src/lib/gtkui/chessview.py:477
 #, python-format
 msgid "Black rook at %(start)s takes the white bishop at %(end)s"
 msgstr "é»?æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:500
+#: ../glchess/src/lib/gtkui/chessview.py:478
 #, python-format
 msgid "Black rook at %(start)s takes the white queen at %(end)s"
 msgstr "é»?æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a black knight moving from %(start)s to %(end)s, e.g. 'b8 to c6'
-#: ../glchess/src/lib/gtkui/chessview.py:502
+#: ../glchess/src/lib/gtkui/chessview.py:480
 #, python-format
 msgid "Black knight moves from %(start)s to %(end)s"
 msgstr "é»?æ?¹é¨?士å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:503
+#: ../glchess/src/lib/gtkui/chessview.py:481
 #, python-format
 msgid "Black knight at %(start)s takes the white pawn at %(end)s"
 msgstr "é»?æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:504
+#: ../glchess/src/lib/gtkui/chessview.py:482
 #, python-format
 msgid "Black knight at %(start)s takes the white rook at %(end)s"
 msgstr "é»?æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:505
+#: ../glchess/src/lib/gtkui/chessview.py:483
 #, python-format
 msgid "Black knight at %(start)s takes the white knight at %(end)s"
 msgstr "é»?æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:506
+#: ../glchess/src/lib/gtkui/chessview.py:484
 #, python-format
 msgid "Black knight at %(start)s takes the white bishop at %(end)s"
 msgstr "é»?æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:507
+#: ../glchess/src/lib/gtkui/chessview.py:485
 #, python-format
 msgid "Black knight at %(start)s takes the white queen at %(end)s"
 msgstr "é»?æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a black bishop moving from %(start)s to %(end)s, e.g. 'f8 to b3'
-#: ../glchess/src/lib/gtkui/chessview.py:509
+#: ../glchess/src/lib/gtkui/chessview.py:487
 #, python-format
 msgid "Black bishop moves from %(start)s to %(end)s"
 msgstr "é»?æ?¹ä¸»æ??å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:510
+#: ../glchess/src/lib/gtkui/chessview.py:488
 #, python-format
 msgid "Black bishop at %(start)s takes the white pawn at %(end)s"
 msgstr "é»?æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:511
+#: ../glchess/src/lib/gtkui/chessview.py:489
 #, python-format
 msgid "Black bishop at %(start)s takes the white rook at %(end)s"
 msgstr "é»?æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:512
+#: ../glchess/src/lib/gtkui/chessview.py:490
 #, python-format
 msgid "Black bishop at %(start)s takes the white knight at %(end)s"
 msgstr "é»?æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:513
+#: ../glchess/src/lib/gtkui/chessview.py:491
 #, python-format
 msgid "Black bishop at %(start)s takes the white bishop at %(end)s"
 msgstr "é»?æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:514
+#: ../glchess/src/lib/gtkui/chessview.py:492
 #, python-format
 msgid "Black bishop at %(start)s takes the white queen at %(end)s"
 msgstr "é»?æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a black queen moving from %(start)s to %(end)s, e.g. 'd8 to d5'
-#: ../glchess/src/lib/gtkui/chessview.py:516
+#: ../glchess/src/lib/gtkui/chessview.py:494
 #, python-format
 msgid "Black queen moves from %(start)s to %(end)s"
 msgstr "é»?æ?¹ç??å??å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:517
+#: ../glchess/src/lib/gtkui/chessview.py:495
 #, python-format
 msgid "Black queen at %(start)s takes the white pawn at %(end)s"
 msgstr "é»?æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:518
+#: ../glchess/src/lib/gtkui/chessview.py:496
 #, python-format
 msgid "Black queen at %(start)s takes the white rook at %(end)s"
 msgstr "é»?æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:519
+#: ../glchess/src/lib/gtkui/chessview.py:497
 #, python-format
 msgid "Black queen at %(start)s takes the white knight at %(end)s"
 msgstr "é»?æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:520
+#: ../glchess/src/lib/gtkui/chessview.py:498
 #, python-format
 msgid "Black queen at %(start)s takes the white bishop at %(end)s"
 msgstr "é»?æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:521
+#: ../glchess/src/lib/gtkui/chessview.py:499
 #, python-format
 msgid "Black queen at %(start)s takes the white queen at %(end)s"
 msgstr "é»?æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a black king moving from %(start)s to %(end)s, e.g. 'e8 to f8'
-#: ../glchess/src/lib/gtkui/chessview.py:523
+#: ../glchess/src/lib/gtkui/chessview.py:501
 #, python-format
 msgid "Black king moves from %(start)s to %(end)s"
 msgstr "é»?æ?¹å??ç??å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:524
+#: ../glchess/src/lib/gtkui/chessview.py:502
 #, python-format
 msgid "Black king at %(start)s takes the white pawn at %(end)s"
 msgstr "é»?æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:525
+#: ../glchess/src/lib/gtkui/chessview.py:503
 #, python-format
 msgid "Black king at %(start)s takes the white rook at %(end)s"
 msgstr "é»?æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:526
+#: ../glchess/src/lib/gtkui/chessview.py:504
 #, python-format
 msgid "Black king at %(start)s takes the white knight at %(end)s"
 msgstr "é»?æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:527
+#: ../glchess/src/lib/gtkui/chessview.py:505
 #, python-format
 msgid "Black king at %(start)s takes the white bishop at %(end)s"
 msgstr "é»?æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:528
+#: ../glchess/src/lib/gtkui/chessview.py:506
 #, python-format
 msgid "Black king at %(start)s takes the white queen at %(end)s"
 msgstr "é»?æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ç??å??"
 
 #. Translators: Human Move String: White player has made move %(description) and the opponent is in check
-#: ../glchess/src/lib/gtkui/chessview.py:553
+#: ../glchess/src/lib/gtkui/chessview.py:531
 #, python-format
 msgid "%(movenum)2iw. %(description)s (Check)"
 msgstr "%(movenum)2iw. %(description)s (å°?è»?)"
 
 #. Translators: Human Move String: White player has made move %(description) and the opponent is in checkmate
-#: ../glchess/src/lib/gtkui/chessview.py:555
+#: ../glchess/src/lib/gtkui/chessview.py:533
 #, python-format
 msgid "%(movenum)2iw. %(description)s (Checkmate)"
 msgstr "%(movenum)2iw. %(description)s (被�死)"
 
 #. Translators: Human Move String: White player has made move %(description) and the opponent is in stalemate
-#: ../glchess/src/lib/gtkui/chessview.py:557
+#: ../glchess/src/lib/gtkui/chessview.py:535
 #, python-format
 msgid "%(movenum)2iw. %(description)s (Stalemate)"
 msgstr "%(movenum)2iw. %(description)s (ç?¡å­?å?¯å??)"
 
 #. Translators: Human Move String: White player has made move %(description) and the opponent is not in check or mate
-#: ../glchess/src/lib/gtkui/chessview.py:559
+#: ../glchess/src/lib/gtkui/chessview.py:537
 #, python-format
 msgid "%(movenum)2iw. %(description)s"
 msgstr "%(movenum)2iw. %(description)s"
 
 #. Translators: Human Move String: Black player has made move %(description) and the opponent is in check
-#: ../glchess/src/lib/gtkui/chessview.py:561
+#: ../glchess/src/lib/gtkui/chessview.py:539
 #, python-format
 msgid "%(movenum)2ib. %(description)s (Check)"
 msgstr "%(movenum)2ib. %(description)s (å°?è»?)"
 
 #. Translators: Human Move String: Black player has made move %(description) and the opponent is in checkmate
-#: ../glchess/src/lib/gtkui/chessview.py:563
+#: ../glchess/src/lib/gtkui/chessview.py:541
 #, python-format
 msgid "%(movenum)2ib. %(description)s (Checkmate)"
 msgstr "%(movenum)2ib. %(description)s (被�死)"
 
 #. Translators: Human Move String: Black player has made move %(description) and the opponent is in stalemate
-#: ../glchess/src/lib/gtkui/chessview.py:565
+#: ../glchess/src/lib/gtkui/chessview.py:543
 #, python-format
 msgid "%(movenum)2ib. %(description)s (Stalemate)"
 msgstr "%(movenum)2ib. %(description)s (ç?¡å­?å?¯å??)"
 
 #. Translators: Human Move String: Black player has made move %(description) and the opponent is not in check or mate
-#: ../glchess/src/lib/gtkui/chessview.py:567
+#: ../glchess/src/lib/gtkui/chessview.py:545
 #, python-format
 msgid "%(movenum)2ib. %(description)s"
 msgstr "%(movenum)2ib. %(description)s"
 
 #. Translators: Message displayed when a player wins. The %s is substituted with the winning player's name
-#: ../glchess/src/lib/gtkui/chessview.py:598
+#: ../glchess/src/lib/gtkui/chessview.py:576
 #, python-format
 msgid "%s wins"
 msgstr " %s ���"
 
 #. Translators: Message displayed when a game is drawn
-#: ../glchess/src/lib/gtkui/chessview.py:607
+#: ../glchess/src/lib/gtkui/chessview.py:585
 msgid "Game is drawn"
 msgstr "é??æ?²å¹³æ??"
 
 #. Translators: Message displayed when the game ends due to a player being checkmated
-#: ../glchess/src/lib/gtkui/chessview.py:612
+#: ../glchess/src/lib/gtkui/chessview.py:590
 msgid "Opponent is in check and cannot move (checkmate)"
 msgstr "å°?æ??被å°?è»?è??ä¸?ä¸?è?½å??移å??ï¼?被å°?æ­»ï¼?"
 
 #. Translators: Message displayed when the game terminates due to a stalemate
-#: ../glchess/src/lib/gtkui/chessview.py:615
+#: ../glchess/src/lib/gtkui/chessview.py:593
 msgid "Opponent cannot move (stalemate)"
 msgstr "å°?æ??ä¸?è?½å??移å??ï¼?ç?¡å­?å?¯å??ï¼?"
 
 #. Translators: Message displayed when the game is drawn due to the fifty move rule
-#: ../glchess/src/lib/gtkui/chessview.py:618
+#: ../glchess/src/lib/gtkui/chessview.py:596
 msgid "No piece has been taken or pawn moved in the last fifty moves"
-msgstr "å?¨æ??å¾? 50 步中æ²?æ??æ©«å­?被å??æ??æ??士å?µè¢«ç§»å??é??"
+msgstr "å?¨æ??å¾? 50 步中æ²?æ??æ£?å­?被å??æ??æ??士å?µè¢«ç§»å??é??"
 
 #. Translators: Message displayed when the game ends due to one player's clock stopping
-#: ../glchess/src/lib/gtkui/chessview.py:621
+#: ../glchess/src/lib/gtkui/chessview.py:599
 msgid "Opponent has run out of time"
 msgstr "å°?æ??å·²ç?¨ç?¡æ??é??"
 
 #. Translators: Message displayed when the game is drawn due to the three-fold-repitition rule
-#: ../glchess/src/lib/gtkui/chessview.py:624
+#: ../glchess/src/lib/gtkui/chessview.py:602
 msgid "The same board state has occurred three times (three fold repetition)"
 msgstr "å??樣ç??å±?é?¢å·²ç¶?ç?¼ç??ä¸?次ï¼?ä¸?次é??è¤?ï¼?"
 
 #. Translators: Message displayed when the game is drawn due to the insufficient material rule
-#: ../glchess/src/lib/gtkui/chessview.py:627
+#: ../glchess/src/lib/gtkui/chessview.py:605
 msgid "Neither player can cause checkmate (insufficient material)"
 msgstr "æ²?æ??ç?©å®¶å?¯ä»¥é? æ??å°?æ­»å°?æ?¹ç??æ??å½¢ï¼?æ£?ä¸?æ??殺ï¼?"
 
 #. Translators: Message displayed when the game ends due to the black player resigning
-#: ../glchess/src/lib/gtkui/chessview.py:631
+#: ../glchess/src/lib/gtkui/chessview.py:609
 msgid "The black player has resigned"
 msgstr "���家已�輸"
 
 #. Translators: Message displayed when the game ends due to the white player resigning
-#: ../glchess/src/lib/gtkui/chessview.py:634
+#: ../glchess/src/lib/gtkui/chessview.py:612
 msgid "The white player has resigned"
 msgstr "���家已�輸"
 
 #. Translators: Message displayed when a game is abandoned
-#: ../glchess/src/lib/gtkui/chessview.py:639
+#: ../glchess/src/lib/gtkui/chessview.py:617
 msgid "The game has been abandoned"
 msgstr "é??æ?²å·²è¢«æ?¾æ£?"
 
 #. Translators: Message displayed when the game ends due to a player dying
-#: ../glchess/src/lib/gtkui/chessview.py:642
+#: ../glchess/src/lib/gtkui/chessview.py:620
 msgid "One of the players has died"
 msgstr "å?¶ä¸­ä¸?å??ç?©å®¶å·²è¢«å°?æ­»"
 
@@ -4097,60 +4111,60 @@ msgid "GGZ Gaming Zone"
 msgstr "GGZ é??æ?²ç¶²"
 
 #. Translators: Server Combo Box: Not connected to a server
-#: ../glchess/src/lib/gtkui/network.py:117
+#: ../glchess/src/lib/gtkui/network.py:131
 msgid "Disconnected"
 msgstr "已��"
 
 #. Translators: Server Combo Box: Add new profile
-#: ../glchess/src/lib/gtkui/network.py:122
+#: ../glchess/src/lib/gtkui/network.py:136
 msgid "New profile..."
 msgstr "æ?°å¢?çµ?å??設å®?..."
 
 #. Translators: Available GGZ Tables: Table name column title
-#: ../glchess/src/lib/gtkui/network.py:182
+#: ../glchess/src/lib/gtkui/network.py:196
 msgid "Table"
 msgstr "é??æ?²æ¡?"
 
 #. Translators: Available GGZ Tables: Seat status column title
-#: ../glchess/src/lib/gtkui/network.py:187
+#: ../glchess/src/lib/gtkui/network.py:201
 msgid "Seats"
 msgstr "座�"
 
 #. Translators: Available GGZ Tables: Table description column title
-#: ../glchess/src/lib/gtkui/network.py:192
+#: ../glchess/src/lib/gtkui/network.py:206
 msgid "Description"
 msgstr "æ??è¿°"
 
 #. Translators: Current GGZ Table: Seat name column title
-#: ../glchess/src/lib/gtkui/network.py:199
+#: ../glchess/src/lib/gtkui/network.py:213
 msgid "Seat"
 msgstr "座�"
 
 #. Translators: Current GGZ Table: Player name column title
-#: ../glchess/src/lib/gtkui/network.py:203
+#: ../glchess/src/lib/gtkui/network.py:217
 msgid "Player"
 msgstr "�家"
 
 #. Translators: GGZ seat is occupied by a spectator
-#: ../glchess/src/lib/gtkui/network.py:366
+#: ../glchess/src/lib/gtkui/network.py:380
 msgid "Spectator"
 msgstr "è§?å±?è??"
 
 #. Translators: GGZ seat status: This seat is reserved. %s is replaced with
 #. the name of the player the seat is reserved for.
-#: ../glchess/src/lib/gtkui/network.py:375
+#: ../glchess/src/lib/gtkui/network.py:389
 #, python-format
 msgid "Reserved for %s"
 msgstr "å·²ç?º %s ä¿?ç??"
 
 #. Translators: GGZ seat status: This seat is not taken
-#: ../glchess/src/lib/gtkui/network.py:378
+#: ../glchess/src/lib/gtkui/network.py:392
 msgid "Seat empty"
 msgstr "座ä½?æ?¯ç©ºç??"
 
 #. Translators: GGZ seat status: This seat contains an AI player.
 #. %s is replaced with the name of the AI.
-#: ../glchess/src/lib/gtkui/network.py:382
+#: ../glchess/src/lib/gtkui/network.py:396
 #, python-format
 msgid "AI (%s)"
 msgstr "人工�� (%s)"
@@ -4323,19 +4337,19 @@ msgstr ""
 "glChess å·²ç¶?ç?¶æ©?ã??è«?å°?é??å??é?¯èª¤å?¯å ±çµ¦ http://bugzilla.gnome.org\n";
 "��輸��"
 
-#: ../glchess/src/lib/main.py:716 ../gnome-sudoku/src/lib/main.py:476
+#: ../glchess/src/lib/main.py:716 ../gnome-sudoku/src/lib/main.py:448
 msgid "Save game before closing?"
 msgstr "æ?¯å?¦å?¨é??é??å??å?²å­?é??æ?²ï¼?"
 
-#: ../glchess/src/lib/defaults.py.in:50
+#: ../glchess/src/lib/defaults.py.in:56
 msgid "glChess"
 msgstr "glChess"
 
-#: ../glchess/src/lib/defaults.py.in:53
+#: ../glchess/src/lib/defaults.py.in:59
 msgid "Copyright 2005-2008 Robert Ancell (and contributors)"
 msgstr "ç??æ¬?æ??æ?? 2005-2008 Robert Ancell å??æ??æ??è²¢ç?»è??"
 
-#: ../glchess/src/lib/defaults.py.in:54
+#: ../glchess/src/lib/defaults.py.in:60
 msgid ""
 "The 2D/3D chess game for GNOME. \n"
 "\n"
@@ -4347,8 +4361,8 @@ msgstr ""
 
 #. The GPL license string will be translated, and the game name inserted.
 #. This license is the same as in libgames-support/games-stock.c
-#: ../glchess/src/lib/defaults.py.in:63
-#: ../gnome-sudoku/src/lib/defaults.py.in:49
+#: ../glchess/src/lib/defaults.py.in:69
+#: ../gnome-sudoku/src/lib/defaults.py.in:51
 #, python-format
 msgid ""
 "%s is free software; you can redistribute it and/or modify it under the "
@@ -4360,9 +4374,9 @@ msgstr ""
 "æ¢?款è¦?å®?ï¼?å°±æ?¬ç¨?å¼?å??ç?ºæ?£ä½?è??ï¼?æ??ä¿®æ?¹ï¼?ç?¡è«?ä½ æ ¹æ??æ??ç??æ?¯æ?¬æ??æ¬?ç??第äº?ç??æ??\n"
 "ï¼?ä½ è?ªè¡?é?¸æ??ç??ï¼?ä»»ä¸?æ?¥å¾?ç?¼è¡?ç??ç??æ?¬ã??"
 
-#: ../glchess/src/lib/defaults.py.in:67
-#: ../gnome-sudoku/src/lib/defaults.py.in:53
-#: ../libgames-support/games-stock.c:418
+#: ../glchess/src/lib/defaults.py.in:73
+#: ../gnome-sudoku/src/lib/defaults.py.in:55
+#: ../libgames-support/games-stock.c:384
 #, c-format, python-format
 msgid ""
 "%s is distributed in the hope that it will be useful, but WITHOUT ANY "
@@ -4373,9 +4387,9 @@ msgstr ""
 "%s ä¿?å?ºæ?¼ä½¿ç?¨ç?®ç??è??å? ä»¥æ?£ä½?ï¼?ç?¶è??ä¸?è² ä»»ä½?æ??ä¿?責任ï¼?亦ç?¡å°?é?©å?®æ?§\n"
 "æ??ç?¹å®?ç?®ç??é?©ç?¨æ?§æ??ç?ºç??é»?示æ?§æ??ä¿?ã??詳æ??è«?å??ç?§ GNU é??ç?¨å?¬å?±æ??æ¬?ã??"
 
-#: ../glchess/src/lib/defaults.py.in:71
-#: ../gnome-sudoku/src/lib/defaults.py.in:57
-#: ../libgames-support/games-stock.c:423
+#: ../glchess/src/lib/defaults.py.in:77
+#: ../gnome-sudoku/src/lib/defaults.py.in:59
+#: ../libgames-support/games-stock.c:389
 #, c-format, python-format
 msgid ""
 "You should have received a copy of the GNU General Public License along with "
@@ -4386,8 +4400,8 @@ msgstr ""
 "è?ªç?±è»?件å?ºé??æ??ï¼?\n"
 "51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA"
 
-#: ../glchess/src/lib/defaults.py.in:83
-#: ../gnome-sudoku/src/lib/defaults.py.in:68
+#: ../glchess/src/lib/defaults.py.in:89
+#: ../gnome-sudoku/src/lib/defaults.py.in:70
 #, python-format
 msgid "Unable to make data directory %(dir)s: %(error)s"
 msgstr "ç?¡æ³?製ä½?è³?æ??ç?®é?? %(dir)sï¼? %(error)s"
@@ -4421,17 +4435,17 @@ msgstr "已中æ?·å??伺æ??å?¨ç??é?£ç·?"
 msgid "No description"
 msgstr "æ²?æ??æ??è¿°"
 
-#: ../glines/glines.c:89 ../gnomine/gnomine.c:102
+#: ../glines/glines.c:90 ../gnomine/gnomine.c:101
 msgctxt "board size"
 msgid "Small"
 msgstr "å°?"
 
-#: ../glines/glines.c:90 ../gnomine/gnomine.c:103
+#: ../glines/glines.c:91 ../gnomine/gnomine.c:102
 msgctxt "board size"
 msgid "Medium"
 msgstr "æ?®é??"
 
-#: ../glines/glines.c:91 ../gnomine/gnomine.c:104
+#: ../glines/glines.c:92 ../gnomine/gnomine.c:103
 msgctxt "board size"
 msgid "Large"
 msgstr "大"
@@ -4478,7 +4492,7 @@ msgstr "�����"
 msgid "_Board size:"
 msgstr "��大�(_B):"
 
-#: ../glines/glines.c:511
+#: ../glines/glines.c:511 ../swell-foop/src/Score.js:109
 msgid "Game Over!"
 msgstr "����"
 
@@ -4488,7 +4502,7 @@ msgid "You can't move there!"
 msgstr "ä¸?è?½ç§»å??å?°é?£è£?ï¼?"
 
 #: ../glines/glines.c:1210 ../glines/glines.c:1214 ../glines/glines.c:1216
-#: ../glines/glines.c:1814 ../glines/glines.c:1846
+#: ../glines/glines.c:1777 ../glines/glines.c:1809
 #: ../glines/glines.desktop.in.in.h:1
 msgid "Five or More"
 msgstr "�����"
@@ -4503,36 +4517,38 @@ msgstr ""
 "\n"
 "äº?å­?é?£è?²æ£?æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../glines/glines.c:1449
+#: ../glines/glines.c:1420
 msgid "Five or More Preferences"
 msgstr "äº?å­?é?£è?²æ£?å??好設å®?"
 
-#: ../glines/glines.c:1469
-msgid "Themes"
-msgstr "��主�"
+#: ../glines/glines.c:1440 ../gnect/src/prefs.c:335
+#: ../gnobots2/properties.c:536 ../iagno/properties.c:531
+#: ../lightsoff/data/settings.ui.h:1 ../swell-foop/data/settings.ui.h:1
+msgid "Appearance"
+msgstr "��"
 
-#: ../glines/glines.c:1477
+#: ../glines/glines.c:1448
 msgid "_Image:"
 msgstr "å??æ¡?ä½?æ?¯(_I)ï¼?"
 
-#: ../glines/glines.c:1488
+#: ../glines/glines.c:1459
 msgid "B_ackground color:"
 msgstr "è??æ?¯é¡?è?²(_A)ï¼?"
 
-#: ../glines/glines.c:1503
+#: ../glines/glines.c:1474
 msgid "Board Size"
 msgstr "é??æ?²ç?¤å¤§å°?"
 
-#: ../glines/glines.c:1522
+#: ../glines/glines.c:1493
 msgctxt "preferences"
 msgid "General"
 msgstr "��"
 
-#: ../glines/glines.c:1528
+#: ../glines/glines.c:1499
 msgid "_Use fast moves"
 msgstr "å¿«é??移å??(_U)"
 
-#: ../glines/glines.c:1875
+#: ../glines/glines.c:1836
 msgid "Next:"
 msgstr "ä¸?次ç??é¡?è?²:"
 
@@ -4641,13 +4657,13 @@ msgstr "第äº?å??ç?©å®¶ç??æ£?å??"
 
 #: ../gnect/data/gnect.schemas.in.h:9 ../gnect/src/prefs.c:372
 #: ../gnibbles/gnibbles.schemas.in.h:16 ../gnibbles/preferences.c:445
-#: ../quadrapassel/quadrapassel.schemas.in.h:13 ../quadrapassel/tetris.cpp:742
+#: ../quadrapassel/quadrapassel.schemas.in.h:13 ../quadrapassel/tetris.cpp:739
 msgid "Move left"
 msgstr "å??左移å??"
 
 #: ../gnect/data/gnect.schemas.in.h:10 ../gnect/src/prefs.c:373
 #: ../gnibbles/gnibbles.schemas.in.h:17 ../gnibbles/preferences.c:446
-#: ../quadrapassel/quadrapassel.schemas.in.h:14 ../quadrapassel/tetris.cpp:743
+#: ../quadrapassel/quadrapassel.schemas.in.h:14 ../quadrapassel/tetris.cpp:740
 msgid "Move right"
 msgstr "å??å?³ç§»å??"
 
@@ -4674,58 +4690,58 @@ msgstr ""
 "ç?¡æ³?è¼?å?¥å??ç??:\n"
 "%s"
 
-#: ../gnect/src/main.c:558
+#: ../gnect/src/main.c:528
 msgid "It's a draw!"
 msgstr "å¹³æ??ï¼?"
 
-#: ../gnect/src/main.c:567 ../gnome-sudoku/src/lib/main.py:438
+#: ../gnect/src/main.c:537 ../gnome-sudoku/src/lib/main.py:410
 msgid "You win!"
 msgstr "你���"
 
-#: ../gnect/src/main.c:569 ../gnect/src/main.c:602
+#: ../gnect/src/main.c:539 ../gnect/src/main.c:572
 msgid "It is your move."
 msgstr "å?°ä½ äº?ã??"
 
-#: ../gnect/src/main.c:572
+#: ../gnect/src/main.c:542
 msgid "I win!"
 msgstr "æ??è´?äº?ï¼?"
 
-#: ../gnect/src/main.c:574 ../gnect/src/main.c:707
+#: ../gnect/src/main.c:544 ../gnect/src/main.c:677
 msgid "Thinking..."
 msgstr "è??æ?®ä¸­..."
 
-#: ../gnect/src/main.c:595 ../gnect/src/main.c:599
+#: ../gnect/src/main.c:565 ../gnect/src/main.c:569
 #, c-format
 msgid "%s wins!"
 msgstr " %s ���"
 
-#: ../gnect/src/main.c:605
+#: ../gnect/src/main.c:575
 #, c-format
 msgid "Waiting for %s to move."
 msgstr "ç­?å¾? %s èµ°æ£?ã??"
 
-#: ../gnect/src/main.c:724
+#: ../gnect/src/main.c:694
 #, c-format
 msgid "Hint: Column %d"
 msgstr "æ??示ï¼?第 %d æ¬?"
 
-#: ../gnect/src/main.c:752 ../gnect/src/main.c:756
+#: ../gnect/src/main.c:722 ../gnect/src/main.c:726
 msgid "You:"
 msgstr "å??ï¼?"
 
-#: ../gnect/src/main.c:753 ../gnect/src/main.c:755
+#: ../gnect/src/main.c:723 ../gnect/src/main.c:725
 msgid "Me:"
 msgstr "è² ï¼?"
 
-#: ../gnect/src/main.c:801
+#: ../gnect/src/main.c:771
 msgid "Scores"
 msgstr "å??æ?¸"
 
-#: ../gnect/src/main.c:852
+#: ../gnect/src/main.c:822
 msgid "Drawn:"
 msgstr "å¹³æ??ï¼?"
 
-#: ../gnect/src/main.c:905
+#: ../gnect/src/main.c:875
 msgid ""
 "\"Four in a Row\" for GNOME, with a computer player driven by Giuliano "
 "Bertoletti's Velena Engine.\n"
@@ -4774,16 +4790,11 @@ msgid "Four-in-a-Row Preferences"
 msgstr "å??å­?é?£ç?°æ£?å??好設å®?"
 
 #: ../gnect/src/prefs.c:303 ../gnibbles/preferences.c:255
-#: ../gnobots2/properties.c:497 ../quadrapassel/tetris.cpp:594
+#: ../gnobots2/properties.c:497 ../quadrapassel/tetris.cpp:591
 #: ../iagno/properties.c:419
 msgid "Game"
 msgstr "é??æ?²"
 
-#: ../gnect/src/prefs.c:335 ../gnobots2/properties.c:536
-#: ../iagno/properties.c:531 ../swell-foop/data/settings.ui.h:1
-msgid "Appearance"
-msgstr "��"
-
 #: ../gnect/src/prefs.c:344
 msgid "_Theme:"
 msgstr "��主�(_T)�"
@@ -4799,7 +4810,7 @@ msgstr "é??å??é?³æ??(_N)"
 
 #. keyboard tab
 #: ../gnect/src/prefs.c:368 ../gnibbles/preferences.c:435
-#: ../gnobots2/properties.c:543 ../quadrapassel/tetris.cpp:734
+#: ../gnobots2/properties.c:543 ../quadrapassel/tetris.cpp:731
 msgid "Keyboard Controls"
 msgstr "����"
 
@@ -4906,21 +4917,21 @@ msgstr "貪é£?è??ç©?å??æ¦?"
 msgid "Speed:"
 msgstr "é??度ï¼?"
 
-#: ../gnibbles/gnibbles.c:376 ../gnobots2/game.c:182 ../gnomine/gnomine.c:225
-#: ../gnotravex/gnotravex.c:1240 ../gnotski/gnotski.c:842
-#: ../gtali/gyahtzee.c:200 ../mahjongg/mahjongg.c:668
+#: ../gnibbles/gnibbles.c:376 ../gnobots2/game.c:182 ../gnomine/gnomine.c:224
+#: ../gnotravex/gnotravex.c:1119 ../gnotski/gnotski.c:801
+#: ../gtali/gyahtzee.c:200 ../mahjongg/mahjongg.c:633
 msgid "Congratulations!"
 msgstr "æ?­å??ï¼?"
 
-#: ../gnibbles/gnibbles.c:377 ../gnobots2/game.c:183 ../gnomine/gnomine.c:226
-#: ../gnotravex/gnotravex.c:1241 ../gnotski/gnotski.c:843
-#: ../gtali/gyahtzee.c:201 ../mahjongg/mahjongg.c:669
+#: ../gnibbles/gnibbles.c:377 ../gnobots2/game.c:183 ../gnomine/gnomine.c:225
+#: ../gnotravex/gnotravex.c:1120 ../gnotski/gnotski.c:802
+#: ../gtali/gyahtzee.c:201 ../mahjongg/mahjongg.c:634
 msgid "Your score is the best!"
 msgstr "ä½ ç??å??æ?¸æ?¯æ??é«?ç??ï¼?"
 
-#: ../gnibbles/gnibbles.c:378 ../gnobots2/game.c:184 ../gnomine/gnomine.c:227
-#: ../gnotravex/gnotravex.c:1242 ../gnotski/gnotski.c:844
-#: ../gtali/gyahtzee.c:202 ../mahjongg/mahjongg.c:670
+#: ../gnibbles/gnibbles.c:378 ../gnobots2/game.c:184 ../gnomine/gnomine.c:226
+#: ../gnotravex/gnotravex.c:1121 ../gnotski/gnotski.c:803
+#: ../gtali/gyahtzee.c:202 ../mahjongg/mahjongg.c:635
 msgid "Your score has made the top ten."
 msgstr "ä½ ç??å??æ?¸é?²å?¥é ­å??å??ã??"
 
@@ -4929,9 +4940,9 @@ msgstr "ä½ ç??å??æ?¸é?²å?¥é ­å??å??ã??"
 msgid "Guide a worm around a maze"
 msgstr "å¼?å°?ä¸?æ?·ç§»å??ç??å°?è?²è?²é?¿é??ç?«é?¢ç??é??ç¤?ç?©"
 
-#: ../gnibbles/gnibbles.desktop.in.in.h:2 ../gnibbles/main.c:231
-#: ../gnibbles/main.c:235 ../gnibbles/main.c:237 ../gnibbles/main.c:860
-#: ../gnibbles/main.c:940 ../gnibbles/main.c:1086
+#: ../gnibbles/gnibbles.desktop.in.in.h:2 ../gnibbles/main.c:197
+#: ../gnibbles/main.c:201 ../gnibbles/main.c:203 ../gnibbles/main.c:803
+#: ../gnibbles/main.c:881 ../gnibbles/main.c:1027
 msgid "Nibbles"
 msgstr "貪é£?è??"
 
@@ -4992,7 +5003,7 @@ msgid "Key to use for motion up."
 msgstr "表示å??ä¸?æ??ç?¨ç??æ??é?µ"
 
 #: ../gnibbles/gnibbles.schemas.in.h:15 ../gnibbles/preferences.c:448
-#: ../quadrapassel/quadrapassel.schemas.in.h:12 ../quadrapassel/tetris.cpp:744
+#: ../quadrapassel/quadrapassel.schemas.in.h:12 ../quadrapassel/tetris.cpp:741
 msgid "Move down"
 msgstr "å??ä¸?移å??"
 
@@ -5040,47 +5051,47 @@ msgstr "è??ç??æ?¹å??æ?¹è®?æ??æ ¹æ??ç?¶æ??ç??è??é ­æ?¹å??è¨?ç®?"
 msgid "Use relative movement (ie. left or right only)."
 msgstr "è??ç??æ?¹å??æ?¹è®?æ??æ ¹æ??ç?¶æ??ç??è??é ­æ?¹å??è¨?ç®? (å?³æ?¯å?ªå?¯ä»¥å??å·¦æ??è??å??å?³è½?)"
 
-#: ../gnibbles/main.c:71
+#: ../gnibbles/main.c:73
 msgctxt "game speed"
 msgid "Beginner"
 msgstr "æ?°æ??"
 
-#: ../gnibbles/main.c:72
+#: ../gnibbles/main.c:74
 msgctxt "game speed"
 msgid "Slow"
 msgstr "æ?¢é??"
 
-#: ../gnibbles/main.c:73
+#: ../gnibbles/main.c:75
 msgctxt "game speed"
 msgid "Medium"
 msgstr "æ?®é??"
 
-#: ../gnibbles/main.c:74
+#: ../gnibbles/main.c:76
 msgctxt "game speed"
 msgid "Fast"
 msgstr "å¿«é??"
 
-#: ../gnibbles/main.c:75
+#: ../gnibbles/main.c:77
 msgctxt "game speed"
 msgid "Beginner with Fakes"
 msgstr "æ?°æ??ï¼?æ??å??ç??ç??å?µ"
 
-#: ../gnibbles/main.c:76
+#: ../gnibbles/main.c:78
 msgctxt "game speed"
 msgid "Slow with Fakes"
 msgstr "æ?¢é??ï¼?æ??å??ç??ç??å?µ"
 
-#: ../gnibbles/main.c:77
+#: ../gnibbles/main.c:79
 msgctxt "game speed"
 msgid "Medium with Fakes"
 msgstr "中é??ï¼?æ??å??ç??ç??å?µ"
 
-#: ../gnibbles/main.c:78
+#: ../gnibbles/main.c:80
 msgctxt "game speed"
 msgid "Fast with Fakes"
 msgstr "å¿«é??ï¼?æ??å??ç??ç??å?µ"
 
-#: ../gnibbles/main.c:244
+#: ../gnibbles/main.c:210
 msgid ""
 "A worm game for GNOME.\n"
 "\n"
@@ -5090,17 +5101,17 @@ msgstr ""
 "\n"
 "Nibbles(貪é£?è??)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../gnibbles/main.c:618
+#: ../gnibbles/main.c:572
 #, c-format
 msgid "Game over! The game has been won by %s!"
 msgstr "é??æ?²å®?ç?¢ï¼?%s ç?²å??ï¼?"
 
-#: ../gnibbles/main.c:666
+#: ../gnibbles/main.c:620
 msgid "The game is over."
 msgstr "é??æ?²å®?ç?¢ã??"
 
 #. Translators: This string will be included in the intro screen, so don't make sure it fits!
-#: ../gnibbles/main.c:942
+#: ../gnibbles/main.c:883
 msgid "A worm game for GNOME."
 msgstr "GNOME ç??æ?¬è²ªé£?è??é??æ?²ã??"
 
@@ -5143,7 +5154,7 @@ msgid "_Enable fake bonuses"
 msgstr "å?¯å?ºç?¾å??ç??ç??å?µ(_E)"
 
 #. starting level
-#: ../gnibbles/preferences.c:352 ../quadrapassel/tetris.cpp:641
+#: ../gnibbles/preferences.c:352 ../quadrapassel/tetris.cpp:638
 msgid "_Starting level:"
 msgstr "é??å§?ç??å??(_S)ï¼?"
 
@@ -5192,13 +5203,14 @@ msgstr "第 %d ��:"
 msgid "Game over!"
 msgstr "����"
 
-#: ../gnobots2/game.c:155 ../gnomine/gnomine.c:201 ../gnotski/gnotski.c:817
+#: ../gnobots2/game.c:155 ../gnomine/gnomine.c:200 ../gnotski/gnotski.c:776
 msgid "Great work, but unfortunately your score did not make the top ten."
 msgstr "ä¸?幸å?°ï¼?ä½ ç??å??æ?¸ä¸?è?½é?²å?¥é ­å??å??ã??"
 
 #. Translators: This "_New Game" is for the game-over dialogue
-#: ../gnobots2/game.c:157 ../gnomine/gnomine.c:203 ../gnotski/gnotski.c:819
-#: ../libgames-support/games-stock.c:327
+#: ../gnobots2/game.c:157 ../gnome-sudoku/data/select_game.ui.h:1
+#: ../gnomine/gnomine.c:202 ../gnotski/gnotski.c:778
+#: ../libgames-support/games-stock.c:293
 msgid "_New Game"
 msgstr "é??æ?°å±?(_N)"
 
@@ -5206,8 +5218,8 @@ msgstr "é??æ?°å±?(_N)"
 msgid "Robots Scores"
 msgstr "æ©?械人ç©?å??"
 
-#: ../gnobots2/game.c:173 ../mahjongg/mahjongg.c:666
-#: ../mahjongg/mahjongg.c:995
+#: ../gnobots2/game.c:173 ../mahjongg/mahjongg.c:631
+#: ../mahjongg/mahjongg.c:961
 msgid "Map:"
 msgstr "æ??å??ï¼?"
 
@@ -5240,15 +5252,15 @@ msgstr "ä¿®æ?¹é??æ?²ç??設å®?"
 msgid "Initial window position"
 msgstr "é??å§?æ??è¦?çª?ç??ä½?ç½®"
 
-#: ../gnobots2/gnobots.c:89 ../gnomine/gnomine.c:1003
-#: ../gnomine/gnomine.c:1011 ../gnotravex/gnotravex.c:400
-#: ../gnotski/gnotski.c:467 ../iagno/gnothello.c:150
+#: ../gnobots2/gnobots.c:89 ../gnomine/gnomine.c:929 ../gnomine/gnomine.c:937
+#: ../gnotravex/gnotravex.c:263 ../gnotski/gnotski.c:459
+#: ../iagno/gnothello.c:150
 msgid "X"
 msgstr "X"
 
-#: ../gnobots2/gnobots.c:91 ../gnomine/gnomine.c:1005
-#: ../gnomine/gnomine.c:1013 ../gnotravex/gnotravex.c:402
-#: ../gnotski/gnotski.c:469 ../iagno/gnothello.c:152
+#: ../gnobots2/gnobots.c:91 ../gnomine/gnomine.c:931 ../gnomine/gnomine.c:939
+#: ../gnotravex/gnotravex.c:265 ../gnotski/gnotski.c:461
+#: ../iagno/gnothello.c:152
 msgid "Y"
 msgstr "Y"
 
@@ -5313,26 +5325,26 @@ msgid "Robots with safe teleport with super-safe moves"
 msgstr "å?¯ä½¿ç?¨å®?å?¨ç©ºé??è½?移è??è¶?ç´?å®?å?¨ç§»å??ç??æ©?械人"
 
 #: ../gnobots2/gnobots.c:240 ../gnobots2/gnobots.c:261
-#: ../gnobots2/gnobots2.desktop.in.in.h:2 ../gnobots2/menu.c:263
-#: ../gnobots2/menu.c:266
+#: ../gnobots2/gnobots2.desktop.in.in.h:2 ../gnobots2/menu.c:256
+#: ../gnobots2/menu.c:259
 msgid "Robots"
 msgstr "�械人"
 
-#: ../gnobots2/gnobots.c:323
+#: ../gnobots2/gnobots.c:321
 msgid "No game data could be found."
 msgstr "æ?¾ä¸?å?°é??æ?²è³?æ??ã??"
 
-#: ../gnobots2/gnobots.c:325
+#: ../gnobots2/gnobots.c:323
 msgid ""
 "The program Robots was unable to find any valid game configuration files. "
 "Please check that the program is installed correctly."
 msgstr "GNOME æ©?械人æ?¾ä¸?å?°æ??æ??ç??設å®?æª?ã??è«?檢æ?¥ç¨?å¼?æ?¯å?¦å·²æ­£ç¢ºå®?è£?ã??"
 
-#: ../gnobots2/gnobots.c:341
+#: ../gnobots2/gnobots.c:339
 msgid "Some graphics files are missing or corrupt."
 msgstr "æ??äº?å??ç??æª?æ¡?æ?¾ä¸?å?°æ??è??å·²ç¶?æ??å£?ã??"
 
-#: ../gnobots2/gnobots.c:343
+#: ../gnobots2/gnobots.c:341
 msgid ""
 "The program Robots was unable to load all the necessary graphics files. "
 "Please check that the program is installed correctly."
@@ -5515,35 +5527,35 @@ msgstr "å?¯ä½¿ç?¨ã??è¶?ç´?å®?å?¨ç§»å??ã??ã??ç?¶æ²?æ??ä»»ä½?ä¸?æ­¥å®?å?¨ï¼?è??ä¸?
 msgid "Could not find '%s' pixmap file\n"
 msgstr "æ?¾ä¸?å?° pixmap æª?â??%sâ??\n"
 
-#: ../gnobots2/menu.c:70 ../gnotravex/gnotravex.c:305
+#: ../gnobots2/menu.c:68 ../gnotravex/gnotravex.c:1753
 msgid "_Move"
 msgstr "移å??(_M)"
 
-#: ../gnobots2/menu.c:77
+#: ../gnobots2/menu.c:75
 msgid "_Teleport"
 msgstr "空é??è½?移(_T)"
 
-#: ../gnobots2/menu.c:78
+#: ../gnobots2/menu.c:76
 msgid "Teleport, safely if possible"
 msgstr "ç?¡å?¯è?½ä¿?è­?å®?å?¨ç??空é??è½?移"
 
-#: ../gnobots2/menu.c:79
+#: ../gnobots2/menu.c:77
 msgid "_Random"
 msgstr "��(_R)"
 
-#: ../gnobots2/menu.c:80
+#: ../gnobots2/menu.c:78
 msgid "Teleport randomly"
 msgstr "é?¨æ©?空é??è½?移"
 
-#: ../gnobots2/menu.c:81
+#: ../gnobots2/menu.c:79
 msgid "_Wait"
 msgstr "ç­?å¾?(_W)"
 
-#: ../gnobots2/menu.c:81
+#: ../gnobots2/menu.c:79
 msgid "Wait for the robots"
 msgstr "���械人��"
 
-#: ../gnobots2/menu.c:271
+#: ../gnobots2/menu.c:264
 msgid ""
 "Based on classic BSD Robots.\n"
 "\n"
@@ -5626,7 +5638,7 @@ msgstr "å?¯ä½¿ç?¨è¶?ç´?å®?å?¨ç§»å??(_S)"
 msgid "Prevents all moves that result in getting killed."
 msgstr "ç¦?止任ä½?æ??å¼?è?´æ??失ç??å?½ç??è¡?å??ã??"
 
-#: ../gnobots2/properties.c:489 ../quadrapassel/tetris.cpp:667
+#: ../gnobots2/properties.c:489 ../quadrapassel/tetris.cpp:664
 msgid "_Enable sounds"
 msgstr "é??å??é?³æ??(_E)"
 
@@ -5642,7 +5654,7 @@ msgstr "å??æ¡?ä½?æ?¯"
 msgid "_Image theme:"
 msgstr "å??æ¡?ä½?æ?¯(_I)ï¼?"
 
-#: ../gnobots2/properties.c:524 ../mahjongg/mahjongg.c:775
+#: ../gnobots2/properties.c:524 ../mahjongg/mahjongg.c:740
 msgid "_Background color:"
 msgstr "è??æ?¯é¡?è?²(_B)ï¼?"
 
@@ -5672,12 +5684,12 @@ msgid "Fit falling blocks together"
 msgstr "å°?ä¸?å??å½¢ç??è??ä¸?ä¸?æ?·è·?ä¸?ç??æ?¹å¡?æ?¼å??å?¨ä¸?èµ·"
 
 #: ../quadrapassel/quadrapassel.desktop.in.in.h:2 ../quadrapassel/main.cpp:66
-#: ../quadrapassel/tetris.cpp:160 ../quadrapassel/tetris.cpp:1298
-#: ../quadrapassel/tetris.cpp:1304
+#: ../quadrapassel/tetris.cpp:158 ../quadrapassel/tetris.cpp:1288
+#: ../quadrapassel/tetris.cpp:1294
 msgid "Quadrapassel"
 msgstr "�����"
 
-#: ../quadrapassel/quadrapassel.schemas.in.h:1 ../quadrapassel/tetris.cpp:745
+#: ../quadrapassel/quadrapassel.schemas.in.h:1 ../quadrapassel/tetris.cpp:742
 msgid "Drop"
 msgstr "��"
 
@@ -5713,11 +5725,11 @@ msgstr "é??å§?æ??ç??ç´?æ?¸"
 msgid "Level to start with."
 msgstr "é??å§?æ??ç??ç´?æ?¸"
 
-#: ../quadrapassel/quadrapassel.schemas.in.h:15 ../quadrapassel/tetris.cpp:747
+#: ../quadrapassel/quadrapassel.schemas.in.h:15 ../quadrapassel/tetris.cpp:744
 msgid "Pause"
 msgstr "æ?«å??"
 
-#: ../quadrapassel/quadrapassel.schemas.in.h:16 ../quadrapassel/tetris.cpp:746
+#: ../quadrapassel/quadrapassel.schemas.in.h:16 ../quadrapassel/tetris.cpp:743
 msgid "Rotate"
 msgstr "æ??è½?"
 
@@ -5824,65 +5836,65 @@ msgstr "Tango é?°å½±"
 msgid "Lines:"
 msgstr "���"
 
-#: ../quadrapassel/tetris.cpp:573
+#: ../quadrapassel/tetris.cpp:570
 msgid "Quadrapassel Preferences"
 msgstr "ä¿?ç¾?æ?¯æ?¹å¡?å??好設å®?"
 
-#: ../quadrapassel/tetris.cpp:597 ../swell-foop/data/settings.ui.h:5
+#: ../quadrapassel/tetris.cpp:594 ../swell-foop/data/settings.ui.h:5
 msgid "Setup"
 msgstr "設�"
 
 #. pre-filled rows
-#: ../quadrapassel/tetris.cpp:603
+#: ../quadrapassel/tetris.cpp:600
 msgid "_Number of pre-filled rows:"
 msgstr "é ?å??å¡«å??ç??è¡?æ?¸(_N)ï¼?"
 
 #. pre-filled rows density
-#: ../quadrapassel/tetris.cpp:622
+#: ../quadrapassel/tetris.cpp:619
 msgid "_Density of blocks in a pre-filled row:"
 msgstr "é ?å??å¡«å??æ??æ¯?è¡?ç??å¯?度(_D)ï¼?"
 
-#: ../quadrapassel/tetris.cpp:662 ../swell-foop/data/settings.ui.h:4
+#: ../quadrapassel/tetris.cpp:659 ../swell-foop/data/settings.ui.h:4
 msgid "Operation"
 msgstr "æ??ä½?"
 
-#: ../quadrapassel/tetris.cpp:676
+#: ../quadrapassel/tetris.cpp:673
 msgid "_Preview next block"
 msgstr "é ?覽ä¸?å??æ?¹å¡?(_P)"
 
-#: ../quadrapassel/tetris.cpp:685
+#: ../quadrapassel/tetris.cpp:682
 msgid "_Use random block colors"
 msgstr "��使�����(_U)"
 
-#: ../quadrapassel/tetris.cpp:696
-msgid "_Bastard mode"
-msgstr "ç??ç??模å¼?(_B)"
+#: ../quadrapassel/tetris.cpp:693
+msgid "Choose difficult _blocks"
+msgstr "é?¸æ??å?°é?£ç??æ?¹å¡?(_B)"
 
-#: ../quadrapassel/tetris.cpp:705
+#: ../quadrapassel/tetris.cpp:702
 msgid "_Rotate blocks counterclockwise"
 msgstr "æ?¹å¡?以é??æ??é??æ?¹å??æ??è½?(_R)"
 
-#: ../quadrapassel/tetris.cpp:714
+#: ../quadrapassel/tetris.cpp:711
 msgid "Show _where the block will land"
 msgstr "顯示æ?¹å¡?è?½é»?æ??示(_W)"
 
-#: ../quadrapassel/tetris.cpp:722 ../quadrapassel/tetris.cpp:755
+#: ../quadrapassel/tetris.cpp:719 ../quadrapassel/tetris.cpp:752
 msgid "Theme"
 msgstr "��主�"
 
-#: ../quadrapassel/tetris.cpp:731
+#: ../quadrapassel/tetris.cpp:728
 msgid "Controls"
 msgstr "��"
 
-#: ../quadrapassel/tetris.cpp:758
+#: ../quadrapassel/tetris.cpp:755
 msgid "Block Style"
 msgstr "��樣�"
 
-#: ../quadrapassel/tetris.cpp:1302
+#: ../quadrapassel/tetris.cpp:1292
 msgid "Qua"
 msgstr "Qua"
 
-#: ../quadrapassel/tetris.cpp:1307
+#: ../quadrapassel/tetris.cpp:1297
 msgid ""
 "A classic game of fitting falling blocks together.\n"
 "\n"
@@ -5897,13 +5909,11 @@ msgid "Quadrapassel Scores"
 msgstr "ä¿?ç¾?æ?¯æ?¹å¡?ç©?å??æ¦?"
 
 #: ../quadrapassel/blockops.cpp:786
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:174
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:215
 msgid "Paused"
 msgstr "æ?«å??"
 
 #: ../gnome-sudoku/gnome-sudoku.desktop.in.in.h:1
-#: ../gnome-sudoku/src/lib/defaults.py.in:38
+#: ../gnome-sudoku/src/lib/defaults.py.in:40
 msgid "Sudoku"
 msgstr "��"
 
@@ -5916,68 +5926,62 @@ msgid "Color of the grid border"
 msgstr "æ ¼ç·?å¤?æ¡?ç??é¡?è?²"
 
 #: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:2
-msgid "Generate new puzzles in the background"
-msgstr "å?¨è??æ?¯ç?¢ç??æ?°é¡?ç?®"
-
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:3
 msgid "Height of application window in pixels"
 msgstr "æ??ç?¨ç¨?å¼?è¦?çª?ç??é«?度ï¼?å??ç´ ï¼?"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:4
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:3
 msgid "Mark printed games as played"
 msgstr "å°?æ??å?°é??ç??é¡?ç?®æ¨?è¨?ç?ºå·²ç¶?ç?©é??"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:5
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:4
 msgid "Number of puzzles to print on a page"
 msgstr "è¦?æ??å?°ç??æ¯?é ?é¡?ç?®æ?¸"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:6
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:5
 msgid "Print games that have been played"
 msgstr "æ??å?°å·²ç¶?ç?©é??ç??é??æ?²"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:7
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:6
 msgid "Show hint highlights"
 msgstr "顯示æ??示ç??çª?顯æ??æ??"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:8
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:7
 msgid "Show hints"
 msgstr "顯示æ??示"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:9
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:8
 msgid "Show the application toolbar"
 msgstr "顯示æ??ç?¨ç¨?å¼?å·¥å?·å??"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:10
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:9
 msgid "The number of seconds between automatic saves"
 msgstr "è?ªå??å?²å­?é??é??ç§?æ?¸"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:11
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:10
 msgid "Width of application window in pixels"
 msgstr "æ??ç?¨ç¨?å¼?è¦?çª?ç??é??度ï¼?å??ç´ ï¼?"
 
 #: ../gnome-sudoku/data/print_games.ui.h:1
-msgid "<b><i>Details</i></b>"
-msgstr "<b><i>詳細è³?æ??</i></b>"
+msgid "Details"
+msgstr "詳細è³?æ??"
 
 #: ../gnome-sudoku/data/print_games.ui.h:2
-msgid "<b><i>Levels of difficulty to print</i></b>"
-msgstr "<b><i>è¦?æ??å?°ç??é??æ?²é?£åº¦ç­?ç´?</i></b>"
+msgid "Levels of difficulty to print"
+msgstr "è¦?æ??å?°ç??é??æ?²é?£åº¦ç­?ç´?"
 
 #: ../gnome-sudoku/data/print_games.ui.h:3
-msgid "<span size=\"larger\" weight=\"bold\">Print Games</span>"
-msgstr "<span size=\"larger\" weight=\"bold\">æ??å?°é??æ?²</span>"
+msgid "Print Games"
+msgstr "æ??å?°é??æ?²"
 
 #: ../gnome-sudoku/data/print_games.ui.h:4
 msgid "Print Sudokus"
 msgstr "æ??å?°æ?¸ç?¨é??æ?²"
 
 #: ../gnome-sudoku/data/print_games.ui.h:5
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:13
 msgid "_Easy"
 msgstr "容æ??(_E)"
 
 #: ../gnome-sudoku/data/print_games.ui.h:6
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:15
 msgid "_Hard"
 msgstr "å?°é?£(_H)"
 
@@ -5990,7 +5994,6 @@ msgid "_Mark games as played once you've printed them."
 msgstr "æ??å?°é¡?ç?®å¾?å°?é¡?ç?®æ¨?è¨?ç?ºå·²ç¶?ç?©é??(_M)"
 
 #: ../gnome-sudoku/data/print_games.ui.h:9
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:16
 msgid "_Medium"
 msgstr "中(_M)"
 
@@ -6003,85 +6006,38 @@ msgid "_Sudokus per page: "
 msgstr "æ¯?é ?ç??æ?¸ç?¨é¡?ç?®æ?¸ç?®(_S):"
 
 #: ../gnome-sudoku/data/print_games.ui.h:12
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:17
 msgid "_Very Hard"
 msgstr "極�(_V)"
 
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:1
-msgid "<i><u>Number of Puzzles</u></i>"
-msgstr "<i><u>����</u></i>"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:2
-msgid "<i>Easy:</i>"
-msgstr "<i>容æ??ï¼?</i>"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:3
-msgid "<i>Hard:</i>"
-msgstr "<i>���</i>"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:4
-msgid "<i>Medium:</i>"
-msgstr "<i>中��</i>"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:5
-msgid "<i>Very Hard:</i>"
-msgstr "<i>極��</i>"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:6
-msgid "<span size=\"larger\" weight=\"bold\">Puzzle Generator</span>"
-msgstr "<span size=\"larger\" weight=\"bold\">é¡?ç?®ç?¢ç??å?¨</span>"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:7
-msgid "Criteria:"
-msgstr "�件�"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:8
-msgid "Generate Policy"
-msgstr "ç?¢ç??ç??æ³?å??"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:9
-msgid "Generate new puzzles _until stopped"
-msgstr "ä¸?æ?·ç?¢ç??æ?°é¡?ç?®ç?´è?³ç?©å®¶è¦?æ±?å??æ­¢(_U)"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:10
-msgid "Generate until _reaching target"
-msgstr "ç?¢ç??é¡?ç?®ç?´è?³é??å?°ç?®æ¨?æ?¸å­?ç?ºæ­¢(_R)"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:11
-msgid "Puzzle Generator"
-msgstr "é¡?ç?®ç?¢ç??å?¨"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:12
-msgid "Target _number of sudokus:"
-msgstr "æ?¸ç?¨é¡?ç?®ç??ç?®æ¨?æ?¸å­?(_N):"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:14
-msgid "_Generate"
-msgstr "ç?¢ç??(_G)"
-
-#: ../gnome-sudoku/data/select_game.ui.h:1
-msgid "<b><span size=\"large\">_New Game</span></b>"
-msgstr "<b><span size=\"large\">æ?°é??æ?²(_N)</span></b>"
-
 #: ../gnome-sudoku/data/select_game.ui.h:2
-msgid "<b><span size=\"large\">_Saved Games</span></b>"
-msgstr "<b><span size=\"large\">å?²å­?é??æ?²(_S)</span></b>"
+msgid "_Saved Games"
+msgstr "å·²å?²å­?ç??é??æ?²(_S)"
 
 #: ../gnome-sudoku/data/tracker.ui.h:1
-msgid "Clear _Others"
-msgstr "æ¸?é?¤å?¶ä»?ç??(_O)"
+#, fuzzy
+#| msgid "_Add Tracker"
+msgid "Add a new tracker"
+msgstr "���設�"
 
-#: ../gnome-sudoku/data/tracker.ui.h:2
-msgid "_Add Tracker"
-msgstr "��追蹤�(_A)"
+#: ../gnome-sudoku/data/tracker.ui.h:2 ../gnome-sudoku/src/lib/main.py:772
+msgid "H_ide"
+msgstr "é?±è??(_I)"
 
-#: ../gnome-sudoku/data/tracker.ui.h:3 ../gnome-sudoku/src/lib/main.py:788
-msgid "_Clear Tracker"
-msgstr "��追蹤�(_C)"
+#: ../gnome-sudoku/data/tracker.ui.h:3
+#, fuzzy
+msgid "Hide the tracked values"
+msgstr "è¦?ç?£æ?§ç??æ?¸å?¼"
 
 #: ../gnome-sudoku/data/tracker.ui.h:4
-msgid "_Trackers"
-msgstr "追蹤�(_T)"
+#, fuzzy
+msgid "Make the tracked changes permanent"
+msgstr "æ°¸é? å?°é?£æ?¥å?°æ­¤ä¼ºæ??å?¨"
+
+#: ../gnome-sudoku/data/tracker.ui.h:5
+#, fuzzy
+#| msgid "Clear all moves tracked by selected tracker."
+msgid "Remove the selected tracker"
+msgstr "移é?¤å·²é?¸ç??æ?¸ç±¤"
 
 #: ../gnome-sudoku/src/gnome-sudoku.in.in:59
 msgid "Sudoku incorrectly installed"
@@ -6094,13 +6050,13 @@ msgid ""
 "upgrade has completed."
 msgstr "ç?¡æ³?å??å??æ?¸ç?¨(Sudoku)ï¼?å? ç?ºè¦?æ±?ç??æ??ç?¨ç¨?å¼?æª?æ¡?å°?æ?ªå®?è£?ã??å¦?æ??ä½ æ­£å?¨å??ç´?系統ï¼?è«?ç¨?å??ç?´å?°å??ç´?çµ?æ??ã??"
 
-#: ../gnome-sudoku/src/lib/defaults.py.in:37
+#: ../gnome-sudoku/src/lib/defaults.py.in:39
 msgid "GNOME Sudoku"
 msgstr "GNOME ��"
 
-#: ../gnome-sudoku/src/lib/defaults.py.in:40
+#: ../gnome-sudoku/src/lib/defaults.py.in:42
 msgid ""
-"GNOME Sudoku is a simple sudoku generator and player. Sudoku is a japanese "
+"GNOME Sudoku is a simple Sudoku generator and player. Sudoku is a Japanese "
 "logic puzzle.\n"
 "\n"
 "GNOME Sudoku is a part of GNOME Games."
@@ -6109,340 +6065,292 @@ msgstr ""
 "\n"
 "GNOME æ?¸ç?¨(Sudoku)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../gnome-sudoku/src/lib/saver.py:122
+#: ../gnome-sudoku/src/lib/saver.py:137
 msgid "No Space"
 msgstr "æ²?æ??空é??"
 
-#: ../gnome-sudoku/src/lib/saver.py:123
+#: ../gnome-sudoku/src/lib/saver.py:138
 msgid "No space left on disk"
 msgstr "ç£?ç¢?ä¸?æ²?æ??å?©é¤?空é??"
 
-#: ../gnome-sudoku/src/lib/saver.py:125 ../gnome-sudoku/src/lib/saver.py:132
+#: ../gnome-sudoku/src/lib/saver.py:140 ../gnome-sudoku/src/lib/saver.py:147
 #, python-format
 msgid "Unable to create data folder %(path)s."
 msgstr "ç?¡æ³?建ç«?è³?æ??ç?¨ç??è³?æ??夾 %(path)sã??"
 
-#: ../gnome-sudoku/src/lib/saver.py:126
+#: ../gnome-sudoku/src/lib/saver.py:141
 msgid "There is no disk space left!"
 msgstr "å·²ç¶?æ²?æ??å?©é¤?ç??ç£?ç¢?空é??ï¼?"
 
-#: ../gnome-sudoku/src/lib/saver.py:133 ../gnome-sudoku/src/lib/saver.py:158
-#: ../gnome-sudoku/src/lib/saver.py:182 ../gnome-sudoku/src/lib/saver.py:200
+#: ../gnome-sudoku/src/lib/saver.py:148 ../gnome-sudoku/src/lib/saver.py:173
+#: ../gnome-sudoku/src/lib/saver.py:197 ../gnome-sudoku/src/lib/saver.py:215
 #, python-format
 msgid "Error %(errno)s: %(error)s"
 msgstr "%(errno)s �誤�%(error)s"
 
-#: ../gnome-sudoku/src/lib/saver.py:153 ../gnome-sudoku/src/lib/saver.py:154
+#: ../gnome-sudoku/src/lib/saver.py:168 ../gnome-sudoku/src/lib/saver.py:169
 msgid "Sudoku unable to save game."
 msgstr "æ?¸ç?¨(Sudoku)ç?¡æ³?å?²å­?é??æ?²ã??"
 
-#: ../gnome-sudoku/src/lib/saver.py:156 ../gnome-sudoku/src/lib/saver.py:181
-#: ../gnome-sudoku/src/lib/saver.py:199
+#: ../gnome-sudoku/src/lib/saver.py:171 ../gnome-sudoku/src/lib/saver.py:196
+#: ../gnome-sudoku/src/lib/saver.py:214
 #, python-format
 msgid "Unable to save file %(filename)s."
 msgstr "ç?¡æ³?å?²å­?æª?æ¡? %(filename)sã??"
 
-#: ../gnome-sudoku/src/lib/saver.py:178 ../gnome-sudoku/src/lib/saver.py:179
-#: ../gnome-sudoku/src/lib/saver.py:196 ../gnome-sudoku/src/lib/saver.py:197
+#: ../gnome-sudoku/src/lib/saver.py:193 ../gnome-sudoku/src/lib/saver.py:194
+#: ../gnome-sudoku/src/lib/saver.py:211 ../gnome-sudoku/src/lib/saver.py:212
 msgid "Sudoku unable to mark game as finished."
 msgstr "æ?¸ç?¨(Sudoku)ç?¡æ³?å°?é??æ?²æ¨?è¨?ç?ºå·²çµ?æ??ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:43
+#: ../gnome-sudoku/src/lib/main.py:44
 msgid "Track moves"
 msgstr "追蹤填�"
 
-#: ../gnome-sudoku/src/lib/main.py:243
+#: ../gnome-sudoku/src/lib/main.py:232
 msgid "New game"
 msgstr "é??æ?°å±?"
 
+#. Translators: this is the "Reset" scores button in a scores dialogue
+#: ../gnome-sudoku/src/lib/main.py:233 ../libgames-support/games-stock.c:296
+msgid "_Reset"
+msgstr "é??設(_R)"
+
+#: ../gnome-sudoku/src/lib/main.py:234
+msgid "Reset current grid(do-over)"
+msgstr ""
+
+#: ../gnome-sudoku/src/lib/main.py:235
+msgid "_Undo"
+msgstr "å??æ??(_U)"
+
+#: ../gnome-sudoku/src/lib/main.py:236
+msgid "Undo last action"
+msgstr "é??å??ä¸?ä¸?æ­¥"
+
+#: ../gnome-sudoku/src/lib/main.py:237
+msgid "_Redo"
+msgstr "å??æ¶?å??æ??(_R)"
+
+#: ../gnome-sudoku/src/lib/main.py:238
+msgid "Redo last action"
+msgstr "é??æ?°é?²è¡?å??é??å??ç??ä¸?æ­¥"
+
+#: ../gnome-sudoku/src/lib/main.py:239
+msgid "Puzzle _Statistics..."
+msgstr "��統�(_S)..."
+
+#: ../gnome-sudoku/src/lib/main.py:240
+msgid "Show statistics about current puzzle"
+msgstr "顯示æ??é??ç?®å??é¡?ç?®ç??çµ±è¨?æ?¸å­?"
+
+#: ../gnome-sudoku/src/lib/main.py:241
+msgid "_Print..."
+msgstr "æ??å?°(_P)..."
+
 # zh_HK: msgstr "æ??å?°ç?®å??ç??é??æ?²"
 # zh_TW: msgstr "å??å?°ç?®å??ç??é??æ?²"
-#: ../gnome-sudoku/src/lib/main.py:245
+#: ../gnome-sudoku/src/lib/main.py:241
 msgid "Print current game"
 msgstr "æ??å?°ç?®å??ç??é??æ?²"
 
-#: ../gnome-sudoku/src/lib/main.py:246
-msgid "Print _Multiple Sudokus"
-msgstr "æ??å?°å¤?份æ?¸ç?¨é??æ?²(_M)"
+#: ../gnome-sudoku/src/lib/main.py:242
+msgid "Print _Multiple Sudokus..."
+msgstr "æ??å?°å¤?份æ?¸ç?¨é??æ?²(_M)..."
 
-#: ../gnome-sudoku/src/lib/main.py:247
+#: ../gnome-sudoku/src/lib/main.py:243
 msgid "Print more than one sudoku at a time."
 msgstr "ä¸?次æ??å?°å¤?æ?¼ä¸?份ç??æ?¸ç?¨ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:249
+#: ../gnome-sudoku/src/lib/main.py:244
 msgid "Close Sudoku"
 msgstr "é??é??æ?¸ç?¨"
 
-#: ../gnome-sudoku/src/lib/main.py:250
+#: ../gnome-sudoku/src/lib/main.py:247
 msgid "_Tools"
 msgstr "工�(_T)"
 
-#: ../gnome-sudoku/src/lib/main.py:252 ../libgames-support/games-stock.c:323
+#: ../gnome-sudoku/src/lib/main.py:248 ../libgames-support/games-stock.c:289
 msgid "_Hint"
 msgstr "æ??示(_H)"
 
-#: ../gnome-sudoku/src/lib/main.py:254
-msgid "Show which numbers could go in the current square."
-msgstr "顯示ç?®å??ç??æ?¹æ ¼å?¯ä»¥æ?¥å??å?ªäº?æ?¸å­?ã??"
-
-#: ../gnome-sudoku/src/lib/main.py:256
-msgid "_Fill"
-msgstr "å¡«å??(_F)"
-
-#: ../gnome-sudoku/src/lib/main.py:257
-msgid "Automatically fill in the current square if possible."
-msgstr "å?¨è¨±å?¯ç??æ??æ³?ä¸?ç?¡é??å¡«ä¸?ç?®å??ç??æ?¹æ ¼ã??"
-
-#: ../gnome-sudoku/src/lib/main.py:259
-msgid "Fill _all squares"
-msgstr "å¡«å??æ??æ??æ?¹æ ¼(_A)"
-
-#: ../gnome-sudoku/src/lib/main.py:260
-msgid ""
-"Automatically fill in all squares for which there is only one valid value."
-msgstr "è?ªå??å¡«å??æ??æ??å?ªæ??ä¸?å??å?¯è?½æ?§ç??æ?¹æ ¼ã??"
+#: ../gnome-sudoku/src/lib/main.py:249
+msgid "Show a square that is easy to fill."
+msgstr "顯示ä¸?å??容æ??填寫ç??æ?¹æ ¼ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:264
-msgid "_Generate new puzzles"
-msgstr "ç?¢ç??æ?°é¡?ç?®(_G)"
+#: ../gnome-sudoku/src/lib/main.py:250
+msgid "Clear _Top Notes"
+msgstr "���端註�(_T)"
 
-#: ../gnome-sudoku/src/lib/main.py:264
-msgid "Generate new puzzles."
-msgstr "ç?¢ç??æ?°é¡?ç?®"
+#: ../gnome-sudoku/src/lib/main.py:251
+msgid "Clear all of the top notes"
+msgstr "æ¸?é?¤æ??æ??ç??é ?端註è¨?"
 
-#: ../gnome-sudoku/src/lib/main.py:266
-msgid "Puzzle _Statistics"
-msgstr "��統�(_S)"
+#: ../gnome-sudoku/src/lib/main.py:252
+msgid "Clear _Bottom Notes"
+msgstr "����註�(_B)"
 
-#: ../gnome-sudoku/src/lib/main.py:267
-msgid "Show statistics about current puzzle"
-msgstr "顯示æ??é??ç?®å??é¡?ç?®ç??çµ±è¨?æ?¸å­?"
+#: ../gnome-sudoku/src/lib/main.py:253
+msgid "Clear all of the bottom notes"
+msgstr "æ¸?é?¤æ??æ??ç??åº?é?¨è¨»è¨?"
 
-#: ../gnome-sudoku/src/lib/main.py:279
-msgid "_Always show hint"
-msgstr "ä¸?å®?顯示æ??示(_A)"
+#: ../gnome-sudoku/src/lib/main.py:261
+msgid "Show _Possible Numbers"
+msgstr "顯示å?¯è?½ç??æ?¸å­?"
 
-#: ../gnome-sudoku/src/lib/main.py:281
+#: ../gnome-sudoku/src/lib/main.py:263
 msgid "Always show possible numbers in a square"
 msgstr "æ°¸é? å?¨æ?¹æ ¼ä¸­é¡¯ç¤ºæ??æ??å?¯è?½å?ºç?¾ç??æ?¸å­?"
 
-#: ../gnome-sudoku/src/lib/main.py:285
-msgid "Warn about _unfillable squares"
-msgstr "å?ºç?¾ç?¡æ³?å¡«ä¸?å?§å®¹ç??æ?¹æ ¼æ??ç?¼å?ºè­¦å??(_U)"
+#: ../gnome-sudoku/src/lib/main.py:267
+msgid "Warn About _Unfillable Squares"
+msgstr "è­¦å??æ??ç?¡æ³?å¡«ä¸?å?§å®¹ç??æ?¹æ ¼(_U)"
 
-#: ../gnome-sudoku/src/lib/main.py:287
+#: ../gnome-sudoku/src/lib/main.py:269
 msgid "Warn about squares made unfillable by a move"
 msgstr "ç?¶å¡«ä¸?æ??å??æ?¹æ ¼æ??令é??æ?²ç?¡æ³?å®?æ??æ??ç?¼å?ºè­¦å??"
 
-#: ../gnome-sudoku/src/lib/main.py:289
-msgid "_Track additions"
+#: ../gnome-sudoku/src/lib/main.py:271
+#, fuzzy
+#| msgid "_Track additions"
+msgid "_Track Additions"
 msgstr "��追蹤(_T)"
 
-#: ../gnome-sudoku/src/lib/main.py:291
+#: ../gnome-sudoku/src/lib/main.py:273
 msgid "Mark new additions in a separate color so you can keep track of them."
 msgstr "以å??å?¥ç??é¡?è?²æ¨?è¨?æ?°å¡«å?¥ç??æ?¸å­?以便追蹤å®?å??ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:294
+#: ../gnome-sudoku/src/lib/main.py:276
 msgid "_Highlighter"
 msgstr "�亮度顯示(_H)"
 
-#: ../gnome-sudoku/src/lib/main.py:295
+#: ../gnome-sudoku/src/lib/main.py:277
 msgid "Highlight the current row, column and box"
 msgstr "å? å¼·é¡¯ç¤ºç?®å??æ?¹æ ¼æ??å?¨ç??è¡?å??å??"
 
-#: ../gnome-sudoku/src/lib/main.py:296
-msgid "Generate new puzzles _while you play"
-msgstr "ç?¶ä½ å?¨ç?©ç??æ??å??ç?¢ç??æ?°ç??é¡?ç?®(_W)"
-
-#: ../gnome-sudoku/src/lib/main.py:298
-msgid ""
-"Generate new puzzles in the background while you play. This will "
-"automatically pause when the game goes into the background."
-msgstr "ç?¶ä½ æ­£å?¨è§£æ±ºé¡?ç?®æ??è®?ç¨?å¼?è?ªè¡?å?¨è??æ?¯ç?¢ç??æ?°é¡?ç?®ã??æ­¤ç¨?åº?æ??å?¨é¡?ç?®æ?¬èº«å??æ??å?°è??æ?¯æ??å??æ­¢å?·è¡?ã??"
-
-#: ../gnome-sudoku/src/lib/main.py:304
-msgid "_Edit"
-msgstr "編輯(_E)"
-
-#: ../gnome-sudoku/src/lib/main.py:305
-msgid "_Undo"
-msgstr "å??æ??(_U)"
-
-#: ../gnome-sudoku/src/lib/main.py:305
-msgid "Undo last action"
-msgstr "é??å??ä¸?ä¸?æ­¥"
-
-#: ../gnome-sudoku/src/lib/main.py:306
-msgid "_Redo"
-msgstr "å??æ¶?å??æ??(_R)"
-
-#: ../gnome-sudoku/src/lib/main.py:306
-msgid "Redo last action"
-msgstr "é??æ?°é?²è¡?å??é??å??ç??ä¸?æ­¥"
-
-#: ../gnome-sudoku/src/lib/main.py:307
-#: ../gnome-sudoku/src/lib/number_box.py:54
-msgid "_Clear"
-msgstr "��(_C)"
-
-#: ../gnome-sudoku/src/lib/main.py:307
-msgid "Clear entries you've filled in"
-msgstr "æ¸?é?¤æ??æ??ä½ å¡«ä¸?ç??æ?¸å­?"
-
-#: ../gnome-sudoku/src/lib/main.py:308
-msgid "Clear _Notes"
-msgstr "����(_N)"
-
-#: ../gnome-sudoku/src/lib/main.py:308
-msgid "Clear notes and hints"
-msgstr "æ¸?é?¤æ¨?è¨?å??æ??示"
+#: ../gnome-sudoku/src/lib/main.py:396
+#, python-format
+msgid "You completed the puzzle in %(totalTime)s (%(activeTime)s active)."
+msgstr "ä½ å?¨ %(totalTime)s å?§å®?æ??äº?é??å??é¡?ç?®ï¼?使ç?¨äº? %(activeTime)s ï¼?ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:420
+#: ../gnome-sudoku/src/lib/main.py:400
 #, python-format
-msgid "You completed the puzzle in %(totalTime)s (%(activeTime)s active)"
-msgstr "ä½ å?¨ %(totalTime)s å?§å®?æ??äº?é??å??é¡?ç?®ï¼?使ç?¨äº? %(activeTime)s ï¼?"
+msgid "You completed the puzzle in %(totalTime)s."
+msgstr "ä½ å?¨ %(totalTime)s å?§å®?æ??äº?é??å??é¡?ç?®ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:424
+#: ../gnome-sudoku/src/lib/main.py:402
 #, python-format
-msgid "You got %(n)s hint"
-msgid_plural "You got %(n)s hints"
-msgstr[0] "ä½ å¾?å?° %(n)s 次æ??示"
+msgid "You got %(n)s hint."
+msgid_plural "You got %(n)s hints."
+msgstr[0] "ä½ å¾?å?° %(n)s 次æ??示ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:427
+#: ../gnome-sudoku/src/lib/main.py:405
 #, python-format
 msgid "You had %(n)s impossibility pointed out."
 msgid_plural "You had %(n)s impossibilities pointed out."
 msgstr[0] "å·²ç?ºä½ æ??å?º %(n)s 種ä¸?å?¯è?½æ?§ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:432
-#, python-format
-msgid "You used the auto-fill %(n)s time"
-msgid_plural "You used the auto-fill %(n)s times"
-msgstr[0] "你使ç?¨äº? %(n)s 次è?ªå??å¡«å??"
-
-#: ../gnome-sudoku/src/lib/main.py:456
+#: ../gnome-sudoku/src/lib/main.py:428
 msgid "Save this game before starting new one?"
 msgstr "å?¨é??å§?æ?°ç??é??æ?²å??å?²å­?é??å??é??æ?²ï¼?"
 
-#: ../gnome-sudoku/src/lib/main.py:457
+#: ../gnome-sudoku/src/lib/main.py:429
 msgid "_Save game for later"
 msgstr "å?²å­?é??æ?²ä»¥å¾?å??ç?©(_S)"
 
-#: ../gnome-sudoku/src/lib/main.py:458
+#: ../gnome-sudoku/src/lib/main.py:430
 msgid "_Abandon game"
 msgstr "æ?¾æ£?é??æ?²(_A)"
 
-#: ../gnome-sudoku/src/lib/main.py:652
-#, python-format
-msgid "Playing %(difficulty)s puzzle."
-msgstr "æ­£å?¨é?²è¡?ç­?ç´?ç?º %(difficulty)s ç??é¡?ç?®ã??"
-
-#: ../gnome-sudoku/src/lib/main.py:668
+#: ../gnome-sudoku/src/lib/main.py:646
 msgid "Puzzle Information"
 msgstr "����"
 
-#: ../gnome-sudoku/src/lib/main.py:669
+#: ../gnome-sudoku/src/lib/main.py:647
 msgid "There is no current puzzle."
 msgstr "ç?®å??æ²?æ??é¡?ç?®ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:674
+#: ../gnome-sudoku/src/lib/main.py:652
 msgid "Calculated difficulty: "
 msgstr "ç¶?è¨?ç®?å¾?ç??é?£åº¦ï¼?"
 
-#: ../gnome-sudoku/src/lib/main.py:678
+#: ../gnome-sudoku/src/lib/main.py:656
 msgid "Number of moves instantly fillable by elimination: "
 msgstr "å?¯ä»¥ç?¨æ¶?å?»æ³?å?³æ??å¡«ä¸?ç??æ?¹æ ¼ï¼?"
 
-#: ../gnome-sudoku/src/lib/main.py:681
+#: ../gnome-sudoku/src/lib/main.py:659
 msgid "Number of moves instantly fillable by filling: "
 msgstr "å?¯ä»¥å?³æ??å¡«ä¸?ç??æ?¹æ ¼ï¼?"
 
-#: ../gnome-sudoku/src/lib/main.py:684
+#: ../gnome-sudoku/src/lib/main.py:662
 msgid "Amount of trial-and-error required to solve: "
 msgstr "é??è¦?使ç?¨è©¦é?¯æ³?ç??次æ?¸ï¼?"
 
-#: ../gnome-sudoku/src/lib/main.py:687 ../gnome-sudoku/src/lib/main.py:688
+#: ../gnome-sudoku/src/lib/main.py:665 ../gnome-sudoku/src/lib/main.py:666
 msgid "Puzzle Statistics"
 msgstr "��統�"
 
-#. Our initial row...
-#: ../gnome-sudoku/src/lib/main.py:779
-msgid "No Tracker"
-msgstr "æ²?æ??追蹤å?¨"
+#: ../gnome-sudoku/src/lib/main.py:757
+msgid "Untracked"
+msgstr ""
 
-#: ../gnome-sudoku/src/lib/main.py:789
-msgid "Clear all moves tracked by selected tracker."
-msgstr "æ¸?é?¤æ??æ??以é?¸å??ç??追蹤å?¨è¿½è¹¤ç??å¡«æ³?ã??"
+#: ../gnome-sudoku/src/lib/main.py:766
+msgid "_Remove"
+msgstr "移�(_R)"
+
+#: ../gnome-sudoku/src/lib/main.py:767
+#, fuzzy
+#| msgid "Clear all moves tracked by selected tracker."
+msgid "Delete selected tracker."
+msgstr "å?ªé?¤å·²é?¸ç??æ??å­?"
 
-#: ../gnome-sudoku/src/lib/main.py:793
-msgid "_Clear Others"
-msgstr "æ¸?é?¤å?¶ä»?ç??(_C)"
+#: ../gnome-sudoku/src/lib/main.py:773
+msgid "Hide current tracker entries."
+msgstr ""
 
-#: ../gnome-sudoku/src/lib/main.py:795
-msgid "Clear all moves not tracked by selected tracker."
-msgstr "æ¸?é?¤æ??æ??ä¸?被é?¸å??ç??追蹤å?¨è¿½è¹¤ç??å¡«æ³?ã??"
+#: ../gnome-sudoku/src/lib/main.py:778
+msgid "A_pply"
+msgstr "��(_P)"
 
-#: ../gnome-sudoku/src/lib/main.py:820
+#: ../gnome-sudoku/src/lib/main.py:779
+#, fuzzy
+#| msgid "Clear all moves tracked by selected tracker."
+msgid "Apply all tracked values and remove the tracker."
+msgstr "æ¸?é?¤æ??æ??以é?¸å??ç??追蹤å?¨è¿½è¹¤ç??å¡«æ³?ã??"
+
+#: ../gnome-sudoku/src/lib/main.py:815
 #, python-format
 msgid "Tracker %s"
 msgstr "追蹤� %s"
 
-#: ../gnome-sudoku/src/lib/game_selector.py:150
+#: ../gnome-sudoku/src/lib/game_selector.py:157
 #, python-format
-msgid "Last Played %(timeAgo)s"
+msgid "Last played %(timeAgo)s"
 msgstr "ä¸?次ç?©ç??æ??å?»ç?º %(timeAgo)s"
 
-#: ../gnome-sudoku/src/lib/game_selector.py:151
+#: ../gnome-sudoku/src/lib/game_selector.py:158
 #, python-format
 msgid "%(level)s puzzle"
 msgstr "%(level)s ç´?é¡?ç?®"
 
-#: ../gnome-sudoku/src/lib/game_selector.py:152
+#: ../gnome-sudoku/src/lib/game_selector.py:159
 #, python-format
 msgid "Played for %(duration)s"
 msgstr "�� %(duration)s"
 
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:114
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:125
-msgid "Working..."
-msgstr "é??ç®?中â?¦"
-
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:155
-#, python-format
-msgid "%(n)s puzzle"
-msgid_plural "%(n)s puzzles"
-msgstr[0] "%(n)s å??é¡?ç?®"
-
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:180
-msgid "Stopped"
-msgstr "å·²å??æ­¢"
-
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:195
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:205
-#, python-format
-msgid "Generated %(n)s out of %(total)s puzzle"
-msgid_plural "Generated %(n)s out of %(total)s puzzles"
-msgstr[0] "å·²ç?¢ç?? %(n)s / %(total)s å??é¡?ç?®"
-
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:213
-#, python-format
-msgid "Generated %(n)s puzzle"
-msgid_plural "Generated %(n)s puzzles"
-msgstr[0] "ç?¢ç??äº? %(n)s å??é¡?ç?®"
-
-#: ../gnome-sudoku/src/lib/sudoku.py:513
-msgid "Very Hard"
+#: ../gnome-sudoku/src/lib/sudoku.py:687
+msgid "Very hard"
 msgstr "極�"
 
-#: ../gnome-sudoku/src/lib/sudoku.py:515
+#: ../gnome-sudoku/src/lib/sudoku.py:689
 msgid "Medium"
 msgstr "æ?®é??"
 
-#: ../gnome-sudoku/src/lib/gtk_goodies/dialog_extras.py:159
+#: ../gnome-sudoku/src/lib/gtk_goodies/dialog_extras.py:158
 msgid "Do you really want to do this?"
 msgstr "ä½ æ?¯å?¦ç¢ºå®?è¦?é??樣å??ï¼?"
 
-#: ../gnome-sudoku/src/lib/gtk_goodies/dialog_extras.py:193
+#: ../gnome-sudoku/src/lib/gtk_goodies/dialog_extras.py:192
 msgid "Don't ask me this again."
 msgstr "ä¸?è¦?å??å??æ??ã??"
 
@@ -6540,53 +6448,58 @@ msgstr "%A %p%I:%M"
 msgid "%B %e"
 msgstr "%B %e"
 
-#: ../gnomine/gnomine.c:52 ../gnomine/gnomine.desktop.in.in.h:2
+#: ../gnome-sudoku/src/lib/number_box.py:54
+msgid "_Clear"
+msgstr "��(_C)"
+
+#: ../gnomine/gnomine.c:54 ../gnomine/gnomine.desktop.in.in.h:2
 msgid "Mines"
 msgstr "æ??å?°é?·"
 
-#: ../gnomine/gnomine.c:105
+#: ../gnomine/gnomine.c:104
 msgctxt "board size"
 msgid "Custom"
 msgstr "��"
 
-#: ../gnomine/gnomine.c:171
+#: ../gnomine/gnomine.c:170
 #, c-format
 msgid "Flags: %d/%d"
 msgstr "���%d/%d"
 
-#: ../gnomine/gnomine.c:199
+#: ../gnomine/gnomine.c:198
 msgid "The Mines Have Been Cleared!"
 msgstr "æ??æ??å?°é?·å·²ç¶?æ¸?é?¤ï¼?"
 
-#: ../gnomine/gnomine.c:215
+#: ../gnomine/gnomine.c:214
 msgid "Mines Scores"
 msgstr "GNOME æ??å?°é?·ç©?å??æ¦?"
 
-#: ../gnomine/gnomine.c:218 ../gnotravex/gnotravex.c:1235
+#: ../gnomine/gnomine.c:217 ../gnotravex/gnotravex.c:1114
+#: ../swell-foop/src/Score.js:56
 msgid "Size:"
 msgstr "大��"
 
-#: ../gnomine/gnomine.c:326
+#: ../gnomine/gnomine.c:322
 msgid "Click a square, any square"
 msgstr "æ??ä»»ä½?ä¸?å??空格"
 
-#: ../gnomine/gnomine.c:328
+#: ../gnomine/gnomine.c:324
 msgid "Maybe they're all mines ..."
 msgstr "å?¯è?½ä»»ä½?ä¸?å??空格é?½æ?¯å?°é?·..."
 
-#: ../gnomine/gnomine.c:456
+#: ../gnomine/gnomine.c:446
 msgid "Resizing and SVG support:"
 msgstr "æ?¾å¤§ç¸®å°?å?? SVG æ?¯æ?´ï¼?"
 
-#: ../gnomine/gnomine.c:463
+#: ../gnomine/gnomine.c:453
 msgid "Faces:"
 msgstr "ç¬?è??ï¼?"
 
-#: ../gnomine/gnomine.c:466
+#: ../gnomine/gnomine.c:456
 msgid "Graphics:"
 msgstr "å??å½¢ï¼?"
 
-#: ../gnomine/gnomine.c:482
+#: ../gnomine/gnomine.c:472
 msgid ""
 "The popular logic puzzle minesweeper. Clear mines from a board using hints "
 "from squares you have already uncovered.\n"
@@ -6597,77 +6510,77 @@ msgstr ""
 "\n"
 "æ??å?°é?·(Mines)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../gnomine/gnomine.c:696
+#: ../gnomine/gnomine.c:635
 msgid "Field Size"
 msgstr "�格�大�"
 
-#: ../gnomine/gnomine.c:719
+#: ../gnomine/gnomine.c:658
 msgid "Custom Size"
 msgstr "��大�"
 
-#: ../gnomine/gnomine.c:726
+#: ../gnomine/gnomine.c:665
 msgid "_Number of mines:"
 msgstr "å?°é?·æ?¸é??(_N)ï¼?"
 
-#: ../gnomine/gnomine.c:739
+#: ../gnomine/gnomine.c:678
 msgid "_Horizontal:"
 msgstr "æ°´å¹³(_H)ï¼?"
 
-#: ../gnomine/gnomine.c:751
+#: ../gnomine/gnomine.c:690
 msgid "_Vertical:"
 msgstr "å??ç?´(_V)ï¼?"
 
-#: ../gnomine/gnomine.c:768
+#: ../gnomine/gnomine.c:707
 msgid "Flags"
 msgstr "æ??å¹?"
 
-#: ../gnomine/gnomine.c:771
+#: ../gnomine/gnomine.c:710
 msgid "_Use \"I'm not sure\" flags"
 msgstr "å?¯å°?æ?¹æ ¼æ¨?è¨?ç?ºã??ä¸?ç?¥é??ã??(_U)"
 
-#: ../gnomine/gnomine.c:782
+#: ../gnomine/gnomine.c:721
 msgid "Warnings"
 msgstr "è­¦å??"
 
-#: ../gnomine/gnomine.c:785
+#: ../gnomine/gnomine.c:724
 msgid "_Use \"Too many flags\" warning"
 msgstr "使ç?¨ã??æ¨?è¨?é??å¤?ã??è­¦å??(_U)"
 
-#: ../gnomine/gnomine.c:796
+#: ../gnomine/gnomine.c:735
 msgid "Mines Preferences"
 msgstr "GNOME æ??å?°é?·å??好設å®?"
 
-#: ../gnomine/gnomine.c:1003
+#: ../gnomine/gnomine.c:929
 msgid "Width of grid"
 msgstr "æ ¼å­?ç??é??度"
 
-#: ../gnomine/gnomine.c:1004
+#: ../gnomine/gnomine.c:930
 msgid "Height of grid"
 msgstr "æ ¼å­?ç??é«?度"
 
-#: ../gnomine/gnomine.c:1006
+#: ../gnomine/gnomine.c:932
 msgid "Number of mines"
 msgstr "å?°é?·æ?¸é??"
 
-#: ../gnomine/gnomine.c:1009 ../gnomine/gnomine.schemas.in.h:8
+#: ../gnomine/gnomine.c:935 ../gnomine/gnomine.schemas.in.h:8
 msgid "Size of the board (0-2 = small-large, 3=custom)"
 msgstr "��大� (0-2 表示��大�3 表示��)"
 
-#: ../gnomine/gnomine.c:1010 ../gnotravex/gnotravex.c:399
-#: ../gnotski/gnotski.c:466 ../iagno/gnothello.c:149
+#: ../gnomine/gnomine.c:936 ../gnotravex/gnotravex.c:262
+#: ../gnotski/gnotski.c:458 ../iagno/gnothello.c:149
 msgid "X location of window"
 msgstr "��水平�置"
 
-#: ../gnomine/gnomine.c:1012 ../gnotravex/gnotravex.c:401
-#: ../gnotski/gnotski.c:468 ../iagno/gnothello.c:151
+#: ../gnomine/gnomine.c:938 ../gnotravex/gnotravex.c:264
+#: ../gnotski/gnotski.c:460 ../iagno/gnothello.c:151
 msgid "Y location of window"
 msgstr "è¦?çª?å??ç?´ä½?ç½®"
 
-#: ../gnomine/gnomine.c:1156
+#: ../gnomine/gnomine.c:1076
 msgid "Press to Resume"
 msgstr "è«?æ??é??è£?ç¹¼çº?é??æ?²"
 
-#: ../gnomine/gnomine.c:1190
+#: ../gnomine/gnomine.c:1110
 msgid "Time: "
 msgstr "æ??é??ï¼?"
 
@@ -6741,239 +6654,227 @@ msgstr ""
 msgid "Could not load images"
 msgstr "ç?¡æ³?è¼?å?¥å??ç??"
 
-#: ../gnotravex/gnotravex.c:47 ../gnotravex/gnotravex.desktop.in.in.h:2
+#: ../gnotravex/gnotravex.c:46 ../gnotravex/gnotravex.desktop.in.in.h:2
 msgid "Tetravex"
 msgstr "æ?¸å­?æ?¼å??"
 
+#: ../gnotravex/gnotravex.c:116
+msgid "2Ã?2"
+msgstr "2Ã?2"
+
+#: ../gnotravex/gnotravex.c:117
+msgid "3Ã?3"
+msgstr "3Ã?3"
+
+#: ../gnotravex/gnotravex.c:118
+msgid "4Ã?4"
+msgstr "4Ã?4"
+
+#: ../gnotravex/gnotravex.c:119
+msgid "5Ã?5"
+msgstr "5Ã?5"
+
+#: ../gnotravex/gnotravex.c:120
+msgid "6Ã?6"
+msgstr "6Ã?6"
+
+#: ../gnotravex/gnotravex.c:199
+msgid "_2Ã?2"
+msgstr "_2Ã?2"
+
+#: ../gnotravex/gnotravex.c:199
+msgid "Play on a 2Ã?2 board"
+msgstr "使ç?¨ 2Ã?2 æ ¼ç??ç??é?¢"
+
+#: ../gnotravex/gnotravex.c:201
+msgid "_3Ã?3"
+msgstr "_3Ã?3"
+
+#: ../gnotravex/gnotravex.c:201
+msgid "Play on a 3Ã?3 board"
+msgstr "使ç?¨ 3Ã?3 æ ¼ç??ç??é?¢"
+
+#: ../gnotravex/gnotravex.c:203
+msgid "_4Ã?4"
+msgstr "_4Ã?4"
+
+#: ../gnotravex/gnotravex.c:203
+msgid "Play on a 4Ã?4 board"
+msgstr "使ç?¨ 4Ã?4 æ ¼ç??ç??é?¢"
+
+#: ../gnotravex/gnotravex.c:205
+msgid "_5Ã?5"
+msgstr "_5Ã?5"
+
+#: ../gnotravex/gnotravex.c:205
+msgid "Play on a 5Ã?5 board"
+msgstr "使ç?¨ 5Ã?5 æ ¼ç??ç??é?¢"
+
+#: ../gnotravex/gnotravex.c:207
+msgid "_6Ã?6"
+msgstr "_6Ã?6"
+
+#: ../gnotravex/gnotravex.c:207
+msgid "Play on a 6Ã?6 board"
+msgstr "使ç?¨ 6Ã?6 æ ¼ç??ç??é?¢"
+
+#: ../gnotravex/gnotravex.c:266
+msgid "Size of board (2-6)"
+msgstr "ç??é?¢ç??大å°?(2-6)"
+
+#: ../gnotravex/gnotravex.c:267
+msgid "SIZE"
+msgstr "大�"
+
 # (Abel) ç?¨ä¸­æ??æ?¸å­?好å??ä¹?å¾?æ??趣
 #. Translators: in-game numbers, replaceable with single-character local ideograms
-#: ../gnotravex/gnotravex.c:68
+#: ../gnotravex/gnotravex.c:460
 msgctxt "number"
 msgid "0"
 msgstr "0"
 
-#: ../gnotravex/gnotravex.c:69
+#: ../gnotravex/gnotravex.c:461
 msgctxt "number"
 msgid "1"
 msgstr "1"
 
-#: ../gnotravex/gnotravex.c:70
+#: ../gnotravex/gnotravex.c:462
 msgctxt "number"
 msgid "2"
 msgstr "2"
 
-#: ../gnotravex/gnotravex.c:71
+#: ../gnotravex/gnotravex.c:463
 msgctxt "number"
 msgid "3"
 msgstr "3"
 
-#: ../gnotravex/gnotravex.c:72
+#: ../gnotravex/gnotravex.c:464
 msgctxt "number"
 msgid "4"
 msgstr "4"
 
-#: ../gnotravex/gnotravex.c:73
+#: ../gnotravex/gnotravex.c:465
 msgctxt "number"
 msgid "5"
 msgstr "5"
 
-#: ../gnotravex/gnotravex.c:74
+#: ../gnotravex/gnotravex.c:466
 msgctxt "number"
 msgid "6"
 msgstr "6"
 
-#: ../gnotravex/gnotravex.c:75
+#: ../gnotravex/gnotravex.c:467
 msgctxt "number"
 msgid "7"
 msgstr "7"
 
-#: ../gnotravex/gnotravex.c:76
+#: ../gnotravex/gnotravex.c:468
 msgctxt "number"
 msgid "8"
 msgstr "8"
 
-#: ../gnotravex/gnotravex.c:77
+#: ../gnotravex/gnotravex.c:469
 msgctxt "number"
 msgid "9"
 msgstr "9"
 
-#: ../gnotravex/gnotravex.c:87
-msgid "2Ã?2"
-msgstr "2Ã?2"
+#: ../gnotravex/gnotravex.c:939 ../mahjongg/mahjongg.c:943
+msgid "Game paused"
+msgstr "é??æ?²æ?«å??"
 
-#: ../gnotravex/gnotravex.c:88
-msgid "3Ã?3"
-msgstr "3Ã?3"
+#: ../gnotravex/gnotravex.c:1002
+#, c-format
+msgid "Playing %dÃ?%d board"
+msgstr "使ç?¨ %dÃ?%d æ ¼ç??ç??é?¢"
 
-#: ../gnotravex/gnotravex.c:89
-msgid "4Ã?4"
-msgstr "4Ã?4"
+#: ../gnotravex/gnotravex.c:1112
+msgid "Tetravex Scores"
+msgstr "æ?¸å­?æ?¼å??ç©?å??æ¦?"
 
-#: ../gnotravex/gnotravex.c:90
-msgid "5Ã?5"
-msgstr "5Ã?5"
+#: ../gnotravex/gnotravex.c:1176
+msgid "Puzzle solved! Well done!"
+msgstr "解決äº?ï¼?å??å¾?好ï¼?"
 
-#: ../gnotravex/gnotravex.c:91
-msgid "6Ã?6"
-msgstr "6Ã?6"
+#: ../gnotravex/gnotravex.c:1178
+msgid "Puzzle solved!"
+msgstr "解決��"
+
+#: ../gnotravex/gnotravex.c:1632
+msgid ""
+"GNOME Tetravex is a simple puzzle where pieces must be positioned so that "
+"the same numbers are touching each other.\n"
+"\n"
+"Tetravex is a part of GNOME Games."
+msgstr ""
+"GNOME æ?¸å­?æ?¼å??æ?¯ä¸?å??ç°¡å?®ç??æ?¼å??é??æ?²ï¼?ç?®æ¨?æ?¯å°?æ?¹å¡?æ?¼å?¨ä¸?èµ·ï¼?使å¾?ç?¸é?°æ?¹å¡?ä¹?é??ç??æ?¸å­?ä¸?樣ã??\n"
+"\n"
+"æ?¸å­?æ?¼å??(Tetravex)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../gnotravex/gnotravex.c:306
+#: ../gnotravex/gnotravex.c:1755
 msgid "_Size"
 msgstr "大�(_S)"
 
-#: ../gnotravex/gnotravex.c:315
+#: ../gnotravex/gnotravex.c:1760
 msgid "Sol_ve"
 msgstr "���解決(_V)"
 
-#: ../gnotravex/gnotravex.c:315
+#: ../gnotravex/gnotravex.c:1760
 msgid "Solve the game"
 msgstr "ç?±é?»è?¦å®?æ??é??å±?é??æ?²"
 
-#: ../gnotravex/gnotravex.c:324
+#: ../gnotravex/gnotravex.c:1764
 msgid "_Up"
 msgstr "�(_U)"
 
-#: ../gnotravex/gnotravex.c:325
+#: ../gnotravex/gnotravex.c:1765
 msgid "Move the pieces up"
 msgstr "å??ä¸?移å??æ??å®?ç??æ?¸å­?æ?¹å¡?"
 
-#: ../gnotravex/gnotravex.c:326
+#: ../gnotravex/gnotravex.c:1766
 msgid "_Left"
 msgstr "å·¦(_L)"
 
-#: ../gnotravex/gnotravex.c:327
+#: ../gnotravex/gnotravex.c:1767
 msgid "Move the pieces left"
 msgstr "å??左移å??æ??å®?ç??æ?¸å­?æ?¹å¡?"
 
-#: ../gnotravex/gnotravex.c:328
+#: ../gnotravex/gnotravex.c:1768
 msgid "_Right"
 msgstr "å?³(_R)"
 
-#: ../gnotravex/gnotravex.c:329
+#: ../gnotravex/gnotravex.c:1769
 msgid "Move the pieces right"
 msgstr "å??å?³ç§»å??æ??å®?ç??æ?¸å­?æ?¹å¡?"
 
-#: ../gnotravex/gnotravex.c:330
+#: ../gnotravex/gnotravex.c:1770
 msgid "_Down"
 msgstr "�(_D)"
 
-#: ../gnotravex/gnotravex.c:331
+#: ../gnotravex/gnotravex.c:1771
 msgid "Move the pieces down"
 msgstr "å??ä¸?移å??æ??å®?ç??æ?¸å­?æ?¹å¡?"
 
-#: ../gnotravex/gnotravex.c:337
-msgid "_2Ã?2"
-msgstr "_2Ã?2"
-
-#: ../gnotravex/gnotravex.c:337
-msgid "Play on a 2Ã?2 board"
-msgstr "使ç?¨ 2Ã?2 æ ¼ç??ç??é?¢"
-
-#: ../gnotravex/gnotravex.c:339
-msgid "_3Ã?3"
-msgstr "_3Ã?3"
-
-#: ../gnotravex/gnotravex.c:339
-msgid "Play on a 3Ã?3 board"
-msgstr "使ç?¨ 3Ã?3 æ ¼ç??ç??é?¢"
-
-#: ../gnotravex/gnotravex.c:341
-msgid "_4Ã?4"
-msgstr "_4Ã?4"
-
-#: ../gnotravex/gnotravex.c:341
-msgid "Play on a 4Ã?4 board"
-msgstr "使ç?¨ 4Ã?4 æ ¼ç??ç??é?¢"
-
-#: ../gnotravex/gnotravex.c:343
-msgid "_5Ã?5"
-msgstr "_5Ã?5"
-
-#: ../gnotravex/gnotravex.c:343
-msgid "Play on a 5Ã?5 board"
-msgstr "使ç?¨ 5Ã?5 æ ¼ç??ç??é?¢"
-
-#: ../gnotravex/gnotravex.c:345
-msgid "_6Ã?6"
-msgstr "_6Ã?6"
-
-#: ../gnotravex/gnotravex.c:345
-msgid "Play on a 6Ã?6 board"
-msgstr "使ç?¨ 6Ã?6 æ ¼ç??ç??é?¢"
-
-#: ../gnotravex/gnotravex.c:350
-msgid "Tile _Colours"
-msgstr "æ?¼å??è?²å½©(_C)"
-
-#: ../gnotravex/gnotravex.c:403
-msgid "Size of board (2-6)"
-msgstr "ç??é?¢ç??大å°?(2-6)"
-
-#: ../gnotravex/gnotravex.c:404
-msgid "SIZE"
-msgstr "大�"
-
-#: ../gnotravex/gnotravex.c:1117
-msgid "Puzzle solved! Well done!"
-msgstr "解決äº?ï¼?å??å¾?好ï¼?"
-
-#: ../gnotravex/gnotravex.c:1119
-msgid "Puzzle solved!"
-msgstr "解決��"
-
-#: ../gnotravex/gnotravex.c:1233
-msgid "Tetravex Scores"
-msgstr "æ?¸å­?æ?¼å??ç©?å??æ¦?"
-
-#: ../gnotravex/gnotravex.c:1499 ../mahjongg/mahjongg.c:977
-msgid "Game paused"
-msgstr "é??æ?²æ?«å??"
-
-#: ../gnotravex/gnotravex.c:1629
-#, c-format
-msgid "Playing %dÃ?%d board"
-msgstr "使ç?¨ %dÃ?%d æ ¼ç??ç??é?¢"
-
-#: ../gnotravex/gnotravex.c:1911
-msgid ""
-"GNOME Tetravex is a simple puzzle where pieces must be positioned so that "
-"the same numbers are touching each other.\n"
-"\n"
-"Tetravex is a part of GNOME Games."
-msgstr ""
-"GNOME æ?¸å­?æ?¼å??æ?¯ä¸?å??ç°¡å?®ç??æ?¼å??é??æ?²ï¼?ç?®æ¨?æ?¯å°?æ?¹å¡?æ?¼å?¨ä¸?èµ·ï¼?使å¾?ç?¸é?°æ?¹å¡?ä¹?é??ç??æ?¸å­?ä¸?樣ã??\n"
-"\n"
-"æ?¸å­?æ?¼å??(Tetravex)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
-
 #: ../gnotravex/gnotravex.desktop.in.in.h:1
 msgid "Complete the puzzle by matching numbered tiles"
 msgstr "é??å°?æ?¸å­?ä¾?å®?æ??æ?¼å??"
 
-#: ../gnotravex/gnotravex.schemas.in.h:1
-msgid "A flag to enable coloured tiles."
-msgstr "å??ç?¨å½©è?²ç??é?¢ç??æ??æ¨?ã??"
-
 #: ../gnotravex/gnotravex.schemas.in.h:2
-msgid "Control coloured tiles"
-msgstr "æ?§å?¶å½©è?²ç??ç??"
-
-#: ../gnotravex/gnotravex.schemas.in.h:4
 msgid ""
 "Select whether to drag the tiles or to click on the source then the "
 "destination."
 msgstr "é?¸æ??使ç?¨æ??æ?¾ç??æ?¹å¼?é??æ?¯é»?é?¸æ?¹å¼?移å??æ?¼å??ã??"
 
-#: ../gnotravex/gnotravex.schemas.in.h:5
+#: ../gnotravex/gnotravex.schemas.in.h:3
 msgid "The size of the playing grid"
 msgstr "é??æ?²æ?¹æ ¼é?£å??大å°?"
 
-#: ../gnotravex/gnotravex.schemas.in.h:6
+#: ../gnotravex/gnotravex.schemas.in.h:4
 msgid ""
 "The value of this key is used to decide the size of the playing grid. The "
 "valid values are 2 to 8, anything else gets set to 3."
 msgstr "æ?¬æ?¸å?¼æ±ºå®?æ?¹æ ¼é?£å??ç??大å°?ã??æ??æ??ç??å?¼ä»?ä¹? 2 è?³ 8 ä¹?é??ï¼?å?¶å®?ç??æ?¸å?¼é?½æ??æ?´æ?¹ç?º 3ã??"
 
-#: ../gnotski/gnotski.c:47 ../gnotski/gnotski.desktop.in.in.h:1
+#: ../gnotski/gnotski.c:48 ../gnotski/gnotski.desktop.in.in.h:1
 msgid "Klotski"
 msgstr "è?¯å®¹é??"
 
@@ -6983,190 +6884,190 @@ msgid "Only 18 steps"
 msgstr "18 æ­¥"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:104 ../gnotski/gnotski.c:194
+#: ../gnotski/gnotski.c:104 ../gnotski/gnotski.c:191
 msgid "Daisy"
 msgstr "Daisy"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:105 ../gnotski/gnotski.c:200
+#: ../gnotski/gnotski.c:105 ../gnotski/gnotski.c:197
 msgid "Violet"
 msgstr "Violet"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:106 ../gnotski/gnotski.c:206
+#: ../gnotski/gnotski.c:106 ../gnotski/gnotski.c:203
 msgid "Poppy"
 msgstr "Poppy"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:107 ../gnotski/gnotski.c:212
+#: ../gnotski/gnotski.c:107 ../gnotski/gnotski.c:209
 msgid "Pansy"
 msgstr "Pansy"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:108 ../gnotski/gnotski.c:218
+#: ../gnotski/gnotski.c:108 ../gnotski/gnotski.c:215
 msgid "Snowdrop"
 msgstr "Snowdrop"
 
 #. puzzle name - sometimes called "Le'Ane Rouge"
-#: ../gnotski/gnotski.c:109 ../gnotski/gnotski.c:224
+#: ../gnotski/gnotski.c:109 ../gnotski/gnotski.c:221
 msgid "Red Donkey"
 msgstr "æ©«å??ç«?馬å¼?"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:110 ../gnotski/gnotski.c:230
+#: ../gnotski/gnotski.c:110 ../gnotski/gnotski.c:227
 msgid "Trail"
 msgstr "層層設���"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:111 ../gnotski/gnotski.c:236
+#: ../gnotski/gnotski.c:111 ../gnotski/gnotski.c:233
 msgid "Ambush"
 msgstr "層層設���"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:112 ../gnotski/gnotski.c:242
+#: ../gnotski/gnotski.c:112 ../gnotski/gnotski.c:239
 msgid "Agatka"
 msgstr "Agatka"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:113 ../gnotski/gnotski.c:247
+#: ../gnotski/gnotski.c:113 ../gnotski/gnotski.c:244
 msgid "Success"
 msgstr "Success"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:114 ../gnotski/gnotski.c:252
+#: ../gnotski/gnotski.c:114 ../gnotski/gnotski.c:249
 msgid "Bone"
 msgstr "Bone"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:115 ../gnotski/gnotski.c:258
+#: ../gnotski/gnotski.c:115 ../gnotski/gnotski.c:255
 msgid "Fortune"
 msgstr "Fortune"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:116 ../gnotski/gnotski.c:266
+#: ../gnotski/gnotski.c:116 ../gnotski/gnotski.c:263
 msgid "Fool"
 msgstr "Fool"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:117 ../gnotski/gnotski.c:272
+#: ../gnotski/gnotski.c:117 ../gnotski/gnotski.c:269
 msgid "Solomon"
 msgstr "Solomon"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:118 ../gnotski/gnotski.c:279
+#: ../gnotski/gnotski.c:118 ../gnotski/gnotski.c:276
 msgid "Cleopatra"
 msgstr "Cleopatra"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:119 ../gnotski/gnotski.c:284
+#: ../gnotski/gnotski.c:119 ../gnotski/gnotski.c:281
 msgid "Shark"
 msgstr "Shark"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:120 ../gnotski/gnotski.c:292
+#: ../gnotski/gnotski.c:120 ../gnotski/gnotski.c:289
 msgid "Rome"
 msgstr "Rome"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:121 ../gnotski/gnotski.c:299
+#: ../gnotski/gnotski.c:121 ../gnotski/gnotski.c:296
 msgid "Pennant Puzzle"
 msgstr "Pennant Puzzle"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:122 ../gnotski/gnotski.c:305
+#: ../gnotski/gnotski.c:122 ../gnotski/gnotski.c:302
 msgid "Ithaca"
 msgstr "Ithaca"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:123 ../gnotski/gnotski.c:326
+#: ../gnotski/gnotski.c:123 ../gnotski/gnotski.c:323
 msgid "Pelopones"
 msgstr "Pelopones"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:124 ../gnotski/gnotski.c:333
+#: ../gnotski/gnotski.c:124 ../gnotski/gnotski.c:330
 msgid "Transeuropa"
 msgstr "Transeuropa"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:125 ../gnotski/gnotski.c:342
+#: ../gnotski/gnotski.c:125 ../gnotski/gnotski.c:339
 msgid "Lodzianka"
 msgstr "Lodzianka"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:126 ../gnotski/gnotski.c:348
+#: ../gnotski/gnotski.c:126 ../gnotski/gnotski.c:345
 msgid "Polonaise"
 msgstr "Polonaise"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:127 ../gnotski/gnotski.c:353
+#: ../gnotski/gnotski.c:127 ../gnotski/gnotski.c:350
 msgid "Baltic Sea"
 msgstr "Baltic Sea"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:128 ../gnotski/gnotski.c:358
+#: ../gnotski/gnotski.c:128 ../gnotski/gnotski.c:355
 msgid "American Pie"
 msgstr "American Pie"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:129 ../gnotski/gnotski.c:370
+#: ../gnotski/gnotski.c:129 ../gnotski/gnotski.c:367
 msgid "Traffic Jam"
 msgstr "Traffic Jam"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:130 ../gnotski/gnotski.c:377
+#: ../gnotski/gnotski.c:130 ../gnotski/gnotski.c:374
 msgid "Sunshine"
 msgstr "Sunshine"
 
 # (Abel) 中å??æ²?æ??å°?è?¯å®¹é??ç?¼æ??å??大ï¼?æ??以æ?¾é??äº? game board ç??è­¯å??æ©?æ??å¾?渺è?«
 #. puzzle name
-#: ../gnotski/gnotski.c:188
+#: ../gnotski/gnotski.c:185
 msgid "Only 18 Steps"
 msgstr "18 æ­¥"
 
 #. set of puzzles
-#: ../gnotski/gnotski.c:418
+#: ../gnotski/gnotski.c:415
 msgid "HuaRong Trail"
 msgstr "è?¯å®¹é??"
 
 #. set of puzzles
-#: ../gnotski/gnotski.c:420
+#: ../gnotski/gnotski.c:417
 msgid "Challenge Pack"
 msgstr "Challenge Pack"
 
 #. set of puzzles
-#: ../gnotski/gnotski.c:422
+#: ../gnotski/gnotski.c:419
 msgid "Skill Pack"
 msgstr "Skill Pack"
 
-#: ../gnotski/gnotski.c:423
+#: ../gnotski/gnotski.c:420
 msgid "_Restart Puzzle"
 msgstr "é??æ?°é??å§?(_R)"
 
-#: ../gnotski/gnotski.c:425
+#: ../gnotski/gnotski.c:422
 msgid "Next Puzzle"
 msgstr "ä¸?å??ç??å??"
 
-#: ../gnotski/gnotski.c:427
+#: ../gnotski/gnotski.c:424
 msgid "Previous Puzzle"
 msgstr "ä¸?å??ç??å??"
 
-#: ../gnotski/gnotski.c:677
+#: ../gnotski/gnotski.c:636
 msgid "Level completed."
 msgstr "é ?å?©é??é??ã??"
 
-#: ../gnotski/gnotski.c:815
+#: ../gnotski/gnotski.c:774
 msgid "The Puzzle Has Been Solved!"
 msgstr "此��已�被破解��"
 
-#: ../gnotski/gnotski.c:832
+#: ../gnotski/gnotski.c:791
 msgid "Klotski Scores"
 msgstr "è?¯å®¹é??ç©?å??æ¦?"
 
-#: ../gnotski/gnotski.c:835
+#: ../gnotski/gnotski.c:794
 msgid "Puzzle:"
 msgstr "é¡?ç?®:"
 
-#: ../gnotski/gnotski.c:919
+#: ../gnotski/gnotski.c:878
 msgid ""
 "The theme for this game failed to render.\n"
 "\n"
@@ -7176,7 +7077,7 @@ msgstr ""
 "\n"
 "è«?確ä¿?è?¯å®¹é??已正確å®?è£?ã??"
 
-#: ../gnotski/gnotski.c:1166
+#: ../gnotski/gnotski.c:1121
 #, c-format
 msgid ""
 "Could not find the image:\n"
@@ -7189,12 +7090,12 @@ msgstr ""
 "\n"
 "è«?確ä¿?è?¯å®¹é??已正確å®?è£?ã??"
 
-#: ../gnotski/gnotski.c:1205
+#: ../gnotski/gnotski.c:1160
 #, c-format
 msgid "Moves: %d"
 msgstr "步��%d"
 
-#: ../gnotski/gnotski.c:1534
+#: ../gnotski/gnotski.c:1489
 msgid ""
 "Sliding Block Puzzles\n"
 "\n"
@@ -7220,7 +7121,7 @@ msgstr "æ­£å?¨ç?©ç??ç??å??"
 msgid "Already used! Where do you want to put that?"
 msgstr "é??å??ä¸?è?½å??ç?¨äº?ï¼?è«?é?¸æ??å?¶å®?å?°æ?¹ï¼?"
 
-#: ../gtali/clist.c:414
+#: ../gtali/clist.c:414 ../swell-foop/src/Score.js:16
 #, c-format
 msgid "Score: %d"
 msgstr "å¾?å??ï¼?%d"
@@ -7434,48 +7335,48 @@ msgstr "å?°é?£"
 msgid "Player Names"
 msgstr "ç?©å®¶å??稱"
 
-#: ../gtali/yahtzee.c:85 ../gtali/yahtzee.c:109 ../gtali/yahtzee.c:516
+#: ../gtali/yahtzee.c:85 ../gtali/yahtzee.c:109 ../gtali/yahtzee.c:517
 msgid "1s [total of 1s]"
 msgstr "1 ç??總å??"
 
-#: ../gtali/yahtzee.c:86 ../gtali/yahtzee.c:110 ../gtali/yahtzee.c:517
+#: ../gtali/yahtzee.c:86 ../gtali/yahtzee.c:110 ../gtali/yahtzee.c:518
 msgid "2s [total of 2s]"
 msgstr "2 ç??總å??"
 
-#: ../gtali/yahtzee.c:87 ../gtali/yahtzee.c:111 ../gtali/yahtzee.c:518
+#: ../gtali/yahtzee.c:87 ../gtali/yahtzee.c:111 ../gtali/yahtzee.c:519
 msgid "3s [total of 3s]"
 msgstr "3 ç??總å??"
 
-#: ../gtali/yahtzee.c:88 ../gtali/yahtzee.c:112 ../gtali/yahtzee.c:519
+#: ../gtali/yahtzee.c:88 ../gtali/yahtzee.c:112 ../gtali/yahtzee.c:520
 msgid "4s [total of 4s]"
 msgstr "4 ç??總å??"
 
-#: ../gtali/yahtzee.c:89 ../gtali/yahtzee.c:113 ../gtali/yahtzee.c:520
+#: ../gtali/yahtzee.c:89 ../gtali/yahtzee.c:113 ../gtali/yahtzee.c:521
 msgid "5s [total of 5s]"
 msgstr "5 ç??總å??"
 
-#: ../gtali/yahtzee.c:90 ../gtali/yahtzee.c:114 ../gtali/yahtzee.c:521
+#: ../gtali/yahtzee.c:90 ../gtali/yahtzee.c:114 ../gtali/yahtzee.c:522
 msgid "6s [total of 6s]"
 msgstr "6 ç??總å??"
 
 #. End of upper panel
-#: ../gtali/yahtzee.c:92 ../gtali/yahtzee.c:117 ../gtali/yahtzee.c:522
+#: ../gtali/yahtzee.c:92 ../gtali/yahtzee.c:117 ../gtali/yahtzee.c:523
 msgid "3 of a Kind [total]"
 msgstr "ä¸?æ¢? [總å??]"
 
-#: ../gtali/yahtzee.c:93 ../gtali/yahtzee.c:523
+#: ../gtali/yahtzee.c:93 ../gtali/yahtzee.c:524
 msgid "4 of a Kind [total]"
 msgstr "å??æ¢? [總å??]"
 
-#: ../gtali/yahtzee.c:94 ../gtali/yahtzee.c:524
+#: ../gtali/yahtzee.c:94 ../gtali/yahtzee.c:525
 msgid "Full House [25]"
 msgstr "ä¿?è?? [25 å??]"
 
-#: ../gtali/yahtzee.c:95 ../gtali/yahtzee.c:525
+#: ../gtali/yahtzee.c:95 ../gtali/yahtzee.c:526
 msgid "Small Straight [30]"
 msgstr "å??é?£é ? [30 å??]"
 
-#: ../gtali/yahtzee.c:96 ../gtali/yahtzee.c:121 ../gtali/yahtzee.c:526
+#: ../gtali/yahtzee.c:96 ../gtali/yahtzee.c:121 ../gtali/yahtzee.c:527
 msgid "Large Straight [40]"
 msgstr "äº?é?£é ? [40 å??]"
 
@@ -7483,7 +7384,7 @@ msgstr "äº?é?£é ? [40 å??]"
 msgid "5 of a Kind [50]"
 msgstr "�� [50]"
 
-#: ../gtali/yahtzee.c:98 ../gtali/yahtzee.c:124 ../gtali/yahtzee.c:528
+#: ../gtali/yahtzee.c:98 ../gtali/yahtzee.c:124 ../gtali/yahtzee.c:529
 msgid "Chance [total]"
 msgstr "ç?¡é??å?¶ [總å??]"
 
@@ -7506,35 +7407,35 @@ msgid "Bonus if >62"
 msgstr "ç??å?µ(總å?? > 62)"
 
 #. End of upper panel
-#: ../gtali/yahtzee.c:116 ../gtali/yahtzee.c:529
+#: ../gtali/yahtzee.c:116 ../gtali/yahtzee.c:530
 msgid "2 pair Same Color [total]"
 msgstr "å?©å°? [總å??]"
 
-#: ../gtali/yahtzee.c:118 ../gtali/yahtzee.c:530
+#: ../gtali/yahtzee.c:118 ../gtali/yahtzee.c:531
 msgid "Full House [15 + total]"
 msgstr "ä¿?è?? [15 å??å? ç¸½å??]"
 
-#: ../gtali/yahtzee.c:119 ../gtali/yahtzee.c:531
+#: ../gtali/yahtzee.c:119 ../gtali/yahtzee.c:532
 msgid "Full House Same Color [20 + total]"
 msgstr "å??è?²ä¿?è?? [20 å??å? ç¸½å??]"
 
-#: ../gtali/yahtzee.c:120 ../gtali/yahtzee.c:532
+#: ../gtali/yahtzee.c:120 ../gtali/yahtzee.c:533
 msgid "Flush (all same color) [35]"
 msgstr "å??è?±(å?¨é?¨å??è?²) [35]"
 
-#: ../gtali/yahtzee.c:122 ../gtali/yahtzee.c:533
+#: ../gtali/yahtzee.c:122 ../gtali/yahtzee.c:534
 msgid "4 of a Kind [25 + total]"
 msgstr "å??æ¢? [25 å??å? ç¸½å??]"
 
-#: ../gtali/yahtzee.c:123 ../gtali/yahtzee.c:534
+#: ../gtali/yahtzee.c:123 ../gtali/yahtzee.c:535
 msgid "5 of a Kind [50 + total]"
 msgstr "äº?æ¢? [50 å??å? ç¸½å??]"
 
-#: ../gtali/yahtzee.c:250
+#: ../gtali/yahtzee.c:251
 msgid "Choose a score slot."
 msgstr "é?¸æ??å??å??æ?¹æ³?ã??"
 
-#: ../gtali/yahtzee.c:527
+#: ../gtali/yahtzee.c:528
 msgid "5 of a Kind [total]"
 msgstr "5 å??ç?¸å?? [總è¨?]"
 
@@ -7583,15 +7484,15 @@ msgstr "輪å?°é»?å­?移å??"
 msgid "Light's move"
 msgstr "輪å?°ç?½å­?移å??"
 
-#: ../iagno/gnothello.c:958
+#: ../iagno/gnothello.c:959
 msgid "Dark:"
 msgstr "é»?ï¼?"
 
-#: ../iagno/gnothello.c:968
+#: ../iagno/gnothello.c:969
 msgid "Light:"
 msgstr "��"
 
-#: ../iagno/gnothello.c:992
+#: ../iagno/gnothello.c:993
 msgid "Welcome to Iagno!"
 msgstr "æ­¡è¿?ä¾?ç?©è??æ??æ£?ï¼?"
 
@@ -7655,7 +7556,7 @@ msgstr "顯示格�(_H)"
 msgid "_Flip final results"
 msgstr "çµ?æ??å¾?å??é??é??æ?¹æ£?å­?(_F)"
 
-#: ../iagno/properties.c:597 ../mahjongg/mahjongg.c:733
+#: ../iagno/properties.c:597 ../mahjongg/mahjongg.c:698
 msgid "_Tile set:"
 msgstr "å??å½¢é??(_T)ï¼?"
 
@@ -7813,7 +7714,7 @@ msgstr "é?¢é??å?¨è?¢å¹?模å¼?"
 msgid "End the current network game and return to network server"
 msgstr "çµ?æ­¢ç?®å??ç??網絡é??æ?²ï¼?å??å?°ä¼ºæ??å?¨"
 
-#: ../libgames-support/games-stock.c:54 ../mahjongg/mahjongg.c:1249
+#: ../libgames-support/games-stock.c:54
 msgid "Pause the game"
 msgstr "æ?«å??é??æ?²"
 
@@ -7821,7 +7722,7 @@ msgstr "æ?«å??é??æ?²"
 msgid "Show a list of players in the network game"
 msgstr "顯示網絡é??æ?²ä¸­ç??ç?©å®¶å??å?®"
 
-#: ../libgames-support/games-stock.c:58 ../mahjongg/mahjongg.c:1252
+#: ../libgames-support/games-stock.c:58
 msgid "Resume the paused game"
 msgstr "ç¹¼çº?é??æ?²"
 
@@ -7837,81 +7738,76 @@ msgstr "é??æ?²è¨­å®?"
 msgid "Quit this game"
 msgstr "é??å?ºæ?¬é??æ?²"
 
-#: ../libgames-support/games-stock.c:322
+#: ../libgames-support/games-stock.c:288
 msgid "_Fullscreen"
 msgstr "���(_F)"
 
 #. Translators: This "_New" is for the menu item 'Game->New', implies "New Game"
-#: ../libgames-support/games-stock.c:325
+#: ../libgames-support/games-stock.c:291
 msgid "_New"
 msgstr "é??æ?°å±?(_N)"
 
-#: ../libgames-support/games-stock.c:328
+#: ../libgames-support/games-stock.c:294
 msgid "_Redo Move"
 msgstr "å??æ¶?å??æ??(_R)"
 
-#. Translators: this is the "Reset" scores button in a scores dialogue
-#: ../libgames-support/games-stock.c:330
-msgid "_Reset"
-msgstr "é??設(_R)"
-
 #. Translators: "_Restart" is the menu item 'Game->Restart', implies "Restart Game"
-#: ../libgames-support/games-stock.c:332
+#: ../libgames-support/games-stock.c:298
 msgid "_Restart"
 msgstr "å??ç?©(_R)"
 
-#: ../libgames-support/games-stock.c:334
+#: ../libgames-support/games-stock.c:300
 msgid "_Deal"
 msgstr "ç?¼ç??(_D)"
 
-#: ../libgames-support/games-stock.c:336
+#: ../libgames-support/games-stock.c:302
 msgid "_Leave Fullscreen"
 msgstr "å??æ¶?å?¨è?¢å¹?(_L)"
 
-#: ../libgames-support/games-stock.c:338
+#: ../libgames-support/games-stock.c:304
 msgid "L_eave Game"
 msgstr "é?¢é??é??æ?²(_E)"
 
-#: ../libgames-support/games-stock.c:339
+#: ../libgames-support/games-stock.c:305
 msgid "Player _List"
 msgstr "ç?©å®¶å??å?®(_L)"
 
-#: ../libgames-support/games-stock.c:340
+#: ../libgames-support/games-stock.c:306
 msgid "_Pause"
 msgstr "æ?«å??(_P)"
 
-#: ../libgames-support/games-stock.c:341
+#: ../libgames-support/games-stock.c:307
 msgid "Res_ume"
 msgstr "繼�(_U)"
 
-#: ../libgames-support/games-stock.c:342
+#: ../libgames-support/games-stock.c:308
 msgid "_Scores"
 msgstr "å??æ?¸(_S)"
 
-#: ../libgames-support/games-stock.c:343
+#: ../libgames-support/games-stock.c:309
 msgid "_End Game"
 msgstr "çµ?æ??é??æ?²(_E)"
 
 #. Work around maemo brokenness wrt. stock item translations.
 #. * See https://bugs.maemo.org/show_bug.cgi?id=1449 .
-#: ../libgames-support/games-stock.c:349
+#: ../libgames-support/games-stock.c:315
 msgid "_About"
 msgstr "é??æ?¼(_A)"
 
-#: ../libgames-support/games-stock.c:350
+#: ../libgames-support/games-stock.c:316
 msgid "_Cancel"
 msgstr "å??æ¶?(_C)"
 
-#: ../libgames-support/games-stock.c:351
+#: ../libgames-support/games-stock.c:317
 msgid "_Close"
 msgstr "é??é??(_C)"
 
-#: ../libgames-support/games-stock.c:352
+#: ../libgames-support/games-stock.c:318
 msgid "_OK"
 msgstr "確�(_O)"
 
 #. %s is replaced with the name of the game in gnome-games.
-#: ../libgames-support/games-stock.c:413
+#: ../libgames-support/games-stock.c:379
 #, c-format
 msgid ""
 "%s is free software; you can redistribute it and/or modify it under the "
@@ -7920,14 +7816,15 @@ msgid ""
 "version."
 msgstr "%s ç?ºè?ªç?±è»?件ï¼?ä½ å?¯æ ¹æ??æ??è?ªç?±è»?件å?ºé??æ??æ??ç?¼è¡¨ç?? GNU é??ç?¨å?¬å?±æ??æ¬?æ¢?款è¦?å®?ï¼?å°±æ?¬ç¨?å¼?å??ç?ºæ?£ä½?è??ï¼?æ??ä¿®æ?¹ï¼?ç?¡è«?ä½ æ ¹æ??æ??ç??æ?¯æ?¬æ??æ¬?ç??第äº?ç??æ??ï¼?ä½ è?ªè¡?é?¸æ??ç??ï¼?第 %d ç??ã??"
 
-#: ../libgames-support/games-stock.c:427
+#: ../libgames-support/games-stock.c:393
 msgid ""
 "You should have received a copy of the GNU General Public License along with "
 "this program.  If not, see <http://www.gnu.org/licenses/>."
 msgstr "ä½ æ??該已ç¶?å??ç¨?å¼?ä¸?èµ·æ?¶å?°ä¸?份 GNU é??ç?¨å?¬å?±è¨±å?¯è­?ç??å?¯æ?¬ã??å¦?æ??é??æ²?æ??ï¼?è«?å??訪 <http://www.gnu.org/licenses/>ã??"
 
 #: ../lightsoff/lightsoff.desktop.in.in.h:1 ../lightsoff/data/lightsoff.ui.h:1
-#: ../lightsoff/data/settings.ui.h:1
+#: ../lightsoff/data/settings.ui.h:2 ../lightsoff/src/About.js:11
+#: ../lightsoff/src/About.js:15
 msgid "Lights Off"
 msgstr "é??ç??é??æ?²"
 
@@ -7963,10 +7860,6 @@ msgstr "使ç?¨è??æ??è¿?ç??ç©?å??ã??"
 msgid "Whether or not to use the GNOME theme colors"
 msgstr "��使� GNOME ��主���"
 
-#: ../lightsoff/data/settings.ui.h:2
-msgid "Look & Feel"
-msgstr "å¤?è§?è??æ??覺"
-
 #: ../lightsoff/data/settings.ui.h:3 ../swell-foop/data/settings.ui.h:7
 msgid "Theme:"
 msgstr "��主��"
@@ -7975,6 +7868,20 @@ msgstr "��主��"
 msgid "Use colors from GNOME theme"
 msgstr "使ç?¨ GNOME ä½?æ?¯ä¸»é¡?ç??é¡?è?²"
 
+#: ../lightsoff/src/About.js:13
+msgid ""
+"Turn off all the lights\n"
+"\n"
+"Lights Off is a part of GNOME Games."
+msgstr ""
+"é??æ??æ??æ??ç??ç??\n"
+"\n"
+"é??ç??é??æ?²(Lights Off)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
+
+#: ../lightsoff/src/About.js:14 ../swell-foop/src/About.js:14
+msgid "Copyright  2009 Tim Horton"
+msgstr "ç??æ¬?æ??æ??  2009 Tim Horton"
+
 #: ../mahjongg/drawing.c:307
 msgid ""
 "The selected theme failed to render.\n"
@@ -7999,77 +7906,77 @@ msgstr ""
 "\n"
 "è«?確ä¿? GNOME ä¸?海麻é??已正確å®?è£?ã??"
 
-#: ../mahjongg/mahjongg.c:43 ../mahjongg/mahjongg.c:934
-#: ../mahjongg/mahjongg.c:938 ../mahjongg/mahjongg.c:940
+#: ../mahjongg/mahjongg.c:45 ../mahjongg/mahjongg.c:899
+#: ../mahjongg/mahjongg.c:903 ../mahjongg/mahjongg.c:905
 #: ../mahjongg/mahjongg.desktop.in.in.h:2
 msgid "Mahjongg"
 msgstr "ä¸?海麻é??"
 
-#: ../mahjongg/mahjongg.c:135
+#: ../mahjongg/mahjongg.c:136
 msgid "Could not load tile set"
 msgstr "ç?¡æ³?è¼?å?¥å??å½¢é??"
 
-#: ../mahjongg/mahjongg.c:306
+#: ../mahjongg/mahjongg.c:271
 msgid "Do you want to start a new game with this map?"
 msgstr "ä½ æ?¯å?¦è¦?以é??å??æ??å??é??å§?æ?°ç??é??æ?²ï¼?"
 
-#: ../mahjongg/mahjongg.c:308
+#: ../mahjongg/mahjongg.c:273
 msgid "If you continue playing the next game will use the new map."
 msgstr "å¦?æ??ä½ é?¸æ??ç¹¼çº?ç?©ï¼?ä¸?ä¸?å±?å°±æ??ç?¨æ?°ç??麻é??æ??å??ã??"
 
-#: ../mahjongg/mahjongg.c:310
+#: ../mahjongg/mahjongg.c:275
 msgid "_Continue playing"
 msgstr "繼��(_C)"
 
-#: ../mahjongg/mahjongg.c:311
+#: ../mahjongg/mahjongg.c:276
 msgid "Use _new map"
 msgstr "使ç?¨æ?°ç??æ??å??(_N)"
 
-#: ../mahjongg/mahjongg.c:614
+#: ../mahjongg/mahjongg.c:579
 msgid "There are no more moves."
 msgstr "æ²?æ??ä»»ä½?å?¯ç§»èµ°ç??ç??äº?ã??"
 
-#: ../mahjongg/mahjongg.c:617
+#: ../mahjongg/mahjongg.c:582
 msgid "_New game"
 msgstr "é??æ?°å±?(_N)"
 
-#: ../mahjongg/mahjongg.c:622
+#: ../mahjongg/mahjongg.c:587
 msgid "_Shuffle"
 msgstr "æ´?ç??(_S)"
 
-#: ../mahjongg/mahjongg.c:664 ../mahjongg/mahjongg.c:993
+#: ../mahjongg/mahjongg.c:629 ../mahjongg/mahjongg.c:959
 msgid "Mahjongg Scores"
 msgstr "ä¸?海麻é??ç©?å??æ¦?"
 
-#: ../mahjongg/mahjongg.c:705
+#: ../mahjongg/mahjongg.c:670
 msgid "Mahjongg Preferences"
 msgstr "ä¸?海麻é??å??好設å®?"
 
-#: ../mahjongg/mahjongg.c:726
+#: ../mahjongg/mahjongg.c:691
 msgid "Tiles"
 msgstr "ç??é?¢"
 
-#: ../mahjongg/mahjongg.c:747
+#: ../mahjongg/mahjongg.c:712
 msgid "Maps"
 msgstr "æ??å??"
 
-#: ../mahjongg/mahjongg.c:754
+#: ../mahjongg/mahjongg.c:719
 msgid "_Select map:"
 msgstr "é?¸æ??æ??å??(_S)ï¼?"
 
-#: ../mahjongg/mahjongg.c:768
+#: ../mahjongg/mahjongg.c:733
 msgid "Colors"
 msgstr "�彩"
 
-#: ../mahjongg/mahjongg.c:914
+#: ../mahjongg/mahjongg.c:879
 msgid "Maps:"
 msgstr "æ??å??:"
 
-#: ../mahjongg/mahjongg.c:921
+#: ../mahjongg/mahjongg.c:886
 msgid "Tiles:"
 msgstr "ç??é?¢:"
 
-#: ../mahjongg/mahjongg.c:944
+#: ../mahjongg/mahjongg.c:909
 msgid ""
 "A matching game played with Mahjongg tiles.\n"
 "\n"
@@ -8079,32 +7986,32 @@ msgstr ""
 "\n"
 "ä¸?海麻é??(Mahjongg)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../mahjongg/mahjongg.c:1188
+#: ../mahjongg/mahjongg.c:1154
 #, c-format
 msgid "Mahjongg - %s"
 msgstr "ä¸?海麻é?? - %s"
 
-#: ../mahjongg/mahjongg.c:1248
+#: ../mahjongg/mahjongg.c:1214
 msgid "Restart the current game"
 msgstr "é??æ?°å??ç?©é??å±?"
 
-#: ../mahjongg/mahjongg.c:1255
+#: ../mahjongg/mahjongg.c:1217
 msgid "Redo the last move"
 msgstr "é??å??ä¸?ä¸?æ­¥"
 
-#: ../mahjongg/mahjongg.c:1257
+#: ../mahjongg/mahjongg.c:1219
 msgid "Show a hint"
 msgstr "顯示æ??示"
 
-#: ../mahjongg/mahjongg.c:1447
+#: ../mahjongg/mahjongg.c:1400
 msgid "Tiles Left:"
 msgstr "å?©é¤?ç??æ?¸:"
 
-#: ../mahjongg/mahjongg.c:1456
+#: ../mahjongg/mahjongg.c:1409
 msgid "Moves Left:"
 msgstr "��步�:"
 
-#: ../mahjongg/mahjongg.c:1518
+#: ../mahjongg/mahjongg.c:1472
 msgid "Remove matching pairs of tiles."
 msgstr "å°?ç?¸å??ç??é?¢ç??麻é??ä¸?å°?å°?å?°ç§»èµ°ã??"
 
@@ -8163,7 +8070,8 @@ msgid "Difficult"
 msgstr "��度"
 
 #: ../swell-foop/data/swell-foop.ui.h:1 ../swell-foop/data/settings.ui.h:6
-#: ../swell-foop/swell-foop.desktop.in.in.h:2
+#: ../swell-foop/swell-foop.desktop.in.in.h:2 ../swell-foop/src/About.js:11
+#: ../swell-foop/src/About.js:15
 msgid "Swell Foop"
 msgstr "Swell Foop"
 
@@ -8203,6 +8111,201 @@ msgstr "使ç?¨è¼?è?¯éº?ã??ä½?æ?¯è¼?æ?¢é??ç??å??ç?«ã??"
 msgid "Zealous animation"
 msgstr "Zealous å??ç?«"
 
+#: ../swell-foop/src/About.js:13
+msgid ""
+"I want to play that game! You know, they all go whirly-round and you click "
+"on them and they vanish!\n"
+"\n"
+"Swell Foop is a part of GNOME Games."
+msgstr ""
+"æ??å°±æ?¯è¦?ç?©é?£å??é??æ?²ï¼?å°±æ?¯å®?å??æ??è½?å??ä¸?å??ï¼?ä½ å°?å®?å??é»?ä¸?é»?ï¼?å®?å??å°±æ¶?失äº?ï¼?\n"
+"\n"
+"Swell Foop æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
+
+#: ../swell-foop/src/Board.js:102
+msgid "No points"
+msgstr "æ²?æ??å??æ?¸"
+
+#: ../swell-foop/src/Board.js:105 ../swell-foop/src/Score.js:109
+#, c-format
+msgid "%d point"
+msgid_plural "%d points"
+msgstr[0] "%d å??"
+
+#: ../swell-foop/src/Score.js:54
+msgid "Swell Foop Scores"
+msgstr "Swell Foop å??æ?¸"
+
+#: ../swell-foop/src/Score.js:144
+msgid "Small"
+msgstr "å°?"
+
+#: ../swell-foop/src/Score.js:146
+msgid "Large"
+msgstr "大"
+
+#~ msgid "Load a saved game"
+#~ msgstr "è¼?å?¥ä¸?å±?å·²å?²å­?ç??æ£?å±?"
+
+#~ msgid "Save the current game"
+#~ msgstr "å?²å­?é??å±?æ£?"
+
+#~ msgid "Themes"
+#~ msgstr "��主�"
+
+#~ msgid "_Bastard mode"
+#~ msgstr "ç??ç??模å¼?(_B)"
+
+#~ msgid "Generate new puzzles in the background"
+#~ msgstr "å?¨è??æ?¯ç?¢ç??æ?°é¡?ç?®"
+
+#~ msgid "<b><i>Details</i></b>"
+#~ msgstr "<b><i>詳細è³?æ??</i></b>"
+
+#~ msgid "<span size=\"larger\" weight=\"bold\">Print Games</span>"
+#~ msgstr "<span size=\"larger\" weight=\"bold\">å??å?°é??æ?²</span>"
+
+#~ msgid "<i><u>Number of Puzzles</u></i>"
+#~ msgstr "<i><u>����</u></i>"
+
+#~ msgid "<i>Easy:</i>"
+#~ msgstr "<i>容æ??ï¼?</i>"
+
+#~ msgid "<i>Hard:</i>"
+#~ msgstr "<i>���</i>"
+
+#~ msgid "<i>Medium:</i>"
+#~ msgstr "<i>中��</i>"
+
+#~ msgid "<i>Very Hard:</i>"
+#~ msgstr "<i>極��</i>"
+
+#~ msgid "<span size=\"larger\" weight=\"bold\">Puzzle Generator</span>"
+#~ msgstr "<span size=\"larger\" weight=\"bold\">é¡?ç?®ç?¢ç??å?¨</span>"
+
+#~ msgid "Criteria:"
+#~ msgstr "�件�"
+
+#~ msgid "Generate Policy"
+#~ msgstr "ç?¢ç??ç??æ³?å??"
+
+#~ msgid "Generate new puzzles _until stopped"
+#~ msgstr "ä¸?æ?·ç?¢ç??æ?°é¡?ç?®ç?´è?³ç?©å®¶è¦?æ±?å??æ­¢(_U)"
+
+#~ msgid "Generate until _reaching target"
+#~ msgstr "ç?¢ç??é¡?ç?®ç?´è?³é??å?°ç?®æ¨?æ?¸å­?ç?ºæ­¢(_R)"
+
+#~ msgid "Puzzle Generator"
+#~ msgstr "é¡?ç?®ç?¢ç??å?¨"
+
+#~ msgid "Target _number of sudokus:"
+#~ msgstr "æ?¸ç?¨é¡?ç?®ç??ç?®æ¨?æ?¸å­?(_N):"
+
+#~ msgid "_Generate"
+#~ msgstr "ç?¢ç??(_G)"
+
+#~ msgid "<b><span size=\"large\">_New Game</span></b>"
+#~ msgstr "<b><span size=\"large\">æ?°é??æ?²(_N)</span></b>"
+
+#~ msgid "<b><span size=\"large\">_Saved Games</span></b>"
+#~ msgstr "<b><span size=\"large\">å?²å­?é??æ?²(_S)</span></b>"
+
+#~ msgid "Clear _Others"
+#~ msgstr "æ¸?é?¤å?¶ä»?ç??(_O)"
+
+#~ msgid "_Clear Tracker"
+#~ msgstr "��追蹤�(_C)"
+
+#~ msgid "_Trackers"
+#~ msgstr "追蹤�(_T)"
+
+#~ msgid "Show which numbers could go in the current square."
+#~ msgstr "顯示ç?®å??ç??æ?¹æ ¼å?¯ä»¥æ?¥å??å?ªäº?æ?¸å­?ã??"
+
+#~ msgid "_Fill"
+#~ msgstr "å¡«å??(_F)"
+
+#~ msgid "Automatically fill in the current square if possible."
+#~ msgstr "å?¨è¨±å?¯ç??æ??æ³?ä¸?ç?¡é??å¡«ä¸?ç?®å??ç??æ?¹æ ¼ã??"
+
+#~ msgid "Fill _all squares"
+#~ msgstr "å¡«å??æ??æ??æ?¹æ ¼(_A)"
+
+#~ msgid ""
+#~ "Automatically fill in all squares for which there is only one valid value."
+#~ msgstr "è?ªå??å¡«å??æ??æ??å?ªæ??ä¸?å??å?¯è?½æ?§ç??æ?¹æ ¼ã??"
+
+#~ msgid "_Generate new puzzles"
+#~ msgstr "ç?¢ç??æ?°é¡?ç?®(_G)"
+
+#~ msgid "Generate new puzzles."
+#~ msgstr "ç?¢ç??æ?°é¡?ç?®"
+
+#~ msgid "_Always show hint"
+#~ msgstr "ä¸?å®?顯示æ??示(_A)"
+
+#~ msgid "Generate new puzzles _while you play"
+#~ msgstr "ç?¶æ?¨å?¨ç?©ç??æ??å??ç?¢ç??æ?°ç??é¡?ç?®(_W)"
+
+#~ msgid ""
+#~ "Generate new puzzles in the background while you play. This will "
+#~ "automatically pause when the game goes into the background."
+#~ msgstr ""
+#~ "ç?¶æ?¨æ­£å?¨è§£æ±ºé¡?ç?®æ??è®?ç¨?å¼?è?ªè¡?å?¨è??æ?¯ç?¢ç??æ?°é¡?ç?®ã??æ­¤ç¨?åº?æ??å?¨é¡?ç?®æ?¬èº«å??æ??å?°è??æ?¯"
+#~ "æ??å??æ­¢å?·è¡?ã??"
+
+#~ msgid "_Edit"
+#~ msgstr "編輯(_E)"
+
+#~ msgid "Clear entries you've filled in"
+#~ msgstr "æ¸?é?¤æ??æ??æ?¨å¡«ä¸?ç??æ?¸å­?"
+
+#~ msgid "Clear notes and hints"
+#~ msgstr "æ¸?é?¤æ¨?è¨?å??æ??示"
+
+#~ msgid "You used the auto-fill %(n)s time"
+#~ msgid_plural "You used the auto-fill %(n)s times"
+#~ msgstr[0] "æ?¨ä½¿ç?¨äº? %(n)s 次è?ªå??å¡«å??"
+
+#~ msgid "Playing %(difficulty)s puzzle."
+#~ msgstr "æ­£å?¨é?²è¡?ç­?ç´?ç?º %(difficulty)s ç??é¡?ç?®ã??"
+
+#~ msgid "No Tracker"
+#~ msgstr "æ²?æ??追蹤å?¨"
+
+#~ msgid "_Clear Others"
+#~ msgstr "æ¸?é?¤å?¶ä»?ç??(_C)"
+
+#~ msgid "Clear all moves not tracked by selected tracker."
+#~ msgstr "æ¸?é?¤æ??æ??ä¸?被é?¸å??ç??追蹤å?¨è¿½è¹¤ç??å¡«æ³?ã??"
+
+#~ msgid "%(n)s puzzle"
+#~ msgid_plural "%(n)s puzzles"
+#~ msgstr[0] "%(n)s å??é¡?ç?®"
+
+#~ msgid "Stopped"
+#~ msgstr "å·²å??æ­¢"
+
+#~ msgid "Generated %(n)s out of %(total)s puzzle"
+#~ msgid_plural "Generated %(n)s out of %(total)s puzzles"
+#~ msgstr[0] "å·²ç?¢ç?? %(n)s / %(total)s å??é¡?ç?®"
+
+#~ msgid "Generated %(n)s puzzle"
+#~ msgid_plural "Generated %(n)s puzzles"
+#~ msgstr[0] "ç?¢ç??äº? %(n)s å??é¡?ç?®"
+
+#~ msgid "Tile _Colours"
+#~ msgstr "æ?¼å??è?²å½©(_C)"
+
+#~ msgid "A flag to enable coloured tiles."
+#~ msgstr "å??ç?¨å½©è?²ç??é?¢ç??æ??æ¨?ã??"
+
+#~ msgid "Control coloured tiles"
+#~ msgstr "æ?§å?¶å½©è?²ç??ç??"
+
+#~ msgid "Look & Feel"
+#~ msgstr "å¤?è§?è??æ??覺"
+
 #~ msgid "Blackjack"
 #~ msgstr "21 é»?"
 
diff --git a/po/zh_TW.po b/po/zh_TW.po
index de63195..648da10 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -6,10 +6,10 @@
 # Chao-Hsiung Liao <j_h_liau yahoo com tw>, 2010.
 msgid ""
 msgstr ""
-"Project-Id-Version: gnome-games 2.29.92\n"
+"Project-Id-Version: gnome-games 2.31.5\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-20 20:17+0800\n"
-"PO-Revision-Date: 2010-03-20 09:20+0800\n"
+"POT-Creation-Date: 2010-07-24 19:57+0800\n"
+"PO-Revision-Date: 2010-07-24 19:21+0800\n"
 "Last-Translator: Chao-Hsiung Liao <j_h_liau yahoo com tw>\n"
 "Language-Team: Chinese (traditional)\n"
 "MIME-Version: 1.0\n"
@@ -40,7 +40,7 @@ msgstr "å??ç?«"
 msgid "Recently played games"
 msgstr "æ??è¿?ç?©é??ç??é??æ?²"
 
-#: ../aisleriot/aisleriot.schemas.in.h:5 ../gnotravex/gnotravex.schemas.in.h:3
+#: ../aisleriot/aisleriot.schemas.in.h:5 ../gnotravex/gnotravex.schemas.in.h:1
 msgid "Select the style of control"
 msgstr "é?¸æ??ç´?ç??移å??æ?¹å¼?"
 
@@ -93,7 +93,7 @@ msgid "Whether or not to show the toolbar"
 msgstr "æ?¯å?¦é¡¯ç¤ºå·¥å?·å??"
 
 #. Now construct the window contents
-#: ../aisleriot/ar-game-chooser.c:238 ../aisleriot/window.c:2581
+#: ../aisleriot/ar-game-chooser.c:238 ../aisleriot/window.c:2547
 msgid "Select Game"
 msgstr "é?¸æ??é??æ?²"
 
@@ -101,8 +101,8 @@ msgstr "é?¸æ??é??æ?²"
 msgid "_Select"
 msgstr "é?¸æ??(_S)"
 
-#: ../aisleriot/freecell.desktop.in.in.h:1 ../aisleriot/sol.c:336
-#: ../aisleriot/window.c:459 ../aisleriot/window.c:467
+#: ../aisleriot/freecell.desktop.in.in.h:1 ../aisleriot/sol.c:324
+#: ../aisleriot/window.c:448 ../aisleriot/window.c:456
 msgid "FreeCell Solitaire"
 msgstr "FreeCell ç´?ç??æ?¥é¾?é??æ?²"
 
@@ -1024,36 +1024,36 @@ msgid "Hopscotch"
 msgstr "Hopscotch"
 
 #. String reserve
-#: ../aisleriot/sol.c:65
+#: ../aisleriot/sol.c:70
 msgid "Solitaire"
 msgstr "Solitaire"
 
-#: ../aisleriot/sol.c:66
+#: ../aisleriot/sol.c:71
 msgid "GNOME Solitaire"
 msgstr "GNOME ç´?ç??æ?¥é¾?é??æ?²"
 
-#: ../aisleriot/sol.c:67
+#: ../aisleriot/sol.c:72
 msgid "About Solitaire"
 msgstr "é??æ?¼ç´?ç??æ?¥é¾?é??æ?²"
 
-#: ../aisleriot/sol.c:229
+#: ../aisleriot/sol.c:211
 msgid "Select the game type to play"
 msgstr "é?¸æ??è¦?ç?©ç??é??æ?²é¡?å??"
 
-#: ../aisleriot/sol.c:229 ../gnobots2/gnobots.c:85 ../gnobots2/gnobots.c:87
+#: ../aisleriot/sol.c:211 ../gnobots2/gnobots.c:85 ../gnobots2/gnobots.c:87
 msgid "NAME"
 msgstr "å??稱"
 
-#: ../aisleriot/sol.c:231
+#: ../aisleriot/sol.c:213
 msgid "Select the game number"
 msgstr "é?¸æ??é??æ?²ç·¨è??"
 
-#: ../aisleriot/sol.c:231 ../gnomine/gnomine.c:1007 ../gtali/gyahtzee.c:107
+#: ../aisleriot/sol.c:213 ../gnomine/gnomine.c:933 ../gtali/gyahtzee.c:107
 #: ../gtali/gyahtzee.c:109 ../gtali/gyahtzee.c:113 ../gtali/gyahtzee.c:115
 msgid "NUMBER"
 msgstr "æ?¸é??"
 
-#: ../aisleriot/sol.c:336 ../aisleriot/window.c:468 ../aisleriot/window.c:2041
+#: ../aisleriot/sol.c:324 ../aisleriot/window.c:457 ../aisleriot/window.c:2013
 msgid "AisleRiot"
 msgstr "AisleRiot"
 
@@ -1466,41 +1466,41 @@ msgstr "%d:%02d"
 msgid "Could not show help for â??%sâ??"
 msgstr "ç?¡æ³?顯示â??%sâ??ç??æ±?å?©æ??件"
 
-#: ../aisleriot/window.c:265
+#: ../aisleriot/window.c:254
 msgid "Congratulations, you have won!"
 msgstr "æ?­å??ï¼?æ?¨å·²ç¶?è´?äº?ï¼?"
 
-#: ../aisleriot/window.c:269
+#: ../aisleriot/window.c:258
 msgid "There are no more moves"
 msgstr "å·²ç¶?æ²?æ??å?¶ä»?å?¯ç§»å??ç??æ?¹æ³?äº?"
 
 #. Empty title shows up as "<unnamed>" on maemo
-#: ../aisleriot/window.c:282 ../quadrapassel/blockops.cpp:788
+#: ../aisleriot/window.c:271 ../quadrapassel/blockops.cpp:788
 msgid "Game Over"
 msgstr "���"
 
-#: ../aisleriot/window.c:416 ../gnomine/gnomine.c:450
-#: ../mahjongg/mahjongg.c:906
+#: ../aisleriot/window.c:405 ../gnomine/gnomine.c:440
+#: ../mahjongg/mahjongg.c:871
 msgid "Main game:"
 msgstr "主é??æ?²ï¼?"
 
-#: ../aisleriot/window.c:424
+#: ../aisleriot/window.c:413
 msgid "Card games:"
 msgstr "ç´?ç??é??æ?²ï¼?"
 
-#: ../aisleriot/window.c:438
+#: ../aisleriot/window.c:427
 msgid "Card themes:"
 msgstr "ç´?ç??主é¡?:"
 
-#: ../aisleriot/window.c:470
+#: ../aisleriot/window.c:459
 msgid "About FreeCell Solitaire"
 msgstr "é??æ?¼ FreeCell ç´?ç??æ?¥é¾?é??æ?²"
 
-#: ../aisleriot/window.c:471
+#: ../aisleriot/window.c:460
 msgid "About AisleRiot"
 msgstr "é??æ?¼ AisleRiot æ?¥é¾?é??æ?²"
 
-#: ../aisleriot/window.c:477
+#: ../aisleriot/window.c:466
 msgid ""
 "AisleRiot provides a rule-based solitaire card engine that allows many "
 "different games to be played.\n"
@@ -1509,12 +1509,15 @@ msgstr ""
 "AisleRiot æ?¯ä»¥è¦?å??ç?ºå?ºç¤?ç??æ?¥é¾?ç´?ç??é??æ?²ï¼?å?¯æ??ä¾?å¾?å¤?種ä¸?å??ç??ç?©æ³?ã??\n"
 "AisleRiot æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../aisleriot/window.c:488 ../glchess/src/lib/gtkui/gtkui.py:861
-#: ../glines/glines.c:1225 ../gnect/src/main.c:909 ../gnibbles/main.c:247
-#: ../gnobots2/menu.c:274 ../quadrapassel/tetris.cpp:1313
-#: ../gnome-sudoku/src/lib/main.py:720 ../gnomine/gnomine.c:490
-#: ../gnotravex/gnotravex.c:1921 ../gnotski/gnotski.c:1542
-#: ../gtali/gyahtzee.c:620 ../iagno/gnothello.c:272 ../mahjongg/mahjongg.c:951
+#. this doesn't work for anyone
+#: ../aisleriot/window.c:477 ../glchess/src/lib/gtkui/gtkui.py:831
+#: ../glines/glines.c:1225 ../gnect/src/main.c:879 ../gnibbles/main.c:213
+#: ../gnobots2/menu.c:267 ../quadrapassel/tetris.cpp:1303
+#: ../gnome-sudoku/src/lib/main.py:691 ../gnomine/gnomine.c:480
+#: ../gnotravex/gnotravex.c:1642 ../gnotski/gnotski.c:1497
+#: ../gtali/gyahtzee.c:620 ../iagno/gnothello.c:272
+#: ../lightsoff/src/About.js:20 ../mahjongg/mahjongg.c:916
+#: ../swell-foop/src/About.js:20
 msgid "translator-credits"
 msgstr ""
 "å¦?å°?翻譯æ??ä»»ä½?æ??è¦?ï¼?è«?é??ä¸?å°?é?»å­?é?µä»¶çµ¦\n"
@@ -1524,21 +1527,23 @@ msgstr ""
 "Abel Cheung <abel oaka org>, 2001-07\n"
 "Fernando <bv1al journalist com tw>, 1999"
 
-#: ../aisleriot/window.c:492 ../glchess/src/lib/defaults.py.in:56
-#: ../glines/glines.c:1228 ../gnect/src/main.c:906 ../gnibbles/main.c:250
-#: ../gnobots2/menu.c:270 ../quadrapassel/tetris.cpp:1310
-#: ../gnome-sudoku/src/lib/defaults.py.in:43 ../gnomine/gnomine.c:493
-#: ../gnotravex/gnotravex.c:1924 ../gnotski/gnotski.c:1545
-#: ../gtali/gyahtzee.c:624 ../iagno/gnothello.c:274 ../mahjongg/mahjongg.c:954
+#: ../aisleriot/window.c:481 ../glchess/src/lib/defaults.py.in:62
+#: ../glines/glines.c:1228 ../gnect/src/main.c:876 ../gnibbles/main.c:216
+#: ../gnobots2/menu.c:263 ../quadrapassel/tetris.cpp:1300
+#: ../gnome-sudoku/src/lib/defaults.py.in:45 ../gnomine/gnomine.c:483
+#: ../gnotravex/gnotravex.c:1645 ../gnotski/gnotski.c:1500
+#: ../gtali/gyahtzee.c:624 ../iagno/gnothello.c:274
+#: ../lightsoff/src/About.js:19 ../mahjongg/mahjongg.c:919
+#: ../swell-foop/src/About.js:19
 msgid "GNOME Games web site"
 msgstr "GNOME Games 網�"
 
-#: ../aisleriot/window.c:1366
+#: ../aisleriot/window.c:1353
 #, c-format
 msgid "Play â??%sâ??"
 msgstr "ç?©â??%sâ??"
 
-#: ../aisleriot/window.c:1537
+#: ../aisleriot/window.c:1524
 #, c-format
 msgid "Display cards with â??%sâ?? card theme"
 msgstr "使ç?¨ç´?ç??主é¡?â??%sâ??顯示ç´?ç??"
@@ -1547,203 +1552,199 @@ msgstr "使ç?¨ç´?ç??主é¡?â??%sâ??顯示ç´?ç??"
 #. * then translate this string to "%I6d", else to "%6d".
 #. * Do not translate it to anything else!
 #.
-#: ../aisleriot/window.c:1632
+#: ../aisleriot/window.c:1619
 #, c-format
 msgctxt "score"
 msgid "%6d"
 msgstr "%6d"
 
-#: ../aisleriot/window.c:1910
+#: ../aisleriot/window.c:1882
 msgid "A scheme exception occurred"
 msgstr "ç?¼ç?? scheme ä¾?å¤?"
 
-#: ../aisleriot/window.c:1913
+#: ../aisleriot/window.c:1885
 msgid "Please report this bug to the developers."
 msgstr "è«?å°?é??å??é?¯èª¤å??報給é??ç?¼è??ã??"
 
 #. Empty title shows up as "<unnamed>" on maemo
-#: ../aisleriot/window.c:1917 ../libgames-support/games-show.c:151
+#: ../aisleriot/window.c:1889 ../libgames-support/games-show.c:151
 msgid "Error"
 msgstr "�誤"
 
-#: ../aisleriot/window.c:1925
+#: ../aisleriot/window.c:1897
 msgid "_Don't report"
 msgstr "ä¸?è¦?å??å ±(_D)"
 
-#: ../aisleriot/window.c:1926
+#: ../aisleriot/window.c:1898
 msgid "_Report"
 msgstr "å ±å??(_R)"
 
-#: ../aisleriot/window.c:2039
+#: ../aisleriot/window.c:2011
 msgid "Freecell Solitaire"
 msgstr "FreeCell ç´?ç??æ?¥é¾?é??æ?²"
 
 #. Menu actions
 #. Preferences Dialog: Title of game options tab
-#: ../aisleriot/window.c:2202 ../glchess/data/glchess.ui.h:24
-#: ../glchess/data/preferences.ui.h:24 ../glines/glines.c:1691
-#: ../gnect/src/main.c:1273 ../gnibbles/main.c:738 ../gnobots2/menu.c:68
-#: ../quadrapassel/tetris.cpp:107 ../gnome-sudoku/src/lib/main.py:241
-#: ../gnomine/gnomine.c:834 ../gnotravex/gnotravex.c:303
-#: ../gnotski/gnotski.c:414 ../gtali/gyahtzee.c:705 ../iagno/gnothello.c:828
-#: ../lightsoff/data/lightsoff.ui.h:2 ../mahjongg/mahjongg.c:1242
+#: ../aisleriot/window.c:2174 ../glchess/data/glchess.ui.h:22
+#: ../glchess/data/preferences.ui.h:28 ../glines/glines.c:1662
+#: ../gnect/src/main.c:1243 ../gnibbles/main.c:692 ../gnobots2/menu.c:66
+#: ../quadrapassel/tetris.cpp:108 ../gnome-sudoku/src/lib/main.py:231
+#: ../gnomine/gnomine.c:773 ../gnotravex/gnotravex.c:1752
+#: ../gnotski/gnotski.c:411 ../gtali/gyahtzee.c:705 ../iagno/gnothello.c:828
+#: ../lightsoff/data/lightsoff.ui.h:2 ../mahjongg/mahjongg.c:1208
 #: ../swell-foop/data/swell-foop.ui.h:2
 msgid "_Game"
 msgstr "é??æ?²(_G)"
 
-#. Preferences Dialog: Title of view options tab
-#: ../aisleriot/window.c:2203 ../glchess/data/glchess.ui.h:29
-#: ../glchess/data/preferences.ui.h:30 ../gnect/src/main.c:1274
-#: ../gnibbles/main.c:739 ../gnobots2/menu.c:69
-#: ../gnome-sudoku/src/lib/main.py:251 ../gnotravex/gnotravex.c:304
-#: ../gnotski/gnotski.c:415
+#: ../aisleriot/window.c:2175 ../gnect/src/main.c:1244 ../gnibbles/main.c:693
+#: ../gnobots2/menu.c:67 ../gnotski/gnotski.c:412
 msgid "_View"
 msgstr "檢�(_V)"
 
-#: ../aisleriot/window.c:2204
+#: ../aisleriot/window.c:2176
 msgid "_Control"
 msgstr "��(_C)"
 
-#: ../aisleriot/window.c:2206 ../glchess/data/glchess.ui.h:25
-#: ../glines/glines.c:1693 ../gnect/src/main.c:1276 ../gnibbles/main.c:741
-#: ../gnobots2/menu.c:72 ../quadrapassel/tetris.cpp:109
-#: ../gnome-sudoku/src/lib/main.py:269 ../gnomine/gnomine.c:836
-#: ../gnotravex/gnotravex.c:307 ../gnotski/gnotski.c:416
+#: ../aisleriot/window.c:2178 ../glchess/data/glchess.ui.h:23
+#: ../glines/glines.c:1664 ../gnect/src/main.c:1246 ../gnibbles/main.c:695
+#: ../gnobots2/menu.c:70 ../quadrapassel/tetris.cpp:110
+#: ../gnome-sudoku/src/lib/main.py:254 ../gnomine/gnomine.c:775
+#: ../gnotravex/gnotravex.c:1756 ../gnotski/gnotski.c:413
 #: ../gtali/gyahtzee.c:707 ../iagno/gnothello.c:830
-#: ../lightsoff/data/lightsoff.ui.h:3 ../mahjongg/mahjongg.c:1244
+#: ../lightsoff/data/lightsoff.ui.h:3 ../mahjongg/mahjongg.c:1210
 #: ../swell-foop/data/swell-foop.ui.h:3
 msgid "_Help"
 msgstr "æ±?å?©(_H)"
 
-#: ../aisleriot/window.c:2211 ../glchess/data/glchess.ui.h:18
-#: ../gnobots2/menu.c:73 ../libgames-support/games-stock.c:53
-#: ../mahjongg/mahjongg.c:1245
+#: ../aisleriot/window.c:2183 ../glchess/data/glchess.ui.h:16
+#: ../gnobots2/menu.c:71 ../libgames-support/games-stock.c:53
+#: ../mahjongg/mahjongg.c:1211
 msgid "Start a new game"
 msgstr "é??å§?å?¦ä¸?å±?"
 
-#: ../aisleriot/window.c:2214 ../libgames-support/games-stock.c:57
+#: ../aisleriot/window.c:2186 ../libgames-support/games-stock.c:57
 msgid "Restart the game"
 msgstr "å??ç?©é??ä¸?å±?"
 
-#: ../aisleriot/window.c:2216
+#: ../aisleriot/window.c:2188
 msgid "_Select Game..."
 msgstr "é?¸æ??é??æ?²(_S)..."
 
-#: ../aisleriot/window.c:2218
+#: ../aisleriot/window.c:2190
 msgid "Play a different game"
 msgstr "é?¸æ??å?¦ä¸?種é??æ?²"
 
-#: ../aisleriot/window.c:2220
+#: ../aisleriot/window.c:2192
 msgid "_Recently Played"
 msgstr "æ??è¿?ç?©é??ç??(_R)"
 
-#: ../aisleriot/window.c:2221
+#: ../aisleriot/window.c:2193
 msgid "S_tatistics"
 msgstr "統�(_T)"
 
-#: ../aisleriot/window.c:2222
+#: ../aisleriot/window.c:2194
 msgid "Show gameplay statistics"
 msgstr "顯示é??æ?²ç´?é??çµ±è¨?æ?¸å­?"
 
-#: ../aisleriot/window.c:2225 ../libgames-support/games-stock.c:62
+#: ../aisleriot/window.c:2197 ../libgames-support/games-stock.c:62
 msgid "Close this window"
 msgstr "é??é??é??å??è¦?çª?"
 
-#: ../aisleriot/window.c:2228 ../libgames-support/games-stock.c:60
-#: ../mahjongg/mahjongg.c:1253
+#: ../aisleriot/window.c:2200 ../libgames-support/games-stock.c:60
+#: ../mahjongg/mahjongg.c:1215
 msgid "Undo the last move"
 msgstr "é??å??ä¸?ä¸?æ­¥"
 
-#: ../aisleriot/window.c:2231 ../libgames-support/games-stock.c:56
+#: ../aisleriot/window.c:2203 ../libgames-support/games-stock.c:56
 msgid "Redo the undone move"
 msgstr "é??æ?°é?²è¡?å??æ??é??å??ç??ä¸?æ­¥"
 
-#: ../aisleriot/window.c:2234
+#: ../aisleriot/window.c:2206
 msgid "Deal next card or cards"
 msgstr "ç¹¼çº?ç?¼ç??"
 
-#: ../aisleriot/window.c:2237 ../libgames-support/games-stock.c:49
+#: ../aisleriot/window.c:2209 ../libgames-support/games-stock.c:49
 msgid "Get a hint for your next move"
 msgstr "給ä¸?ä¸?æ­¥ç??æ??示"
 
-#: ../aisleriot/window.c:2240
+#: ../aisleriot/window.c:2212
 msgid "View help for Aisleriot"
 msgstr "顯示 Aisleriot 說æ??æ??件"
 
-#: ../aisleriot/window.c:2244 ../libgames-support/games-stock.c:46
+#: ../aisleriot/window.c:2216 ../libgames-support/games-stock.c:46
 msgid "View help for this game"
 msgstr "顯示æ??é??æ?¬é??æ?²ç??說æ??æ??件"
 
-#: ../aisleriot/window.c:2247 ../libgames-support/games-stock.c:61
+#: ../aisleriot/window.c:2219 ../libgames-support/games-stock.c:61
 msgid "About this game"
 msgstr "é??æ?¼æ?¬é??æ?²"
 
-#: ../aisleriot/window.c:2250
+#: ../aisleriot/window.c:2222
 msgid "Install card themesâ?¦"
 msgstr "å®?è£?ç´?ç??主é¡?..."
 
-#: ../aisleriot/window.c:2251
+#: ../aisleriot/window.c:2223
 msgid "Install new card themes from the distribution packages repositories"
 msgstr "å¾?ç?¼è¡?ç??æ?¬å¥?件庫中å®?è£?æ?°ç??ç´?ç??主é¡?"
 
-#: ../aisleriot/window.c:2261
+#: ../aisleriot/window.c:2231
 msgid "_Card Style"
 msgstr "ç´?ç??樣å¼?(_C)"
 
-#: ../aisleriot/window.c:2302 ../gnobots2/menu.c:96
-#: ../mahjongg/mahjongg.c:1273
+#: ../aisleriot/window.c:2272 ../gnobots2/menu.c:90
+#: ../mahjongg/mahjongg.c:1231
 msgid "_Toolbar"
 msgstr "å·¥å?·å??(_T)"
 
-#: ../aisleriot/window.c:2303 ../glchess/data/preferences.ui.h:17
-#: ../gnobots2/menu.c:96 ../mahjongg/mahjongg.c:1273
+#: ../aisleriot/window.c:2273 ../glchess/data/preferences.ui.h:19
+#: ../gnobots2/menu.c:90 ../mahjongg/mahjongg.c:1231
 msgid "Show or hide the toolbar"
 msgstr "顯示æ??é?±è??å·¥å?·å??"
 
-#: ../aisleriot/window.c:2308
+#: ../aisleriot/window.c:2278
 msgid "_Statusbar"
 msgstr "ç??æ??å??(_S)"
 
-#: ../aisleriot/window.c:2309
+#: ../aisleriot/window.c:2279
 msgid "Show or hide statusbar"
 msgstr "顯示æ??é?±è??ç??æ??å??"
 
-#: ../aisleriot/window.c:2314 ../gnotravex/gnotravex.c:352
+#: ../aisleriot/window.c:2284 ../gnotravex/gnotravex.c:1776
 msgid "_Click to Move"
 msgstr "é»?é?¸ç??ä¾?移å??(_C)"
 
-#: ../aisleriot/window.c:2315
+#: ../aisleriot/window.c:2285
 msgid "Pick up and drop cards by clicking"
 msgstr "以é»?é?¸æ??èµ·æ??æ?¾ä¸?ç´?ç??"
 
-#: ../aisleriot/window.c:2319
+#: ../aisleriot/window.c:2289
 msgid "_Sound"
 msgstr "é?³æ??(_S)"
 
-#: ../aisleriot/window.c:2320
+#: ../aisleriot/window.c:2290
 msgid "Whether or not to play event sounds"
 msgstr "æ?¯å?¦æ?­æ?¾äº?件é?³æ??"
 
-#: ../aisleriot/window.c:2325
+#: ../aisleriot/window.c:2295
 msgid "_Animations"
 msgstr "å??ç?«(_A)"
 
-#: ../aisleriot/window.c:2326
+#: ../aisleriot/window.c:2296
 msgid "Whether or not to animate card moves"
 msgstr "ç´?ç??移å??æ?¯å?¦ä½¿ç?¨å??ç?«"
 
-#: ../aisleriot/window.c:2633 ../glines/glines.c:1905
+#: ../aisleriot/window.c:2599 ../glines/glines.c:1866
 #: ../gnobots2/statusbar.c:67 ../quadrapassel/scoreframe.cpp:47
-#: ../gnomine/gnomine.c:453
+#: ../gnomine/gnomine.c:443
 msgid "Score:"
 msgstr "å¾?å??ï¼?"
 
-#: ../aisleriot/window.c:2645 ../gnotravex/gnotravex.c:1384
-#: ../mahjongg/mahjongg.c:1465
+#: ../aisleriot/window.c:2611 ../gnotravex/gnotravex.c:1436
+#: ../mahjongg/mahjongg.c:1418
 msgid "Time:"
 msgstr "æ??é??ï¼?"
 
-#: ../aisleriot/window.c:3011
+#: ../aisleriot/window.c:2956
 #, c-format
 msgid "Cannot start the game â??%sâ??"
 msgstr "ä¸?è?½å??å??é??æ?²ã??%sã??"
@@ -2512,17 +2513,16 @@ msgstr "交æ??é¡?è?²"
 #: ../aisleriot/rules/giant.scm.h:2
 #, fuzzy
 msgid "Deal a row"
-msgstr "è®?å?ºæ?´å??"
+msgstr "å??ä¸?移å??"
 
 #: ../aisleriot/rules/giant.scm.h:3
 #, fuzzy
 msgid "Deals left: ~a"
-msgstr "å?©é¤?ç??æ?¸ï¼?"
+msgstr "�左��"
 
 #: ../aisleriot/rules/giant.scm.h:4
-#, fuzzy
 msgid "Same suit"
-msgstr "ä¸?æ??ç??è?±è?²"
+msgstr "å??樣ç??è?±è?²"
 
 #: ../aisleriot/rules/giant.scm.h:5
 #, fuzzy
@@ -2538,7 +2538,6 @@ msgid "Try moving card piles around"
 msgstr "å??試移å??ä¸?äº?ç??"
 
 #: ../aisleriot/rules/giant.scm.h:8
-#, fuzzy
 msgid "an empty foundation place"
 msgstr "ç?®æ¨?ç??å ?空ä½?"
 
@@ -2925,10 +2924,18 @@ msgid "The height of the window"
 msgstr "���度"
 
 #: ../glchess/data/glchess.schemas.in.h:24
+msgid "The piece style to use"
+msgstr "è¦?使ç?¨ç??æ£?å­?樣å¼?"
+
+#: ../glchess/data/glchess.schemas.in.h:25
+msgid "The piece style to use. Can be one of: 'simple' or 'fancy'"
+msgstr "è¦?使ç?¨ç??æ£?å­?樣å¼?ã??å?¯ä»¥ä½¿ç?¨ï¼?ã??simpleã??(ç°¡æ??)æ??ã??fancyã??(精緻)"
+
+#: ../glchess/data/glchess.schemas.in.h:26
 msgid "The piece to promote pawns to"
 msgstr "士å?µç??å??è®?"
 
-#: ../glchess/data/glchess.schemas.in.h:25
+#: ../glchess/data/glchess.schemas.in.h:27
 msgid ""
 "The piece to promote to when a human player moves a pawn to the far rank. "
 "Can be one of: 'queen', 'knight', 'rook', 'bishop'."
@@ -2936,7 +2943,7 @@ msgstr ""
 "ç?¶äººé¡?é??æ?²è??移å??士å?µå?°å°?æ?¹åº?ç·?æ??ï¼?å°±å?¯ä»¥æ??å??å?¶é??ç´?ï¼?å?¯ä»¥æ??ç?ºã??ç??å??ã??ã??ã??é¨?"
 "士ã??ã??ã??å??å ¡ã??ã??ã??主æ??ã??ä¹?ä¸?ã??"
 
-#: ../glchess/data/glchess.schemas.in.h:26
+#: ../glchess/data/glchess.schemas.in.h:28
 msgid ""
 "The side of the board that is in the foreground, either 'white', 'black', "
 "'current' (the current player), 'human' (the side of the current human "
@@ -2947,11 +2954,11 @@ msgstr ""
 "ã??humanã??ï¼?ç?®å??ç?ºäººé¡?ç?©å®¶ç??ä¸?æ?¹ï¼?æ??ã??facetofaceã??ï¼?é?©å??ç?©å®¶å?¨è?¢å¹?ç??å?©ç«¯ï¼?ä¾?å¦?"
 "使ç?¨æ??ä¸?å??è£?ç½®æ??ï¼?"
 
-#: ../glchess/data/glchess.schemas.in.h:27
+#: ../glchess/data/glchess.schemas.in.h:29
 msgid "The width of the main window in pixels."
 msgstr "主è¦?çª?ç??寬度 (å??ç´ )ã??"
 
-#: ../glchess/data/glchess.schemas.in.h:28
+#: ../glchess/data/glchess.schemas.in.h:30
 msgid "The width of the window"
 msgstr "��寬度"
 
@@ -2964,87 +2971,80 @@ msgstr "3_D å??é??象æ£?檢è¦?"
 msgid "Claim _Draw"
 msgstr "宣å??å¹³æ??(_D)"
 
-#: ../glchess/data/glchess.ui.h:3
-msgid "Load a saved game"
-msgstr "è¼?å?¥ä¸?å±?å·²å?²å­?ç??æ£?å±?"
-
 #. The title of the log dialaog
-#: ../glchess/data/glchess.ui.h:5
+#: ../glchess/data/glchess.ui.h:4
 msgid "Logs"
 msgstr "ç´?é??æª?"
 
 #. The Network Game toolbar button
-#: ../glchess/data/glchess.ui.h:7 ../libgames-support/games-stock.c:337
+#: ../glchess/data/glchess.ui.h:6 ../libgames-support/games-stock.c:303
 msgid "Network _Game"
 msgstr "網路é??æ?²(_G)"
 
 #. The New Game toolbar button
 #. Title of the new game dialog
-#: ../glchess/data/glchess.ui.h:9 ../glchess/data/new_game.ui.h:13
+#: ../glchess/data/glchess.ui.h:8 ../glchess/data/new_game.ui.h:13
 #: ../libgames-support/games-scores-dialog.c:437
 msgid "New Game"
 msgstr "é??æ?°å±?"
 
 #. The tooltip for the Resign toolbar button
-#: ../glchess/data/glchess.ui.h:11
+#: ../glchess/data/glchess.ui.h:10
 msgid "Resign"
 msgstr "�輸"
 
-#: ../glchess/data/glchess.ui.h:12
+#: ../glchess/data/glchess.ui.h:11
 msgid "Rewind to the game start"
 msgstr "å??æ?²å?°é??æ?²å??é??å§?ç??æ??å??"
 
-#: ../glchess/data/glchess.ui.h:13
-msgid "Save the current game"
-msgstr "å?²å­?é??å±?æ£?"
-
-#: ../glchess/data/glchess.ui.h:14
+#: ../glchess/data/glchess.ui.h:12
 msgid "Show _Logs"
 msgstr "顯示ç´?é??(_L)"
 
-#: ../glchess/data/glchess.ui.h:15
+#: ../glchess/data/glchess.ui.h:13
 msgid "Show the current move"
 msgstr "顯示é??ä¸?æ­¥"
 
-#: ../glchess/data/glchess.ui.h:16
+#: ../glchess/data/glchess.ui.h:14
 msgid "Show the next move"
 msgstr "顯示��步"
 
-#: ../glchess/data/glchess.ui.h:17
+#: ../glchess/data/glchess.ui.h:15
 msgid "Show the previous move"
 msgstr "顯示��步"
 
-#: ../glchess/data/glchess.ui.h:19 ../libgames-support/games-stock.c:51
+#: ../glchess/data/glchess.ui.h:17 ../libgames-support/games-stock.c:51
 msgid "Start a new multiplayer network game"
 msgstr "é??å§?ä¸?å??æ?°ç??å¤?人網路é??æ?²"
 
 #. Message displayed in log window when no logs are present
-#: ../glchess/data/glchess.ui.h:21
+#: ../glchess/data/glchess.ui.h:19
 msgid "There are no active logs."
 msgstr "æ²?æ??使ç?¨ä¸­ç??ç´?é??ã??"
 
-#: ../glchess/data/glchess.ui.h:22
+#: ../glchess/data/glchess.ui.h:20
 msgid "Undo Move"
 msgstr "å??æ??"
 
-#: ../glchess/data/glchess.ui.h:23 ../gnome-sudoku/src/lib/main.py:273
-#: ../libgames-support/games-stock.c:321
+#: ../glchess/data/glchess.ui.h:21 ../gnome-sudoku/src/lib/main.py:255
+#: ../libgames-support/games-stock.c:287
 msgid "_Contents"
 msgstr "�容(_C)"
 
-#: ../glchess/data/glchess.ui.h:26
+#: ../glchess/data/glchess.ui.h:24
 msgid "_Resign"
 msgstr "�輸(_R)"
 
-#: ../glchess/data/glchess.ui.h:27 ../glines/glines.c:1692
-#: ../gnect/src/main.c:1275 ../gnibbles/main.c:740 ../gnobots2/menu.c:71
-#: ../quadrapassel/tetris.cpp:108 ../gnomine/gnomine.c:835
+#: ../glchess/data/glchess.ui.h:25 ../glines/glines.c:1663
+#: ../gnect/src/main.c:1245 ../gnibbles/main.c:694 ../gnobots2/menu.c:69
+#: ../quadrapassel/tetris.cpp:109 ../gnome-sudoku/src/lib/main.py:245
+#: ../gnomine/gnomine.c:774 ../gnotravex/gnotravex.c:1754
 #: ../gtali/gyahtzee.c:706 ../iagno/gnothello.c:829
-#: ../mahjongg/mahjongg.c:1243
+#: ../mahjongg/mahjongg.c:1209
 msgid "_Settings"
 msgstr "設��(_S)"
 
-#: ../glchess/data/glchess.ui.h:28 ../libgames-support/games-stock.c:333
+#: ../glchess/data/glchess.ui.h:26 ../libgames-support/games-stock.c:299
 msgid "_Undo Move"
 msgstr "å??æ??(_U)"
 
@@ -3206,61 +3206,71 @@ msgstr "æ£?ç?¤æ?¹å??ï¼?"
 msgid "Move Format:"
 msgstr "��格��"
 
+#. Preferences Dialog: Label before piece style combo box
+#: ../glchess/data/preferences.ui.h:8
+msgid "Piece Style:"
+msgstr "��樣��"
+
 #. Title for preferences dialog
-#: ../glchess/data/preferences.ui.h:8 ../glines/glines.c:197
-#: ../mahjongg/mahjongg.c:140
+#: ../glchess/data/preferences.ui.h:10 ../glines/glines.c:197
+#: ../mahjongg/mahjongg.c:141
 msgid "Preferences"
 msgstr "å??好設å®?"
 
 #. Preferences Dialog: Label before promotion type combo box
-#: ../glchess/data/preferences.ui.h:10
+#: ../glchess/data/preferences.ui.h:12
 msgid "Promotion Type:"
 msgstr "å??è®?é¡?å??ï¼?"
 
 #. Preferences Dialog: Check box for selecting if history browser is visible
-#: ../glchess/data/preferences.ui.h:12
+#: ../glchess/data/preferences.ui.h:14
 msgid "Show _History"
 msgstr "顯示ç´?é??(_H)"
 
 #. Preferences Dialog: Check box for selecting if toolbar is visible
-#: ../glchess/data/preferences.ui.h:14 ../gnome-sudoku/src/lib/main.py:293
+#: ../glchess/data/preferences.ui.h:16 ../gnome-sudoku/src/lib/main.py:275
 msgid "Show _Toolbar"
 msgstr "顯示工å?·å??(_T)"
 
-#: ../glchess/data/preferences.ui.h:15
+#: ../glchess/data/preferences.ui.h:17
 msgid "Show or hide numbering on the chess board"
 msgstr "顯示æ??é?±è??å??é??象æ£?ç?¤ç??å??æ¨?å??稱"
 
-#: ../glchess/data/preferences.ui.h:16
+#: ../glchess/data/preferences.ui.h:18
 msgid "Show or hide the game history panel"
 msgstr "顯示æ??é?±è??é??æ?²ç´?é??é?¢æ?¿"
 
-#: ../glchess/data/preferences.ui.h:18
+#: ../glchess/data/preferences.ui.h:20
 msgid "Shows hints during chess games"
 msgstr "å?¨æ£?é¡?é??æ?²ä¸­é¡¯ç¤ºæ??示"
 
-#: ../glchess/data/preferences.ui.h:19
+#: ../glchess/data/preferences.ui.h:21
 msgid "Smooth edges of the 3D elements (anti-alias)"
 msgstr "3D å??ç´ ç??å¹³æ»?é??ç·£ï¼?å??é?¸é½?ï¼?"
 
-#: ../glchess/data/preferences.ui.h:20
+#: ../glchess/data/preferences.ui.h:22
 msgid ""
 "View the chess board by default in 2D mode, or optionally in 3D mode using "
 "OpenGL."
 msgstr "é ?設以 2D 模å¼?檢è¦?æ£?ç?¤ï¼?æ??è??å?¯é?¸æ??使ç?¨ OpenGL ç?? 3D 模å¼?ã??"
 
+#. Preferences Dialog: Title of appearance options tab
+#: ../glchess/data/preferences.ui.h:24
+msgid "_Appearance"
+msgstr "��(_A)"
+
 #. Preferences Dialog: Check box for selecting if board numbering is visible
-#: ../glchess/data/preferences.ui.h:22
+#: ../glchess/data/preferences.ui.h:26
 msgid "_Board Numbering"
 msgstr "æ£?ç?¤å??æ¨?(_B)"
 
 #. Preferences Dialog: Check box for selecting if move hints are visible
-#: ../glchess/data/preferences.ui.h:26
+#: ../glchess/data/preferences.ui.h:30
 msgid "_Move Hints"
 msgstr "èµ°æ³?æ??示(_M)"
 
 #. Preferences Dialog: Check box for selecting if the 3D view is smoothed (anti-aliased)
-#: ../glchess/data/preferences.ui.h:28
+#: ../glchess/data/preferences.ui.h:32
 msgid "_Smooth Display"
 msgstr "平�顯示(_S)"
 
@@ -3270,7 +3280,7 @@ msgid "Save Chess Game"
 msgstr "å?²å­?é??å±?æ£?"
 
 #. Translators: Window title when not playing a game
-#: ../glchess/glchess.desktop.in.in.h:1 ../glchess/src/lib/gtkui/gtkui.py:332
+#: ../glchess/glchess.desktop.in.in.h:1 ../glchess/src/lib/gtkui/gtkui.py:299
 msgid "Chess"
 msgstr "å??é??象æ£?"
 
@@ -3278,11 +3288,11 @@ msgstr "å??é??象æ£?"
 msgid "Play the classic two-player boardgame of chess"
 msgstr "ç?©å?³çµ±ç??å?©äººå?¶å??é??象æ£?"
 
-#: ../glchess/src/glchess.in.in:50
+#: ../glchess/src/glchess.in.in:51
 msgid "Chess incorrectly installed"
 msgstr "å??é??象æ£?å®?è£?é?¯èª¤"
 
-#: ../glchess/src/glchess.in.in:52
+#: ../glchess/src/glchess.in.in:53
 msgid ""
 "Chess is not able to start because required application files are not "
 "installed. If you are currently upgrading your system please wait until the "
@@ -3292,90 +3302,90 @@ msgstr ""
 "å®?æ??ç?ºæ­¢ã??"
 
 #. Translators: Time Combo: There is no time limit
-#: ../glchess/src/lib/gtkui/dialogs.py:125
+#: ../glchess/src/lib/gtkui/dialogs.py:135
 msgid "Unlimited"
 msgstr "ç?¡é??"
 
 #. Translators: Time Combo: Game will last one minute
-#: ../glchess/src/lib/gtkui/dialogs.py:127
+#: ../glchess/src/lib/gtkui/dialogs.py:137
 msgid "One minute"
 msgstr "1 å??é??"
 
 #. Translators: Time Combo: Game will last five minutes
-#: ../glchess/src/lib/gtkui/dialogs.py:129
+#: ../glchess/src/lib/gtkui/dialogs.py:139
 msgid "Five minutes"
 msgstr "5 å??é??"
 
 #. Translators: Time Combo: Game will last 30 minutes
-#: ../glchess/src/lib/gtkui/dialogs.py:131
+#: ../glchess/src/lib/gtkui/dialogs.py:141
 msgid "30 minutes"
 msgstr "30 å??é??"
 
 #. Translators: Time Combo: Game will last one hour
-#: ../glchess/src/lib/gtkui/dialogs.py:133
+#: ../glchess/src/lib/gtkui/dialogs.py:143
 msgid "One hour"
 msgstr "1 å°?æ??"
 
 #. Translators: Time Combo: User will configure game duration
 #. Translators: Add Network Profile Dialog: Use a custom server
-#: ../glchess/src/lib/gtkui/dialogs.py:135
+#: ../glchess/src/lib/gtkui/dialogs.py:145
 #: ../glchess/src/lib/gtkui/network.py:30
 msgid "Custom"
 msgstr "��"
 
 #. Translators: Custom Time Combo: User specifying number of seconds for game duration
-#: ../glchess/src/lib/gtkui/dialogs.py:156
+#: ../glchess/src/lib/gtkui/dialogs.py:166
 msgid "seconds"
 msgstr "�"
 
 #. Translators: Custom Time Combo: User specifying number of minutes for game duration
-#: ../glchess/src/lib/gtkui/dialogs.py:158
+#: ../glchess/src/lib/gtkui/dialogs.py:168
 msgid "minutes"
 msgstr "å??é??"
 
 #. Translators: Custom Time Combo: User specifying number of hours for game duration
-#: ../glchess/src/lib/gtkui/dialogs.py:160
+#: ../glchess/src/lib/gtkui/dialogs.py:170
 msgid "hours"
 msgstr "å°?æ??"
 
 #. Translators: AI Difficulty Combo: AI set to easy difficulty
-#: ../glchess/src/lib/gtkui/dialogs.py:178
-#: ../gnome-sudoku/src/lib/sudoku.py:516
+#: ../glchess/src/lib/gtkui/dialogs.py:188
+#: ../gnome-sudoku/src/lib/sudoku.py:690
 msgid "Easy"
 msgstr "容æ??"
 
 #. Translators: AI Difficulty Combo: AI set to normal diffuculty
-#: ../glchess/src/lib/gtkui/dialogs.py:180
+#: ../glchess/src/lib/gtkui/dialogs.py:190 ../swell-foop/src/Score.js:145
 msgid "Normal"
 msgstr "��"
 
 #. Translators: AI Difficulty Combo: AI set to hard diffuculty
-#: ../glchess/src/lib/gtkui/dialogs.py:182
-#: ../gnome-sudoku/src/lib/sudoku.py:514
+#: ../glchess/src/lib/gtkui/dialogs.py:192
+#: ../gnome-sudoku/src/lib/sudoku.py:688
 msgid "Hard"
 msgstr "å?°é?£"
 
 #. Translators: Error displayed when unable to load a game due to
 #. the require game engine not being available. %s is replaced with
 #. the name of the missing engine.
-#: ../glchess/src/lib/gtkui/dialogs.py:247
+#: ../glchess/src/lib/gtkui/dialogs.py:257
 #, python-format
 msgid "Unable to find %s engine"
 msgstr "æ?¾ä¸?å?° %s å¼?æ??"
 
 #. Translators: New Game Dialog: Title of the dialog when continuing a loaded game
-#: ../glchess/src/lib/gtkui/dialogs.py:259
+#: ../glchess/src/lib/gtkui/dialogs.py:269
 #, python-format
 msgid "Configure loaded game (%i moves)"
 msgstr "設å®?è¼?å?¥ç??é??æ?²ï¼?%i æ­¥ï¼?"
 
 #. Translators: New Game Dialog: Title of error box when loaded game had AI engines missing
-#: ../glchess/src/lib/gtkui/dialogs.py:264
+#: ../glchess/src/lib/gtkui/dialogs.py:274
 msgid "Game settings changed"
 msgstr "é??æ?²è¨­å®?å?¼å·²è®?æ?´"
 
 #. Translators: Default name for a new game. %(white) and %(black) are substituted for the names of the white and black players.
-#: ../glchess/src/lib/gtkui/dialogs.py:327
+#: ../glchess/src/lib/gtkui/dialogs.py:337
 #, python-format
 msgid "%(white)s versus %(black)s"
 msgstr "%(white)s å°? %(black)s"
@@ -3383,163 +3393,173 @@ msgstr "%(white)s å°? %(black)s"
 #. Translators: Default name for the white player
 #. Translators: GGZ seat is occupied by the white player
 #. Translators: Name of white player in a default game
-#: ../glchess/src/lib/gtkui/dialogs.py:351
-#: ../glchess/src/lib/gtkui/network.py:360
-#: ../glchess/src/lib/gtkui/network.py:537 ../glchess/src/lib/main.py:687
+#: ../glchess/src/lib/gtkui/dialogs.py:361
+#: ../glchess/src/lib/gtkui/network.py:374
+#: ../glchess/src/lib/gtkui/network.py:551 ../glchess/src/lib/main.py:687
 msgid "White"
 msgstr "��"
 
 #. Translators: Default name for the black player
 #. Translators: GGZ seat is occupied by the black player
 #. Translators: Name of black player in a default game
-#: ../glchess/src/lib/gtkui/dialogs.py:358
-#: ../glchess/src/lib/gtkui/network.py:363
-#: ../glchess/src/lib/gtkui/network.py:543 ../glchess/src/lib/main.py:689
+#: ../glchess/src/lib/gtkui/dialogs.py:368
+#: ../glchess/src/lib/gtkui/network.py:377
+#: ../glchess/src/lib/gtkui/network.py:557 ../glchess/src/lib/main.py:689
 msgid "Black"
 msgstr "é»?æ?¹"
 
 #. Translators: Load Game Dialog: Name of filter to show only PGN files
 #. Translators: Save Game Dialog: Name of filter to show only PGN files
-#: ../glchess/src/lib/gtkui/dialogs.py:443
-#: ../glchess/src/lib/gtkui/dialogs.py:518
+#: ../glchess/src/lib/gtkui/dialogs.py:463
+#: ../glchess/src/lib/gtkui/dialogs.py:550
 msgid "PGN files"
 msgstr "PGN ��"
 
 #. Translators: Load Game Dialog: Name of filter to show all files
 #. Translators: Save Game Dialog: Name of filter to show all files
-#: ../glchess/src/lib/gtkui/dialogs.py:449
-#: ../glchess/src/lib/gtkui/dialogs.py:524
+#: ../glchess/src/lib/gtkui/dialogs.py:469
+#: ../glchess/src/lib/gtkui/dialogs.py:556
 msgid "All files"
 msgstr "æ??æ??æª?æ¡?"
 
 #. Translators: Load Game Dialog: Message displayed when no file is selected
-#: ../glchess/src/lib/gtkui/dialogs.py:471
+#: ../glchess/src/lib/gtkui/dialogs.py:491
 msgid "Please select a file to load"
 msgstr "è«?é?¸æ??è¦?è¼?å?¥ç??æª?æ¡?"
 
 #. Translators: Title of error box when unable to load game
-#: ../glchess/src/lib/gtkui/dialogs.py:479
+#: ../glchess/src/lib/gtkui/dialogs.py:499
 msgid "Unabled to load game"
 msgstr "ç?¡æ³?è¼?å?¥é??æ?²"
 
 #. Translators: Save Game Dialog: Error displayed when no file name entered
-#: ../glchess/src/lib/gtkui/dialogs.py:552
+#: ../glchess/src/lib/gtkui/dialogs.py:585
 msgid "Please enter a file name"
 msgstr "è«?輸å?¥æª?æ¡?å??稱ã??"
 
 #. Translators: Save Game Dialog: Error title when unable to save game
-#: ../glchess/src/lib/gtkui/dialogs.py:565
+#: ../glchess/src/lib/gtkui/dialogs.py:598
 msgid "Unabled to save game"
 msgstr "ç?¡æ³?å?²å­?é??æ?²"
 
 #. Translators: Move Format Combo: Moves shown in human descriptive notation
 #. Translators: Player Type Combo: Player is human controlled
-#: ../glchess/src/lib/gtkui/dialogs.py:592
-#: ../glchess/src/lib/gtkui/gtkui.py:205 ../gnect/src/prefs.c:250
+#: ../glchess/src/lib/gtkui/dialogs.py:625
+#: ../glchess/src/lib/gtkui/gtkui.py:196 ../gnect/src/prefs.c:250
 #: ../gtali/gyahtzee.c:993 ../gtali/yahtzee.c:69 ../iagno/properties.c:452
 #: ../iagno/properties.c:493
 msgid "Human"
 msgstr "人�"
 
 #. Translators: Move Format Combo: Moves shown in standard algebraic notation (SAN)
-#: ../glchess/src/lib/gtkui/dialogs.py:594
+#: ../glchess/src/lib/gtkui/dialogs.py:627
 msgid "Standard Algebraic"
 msgstr "��代�"
 
 #. Translators: Move Format Combo: Moves shown in standard figurine algebraic notation (FAN)
-#: ../glchess/src/lib/gtkui/dialogs.py:596
+#: ../glchess/src/lib/gtkui/dialogs.py:629
 msgid "Figurine"
 msgstr "å??å??"
 
 #. Translators: Move Format Combo: Moves shown in long algebraic notation (LAN)
-#: ../glchess/src/lib/gtkui/dialogs.py:598
+#: ../glchess/src/lib/gtkui/dialogs.py:631
 msgid "Long Algebraic"
 msgstr "�代����"
 
 #. Translators: Board Side Combo: Camera will face white player's side
-#: ../glchess/src/lib/gtkui/dialogs.py:608
+#: ../glchess/src/lib/gtkui/dialogs.py:641
 msgid "White Side"
 msgstr "��"
 
 #. Translators: Board Side Combo: Camera will face black player's side
-#: ../glchess/src/lib/gtkui/dialogs.py:610
+#: ../glchess/src/lib/gtkui/dialogs.py:643
 msgid "Black Side"
 msgstr "é»?æ?¹"
 
 #. Translators: Board Side Combo: Camera will face human player's side
-#: ../glchess/src/lib/gtkui/dialogs.py:612
+#: ../glchess/src/lib/gtkui/dialogs.py:645
 msgid "Human Side"
 msgstr "人��家�"
 
 #. Translators: Board Side Combo: Camera will face current player's side
-#: ../glchess/src/lib/gtkui/dialogs.py:614
+#: ../glchess/src/lib/gtkui/dialogs.py:647
 msgid "Current Player"
 msgstr "ç?®å??ç?©å®¶"
 
 #. Translators: Board Side Combo: Board will be drawn suitable for players on each side of screen, e.g. handhelds
-#: ../glchess/src/lib/gtkui/dialogs.py:616
+#: ../glchess/src/lib/gtkui/dialogs.py:649
 msgid "Face to Face"
 msgstr "���"
 
 #. Translators: Promotion Combo: Promote to a queen
-#: ../glchess/src/lib/gtkui/dialogs.py:626
+#: ../glchess/src/lib/gtkui/dialogs.py:659
 msgctxt "chess-piece"
 msgid "Queen"
 msgstr "ç??å??"
 
 #. Translators: Promotion Combo: Promote to a knight
-#: ../glchess/src/lib/gtkui/dialogs.py:628
+#: ../glchess/src/lib/gtkui/dialogs.py:661
 msgctxt "chess-piece"
 msgid "Knight"
 msgstr "�士"
 
 #. Translators: Promotion Combo: Promote to a rook
-#: ../glchess/src/lib/gtkui/dialogs.py:630
+#: ../glchess/src/lib/gtkui/dialogs.py:663
 msgctxt "chess-piece"
 msgid "Rook"
 msgstr "å??å ¡"
 
 #. Translators: Promotion Combo: Promote to a bishop
-#: ../glchess/src/lib/gtkui/dialogs.py:632
+#: ../glchess/src/lib/gtkui/dialogs.py:665
 msgctxt "chess-piece"
 msgid "Bishop"
 msgstr "主æ??"
 
+#. Translators: a simple piece set will be used in 2d mode
+#: ../glchess/src/lib/gtkui/dialogs.py:675
+msgid "Simple"
+msgstr "ç°¡æ??"
+
+#. Translators: a fancy piece set will be used in 2d mode
+#: ../glchess/src/lib/gtkui/dialogs.py:677
+msgid "Fancy"
+msgstr "精緻"
+
 #. Translators: Window title when playing a game that needs saving
-#: ../glchess/src/lib/gtkui/gtkui.py:326
+#: ../glchess/src/lib/gtkui/gtkui.py:293
 #, python-format
 msgid "Chess - *%(game_name)s"
 msgstr "å??é??象æ£? - *%(game_name)s"
 
 #. Translators: Window title when playing a game that is saved
-#: ../glchess/src/lib/gtkui/gtkui.py:329
+#: ../glchess/src/lib/gtkui/gtkui.py:296
 #, python-format
 msgid "Chess - %(game_name)s"
 msgstr "å??é??象æ£? - %(game_name)s"
 
 #. Translators: Game Timer Label: Indicates that game has no time limit
-#: ../glchess/src/lib/gtkui/gtkui.py:344
+#: ../glchess/src/lib/gtkui/gtkui.py:311
 msgid "â??"
 msgstr "â??"
 
 #. Translators: Save Game Dialog: Notice that game needs saving
-#: ../glchess/src/lib/gtkui/gtkui.py:417
+#: ../glchess/src/lib/gtkui/gtkui.py:384
 msgid "If you don't save the changes to this game will be permanently lost"
 msgstr "å¦?æ??ä¸?å°?å°?é??å??é??æ?²ç??è®?æ?´å?²å­?ï¼?æ??æ??è®?æ?´é?½æ??æ°¸ä¹?æ¶?失ã??"
 
 #. Translators: Save Game Dialog: Discard game button
-#: ../glchess/src/lib/gtkui/gtkui.py:419
+#: ../glchess/src/lib/gtkui/gtkui.py:386
 msgid "Close _without saving"
 msgstr "é??é??ä½?ä¸?å?²å­?(_W)"
 
 #. Translators: No 3D Dialog: Title
-#: ../glchess/src/lib/gtkui/gtkui.py:534
+#: ../glchess/src/lib/gtkui/gtkui.py:501
 msgid "Unable to enable 3D mode"
 msgstr "ç?¡æ³?å??ç?¨ 3D 模å¼?"
 
 #. Translators: No 3D Dialog: Notification to user that they do not have libraries required to enable 3D.
 #. %(error)s will be replaced with a list of reasons why 3D is not available.
-#: ../glchess/src/lib/gtkui/gtkui.py:538
+#: ../glchess/src/lib/gtkui/gtkui.py:505
 #, python-format
 msgid ""
 "You are unable to play in 3D mode due to the following problems:\n"
@@ -3554,12 +3574,12 @@ msgstr ""
 "è«?é?£ç·?æ?¨ç??系統管ç??è??以解決é??äº?å??é¡?ï¼?å?¨é?£ä¹?å??æ?¨å?¯ä»¥å?¨ 2D 模å¼?ä¸?ç?©è¥¿æ´?æ£?ã??"
 
 #. Translators: Draw Dialog: Title
-#: ../glchess/src/lib/gtkui/gtkui.py:800
+#: ../glchess/src/lib/gtkui/gtkui.py:770
 msgid "Unable to claim draw"
 msgstr "ç?¡æ³?宣å??å¹³æ??"
 
 #. Translators: Draw Dialog: Notify user why they cannot claim draw
-#: ../glchess/src/lib/gtkui/gtkui.py:802
+#: ../glchess/src/lib/gtkui/gtkui.py:772
 msgid ""
 "You may claim a draw when:\n"
 "a) The board has been in the same state three times (Three fold repetition)\n"
@@ -3572,7 +3592,7 @@ msgstr ""
 
 #. TODO: This should be a pop-up dialog
 #. FIXME: This should create a pop-up dialog
-#: ../glchess/src/lib/gtkui/gtkui.py:824 ../gnome-sudoku/src/lib/main.py:730
+#: ../glchess/src/lib/gtkui/gtkui.py:794 ../gnome-sudoku/src/lib/main.py:701
 #, python-format
 msgid "Unable to display help: %s"
 msgstr "ç?¡æ³?顯示說æ??æ??件ï¼?%s"
@@ -3593,515 +3613,509 @@ msgid "OpenGL libraries do not support required display mode"
 msgstr "OpenGL ç¨?å¼?庫ä¸?æ?¯æ?´è¦?æ±?ç??顯示模å¼?"
 
 #. Translators: Move History Combo: Go to the start of the game
-#: ../glchess/src/lib/gtkui/chessview.py:270
-#: ../glchess/src/lib/gtkui/chessview.py:303
+#: ../glchess/src/lib/gtkui/chessview.py:279
 msgid "Game Start"
 msgstr "æ£?å±?é??å§?"
 
-#. Translators: Comment text when move has no comment
-#: ../glchess/src/lib/gtkui/chessview.py:308
-msgid "No comment"
-msgstr "æ²?æ??è©?è«?"
-
 #. Translators: Human Move String: Description of the white player making a long castle
-#: ../glchess/src/lib/gtkui/chessview.py:435
+#: ../glchess/src/lib/gtkui/chessview.py:413
 msgid "White castles long"
 msgstr "ç?½æ?¹é?·æ??ä½?"
 
 #. Translators: Human Move String: Description of the black player making a long castle
-#: ../glchess/src/lib/gtkui/chessview.py:437
+#: ../glchess/src/lib/gtkui/chessview.py:415
 msgid "Black castles long"
 msgstr "é»?æ?¹é?·æ??ä½?"
 
 #. Translators: Human Move String: Description of the white player making a short castle
-#: ../glchess/src/lib/gtkui/chessview.py:440
+#: ../glchess/src/lib/gtkui/chessview.py:418
 msgid "White castles short"
 msgstr "ç?½æ?¹ç?­æ??ä½?"
 
 #. Translators: Human Move String: Description of the black player making a short castle
-#: ../glchess/src/lib/gtkui/chessview.py:442
+#: ../glchess/src/lib/gtkui/chessview.py:420
 msgid "Black castles short"
 msgstr "é»?æ?¹ç?­æ??ä½?"
 
 #. Note there are no move formats for pieces taking kings and this is not allowed in Chess rules
 #. Translators: Human Move String: Description of a white pawn moving from %(start)s to %(end)s, e.g. 'c2 to c4'
-#: ../glchess/src/lib/gtkui/chessview.py:446
+#: ../glchess/src/lib/gtkui/chessview.py:424
 #, python-format
 msgid "White pawn moves from %(start)s to %(end)s"
 msgstr "ç?½æ?¹å£«å?µå¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:447
+#: ../glchess/src/lib/gtkui/chessview.py:425
 #, python-format
 msgid "White pawn at %(start)s takes the black pawn at %(end)s"
 msgstr "ç?½æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:448
+#: ../glchess/src/lib/gtkui/chessview.py:426
 #, python-format
 msgid "White pawn at %(start)s takes the black rook at %(end)s"
 msgstr "ç?½æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:449
+#: ../glchess/src/lib/gtkui/chessview.py:427
 #, python-format
 msgid "White pawn at %(start)s takes the black knight at %(end)s"
 msgstr "ç?½æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:450
+#: ../glchess/src/lib/gtkui/chessview.py:428
 #, python-format
 msgid "White pawn at %(start)s takes the black bishop at %(end)s"
 msgstr "ç?½æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:451
+#: ../glchess/src/lib/gtkui/chessview.py:429
 #, python-format
 msgid "White pawn at %(start)s takes the black queen at %(end)s"
 msgstr "ç?½æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a white rook moving from %(start)s to %(end)s, e.g. 'a1 to a5'
-#: ../glchess/src/lib/gtkui/chessview.py:453
+#: ../glchess/src/lib/gtkui/chessview.py:431
 #, python-format
 msgid "White rook moves from %(start)s to %(end)s"
 msgstr "ç?½æ?¹å??å ¡å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:454
+#: ../glchess/src/lib/gtkui/chessview.py:432
 #, python-format
 msgid "White rook at %(start)s takes the black pawn at %(end)s"
 msgstr "ç?½æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:455
+#: ../glchess/src/lib/gtkui/chessview.py:433
 #, python-format
 msgid "White rook at %(start)s takes the black rook at %(end)s"
 msgstr "ç?½æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:456
+#: ../glchess/src/lib/gtkui/chessview.py:434
 #, python-format
 msgid "White rook at %(start)s takes the black knight at %(end)s"
 msgstr "ç?½æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:457
+#: ../glchess/src/lib/gtkui/chessview.py:435
 #, python-format
 msgid "White rook at %(start)s takes the black bishop at %(end)s"
 msgstr "ç?½æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:458
+#: ../glchess/src/lib/gtkui/chessview.py:436
 #, python-format
 msgid "White rook at %(start)s takes the black queen at %(end)s"
 msgstr "ç?½æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a white knight moving from %(start)s to %(end)s, e.g. 'b1 to c3'
-#: ../glchess/src/lib/gtkui/chessview.py:460
+#: ../glchess/src/lib/gtkui/chessview.py:438
 #, python-format
 msgid "White knight moves from %(start)s to %(end)s"
 msgstr "ç?½æ?¹é¨?士å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:461
+#: ../glchess/src/lib/gtkui/chessview.py:439
 #, python-format
 msgid "White knight at %(start)s takes the black pawn at %(end)s"
 msgstr "ç?½æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:462
+#: ../glchess/src/lib/gtkui/chessview.py:440
 #, python-format
 msgid "White knight at %(start)s takes the black rook at %(end)s"
 msgstr "ç?½æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:463
+#: ../glchess/src/lib/gtkui/chessview.py:441
 #, python-format
 msgid "White knight at %(start)s takes the black knight at %(end)s"
 msgstr "ç?½æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:464
+#: ../glchess/src/lib/gtkui/chessview.py:442
 #, python-format
 msgid "White knight at %(start)s takes the black bishop at %(end)s"
 msgstr "ç?½æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:465
+#: ../glchess/src/lib/gtkui/chessview.py:443
 #, python-format
 msgid "White knight at %(start)s takes the black queen at %(end)s"
 msgstr "ç?½æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a white bishop moving from %(start)s to %(end)s, e.g. 'f1 to b5'
-#: ../glchess/src/lib/gtkui/chessview.py:467
+#: ../glchess/src/lib/gtkui/chessview.py:445
 #, python-format
 msgid "White bishop moves from %(start)s to %(end)s"
 msgstr "ç?½æ?¹ä¸»æ??å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:468
+#: ../glchess/src/lib/gtkui/chessview.py:446
 #, python-format
 msgid "White bishop at %(start)s takes the black pawn at %(end)s"
 msgstr "ç?½æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:469
+#: ../glchess/src/lib/gtkui/chessview.py:447
 #, python-format
 msgid "White bishop at %(start)s takes the black rook at %(end)s"
 msgstr "ç?½æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:470
+#: ../glchess/src/lib/gtkui/chessview.py:448
 #, python-format
 msgid "White bishop at %(start)s takes the black knight at %(end)s"
 msgstr "ç?½æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:471
+#: ../glchess/src/lib/gtkui/chessview.py:449
 #, python-format
 msgid "White bishop at %(start)s takes the black bishop at %(end)s"
 msgstr "ç?½æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:472
+#: ../glchess/src/lib/gtkui/chessview.py:450
 #, python-format
 msgid "White bishop at %(start)s takes the black queen at %(end)s"
 msgstr "ç?½æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a white queen moving from %(start)s to %(end)s, e.g. 'd1 to d4'
-#: ../glchess/src/lib/gtkui/chessview.py:474
+#: ../glchess/src/lib/gtkui/chessview.py:452
 #, python-format
 msgid "White queen moves from %(start)s to %(end)s"
 msgstr "ç?½æ?¹ç??å??å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:475
+#: ../glchess/src/lib/gtkui/chessview.py:453
 #, python-format
 msgid "White queen at %(start)s takes the black pawn at %(end)s"
 msgstr "ç?½æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:476
+#: ../glchess/src/lib/gtkui/chessview.py:454
 #, python-format
 msgid "White queen at %(start)s takes the black rook at %(end)s"
 msgstr "ç?½æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:477
+#: ../glchess/src/lib/gtkui/chessview.py:455
 #, python-format
 msgid "White queen at %(start)s takes the black knight at %(end)s"
 msgstr "ç?½æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:478
+#: ../glchess/src/lib/gtkui/chessview.py:456
 #, python-format
 msgid "White queen at %(start)s takes the black bishop at %(end)s"
 msgstr "ç?½æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:479
+#: ../glchess/src/lib/gtkui/chessview.py:457
 #, python-format
 msgid "White queen at %(start)s takes the black queen at %(end)s"
 msgstr "ç?½æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a white king moving from %(start)s to %(end)s, e.g. 'e1 to f1'
-#: ../glchess/src/lib/gtkui/chessview.py:481
+#: ../glchess/src/lib/gtkui/chessview.py:459
 #, python-format
 msgid "White king moves from %(start)s to %(end)s"
 msgstr "ç?½æ?¹å??ç??å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:482
+#: ../glchess/src/lib/gtkui/chessview.py:460
 #, python-format
 msgid "White king at %(start)s takes the black pawn at %(end)s"
 msgstr "ç?½æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:483
+#: ../glchess/src/lib/gtkui/chessview.py:461
 #, python-format
 msgid "White king at %(start)s takes the black rook at %(end)s"
 msgstr "ç?½æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:484
+#: ../glchess/src/lib/gtkui/chessview.py:462
 #, python-format
 msgid "White king at %(start)s takes the black knight at %(end)s"
 msgstr "ç?½æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:485
+#: ../glchess/src/lib/gtkui/chessview.py:463
 #, python-format
 msgid "White king at %(start)s takes the black bishop at %(end)s"
 msgstr "ç?½æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:486
+#: ../glchess/src/lib/gtkui/chessview.py:464
 #, python-format
 msgid "White king at %(start)s takes the black queen at %(end)s"
 msgstr "ç?½æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??é»?æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a black pawn moving from %(start)s to %(end)s, e.g. 'c8 to c6'
-#: ../glchess/src/lib/gtkui/chessview.py:488
+#: ../glchess/src/lib/gtkui/chessview.py:466
 #, python-format
 msgid "Black pawn moves from %(start)s to %(end)s"
 msgstr "é»?æ?¹å£«å?µå¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:489
+#: ../glchess/src/lib/gtkui/chessview.py:467
 #, python-format
 msgid "Black pawn at %(start)s takes the white pawn at %(end)s"
 msgstr "é»?æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:490
+#: ../glchess/src/lib/gtkui/chessview.py:468
 #, python-format
 msgid "Black pawn at %(start)s takes the white rook at %(end)s"
 msgstr "é»?æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:491
+#: ../glchess/src/lib/gtkui/chessview.py:469
 #, python-format
 msgid "Black pawn at %(start)s takes the white knight at %(end)s"
 msgstr "é»?æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:492
+#: ../glchess/src/lib/gtkui/chessview.py:470
 #, python-format
 msgid "Black pawn at %(start)s takes the white bishop at %(end)s"
 msgstr "é»?æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:493
+#: ../glchess/src/lib/gtkui/chessview.py:471
 #, python-format
 msgid "Black pawn at %(start)s takes the white queen at %(end)s"
 msgstr "é»?æ?¹å£«å?µå¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a black rook moving from %(start)s to %(end)s, e.g. 'a8 to a4'
-#: ../glchess/src/lib/gtkui/chessview.py:495
+#: ../glchess/src/lib/gtkui/chessview.py:473
 #, python-format
 msgid "Black rook moves from %(start)s to %(end)s"
 msgstr "é»?æ?¹å??å ¡å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:496
+#: ../glchess/src/lib/gtkui/chessview.py:474
 #, python-format
 msgid "Black rook at %(start)s takes the white pawn at %(end)s"
 msgstr "é»?æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:497
+#: ../glchess/src/lib/gtkui/chessview.py:475
 #, python-format
 msgid "Black rook at %(start)s takes the white rook at %(end)s"
 msgstr "é»?æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:498
+#: ../glchess/src/lib/gtkui/chessview.py:476
 #, python-format
 msgid "Black rook at %(start)s takes the white knight at %(end)s"
 msgstr "é»?æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:499
+#: ../glchess/src/lib/gtkui/chessview.py:477
 #, python-format
 msgid "Black rook at %(start)s takes the white bishop at %(end)s"
 msgstr "é»?æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:500
+#: ../glchess/src/lib/gtkui/chessview.py:478
 #, python-format
 msgid "Black rook at %(start)s takes the white queen at %(end)s"
 msgstr "é»?æ?¹å??å ¡å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a black knight moving from %(start)s to %(end)s, e.g. 'b8 to c6'
-#: ../glchess/src/lib/gtkui/chessview.py:502
+#: ../glchess/src/lib/gtkui/chessview.py:480
 #, python-format
 msgid "Black knight moves from %(start)s to %(end)s"
 msgstr "é»?æ?¹é¨?士å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:503
+#: ../glchess/src/lib/gtkui/chessview.py:481
 #, python-format
 msgid "Black knight at %(start)s takes the white pawn at %(end)s"
 msgstr "é»?æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:504
+#: ../glchess/src/lib/gtkui/chessview.py:482
 #, python-format
 msgid "Black knight at %(start)s takes the white rook at %(end)s"
 msgstr "é»?æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:505
+#: ../glchess/src/lib/gtkui/chessview.py:483
 #, python-format
 msgid "Black knight at %(start)s takes the white knight at %(end)s"
 msgstr "é»?æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:506
+#: ../glchess/src/lib/gtkui/chessview.py:484
 #, python-format
 msgid "Black knight at %(start)s takes the white bishop at %(end)s"
 msgstr "é»?æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:507
+#: ../glchess/src/lib/gtkui/chessview.py:485
 #, python-format
 msgid "Black knight at %(start)s takes the white queen at %(end)s"
 msgstr "é»?æ?¹é¨?士å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a black bishop moving from %(start)s to %(end)s, e.g. 'f8 to b3'
-#: ../glchess/src/lib/gtkui/chessview.py:509
+#: ../glchess/src/lib/gtkui/chessview.py:487
 #, python-format
 msgid "Black bishop moves from %(start)s to %(end)s"
 msgstr "é»?æ?¹ä¸»æ??å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:510
+#: ../glchess/src/lib/gtkui/chessview.py:488
 #, python-format
 msgid "Black bishop at %(start)s takes the white pawn at %(end)s"
 msgstr "é»?æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:511
+#: ../glchess/src/lib/gtkui/chessview.py:489
 #, python-format
 msgid "Black bishop at %(start)s takes the white rook at %(end)s"
 msgstr "é»?æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:512
+#: ../glchess/src/lib/gtkui/chessview.py:490
 #, python-format
 msgid "Black bishop at %(start)s takes the white knight at %(end)s"
 msgstr "é»?æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:513
+#: ../glchess/src/lib/gtkui/chessview.py:491
 #, python-format
 msgid "Black bishop at %(start)s takes the white bishop at %(end)s"
 msgstr "é»?æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:514
+#: ../glchess/src/lib/gtkui/chessview.py:492
 #, python-format
 msgid "Black bishop at %(start)s takes the white queen at %(end)s"
 msgstr "é»?æ?¹ä¸»æ??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a black queen moving from %(start)s to %(end)s, e.g. 'd8 to d5'
-#: ../glchess/src/lib/gtkui/chessview.py:516
+#: ../glchess/src/lib/gtkui/chessview.py:494
 #, python-format
 msgid "Black queen moves from %(start)s to %(end)s"
 msgstr "é»?æ?¹ç??å??å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:517
+#: ../glchess/src/lib/gtkui/chessview.py:495
 #, python-format
 msgid "Black queen at %(start)s takes the white pawn at %(end)s"
 msgstr "é»?æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:518
+#: ../glchess/src/lib/gtkui/chessview.py:496
 #, python-format
 msgid "Black queen at %(start)s takes the white rook at %(end)s"
 msgstr "é»?æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:519
+#: ../glchess/src/lib/gtkui/chessview.py:497
 #, python-format
 msgid "Black queen at %(start)s takes the white knight at %(end)s"
 msgstr "é»?æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:520
+#: ../glchess/src/lib/gtkui/chessview.py:498
 #, python-format
 msgid "Black queen at %(start)s takes the white bishop at %(end)s"
 msgstr "é»?æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:521
+#: ../glchess/src/lib/gtkui/chessview.py:499
 #, python-format
 msgid "Black queen at %(start)s takes the white queen at %(end)s"
 msgstr "é»?æ?¹ç??å??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ç??å??"
 
 #. Translators: Human Move String: Description of a black king moving from %(start)s to %(end)s, e.g. 'e8 to f8'
-#: ../glchess/src/lib/gtkui/chessview.py:523
+#: ../glchess/src/lib/gtkui/chessview.py:501
 #, python-format
 msgid "Black king moves from %(start)s to %(end)s"
 msgstr "é»?æ?¹å??ç??å¾? %(start)s 移å??å?° %(end)s"
 
-#: ../glchess/src/lib/gtkui/chessview.py:524
+#: ../glchess/src/lib/gtkui/chessview.py:502
 #, python-format
 msgid "Black king at %(start)s takes the white pawn at %(end)s"
 msgstr "é»?æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å£«å?µ"
 
-#: ../glchess/src/lib/gtkui/chessview.py:525
+#: ../glchess/src/lib/gtkui/chessview.py:503
 #, python-format
 msgid "Black king at %(start)s takes the white rook at %(end)s"
 msgstr "é»?æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹å??å ¡"
 
-#: ../glchess/src/lib/gtkui/chessview.py:526
+#: ../glchess/src/lib/gtkui/chessview.py:504
 #, python-format
 msgid "Black king at %(start)s takes the white knight at %(end)s"
 msgstr "é»?æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹é¨?士"
 
-#: ../glchess/src/lib/gtkui/chessview.py:527
+#: ../glchess/src/lib/gtkui/chessview.py:505
 #, python-format
 msgid "Black king at %(start)s takes the white bishop at %(end)s"
 msgstr "é»?æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ä¸»æ??"
 
-#: ../glchess/src/lib/gtkui/chessview.py:528
+#: ../glchess/src/lib/gtkui/chessview.py:506
 #, python-format
 msgid "Black king at %(start)s takes the white queen at %(end)s"
 msgstr "é»?æ?¹å??ç??å¾? %(start)s å??æ?? %(end)s ç??ç?½æ?¹ç??å??"
 
 #. Translators: Human Move String: White player has made move %(description) and the opponent is in check
-#: ../glchess/src/lib/gtkui/chessview.py:553
+#: ../glchess/src/lib/gtkui/chessview.py:531
 #, python-format
 msgid "%(movenum)2iw. %(description)s (Check)"
 msgstr "%(movenum)2iw. %(description)s (å°?è»?)"
 
 #. Translators: Human Move String: White player has made move %(description) and the opponent is in checkmate
-#: ../glchess/src/lib/gtkui/chessview.py:555
+#: ../glchess/src/lib/gtkui/chessview.py:533
 #, python-format
 msgid "%(movenum)2iw. %(description)s (Checkmate)"
 msgstr "%(movenum)2iw. %(description)s (被�死)"
 
 #. Translators: Human Move String: White player has made move %(description) and the opponent is in stalemate
-#: ../glchess/src/lib/gtkui/chessview.py:557
+#: ../glchess/src/lib/gtkui/chessview.py:535
 #, python-format
 msgid "%(movenum)2iw. %(description)s (Stalemate)"
 msgstr "%(movenum)2iw. %(description)s (ç?¡å­?å?¯å??)"
 
 #. Translators: Human Move String: White player has made move %(description) and the opponent is not in check or mate
-#: ../glchess/src/lib/gtkui/chessview.py:559
+#: ../glchess/src/lib/gtkui/chessview.py:537
 #, python-format
 msgid "%(movenum)2iw. %(description)s"
 msgstr "%(movenum)2iw. %(description)s"
 
 #. Translators: Human Move String: Black player has made move %(description) and the opponent is in check
-#: ../glchess/src/lib/gtkui/chessview.py:561
+#: ../glchess/src/lib/gtkui/chessview.py:539
 #, python-format
 msgid "%(movenum)2ib. %(description)s (Check)"
 msgstr "%(movenum)2ib. %(description)s (å°?è»?)"
 
 #. Translators: Human Move String: Black player has made move %(description) and the opponent is in checkmate
-#: ../glchess/src/lib/gtkui/chessview.py:563
+#: ../glchess/src/lib/gtkui/chessview.py:541
 #, python-format
 msgid "%(movenum)2ib. %(description)s (Checkmate)"
 msgstr "%(movenum)2ib. %(description)s (被�死)"
 
 #. Translators: Human Move String: Black player has made move %(description) and the opponent is in stalemate
-#: ../glchess/src/lib/gtkui/chessview.py:565
+#: ../glchess/src/lib/gtkui/chessview.py:543
 #, python-format
 msgid "%(movenum)2ib. %(description)s (Stalemate)"
 msgstr "%(movenum)2ib. %(description)s (ç?¡å­?å?¯å??)"
 
 #. Translators: Human Move String: Black player has made move %(description) and the opponent is not in check or mate
-#: ../glchess/src/lib/gtkui/chessview.py:567
+#: ../glchess/src/lib/gtkui/chessview.py:545
 #, python-format
 msgid "%(movenum)2ib. %(description)s"
 msgstr "%(movenum)2ib. %(description)s"
 
 #. Translators: Message displayed when a player wins. The %s is substituted with the winning player's name
-#: ../glchess/src/lib/gtkui/chessview.py:598
+#: ../glchess/src/lib/gtkui/chessview.py:576
 #, python-format
 msgid "%s wins"
 msgstr " %s ���"
 
 #. Translators: Message displayed when a game is drawn
-#: ../glchess/src/lib/gtkui/chessview.py:607
+#: ../glchess/src/lib/gtkui/chessview.py:585
 msgid "Game is drawn"
 msgstr "é??æ?²å¹³æ??"
 
 #. Translators: Message displayed when the game ends due to a player being checkmated
-#: ../glchess/src/lib/gtkui/chessview.py:612
+#: ../glchess/src/lib/gtkui/chessview.py:590
 msgid "Opponent is in check and cannot move (checkmate)"
 msgstr "å°?æ??被å°?è»?è??ä¸?ä¸?è?½å??移å??ï¼?被å°?æ­»ï¼?"
 
 #. Translators: Message displayed when the game terminates due to a stalemate
-#: ../glchess/src/lib/gtkui/chessview.py:615
+#: ../glchess/src/lib/gtkui/chessview.py:593
 msgid "Opponent cannot move (stalemate)"
 msgstr "å°?æ??ä¸?è?½å??移å??ï¼?ç?¡å­?å?¯å??ï¼?"
 
 #. Translators: Message displayed when the game is drawn due to the fifty move rule
-#: ../glchess/src/lib/gtkui/chessview.py:618
+#: ../glchess/src/lib/gtkui/chessview.py:596
 msgid "No piece has been taken or pawn moved in the last fifty moves"
-msgstr "å?¨æ??å¾? 50 步中æ²?æ??æ©«å­?被å??æ??æ??士å?µè¢«ç§»å??é??"
+msgstr "å?¨æ??å¾? 50 步中æ²?æ??æ£?å­?被å??æ??æ??士å?µè¢«ç§»å??é??"
 
 #. Translators: Message displayed when the game ends due to one player's clock stopping
-#: ../glchess/src/lib/gtkui/chessview.py:621
+#: ../glchess/src/lib/gtkui/chessview.py:599
 msgid "Opponent has run out of time"
 msgstr "å°?æ??å·²ç?¨ç?¡æ??é??"
 
 #. Translators: Message displayed when the game is drawn due to the three-fold-repitition rule
-#: ../glchess/src/lib/gtkui/chessview.py:624
+#: ../glchess/src/lib/gtkui/chessview.py:602
 msgid "The same board state has occurred three times (three fold repetition)"
 msgstr "å??樣ç??å±?é?¢å·²ç¶?ç?¼ç??ä¸?次ï¼?ä¸?次é??è¤?ï¼?"
 
 #. Translators: Message displayed when the game is drawn due to the insufficient material rule
-#: ../glchess/src/lib/gtkui/chessview.py:627
+#: ../glchess/src/lib/gtkui/chessview.py:605
 msgid "Neither player can cause checkmate (insufficient material)"
 msgstr "æ²?æ??ç?©å®¶å?¯ä»¥é? æ??å°?æ­»å°?æ?¹ç??æ??å½¢ï¼?æ£?ä¸?æ??殺ï¼?"
 
 #. Translators: Message displayed when the game ends due to the black player resigning
-#: ../glchess/src/lib/gtkui/chessview.py:631
+#: ../glchess/src/lib/gtkui/chessview.py:609
 msgid "The black player has resigned"
 msgstr "���家已�輸"
 
 #. Translators: Message displayed when the game ends due to the white player resigning
-#: ../glchess/src/lib/gtkui/chessview.py:634
+#: ../glchess/src/lib/gtkui/chessview.py:612
 msgid "The white player has resigned"
 msgstr "���家已�輸"
 
 #. Translators: Message displayed when a game is abandoned
-#: ../glchess/src/lib/gtkui/chessview.py:639
+#: ../glchess/src/lib/gtkui/chessview.py:617
 msgid "The game has been abandoned"
 msgstr "é??æ?²å·²è¢«æ?¾æ£?"
 
 #. Translators: Message displayed when the game ends due to a player dying
-#: ../glchess/src/lib/gtkui/chessview.py:642
+#: ../glchess/src/lib/gtkui/chessview.py:620
 msgid "One of the players has died"
 msgstr "å?¶ä¸­ä¸?å??ç?©å®¶å·²è¢«å°?æ­»"
 
@@ -4112,60 +4126,60 @@ msgid "GGZ Gaming Zone"
 msgstr "GGZ é??æ?²ç¶²"
 
 #. Translators: Server Combo Box: Not connected to a server
-#: ../glchess/src/lib/gtkui/network.py:117
+#: ../glchess/src/lib/gtkui/network.py:131
 msgid "Disconnected"
 msgstr "已��"
 
 #. Translators: Server Combo Box: Add new profile
-#: ../glchess/src/lib/gtkui/network.py:122
+#: ../glchess/src/lib/gtkui/network.py:136
 msgid "New profile..."
 msgstr "æ?°å¢?çµ?å??設å®?..."
 
 #. Translators: Available GGZ Tables: Table name column title
-#: ../glchess/src/lib/gtkui/network.py:182
+#: ../glchess/src/lib/gtkui/network.py:196
 msgid "Table"
 msgstr "é??æ?²æ¡?"
 
 #. Translators: Available GGZ Tables: Seat status column title
-#: ../glchess/src/lib/gtkui/network.py:187
+#: ../glchess/src/lib/gtkui/network.py:201
 msgid "Seats"
 msgstr "座�"
 
 #. Translators: Available GGZ Tables: Table description column title
-#: ../glchess/src/lib/gtkui/network.py:192
+#: ../glchess/src/lib/gtkui/network.py:206
 msgid "Description"
 msgstr "æ??è¿°"
 
 #. Translators: Current GGZ Table: Seat name column title
-#: ../glchess/src/lib/gtkui/network.py:199
+#: ../glchess/src/lib/gtkui/network.py:213
 msgid "Seat"
 msgstr "座�"
 
 #. Translators: Current GGZ Table: Player name column title
-#: ../glchess/src/lib/gtkui/network.py:203
+#: ../glchess/src/lib/gtkui/network.py:217
 msgid "Player"
 msgstr "�家"
 
 #. Translators: GGZ seat is occupied by a spectator
-#: ../glchess/src/lib/gtkui/network.py:366
+#: ../glchess/src/lib/gtkui/network.py:380
 msgid "Spectator"
 msgstr "è§?å±?è??"
 
 #. Translators: GGZ seat status: This seat is reserved. %s is replaced with
 #. the name of the player the seat is reserved for.
-#: ../glchess/src/lib/gtkui/network.py:375
+#: ../glchess/src/lib/gtkui/network.py:389
 #, python-format
 msgid "Reserved for %s"
 msgstr "å·²ç?º %s ä¿?ç??"
 
 #. Translators: GGZ seat status: This seat is not taken
-#: ../glchess/src/lib/gtkui/network.py:378
+#: ../glchess/src/lib/gtkui/network.py:392
 msgid "Seat empty"
 msgstr "座ä½?æ?¯ç©ºç??"
 
 #. Translators: GGZ seat status: This seat contains an AI player.
 #. %s is replaced with the name of the AI.
-#: ../glchess/src/lib/gtkui/network.py:382
+#: ../glchess/src/lib/gtkui/network.py:396
 #, python-format
 msgid "AI (%s)"
 msgstr "人工�� (%s)"
@@ -4338,19 +4352,19 @@ msgstr ""
 "glChess å·²ç¶?ç?¶æ©?ã??è«?å°?é??å??é?¯èª¤å??報給 http://bugzilla.gnome.org\n";
 "��輸��"
 
-#: ../glchess/src/lib/main.py:716 ../gnome-sudoku/src/lib/main.py:476
+#: ../glchess/src/lib/main.py:716 ../gnome-sudoku/src/lib/main.py:448
 msgid "Save game before closing?"
 msgstr "æ?¯å?¦å?¨é??é??å??å?²å­?é??æ?²ï¼?"
 
-#: ../glchess/src/lib/defaults.py.in:50
+#: ../glchess/src/lib/defaults.py.in:56
 msgid "glChess"
 msgstr "glChess"
 
-#: ../glchess/src/lib/defaults.py.in:53
+#: ../glchess/src/lib/defaults.py.in:59
 msgid "Copyright 2005-2008 Robert Ancell (and contributors)"
 msgstr "ç??æ¬?æ??æ?? 2005-2008 Robert Ancell å??æ??æ??è²¢ç?»è??"
 
-#: ../glchess/src/lib/defaults.py.in:54
+#: ../glchess/src/lib/defaults.py.in:60
 msgid ""
 "The 2D/3D chess game for GNOME. \n"
 "\n"
@@ -4362,8 +4376,8 @@ msgstr ""
 
 #. The GPL license string will be translated, and the game name inserted.
 #. This license is the same as in libgames-support/games-stock.c
-#: ../glchess/src/lib/defaults.py.in:63
-#: ../gnome-sudoku/src/lib/defaults.py.in:49
+#: ../glchess/src/lib/defaults.py.in:69
+#: ../gnome-sudoku/src/lib/defaults.py.in:51
 #, python-format
 msgid ""
 "%s is free software; you can redistribute it and/or modify it under the "
@@ -4375,9 +4389,9 @@ msgstr ""
 "æ¢?款è¦?å®?ï¼?å°±æ?¬ç¨?å¼?å??ç?ºæ?£ä½?è??ï¼?æ??ä¿®æ?¹ï¼?ç?¡è«?æ?¨ä¾?æ??ç??æ?¯æ?¬æ??æ¬?ç??第äº?ç??æ??\n"
 "ï¼?æ?¨è?ªè¡?é?¸æ??ç??ï¼?ä»»ä¸?æ?¥å¾?ç?¼è¡?ç??ç??æ?¬ã??"
 
-#: ../glchess/src/lib/defaults.py.in:67
-#: ../gnome-sudoku/src/lib/defaults.py.in:53
-#: ../libgames-support/games-stock.c:418
+#: ../glchess/src/lib/defaults.py.in:73
+#: ../gnome-sudoku/src/lib/defaults.py.in:55
+#: ../libgames-support/games-stock.c:384
 #, c-format, python-format
 msgid ""
 "%s is distributed in the hope that it will be useful, but WITHOUT ANY "
@@ -4388,9 +4402,9 @@ msgstr ""
 "%s ä¿?å?ºæ?¼ä½¿ç?¨ç?®ç??è??å? ä»¥æ?£ä½?ï¼?ç?¶è??ä¸?è² ä»»ä½?æ??ä¿?責任ï¼?亦ç?¡å°?é?©å?®æ?§\n"
 "æ??ç?¹å®?ç?®ç??é?©ç?¨æ?§æ??ç?ºç??é»?示æ?§æ??ä¿?ã??詳æ??è«?å??ç?§ GNU é??ç?¨å?¬å?±æ??æ¬?ã??"
 
-#: ../glchess/src/lib/defaults.py.in:71
-#: ../gnome-sudoku/src/lib/defaults.py.in:57
-#: ../libgames-support/games-stock.c:423
+#: ../glchess/src/lib/defaults.py.in:77
+#: ../gnome-sudoku/src/lib/defaults.py.in:59
+#: ../libgames-support/games-stock.c:389
 #, c-format, python-format
 msgid ""
 "You should have received a copy of the GNU General Public License along with "
@@ -4401,8 +4415,8 @@ msgstr ""
 "è?ªç?±è»?é«?å?ºé??æ??ï¼?\n"
 "51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA"
 
-#: ../glchess/src/lib/defaults.py.in:83
-#: ../gnome-sudoku/src/lib/defaults.py.in:68
+#: ../glchess/src/lib/defaults.py.in:89
+#: ../gnome-sudoku/src/lib/defaults.py.in:70
 #, python-format
 msgid "Unable to make data directory %(dir)s: %(error)s"
 msgstr "ç?¡æ³?製ä½?è³?æ??ç?®é?? %(dir)sï¼? %(error)s"
@@ -4436,17 +4450,17 @@ msgstr "已中æ?·å??伺æ??å?¨ç??é?£ç·?"
 msgid "No description"
 msgstr "æ²?æ??æ??è¿°"
 
-#: ../glines/glines.c:89 ../gnomine/gnomine.c:102
+#: ../glines/glines.c:90 ../gnomine/gnomine.c:101
 msgctxt "board size"
 msgid "Small"
 msgstr "å°?"
 
-#: ../glines/glines.c:90 ../gnomine/gnomine.c:103
+#: ../glines/glines.c:91 ../gnomine/gnomine.c:102
 msgctxt "board size"
 msgid "Medium"
 msgstr "æ?®é??"
 
-#: ../glines/glines.c:91 ../gnomine/gnomine.c:104
+#: ../glines/glines.c:92 ../gnomine/gnomine.c:103
 msgctxt "board size"
 msgid "Large"
 msgstr "大"
@@ -4493,7 +4507,7 @@ msgstr "�����"
 msgid "_Board size:"
 msgstr "��大�(_B):"
 
-#: ../glines/glines.c:511
+#: ../glines/glines.c:511 ../swell-foop/src/Score.js:109
 msgid "Game Over!"
 msgstr "����"
 
@@ -4503,7 +4517,7 @@ msgid "You can't move there!"
 msgstr "ä¸?è?½ç§»å??å?°é?£è£¡ï¼?"
 
 #: ../glines/glines.c:1210 ../glines/glines.c:1214 ../glines/glines.c:1216
-#: ../glines/glines.c:1814 ../glines/glines.c:1846
+#: ../glines/glines.c:1777 ../glines/glines.c:1809
 #: ../glines/glines.desktop.in.in.h:1
 msgid "Five or More"
 msgstr "�����"
@@ -4518,36 +4532,38 @@ msgstr ""
 "\n"
 "äº?å­?é?£è?²æ£?æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../glines/glines.c:1449
+#: ../glines/glines.c:1420
 msgid "Five or More Preferences"
 msgstr "äº?å­?é?£è?²æ£?å??好設å®?"
 
-#: ../glines/glines.c:1469
-msgid "Themes"
-msgstr "��主�"
+#: ../glines/glines.c:1440 ../gnect/src/prefs.c:335
+#: ../gnobots2/properties.c:536 ../iagno/properties.c:531
+#: ../lightsoff/data/settings.ui.h:1 ../swell-foop/data/settings.ui.h:1
+msgid "Appearance"
+msgstr "��"
 
-#: ../glines/glines.c:1477
+#: ../glines/glines.c:1448
 msgid "_Image:"
 msgstr "å??æ¡?ä½?æ?¯(_I)ï¼?"
 
-#: ../glines/glines.c:1488
+#: ../glines/glines.c:1459
 msgid "B_ackground color:"
 msgstr "è??æ?¯é¡?è?²(_A)ï¼?"
 
-#: ../glines/glines.c:1503
+#: ../glines/glines.c:1474
 msgid "Board Size"
 msgstr "é??æ?²ç?¤å¤§å°?"
 
-#: ../glines/glines.c:1522
+#: ../glines/glines.c:1493
 msgctxt "preferences"
 msgid "General"
 msgstr "��"
 
-#: ../glines/glines.c:1528
+#: ../glines/glines.c:1499
 msgid "_Use fast moves"
 msgstr "å¿«é??移å??(_U)"
 
-#: ../glines/glines.c:1875
+#: ../glines/glines.c:1836
 msgid "Next:"
 msgstr "ä¸?次ç??é¡?è?²:"
 
@@ -4656,13 +4672,13 @@ msgstr "第äº?å??ç?©å®¶ç??æ£?å??"
 
 #: ../gnect/data/gnect.schemas.in.h:9 ../gnect/src/prefs.c:372
 #: ../gnibbles/gnibbles.schemas.in.h:16 ../gnibbles/preferences.c:445
-#: ../quadrapassel/quadrapassel.schemas.in.h:13 ../quadrapassel/tetris.cpp:742
+#: ../quadrapassel/quadrapassel.schemas.in.h:13 ../quadrapassel/tetris.cpp:739
 msgid "Move left"
 msgstr "å??左移å??"
 
 #: ../gnect/data/gnect.schemas.in.h:10 ../gnect/src/prefs.c:373
 #: ../gnibbles/gnibbles.schemas.in.h:17 ../gnibbles/preferences.c:446
-#: ../quadrapassel/quadrapassel.schemas.in.h:14 ../quadrapassel/tetris.cpp:743
+#: ../quadrapassel/quadrapassel.schemas.in.h:14 ../quadrapassel/tetris.cpp:740
 msgid "Move right"
 msgstr "å??å?³ç§»å??"
 
@@ -4689,58 +4705,58 @@ msgstr ""
 "ç?¡æ³?è¼?å?¥å??ç??:\n"
 "%s"
 
-#: ../gnect/src/main.c:558
+#: ../gnect/src/main.c:528
 msgid "It's a draw!"
 msgstr "å¹³æ??ï¼?"
 
-#: ../gnect/src/main.c:567 ../gnome-sudoku/src/lib/main.py:438
+#: ../gnect/src/main.c:537 ../gnome-sudoku/src/lib/main.py:410
 msgid "You win!"
 msgstr "����"
 
-#: ../gnect/src/main.c:569 ../gnect/src/main.c:602
+#: ../gnect/src/main.c:539 ../gnect/src/main.c:572
 msgid "It is your move."
 msgstr "å?°æ?¨äº?ã??"
 
-#: ../gnect/src/main.c:572
+#: ../gnect/src/main.c:542
 msgid "I win!"
 msgstr "æ??è´?äº?ï¼?"
 
-#: ../gnect/src/main.c:574 ../gnect/src/main.c:707
+#: ../gnect/src/main.c:544 ../gnect/src/main.c:677
 msgid "Thinking..."
 msgstr "è??æ?®ä¸­..."
 
-#: ../gnect/src/main.c:595 ../gnect/src/main.c:599
+#: ../gnect/src/main.c:565 ../gnect/src/main.c:569
 #, c-format
 msgid "%s wins!"
 msgstr " %s ���"
 
-#: ../gnect/src/main.c:605
+#: ../gnect/src/main.c:575
 #, c-format
 msgid "Waiting for %s to move."
 msgstr "ç­?å¾? %s èµ°æ£?ã??"
 
-#: ../gnect/src/main.c:724
+#: ../gnect/src/main.c:694
 #, c-format
 msgid "Hint: Column %d"
 msgstr "æ??示ï¼?第 %d æ¬?"
 
-#: ../gnect/src/main.c:752 ../gnect/src/main.c:756
+#: ../gnect/src/main.c:722 ../gnect/src/main.c:726
 msgid "You:"
 msgstr "å??ï¼?"
 
-#: ../gnect/src/main.c:753 ../gnect/src/main.c:755
+#: ../gnect/src/main.c:723 ../gnect/src/main.c:725
 msgid "Me:"
 msgstr "è² ï¼?"
 
-#: ../gnect/src/main.c:801
+#: ../gnect/src/main.c:771
 msgid "Scores"
 msgstr "å??æ?¸"
 
-#: ../gnect/src/main.c:852
+#: ../gnect/src/main.c:822
 msgid "Drawn:"
 msgstr "å¹³æ??ï¼?"
 
-#: ../gnect/src/main.c:905
+#: ../gnect/src/main.c:875
 msgid ""
 "\"Four in a Row\" for GNOME, with a computer player driven by Giuliano "
 "Bertoletti's Velena Engine.\n"
@@ -4790,16 +4806,11 @@ msgid "Four-in-a-Row Preferences"
 msgstr "å??å­?é?£ç?°æ£?å??好設å®?"
 
 #: ../gnect/src/prefs.c:303 ../gnibbles/preferences.c:255
-#: ../gnobots2/properties.c:497 ../quadrapassel/tetris.cpp:594
+#: ../gnobots2/properties.c:497 ../quadrapassel/tetris.cpp:591
 #: ../iagno/properties.c:419
 msgid "Game"
 msgstr "é??æ?²"
 
-#: ../gnect/src/prefs.c:335 ../gnobots2/properties.c:536
-#: ../iagno/properties.c:531 ../swell-foop/data/settings.ui.h:1
-msgid "Appearance"
-msgstr "��"
-
 #: ../gnect/src/prefs.c:344
 msgid "_Theme:"
 msgstr "��主�(_T)�"
@@ -4815,7 +4826,7 @@ msgstr "é??å??é?³æ??(_N)"
 
 #. keyboard tab
 #: ../gnect/src/prefs.c:368 ../gnibbles/preferences.c:435
-#: ../gnobots2/properties.c:543 ../quadrapassel/tetris.cpp:734
+#: ../gnobots2/properties.c:543 ../quadrapassel/tetris.cpp:731
 msgid "Keyboard Controls"
 msgstr "����"
 
@@ -4922,21 +4933,21 @@ msgstr "貪é£?è??ç©?å??æ¦?"
 msgid "Speed:"
 msgstr "é??度ï¼?"
 
-#: ../gnibbles/gnibbles.c:376 ../gnobots2/game.c:182 ../gnomine/gnomine.c:225
-#: ../gnotravex/gnotravex.c:1240 ../gnotski/gnotski.c:842
-#: ../gtali/gyahtzee.c:200 ../mahjongg/mahjongg.c:668
+#: ../gnibbles/gnibbles.c:376 ../gnobots2/game.c:182 ../gnomine/gnomine.c:224
+#: ../gnotravex/gnotravex.c:1119 ../gnotski/gnotski.c:801
+#: ../gtali/gyahtzee.c:200 ../mahjongg/mahjongg.c:633
 msgid "Congratulations!"
 msgstr "æ?­å??ï¼?"
 
-#: ../gnibbles/gnibbles.c:377 ../gnobots2/game.c:183 ../gnomine/gnomine.c:226
-#: ../gnotravex/gnotravex.c:1241 ../gnotski/gnotski.c:843
-#: ../gtali/gyahtzee.c:201 ../mahjongg/mahjongg.c:669
+#: ../gnibbles/gnibbles.c:377 ../gnobots2/game.c:183 ../gnomine/gnomine.c:225
+#: ../gnotravex/gnotravex.c:1120 ../gnotski/gnotski.c:802
+#: ../gtali/gyahtzee.c:201 ../mahjongg/mahjongg.c:634
 msgid "Your score is the best!"
 msgstr "æ?¨ç??å??æ?¸æ?¯æ??é«?ç??ï¼?"
 
-#: ../gnibbles/gnibbles.c:378 ../gnobots2/game.c:184 ../gnomine/gnomine.c:227
-#: ../gnotravex/gnotravex.c:1242 ../gnotski/gnotski.c:844
-#: ../gtali/gyahtzee.c:202 ../mahjongg/mahjongg.c:670
+#: ../gnibbles/gnibbles.c:378 ../gnobots2/game.c:184 ../gnomine/gnomine.c:226
+#: ../gnotravex/gnotravex.c:1121 ../gnotski/gnotski.c:803
+#: ../gtali/gyahtzee.c:202 ../mahjongg/mahjongg.c:635
 msgid "Your score has made the top ten."
 msgstr "æ?¨ç??å??æ?¸é?²å?¥é ­å??å??ã??"
 
@@ -4945,9 +4956,9 @@ msgstr "æ?¨ç??å??æ?¸é?²å?¥é ­å??å??ã??"
 msgid "Guide a worm around a maze"
 msgstr "å¼?å°?ä¸?æ?·ç§»å??ç??å°?è?²è?²é?¿é??ç?«é?¢ç??é??ç¤?ç?©"
 
-#: ../gnibbles/gnibbles.desktop.in.in.h:2 ../gnibbles/main.c:231
-#: ../gnibbles/main.c:235 ../gnibbles/main.c:237 ../gnibbles/main.c:860
-#: ../gnibbles/main.c:940 ../gnibbles/main.c:1086
+#: ../gnibbles/gnibbles.desktop.in.in.h:2 ../gnibbles/main.c:197
+#: ../gnibbles/main.c:201 ../gnibbles/main.c:203 ../gnibbles/main.c:803
+#: ../gnibbles/main.c:881 ../gnibbles/main.c:1027
 msgid "Nibbles"
 msgstr "貪é£?è??"
 
@@ -5008,7 +5019,7 @@ msgid "Key to use for motion up."
 msgstr "表示å??ä¸?æ??ç?¨ç??æ??é?µ"
 
 #: ../gnibbles/gnibbles.schemas.in.h:15 ../gnibbles/preferences.c:448
-#: ../quadrapassel/quadrapassel.schemas.in.h:12 ../quadrapassel/tetris.cpp:744
+#: ../quadrapassel/quadrapassel.schemas.in.h:12 ../quadrapassel/tetris.cpp:741
 msgid "Move down"
 msgstr "å??ä¸?移å??"
 
@@ -5056,47 +5067,47 @@ msgstr "è??ç??æ?¹å??æ?¹è®?æ??æ ¹æ??ç?¶æ??ç??è??é ­æ?¹å??è¨?ç®?"
 msgid "Use relative movement (ie. left or right only)."
 msgstr "è??ç??æ?¹å??æ?¹è®?æ??æ ¹æ??ç?¶æ??ç??è??é ­æ?¹å??è¨?ç®? (å?³æ?¯å?ªå?¯ä»¥å??å·¦æ??è??å??å?³è½?)"
 
-#: ../gnibbles/main.c:71
+#: ../gnibbles/main.c:73
 msgctxt "game speed"
 msgid "Beginner"
 msgstr "æ?°æ??"
 
-#: ../gnibbles/main.c:72
+#: ../gnibbles/main.c:74
 msgctxt "game speed"
 msgid "Slow"
 msgstr "æ?¢é??"
 
-#: ../gnibbles/main.c:73
+#: ../gnibbles/main.c:75
 msgctxt "game speed"
 msgid "Medium"
 msgstr "æ?®é??"
 
-#: ../gnibbles/main.c:74
+#: ../gnibbles/main.c:76
 msgctxt "game speed"
 msgid "Fast"
 msgstr "å¿«é??"
 
-#: ../gnibbles/main.c:75
+#: ../gnibbles/main.c:77
 msgctxt "game speed"
 msgid "Beginner with Fakes"
 msgstr "æ?°æ??ï¼?æ??å??ç??ç??å?µ"
 
-#: ../gnibbles/main.c:76
+#: ../gnibbles/main.c:78
 msgctxt "game speed"
 msgid "Slow with Fakes"
 msgstr "æ?¢é??ï¼?æ??å??ç??ç??å?µ"
 
-#: ../gnibbles/main.c:77
+#: ../gnibbles/main.c:79
 msgctxt "game speed"
 msgid "Medium with Fakes"
 msgstr "中é??ï¼?æ??å??ç??ç??å?µ"
 
-#: ../gnibbles/main.c:78
+#: ../gnibbles/main.c:80
 msgctxt "game speed"
 msgid "Fast with Fakes"
 msgstr "å¿«é??ï¼?æ??å??ç??ç??å?µ"
 
-#: ../gnibbles/main.c:244
+#: ../gnibbles/main.c:210
 msgid ""
 "A worm game for GNOME.\n"
 "\n"
@@ -5106,17 +5117,17 @@ msgstr ""
 "\n"
 "Nibbles(貪é£?è??)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../gnibbles/main.c:618
+#: ../gnibbles/main.c:572
 #, c-format
 msgid "Game over! The game has been won by %s!"
 msgstr "é??æ?²å®?ç?¢ï¼?%s ç?²å??ï¼?"
 
-#: ../gnibbles/main.c:666
+#: ../gnibbles/main.c:620
 msgid "The game is over."
 msgstr "é??æ?²å®?ç?¢ã??"
 
 #. Translators: This string will be included in the intro screen, so don't make sure it fits!
-#: ../gnibbles/main.c:942
+#: ../gnibbles/main.c:883
 msgid "A worm game for GNOME."
 msgstr "GNOME ç??æ?¬è²ªé£?è??é??æ?²ã??"
 
@@ -5159,7 +5170,7 @@ msgid "_Enable fake bonuses"
 msgstr "å?¯å?ºç?¾å??ç??ç??å?µ(_E)"
 
 #. starting level
-#: ../gnibbles/preferences.c:352 ../quadrapassel/tetris.cpp:641
+#: ../gnibbles/preferences.c:352 ../quadrapassel/tetris.cpp:638
 msgid "_Starting level:"
 msgstr "é??å§?ç??å??(_S)ï¼?"
 
@@ -5208,13 +5219,14 @@ msgstr "第 %d ��:"
 msgid "Game over!"
 msgstr "����"
 
-#: ../gnobots2/game.c:155 ../gnomine/gnomine.c:201 ../gnotski/gnotski.c:817
+#: ../gnobots2/game.c:155 ../gnomine/gnomine.c:200 ../gnotski/gnotski.c:776
 msgid "Great work, but unfortunately your score did not make the top ten."
 msgstr "ä¸?幸å?°ï¼?æ?¨ç??å??æ?¸ä¸?è?½é?²å?¥é ­å??å??ã??"
 
 #. Translators: This "_New Game" is for the game-over dialogue
-#: ../gnobots2/game.c:157 ../gnomine/gnomine.c:203 ../gnotski/gnotski.c:819
-#: ../libgames-support/games-stock.c:327
+#: ../gnobots2/game.c:157 ../gnome-sudoku/data/select_game.ui.h:1
+#: ../gnomine/gnomine.c:202 ../gnotski/gnotski.c:778
+#: ../libgames-support/games-stock.c:293
 msgid "_New Game"
 msgstr "é??æ?°å±?(_N)"
 
@@ -5222,8 +5234,8 @@ msgstr "é??æ?°å±?(_N)"
 msgid "Robots Scores"
 msgstr "æ©?å?¨äººç©?å??"
 
-#: ../gnobots2/game.c:173 ../mahjongg/mahjongg.c:666
-#: ../mahjongg/mahjongg.c:995
+#: ../gnobots2/game.c:173 ../mahjongg/mahjongg.c:631
+#: ../mahjongg/mahjongg.c:961
 msgid "Map:"
 msgstr "æ??å??ï¼?"
 
@@ -5256,15 +5268,15 @@ msgstr "ä¿®æ?¹é??æ?²ç??設å®?"
 msgid "Initial window position"
 msgstr "é??å§?æ??è¦?çª?ç??ä½?ç½®"
 
-#: ../gnobots2/gnobots.c:89 ../gnomine/gnomine.c:1003
-#: ../gnomine/gnomine.c:1011 ../gnotravex/gnotravex.c:400
-#: ../gnotski/gnotski.c:467 ../iagno/gnothello.c:150
+#: ../gnobots2/gnobots.c:89 ../gnomine/gnomine.c:929 ../gnomine/gnomine.c:937
+#: ../gnotravex/gnotravex.c:263 ../gnotski/gnotski.c:459
+#: ../iagno/gnothello.c:150
 msgid "X"
 msgstr "X"
 
-#: ../gnobots2/gnobots.c:91 ../gnomine/gnomine.c:1005
-#: ../gnomine/gnomine.c:1013 ../gnotravex/gnotravex.c:402
-#: ../gnotski/gnotski.c:469 ../iagno/gnothello.c:152
+#: ../gnobots2/gnobots.c:91 ../gnomine/gnomine.c:931 ../gnomine/gnomine.c:939
+#: ../gnotravex/gnotravex.c:265 ../gnotski/gnotski.c:461
+#: ../iagno/gnothello.c:152
 msgid "Y"
 msgstr "Y"
 
@@ -5329,26 +5341,26 @@ msgid "Robots with safe teleport with super-safe moves"
 msgstr "å?¯ä½¿ç?¨å®?å?¨ç©ºé??è½?移è??è¶?ç´?å®?å?¨ç§»å??ç??æ©?å?¨äºº"
 
 #: ../gnobots2/gnobots.c:240 ../gnobots2/gnobots.c:261
-#: ../gnobots2/gnobots2.desktop.in.in.h:2 ../gnobots2/menu.c:263
-#: ../gnobots2/menu.c:266
+#: ../gnobots2/gnobots2.desktop.in.in.h:2 ../gnobots2/menu.c:256
+#: ../gnobots2/menu.c:259
 msgid "Robots"
 msgstr "��人"
 
-#: ../gnobots2/gnobots.c:323
+#: ../gnobots2/gnobots.c:321
 msgid "No game data could be found."
 msgstr "æ?¾ä¸?å?°é??æ?²è³?æ??ã??"
 
-#: ../gnobots2/gnobots.c:325
+#: ../gnobots2/gnobots.c:323
 msgid ""
 "The program Robots was unable to find any valid game configuration files. "
 "Please check that the program is installed correctly."
 msgstr "GNOME æ©?å?¨äººæ?¾ä¸?å?°æ??æ??ç??設å®?æª?ã??è«?檢æ?¥ç¨?å¼?æ?¯å?¦å·²æ­£ç¢ºå®?è£?ã??"
 
-#: ../gnobots2/gnobots.c:341
+#: ../gnobots2/gnobots.c:339
 msgid "Some graphics files are missing or corrupt."
 msgstr "æ??äº?å??ç??æª?æ¡?æ?¾ä¸?å?°æ??è??å·²ç¶?æ??å£?ã??"
 
-#: ../gnobots2/gnobots.c:343
+#: ../gnobots2/gnobots.c:341
 msgid ""
 "The program Robots was unable to load all the necessary graphics files. "
 "Please check that the program is installed correctly."
@@ -5535,35 +5547,35 @@ msgstr ""
 msgid "Could not find '%s' pixmap file\n"
 msgstr "æ?¾ä¸?å?° pixmap æª?â??%sâ??\n"
 
-#: ../gnobots2/menu.c:70 ../gnotravex/gnotravex.c:305
+#: ../gnobots2/menu.c:68 ../gnotravex/gnotravex.c:1753
 msgid "_Move"
 msgstr "移å??(_M)"
 
-#: ../gnobots2/menu.c:77
+#: ../gnobots2/menu.c:75
 msgid "_Teleport"
 msgstr "空é??è½?移(_T)"
 
-#: ../gnobots2/menu.c:78
+#: ../gnobots2/menu.c:76
 msgid "Teleport, safely if possible"
 msgstr "ç?¡å?¯è?½ä¿?è­?å®?å?¨ç??空é??è½?移"
 
-#: ../gnobots2/menu.c:79
+#: ../gnobots2/menu.c:77
 msgid "_Random"
 msgstr "��(_R)"
 
-#: ../gnobots2/menu.c:80
+#: ../gnobots2/menu.c:78
 msgid "Teleport randomly"
 msgstr "é?¨æ©?空é??è½?移"
 
-#: ../gnobots2/menu.c:81
+#: ../gnobots2/menu.c:79
 msgid "_Wait"
 msgstr "ç­?å¾?(_W)"
 
-#: ../gnobots2/menu.c:81
+#: ../gnobots2/menu.c:79
 msgid "Wait for the robots"
 msgstr "����人��"
 
-#: ../gnobots2/menu.c:271
+#: ../gnobots2/menu.c:264
 msgid ""
 "Based on classic BSD Robots.\n"
 "\n"
@@ -5646,7 +5658,7 @@ msgstr "å?¯ä½¿ç?¨è¶?ç´?å®?å?¨ç§»å??(_S)"
 msgid "Prevents all moves that result in getting killed."
 msgstr "ç¦?止任ä½?æ??å¼?è?´æ??失ç??å?½ç??è¡?å??ã??"
 
-#: ../gnobots2/properties.c:489 ../quadrapassel/tetris.cpp:667
+#: ../gnobots2/properties.c:489 ../quadrapassel/tetris.cpp:664
 msgid "_Enable sounds"
 msgstr "é??å??é?³æ??(_E)"
 
@@ -5662,7 +5674,7 @@ msgstr "å??æ¡?ä½?æ?¯"
 msgid "_Image theme:"
 msgstr "å??æ¡?ä½?æ?¯(_I)ï¼?"
 
-#: ../gnobots2/properties.c:524 ../mahjongg/mahjongg.c:775
+#: ../gnobots2/properties.c:524 ../mahjongg/mahjongg.c:740
 msgid "_Background color:"
 msgstr "è??æ?¯é¡?è?²(_B)ï¼?"
 
@@ -5692,12 +5704,12 @@ msgid "Fit falling blocks together"
 msgstr "å°?ä¸?å??å½¢ç??è??ä¸?ä¸?æ?·è·?ä¸?ç??æ?¹å¡?æ?¼å??å?¨ä¸?èµ·"
 
 #: ../quadrapassel/quadrapassel.desktop.in.in.h:2 ../quadrapassel/main.cpp:66
-#: ../quadrapassel/tetris.cpp:160 ../quadrapassel/tetris.cpp:1298
-#: ../quadrapassel/tetris.cpp:1304
+#: ../quadrapassel/tetris.cpp:158 ../quadrapassel/tetris.cpp:1288
+#: ../quadrapassel/tetris.cpp:1294
 msgid "Quadrapassel"
 msgstr "�����"
 
-#: ../quadrapassel/quadrapassel.schemas.in.h:1 ../quadrapassel/tetris.cpp:745
+#: ../quadrapassel/quadrapassel.schemas.in.h:1 ../quadrapassel/tetris.cpp:742
 msgid "Drop"
 msgstr "��"
 
@@ -5733,11 +5745,11 @@ msgstr "é??å§?æ??ç??ç´?æ?¸"
 msgid "Level to start with."
 msgstr "é??å§?æ??ç??ç´?æ?¸"
 
-#: ../quadrapassel/quadrapassel.schemas.in.h:15 ../quadrapassel/tetris.cpp:747
+#: ../quadrapassel/quadrapassel.schemas.in.h:15 ../quadrapassel/tetris.cpp:744
 msgid "Pause"
 msgstr "æ?«å??"
 
-#: ../quadrapassel/quadrapassel.schemas.in.h:16 ../quadrapassel/tetris.cpp:746
+#: ../quadrapassel/quadrapassel.schemas.in.h:16 ../quadrapassel/tetris.cpp:743
 msgid "Rotate"
 msgstr "æ??è½?"
 
@@ -5846,65 +5858,65 @@ msgstr "Tango é?°å½±"
 msgid "Lines:"
 msgstr "���"
 
-#: ../quadrapassel/tetris.cpp:573
+#: ../quadrapassel/tetris.cpp:570
 msgid "Quadrapassel Preferences"
 msgstr "ä¿?ç¾?æ?¯æ?¹å¡?å??好設å®?"
 
-#: ../quadrapassel/tetris.cpp:597 ../swell-foop/data/settings.ui.h:5
+#: ../quadrapassel/tetris.cpp:594 ../swell-foop/data/settings.ui.h:5
 msgid "Setup"
 msgstr "設�"
 
 #. pre-filled rows
-#: ../quadrapassel/tetris.cpp:603
+#: ../quadrapassel/tetris.cpp:600
 msgid "_Number of pre-filled rows:"
 msgstr "é ?å??å¡«å??ç??è¡?æ?¸(_N)ï¼?"
 
 #. pre-filled rows density
-#: ../quadrapassel/tetris.cpp:622
+#: ../quadrapassel/tetris.cpp:619
 msgid "_Density of blocks in a pre-filled row:"
 msgstr "é ?å??å¡«å??æ??æ¯?è¡?ç??å¯?度(_D)ï¼?"
 
-#: ../quadrapassel/tetris.cpp:662 ../swell-foop/data/settings.ui.h:4
+#: ../quadrapassel/tetris.cpp:659 ../swell-foop/data/settings.ui.h:4
 msgid "Operation"
 msgstr "æ??ä½?"
 
-#: ../quadrapassel/tetris.cpp:676
+#: ../quadrapassel/tetris.cpp:673
 msgid "_Preview next block"
 msgstr "é ?覽ä¸?å??æ?¹å¡?(_P)"
 
-#: ../quadrapassel/tetris.cpp:685
+#: ../quadrapassel/tetris.cpp:682
 msgid "_Use random block colors"
 msgstr "��使�����(_U)"
 
-#: ../quadrapassel/tetris.cpp:696
-msgid "_Bastard mode"
-msgstr "ç??ç??模å¼?(_B)"
+#: ../quadrapassel/tetris.cpp:693
+msgid "Choose difficult _blocks"
+msgstr "é?¸æ??å?°é?£ç??æ?¹å¡?(_B)"
 
-#: ../quadrapassel/tetris.cpp:705
+#: ../quadrapassel/tetris.cpp:702
 msgid "_Rotate blocks counterclockwise"
 msgstr "æ?¹å¡?以é??æ??é??æ?¹å??æ??è½?(_R)"
 
-#: ../quadrapassel/tetris.cpp:714
+#: ../quadrapassel/tetris.cpp:711
 msgid "Show _where the block will land"
 msgstr "顯示æ?¹å¡?è?½é»?æ??示(_W)"
 
-#: ../quadrapassel/tetris.cpp:722 ../quadrapassel/tetris.cpp:755
+#: ../quadrapassel/tetris.cpp:719 ../quadrapassel/tetris.cpp:752
 msgid "Theme"
 msgstr "��主�"
 
-#: ../quadrapassel/tetris.cpp:731
+#: ../quadrapassel/tetris.cpp:728
 msgid "Controls"
 msgstr "��"
 
-#: ../quadrapassel/tetris.cpp:758
+#: ../quadrapassel/tetris.cpp:755
 msgid "Block Style"
 msgstr "��樣�"
 
-#: ../quadrapassel/tetris.cpp:1302
+#: ../quadrapassel/tetris.cpp:1292
 msgid "Qua"
 msgstr "Qua"
 
-#: ../quadrapassel/tetris.cpp:1307
+#: ../quadrapassel/tetris.cpp:1297
 msgid ""
 "A classic game of fitting falling blocks together.\n"
 "\n"
@@ -5919,13 +5931,11 @@ msgid "Quadrapassel Scores"
 msgstr "ä¿?ç¾?æ?¯æ?¹å¡?ç©?å??æ¦?"
 
 #: ../quadrapassel/blockops.cpp:786
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:174
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:215
 msgid "Paused"
 msgstr "æ?«å??"
 
 #: ../gnome-sudoku/gnome-sudoku.desktop.in.in.h:1
-#: ../gnome-sudoku/src/lib/defaults.py.in:38
+#: ../gnome-sudoku/src/lib/defaults.py.in:40
 msgid "Sudoku"
 msgstr "��"
 
@@ -5938,68 +5948,62 @@ msgid "Color of the grid border"
 msgstr "æ ¼ç·?å¤?æ¡?ç??é¡?è?²"
 
 #: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:2
-msgid "Generate new puzzles in the background"
-msgstr "å?¨è??æ?¯ç?¢ç??æ?°é¡?ç?®"
-
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:3
 msgid "Height of application window in pixels"
 msgstr "æ??ç?¨ç¨?å¼?è¦?çª?ç??é«?度ï¼?å??ç´ ï¼?"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:4
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:3
 msgid "Mark printed games as played"
 msgstr "å°?å??å?°é??ç??é¡?ç?®æ¨?è¨?ç?ºå·²ç¶?ç?©é??"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:5
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:4
 msgid "Number of puzzles to print on a page"
 msgstr "è¦?å??å?°ç??æ¯?é ?é¡?ç?®æ?¸"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:6
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:5
 msgid "Print games that have been played"
 msgstr "å??å?°å·²ç¶?ç?©é??ç??é??æ?²"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:7
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:6
 msgid "Show hint highlights"
 msgstr "顯示æ??示ç??çª?顯æ??æ??"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:8
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:7
 msgid "Show hints"
 msgstr "顯示æ??示"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:9
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:8
 msgid "Show the application toolbar"
 msgstr "顯示æ??ç?¨ç¨?å¼?å·¥å?·å??"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:10
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:9
 msgid "The number of seconds between automatic saves"
 msgstr "è?ªå??å?²å­?é??é??ç§?æ?¸"
 
-#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:11
+#: ../gnome-sudoku/data/gnome-sudoku.schemas.in.h:10
 msgid "Width of application window in pixels"
 msgstr "æ??ç?¨ç¨?å¼?è¦?çª?ç??寬度ï¼?å??ç´ ï¼?"
 
 #: ../gnome-sudoku/data/print_games.ui.h:1
-msgid "<b><i>Details</i></b>"
-msgstr "<b><i>詳細è³?æ??</i></b>"
+msgid "Details"
+msgstr "詳細è³?æ??"
 
 #: ../gnome-sudoku/data/print_games.ui.h:2
-msgid "<b><i>Levels of difficulty to print</i></b>"
-msgstr "<b><i>è¦?å??å?°ç??é??æ?²é?£åº¦ç­?ç´?</i></b>"
+msgid "Levels of difficulty to print"
+msgstr "è¦?å??å?°ç??é??æ?²é?£åº¦ç­?ç´?"
 
 #: ../gnome-sudoku/data/print_games.ui.h:3
-msgid "<span size=\"larger\" weight=\"bold\">Print Games</span>"
-msgstr "<span size=\"larger\" weight=\"bold\">å??å?°é??æ?²</span>"
+msgid "Print Games"
+msgstr "å??å?°é??æ?²"
 
 #: ../gnome-sudoku/data/print_games.ui.h:4
 msgid "Print Sudokus"
 msgstr "å??å?°æ?¸ç?¨é??æ?²"
 
 #: ../gnome-sudoku/data/print_games.ui.h:5
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:13
 msgid "_Easy"
 msgstr "容æ??(_E)"
 
 #: ../gnome-sudoku/data/print_games.ui.h:6
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:15
 msgid "_Hard"
 msgstr "å?°é?£(_H)"
 
@@ -6012,7 +6016,6 @@ msgid "_Mark games as played once you've printed them."
 msgstr "å??å?°é¡?ç?®å¾?å°?é¡?ç?®æ¨?è¨?ç?ºå·²ç¶?ç?©é??(_M)"
 
 #: ../gnome-sudoku/data/print_games.ui.h:9
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:16
 msgid "_Medium"
 msgstr "中(_M)"
 
@@ -6025,85 +6028,38 @@ msgid "_Sudokus per page: "
 msgstr "æ¯?é ?ç??æ?¸ç?¨é¡?ç?®æ?¸ç?®(_S):"
 
 #: ../gnome-sudoku/data/print_games.ui.h:12
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:17
 msgid "_Very Hard"
 msgstr "極�(_V)"
 
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:1
-msgid "<i><u>Number of Puzzles</u></i>"
-msgstr "<i><u>����</u></i>"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:2
-msgid "<i>Easy:</i>"
-msgstr "<i>容æ??ï¼?</i>"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:3
-msgid "<i>Hard:</i>"
-msgstr "<i>���</i>"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:4
-msgid "<i>Medium:</i>"
-msgstr "<i>中��</i>"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:5
-msgid "<i>Very Hard:</i>"
-msgstr "<i>極��</i>"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:6
-msgid "<span size=\"larger\" weight=\"bold\">Puzzle Generator</span>"
-msgstr "<span size=\"larger\" weight=\"bold\">é¡?ç?®ç?¢ç??å?¨</span>"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:7
-msgid "Criteria:"
-msgstr "�件�"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:8
-msgid "Generate Policy"
-msgstr "ç?¢ç??ç??æ³?å??"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:9
-msgid "Generate new puzzles _until stopped"
-msgstr "ä¸?æ?·ç?¢ç??æ?°é¡?ç?®ç?´è?³ç?©å®¶è¦?æ±?å??æ­¢(_U)"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:10
-msgid "Generate until _reaching target"
-msgstr "ç?¢ç??é¡?ç?®ç?´è?³é??å?°ç?®æ¨?æ?¸å­?ç?ºæ­¢(_R)"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:11
-msgid "Puzzle Generator"
-msgstr "é¡?ç?®ç?¢ç??å?¨"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:12
-msgid "Target _number of sudokus:"
-msgstr "æ?¸ç?¨é¡?ç?®ç??ç?®æ¨?æ?¸å­?(_N):"
-
-#: ../gnome-sudoku/data/puzzle_generator.ui.h:14
-msgid "_Generate"
-msgstr "ç?¢ç??(_G)"
-
-#: ../gnome-sudoku/data/select_game.ui.h:1
-msgid "<b><span size=\"large\">_New Game</span></b>"
-msgstr "<b><span size=\"large\">æ?°é??æ?²(_N)</span></b>"
-
 #: ../gnome-sudoku/data/select_game.ui.h:2
-msgid "<b><span size=\"large\">_Saved Games</span></b>"
-msgstr "<b><span size=\"large\">å?²å­?é??æ?²(_S)</span></b>"
+msgid "_Saved Games"
+msgstr "å·²å?²å­?ç??é??æ?²(_S)"
 
 #: ../gnome-sudoku/data/tracker.ui.h:1
-msgid "Clear _Others"
-msgstr "æ¸?é?¤å?¶ä»?ç??(_O)"
+#, fuzzy
+#| msgid "_Add Tracker"
+msgid "Add a new tracker"
+msgstr "���設�"
 
-#: ../gnome-sudoku/data/tracker.ui.h:2
-msgid "_Add Tracker"
-msgstr "��追蹤�(_A)"
+#: ../gnome-sudoku/data/tracker.ui.h:2 ../gnome-sudoku/src/lib/main.py:772
+msgid "H_ide"
+msgstr "é?±è??(_I)"
 
-#: ../gnome-sudoku/data/tracker.ui.h:3 ../gnome-sudoku/src/lib/main.py:788
-msgid "_Clear Tracker"
-msgstr "��追蹤�(_C)"
+#: ../gnome-sudoku/data/tracker.ui.h:3
+#, fuzzy
+msgid "Hide the tracked values"
+msgstr "è¦?ç?£æ?§ç??æ?¸å?¼"
 
 #: ../gnome-sudoku/data/tracker.ui.h:4
-msgid "_Trackers"
-msgstr "追蹤�(_T)"
+#, fuzzy
+msgid "Make the tracked changes permanent"
+msgstr "æ°¸é? å?°é?£æ?¥å?°æ­¤ä¼ºæ??å?¨"
+
+#: ../gnome-sudoku/data/tracker.ui.h:5
+#, fuzzy
+#| msgid "Clear all moves tracked by selected tracker."
+msgid "Remove the selected tracker"
+msgstr "移é?¤å·²é?¸ç??æ?¸ç±¤"
 
 #: ../gnome-sudoku/src/gnome-sudoku.in.in:59
 msgid "Sudoku incorrectly installed"
@@ -6118,13 +6074,13 @@ msgstr ""
 "ç?¡æ³?å??å??æ?¸ç?¨(Sudoku)ï¼?å? ç?ºè¦?æ±?ç??æ??ç?¨ç¨?å¼?æª?æ¡?å°?æ?ªå®?è£?ã??å¦?æ??æ?¨æ­£å?¨å??ç´?系統ï¼?è«?"
 "ç¨?å??ç?´å?°å??ç´?çµ?æ??ã??"
 
-#: ../gnome-sudoku/src/lib/defaults.py.in:37
+#: ../gnome-sudoku/src/lib/defaults.py.in:39
 msgid "GNOME Sudoku"
 msgstr "GNOME ��"
 
-#: ../gnome-sudoku/src/lib/defaults.py.in:40
+#: ../gnome-sudoku/src/lib/defaults.py.in:42
 msgid ""
-"GNOME Sudoku is a simple sudoku generator and player. Sudoku is a japanese "
+"GNOME Sudoku is a simple Sudoku generator and player. Sudoku is a Japanese "
 "logic puzzle.\n"
 "\n"
 "GNOME Sudoku is a part of GNOME Games."
@@ -6134,342 +6090,292 @@ msgstr ""
 "\n"
 "GNOME æ?¸ç?¨(Sudoku)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../gnome-sudoku/src/lib/saver.py:122
+#: ../gnome-sudoku/src/lib/saver.py:137
 msgid "No Space"
 msgstr "æ²?æ??空é??"
 
-#: ../gnome-sudoku/src/lib/saver.py:123
+#: ../gnome-sudoku/src/lib/saver.py:138
 msgid "No space left on disk"
 msgstr "ç£?ç¢?ä¸?æ²?æ??å?©é¤?空é??"
 
-#: ../gnome-sudoku/src/lib/saver.py:125 ../gnome-sudoku/src/lib/saver.py:132
+#: ../gnome-sudoku/src/lib/saver.py:140 ../gnome-sudoku/src/lib/saver.py:147
 #, python-format
 msgid "Unable to create data folder %(path)s."
 msgstr "ç?¡æ³?建ç«?è³?æ??ç?¨ç??è³?æ??夾 %(path)sã??"
 
-#: ../gnome-sudoku/src/lib/saver.py:126
+#: ../gnome-sudoku/src/lib/saver.py:141
 msgid "There is no disk space left!"
 msgstr "å·²ç¶?æ²?æ??å?©é¤?ç??ç£?ç¢?空é??ï¼?"
 
-#: ../gnome-sudoku/src/lib/saver.py:133 ../gnome-sudoku/src/lib/saver.py:158
-#: ../gnome-sudoku/src/lib/saver.py:182 ../gnome-sudoku/src/lib/saver.py:200
+#: ../gnome-sudoku/src/lib/saver.py:148 ../gnome-sudoku/src/lib/saver.py:173
+#: ../gnome-sudoku/src/lib/saver.py:197 ../gnome-sudoku/src/lib/saver.py:215
 #, python-format
 msgid "Error %(errno)s: %(error)s"
 msgstr "%(errno)s �誤�%(error)s"
 
-#: ../gnome-sudoku/src/lib/saver.py:153 ../gnome-sudoku/src/lib/saver.py:154
+#: ../gnome-sudoku/src/lib/saver.py:168 ../gnome-sudoku/src/lib/saver.py:169
 msgid "Sudoku unable to save game."
 msgstr "æ?¸ç?¨(Sudoku)ç?¡æ³?å?²å­?é??æ?²ã??"
 
-#: ../gnome-sudoku/src/lib/saver.py:156 ../gnome-sudoku/src/lib/saver.py:181
-#: ../gnome-sudoku/src/lib/saver.py:199
+#: ../gnome-sudoku/src/lib/saver.py:171 ../gnome-sudoku/src/lib/saver.py:196
+#: ../gnome-sudoku/src/lib/saver.py:214
 #, python-format
 msgid "Unable to save file %(filename)s."
 msgstr "ç?¡æ³?å?²å­?æª?æ¡? %(filename)sã??"
 
-#: ../gnome-sudoku/src/lib/saver.py:178 ../gnome-sudoku/src/lib/saver.py:179
-#: ../gnome-sudoku/src/lib/saver.py:196 ../gnome-sudoku/src/lib/saver.py:197
+#: ../gnome-sudoku/src/lib/saver.py:193 ../gnome-sudoku/src/lib/saver.py:194
+#: ../gnome-sudoku/src/lib/saver.py:211 ../gnome-sudoku/src/lib/saver.py:212
 msgid "Sudoku unable to mark game as finished."
 msgstr "æ?¸ç?¨(Sudoku)ç?¡æ³?å°?é??æ?²æ¨?è¨?ç?ºå·²çµ?æ??ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:43
+#: ../gnome-sudoku/src/lib/main.py:44
 msgid "Track moves"
 msgstr "追蹤填�"
 
-#: ../gnome-sudoku/src/lib/main.py:243
+#: ../gnome-sudoku/src/lib/main.py:232
 msgid "New game"
 msgstr "é??æ?°å±?"
 
+#. Translators: this is the "Reset" scores button in a scores dialogue
+#: ../gnome-sudoku/src/lib/main.py:233 ../libgames-support/games-stock.c:296
+msgid "_Reset"
+msgstr "é??設(_R)"
+
+#: ../gnome-sudoku/src/lib/main.py:234
+msgid "Reset current grid(do-over)"
+msgstr ""
+
+#: ../gnome-sudoku/src/lib/main.py:235
+msgid "_Undo"
+msgstr "å??æ??(_U)"
+
+#: ../gnome-sudoku/src/lib/main.py:236
+msgid "Undo last action"
+msgstr "é??å??ä¸?ä¸?æ­¥"
+
+#: ../gnome-sudoku/src/lib/main.py:237
+msgid "_Redo"
+msgstr "å??æ¶?å??æ??(_R)"
+
+#: ../gnome-sudoku/src/lib/main.py:238
+msgid "Redo last action"
+msgstr "é??æ?°é?²è¡?å??é??å??ç??ä¸?æ­¥"
+
+#: ../gnome-sudoku/src/lib/main.py:239
+msgid "Puzzle _Statistics..."
+msgstr "��統�(_S)..."
+
+#: ../gnome-sudoku/src/lib/main.py:240
+msgid "Show statistics about current puzzle"
+msgstr "顯示æ??é??ç?®å??é¡?ç?®ç??çµ±è¨?æ?¸å­?"
+
+#: ../gnome-sudoku/src/lib/main.py:241
+msgid "_Print..."
+msgstr "å??å?°(_P)..."
+
 # zh_HK: msgstr "æ??å?°ç?®å??ç??é??æ?²"
 # zh_TW: msgstr "å??å?°ç?®å??ç??é??æ?²"
-#: ../gnome-sudoku/src/lib/main.py:245
+#: ../gnome-sudoku/src/lib/main.py:241
 msgid "Print current game"
 msgstr "å??å?°ç?®å??ç??é??æ?²"
 
-#: ../gnome-sudoku/src/lib/main.py:246
-msgid "Print _Multiple Sudokus"
-msgstr "å??å?°å¤?份æ?¸ç?¨é??æ?²(_M)"
+#: ../gnome-sudoku/src/lib/main.py:242
+msgid "Print _Multiple Sudokus..."
+msgstr "å??å?°å¤?份æ?¸ç?¨é??æ?²(_M)..."
 
-#: ../gnome-sudoku/src/lib/main.py:247
+#: ../gnome-sudoku/src/lib/main.py:243
 msgid "Print more than one sudoku at a time."
 msgstr "ä¸?次å??å?°å¤?æ?¼ä¸?份ç??æ?¸ç?¨ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:249
+#: ../gnome-sudoku/src/lib/main.py:244
 msgid "Close Sudoku"
 msgstr "é??é??æ?¸ç?¨"
 
-#: ../gnome-sudoku/src/lib/main.py:250
+#: ../gnome-sudoku/src/lib/main.py:247
 msgid "_Tools"
 msgstr "工�(_T)"
 
-#: ../gnome-sudoku/src/lib/main.py:252 ../libgames-support/games-stock.c:323
+#: ../gnome-sudoku/src/lib/main.py:248 ../libgames-support/games-stock.c:289
 msgid "_Hint"
 msgstr "æ??示(_H)"
 
-#: ../gnome-sudoku/src/lib/main.py:254
-msgid "Show which numbers could go in the current square."
-msgstr "顯示ç?®å??ç??æ?¹æ ¼å?¯ä»¥æ?¥å??å?ªäº?æ?¸å­?ã??"
-
-#: ../gnome-sudoku/src/lib/main.py:256
-msgid "_Fill"
-msgstr "å¡«å??(_F)"
-
-#: ../gnome-sudoku/src/lib/main.py:257
-msgid "Automatically fill in the current square if possible."
-msgstr "å?¨è¨±å?¯ç??æ??æ³?ä¸?ç?¡é??å¡«ä¸?ç?®å??ç??æ?¹æ ¼ã??"
-
-#: ../gnome-sudoku/src/lib/main.py:259
-msgid "Fill _all squares"
-msgstr "å¡«å??æ??æ??æ?¹æ ¼(_A)"
-
-#: ../gnome-sudoku/src/lib/main.py:260
-msgid ""
-"Automatically fill in all squares for which there is only one valid value."
-msgstr "è?ªå??å¡«å??æ??æ??å?ªæ??ä¸?å??å?¯è?½æ?§ç??æ?¹æ ¼ã??"
+#: ../gnome-sudoku/src/lib/main.py:249
+msgid "Show a square that is easy to fill."
+msgstr "顯示ä¸?å??容æ??填寫ç??æ?¹æ ¼ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:264
-msgid "_Generate new puzzles"
-msgstr "ç?¢ç??æ?°é¡?ç?®(_G)"
+#: ../gnome-sudoku/src/lib/main.py:250
+msgid "Clear _Top Notes"
+msgstr "���端註�(_T)"
 
-#: ../gnome-sudoku/src/lib/main.py:264
-msgid "Generate new puzzles."
-msgstr "ç?¢ç??æ?°é¡?ç?®"
+#: ../gnome-sudoku/src/lib/main.py:251
+msgid "Clear all of the top notes"
+msgstr "æ¸?é?¤æ??æ??ç??é ?端註è¨?"
 
-#: ../gnome-sudoku/src/lib/main.py:266
-msgid "Puzzle _Statistics"
-msgstr "��統�(_S)"
+#: ../gnome-sudoku/src/lib/main.py:252
+msgid "Clear _Bottom Notes"
+msgstr "����註�(_B)"
 
-#: ../gnome-sudoku/src/lib/main.py:267
-msgid "Show statistics about current puzzle"
-msgstr "顯示æ??é??ç?®å??é¡?ç?®ç??çµ±è¨?æ?¸å­?"
+#: ../gnome-sudoku/src/lib/main.py:253
+msgid "Clear all of the bottom notes"
+msgstr "æ¸?é?¤æ??æ??ç??åº?é?¨è¨»è¨?"
 
-#: ../gnome-sudoku/src/lib/main.py:279
-msgid "_Always show hint"
-msgstr "ä¸?å®?顯示æ??示(_A)"
+#: ../gnome-sudoku/src/lib/main.py:261
+msgid "Show _Possible Numbers"
+msgstr "顯示å?¯è?½ç??æ?¸å­?"
 
-#: ../gnome-sudoku/src/lib/main.py:281
+#: ../gnome-sudoku/src/lib/main.py:263
 msgid "Always show possible numbers in a square"
 msgstr "æ°¸é? å?¨æ?¹æ ¼ä¸­é¡¯ç¤ºæ??æ??å?¯è?½å?ºç?¾ç??æ?¸å­?"
 
-#: ../gnome-sudoku/src/lib/main.py:285
-msgid "Warn about _unfillable squares"
-msgstr "å?ºç?¾ç?¡æ³?å¡«ä¸?å?§å®¹ç??æ?¹æ ¼æ??ç?¼å?ºè­¦å??(_U)"
+#: ../gnome-sudoku/src/lib/main.py:267
+msgid "Warn About _Unfillable Squares"
+msgstr "è­¦å??æ??ç?¡æ³?å¡«ä¸?å?§å®¹ç??æ?¹æ ¼(_U)"
 
-#: ../gnome-sudoku/src/lib/main.py:287
+#: ../gnome-sudoku/src/lib/main.py:269
 msgid "Warn about squares made unfillable by a move"
 msgstr "ç?¶å¡«ä¸?æ??å??æ?¹æ ¼æ??令é??æ?²ç?¡æ³?å®?æ??æ??ç?¼å?ºè­¦å??"
 
-#: ../gnome-sudoku/src/lib/main.py:289
-msgid "_Track additions"
+#: ../gnome-sudoku/src/lib/main.py:271
+#, fuzzy
+#| msgid "_Track additions"
+msgid "_Track Additions"
 msgstr "��追蹤(_T)"
 
-#: ../gnome-sudoku/src/lib/main.py:291
+#: ../gnome-sudoku/src/lib/main.py:273
 msgid "Mark new additions in a separate color so you can keep track of them."
 msgstr "以å??å?¥ç??é¡?è?²æ¨?è¨?æ?°å¡«å?¥ç??æ?¸å­?以便追蹤å®?å??ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:294
+#: ../gnome-sudoku/src/lib/main.py:276
 msgid "_Highlighter"
 msgstr "�亮度顯示(_H)"
 
-#: ../gnome-sudoku/src/lib/main.py:295
+#: ../gnome-sudoku/src/lib/main.py:277
 msgid "Highlight the current row, column and box"
 msgstr "å? å¼·é¡¯ç¤ºç?®å??æ?¹æ ¼æ??å?¨ç??è¡?å??å??"
 
-#: ../gnome-sudoku/src/lib/main.py:296
-msgid "Generate new puzzles _while you play"
-msgstr "ç?¶æ?¨å?¨ç?©ç??æ??å??ç?¢ç??æ?°ç??é¡?ç?®(_W)"
-
-#: ../gnome-sudoku/src/lib/main.py:298
-msgid ""
-"Generate new puzzles in the background while you play. This will "
-"automatically pause when the game goes into the background."
-msgstr ""
-"ç?¶æ?¨æ­£å?¨è§£æ±ºé¡?ç?®æ??è®?ç¨?å¼?è?ªè¡?å?¨è??æ?¯ç?¢ç??æ?°é¡?ç?®ã??æ­¤ç¨?åº?æ??å?¨é¡?ç?®æ?¬èº«å??æ??å?°è??æ?¯æ??"
-"å??æ­¢å?·è¡?ã??"
-
-#: ../gnome-sudoku/src/lib/main.py:304
-msgid "_Edit"
-msgstr "編輯(_E)"
-
-#: ../gnome-sudoku/src/lib/main.py:305
-msgid "_Undo"
-msgstr "å??æ??(_U)"
-
-#: ../gnome-sudoku/src/lib/main.py:305
-msgid "Undo last action"
-msgstr "é??å??ä¸?ä¸?æ­¥"
-
-#: ../gnome-sudoku/src/lib/main.py:306
-msgid "_Redo"
-msgstr "å??æ¶?å??æ??(_R)"
-
-#: ../gnome-sudoku/src/lib/main.py:306
-msgid "Redo last action"
-msgstr "é??æ?°é?²è¡?å??é??å??ç??ä¸?æ­¥"
-
-#: ../gnome-sudoku/src/lib/main.py:307
-#: ../gnome-sudoku/src/lib/number_box.py:54
-msgid "_Clear"
-msgstr "��(_C)"
-
-#: ../gnome-sudoku/src/lib/main.py:307
-msgid "Clear entries you've filled in"
-msgstr "æ¸?é?¤æ??æ??æ?¨å¡«ä¸?ç??æ?¸å­?"
-
-#: ../gnome-sudoku/src/lib/main.py:308
-msgid "Clear _Notes"
-msgstr "����(_N)"
-
-#: ../gnome-sudoku/src/lib/main.py:308
-msgid "Clear notes and hints"
-msgstr "æ¸?é?¤æ¨?è¨?å??æ??示"
+#: ../gnome-sudoku/src/lib/main.py:396
+#, python-format
+msgid "You completed the puzzle in %(totalTime)s (%(activeTime)s active)."
+msgstr "æ?¨å?¨ %(totalTime)s å?§å®?æ??äº?é??å??é¡?ç?®ï¼?使ç?¨äº? %(activeTime)s ï¼?ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:420
+#: ../gnome-sudoku/src/lib/main.py:400
 #, python-format
-msgid "You completed the puzzle in %(totalTime)s (%(activeTime)s active)"
-msgstr "æ?¨å?¨ %(totalTime)s å?§å®?æ??äº?é??å??é¡?ç?®ï¼?使ç?¨äº? %(activeTime)s ï¼?"
+msgid "You completed the puzzle in %(totalTime)s."
+msgstr "æ?¨å?¨ %(totalTime)s å?§å®?æ??äº?é??å??é¡?ç?®ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:424
+#: ../gnome-sudoku/src/lib/main.py:402
 #, python-format
-msgid "You got %(n)s hint"
-msgid_plural "You got %(n)s hints"
-msgstr[0] "æ?¨å¾?å?° %(n)s 次æ??示"
+msgid "You got %(n)s hint."
+msgid_plural "You got %(n)s hints."
+msgstr[0] "æ?¨å¾?å?° %(n)s 次æ??示ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:427
+#: ../gnome-sudoku/src/lib/main.py:405
 #, python-format
 msgid "You had %(n)s impossibility pointed out."
 msgid_plural "You had %(n)s impossibilities pointed out."
 msgstr[0] "å·²ç?ºæ?¨æ??å?º %(n)s 種ä¸?å?¯è?½æ?§ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:432
-#, python-format
-msgid "You used the auto-fill %(n)s time"
-msgid_plural "You used the auto-fill %(n)s times"
-msgstr[0] "æ?¨ä½¿ç?¨äº? %(n)s 次è?ªå??å¡«å??"
-
-#: ../gnome-sudoku/src/lib/main.py:456
+#: ../gnome-sudoku/src/lib/main.py:428
 msgid "Save this game before starting new one?"
 msgstr "å?¨é??å§?æ?°ç??é??æ?²å??å?²å­?é??å??é??æ?²ï¼?"
 
-#: ../gnome-sudoku/src/lib/main.py:457
+#: ../gnome-sudoku/src/lib/main.py:429
 msgid "_Save game for later"
 msgstr "å?²å­?é??æ?²ä»¥å¾?å??ç?©(_S)"
 
-#: ../gnome-sudoku/src/lib/main.py:458
+#: ../gnome-sudoku/src/lib/main.py:430
 msgid "_Abandon game"
 msgstr "æ?¾æ£?é??æ?²(_A)"
 
-#: ../gnome-sudoku/src/lib/main.py:652
-#, python-format
-msgid "Playing %(difficulty)s puzzle."
-msgstr "æ­£å?¨é?²è¡?ç­?ç´?ç?º %(difficulty)s ç??é¡?ç?®ã??"
-
-#: ../gnome-sudoku/src/lib/main.py:668
+#: ../gnome-sudoku/src/lib/main.py:646
 msgid "Puzzle Information"
 msgstr "����"
 
-#: ../gnome-sudoku/src/lib/main.py:669
+#: ../gnome-sudoku/src/lib/main.py:647
 msgid "There is no current puzzle."
 msgstr "ç?®å??æ²?æ??é¡?ç?®ã??"
 
-#: ../gnome-sudoku/src/lib/main.py:674
+#: ../gnome-sudoku/src/lib/main.py:652
 msgid "Calculated difficulty: "
 msgstr "ç¶?è¨?ç®?å¾?ç??é?£åº¦ï¼?"
 
-#: ../gnome-sudoku/src/lib/main.py:678
+#: ../gnome-sudoku/src/lib/main.py:656
 msgid "Number of moves instantly fillable by elimination: "
 msgstr "å?¯ä»¥ç?¨æ¶?å?»æ³?å?³æ??å¡«ä¸?ç??æ?¹æ ¼ï¼?"
 
-#: ../gnome-sudoku/src/lib/main.py:681
+#: ../gnome-sudoku/src/lib/main.py:659
 msgid "Number of moves instantly fillable by filling: "
 msgstr "å?¯ä»¥å?³æ??å¡«ä¸?ç??æ?¹æ ¼ï¼?"
 
-#: ../gnome-sudoku/src/lib/main.py:684
+#: ../gnome-sudoku/src/lib/main.py:662
 msgid "Amount of trial-and-error required to solve: "
 msgstr "é??è¦?使ç?¨è©¦é?¯æ³?ç??次æ?¸ï¼?"
 
-#: ../gnome-sudoku/src/lib/main.py:687 ../gnome-sudoku/src/lib/main.py:688
+#: ../gnome-sudoku/src/lib/main.py:665 ../gnome-sudoku/src/lib/main.py:666
 msgid "Puzzle Statistics"
 msgstr "��統�"
 
-#. Our initial row...
-#: ../gnome-sudoku/src/lib/main.py:779
-msgid "No Tracker"
-msgstr "æ²?æ??追蹤å?¨"
+#: ../gnome-sudoku/src/lib/main.py:757
+msgid "Untracked"
+msgstr ""
 
-#: ../gnome-sudoku/src/lib/main.py:789
-msgid "Clear all moves tracked by selected tracker."
-msgstr "æ¸?é?¤æ??æ??以é?¸å??ç??追蹤å?¨è¿½è¹¤ç??å¡«æ³?ã??"
+#: ../gnome-sudoku/src/lib/main.py:766
+msgid "_Remove"
+msgstr "移�(_R)"
 
-#: ../gnome-sudoku/src/lib/main.py:793
-msgid "_Clear Others"
-msgstr "æ¸?é?¤å?¶ä»?ç??(_C)"
+#: ../gnome-sudoku/src/lib/main.py:767
+#, fuzzy
+#| msgid "Clear all moves tracked by selected tracker."
+msgid "Delete selected tracker."
+msgstr "å?ªé?¤å·²é?¸ç??æ??å­?"
 
-#: ../gnome-sudoku/src/lib/main.py:795
-msgid "Clear all moves not tracked by selected tracker."
-msgstr "æ¸?é?¤æ??æ??ä¸?被é?¸å??ç??追蹤å?¨è¿½è¹¤ç??å¡«æ³?ã??"
+#: ../gnome-sudoku/src/lib/main.py:773
+msgid "Hide current tracker entries."
+msgstr ""
 
-#: ../gnome-sudoku/src/lib/main.py:820
+#: ../gnome-sudoku/src/lib/main.py:778
+msgid "A_pply"
+msgstr "��(_P)"
+
+#: ../gnome-sudoku/src/lib/main.py:779
+#, fuzzy
+#| msgid "Clear all moves tracked by selected tracker."
+msgid "Apply all tracked values and remove the tracker."
+msgstr "æ¸?é?¤æ??æ??以é?¸å??ç??追蹤å?¨è¿½è¹¤ç??å¡«æ³?ã??"
+
+#: ../gnome-sudoku/src/lib/main.py:815
 #, python-format
 msgid "Tracker %s"
 msgstr "追蹤� %s"
 
-#: ../gnome-sudoku/src/lib/game_selector.py:150
+#: ../gnome-sudoku/src/lib/game_selector.py:157
 #, python-format
-msgid "Last Played %(timeAgo)s"
+msgid "Last played %(timeAgo)s"
 msgstr "ä¸?次ç?©ç??æ??å?»ç?º %(timeAgo)s"
 
-#: ../gnome-sudoku/src/lib/game_selector.py:151
+#: ../gnome-sudoku/src/lib/game_selector.py:158
 #, python-format
 msgid "%(level)s puzzle"
 msgstr "%(level)s ç´?é¡?ç?®"
 
-#: ../gnome-sudoku/src/lib/game_selector.py:152
+#: ../gnome-sudoku/src/lib/game_selector.py:159
 #, python-format
 msgid "Played for %(duration)s"
 msgstr "�� %(duration)s"
 
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:114
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:125
-msgid "Working..."
-msgstr "é??ç®?中â?¦"
-
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:155
-#, python-format
-msgid "%(n)s puzzle"
-msgid_plural "%(n)s puzzles"
-msgstr[0] "%(n)s å??é¡?ç?®"
-
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:180
-msgid "Stopped"
-msgstr "å·²å??æ­¢"
-
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:195
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:205
-#, python-format
-msgid "Generated %(n)s out of %(total)s puzzle"
-msgid_plural "Generated %(n)s out of %(total)s puzzles"
-msgstr[0] "å·²ç?¢ç?? %(n)s / %(total)s å??é¡?ç?®"
-
-#: ../gnome-sudoku/src/lib/sudoku_generator_gui.py:213
-#, python-format
-msgid "Generated %(n)s puzzle"
-msgid_plural "Generated %(n)s puzzles"
-msgstr[0] "ç?¢ç??äº? %(n)s å??é¡?ç?®"
-
-#: ../gnome-sudoku/src/lib/sudoku.py:513
-msgid "Very Hard"
+#: ../gnome-sudoku/src/lib/sudoku.py:687
+msgid "Very hard"
 msgstr "極�"
 
-#: ../gnome-sudoku/src/lib/sudoku.py:515
+#: ../gnome-sudoku/src/lib/sudoku.py:689
 msgid "Medium"
 msgstr "æ?®é??"
 
-#: ../gnome-sudoku/src/lib/gtk_goodies/dialog_extras.py:159
+#: ../gnome-sudoku/src/lib/gtk_goodies/dialog_extras.py:158
 msgid "Do you really want to do this?"
 msgstr "æ?¨æ?¯å?¦ç¢ºå®?è¦?é??樣å??ï¼?"
 
-#: ../gnome-sudoku/src/lib/gtk_goodies/dialog_extras.py:193
+#: ../gnome-sudoku/src/lib/gtk_goodies/dialog_extras.py:192
 msgid "Don't ask me this again."
 msgstr "ä¸?è¦?å??å??æ??ã??"
 
@@ -6567,53 +6473,58 @@ msgstr "%A %p%I:%M"
 msgid "%B %e"
 msgstr "%B %e"
 
-#: ../gnomine/gnomine.c:52 ../gnomine/gnomine.desktop.in.in.h:2
+#: ../gnome-sudoku/src/lib/number_box.py:54
+msgid "_Clear"
+msgstr "��(_C)"
+
+#: ../gnomine/gnomine.c:54 ../gnomine/gnomine.desktop.in.in.h:2
 msgid "Mines"
 msgstr "æ??å?°é?·"
 
-#: ../gnomine/gnomine.c:105
+#: ../gnomine/gnomine.c:104
 msgctxt "board size"
 msgid "Custom"
 msgstr "��"
 
-#: ../gnomine/gnomine.c:171
+#: ../gnomine/gnomine.c:170
 #, c-format
 msgid "Flags: %d/%d"
 msgstr "���%d/%d"
 
-#: ../gnomine/gnomine.c:199
+#: ../gnomine/gnomine.c:198
 msgid "The Mines Have Been Cleared!"
 msgstr "æ??æ??å?°é?·å·²ç¶?æ¸?é?¤ï¼?"
 
-#: ../gnomine/gnomine.c:215
+#: ../gnomine/gnomine.c:214
 msgid "Mines Scores"
 msgstr "GNOME æ??å?°é?·ç©?å??æ¦?"
 
-#: ../gnomine/gnomine.c:218 ../gnotravex/gnotravex.c:1235
+#: ../gnomine/gnomine.c:217 ../gnotravex/gnotravex.c:1114
+#: ../swell-foop/src/Score.js:56
 msgid "Size:"
 msgstr "大��"
 
-#: ../gnomine/gnomine.c:326
+#: ../gnomine/gnomine.c:322
 msgid "Click a square, any square"
 msgstr "æ??ä»»ä½?ä¸?å??空格"
 
-#: ../gnomine/gnomine.c:328
+#: ../gnomine/gnomine.c:324
 msgid "Maybe they're all mines ..."
 msgstr "å?¯è?½ä»»ä½?ä¸?å??空格é?½æ?¯å?°é?·..."
 
-#: ../gnomine/gnomine.c:456
+#: ../gnomine/gnomine.c:446
 msgid "Resizing and SVG support:"
 msgstr "æ?¾å¤§ç¸®å°?å?? SVG æ?¯æ?´ï¼?"
 
-#: ../gnomine/gnomine.c:463
+#: ../gnomine/gnomine.c:453
 msgid "Faces:"
 msgstr "ç¬?è??ï¼?"
 
-#: ../gnomine/gnomine.c:466
+#: ../gnomine/gnomine.c:456
 msgid "Graphics:"
 msgstr "å??å½¢ï¼?"
 
-#: ../gnomine/gnomine.c:482
+#: ../gnomine/gnomine.c:472
 msgid ""
 "The popular logic puzzle minesweeper. Clear mines from a board using hints "
 "from squares you have already uncovered.\n"
@@ -6625,77 +6536,77 @@ msgstr ""
 "\n"
 "æ??å?°é?·(Mines)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../gnomine/gnomine.c:696
+#: ../gnomine/gnomine.c:635
 msgid "Field Size"
 msgstr "�格�大�"
 
-#: ../gnomine/gnomine.c:719
+#: ../gnomine/gnomine.c:658
 msgid "Custom Size"
 msgstr "��大�"
 
-#: ../gnomine/gnomine.c:726
+#: ../gnomine/gnomine.c:665
 msgid "_Number of mines:"
 msgstr "å?°é?·æ?¸é??(_N)ï¼?"
 
-#: ../gnomine/gnomine.c:739
+#: ../gnomine/gnomine.c:678
 msgid "_Horizontal:"
 msgstr "æ°´å¹³(_H)ï¼?"
 
-#: ../gnomine/gnomine.c:751
+#: ../gnomine/gnomine.c:690
 msgid "_Vertical:"
 msgstr "å??ç?´(_V)ï¼?"
 
-#: ../gnomine/gnomine.c:768
+#: ../gnomine/gnomine.c:707
 msgid "Flags"
 msgstr "æ??å¹?"
 
-#: ../gnomine/gnomine.c:771
+#: ../gnomine/gnomine.c:710
 msgid "_Use \"I'm not sure\" flags"
 msgstr "å?¯å°?æ?¹æ ¼æ¨?è¨?ç?ºã??ä¸?ç?¥é??ã??(_U)"
 
-#: ../gnomine/gnomine.c:782
+#: ../gnomine/gnomine.c:721
 msgid "Warnings"
 msgstr "è­¦å??"
 
-#: ../gnomine/gnomine.c:785
+#: ../gnomine/gnomine.c:724
 msgid "_Use \"Too many flags\" warning"
 msgstr "使ç?¨ã??æ¨?è¨?é??å¤?ã??è­¦å??(_U)"
 
-#: ../gnomine/gnomine.c:796
+#: ../gnomine/gnomine.c:735
 msgid "Mines Preferences"
 msgstr "GNOME æ??å?°é?·å??好設å®?"
 
-#: ../gnomine/gnomine.c:1003
+#: ../gnomine/gnomine.c:929
 msgid "Width of grid"
 msgstr "æ ¼å­?ç??寬度"
 
-#: ../gnomine/gnomine.c:1004
+#: ../gnomine/gnomine.c:930
 msgid "Height of grid"
 msgstr "æ ¼å­?ç??é«?度"
 
-#: ../gnomine/gnomine.c:1006
+#: ../gnomine/gnomine.c:932
 msgid "Number of mines"
 msgstr "å?°é?·æ?¸é??"
 
-#: ../gnomine/gnomine.c:1009 ../gnomine/gnomine.schemas.in.h:8
+#: ../gnomine/gnomine.c:935 ../gnomine/gnomine.schemas.in.h:8
 msgid "Size of the board (0-2 = small-large, 3=custom)"
 msgstr "��大� (0-2 表示��大�3 表示��)"
 
-#: ../gnomine/gnomine.c:1010 ../gnotravex/gnotravex.c:399
-#: ../gnotski/gnotski.c:466 ../iagno/gnothello.c:149
+#: ../gnomine/gnomine.c:936 ../gnotravex/gnotravex.c:262
+#: ../gnotski/gnotski.c:458 ../iagno/gnothello.c:149
 msgid "X location of window"
 msgstr "��水平�置"
 
-#: ../gnomine/gnomine.c:1012 ../gnotravex/gnotravex.c:401
-#: ../gnotski/gnotski.c:468 ../iagno/gnothello.c:151
+#: ../gnomine/gnomine.c:938 ../gnotravex/gnotravex.c:264
+#: ../gnotski/gnotski.c:460 ../iagno/gnothello.c:151
 msgid "Y location of window"
 msgstr "è¦?çª?å??ç?´ä½?ç½®"
 
-#: ../gnomine/gnomine.c:1156
+#: ../gnomine/gnomine.c:1076
 msgid "Press to Resume"
 msgstr "è«?æ??é??裡繼çº?é??æ?²"
 
-#: ../gnomine/gnomine.c:1190
+#: ../gnomine/gnomine.c:1110
 msgid "Time: "
 msgstr "æ??é??ï¼?"
 
@@ -6771,241 +6682,229 @@ msgstr ""
 msgid "Could not load images"
 msgstr "ç?¡æ³?è¼?å?¥å??ç??"
 
-#: ../gnotravex/gnotravex.c:47 ../gnotravex/gnotravex.desktop.in.in.h:2
+#: ../gnotravex/gnotravex.c:46 ../gnotravex/gnotravex.desktop.in.in.h:2
 msgid "Tetravex"
 msgstr "æ?¸å­?æ?¼å??"
 
+#: ../gnotravex/gnotravex.c:116
+msgid "2Ã?2"
+msgstr "2Ã?2"
+
+#: ../gnotravex/gnotravex.c:117
+msgid "3Ã?3"
+msgstr "3Ã?3"
+
+#: ../gnotravex/gnotravex.c:118
+msgid "4Ã?4"
+msgstr "4Ã?4"
+
+#: ../gnotravex/gnotravex.c:119
+msgid "5Ã?5"
+msgstr "5Ã?5"
+
+#: ../gnotravex/gnotravex.c:120
+msgid "6Ã?6"
+msgstr "6Ã?6"
+
+#: ../gnotravex/gnotravex.c:199
+msgid "_2Ã?2"
+msgstr "_2Ã?2"
+
+#: ../gnotravex/gnotravex.c:199
+msgid "Play on a 2Ã?2 board"
+msgstr "使ç?¨ 2Ã?2 æ ¼ç??ç??é?¢"
+
+#: ../gnotravex/gnotravex.c:201
+msgid "_3Ã?3"
+msgstr "_3Ã?3"
+
+#: ../gnotravex/gnotravex.c:201
+msgid "Play on a 3Ã?3 board"
+msgstr "使ç?¨ 3Ã?3 æ ¼ç??ç??é?¢"
+
+#: ../gnotravex/gnotravex.c:203
+msgid "_4Ã?4"
+msgstr "_4Ã?4"
+
+#: ../gnotravex/gnotravex.c:203
+msgid "Play on a 4Ã?4 board"
+msgstr "使ç?¨ 4Ã?4 æ ¼ç??ç??é?¢"
+
+#: ../gnotravex/gnotravex.c:205
+msgid "_5Ã?5"
+msgstr "_5Ã?5"
+
+#: ../gnotravex/gnotravex.c:205
+msgid "Play on a 5Ã?5 board"
+msgstr "使ç?¨ 5Ã?5 æ ¼ç??ç??é?¢"
+
+#: ../gnotravex/gnotravex.c:207
+msgid "_6Ã?6"
+msgstr "_6Ã?6"
+
+#: ../gnotravex/gnotravex.c:207
+msgid "Play on a 6Ã?6 board"
+msgstr "使ç?¨ 6Ã?6 æ ¼ç??ç??é?¢"
+
+#: ../gnotravex/gnotravex.c:266
+msgid "Size of board (2-6)"
+msgstr "ç??é?¢ç??大å°?(2-6)"
+
+#: ../gnotravex/gnotravex.c:267
+msgid "SIZE"
+msgstr "大�"
+
 # (Abel) ç?¨ä¸­æ??æ?¸å­?好å??ä¹?å¾?æ??趣
 #. Translators: in-game numbers, replaceable with single-character local ideograms
-#: ../gnotravex/gnotravex.c:68
+#: ../gnotravex/gnotravex.c:460
 msgctxt "number"
 msgid "0"
 msgstr "0"
 
-#: ../gnotravex/gnotravex.c:69
+#: ../gnotravex/gnotravex.c:461
 msgctxt "number"
 msgid "1"
 msgstr "1"
 
-#: ../gnotravex/gnotravex.c:70
+#: ../gnotravex/gnotravex.c:462
 msgctxt "number"
 msgid "2"
 msgstr "2"
 
-#: ../gnotravex/gnotravex.c:71
+#: ../gnotravex/gnotravex.c:463
 msgctxt "number"
 msgid "3"
 msgstr "3"
 
-#: ../gnotravex/gnotravex.c:72
+#: ../gnotravex/gnotravex.c:464
 msgctxt "number"
 msgid "4"
 msgstr "4"
 
-#: ../gnotravex/gnotravex.c:73
+#: ../gnotravex/gnotravex.c:465
 msgctxt "number"
 msgid "5"
 msgstr "5"
 
-#: ../gnotravex/gnotravex.c:74
+#: ../gnotravex/gnotravex.c:466
 msgctxt "number"
 msgid "6"
 msgstr "6"
 
-#: ../gnotravex/gnotravex.c:75
+#: ../gnotravex/gnotravex.c:467
 msgctxt "number"
 msgid "7"
 msgstr "7"
 
-#: ../gnotravex/gnotravex.c:76
+#: ../gnotravex/gnotravex.c:468
 msgctxt "number"
 msgid "8"
 msgstr "8"
 
-#: ../gnotravex/gnotravex.c:77
+#: ../gnotravex/gnotravex.c:469
 msgctxt "number"
 msgid "9"
 msgstr "9"
 
-#: ../gnotravex/gnotravex.c:87
-msgid "2Ã?2"
-msgstr "2Ã?2"
+#: ../gnotravex/gnotravex.c:939 ../mahjongg/mahjongg.c:943
+msgid "Game paused"
+msgstr "é??æ?²æ?«å??"
 
-#: ../gnotravex/gnotravex.c:88
-msgid "3Ã?3"
-msgstr "3Ã?3"
+#: ../gnotravex/gnotravex.c:1002
+#, c-format
+msgid "Playing %dÃ?%d board"
+msgstr "使ç?¨ %dÃ?%d æ ¼ç??ç??é?¢"
 
-#: ../gnotravex/gnotravex.c:89
-msgid "4Ã?4"
-msgstr "4Ã?4"
+#: ../gnotravex/gnotravex.c:1112
+msgid "Tetravex Scores"
+msgstr "æ?¸å­?æ?¼å??ç©?å??æ¦?"
 
-#: ../gnotravex/gnotravex.c:90
-msgid "5Ã?5"
-msgstr "5Ã?5"
+#: ../gnotravex/gnotravex.c:1176
+msgid "Puzzle solved! Well done!"
+msgstr "解決äº?ï¼?å??å¾?好ï¼?"
 
-#: ../gnotravex/gnotravex.c:91
-msgid "6Ã?6"
-msgstr "6Ã?6"
+#: ../gnotravex/gnotravex.c:1178
+msgid "Puzzle solved!"
+msgstr "解決��"
+
+#: ../gnotravex/gnotravex.c:1632
+msgid ""
+"GNOME Tetravex is a simple puzzle where pieces must be positioned so that "
+"the same numbers are touching each other.\n"
+"\n"
+"Tetravex is a part of GNOME Games."
+msgstr ""
+"GNOME æ?¸å­?æ?¼å??æ?¯ä¸?å??ç°¡å?®ç??æ?¼å??é??æ?²ï¼?ç?®æ¨?æ?¯å°?æ?¹å¡?æ?¼å?¨ä¸?èµ·ï¼?使å¾?ç?¸é?°æ?¹å¡?ä¹?é??ç??"
+"æ?¸å­?ä¸?樣ã??\n"
+"\n"
+"æ?¸å­?æ?¼å??(Tetravex)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../gnotravex/gnotravex.c:306
+#: ../gnotravex/gnotravex.c:1755
 msgid "_Size"
 msgstr "大�(_S)"
 
-#: ../gnotravex/gnotravex.c:315
+#: ../gnotravex/gnotravex.c:1760
 msgid "Sol_ve"
 msgstr "���解決(_V)"
 
-#: ../gnotravex/gnotravex.c:315
+#: ../gnotravex/gnotravex.c:1760
 msgid "Solve the game"
 msgstr "ç?±é?»è?¦å®?æ??é??å±?é??æ?²"
 
-#: ../gnotravex/gnotravex.c:324
+#: ../gnotravex/gnotravex.c:1764
 msgid "_Up"
 msgstr "�(_U)"
 
-#: ../gnotravex/gnotravex.c:325
+#: ../gnotravex/gnotravex.c:1765
 msgid "Move the pieces up"
 msgstr "å??ä¸?移å??æ??å®?ç??æ?¸å­?æ?¹å¡?"
 
-#: ../gnotravex/gnotravex.c:326
+#: ../gnotravex/gnotravex.c:1766
 msgid "_Left"
 msgstr "å·¦(_L)"
 
-#: ../gnotravex/gnotravex.c:327
+#: ../gnotravex/gnotravex.c:1767
 msgid "Move the pieces left"
 msgstr "å??左移å??æ??å®?ç??æ?¸å­?æ?¹å¡?"
 
-#: ../gnotravex/gnotravex.c:328
+#: ../gnotravex/gnotravex.c:1768
 msgid "_Right"
 msgstr "å?³(_R)"
 
-#: ../gnotravex/gnotravex.c:329
+#: ../gnotravex/gnotravex.c:1769
 msgid "Move the pieces right"
 msgstr "å??å?³ç§»å??æ??å®?ç??æ?¸å­?æ?¹å¡?"
 
-#: ../gnotravex/gnotravex.c:330
+#: ../gnotravex/gnotravex.c:1770
 msgid "_Down"
 msgstr "�(_D)"
 
-#: ../gnotravex/gnotravex.c:331
+#: ../gnotravex/gnotravex.c:1771
 msgid "Move the pieces down"
 msgstr "å??ä¸?移å??æ??å®?ç??æ?¸å­?æ?¹å¡?"
 
-#: ../gnotravex/gnotravex.c:337
-msgid "_2Ã?2"
-msgstr "_2Ã?2"
-
-#: ../gnotravex/gnotravex.c:337
-msgid "Play on a 2Ã?2 board"
-msgstr "使ç?¨ 2Ã?2 æ ¼ç??ç??é?¢"
-
-#: ../gnotravex/gnotravex.c:339
-msgid "_3Ã?3"
-msgstr "_3Ã?3"
-
-#: ../gnotravex/gnotravex.c:339
-msgid "Play on a 3Ã?3 board"
-msgstr "使ç?¨ 3Ã?3 æ ¼ç??ç??é?¢"
-
-#: ../gnotravex/gnotravex.c:341
-msgid "_4Ã?4"
-msgstr "_4Ã?4"
-
-#: ../gnotravex/gnotravex.c:341
-msgid "Play on a 4Ã?4 board"
-msgstr "使ç?¨ 4Ã?4 æ ¼ç??ç??é?¢"
-
-#: ../gnotravex/gnotravex.c:343
-msgid "_5Ã?5"
-msgstr "_5Ã?5"
-
-#: ../gnotravex/gnotravex.c:343
-msgid "Play on a 5Ã?5 board"
-msgstr "使ç?¨ 5Ã?5 æ ¼ç??ç??é?¢"
-
-#: ../gnotravex/gnotravex.c:345
-msgid "_6Ã?6"
-msgstr "_6Ã?6"
-
-#: ../gnotravex/gnotravex.c:345
-msgid "Play on a 6Ã?6 board"
-msgstr "使ç?¨ 6Ã?6 æ ¼ç??ç??é?¢"
-
-#: ../gnotravex/gnotravex.c:350
-msgid "Tile _Colours"
-msgstr "æ?¼å??è?²å½©(_C)"
-
-#: ../gnotravex/gnotravex.c:403
-msgid "Size of board (2-6)"
-msgstr "ç??é?¢ç??大å°?(2-6)"
-
-#: ../gnotravex/gnotravex.c:404
-msgid "SIZE"
-msgstr "大�"
-
-#: ../gnotravex/gnotravex.c:1117
-msgid "Puzzle solved! Well done!"
-msgstr "解決äº?ï¼?å??å¾?好ï¼?"
-
-#: ../gnotravex/gnotravex.c:1119
-msgid "Puzzle solved!"
-msgstr "解決��"
-
-#: ../gnotravex/gnotravex.c:1233
-msgid "Tetravex Scores"
-msgstr "æ?¸å­?æ?¼å??ç©?å??æ¦?"
-
-#: ../gnotravex/gnotravex.c:1499 ../mahjongg/mahjongg.c:977
-msgid "Game paused"
-msgstr "é??æ?²æ?«å??"
-
-#: ../gnotravex/gnotravex.c:1629
-#, c-format
-msgid "Playing %dÃ?%d board"
-msgstr "使ç?¨ %dÃ?%d æ ¼ç??ç??é?¢"
-
-#: ../gnotravex/gnotravex.c:1911
-msgid ""
-"GNOME Tetravex is a simple puzzle where pieces must be positioned so that "
-"the same numbers are touching each other.\n"
-"\n"
-"Tetravex is a part of GNOME Games."
-msgstr ""
-"GNOME æ?¸å­?æ?¼å??æ?¯ä¸?å??ç°¡å?®ç??æ?¼å??é??æ?²ï¼?ç?®æ¨?æ?¯å°?æ?¹å¡?æ?¼å?¨ä¸?èµ·ï¼?使å¾?ç?¸é?°æ?¹å¡?ä¹?é??ç??"
-"æ?¸å­?ä¸?樣ã??\n"
-"\n"
-"æ?¸å­?æ?¼å??(Tetravex)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
-
 #: ../gnotravex/gnotravex.desktop.in.in.h:1
 msgid "Complete the puzzle by matching numbered tiles"
 msgstr "é??å°?æ?¸å­?ä¾?å®?æ??æ?¼å??"
 
-#: ../gnotravex/gnotravex.schemas.in.h:1
-msgid "A flag to enable coloured tiles."
-msgstr "å??ç?¨å½©è?²ç??é?¢ç??æ??æ¨?ã??"
-
 #: ../gnotravex/gnotravex.schemas.in.h:2
-msgid "Control coloured tiles"
-msgstr "æ?§å?¶å½©è?²ç??ç??"
-
-#: ../gnotravex/gnotravex.schemas.in.h:4
 msgid ""
 "Select whether to drag the tiles or to click on the source then the "
 "destination."
 msgstr "é?¸æ??使ç?¨æ??æ?¾ç??æ?¹å¼?é??æ?¯é»?é?¸æ?¹å¼?移å??æ?¼å??ã??"
 
-#: ../gnotravex/gnotravex.schemas.in.h:5
+#: ../gnotravex/gnotravex.schemas.in.h:3
 msgid "The size of the playing grid"
 msgstr "é??æ?²æ?¹æ ¼é?£å??大å°?"
 
-#: ../gnotravex/gnotravex.schemas.in.h:6
+#: ../gnotravex/gnotravex.schemas.in.h:4
 msgid ""
 "The value of this key is used to decide the size of the playing grid. The "
 "valid values are 2 to 8, anything else gets set to 3."
 msgstr ""
 "æ?¬æ?¸å?¼æ±ºå®?æ?¹æ ¼é?£å??ç??大å°?ã??æ??æ??ç??å?¼ä»?ä¹? 2 è?³ 8 ä¹?é??ï¼?å?¶å®?ç??æ?¸å?¼é?½æ??æ?´æ?¹ç?º 3ã??"
 
-#: ../gnotski/gnotski.c:47 ../gnotski/gnotski.desktop.in.in.h:1
+#: ../gnotski/gnotski.c:48 ../gnotski/gnotski.desktop.in.in.h:1
 msgid "Klotski"
 msgstr "è?¯å®¹é??"
 
@@ -7015,190 +6914,190 @@ msgid "Only 18 steps"
 msgstr "18 æ­¥"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:104 ../gnotski/gnotski.c:194
+#: ../gnotski/gnotski.c:104 ../gnotski/gnotski.c:191
 msgid "Daisy"
 msgstr "Daisy"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:105 ../gnotski/gnotski.c:200
+#: ../gnotski/gnotski.c:105 ../gnotski/gnotski.c:197
 msgid "Violet"
 msgstr "Violet"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:106 ../gnotski/gnotski.c:206
+#: ../gnotski/gnotski.c:106 ../gnotski/gnotski.c:203
 msgid "Poppy"
 msgstr "Poppy"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:107 ../gnotski/gnotski.c:212
+#: ../gnotski/gnotski.c:107 ../gnotski/gnotski.c:209
 msgid "Pansy"
 msgstr "Pansy"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:108 ../gnotski/gnotski.c:218
+#: ../gnotski/gnotski.c:108 ../gnotski/gnotski.c:215
 msgid "Snowdrop"
 msgstr "Snowdrop"
 
 #. puzzle name - sometimes called "Le'Ane Rouge"
-#: ../gnotski/gnotski.c:109 ../gnotski/gnotski.c:224
+#: ../gnotski/gnotski.c:109 ../gnotski/gnotski.c:221
 msgid "Red Donkey"
 msgstr "æ©«å??ç«?馬å¼?"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:110 ../gnotski/gnotski.c:230
+#: ../gnotski/gnotski.c:110 ../gnotski/gnotski.c:227
 msgid "Trail"
 msgstr "層層設���"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:111 ../gnotski/gnotski.c:236
+#: ../gnotski/gnotski.c:111 ../gnotski/gnotski.c:233
 msgid "Ambush"
 msgstr "層層設���"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:112 ../gnotski/gnotski.c:242
+#: ../gnotski/gnotski.c:112 ../gnotski/gnotski.c:239
 msgid "Agatka"
 msgstr "Agatka"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:113 ../gnotski/gnotski.c:247
+#: ../gnotski/gnotski.c:113 ../gnotski/gnotski.c:244
 msgid "Success"
 msgstr "Success"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:114 ../gnotski/gnotski.c:252
+#: ../gnotski/gnotski.c:114 ../gnotski/gnotski.c:249
 msgid "Bone"
 msgstr "Bone"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:115 ../gnotski/gnotski.c:258
+#: ../gnotski/gnotski.c:115 ../gnotski/gnotski.c:255
 msgid "Fortune"
 msgstr "Fortune"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:116 ../gnotski/gnotski.c:266
+#: ../gnotski/gnotski.c:116 ../gnotski/gnotski.c:263
 msgid "Fool"
 msgstr "Fool"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:117 ../gnotski/gnotski.c:272
+#: ../gnotski/gnotski.c:117 ../gnotski/gnotski.c:269
 msgid "Solomon"
 msgstr "Solomon"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:118 ../gnotski/gnotski.c:279
+#: ../gnotski/gnotski.c:118 ../gnotski/gnotski.c:276
 msgid "Cleopatra"
 msgstr "Cleopatra"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:119 ../gnotski/gnotski.c:284
+#: ../gnotski/gnotski.c:119 ../gnotski/gnotski.c:281
 msgid "Shark"
 msgstr "Shark"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:120 ../gnotski/gnotski.c:292
+#: ../gnotski/gnotski.c:120 ../gnotski/gnotski.c:289
 msgid "Rome"
 msgstr "Rome"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:121 ../gnotski/gnotski.c:299
+#: ../gnotski/gnotski.c:121 ../gnotski/gnotski.c:296
 msgid "Pennant Puzzle"
 msgstr "Pennant Puzzle"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:122 ../gnotski/gnotski.c:305
+#: ../gnotski/gnotski.c:122 ../gnotski/gnotski.c:302
 msgid "Ithaca"
 msgstr "Ithaca"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:123 ../gnotski/gnotski.c:326
+#: ../gnotski/gnotski.c:123 ../gnotski/gnotski.c:323
 msgid "Pelopones"
 msgstr "Pelopones"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:124 ../gnotski/gnotski.c:333
+#: ../gnotski/gnotski.c:124 ../gnotski/gnotski.c:330
 msgid "Transeuropa"
 msgstr "Transeuropa"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:125 ../gnotski/gnotski.c:342
+#: ../gnotski/gnotski.c:125 ../gnotski/gnotski.c:339
 msgid "Lodzianka"
 msgstr "Lodzianka"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:126 ../gnotski/gnotski.c:348
+#: ../gnotski/gnotski.c:126 ../gnotski/gnotski.c:345
 msgid "Polonaise"
 msgstr "Polonaise"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:127 ../gnotski/gnotski.c:353
+#: ../gnotski/gnotski.c:127 ../gnotski/gnotski.c:350
 msgid "Baltic Sea"
 msgstr "Baltic Sea"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:128 ../gnotski/gnotski.c:358
+#: ../gnotski/gnotski.c:128 ../gnotski/gnotski.c:355
 msgid "American Pie"
 msgstr "American Pie"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:129 ../gnotski/gnotski.c:370
+#: ../gnotski/gnotski.c:129 ../gnotski/gnotski.c:367
 msgid "Traffic Jam"
 msgstr "Traffic Jam"
 
 #. puzzle name
-#: ../gnotski/gnotski.c:130 ../gnotski/gnotski.c:377
+#: ../gnotski/gnotski.c:130 ../gnotski/gnotski.c:374
 msgid "Sunshine"
 msgstr "Sunshine"
 
 # (Abel) 中å??æ²?æ??å°?è?¯å®¹é??ç?¼æ??å??大ï¼?æ??以æ?¾é??äº? game board ç??è­¯å??æ©?æ??å¾?渺è?«
 #. puzzle name
-#: ../gnotski/gnotski.c:188
+#: ../gnotski/gnotski.c:185
 msgid "Only 18 Steps"
 msgstr "18 æ­¥"
 
 #. set of puzzles
-#: ../gnotski/gnotski.c:418
+#: ../gnotski/gnotski.c:415
 msgid "HuaRong Trail"
 msgstr "è?¯å®¹é??"
 
 #. set of puzzles
-#: ../gnotski/gnotski.c:420
+#: ../gnotski/gnotski.c:417
 msgid "Challenge Pack"
 msgstr "Challenge Pack"
 
 #. set of puzzles
-#: ../gnotski/gnotski.c:422
+#: ../gnotski/gnotski.c:419
 msgid "Skill Pack"
 msgstr "Skill Pack"
 
-#: ../gnotski/gnotski.c:423
+#: ../gnotski/gnotski.c:420
 msgid "_Restart Puzzle"
 msgstr "é??æ?°é??å§?(_R)"
 
-#: ../gnotski/gnotski.c:425
+#: ../gnotski/gnotski.c:422
 msgid "Next Puzzle"
 msgstr "ä¸?å??ç??å??"
 
-#: ../gnotski/gnotski.c:427
+#: ../gnotski/gnotski.c:424
 msgid "Previous Puzzle"
 msgstr "ä¸?å??ç??å??"
 
-#: ../gnotski/gnotski.c:677
+#: ../gnotski/gnotski.c:636
 msgid "Level completed."
 msgstr "é ?å?©é??é??ã??"
 
-#: ../gnotski/gnotski.c:815
+#: ../gnotski/gnotski.c:774
 msgid "The Puzzle Has Been Solved!"
 msgstr "此��已�被破解��"
 
-#: ../gnotski/gnotski.c:832
+#: ../gnotski/gnotski.c:791
 msgid "Klotski Scores"
 msgstr "è?¯å®¹é??ç©?å??æ¦?"
 
-#: ../gnotski/gnotski.c:835
+#: ../gnotski/gnotski.c:794
 msgid "Puzzle:"
 msgstr "é¡?ç?®:"
 
-#: ../gnotski/gnotski.c:919
+#: ../gnotski/gnotski.c:878
 msgid ""
 "The theme for this game failed to render.\n"
 "\n"
@@ -7208,7 +7107,7 @@ msgstr ""
 "\n"
 "è«?確ä¿?è?¯å®¹é??已正確å®?è£?ã??"
 
-#: ../gnotski/gnotski.c:1166
+#: ../gnotski/gnotski.c:1121
 #, c-format
 msgid ""
 "Could not find the image:\n"
@@ -7221,12 +7120,12 @@ msgstr ""
 "\n"
 "è«?確ä¿?è?¯å®¹é??已正確å®?è£?ã??"
 
-#: ../gnotski/gnotski.c:1205
+#: ../gnotski/gnotski.c:1160
 #, c-format
 msgid "Moves: %d"
 msgstr "步��%d"
 
-#: ../gnotski/gnotski.c:1534
+#: ../gnotski/gnotski.c:1489
 msgid ""
 "Sliding Block Puzzles\n"
 "\n"
@@ -7252,7 +7151,7 @@ msgstr "æ­£å?¨ç?©ç??ç??å??"
 msgid "Already used! Where do you want to put that?"
 msgstr "é??å??ä¸?è?½å??ç?¨äº?ï¼?è«?é?¸æ??å?¶å®?å?°æ?¹ï¼?"
 
-#: ../gtali/clist.c:414
+#: ../gtali/clist.c:414 ../swell-foop/src/Score.js:16
 #, c-format
 msgid "Score: %d"
 msgstr "å¾?å??ï¼?%d"
@@ -7466,48 +7365,48 @@ msgstr "å?°é?£"
 msgid "Player Names"
 msgstr "ç?©å®¶å??稱"
 
-#: ../gtali/yahtzee.c:85 ../gtali/yahtzee.c:109 ../gtali/yahtzee.c:516
+#: ../gtali/yahtzee.c:85 ../gtali/yahtzee.c:109 ../gtali/yahtzee.c:517
 msgid "1s [total of 1s]"
 msgstr "1 ç??總å??"
 
-#: ../gtali/yahtzee.c:86 ../gtali/yahtzee.c:110 ../gtali/yahtzee.c:517
+#: ../gtali/yahtzee.c:86 ../gtali/yahtzee.c:110 ../gtali/yahtzee.c:518
 msgid "2s [total of 2s]"
 msgstr "2 ç??總å??"
 
-#: ../gtali/yahtzee.c:87 ../gtali/yahtzee.c:111 ../gtali/yahtzee.c:518
+#: ../gtali/yahtzee.c:87 ../gtali/yahtzee.c:111 ../gtali/yahtzee.c:519
 msgid "3s [total of 3s]"
 msgstr "3 ç??總å??"
 
-#: ../gtali/yahtzee.c:88 ../gtali/yahtzee.c:112 ../gtali/yahtzee.c:519
+#: ../gtali/yahtzee.c:88 ../gtali/yahtzee.c:112 ../gtali/yahtzee.c:520
 msgid "4s [total of 4s]"
 msgstr "4 ç??總å??"
 
-#: ../gtali/yahtzee.c:89 ../gtali/yahtzee.c:113 ../gtali/yahtzee.c:520
+#: ../gtali/yahtzee.c:89 ../gtali/yahtzee.c:113 ../gtali/yahtzee.c:521
 msgid "5s [total of 5s]"
 msgstr "5 ç??總å??"
 
-#: ../gtali/yahtzee.c:90 ../gtali/yahtzee.c:114 ../gtali/yahtzee.c:521
+#: ../gtali/yahtzee.c:90 ../gtali/yahtzee.c:114 ../gtali/yahtzee.c:522
 msgid "6s [total of 6s]"
 msgstr "6 ç??總å??"
 
 #. End of upper panel
-#: ../gtali/yahtzee.c:92 ../gtali/yahtzee.c:117 ../gtali/yahtzee.c:522
+#: ../gtali/yahtzee.c:92 ../gtali/yahtzee.c:117 ../gtali/yahtzee.c:523
 msgid "3 of a Kind [total]"
 msgstr "ä¸?æ¢? [總å??]"
 
-#: ../gtali/yahtzee.c:93 ../gtali/yahtzee.c:523
+#: ../gtali/yahtzee.c:93 ../gtali/yahtzee.c:524
 msgid "4 of a Kind [total]"
 msgstr "å??æ¢? [總å??]"
 
-#: ../gtali/yahtzee.c:94 ../gtali/yahtzee.c:524
+#: ../gtali/yahtzee.c:94 ../gtali/yahtzee.c:525
 msgid "Full House [25]"
 msgstr "è?«è?? [25 å??]"
 
-#: ../gtali/yahtzee.c:95 ../gtali/yahtzee.c:525
+#: ../gtali/yahtzee.c:95 ../gtali/yahtzee.c:526
 msgid "Small Straight [30]"
 msgstr "å??é?£é ? [30 å??]"
 
-#: ../gtali/yahtzee.c:96 ../gtali/yahtzee.c:121 ../gtali/yahtzee.c:526
+#: ../gtali/yahtzee.c:96 ../gtali/yahtzee.c:121 ../gtali/yahtzee.c:527
 msgid "Large Straight [40]"
 msgstr "äº?é?£é ? [40 å??]"
 
@@ -7515,7 +7414,7 @@ msgstr "äº?é?£é ? [40 å??]"
 msgid "5 of a Kind [50]"
 msgstr "�� [50]"
 
-#: ../gtali/yahtzee.c:98 ../gtali/yahtzee.c:124 ../gtali/yahtzee.c:528
+#: ../gtali/yahtzee.c:98 ../gtali/yahtzee.c:124 ../gtali/yahtzee.c:529
 msgid "Chance [total]"
 msgstr "ç?¡é??å?¶ [總å??]"
 
@@ -7538,35 +7437,35 @@ msgid "Bonus if >62"
 msgstr "ç??å?µ(總å?? > 62)"
 
 #. End of upper panel
-#: ../gtali/yahtzee.c:116 ../gtali/yahtzee.c:529
+#: ../gtali/yahtzee.c:116 ../gtali/yahtzee.c:530
 msgid "2 pair Same Color [total]"
 msgstr "å?©å°? [總å??]"
 
-#: ../gtali/yahtzee.c:118 ../gtali/yahtzee.c:530
+#: ../gtali/yahtzee.c:118 ../gtali/yahtzee.c:531
 msgid "Full House [15 + total]"
 msgstr "è?«è?? [15 å??å? ç¸½å??]"
 
-#: ../gtali/yahtzee.c:119 ../gtali/yahtzee.c:531
+#: ../gtali/yahtzee.c:119 ../gtali/yahtzee.c:532
 msgid "Full House Same Color [20 + total]"
 msgstr "å??è?²è?«è?? [20 å??å? ç¸½å??]"
 
-#: ../gtali/yahtzee.c:120 ../gtali/yahtzee.c:532
+#: ../gtali/yahtzee.c:120 ../gtali/yahtzee.c:533
 msgid "Flush (all same color) [35]"
 msgstr "å??è?±(å?¨é?¨å??è?²) [35]"
 
-#: ../gtali/yahtzee.c:122 ../gtali/yahtzee.c:533
+#: ../gtali/yahtzee.c:122 ../gtali/yahtzee.c:534
 msgid "4 of a Kind [25 + total]"
 msgstr "å??æ¢? [25 å??å? ç¸½å??]"
 
-#: ../gtali/yahtzee.c:123 ../gtali/yahtzee.c:534
+#: ../gtali/yahtzee.c:123 ../gtali/yahtzee.c:535
 msgid "5 of a Kind [50 + total]"
 msgstr "äº?æ¢? [50 å??å? ç¸½å??]"
 
-#: ../gtali/yahtzee.c:250
+#: ../gtali/yahtzee.c:251
 msgid "Choose a score slot."
 msgstr "é?¸æ??å??å??æ?¹æ³?ã??"
 
-#: ../gtali/yahtzee.c:527
+#: ../gtali/yahtzee.c:528
 msgid "5 of a Kind [total]"
 msgstr "5 å??ç?¸å?? [總è¨?]"
 
@@ -7615,15 +7514,15 @@ msgstr "輪å?°é»?å­?移å??"
 msgid "Light's move"
 msgstr "輪å?°ç?½å­?移å??"
 
-#: ../iagno/gnothello.c:958
+#: ../iagno/gnothello.c:959
 msgid "Dark:"
 msgstr "é»?ï¼?"
 
-#: ../iagno/gnothello.c:968
+#: ../iagno/gnothello.c:969
 msgid "Light:"
 msgstr "��"
 
-#: ../iagno/gnothello.c:992
+#: ../iagno/gnothello.c:993
 msgid "Welcome to Iagno!"
 msgstr "歡�������"
 
@@ -7687,7 +7586,7 @@ msgstr "顯示格�(_H)"
 msgid "_Flip final results"
 msgstr "çµ?æ??å¾?å??é??é??æ?¹æ£?å­?(_F)"
 
-#: ../iagno/properties.c:597 ../mahjongg/mahjongg.c:733
+#: ../iagno/properties.c:597 ../mahjongg/mahjongg.c:698
 msgid "_Tile set:"
 msgstr "å??å½¢é??(_T)ï¼?"
 
@@ -7845,7 +7744,7 @@ msgstr "é?¢é??å?¨è?¢å¹?模å¼?"
 msgid "End the current network game and return to network server"
 msgstr "çµ?æ­¢ç?®å??ç??網路é??æ?²ï¼?å??å?°ä¼ºæ??å?¨"
 
-#: ../libgames-support/games-stock.c:54 ../mahjongg/mahjongg.c:1249
+#: ../libgames-support/games-stock.c:54
 msgid "Pause the game"
 msgstr "æ?«å??é??æ?²"
 
@@ -7853,7 +7752,7 @@ msgstr "æ?«å??é??æ?²"
 msgid "Show a list of players in the network game"
 msgstr "顯示網路é??æ?²ä¸­ç??ç?©å®¶å??å?®"
 
-#: ../libgames-support/games-stock.c:58 ../mahjongg/mahjongg.c:1252
+#: ../libgames-support/games-stock.c:58
 msgid "Resume the paused game"
 msgstr "ç¹¼çº?é??æ?²"
 
@@ -7869,81 +7768,76 @@ msgstr "é??æ?²è¨­å®?"
 msgid "Quit this game"
 msgstr "é??å?ºæ?¬é??æ?²"
 
-#: ../libgames-support/games-stock.c:322
+#: ../libgames-support/games-stock.c:288
 msgid "_Fullscreen"
 msgstr "���(_F)"
 
 #. Translators: This "_New" is for the menu item 'Game->New', implies "New Game"
-#: ../libgames-support/games-stock.c:325
+#: ../libgames-support/games-stock.c:291
 msgid "_New"
 msgstr "é??æ?°å±?(_N)"
 
-#: ../libgames-support/games-stock.c:328
+#: ../libgames-support/games-stock.c:294
 msgid "_Redo Move"
 msgstr "å??æ¶?å??æ??(_R)"
 
-#. Translators: this is the "Reset" scores button in a scores dialogue
-#: ../libgames-support/games-stock.c:330
-msgid "_Reset"
-msgstr "é??設(_R)"
-
 #. Translators: "_Restart" is the menu item 'Game->Restart', implies "Restart Game"
-#: ../libgames-support/games-stock.c:332
+#: ../libgames-support/games-stock.c:298
 msgid "_Restart"
 msgstr "å??ç?©(_R)"
 
-#: ../libgames-support/games-stock.c:334
+#: ../libgames-support/games-stock.c:300
 msgid "_Deal"
 msgstr "ç?¼ç??(_D)"
 
-#: ../libgames-support/games-stock.c:336
+#: ../libgames-support/games-stock.c:302
 msgid "_Leave Fullscreen"
 msgstr "å??æ¶?å?¨è?¢å¹?(_L)"
 
-#: ../libgames-support/games-stock.c:338
+#: ../libgames-support/games-stock.c:304
 msgid "L_eave Game"
 msgstr "é?¢é??é??æ?²(_E)"
 
-#: ../libgames-support/games-stock.c:339
+#: ../libgames-support/games-stock.c:305
 msgid "Player _List"
 msgstr "ç?©å®¶å??å?®(_L)"
 
-#: ../libgames-support/games-stock.c:340
+#: ../libgames-support/games-stock.c:306
 msgid "_Pause"
 msgstr "æ?«å??(_P)"
 
-#: ../libgames-support/games-stock.c:341
+#: ../libgames-support/games-stock.c:307
 msgid "Res_ume"
 msgstr "繼�(_U)"
 
-#: ../libgames-support/games-stock.c:342
+#: ../libgames-support/games-stock.c:308
 msgid "_Scores"
 msgstr "å??æ?¸(_S)"
 
-#: ../libgames-support/games-stock.c:343
+#: ../libgames-support/games-stock.c:309
 msgid "_End Game"
 msgstr "çµ?æ??é??æ?²(_E)"
 
 #. Work around maemo brokenness wrt. stock item translations.
 #. * See https://bugs.maemo.org/show_bug.cgi?id=1449 .
-#: ../libgames-support/games-stock.c:349
+#: ../libgames-support/games-stock.c:315
 msgid "_About"
 msgstr "é??æ?¼(_A)"
 
-#: ../libgames-support/games-stock.c:350
+#: ../libgames-support/games-stock.c:316
 msgid "_Cancel"
 msgstr "å??æ¶?(_C)"
 
-#: ../libgames-support/games-stock.c:351
+#: ../libgames-support/games-stock.c:317
 msgid "_Close"
 msgstr "é??é??(_C)"
 
-#: ../libgames-support/games-stock.c:352
+#: ../libgames-support/games-stock.c:318
 msgid "_OK"
 msgstr "確�(_O)"
 
 #. %s is replaced with the name of the game in gnome-games.
-#: ../libgames-support/games-stock.c:413
+#: ../libgames-support/games-stock.c:379
 #, c-format
 msgid ""
 "%s is free software; you can redistribute it and/or modify it under the "
@@ -7955,7 +7849,7 @@ msgstr ""
 "ç¨?å¼?å??ç?ºæ?£ä½?è??ï¼?æ??ä¿®æ?¹ï¼?ç?¡è«?æ?¨ä¾?æ??ç??æ?¯æ?¬æ??æ¬?ç??第äº?ç??æ??ï¼?æ?¨è?ªè¡?é?¸æ??ç??ï¼?第 %d "
 "ç??ã??"
 
-#: ../libgames-support/games-stock.c:427
+#: ../libgames-support/games-stock.c:393
 msgid ""
 "You should have received a copy of the GNU General Public License along with "
 "this program.  If not, see <http://www.gnu.org/licenses/>."
@@ -7964,7 +7858,8 @@ msgstr ""
 "<http://www.gnu.org/licenses/>ã??"
 
 #: ../lightsoff/lightsoff.desktop.in.in.h:1 ../lightsoff/data/lightsoff.ui.h:1
-#: ../lightsoff/data/settings.ui.h:1
+#: ../lightsoff/data/settings.ui.h:2 ../lightsoff/src/About.js:11
+#: ../lightsoff/src/About.js:15
 msgid "Lights Off"
 msgstr "é??ç??é??æ?²"
 
@@ -8000,10 +7895,6 @@ msgstr "使ç?¨è??æ??è¿?ç??ç©?å??ã??"
 msgid "Whether or not to use the GNOME theme colors"
 msgstr "��使� GNOME ��主���"
 
-#: ../lightsoff/data/settings.ui.h:2
-msgid "Look & Feel"
-msgstr "å¤?è§?è??æ??覺"
-
 #: ../lightsoff/data/settings.ui.h:3 ../swell-foop/data/settings.ui.h:7
 msgid "Theme:"
 msgstr "��主��"
@@ -8012,6 +7903,20 @@ msgstr "��主��"
 msgid "Use colors from GNOME theme"
 msgstr "使ç?¨ GNOME ä½?æ?¯ä¸»é¡?ç??é¡?è?²"
 
+#: ../lightsoff/src/About.js:13
+msgid ""
+"Turn off all the lights\n"
+"\n"
+"Lights Off is a part of GNOME Games."
+msgstr ""
+"é??æ??æ??æ??ç??ç??\n"
+"\n"
+"é??ç??é??æ?²(Lights Off)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
+
+#: ../lightsoff/src/About.js:14 ../swell-foop/src/About.js:14
+msgid "Copyright  2009 Tim Horton"
+msgstr "ç??æ¬?æ??æ??  2009 Tim Horton"
+
 #: ../mahjongg/drawing.c:307
 msgid ""
 "The selected theme failed to render.\n"
@@ -8036,77 +7941,77 @@ msgstr ""
 "\n"
 "è«?確ä¿? GNOME ä¸?海麻å°?已正確å®?è£?ã??"
 
-#: ../mahjongg/mahjongg.c:43 ../mahjongg/mahjongg.c:934
-#: ../mahjongg/mahjongg.c:938 ../mahjongg/mahjongg.c:940
+#: ../mahjongg/mahjongg.c:45 ../mahjongg/mahjongg.c:899
+#: ../mahjongg/mahjongg.c:903 ../mahjongg/mahjongg.c:905
 #: ../mahjongg/mahjongg.desktop.in.in.h:2
 msgid "Mahjongg"
 msgstr "�海麻�"
 
-#: ../mahjongg/mahjongg.c:135
+#: ../mahjongg/mahjongg.c:136
 msgid "Could not load tile set"
 msgstr "ç?¡æ³?è¼?å?¥å??å½¢é??"
 
-#: ../mahjongg/mahjongg.c:306
+#: ../mahjongg/mahjongg.c:271
 msgid "Do you want to start a new game with this map?"
 msgstr "æ?¨æ?¯å?¦è¦?以é??å??æ??å??é??å§?æ?°ç??é??æ?²ï¼?"
 
-#: ../mahjongg/mahjongg.c:308
+#: ../mahjongg/mahjongg.c:273
 msgid "If you continue playing the next game will use the new map."
 msgstr "å¦?æ??æ?¨é?¸æ??ç¹¼çº?ç?©ï¼?ä¸?ä¸?å±?å°±æ??ç?¨æ?°ç??麻å°?æ??å??ã??"
 
-#: ../mahjongg/mahjongg.c:310
+#: ../mahjongg/mahjongg.c:275
 msgid "_Continue playing"
 msgstr "繼��(_C)"
 
-#: ../mahjongg/mahjongg.c:311
+#: ../mahjongg/mahjongg.c:276
 msgid "Use _new map"
 msgstr "使ç?¨æ?°ç??æ??å??(_N)"
 
-#: ../mahjongg/mahjongg.c:614
+#: ../mahjongg/mahjongg.c:579
 msgid "There are no more moves."
 msgstr "æ²?æ??ä»»ä½?å?¯ç§»èµ°ç??ç??äº?ã??"
 
-#: ../mahjongg/mahjongg.c:617
+#: ../mahjongg/mahjongg.c:582
 msgid "_New game"
 msgstr "é??æ?°å±?(_N)"
 
-#: ../mahjongg/mahjongg.c:622
+#: ../mahjongg/mahjongg.c:587
 msgid "_Shuffle"
 msgstr "æ´?ç??(_S)"
 
-#: ../mahjongg/mahjongg.c:664 ../mahjongg/mahjongg.c:993
+#: ../mahjongg/mahjongg.c:629 ../mahjongg/mahjongg.c:959
 msgid "Mahjongg Scores"
 msgstr "ä¸?海麻å°?ç©?å??æ¦?"
 
-#: ../mahjongg/mahjongg.c:705
+#: ../mahjongg/mahjongg.c:670
 msgid "Mahjongg Preferences"
 msgstr "ä¸?海麻å°?å??好設å®?"
 
-#: ../mahjongg/mahjongg.c:726
+#: ../mahjongg/mahjongg.c:691
 msgid "Tiles"
 msgstr "ç??é?¢"
 
-#: ../mahjongg/mahjongg.c:747
+#: ../mahjongg/mahjongg.c:712
 msgid "Maps"
 msgstr "æ??å??"
 
-#: ../mahjongg/mahjongg.c:754
+#: ../mahjongg/mahjongg.c:719
 msgid "_Select map:"
 msgstr "é?¸æ??æ??å??(_S)ï¼?"
 
-#: ../mahjongg/mahjongg.c:768
+#: ../mahjongg/mahjongg.c:733
 msgid "Colors"
 msgstr "�彩"
 
-#: ../mahjongg/mahjongg.c:914
+#: ../mahjongg/mahjongg.c:879
 msgid "Maps:"
 msgstr "æ??å??:"
 
-#: ../mahjongg/mahjongg.c:921
+#: ../mahjongg/mahjongg.c:886
 msgid "Tiles:"
 msgstr "ç??é?¢:"
 
-#: ../mahjongg/mahjongg.c:944
+#: ../mahjongg/mahjongg.c:909
 msgid ""
 "A matching game played with Mahjongg tiles.\n"
 "\n"
@@ -8116,32 +8021,32 @@ msgstr ""
 "\n"
 "ä¸?海麻å°?(Mahjongg)æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
 
-#: ../mahjongg/mahjongg.c:1188
+#: ../mahjongg/mahjongg.c:1154
 #, c-format
 msgid "Mahjongg - %s"
 msgstr "�海麻� - %s"
 
-#: ../mahjongg/mahjongg.c:1248
+#: ../mahjongg/mahjongg.c:1214
 msgid "Restart the current game"
 msgstr "é??æ?°å??ç?©é??å±?"
 
-#: ../mahjongg/mahjongg.c:1255
+#: ../mahjongg/mahjongg.c:1217
 msgid "Redo the last move"
 msgstr "é??å??ä¸?ä¸?æ­¥"
 
-#: ../mahjongg/mahjongg.c:1257
+#: ../mahjongg/mahjongg.c:1219
 msgid "Show a hint"
 msgstr "顯示æ??示"
 
-#: ../mahjongg/mahjongg.c:1447
+#: ../mahjongg/mahjongg.c:1400
 msgid "Tiles Left:"
 msgstr "å?©é¤?ç??æ?¸:"
 
-#: ../mahjongg/mahjongg.c:1456
+#: ../mahjongg/mahjongg.c:1409
 msgid "Moves Left:"
 msgstr "��步�:"
 
-#: ../mahjongg/mahjongg.c:1518
+#: ../mahjongg/mahjongg.c:1472
 msgid "Remove matching pairs of tiles."
 msgstr "å°?ç?¸å??ç??é?¢ç??麻å°?ä¸?å°?å°?å?°ç§»èµ°ã??"
 
@@ -8200,7 +8105,8 @@ msgid "Difficult"
 msgstr "��度"
 
 #: ../swell-foop/data/swell-foop.ui.h:1 ../swell-foop/data/settings.ui.h:6
-#: ../swell-foop/swell-foop.desktop.in.in.h:2
+#: ../swell-foop/swell-foop.desktop.in.in.h:2 ../swell-foop/src/About.js:11
+#: ../swell-foop/src/About.js:15
 msgid "Swell Foop"
 msgstr "Swell Foop"
 
@@ -8240,6 +8146,201 @@ msgstr "使ç?¨è¼?è?¯éº?ã??ä½?æ?¯è¼?æ?¢é??ç??å??ç?«ã??"
 msgid "Zealous animation"
 msgstr "Zealous å??ç?«"
 
+#: ../swell-foop/src/About.js:13
+msgid ""
+"I want to play that game! You know, they all go whirly-round and you click "
+"on them and they vanish!\n"
+"\n"
+"Swell Foop is a part of GNOME Games."
+msgstr ""
+"æ??å°±æ?¯è¦?ç?©é?£å??é??æ?²ï¼?å°±æ?¯å®?å??æ??è½?å??ä¸?å??ï¼?ä½ å°?å®?å??é»?ä¸?é»?ï¼?å®?å??å°±æ¶?失äº?ï¼?\n"
+"\n"
+"Swell Foop æ?¯ GNOME é??æ?²ç??ä¸?é?¨å??ã??"
+
+#: ../swell-foop/src/Board.js:102
+msgid "No points"
+msgstr "æ²?æ??å??æ?¸"
+
+#: ../swell-foop/src/Board.js:105 ../swell-foop/src/Score.js:109
+#, c-format
+msgid "%d point"
+msgid_plural "%d points"
+msgstr[0] "%d å??"
+
+#: ../swell-foop/src/Score.js:54
+msgid "Swell Foop Scores"
+msgstr "Swell Foop å??æ?¸"
+
+#: ../swell-foop/src/Score.js:144
+msgid "Small"
+msgstr "å°?"
+
+#: ../swell-foop/src/Score.js:146
+msgid "Large"
+msgstr "大"
+
+#~ msgid "Load a saved game"
+#~ msgstr "è¼?å?¥ä¸?å±?å·²å?²å­?ç??æ£?å±?"
+
+#~ msgid "Save the current game"
+#~ msgstr "å?²å­?é??å±?æ£?"
+
+#~ msgid "Themes"
+#~ msgstr "��主�"
+
+#~ msgid "_Bastard mode"
+#~ msgstr "ç??ç??模å¼?(_B)"
+
+#~ msgid "Generate new puzzles in the background"
+#~ msgstr "å?¨è??æ?¯ç?¢ç??æ?°é¡?ç?®"
+
+#~ msgid "<b><i>Details</i></b>"
+#~ msgstr "<b><i>詳細è³?æ??</i></b>"
+
+#~ msgid "<span size=\"larger\" weight=\"bold\">Print Games</span>"
+#~ msgstr "<span size=\"larger\" weight=\"bold\">å??å?°é??æ?²</span>"
+
+#~ msgid "<i><u>Number of Puzzles</u></i>"
+#~ msgstr "<i><u>����</u></i>"
+
+#~ msgid "<i>Easy:</i>"
+#~ msgstr "<i>容æ??ï¼?</i>"
+
+#~ msgid "<i>Hard:</i>"
+#~ msgstr "<i>���</i>"
+
+#~ msgid "<i>Medium:</i>"
+#~ msgstr "<i>中��</i>"
+
+#~ msgid "<i>Very Hard:</i>"
+#~ msgstr "<i>極��</i>"
+
+#~ msgid "<span size=\"larger\" weight=\"bold\">Puzzle Generator</span>"
+#~ msgstr "<span size=\"larger\" weight=\"bold\">é¡?ç?®ç?¢ç??å?¨</span>"
+
+#~ msgid "Criteria:"
+#~ msgstr "�件�"
+
+#~ msgid "Generate Policy"
+#~ msgstr "ç?¢ç??ç??æ³?å??"
+
+#~ msgid "Generate new puzzles _until stopped"
+#~ msgstr "ä¸?æ?·ç?¢ç??æ?°é¡?ç?®ç?´è?³ç?©å®¶è¦?æ±?å??æ­¢(_U)"
+
+#~ msgid "Generate until _reaching target"
+#~ msgstr "ç?¢ç??é¡?ç?®ç?´è?³é??å?°ç?®æ¨?æ?¸å­?ç?ºæ­¢(_R)"
+
+#~ msgid "Puzzle Generator"
+#~ msgstr "é¡?ç?®ç?¢ç??å?¨"
+
+#~ msgid "Target _number of sudokus:"
+#~ msgstr "æ?¸ç?¨é¡?ç?®ç??ç?®æ¨?æ?¸å­?(_N):"
+
+#~ msgid "_Generate"
+#~ msgstr "ç?¢ç??(_G)"
+
+#~ msgid "<b><span size=\"large\">_New Game</span></b>"
+#~ msgstr "<b><span size=\"large\">æ?°é??æ?²(_N)</span></b>"
+
+#~ msgid "<b><span size=\"large\">_Saved Games</span></b>"
+#~ msgstr "<b><span size=\"large\">å?²å­?é??æ?²(_S)</span></b>"
+
+#~ msgid "Clear _Others"
+#~ msgstr "æ¸?é?¤å?¶ä»?ç??(_O)"
+
+#~ msgid "_Clear Tracker"
+#~ msgstr "��追蹤�(_C)"
+
+#~ msgid "_Trackers"
+#~ msgstr "追蹤�(_T)"
+
+#~ msgid "Show which numbers could go in the current square."
+#~ msgstr "顯示ç?®å??ç??æ?¹æ ¼å?¯ä»¥æ?¥å??å?ªäº?æ?¸å­?ã??"
+
+#~ msgid "_Fill"
+#~ msgstr "å¡«å??(_F)"
+
+#~ msgid "Automatically fill in the current square if possible."
+#~ msgstr "å?¨è¨±å?¯ç??æ??æ³?ä¸?ç?¡é??å¡«ä¸?ç?®å??ç??æ?¹æ ¼ã??"
+
+#~ msgid "Fill _all squares"
+#~ msgstr "å¡«å??æ??æ??æ?¹æ ¼(_A)"
+
+#~ msgid ""
+#~ "Automatically fill in all squares for which there is only one valid value."
+#~ msgstr "è?ªå??å¡«å??æ??æ??å?ªæ??ä¸?å??å?¯è?½æ?§ç??æ?¹æ ¼ã??"
+
+#~ msgid "_Generate new puzzles"
+#~ msgstr "ç?¢ç??æ?°é¡?ç?®(_G)"
+
+#~ msgid "Generate new puzzles."
+#~ msgstr "ç?¢ç??æ?°é¡?ç?®"
+
+#~ msgid "_Always show hint"
+#~ msgstr "ä¸?å®?顯示æ??示(_A)"
+
+#~ msgid "Generate new puzzles _while you play"
+#~ msgstr "ç?¶æ?¨å?¨ç?©ç??æ??å??ç?¢ç??æ?°ç??é¡?ç?®(_W)"
+
+#~ msgid ""
+#~ "Generate new puzzles in the background while you play. This will "
+#~ "automatically pause when the game goes into the background."
+#~ msgstr ""
+#~ "ç?¶æ?¨æ­£å?¨è§£æ±ºé¡?ç?®æ??è®?ç¨?å¼?è?ªè¡?å?¨è??æ?¯ç?¢ç??æ?°é¡?ç?®ã??æ­¤ç¨?åº?æ??å?¨é¡?ç?®æ?¬èº«å??æ??å?°è??æ?¯"
+#~ "æ??å??æ­¢å?·è¡?ã??"
+
+#~ msgid "_Edit"
+#~ msgstr "編輯(_E)"
+
+#~ msgid "Clear entries you've filled in"
+#~ msgstr "æ¸?é?¤æ??æ??æ?¨å¡«ä¸?ç??æ?¸å­?"
+
+#~ msgid "Clear notes and hints"
+#~ msgstr "æ¸?é?¤æ¨?è¨?å??æ??示"
+
+#~ msgid "You used the auto-fill %(n)s time"
+#~ msgid_plural "You used the auto-fill %(n)s times"
+#~ msgstr[0] "æ?¨ä½¿ç?¨äº? %(n)s 次è?ªå??å¡«å??"
+
+#~ msgid "Playing %(difficulty)s puzzle."
+#~ msgstr "æ­£å?¨é?²è¡?ç­?ç´?ç?º %(difficulty)s ç??é¡?ç?®ã??"
+
+#~ msgid "No Tracker"
+#~ msgstr "æ²?æ??追蹤å?¨"
+
+#~ msgid "_Clear Others"
+#~ msgstr "æ¸?é?¤å?¶ä»?ç??(_C)"
+
+#~ msgid "Clear all moves not tracked by selected tracker."
+#~ msgstr "æ¸?é?¤æ??æ??ä¸?被é?¸å??ç??追蹤å?¨è¿½è¹¤ç??å¡«æ³?ã??"
+
+#~ msgid "%(n)s puzzle"
+#~ msgid_plural "%(n)s puzzles"
+#~ msgstr[0] "%(n)s å??é¡?ç?®"
+
+#~ msgid "Stopped"
+#~ msgstr "å·²å??æ­¢"
+
+#~ msgid "Generated %(n)s out of %(total)s puzzle"
+#~ msgid_plural "Generated %(n)s out of %(total)s puzzles"
+#~ msgstr[0] "å·²ç?¢ç?? %(n)s / %(total)s å??é¡?ç?®"
+
+#~ msgid "Generated %(n)s puzzle"
+#~ msgid_plural "Generated %(n)s puzzles"
+#~ msgstr[0] "ç?¢ç??äº? %(n)s å??é¡?ç?®"
+
+#~ msgid "Tile _Colours"
+#~ msgstr "æ?¼å??è?²å½©(_C)"
+
+#~ msgid "A flag to enable coloured tiles."
+#~ msgstr "å??ç?¨å½©è?²ç??é?¢ç??æ??æ¨?ã??"
+
+#~ msgid "Control coloured tiles"
+#~ msgstr "æ?§å?¶å½©è?²ç??ç??"
+
+#~ msgid "Look & Feel"
+#~ msgstr "å¤?è§?è??æ??覺"
+
 #~ msgid "Blackjack"
 #~ msgstr "21 é»?"
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]