Instead of adding titles just for the files, add titles for each part of the ABI output, in order to make easier to search for a symbol there.
Unified · Split
| @@ -287,6 +287,8 @@ my $bondary = qr { (?<![\w\/\`\{])(?=[\w\/\`\{])|(?<=[\w\/\`\{])(?![\w\/\`\{]) } · 286 unmodified lines | ||
| 287 | 287 | sub output_rest { |
| 288 | 288 | create_labels(); |
| 289 | 289 | |
| 290 | + my $part = ""; | |
| 291 | + | |
| 290 | 292 | foreach my $what (sort { |
| 291 | 293 | ($data{$a}->{type} eq "File") cmp ($data{$b}->{type} eq "File") || |
| 292 | 294 | $a cmp $b |
| @@ -306,6 +308,21 @@ sub output_rest { · 13 unmodified lines | ||
| 306 | 308 | $w =~ s/([\(\)\_\-\*\=\^\~\\])/\\$1/g; |
| 307 | 309 | |
| 308 | 310 | if ($type ne "File") { |
| 311 | + my $cur_part = $what; | |
| 312 | + if ($what =~ '/') { | |
| 313 | + if ($what =~ m#^(\/?(?:[\w\-]+\/?){1,2})#) { | |
| 314 | + $cur_part = "Symbols under $1"; | |
| 315 | + $cur_part =~ s,/$,,; | |
| 316 | + } | |
| 317 | + } | |
| 318 | + | |
| 319 | + if ($cur_part ne "" && $part ne $cur_part) { | |
| 320 | + $part = $cur_part; | |
| 321 | + my $bar = $part; | |
| 322 | + $bar =~ s/./-/g; | |
| 323 | + print "$part\n$bar\n\n"; | |
| 324 | + } | |
| 325 | + | |
| 309 | 326 | printf ".. _%s:\n\n", $data{$what}->{label}; |
| 310 | 327 | |
| 311 | 328 | my @names = split /, /,$w; |