defbindings("WScreen", { bdoc("Switch to n:th object (workspace, full screen client window) ".. "within current screen."), kpress(MOD1.."1", "WScreen.switch_nth(_, 0)"), kpress(MOD1.."2", "WScreen.switch_nth(_, 1)"), kpress(MOD1.."3", "WScreen.switch_nth(_, 2)"), kpress(MOD1.."4", "WScreen.switch_nth(_, 3)"), kpress(MOD1.."5", "WScreen.switch_nth(_, 4)"), kpress(MOD1.."6", "WScreen.switch_nth(_, 5)"), kpress(MOD1.."7", "WScreen.switch_nth(_, 6)"), kpress(MOD1.."8", "WScreen.switch_nth(_, 7)"), kpress(MOD1.."9", "WScreen.switch_nth(_, 8)"), kpress(MOD1.."0", "WScreen.switch_nth(_, 9)"), kpress(MOD1.."Left", "WScreen.switch_prev(_)"), kpress(MOD1.."Right", "WScreen.switch_next(_)"), kpress(MOD1.."J", "WScreen.switch_prev(_)"), kpress(MOD1.."L", "WScreen.switch_next(_)"), submap(MOD1.."K", { bdoc("Go to previous active object."), kpress("K", "ioncore.goto_previous()"), bdoc("Clear all tags."), kpress("T", "ioncore.clear_tags()"), }), bdoc("Display the main menu."), kpress(MOD2.."F12", "mod_menu.bigmenu(_, _sub, 'mainmenu')"), mpress("Button3", "mod_menu.pmenu(_, _sub, 'mainmenu')"), bdoc("Display the window list menu."), mpress("Button2", "mod_menu.pmenu(_, _sub, 'windowlist')"), kpress(MOD1.."D", "ioncore.create_ws(_)"), kpress(MOD1.."Z", "mod_menu.bigmenu(_, _sub, 'mainmenu')"), }) defbindings("WMPlex", { bdoc("Close current object."), kpress_wait(MOD1.."C", "WRegion.rqclose_propagate(_, _sub)"), kpress_wait(MOD1.."Return", "WClientWin.set_fullscreen(_sub, 'toggle')", "_sub:WClientWin"), kpress(MOD1.."G", "mod_query.query_gotoclient(_)"), kpress(MOD1.."E", "ioncore.exec_on(_, 'uxterm')"), kpress(MOD1.."X", "ioncore.exec_on(_, 'xterminal')"), kpress(MOD1.."W", "mod_query.query_exec(_)"), }) defbindings("WFrame", { kpress(MOD1.."T", "WRegion.set_tagged(_sub, 'toggle')", "_sub:non-nil"), submap(MOD1.."K", { bdoc("Switch to n:th object within the frame."), kpress("1", "WFrame.switch_nth(_, 0)"), kpress("2", "WFrame.switch_nth(_, 1)"), kpress("3", "WFrame.switch_nth(_, 2)"), kpress("4", "WFrame.switch_nth(_, 3)"), kpress("5", "WFrame.switch_nth(_, 4)"), kpress("6", "WFrame.switch_nth(_, 5)"), kpress("7", "WFrame.switch_nth(_, 6)"), kpress("8", "WFrame.switch_nth(_, 7)"), kpress("9", "WFrame.switch_nth(_, 8)"), kpress("0", "WFrame.switch_nth(_, 9)"), bdoc("Switch to next/previous object within the frame."), kpress("N", "WFrame.switch_next(_)"), kpress("P", "WFrame.switch_prev(_)"), bdoc("Switch to next/previous object within current screen."), kpress(MOD1.."comma", "WScreen.switch_prev(_)"), kpress(MOD1.."period", "WScreen.switch_next(_)"), bdoc("Move current object within the frame left/right."), kpress("comma", "WFrame.dec_index(_, _sub)", "_sub:non-nil"), kpress("period", "WFrame.inc_index(_, _sub)", "_sub:non-nil"), bdoc("Maximize the frame horizontally/vertically."), kpress("H", "WFrame.maximize_horiz(_)"), kpress("V", "WFrame.maximize_vert(_)"), bdoc("Attach tagged objects to this frame."), kpress("A", "WFrame.attach_tagged(_)"), }), bdoc("Query for a client window to attach to active frame."), kpress(MOD1.."A", "mod_query.query_attachclient(_)"), bdoc("Display frame context menu."), kpress(MOD1.."M", "mod_menu.menu(_, _sub, 'ctxmenu')"), mpress("Button3", "mod_menu.pmenu(_, _sub, 'ctxmenu')"), bdoc("Begin move/resize mode."), kpress(MOD1.."R", "WFrame.begin_kbresize(_)"), bdoc("Switch the frame to display the object indicated by the tab."), mclick("Button1@tab", "WFrame.p_switch_tab(_)"), mclick("Button2@tab", "WFrame.p_switch_tab(_)"), bdoc("Resize the frame."), mdrag("Button1@border", "WFrame.p_resize(_)"), mdrag(MOD1.."Button3", "WFrame.p_resize(_)"), bdoc("Move the frame."), mdrag(MOD1.."Button1", "WFrame.p_move(_)"), bdoc("Move objects between frames by dragging and dropping the tab."), mdrag("Button1@tab", "WFrame.p_tabdrag(_)"), mdrag("Button2@tab", "WFrame.p_tabdrag(_)"), }) defbindings("WMoveresMode", { bdoc("Cancel the resize mode."), kpress("AnyModifier+Escape","WMoveresMode.cancel(_)"), bdoc("End the resize mode."), kpress("AnyModifier+Return","WMoveresMode.finish(_)"), })