@@ -169,9 +169,9 @@ List of all DocBook tags, with [x] indicating implemented,
169[ ] guibutton - The text on a button in a GUI
169[ ] guibutton - The text on a button in a GUI
170[ ] guiicon - Graphic and/or text appearing as a icon in a GUI
170[ ] guiicon - Graphic and/or text appearing as a icon in a GUI
171[ ] guilabel - The text of a label in a GUI
171[ ] guilabel - The text of a label in a GUI
172−[ ] guimenu - The name of a menu in a GUI
172+[x] guimenu - The name of a menu in a GUI
173−[ ] guimenuitem - The name of a terminal menu item in a GUI
173+[x] guimenuitem - The name of a terminal menu item in a GUI
174−[ ] guisubmenu - The name of a submenu in a GUI
174+[x] guisubmenu - The name of a submenu in a GUI
175[ ] hardware - A physical part of a computer system
175[ ] hardware - A physical part of a computer system
176[ ] highlights - A summary of the main points of the discussed component
176[ ] highlights - A summary of the main points of the discussed component
177[ ] holder - The name of the individual or organization that holds a copyright
177[ ] holder - The name of the individual or organization that holds a copyright
@@ -237,7 +237,7 @@ List of all DocBook tags, with [x] indicating implemented,
237[x] mediaobject - A displayed media object (video, audio, image, etc.)
237[x] mediaobject - A displayed media object (video, audio, image, etc.)
238[ ] mediaobjectco - A media object that contains callouts
238[ ] mediaobjectco - A media object that contains callouts
239[x] member - An element of a simple list
239[x] member - An element of a simple list
240−[ ] menuchoice - A selection or series of selections from a menu
240+[x] menuchoice - A selection or series of selections from a menu
241[ ] methodname - The name of a method
241[ ] methodname - The name of a method
242[ ] methodparam - Parameters to a method
242[ ] methodparam - Parameters to a method
243[ ] methodsynopsis - A syntax summary for a method
243[ ] methodsynopsis - A syntax summary for a method
@@ -928,6 +928,8 @@ parseInline (Elem e) =
928 "varargs" -> return $ code "(...)"
928 "varargs" -> return $ code "(...)"
929 "keycap" -> return (str $ strContent e)
929 "keycap" -> return (str $ strContent e)
930 "keycombo" -> keycombo <$> (mapM parseInline $ elContent e)
930 "keycombo" -> keycombo <$> (mapM parseInline $ elContent e)
931+ "menuchoice" -> menuchoice <$> (mapM parseInline $
932+ filter isGuiMenu $ elContent e)
931 "xref" -> return $ str "?" -- so at least you know something is there
933 "xref" -> return $ str "?" -- so at least you know something is there
932 "email" -> return $ link ("mailto:" ++ strContent e) ""
934 "email" -> return $ link ("mailto:" ++ strContent e) ""
933 $ str $ strContent e
935 $ str $ strContent e
@@ -984,3 +986,8 @@ parseInline (Elem e) =
984 return $ linebreak <> tit' <> segs
986 return $ linebreak <> tit' <> segs
985 keycombo = spanWith ("",["keycombo"],[]) .
987 keycombo = spanWith ("",["keycombo"],[]) .
986 mconcat . intersperse (str "+")
988 mconcat . intersperse (str "+")
989+ menuchoice = spanWith ("",["menuchoice"],[]) .
990+ mconcat . intersperse (text " > ")
991+ isGuiMenu (Elem x) = named "guimenu" x || named "guisubmenu" x ||
992+ named "guimenuitem" x