#!/usr/sbin/install-menu # -*- mode: shell-script; -*- # # Written by Joey Hess. # # This generates a pdmenurc file that can be preprocessed by cpp to enable # different types of displays. For example, you can -Dx11 -Xtext to display # only the text and x11 entries, and not the vc ones. # # More info: /usr/doc/menu/html, /usr/doc/pdmenu/README.Debian # The verson of the menu package that can process this. compat="menu-1" #include the local preferences, pdmenu only uses the defintion of title(). !include menu.h compat="menu-2" # Filename of the pdmenurc file we will generate. genmenu="pdmenurc_auto"; # Where the system wide generated file is placed. rootprefix="/var/lib/pdmenu/"; # Title of the top level menu that is made. mainmenutitle="Debian Menus"; # Don't ever use "q" as a hotkey in menus, becuase it is used to popdown # submenus. hotkeyexclude="q"; # Some text to go at the top of the autogenerated file. preoutput="# Automatically generated pdmenurc file.\n# Do not edit (see /usr/doc/pdmenu/README.debian)\n\n"; # In what order we output the menus. treewalk="c(m)"; # How to start a new menu in the rc file. startmenu="menu:" esc($section,":") ":" esc(title(),":") "\n"; # How to add a submenu to a menu. # Notice that thanks to cpp and some #defines, the submenu is only added if # the submenu actually contains menu entries. submenutitle= "#ifdef " cppesc($section) "\n" "#define " cppesc(parent($section)) "\n" " show:" esc(escfirst(title(),$hotkey,"_"),":") "..::" esc($section,":") "\n" "#endif\n"; # The supported display types, in order of preference. supported; x11= "#ifdef x11\n" "#define " cppesc(parent($section)) "\n" " exec:" esc(escfirst(title(),$hotkey,"_"),":") ":n:" $command " >/dev/null 2>&1 &\n" "#endif\n"; vc= "#ifdef vc\n" "#define " cppesc(parent($section)) "\n" " exec:" esc(escfirst(title(),$hotkey,"_"),":") "::" $command "\n" "#endif\n"; text= "#ifdef text\n" "#define " cppesc(parent($section)) "\n" " exec:" esc(escfirst(title(),$hotkey,"_"),":") "::" $command "\n" "#endif\n"; endsupported; # Pdmenu doesn't need anything special at the end of a menu. endmenu= "\n";