Commit f11235dc authored by Dimitri van Heesch's avatar Dimitri van Heesch

Release-1.2.11-20011111

parent 621bb644
...@@ -25,7 +25,7 @@ Doxygen has built-in support for multiple languages. This means ...@@ -25,7 +25,7 @@ Doxygen has built-in support for multiple languages. This means
that the text fragments that doxygen generates can be produced in that the text fragments that doxygen generates can be produced in
languages other than English (the default) at configuration time. languages other than English (the default) at configuration time.
Currently (version 1.2.11-20011021), 24 languages Currently (version 1.2.11-20011111), 24 languages
are supported (sorted alphabetically): are supported (sorted alphabetically):
Brazilian Portuguese, Chinese, Croatian, Czech, Danish, Brazilian Portuguese, Chinese, Croatian, Czech, Danish,
Dutch, English, Finnish, French, German, Dutch, English, Finnish, French, German,
...@@ -72,7 +72,7 @@ when the translator was updated. ...@@ -72,7 +72,7 @@ when the translator was updated.
<TD>Czech</TD> <TD>Czech</TD>
<TD>Petr P&#x0159;ikryl</TD> <TD>Petr P&#x0159;ikryl</TD>
<TD>prikrylp@NOSPAM.skil.cz</TD> <TD>prikrylp@NOSPAM.skil.cz</TD>
<TD>1.2.11</TD> <TD>up-to-date</TD>
</TR> </TR>
<TR BGCOLOR="#ffffff"> <TR BGCOLOR="#ffffff">
<TD>Danish</TD> <TD>Danish</TD>
...@@ -162,7 +162,7 @@ when the translator was updated. ...@@ -162,7 +162,7 @@ when the translator was updated.
<TD>Russian</TD> <TD>Russian</TD>
<TD>Alexandr Chelpanov</TD> <TD>Alexandr Chelpanov</TD>
<TD>cav@NOSPAM.cryptopro.ru</TD> <TD>cav@NOSPAM.cryptopro.ru</TD>
<TD>1.2.11</TD> <TD>up-to-date</TD>
</TR> </TR>
<TR BGCOLOR="#ffffff"> <TR BGCOLOR="#ffffff">
<TD>Slovak</TD> <TD>Slovak</TD>
...@@ -212,7 +212,7 @@ when the translator was updated. ...@@ -212,7 +212,7 @@ when the translator was updated.
\hline \hline
Croatian & Boris Bralo & {\tt boris.bralo@zg.tel.hr} & 1.2.11 \\ Croatian & Boris Bralo & {\tt boris.bralo@zg.tel.hr} & 1.2.11 \\
\hline \hline
Czech & Petr P\v{r}ikryl & {\tt prikrylp@skil.cz} & 1.2.11 \\ Czech & Petr P\v{r}ikryl & {\tt prikrylp@skil.cz} & up-to-date \\
\hline \hline
Danish & Erik S\o{}e S\o{}rensen & {\tt erik@mail.nu} & 1.2.7 \\ Danish & Erik S\o{}e S\o{}rensen & {\tt erik@mail.nu} & 1.2.7 \\
\hline \hline
...@@ -244,7 +244,7 @@ when the translator was updated. ...@@ -244,7 +244,7 @@ when the translator was updated.
\hline \hline
Romanian & Alexandru Iosup & {\tt aiosup@yahoo.com} & 1.2.1 \\ Romanian & Alexandru Iosup & {\tt aiosup@yahoo.com} & 1.2.1 \\
\hline \hline
Russian & Alexandr Chelpanov & {\tt cav@cryptopro.ru} & 1.2.11 \\ Russian & Alexandr Chelpanov & {\tt cav@cryptopro.ru} & up-to-date \\
\hline \hline
Slovak & Stanislav Kudl\'{a}\v{c} & {\tt qwerty1@pobox.sk} & 1.2.11 \\ Slovak & Stanislav Kudl\'{a}\v{c} & {\tt qwerty1@pobox.sk} & 1.2.11 \\
\hline \hline
...@@ -331,21 +331,23 @@ Just follow these steps: ...@@ -331,21 +331,23 @@ Just follow these steps:
<h3>Maintaining a language</h3> <h3>Maintaining a language</h3>
As new versions of doxygen appear, new sentences (\c trXxxx() New versions of doxygen may use new translated sentences. In such
methods) will be added to the \c Translator interface class. Of situation, the \c Translator class requires implementation of new
course, these need to be translated as well (otherwise doxygen methods -- its interface changes. Of course, the English
wouldn't even compile!). Waiting until all language maintainers sentences need to be translated to the other languages. At least,
have translated the new sentences and sent the results would not new methods have to be implemented by the language-related
be very practical. The following text describes the usage of translator class; otherwise, doxygen wouldn't even compile. Waiting
translator adapters to solve the problem. until all language maintainers have translated the new sentences and
sent the results would not be very practical. The following text
describes the usage of translator adapters to solve the problem.
<b>The role of Translator Adapters.</b> <b>The role of Translator Adapters.</b>
Whenever the \c Translator class interface changes in the new Whenever the \c Translator class interface changes in the new
release, the new class \c TranslatorAdapter_x_y_z is added to the \c release, the new class \c TranslatorAdapter_x_y_z is added to the \c
translator_adapter.h file (here x, y, and z are numbers that translator_adapter.h file (here x, y, and z are numbers that
correspond to the current version of doxygen). All translators that correspond to the current official version of doxygen). All
previously derived from the \c Translator class now derive from this translators that previously derived from the \c Translator class now
adapter class. derive from this adapter class.
The \c TranslatorAdapter_x_y_z class implements the new, required The \c TranslatorAdapter_x_y_z class implements the new, required
methods. If the new method replaces some similar but obsolete methods. If the new method replaces some similar but obsolete
...@@ -355,7 +357,7 @@ TranslatorAdapter_x_y_z class may use the obsolete method to get the ...@@ -355,7 +357,7 @@ TranslatorAdapter_x_y_z class may use the obsolete method to get the
result which is as close as possible to the older result in the result which is as close as possible to the older result in the
target language. If it is not possible, the result (the default target language. If it is not possible, the result (the default
translation) is obtained using the English translator, which is (by translation) is obtained using the English translator, which is (by
definition) always up to date. definition) always up-to-date.
<b>For example,</b> when the new \c trFile() method with <b>For example,</b> when the new \c trFile() method with
parameters (to determine the capitalization of the first letter and parameters (to determine the capitalization of the first letter and
...@@ -429,29 +431,25 @@ The translator adapter classes are chained so that the older ...@@ -429,29 +431,25 @@ The translator adapter classes are chained so that the older
translator adapter class uses the one-step-newer translator adapter translator adapter class uses the one-step-newer translator adapter
as the base class. The newer adapter does less \e adapting work as the base class. The newer adapter does less \e adapting work
than the older one. The oldest adapter class derives (indirectly) than the older one. The oldest adapter class derives (indirectly)
from all of the adapter classes. The newest adapter class derives from all of the adapter classes. The name of the adapter class is
directly from the abstract class \c Translator. chosen so that its suffix is derived from the previous official
version of doxygen that did not need the adapter. This way, one can
The name of the adapter class was chosen so that its suffix is say approximately, when the language translator class was last
derived from the previous version of doxygen. This way, one can say updated -- see details below.
approximately, when the language translator class was last updated
-- see details below. The newest adapter translator for CVS release The newest translator adapter derives from the abstract \c
(i.e. non official) is named \c TranslatorAdapterCVS. As it derives TranslatorAdapterBase class that derives directly from the abstract
only from the \c Translator class, it can be used only for language \c Translator class. It adds only the private English-translator
translator classes that were up-to-date in the time of the last member for easy implementation of the default translation inside the
release. adapter classes, and it also enforces implementation of one method
for noticing the user that the language translation is not up-to-date
Status of the translators that derive from the \c (because of that some sentences in the generated files may appear in
TranslatorAdapterCVS is named as <em>almost up-to-date</em>. English).
Its code is moved into the new \c Translator_x_y_z when new version
of doxygen is officially released.
Once the oldest adapter class is not used by any of the language Once the oldest adapter class is not used by any of the language
translators, it can be removed from the doxygen project. This also translators, it can be removed from the doxygen project. The
means, that there probably still is some language which uses the maintainers should try to reach the state with the minimal number of
oldest adapter. The maintainers should try to reach the state with translator adapter classes.
the minimal number of translator adapter classes.
<b>To simplify the maintenance of the language translator classes</b> <b>To simplify the maintenance of the language translator classes</b>
for the supported languages, the \c translator.pl perl for the supported languages, the \c translator.pl perl
...@@ -473,7 +471,6 @@ Of course, you are not forced to use the results of the script. You ...@@ -473,7 +471,6 @@ Of course, you are not forced to use the results of the script. You
can find the same information by looking at the adapter class and can find the same information by looking at the adapter class and
its base classes. its base classes.
<b>How should I update my language translator?</b> Firstly, you <b>How should I update my language translator?</b> Firstly, you
should be the language maintainer, or you should let him/her know should be the language maintainer, or you should let him/her know
about the changes. The following text was written for the language about the changes. The following text was written for the language
...@@ -525,7 +522,7 @@ can change the translator adapter base to the newer one. ...@@ -525,7 +522,7 @@ can change the translator adapter base to the newer one.
Do not blindly implement all methods that are implemented by your Do not blindly implement all methods that are implemented by your
translator adapter base class. The reason is that the adapter translator adapter base class. The reason is that the adapter
classes implement also obsolete methods. Another reason is that classes implement also obsolete methods. Another reason is that
some of the methods could become obsolete later. some of the methods could become obsolete from some newer adapter on.
*/ */
...@@ -104,21 +104,23 @@ Just follow these steps: ...@@ -104,21 +104,23 @@ Just follow these steps:
<h3>Maintaining a language</h3> <h3>Maintaining a language</h3>
As new versions of doxygen appear, new sentences (\c trXxxx() New versions of doxygen may use new translated sentences. In such
methods) will be added to the \c Translator interface class. Of situation, the \c Translator class requires implementation of new
course, these need to be translated as well (otherwise doxygen methods -- its interface changes. Of course, the English
wouldn't even compile!). Waiting until all language maintainers sentences need to be translated to the other languages. At least,
have translated the new sentences and sent the results would not new methods have to be implemented by the language-related
be very practical. The following text describes the usage of translator class; otherwise, doxygen wouldn't even compile. Waiting
translator adapters to solve the problem. until all language maintainers have translated the new sentences and
sent the results would not be very practical. The following text
describes the usage of translator adapters to solve the problem.
<b>The role of Translator Adapters.</b> <b>The role of Translator Adapters.</b>
Whenever the \c Translator class interface changes in the new Whenever the \c Translator class interface changes in the new
release, the new class \c TranslatorAdapter_x_y_z is added to the \c release, the new class \c TranslatorAdapter_x_y_z is added to the \c
translator_adapter.h file (here x, y, and z are numbers that translator_adapter.h file (here x, y, and z are numbers that
correspond to the current version of doxygen). All translators that correspond to the current official version of doxygen). All
previously derived from the \c Translator class now derive from this translators that previously derived from the \c Translator class now
adapter class. derive from this adapter class.
The \c TranslatorAdapter_x_y_z class implements the new, required The \c TranslatorAdapter_x_y_z class implements the new, required
methods. If the new method replaces some similar but obsolete methods. If the new method replaces some similar but obsolete
...@@ -128,7 +130,7 @@ TranslatorAdapter_x_y_z class may use the obsolete method to get the ...@@ -128,7 +130,7 @@ TranslatorAdapter_x_y_z class may use the obsolete method to get the
result which is as close as possible to the older result in the result which is as close as possible to the older result in the
target language. If it is not possible, the result (the default target language. If it is not possible, the result (the default
translation) is obtained using the English translator, which is (by translation) is obtained using the English translator, which is (by
definition) always up to date. definition) always up-to-date.
<b>For example,</b> when the new \c trFile() method with <b>For example,</b> when the new \c trFile() method with
parameters (to determine the capitalization of the first letter and parameters (to determine the capitalization of the first letter and
...@@ -202,29 +204,25 @@ The translator adapter classes are chained so that the older ...@@ -202,29 +204,25 @@ The translator adapter classes are chained so that the older
translator adapter class uses the one-step-newer translator adapter translator adapter class uses the one-step-newer translator adapter
as the base class. The newer adapter does less \e adapting work as the base class. The newer adapter does less \e adapting work
than the older one. The oldest adapter class derives (indirectly) than the older one. The oldest adapter class derives (indirectly)
from all of the adapter classes. The newest adapter class derives from all of the adapter classes. The name of the adapter class is
directly from the abstract class \c Translator. chosen so that its suffix is derived from the previous official
version of doxygen that did not need the adapter. This way, one can
The name of the adapter class was chosen so that its suffix is say approximately, when the language translator class was last
derived from the previous version of doxygen. This way, one can say updated -- see details below.
approximately, when the language translator class was last updated
-- see details below. The newest adapter translator for CVS release The newest translator adapter derives from the abstract \c
(i.e. non official) is named \c TranslatorAdapterCVS. As it derives TranslatorAdapterBase class that derives directly from the abstract
only from the \c Translator class, it can be used only for language \c Translator class. It adds only the private English-translator
translator classes that were up-to-date in the time of the last member for easy implementation of the default translation inside the
release. adapter classes, and it also enforces implementation of one method
for noticing the user that the language translation is not up-to-date
Status of the translators that derive from the \c (because of that some sentences in the generated files may appear in
TranslatorAdapterCVS is named as <em>almost up-to-date</em>. English).
Its code is moved into the new \c Translator_x_y_z when new version
of doxygen is officially released.
Once the oldest adapter class is not used by any of the language Once the oldest adapter class is not used by any of the language
translators, it can be removed from the doxygen project. This also translators, it can be removed from the doxygen project. The
means, that there probably still is some language which uses the maintainers should try to reach the state with the minimal number of
oldest adapter. The maintainers should try to reach the state with translator adapter classes.
the minimal number of translator adapter classes.
<b>To simplify the maintenance of the language translator classes</b> <b>To simplify the maintenance of the language translator classes</b>
for the supported languages, the \c translator.pl perl for the supported languages, the \c translator.pl perl
...@@ -245,7 +243,6 @@ Of course, you are not forced to use the results of the script. You ...@@ -245,7 +243,6 @@ Of course, you are not forced to use the results of the script. You
can find the same information by looking at the adapter class and can find the same information by looking at the adapter class and
its base classes. its base classes.
<b>How should I update my language translator?</b> Firstly, you <b>How should I update my language translator?</b> Firstly, you
should be the language maintainer, or you should let him/her know should be the language maintainer, or you should let him/her know
about the changes. The following text was written for the language about the changes. The following text was written for the language
...@@ -297,7 +294,7 @@ can change the translator adapter base to the newer one. ...@@ -297,7 +294,7 @@ can change the translator adapter base to the newer one.
Do not blindly implement all methods that are implemented by your Do not blindly implement all methods that are implemented by your
translator adapter base class. The reason is that the adapter translator adapter base class. The reason is that the adapter
classes implement also obsolete methods. Another reason is that classes implement also obsolete methods. Another reason is that
some of the methods could become obsolete later. some of the methods could become obsolete from some newer adapter on.
*/ */
...@@ -82,6 +82,11 @@ ...@@ -82,6 +82,11 @@
# method identifier and the opening parenthesis to match better # method identifier and the opening parenthesis to match better
# the method prototype with the one in the translator.h. # the method prototype with the one in the translator.h.
# #
# 2001/11/06
# - TranslatorAdapterCVS is not used any more. There is nothing
# like "almost up-to-date" any more. The script was simplified
# to reflect the changes.
#
################################################################ ################################################################
use 5.005; use 5.005;
...@@ -517,10 +522,6 @@ xxxTABLE_FOOTxxx ...@@ -517,10 +522,6 @@ xxxTABLE_FOOTxxx
my $i = $status =~ s{^Translator$}{up-to-date}; my $i = $status =~ s{^Translator$}{up-to-date};
if ($i == 0) {
$i = $status =~ s{^TranslatorAdapterCVS}{almost up-to-date};
}
if ($i == 0) { if ($i == 0) {
$i = $status =~ s{^TranslatorAdapter_(\d)_(\d)_(\d)} $i = $status =~ s{^TranslatorAdapter_(\d)_(\d)_(\d)}
{$1.$2.$3}x; {$1.$2.$3}x;
...@@ -972,19 +973,15 @@ print STDERR "\n\n"; ...@@ -972,19 +973,15 @@ print STDERR "\n\n";
# If there are up-to-date translators, list them. #{{{ # If there are up-to-date translators, list them. #{{{
# #
my @list = sort grep { $cb{$_} =~ m/^Translator(AdapterCVS)?$/ } keys %cb; my @list = sort grep { $cb{$_} =~ m/^Translator$/ } keys %cb;
if (@list) { if (@list) {
print FOUT "\n" .'-' x 70 . "\n"; print FOUT "\n" .'-' x 70 . "\n";
print FOUT "The following translator classes are up-to-date " print FOUT "The following translator classes are up-to-date "
. "(sorted alphabetically).\n" . "(sorted alphabetically).\n"
. "This means that they derive from the Translator class. " . "This means that they derive from the Translator class. "
. "If the translator\n" . "Anyway, there still\n"
. "derives from TranslatorAdapterCVS, it is considered " . "may be some details listed even for "
. "to be almost up-to-date.\n"
. "In other words, it is newer than the last official "
. "release. Anyway, there\n"
. "still may be some details listed even for "
. "the up-to-date translators.\n" . "the up-to-date translators.\n"
. "Please, check the text below if the translator " . "Please, check the text below if the translator "
. "is marked so.\n\n"; . "is marked so.\n\n";
...@@ -995,10 +992,6 @@ print STDERR "\n\n"; ...@@ -995,10 +992,6 @@ print STDERR "\n\n";
# #
print FOUT " $_"; print FOUT " $_";
# For almost up-to-date translators, show also the base class.
#
if ($cb{$_} ne 'Translator') { print FOUT "\t($cb{$_})"; }
# If some details were listed for the translator class, # If some details were listed for the translator class,
# add a notice. # add a notice.
# #
...@@ -1030,7 +1023,7 @@ print STDERR "\n\n"; ...@@ -1030,7 +1023,7 @@ print STDERR "\n\n";
# #
@list = sort @list = sort
grep { $cb{$_} !~ m/^Translator$/ } grep { $cb{$_} !~ m/^Translator$/ }
grep { $cb{$_} !~ m/^TranslatorAdapter/ } grep { $cb{$_} !~ m/^TranslatorAdapter_/ }
keys %cb; keys %cb;
if (@list) { if (@list) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment