Compare commits

..

5 Commits

Author SHA1 Message Date
Ryan 637ffb0586
fix focus bindings 2024-06-19 17:38:56 -04:00
Ryan 924eafe75b
update confg
- Disable bartab border
- Remove font from xresourcs config and manually set font
- Update keybindings
2024-06-19 17:38:56 -04:00
Ryan 24bfba4ebc
setup basic keybindings
Layout loosely inspired by https://github.com/xahlee/xah-fly-keys.

More so the concept of rebinding based on ergonomics not using letters
to remember.
2024-06-19 17:38:56 -04:00
Ryan 267ee8b697
setup window rules 2024-06-19 17:38:56 -04:00
Ryan 6fad33ca17
create initial configuration 2024-06-19 17:38:56 -04:00
2 changed files with 22 additions and 30 deletions

View File

@ -114,37 +114,40 @@ static Key keys[] = {
/* modifier key function argument */
/* spawn programs */
{ MODKEY, XK_space, spawn, {.v = dmenucmd } },
{ MODKEY, XK_Return, spawn, {.v = termcmd } },
{ MODKEY|ShiftMask, XK_Return, spawn, SHCMD("emacsclient -c") },
{ MODKEY, XK_p, spawn, SHCMD("pass-dmenu type") },
{ MODKEY|ShiftMask, XK_p, spawn, SHCMD("pass-dmenu clip") },
{ MODKEY, XK_t, spawn, {.v = dmenucmd } },
{ MODKEY, XK_a, spawn, {.v = termcmd } },
{ MODKEY, XK_g, spawn, SHCMD("emacsclient -c") },
{ MODKEY|ShiftMask, XK_g, spawn, SHCMD("emacs") },
{ MODKEY, XK_s, spawn, SHCMD("pass-dmenu type") },
{ MODKEY|ShiftMask, XK_S, spawn, SHCMD("pass-dmenu clip") },
/* window manager controls */
{ MODKEY|ControlMask, XK_q, spawn, SHCMD("dmenu-sys") },
{ MODKEY|ControlMask, XK_b, togglebar, {0} },
{ MODKEY|ControlMask, XK_Down, incnmaster, {.i = -1 } },
{ MODKEY|ControlMask, XK_Up, incnmaster, {.i = +1 } },
{ MODKEY|ControlMask, XK_Left, setmfact, {.f = -0.05} },
{ MODKEY|ControlMask, XK_Right, setmfact, {.f = +0.05} },
{ MODKEY, XK_t, setlayout, {.v = &layouts[0]} },
{ MODKEY|ControlMask, XK_z, togglebar, {0} },
{ MODKEY|ControlMask, XK_l, incnmaster, {.i = -1 } },
{ MODKEY|ControlMask, XK_u, incnmaster, {.i = +1 } },
{ MODKEY|ControlMask, XK_m, setmfact, {.f = -0.05} },
{ MODKEY|ControlMask, XK_i, setmfact, {.f = +0.05} },
{ MODKEY, XK_w, setlayout, {.v = &layouts[0]} },
{ MODKEY, XK_f, setlayout, {.v = &layouts[1]} },
{ MODKEY, XK_m, setlayout, {.v = &layouts[2]} },
{ MODKEY, XK_p, setlayout, {.v = &layouts[2]} },
{ MODKEY, XK_space, setlayout, {0} },
{ MODKEY|ShiftMask, XK_q, quit, {0} },
{ MODKEY|ControlMask|ShiftMask, XK_q, quit, {1} },
/* window management */
{ MODKEY, XK_Tab, focusstack, {.i = +1 } },
{ MODKEY|ShiftMask, XK_Tab, focusstack, {.i = -1 } },
{ MODKEY|ShiftMask, XK_m, zoom, {0} },
{ MODKEY, XK_n, focusstack, {.i = +1 } },
{ MODKEY, XK_e, focusstack, {.i = -1 } },
{ MODKEY, XK_m, zoom, {0} },
{ MODKEY, XK_Tab, view, {0} },
{ MODKEY, XK_0, view, {.ui = ~0 } },
{ MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } },
{ MODKEY|ShiftMask, XK_f, togglefloating, {0} },
{ MODKEY, XK_x, togglefloating, {0} },
{ MODKEY, XK_q, killclient, {0} },
/* monitor navigation */
{ MODKEY, XK_s, focusmon, {.i = +1 } },
{ MODKEY|ShiftMask, XK_s, tagmon, {.i = +1 } },
{ MODKEY, XK_comma, focusmon, {.i = +1 } },
{ MODKEY|ShiftMask, XK_comma, tagmon, {.i = +1 } },
/* system managemment */
{ 0, XF86XK_AudioMute, spawn, SHCMD("pamixer --toggle-mute") },

