#!/usr/bin/perl # [submenu] (Graphics) {image manipulation programs} # [exec] (XV) {xv} # [exec] (The GIMP) {gimp} # [exec] (Image Magick) {display} # [end] $number = 1; while ($line=<>) { chomp($line); if (($line eq "") and ($number != 2)) { $number = 1; $done = 1; print " [end]\n"; next; } if ($number == 3) { ## an application if ($line =~ /^([^ .]+)\s(.+)/) { $application = $1; $description = $2; } else { $application = $line; } print " [exec] ($application) {$application}\n"; } if ($number == 2) { $description = $line; if ($menu ne $lastmenu) { if ($lastmenu ne '') { # first time print "[end]\n# $lastmenu\n\n"; } print "# $menu\n"; print "[submenu] ($menu)\n"; $lastmenu = $menu; } print "# $description\n"; print " [submenu] ($item) {$description}\n"; $number = 3; } if ($number == 1) { $number = 2; $line =~ /^([^ .]+)\/(.+)$/; $menu = $1; $item = $2; } } if (! $done) { print " [end]\n"; } print "[end]\n# $lastmenu\n";