第一个是修改几个编译上面的灵活性问题的补丁。
[diff]
diff -u -r qgo.orig/src/defines.h qgo/src/defines.h
--- qgo.orig/src/defines.h 2012-05-19 18:33:11.000000000 +0800
+++ qgo/src/defines.h 2013-04-22 16:35:52.581168282 +0800
@@ -252,7 +252,7 @@
* only be embedded on linux and mac and windows will have to install them. */
#ifdef Q_OS_LINUX
#define SOUND_PATH_PREFIX ":/ressources/sounds/"
- #define TRANSLATIONS_PATH_PREFIX "/usr/share/qgo/languages/"
+ #define TRANSLATIONS_PATH_PREFIX "languages/"
#elif defined(Q_OS_MAC)
#define SOUND_PATH_PREFIX "qGo.app/Contents/Resources/Sounds/"
#define TRANSLATIONS_PATH_PREFIX "qGo.app/Contents/Resources/Translations/"
diff -u -r qgo.orig/src/listviews.cpp qgo/src/listviews.cpp
--- qgo.orig/src/listviews.cpp 2012-05-19 18:33:11.000000000 +0800
+++ qgo/src/listviews.cpp 2013-04-22 16:35:52.582168282 +0800
@@ -342,7 +342,7 @@
{
for(int i = 0; i < items.count(); i++)
{
- GamesListItem * const item = static_cast<const GamesListItem *>(items);
+ GamesListItem * const item = static_cast<GamesListItem *>(items);
if(item->getListing() == l)
{
/* Really this is supposed to be not QModelIndex() but the
diff -u -r qgo.orig/src/src.pro qgo/src/src.pro
--- qgo.orig/src/src.pro 2012-05-19 18:33:11.000000000 +0800
+++ qgo/src/src.pro 2013-04-22 16:36:29.154168864 +0800
@@ -172,7 +172,7 @@
linux-* {
QGO_INSTALL_PATH = /usr/share/qgo
- QGO_INSTALL_BIN_PATH = /usr/bin
+ QGO_INSTALL_BIN_PATH = $${QGO_INSTALL_PATH}/bin
SOURCES += audio/alsa.cpp
HEADERS += audio/alsa.h
@@ -180,17 +180,17 @@
LIBS += -lasound
- icon.path = /usr/share/pixmaps
+ icon.path = $${QGO_INSTALL_PATH}/share/pixmaps
icon.files = ressources/pics/qgo.png
icon.files += ressources/pics/qgo_16x16.xpm
icon.files += ressources/pics/qgo_32x32.xpm
icon.files += ressources/pics/qgo_48x48.png
icon.files += ressources/pics/qgo_48x48.xpm
INSTALLS += icon
- desktopfile.path = /usr/share/applications
+ desktopfile.path = $${QGO_INSTALL_PATH}/share/applications
desktopfile.files = qgo.desktop
INSTALLS += desktopfile
- filetype.path = /usr/share/mimelnk/text
+ filetype.path = $${QGO_INSTALL_PATH}/share/mimelnk/text
filetype.files = sgf.desktop
INSTALLS += filetype
}
[/diff]
第二个是解决中文支持之类的东西,顺便把一些用不到的语言包给剔除了。
[diff]
diff -u -r qgo.orig/src/defines.h qgo/src/defines.h
--- qgo.orig/src/defines.h 2012-05-19 18:33:11.000000000 +0800
+++ qgo/src/defines.h 2013-04-22 16:45:42.128120420 +0800
@@ -82,7 +82,7 @@
enum GamePhase { phaseInit, phaseOngoing, phaseEdit, phaseNavTo, phaseScore, phaseEnded};
enum MarkType { markNone, markSquare, markCircle, markTriangle, markCross, markText, markNumber, markTerrBlack, markTerrWhite, markKoMarker };
enum Codec { codecNone, codecBig5, codecEucJP, codecJIS, codecSJIS, codecEucKr, codecGBK, codecTscii };
-enum Language { None, German, French, Italian, Danish, Dutch, Czech, Chinese, Portugese, Polish, Russian, Turkish };
+enum Language { None, SimplifiedChinese , TraditionalChinese };
enum player_type {HUMAN=0,COMPUTER} ;
enum assessType { noREQ, FREE, RATED, TEACHING };
diff -u -r qgo.orig/src/main.cpp qgo/src/main.cpp
--- qgo.orig/src/main.cpp 2012-05-19 18:33:11.000000000 +0800
+++ qgo/src/main.cpp 2013-04-22 16:47:55.949122548 +0800
@@ -77,39 +77,12 @@
{
switch(l)
{
- case German:
- translatorPtr->load(TRANSLATIONS_PATH_PREFIX"qgo_de");
- return;
- case French:
- translatorPtr->load(TRANSLATIONS_PATH_PREFIX"qgo_fr");
+ case SimplifiedChinese:
+ translatorPtr->load(TRANSLATIONS_PATH_PREFIX"qgo_zh_cn");
break;
- case Italian:
- translatorPtr->load(TRANSLATIONS_PATH_PREFIX"qgo_it");
- break;
- case Danish:
- translatorPtr->load(TRANSLATIONS_PATH_PREFIX"qgo_dk");
- break;
- case Dutch:
- translatorPtr->load(TRANSLATIONS_PATH_PREFIX"qgo_nl");
- break;
- case Czech:
- translatorPtr->load(TRANSLATIONS_PATH_PREFIX"qgo_cz");
- break;
- case Chinese:
+ case TraditionalChinese:
translatorPtr->load(TRANSLATIONS_PATH_PREFIX"qgo_zh");
break;
- case Portugese:
- translatorPtr->load(TRANSLATIONS_PATH_PREFIX"qgo_pt");
- break;
- case Polish:
- translatorPtr->load(TRANSLATIONS_PATH_PREFIX"qgo_it");
- break;
- case Russian:
- translatorPtr->load(TRANSLATIONS_PATH_PREFIX"qgo_ru");
- break;
- case Turkish:
- translatorPtr->load(TRANSLATIONS_PATH_PREFIX"qgo_tr");
- break;
case None:
default:
QString locale = QLocale::system().name();
diff -u -r qgo.orig/src/mainwindow.ui qgo/src/mainwindow.ui
--- qgo.orig/src/mainwindow.ui 2012-05-19 18:33:11.000000000 +0800
+++ qgo/src/mainwindow.ui 2013-04-22 16:49:57.350124478 +0800
@@ -2106,57 +2106,12 @@
</item>
<item>
<property name="text">
- <string>German</string>
+ <string>Simplified Chinese</string>
</property>
</item>
<item>
<property name="text">
- <string>French</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Italian</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Danish</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Dutch</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Czech</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Chinese</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Portugese</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Polish</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Russian</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Turkish</string>
+ <string>Traditional Chinese</string>
</property>
</item>
</widget>
[/diff]
顺便打上个「自家用」的标记,目前尚未经过严格测试,先扔这边吧。


