Package: gcl Version: 2.6.6-1 Severity: wishlist Tags: patch l10n Using the "new" gettext format for debconf templates helps for templates translations. For instance, detecting outdated or untranslated strings becomes considerably easier. It also keeps track of who did which translation.
Patch description: ------------------ The attached patch does the required modifications: - debian/control modification for dependencies: build-dep: debhelper (>= 4.1.16) which depends on po-debconf depend: debconf (>= 1.2.0) since old versions have problems with templates specifying the encoding of their content - Add 'debconf-updatepo' to the clean target of your debian/rules (to make sure that the relevant files are ready for translation in the distributed source packages, and thus help translators) - execute "debconf-gettextize debian/*templates*". This does: - generate po/ directory containing all the translation mecanism - change the template file to mark some strings as translatable by putting a _ before the field name. - mark the right strings as translatable in the templates. This is a manual check to make sure that fields containing stuff which cannot be translated such as kernel module name, and the one not shown to the users are not marked as translatable. - removed files left by debconf-gettextize (*.templates.XX which are the old-style translations and now live in debian/po/XX.po) The previously existing translation were not lost in the process, but automatically converted to po files. You may however want to ask your previous translator to review them and update them if needed. Also ask them to add their name in the header of the po files, to ease future maintainance and update of the file. For more details, see po-debconf documentation, especially "man 7 po-debconf" Aditionally I had to add an extra dependacy to the clean target. For the templates to update correctly the final templates files must exist when debconf-updatepo is invoked. The way you build your package is not very po-debconf friendly. I was unable to make both the gcl and gclcvs templates get included for translations without fiddling too much with your rules files. A possible solution could be to have both templates as fixed files. Another one, better IMHO, is to avoid using the @EXT@ replacement in the translatable parts of the templates. In that way the same translations could be used for both packages. About backports: ---------------- Please note that the suggested modifications will make your package a little bit harder to backport to earlier Debian releases. If this is a concern to you, you may try to adopt the method used by the openssh package and detailed by Colin Watson in http://lists.debian.org/debian-i18n/2003/debian-i18n-200307/msg00026.html This patch does not includes this method as this would make it too invasive, IMHO. So, preserving backportability is up to you... Stylistic considerations: ------------------------- The templates of your package may be easily improved by applying the advices contained at the following address: http://people.debian.org/~bubulle/dtsg/dtsg.txt Don't get me wrong, I don't want to criticize, I just want the template to reach a translatable state (ie quite stable) rather soon. Future: ------- Once the switch is achieved, and style improvements are done (if any), I guess that you will receive translations of your templates rather soon. They will consist in XX.po files where XX is the code of the language they contain. Simply put them to debian/po, add a changelog entry, and your package is ready for rebuilding and uploading after the usual checks. If you modify your templates in the future, no action is absolutely mandatory from you to take care of the translations (outdated translations will be automatically discarded). But it is nicer to your translators and your not english speaking users to include the updated translations in the same upload. For that, run debconf-updatepo, and mail each translator the XX.po file they provided you. Their adress can be found in the headers of the po file. Wait a few days so that they can do their work, and put the new version of the po file back in position in debian/po before upload. Thanks for helping the translators, and thus your non english speaker end-users. -- System Information: Debian Release: 3.1 APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental') Architecture: i386 (i686) Kernel: Linux 2.6.10-1-k7 Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1) Versions of packages gcl depends on: ii binutils-dev 2.15-5 The GNU binary utilities (BFD deve ii debconf [debconf-2.0] 1.4.45 Debian configuration management sy ii gcc 4:3.3.5-1 The GNU C compiler ii libc6 2.3.2.ds1-20 GNU C Library: Shared libraries an ii libgmp3 4.1.4-5 Multiprecision arithmetic library ii libncurses5 5.4-4 Shared libraries for terminal hand ii libreadline4 4.3-15 GNU readline and history libraries ii libx11-6 4.3.0.dfsg.1-10 X Window System protocol client li ii tcl8.4 8.4.9-1 Tcl (the Tool Command Language) v8 ii tk8.4 8.4.9-1 Tk toolkit for Tcl and X11, v8.4 - ii xlibs 4.3.0.dfsg.1-10 X Keyboard Extension (XKB) configu -- debconf information: * gcl/default_gcl_ansi: * gcl/default_gcl_prof: -- Lucas Wall <[EMAIL PROTECTED]> .''`. Buenos Aires, Argentina : :ø : Debian GNU/Linux http://www.kadath.com.ar `. `' http://www.debian.org PGP: 1024D/84FB46D6 `- 5D25 528A 83AB 489B 356A http://people.debian.org/~lwall 4087 BC9B 4733 84FB 46D6 mailto:[EMAIL PROTECTED]
diff -ruN orig/gcl-2.6.6/debian/control gcl-2.6.6/debian/control --- orig/gcl-2.6.6/debian/control 2004-08-12 13:52:42.000000000 -0300 +++ gcl-2.6.6/debian/control 2005-02-19 01:37:10.000000000 -0300 @@ -2,12 +2,12 @@ Section: interpreters Priority: optional Maintainer: Camm Maguire <[EMAIL PROTECTED]> -Build-Depends: debhelper ( >= 4.1.0 ), emacs21 | emacsen, libreadline4-dev, m4, tk8.4-dev, tetex-bin, texinfo, binutils-dev, libgmp3-dev, autotools-dev +Build-Depends: debhelper (>= 4.1.16), emacs21 | emacsen, libreadline4-dev, m4, tk8.4-dev, tetex-bin, texinfo, binutils-dev, libgmp3-dev, autotools-dev Standards-Version: 3.6.1 Package: gcl Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends}, ${gcc}, ${binutils} +Depends: ${shlibs:Depends}, ${misc:Depends}, ${gcc}, ${binutils}, debconf (>= 1.2.0) Suggests: gcl-doc Description: GNU Common Lisp compiler GNU Common Lisp (GCL) is a Common Lisp compiler and interpreter diff -ruN orig/gcl-2.6.6/debian/control. gcl-2.6.6/debian/control. --- orig/gcl-2.6.6/debian/control. 2004-08-12 13:47:47.000000000 -0300 +++ gcl-2.6.6/debian/control. 2005-02-19 01:27:05.000000000 -0300 @@ -2,12 +2,12 @@ Section: interpreters Priority: optional Maintainer: Camm Maguire <[EMAIL PROTECTED]> -Build-Depends: debhelper ( >= 4.1.0 ), emacs21 | emacsen, libreadline4-dev, m4, tk8.4-dev, tetex-bin, texinfo, binutils-dev, libgmp3-dev, autotools-dev +Build-Depends: debhelper (>= 4.1.16), emacs21 | emacsen, libreadline4-dev, m4, tk8.4-dev, tetex-bin, texinfo, binutils-dev, libgmp3-dev, autotools-dev Standards-Version: 3.6.1 Package: gcl Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends}, ${gcc}, ${binutils} +Depends: ${shlibs:Depends}, ${misc:Depends}, ${gcc}, ${binutils}, debconf (>= 1.2.0) Suggests: gcl-doc Description: GNU Common Lisp compiler GNU Common Lisp (GCL) is a Common Lisp compiler and interpreter diff -ruN orig/gcl-2.6.6/debian/control.cvs gcl-2.6.6/debian/control.cvs --- orig/gcl-2.6.6/debian/control.cvs 2004-08-12 13:47:47.000000000 -0300 +++ gcl-2.6.6/debian/control.cvs 2005-02-19 01:27:30.000000000 -0300 @@ -2,12 +2,12 @@ Section: interpreters Priority: optional Maintainer: Camm Maguire <[EMAIL PROTECTED]> -Build-Depends: debhelper ( >= 4.1.0 ), emacs21 | emacsen, libreadline4-dev, m4, tk8.4-dev, tetex-bin, texinfo, binutils-dev, libgmp3-dev, autotools-dev +Build-Depends: debhelper (>= 4.1.16), emacs21 | emacsen, libreadline4-dev, m4, tk8.4-dev, tetex-bin, texinfo, binutils-dev, libgmp3-dev, autotools-dev Standards-Version: 3.6.1 Package: gclcvs Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends}, ${gcc}, ${binutils} +Depends: ${shlibs:Depends}, ${misc:Depends}, ${gcc}, ${binutils}, debconf (>= 1.2.0) Suggests: gclcvs-doc Description: GNU Common Lisp compiler, CVS snapshot GNU Common Lisp (GCL) is a Common Lisp compiler and interpreter diff -ruN orig/gcl-2.6.6/debian/in.gcl.templates gcl-2.6.6/debian/in.gcl.templates --- orig/gcl-2.6.6/debian/in.gcl.templates 2004-08-05 19:01:43.000000000 -0300 +++ gcl-2.6.6/debian/in.gcl.templates 2005-02-19 01:25:33.000000000 -0300 @@ -1,32 +1,32 @@ Template: [EMAIL PROTECTED]@/default_gcl_ansi Type: boolean -Description: Use the work-in-progress ansi build by default - GCL is one of the oldest free common lisp systems still in use. - Several production systems have used it for over a decade. The common - lisp standard in effect when GCL was first released is known as - "Common Lisp, the Language" (CLtL1) after a book by Steele of the same - name providing this specification. Subsequently, a much expanded - standard was adopted by the American National Standards Institute - (ANSI), which is still considered the definitive common lisp language - specification to this day. GCL is in the process of providing an ANSI - compliant image in addition to its traditional CLtL1 image still in - production use. Setting this variable will determine which image you - will use by default on executing '[EMAIL PROTECTED]@'. You can locally override this - choice by setting the GCL_ANSI environment variable to any non-empty - string for the ANSI build, and to the empty string for the CLtL1 - build, e.g. GCL_ANSI=t [EMAIL PROTECTED]@. You may be interested in reviewing the - ANSI test results sketching the level of compliance achieved thus far - in /usr/share/doc/[EMAIL PROTECTED]@/test_results.gz. The flavor of the build in force - will be reported in the initial startup banner. +_Description: Use the work-in-progress ansi build by default + GCL is one of the oldest free common lisp systems still in use. Several + production systems have used it for over a decade. The common lisp + standard in effect when GCL was first released is known as "Common Lisp, + the Language" (CLtL1) after a book by Steele of the same name providing + this specification. Subsequently, a much expanded standard was adopted by + the American National Standards Institute (ANSI), which is still + considered the definitive common lisp language specification to this day. + GCL is in the process of providing an ANSI compliant image in addition to + its traditional CLtL1 image still in production use. Setting this + variable will determine which image you will use by default on executing + '[EMAIL PROTECTED]@'. You can locally override this choice by setting the GCL_ANSI + environment variable to any non-empty string for the ANSI build, and to + the empty string for the CLtL1 build, e.g. GCL_ANSI=t [EMAIL PROTECTED]@. You may + be interested in reviewing the ANSI test results sketching the level of + compliance achieved thus far in /usr/share/doc/[EMAIL PROTECTED]@/test_results.gz. + The flavor of the build in force will be reported in the initial startup + banner. Template: [EMAIL PROTECTED]@/default_gcl_prof Type: boolean -Description: Use the profiling build by default - GCL now has support for profiling via gprof. Please see the - documentation for si::gprof-start and si::gprof-quit for details. - This build is slower than builds without gprof support, so this is not - recommended for final production use. You can locally override this - choice by setting the GCL_PROF environment variable to any non-empty - string for profiling support, and to the empty string for the more - optimized builds, e.g. GCL_PROF=t [EMAIL PROTECTED]@. If profiling is enabled, this will - be reported in the initial startup banner. +_Description: Use the profiling build by default + GCL now has support for profiling via gprof. Please see the documentation + for si::gprof-start and si::gprof-quit for details. This build is slower + than builds without gprof support, so this is not recommended for final + production use. You can locally override this choice by setting the + GCL_PROF environment variable to any non-empty string for profiling + support, and to the empty string for the more optimized builds, e.g. + GCL_PROF=t [EMAIL PROTECTED]@. If profiling is enabled, this will be reported in + the initial startup banner. diff -ruN orig/gcl-2.6.6/debian/po/POTFILES.in gcl-2.6.6/debian/po/POTFILES.in --- orig/gcl-2.6.6/debian/po/POTFILES.in 1969-12-31 21:00:00.000000000 -0300 +++ gcl-2.6.6/debian/po/POTFILES.in 2005-02-19 01:37:05.000000000 -0300 @@ -0,0 +1 @@ +[type: gettext/rfc822deb] gcl.templates diff -ruN orig/gcl-2.6.6/debian/po/templates.pot gcl-2.6.6/debian/po/templates.pot --- orig/gcl-2.6.6/debian/po/templates.pot 1969-12-31 21:00:00.000000000 -0300 +++ gcl-2.6.6/debian/po/templates.pot 2005-02-19 01:34:10.000000000 -0300 @@ -0,0 +1,72 @@ +# +# Translators, if you are not familiar with the PO format, gettext +# documentation is worth reading, especially sections dedicated to +# this format, e.g. by running: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# +# Some information specific to po-debconf are available at +# /usr/share/doc/po-debconf/README-trans +# or http://www.debian.org/intl/l10n/po-debconf/README-trans +# +# Developers do not need to manually edit POT or PO files. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-02-19 01:34-0300\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <[EMAIL PROTECTED]>\n" +"Language-Team: LANGUAGE <[EMAIL PROTECTED]>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: boolean +#. Description +#: ../gcl.templates:3 +msgid "Use the work-in-progress ansi build by default" +msgstr "" + +#. Type: boolean +#. Description +#: ../gcl.templates:3 +msgid "" +"GCL is one of the oldest free common lisp systems still in use. Several " +"production systems have used it for over a decade. The common lisp standard " +"in effect when GCL was first released is known as \"Common Lisp, the Language" +"\" (CLtL1) after a book by Steele of the same name providing this " +"specification. Subsequently, a much expanded standard was adopted by the " +"American National Standards Institute (ANSI), which is still considered the " +"definitive common lisp language specification to this day. GCL is in the " +"process of providing an ANSI compliant image in addition to its traditional " +"CLtL1 image still in production use. Setting this variable will determine " +"which image you will use by default on executing 'gcl'. You can locally " +"override this choice by setting the GCL_ANSI environment variable to any non-" +"empty string for the ANSI build, and to the empty string for the CLtL1 " +"build, e.g. GCL_ANSI=t gcl. You may be interested in reviewing the ANSI " +"test results sketching the level of compliance achieved thus far in /usr/" +"share/doc/gcl/test_results.gz. The flavor of the build in force will be " +"reported in the initial startup banner." +msgstr "" + +#. Type: boolean +#. Description +#: ../gcl.templates:24 +msgid "Use the profiling build by default" +msgstr "" + +#. Type: boolean +#. Description +#: ../gcl.templates:24 +msgid "" +"GCL now has support for profiling via gprof. Please see the documentation " +"for si::gprof-start and si::gprof-quit for details. This build is slower " +"than builds without gprof support, so this is not recommended for final " +"production use. You can locally override this choice by setting the GCL_PROF " +"environment variable to any non-empty string for profiling support, and to " +"the empty string for the more optimized builds, e.g. GCL_PROF=t gcl. If " +"profiling is enabled, this will be reported in the initial startup banner." +msgstr "" diff -ruN orig/gcl-2.6.6/debian/rules gcl-2.6.6/debian/rules --- orig/gcl-2.6.6/debian/rules 2004-08-12 16:57:26.000000000 -0300 +++ gcl-2.6.6/debian/rules 2005-02-19 01:37:01.000000000 -0300 @@ -134,10 +134,11 @@ debian/control: debian/control.rm cp debian/control.$(EXT) debian/control -clean: debian/control +clean: debian/control debian/gcl.templates dh_testdir dh_testroot rm -f *stamp + debconf-updatepo -$(MAKE) clean
signature.asc
Description: Digital signature