i18n: 更新部分文案及翻译文件

修改详情页“下载”按钮为“下载并安装”;修正部分文案中错误使用全角标点符号导致翻译文件中无法正常显示;修正部分文案翻译错误;尝试补充 QWebEngineView 右键菜单项翻译

Log: 修改详情页“下载”按钮为“下载并安装”;修正部分文案及翻译;补充 QWebEngineView 部分右键菜单项翻译
This commit is contained in:
zty199 2023-10-10 16:10:38 +08:00
parent fb21620880
commit a7d86d9120
17 changed files with 412 additions and 84 deletions

@ -93,7 +93,7 @@ void Application::setBuildDateTime(const QString &buildDateTime)
qDebug() << "Spark Store has been updated!";
config.setValue("build/version", QString(APP_VERSION));
config.setValue("build/branch",QString(APP_BRANCH));
config.setValue("build/branch", QString(APP_BRANCH));
config.setValue("build/time", buildDateTime);
config.sync();
}
@ -158,6 +158,17 @@ void Application::initAboutDialog()
dialog->hide();
}
void Application::loadTranslator()
{
DApplication::loadTranslator();
if (QLocale::system().language() == QLocale::Chinese) {
QTranslator *webengineTranslator = new QTranslator(this);
webengineTranslator->load(QLocale(QLocale::Chinese), "qtwebengine", "_", ":/translations");
installTranslator(webengineTranslator);
}
}
#if (DTK_VERSION >= DTK_VERSION_CHECK(5, 6, 4, 0))
/**
* @brief Application::initFeatureDisplayDialog

@ -30,6 +30,8 @@ private:
void initFeatureDisplayDialog();
#endif
void loadTranslator();
private:
QJsonObject m_featuresJsonObj;

@ -62,5 +62,6 @@
<file>tags/uos-authorize.svg</file>
<file>tags/uos-small.png</file>
<file>tags/uos.svg</file>
<file>translations/qtwebengine_zh.qm</file>
</qresource>
</RCC>

Binary file not shown.

@ -0,0 +1,305 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="zh_CN" sourcelanguage="es">
<context>
<name>QWebEnginePage</name>
<message>
<source>Cut</source>
<translation></translation>
</message>
<message>
<source>Back</source>
<translation>退</translation>
</message>
<message>
<source>Copy</source>
<translation></translation>
</message>
<message>
<source>Redo</source>
<translation></translation>
</message>
<message>
<source>Stop</source>
<translation></translation>
</message>
<message>
<source>Undo</source>
<translation></translation>
</message>
<message>
<source>&amp;Back</source>
<translation>&amp;退</translation>
</message>
<message>
<source>Paste</source>
<translation></translation>
</message>
<message>
<source>Copy Image URL</source>
<translation></translation>
</message>
<message>
<source>Open Link in This Window</source>
<translation></translation>
</message>
<message>
<source>Toggle Mute</source>
<translation></translation>
</message>
<message>
<source>Inspect Element</source>
<translation></translation>
</message>
<message>
<source>Toggle Media Controls</source>
<translation></translation>
</message>
<message>
<source>Reload</source>
<translation></translation>
</message>
<message>
<source>Copy Link URL</source>
<translation></translation>
</message>
<message>
<source>Exit Full Screen Mode</source>
<translation>退</translation>
</message>
<message>
<source>Paste and Match Style</source>
<translation>Pegar y coincidir estilo</translation>
</message>
<message>
<source>Follow Link</source>
<translation>Seguir vínculo</translation>
</message>
<message>
<source>Open Link in New Tab</source>
<translation></translation>
</message>
<message>
<source>Reload and Bypass Cache</source>
<translation></translation>
</message>
<message>
<source>Select folder to upload</source>
<translation>Seleccionar una carpeta para subir</translation>
</message>
<message>
<source>Save Image</source>
<translation></translation>
</message>
<message>
<source>Save Media</source>
<translation></translation>
</message>
<message>
<source>Toggle Looping</source>
<translation></translation>
</message>
<message>
<source>Close Page</source>
<translation></translation>
</message>
<message>
<source>Toggle Play/Pause</source>
<translation>/</translation>
</message>
<message>
<source>Copy Image</source>
<translation></translation>
</message>
<message>
<source>&amp;Reload</source>
<translation>&amp;</translation>
</message>
<message>
<source>Select All</source>
<translation></translation>
</message>
<message>
<source>Save Link</source>
<translation>Guardar enlace</translation>
</message>
<message>
<source>Copy Media URL</source>
<translation></translation>
</message>
<message>
<source>Forward</source>
<translation></translation>
</message>
<message>
<source>&amp;Forward</source>
<translation>&amp;</translation>
</message>
<message>
<source>Open Link in New Window</source>
<translation></translation>
</message>
<message>
<source>Are you sure you want to leave this page?</source>
<translation></translation>
</message>
</context>
<context>
<name>QQuickWebEngineView</name>
<message>
<source>Back</source>
<translation>退</translation>
</message>
<message>
<source>Copy</source>
<translation></translation>
</message>
<message>
<source>Copy Image URL</source>
<translation></translation>
</message>
<message>
<source>Toggle Mute</source>
<translation></translation>
</message>
<message>
<source>Inspect Element</source>
<translation></translation>
</message>
<message>
<source>Toggle Media Controls</source>
<translation></translation>
</message>
<message>
<source>Reload</source>
<translation></translation>
</message>
<message>
<source>Copy Link URL</source>
<translation></translation>
</message>
<message>
<source>Exit Full Screen Mode</source>
<translation>退</translation>
</message>
<message>
<source>Follow Link</source>
<translation></translation>
</message>
<message>
<source>Save Image</source>
<translation></translation>
</message>
<message>
<source>Save Media</source>
<translation></translation>
</message>
<message>
<source>Toggle Looping</source>
<translation></translation>
</message>
<message>
<source>Toggle Play/Pause</source>
<translation>/</translation>
</message>
<message>
<source>Copy Image</source>
<translation></translation>
</message>
<message>
<source>Save Link</source>
<translation></translation>
</message>
<message>
<source>Copy Media URL</source>
<translation></translation>
</message>
<message>
<source>Forward</source>
<translation></translation>
</message>
</context>
<context>
<name>QtWebEngineCore</name>
<message>
<source>Javascript Alert - %1</source>
<translation>Javascript - %1</translation>
</message>
<message>
<source>Javascript Confirm - %1</source>
<translation>Javascript - %1</translation>
</message>
<message>
<source>Javascript Prompt - %1</source>
<translation>Javascript - %1</translation>
</message>
<message>
<source>Are you sure you want to leave this page?</source>
<translation></translation>
</message>
</context>
<context>
<name>QtWebEnginePlugin</name>
<message>
<source>Cannot create a separate instance of WebEngineDownloadItem</source>
<translation> WebEngineDownloadItem </translation>
</message>
<message>
<source>Cannot create separate instance of WebEngineLoadRequest</source>
<translation> WebEngineLoadRequest </translation>
</message>
<message>
<source>Cannot create a separate instance of WebEngineSettings</source>
<translation> WebEngineSettings </translation>
</message>
<message>
<source>Cannot create separate instance of WebEngineNavigationRequest</source>
<translation> WebEngineNavigationRequest </translation>
</message>
<message>
<source>Cannot create separate instance of WebEngineNewViewRequest</source>
<translation> WebEngineNewViewRequest </translation>
</message>
<message>
<source>Cannot create separate instance of WebEngineCertificateError</source>
<translation> WebEngineCertificateError </translation>
</message>
<message>
<source>Cannot create a separate instance of FullScreenRequest</source>
<translation> FullScreenRequest </translation>
</message>
<message>
<source>Cannot create a separate instance of NavigationHistory</source>
<translation> NavigationHistory </translation>
</message>
</context>
<context>
<name>QtWebEngineExperimentalPlugin</name>
<message>
<source>Cannot create a separate instance of WebEngineViewExperimental</source>
<translation> WebEngineViewExperimental </translation>
</message>
<message>
<source>Cannot create a separate instance of WebEngineViewport</source>
<translation> WebEngineViewport </translation>
</message>
</context>
<context>
<name>UIDelegatesManager</name>
<message>
<source>Enter username and password for &quot;%1&quot; at %2://%3</source>
<translation> %2://%3 的“%1”输入用户名和密码</translation>
</message>
<message>
<source>Connect to proxy &quot;%1&quot; using:</source>
<translation>使%1</translation>
</message>
</context>
<context>
<name>QtWebEngineTestSupportPlugin</name>
<message>
<source>Cannot create a separate instance of WebEngineErrorPage</source>
<translation> WebEngineErrorPage </translation>
</message>
</context>
</TS>

@ -172,7 +172,7 @@ void AppIntoPage::openUrl(const QUrl &url)
}
else
{
ui->downloadButton->setText(tr("Download"));
ui->downloadButton->setText(tr("Download and Install"));
ui->downloadButton->setEnabled(true);
ui->downloadButton->show();
}
@ -310,7 +310,7 @@ void AppIntoPage::isDownloading(const QUrl &url)
if (item->download == 2)
{
ui->downloadButton->setEnabled(true);
ui->downloadButton->setText(tr("Download"));
ui->downloadButton->setText(tr("Download and Install"));
}
if (item->download == 1)
{
@ -480,7 +480,7 @@ void AppIntoPage::on_pushButton_3_clicked()
if (check.readAllStandardOutput().isEmpty())
{
ui->downloadButton->setText(tr("Download"));
ui->downloadButton->setText(tr("Download and Install"));
ui->pushButton_3->hide();
updatesEnabled();

@ -241,7 +241,7 @@
</sizepolicy>
</property>
<property name="text">
<string>Download</string>
<string>Download and Install</string>
</property>
</widget>
</item>

@ -93,6 +93,7 @@ RESOURCES += \
TRANSLATIONS += \
../translations/spark-store_en.ts \
../translations/spark-store_es.ts \
../translations/spark-store_fr.ts \
../translations/spark-store_zh_CN.ts \
../translations/spark-store_zh_TW.ts

@ -234,9 +234,9 @@ void DownloadItem::slotAsyncInstall(int t)
if (notRoot)
{
Utils::sendNotification("spark-store", tr("Spark Store"), tr("dpkg progress had been abortedplease check the install info or try to reinstall."));
ui->label_2->setText(tr("dpkg progress had been abortedplease check the install info or try to reinstall."));
ui->label_2->setToolTip(tr("dpkg progress had been abortedplease check the install info or try to reinstall."));
Utils::sendNotification("spark-store", tr("Spark Store"), tr("dpkg progress had been aborted, please check the install info or try to reinstall."));
ui->label_2->setText(tr("dpkg progress had been aborted, please check the install info or try to reinstall."));
ui->label_2->setToolTip(tr("dpkg progress had been aborted, please check the install info or try to reinstall."));
ui->pushButton_install->show();
ui->pushButton_3->hide();
}

@ -7,20 +7,7 @@
WebEnginePage::WebEnginePage(QObject *parent)
: QWebEnginePage(parent)
{
QLocale ql;
switch (ql.language())
{
case QLocale::Chinese:
{
// 系统语言是中文,获取网页为中文 @momen @uniartisan
QWebEngineProfile *profile = QWebEngineProfile::defaultProfile();
qDebug() << profile->httpAcceptLanguage();
profile->setHttpAcceptLanguage("zh-CN,zh;q=0.8,en;q=0.6");
}
break;
default:
break;
}
initHttpAcceptLanguage();
}
WebEnginePage::~WebEnginePage()
@ -47,6 +34,18 @@ QWebEnginePage *WebEnginePage::createWindow(QWebEnginePage::WebWindowType type)
return page;
}
void WebEnginePage::initHttpAcceptLanguage()
{
switch (QLocale::system().language()) {
case QLocale::Chinese: {
// 系统语言是中文,获取网页为中文 @momen @uniartisan
profile()->setHttpAcceptLanguage("zh-CN,zh;q=0.8,en;q=0.6");
} break;
default:
break;
}
}
void WebEnginePage::slotUrlChanged(const QUrl &url)
{
if (m_currentUrl == url)

@ -16,6 +16,9 @@ public:
protected:
QWebEnginePage *createWindow(WebWindowType type) override;
private:
void initHttpAcceptLanguage();
private slots:
void slotUrlChanged(const QUrl &url);

@ -1,8 +1,6 @@
#include "webengineview.h"
#include "webenginepage.h"
#include <QDesktopServices>
WebEngineView::WebEngineView(QWidget *parent)
: QWebEngineView(parent)
{

@ -8,14 +8,6 @@
<source>Form</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="175"/>
<location filename="../src/pages/appintopage.cpp" line="313"/>
<location filename="../src/pages/appintopage.cpp" line="483"/>
<source>Download</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="290"/>
<source>Uninstall</source>
@ -132,6 +124,14 @@
<source>Screen capture</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="175"/>
<location filename="../src/pages/appintopage.cpp" line="313"/>
<location filename="../src/pages/appintopage.cpp" line="483"/>
<source>Download and Install</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="429"/>
<location filename="../src/pages/appintopage.ui" line="432"/>
@ -374,7 +374,7 @@
<location filename="../src/widgets/common/downloaditem.cpp" line="237"/>
<location filename="../src/widgets/common/downloaditem.cpp" line="238"/>
<location filename="../src/widgets/common/downloaditem.cpp" line="239"/>
<source>dpkg progress had been abortedplease check the install info or try to reinstall.</source>
<source>dpkg progress had been aborted, please check the install info or try to reinstall.</source>
<translation type="unfinished"></translation>
</message>
<message>

@ -8,14 +8,6 @@
<source>Form</source>
<translation>Tipo</translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="175"/>
<location filename="../src/pages/appintopage.cpp" line="313"/>
<location filename="../src/pages/appintopage.cpp" line="483"/>
<source>Download</source>
<translation>Descargar</translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="290"/>
<source>Uninstall</source>
@ -132,6 +124,14 @@
<source>Screen capture</source>
<translation>Captura de pantalla</translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="175"/>
<location filename="../src/pages/appintopage.cpp" line="313"/>
<location filename="../src/pages/appintopage.cpp" line="483"/>
<source>Download and Install</source>
<translation>Descargar e instalar</translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="429"/>
<location filename="../src/pages/appintopage.ui" line="432"/>
@ -268,16 +268,24 @@
<context>
<name>DAboutDialog</name>
<message>
<location filename="../src/application.cpp" line="139"/>
<location filename="../src/application.cpp" line="141"/>
<source>Version: %1</source>
<translation>Versión %1</translation>
</message>
<message>
<location filename="../src/application.cpp" line="149"/>
<location filename="../src/application.cpp" line="151"/>
<source>%1 is released under %2</source>
<translation>%1 publicado bajo %2</translation>
</message>
</context>
<context>
<name>DownloadController</name>
<message>
<location filename="../src/backend/downloadworker.cpp" line="176"/>
<source>Download Failed, please retry :(</source>
<translation>Descarga fall, por favor vuelva a intentarlo</translation>
</message>
</context>
<context>
<name>DownloadItem</name>
<message>
@ -366,8 +374,8 @@
<location filename="../src/widgets/common/downloaditem.cpp" line="237"/>
<location filename="../src/widgets/common/downloaditem.cpp" line="238"/>
<location filename="../src/widgets/common/downloaditem.cpp" line="239"/>
<source>dpkg progress had been abortedplease check the install info or try to reinstall.</source>
<translation>El proceso dpkg ha sido abortado, verifique la información de instalación o intente reinstalarlo.</translation>
<source>dpkg progress had been aborted, please check the install info or try to reinstall.</source>
<translation>El proceso de DPKG ha sido interrumpido, compruebe la información de instalación o intente reinstalar.</translation>
</message>
<message>
<location filename="../src/widgets/common/downloaditem.cpp" line="144"/>
@ -506,19 +514,19 @@
<context>
<name>QObject</name>
<message>
<location filename="../src/application.cpp" line="33"/>
<location filename="../src/application.cpp" line="34"/>
<location filename="../src/application.cpp" line="35"/>
<location filename="../src/application.cpp" line="36"/>
<location filename="../src/mainwindow-dtk.cpp" line="126"/>
<source>Spark Store</source>
<translation>SPARK Store</translation>
</message>
<message>
<location filename="../src/application.cpp" line="38"/>
<location filename="../src/application.cpp" line="40"/>
<source>&lt;span style=&apos; font-size:10pt;font-weight:60;&apos;&gt;An appstore powered by community&lt;/span&gt;&lt;br/&gt;&lt;a href=&apos;https://www.spark-app.store/&apos;&gt;https://www.spark-app.store&lt;/a&gt;&lt;br/&gt;&lt;span style=&apos; font-size:12pt;&apos;&gt;Spark developers&lt;/span&gt;</source>
<translation>&lt;span style=&apos; font-size:10pt;font-weight:60;&apos;&gt;An appstore powered by community&lt;/span&gt;&lt;br/&gt;&lt;a href=&apos;https://www.spark-app.store/&apos;&gt;https://www.spark-app.store&lt;/a&gt;&lt;br/&gt;&lt;span style=&apos; font-size:12pt;&apos;&gt;Spark developers&lt;/span&gt;</translation>
</message>
<message>
<location filename="../src/application.cpp" line="146"/>
<location filename="../src/application.cpp" line="148"/>
<source>Spark Project</source>
<translation>Proyecto spark</translation>
</message>

@ -8,14 +8,6 @@
<source>Form</source>
<translation>Type</translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="175"/>
<location filename="../src/pages/appintopage.cpp" line="313"/>
<location filename="../src/pages/appintopage.cpp" line="483"/>
<source>Download</source>
<translation>Télécharger</translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="290"/>
<source>Uninstall</source>
@ -132,6 +124,14 @@
<source>Screen capture</source>
<translation>Captures d&apos;écran</translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="175"/>
<location filename="../src/pages/appintopage.cpp" line="313"/>
<location filename="../src/pages/appintopage.cpp" line="483"/>
<source>Download and Install</source>
<translation>Télécharger et installer</translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="429"/>
<location filename="../src/pages/appintopage.ui" line="432"/>
@ -283,7 +283,7 @@
<message>
<location filename="../src/backend/downloadworker.cpp" line="176"/>
<source>Download Failed, please retry :(</source>
<translation type="unfinished"></translation>
<translation>Le téléchargement a échoué, veuillez réessayer</translation>
</message>
</context>
<context>
@ -374,8 +374,8 @@
<location filename="../src/widgets/common/downloaditem.cpp" line="237"/>
<location filename="../src/widgets/common/downloaditem.cpp" line="238"/>
<location filename="../src/widgets/common/downloaditem.cpp" line="239"/>
<source>dpkg progress had been abortedplease check the install info or try to reinstall.</source>
<translation>Le processus dpkg a é abandonné, vérifiez les informations d&apos;installation ou essayez de le réinstaller.</translation>
<source>dpkg progress had been aborted, please check the install info or try to reinstall.</source>
<translation>La progression de DPKG a é interrompue, veuillez vérifier les informations dinstallation ou essayer de réinstaller.</translation>
</message>
<message>
<location filename="../src/widgets/common/downloaditem.cpp" line="144"/>

@ -8,14 +8,6 @@
<source>Form</source>
<translation></translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="175"/>
<location filename="../src/pages/appintopage.cpp" line="313"/>
<location filename="../src/pages/appintopage.cpp" line="483"/>
<source>Download</source>
<translation></translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="290"/>
<source>Uninstall</source>
@ -127,6 +119,14 @@
<source>Screen capture</source>
<translation></translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="175"/>
<location filename="../src/pages/appintopage.cpp" line="313"/>
<location filename="../src/pages/appintopage.cpp" line="483"/>
<source>Download and Install</source>
<translation></translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="429"/>
<location filename="../src/pages/appintopage.ui" line="432"/>
@ -283,7 +283,7 @@
<message>
<location filename="../src/backend/downloadworker.cpp" line="176"/>
<source>Download Failed, please retry :(</source>
<translation type="unfinished"></translation>
<translation></translation>
</message>
</context>
<context>
@ -368,14 +368,14 @@
<location filename="../src/widgets/common/downloaditem.cpp" line="230"/>
<location filename="../src/widgets/common/downloaditem.cpp" line="231"/>
<source>Error happened in dpkg progress , please check the install info or try to reinstall.</source>
<translation></translation>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/common/downloaditem.cpp" line="237"/>
<location filename="../src/widgets/common/downloaditem.cpp" line="238"/>
<location filename="../src/widgets/common/downloaditem.cpp" line="239"/>
<source>dpkg progress had been abortedplease check the install info or try to reinstall.</source>
<translation>dpkg出现错误</translation>
<source>dpkg progress had been aborted, please check the install info or try to reinstall.</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/common/downloaditem.cpp" line="144"/>

@ -8,14 +8,6 @@
<source>Form</source>
<translation></translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="175"/>
<location filename="../src/pages/appintopage.cpp" line="313"/>
<location filename="../src/pages/appintopage.cpp" line="483"/>
<source>Download</source>
<translation></translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="290"/>
<source>Uninstall</source>
@ -127,6 +119,14 @@
<source>Screen capture</source>
<translation></translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="244"/>
<location filename="../src/pages/appintopage.cpp" line="175"/>
<location filename="../src/pages/appintopage.cpp" line="313"/>
<location filename="../src/pages/appintopage.cpp" line="483"/>
<source>Download and Install</source>
<translation></translation>
</message>
<message>
<location filename="../src/pages/appintopage.ui" line="429"/>
<location filename="../src/pages/appintopage.ui" line="432"/>
@ -283,7 +283,7 @@
<message>
<location filename="../src/backend/downloadworker.cpp" line="176"/>
<source>Download Failed, please retry :(</source>
<translation type="unfinished"></translation>
<translation></translation>
</message>
</context>
<context>
@ -368,14 +368,14 @@
<location filename="../src/widgets/common/downloaditem.cpp" line="230"/>
<location filename="../src/widgets/common/downloaditem.cpp" line="231"/>
<source>Error happened in dpkg progress , please check the install info or try to reinstall.</source>
<translation></translation>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/common/downloaditem.cpp" line="237"/>
<location filename="../src/widgets/common/downloaditem.cpp" line="238"/>
<location filename="../src/widgets/common/downloaditem.cpp" line="239"/>
<source>dpkg progress had been abortedplease check the install info or try to reinstall.</source>
<translation>dpkg出現錯誤</translation>
<source>dpkg progress had been aborted, please check the install info or try to reinstall.</source>
<translation></translation>
</message>
<message>
<location filename="../src/widgets/common/downloaditem.cpp" line="144"/>