diff --git a/arduino-ide-extension/package.json b/arduino-ide-extension/package.json index d03c48f35..1d71a2eef 100644 --- a/arduino-ide-extension/package.json +++ b/arduino-ide-extension/package.json @@ -4,12 +4,13 @@ "description": "An extension for Theia building the Arduino IDE", "license": "AGPL-3.0-or-later", "scripts": { - "prepare": "yarn download-cli && yarn download-fwuploader && yarn download-ls && yarn copy-serial-plotter && yarn clean && yarn download-examples && yarn build && yarn test", + "prepare": "yarn download-cli && yarn download-fwuploader && yarn download-ls && yarn copy-serial-plotter && yarn copy-i18n && yarn clean && yarn download-examples && yarn build && yarn test", "clean": "rimraf lib", "compose-changelog": "node ./scripts/compose-changelog.js", "download-cli": "node ./scripts/download-cli.js", "download-fwuploader": "node ./scripts/download-fwuploader.js", "copy-serial-plotter": "npx ncp ../node_modules/arduino-serial-plotter-webapp ./build/arduino-serial-plotter-webapp", + "copy-i18n": "npx ncp ../i18n ./build/i18n", "download-ls": "node ./scripts/download-ls.js", "download-examples": "node ./scripts/download-examples.js", "generate-protocol": "node ./scripts/generate-protocol.js", diff --git a/arduino-ide-extension/src/browser/contributions/add-zip-library.ts b/arduino-ide-extension/src/browser/contributions/add-zip-library.ts index a03d056f2..9ae4c1a5e 100644 --- a/arduino-ide-extension/src/browser/contributions/add-zip-library.ts +++ b/arduino-ide-extension/src/browser/contributions/add-zip-library.ts @@ -39,10 +39,6 @@ export class AddZipLibrary extends SketchContribution { ...ArduinoMenus.SKETCH__UTILS_GROUP, '0_include', ]; - // TODO: do we need it? calling `registerSubmenu` multiple times is noop, so it does not hurt. - registry.registerSubmenu(includeLibMenuPath, 'Include Library', { - order: '1', - }); registry.registerMenuAction([...includeLibMenuPath, '1_install'], { commandId: AddZipLibrary.Commands.ADD_ZIP_LIBRARY.id, label: nls.localize('arduino/library/addZip', 'Add .ZIP Library...'), diff --git a/arduino-ide-extension/src/node/arduino-ide-backend-module.ts b/arduino-ide-extension/src/node/arduino-ide-backend-module.ts index 5fcfd01ed..223b52b8b 100644 --- a/arduino-ide-extension/src/node/arduino-ide-backend-module.ts +++ b/arduino-ide-extension/src/node/arduino-ide-backend-module.ts @@ -92,6 +92,8 @@ import { ArduinoFirmwareUploaderImpl } from './arduino-firmware-uploader-impl'; import { PlotterBackendContribution } from './plotter/plotter-backend-contribution'; import WebSocketServiceImpl from './web-socket/web-socket-service-impl'; import { WebSocketService } from './web-socket/web-socket-service'; +import { ArduinoLocalizationContribution } from './arduino-localization-contribution'; +import { LocalizationContribution } from '@theia/core/lib/node/i18n/localization-contribution'; export default new ContainerModule((bind, unbind, isBound, rebind) => { bind(BackendApplication).toSelf().inSingletonScope(); @@ -340,4 +342,6 @@ export default new ContainerModule((bind, unbind, isBound, rebind) => { bind(PlotterBackendContribution).toSelf().inSingletonScope(); bind(BackendApplicationContribution).toService(PlotterBackendContribution); + bind(ArduinoLocalizationContribution).toSelf().inSingletonScope(); + bind(LocalizationContribution).toService(ArduinoLocalizationContribution); }); diff --git a/arduino-ide-extension/src/node/arduino-localization-contribution.ts b/arduino-ide-extension/src/node/arduino-localization-contribution.ts new file mode 100644 index 000000000..6e607bb49 --- /dev/null +++ b/arduino-ide-extension/src/node/arduino-localization-contribution.ts @@ -0,0 +1,152 @@ +import { + LocalizationContribution, + LocalizationRegistry, +} from '@theia/core/lib/node/i18n/localization-contribution'; +import { injectable } from 'inversify'; + +@injectable() +export class ArduinoLocalizationContribution + implements LocalizationContribution +{ + async registerLocalizations(registry: LocalizationRegistry): Promise { + registry.registerLocalizationFromRequire( + 'af', + require('../../build/i18n/af.json') + ); + + registry.registerLocalizationFromRequire( + 'en', + require('../../build/i18n/en.json') + ); + + registry.registerLocalizationFromRequire( + 'fr', + require('../../build/i18n/fr.json') + ); + + registry.registerLocalizationFromRequire( + 'ko', + require('../../build/i18n/ko.json') + ); + + registry.registerLocalizationFromRequire( + 'pt', + require('../../build/i18n/pt.json') + ); + + registry.registerLocalizationFromRequire( + 'uk_UA', + require('../../build/i18n/uk_UA.json') + ); + + registry.registerLocalizationFromRequire( + 'ar', + require('../../build/i18n/ar.json') + ); + + registry.registerLocalizationFromRequire( + 'es', + require('../../build/i18n/es.json') + ); + + registry.registerLocalizationFromRequire( + 'he', + require('../../build/i18n/he.json') + ); + + registry.registerLocalizationFromRequire( + 'my_MM', + require('../../build/i18n/my_MM.json') + ); + + registry.registerLocalizationFromRequire( + 'ro', + require('../../build/i18n/ro.json') + ); + + registry.registerLocalizationFromRequire( + 'zh-cn', + require('../../build/i18n/zh.json') + ); + + registry.registerLocalizationFromRequire( + 'bg', + require('../../build/i18n/bg.json') + ); + + registry.registerLocalizationFromRequire( + 'eu', + require('../../build/i18n/eu.json') + ); + + registry.registerLocalizationFromRequire( + 'hu', + require('../../build/i18n/hu.json') + ); + + registry.registerLocalizationFromRequire( + 'ne', + require('../../build/i18n/ne.json') + ); + + registry.registerLocalizationFromRequire( + 'ru', + require('../../build/i18n/ru.json') + ); + + registry.registerLocalizationFromRequire( + 'zh_TW', + require('../../build/i18n/zh_TW.json') + ); + + registry.registerLocalizationFromRequire( + 'de', + require('../../build/i18n/de.json') + ); + + registry.registerLocalizationFromRequire( + 'fa', + require('../../build/i18n/fa.json') + ); + + registry.registerLocalizationFromRequire( + 'it', + require('../../build/i18n/it.json') + ); + + registry.registerLocalizationFromRequire( + 'nl', + require('../../build/i18n/nl.json') + ); + + registry.registerLocalizationFromRequire( + 'sv_SE', + require('../../build/i18n/sv_SE.json') + ); + + registry.registerLocalizationFromRequire( + 'el', + require('../../build/i18n/el.json') + ); + + registry.registerLocalizationFromRequire( + 'fil', + require('../../build/i18n/fil.json') + ); + + registry.registerLocalizationFromRequire( + 'ja', + require('../../build/i18n/ja.json') + ); + + registry.registerLocalizationFromRequire( + 'pl', + require('../../build/i18n/pl.json') + ); + + registry.registerLocalizationFromRequire( + 'tr', + require('../../build/i18n/tr.json') + ); + } +} diff --git a/electron/build/template-package.json b/electron/build/template-package.json index 9b5af5cde..7b8bc4eaa 100644 --- a/electron/build/template-package.json +++ b/electron/build/template-package.json @@ -148,6 +148,12 @@ "vscode-arduino-tools": "https://downloads.arduino.cc/vscode-arduino-tools/vscode-arduino-tools-0.0.2-beta.2.vsix", "vscode-builtin-json": "https://open-vsx.org/api/vscode/json/1.46.1/file/vscode.json-1.46.1.vsix", "vscode-builtin-json-language-features": "https://open-vsx.org/api/vscode/json-language-features/1.46.1/file/vscode.json-language-features-1.46.1.vsix", - "cortex-debug": "https://open-vsx.org/api/marus25/cortex-debug/0.3.10/file/marus25.cortex-debug-0.3.10.vsix" + "cortex-debug": "https://open-vsx.org/api/marus25/cortex-debug/0.3.10/file/marus25.cortex-debug-0.3.10.vsix", + "vscode-language-pack-nl": "https://open-vsx.org/api/MS-CEINTL/vscode-language-pack-nl/1.48.3/file/MS-CEINTL.vscode-language-pack-nl-1.48.3.vsix", + "vscode-language-pack-fr": "https://open-vsx.org/api/MS-CEINTL/vscode-language-pack-fr/1.53.2/file/MS-CEINTL.vscode-language-pack-fr-1.53.2.vsix", + "vscode-language-pack-zh-hans": "https://open-vsx.org/api/MS-CEINTL/vscode-language-pack-zh-hans/1.53.2/file/MS-CEINTL.vscode-language-pack-zh-hans-1.53.2.vsix", + "vscode-language-pack-de": "https://open-vsx.org/api/MS-CEINTL/vscode-language-pack-de/1.53.2/file/MS-CEINTL.vscode-language-pack-de-1.53.2.vsix", + "vscode-language-pack-ja":"https://open-vsx.org/api/MS-CEINTL/vscode-language-pack-ja/1.53.2/file/MS-CEINTL.vscode-language-pack-ja-1.53.2.vsix", + "vscode-language-pack-tr": "https://open-vsx.org/api/MS-CEINTL/vscode-language-pack-tr/1.53.2/file/MS-CEINTL.vscode-language-pack-tr-1.53.2.vsix" } } \ No newline at end of file diff --git a/electron/packager/index.js b/electron/packager/index.js index bda003da7..2f216f45c 100644 --- a/electron/packager/index.js +++ b/electron/packager/index.js @@ -74,6 +74,7 @@ 'yarn.lock', 'package.json', 'lerna.json', + 'i18n' ]) { cp('-rf', path(rootPath, name), path('..', workingCopy)); } diff --git a/package.json b/package.json index 5e9e4fadb..3d98cd7db 100644 --- a/package.json +++ b/package.json @@ -74,6 +74,12 @@ "vscode-arduino-tools": "https://downloads.arduino.cc/vscode-arduino-tools/vscode-arduino-tools-0.0.2-beta.2.vsix", "vscode-builtin-json": "https://open-vsx.org/api/vscode/json/1.46.1/file/vscode.json-1.46.1.vsix", "vscode-builtin-json-language-features": "https://open-vsx.org/api/vscode/json-language-features/1.46.1/file/vscode.json-language-features-1.46.1.vsix", - "cortex-debug": "https://open-vsx.org/api/marus25/cortex-debug/0.3.10/file/marus25.cortex-debug-0.3.10.vsix" + "cortex-debug": "https://open-vsx.org/api/marus25/cortex-debug/0.3.10/file/marus25.cortex-debug-0.3.10.vsix", + "vscode-language-pack-nl": "https://open-vsx.org/api/MS-CEINTL/vscode-language-pack-nl/1.48.3/file/MS-CEINTL.vscode-language-pack-nl-1.48.3.vsix", + "vscode-language-pack-fr": "https://open-vsx.org/api/MS-CEINTL/vscode-language-pack-fr/1.53.2/file/MS-CEINTL.vscode-language-pack-fr-1.53.2.vsix", + "vscode-language-pack-zh-hans": "https://open-vsx.org/api/MS-CEINTL/vscode-language-pack-zh-hans/1.53.2/file/MS-CEINTL.vscode-language-pack-zh-hans-1.53.2.vsix", + "vscode-language-pack-de": "https://open-vsx.org/api/MS-CEINTL/vscode-language-pack-de/1.53.2/file/MS-CEINTL.vscode-language-pack-de-1.53.2.vsix", + "vscode-language-pack-ja":"https://open-vsx.org/api/MS-CEINTL/vscode-language-pack-ja/1.53.2/file/MS-CEINTL.vscode-language-pack-ja-1.53.2.vsix", + "vscode-language-pack-tr": "https://open-vsx.org/api/MS-CEINTL/vscode-language-pack-tr/1.53.2/file/MS-CEINTL.vscode-language-pack-tr-1.53.2.vsix" } } \ No newline at end of file pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy