Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Gettext
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==History== Initially, POSIX provided no means of localizing messages. Two proposals were raised in the late 1980s, the 1988 Uniforum gettext and the 1989 X/Open catgets (XPG-3 Β§ 5). [[Sun Microsystems]] implemented the first gettext in 1993.<ref name=sun /> The Unix and POSIX developers never really agreed on what kind of interface to use (the other option is the X/Open catgets), so many [[C library|C libraries]], including [[glibc]], implemented both.<ref>{{cite web |title=Message Translation |url=https://www.gnu.org/software/libc/manual/html_node/Message-Translation.html |website=The GNU C Library}}</ref> {{As of|2019|08}}, whether gettext should be part of POSIX was still a point of debate in the [[Austin Group]], despite the fact that its old foe has already fallen out of use. Concerns cited included its dependence on the system-set locale (a [[global variable]] subject to multithreading problems) and its support for newer C-language extensions involving wide strings.<ref>{{cite web |title=0001122: POSIX should include gettext() and friends - Austin Group Defect Tracker |url=http://austingroupbugs.net/view.php?id=1122 |website=Austin Group Defect Tracker}}</ref> The [[GNU Project]] decided that the message-as-key approach of gettext is simpler and more friendly. (Most other systems, including catgets, requires the developer to come up with "key" names for every string.)<ref>{{cite web |title=The Programmer's View |url=http://ftp.gnu.org/old-gnu/Manuals/gettext-0.10.35/html_chapter/gettext_8.html |website=gettext 0.10.35| date=30 April 1998}}</ref> They released GNU gettext, a [[free software]] implementation of the system in 1995.<ref name=history /> Gettext, GNU or not, has since been ported to many programming languages.<ref>{{cite web |title=GNU gettext utilities: List of Programming Languages |url=https://www.gnu.org/software/gettext/manual/html_node/List-of-Programming-Languages.html#List-of-Programming-Languages}}</ref> The simplicity of po and widespread editor support even lead to its adoption in non-program contexts for text documents or as an intermediate between other localization formats, with converters like po4a (po for anything) and Translate Toolkit emerging to provide such a bridge.<ref>{{cite web |title=po4a |url=https://po4a.org/index.php.en |website=po4a.org}}</ref><ref>{{cite web |title=The essential toolkit for localization engineers |url=https://toolkit.translatehouse.org/ |website=Translate Toolkit}}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)