bug-texinfo
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: .devhelp generator for --html mode in makeinfo


From: Dimitri John Ledkov
Subject: Re: .devhelp generator for --html mode in makeinfo
Date: Wed, 15 Apr 2015 23:09:07 -0600

Hello!

On 17 March 2015 at 06:27, Gavin Smith <address@hidden> wrote:
> On 16 March 2015 at 22:09, Dimitri John Ledkov <address@hidden> wrote:
>> I've assembled things from devhelp git tree & debian python docs
>> packaging into one place here with comments:
>>
>> https://people.debian.org/~xnox/devhelp/
>>
>> It has the twenty line dtd description of the xml .devhelp format,
>> sample output for python3.4 docs in python3.4.devhelp, script which
>> processes python's html docs to generate .devhelp, and the broken
>> texi2html based script to process html into .devhelp.
>>
>> This should be all that's needed to understand the format - it really
>> is a flat TOC & flat Index with links to html pages / anchors.
>>
>
> Here's what I've been able to do so far. It needs more work and
> polish, of course, but it should point in the right direction.

This is very exciting thanks for this. My plan is to apply this patch
and make it work against a common set of texi docs that I work with
usually and ship it in Ubuntu.

So far I'm just experimenting locally, my first try was with
automake-1.14, and I got this:

WRITING DEVHELP automake-1.14.html.devhelp
No misc_content: (def_line) :  args(1)
 <- @defmac
 at /usr/share/texinfo/Texinfo/Convert/HTML.pm line 504.
Texinfo::Convert::HTML::command_text('Texinfo::Convert::HTML=HASH(0x3ef3928)',
'HASH(0x3193868)') called at
/usr/share/texinfo/Texinfo/Convert/HTML.pm line 7213
Texinfo::Convert::HTML::output_devhelp_file('Texinfo::Convert::HTML=HASH(0x3ef3928)',
'automake-1.14.html.devhelp', 'HASH(0x22b5360)') called at
/usr/share/texinfo/Texinfo/Convert/HTML.pm line 7160
Texinfo::Convert::HTML::output('Texinfo::Convert::HTML=HASH(0x3ef3928)',
'HASH(0x22b5360)') called at /usr/bin/makeinfo line 1309
Can't use an undefined value as an ARRAY reference at
/usr/share/texinfo/Texinfo/Convert/HTML.pm line 525.
make[1]: *** [override_dh_auto_install] Error 25
make[1]: Leaving directory `/home/djledkov/automake-1.14-1.14.1'
make: *** [binary] Error 2

For reference, at first in your patch there is this:

        if (!$command->{'extra'}->{'misc_content'}) {
          cluck "No misc_content: "
            .Texinfo::Parser::_print_current($command);
        }


But later there is:
        if (defined($command->{'number'})
            and ($self->get_conf('NUMBER_SECTIONS')
                 or !defined($self->get_conf('NUMBER_SECTIONS')))) {
...
        } else {
          $tree = {'contents' => address@hidden>{'extra'}->{'misc_content'}}]};
        }

That's the line 525 where an untested/unguarded access to misc_content
happens. I'm not sure how to fix this.

Reproducer is:
$ cd automake-1.14.1/doc/ && makeinfo --html automake.texi

With your original patch from this thread applied.

-- 
Regards,

Dimitri.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]