{ "Mattermost": { "target": "Mattermost" }, "Enterprise Edition": { "target": "Enterprise Edition", "note": "Product name; existing strings occasionally show 'Enterprise editie' but keep the English edition name." }, "Team Edition": { "target": "Team Edition" }, "Mattermost Cloud": { "target": "Mattermost Cloud" }, "Channels": { "target": "Channels", "note": "Product name, stays English; the common noun 'channel' is 'kanaal'." }, "Playbooks": { "target": "Playbooks" }, "Boards": { "target": "Boards" }, "Calls": { "target": "Calls" }, "Markdown": { "target": "Markdown" }, "OAuth": { "target": "OAuth" }, "SAML": { "target": "SAML" }, "LDAP": { "target": "LDAP", "note": "Also AD/LDAP; never translate (product/protocol name)." }, "SSO": { "target": "SSO", "note": "Render the spelled-out form as 'Single Sign-On (SSO)'; never 'vereenvoudigde authenticatie'." }, "MFA": { "target": "MFA" }, "OpenID Connect": { "target": "OpenID Connect" }, "Entra ID": { "target": "Entra ID" }, "GitLab": { "target": "GitLab" }, "Elasticsearch": { "target": "Elasticsearch" }, "Gossip": { "target": "Gossip", "note": "Protocol name; never 'Praatjes'." }, "Actiance XML": { "target": "Actiance XML" }, "Global Relay": { "target": "Global Relay" }, "System Console": { "target": "systeemconsole", "note": "Existing strings split 28 vs 18 with 'Systeem console'. Capitalize 'Systeemconsole' when used as a menu or UI-area name." }, "marketplace": { "target": "marktplaats", "note": "'Plugin Marketplace' = 'Plugin marktplaats'." }, "channel": { "target": "kanaal", "note": "Plural: kanalen." }, "team": { "target": "team", "note": "Plural: teams." }, "post": { "target": "bericht", "note": "'post' is an anglicism. Use 'publiceren' only for system/integration posts, 'versturen' for user messages." }, "message": { "target": "bericht", "note": "Plural: berichten." }, "thread": { "target": "draadje", "note": "Consistently 'draadje' (89 of 92 occurrences); plural 'draadjes'. Do not use 'discussie' or keep English." }, "reply": { "target": "antwoord", "note": "Noun 'antwoord'; verb 'antwoorden'. You 'verzendt' (send) a reply." }, "direct message": { "target": "privé-bericht", "note": "Existing usage is split between 'privé-bericht' (majority) and 'direct bericht'/'rechtstreeks bericht'. Derived form: 'privé-berichtkanaal'." }, "group message": { "target": "groepsbericht", "note": "Plural: groepsberichten." }, "mention": { "target": "vermelding", "note": "Noun 'vermelding' (plural 'vermeldingen'); verb 'vermelden'." }, "notification": { "target": "melding", "note": "Put 'melding' last in compounds: e-mailmelding, pushmelding, bureaubladmelding. Avoid 'notificatie' (legacy inconsistency)." }, "pin": { "target": "vastmaken", "note": "Majority 'vastgemaakt(e)' (14 vs 5 for 'vastgezet'); 'pinned messages' = 'vastgemaakte berichten', 'unpin' = 'losmaken'." }, "bookmark": { "target": "bladwijzer", "note": "Noun; verb phrase 'een bladwijzer toevoegen'. 'Channel bookmark' = 'kanaalbladwijzer'." }, "saved messages": { "target": "bewaarde berichten", "note": "Verb 'save' in this feature = 'bewaren' (exception to the general 'Opslaan' preference, matches existing UI)." }, "draft": { "target": "concept", "note": "Majority rendering (19 vs 2 for 'ontwerp'); plural 'concepten'." }, "scheduled post": { "target": "gepland bericht", "note": "Tab label 'Scheduled' = 'Gepland'; plural 'geplande berichten'." }, "emoji": { "target": "emoticon", "note": "Majority usage (63 vs 33); 'emoji' also occurs. Plural 'emoticons'." }, "custom emoji": { "target": "aangepaste emoticon" }, "reaction": { "target": "reactie", "note": "Plural 'reacties'; verb 'reageren'. Distinct from a reply ('antwoord')." }, "status": { "target": "status" }, "custom status": { "target": "aangepaste status" }, "do not disturb": { "target": "niet storen", "note": "Capitalized 'Niet storen' as a menu item; keep 'DND' abbreviation only in technical contexts." }, "away": { "target": "afwezig" }, "online": { "target": "online" }, "offline": { "target": "offline" }, "out of office": { "target": "out of office", "note": "Existing UI keeps the English phrase ('Out of office' in webapp/mobile status menus); keep for consistency. 'Afwezig van kantoor' would be the translated alternative." }, "guest": { "target": "gast", "note": "Both 'gast' and 'gastgebruiker' are in use; 'gastgebruiker' appears in admin screens. Use 'gast' in short UI labels and 'gastgebruiker' when disambiguation from a visitor is needed." }, "member": { "target": "lid", "note": "Plural 'leden'; 'channel member' = 'kanaallid', 'team member' = 'teamlid'." }, "user": { "target": "gebruiker", "note": "Plural 'gebruikers'." }, "system admin": { "target": "systeembeheerder", "note": "Plural 'systeembeheerders'." }, "team admin": { "target": "teambeheerder" }, "channel admin": { "target": "kanaalbeheerder" }, "session": { "target": "sessie", "note": "Plural 'sessies'." }, "sign in": { "target": "aanmelden", "note": "Use for both 'sign in' and 'log in' (majority; 'inloggen' occurs occasionally). Imperative button: 'Aanmelden'." }, "sign out": { "target": "afmelden", "note": "Use for both 'sign out' and 'log out' ('Log Out' = 'Afmelden')." }, "join": { "target": "lid worden", "note": "For channels/teams: 'lid worden (van)'. For calls use 'deelnemen (aan)'." }, "leave": { "target": "verlaten" }, "archive": { "target": "archiveren", "note": "Past participle 'gearchiveerd'." }, "unarchive": { "target": "dearchiveren", "note": "Existing UI buttons use 'Dearchiveren'; the system message uses 'haalde het kanaal terug uit het archief' — both acceptable, prefer 'dearchiveren' in labels." }, "mute": { "target": "dempen", "note": "For channel notifications; 'unmute' = 'niet langer dempen' (webapp) / 'dempen uitschakelen' (calls)." }, "follow": { "target": "volgen", "note": "'Following' state label = 'Volgend'." }, "unfollow": { "target": "niet langer volgen" }, "favorite": { "target": "favoriet", "note": "Noun/adjective 'favoriet' (plural 'Favorieten' for the sidebar category); verb 'markeren als favoriet', 'unfavorite' = 'verwijderen uit favorieten'." }, "search": { "target": "zoeken", "note": "Verb/label 'zoeken'; noun (a search) 'zoekopdracht'." }, "integration": { "target": "integratie", "note": "Plural 'integraties'." }, "slash command": { "target": "slash-opdracht", "note": "Existing usage is inconsistent: slashopdracht, slash-opdracht (majority, 15 vs 9), slash-commando." }, "webhook": { "target": "webhook", "note": "Kept in English; plural 'webhooks'." }, "incoming webhook": { "target": "inkomende webhook" }, "outgoing webhook": { "target": "uitgaande webhook" }, "trigger word": { "target": "triggerwoord", "note": "Existing usage is inconsistent: 'activeer-woord', 'trigger woord'." }, "plugin": { "target": "plugin", "note": "Kept in English (majority usage); plural 'plugins'." }, "bot": { "target": "bot", "note": "Keep 'bot'/'BOT'; 'bot account' = 'botaccount'." }, "role": { "target": "rol", "note": "Plural 'rollen'." }, "permission": { "target": "recht", "note": "Plural 'rechten'. Avoid 'machtigingen'/'permissies'/'toestemmingen', which appear inconsistently in older strings." }, "scheme": { "target": "schema", "note": "Permission scheme = '(toestemmings)schema'; existing strings mostly use plain 'schema'. For URL scheme use 'URL-protocol'." }, "license": { "target": "licentie" }, "seat": { "target": "gebruiker", "note": "Billing strings translate 'seats' as 'gebruikers' (e.g. '{num} seats' = '{num} gebruikers'); use 'gebruikerslicentie' only if disambiguation is required." }, "trial": { "target": "proefperiode", "note": "'Free trial' = 'gratis proefperiode'. Avoid 'probeerversie'/'proefversie' which appear sporadically." }, "workspace": { "target": "werkruimte", "note": "Majority rendering (78 vs 8 English); plural 'werkruimten'." }, "subscription": { "target": "abonnement" }, "deactivate": { "target": "deactiveren", "note": "Past participle 'gedeactiveerd'." }, "invite": { "target": "uitnodigen", "note": "Verb 'uitnodigen'; noun 'uitnodiging'." }, "invitation": { "target": "uitnodiging", "note": "Plural 'uitnodigingen'; e-mail invitations = 'e-mailuitnodigingen' (note the 'e-mail' spelling)." }, "sidebar": { "target": "zijbalk" }, "unread": { "target": "ongelezen" }, "attachment": { "target": "bijlage", "note": "Plural 'bijlagen'; verb 'attach' for files = 'toevoegen'/'bijvoegen', 'koppelen' otherwise." }, "public channel": { "target": "publiek kanaal", "note": "Usage is split between 'publiek kanaal' (majority, 12) and 'openbaar kanaal' (9); standardize on 'publiek kanaal'." }, "private channel": { "target": "privé-kanaal", "note": "Majority spelling (37 vs 15 for 'privékanaal'); keep the hyphenated form for consistency." }, "shared channel": { "target": "gedeeld kanaal", "note": "Plural 'gedeelde kanalen'." }, "channel header": { "target": "kanaalkoptekst", "note": "Existing usage is inconsistent (kanaalkoptekst, hoofding, koptekst, kop); server strings mostly use 'kanaalkoptekst' — standardize on that; avoid the Flemish 'hoofding'." }, "channel purpose": { "target": "kanaaldoel", "note": "Existing strings consistently use 'doel'/'kanaaldoel'; 'beschrijving' is an alternative in this context." }, "system message": { "target": "systeembericht" }, "persistent notification": { "target": "blijvende melding", "note": "Plural 'blijvende meldingen'." }, "message priority": { "target": "berichtprioriteit", "note": "Also rendered 'prioriteit van het bericht' in picker headers; use 'berichtprioriteit' as compound term." }, "urgent": { "target": "dringend", "note": "'urgente meldingen' also occurs in some strings." }, "recap": { "target": "samenvatting", "note": "Existing recap feature strings use 'samenvatting'; disambiguate as 'AI-samenvatting' only if plain 'samenvatting' is ambiguous in context." }, "agent": { "target": "agent", "note": "AI feature; 'AI agent' = 'AI-agent', plural 'AI-agenten'. Keep product name 'Agents' in English where used as a product." }, "burn-on-read": { "target": "verbrand-na-lezen", "note": "Webapp UI uses 'verbrand-na-lezen berichten'; some server strings keep English 'burn-on-read' — prefer the Dutch form in user-facing text." }, "magic link": { "target": "magische link", "note": "Majority rendering; 'Magic Link' kept in English in a few strings — prefer 'magische link'." }, "personal access token": { "target": "persoonlijk toegangstoken", "note": "'Token' stays untranslated; avoid 'toegangsbewijs', which is not used in product strings." }, "announcement banner": { "target": "aankondigingsbanner" }, "channel banner": { "target": "kanaalbanner" }, "keyword": { "target": "trefwoord", "note": "Plural 'trefwoorden'." }, "user group": { "target": "gebruikersgroep", "note": "Plural 'gebruikersgroepen'; plain 'group' = 'groep'." }, "permalink": { "target": "permalink" }, "profile": { "target": "profiel", "note": "'Profile picture' = 'profielafbeelding' or 'profielfoto'." }, "username": { "target": "gebruikersnaam" }, "nickname": { "target": "roepnaam", "note": "Existing UI uses 'roepnaam'; keep 'Nickname' in AD/LDAP-attribute admin contexts where the technical attribute name is meant." }, "display name": { "target": "weergavenaam" }, "collapsed reply threads": { "target": "ingeklapte draadjes", "note": "Majority mobile rendering; 'ingeklapte antwoorddraadjes' also occurs — prefer the shorter form." }, "auto-translation": { "target": "automatische vertaling", "note": "Consistent existing rendering; 'AUTO-TRANSLATED' label = 'AUTOMATISCH VERTAALD'." }, "data retention": { "target": "gegevensbewaring", "note": "'Data retention policy' = 'gegevensbewaarbeleid' (majority); avoid 'dataretentie' which appears sporadically." }, "compliance export": { "target": "nalevingsexport", "note": "'compliance export' is also kept in English in some strings. 'Beta' contexts render as 'Experimenteel'." }, "access control": { "target": "toegangscontrole", "note": "'Attribute-based access control (ABAC)' = 'attribuutgebaseerde toegangscontrole (ABAC)'." }, "attribute": { "target": "attribuut", "note": "Plural 'attributen'; 'kenmerk' also occurs in ABAC strings — prefer 'attribuut' for the profile/access-control field." }, "onboarding": { "target": "verwelkoming" }, "Town Square": { "target": "Dorpsplein" }, "Off-Topic": { "target": "Off-Topic", "note": "Existing server translation keeps the English channel name." }, "read-only": { "target": "alleen-lezen", "note": "Predicative use: 'alleen lezen' ('Kanaal is alleen lezen')." }, "server": { "target": "server", "note": "Plural 'servers'." } }