13
dwm.c
View File

@ -64,7 +64,7 @@ enum { CurNormal, CurResize, CurMove, CurLast }; /* cursor */
enum { SchemeNorm, SchemeSel, SchemeTabActive, SchemeTabInactive }; /* color schemes */
enum { NetSupported, NetWMName, NetWMState, NetWMCheck,
NetWMFullscreen, NetActiveWindow, NetWMWindowType,
NetWMWindowTypeDialog, NetClientList, NetClientStacking, NetClientInfo, NetLast }; /* EWMH atoms */
NetWMWindowTypeDialog, NetClientList, NetClientInfo, NetLast }; /* EWMH atoms */
enum { WMProtocols, WMDelete, WMState, WMTakeFocus, WMLast }; /* default atoms */
enum { ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle,
ClkClientWin, ClkRootWin, ClkLast }; /* clicks */
@ -1302,8 +1302,6 @@ manage(Window w, XWindowAttributes *wa)
attachstack(c);
XChangeProperty(dpy, root, netatom[NetClientList], XA_WINDOW, 32, PropModeAppend,
(unsigned char *) &(c->win), 1);
XChangeProperty(dpy, root, netatom[NetClientListStacking], XA_WINDOW, 32, PropModePrepend,
(unsigned char *) &(c->win), 1);
XMoveResizeWindow(dpy, c->win, c->x + 2 * sw, c->y, c->w, c->h); /* some windows require this */
setclientstate(c, NormalState);
if (c->mon == selmon)
@ -1884,7 +1882,6 @@ setup(void)
netatom[NetWMWindowTypeDialog] = XInternAtom(dpy, "_NET_WM_WINDOW_TYPE_DIALOG", False);
netatom[NetClientList] = XInternAtom(dpy, "_NET_CLIENT_LIST", False);
netatom[NetClientInfo] = XInternAtom(dpy, "_NET_CLIENT_INFO", False);
netatom[NetClientListStacking] = XInternAtom(dpy, "_NET_CLIENT_LIST_STACKING", False);
/* init cursors */
cursor[CurNormal] = drw_cur_create(drw, XC_left_ptr);
cursor[CurResize] = drw_cur_create(drw, XC_sizing);
@ -1909,7 +1906,6 @@ setup(void)
PropModeReplace, (unsigned char *) netatom, NetLast);
XDeleteProperty(dpy, root, netatom[NetClientList]);
XDeleteProperty(dpy, root, netatom[NetClientInfo]);
XDeleteProperty(dpy, root, netatom[NetClientListStacking]);
/* select events */
wa.cursor = cursor[CurNormal]->cursor;
wa.event_mask = SubstructureRedirectMask|SubstructureNotifyMask
@ -2227,13 +2223,6 @@ updateclientlist()
XChangeProperty(dpy, root, netatom[NetClientList],
XA_WINDOW, 32, PropModeAppend,
(unsigned char *) &(c->win), 1);
XDeleteProperty(dpy, root, netatom[NetClientListStacking]);
for (m = mons; m; m = m->next)
for (c = m->stack; c; c = c->snext)
XChangeProperty(dpy, root, netatom[NetClientListStacking],
XA_WINDOW, 32, PropModeAppend,
(unsigned char *) &(c->win), 1);
}
int