Skip to content

[Feature Request] Add Italian (it-IT) UI language support #682

Open

Description

@Ubro92

Currently, GridCraft's user interface is only available in English (or limited languages). As an Italian user, I would love to use the application in my native language to improve accessibility and user experience.

Thank you for this amazing project!

Activity

  1. 10Kelevra commented on Oct 13, 2026

    @10Kelevra

    I would like to commend the work done on these suites; I would also like to ask if it's possible to add the Italian language. Thank you in advance.

  2. aiongg commented on Oct 19, 2026

    @aiongg
    Contributor

    From #1475: also asks for Italian regional formats (DD/MM/YYYY, comma decimal separator, period thousands separator).

  3. marked italian language #1985 as a duplicate of this issue on Oct 20, 2026
  4. iluebbe commented on Oct 23, 2026

    @iluebbe

    #743 checked

    The Italian interface this issue asks for is already on main: #1473 added it (crates/ui-egui/src/i18n/it.rs, 971 strings, Language::It), so the interface half of #743 is not needed any more and now conflicts with it. The Italian formula language in #743 is new and works for the functions it maps, but needs a real rebase.

    Setup: PR head 5de0cdb tested at its head (based on fc45b7f, 1099 commits behind main), main at a1c8454, Windows 11, cargo test -p gridcraft-formula plus a temporary test of more Italian entries. The interface and the ui-egui test tests/formula_locale.rs were not run at this old head.

    Interface: main's it.rs has 982 lines against the PR's 398, and main lists Italian in the language picker already. Nothing in the PR's catalog is needed on top.

    Formula language (FormulaLocale::It, typed into the PR's parser):

    Typed Stored as
    =SOMMA(1,5;2) SUM(1.5,2)
    =SE(A1>0,5;1;0) IF(A1>0.5,1,0)
    =CERCA.VERT(1;A:B;2;FALSO) VLOOKUP(1,A:B,2,FALSE)
    ={1\2;3\4}, =1,5+2,25, ="a;b"&"c" {1,2;3,4}, 1.5+2.25, "a;b"&"c"
    =MAX(1;2), =ROUND(1,25;1) (English names) MAX(1,2), ROUND(1.25,1)
    =ADESSO(), =CONCATENA("a";"b"), =E(VERO;FALSO), =O(…), =NON(VERO), =ARROTONDA(1,25;1) kept as typed, so #NAME?

    Shown back in Italian: SUM(1.5,2) → SOMMA(1,5;2), IF(A1>0.5,1,0) → SE(A1>0,5;1;0), AND(TRUE,FALSE) → AND(VERO;FALSO), NOW() → NOW(). Spanish input is unchanged (SI(VERDADERO;1;0) → IF(TRUE,1,0)).

    Problems:

    • The PR description lists ADESSO, CONCATENA, NON, O and E among the Italian names, but the table maps only eight functions (SOMMA, MEDIA, SE, CONTA.NUMERI, SOMMA.SE, CONTA.SE, CERCA.VERT, OGGI) plus VERO and FALSO (input.rs#L28-L39). Every other Italian name is #NAME?, so Italian users have to type English names for the rest, with Italian separators.
    • cargo fmt --all -- --check fails at the head in crates/formula/src/input.rs, crates/formula/tests/italian_input.rs and crates/ui-egui/tests/formula_locale.rs.

    Merging: conflicts with main at a1c8454 in crates/formula/src/input.rs and crates/formula/src/parser.rs (main changed normalize to walk operator chains in a loop and gave the parser an allow_union argument), crates/ui-egui/src/i18n.rs and crates/ui-egui/src/i18n/it.rs (main's Italian interface, added on both sides), crates/ui-egui/src/formula_locale.rs and crates/ui-egui/tests/formula_locale.rs. A rebase would keep only the formula part. Other open PRs also add Italian formulas: #714, #1805 and #1894.

    Tests (at the PR head): cargo test -p gridcraft-formula: 19 unit tests, italian_input.rs 4, spanish_input.rs 5, all passing; cargo clippy -p gridcraft-formula --all-targets -- -D warnings clean; fmt fails as above. ui-egui was not built at this head.

  5. HyakoV3 commented on Oct 30, 2026

    @HyakoV3
    Contributor

    Italian is now a built-in UI language (PR #1473, commit 4276862, shipped in v0.11.1). You can pick it in the language settings. This issue can be closed. Italian regional number and date formats, mentioned in a comment, can be tracked separately if still needed.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions