#gettext

Dendrobatus AzureusDendrobatus_Azureus@bsd.cafe
2026-01-31

Amazing. Rock Solid stability.
GNU gettext reaches v1.0 after Thirty 30 years!

GNU Gettext is vital in translating programs to different languages

Quote

GNU gettext is an important step for the GNU Translation Project, as it is an asset on which we may build many other steps. This package offers to programmers, translators, and even users, a well integrated set of tools and documentation. Specifically, the GNU gettext utilities are a set of tools that provides a framework to help other GNU packages produce multi-lingual messages.

EOF

#Programming #OpenSource #Gettext #Linux #BSD #translation #languages #Lingua

gnu.org/software/gettext/

HELL JUST FROZE OVER!

#GNU #gettext version 1.0 has been released! 🎉

This is a popular translation framework, used by a ton of #FreeSoftware.

savannah.gnu.org/news/?id=10853

#release #FreeSoftware #translation

Vivien (Requin Mou)gugurumbe@mastouille.fr
2026-01-27

La v20 est envoyĂ©e. Ça m’a pris quelques soirs pour vĂ©rifier tout. Mais au moins c’est envoyé !

Pour rappel, je souhaite que les options de la ligne de commande soient traduites.

patchwork.sourceware.org/proje

Alors Ă©videmment Patchwork a reçu le mail no 5 avant la cover letter (oui dĂ©solĂ© mon serveur perso est surchargĂ©) donc il a tout cassĂ©. Je devrais attendre plus entre l’envoi des patches de la sĂ©rie.

#glibc #gettext #i18n

Jiri Grönroosjirigronroos
2025-12-24

Life is full of options, and so is wittrans! New in v0.7.0: support for whole word search instead of partial matching, search only from source or translation strings, and export all the entries from .mo files as a single TSV file. Search statistics now display number of directories searched, number of found .mo files, and number of matches for search term, and the duration of search. Download from pypi.org/project/wittrans/

2025-10-28

Little spinoff library from one of my projects: `go-gettext`! Want to use GNU #gettext in #Go , e.g. to do i18n in your GTK app, but without using CGo? Then this might be helpful to you :) https://github.com/pojntfx/go-gettext

GitHub - pojntfx/go-gettext: G...

Felicitas Pojtinger 🔜 FOSDEMpojntfx
2025-10-28

Little spinoff library from one of my projects: `go-gettext`!

Want to use GNU in , e.g. to do i18n in your GTK app, but without using CGo? Then this might be helpful to you :)

github.com/pojntfx/go-gettext

2025-10-12

potodo 0.25 released last Friday! A number of quality of life improvements inside đŸ«Ą Thank you @mdk for the release! #i18n #gettext

git.afpy.org/AFPy/potodo#relea

2025-07-20

Learning a bit more every day. #til
Here is a piece of #django or better #gettext, #Django is just the user.

{% trans "Series" context "singular" %}

The "context ..." is a contextual marker [1].
Here I need it because the word "Series" in german (and other language) has a different translation for singular and plural, so I explicitly pass it a context that I will get in my .po file. Now I can differentiate

Series => Serie (singular)
Series => Serien (plural)

[1] docs.djangoproject.com/en/5.2/

2025-07-19

Just discussed it with a friend and shared that I am quite rigorous on doing translations in a certain way.
One example is the last change, read the commit message:

Don't do any simple string translations like "in" which totally miss all context, they will go wrong in some language. Use "in $location" now, so one can see the context what the "in" is meant to be for.

#i18n #django #gettext #goodcode

2025-07-04

I was always struggling with wrapping in GNU #gettext PO files; #Django ./manage.py makemessages does it one way, Poedit.app does it differently. To avoid dirty Git diffs, I used to re-wrap the strings by hand this whole time... until TIL that you can just use msgcat without arguments :neocat_facepalm:

msgcat -o django.po django.po

To re-wrap all PO files:

fd -epo . -x msgcat -o '{}' '{}'
Rafael Fontenellerafaelff
2025-06-30

Gettext is adding support for custom flags in PO files! 🎉

The intention it to make it easier to handle workflows like AI pretranslation, review/approval, or project-specific checks — all while keeping flags reliably stored. ✹

Details: lists.gnu.org/archive/html/bug

Kushal Das :python: :tor: 🇾đŸ‡Șkushal@toots.dgplug.org
2025-05-23

What are the modern tools available for #translation #po files? #gettext I specially want to know about how to find suggestions from all the previous work done in many other project's po files. I can clone those repos somewhere locally, but is there any way to find suggestion from existing translations? #l10n #localization

2025-03-26

cl-po-parser is a Common Lisp package for parsing a GNU Gettext po file.

github.com/veer66/cl-po-parser

#commonlisp #po #gettext

2025-02-20

#taidan is now #gettext free
full migration to
#fluent ​:ablobcatattentionreverse:​

#ultramarinelinux #rust #foss #linux

github page for the commit that removes all the .po and .pot files (that is, gettext files)
Vivien (Requin Mou)gugurumbe@mastouille.fr
2025-01-02

News in my #guile minimal #gettext run-time for static (expand-time) #i18n!
The API changed: there is now only 1 macro with keyword arguments, which does not update PO files by default.
Your PO files now have scheme-format and range flags, and translator comments!
I now parse PO files directly and not MO files anymore.
The next step is to show how to use this with #Hoot (the license also changed to AGPL).
labo.planete-kraus.eu/guile-st

Ténno Seremél’tennoseremel@lor.sh
2024-12-26

Looks like actually using gettext takes a bit too much steps for my liking for a few simple Guile scripts I wrote. The example was using automake, which certainly didn’t help đŸ€·

#lang_en #gettext #guile

Vivien (Requin Mou)gugurumbe@mastouille.fr
2024-12-21

I don’t know how you feel about it, but I find #hoot very interesting. There’s a problem though: you can’t do #i18n (internationalization). In #guile, you would use the #gettext library, but since its run-time is written in C and relies on the file system, it’s a bit inconvenient to use in Hoot.
I present to you my static-i18n library: it provides translations at compile-time and so it does not need the gettext runtime.
labo.planete-kraus.eu/guile-st

It was more work than I hoped for, but I finally moved #Lazarr! from #Luanti's legacy TR format to the superior #gettext PO format and added the missing level names and level hints to #Codeberg Translate (#Weblate).

#GameDev #translation

With #Luanti (formerly #Minetest) version 5.10 out, games can finally use the #gettext PO format natively.

I've recently updated #Repixture to use this format, which makes the translation process much simpler. Previously, I had to use a hacky Python script to convert between formats before I could upload the texts to Weblate. Now it can be used natively.

▶ Repixture translations: translate.codeberg.org/project

#GameDev #translation

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst