Skip to content

Latest commit

 

History

History
51 lines (42 loc) · 1.26 KB

README.org

File metadata and controls

51 lines (42 loc) · 1.26 KB

Application menu for StumpWM

./menu-inaction.png

Usage

(load-module "app-menu")

Define app-menu:*app-menu* in your .stumpwmrc. You can use strings to run shell commands or symbols to run Stumpwm commands (e.g. to popup existing application instead of start new one if applcation is already running).

(defcommand firefox () ()
  "run firefox"
  (run-or-raise "firefox" '(:class "Firefox")))

(setq app-menu:*app-menu*
      '(("INTERNET"
         ;; submenu
         ("Firefox" firefox)       ; call stumpwm command
         ("Skype" "skypeforlinux") ; run shell script
         )
        ("WORK"
         ("OpenOffice.org"  "openoffice"))
        ("GRAPHICS"
         ("GIMP" "gimp")
         ("Inkscape" "inkscape"))
        ("urxvt" urxvt)
        ("K3B" "k3b")))

Menus can also be loaded from files:

# Run (app-menu-load-menu-file #P"file") to load in this file.
("INTERNET"
 ;; submenu
 ("Firefox" firefox)
 ("Skype" "skypeforlinux"))

Add show-menu command to your keybindings, e.g.:

(define-key *top-map* (kbd "M-`") "show-menu")

Navigate the menu with C-n, C-p, or just start typing to jump to a matching item.