summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* xgettext: Support per-file optionswip/ueno/xgettext-suboptionsDaiki Ueno2016-03-022-27/+191
| | | | | | | | | | | | | | | | * autogen.sh (GNULIB_MODULES_TOOLS_FOR_SRC): Add getsubopt. * gettext-tools/src/xgettext.c: Include <fnmatch.h>. (long_options): Add --options. (main): Handle --options. Factor out language guessing to... (filename_to_language): ...here. (usage): Mention --options. (enum suboption_type): New enum. (suboption_tokens): New variable. (struct suboption_ty, struct suboption_list_ty, struct suboption_list_list_ty): New struct. (suboption_list_destroy, suboption_list_insert, suboption_list_list_destroy, suboption_list_list_insert): New function. (suboptions): New variable.
* xgettext: Add new check bullet-unicodeDaiki Ueno2016-02-226-11/+158
| | | | | | | | | | | | | | | | | * gettext-tools/src/xgettext.c (main): Generalize --check option handling. * gettext-tools/src/message.h (enum syntax_check_type): New enum value sc_bullet_unicode. (NSYNTAXCHECKS): Increment. * gettext-tools/src/message.c (syntax_check_name): Add name for sc_bullet_unicode. * gettext-tools/src/msgl-check.c (struct bullet_ty, struct bullet_stack_ty): New struct. (bullet_stack): New variable. (syntax_check_bullet_unicode): New function. (sc_funcs): Register syntax_check_bullet_unicode as a check function for sc_bullet_unicode. * gettext-tools/tests/xgettext-14: Add tests for --check=bullet-unicode
* doc: Mention the behavior stripping *.inDaiki Ueno2016-02-101-1/+6
| | | | | | * gettext-tools/doc/gettext.texi (Preparing ITS Rules): Add footnote explaining the matching behavior if the input file name has the .in suffix. Suggested by Jan Synacek.
* javascript: Support '%m$' in format stringsDaiki Ueno2016-02-083-43/+225
| | | | | | | | | | | | | | | | | | Gjs has had support for numbered arguments in format strings since 1.40. Recognize it as well in format-javascript, so msgfmt -c doesn't fail when numbered arguments are in msgstr. Reported by Sean Burke in: https://lists.gnu.org/archive/html/bug-gettext/2015-10/msg00002.html * gettext-tools/src/format-javascript.c (struct numbered_arg): New struct. (struct spec): Rename format_args_count to numbered_arg_count. Add NUMBERED field in place of FORMAT_ARGS. All callers changed. (numbered_arg_compare): New function. (format_parse): Handle numbered arguments. Based on format-awk.c. (format_check): Add check for numbered arguments. * gettext-tools/tests/format-javascript-1: Add tests for numbered arguments. * gettext-tools/tests/lang-javascript: Use numbered argument in format strings. Add check for Gjs version >= 1.40.
* moopp: Revert file modes accidentally setDaiki Ueno2016-02-081-0/+0
|
* gettext-tools: Use a short name for DLLs on OS/2KO Myung-Hun2016-01-204-3/+20
| | | | | | | | | | | | OS/2 does not support a DLL name longer than 8 characters. * gettext-tools/configure.ac (OS2): Define on OS/2. * gettext-tools/gnulib-lib/Makefile.am (libgettextlib_la_LDFLAGS): Set a DLL name to gtlib on OS/2. * gettext-tools/libgettextpo/Makefile.am (libgettextpo_la_LDFLAGS): Set a DLL name to gtpo on OS/2. * gettext-tools/src/Makefile.am (libgettextsrc_la_LDFLAGS): Set a DLL name to gtsrc on OS/2.
* libasprintf: Build a shared library on OS/2KO Myung-Hun2016-01-201-1/+1
| | | | | * gettext-runtime/libasprintf/configure.ac (LTNOUNDEF): Set to -no-undefined on OS/2.
* intl: Support UNIXROOT in BINDTEXTDOMAIN () on EMXKO Myung-Hun2016-01-201-0/+26
| | | | | | | $UNIXROOT is a drive on which a root of FHS is. * gettext-runtime/intl/bindtextdom.c (BINDTEXTDOMAIN): Prepend $UNIXROOT to dirname if it is started '/' or it is an empty string.
* moop: Replace CR as well as LF with a spaceKO Myung-Hun2016-01-201-2/+2
| | | | | | | On OS/2, EOL marker is CR+LF. * gnulib-local/bulid-aux/moopp (func_check_header_syntax): Replace CR as well as LF with a space.
* Change msgfmt to produce little-endian .mo files by default.Bruno Haible2016-01-154-5/+8
| | | | | | | * gettext-tools/src/msgfmt.c (main): Initialize 'byteswap' so as to produce little-endian .mo files by default. * gettext-tools/doc/gettext.texi: Update documentation. * gettext-tools/doc/msgfmt.texi (--endianness): Likewise.
* maint: Revert copyright year changes in test dataDaiki Ueno2016-01-1311-10/+20
| | | | | | | | | | | | | | | | | | Some test programs started failing after mass update of copyright notice for year 2016 (commit 7fa0c277), because of embedded test data with fixed copyright dates. Revert the commit for those files. Reported by Bruno Haible. * .x-update-copyright: Exclude test programs embedding copyright date. * gettext-tools/tests/msgcomm-22: Revert the last change. * gettext-tools/tests/msgfilter-sr-latin-1: Likewise. * gettext-tools/tests/msggrep-1: Likewise. * gettext-tools/tests/msggrep-2: Likewise. * gettext-tools/tests/msggrep-3: Likewise. * gettext-tools/tests/msggrep-4: Likewise. * gettext-tools/tests/msggrep-5: Likewise. * gettext-tools/tests/msggrep-9: Likewise. * gettext-tools/tests/msggrep-11: Likewise. * gettext-tools/tests/msgmerge-14: Likewise.
* its: Recognize *.glade as a GtkBuilder file tooDaiki Ueno2016-01-071-0/+1
|
* * PACKAGING: List version specific filesSantiago Vila2016-01-051-0/+1
| | | | Copyright-paperwork-exempt: yes
* maint: Update copyright yearDaiki Ueno2016-01-02497-556/+517
|
* Update gnulibDaiki Ueno2016-01-021-0/+0
|
* maint: Use maintainer-makefile from gnulibDaiki Ueno2016-01-024-1/+31
| | | | | | | | * autogen.sh: Pull GNUmakefile, maint.mk, and dependency scripts in build-aux. * cfg.mk (update-copyright-env): Adjust for gettext. * .x-update-copyright: New file. * .gitignore: Ignore files brought in by gnulib-tool.
* maint: Update release-steps to current practiceDaiki Ueno2015-12-281-70/+95
| | | | | | * Admin/release-steps: Split document into two sections ('Making a snapshot release' and 'Making an official release'), reorder some steps, and remove mention of manual generation of PO/POT files.
* Release 0.19.7v0.19.7Daiki Ueno2015-12-280-0/+0
|
* Update translationsDaiki Ueno2015-12-2821-8539/+12220
| | | | | | | | | | | | | | | | | | | | | | | | * gettext-runtime/po/fr.po: Update from Stéphane Aulery <lkppo@free.fr>. * gettext-runtime/po/nb.po: Update from Johnny A. Solbu <johnny@solbu.net>. * gettext-runtime/po/pt_BR.po: Update from Rafael Ferreira <rffontenelle@gmail.com>. * gettext-runtime/po/sr.po: Update from Мирослав Николић <miroslavnikolic@rocketmail.com>. * gettext-runtime/po/zh_TW.po: Update from Wei-Lun Chao <bluebat@member.fsf.org>. * gettext-tools/examples/po/fr.po: Update from Stéphane Aulery <lkppo@free.fr>. * gettext-tools/examples/po/nb.po: Update from Johnny A. Solbu <johnny@solbu.net>. * gettext-tools/examples/po/pt_BR.po: Update from Rafael Ferreira <rffontenelle@gmail.com>. * gettext-tools/examples/po/sr.po: Update from Мирослав Николић <miroslavnikolic@rocketmail.com>. * gettext-tools/examples/po/zh_TW.po: Update from Wei-Lun Chao <bluebat@member.fsf.org>. * gettext-tools/po/bg.po: Update from Roumen Petrov <transl@roumenpetrov.info>. * gettext-tools/po/es.po: Update from Antonio Ceballos <aceballos@gmail.com>. * gettext-tools/po/fr.po: Update from Stéphane Aulery <lkppo@free.fr>. * gettext-tools/po/ja.po: Update from Masahito Yamaga <ma@yama-ga.com>. * gettext-tools/po/nl.po: Update from Benno Schulenberg <benno@vertaalt.nl>. * gettext-tools/po/pt_BR.po: Update from Rafael Fontenelle <rffontenelle@gmail.com>. * gettext-tools/po/sk.po: Update from Marcel Telka <marcel@telka.sk>. * gettext-tools/po/sl.po: Update from Primoz PETERLIN <primozz.peterlin@gmail.com>. * gettext-tools/po/sr.po: Update from Мирослав Николић <miroslavnikolic@rocketmail.com>. * gettext-tools/po/uk.po: Update from Yuri Chornoivan <yurchor@ukr.net>. * gettext-tools/po/vi.po: Update from Trần Ngọc Quân <vnwildman@gmail.com>.
* Prepare for 0.19.7Daiki Ueno2015-12-285-5/+5
|
* doc: Regenerate translation matrixDaiki Ueno2015-12-282-210/+155
| | | | | * gettext-runtime/ABOUT-NLS: Regenerate for 0.19.7. * gettext-runtime/doc/matrix.texi: Regenerate for 0.19.7.
* NEWS: Add 0.19.7 changesDaiki Ueno2015-12-281-0/+15
|
* Update gnulibDaiki Ueno2015-12-281-0/+0
|
* Ignore file brought by gnulib-toolDaiki Ueno2015-12-281-0/+1
| | | | | * gettext-tools/gnulib-tests/.gitignore: Ignore file brought by gnulib-tool.
* term-ostream-tests: Add test data for FreeBSD 10.1Daiki Ueno2015-12-233-0/+133
| | | | | | | * gnulib-local/modules/term-ostream-tests: Add test-term-ostream-xterm-freebsd101.out. * gnulib-local/tests/test-term-ostream-xterm: Use new test data. * gnulib-local/tests/test-term-ostream-xterm-freebsd101.out: New file.
* cldr-plurals: Fix errors from clang-analyzerDaiki Ueno2015-12-211-8/+10
| | | | | | * gettext-tools/src/cldr-plurals.c (extract_rules): Add extra null checks for NODE and BUFFER. Don't add NUL byte to the end of buffer manually.
* po: Prefer to use host tools when cross compilingDaiki Ueno2015-12-172-2/+7
| | | | | | | * gettext-runtime/po/Makefile.in.in (CROSS_COMPILING): New substitute variable. (.nop.po-update): Don't prepend ../src to $PATH when cross compiling. * gettext-runtime/po/Rules-quot (.insert-header.po-update-en): Likewise.
* its: Allow CDATA and comments in translatable nodeDaiki Ueno2015-12-171-0/+2
| | | | | * gettext-tools/src/its.c (its_rule_list_is_translatable): Don't return false on CDATA and comments.
* its: Fix typo in GSettings ruleDaiki Ueno2015-12-171-1/+1
| | | | * gettext-tools/its/gsettings.its: Fix typo in escape rule.
* gnulib-local: Fix link error due to symbol dupesDaiki Ueno2015-12-151-1/+1
| | | | * gnulib-local/lib/libxml/trionan.c (minus_zerod): Mark as static.
* gnulib-local: Pull more functions for libxmlDaiki Ueno2015-12-153-0/+10
| | | | | | | | * gettext-tools/gnulib-lib/.gitignore: Ignore files brought by gnulib-tool. * gettext-tools/gnulib-tests/.gitignore: Likewise. * gnulib-local/modules/libxml (Depends-on): Add 'pow', 'log10', and 'fabs'.
* gnulib-local: Replace libxml2 trio with GnulibDaiki Ueno2015-12-156-1225/+98
| | | | | | | | | | | * gettext-tools/gnulib-lib/.gitignore: Ignore files brought by gnulib-tool. * gettext-tools/gnulib-tests/.gitignore: Likewise. * gnulib-local/lib/libxml/triodef.h: Remove. * gnulib-local/lib/libxml/trionan.c: Replace it with Gnulib functions. * gnulib-local/lib/libxml/trionan.h: Remove. * gnulib-local/modules/libxml (Depends-on): Add 'isinf', 'isnan', and 'signbit'.
* gnulib-local: Update included libxml2 to 2.9.3Daiki Ueno2015-12-14100-12526/+42919
| | | | | | | * gnulib-local/lib/libxml/*: Update from libxml2 2.9.3. Add buf.[ch], enc.h, save.h, triodef.h, trionan.[ch]. Enable XPath and XPointer support. * gnulib-local/modules/libxml (Files): Add new files from libxml2 2.9.3.
* gettext-tools: Update POTFILES.inDaiki Ueno2015-12-101-4/+12
| | | | * gettext-tools/po/POTFILES.in: Add newly added files.
* gnulib-local: Make markup.c translator friendlyDaiki Ueno2015-12-101-39/+79
| | | | * gnulib-local/lib/markup.c: Reuse strings.
* its: Mark some attributes as escape="no"Daiki Ueno2015-12-103-0/+8
| | | | | | | | | * gettext-tools/its/glade2.its: Mark "comments" attribute as escape="no". * gettext-tools/its/gsettings.its: Mark "context" attribute as escape="no". * gettext-tools/its/gtkbuilder.its: Mark "comments" attribute as escape="no".
* xgettext: Respect ITS escape rule for attributesDaiki Ueno2015-12-102-1/+25
| | | | | | * gettext-tools/src/its.c (its_rule_list_extract_text): Check for "escape" value for an attribute node. * gettext-tools/tests/xgettext-its-1: Add tests for gt:escapeRule.
* intl: Fix name resolution failures on kLIBCKO Myung-Hun2015-12-102-1/+4
| | | | | | | | | | | kLIBC already has _nl_default_dirname and _nl_msg_cat_cntr in its own gettext implmenetation. * gettext-runtime/intl/dcigettext.c: Do not declare _nl_default_dirname on kLIBC. * gettext-runtime/intl/gettextP.h: Define _nl_msg_cat_cntr to libintl_nl_msg_cat_cntr on kLIBC. Copyright-paperwork-exempt: yes
* build: Do not include os2compat.[ch]KO Myung-Hun2015-12-103-3/+3
| | | | | | | | | | | kLIBC does not need os2compat.[ch] * gettext-runtime/configure.ac (AH_BOTTOM): Do not include intl/os2compat.h on kLIBC. * gettext-runtime/intl/osdep.c: Do not include os2compat.c on kLIBC. * gettext-tools/configure.ac (AH_BOTTOM): Do not include intl/os2compat.h on kLIBC. Copyright-paperwork-exempt: yes
* test-lock: Do not include sched.h on kLIBCKO Myung-Hun2015-12-101-1/+5
| | | | | | | * gettext-runtime/tests/test-lock.c: Do not include sched.h on kLIBC, since kLIBC does not have sched.h. Copyright-paperwork-exempt: yes
* kde: Fix KUIT error handling when libxml2 is usedDaiki Ueno2015-12-101-0/+3
| | | | | * gettext-tools/src/format-kde-kuit.c (format_parse): Return NULL if xmlReadMemory returns NULL.
* xgettext: Add --its option for ease of testingDaiki Ueno2015-12-102-0/+29
| | | | | | | * gettext-tools/doc/xgettext.texi (Output details): Mention --its option. * gettext-tools/src/xgettext.c (long_options): Add --its option. (main): Handle --its option. Suggested by Sébastien Wilmet.
* xgettext: Improve error reporting when ITS is usedDaiki Ueno2015-12-101-2/+5
| | | | | * gettext-tools/src/xgettext.c (main): Print error when an ITS file is designated through a locating rule, but the file does not exist.
* build: Update DEPENDENCIESDaiki Ueno2015-12-101-16/+8
| | | | * DEPENDENCIES: Remove duplicate entry for libxml2.
* build: Remove expat dependencyDaiki Ueno2015-12-0915-586/+1899
| | | | | | | | | | | | | | | | | | | | | | | | | * DEPENDENCIES: Suggest libxml2 instead of expat. * gnulib-local/lib/markup.c: New file. * gnulib-local/lib/markup.h: New file. * gnulib-local/modules/markup: New file. * autogen.sh (GNULIB_MODULES_LIBGETTEXTPO): Add markup module. * gettext-tools/configure.ac: Remove checks for expat. * gettext-tools/gnulib-lib/.gitignore: Ignore modules pulled by gnulib-tool due to the markup module usage. * gettext-tools/gnulib-tests/.gitignore: Likewise. * gettext-tools/libgettextpo/.gitignore: Likewise. * gettext-tools/libgettextpo/Makefile.am (libgettextpo_la_AUXSOURCES): Remove ../src/libexpat-compat.c. (libgettextpo_la_LDFLAGS): Remove @LTLIBEXPAT@. * gettext-tools/src/Makefile.am (noinst_HEADERS): Remove libexpat-compat.h. (libgettextsrc_la_SOURCES): Remove libexpat-compat.c. (libgettextsrc_la_LDFLAGS): Remove @LTLIBEXPAT@. * gettext-tools/src/format-kde-kuit.c: Use functions from markup.h, when the file is being compiled as part of libgettextpo. Otherwise use libxml2. * gettext-tools/src/libexpat-compat.c: Remove. * gettext-tools/src/libexpat-compat.h: Remove.
* build: Fix texi2html failure with perl 5.22Daiki Ueno2015-12-082-4/+4
| | | | | | * gettext-runtime/libasprintf/texi2html (update_sec_num): Don't use "defined" against an array ref. * gettext-tools/doc/texi2html (update_sec_num): Likewise.
* Update gnulibDaiki Ueno2015-12-082-0/+2
|
* xgettext: Ignore --from-code when XML modeDaiki Ueno2015-12-081-3/+5
| | | | | * gettext-tools/src/xgettext.c (extract_from_xml_file): Forcibly set current source encoding to UTF-8, on XML mode.
* build: Suppress compiler warningDaiki Ueno2015-12-081-3/+1
| | | | | * gettext-tools/src/its.c (its_rule_list_extract_text): Remove unused local variable "message".
* msgfmt: Support XML file mergingDaiki Ueno2015-12-0411-15/+916
| | | | | | | | | | | | | | | | | | | | | | | | | | | * gettext-tools/src/Makefile.am (noinst_HEADERS): Add write-xml.h. (msgfmt_SOURCES): Add write-xml.c. * gettext-tools/src/its.c (its_merge_context_merge_node): New function. (its_merge_context_merge): New function. (its_merge_context_alloc): New function. (its_merge_context_write): New function. (its_merge_context_free): New function. * gettext-tools/src/its.h (its_merge_context_ty): New type. * gettext-tools/src/msgfmt.c: Include "its.h", "locating-rule.h", and "write-xml.h". (SIZEOF): New macro. (xml_mode, xml_locale_name, xml_template_name, xml_base_directory, xml_language, xml_its_rules): New variable. (long_options): Add --language and --xml. (main): Handle new options. (usage): Document new options. (msgfmt_xml_bulk): New function. * gettext-tools/src/write-xml.c: New file. * gettext-tools/src/write-xml.h: New file. * gettext-tools/doc/gettext.texi: Mention XML file merging use-case. * gettext-tools/doc/msgfmt.texi: Mention --xml option. * gettext-tools/tests/msgfmt-xml-1: New file. * gettext-tools/tests/msgfmt-xml-2: New file. * gettext-tools/tests/Makefile.am (TESTS): Add new tests.