update config

This commit is contained in:
Leonardo Hernández Hernández 2022-10-16 17:20:20 -05:00
parent bcaa992d37
commit 5eb001b08f
No known key found for this signature in database
GPG Key ID: E538897EE11B9624

View File

@ -1,38 +1,89 @@
/* appearance */
static const int sloppyfocus = 1; /* focus follows mouse */
static const unsigned int borderpx = 1; /* border pixel of windows */
static const int lockfullscreen = 1; /* 1 will force focus on the fullscreen window */
static const int smartborders = 1;
static const unsigned int gappih = 10; /* horiz inner gap between windows */
static const unsigned int gappiv = 10; /* vert inner gap between windows */
static const unsigned int gappoh = 10; /* horiz outer gap between windows and screen edge */
static const unsigned int gappov = 10; /* vert outer gap between windows and screen edge */
static const unsigned int borderpx = 2; /* border pixel of windows */
static const unsigned int gappih = 6; /* horiz inner gap between windows */
static const unsigned int gappiv = 6; /* vert inner gap between windows */
static const unsigned int gappoh = 6; /* horiz outer gap between windows and screen edge */
static const unsigned int gappov = 6; /* vert outer gap between windows and screen edge */
static const int smartgaps = 0; /* 1 means no outer gap when there is only one window */
static const int monoclegaps = 0; /* 1 means outer gaps in monocle layout */
static const int smartborders = 0; /* 1 means no borders when there is only one window */
static const int monoclegaps = 1; /* 1 means outer gaps in monocle layout */
static const int numlock = 1;
static const int capslock = 0;
static const float rootcolor[] = {0.3, 0.3, 0.3, 1.0};
static const float bordercolor[] = {0.5, 0.5, 0.5, 1.0};
static const float focuscolor[] = {1.0, 0.0, 0.0, 1.0};
static const float focuscolor[] = {0.37, 0.0, 1.0, 1.0};
static const float bordercolor[] = {0.0, 0.0, 0.0, 0.7};
/* To conform the xdg-protocol, set the alpha to zero to restore the old behavior */
static const float fullscreen_bg[] = {0.1, 0.1, 0.1, 0.0};
static const char *cursortheme = NULL; /* theme from /usr/share/cursors/xorg-x11 or ${XCURSOR_PATH} */
static const char *cursortheme = "breeze_cursors"; /* theme from ${XCURSOR_PATH} or /usr/share/cursors/xorg-x11 if emtpy*/
static const char cursorsize[] = "24";
static const char *const autostart[] = {
/* from https://github.com/swaywm/sway/wiki/GTK-3-settings-on-Wayland */
"import-gsettings", NULL,
/* https://sr.ht/~kennylevinsen/wlsunset/ */
"sh", "-c", "wlsunset $(tr '\\n' ' ' < ~/.config/wlsunset/wlsunset.conf)", NULL,
"fnott", NULL, /* https://codeberg.org/dnkl/fnott */
"swayidle", "-w", NULL,
"foot", "--log-level=none", "--server", NULL,
/* chbg is a script that print a random image. */
"sh", "-c", "wbg $(chbg --print)", NULL, /* https://codeberg.org/dnkl/wbg */
"yambar", NULL,
"sh", "-c", "yambar -c ~/.config/yambar/config-bottom.yml", NULL,
"sh", "-c", "pidof wireplumber 2>&1 > /dev/null || gentoo-pipewire-launcher 2>/dev/null", NULL,
"sh", "-c", "pidof emacs 2>&1 > /dev/null || emacs --fg-daemon", NULL,
NULL /* terminate */
};
/* tagging */
static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
static const char *tags[] = {
"", "", "", "", "", "", "", "", "", ""
};
static const Rule rules[] = {
/* app_id title tags mask isfloating monitor */
/* examples:
{ "Gimp", NULL, 0, 1, -1 },
*/
{ "firefox", NULL, 1 << 8, 0, -1 },
{ "tag1", NULL, 1 << 0, 0, -1 },
{ "tag2", NULL, 1 << 1, 0, -1 },
{ "tag3", NULL, 1 << 2, 0, -1 },
{ "tag4", NULL, 1 << 3, 0, -1 },
{ "tag5", NULL, 1 << 4, 0, -1 },
{ "tag6", NULL, 1 << 5, 0, -1 },
{ "tag7", NULL, 1 << 6, 0, -1 },
{ "tag8", NULL, 1 << 7, 0, -1 },
{ "tag9", NULL, 1 << 8, 0, -1 },
{ "tag0", NULL, 1 << 9, 0, -1 },
{ "firefox", NULL, 1 << 0, 0, -1 },
{ "chromium", NULL, 1 << 0, 0, -1 },
{ "Emacs", NULL, 1 << 1, 0, -1 },
{ "emacs", NULL, 1 << 1, 0, -1 },
{ "Alacritty", NULL, 1 << 2, 0, -1 },
{ "foot", NULL, 1 << 2, 0, -1 },
{ "office", NULL, 1 << 4, 0, -1 },
{ "zathura", NULL, 1 << 4, 0, -1 },
{ "imv", NULL, 1 << 5, 0, -1 },
{ "zoom", NULL, 1 << 6, 0, -1 },
{ "mpv", NULL, 1 << 6, 0, -1 },
{ "telegram", NULL, 1 << 8, 0, -1 },
};
/* layout(s) */
static const Layout layouts[] = {
/* symbol arrange function */
{ "[]=", tile },
{ "><>", NULL }, /* no layout function means floating behavior */
{ "[T]", tile },
{ "[F]", NULL }, /* no layout function means floating behavior */
{ "[M]", monocle },
{ NULL, NULL },
};
@ -46,22 +97,16 @@ static const MonitorRule monrules[] = {
{ "eDP-1", 0.5, 1, 2, &layouts[0], WL_OUTPUT_TRANSFORM_NORMAL, 0, 0, 0, 0, 120.000, 1, 0 },
*/
/* defaults */
{ NULL, 0.55, 1, 1, &layouts[0], WL_OUTPUT_TRANSFORM_NORMAL, 0, 0, 0, 0, 0, 0, 1},
{ NULL, 0.5, 1, 1, &layouts[2], WL_OUTPUT_TRANSFORM_NORMAL, 0, 0, 0, 0, 40.005, 0, 0 },
};
/* keyboard */
static const struct xkb_rule_names xkb_rules = {
/* can specify fields: rules, model, layout, variant, options */
/* example:
.options = "ctrl:nocaps",
*/
.options = NULL,
0
};
/* numlock and capslock */
static const int numlock = 1;
static const int capslock = 0;
static const int repeat_rate = 25;
static const int repeat_delay = 600;
@ -99,56 +144,80 @@ static const uint32_t send_events_mode = LIBINPUT_CONFIG_SEND_EVENTS_ENABLED;
LIBINPUT_CONFIG_ACCEL_PROFILE_FLAT
LIBINPUT_CONFIG_ACCEL_PROFILE_ADAPTIVE
*/
static const enum libinput_config_accel_profile accel_profile = LIBINPUT_CONFIG_ACCEL_PROFILE_ADAPTIVE;
static const enum libinput_config_accel_profile accel_profile = LIBINPUT_CONFIG_ACCEL_PROFILE_FLAT;
static const double accel_speed = 0.0;
/* Autostart */
static const char *const autostart[] = {
"sh", "-c", "swaybg --image /xap/local/background", NULL,
NULL /* terminate */
};
#define MODKEY WLR_MODIFIER_LOGO
#define ALTKEY WLR_MODIFIER_ALT
#define Control WLR_MODIFIER_CTRL
#define Shift WLR_MODIFIER_SHIFT
/* If you want to use the windows key change this to WLR_MODIFIER_LOGO */
#define MODKEY WLR_MODIFIER_ALT
#define TAGKEYS(KEY,TAG) \
{ MODKEY, KEY, view, {.ui = 1 << TAG} }, \
{ MODKEY|WLR_MODIFIER_CTRL, KEY, toggleview, {.ui = 1 << TAG} }, \
{ MODKEY|WLR_MODIFIER_SHIFT, KEY, tag, {.ui = 1 << TAG} }, \
{ MODKEY|WLR_MODIFIER_CTRL|WLR_MODIFIER_SHIFT,KEY,toggletag, {.ui = 1 << TAG} }
{ MODKEY|Control, KEY, toggleview, {.ui = 1 << TAG} }, \
{ MODKEY|Shift, KEY, tag, {.ui = 1 << TAG} }, \
{ MODKEY|Control|Shift, KEY, toggletag, {.ui = 1 << TAG} }
/* helper for spawning shell commands in the pre dwm-5.0 fashion */
#define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
/* commands */
static const char *termcmd[] = { "foot", NULL };
static const char *menucmd[] = { "bemenu-run", NULL };
/* helper for run programs */
#define RUN(...) { .v = (const char*[]){ __VA_ARGS__, NULL } }
#include "keys.h"
#define DEFAULT_STEP "2"
/* You'll probably wanna change some of these */
static const Key keys[] = {
/* modifier key function argument */
{ MODKEY, Key_p, spawn, {.v = menucmd} },
{ MODKEY|WLR_MODIFIER_SHIFT, Key_Return, spawn, {.v = termcmd} },
/* ------------------ Windows ------------------ */
/* Switch between windows */
{ MODKEY, Key_j, focusstack, {.i = +1} },
{ MODKEY, Key_k, focusstack, {.i = -1} },
/* Move windows */
{ MODKEY|Control, Key_j, pushdown, {0} },
{ MODKEY|Control, Key_k, pushup, {0} },
/* Change window sizes */
{ MODKEY, Key_i, incnmaster, {.i = +1} },
{ MODKEY, Key_d, incnmaster, {.i = -1} },
{ MODKEY|Shift, Key_i, incnmaster, {.i = -1} },
{ MODKEY, Key_h, setmfact, {.f = -0.05} },
{ MODKEY, Key_l, setmfact, {.f = +0.05} },
{ MODKEY, Key_Return, zoom, {0} },
{ MODKEY, Key_Tab, view, {0} },
{ MODKEY|WLR_MODIFIER_SHIFT, Key_c, killclient, {0} },
{ MODKEY, Key_t, setlayout, {.v = &layouts[0]} },
{ MODKEY, Key_f, setlayout, {.v = &layouts[1]} },
{ MODKEY, Key_m, setlayout, {.v = &layouts[2]} },
{ MODKEY, Key_space, setlayout, {0} },
{ MODKEY|WLR_MODIFIER_SHIFT, Key_space, togglefloating, {0} },
{ MODKEY, Key_e, togglefullscreen, {0} },
{ MODKEY, Key_0, view, {.ui = ~0} },
{ MODKEY|WLR_MODIFIER_SHIFT, Key_0, tag, {.ui = ~0} },
/* Toggle floating */
{ MODKEY|Control, Key_f, togglefloating, {0} },
/* Toggle fullscreen */
{ MODKEY|Shift, Key_f, togglefullscreen, {0} },
/* Toggle bars */
/* SIGUSR1 toggle somebar */
{ MODKEY|Control, Key_b, spawn, RUN("pkill", "runbars", "-USR1") },
/* SIGUSR2 toggle dtao */
{ MODKEY|ALTKEY, Key_b, spawn, RUN("pkill", "runbars", "-USR2") },
/* Cycle layouts */
{ MODKEY, Key_Tab, cyclelayout, {.i = +1 } },
{ MODKEY|Shift, Key_Tab, cyclelayout, {.i = -1 } },
/* Focus next - prev monitor */
{ MODKEY, Key_comma, focusmon, {.i = WLR_DIRECTION_LEFT} },
{ MODKEY, Key_period, focusmon, {.i = WLR_DIRECTION_RIGHT} },
{ MODKEY|WLR_MODIFIER_SHIFT, Key_comma, tagmon, {.i = WLR_DIRECTION_LEFT} },
{ MODKEY|WLR_MODIFIER_SHIFT, Key_period, tagmon, {.i = WLR_DIRECTION_RIGHT} },
/* Send window to next - prev monitor */
{ MODKEY|Shift, Key_comma, tagmon, {.i = WLR_DIRECTION_LEFT} },
{ MODKEY|Shift, Key_period, tagmon, {.i = WLR_DIRECTION_RIGHT} },
/* Kill window */
{ MODKEY, Key_w, killclient, {0} },
/* Quit dwl */
{ MODKEY|Control, Key_q, quit, {0} },
/* ---------------- Workspaces ----------------- */
TAGKEYS( Key_1, 0),
TAGKEYS( Key_2, 1),
TAGKEYS( Key_3, 2),
@ -158,11 +227,93 @@ static const Key keys[] = {
TAGKEYS( Key_7, 6),
TAGKEYS( Key_8, 7),
TAGKEYS( Key_9, 8),
{ MODKEY|WLR_MODIFIER_SHIFT, Key_q, quit, {0} },
TAGKEYS( Key_0, 9),
/* Switch between the last tag and the current */
{ MODKEY, Key_slash, view, { .ui = 0 } },
/* ------------------- Apps -------------------- */
{ MODKEY, Key_m, spawn, RUN("fuzzel_run") },
{ MODKEY|Shift, Key_m, spawn, RUN("fuzzel") },
{ MODKEY, Key_d, spawn, RUN("fnott-select-n-run", "dismiss") },
{ MODKEY|Shift, Key_d, spawn, RUN("fnottctl", "dismiss") },
{ MODKEY|Control, Key_d, spawn, RUN("fnottctl", "dismiss" "all") },
{ MODKEY, Key_a, spawn, RUN("fnott-select-n-run", "actions") },
{ MODKEY|Shift, Key_a, spawn, RUN("fnottctl", "actions") },
/* Terminal emulators */
{ MODKEY, Key_Return, spawn, RUN("footclient") },
{ MODKEY|Shift, Key_Return, spawn, SHCMD("alacritty msg create-window || alacritty") },
/* Browsers */
{ MODKEY, Key_b, spawn, RUN("chromium") },
{ MODKEY|Shift, Key_b, spawn, RUN("firefox") },
{ MODKEY, Key_e, spawn, RUN("emacsclient", "-c", "-a", "") },
/* Screenshot */
{ MODKEY, Key_s, spawn, SHCMD("grim - | swappy -f -") },
{ MODKEY|Shift, Key_s, spawn, SHCMD("grim -g \"$(slurp)\" - | swappy -f -") },
/* Music Players */
{ MODKEY, Key_p, spawn, RUN("spotify") },
/* Mail client */
{ MODKEY, Key_n, spawn, RUN("footclient", "-a", "tag9", "startneomutt") },
{ MODKEY|Shift, Key_n, spawn, RUN("footclient", "-a", "tag9", "startweechat") },
/* ----------------- Hardware ------------------ */
/* Shutdown computer */
{ ALTKEY|Control, Key_Delete, spawn, RUN("loginctl", "poweroff") },
/* Restart computer */
{ ALTKEY|Control, Key_Insert, spawn, RUN("loginctl", "reboot") },
/* Hibernate computer */
{ MODKEY|Control, Key_Delete, spawn, RUN("loginctl", "hibernate") },
/* Suspend computer */
{ MODKEY|Control, Key_Insert, spawn, RUN("loginctl", "suspend") },
/* Volume */
{ 0, Key_XF86AudioLowerVolume, spawn, RUN("pactl", "set-sink-volume", "@DEFAULT_SINK@", "-"DEFAULT_STEP"%")},
{ 0, Key_XF86AudioRaiseVolume, spawn, RUN("pactl", "set-sink-volume", "@DEFAULT_SINK@", "+"DEFAULT_STEP"%")},
{ 0, Key_XF86AudioMute, spawn, RUN("pactl", "set-sink-mute", "@DEFAULT_SINK@", "toggle")},
{ 0, Key_XF86MonBrightnessDown, spawn, RUN("brightnessctl", "set", DEFAULT_STEP"%-") },
{ 0, Key_XF86MonBrightnessUp, spawn, RUN("brightnessctl", "set", "+"DEFAULT_STEP"%") },
/* ------------ Control music players ------------ */
/* Previus or next song */
{ 0, Key_XF86AudioPrev, spawn, RUN("playerctl", "-i", "spotify", "previous") },
{ 0, Key_XF86AudioNext, spawn, RUN("playerctl", "-i", "spotify", "next") },
{ MODKEY, Key_XF86AudioPrev, spawn, RUN("playerctl", "-p", "spotify", "previous") },
{ MODKEY, Key_XF86AudioNext, spawn, RUN("playerctl", "-p", "spotify", "next") },
/* Play or pause */
{ 0, Key_XF86AudioPlay, spawn, RUN("playerctl", "-i", "spotify", "play-pause") },
{ MODKEY, Key_XF86AudioPlay, spawn, RUN("playerctl", "-p", "spotify", "play-pause") },
/* Volume (all except spotify) */
{ MODKEY, Key_XF86AudioLowerVolume, spawn, RUN("playerctl", "-i", "spotify", "volume", "0.0"DEFAULT_STEP"-") },
{ MODKEY, Key_XF86AudioRaiseVolume, spawn, RUN("playerctl", "-i", "spotify", "volume", "0.0"DEFAULT_STEP"+") },
/* Volume (only for spotify) */
{ ALTKEY, Key_XF86AudioLowerVolume, spawn, RUN("vol_spotify", "-"DEFAULT_STEP"%") },
{ ALTKEY, Key_XF86AudioLowerVolume, spawn, RUN("vol_spotify", "+"DEFAULT_STEP"%") },
{ ALTKEY, Key_XF86AudioMute, spawn, RUN("vol_spotify", "toggle-mute")},
/* ------------------- TTY's ------------------- */
/* Ctrl-Alt-Backspace and Ctrl-Alt-Fx used to be handled by X server */
{ WLR_MODIFIER_CTRL|WLR_MODIFIER_ALT,Key_BackSpace, quit, {0} },
#define CHVT(KEY,n) { WLR_MODIFIER_CTRL|WLR_MODIFIER_ALT, KEY, chvt, {.ui = (n)} }
{ Control|ALTKEY, Key_BackSpace, quit, {0} },
#define CHVT(KEY,n) { Control|ALTKEY, KEY, chvt, {.ui = (n)} }
CHVT(Key_F1, 1), CHVT(Key_F2, 2), CHVT(Key_F3, 3), CHVT(Key_F4, 4),
CHVT(Key_F5, 5), CHVT(Key_F6, 6), CHVT(Key_F7, 7), CHVT(Key_F8, 8),
CHVT(Key_F9, 9), CHVT(Key_F10, 10), CHVT(Key_F11, 11), CHVT(Key_F12, 12),