Skip to content

Translation: Create hungarian language file#33

Merged
Firstp1ck merged 28 commits intoFirstp1ck:mainfrom
summoner001:main
Nov 16, 2025
Merged

Translation: Create hungarian language file#33
Firstp1ck merged 28 commits intoFirstp1ck:mainfrom
summoner001:main

Conversation

@summoner001
Copy link
Collaborator

@summoner001 summoner001 commented Nov 15, 2025

Create hungarian language file (hu-HU.yml) from en-US.yml Translate strings to hungarian.

I'm not a coder/programmer, only translator, I don't know if I need to do anything else to make the localization work. Sorry.

If you don't understand hungarian language use DeepL or an AI for translation like Copilot/Gemini/ChatGPT

  1. Try to teach the hungarian translation rules for your AI: I used the hungarian openscope translation rules for apps/softwares: https://fsfhu.gitlab.io/forditas-hogyan/
  2. Try to add the openscope dictionary for your AI: I used the hungarian openscope dictionary for apps/softwares: https://bkil.gitlab.io/openscope-dict-eng-hun/
  3. I used the hunspell spellchecking library for the translation

My other references for translation:

  1. Weblate: https://hosted.weblate.org/user/summoner001/
  2. Github: https://github.com/summoner001?tab=repositories
  • Official Archinstall script
  • Mindustry
  • -Paru
  • Yay
  • and more
  1. Transifex: https://app.transifex.com/user/profile/summoner001/
  • Hungarian language of the Shattered Pixel Dungeon team
  • Hungarian language of the Arch Linux Pacman package manager team
  • Hungarian language of the Arch User Repository (AUR) team
  • Hungarian language of the aurweb team
  • Hungarian language of the Octopi team

Create hungarian language file (hu-HU.yml) from en-US.yml
Translate strings to hungarian.

I'm not a coder/programmer, only translator, I don't know if I need to do anything else to make the localization work. Sorry.

If you don't understand hungarian language use DeepL or an AI for translation like Copilot/Gemini/ChatGPT
Try to teach the hungarian translation rules for your AI:
I used the hungarian openscope translation rules for apps/softwares: https://fsfhu.gitlab.io/forditas-hogyan/
Try to add the openscope dictionary for your AI:
I used the hungarian openscope dictionary for apps/softwares: https://bkil.gitlab.io/openscope-dict-eng-hun/

My other references for translation:
- Weblate: https://hosted.weblate.org/user/summoner001/
- Github: https://github.com/summoner001?tab=repositories
     -Official Archinstall script
     -Mindustry
     -Paru
     -Yay
     -and more
- Transifex: https://app.transifex.com/user/profile/summoner001/
 As a Translator
     -Hungarian language of the Shattered Pixel Dungeon team
     -Hungarian language of the Arch Linux Pacman package manager team
     -Hungarian language of the Arch User Repository (AUR) team
     -Hungarian language of the aurweb team
     -Hungarian language of the Octopi team
@Firstp1ck
Copy link
Owner

Firstp1ck commented Nov 15, 2025

I wanted to ask, what's a good way for you to be informed about additional language key additions?

As you have experience in this, I wanted to know your opinion.

@summoner001
Copy link
Collaborator Author

I wanted to ask, what's a good way for you to be informed about additional language key additions?

As you have experience in this, I wanted to know your opinion.

I already watching/following the en-US.yml file changes: https://github.com/Firstp1ck/Pacsea/commits/main/config/locales/en-US.yml.atom
If hungarian is completely merged, I set an rss/atom feed for file history. And I could following if dev or another translator make the changes :)

@summoner001
Copy link
Collaborator Author

IMG_20251115_120332

This is the Feeder app for android. Your commit is the second one. Works for me :)

@summoner001
Copy link
Collaborator Author

After the changes I maintain my translation between 5 minute - 7 days

@Firstp1ck
Copy link
Owner

Thank you for the explanations and the detailed PR message.

I will start today to look into the tools and start the review.

summoner001 and others added 24 commits November 15, 2025 12:38
…esponding hardcoded stings in the codebase.

