X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=etc%2Fcfg_ioncore.lua;h=406cc1aae8def2730b518db83be6ee24bf9b22a1;hb=HEAD;hp=b10b46c3e31bca7cfb9144f7960b3239dbe5a7bb;hpb=471a5e5f9928e2d324b2e10422a420f458bd63ff;p=ion3.git diff --git a/etc/cfg_ioncore.lua b/etc/cfg_ioncore.lua index b10b46c..406cc1a 100644 --- a/etc/cfg_ioncore.lua +++ b/etc/cfg_ioncore.lua @@ -50,7 +50,7 @@ defbindings("WScreen", { --kpress("I", "ioncore.goto_activity()"), bdoc("Clear all tags."), - kpress("T", "ioncore.clear_tags()"), + kpress("T", "ioncore.tagged_clear()"), }), bdoc("Go to n:th screen on multihead setup."), @@ -65,7 +65,7 @@ defbindings("WScreen", { kpress(META.."F9", "ioncore.create_ws(_)"), bdoc("Display the main menu."), - kpress(ALTMETA.."F12", "mod_query.query_menu(_, 'mainmenu', 'Main menu:')"), + kpress(ALTMETA.."F12", "mod_query.query_menu(_, _sub, 'mainmenu', 'Main menu:')"), --kpress(ALTMETA.."F12", "mod_menu.menu(_, _sub, 'mainmenu', {big=true})"), mpress("Button3", "mod_menu.pmenu(_, _sub, 'mainmenu')"), @@ -129,19 +129,9 @@ defbindings("WGroupCW", { defbindings("WMPlex", { bdoc("Close current object."), kpress_wait(META.."C", "WRegion.rqclose_propagate(_, _sub)"), - - submap(META.."K", { - bdoc("Detach (float) or reattach an object to its previous location."), - -- By using _chld instead of _sub, we can detach/reattach queries - -- attached to a group. The detach code checks if the parameter - -- (_chld) is a group 'bottom' and detaches the whole group in that - -- case. - kpress("D", "ioncore.detach(_chld, 'toggle')", "_chld:non-nil"), - }), }) -- Frames for transient windows ignore this bindmap - defbindings("WMPlex.toplevel", { bdoc("Toggle tag of current object."), kpress(META.."T", "WRegion.set_tagged(_sub, 'toggle')", "_sub:non-nil"), @@ -178,13 +168,18 @@ defbindings("WMPlex.toplevel", { bdoc("Query for a client window to go to."), kpress(META.."G", "mod_query.query_gotoclient(_)"), - bdoc("Query for a client window to attach."), - kpress(META.."A", "mod_query.query_attachclient(_)"), - bdoc("Display context menu."), --kpress(META.."M", "mod_menu.menu(_, _sub, 'ctxmenu')"), - kpress(META.."M", "mod_query.query_menu(_, 'ctxmenu', 'Context menu:')"), - + kpress(META.."M", "mod_query.query_menu(_, _sub, 'ctxmenu', 'Context menu:')"), + + submap(META.."K", { + bdoc("Detach (float) or reattach an object to its previous location."), + -- By using _chld instead of _sub, we can detach/reattach queries + -- attached to a group. The detach code checks if the parameter + -- (_chld) is a group 'bottom' and detaches the whole group in that + -- case. + kpress("D", "ioncore.detach(_chld, 'toggle')", "_chld:non-nil"), + }), }) @@ -226,10 +221,13 @@ defbindings("WFrame", { -- Frames for transient windows ignore this bindmap defbindings("WFrame.toplevel", { - bdoc("Tag current object within the frame."), - kpress(META.."T", "WRegion.set_tagged(_sub, 'toggle')", "_sub:non-nil"), + bdoc("Query for a client window to attach."), + kpress(META.."A", "mod_query.query_attachclient(_)"), submap(META.."K", { + -- Display tab numbers when modifiers are released + submap_wait("ioncore.tabnum.show(_)"), + bdoc("Switch to n:th object within the frame."), kpress("1", "WFrame.switch_nth(_, 0)"), kpress("2", "WFrame.switch_nth(_, 1)"), @@ -255,7 +253,7 @@ defbindings("WFrame.toplevel", { kpress("V", "WFrame.maximize_vert(_)"), bdoc("Attach tagged objects to this frame."), - kpress("A", "WFrame.attach_tagged(_)"), + kpress("A", "ioncore.tagged_attach(_)"), }), }) @@ -330,7 +328,8 @@ defbindings("WMoveresMode", { -- Main menu defmenu("mainmenu", { - submenu("Programs", "appmenu"), + menuentry("Run...", "mod_query.query_exec(_)"), + menuentry("Terminal", "ioncore.exec_on(_, XTERM or 'xterm')"), menuentry("Lock screen", "ioncore.exec_on(_, 'xlock')"), menuentry("Help", "mod_query.query_man(_)"), menuentry("About Ion", "mod_query.show_about_ion(_)"), @@ -339,19 +338,6 @@ defmenu("mainmenu", { }) --- Application menu -defmenu("appmenu", { - menuentry("XTerm", "ioncore.exec_on(_, 'xterm')"), - menuentry("W3M", "ioncore.exec_on(_, ':w3m -v')"), - menuentry("Rxvt", "ioncore.exec_on(_, 'rxvt')"), - menuentry("Opera", "ioncore.exec_on(_, 'opera')"), - menuentry("Links", "ioncore.exec_on(_, ':links')"), - menuentry("Konqueror", "ioncore.exec_on(_, 'konqueror')"), - menuentry("Dillo", "ioncore.exec_on(_, 'dillo')"), - menuentry("Run...", "mod_query.query_exec(_)"), -}) - - -- Session control menu defmenu("sessionmenu", { menuentry("Save", "ioncore.snapshot()"), @@ -361,18 +347,23 @@ defmenu("sessionmenu", { }) --- Context menu (frame/client window actions) +-- Context menu (frame actions etc.) defctxmenu("WFrame", "Frame", { + -- Note: this propagates the close to any subwindows; it does not + -- destroy the frame itself, unless empty. An entry to destroy tiled + -- frames is configured in cfg_tiling.lua. menuentry("Close", "WRegion.rqclose_propagate(_, _sub)"), - menuentry("Kill", "WClientWin.kill(_sub)", - "_sub:WClientWin"), - menuentry("De/reattach", "ioncore.detach(_sub, 'toggle')", - "_sub:non-nil"), - menuentry("Toggle tag", "WRegion.set_tagged(_sub, 'toggle')", - "_sub:non-nil"), - menuentry("Attach tagged", "WFrame.attach_tagged(_)"), - menuentry("Clear tags", "ioncore.clear_tags()"), - menuentry("Window info", "mod_query.show_tree(_, _sub)"), + -- Low-priority entries + menuentry("Attach tagged", "ioncore.tagged_attach(_)", { priority = 0 }), + menuentry("Clear tags", "ioncore.tagged_clear()", { priority = 0 }), + menuentry("Window info", "mod_query.show_tree(_, _sub)", { priority = 0 }), +}) + + +-- Context menu for groups (workspaces, client windows) +defctxmenu("WGroup", "Group", { + menuentry("Toggle tag", "WRegion.set_tagged(_, 'toggle')"), + menuentry("De/reattach", "ioncore.detach(_, 'toggle')"), }) @@ -380,5 +371,11 @@ defctxmenu("WFrame", "Frame", { defctxmenu("WGroupWS", "Workspace", { menuentry("Close", "WRegion.rqclose(_)"), menuentry("Rename", "mod_query.query_renameworkspace(nil, _)"), + menuentry("Attach tagged", "ioncore.tagged_attach(_)"), }) + +-- Context menu for client windows +defctxmenu("WClientWin", "Client window", { + menuentry("Kill", "WClientWin.kill(_)"), +})