595 lines
20 KiB
Plaintext
595 lines
20 KiB
Plaintext
Version 0.14.4 - April 2005
|
||
|
||
* The gettext autoconf macros will now work with the forthcoming g++ 4.0.
|
||
* Fix improved detection of the locale on MacOS X.
|
||
|
||
Version 0.14.3 - March 2005
|
||
|
||
* Usability improvements in gettextize and autopoint.
|
||
|
||
* Programming languages support:
|
||
- Scheme:
|
||
Use the GNU guile definition of format strings.
|
||
|
||
Version 0.14.2 - February 2005
|
||
|
||
* Improved detection of the locale on MacOS X.
|
||
|
||
* The gettext autoconf macros now require autoconf 2.50 or newer.
|
||
|
||
* Programming languages support:
|
||
|
||
- Scheme:
|
||
xgettext now also supports Scheme. Best used with guile 1.7 or newer.
|
||
|
||
* msggrep is much faster now.
|
||
|
||
* libgettextpo library:
|
||
- New functions for constructing PO files in memory and writing them to
|
||
files.
|
||
- The error handling is now customizable.
|
||
|
||
* Documentation:
|
||
|
||
- New tutorial document, written by Gora Mohanty.
|
||
- New FAQ document.
|
||
- New documentation sections: Scheme, Release Management.
|
||
|
||
* Bug fixes for Turkish and Estonian locales.
|
||
|
||
* Security fixes.
|
||
|
||
Version 0.14 - January 2004
|
||
|
||
* Programming languages support:
|
||
|
||
- C#:
|
||
|
||
xgettext now also supports C#.
|
||
|
||
New library: GNU.Gettext.dll contains the runtime for using GNU gettext
|
||
message catalogs in C#.
|
||
|
||
msgfmt can create (and msgunfmt can dump) message catalogs for C#.
|
||
|
||
* Special feature for Farsi (Persian): Translators can insert an 'I' flag
|
||
into numeric format directives in format strings. Its effect is that, on
|
||
glibc systems, the number is generated with the locale dependent set of
|
||
special digits instead of the usual ASCII digits.
|
||
|
||
* Documentation:
|
||
|
||
- New documentation section: C#.
|
||
- Complete examples illustrating the use of gettext in C# (in text mode and
|
||
in Forms applications) have been added.
|
||
|
||
- New documentation section: Preparing Library Sources.
|
||
|
||
* Special advice for Norwegian users: The language code for Norwegian
|
||
bokmål changed from 'no' to 'nb' recently (in 2003). During the transition
|
||
period, while some message catalogs for this language are installed under
|
||
'nb' and some older ones under 'no', it's recommended for Norwegian users to
|
||
set the LANGUAGE environment variable to 'nb:no' so that both newer and
|
||
older translations are used.
|
||
|
||
Version 0.13.1 - December 2003
|
||
|
||
* Bug fixes in the testsuite and in the examples.
|
||
|
||
Version 0.13 - November 2003
|
||
|
||
* Programming languages support:
|
||
|
||
- Shell:
|
||
|
||
xgettext now also supports shell scripts. It recognizes invocations of
|
||
the programs 'gettext', 'ngettext', the functions 'eval_gettext',
|
||
'eval_ngettext', as well as the deprecated GNU bash builtin syntax $"...".
|
||
New function library:
|
||
gettext.sh - shell functions for internationalized shell scripts.
|
||
New program:
|
||
envsubst - substitutes environment variables in shell format strings.
|
||
|
||
- Perl:
|
||
|
||
xgettext now also supports Perl.
|
||
|
||
- PHP:
|
||
|
||
"xgettext --language=PHP" now supports the plural handling functions
|
||
ngettext, dngettext, dcngettext (introduced in PHP 4.2.0).
|
||
|
||
- ObjectiveC:
|
||
|
||
"xgettext --language=ObjectiveC" now supports the @"..." string syntax,
|
||
the NSLocalizedString function and the ObjectiveC specific format strings.
|
||
|
||
All the tools that manipulate PO files can work with .strings files
|
||
as well, if given the --stringtable-input and/or --stringtable-output
|
||
option. To create a .strings file from a PO or POT file, use
|
||
"msgcat --stringtable-output". To create a PO or POT file from a
|
||
.strings file, use "xgettext".
|
||
|
||
- GCC-source:
|
||
|
||
xgettext's --language option now supports the value "GCC-source". This
|
||
is like --language=C, except that in this mode, xgettext recognizes the
|
||
special kind of format strings used in the GCC sources and marks them
|
||
as 'gcc-internal-format'.
|
||
|
||
- C++ with Qt:
|
||
|
||
xgettext has a new option --qt that triggers the recognition and marking
|
||
of Qt format strings.
|
||
|
||
msgfmt has a new option --qt that generates binary message catalogs in
|
||
Qt's .qm format.
|
||
|
||
* Data formats support:
|
||
|
||
- Glade:
|
||
xgettext now also supports Glade version 2.
|
||
|
||
* xgettext has a more reliable detection of format strings. It now
|
||
recognizes format strings depending on their position, for example as the
|
||
second argument of fprintf(), regardless whether the literal string contains
|
||
format directives. This behaviour can be customized through the --flag
|
||
option.
|
||
|
||
* libgettextpo library:
|
||
|
||
- New functions for testing the obsolete/fuzzy/*-format flags of a message.
|
||
- New convenience functions for extracting and analyzing the header entry.
|
||
|
||
* Portability:
|
||
|
||
- C format strings with positions, as they arise when a translator needs to
|
||
reorder a sentence, are now supported on all platforms. On those few
|
||
platforms (NetBSD and Woe32) for which the native printf()/fprintf()/...
|
||
functions don't support such format strings, replacements are provided
|
||
through <libintl.h>.
|
||
|
||
- A new configuration option --disable-libasprintf allows to build all of
|
||
gettext except libasprintf; this is necessary on platforms for which
|
||
libtool cannot create shared libraries with C++ code.
|
||
|
||
* Documentation:
|
||
|
||
- Complete examples illustrating the use of gettext, including program
|
||
sources, Makefile and autoconf infrastructure, have been added. They
|
||
cover the following programming languages:
|
||
C (text mode, GNOME)
|
||
C++ (text mode, Qt, KDE, GNOME)
|
||
ObjectiveC (text mode, GNUstep, GNOME)
|
||
Shell (text mode)
|
||
Python (text mode)
|
||
Lisp (text mode)
|
||
librep (text mode)
|
||
Smalltalk (text mode)
|
||
Java (text mode, AWT, Swing)
|
||
awk (text mode)
|
||
Pascal (text mode)
|
||
YCP (libyui)
|
||
Tcl (text mode, Tk)
|
||
Perl (text mode)
|
||
PHP (text mode)
|
||
|
||
Version 0.12.1 - May 2003
|
||
|
||
* Bug fixes.
|
||
|
||
Version 0.12 - May 2003
|
||
|
||
* The gettext package is now separated into two subpackages:
|
||
- gettext-runtime: Runtime libraries and programs.
|
||
- gettext-tools: Tools and documentation for developers and translators.
|
||
The 'gettext-runtime' package is very small and should be installed on every
|
||
system that has users who desire to use internationalization. Whereas the
|
||
'gettext-tools' package is only for developers and translators.
|
||
|
||
* The po/Makevars file has a new field MSGID_BUGS_ADDRESS, which program
|
||
maintainers should fill in, to help feedback from the translators to the
|
||
program maintainers.
|
||
xgettext, accordingly, has a new option --msgid-bugs-address.
|
||
|
||
* Programming languages support:
|
||
|
||
- C++
|
||
|
||
A new C++ class, called gnu::autosprintf, makes it possible to use
|
||
C format strings in C++. This is needed for proper internationalization
|
||
of C++ programs.
|
||
|
||
- Java
|
||
|
||
All the tools that manipulate PO files can work with .properties files
|
||
as well, if given the --properties-input and/or --properties-output
|
||
option. To create a .properties file from a PO or POT file, use
|
||
"msgcat --properties-output".
|
||
|
||
- Smalltalk
|
||
|
||
xgettext now also supports Smalltalk.
|
||
|
||
- PHP
|
||
|
||
xgettext now also supports PHP.
|
||
|
||
- Python
|
||
|
||
"xgettext --language=Python" now supports the plural handling functions
|
||
ngettext, dngettext, ungettext (introduced in Python 2.3).
|
||
|
||
- A new autoconf macro AM_PO_SUBDIRS is added. It is like AM_GNU_GETTEXT,
|
||
for packages written in other languages than C/C++.
|
||
|
||
* A new library libgettextpo, with public header file "gettext-po.h",
|
||
provides functions for reading PO files into memory. It is useful for
|
||
applying PO files to areas not covered by the GNU gettext programs.
|
||
New documentation section:
|
||
- Writing your own programs that process PO files.
|
||
|
||
* New documentation sections:
|
||
- Prioritizing messages: How to determine which messages to translate first.
|
||
- Names: Marking Proper Names for Translation.
|
||
|
||
* xgettext now supports msgid strings in other encodings than ASCII.
|
||
xgettext has a new option --from-code that specifies the encoding of the
|
||
source files. The resulting POT files are UTF-8 encoded.
|
||
|
||
* Tools for translators:
|
||
|
||
- msgmerge has a new option -N/--no-fuzzy-matching that inhibits the fuzzy
|
||
search for untranslated messages.
|
||
|
||
- msgattrib has new options --only-file and --ignore-file that cause the
|
||
specified attribute manipulation to apply to selected messages only.
|
||
|
||
* Compatibility with automake-1.7.
|
||
|
||
* In documentation section po/LINGUAS:
|
||
- Document the optional "languages" en@quot and en@boldquot.
|
||
|
||
* New configuration option --enable-relocatable. See the INSTALL file for
|
||
details.
|
||
|
||
Version 0.11.5 - August 2002
|
||
|
||
* Bug fixes in the gettext.m4 autoconf macros.
|
||
|
||
Version 0.11.4 - July 2002
|
||
|
||
* The tools now know about the ISO C 99 <inttypes.h> format string directive
|
||
macros PRId64, PRIxMAX etc.
|
||
|
||
Version 0.11.3 - July 2002
|
||
|
||
* New program:
|
||
autopoint - copies standard gettext infrastructure
|
||
|
||
* The documentation makes it clear that 'gettextize' is a wizard and
|
||
migration tool.
|
||
|
||
* gettextize has a new option --dry-run.
|
||
|
||
* Improved portability to Solaris, OSF/1 and Linux/libc5.
|
||
|
||
* Improved interoperability with GCC 3.1.
|
||
|
||
* New documentation sections:
|
||
- CVS Issues
|
||
- mkinstalldirs
|
||
- config.h.in
|
||
|
||
Version 0.11.2 - April 2002
|
||
|
||
* Bug fixes in the gettext.m4 autoconf macros.
|
||
|
||
* New documentation section:
|
||
- Preparing Translatable Strings
|
||
|
||
Version 0.11.1 - March 2002
|
||
|
||
* xgettext now also supports Python, Tcl, Awk and Glade.
|
||
|
||
* msgfmt can create (and msgunfmt can dump) Tcl message catalogs.
|
||
|
||
* msggrep has a new option -C that allows to search for strings in translator
|
||
comments.
|
||
|
||
* Bug fixes in the gettext.m4 autoconf macros.
|
||
|
||
Version 0.11 - January 2002
|
||
|
||
* New programs:
|
||
msgattrib - attribute matching and manipulation on message catalog,
|
||
msgcat - combines several message catalogs,
|
||
msgconv - character set conversion for message catalog,
|
||
msgen - create English message catalog,
|
||
msgexec - process translations of message catalog,
|
||
msgfilter - edit translations of message catalog,
|
||
msggrep - pattern matching on message catalog,
|
||
msginit - initialize a message catalog,
|
||
msguniq - unify duplicate translations in message catalog.
|
||
|
||
* msgfmt can create (and msgunfmt can dump) Java ResourceBundles.
|
||
|
||
* xgettext now also supports Lisp, Emacs Lisp, librep, Java, ObjectPascal,
|
||
YCP.
|
||
|
||
* The tools now know about format strings in languages other than C.
|
||
They recognize new message flags named lisp-format, elisp-format,
|
||
librep-format, smalltalk-format, java-format, python-format, ycp-format.
|
||
When such a flag is present, the msgfmt program verifies the consistency
|
||
of the translated and the untranslated format string.
|
||
|
||
* The msgfmt command line options have changed. Option -c now also checks
|
||
the header entry, a check which was previously activated through -v.
|
||
Option -C corresponds to the compatibility checks previously activated
|
||
through -v -v. Option -v now only increases verbosity and doesn't
|
||
influence whether msgfmt succeeds or fails. A new option
|
||
--check-accelerators is useful for GUI menu item translations.
|
||
|
||
* msgcomm now writes its results to standard output by default. The options
|
||
-d/--default-domain and -p/--output-dir have been removed.
|
||
|
||
* Manual pages for all the programs have been added.
|
||
|
||
* PO mode changes:
|
||
- New key bindings for 'po-previous-fuzzy-entry',
|
||
'po-previous-obsolete-entry', 'po-previous-translated-entry',
|
||
'po-previous-untranslated', 'po-undo', 'po-other-window', and
|
||
'po-select-auxiliary'.
|
||
- Support for merging two message catalogs, based on msgcat and ediff.
|
||
|
||
* A fuzzy attribute of the header entry of a message catalog is now ignored
|
||
by the tools, i.e. it is used even if marked fuzzy.
|
||
|
||
* gettextize has a new option --intl which determines whether a copy of the
|
||
intl directory is included in the package.
|
||
|
||
* The Makefile variable @INTLLIBS@ is deprecated. It is replaced with
|
||
@LIBINTL@ (in projects without libtool) or @LTLIBINTL@ (in projects with
|
||
libtool).
|
||
|
||
* New packaging hints for binary package distributors. See file PACKAGING.
|
||
|
||
* New documentation sections:
|
||
- Manipulating
|
||
- po/LINGUAS
|
||
- po/Makevars
|
||
- lib/gettext.h
|
||
- autoconf macros
|
||
- Other Programming Languages
|
||
|
||
Version 0.10.40 - September 2001
|
||
|
||
* The libintl library is now covered by the GNU LGPL. The tools are still
|
||
covered by the GNU GPL.
|
||
|
||
Version 0.10.39 - July 2001
|
||
|
||
* This is a bug-fix release.
|
||
|
||
* Now uses libtool-1.4. Linking with the libintl shared library is easier.
|
||
|
||
* The autoconf macros now work with both autoconf-2.13 and autoconf-2.50.
|
||
|
||
Version 0.10.38 - May 2001
|
||
|
||
* This is a bug-fix release.
|
||
|
||
* Manual pages for the GNU libintl library functions have been added.
|
||
|
||
Version 0.10.37 - April 2001
|
||
|
||
This is a bug-fix release.
|
||
|
||
Version 0.10.36 - March 2001, by Ulrich Drepper and Bruno Haible
|
||
|
||
* General plural handling. New functions ngettext, dngettext, dcngettext.
|
||
|
||
* Locales which differ only in the character encoding, for example ja_JP and
|
||
ja_JP.UTF-8, can now share the same message catalogs. gettext converts
|
||
the messages to the appropriate character encoding on the fly.
|
||
|
||
* The tools now correctly process PO files in CJK encodings.
|
||
|
||
* Support for non-GNU gettext has been dropped. Previously, on Solaris, the
|
||
system's gettext was used (unless --with-included-gettext was specified),
|
||
which led to problems with PO files that were not 100% translated.
|
||
|
||
* Support for the catgets wrapper has been dropped. This means that gettext
|
||
now always supports the LANGUAGE environment variable, message inheritance,
|
||
automatic charset conversion etc.
|
||
|
||
* Support for the old Linux specific .msg catalog format has been dropped.
|
||
|
||
* When the included GNU libintl is installed (i.e. on GNU platforms, when
|
||
the configure option --with-included-gettext is given, or on non-GNU
|
||
platforms, when the configure option --disable-nls is not given), it is
|
||
also installed as a shared library, unless the configure option
|
||
--disable-shared is given.
|
||
|
||
* PO mode changes:
|
||
|
||
** PO mode does not use recursive edit anymore, many edits may be worked on
|
||
simultaneously in a single PO file.
|
||
|
||
** PO mode may handle many translation files at once while correlating related
|
||
entries, for helping multilingual or cultured translators.
|
||
|
||
** On recent Emacses, PO mode automatically use proper fonts when available.
|
||
|
||
** PO mode supports marking of C++ sources.
|
||
|
||
** highlights original message while editing the translation
|
||
|
||
** PO mode has commands to mail messages to teams or to the translation
|
||
coordinator, with automatic inclusion of the current PO file.
|
||
|
||
Version 0.10.35 - April 1998, by Ulrich Drepper
|
||
|
||
* by default the emulation of gettext using the catgets() functions of
|
||
the C library is not selected anymore. GNU gettext has so many nice
|
||
extensions that this became unreasonable. Using --with-catgets the
|
||
emulation still can be requested.
|
||
|
||
* extend xgettext program to handle other file formats other than C/C++.
|
||
For now it also handles PO file. Using this feature one can concatenate
|
||
arbitrary PO files.
|
||
|
||
* Tcl module with gettext interface
|
||
|
||
* Korean translation by Bang Jun Young
|
||
|
||
* xgettext writes to stdout when default domain name is set to -
|
||
|
||
* codeset name normalization
|
||
|
||
* msgmerge program now has all features tupdate has (and more).
|
||
tupdate itself will be removed soon
|
||
|
||
* po/Makefile.in.in now uses msgmerge instead of tupdate
|
||
|
||
* escape notation in .po files are only used when explicitly selected
|
||
|
||
* changed interface of msgunfmt to conform to GNU coding standard
|
||
|
||
* msgmerge now knows how to handle obsolete entries. If a formerly obsolete
|
||
entry is used again msgmerge will find it
|
||
|
||
* better implementation of comment extraction in xgettext.
|
||
|
||
* better C format string implementation. The xgettext will classify
|
||
strings as being a format string, or not, in the .po file. The
|
||
programmer can override the decision explicitly for each string
|
||
by specifying `xgettext:c-format' and `xgettext:no-c-format'
|
||
respectively in a C comment preceding the string.
|
||
|
||
* msgmerge program now always produces output. Fuzzy or non-existing
|
||
translations are no reason for holding back the result.
|
||
|
||
* reasonable header entry format implemented
|
||
|
||
* Norwegian translation by Karl Anders <20>gard
|
||
|
||
* Configure command line option `--with-gnu-gettext' is renamed to
|
||
`--with-included-gettext'
|
||
|
||
* gettextize now can determine whether the aclocal.m4 of the project
|
||
is sufficent
|
||
|
||
* use automake for Makefile.in generation
|
||
|
||
* by default now only c-format is emitted in xgettext. If using the new
|
||
--debug option one can enable printing possible-c-format to see who
|
||
decided about the string: xgettext or the programmer
|
||
|
||
* the installed libintl.h file no longer depends on HAVE_LOCALE_H being
|
||
defined. After running configure we know whether this file exists.
|
||
|
||
* wrapping of lines in PO file output finally enabled.
|
||
A new special comment no-wrap prevents wrapping.
|
||
|
||
* add --statistics option to msgfmt to get information about number of
|
||
translated, untranslated, and fuzzy messages
|
||
|
||
* change behaviour of --verbose option to msgfmt. This no longer
|
||
causes the check on the messages to be performed. The check for leading
|
||
and trailing \n is always performed and the check of the format specifiers
|
||
is performed when --check is given.
|
||
|
||
* shared library support based On Gord Matzigkeit's libtool package
|
||
|
||
* msgcomm program by Peter Miller to extract messages shared by input
|
||
files
|
||
|
||
* many more translations.
|
||
|
||
Version 0.10 - December 1995, by Ulrich Drepper
|
||
|
||
* implement --shell-script option for gettext program
|
||
|
||
* implement object-oriented, lazy message handling :-)
|
||
Consult the manual for more/any information
|
||
|
||
* implement locale name aliasing, similar to the one used
|
||
in the X Window System
|
||
|
||
* support for GNU gettext sources in central place to support
|
||
use in development environments of other projects
|
||
|
||
* implement CEN syntax for environment variable values
|
||
|
||
* msgcmp program to find matches in two .po files
|
||
|
||
* programs now have exit status != 0 if errors occured
|
||
|
||
* libintl.a is now selfcontained and can be used without context in
|
||
other projects (even on systems missing alloca)
|
||
|
||
* gettextize now automatically runs config.status
|
||
|
||
* swedish message catalog
|
||
|
||
* new options for xgettext: -D/--directory to change in specified directory
|
||
before processing the input files and -f/--files-from to specify file from
|
||
which the names of the input files are read.
|
||
The later option in necessary for large projects such as GNU C Library.
|
||
|
||
* new programs msgmerge and msgunfmt by Peter Miller. The code of the other
|
||
programs is now also much cleaner.
|
||
|
||
Version 0.9 - August 1995, by Ulrich Drepper
|
||
|
||
* again many improvements on the manual
|
||
|
||
* norwegian message catalog
|
||
|
||
* compilation now works with --disable-nls
|
||
|
||
* better checks
|
||
|
||
Version 0.8 - July 1995, by Ulrich Drepper
|
||
|
||
* much improved manual (although still far from being complete)
|
||
|
||
* improved PO mode; it now can prepare C sources for use with gettext
|
||
by marking translatable strings
|
||
|
||
* better support for sparse System V systems
|
||
|
||
* check goal (kind of)
|
||
|
||
* more input tests and warnings
|
||
|
||
* better support for integration in other packages
|
||
|
||
* many bugs fixed
|
||
|
||
Version 0.7 - June 1995, by Ulrich Drepper
|
||
|
||
* New GNU package providing functionality to internationalize and
|
||
localize other programs.
|
||
|
||
* Implementation of the Uniforum(*) proposal for internationalization
|
||
on top of X/Open(*) style catgets functions.
|
||
|
||
* Complete implementation of the Uniforum functions for system
|
||
lacking either of them or those who which to have a different
|
||
implementation with many advantages.
|
||
|
||
* Implementation of the three tools for message catalog handling
|
||
described in the Uniforum.
|
||
|
||
* Emacs po-mode for handling portable message object files which are
|
||
the basis of the work of the package.
|
||
|
||
|
||
(*) Some history: The POSIX working groups have so far been unable to
|
||
agree on one set of message catalog handling functions for the C Library.
|
||
For now there are competing proposals, one by the Uniforum group, led by
|
||
Sun, and the other by X/Open. Although the latter is surely implemented
|
||
on more systems, it is not perceived as the clear leader.
|