- Added missing hu-HU Keys. Values need to be adjusted - English placeholders.
- Introduced functionality to handle Artix Linux repositories, including checks for repository names and UI filters.
- Updated the application state to manage visibility of Artix packages.
- Enhanced UI components to display Artix filter options and results.
- Added tests to validate Artix repository heuristics and integration with existing features.
- Updated German and English locale files to include Artix in the package filter options.
- Adjusted filter descriptions to reflect the addition of Artix alongside other distributions.
- Introduced new filters for Artix repositories: omniverse, universe, lib32, galaxy, world, and system.
- Updated localization files for German and English to include new Artix filter labels.
- Enhanced application state management to support visibility toggles for new Artix filters.
- Modified UI components to display and handle interactions for the new Artix filters.
- Updated tests to validate the integration of Artix filters in the application.
- Changed Artix filter labels in German and English locale files from uppercase to lowercase for consistency.
- Updated UI components and tests to reflect the new lowercase labels for Artix filters: omniverse, universe, lib32, galaxy, world, and system.
…ents

- Changed Artix filter labels in German and English locale files to uppercase: OMNI, UNI, LIB32, GALAX, WORLD, and SYSTEM.
- Updated UI components and tests to reflect the new uppercase labels for Artix filters.
…iles and UI components

- Updated the German and English locale files to reflect the correct label for Artix Galaxy.
- Adjusted UI components and tests to ensure consistency with the updated label.
- Updated the mirror update command to include Artix-specific handling for mirror updates.
- Added checks for the installation of `rate-mirrors` and AUR helpers (yay/paru), with prompts for installation if not found.
- Implemented country validation for Artix, ensuring only one country is allowed for mirror updates.
- Created a backup of the existing mirrorlist before executing updates.
- Added tests to verify Artix detection, installation checks, and command execution for both Worldwide and regional updates.
…available space

- Removed hardcoded checks for Artix filters and implemented dynamic visibility based on available space in the UI.
- Updated logic to calculate consumed space and determine whether to display Artix-specific filters.
- Enhanced the rendering of Artix filters to ensure they only appear when there is sufficient space, improving UI responsiveness.
- Adjusted related UI components to reflect these changes and maintain consistency in filter display.
- Added functionality to manage the visibility of the Artix filter dropdown based on the state of specific repo filters.
- Updated mouse and keyboard event handlers to toggle the Artix filter menu and handle interactions within the dropdown.
- Enhanced the rendering logic to display the Artix filter dropdown only when necessary, improving user experience.
- Adjusted application state to track the visibility and dimensions of the Artix filter menu.
…wn rendering

- Implemented a toggle for all Artix filters in the mouse event handler, allowing users to enable or disable all filters simultaneously.
- Updated the dropdown rendering logic to reflect the combined state of individual Artix filters, improving user feedback on filter status.
- Ensured that changes to filter states trigger the appropriate sorting and filtering logic, maintaining application responsiveness.
…handling

- Included 'rate-mirrors' as an optional dependency in both PKGBUILD-bin and PKGBUILD-git.
- Updated global and mouse event handling to recognize Artix and utilize 'rate-mirrors' for mirror management, enhancing functionality for Artix users.
- Added handling for the 'rate-mirrors' package in the modal key event, allowing for a custom installation command that includes a user-friendly completion message.
- Made the `aur_install_body` function public to facilitate broader access within the codebase.
- Updated the installation key event to skip preflight checks when SystemUpdate or OptionalDeps modals are active, ensuring smoother user experience during installations.
- Introduced a new condition to determine when to bypass preflight based on the current modal state.
- Added return statements in the modal key event handler to manage event propagation more effectively.
- Ensured that the Alert modal can handle further events when no actions are selected, and prevented preflight checks from being triggered during specific modal states.
- Updated test assertions to separate the Artix argument for improved clarity in command validation.
- Reformatted the installation command for 'rate-mirrors' in the modal key event to enhance readability and maintainability.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…tter UX

Co-authored-by: Firstp1ck <159012644+Firstp1ck@users.noreply.github.com>
- Updated README.md to include a table listing supported distributions and languages for Pacsea, enhancing clarity for users regarding compatibility.
- Formating fixes
- Added missing Keys to code
@Firstp1ck Firstp1ck self-assigned this Nov 15, 2025
@Firstp1ck
Copy link
Owner

I used gpt-5.1 with the dictionary you provided and here are the results. Please read them critically. I cant say much about them. I read them and it looks reasonable to me, but I cannot confirm.

Provided by ChatGPT-5.1:

The Hungarian file is generally accurate and consistent, but there are a few clearly missing translations, some slightly misleading technical terms, and several strings left in English that should be localized.12

