Adding debian version 0.3.2-2.
[debian/menu-cache.git] / README
CommitLineData
38dfb1e4
DB
1Libmenu-cache is a library creating and utilizing caches to speed up
2the manipulation for freedesktop.org defined application menus.
3It can be used as a replacement of libgnome-menu of gnome-menus.
4
5Advantages:
61. Shorten time for loading menu entries.
72. Ease of use. (API is very similar to that of libgnome-menu)
83. Lightweight runtime library. (Parsing of the menu definition files
9 are done by menu-cache-gen when the menus are really changed.)
104. Less unnecessary and complicated file monitoring.
115. Heavily reduced disk I/O.
12
13Spec:
14
15Cached menus are localized and stored in ~/.cache/menus/file_name.
16file_name is a md5 hash of the name of the original menu +
17 some environment variable +
18 locale name.
19
20Since most data in a menu are plain text (names, description comments,
21icon names,...etc.), the cached file is in plain text rather than binary
22to prevent byte order problems.
23
24Format of the cached menu file, line by line.
25(Spaces before the lines are for easier demostration of hierarchy.
26 There are no spaces in the real cached file.):
27
28version number (major.minor)
29menu name>
30number of files to monitor
31list of files/dirs which require monitor (prefix D or F indicate whether it
32 is a dir or file)
33list of DE names used in this menu other than the known DEs (LXDE, GNOME,
34 XFCE, KDE, ROX),
35seperated by ;
36+id of top menu dir (+ means dir entry, and - means an application entry)
37 title
38 comment
39 icon name
40 menu directory file basename
41 dir in which menu directory file locates (use this number as index to get
42 the string from array of preceding
43 list of monitored files)
44 -application desktop id (NOTE: desktop id is not necessarily the basename
45 of desktop file)
46 title
47 comment
48 icon name
49 app desktop file basename, empty means the same as desktop id.
50 dir in which the desktop file localtes (use this number as index to get
51 the string from array of
52 preceding list of monitored files)
53 generic name
54 exec command line
55 bitmask flags: (use terminal)|(use startup notification)
56 show_in_flags: bitwise or of masks for various DEs.
57 +sub dir id
58 title
59 comment
60 icon name
61 ...