You are not logged in.
Hi! i was using dwm for several years from 2007/2008, but the last years I used i3wm more. Now i wanted to go back to dwm and i found that for whatever reason some commands don't work while most others do.
Here is my dwm config.h file:
/* See LICENSE file for copyright and license details. */
/* appearance */
static const unsigned int borderpx = 1; /* border pixel of windows */
static const unsigned int snap = 32; /* snap pixel */
static const int showbar = 1; /* 0 means no bar */
static const int topbar = 1; /* 0 means bottom bar */
static const char *fonts[] = { "monospace:size=10" };
static const char dmenufont[] = "monospace:size=10";
static const char col_gray1[] = "#222222";
static const char col_gray2[] = "#444444";
static const char col_gray3[] = "#bbbbbb";
static const char col_gray4[] = "#eeeeee";
static const char col_cyan[] = "#005577";
static const char col_violet[] = "#8f00ff";
static const char *colors[][3] = {
/* fg bg border */
[SchemeNorm] = { col_gray3, col_gray1, col_gray2 },
[SchemeSel] = { col_gray4, col_violet, col_violet },
};
/* tagging */
static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
static const Rule rules[] = {
/* xprop(1):
* WM_CLASS(STRING) = instance, class
* WM_NAME(STRING) = title
*/
/* class instance title tags mask isfloating monitor */
{ "mpv", NULL, NULL, 0, 1, -1 },
{ "firefox", NULL, NULL, 1 << 1, 0, -1 },
{ "Google-chrome", NULL, NULL, 1 << 2, 0, -1 },
{ "TelegramDesktop", NULL, NULL, 1 << 3, 0, -1 },
{ "jetbrains-idea-ce", NULL, NULL, 1 << 4, 0, -1 },
{ "Apache JMeter", NULL, NULL, 1 << 4, 0, -1 },
{ "JDownloader", NULL, NULL, 1 << 6, 0, -1 },
{ "Transmission-gtk", NULL, NULL, 1 << 6, 0, -1 },
{ "Amule", NULL, NULL, 1 << 6, 0, -1 },
{ "Pcmanfm", NULL, NULL, 1 << 7, 0, -1 },
{ "xfreerdp", NULL, NULL, 1 << 8, 0, -1 },
};
/* layout(s) */
static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */
static const int nmaster = 1; /* number of clients in master area */
static const int resizehints = 1; /* 1 means respect size hints in tiled resizals */
static const Layout layouts[] = {
/* symbol arrange function */
{ "[M]", monocle },
{ "[]=", tile }, /* first entry is default */
{ "><>", NULL }, /* no layout function means floating behavior */
};
/* key definitions */
#define MODKEY Mod1Mask
#define TAGKEYS(KEY,TAG) \
{ MODKEY, KEY, view, {.ui = 1 << TAG} }, \
{ MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \
{ MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \
{ MODKEY|ControlMask|ShiftMask, 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 char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */
static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", col_gray1, "-nf", col_gray3, "-sb", col_violet, "-sf", col_gray4, NULL };
static const char *termcmd[] = { "st", NULL };
static const char *termcmdalt[] = { "st", "-f", "Bitstream vera sans mono:pixelsize=24:antialias=true:autohint=false", NULL };
static Key keys[] = {
/* modifier key function argument */
{ MODKEY, XK_p, spawn, {.v = dmenucmd } },
{ MODKEY, XK_Return, spawn, {.v = termcmd } },
{ MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmdalt } },
{ MODKEY, XK_b, togglebar, {0} },
{ MODKEY, XK_j, focusstack, {.i = +1 } },
{ MODKEY, XK_k, focusstack, {.i = -1 } },
{ MODKEY, XK_i, incnmaster, {.i = +1 } },
{ MODKEY, XK_d, incnmaster, {.i = -1 } },
{ MODKEY, XK_h, setmfact, {.f = -0.05} },
{ MODKEY, XK_l, setmfact, {.f = +0.05} },
{ MODKEY, XK_Return, zoom, {0} },
{ MODKEY, XK_Tab, view, {0} },
{ MODKEY|ShiftMask, XK_q, killclient, {0} },
{ MODKEY, XK_t, setlayout, {.v = &layouts[1]} },
{ MODKEY, XK_f, setlayout, {.v = &layouts[2]} },
{ MODKEY, XK_m, setlayout, {.v = &layouts[0]} },
{ MODKEY, XK_space, setlayout, {0} },
{ MODKEY|ShiftMask, XK_space, togglefloating, {0} },
{ MODKEY, XK_0, view, {.ui = ~0 } },
{ MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } },
{ MODKEY, XK_comma, focusmon, {.i = -1 } },
{ MODKEY, XK_period, focusmon, {.i = +1 } },
{ MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } },
{ MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } },
TAGKEYS( XK_1, 0)
TAGKEYS( XK_2, 1)
TAGKEYS( XK_3, 2)
TAGKEYS( XK_4, 3)
TAGKEYS( XK_5, 4)
TAGKEYS( XK_6, 5)
TAGKEYS( XK_7, 6)
TAGKEYS( XK_8, 7)
TAGKEYS( XK_9, 8)
{ MODKEY|ShiftMask, XK_x, quit, {0} },
};
/* button definitions */
/* click can be ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
static Button buttons[] = {
/* click event mask button function argument */
{ ClkLtSymbol, 0, Button1, setlayout, {0} },
{ ClkLtSymbol, 0, Button3, setlayout, {.v = &layouts[2]} },
{ ClkWinTitle, 0, Button2, zoom, {0} },
{ ClkStatusText, 0, Button2, spawn, {.v = termcmd } },
{ ClkClientWin, MODKEY, Button1, movemouse, {0} },
{ ClkClientWin, MODKEY, Button2, togglefloating, {0} },
{ ClkClientWin, MODKEY, Button3, resizemouse, {0} },
{ ClkTagBar, 0, Button1, view, {0} },
{ ClkTagBar, 0, Button3, toggleview, {0} },
{ ClkTagBar, MODKEY, Button1, tag, {0} },
{ ClkTagBar, MODKEY, Button3, toggletag, {0} },
};
Some of them that are not working are
{ MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmdalt } },
{ MODKEY|ShiftMask, XK_q, killclient, {0} },
{ MODKEY, XK_space, setlayout, {0} },
{ MODKEY|ShiftMask, XK_x, quit, {0} },
While others do work, for example:
{ MODKEY, XK_p, spawn, {.v = dmenucmd } },
{ MODKEY, XK_Return, spawn, {.v = termcmd } },
I already tried, adding or removing the "ShiftMask" key but the effect is the same, like its the command that its not working, whatever keys i add.
Thanks in advance!
Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.
-- Antoine de Saint-Exupery
Offline
Are you sure that your custom dwm version is being run?
type dwm
How did you go about compiling and installing the binary?
Offline
Are you sure that your custom dwm version is being run?
type dwm
How did you go about compiling and installing the binary?
For compiling i made the standard aur procedure, like this:
$ mkdir -p ~/aur
$ cd ~/aur
$ git clone [url]https://aur.archlinux.org/dwm.git[/url]
$ cd dwm
<made my customizations in config.h file>
$ makepkg -fsi
and in my ~/.xinitrc i have:
#!/bin/sh
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap
# merge in defaults and keymaps
if [ -f $sysresources ]; then
xrdb -merge $sysresources
fi
if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi
if [ -f "$userresources" ]; then
xrdb -merge "$userresources"
fi
if [ -f "$usermodmap" ]; then
xmodmap "$usermodmap"
fi
# start some nice programs
picom -b --config ~/.picom.conf
#volumeicon &
xsetroot -solid '#9400D3' &
feh --bg-scale ~/Pictures/lea/wallpapers/680-summer-forest-after-the-rain_dark.jpg &
#feh --bg-scale ~/Pictures/lea/wallpapers/8f00ff.png &
#xbindkeys &
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
[ -x "$f" ] && . "$f"
done
unset f
fi
# dwm statusbar
#dwmstatus 2>&1 >/dev/null &
slstatus 2>&1 >/dev/null &
# dwm status
# Statusbar loop
#while true; do
# xsetroot -name "$( date +"%Y-%m-%d %H:%M" )"
# sleep 1m # Update time every minute
#done &
# Fixing misbehaving Java applications
wmname compiz
export AWT_TOOLKIT=MToolkit
#exec startxfce4
#exec startlxde
#exec i3
#exec ~/bin/startdwm
exec dwm
Edit:
Weird thing, is that i tried to remove the package with pacman and then install directly from source (without AUR) and it didn't seem to take in account my customizations, so weird.
$ mkdir ~/src
$ git clone [url]https://git.suckless.org/dwm[/url]
$ cd dwm
<made my customizations in config.def.h file>
$ sudo make clean install
with same ~/.xinit file
Edit2:
Now i'm remembering that many years ago, i installed in this computer using the zen installer iso here https://sourceforge.net/projects/revenge-installer/ instead of installing manually, maybe is something related to that i am now thinking.
Last edited by leo2501 (2020-06-17 16:21:31)
Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.
-- Antoine de Saint-Exupery
Offline
didn't seem to take in account my customizations
Try altering the colors and as HoaS pointed out, check "type dwm" to see what's actually executed.
Now i'm remembering that many years ago, i installed in this computer using the zen installer iso here https://sourceforge.net/projects/revenge-installer/ instead of installing manually
You're aware that this is technically disqualifiying?
Check what binary (path) is actually executed.
Check whether you can change any configuration (colors)
Check whether your config.h.in changes remain in the generated config.h
Check whether it's rather the commands or the shortcuts that fail you (binding the disfunctional commands to working shortcuts and working commands to failing shortcuts)
Offline