Below is a structured review plus concrete recommended fixes you can apply to hu-HU.yml.321

Overall assessment

  • The structure of the Hungarian catalog mirrors the English one closely (same sections such as headings, actions, details, modals, preflight, etc.), which is good for maintainability.21
  • Most UI strings are understandable and idiomatic for a Hungarian user, especially core flows like search, install, remove, preflight, and system update.2
  • The main issues are: some categories left untranslated, a few key technical fields where the wording is misleading, and a tail section in key_labels/normal_mode still in English with a # TODO comment.32

Missing or English-only strings

  • Towards the end of hu-HU.yml there is a block with # TODO: add translations for the missing key_labels, where several labels are still English-only.2

  • These should be localized before shipping; below are suggested Hungarian equivalents you can drop in:

  • confirm: " Confirm" → Megerősítés (keep the leading space if it is intentional for layout).32

  • remove: " Remove" → Eltávolítás.32

  • clear: " Clear" → Törlés (matches how you already use Törlés for the clear action elsewhere).32

  • toggle_normal: " Toggle normal" → Normál mód váltása (literally “toggle normal mode”).23

  • insert_mode: " Insert Mode" → Beszúrás mód (consistent with existing Beszúrás mód in actions.insert_mode).2

  • select_left: " Select left" → Bal kijelölése (or Bal oldal kijelölése if you prefer more explicit).2

  • select_right: " Select right" → Jobb kijelölése.2

  • open_arch_status: " Open Arch status" → Arch állapot megnyitása (you already use this wording elsewhere).2

  • config_lists_menu: " Config/Lists menu" → Konfigurációk/Listák menü.2

  • options_menu: " Options menu" → Beállítások menü.2

  • panels_menu: " Panels menu" → Panelek menü.2

For the nested normal_mode block:

  • label: "Normal Mode:" → Normál mód: (you already use Normál mód in other places, so this keeps consistency).12
  • insert_mode: " Insert Mode, " → Beszúrás mód, (comma and spacing can stay as in English for formatting).12
  • move: " move, " → mozgatás, .12
  • page: " page, " → oldal, .12
  • select_text: " Select text, " → szöveg kijelölése, .12
  • delete_text: " Delete text, " → szöveg törlése, .12
  • clear_input: " Clear input" → bevitel törlése.12

These suggestions are aligned with the rest of your Hungarian wording and standard GUI terminology used in software localization dictionaries such as OpenScope/Microsoft.32

Untranslated category labels

The optional_deps.categories block is explicitly marked with a TODO and is still fully in English: editor, terminal, clipboard, aur_helper, security.2
These appear as headings or labels for TUI optional dependencies, so they should be translated for a fully localized experience.12
Good Hungarian equivalents would be:

  • editor: "Editor" → Szerkesztő.32
  • terminal: "Terminal" → Terminál.2
  • clipboard: "Clipboard" → Vágólap.2
  • aur_helper: "AUR Helper" → AUR-segéd or AUR-kezelő; AUR-segéd is short and natural.32
  • security: "Security" → Biztonság.32

These terms match common usage in Hungarian software UIs and in specialized terminology lists.32

Key terminology that should be tightened

Below are the most important places where the current Hungarian is understandable but semantically off or potentially confusing for a technical user.132

  • details.fields.provides

    • English: "Provides".1
    • Current: Szolgáltató, which literally reads as “provider (person/company)” rather than “things this package provides”.2
    • Suggest: Biztosítja or Nyújtja, e.g. Biztosítja (this is closer to how package managers describe virtual packages they “provide”).32
  • details.fields.replaces

    • English: "Replaces".1
    • Current: Cserék:, which sounds like “exchanges” rather than “packages this one replaces”.2
    • Suggest: Helyettesíti or Lecseréli, e.g. Helyettesíti:, which clearly matches the semantics of replacement packages.32
  • headings.globals

    • English: "GLOBALS:".1
    • Current: GLOBÁLIS:, which is grammatically a bare adjective and feels slightly unfinished.2
    • Suggest: Globális beállítások: (“Global settings”) or shorter Globális értékek:, depending on intended content.312
  • headings.recent, headings.install, etc.

    • English uses bare nouns like "RECENT:", "INSTALL:", "REMOVE:".1
    • Current: LEGUTÓBBI:, TELEPÍTÉS:, ELTÁVOLÍTÁS:, which are understandable but slightly abrupt in Hungarian.2
    • Consider plural or more explicit forms such as Legutóbbiak:, Telepítés alatt:, Eltávolítás alatt:, although this is more style than correctness.32
  • details.fields.optional_for

    • English: "Optional for".1
    • Current: Nem kötelező ezekhez:, which is understandable but a bit clumsy.2
    • Suggest: Opcionális ezekhez: or Választható ezekhez:, which reads more naturally while preserving meaning.32
  • details.fields.required_by

    • English: "Required by".1
    • Current: Szükséges ehhez:, which is clear but singular-ish.2
    • A slightly more literal and list-friendly variant is Szükséges a következőkhöz:, which better introduces a list of packages.32

