diff --git a/src/LunaTranslator/cishu/cishubase.py b/src/LunaTranslator/cishu/cishubase.py index bcf44e51..5ab3be77 100644 --- a/src/LunaTranslator/cishu/cishubase.py +++ b/src/LunaTranslator/cishu/cishubase.py @@ -4,6 +4,11 @@ from traceback import print_exc from myutils.proxy import getproxy +class DictTree: + def text(self) -> str: ... + def childrens(self) -> list: ... + + class cishubase: typename = None diff --git a/src/LunaTranslator/cishu/edict.py b/src/LunaTranslator/cishu/edict.py index 3a780a64..5c0ecfbf 100644 --- a/src/LunaTranslator/cishu/edict.py +++ b/src/LunaTranslator/cishu/edict.py @@ -1,7 +1,7 @@ import sqlite3, os import winsharedutils, re from myutils.utils import argsort, autosql -from cishu.cishubase import cishubase +from cishu.cishubase import cishubase, DictTree class edict(cishubase): @@ -41,3 +41,19 @@ class edict(cishubase): saveres.append(x[0] + "
" + re.sub("/EntL.*/", "", x[1][1:])) return "
".join(saveres) + + def tree(self): + if not self.sql: + return + + class DictTreeRoot(DictTree): + def __init__(self, ref) -> None: + self.ref = ref + + def childrens(self): + c = [] + for _ in self.ref.sql.execute("select text from surface").fetchall(): + c.append(_[0]) + return c + + return DictTreeRoot(self) diff --git a/src/LunaTranslator/cishu/edict2.py b/src/LunaTranslator/cishu/edict2.py index 817bf243..dfbf14d0 100644 --- a/src/LunaTranslator/cishu/edict2.py +++ b/src/LunaTranslator/cishu/edict2.py @@ -2,7 +2,7 @@ import winsharedutils, os import re from myutils.utils import argsort from traceback import print_exc -from cishu.cishubase import cishubase +from cishu.cishubase import cishubase, DictTree class edict2(cishubase): @@ -43,3 +43,16 @@ class edict2(cishubase): savew[ii] + "
" + re.sub("/EntL.*/", "", self.save[savew[ii]][1:]) ) return "
".join(saveres) + + def tree(self): + if not self.save: + return + + class DictTreeRoot(DictTree): + def __init__(self, ref) -> None: + self.ref = ref + + def childrens(self): + return list(self.ref.save.keys()) + + return DictTreeRoot(self) diff --git a/src/LunaTranslator/cishu/linggesi.py b/src/LunaTranslator/cishu/linggesi.py index 044eacbc..a0485b42 100644 --- a/src/LunaTranslator/cishu/linggesi.py +++ b/src/LunaTranslator/cishu/linggesi.py @@ -2,7 +2,7 @@ from myutils.utils import autosql import sqlite3 import winsharedutils import os -from cishu.cishubase import cishubase +from cishu.cishubase import cishubase, DictTree class linggesi(cishubase): @@ -48,3 +48,21 @@ class linggesi(cishubase): x = sorted(list(mp.keys()), key=lambda x: mp[x][1])[: self.config["max_num"]] save = [w + "
" + mp[w][0] for w in x] return "
".join(save) + + def tree(self): + if not self.sql: + return + + class DictTreeRoot(DictTree): + def __init__(self, ref) -> None: + self.ref = ref + + def childrens(self): + c = [] + for _ in self.ref.sql.execute( + "select word from entry" + ).fetchall(): + c.append(_[0]) + return c + + return DictTreeRoot(self) diff --git a/src/LunaTranslator/cishu/mdict.py b/src/LunaTranslator/cishu/mdict.py index 4e94088a..fa7cefa1 100644 --- a/src/LunaTranslator/cishu/mdict.py +++ b/src/LunaTranslator/cishu/mdict.py @@ -1,5 +1,5 @@ import math, base64, uuid, gobject -import threading, time +from cishu.cishubase import DictTree class FlexBuffer: @@ -2032,11 +2032,11 @@ class mdict(cishubase): distance = self.config["distance"] return distance - def gettitle(self, f, index): + def gettitle(self, f, index: IndexBuilder): _ = self.extraconf[f] title = _["title"] if title is None: - t = os.path.basename(f)[:-4] + t: str = os.path.basename(f)[:-4] if index._title.strip() != "": t1 = index._title.strip() if (t1.isascii()) and (t.isascii()): @@ -2086,7 +2086,6 @@ class mdict(cishubase): self.extraconf = json.loads(ff.read()) except: self.extraconf = {} - self.sql = None paths = self.config["paths"] self.builders = [] @@ -2629,3 +2628,37 @@ if (content.style.display === 'block') { return self.generatehtml_tabswitch(allres) elif self.config["stylehv"] == 1: return self.generatehtml_flow(allres) + + def tree(self): + if len(self.builders) == 0: + return + + class everydict(DictTree): + def __init__(self, ref, f, index: IndexBuilder) -> None: + self.f = f + self.index = index + self.ref = ref + + def text(self): + return self.ref.gettitle(self.f, self.index) + + def childrens(self) -> list: + return self.index.get_mdx_keys("*") + + class DictTreeRoot(DictTree): + def __init__(self, ref) -> None: + self.ref = ref + + def childrens(self): + saves = [] + for f, index in self.ref.builders: + saves.append( + (self.ref.getpriority(f), everydict(self.ref, f, index)) + ) + saves.sort(key=lambda x: x[0]) + i = [] + for _, _i in saves: + i.append(_i) + return i + + return DictTreeRoot(self) diff --git a/src/LunaTranslator/cishu/xiaoxueguan.py b/src/LunaTranslator/cishu/xiaoxueguan.py index de672c4d..0db2385c 100644 --- a/src/LunaTranslator/cishu/xiaoxueguan.py +++ b/src/LunaTranslator/cishu/xiaoxueguan.py @@ -1,8 +1,7 @@ import sqlite3, os, re import winsharedutils from myutils.utils import argsort, autosql - -from cishu.cishubase import cishubase +from cishu.cishubase import cishubase, DictTree class xiaoxueguan(cishubase): @@ -48,3 +47,21 @@ class xiaoxueguan(cishubase): srt = argsort(dis)[: self.config["max_num"]] save = ["" + exp[i][1].replace("\\n", "") for i in srt] return "
".join(save) + + def tree(self): + if not self.sql: + return + + class DictTreeRoot(DictTree): + def __init__(self, ref) -> None: + self.ref = ref + + def childrens(self): + c = [] + for _ in self.ref.sql.execute( + "select word from xiaoxueguanrizhong" + ).fetchall(): + c.append(_[0]) + return c + + return DictTreeRoot(self) diff --git a/src/LunaTranslator/gui/dialog_savedgame_v3.py b/src/LunaTranslator/gui/dialog_savedgame_v3.py index 192b9a92..3ae54c4b 100644 --- a/src/LunaTranslator/gui/dialog_savedgame_v3.py +++ b/src/LunaTranslator/gui/dialog_savedgame_v3.py @@ -1,5 +1,3 @@ -from PyQt5.QtCore import Qt -from PyQt5.QtWidgets import QWidget from qtsymbols import * import os, functools, uuid, threading, shutil, time from traceback import print_exc diff --git a/src/LunaTranslator/gui/setting_cishu.py b/src/LunaTranslator/gui/setting_cishu.py index 08476684..04c04686 100644 --- a/src/LunaTranslator/gui/setting_cishu.py +++ b/src/LunaTranslator/gui/setting_cishu.py @@ -13,6 +13,7 @@ from gui.usefulwidget import ( auto_select_webview, ) from gui.setting_display_text import on_not_find_qweb +from gui.showword import showdiction def setTabcishu(self, basel): @@ -220,6 +221,10 @@ def setTabcishu_l(self): lambda: gobject.baseobject.searchwordW.showsignal.emit(), "fa.search", ), + D_getIconButton( + lambda: showdiction(self).show(), + "fa.book", + ), "", "辞书显示顺序", D_getIconButton( @@ -235,12 +240,14 @@ def setTabcishu_l(self): 1, ), "", + "", ("点击单词复制"), ( D_getsimpleswitch(globalconfig, "usecopyword"), 1, ), "", + "", ("使用原型查询"), ( D_getsimpleswitch(globalconfig, "usewordorigin"), diff --git a/src/LunaTranslator/gui/showword.py b/src/LunaTranslator/gui/showword.py index dc453e31..07421d05 100644 --- a/src/LunaTranslator/gui/showword.py +++ b/src/LunaTranslator/gui/showword.py @@ -30,7 +30,15 @@ from gui.usefulwidget import ( saveposwindow, tabadd_lazy, ) -from gui.dynalang import LPushButton, LLabel, LTabWidget, LTabBar, LFormLayout, LLabel +from gui.dynalang import ( + LPushButton, + LLabel, + LTabWidget, + LTabBar, + LFormLayout, + LLabel, + LMainWindow, +) def getimageformatlist(): @@ -750,6 +758,92 @@ class CustomTabBar(LTabBar): return self.savesizehint +from cishu.cishubase import DictTree + +DictNodeRole = Qt.ItemDataRole.UserRole + 1 +DeterminedhasChildren = DictNodeRole + 1 +isWordNode = DeterminedhasChildren + 1 + + +class DynamicTreeModel(QStandardItemModel): + def __init__(self): + super().__init__() + + def hasChildren(self, index): + if self.data(index, isWordNode): + return False + _DeterminedhasChildren = self.data(index, DeterminedhasChildren) + if _DeterminedhasChildren is not None: + return _DeterminedhasChildren + return self.data(index, DictNodeRole) is not None + + def loadChildren(self, index: QModelIndex): + if not index.isValid(): + return + if self.data(index, isWordNode): + return + if self.data(index, DeterminedhasChildren) is not None: + return + node: DictTree = self.data(index, DictNodeRole) + if not node: + return + childs = node.childrens() + self.setData(index, len(childs) > 0, DeterminedhasChildren) + thisitem = self.itemFromIndex(index) + for c in childs: + if isinstance(c, str): + t = c + has = False + else: + t = c.text() + has = True + item = QStandardItem(t) + if has: + item.setData(c, DictNodeRole) + else: + item.setData(True, isWordNode) + thisitem.appendRow([item]) + + def onDoubleClicked(self, index: QModelIndex): + if not self.data(index, isWordNode): + return + gobject.baseobject.searchwordW.search_word.emit(self.itemFromIndex(index).text(), False) + +class showdiction(LMainWindow): + def __init__(self, parent): + super(showdiction, self).__init__(parent) + self.resize(400, parent.height()) + self.setWindowTitle("查看") + self.tree = QTreeView(self) + self.tree.setHeaderHidden(True) + self.tree.setEditTriggers(QAbstractItemView.EditTrigger.NoEditTriggers) + self.setCentralWidget(self.tree) + + self.model = DynamicTreeModel() + self.tree.setModel(self.model) + self.tree.expanded.connect(self.model.loadChildren) + root = self.model.invisibleRootItem() + self.tree.doubleClicked.connect(self.model.onDoubleClicked) + good = False + for k in globalconfig["cishuvisrank"]: + cishu = gobject.baseobject.cishus[k] + + if not hasattr(cishu, "tree"): + continue + try: + tree = cishu.tree() + except: + continue + if not tree: + continue + + item = QStandardItem(globalconfig["cishu"][k]["name"]) + item.setData(tree, DictNodeRole) + root.appendRow([item]) + good = True + root.setData(good, DeterminedhasChildren) + + class searchwordW(closeashidewindow): search_word = pyqtSignal(str, bool) show_dict_result = pyqtSignal(float, str, str) diff --git a/src/LunaTranslator/qtsymbols.py b/src/LunaTranslator/qtsymbols.py index bbfec424..db7ddc96 100644 --- a/src/LunaTranslator/qtsymbols.py +++ b/src/LunaTranslator/qtsymbols.py @@ -1,6 +1,6 @@ try: from PyQt5 import QtSvg - from PyQt5.QtWidgets import QFrame,QListView,QCheckBox,QAbstractItemView,QTextEdit,QTableView,QHeaderView,QColorDialog,QSpinBox,QDoubleSpinBox,QComboBox,QDialogButtonBox,QMainWindow,QMessageBox,QDialog,QGridLayout,QTextBrowser,QGraphicsDropShadowEffect,QWidget,QSizePolicy,QScrollArea,QApplication,QPushButton,QSystemTrayIcon,QPlainTextEdit,QAction,QMenu,QFileDialog,QKeySequenceEdit,QLabel,QSpacerItem,QWidgetItem,QLayout,QTextBrowser,QLineEdit,QFormLayout,QSizePolicy,QTabWidget,QTabBar,QSplitter,QListWidget,QListWidgetItem,QHBoxLayout,QVBoxLayout,QSizeGrip,QFontComboBox,QProgressBar,QRadioButton,QButtonGroup,QSlider,QToolTip,QGroupBox,QGraphicsOpacityEffect,QStackedWidget,QStyledItemDelegate,QStyleOptionViewItem,QFontDialog + from PyQt5.QtWidgets import QFrame,QListView,QCheckBox,QAbstractItemView,QTextEdit,QTableView,QHeaderView,QColorDialog,QSpinBox,QDoubleSpinBox,QComboBox,QDialogButtonBox,QMainWindow,QMessageBox,QDialog,QGridLayout,QTextBrowser,QGraphicsDropShadowEffect,QWidget,QSizePolicy,QScrollArea,QApplication,QPushButton,QSystemTrayIcon,QPlainTextEdit,QAction,QMenu,QFileDialog,QKeySequenceEdit,QLabel,QSpacerItem,QWidgetItem,QLayout,QTextBrowser,QLineEdit,QFormLayout,QSizePolicy,QTabWidget,QTabBar,QSplitter,QListWidget,QListWidgetItem,QHBoxLayout,QVBoxLayout,QSizeGrip,QFontComboBox,QProgressBar,QRadioButton,QButtonGroup,QSlider,QToolTip,QGroupBox,QGraphicsOpacityEffect,QStackedWidget,QStyledItemDelegate,QStyleOptionViewItem,QFontDialog,QTreeView from PyQt5.QtGui import QIconEngine,QIntValidator,QStandardItem,QStandardItemModel,QImageWriter,QIcon,QTextCharFormat,QTextBlockFormat,QResizeEvent,QTextCursor,QFontMetricsF,QMouseEvent,QImage,QPainter,QRegion,QCloseEvent,QFontDatabase,QKeySequence,QPixmap,QCursor,QColor,QFont,QPen,QPainterPath,QBrush,QFontMetrics,QShowEvent,QWheelEvent,QPaintEvent,QTextLayout, QTextOption,QDragEnterEvent, QDropEvent,QTransform from PyQt5.QtCore import QObject,pyqtSignal,Qt,QSize,QByteArray,QBuffer,QPointF,QPoint,QRect,QEvent,QModelIndex,QTimer,QRectF,QVariantAnimation,QUrl,QPropertyAnimation,QLocale,QSignalBlocker isqt5 = True @@ -11,7 +11,7 @@ except: #from traceback import print_exc #print_exc() from PyQt6 import QtSvg - from PyQt6.QtWidgets import QFrame,QListView,QCheckBox,QAbstractItemView,QTextEdit,QTableView,QHeaderView,QColorDialog,QSpinBox,QDoubleSpinBox,QComboBox,QDialogButtonBox,QMainWindow,QMessageBox,QDialog,QGridLayout,QTextBrowser,QGraphicsDropShadowEffect,QWidget,QSizePolicy,QScrollArea,QApplication,QPushButton,QSystemTrayIcon,QPlainTextEdit,QMenu,QFileDialog,QKeySequenceEdit,QLabel,QSpacerItem,QWidgetItem,QLayout,QTextBrowser,QLineEdit,QFormLayout,QSizePolicy,QTabWidget,QTabBar,QSplitter,QListWidget,QListWidgetItem,QHBoxLayout,QVBoxLayout,QSizeGrip,QFontComboBox,QProgressBar,QRadioButton,QButtonGroup,QSlider,QToolTip,QGroupBox,QGraphicsOpacityEffect,QStackedWidget + from PyQt6.QtWidgets import QFrame,QListView,QCheckBox,QAbstractItemView,QTextEdit,QTableView,QHeaderView,QColorDialog,QSpinBox,QDoubleSpinBox,QComboBox,QDialogButtonBox,QMainWindow,QMessageBox,QDialog,QGridLayout,QTextBrowser,QGraphicsDropShadowEffect,QWidget,QSizePolicy,QScrollArea,QApplication,QPushButton,QSystemTrayIcon,QPlainTextEdit,QMenu,QFileDialog,QKeySequenceEdit,QLabel,QSpacerItem,QWidgetItem,QLayout,QTextBrowser,QLineEdit,QFormLayout,QSizePolicy,QTabWidget,QTabBar,QSplitter,QListWidget,QListWidgetItem,QHBoxLayout,QVBoxLayout,QSizeGrip,QFontComboBox,QProgressBar,QRadioButton,QButtonGroup,QSlider,QToolTip,QGroupBox,QGraphicsOpacityEffect,QStackedWidget,QTreeView from PyQt6.QtGui import QIconEngine,QIntValidator,QAction,QStandardItem,QStandardItemModel,QImageWriter,QIcon,QTextCharFormat,QTextBlockFormat,QResizeEvent,QTextCursor,QFontMetricsF,QMouseEvent,QImage,QPainter,QRegion,QCloseEvent,QFontDatabase,QKeySequence,QPixmap,QCursor,QColor,QFont,QPen,QPainterPath,QBrush,QFontMetrics,QShowEvent,QWheelEvent,QPaintEvent,QTextLayout, QTextOption from PyQt6.QtCore import QObject,pyqtSignal,Qt,QSize,QByteArray,QBuffer,QPointF,QPoint,QRect,QEvent,QModelIndex,QTimer,QRectF,QVariantAnimation,QUrl,QPropertyAnimation,QLocale isqt5 = False diff --git a/src/files/lang/ar.json b/src/files/lang/ar.json index d35303eb..cb3be965 100644 --- a/src/files/lang/ar.json +++ b/src/files/lang/ar.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "بايدو ترجمة منصة مفتوحة", "百度智能云": "بايدو سحابة ذكية", "(支持gpt词典)": "( دعم قاموس GPT )", - "日志": "سجل ." + "日志": "سجل .", + "查看": "عرض ." } \ No newline at end of file diff --git a/src/files/lang/cht.json b/src/files/lang/cht.json index 937642ef..1c9f8bd7 100644 --- a/src/files/lang/cht.json +++ b/src/files/lang/cht.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "百度翻譯開放平台", "百度智能云": "百度智慧雲", "(支持gpt词典)": "(支援 GPT 詞典)", - "日志": "日誌" + "日志": "日誌", + "查看": "查看" } \ No newline at end of file diff --git a/src/files/lang/cs.json b/src/files/lang/cs.json index 911c24fb..e74fdac5 100644 --- a/src/files/lang/cs.json +++ b/src/files/lang/cs.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Baidu Translation Open Platform", "百度智能云": "Cloud AI Baidu", "(支持gpt词典)": "(Podporuje GPT slovník)", - "日志": "deník" + "日志": "deník", + "查看": "viz" } \ No newline at end of file diff --git a/src/files/lang/de.json b/src/files/lang/de.json index 20a64df3..c475ae4b 100644 --- a/src/files/lang/de.json +++ b/src/files/lang/de.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Baidu Translation Open Platform", "百度智能云": "Baidu AI Cloud", "(支持gpt词典)": "(Unterstützt GPT Wörterbuch)", - "日志": "Journal" + "日志": "Journal", + "查看": "siehe" } \ No newline at end of file diff --git a/src/files/lang/en.json b/src/files/lang/en.json index 799ebfcd..aa6c36c1 100644 --- a/src/files/lang/en.json +++ b/src/files/lang/en.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Baidu Translation Open Platform", "百度智能云": "Baidu AI Cloud", "(支持gpt词典)": "(Supports GPT dictionary)", - "日志": "journal" + "日志": "journal", + "查看": "see" } \ No newline at end of file diff --git a/src/files/lang/es.json b/src/files/lang/es.json index b1e63d5c..6b45a8ac 100644 --- a/src/files/lang/es.json +++ b/src/files/lang/es.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Baidu Translation Open Platform", "百度智能云": "Baidu SMART Cloud", "(支持gpt词典)": "(admite diccionarios gpt)", - "日志": "Diario" + "日志": "Diario", + "查看": "Ver" } \ No newline at end of file diff --git a/src/files/lang/fr.json b/src/files/lang/fr.json index ad62c8a9..b5a80396 100644 --- a/src/files/lang/fr.json +++ b/src/files/lang/fr.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Baidu traduction plateforme ouverte", "百度智能云": "Baidu intelligent Cloud", "(支持gpt词典)": "(support du dictionnaire GPT)", - "日志": "Logs" + "日志": "Logs", + "查看": "Voir" } \ No newline at end of file diff --git a/src/files/lang/it.json b/src/files/lang/it.json index 8aaf07ba..0116f81f 100644 --- a/src/files/lang/it.json +++ b/src/files/lang/it.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Piattaforma aperta di traduzione Baidu", "百度智能云": "Baidu AI Cloud", "(支持gpt词典)": "(Supporta il dizionario GPT)", - "日志": "diario" + "日志": "diario", + "查看": "vedi" } \ No newline at end of file diff --git a/src/files/lang/ja.json b/src/files/lang/ja.json index e26ae6f9..b583fed8 100644 --- a/src/files/lang/ja.json +++ b/src/files/lang/ja.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "百度翻訳オープンプラットフォーム", "百度智能云": "百度知能クラウド", "(支持gpt词典)": "(gpt辞書対応)", - "日志": "ログ#ログ#" + "日志": "ログ#ログ#", + "查看": "表示#ヒョウジ#" } \ No newline at end of file diff --git a/src/files/lang/ko.json b/src/files/lang/ko.json index a2b75517..56f27f57 100644 --- a/src/files/lang/ko.json +++ b/src/files/lang/ko.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "바이두 번역 오픈 플랫폼", "百度智能云": "바이두 스마트 클라우드", "(支持gpt词典)": "(gpt 사전 지원)", - "日志": "로그" + "日志": "로그", + "查看": "보기" } \ No newline at end of file diff --git a/src/files/lang/nl.json b/src/files/lang/nl.json index e4334636..5ea626b8 100644 --- a/src/files/lang/nl.json +++ b/src/files/lang/nl.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Baidu Translation Open Platform", "百度智能云": "Baidu AI Cloud", "(支持gpt词典)": "(Ondersteunt GPT woordenboek)", - "日志": "dagboek" + "日志": "dagboek", + "查看": "zie" } \ No newline at end of file diff --git a/src/files/lang/pl.json b/src/files/lang/pl.json index 3b6fe6c0..b7310eff 100644 --- a/src/files/lang/pl.json +++ b/src/files/lang/pl.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Otwarta platforma tłumaczeń Baidu", "百度智能云": "Chmura AI Baidu", "(支持gpt词典)": "(Obsługuje słownik GPT)", - "日志": "dziennik" + "日志": "dziennik", + "查看": "zobacz" } \ No newline at end of file diff --git a/src/files/lang/pt.json b/src/files/lang/pt.json index 88b82f81..44a22247 100644 --- a/src/files/lang/pt.json +++ b/src/files/lang/pt.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Plataforma Aberta de Tradução Baidu", "百度智能云": "Nuvem AI Baidu", "(支持gpt词典)": "(Suporta dicionário GPT)", - "日志": "diário" + "日志": "diário", + "查看": "ver" } \ No newline at end of file diff --git a/src/files/lang/ru.json b/src/files/lang/ru.json index 074dc0d3..af46fce9 100644 --- a/src/files/lang/ru.json +++ b/src/files/lang/ru.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Открытая платформа для перевода.", "百度智能云": "Сто умных облаков", "(支持gpt词典)": "(Поддержка словаря GPT)", - "日志": "Журнал" + "日志": "Журнал", + "查看": "Посмотреть" } \ No newline at end of file diff --git a/src/files/lang/sv.json b/src/files/lang/sv.json index 696497c6..824c13cf 100644 --- a/src/files/lang/sv.json +++ b/src/files/lang/sv.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Öppen plattform för översättning av Baidu", "百度智能云": "Baidu AI- molnName", "(支持gpt词典)": "(Stöder GPT-ordlista)", - "日志": "journal" + "日志": "journal", + "查看": "se" } \ No newline at end of file diff --git a/src/files/lang/th.json b/src/files/lang/th.json index f4e7ddcc..74555e63 100644 --- a/src/files/lang/th.json +++ b/src/files/lang/th.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "แพลตฟอร์มเปิด Baidu Translation", "百度智能云": "Baidu สมาร์ทคลาวด์", "(支持gpt词典)": "(รองรับพจนานุกรม gpt)", - "日志": "บันทึกประจำวัน" + "日志": "บันทึกประจำวัน", + "查看": "ดู" } \ No newline at end of file diff --git a/src/files/lang/tr.json b/src/files/lang/tr.json index 01c3d92f..b6f2224b 100644 --- a/src/files/lang/tr.json +++ b/src/files/lang/tr.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Baidu Çeviri Açık Platformu", "百度智能云": "Baidu AI Bulud", "(支持gpt词典)": "(GPT sözlük destekliyor)", - "日志": "Günlük" + "日志": "Günlük", + "查看": "Gördün mü?" } \ No newline at end of file diff --git a/src/files/lang/uk.json b/src/files/lang/uk.json index cb51664d..a9edee78 100644 --- a/src/files/lang/uk.json +++ b/src/files/lang/uk.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "Відкрита платформа перекладу Baidu", "百度智能云": "Хмари Baidu AIweather condition", "(支持gpt词典)": "(Підтримує словник GPT)", - "日志": "журнал" + "日志": "журнал", + "查看": "див." } \ No newline at end of file diff --git a/src/files/lang/vi.json b/src/files/lang/vi.json index b0f0b069..8d0eaed2 100644 --- a/src/files/lang/vi.json +++ b/src/files/lang/vi.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "100 phiên dịch mở", "百度智能云": "100 đám mây thông minh", "(支持gpt词典)": "(Hỗ trợ GPT Dictionary)", - "日志": "Đăng nhập" + "日志": "Đăng nhập", + "查看": "Xem thêm" } \ No newline at end of file diff --git a/src/files/lang/zh.json b/src/files/lang/zh.json index f41c4817..1ff05080 100644 --- a/src/files/lang/zh.json +++ b/src/files/lang/zh.json @@ -810,5 +810,6 @@ "百度翻译开放平台": "", "百度智能云": "", "(支持gpt词典)": "", - "日志": "" + "日志": "", + "查看": "" } \ No newline at end of file diff --git a/src/plugins/CMakeLists.txt b/src/plugins/CMakeLists.txt index 9b223522..0d68dfea 100644 --- a/src/plugins/CMakeLists.txt +++ b/src/plugins/CMakeLists.txt @@ -28,8 +28,8 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/version) include(generate_product_version) set(VERSION_MAJOR 5) -set(VERSION_MINOR 45) -set(VERSION_PATCH 7) +set(VERSION_MINOR 46) +set(VERSION_PATCH 0) add_library(pch pch.cpp) target_precompile_headers(pch PUBLIC pch.h)