On Fri, Oct 16, 2026 at 08:40:07PM +0200, Patrice Dumas wrote:
> I don't think that it would be so difficult, and since init files are
> read only at the beginning it would only be needed to do it in the
> converter initialization, so no issue of efficiency.  What I propose is
> to do the translation from asis/none to numerical values, but warn.

It is actually difficult to the same in Perl as in C.  In C,
consistently with having a typed language and a type information for
customization variables, a string given as argument to an integer
customization variable is transformed early, when reading the
command-line options, to 1 if the string is not empty, 0 otherwise.  So,
for paragraphindent, both asis and none passed from the command line as
customization variables become 1, without any warning.  In Perl, the
string is passed as is and leads to the kind of warnings reported if the
options is actually used as a number.

The C and Perl codes are aligned for boolean variables, which are not
actually used as numbers, only checked for being true or false, as was
designed.  But for integer variables used in computations, it is bad.

I do not like this situation, what I will do is:
1) add a new type of customization variable, the boolean type.  For this
   type, the way the values are set is right
2) for the remaining integer customization variables, check that the
   value set is actually an integer, positive except for paragraphindent
   than can be -2, and if not, warn and ignore the value.

-- 
Pat

Reply via email to