Skip to content

Conversation

@timothyqiu
Copy link
Member

Currently, interface/editor/editor_language defaults to the system language. This creates the problem that it's technically impossible to pin a language, as the setting is not saved when being same as the default value.

You can use the following steps to reproduce the problem.

Warning

Don't use Project Manager's quick settings dialog when testing the problem. It somehow saves all properties it sees on EditorSettings, including those that are not meant to be saved :(

  1. Run Godot with LANG=es for the first time
    • It displays in Spanish, which is expected
    • Now I want to always run the editor in French, I set the editor setting to fr
      • interface/editor/editor_language = "fr" setting is saved.
  2. Run Godot with LANG=es again
    • It displays French, which is expected
  3. Run Godot with LANG=fr
    • It displays French, which is expected
  4. Run Godot with LANG=es again
    • It displays in Spanish, unexpected
      • interface/editor/editor_language = "fr" setting is removed in the third run

This PR adds a dedicated Auto option as the default value.

Tool scripts can use EditorInterface.get_editor_language() to get the effective language instead of reading interface/editor/editor_language.

@timothyqiu timothyqiu requested review from a team as code owners November 2, 2025 13:18
@bruvzg bruvzg self-requested a review November 2, 2025 14:06
@bruvzg bruvzg added this to the 4.6 milestone Nov 2, 2025
Copy link
Member

@bruvzg bruvzg left a comment

Choose a reason for hiding this comment

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

Code looks good, having a dedicated "auto" make sense for me.

Copy link
Member

@Mickeon Mickeon left a comment

Choose a reason for hiding this comment

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

There's one ramification: this needs to be documented in the migration guide. It technically breaks compatibility because interface/editor/editor_language is no longer reliable.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants