Skip to content

Internationalize UI popups#43

Open
Nidrax wants to merge 44 commits intotrunkfrom
nidrax/i18n
Open

Internationalize UI popups#43
Nidrax wants to merge 44 commits intotrunkfrom
nidrax/i18n

Conversation

@Nidrax
Copy link
Member

@Nidrax Nidrax commented Feb 12, 2026

No description provided.

Nidrax and others added 30 commits February 1, 2026 20:31
Skip overlay updates when frame limiter prevents flip
- For Latin scripts, Cyryllic, Greek etc now uses
  Pixeloid for normal UI font and Tiny5 for mini font,
  defaults to Noto for other writing scripts.
- Adds the ability to set different font sizes for different font faces
Yeah... not much to add. This piece of garbage is ugly.
Fuck this code.
And fuck the asshole who decided to make a living hell of live for
anyone who tries to analyze this code, by not putting in spacing around
operators as if they were getting electro-cutted every time they touched
the space bar.
Who needs obfuscation when you can let psychopaths write the code, I guess.
Motherfucker just forgot they're committing to an open-source project.
Thanks for draining out any will to live I had left in me for tonight.

Closes #6
Updated:
- documentation
- build config
- desktop files
- installers
- GitHub workflow files
- CMakeLists.txt files in src, desktop, and emscripten
- data files and source config

Co-authored-by: Daniel Praźmo <d.prazmo@icloud.com>
…workflow with locally working happy path to test changes remotely
The 'ri' and 'te' letter clusters had too much visual negative space
between them when every character was spaced out evenly, so I've
cut the kerning between those two pairs of letters in half
Provides a meaningful error dialog to the user if something is wrong with the filename.
Also anticipates any unexpected behaviors that may occur if feeding such unverified
paths to fopen()/_wfopen() (like e.g. allowing filenames with ':' on Windows that ends
up writing to an alternate NTFS stream which is confusing to the user and useless for
LibreSprite use-case in general).
…sn't really make sense to forcefully disallow user from doing it)
…ession compared to zero

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Nidrax and others added 14 commits February 7, 2026 02:13
(screen renders fine under macOS and Linux, so no fixes needed for those platforms)
- Add condition for NO_SW_CHANGE tag to skip builds on commits that
  do not update the source code
- Update CodeQL workflow to v2
- Optimize the macOS workflow

NO_SW_CHANGE
- Added CMake custom targets for cppcheck, clang-tidy, and gcc-analyzer
- Created GitHub Actions workflow for running static code analysis
- Each analysis tool runs in a separate job with continue-on-error
- Tools automatically detect if they're available on the system

Add documentation for static code analysis targets

- Added comprehensive documentation to INSTALL.md
- Documented all three analysis targets (cppcheck, clang-tidy, gcc-analyzer)
- Included installation instructions for analysis tools on all platforms
- Updated table of contents

PERFORM_CA
NO_SW_CHANGE
* Add i18n extraction tool
* Update CodeQL workflow to analyze Python scripts
* Add translations for new i18n keys

Co-authored-by: Daniel Praźmo <d.prazmo@icloud.com>
Closes #41
@Nidrax
Copy link
Member Author

Nidrax commented Feb 12, 2026

@copilot Inside the src directory I've used the following ripgrep command to list all still untranslated strings:

rg '"[^"]+"' --pcre2 -t cpp | rg -v '(^\S+:#\s*(include|define|pragma|ifdef|ifndef|endif)|i18n\s*\(|extern\s+"C"|(LOG|TRACE|DEBUG|ERROR|WARN|INFO)\s*\(|EXPECT_|ASSERT_|TEST|^\S+:\s*/[/*])'

Could you analyze its outputs and from the context determine which of those definitely might not be seen by the user and filter those results out and create a curated list of strings literals that might still be needed to internationalize?

Copy link

Copilot AI commented Feb 12, 2026

@Nidrax I've opened a new pull request, #44, to work on those changes. Once the pull request is ready, I'll request review from you.

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.

2 participants