Convert Wikipedia wikitext syntax between English and German. Use whenever the user (1) pastes English or German wikitext and wants the syntax converted, (2) asks to convert templates, citations, or formatting between enwiki and dewiki conventions, (3) wants to add or update conversion rules, or (4) needs prose translated while preserving wikitext markup. Also trigger when the user mentions "Wikitext konvertieren", "enwiki to dewiki", "Vorlagen umwandeln", or pastes raw wikitext with English templates like {{cite web}} or German templates like {{Internetquelle}}. This skill handles syntactic conversion only — for creating complete German Wikipedia articles from English sources, use the wiki-artikel skill instead.
Convert Wikipedia wikitext syntax between English and German. This skill handles the mechanical, rule-based part of conversion: templates, citations, formatting, numbers, dates, namespaces. It does not restructure articles or make editorial decisions — that is what the wiki-artikel skill does.
| Situation | Skill |
|---|---|
| "Convert these cite templates to Internetquelle" | Wende |
| "Turn this English article into a dewiki article" | Wiki-Artikel (which uses Wende internally) |
| "Fix the formatting on this German wikitext" | Wende |
| "Add a conversion rule for template X" | Wende |
Wende is a tool. Wiki-Artikel is a workflow that calls on Wende as one of its steps.
Claude applies the rules from references/rules.yaml manually during conversion.
The YAML file is the single source of truth for all mappings. Always consult it —
don't rely on memory for template names or parameter mappings, because the file may
have been updated since the last conversation.
Read references/rules.yaml at the start of every conversion task.
Identify whether the conversion goes en→de or de→en. If the user doesn't specify, infer from the wikitext content (English template names → en→de, German ones → de→en).
Work through the rule categories in this order. The order matters because some transformations depend on others (e.g., citation parameters only make sense after the template name has been converted).
Remove disposable templates — Templates that have no dewiki equivalent
(like {{Short description}}, {{Use mdy dates}}). Remove them entirely,
including their parameters.
Convert template names — Simple 1:1 replacements ({{Steady}} → {{Unverändert}}),
infobox names (Infobox company → Infobox Unternehmen), hatnotes, sister projects.
Convert citation templates — {{cite web}}, {{cite news}} etc. become
{{Internetquelle}}. {{cite book}} becomes {{Literatur}}. Convert all
parameters according to the mappings. Remove parameters listed under remove_params.
Add |sprache=en for English-language sources.
Convert special templates — Templates that need structural changes, not just
renaming: {{abbr}} (extract first param), {{URL}} (convert to external link),
{{Unbulleted list}} (join with <br>), {{hlist}} (join with comma).
Convert section headers — == History == → == Geschichte == etc.
Convert namespaces — [[Category: → [[Kategorie:, [[File: → [[Datei: etc.
Convert image parameters — thumb → mini, right → rechts etc.
Convert magic words — DEFAULTSORT → SORTIERUNG, DISPLAYTITLE → SEITENTITEL.
Convert number formats — Swap decimal separators (. ↔ ,) and thousands
separators (, ↔ .). Handle scale words (billion → Milliarde, trillion →
Billion — these are false friends!).
Convert date formats — MDY → DMY (December 3, 2019 → 3. Dezember 2019),
translate month names. Convert As of → Stand.
Convert wikilinks — Adjust known article title differences. For links where
the German title is uncertain, leave as-is and flag with an inline comment
<!-- TODO: dewiki-Linkziel prüfen -->.
Convert table syntax — Add tabelle-zaehler class where appropriate, adjust
status templates (Active → Aktiv).
Convert typography — Quotation marks ("..." → „..."), dashes
(em dash — → en dash –), non-breaking spaces before units (10 km).
After syntax conversion, translate the readable text if the user wants a full conversion. Keep all wikitext syntax intact — links, templates, ref tags, HTML. Only translate the human-readable prose, captions, and alt text.
Translation guidelines:
{{Zitat|Original|Übersetzung=...}}Before presenting the result, check:
{{ has a matching }}<ref> has a </ref> (or is self-closing <ref ... />)cite web, cite news, Infobox company etc.)Category:, File:)2024-01-15 to 2024,01,15)Flag anything uncertain with <!-- TODO: ... --> comments so the user can review.
Number format swapping is the most error-prone part of conversion. These contexts must be excluded from number format changes:
:// until the next whitespace2024-01-15 in citation date parametersPython 3.12, iOS 17.4url=, abruf=, datum=Only convert numbers that appear in prose text, table cells, or template parameters
where the value is genuinely numeric (like Umsatz, Mitarbeiterzahl).
When encountering a template or pattern not covered by rules.yaml:
rules.yamlRule categories in the YAML:
templates.simple — 1:1 template name replacementstemplates.remove — templates to delete entirelytemplates.infoboxes — infobox name mappingscite_templates — which cite templates map to which German templatecite_params — citation parameter name mappingslink_mappings — known article title differences between wikissection_headers — section heading translationsspecial_templates — templates needing structural transformationFor de→en conversion, apply all rules in reverse: swap keys and values. The same YAML file serves both directions. Pay attention to:
{{Internetquelle}} → {{cite web}} (reverse the parameter mappings too)[[Kategorie: → [[Category: etc.Input: {{cite web |url=https://example.com |title=Test |publisher=BBC |access-date=January 5, 2024}}
Output: {{Internetquelle |url=https://example.com |titel=Test |hrsg=BBC |abruf=2024-01-05 |sprache=en}}
Input: == History ==
The company reported revenue of $1,234.56 million.
Output: == Geschichte ==
Das Unternehmen meldete einen Umsatz von 1.234,56 Millionen US-Dollar.
Input: {{hlist|Rock|Pop|Electronic}}
Output: Rock, Pop, Electronic