These adjustments bring the terminology closer to what Hungarian users expect from package managers and technical documentation.32

Style and minor phrasing notes

Some messages are perfectly understandable but could be polished for style and consistency with other Hungarian software.32
These are optional improvements rather than “bugs”, so you can prioritize them lower.32

  • gnome_terminal_warning

    • English: "Continuing without gnome-terminal may cause unexpected behavior".1
    • Current: Folytatás Gnome Terminál nélkül váratlan viselkedést okozhat.2
    • Suggest: A GNOME terminál nélküli folytatás váratlan viselkedést okozhat or shorter GNOME terminál nélkül a program váratlanul viselkedhet, which flows more naturally and uses consistent capitalization.32
  • gnome_terminal_prompt.body_line1

    • English: "GNOME was detected, but no GNOME terminal (gnome-terminal or gnome-console/kgx) is installed.".1
    • Current: GNOME észlelve, de nincs telepítve GNOME Terminál (Gnome Terminál vagy Gnome Konzol/KGX)..2
    • Suggest tightening to something like A GNOME környezet felismerve, de nincs telepítve GNOME terminál (gnome-terminal vagy gnome-console/kgx)., which avoids repetition and matches typical terminology.32
  • preflight.summary.no_conflicts_or_upgrades

    • English: "No conflicts or upgrades required.".1
    • Current: Nincs szükség ütközéskezelésre vagy frissítésre..2
    • This is fine, but a slightly simpler alternative is Nincsenek ütközések, és nincs szükség frissítésre., which is closer to the source structure.32
  • Use of “Szimulált futtatás” for “Dry-run mode”

    • English: "Dry-run mode enabled/disabled".1
    • Current: Szimulált futtatás engedélyezve / Szimulált futtatás letiltva.2
    • This is understandable; if you want a more idiomatic term, Próbafuttatási mód engedélyezve/letiltva is also common in Hungarian technical texts.32

References

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

@Firstp1ck
Copy link
Owner

Firstp1ck commented Nov 15, 2025

I synced/rebased fork with main as I had another PR implemented. You can ignore these commits.

Firstp1ck and others added 3 commits November 15, 2025 22:07
@summoner001
Copy link
Collaborator Author

summoner001 commented Nov 16, 2025

OK I'm Done.

I looked at the suggested corrections, and they are somewhat valid. They are more like additions or replacements of words with synonyms, not mistranslations.

I will stop here for now. I will wait to see if this is now merged, or if you still do not believe that the translation is good.

All I can say is that I didn't use AI for the translation, the translation is good and meets all the requirements I know of today. I translated it from my own sources and using the openscope dictionary, in accordance with the rules.

Unfortunately, I couldn't get anyone from the FSF Foundation to look at it. They must be very busy, or I don't know.

@Firstp1ck
Copy link
Owner

OK I'm Done.

I looked at the suggested corrections, and they are somewhat valid. They are more like additions or replacements of words with synonyms, not mistranslations.

I will stop here for now. I will wait to see if this is now merged, or if you still do not believe that the translation is good.

All I can say is that I didn't use AI for the translation, the translation is good and meets all the requirements I know of today. I translated it from my own sources and using the openscope dictionary, in accordance with the rules.

Unfortunately, I couldn't get anyone from the FSF Foundation to look at it. They must be very busy, or I don't know.

Thank you very much for your contribution! I am very thankful for your patience!

@Firstp1ck Firstp1ck merged commit f3ab40c into Firstp1ck:main Nov 16, 2025
2 checks passed
@summoner001
Copy link
Collaborator Author

Ok! Thank you!

Now I setted an rss/atom feed to the hu-HU.yml file's history. Now I can follow the changes, and I can maintain my translation.

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants