Language Management¶
IntroVox supports completely separate wizard steps per language. You can configure different content for each language, enable or disable specific languages, and add new languages via Transifex translations.
Supported Languages¶
Out of the box, IntroVox includes:
- π¬π§ English (
en) - π³π± Nederlands (
nl) - π©πͺ Deutsch (
de) - π«π· FranΓ§ais (
fr) - π©π° Dansk (
da) - πΈπͺ Svenska (
sv)
Additional languages can be added without code changes β see Adding New Languages and Multi-Language Support.
Enabling and Disabling Languages¶
- Go to Settings β Administration β IntroVox
- In the Available languages section, check or uncheck languages
- The setting saves automatically on each change
Constraints:
- At least one language must be enabled (the last enabled language cannot be disabled)
- Default on first install: only English is enabled
Effect of disabling a language:
- Users with that language as their Nextcloud language setting cannot see the wizard
- In personal settings they see: "The introduction tour is not available in your language."
How Language Detection Works¶
When a user logs in, IntroVox:
- Reads the user's Nextcloud language code via
IL10N::getLanguageCode() - Extracts the base language (
en_USβen) - Scans
l10n/to discover all languages that have a<lang>.jsonfile - Checks whether the base language is in the Available languages allowlist
- Loads
wizard_steps_<lang>from appconfig, falling back to defaults if not configured - Falls back to English if the user's language is not available
See ApiController::getWizardSteps() for the implementation.
Per-Language Step Configuration¶
Each language has its own independent set of wizard steps. To edit steps for a specific language:
- Under Language settings, click the language dropdown
- Choose a language (only enabled languages appear)
- The step list reloads with that language's configuration
- Make your changes
- Click πΎ Save changes to persist
Warning: Switching languages with unsaved changes will discard them β you'll see a confirmation dialog.
Example use cases:
- Region-specific tips: Dutch users get steps mentioning Dutch Nextcloud cloud providers; international users see generic steps.
- Cultural adaptation: Adjust tone, examples, or emoji use per language.
- Translation control: Hand each language's JSON to a translator; reimport when done.
Resetting One Language¶
To reset only one language to defaults:
- Select the language from the dropdown
- Click π Reset to default
- Confirm
Only that language's wizard_steps_<lang> is reset; other languages remain unchanged.
Adding New Languages¶
IntroVox auto-discovers languages from the l10n/ directory β no code changes needed.
- Visit the Nextcloud Transifex project and contribute or download translations for IntroVox
- Drop the resulting
l10n/<lang>.jsonfile into the app directory - The new language appears in the Available languages checkboxes automatically
- Enable it and optionally customize its wizard steps
For the full Transifex flow see Transifex Integration.
Default Step Content per Language¶
When a language has no custom configuration, IntroVox uses built-in default steps wrapped in t('introvox', '<English source>'). As of v1.6.0, these source strings serve as Transifex msgids, so translators see the actual English content rather than opaque keys like step_welcome_title.
The defaults cover:
- Welcome to Nextcloud
- File management
- Calendar
- Search functionality
- Important features
- Useful tips
- Conclusion
See Also¶
- Multi-Language Support β Transifex integration details
- Transifex Integration β l10n workflow
- Managing Wizard Steps β Edit steps per language
- Settings β Available languages reference