Skip to content

Add localization support and major language resources#219

Merged
0xCUB3 merged 9 commits into
mainfrom
localization-major-languages
Feb 14, 2026
Merged

Add localization support and major language resources#219
0xCUB3 merged 9 commits into
mainfrom
localization-major-languages

Conversation

@0xCUB3
Copy link
Copy Markdown
Owner

@0xCUB3 0xCUB3 commented Feb 13, 2026

No description provided.

@0xCUB3 0xCUB3 linked an issue Feb 13, 2026 that may be closed by this pull request
@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @0xCUB3, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly enhances the application's internationalization capabilities by integrating a robust localization system. It enables the application to support multiple languages for its user interface and content, making it accessible to a broader global audience. The changes include both the infrastructure for automated translation and the necessary UI adaptations to display localized strings effectively.

Highlights

  • Automated Localization Script: A new Python script (scripts/generate_locale_strings.py) was added to automate the generation of Localizable.strings files for various languages using Google Translator, including logic to protect placeholders and specific terms during translation.
  • Extensive Language Support Added: The pull request introduces localization resources for multiple languages including Arabic, German, Spanish, French, Italian, Japanese, Korean, Polish, Brazilian Portuguese, Romanian, Russian, Simplified Chinese, and Traditional Chinese, for both the main application and its iOS script extensions.
  • UI Text Localization: Existing Swift UI components across the application have been updated to utilize LocalizedStringKey and NSLocalizedString for all user-facing text, ensuring that the application's interface can adapt to different locales.
  • Localization Helper Extensions: New Swift extensions were added for FilterListCategory, LogLevel, and LogCategory to provide localized display names, streamlining the process of presenting category and level information in the user's preferred language.
Changelog
  • scripts/generate_locale_strings.py
    • Added a new Python script to automate the generation of Localizable.strings files for different languages using Google Translator, including placeholder and protected term handling.
  • wBlock Advanced/PopoverView.swift
    • Updated text elements to use LocalizedStringKey and String(localized:) for localization, specifically for status indicators like "Disabled" and "Active", and blocked item counts.
  • wBlock Advanced/ar.lproj/Localizable.strings
    • Added Arabic localization strings for various UI elements.
  • wBlock Advanced/de.lproj/Localizable.strings
    • Added German localization strings for various UI elements.
  • wBlock Advanced/en.lproj/Localizable.strings
    • Added English localization strings for various UI elements.
  • wBlock Advanced/es.lproj/Localizable.strings
    • Added Spanish localization strings for various UI elements.
  • wBlock Advanced/fr.lproj/Localizable.strings
    • Added French localization strings for various UI elements.
  • wBlock Advanced/it.lproj/Localizable.strings
    • Added Italian localization strings for various UI elements.
  • wBlock Advanced/ja.lproj/Localizable.strings
    • Added Japanese localization strings for various UI elements.
  • wBlock Advanced/ko.lproj/Localizable.strings
    • Added Korean localization strings for various UI elements.
  • wBlock Advanced/pl.lproj/Localizable.strings
    • Added Polish localization strings for various UI elements.
  • wBlock Advanced/pt-BR.lproj/Localizable.strings
    • Added Brazilian Portuguese localization strings for various UI elements.
  • wBlock Advanced/ro.lproj/Localizable.strings
    • Added Romanian localization strings for various UI elements.
  • wBlock Advanced/ru.lproj/Localizable.strings
    • Added Russian localization strings for various UI elements.
  • wBlock Advanced/zh-Hans.lproj/Localizable.strings
    • Added Simplified Chinese localization strings for various UI elements.
  • wBlock Advanced/zh-Hant.lproj/Localizable.strings
    • Added Traditional Chinese localization strings for various UI elements.
  • wBlock Scripts (iOS)/Resources/_locales/ar/messages.json
    • Added Arabic localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/de/messages.json
    • Added German localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/en/messages.json
    • Formatted English localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/es/messages.json
    • Added Spanish localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/fr/messages.json
    • Added French localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/it/messages.json
    • Added Italian localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/ja/messages.json
    • Added Japanese localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/ko/messages.json
    • Added Korean localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/pl/messages.json
    • Added Polish localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/pt_BR/messages.json
    • Added Brazilian Portuguese localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/ro/messages.json
    • Added Romanian localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/ru/messages.json
    • Added Russian localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/zh_CN/messages.json
    • Added Simplified Chinese localization for iOS script extension messages.
  • wBlock Scripts (iOS)/Resources/_locales/zh_TW/messages.json
    • Added Traditional Chinese localization for iOS script extension messages.
  • wBlock/ApplyChangesProgressView.swift
    • Updated progress view text to use localized strings for update and script counts, and status messages.
  • wBlock/ApplyChangesViewModel.swift
    • Modified phase titles and success message to use localized strings.
  • wBlock/ContentView.swift
    • Updated UI text elements to use localized strings for filter categories, notification titles/bodies, and add filter list button labels.
  • wBlock/LocalizationHelpers.swift
    • Added a new file containing extensions for FilterListCategory, LogLevel, and LogCategory to provide localized names.
  • wBlock/LogsView.swift
    • Updated log level and category display names to use localized strings.
  • wBlock/OnboardingView.swift
    • Modified onboarding view to use localized strings for country descriptions, blocking levels, regional filters, userscripts summaries, and regional recommendation hints.
  • wBlock/SettingsView.swift
    • Updated settings view to use localized strings for schedule lines, auto-update interval descriptions, and last update status.
  • wBlock/SheetDesignSystem.swift
    • Modified sheet header titles and empty state view texts to use localized strings.
  • wBlock/StatCard.swift
    • Updated stat card titles to use localized strings.
  • wBlock/UpdatePopupView.swift
    • Modified update popup view to use localized strings for filter categories.
  • wBlock/UserScriptManagerView.swift
    • Updated user script manager view to use localized strings for badges, add script buttons, add modes, and validation messages.
Activity
  • The pull request was created by 0xCUB3.
  • The pull request title indicates the addition of localization support and major language resources.
  • The pull request body is empty, so all information is derived from the code changes.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces comprehensive localization support across the application, including a new Python script for generating translation files and updates to the Swift UI to use localized strings. The changes are extensive and well-executed. My feedback focuses on improving the portability of the new script, enhancing the pluralization handling in Swift for better localization quality, and a few minor refinements to the Python code.

Comment thread scripts/generate_locale_strings.py
Comment thread scripts/generate_locale_strings.py
Comment thread scripts/generate_locale_strings.py Outdated
Comment thread scripts/generate_locale_strings.py Outdated
Comment thread scripts/generate_locale_strings.py Outdated
Comment thread wBlock/ApplyChangesProgressView.swift Outdated
Comment thread wBlock/SettingsView.swift
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: b3b9247f30

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread wBlock/ja.lproj/Localizable.strings Outdated
Copy link
Copy Markdown
Contributor

@daywalk3r666 daywalk3r666 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I found two mispelling words

Comment thread wBlock Advanced/de.lproj/Localizable.strings Outdated
Comment thread wBlock Advanced/de.lproj/Localizable.strings Outdated
@daywalk3r666
Copy link
Copy Markdown
Contributor

For the first look. German translate is good to go

@0xCUB3 0xCUB3 merged commit 7498e38 into main Feb 14, 2026
1 check passed
@0xCUB3 0xCUB3 deleted the localization-major-languages branch February 14, 2026 11:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature Request] Translate

2 participants