#!/usr/sbin/install-menu
# xdg menu spec - menu generation
# http://www.freedesktop.org/Standards/menu-spec
# Also used as /etc/menu-methods/menu-xdg
# Copyright 2004 - Chris Cheney <ccheney@debian.org>
# Licensed under the GNU General Public License, version 2.

!include /etc/menu-methods/menu.h

compat="menu-2"
outputencoding="UTF-8";

function Dirs() =
	ifempty($section,
		"<DefaultMergeDirs/>\n"
		ifroot("<AppDir>/var/lib/menu-xdg/simplified/applications</AppDir>\n"
			"<DirectoryDir>/var/lib/menu-xdg/simplified/desktop-directories</DirectoryDir>\n"
			"<DefaultAppDirs/>\n"
			"<DefaultDirectoryDirs/>\n",
			"<AppDir>"parent(parent(prefix()))"/.local/share/simplified/applications</AppDir>\n"
			"<DirectoryDir>"parent(parent(prefix()))"/.local/share/simplified/desktop-directories</DirectoryDir>\n")
		);

function Excludes() =
        ifnempty($excludefiles,"<Exclude>\n"
                                forall(replace($excludefiles,",",":"),"excludeitem", "<Filename>"$excludeitem"</Filename>\n")"</Exclude>\n");


function DirEntry() =
	"<Name>" title() "</Name>\n"
	Dirs()
	Excludes()
	ifnempty($section, ifelsefile("/etc/menu-methods/xdg-not-sorted", "",
		ifnempty($order,
			"<Layout>\n"
			ifeq( replace($order,"_mergemenu_","") ,$order, "<Merge type=\"menus\"/>\n")
			ifeq( replace($order,"_mergefile_","") ,$order, "<Merge type=\"files\"/>\n")			
			forall(replace($order,",",":"),"item", ifeqelse($item,"_separator_","<Separator/>",ifeqelse($item,"_mergemenu_","<Merge type=\"menus\"/>",ifeqelse($item,"_mergefile_","<Merge type=\"files\"/>","<Menuname "replace(catfile("/etc/menu-methods/menu-attribute"),"\n","")">"$item"</Menuname>\n" "<Filename>Mandrakelinux" replace(replacewith($section,"/","-")," ","")"-"$item".desktop</Filename>") "\n")))
			"</Layout>\n")))
	"<Directory>" "mandrakelinux" tolower(cppesc(replacewith(replace($section," ",""),"/ ","--"))) ".directory" "</Directory>\n"
	"<Include>\n"
	"<Category>" "X-Mandrakelinux" replace(replacewith($section,"/","-")," ","") "</Category>\n"
	"</Include>\n";


supported;
 gnome = ;
 kde = ;
 x11 = ;
 text = ;
endsupported;

startmenu = "<Menu>\n" DirEntry();
endmenu = "</Menu>\n";
submenutitle = "";

treewalk = "(M)";

genmenu = "applications-simplified.menu";

rootsection = "";

prerun = "rm -rf " prefix() "/" "applications-simplified.menu";

preoutput = "<!DOCTYPE Menu PUBLIC \"-//freedesktop//DTD Menu 0.8//EN\"\n \"http://standards.freedesktop.org/menu-spec/menu-0.8.dtd\">\n<!-- Automatically generated do not edit -->\n";

rootprefix = "/var/lib/menu-xdg/menus";

userprefix = ".config/menus";
