From 5c6cd059e8395d7f24d4b199e59c8c2f562dc438 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Sun, 3 Nov 2013 21:21:21 +0100 Subject: New stow hierarchy --- notion/cfg_notioncore.lua | 411 ---------------------------------------------- 1 file changed, 411 deletions(-) delete mode 100644 notion/cfg_notioncore.lua (limited to 'notion/cfg_notioncore.lua') diff --git a/notion/cfg_notioncore.lua b/notion/cfg_notioncore.lua deleted file mode 100644 index 2839409..0000000 --- a/notion/cfg_notioncore.lua +++ /dev/null @@ -1,411 +0,0 @@ --- --- Notion core configuration file --- - -function oni_match_class(class) - local result = {} - ioncore.clientwin_i( - function (win) - if class == win:get_ident().class then - table.insert(result, win) - return false - end - return true - end - ) - return result -end - -function xsteve_run_byclass(prog, class) - local win = oni_match_class(class)[1] - if win then - win:goto_() - else - ioncore.exec(prog) - end -end - --- --- Bindings. This includes global bindings and bindings common to --- screens and all types of frames only. See modules' configuration --- files for other bindings. --- - - --- WScreen context bindings --- --- The bindings in this context are available all the time. --- --- The variable META should contain a string of the form 'Mod1+' --- where Mod1 maybe replaced with the modifier you want to use for most --- of the bindings. Similarly ALTMETA may be redefined to add a --- modifier to some of the F-key bindings. - -defbindings("WScreen", { - bdoc("Switch to n:th object (workspace, full screen client window) ".. - "within current screen."), - kpress(META.."1", "WScreen.switch_nth(_, 0)"), - kpress(META.."2", "WScreen.switch_nth(_, 1)"), - kpress(META.."3", "WScreen.switch_nth(_, 2)"), - kpress(META.."4", "WScreen.switch_nth(_, 3)"), - kpress(META.."5", "WScreen.switch_nth(_, 4)"), - kpress(META.."6", "WScreen.switch_nth(_, 5)"), - kpress(META.."7", "WScreen.switch_nth(_, 6)"), - kpress(META.."8", "WScreen.switch_nth(_, 7)"), - kpress(META.."9", "WScreen.switch_nth(_, 8)"), - kpress(META.."0", "WScreen.switch_nth(_, 9)"), - - bdoc("Switch to next/previous object within current screen."), - kpress(META.."comma", "WScreen.switch_prev(_)"), - kpress(META.."period", "WScreen.switch_next(_)"), - - submap(META.."K", { - --bdoc("Go to previous active object."), - --kpress("K", "ioncore.goto_previous()"), - - --bdoc("Go to first object on activity/urgency list."), - --kpress("I", "ioncore.goto_activity()"), - - bdoc("Clear all tags."), - kpress("T", "ioncore.tagged_clear()"), - }), - - bdoc("Go to n:th screen on multihead setup."), - kpress(META.."Shift+1", "ioncore.goto_nth_screen(0)"), - kpress(META.."Shift+2", "ioncore.goto_nth_screen(1)"), - kpress(META.."Shift+3", "ioncore.goto_nth_screen(2)"), - kpress(META.."E", "ioncore.goto_nth_screen(2)"), - - bdoc("Go to next/previous screen on multihead setup."), - kpress(META.."Shift+comma", "ioncore.goto_prev_screen()"), - kpress(META.."I", "ioncore.goto_prev_screen()"), - - bdoc("Create a new workspace of chosen default type."), - kpress(META.."F9", "ioncore.create_ws(_)"), - - bdoc("Display the main menu."), - kpress(ALTMETA.."F12", "mod_menu.menu(_, _sub, 'mainmenu', {big=true})"), - mpress("Button3", "mod_menu.pmenu(_, _sub, 'mainmenu')"), - - bdoc("Display the window list menu."), - mpress("Button2", "mod_menu.pmenu(_, _sub, 'windowlist')"), - - submap(META.."K", { - bdoc("Backward-circulate focus."), - kpress("AnyModifier+Tab", "ioncore.goto_next(_chld, 'left')", - "_chld:non-nil"), - - bdoc("Raise focused object, if possible."), - kpress("AnyModifier+R", "WRegion.rqorder(_chld, 'front')", - "_chld:non-nil"), - }), - - bdoc("Start i3lock"), - kpress("Mod1+Control+l", "ioncore.exec('i3lock -c 000000')"), - - submap("Control+Z", { - kpress("B", "mod_menu.grabmenu(_, _sub, 'focuslist')"), - - bdoc("Forward-circulate focus."), - -- '_chld' used here stands to for an actual child window that may not - -- be managed by the screen itself, unlike '_sub', that is likely to be - -- the managing group of that window. The right/left directions are - -- used instead of next/prev, because they work better in conjunction - -- with tilings. - kpress("space", "ioncore.goto_next(_chld, 'right')", "_chld:non-nil"), - - kpress("O", "ioncore.goto_next_screen()"), - - kpress("E", "xsteve_run_byclass('emacsclient -ca emacs', 'Emacs')"), - kpress("W", "xsteve_run_byclass('conkeror', 'Conkeror')"), - kpress("C", "xsteve_run_byclass('urxvt', 'URxvt')"), - }), -}) - - --- Client window bindings --- --- These bindings affect client windows directly. - -defbindings("WClientWin", { - submap(META.."K", { - bdoc("Nudge the client window. This might help with some ".. - "programs' resizing problems."), - kpress_wait(META.."L", "WClientWin.nudge(_)"), - - bdoc("Kill client owning the client window."), - kpress("C", "WClientWin.kill(_)"), - }), - submap("Control+Z", { - bdoc("Send next key press to the client window. ".. - "Some programs may not allow this by default."), - kpress("Q", "WClientWin.quote_next(_)"), - }), -}) - - --- Client window group bindings - -defbindings("WGroupCW", { - bdoc("Toggle client window group full-screen mode"), - kpress_wait(META.."Return", "WGroup.set_fullscreen(_, 'toggle')"), -}) - - --- WMPlex context bindings --- --- These bindings work in frames and on screens. The innermost of such --- contexts/objects always gets to handle the key press. - -defbindings("WMPlex", { - bdoc("Close current object."), - kpress_wait(META.."C", "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"), - - bdoc("Lock screen"), - kpress(META.."L", "notioncore.exec_on(_, notioncore.lookup_script('notion-lock'))"), - - bdoc("Query for manual page to be displayed."), - kpress(ALTMETA.."F1", "mod_query.query_man(_, ':man')"), - - bdoc("Show the Notion manual page."), - kpress(META.."F1", "ioncore.exec_on(_, ':man notion')"), - - bdoc("Run a terminal emulator."), - kpress(ALTMETA.."F2", "mod_query.exec_on_merr(_, XTERM or 'xterm')"), - - bdoc("Query for command line to execute."), - kpress(ALTMETA.."F3", "mod_query.query_exec(_)"), - - bdoc("Query for Lua code to execute."), - kpress(META.."F3", "mod_query.query_lua(_)"), - - bdoc("Query for host to connect to with SSH."), - kpress(ALTMETA.."F4", "mod_query.query_ssh(_, ':ssh')"), - - bdoc("Query for workspace to go to or create a new one."), - kpress(ALTMETA.."F9", "mod_query.query_workspace(_)"), - - bdoc("Query for a client window to go to."), - kpress(META.."G", "mod_query.query_gotoclient(_)"), - - bdoc("Display context menu."), - kpress(META.."M", "mod_menu.menu(_, _sub, 'ctxmenu')"), - - 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"), - }), -}) - - --- WFrame context bindings --- --- These bindings are common to all types of frames. Some additional --- frame bindings are found in some modules' configuration files. - -defbindings("WFrame", { - submap(META.."K", { - bdoc("Maximize the frame horizontally/vertically."), - kpress("H", "WFrame.maximize_horiz(_)"), - kpress("V", "WFrame.maximize_vert(_)"), - }), - - bdoc("Display context menu."), - mpress("Button3", "mod_menu.pmenu(_, _sub, 'ctxmenu')"), - - bdoc("Begin move/resize mode."), - kpress(META.."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(META.."Button3", "WFrame.p_resize(_)"), - - bdoc("Move the frame."), - mdrag(META.."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(_)"), - - bdoc("Switch to next/previous object within the frame."), - mclick(META.."Button4", "WFrame.switch_next(_)"), - mclick(META.."Button5", "WFrame.switch_prev(_)"), -}) - --- Frames for transient windows ignore this bindmap - -defbindings("WFrame.toplevel", { - 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)"), - 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("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", "ioncore.tagged_attach(_)"), - }), - - submap("Control+Z", { - bdoc("Switch to next object within the frame."), - kpress("Z", "WFrame.switch_next(_)"), - }), -}) - --- Bindings for floating frames. - -defbindings("WFrame.floating", { - bdoc("Toggle shade mode"), - mdblclick("Button1@tab", "WFrame.set_shaded(_, 'toggle')"), - - bdoc("Raise the frame."), - mpress("Button1@tab", "WRegion.rqorder(_, 'front')"), - mpress("Button1@border", "WRegion.rqorder(_, 'front')"), - mclick(META.."Button1", "WRegion.rqorder(_, 'front')"), - - bdoc("Lower the frame."), - mclick(META.."Button3", "WRegion.rqorder(_, 'back')"), - - bdoc("Move the frame."), - mdrag("Button1@tab", "WFrame.p_move(_)"), -}) - - --- WMoveresMode context bindings --- --- These bindings are available keyboard move/resize mode. The mode --- is activated on frames with the command begin_kbresize (bound to --- META.."R" above by default). - -defbindings("WMoveresMode", { - bdoc("Cancel the resize mode."), - kpress("AnyModifier+Escape","WMoveresMode.cancel(_)"), - - bdoc("End the resize mode."), - kpress("AnyModifier+Return","WMoveresMode.finish(_)"), - - bdoc("Grow in specified direction."), - kpress("Left", "WMoveresMode.resize(_, 1, 0, 0, 0)"), - kpress("Right", "WMoveresMode.resize(_, 0, 1, 0, 0)"), - kpress("Up", "WMoveresMode.resize(_, 0, 0, 1, 0)"), - kpress("Down", "WMoveresMode.resize(_, 0, 0, 0, 1)"), - kpress("F", "WMoveresMode.resize(_, 1, 0, 0, 0)"), - kpress("B", "WMoveresMode.resize(_, 0, 1, 0, 0)"), - kpress("P", "WMoveresMode.resize(_, 0, 0, 1, 0)"), - kpress("N", "WMoveresMode.resize(_, 0, 0, 0, 1)"), - - bdoc("Shrink in specified direction."), - kpress("Shift+Left", "WMoveresMode.resize(_,-1, 0, 0, 0)"), - kpress("Shift+Right", "WMoveresMode.resize(_, 0,-1, 0, 0)"), - kpress("Shift+Up", "WMoveresMode.resize(_, 0, 0,-1, 0)"), - kpress("Shift+Down", "WMoveresMode.resize(_, 0, 0, 0,-1)"), - kpress("Shift+F", "WMoveresMode.resize(_,-1, 0, 0, 0)"), - kpress("Shift+B", "WMoveresMode.resize(_, 0,-1, 0, 0)"), - kpress("Shift+P", "WMoveresMode.resize(_, 0, 0,-1, 0)"), - kpress("Shift+N", "WMoveresMode.resize(_, 0, 0, 0,-1)"), - - bdoc("Move in specified direction."), - kpress(META.."Left", "WMoveresMode.move(_,-1, 0)"), - kpress(META.."Right", "WMoveresMode.move(_, 1, 0)"), - kpress(META.."Up", "WMoveresMode.move(_, 0,-1)"), - kpress(META.."Down", "WMoveresMode.move(_, 0, 1)"), - kpress(META.."F", "WMoveresMode.move(_,-1, 0)"), - kpress(META.."B", "WMoveresMode.move(_, 1, 0)"), - kpress(META.."P", "WMoveresMode.move(_, 0,-1)"), - kpress(META.."N", "WMoveresMode.move(_, 0, 1)"), -}) - - --- --- Menu definitions --- - - --- Main menu -defmenu("mainmenu", { - menuentry("Run...", "mod_query.query_exec(_)"), - menuentry("Terminal", "mod_query.exec_on_merr(_, XTERM or 'xterm')"), - menuentry("Lock screen", - "notioncore.exec_on(_, notioncore.lookup_script('notion-lock'))"), - menuentry("Help", "mod_query.query_man(_)"), - menuentry("About Notion", "mod_query.show_about_ion(_)"), - submenu("Styles", "stylemenu"), - submenu("Session", "sessionmenu"), -}) - - --- Session control menu -defmenu("sessionmenu", { - menuentry("Save", "ioncore.snapshot()"), - menuentry("Restart", "ioncore.restart()"), - menuentry("Restart TWM", "ioncore.restart_other('twm')"), - menuentry("Exit", "ioncore.shutdown()"), -}) - - --- 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)"), - -- 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')"), -}) - - --- Context menu for workspaces -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(_)"), -}) -- cgit v1.2.3-54-g00ecf