From 0f47403d0220757fed189b76e2071e25b1025cb8 Mon Sep 17 00:00:00 2001 From: Runemoro Date: Wed, 3 Jun 2020 13:39:42 -0400 Subject: Split GUI code to separate module (#242) * Split into modules * Post merge compile fixes Co-authored-by: modmuss50 --- .../services/cuchaz.enigma.api.EnigmaPlugin | 1 + enigma/src/main/resources/lang/en_us.json | 164 +++++++++++++++++++++ enigma/src/main/resources/lang/fr_fr.json | 164 +++++++++++++++++++++ enigma/src/main/resources/lang/zh_cn.json | 118 +++++++++++++++ enigma/src/main/resources/profile.json | 20 +++ 5 files changed, 467 insertions(+) create mode 100644 enigma/src/main/resources/META-INF/services/cuchaz.enigma.api.EnigmaPlugin create mode 100644 enigma/src/main/resources/lang/en_us.json create mode 100644 enigma/src/main/resources/lang/fr_fr.json create mode 100644 enigma/src/main/resources/lang/zh_cn.json create mode 100644 enigma/src/main/resources/profile.json (limited to 'enigma/src/main/resources') diff --git a/enigma/src/main/resources/META-INF/services/cuchaz.enigma.api.EnigmaPlugin b/enigma/src/main/resources/META-INF/services/cuchaz.enigma.api.EnigmaPlugin new file mode 100644 index 0000000..136a3e7 --- /dev/null +++ b/enigma/src/main/resources/META-INF/services/cuchaz.enigma.api.EnigmaPlugin @@ -0,0 +1 @@ +cuchaz.enigma.analysis.BuiltinPlugin diff --git a/enigma/src/main/resources/lang/en_us.json b/enigma/src/main/resources/lang/en_us.json new file mode 100644 index 0000000..dbf4b93 --- /dev/null +++ b/enigma/src/main/resources/lang/en_us.json @@ -0,0 +1,164 @@ +{ + "language": "English", + + "mapping_format.enigma_file": "Enigma File", + "mapping_format.enigma_directory": "Enigma Directory", + "mapping_format.enigma_zip": "Enigma ZIP", + "mapping_format.tiny_v2": "Tiny v2", + "mapping_format.tiny_file": "Tiny File", + "mapping_format.srg_file": "SRG File", + "mapping_format.proguard": "Proguard", + "type.methods": "Methods", + "type.fields": "Fields", + "type.parameters": "Parameters", + "type.classes": "Classes", + + "menu.file": "File", + "menu.file.jar.open": "Open Jar...", + "menu.file.jar.close": "Close Jar", + "menu.file.mappings.open": "Open Mappings...", + "menu.file.mappings.save": "Save Mappings", + "menu.file.mappings.save_as": "Save Mappings As...", + "menu.file.mappings.close": "Close Mappings", + "menu.file.mappings.drop": "Drop Invalid Mappings", + "menu.file.export.source": "Export Source...", + "menu.file.export.jar": "Export Jar...", + "menu.file.stats": "Mapping Stats...", + "menu.file.stats.title": "Choose Included Members", + "menu.file.stats.generate": "Generate Stats", + "menu.file.exit": "Exit", + "menu.decompiler": "Decompiler", + "menu.view": "View", + "menu.view.themes": "Themes", + "menu.view.themes.default": "Default", + "menu.view.themes.darcula": "Darcula", + "menu.view.themes.system": "System", + "menu.view.themes.none": "None (JVM Default)", + "menu.view.languages": "Languages", + "menu.view.scale": "Scale", + "menu.view.scale.custom": "Custom...", + "menu.view.scale.custom.title": "Custom Scale", + "menu.view.change.title": "Changes", + "menu.view.change.summary": "Changes will be applied after the next restart.", + "menu.view.change.ok": "Ok", + "menu.view.search": "Search", + "menu.collab": "Collab", + "menu.collab.connect": "Connect to server", + "menu.collab.connect.error": "Error connecting to server", + "menu.collab.disconnect": "Disconnect", + "menu.collab.server.start": "Start server", + "menu.collab.server.start.error": "Error starting server", + "menu.collab.server.stop": "Stop server", + "menu.help": "Help", + "menu.help.about": "About", + "menu.help.about.title": "%s - About", + "menu.help.about.ok": "Ok", + "menu.help.github": "Github Page", + + "popup_menu.rename": "Rename", + "popup_menu.javadoc": "Edit Javadoc", + "popup_menu.inheritance": "Show Inheritance", + "popup_menu.implementations": "Show Implementations", + "popup_menu.calls": "Show Calls (All Implementations)", + "popup_menu.calls.specific": "Show Calls (Specific)", + "popup_menu.declaration": "Go to Declaration", + "popup_menu.back": "Go back", + "popup_menu.forward": "Go forward", + "popup_menu.mark_deobfuscated": "Mark as deobfuscated", + "popup_menu.reset_obfuscated": "Reset to obfuscated", + "popup_menu.zoom.in": "Zoom in", + "popup_menu.zoom.out": "Zoom out", + "popup_menu.zoom.reset": "Reset zoom", + + "info_panel.classes.obfuscated": "Obfuscated Classes", + "info_panel.classes.deobfuscated": "De-obfuscated Classes", + "info_panel.identifier": "Identifier Info", + "info_panel.identifier.none": "No identifier selected", + "info_panel.identifier.variable": "Variable", + "info_panel.identifier.field": "Field", + "info_panel.identifier.method": "Method", + "info_panel.identifier.constructor": "Constructor", + "info_panel.identifier.class": "Class", + "info_panel.identifier.type_descriptor": "TypeDescriptor", + "info_panel.identifier.method_descriptor": "MethodDescriptor", + "info_panel.identifier.modifier": "Modifier", + "info_panel.identifier.index": "Index", + "info_panel.editor.class.decompiling": "(decompiling...)", + "info_panel.editor.class.not_found": "Unable to find class:", + "info_panel.tree.inheritance": "Inheritance", + "info_panel.tree.implementations": "Implementations", + "info_panel.tree.calls": "Call Graph", + + "log_panel.messages": "Messages", + "log_panel.users": "Users", + + "progress.operation": "%s - Operation in progress", + "progress.jar.indexing": "Indexing jar", + "progress.jar.indexing.entries": "Entries...", + "progress.jar.indexing.references": "Entry references...", + "progress.jar.indexing.methods": "Bridge methods...", + "progress.jar.indexing.process": "Processing...", + "progress.jar.writing": "Writing jar...", + "progress.sources.writing": "Writing sources...", + "progress.classes.deobfuscating": "Deobfuscating classes...", + "progress.classes.decompiling": "Decompiling classes...", + "progress.mappings.enigma_file.loading": "Loading mapping file", + "progress.mappings.enigma_file.done": "Done!", + "progress.mappings.enigma_file.writing": "Writing classes", + "progress.mappings.enigma_directory.loading": "Loading mapping files", + "progress.mappings.enigma_directory.writing": "Writing classes", + "progress.mappings.tiny_file.loading": "Loading mapping file", + "progress.mappings.tiny_v2.loading": "Loading mapping file", + "progress.mappings.srg_file.generating": "Generating mappings", + "progress.mappings.srg_file.writing": "Writing mappings", + "progress.stats": "Generating stats", + "progress.stats.data": "Generating data", + + "javadocs.edit": "Edit Javadocs", + "javadocs.instruction": "Edit javadocs here.", + "javadocs.cancel": "Cancel", + "javadocs.save": "Save", + + "prompt.close.title": "Save your changes?", + "prompt.close.summary": "Your mappings have not been saved yet. Do you want to save?", + "prompt.close.save": "Save and close", + "prompt.close.discard": "Discard changes", + "prompt.close.cancel": "Cancel", + "prompt.open": "Open", + "prompt.cancel": "Cancel", + "prompt.connect.title": "Connect to server", + "prompt.connect.username": "Username", + "prompt.connect.ip": "IP", + "prompt.port": "Port", + "prompt.port.nan": "Port is not a number", + "prompt.port.invalid": "Port is out of range, should be between 0-65535", + "prompt.password": "Password", + "prompt.password.too_long": "Password is too long, it must be at most 255 characters.", + "prompt.create_server.title": "Create server", + + "disconnect.disconnected": "Disconnected", + "disconnect.server_closed": "Server closed", + "disconnect.wrong_jar": "Jar checksums don't match (you have the wrong jar)!", + "disconnect.wrong_password": "Incorrect password", + "disconnect.username_taken": "Username is taken", + + "message.chat.text": "%s: %s", + "message.connect.text": "[+] %s", + "message.disconnect.text": "[-] %s", + "message.edit_docs.text": "%s edited docs for %s", + "message.mark_deobf.text": "%s marked %s as deobfuscated", + "message.remove_mapping.text": "%s removed mappings for %s", + "message.rename.text": "%s renamed %s to %s", + + "status.disconnected": "Disconnected.", + "status.connected": "Connected.", + "status.connected_user_count": "Connected (%d users).", + "status.ready": "Ready.", + + "crash.title": "%s - Crash Report", + "crash.summary": "%s has crashed! =(", + "crash.export": "Export", + "crash.ignore": "Ignore", + "crash.exit": "Exit", + "crash.exit.warning": "If you choose exit, you will lose any unsaved work." +} diff --git a/enigma/src/main/resources/lang/fr_fr.json b/enigma/src/main/resources/lang/fr_fr.json new file mode 100644 index 0000000..d169b9a --- /dev/null +++ b/enigma/src/main/resources/lang/fr_fr.json @@ -0,0 +1,164 @@ +{ + "language": "Français", + + "mapping_format.enigma_file": "Fichier Enigma", + "mapping_format.enigma_directory": "Répertoire Enigma", + "mapping_format.enigma_zip": "ZIP Enigma", + "mapping_format.tiny_v2": "Tiny v2", + "mapping_format.tiny_file": "Fichier Tiny", + "mapping_format.srg_file": "Fichier SRG", + "mapping_format.proguard": "Proguard", + "type.methods": "Méthodes", + "type.fields": "Champs", + "type.parameters": "Paramètres", + "type.classes": "Classes", + + "menu.file": "Fichier", + "menu.file.jar.open": "Ouvrir le jar...", + "menu.file.jar.close": "Fermer le jar", + "menu.file.mappings.open": "Ouvrir les mappings...", + "menu.file.mappings.save": "Enregistrer les mappings", + "menu.file.mappings.save_as": "Enregistrer les mappings sous...", + "menu.file.mappings.close": "Fermer les mappings", + "menu.file.mappings.drop": "Supprimer les mappings invalides", + "menu.file.export.source": "Exporter la source...", + "menu.file.export.jar": "Exporter le jar...", + "menu.file.stats": "Statistiques des mappings...", + "menu.file.stats.title": "Choisir les membres inclus", + "menu.file.stats.generate": "Générer les statistiques", + "menu.file.exit": "Quitter", + "menu.decompiler": "Décompilateur", + "menu.view": "Affichage", + "menu.view.themes": "Thèmes", + "menu.view.themes.default": "Par défaut", + "menu.view.themes.darcula": "Darcula", + "menu.view.themes.system": "Système", + "menu.view.themes.none": "Aucun (JVM par défaut)", + "menu.view.languages": "Langues", + "menu.view.scale": "Échelle", + "menu.view.scale.custom": "Personnalisée...", + "menu.view.scale.custom.title": "Échelle personnalisée", + "menu.view.change.title": "Modifications", + "menu.view.change.summary": "Les modifications seront appliquées lors du prochain redémarrage.", + "menu.view.change.ok": "Ok", + "menu.view.search": "Rechercher", + "menu.collab": "Collab", + "menu.collab.connect": "Se connecter à un serveur", + "menu.collab.connect.error": "Erreur lors de la connexion au serveur", + "menu.collab.disconnect": "Se déconnecter", + "menu.collab.server.start": "Démarrer le serveur", + "menu.collab.server.start.error": "Erreur lors du démarrage du serveur", + "menu.collab.server.stop": "Arrêter le serveur", + "menu.help": "Aide", + "menu.help.about": "À propos", + "menu.help.about.title": "%s - À propos", + "menu.help.about.ok": "Ok", + "menu.help.github": "Page Github", + + "popup_menu.rename": "Renommer", + "popup_menu.javadoc": "Éditer le Javadoc", + "popup_menu.inheritance": "Afficher l'héritage", + "popup_menu.implementations": "Afficher les implémentations", + "popup_menu.calls": "Afficher les appels (tous)", + "popup_menu.calls.specific": "Afficher les appels (spécifiques)", + "popup_menu.declaration": "Aller à la déclaration", + "popup_menu.back": "Annuler", + "popup_menu.forward": "Restaurer", + "popup_menu.mark_deobfuscated": "Marquer comme déobfusqué", + "popup_menu.reset_obfuscated": "Réinitialiser à obfusqué", + "popup_menu.zoom.in": "Zoomer", + "popup_menu.zoom.out": "Dézoomer", + "popup_menu.zoom.reset": "Réinitialiser le zoom", + + "info_panel.classes.obfuscated": "Classes obfusquées", + "info_panel.classes.deobfuscated": "Classes déobfusquées", + "info_panel.identifier": "Informations sur l'identifiant", + "info_panel.identifier.none": "Aucun identifiant sélectionné", + "info_panel.identifier.variable": "Variable", + "info_panel.identifier.field": "Champ", + "info_panel.identifier.method": "Méthode", + "info_panel.identifier.constructor": "Constructeur", + "info_panel.identifier.class": "Classe", + "info_panel.identifier.type_descriptor": "Descripteur de type", + "info_panel.identifier.method_descriptor": "Descripteur de méthode", + "info_panel.identifier.modifier": "Modificateur", + "info_panel.identifier.index": "Index", + "info_panel.editor.class.decompiling": "(décompilation...)", + "info_panel.editor.class.not_found": "Impossible de trouver la classe :", + "info_panel.tree.inheritance": "Héritage", + "info_panel.tree.implementations": "Implémentations", + "info_panel.tree.calls": "Graphique des appels", + + "log_panel.messages": "Messages", + "log_panel.users": "Utilisateurs", + + "progress.operation": "%s - Opération en cours", + "progress.jar.indexing": "Indexation du jar", + "progress.jar.indexing.entries": "Entrées...", + "progress.jar.indexing.references": "Références des entrées...", + "progress.jar.indexing.methods": "Mise en place des méthodes...", + "progress.jar.indexing.process": "Traitement...", + "progress.jar.writing": "Écriture du jar...", + "progress.sources.writing": "Écriture des sources...", + "progress.classes.deobfuscating": "Déobfuscation des classes...", + "progress.classes.decompiling": "Décompilation des classes...", + "progress.mappings.enigma_file.loading": "Chargement du fichier de mappings", + "progress.mappings.enigma_file.done": "Terminé !", + "progress.mappings.enigma_file.writing": "Écriture des classes", + "progress.mappings.enigma_directory.loading": "Chargement des fichiers de mappings", + "progress.mappings.enigma_directory.writing": "Écriture des classes", + "progress.mappings.tiny_file.loading": "Chargement du fichier de mappings", + "progress.mappings.tiny_v2.loading": "Chargement du fichier de mappings", + "progress.mappings.srg_file.generating": "Génération des mappings", + "progress.mappings.srg_file.writing": "Écriture des mappings", + "progress.stats": "Génération des statistiques", + "progress.stats.data": "Génération des données", + + "javadocs.edit": "Éditer les Javadocs", + "javadocs.instruction": "Éditer les Javadocs ici.", + "javadocs.cancel": "Annuler", + "javadocs.save": "Enregistrer", + + "prompt.close.title": "Enregistrer les modifications ?", + "prompt.close.summary": "Vos mappings n'ont pas encore été enregistrés. Souhaitez-vous enregistrer ?", + "prompt.close.save": "Enregistrer et fermer", + "prompt.close.discard": "Annuler les modifications", + "prompt.close.cancel": "Annuler", + "prompt.open": "Ouvrir", + "prompt.cancel": "Annuler", + "prompt.connect.title": "Se connecter à un serveur", + "prompt.connect.username": "Nom d'utilisateur", + "prompt.connect.ip": "IP", + "prompt.port": "Port", + "prompt.port.nan": "Le port n'est pas un nombre", + "prompt.port.invalid": "Le port est hors de portée. Il doit être compris entre 0 et 65535.", + "prompt.password": "Mot de passe", + "prompt.password.too_long": "Le mot de passe est trop long. Il ne doit pas dépasser 255 caractères.", + "prompt.create_server.title": "Créer un serveur", + + "disconnect.disconnected": "Déconnecté", + "disconnect.server_closed": "Serveur fermé", + "disconnect.wrong_jar": "Les sommes de contrôle du jar ne correspondent pas (vous avez le mauvais jar) !", + "disconnect.wrong_password": "Mot de passe incorrect", + "disconnect.username_taken": "Le nom d'utilisateur est déjà pris", + + "message.chat.text": "%s : %s", + "message.connect.text": "[+] %s", + "message.disconnect.text": "[-] %s", + "message.edit_docs.text": "%s a édité les javadocs de %s", + "message.mark_deobf.text": "%s a marqué %s comme déobfusqué", + "message.remove_mapping.text": "%s a supprimé les mappings de %s", + "message.rename.text": "%s a renommé %s en %s", + + "status.disconnected": "Déconnecté.", + "status.connected": "Connecté.", + "status.connected_user_count": "Connecté (%d utilisateurs).", + "status.ready": "Prêt.", + + "crash.title": "%s - Rapport de plantage", + "crash.summary": "%s a planté ! =(", + "crash.export": "Exporter", + "crash.ignore": "Ignorer", + "crash.exit": "Quitter", + "crash.exit.warning": "Si vous choisissez Quitter, vous perdrez tout travail non sauvegardé." +} diff --git a/enigma/src/main/resources/lang/zh_cn.json b/enigma/src/main/resources/lang/zh_cn.json new file mode 100644 index 0000000..f3f503a --- /dev/null +++ b/enigma/src/main/resources/lang/zh_cn.json @@ -0,0 +1,118 @@ +{ + "language": "Chinese", + + "mapping_format.enigma_file": "Enigma 文件", + "mapping_format.enigma_directory": "Enigma 目录", + "mapping_format.enigma_zip": "Enigma ZIP", + "mapping_format.tiny_v2": "Tiny v2", + "mapping_format.tiny_file": "Tiny File", + "mapping_format.srg_file": "SRG File", + "mapping_format.proguard": "Proguard", + "type.methods": "方法", + "type.fields": "字段", + "type.parameters": "参数", + "type.classes": "类", + + "menu.file": "文件", + "menu.file.jar.open": "打开 Jar...", + "menu.file.jar.close": "关闭 Jar", + "menu.file.mappings.open": "打开映射...", + "menu.file.mappings.save": "保存映射", + "menu.file.mappings.save_as": "将映射另存为...", + "menu.file.mappings.close": "关闭映射", + "menu.file.mappings.drop": "删除无效映射", + "menu.file.export.source": "导出源码...", + "menu.file.export.jar": "导出Jar...", + "menu.file.stats": "映射统计范围...", + "menu.file.stats.title": "选择包括的成员", + "menu.file.stats.generate": "生成统计范围", + "menu.file.exit": "退出", + "menu.decompiler": "反编译", + "menu.view": "查看", + "menu.view.themes": "主题", + "menu.view.themes.default": "Default", + "menu.view.themes.darcula": "Darcula", + "menu.view.themes.system": "System", + "menu.view.themes.none": "None (JVM Default)", + "menu.view.languages": "语言", + "menu.view.languages.title": "更改语言", + "menu.view.languages.summary": "新语言将在下次重新启动后应用.", + "menu.view.languages.ok": "确定", + "menu.view.search": "搜索", + "menu.help": "帮助", + "menu.help.about": "关于", + "menu.help.about.title": "%s - 关于", + "menu.help.about.ok": "确定", + "menu.help.github": "GitHub 页面", + + "popup_menu.rename": "改名", + "popup_menu.javadoc": "编辑注释", + "popup_menu.inheritance": "显示继承", + "popup_menu.implementations": "显示实现", + "popup_menu.calls": "显示 Calls", + "popup_menu.calls.specific": "显示 Calls (具体)", + "popup_menu.declaration": "Go to Declaration", + "popup_menu.back": "Go back", + "popup_menu.forward": "Go forward", + "popup_menu.mark_deobfuscated": "标记为反混淆", + "popup_menu.reset_obfuscated": "重置混淆", + + "info_panel.classes.obfuscated": "混淆类", + "info_panel.classes.deobfuscated": "反混淆类", + "info_panel.identifier": "标识符信息", + "info_panel.identifier.none": "未选择标识符", + "info_panel.identifier.variable": "变量", + "info_panel.identifier.field": "字段", + "info_panel.identifier.method": "方法", + "info_panel.identifier.constructor": "构造器", + "info_panel.identifier.class": "类", + "info_panel.identifier.type_descriptor": "类型描述符", + "info_panel.identifier.method_descriptor": "方法描述符", + "info_panel.identifier.modifier": "修饰语", + "info_panel.identifier.index": "索引", + "info_panel.editor.class.decompiling": "(反编译中...)", + "info_panel.editor.class.not_found": "找不到类:", + "info_panel.tree.inheritance": "继承", + "info_panel.tree.implementations": "实现", + "info_panel.tree.calls": "调用图", + + "progress.operation": "%s - 进行中", + "progress.jar.indexing": "索引jar", + "progress.jar.indexing.entries": "条目...", + "progress.jar.indexing.references": "条目引用...", + "progress.jar.indexing.methods": "桥接方法...", + "progress.jar.indexing.process": "处理中...", + "progress.jar.writing": "写出jar中...", + "progress.sources.writing": "写出源码中...", + "progress.classes.deobfuscating": "反混淆类中...", + "progress.classes.decompiling": "反编译类中...", + "progress.mappings.enigma_file.loading": "加载映射文件", + "progress.mappings.enigma_file.done": "完成!", + "progress.mappings.enigma_file.writing": "写出类", + "progress.mappings.enigma_directory.loading": "加载映射文件", + "progress.mappings.enigma_directory.writing": "写出类", + "progress.mappings.tiny_file.loading": "加载映射文件", + "progress.mappings.tiny_v2.loading": "加载映射文件", + "progress.mappings.srg_file.generating": "生成映射", + "progress.mappings.srg_file.writing": "写出映射", + "progress.stats": "生成统计范围", + "progress.stats.data": "生成数据", + + "javadocs.edit": "编辑注释", + "javadocs.instruction": "在此处编辑编辑注释.", + "javadocs.cancel": "取消", + "javadocs.save": "保存", + + "prompt.close.title": "保存更改?", + "prompt.close.summary": "您的映射尚未保存。你想保存吗?", + "prompt.close.save": "保存并关闭", + "prompt.close.discard": "放弃更改", + "prompt.close.cancel": "取消", + + "crash.title": "%s - 崩溃报告", + "crash.summary": "%s 已经崩溃! =(", + "crash.export": "输出", + "crash.ignore": "忽略", + "crash.exit": "退出", + "crash.exit.warning": "如果选择退出,将丢失所有未保存的工作." +} diff --git a/enigma/src/main/resources/profile.json b/enigma/src/main/resources/profile.json new file mode 100644 index 0000000..e1af4cd --- /dev/null +++ b/enigma/src/main/resources/profile.json @@ -0,0 +1,20 @@ +{ + "services": { + "jar_indexer": [ + { + "id": "enigma:enum_initializer_indexer" + }, + { + "id": "enigma:specialized_bridge_method_indexer" + } + ], + "name_proposal": [ + { + "id": "enigma:enum_name_proposer" + }, + { + "id": "enigma:specialized_method_name_proposer" + } + ] + } +} \ No newline at end of file -- cgit v1.2.3