📄 create-toc
字号:
#!/usr/bin/perl## This program generates an HTML document containing links to man# pages already converted to html using man2html3.0.1 # (http://search.cpan.org/~ehood/man2html3.0.1/) ## Written by: Alex Burger# Date: March 2nd, 2004# ################################################################# Options# Location of man pages to parse$man_dir = "/tmp/net-snmp/html/";$include_header = 1;$include_footer = 1;# Output file$toc_file = "/tmp/net-snmp/html/toc.hhc";#URL up to the name of the man page$url = '';################################################################if ($man_dir =~ /\/$/) { chop $man_dir;}@files = `find $man_dir`;@files = sort @files;open (FILE_OUT, ">$toc_file") || die "Could not open file $toc_file for writing. $!";select FILE_OUT;foreach my $file (@files){ chomp $file; # Man pages if ($file =~ /$man_dir\/man(\d+)-(.*)/) { push (@man_pages, "$1-$2"); } # Perl POD files elsif ($file =~ /$man_dir\/perl-(.*)/) { push (@perl_files, "$1"); } # README files elsif ($file =~ /$man_dir\/readme-(.*)/) { push (@readme_files, "$1"); }}@man_pages = sort (@man_pages);@perl_files = sort (@perl_files);@readme_files = sort (@readme_files);# Divide up man pages foreach my $man_page (@man_pages){ $man_page =~ /(\d+)-(.*)/; if ($1 == 1) { push (@man1,$2); } elsif ($1 == 2) { push (@man2,$2); } elsif ($1 == 3) { push (@man3,$2); } elsif ($1 == 4) { push (@man4,$2); } elsif ($1 == 5) { push (@man5,$2); } elsif ($1 == 6) { push (@man6,$2); } elsif ($1 == 7) { push (@man7,$2); } elsif ($1 == 8) { push (@man8,$2); } elsif ($1 == 9) { push (@man9,$2); }} if ($include_header > 0) { print '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">' . "\n"; print '<HTML>' . "\n"; print '<HEAD>' . "\n"; print '<meta name="GENERATOR" content="Microsoft® HTML Help Workshop 4.1">' . "\n"; print '<!-- Sitemap 1.0 -->' . "\n"; print '</HEAD><BODY>' . "\n"; print '<OBJECT type="text/site properties">' . "\n"; print ' <param name="ImageType" value="Folder">' . "\n"; print '</OBJECT>' . "\n"; print "<UL>\n";}print_section("Applications", "man1-",\@man1);print_section("man2", "man2-",\@man2);print_section("API", "man3-",\@man3);print_section("man4", "man4-",\@man4);print_section("Configuration", "man5-",\@man5);print_section("man6", "man6-",\@man6);print_section("man7", "man7-",\@man7);print_section("Servers", "man8-",\@man8);print_section("man9", "man9-",\@man9);print_section("Start Here", "readme-",\@readme_files);print_section("Perl Modules", "perl-",\@perl_files);sub print_section{ # Section title, subfolder/prefix, array my $section_name = shift; my $folder = shift; my $man = shift; if (defined(@$man)) { print ' <LI> <OBJECT type="text/sitemap">' . "\n"; print " <param name=\"Name\" value=\"$section_name\">\n"; print ' <param name="ImageNumber" value="1">' . "\n"; print ' </OBJECT>' . "\n"; print " <UL>\n"; foreach my $man_page (@$man) { my $man_page_short; if ($man_page =~ /(.*?)\.\d+\.html/i) { $man_page_short = $1; } else { $man_page =~ /(.*?).html/i; $man_page_short = $1; } print ' <LI> <OBJECT type="text/sitemap">' . "\n"; print " <param name=\"Name \"value=\"$man_page_short\">\n"; print " <param name=\"Local\" value=\"$folder$url$man_page\">\n"; print ' </OBJECT>' . "\n"; } print " </UL>\n"; }}if ($include_footer > 0) { print "</UL>\n"; print "</BODY>\n"; print "</HTML>\n";}close FILE_OUT;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -