diff options
author | Bruno Haible <bruno@clisp.org> | 2005-01-18 11:47:03 +0000 |
---|---|---|
committer | Bruno Haible <bruno@clisp.org> | 2009-06-23 12:12:06 +0200 |
commit | 95744765fc75d36726dd66cd11e70b123f524a3e (patch) | |
tree | 514d06781e23307c457d1b08a0a25907623fd1a2 | |
parent | 78df9931107ac99dd669a3436505a4d360940242 (diff) | |
download | external_gettext-95744765fc75d36726dd66cd11e70b123f524a3e.zip external_gettext-95744765fc75d36726dd66cd11e70b123f524a3e.tar.gz external_gettext-95744765fc75d36726dd66cd11e70b123f524a3e.tar.bz2 |
Support for Scheme.
-rw-r--r-- | NEWS | 7 | ||||
-rw-r--r-- | gettext-tools/doc/ChangeLog | 9 | ||||
-rw-r--r-- | gettext-tools/doc/gettext.texi | 79 | ||||
-rw-r--r-- | gettext-tools/doc/xgettext.texi | 10 | ||||
-rw-r--r-- | gettext-tools/examples/ChangeLog | 12 | ||||
-rw-r--r-- | gettext-tools/examples/Makefile.am | 27 | ||||
-rw-r--r-- | gettext-tools/examples/README | 1 | ||||
-rw-r--r-- | gettext-tools/examples/po/Makefile.am | 11 | ||||
-rw-r--r-- | gettext-tools/src/ChangeLog | 31 | ||||
-rw-r--r-- | gettext-tools/src/FILES | 4 | ||||
-rw-r--r-- | gettext-tools/src/Makefile.am | 16 | ||||
-rw-r--r-- | gettext-tools/src/Makefile.msvc | 9 | ||||
-rw-r--r-- | gettext-tools/src/Makefile.vms | 9 | ||||
-rw-r--r-- | gettext-tools/src/format.c | 1 | ||||
-rw-r--r-- | gettext-tools/src/format.h | 1 | ||||
-rw-r--r-- | gettext-tools/src/message.c | 2 | ||||
-rw-r--r-- | gettext-tools/src/message.h | 3 | ||||
-rw-r--r-- | gettext-tools/src/xgettext.c | 26 | ||||
-rw-r--r-- | gettext-tools/tests/ChangeLog | 9 | ||||
-rw-r--r-- | gettext-tools/tests/Makefile.am | 8 |
20 files changed, 243 insertions, 32 deletions
@@ -1,7 +1,14 @@ Version 0.14.2 - January 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. Version 0.14 - January 2004 diff --git a/gettext-tools/doc/ChangeLog b/gettext-tools/doc/ChangeLog index b55de9d..1535dbd 100644 --- a/gettext-tools/doc/ChangeLog +++ b/gettext-tools/doc/ChangeLog @@ -1,3 +1,12 @@ +2005-01-16 Bruno Haible <bruno@clisp.org> + + Support for Scheme. + * gettext.texi (PO Files): Mention scheme-format. + (scheme-format): New subsection. + (Scheme): New subsection. + * xgettext.texi: Document Scheme source language. Document that it is + applicable to --flag. + 2005-01-11 Bruno Haible <bruno@clisp.org> * gettext.texi: Put the table of contents at the beginning, after the diff --git a/gettext-tools/doc/gettext.texi b/gettext-tools/doc/gettext.texi index 582682e..33ed892 100644 --- a/gettext-tools/doc/gettext.texi +++ b/gettext-tools/doc/gettext.texi @@ -61,7 +61,7 @@ This file provides documentation for GNU @code{gettext} utilities. It also serves as a reference for the free Translation Project. -Copyright (C) 1995-1998, 2001-2004 Free Software Foundation, Inc. +Copyright (C) 1995-1998, 2001-2005 Free Software Foundation, Inc. Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice @@ -339,6 +339,7 @@ The Translator's View * lisp-format:: Lisp Format Strings * elisp-format:: Emacs Lisp Format Strings * librep-format:: librep Format Strings +* scheme-format:: Scheme Format Strings * smalltalk-format:: Smalltalk Format Strings * java-format:: Java Format Strings * csharp-format:: C# Format Strings @@ -361,6 +362,7 @@ Individual Programming Languages * clisp C:: GNU clisp C sources * Emacs Lisp:: Emacs Lisp * librep:: librep +* Scheme:: GNU guile - Scheme * Smalltalk:: GNU Smalltalk * Java:: Java * C#:: C# @@ -1212,6 +1214,12 @@ Likewise for Emacs Lisp, see @ref{elisp-format}. @kwindex no-librep-format@r{ flag} Likewise for librep, see @ref{librep-format}. +@item scheme-format +@kwindex scheme-format@r{ flag} +@itemx no-scheme-format +@kwindex no-scheme-format@r{ flag} +Likewise for Scheme, see @ref{scheme-format}. + @item smalltalk-format @kwindex smalltalk-format@r{ flag} @itemx no-smalltalk-format @@ -7403,6 +7411,7 @@ strings. * lisp-format:: Lisp Format Strings * elisp-format:: Emacs Lisp Format Strings * librep-format:: librep Format Strings +* scheme-format:: Scheme Format Strings * smalltalk-format:: Smalltalk Format Strings * java-format:: Java Format Strings * csharp-format:: C# Format Strings @@ -7514,7 +7523,7 @@ section @w{Formatting Strings}, Note that as of version 21, XEmacs supports numbered argument specifications in format strings while FSF Emacs doesn't. -@node librep-format, smalltalk-format, elisp-format, Translators for other Languages +@node librep-format, scheme-format, elisp-format, Translators for other Languages @subsection librep Format Strings librep format strings are documented in the librep manual, section @@ -7522,7 +7531,13 @@ librep format strings are documented in the librep manual, section @url{http://librep.sourceforge.net/librep-manual.html#Formatted%20Output}, @url{http://www.gwinnup.org/research/docs/librep.html#SEC122}. -@node smalltalk-format, java-format, librep-format, Translators for other Languages +@node scheme-format, smalltalk-format, librep-format, Translators for other Languages +@subsection Scheme Format Strings + +Scheme format strings are documented in the SLIB manual, section +@w{Format Specification}. + +@node smalltalk-format, java-format, scheme-format, Translators for other Languages @subsection Smalltalk Format Strings Smalltalk format strings are described in the GNU Smalltalk documentation, @@ -7714,6 +7729,7 @@ that language, and to combine the resulting files using @code{msgcat}. * clisp C:: GNU clisp C sources * Emacs Lisp:: Emacs Lisp * librep:: librep +* Scheme:: GNU guile - Scheme * Smalltalk:: GNU Smalltalk * Java:: Java * C#:: C# @@ -8276,7 +8292,7 @@ Only XEmacs. Without @code{I18N3} defined at build time, no translation. --- @end table -@node librep, Smalltalk, Emacs Lisp, List of Programming Languages +@node librep, Scheme, Emacs Lisp, List of Programming Languages @subsection librep @cindex @code{librep} Lisp @@ -8326,7 +8342,60 @@ On platforms without gettext, no translation. An example is available in the @file{examples} directory: @code{hello-librep}. -@node Smalltalk, Java, librep, List of Programming Languages +@node Scheme, Smalltalk, librep, List of Programming Languages +@subsection GNU guile - Scheme +@cindex Scheme +@cindex guile + +@table @asis +@item RPMs +guile + +@item File extension +@code{scm} + +@item String syntax +@code{"abc"} + +@item gettext shorthand +@code{(_ "abc")} + +@item gettext/ngettext functions +@code{gettext}, @code{ngettext} + +@item textdomain +@code{textdomain} + +@item bindtextdomain +@code{bindtextdomain} + +@item setlocale +automatic + +@item Prerequisite +@code{(use-modules (ice-9 format))} + +@item Use or emulate GNU gettext +use + +@item Extractor +@code{xgettext -k_} + +@item Formatting with positions +@c @code{format "~1@@*~D ~0@@*~D~2@@*"}, requires @code{(use-modules (ice-9 format))} +@c not yet supported +--- + +@item Portability +On platforms without gettext, no translation. + +@item po-mode marking +--- +@end table + +An example is available in the @file{examples} directory: @code{hello-guile}. + +@node Smalltalk, Java, Scheme, List of Programming Languages @subsection GNU Smalltalk @cindex Smalltalk diff --git a/gettext-tools/doc/xgettext.texi b/gettext-tools/doc/xgettext.texi index ea4ccab..a9602b2 100644 --- a/gettext-tools/doc/xgettext.texi +++ b/gettext-tools/doc/xgettext.texi @@ -70,10 +70,10 @@ is written to standard output. @cindex supported languages, @code{xgettext} Specifies the language of the input files. The supported languages are @code{C}, @code{C++}, @code{ObjectiveC}, @code{PO}, @code{Python}, -@code{Lisp}, @code{EmacsLisp}, @code{librep}, @code{Smalltalk}, @code{Java}, -@code{JavaProperties}, @code{C#}, @code{awk}, @code{YCP}, @code{Tcl}, -@code{Perl}, @code{PHP}, @code{GCC-source}, @code{NXStringTable}, @code{RST}, -@code{Glade}. +@code{Lisp}, @code{EmacsLisp}, @code{librep}, @code{Scheme}, @code{Smalltalk}, +@code{Java}, @code{JavaProperties}, @code{C#}, @code{awk}, @code{YCP}, +@code{Tcl}, @code{Perl}, @code{PHP}, @code{GCC-source}, @code{NXStringTable}, +@code{RST}, @code{Glade}. @item -C @itemx --c++ @@ -210,7 +210,7 @@ translators cannot accidentally use format string directives that would lead to a crash at runtime. @* This option has an effect with most languages, namely C, C++, ObjectiveC, -Shell, Python, Lisp, EmacsLisp, librep, Java, C#, awk, YCP, Tcl, Perl, PHP, +Shell, Python, Lisp, EmacsLisp, librep, Scheme, Java, C#, awk, YCP, Tcl, Perl, PHP, GCC-source. @item -T diff --git a/gettext-tools/examples/ChangeLog b/gettext-tools/examples/ChangeLog index 096f2bc..d03656e 100644 --- a/gettext-tools/examples/ChangeLog +++ b/gettext-tools/examples/ChangeLog @@ -1,3 +1,15 @@ +2005-01-16 Bruno Haible <bruno@clisp.org> + + Support for Scheme. + * hello-guile: New subdirectory. + * README: Mention it. + * Makefile.am (EXAMPLESFILES): Add the files in hello-guile. + * po/Makefile.am (POTFILES): Add hello-guile source. + (SMALLPOTS): Add hello-guile.pot. + (hello-guile.pot): New rule. + (SMALLPOFILES_FOR_lang): Add hello-guile elements. + (../hello-guile/po/$(LL).po): New rule. + 2005-01-06 Bruno Haible <bruno@clisp.org> * po/el.po: New file, from Simos Xenitellis <simos74@gmx.net>. diff --git a/gettext-tools/examples/Makefile.am b/gettext-tools/examples/Makefile.am index ff9efc3..fccd187 100644 --- a/gettext-tools/examples/Makefile.am +++ b/gettext-tools/examples/Makefile.am @@ -430,6 +430,33 @@ EXAMPLESFILES = \ hello-librep/po/uk.po \ hello-librep/po/zh_CN.po \ \ + hello-guile/INSTALL \ + hello-guile/autogen.sh \ + hello-guile/autoclean.sh \ + hello-guile/hello.scm \ + hello-guile/Makefile.am \ + hello-guile/configure.ac \ + hello-guile/m4/Makefile.am \ + hello-guile/po/Makefile.am \ + hello-guile/po/LINGUAS \ + hello-guile/po/af.po \ + hello-guile/po/ca.po \ + hello-guile/po/de.po \ + hello-guile/po/el.po \ + hello-guile/po/es.po \ + hello-guile/po/fr.po \ + hello-guile/po/ja.po \ + hello-guile/po/nl.po \ + hello-guile/po/pl.po \ + hello-guile/po/ro.po \ + hello-guile/po/ru.po \ + hello-guile/po/sk.po \ + hello-guile/po/sr.po \ + hello-guile/po/sv.po \ + hello-guile/po/tr.po \ + hello-guile/po/uk.po \ + hello-guile/po/zh_CN.po \ + \ hello-smalltalk/INSTALL \ hello-smalltalk/autogen.sh \ hello-smalltalk/autoclean.sh \ diff --git a/gettext-tools/examples/README b/gettext-tools/examples/README index 01b17cd..2095e8e 100644 --- a/gettext-tools/examples/README +++ b/gettext-tools/examples/README @@ -18,6 +18,7 @@ environment. hello-python Python hello-clisp Lisp hello-librep librep + hello-guile Scheme hello-smalltalk Smalltalk hello-java Java hello-java-awt Java AWT diff --git a/gettext-tools/examples/po/Makefile.am b/gettext-tools/examples/po/Makefile.am index b954657..a4c3f3b 100644 --- a/gettext-tools/examples/po/Makefile.am +++ b/gettext-tools/examples/po/Makefile.am @@ -1,5 +1,5 @@ ## Makefile for the gettext-tools/examples/po subdirectory of GNU gettext -## Copyright (C) 1995-1998, 2000-2003 Free Software Foundation, Inc. +## Copyright (C) 1995-1998, 2000-2004 Free Software Foundation, Inc. ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -40,6 +40,7 @@ POTFILES = \ examples/hello-python/hello.py.in \ examples/hello-clisp/hello.lisp.in \ examples/hello-librep/hello.jl.in \ + examples/hello-guile/hello.scm \ examples/hello-smalltalk/hello.st.in \ examples/hello-java/Hello.java \ examples/hello-java-awt/Hello.java \ @@ -70,6 +71,7 @@ SMALLPOTS = \ hello-python.pot \ hello-clisp.pot \ hello-librep.pot \ + hello-guile.pot \ hello-smalltalk.pot \ hello-java.pot \ hello-java-awt.pot \ @@ -227,6 +229,9 @@ hello-clisp.pot : $(POTFILES_DEPS) hello-librep.pot : $(POTFILES_DEPS) $(SHELL) xsmallpot.sh hello-librep +hello-guile.pot : $(POTFILES_DEPS) + $(SHELL) xsmallpot.sh hello-guile + hello-smalltalk.pot : $(POTFILES_DEPS) $(SHELL) xsmallpot.sh hello-smalltalk @@ -352,6 +357,7 @@ SMALLPOFILES_FOR_lang = \ ../hello-python/po/$$lang.po \ ../hello-clisp/po/$$lang.po \ ../hello-librep/po/$$lang.po \ + ../hello-guile/po/$$lang.po \ ../hello-smalltalk/po/$$lang.po \ ../hello-java/po/$$lang.po \ ../hello-java-awt/po/$$lang.po \ @@ -405,6 +411,9 @@ SMALLPOFILES_FOR_lang = \ ../hello-librep/po/$(LL).po: hello-librep.pot $(LL).po $(SHELL) mmsmallpo.sh hello-librep $(LL) +../hello-guile/po/$(LL).po: hello-guile.pot $(LL).po + $(SHELL) mmsmallpo.sh hello-guile $(LL) + ../hello-smalltalk/po/$(LL).po: hello-smalltalk.pot $(LL).po $(SHELL) mmsmallpo.sh hello-smalltalk $(LL) diff --git a/gettext-tools/src/ChangeLog b/gettext-tools/src/ChangeLog index 0adf625..358bd53 100644 --- a/gettext-tools/src/ChangeLog +++ b/gettext-tools/src/ChangeLog @@ -1,3 +1,34 @@ +2005-01-16 Bruno Haible <bruno@clisp.org> + + Support for Scheme. + * message.h (format_type): New enum value 'format_scheme'. + (NFORMATS): Increment. + * message.c (format_language): Add format_scheme entry. + (format_language_pretty): Likewise. + * format.h (formatstring_scheme): New declaration. + * format-scheme.c: New file, based on format-lisp.c. + * format.c (formatstring_parsers): Add formatstring_scheme. + * x-scheme.h: New file. + * x-scheme.c: New file. + * xgettext.c: Include x-scheme.h. + (flag_table_scheme): New variable. + (main): Invoke init_flag_table_scheme, x_scheme_extract_all, + x_scheme_keyword. + (usage): Mention Scheme source language. + (xgettext_record_flag): Handle format_scheme. + (language_to_extractor): Add Scheme rule. + (extension_to_language): Add Scheme rule. + * Makefile.am (noinst_HEADERS): Add x-scheme.h. + (FORMAT_SOURCE): Add format-scheme.c. + (xgettext_SOURCES): Add x-scheme.c. + * Makefile.msvc (OBJECTS): Add format-scheme.obj. + (xgettext_OBJECTS): Add x-scheme.obj. + (format-scheme.obj, x-scheme.obj): New rules. + * Makefile.vms (OBJECTS): Add format-scheme.obj. + (xgettext_OBJECTS): Add x-scheme.obj. + (format-scheme.obj, x-scheme.obj): New rules. + * FILES: Update. + 2005-01-08 Bruno Haible <bruno@clisp.org> * msggrep.c (grep_args, grep_path, grep_argv): Remove variables. diff --git a/gettext-tools/src/FILES b/gettext-tools/src/FILES index d5f76e8..c42f0df 100644 --- a/gettext-tools/src/FILES +++ b/gettext-tools/src/FILES @@ -199,6 +199,7 @@ format-python.c Format string handling for Python. format-lisp.c Format string handling for Common Lisp. format-elisp.c Format string handling for Emacs Lisp. format-librep.c Format string handling for librep. +format-scheme.c Format string handling for Scheme. format-java.c Format string handling for Java. format-csharp.c Format string handling for C#. format-awk.c Format string handling for awk. @@ -270,6 +271,9 @@ format.c Table of the language dependent format string handlers. | x-librep.h | x-librep.c | String extractor for librep. +| x-scheme.h +| x-scheme.c +| String extractor for Scheme. | x-smalltalk.h | x-smalltalk.c | String extractor for Smalltalk. diff --git a/gettext-tools/src/Makefile.am b/gettext-tools/src/Makefile.am index d1aafba..2e54ded 100644 --- a/gettext-tools/src/Makefile.am +++ b/gettext-tools/src/Makefile.am @@ -50,8 +50,8 @@ read-tcl.h write-tcl.h \ write-qt.h \ po-time.h plural-table.h format.h \ xgettext.h x-c.h x-po.h x-sh.h x-python.h x-lisp.h x-elisp.h x-librep.h \ -x-smalltalk.h x-java.h x-properties.h x-csharp.h x-awk.h x-ycp.h x-tcl.h \ -x-perl.h x-php.h x-stringtable.h x-rst.h x-glade.h +x-scheme.h x-smalltalk.h x-java.h x-properties.h x-csharp.h x-awk.h x-ycp.h \ +x-tcl.h x-perl.h x-php.h x-stringtable.h x-rst.h x-glade.h EXTRA_DIST += FILES project-id ChangeLog.0 @@ -105,9 +105,9 @@ read-properties.c read-stringtable.c open-po.c dir-list.c str-list.c # xgettext and msgfmt deal with format strings. FORMAT_SOURCE = format.c format-invalid.h \ format-c.c format-sh.c format-python.c format-lisp.c format-elisp.c \ -format-librep.c format-java.c format-csharp.c format-awk.c format-pascal.c \ -format-ycp.c format-tcl.c format-perl.c format-perl-brace.c format-php.c \ -format-gcc-internal.c format-qt.c +format-librep.c format-scheme.c format-java.c format-csharp.c format-awk.c \ +format-pascal.c format-ycp.c format-tcl.c format-perl.c format-perl-brace.c \ +format-php.c format-gcc-internal.c format-qt.c # libgettextsrc contains all code that is needed by at least two programs. libgettextsrc_la_SOURCES = \ @@ -138,9 +138,9 @@ msgmerge_SOURCES = msgmerge.c plural-count.c msgunfmt_SOURCES = msgunfmt.c \ read-mo.c read-java.c read-csharp.c read-resources.c read-tcl.c xgettext_SOURCES = xgettext.c \ - x-c.c x-po.c x-sh.c x-python.c x-lisp.c x-elisp.c x-librep.c x-smalltalk.c \ - x-java.c x-csharp.c x-awk.c x-ycp.c x-tcl.c x-perl.c x-php.c x-rst.c \ - x-glade.c + x-c.c x-po.c x-sh.c x-python.c x-lisp.c x-elisp.c x-librep.c x-scheme.c \ + x-smalltalk.c x-java.c x-csharp.c x-awk.c x-ycp.c x-tcl.c x-perl.c x-php.c \ + x-rst.c x-glade.c msgattrib_SOURCES = msgattrib.c msgcat_SOURCES = msgcat.c msgcomm_SOURCES = msgcomm.c diff --git a/gettext-tools/src/Makefile.msvc b/gettext-tools/src/Makefile.msvc index 373ed42..893d45a 100644 --- a/gettext-tools/src/Makefile.msvc +++ b/gettext-tools/src/Makefile.msvc @@ -138,6 +138,7 @@ OBJECTS = \ format-lisp.obj \ format-elisp.obj \ format-librep.obj \ + format-scheme.obj \ format-java.obj \ format-csharp.obj \ format-awk.obj \ @@ -154,7 +155,7 @@ msgcmp_OBJECTS = msgcmp.obj msgfmt_OBJECTS = msgfmt.obj write-mo.obj write-java.obj write-csharp.obj write-resources.obj write-tcl.obj write-qt.obj plural-eval.obj msgmerge_OBJECTS = msgmerge.obj plural-count.obj msgunfmt_OBJECTS = msgunfmt.obj read-mo.obj read-java.obj read-csharp.obj read-resources.obj read-tcl.obj -xgettext_OBJECTS = xgettext.obj x-c.obj x-po.obj x-sh.obj x-python.obj x-lisp.obj x-elisp.obj x-librep.obj x-smalltalk.obj x-java.obj x-csharp.obj x-awk.obj x-ycp.obj x-tcl.obj x-perl.obj x-php.obj x-rst.obj x-glade.obj +xgettext_OBJECTS = xgettext.obj x-c.obj x-po.obj x-sh.obj x-python.obj x-lisp.obj x-elisp.obj x-librep.obj x-scheme.obj x-smalltalk.obj x-java.obj x-csharp.obj x-awk.obj x-ycp.obj x-tcl.obj x-perl.obj x-php.obj x-rst.obj x-glade.obj msgattrib_OBJECTS = msgattrib.obj msgcat_OBJECTS = msgcat.obj msgcomm_OBJECTS = msgcomm.obj @@ -272,6 +273,9 @@ format-elisp.obj : format-elisp.c format-librep.obj : format-librep.c $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c format-librep.c +format-scheme.obj : format-scheme.c + $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c format-scheme.c + format-java.obj : format-java.c $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c format-java.c @@ -399,6 +403,9 @@ x-elisp.obj : x-elisp.c x-librep.obj : x-librep.c $(CC) $(INCLUDES) $(CFLAGS) -c x-librep.c +x-scheme.obj : x-scheme.c + $(CC) $(INCLUDES) $(CFLAGS) -c x-scheme.c + x-smalltalk.obj : x-smalltalk.c $(CC) $(INCLUDES) $(CFLAGS) -c x-smalltalk.c diff --git a/gettext-tools/src/Makefile.vms b/gettext-tools/src/Makefile.vms index 509d485..38a2e27 100644 --- a/gettext-tools/src/Makefile.vms +++ b/gettext-tools/src/Makefile.vms @@ -84,6 +84,7 @@ OBJECTS = \ format-lisp.obj, \ format-elisp.obj, \ format-librep.obj, \ + format-scheme.obj, \ format-java.obj, \ format-csharp.obj, \ format-awk.obj, \ @@ -100,7 +101,7 @@ msgcmp_OBJECTS = msgcmp.obj msgfmt_OBJECTS = msgfmt.obj, write-mo.obj, write-java.obj, write-csharp.obj, write-resources.obj, write-tcl.obj, write-qt.obj, plural-eval.obj msgmerge_OBJECTS = msgmerge.obj, plural-count.obj msgunfmt_OBJECTS = msgunfmt.obj, read-mo.obj, read-java.obj, read-csharp.obj, read-resources.obj, read-tcl.obj -xgettext_OBJECTS = xgettext.obj, x-c.obj, x-po.obj, x-sh.obj, x-python.obj, x-lisp.obj, x-elisp.obj, x-librep.obj, x-smalltalk.obj, x-java.obj, x-csharp.obj, x-awk.obj, x-ycp.obj, x-tcl.obj, x-perl.obj, x-php.obj, x-rst.obj, x-glade.obj +xgettext_OBJECTS = xgettext.obj, x-c.obj, x-po.obj, x-sh.obj, x-python.obj, x-lisp.obj, x-elisp.obj, x-librep.obj, x-scheme.obj, x-smalltalk.obj, x-java.obj, x-csharp.obj, x-awk.obj, x-ycp.obj, x-tcl.obj, x-perl.obj, x-php.obj, x-rst.obj, x-glade.obj msgattrib_OBJECTS = msgattrib.obj msgcat_OBJECTS = msgcat.obj msgcomm_OBJECTS = msgcomm.obj @@ -216,6 +217,9 @@ format-elisp.obj : format-elisp.c format-librep.obj : format-librep.c $(CC) $(INCLUDES) $(CFLAGS) /define=($(DEFS)) format-librep.c +format-scheme.obj : format-scheme.c + $(CC) $(INCLUDES) $(CFLAGS) /define=($(DEFS)) format-scheme.c + format-java.obj : format-java.c $(CC) $(INCLUDES) $(CFLAGS) /define=($(DEFS)) format-java.c @@ -329,6 +333,9 @@ x-elisp.obj : x-elisp.c x-librep.obj : x-librep.c $(CC) $(INCLUDES) $(CFLAGS) /define=($(DEFS)) x-librep.c +x-scheme.obj : x-scheme.c + $(CC) $(INCLUDES) $(CFLAGS) /define=($(DEFS)) x-scheme.c + x-smalltalk.obj : x-smalltalk.c $(CC) $(INCLUDES) $(CFLAGS) /define=($(DEFS)) x-smalltalk.c diff --git a/gettext-tools/src/format.c b/gettext-tools/src/format.c index 38d9be7..6ec901c 100644 --- a/gettext-tools/src/format.c +++ b/gettext-tools/src/format.c @@ -41,6 +41,7 @@ struct formatstring_parser *formatstring_parsers[NFORMATS] = /* format_lisp */ &formatstring_lisp, /* format_elisp */ &formatstring_elisp, /* format_librep */ &formatstring_librep, + /* format_scheme */ &formatstring_scheme, /* format_smalltalk */ &formatstring_smalltalk, /* format_java */ &formatstring_java, /* format_csharp */ &formatstring_csharp, diff --git a/gettext-tools/src/format.h b/gettext-tools/src/format.h index cbd9f57..5f9dc28 100644 --- a/gettext-tools/src/format.h +++ b/gettext-tools/src/format.h @@ -75,6 +75,7 @@ extern DLL_VARIABLE struct formatstring_parser formatstring_python; extern DLL_VARIABLE struct formatstring_parser formatstring_lisp; extern DLL_VARIABLE struct formatstring_parser formatstring_elisp; extern DLL_VARIABLE struct formatstring_parser formatstring_librep; +extern DLL_VARIABLE struct formatstring_parser formatstring_scheme; extern DLL_VARIABLE struct formatstring_parser formatstring_smalltalk; extern DLL_VARIABLE struct formatstring_parser formatstring_java; extern DLL_VARIABLE struct formatstring_parser formatstring_csharp; diff --git a/gettext-tools/src/message.c b/gettext-tools/src/message.c index c75aa16..27de7bf 100644 --- a/gettext-tools/src/message.c +++ b/gettext-tools/src/message.c @@ -41,6 +41,7 @@ const char *const format_language[NFORMATS] = /* format_lisp */ "lisp", /* format_elisp */ "elisp", /* format_librep */ "librep", + /* format_scheme */ "scheme", /* format_smalltalk */ "smalltalk", /* format_java */ "java", /* format_csharp */ "csharp", @@ -64,6 +65,7 @@ const char *const format_language_pretty[NFORMATS] = /* format_lisp */ "Lisp", /* format_elisp */ "Emacs Lisp", /* format_librep */ "librep", + /* format_scheme */ "Scheme", /* format_smalltalk */ "Smalltalk", /* format_java */ "Java", /* format_csharp */ "C#", diff --git a/gettext-tools/src/message.h b/gettext-tools/src/message.h index ebbb848..e9b6aed 100644 --- a/gettext-tools/src/message.h +++ b/gettext-tools/src/message.h @@ -47,6 +47,7 @@ enum format_type format_lisp, format_elisp, format_librep, + format_scheme, format_smalltalk, format_java, format_csharp, @@ -60,7 +61,7 @@ enum format_type format_gcc_internal, format_qt }; -#define NFORMATS 19 /* Number of format_type enum values. */ +#define NFORMATS 20 /* Number of format_type enum values. */ extern DLL_VARIABLE const char *const format_language[NFORMATS]; extern DLL_VARIABLE const char *const format_language_pretty[NFORMATS]; diff --git a/gettext-tools/src/xgettext.c b/gettext-tools/src/xgettext.c index dba5ff4..e63bdc2 100644 --- a/gettext-tools/src/xgettext.c +++ b/gettext-tools/src/xgettext.c @@ -77,6 +77,7 @@ extern "C" { #include "x-lisp.h" #include "x-elisp.h" #include "x-librep.h" +#include "x-scheme.h" #include "x-smalltalk.h" #include "x-java.h" #include "x-properties.h" @@ -144,6 +145,7 @@ static flag_context_list_table_ty flag_table_python; static flag_context_list_table_ty flag_table_lisp; static flag_context_list_table_ty flag_table_elisp; static flag_context_list_table_ty flag_table_librep; +static flag_context_list_table_ty flag_table_scheme; static flag_context_list_table_ty flag_table_java; static flag_context_list_table_ty flag_table_csharp; static flag_context_list_table_ty flag_table_awk; @@ -299,6 +301,7 @@ main (int argc, char *argv[]) init_flag_table_lisp (); init_flag_table_elisp (); init_flag_table_librep (); + init_flag_table_scheme (); init_flag_table_java (); init_flag_table_csharp (); init_flag_table_awk (); @@ -321,6 +324,7 @@ main (int argc, char *argv[]) x_lisp_extract_all (); x_elisp_extract_all (); x_librep_extract_all (); + x_scheme_extract_all (); x_java_extract_all (); x_csharp_extract_all (); x_awk_extract_all (); @@ -384,6 +388,7 @@ main (int argc, char *argv[]) x_lisp_keyword (optarg); x_elisp_keyword (optarg); x_librep_keyword (optarg); + x_scheme_keyword (optarg); x_java_keyword (optarg); x_csharp_keyword (optarg); x_awk_keyword (optarg); @@ -754,7 +759,7 @@ Choice of input file language:\n")); printf (_("\ -L, --language=NAME recognise the specified language\n\ (C, C++, ObjectiveC, PO, Shell, Python, Lisp,\n\ - EmacsLisp, librep, Smalltalk, Java,\n\ + EmacsLisp, librep, Scheme, Smalltalk, Java,\n\ JavaProperties, C#, awk, YCP, Tcl, Perl, PHP,\n\ GCC-source, NXStringTable, RST, Glade)\n")); printf (_("\ @@ -786,22 +791,22 @@ Language specific options:\n")); -a, --extract-all extract all strings\n")); printf (_("\ (only languages C, C++, ObjectiveC, Shell,\n\ - Python, Lisp, EmacsLisp, librep, Java, C#, awk,\n\ - Tcl, Perl, PHP, GCC-source, Glade)\n")); + Python, Lisp, EmacsLisp, librep, Scheme, Java,\n\ + C#, awk, Tcl, Perl, PHP, GCC-source, Glade)\n")); printf (_("\ -k, --keyword[=WORD] additional keyword to be looked for (without\n\ WORD means not to use default keywords)\n")); printf (_("\ (only languages C, C++, ObjectiveC, Shell,\n\ - Python, Lisp, EmacsLisp, librep, Java, C#, awk,\n\ - Tcl, Perl, PHP, GCC-source, Glade)\n")); + Python, Lisp, EmacsLisp, librep, Scheme, Java,\n\ + C#, awk, Tcl, Perl, PHP, GCC-source, Glade)\n")); printf (_("\ --flag=WORD:ARG:FLAG additional flag for strings inside the argument\n\ number ARG of keyword WORD\n")); printf (_("\ (only languages C, C++, ObjectiveC, Shell,\n\ - Python, Lisp, EmacsLisp, librep, Java, C#, awk,\n\ - YCP, Tcl, Perl, PHP, GCC-source)\n")); + Python, Lisp, EmacsLisp, librep, Scheme, Java,\n\ + C#, awk, YCP, Tcl, Perl, PHP, GCC-source)\n")); printf (_("\ -T, --trigraphs understand ANSI C trigraphs for input\n")); printf (_("\ @@ -1383,6 +1388,11 @@ xgettext_record_flag (const char *optionstring) name_start, name_end, argnum, value, pass); break; + case format_scheme: + flag_context_list_table_insert (&flag_table_scheme, 0, + name_start, name_end, + argnum, value, pass); + break; case format_smalltalk: break; case format_java: @@ -2211,6 +2221,7 @@ language_to_extractor (const char *name) SCANNERS_LISP SCANNERS_ELISP SCANNERS_LIBREP + SCANNERS_SCHEME SCANNERS_SMALLTALK SCANNERS_JAVA SCANNERS_PROPERTIES @@ -2276,6 +2287,7 @@ extension_to_language (const char *extension) EXTENSIONS_LISP EXTENSIONS_ELISP EXTENSIONS_LIBREP + EXTENSIONS_SCHEME EXTENSIONS_SMALLTALK EXTENSIONS_JAVA EXTENSIONS_PROPERTIES diff --git a/gettext-tools/tests/ChangeLog b/gettext-tools/tests/ChangeLog index 6b65a43..8a556ad 100644 --- a/gettext-tools/tests/ChangeLog +++ b/gettext-tools/tests/ChangeLog @@ -1,3 +1,12 @@ +2005-01-16 Bruno Haible <bruno@clisp.org> + + Support for Scheme. + * format-scheme-1: New file. + * format-scheme-2: New file. + * xgettext-scheme-1: New file. + * lang-guile: New file. + * Makefile.am (TESTS): Add them. + 2005-01-08 Bruno Haible <bruno@clisp.org> * msggrep-4: Remove unportability notes. diff --git a/gettext-tools/tests/Makefile.am b/gettext-tools/tests/Makefile.am index f448010..a57272c 100644 --- a/gettext-tools/tests/Makefile.am +++ b/gettext-tools/tests/Makefile.am @@ -77,6 +77,7 @@ TESTS = gettext-1 gettext-2 \ xgettext-po-1 \ xgettext-properties-1 \ xgettext-python-1 xgettext-python-2 \ + xgettext-scheme-1 \ xgettext-sh-1 xgettext-sh-2 xgettext-sh-3 \ xgettext-smalltalk-1 \ xgettext-stringtable-1 \ @@ -97,14 +98,15 @@ TESTS = gettext-1 gettext-2 \ format-perl-brace-1 format-perl-brace-2 \ format-perl-mixed-1 format-perl-mixed-2 \ format-qt-1 format-qt-2 \ + format-scheme-1 format-scheme-2 \ format-sh-1 format-sh-2 \ format-tcl-1 format-tcl-2 \ format-ycp-1 format-ycp-2 \ plural-1 plural-2 \ lang-c lang-c++ lang-objc lang-sh lang-bash lang-python-1 \ - lang-python-2 lang-clisp lang-elisp lang-librep lang-smalltalk \ - lang-java lang-csharp lang-gawk lang-pascal lang-ycp lang-tcl \ - lang-perl-1 lang-perl-2 lang-php lang-po lang-rst + lang-python-2 lang-clisp lang-elisp lang-librep lang-guile \ + lang-smalltalk lang-java lang-csharp lang-gawk lang-pascal \ + lang-ycp lang-tcl lang-perl-1 lang-perl-2 lang-php lang-po lang-rst EXTRA_DIST += $(TESTS) \ test.mo xg-c-1.ok.po mex-test2.ok msguniq-a.in msguniq-a.inp \ |