diff options
| author | Akinori Ito <aito@eie.yz.yamagata-u.ac.jp> | 2001-11-08 05:14:08 +0000 | 
|---|---|---|
| committer | Akinori Ito <aito@eie.yz.yamagata-u.ac.jp> | 2001-11-08 05:14:08 +0000 | 
| commit | 68a07bf03b7624c9924065cce9ffa45497225834 (patch) | |
| tree | c2adb06a909a8594445e4a3f8587c4bad46e3ecd /scripts/bm2menu | |
| download | w3m-68a07bf03b7624c9924065cce9ffa45497225834.tar.gz w3m-68a07bf03b7624c9924065cce9ffa45497225834.zip | |
Initial revision
Diffstat (limited to '')
| -rw-r--r-- | scripts/bm2menu.pl | 54 | 
1 files changed, 54 insertions, 0 deletions
| diff --git a/scripts/bm2menu.pl b/scripts/bm2menu.pl new file mode 100644 index 0000000..1390bae --- /dev/null +++ b/scripts/bm2menu.pl @@ -0,0 +1,54 @@ +#!/usr/bin/perl + +$PRE_MENU = ""; +$POST_MENU = <<EOF; + nop	"───────────" + func	"ブックマークに追加 (a)"	ADD_BOOKMARK	"aA" +EOF + +@section = (); +%title = (); +%url = (); +while(<>) { +  if (/<h2>(.*)<\/h2>/) { +    $s = &unquote($1); +    push(@section, $s); +  } elsif (/<li><a href=\"(.*)\">(.*)<\/a>/) { +    $u = &unquote($1); +    $t = &unquote($2); +    $url{$s}   .= "$u\n"; +    $title{$s} .= "$t\n"; +  } +} + +print "menu Bookmarks\n"; +print $PRE_MENU; +foreach(@section) { +  print " popup\t\"$_\"\t\"$_\"\n";  +} +print $POST_MENU; +print "end\n"; + +foreach(@section) { +  print "\n"; +  print "menu \"$_\"\n"; +  @ts = split("\n", $title{$_}); +  @us = split("\n", $url{$_}); +  while(@ts) { +    $t = shift @ts; +    $u = shift @us; +    print " func\t\"$t\"\tGOTO\t\"\"\t\"$u\"\n";  +  } +  print "end\n"; +} + +sub unquote { +  local($_) = @_; + +  s/\</\</g; +  s/\>/\>/g; +  s/\ / /g; +  s/\&/\&/g; + +  return $_; +} | 
