diff options
author | Akinori Ito <aito@eie.yz.yamagata-u.ac.jp> | 2001-11-15 00:32:13 +0000 |
---|---|---|
committer | Akinori Ito <aito@eie.yz.yamagata-u.ac.jp> | 2001-11-15 00:32:13 +0000 |
commit | 85da7ee692072c643939e9f4b24fbd1e74e64e70 (patch) | |
tree | 9fc63298cf968fa560a9e3cf9b6c84516032fca8 /scripts/bm2menu/bm2menu.pl | |
parent | Updates from 0.2.1 into 0.2.1-inu-1.5 (diff) | |
download | w3m-85da7ee692072c643939e9f4b24fbd1e74e64e70.tar.gz w3m-85da7ee692072c643939e9f4b24fbd1e74e64e70.zip |
Update to w3m-0.2.1-inu-1.6.
Diffstat (limited to '')
-rw-r--r-- | scripts/bm2menu/bm2menu.pl | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/scripts/bm2menu/bm2menu.pl b/scripts/bm2menu/bm2menu.pl new file mode 100644 index 0000000..d89f2b5 --- /dev/null +++ b/scripts/bm2menu/bm2menu.pl @@ -0,0 +1,58 @@ +#!/usr/bin/perl + +$PRE_MENU = ""; +$POST_MENU = <<EOF; + nop "----------------------" + func "ブックマークに追加 (a)" ADD_BOOKMARK "aA" +EOF +# $POST_MENU = <<EOF; +# nop "----------------------" +# func "Add Bookmark (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 $_; +} |