An offline-installable German (de) language pack for IntelliJ IDEA
2026.2.3, build 262.10968.63 (product code IU, Ultimate). The pack is a
code-free IntelliJ plugin that overlays translated resource bundles and
description files onto the IDE via a languageBundle extension.
The translation corpus and pipeline are reproducible: a dependency-light Python package fingerprints the exact source distribution, inventories every translatable resource in the nested IDE/plugin JARs, stores source and translation state as deterministic JSONL, validates every translation, and packages a byte-deterministic plugin ZIP.
- From the IDE: Settings → Plugins → Marketplace → search German Language Pack → Install (once approved and published).
- From the web: https://plugins.jetbrains.com/plugin/32785-german-language-pack
- Offline / from disk: see Offline installation on Windows below.
The JetBrains "Install" JavaScript widget (
MarketplaceWidget.setupMarketplaceWidget('install', 32785, …)) only runs on a normal web page — GitHub strips<script>from Markdown, so this README uses the badges and link above instead. Use the widget on the project website if there is one.
Any hints, bugreports, suggestions are much appreciated and preferably sent in via github issues.
Vorschläge oder Probleme sind gerne gesehen. Bitte wenn möglich über github Issues, damit sie nicht verloren gehen.
| Component | Value |
|---|---|
| Target IDE | IntelliJ IDEA Ultimate (IU) |
| Target version | 2026.2.3, build 262.10968.63 |
| Declared compatibility | since-build = 262, until-build = 262.* (whole 2026.2 line) |
| Plugin version | 2026.2.3.2 — scheme <ide-version>.<patch>; the 4th segment bumps for translation-only fixes on the same IDE |
| Locale | de (German) |
| Build toolchain | Python 3.12+, standard library only (no third-party deps) |
| Source archive | idea-2026.2.3.win.zip, SHA-256 d113b117…958f51 (git-ignored build input) |
| Plugin Verifier (optional) | JetBrains verifier-cli 1.410, any JDK 17+ (verified with JDK 25) |
The pack is built from exactly build 262.10968.63 but declares compatibility
with the whole 2026.2 line, so it also loads on 2026.2.x patch releases.
Verified Compatible by the JetBrains Plugin Verifier.
- Python 3.12+ (standard library only; no third-party runtime dependencies).
- For a full re-scan / re-translation only: the exact source archive
idea-2026.2.3.win.zipin the repository root. Verify it:Building the ZIP does not need the archive — the committedshasum -a 256 idea-2026.2.3.win.zip # d113b117d72afe512626c478cbf952f6d1a234af5a1cb22cbf6089df55958f51inventory/source-blobs/hold every source byte, so the pack (and CI) builds from repository state alone. - JDK 17+ only if you want to run the optional JetBrains Plugin Verifier.
config/product.json— the exact source binding (version, build, SHA-256).config/scanner.json— supported resource patterns, exclusions, and collision selections.scripts/idea_deu/— the pipeline package (python -m scripts.idea_deu).inventory/— committed scan evidence (resources, exclusions, collisions, source blobs,summary.json).translations/units.jsonl— the resumable translation state (one unit per bundle key / description file).glossary/de.json— terminology and style rules.plugin/META-INF/plugin.xml— the plugin descriptor template.reports/— machine- and human-readable status.generated/,dist/— rebuildable output (git-ignored).
Build the ZIP from repository state (no source archive needed — this is what CI does):
python3 -m scripts.idea_deu generate # write generated/plugin/
python3 -m scripts.idea_deu package # write dist/idea-deu.zip
shasum -a 256 dist/idea-deu.zip # compare to dist/idea-deu.zip.sha256The build is deterministic: repeating generate + package produces a
byte-identical dist/idea-deu.zip (fixed entry order, fixed timestamps).
config/product.json → plugin_version is the single source of truth for
the plugin version. plugin/META-INF/plugin.xml is a template whose
@PLUGIN_VERSION@/@SINCE_BUILD@/@UNTIL_BUILD@ placeholders are filled from
config at build time. A local build takes the version from config only —
there is no git tag involved, so generate/package work the same offline.
To cut a release, bump plugin_version (a translation-only fix bumps the 4th
segment, e.g. 2026.2.3.1 → 2026.2.3.2), commit, then tag v<plugin_version>
and push. CI checks that the tag equals plugin_version, builds, publishes a
GitHub release, and uploads to the Marketplace. See docs/publishing.md.
Requires the source archive in the repository root:
python3 -m scripts.idea_deu validate-source # verify the archive matches config
python3 -m scripts.idea_deu scan # re-inventory + carry over translations
python3 -m scripts.idea_deu validate # revalidate the whole corpuspython3 -m scripts.idea_deu status # counts + the exact next commandThe translation loop is resumable from repository state alone. After an
interruption, status prints the next command. To translate remaining open
units:
python3 -m scripts.idea_deu next-batch --limit 200 # export one bounded batch
# fill the "target" field of each line in the printed batch file, then:
python3 -m scripts.idea_deu import-batch translations/batches/<file>.jsonl
python3 -m scripts.idea_deu statusimport-batch validates every target; clean units become
technically_reviewed, units with a blocking finding stay translated with
the finding recorded, and are re-picked by re-exporting after correction.
- Start an unmodified IntelliJ IDEA 2026.2.3 (262.10968.63).
- Disconnect Marketplace / network access.
- Settings → Plugins → ⚙ → Install Plugin from Disk… and choose
dist/idea-deu.zip. - Settings → Appearance & Behavior → System Settings → Language and Region → set Language to Deutsch.
- Restart the IDE when prompted.
The pack is built from exactly build 262.10968.63 but declares compatibility
with the whole 2026.2 line (since-build = 262, until-build = 262.*), so it
also loads on 2026.2.x patch releases. Untranslated or changed keys fall back to
English. Rebuild against a newer distribution to follow a later release line.
Settings → Plugins → German Language Pack → Uninstall, or set the language back to English and restart. Removing the plugin fully reverts the UI.
The generated plugin is descriptor-verified by the pipeline and has been checked
Compatible by the standalone JetBrains Plugin Verifier against IU-262.10968.63
— see docs/plugin-verification.md. For the full manual acceptance procedure
see docs/acceptance-checklist.md.
Release ZIPs are author-signed with marketplace-zip-signer. The public
signing certificate is committed at signing/chain.crt.
To confirm a downloaded ZIP was signed by us:
# our certificate's SHA-256 fingerprint (must match):
openssl x509 -in signing/chain.crt -noout -fingerprint -sha256
# 4A:31:8A:27:0C:86:34:37:D5:DD:F7:10:13:94:16:39:E7:8B:65:8D:59:91:7B:9B:21:BE:1D:50:7A:61:1A:5A
# verify the signature on the ZIP against that certificate:
java -jar marketplace-zip-signer-cli-<ver>.jar verify -in idea-deu.zip -cert signing/chain.crtSigning certificate: CN=pc-software idea-deu, SHA-256 fingerprint
4A:31:8A:27:0C:86:34:37:D5:DD:F7:10:13:94:16:39:E7:8B:65:8D:59:91:7B:9B:21:BE:1D:50:7A:61:1A:5A
(valid until 2036-07-04). JetBrains Marketplace additionally signs the plugin
server-side when distributing an approved version. See docs/publishing.md.
The build pipeline and original project content are licensed under the
Apache License 2.0 (see LICENSE).
This is an unofficial community German localization; it is not affiliated
with JetBrains. "IntelliJ IDEA" and the English source strings the translations
derive from are the property of JetBrains s.r.o. See NOTICE for details. The
IntelliJ IDEA distribution is a user-supplied build input and is not
redistributed here.