diff --git a/lib/libimhex/source/api/content_registry.cpp b/lib/libimhex/source/api/content_registry.cpp index d9351db9f..0f2352655 100644 --- a/lib/libimhex/source/api/content_registry.cpp +++ b/lib/libimhex/source/api/content_registry.cpp @@ -412,6 +412,9 @@ namespace hex { namespace ContentRegistry::Language { void addLocalization(const nlohmann::json &data) { + if (!data.is_object()) + return; + if (!data.contains("code") || !data.contains("country") || !data.contains("language") || !data.contains("translations")) { log::error("Localization data is missing required fields!"); return; diff --git a/plugins/builtin/romfs/lang/base.json b/plugins/builtin/romfs/lang/base.json new file mode 100644 index 000000000..0e03f7c6c --- /dev/null +++ b/plugins/builtin/romfs/lang/base.json @@ -0,0 +1,840 @@ +[ + "hex.builtin.command.calc.desc", + "hex.builtin.command.cmd.desc", + "hex.builtin.command.cmd.result", + "hex.builtin.command.web.desc", + "hex.builtin.command.web.result", + "hex.builtin.common.address", + "hex.builtin.common.big", + "hex.builtin.common.big_endian", + "hex.builtin.common.browse", + "hex.builtin.common.bytes", + "hex.builtin.common.cancel", + "hex.builtin.common.choose_file", + "hex.builtin.common.close", + "hex.builtin.common.comment", + "hex.builtin.common.count", + "hex.builtin.common.decimal", + "hex.builtin.common.dont_show_again", + "hex.builtin.common.encoding.ascii", + "hex.builtin.common.encoding.utf16be", + "hex.builtin.common.encoding.utf16le", + "hex.builtin.common.encoding.utf8", + "hex.builtin.common.endian", + "hex.builtin.common.error", + "hex.builtin.common.fatal", + "hex.builtin.common.file", + "hex.builtin.common.filter", + "hex.builtin.common.hexadecimal", + "hex.builtin.common.info", + "hex.builtin.common.instruction", + "hex.builtin.common.link", + "hex.builtin.common.little", + "hex.builtin.common.little_endian", + "hex.builtin.common.load", + "hex.builtin.common.match_selection", + "hex.builtin.common.name", + "hex.builtin.common.no", + "hex.builtin.common.number_format", + "hex.builtin.common.octal", + "hex.builtin.common.offset", + "hex.builtin.common.okay", + "hex.builtin.common.open", + "hex.builtin.common.percentage", + "hex.builtin.common.processing", + "hex.builtin.common.question", + "hex.builtin.common.range", + "hex.builtin.common.range.entire_data", + "hex.builtin.common.range.selection", + "hex.builtin.common.region", + "hex.builtin.common.set", + "hex.builtin.common.size", + "hex.builtin.common.type", + "hex.builtin.common.type.f32", + "hex.builtin.common.type.f64", + "hex.builtin.common.type.i16", + "hex.builtin.common.type.i24", + "hex.builtin.common.type.i32", + "hex.builtin.common.type.i48", + "hex.builtin.common.type.i64", + "hex.builtin.common.type.i8", + "hex.builtin.common.type.u16", + "hex.builtin.common.type.u24", + "hex.builtin.common.type.u32", + "hex.builtin.common.type.u48", + "hex.builtin.common.type.u64", + "hex.builtin.common.type.u8", + "hex.builtin.common.value", + "hex.builtin.common.yes", + "hex.builtin.hash.crc.iv", + "hex.builtin.hash.crc.poly", + "hex.builtin.hash.crc.refl_in", + "hex.builtin.hash.crc.refl_out", + "hex.builtin.hash.crc.xor_out", + "hex.builtin.hash.crc16", + "hex.builtin.hash.crc32", + "hex.builtin.hash.crc8", + "hex.builtin.hash.md5", + "hex.builtin.hash.sha1", + "hex.builtin.hash.sha224", + "hex.builtin.hash.sha256", + "hex.builtin.hash.sha384", + "hex.builtin.hash.sha512", + "hex.builtin.hex_editor.data_size", + "hex.builtin.hex_editor.no_bytes", + "hex.builtin.hex_editor.page", + "hex.builtin.hex_editor.region", + "hex.builtin.hex_editor.selection", + "hex.builtin.hex_editor.selection.none", + "hex.builtin.inspector.ascii", + "hex.builtin.inspector.binary", + "hex.builtin.inspector.bool", + "hex.builtin.inspector.dos_date", + "hex.builtin.inspector.dos_time", + "hex.builtin.inspector.double", + "hex.builtin.inspector.float", + "hex.builtin.inspector.float16", + "hex.builtin.inspector.guid", + "hex.builtin.inspector.i16", + "hex.builtin.inspector.i24", + "hex.builtin.inspector.i32", + "hex.builtin.inspector.i48", + "hex.builtin.inspector.i64", + "hex.builtin.inspector.i8", + "hex.builtin.inspector.long_double", + "hex.builtin.inspector.rgb565", + "hex.builtin.inspector.rgba8", + "hex.builtin.inspector.sleb128", + "hex.builtin.inspector.string", + "hex.builtin.inspector.string16", + "hex.builtin.inspector.time", + "hex.builtin.inspector.time32", + "hex.builtin.inspector.time64", + "hex.builtin.inspector.u16", + "hex.builtin.inspector.u24", + "hex.builtin.inspector.u32", + "hex.builtin.inspector.u48", + "hex.builtin.inspector.u64", + "hex.builtin.inspector.u8", + "hex.builtin.inspector.uleb128", + "hex.builtin.inspector.utf8", + "hex.builtin.inspector.wide", + "hex.builtin.layouts.default", + "hex.builtin.menu.edit", + "hex.builtin.menu.edit.bookmark.create", + "hex.builtin.menu.edit.redo", + "hex.builtin.menu.edit.undo", + "hex.builtin.menu.file", + "hex.builtin.menu.file.bookmark.export", + "hex.builtin.menu.file.bookmark.import", + "hex.builtin.menu.file.clear_recent", + "hex.builtin.menu.file.close", + "hex.builtin.menu.file.create_file", + "hex.builtin.menu.file.export", + "hex.builtin.menu.file.export.base64", + "hex.builtin.menu.file.export.base64.popup.export_error", + "hex.builtin.menu.file.export.ips.popup.export_error", + "hex.builtin.menu.file.export.ips.popup.invalid_patch_header_error", + "hex.builtin.menu.file.export.ips.popup.address_out_of_range_error", + "hex.builtin.menu.file.export.ips.popup.patch_too_large_error", + "hex.builtin.menu.file.export.ips.popup.invalid_patch_format_error", + "hex.builtin.menu.file.export.ips.popup.missing_eof_error", + "hex.builtin.menu.file.export.ips", + "hex.builtin.menu.file.export.ips32", + "hex.builtin.menu.file.export.popup.create", + "hex.builtin.menu.file.export.title", + "hex.builtin.menu.file.import", + "hex.builtin.menu.file.import.base64", + "hex.builtin.menu.file.import.base64.popup.import_error", + "hex.builtin.menu.file.import.base64.popup.open_error", + "hex.builtin.menu.file.import.ips", + "hex.builtin.menu.file.import.ips32", + "hex.builtin.menu.file.open_file", + "hex.builtin.menu.file.open_other", + "hex.builtin.menu.file.open_project", + "hex.builtin.menu.file.open_recent", + "hex.builtin.menu.file.quit", + "hex.builtin.menu.file.reload_file", + "hex.builtin.menu.file.save_project", + "hex.builtin.menu.file.save_project_as", + "hex.builtin.menu.help", + "hex.builtin.menu.layout", + "hex.builtin.menu.view", + "hex.builtin.menu.view.demo", + "hex.builtin.menu.view.fps", + "hex.builtin.nodes.arithmetic", + "hex.builtin.nodes.arithmetic.add", + "hex.builtin.nodes.arithmetic.add.header", + "hex.builtin.nodes.arithmetic.average", + "hex.builtin.nodes.arithmetic.average.header", + "hex.builtin.nodes.arithmetic.div", + "hex.builtin.nodes.arithmetic.div.header", + "hex.builtin.nodes.arithmetic.median", + "hex.builtin.nodes.arithmetic.median.header", + "hex.builtin.nodes.arithmetic.mod", + "hex.builtin.nodes.arithmetic.mod.header", + "hex.builtin.nodes.arithmetic.mul", + "hex.builtin.nodes.arithmetic.mul.header", + "hex.builtin.nodes.arithmetic.sub", + "hex.builtin.nodes.arithmetic.sub.header", + "hex.builtin.nodes.bitwise", + "hex.builtin.nodes.bitwise.and", + "hex.builtin.nodes.bitwise.and.header", + "hex.builtin.nodes.bitwise.not", + "hex.builtin.nodes.bitwise.not.header", + "hex.builtin.nodes.bitwise.or", + "hex.builtin.nodes.bitwise.or.header", + "hex.builtin.nodes.bitwise.xor", + "hex.builtin.nodes.bitwise.xor.header", + "hex.builtin.nodes.buffer", + "hex.builtin.nodes.buffer.combine", + "hex.builtin.nodes.buffer.combine.header", + "hex.builtin.nodes.buffer.patch", + "hex.builtin.nodes.buffer.patch.header", + "hex.builtin.nodes.buffer.patch.input.patch", + "hex.builtin.nodes.buffer.repeat", + "hex.builtin.nodes.buffer.repeat.header", + "hex.builtin.nodes.buffer.repeat.input.buffer", + "hex.builtin.nodes.buffer.repeat.input.count", + "hex.builtin.nodes.buffer.slice", + "hex.builtin.nodes.buffer.slice.header", + "hex.builtin.nodes.buffer.slice.input.buffer", + "hex.builtin.nodes.buffer.slice.input.from", + "hex.builtin.nodes.buffer.slice.input.to", + "hex.builtin.nodes.casting", + "hex.builtin.nodes.casting.buffer_to_float", + "hex.builtin.nodes.casting.buffer_to_float.header", + "hex.builtin.nodes.casting.buffer_to_int", + "hex.builtin.nodes.casting.buffer_to_int.header", + "hex.builtin.nodes.casting.float_to_buffer", + "hex.builtin.nodes.casting.float_to_buffer.header", + "hex.builtin.nodes.casting.int_to_buffer", + "hex.builtin.nodes.casting.int_to_buffer.header", + "hex.builtin.nodes.common.height", + "hex.builtin.nodes.common.input", + "hex.builtin.nodes.common.input.a", + "hex.builtin.nodes.common.input.b", + "hex.builtin.nodes.common.output", + "hex.builtin.nodes.common.width", + "hex.builtin.nodes.constants", + "hex.builtin.nodes.constants.buffer", + "hex.builtin.nodes.constants.buffer.header", + "hex.builtin.nodes.constants.buffer.size", + "hex.builtin.nodes.constants.comment", + "hex.builtin.nodes.constants.comment.header", + "hex.builtin.nodes.constants.float", + "hex.builtin.nodes.constants.float.header", + "hex.builtin.nodes.constants.int", + "hex.builtin.nodes.constants.int.header", + "hex.builtin.nodes.constants.nullptr", + "hex.builtin.nodes.constants.nullptr.header", + "hex.builtin.nodes.constants.rgba8", + "hex.builtin.nodes.constants.rgba8.header", + "hex.builtin.nodes.constants.rgba8.output.a", + "hex.builtin.nodes.constants.rgba8.output.b", + "hex.builtin.nodes.constants.rgba8.output.g", + "hex.builtin.nodes.constants.rgba8.output.r", + "hex.builtin.nodes.constants.string", + "hex.builtin.nodes.constants.string.header", + "hex.builtin.nodes.control_flow", + "hex.builtin.nodes.control_flow.and", + "hex.builtin.nodes.control_flow.and.header", + "hex.builtin.nodes.control_flow.equals", + "hex.builtin.nodes.control_flow.equals.header", + "hex.builtin.nodes.control_flow.gt", + "hex.builtin.nodes.control_flow.gt.header", + "hex.builtin.nodes.control_flow.if", + "hex.builtin.nodes.control_flow.if.condition", + "hex.builtin.nodes.control_flow.if.false", + "hex.builtin.nodes.control_flow.if.header", + "hex.builtin.nodes.control_flow.if.true", + "hex.builtin.nodes.control_flow.lt", + "hex.builtin.nodes.control_flow.lt.header", + "hex.builtin.nodes.control_flow.not", + "hex.builtin.nodes.control_flow.not.header", + "hex.builtin.nodes.control_flow.or", + "hex.builtin.nodes.control_flow.or.header", + "hex.builtin.nodes.crypto", + "hex.builtin.nodes.crypto.aes", + "hex.builtin.nodes.crypto.aes.header", + "hex.builtin.nodes.crypto.aes.iv", + "hex.builtin.nodes.crypto.aes.key", + "hex.builtin.nodes.crypto.aes.key_length", + "hex.builtin.nodes.crypto.aes.mode", + "hex.builtin.nodes.crypto.aes.nonce", + "hex.builtin.nodes.data_access", + "hex.builtin.nodes.data_access.read", + "hex.builtin.nodes.data_access.read.address", + "hex.builtin.nodes.data_access.read.data", + "hex.builtin.nodes.data_access.read.header", + "hex.builtin.nodes.data_access.read.size", + "hex.builtin.nodes.data_access.selection", + "hex.builtin.nodes.data_access.selection.address", + "hex.builtin.nodes.data_access.selection.header", + "hex.builtin.nodes.data_access.selection.size", + "hex.builtin.nodes.data_access.size", + "hex.builtin.nodes.data_access.size.header", + "hex.builtin.nodes.data_access.size.size", + "hex.builtin.nodes.data_access.write", + "hex.builtin.nodes.data_access.write.address", + "hex.builtin.nodes.data_access.write.data", + "hex.builtin.nodes.data_access.write.header", + "hex.builtin.nodes.decoding", + "hex.builtin.nodes.decoding.base64", + "hex.builtin.nodes.decoding.base64.header", + "hex.builtin.nodes.decoding.hex", + "hex.builtin.nodes.decoding.hex.header", + "hex.builtin.nodes.display", + "hex.builtin.nodes.display.buffer", + "hex.builtin.nodes.display.buffer.header", + "hex.builtin.nodes.display.float", + "hex.builtin.nodes.display.float.header", + "hex.builtin.nodes.display.int", + "hex.builtin.nodes.display.int.header", + "hex.builtin.nodes.display.string", + "hex.builtin.nodes.display.string.header", + "hex.builtin.nodes.pattern_language", + "hex.builtin.nodes.pattern_language.out_var", + "hex.builtin.nodes.pattern_language.out_var.header", + "hex.builtin.nodes.visualizer", + "hex.builtin.nodes.visualizer.byte_distribution", + "hex.builtin.nodes.visualizer.byte_distribution.header", + "hex.builtin.nodes.visualizer.digram", + "hex.builtin.nodes.visualizer.digram.header", + "hex.builtin.nodes.visualizer.image", + "hex.builtin.nodes.visualizer.image.header", + "hex.builtin.nodes.visualizer.image_rgba", + "hex.builtin.nodes.visualizer.image_rgba.header", + "hex.builtin.nodes.visualizer.layered_dist", + "hex.builtin.nodes.visualizer.layered_dist.header", + "hex.builtin.pattern_drawer.color", + "hex.builtin.pattern_drawer.double_click", + "hex.builtin.pattern_drawer.offset", + "hex.builtin.pattern_drawer.size", + "hex.builtin.pattern_drawer.type", + "hex.builtin.pattern_drawer.value", + "hex.builtin.pattern_drawer.var_name", + "hex.builtin.pattern_drawer.visualizer.unknown", + "hex.builtin.pattern_drawer.visualizer.invalid_parameter_count", + "hex.builtin.popup.close_provider.desc", + "hex.builtin.popup.close_provider.title", + "hex.builtin.popup.error.create", + "hex.builtin.popup.error.file_dialog.common", + "hex.builtin.popup.error.file_dialog.portal", + "hex.builtin.popup.error.open", + "hex.builtin.popup.error.project.load", + "hex.builtin.popup.error.project.save", + "hex.builtin.popup.error.read_only", + "hex.builtin.popup.error.task_exception", + "hex.builtin.popup.exit_application.desc", + "hex.builtin.popup.exit_application.title", + "hex.builtin.popup.waiting_for_tasks.title", + "hex.builtin.popup.waiting_for_tasks.desc", + "hex.builtin.provider.disk", + "hex.builtin.provider.disk.disk_size", + "hex.builtin.provider.disk.reload", + "hex.builtin.provider.disk.sector_size", + "hex.builtin.provider.disk.selected_disk", + "hex.builtin.provider.file", + "hex.builtin.provider.file.access", + "hex.builtin.provider.file.creation", + "hex.builtin.provider.file.modification", + "hex.builtin.provider.file.path", + "hex.builtin.provider.file.size", + "hex.builtin.provider.gdb", + "hex.builtin.provider.gdb.ip", + "hex.builtin.provider.gdb.name", + "hex.builtin.provider.gdb.port", + "hex.builtin.provider.gdb.server", + "hex.builtin.provider.intel_hex", + "hex.builtin.provider.intel_hex.name", + "hex.builtin.provider.mem_file", + "hex.builtin.provider.mem_file.unsaved", + "hex.builtin.provider.motorola_srec", + "hex.builtin.provider.motorola_srec.name", + "hex.builtin.provider.view", + "hex.builtin.setting.folders", + "hex.builtin.setting.folders.add_folder", + "hex.builtin.setting.folders.description", + "hex.builtin.setting.folders.remove_folder", + "hex.builtin.setting.font", + "hex.builtin.setting.font.font_path", + "hex.builtin.setting.font.font_size", + "hex.builtin.setting.general", + "hex.builtin.setting.general.auto_load_patterns", + "hex.builtin.setting.general.check_for_updates", + "hex.builtin.setting.general.enable_unicode", + "hex.builtin.setting.general.show_tips", + "hex.builtin.setting.general.sync_pattern_source", + "hex.builtin.setting.hex_editor", + "hex.builtin.setting.hex_editor.advanced_decoding", + "hex.builtin.setting.hex_editor.ascii", + "hex.builtin.setting.hex_editor.byte_padding", + "hex.builtin.setting.hex_editor.bytes_per_row", + "hex.builtin.setting.hex_editor.char_padding", + "hex.builtin.setting.hex_editor.grey_zeros", + "hex.builtin.setting.hex_editor.highlight_color", + "hex.builtin.setting.hex_editor.sync_scrolling", + "hex.builtin.setting.hex_editor.uppercase_hex", + "hex.builtin.setting.hex_editor.visualizer", + "hex.builtin.setting.imhex", + "hex.builtin.setting.imhex.recent_files", + "hex.builtin.setting.interface", + "hex.builtin.setting.interface.color", + "hex.builtin.setting.interface.fps", + "hex.builtin.setting.interface.fps.unlocked", + "hex.builtin.setting.interface.language", + "hex.builtin.setting.interface.multi_windows", + "hex.builtin.setting.interface.pattern_tree_style", + "hex.builtin.setting.interface.pattern_tree_style.tree", + "hex.builtin.setting.interface.pattern_tree_style.auto_expanded", + "hex.builtin.setting.interface.pattern_tree_style.flattened", + "hex.builtin.setting.interface.scaling", + "hex.builtin.setting.interface.scaling.native", + "hex.builtin.setting.interface.scaling.x0_5", + "hex.builtin.setting.interface.scaling.x1_0", + "hex.builtin.setting.interface.scaling.x1_5", + "hex.builtin.setting.interface.scaling.x2_0", + "hex.builtin.setting.interface.scaling.x3_0", + "hex.builtin.setting.interface.scaling.x4_0", + "hex.builtin.setting.interface.wiki_explain_language", + "hex.builtin.setting.proxy", + "hex.builtin.setting.proxy.description", + "hex.builtin.setting.proxy.enable", + "hex.builtin.setting.proxy.url", + "hex.builtin.setting.proxy.url.tooltip", + "hex.builtin.tools.ascii_table", + "hex.builtin.tools.ascii_table.octal", + "hex.builtin.tools.base_converter", + "hex.builtin.tools.base_converter.bin", + "hex.builtin.tools.base_converter.dec", + "hex.builtin.tools.base_converter.hex", + "hex.builtin.tools.base_converter.oct", + "hex.builtin.tools.calc", + "hex.builtin.tools.color", + "hex.builtin.tools.demangler", + "hex.builtin.tools.demangler.demangled", + "hex.builtin.tools.demangler.mangled", + "hex.builtin.tools.error", + "hex.builtin.tools.file_tools", + "hex.builtin.tools.file_tools.combiner", + "hex.builtin.tools.file_tools.combiner.add", + "hex.builtin.tools.file_tools.combiner.add.picker", + "hex.builtin.tools.file_tools.combiner.clear", + "hex.builtin.tools.file_tools.combiner.combine", + "hex.builtin.tools.file_tools.combiner.combining", + "hex.builtin.tools.file_tools.combiner.delete", + "hex.builtin.tools.file_tools.combiner.error.open_output", + "hex.builtin.tools.file_tools.combiner.open_input", + "hex.builtin.tools.file_tools.combiner.output", + "hex.builtin.tools.file_tools.combiner.output.picker", + "hex.builtin.tools.file_tools.combiner.success", + "hex.builtin.tools.file_tools.shredder", + "hex.builtin.tools.file_tools.shredder.error.open", + "hex.builtin.tools.file_tools.shredder.fast", + "hex.builtin.tools.file_tools.shredder.input", + "hex.builtin.tools.file_tools.shredder.picker", + "hex.builtin.tools.file_tools.shredder.shred", + "hex.builtin.tools.file_tools.shredder.shredding", + "hex.builtin.tools.file_tools.shredder.success", + "hex.builtin.tools.file_tools.shredder.warning", + "hex.builtin.tools.file_tools.splitter", + "hex.builtin.tools.file_tools.splitter.input", + "hex.builtin.tools.file_tools.splitter.output", + "hex.builtin.tools.file_tools.splitter.picker.error.create", + "hex.builtin.tools.file_tools.splitter.picker.error.open", + "hex.builtin.tools.file_tools.splitter.picker.error.size", + "hex.builtin.tools.file_tools.splitter.picker.input", + "hex.builtin.tools.file_tools.splitter.picker.output", + "hex.builtin.tools.file_tools.splitter.picker.split", + "hex.builtin.tools.file_tools.splitter.picker.splitting", + "hex.builtin.tools.file_tools.splitter.picker.success", + "hex.builtin.tools.file_tools.splitter.sizes.3_5_floppy", + "hex.builtin.tools.file_tools.splitter.sizes.5_75_floppy", + "hex.builtin.tools.file_tools.splitter.sizes.cdrom650", + "hex.builtin.tools.file_tools.splitter.sizes.cdrom700", + "hex.builtin.tools.file_tools.splitter.sizes.custom", + "hex.builtin.tools.file_tools.splitter.sizes.fat32", + "hex.builtin.tools.file_tools.splitter.sizes.zip100", + "hex.builtin.tools.file_tools.splitter.sizes.zip200", + "hex.builtin.tools.file_uploader", + "hex.builtin.tools.file_uploader.control", + "hex.builtin.tools.file_uploader.done", + "hex.builtin.tools.file_uploader.error", + "hex.builtin.tools.file_uploader.invalid_response", + "hex.builtin.tools.file_uploader.recent", + "hex.builtin.tools.file_uploader.tooltip", + "hex.builtin.tools.file_uploader.upload", + "hex.builtin.tools.format.engineering", + "hex.builtin.tools.format.programmer", + "hex.builtin.tools.format.scientific", + "hex.builtin.tools.format.standard", + "hex.builtin.tools.history", + "hex.builtin.tools.ieee754", + "hex.builtin.tools.ieee754.description", + "hex.builtin.tools.ieee754.double_precision", + "hex.builtin.tools.ieee754.exponent", + "hex.builtin.tools.ieee754.exponent_size", + "hex.builtin.tools.ieee754.formula", + "hex.builtin.tools.ieee754.half_precision", + "hex.builtin.tools.ieee754.mantissa", + "hex.builtin.tools.ieee754.mantissa_size", + "hex.builtin.tools.ieee754.result.float", + "hex.builtin.tools.ieee754.result.hex", + "hex.builtin.tools.ieee754.result.title", + "hex.builtin.tools.ieee754.sign", + "hex.builtin.tools.ieee754.singe_precision", + "hex.builtin.tools.ieee754.type", + "hex.builtin.tools.invariant_multiplication", + "hex.builtin.tools.invariant_multiplication.description", + "hex.builtin.tools.invariant_multiplication.num_bits", + "hex.builtin.tools.input", + "hex.builtin.tools.name", + "hex.builtin.tools.permissions", + "hex.builtin.tools.permissions.absolute", + "hex.builtin.tools.permissions.perm_bits", + "hex.builtin.tools.permissions.setgid_error", + "hex.builtin.tools.permissions.setuid_error", + "hex.builtin.tools.permissions.sticky_error", + "hex.builtin.tools.regex_replacer", + "hex.builtin.tools.regex_replacer.input", + "hex.builtin.tools.regex_replacer.output", + "hex.builtin.tools.regex_replacer.pattern", + "hex.builtin.tools.regex_replacer.replace", + "hex.builtin.tools.value", + "hex.builtin.tools.wiki_explain", + "hex.builtin.tools.wiki_explain.control", + "hex.builtin.tools.wiki_explain.invalid_response", + "hex.builtin.tools.wiki_explain.results", + "hex.builtin.tools.wiki_explain.search", + "hex.builtin.view.bookmarks.address", + "hex.builtin.view.bookmarks.button.jump", + "hex.builtin.view.bookmarks.button.remove", + "hex.builtin.view.bookmarks.default_title", + "hex.builtin.view.bookmarks.header.color", + "hex.builtin.view.bookmarks.header.comment", + "hex.builtin.view.bookmarks.header.name", + "hex.builtin.view.bookmarks.name", + "hex.builtin.view.bookmarks.no_bookmarks", + "hex.builtin.view.bookmarks.title.info", + "hex.builtin.view.command_palette.name", + "hex.builtin.view.constants.name", + "hex.builtin.view.constants.row.category", + "hex.builtin.view.constants.row.desc", + "hex.builtin.view.constants.row.name", + "hex.builtin.view.constants.row.value", + "hex.builtin.view.data_inspector.invert", + "hex.builtin.view.data_inspector.name", + "hex.builtin.view.data_inspector.no_data", + "hex.builtin.view.data_inspector.table.name", + "hex.builtin.view.data_inspector.table.value", + "hex.builtin.view.data_processor.help_text", + "hex.builtin.view.data_processor.menu.file.load_processor", + "hex.builtin.view.data_processor.menu.file.save_processor", + "hex.builtin.view.data_processor.menu.remove_link", + "hex.builtin.view.data_processor.menu.remove_node", + "hex.builtin.view.data_processor.menu.remove_selection", + "hex.builtin.view.data_processor.name", + "hex.builtin.view.diff.name", + "hex.builtin.view.disassembler.16bit", + "hex.builtin.view.disassembler.32bit", + "hex.builtin.view.disassembler.64bit", + "hex.builtin.view.disassembler.arch", + "hex.builtin.view.disassembler.arm.arm", + "hex.builtin.view.disassembler.arm.armv8", + "hex.builtin.view.disassembler.arm.cortex_m", + "hex.builtin.view.disassembler.arm.default", + "hex.builtin.view.disassembler.arm.thumb", + "hex.builtin.view.disassembler.base", + "hex.builtin.view.disassembler.bpf.classic", + "hex.builtin.view.disassembler.bpf.extended", + "hex.builtin.view.disassembler.disassemble", + "hex.builtin.view.disassembler.disassembling", + "hex.builtin.view.disassembler.disassembly.address", + "hex.builtin.view.disassembler.disassembly.bytes", + "hex.builtin.view.disassembler.disassembly.offset", + "hex.builtin.view.disassembler.disassembly.title", + "hex.builtin.view.disassembler.m680x.6301", + "hex.builtin.view.disassembler.m680x.6309", + "hex.builtin.view.disassembler.m680x.6800", + "hex.builtin.view.disassembler.m680x.6801", + "hex.builtin.view.disassembler.m680x.6805", + "hex.builtin.view.disassembler.m680x.6808", + "hex.builtin.view.disassembler.m680x.6809", + "hex.builtin.view.disassembler.m680x.6811", + "hex.builtin.view.disassembler.m680x.cpu12", + "hex.builtin.view.disassembler.m680x.hcs08", + "hex.builtin.view.disassembler.m68k.000", + "hex.builtin.view.disassembler.m68k.010", + "hex.builtin.view.disassembler.m68k.020", + "hex.builtin.view.disassembler.m68k.030", + "hex.builtin.view.disassembler.m68k.040", + "hex.builtin.view.disassembler.m68k.060", + "hex.builtin.view.disassembler.mips.micro", + "hex.builtin.view.disassembler.mips.mips2", + "hex.builtin.view.disassembler.mips.mips3", + "hex.builtin.view.disassembler.mips.mips32", + "hex.builtin.view.disassembler.mips.mips32R6", + "hex.builtin.view.disassembler.mips.mips64", + "hex.builtin.view.disassembler.mos65xx.6502", + "hex.builtin.view.disassembler.mos65xx.65816", + "hex.builtin.view.disassembler.mos65xx.65816_long_m", + "hex.builtin.view.disassembler.mos65xx.65816_long_mx", + "hex.builtin.view.disassembler.mos65xx.65816_long_x", + "hex.builtin.view.disassembler.mos65xx.65c02", + "hex.builtin.view.disassembler.mos65xx.w65c02", + "hex.builtin.view.disassembler.name", + "hex.builtin.view.disassembler.position", + "hex.builtin.view.disassembler.ppc.booke", + "hex.builtin.view.disassembler.ppc.qpx", + "hex.builtin.view.disassembler.ppc.spe", + "hex.builtin.view.disassembler.region", + "hex.builtin.view.disassembler.riscv.compressed", + "hex.builtin.view.disassembler.settings.header", + "hex.builtin.view.disassembler.settings.mode", + "hex.builtin.view.disassembler.sparc.v9", + "hex.builtin.view.find.binary_pattern", + "hex.builtin.view.find.context.copy", + "hex.builtin.view.find.context.copy_demangle", + "hex.builtin.view.find.demangled", + "hex.builtin.view.find.name", + "hex.builtin.view.find.regex", + "hex.builtin.view.find.regex.full_match", + "hex.builtin.view.find.regex.pattern", + "hex.builtin.view.find.search", + "hex.builtin.view.find.search.entries", + "hex.builtin.view.find.search.reset", + "hex.builtin.view.find.searching", + "hex.builtin.view.find.sequences", + "hex.builtin.view.find.strings", + "hex.builtin.view.find.strings.chars", + "hex.builtin.view.find.strings.line_feeds", + "hex.builtin.view.find.strings.lower_case", + "hex.builtin.view.find.strings.match_settings", + "hex.builtin.view.find.strings.min_length", + "hex.builtin.view.find.strings.null_term", + "hex.builtin.view.find.strings.numbers", + "hex.builtin.view.find.strings.spaces", + "hex.builtin.view.find.strings.symbols", + "hex.builtin.view.find.strings.underscores", + "hex.builtin.view.find.strings.upper_case", + "hex.builtin.view.find.value", + "hex.builtin.view.find.value.max", + "hex.builtin.view.find.value.min", + "hex.builtin.view.hashes.function", + "hex.builtin.view.hashes.hash", + "hex.builtin.view.hashes.hover_info", + "hex.builtin.view.hashes.name", + "hex.builtin.view.hashes.no_settings", + "hex.builtin.view.hashes.remove", + "hex.builtin.view.hashes.table.name", + "hex.builtin.view.hashes.table.result", + "hex.builtin.view.hashes.table.type", + "hex.builtin.view.help.about.contributor", + "hex.builtin.view.help.about.donations", + "hex.builtin.view.help.about.libs", + "hex.builtin.view.help.about.license", + "hex.builtin.view.help.about.name", + "hex.builtin.view.help.about.paths", + "hex.builtin.view.help.about.source", + "hex.builtin.view.help.about.thanks", + "hex.builtin.view.help.about.translator", + "hex.builtin.view.help.calc_cheat_sheet", + "hex.builtin.view.help.documentation", + "hex.builtin.view.help.name", + "hex.builtin.view.help.pattern_cheat_sheet", + "hex.builtin.view.hex_editor.copy.address", + "hex.builtin.view.hex_editor.copy.ascii", + "hex.builtin.view.hex_editor.copy.base64", + "hex.builtin.view.hex_editor.copy.c", + "hex.builtin.view.hex_editor.copy.cpp", + "hex.builtin.view.hex_editor.copy.crystal", + "hex.builtin.view.hex_editor.copy.csharp", + "hex.builtin.view.hex_editor.copy.custom_encoding", + "hex.builtin.view.hex_editor.copy.go", + "hex.builtin.view.hex_editor.copy.hex_view", + "hex.builtin.view.hex_editor.copy.html", + "hex.builtin.view.hex_editor.copy.java", + "hex.builtin.view.hex_editor.copy.js", + "hex.builtin.view.hex_editor.copy.lua", + "hex.builtin.view.hex_editor.copy.pascal", + "hex.builtin.view.hex_editor.copy.python", + "hex.builtin.view.hex_editor.copy.rust", + "hex.builtin.view.hex_editor.copy.swift", + "hex.builtin.view.hex_editor.goto.offset.absolute", + "hex.builtin.view.hex_editor.goto.offset.begin", + "hex.builtin.view.hex_editor.goto.offset.end", + "hex.builtin.view.hex_editor.goto.offset.relative", + "hex.builtin.view.hex_editor.menu.edit.copy", + "hex.builtin.view.hex_editor.menu.edit.copy_as", + "hex.builtin.view.hex_editor.menu.edit.insert", + "hex.builtin.view.hex_editor.menu.edit.jump_to", + "hex.builtin.view.hex_editor.menu.edit.open_in_new_provider", + "hex.builtin.view.hex_editor.menu.edit.paste", + "hex.builtin.view.hex_editor.menu.edit.paste_all", + "hex.builtin.view.hex_editor.menu.edit.remove", + "hex.builtin.view.hex_editor.menu.edit.resize", + "hex.builtin.view.hex_editor.menu.edit.select_all", + "hex.builtin.view.hex_editor.menu.edit.set_base", + "hex.builtin.view.hex_editor.menu.file.goto", + "hex.builtin.view.hex_editor.menu.file.load_encoding_file", + "hex.builtin.view.hex_editor.menu.file.save", + "hex.builtin.view.hex_editor.menu.file.save_as", + "hex.builtin.view.hex_editor.menu.file.search", + "hex.builtin.view.hex_editor.menu.file.select", + "hex.builtin.view.hex_editor.name", + "hex.builtin.view.hex_editor.search.find", + "hex.builtin.view.hex_editor.search.hex", + "hex.builtin.view.hex_editor.search.string", + "hex.builtin.view.hex_editor.select.offset.begin", + "hex.builtin.view.hex_editor.select.offset.end", + "hex.builtin.view.hex_editor.select.offset.region", + "hex.builtin.view.hex_editor.select.offset.size", + "hex.builtin.view.hex_editor.select.select", + "hex.builtin.view.information.analyze", + "hex.builtin.view.information.analyzing", + "hex.builtin.view.information.block_size", + "hex.builtin.view.information.block_size.desc", + "hex.builtin.view.information.byte_types", + "hex.builtin.view.information.control", + "hex.builtin.view.information.description", + "hex.builtin.view.information.digram", + "hex.builtin.view.information.distribution", + "hex.builtin.view.information.encrypted", + "hex.builtin.view.information.entropy", + "hex.builtin.view.information.file_entropy", + "hex.builtin.view.information.highest_entropy", + "hex.builtin.view.information.info_analysis", + "hex.builtin.view.information.layered_distribution", + "hex.builtin.view.information.magic", + "hex.builtin.view.information.magic_db_added", + "hex.builtin.view.information.mime", + "hex.builtin.view.information.name", + "hex.builtin.view.information.region", + "hex.builtin.view.information.plain_text", + "hex.builtin.view.information.plain_text_percentage", + "hex.builtin.view.patches.name", + "hex.builtin.view.patches.offset", + "hex.builtin.view.patches.orig", + "hex.builtin.view.patches.patch", + "hex.builtin.view.patches.remove", + "hex.builtin.view.pattern_data.name", + "hex.builtin.view.pattern_editor.accept_pattern", + "hex.builtin.view.pattern_editor.accept_pattern.desc", + "hex.builtin.view.pattern_editor.accept_pattern.pattern_language", + "hex.builtin.view.pattern_editor.accept_pattern.question", + "hex.builtin.view.pattern_editor.auto", + "hex.builtin.view.pattern_editor.console", + "hex.builtin.view.pattern_editor.dangerous_function.desc", + "hex.builtin.view.pattern_editor.dangerous_function.name", + "hex.builtin.view.pattern_editor.env_vars", + "hex.builtin.view.pattern_editor.evaluating", + "hex.builtin.view.pattern_editor.menu.edit.place_pattern", + "hex.builtin.view.pattern_editor.menu.edit.place_pattern.builtin", + "hex.builtin.view.pattern_editor.menu.edit.place_pattern.builtin.array", + "hex.builtin.view.pattern_editor.menu.edit.place_pattern.builtin.single", + "hex.builtin.view.pattern_editor.menu.edit.place_pattern.custom", + "hex.builtin.view.pattern_editor.menu.file.load_pattern", + "hex.builtin.view.pattern_editor.menu.file.save_pattern", + "hex.builtin.view.pattern_editor.name", + "hex.builtin.view.pattern_editor.no_in_out_vars", + "hex.builtin.view.pattern_editor.open_pattern", + "hex.builtin.view.pattern_editor.section_popup", + "hex.builtin.view.pattern_editor.sections", + "hex.builtin.view.pattern_editor.settings", + "hex.builtin.view.provider_settings.load_error", + "hex.builtin.view.provider_settings.load_popup", + "hex.builtin.view.provider_settings.name", + "hex.builtin.view.settings.name", + "hex.builtin.view.settings.restart_question", + "hex.builtin.view.store.desc", + "hex.builtin.view.store.download", + "hex.builtin.view.store.download_error", + "hex.builtin.view.store.loading", + "hex.builtin.view.store.name", + "hex.builtin.view.store.netfailed", + "hex.builtin.view.store.reload", + "hex.builtin.view.store.remove", + "hex.builtin.view.store.row.description", + "hex.builtin.view.store.row.name", + "hex.builtin.view.store.tab.constants", + "hex.builtin.view.store.tab.encodings", + "hex.builtin.view.store.tab.libraries", + "hex.builtin.view.store.tab.magics", + "hex.builtin.view.store.tab.patterns", + "hex.builtin.view.store.tab.yara", + "hex.builtin.view.store.update", + "hex.builtin.view.tools.name", + "hex.builtin.view.yara.error", + "hex.builtin.view.yara.header.matches", + "hex.builtin.view.yara.header.rules", + "hex.builtin.view.yara.match", + "hex.builtin.view.yara.matches.identifier", + "hex.builtin.view.yara.matches.variable", + "hex.builtin.view.yara.matching", + "hex.builtin.view.yara.name", + "hex.builtin.view.yara.no_rules", + "hex.builtin.view.yara.reload", + "hex.builtin.view.yara.reset", + "hex.builtin.view.yara.rule_added", + "hex.builtin.view.yara.whole_data", + "hex.builtin.visualizer.decimal.signed.16bit", + "hex.builtin.visualizer.decimal.signed.32bit", + "hex.builtin.visualizer.decimal.signed.64bit", + "hex.builtin.visualizer.decimal.signed.8bit", + "hex.builtin.visualizer.decimal.unsigned.16bit", + "hex.builtin.visualizer.decimal.unsigned.32bit", + "hex.builtin.visualizer.decimal.unsigned.64bit", + "hex.builtin.visualizer.decimal.unsigned.8bit", + "hex.builtin.visualizer.floating_point.16bit", + "hex.builtin.visualizer.floating_point.32bit", + "hex.builtin.visualizer.floating_point.64bit", + "hex.builtin.visualizer.hexadecimal.16bit", + "hex.builtin.visualizer.hexadecimal.32bit", + "hex.builtin.visualizer.hexadecimal.64bit", + "hex.builtin.visualizer.hexadecimal.8bit", + "hex.builtin.visualizer.hexii", + "hex.builtin.visualizer.rgba8", + "hex.builtin.welcome.check_for_updates_text", + "hex.builtin.welcome.customize.settings.desc", + "hex.builtin.welcome.customize.settings.title", + "hex.builtin.welcome.header.customize", + "hex.builtin.welcome.header.help", + "hex.builtin.welcome.header.learn", + "hex.builtin.welcome.header.main", + "hex.builtin.welcome.header.plugins", + "hex.builtin.welcome.header.start", + "hex.builtin.welcome.header.update", + "hex.builtin.welcome.header.various", + "hex.builtin.welcome.help.discord", + "hex.builtin.welcome.help.discord.link", + "hex.builtin.welcome.help.gethelp", + "hex.builtin.welcome.help.gethelp.link", + "hex.builtin.welcome.help.repo", + "hex.builtin.welcome.help.repo.link", + "hex.builtin.welcome.learn.latest.desc", + "hex.builtin.welcome.learn.latest.link", + "hex.builtin.welcome.learn.latest.title", + "hex.builtin.welcome.learn.pattern.desc", + "hex.builtin.welcome.learn.pattern.link", + "hex.builtin.welcome.learn.pattern.title", + "hex.builtin.welcome.learn.plugins.desc", + "hex.builtin.welcome.learn.plugins.link", + "hex.builtin.welcome.learn.plugins.title", + "hex.builtin.welcome.plugins.author", + "hex.builtin.welcome.plugins.desc", + "hex.builtin.welcome.plugins.plugin", + "hex.builtin.welcome.safety_backup.delete", + "hex.builtin.welcome.safety_backup.desc", + "hex.builtin.welcome.safety_backup.restore", + "hex.builtin.welcome.safety_backup.title", + "hex.builtin.welcome.start.create_file", + "hex.builtin.welcome.start.open_file", + "hex.builtin.welcome.start.open_other", + "hex.builtin.welcome.start.open_project", + "hex.builtin.welcome.start.recent", + "hex.builtin.welcome.tip_of_the_day", + "hex.builtin.welcome.update.desc", + "hex.builtin.welcome.update.link", + "hex.builtin.welcome.update.title" +] \ No newline at end of file diff --git a/plugins/windows/romfs/lang/base.json b/plugins/windows/romfs/lang/base.json new file mode 100644 index 000000000..4d2b60a23 --- /dev/null +++ b/plugins/windows/romfs/lang/base.json @@ -0,0 +1,38 @@ +[ + "hex.windows.provider.process_memory", + "hex.windows.provider.process_memory.enumeration_failed", + "hex.windows.provider.process_memory.memory_regions", + "hex.windows.provider.process_memory.name", + "hex.windows.provider.process_memory.process_name", + "hex.windows.provider.process_memory.process_id", + "hex.windows.provider.process_memory.region.commit", + "hex.windows.provider.process_memory.region.reserve", + "hex.windows.provider.process_memory.region.private", + "hex.windows.provider.process_memory.region.mapped", + "hex.windows.provider.process_memory.utils", + "hex.windows.provider.process_memory.utils.inject_dll", + "hex.windows.provider.process_memory.utils.inject_dll.success", + "hex.windows.provider.process_memory.utils.inject_dll.failure", + "hex.builtin.setting.general.context_menu_entry", + "hex.windows.title_bar_button.debug_build", + "hex.windows.title_bar_button.feedback", + "hex.windows.view.tty_console.auto_scroll", + "hex.windows.view.tty_console.baud", + "hex.windows.view.tty_console.clear", + "hex.windows.view.tty_console.config", + "hex.windows.view.tty_console.connect", + "hex.windows.view.tty_console.connect_error", + "hex.windows.view.tty_console.console", + "hex.windows.view.tty_console.cts", + "hex.windows.view.tty_console.disconnect", + "hex.windows.view.tty_console.name", + "hex.windows.view.tty_console.no_available_port", + "hex.windows.view.tty_console.num_bits", + "hex.windows.view.tty_console.parity_bits", + "hex.windows.view.tty_console.port", + "hex.windows.view.tty_console.reload", + "hex.windows.view.tty_console.send_eot", + "hex.windows.view.tty_console.send_etx", + "hex.windows.view.tty_console.send_sub", + "hex.windows.view.tty_console.stop_bits" +] \ No newline at end of file