You are not logged in.
Yes, # starts a comment in bash.
doh! thanks! ...man, i feel silly now.
Offline
Hey,
not sure if this is a bug. Some config commands, when called without an argument, return the currently set value. Some others dont. For example running:
# bspc config split_ratio
prints "0.520000". Running
# bspc config window_gap
prints nothing. It would be nice to have a way of getting the currently window_gap or paddings.
I tried to dig in the code, but I suck at C
Best, senft
Last edited by senft (2014-01-28 21:26:25)
Offline
Looks like it is probably a bug in cmd_config in messages.c. Here is a possibly corrected version:
bool cmd_config(char **args, int num, char *rsp)
{
if (num < 1)
return false;
coordinates_t ref = {mon, mon->desk, mon->desk->focus};
coordinates_t trg = {NULL, NULL, NULL};
if ((*args)[0] == OPT_CHR) {
if (streq("-d", *args) || streq("--desktop", *args)) {
num--, args++;
if (num < 1)
return false;
if (!desktop_from_desc(*args, &ref, &trg))
return false;
} else if (streq("-m", *args) || streq("--monitor", *args)) {
num--, args++;
if (num < 1)
return false;
if (!monitor_from_desc(*args, &ref, &trg))
return false;
} else {
return false;
}
num--, args++;
} else { /* changes here */
trg = ref;
}
if (num == 2)
return set_setting(trg, *args, *(args + 1));
else if (num == 1)
return get_setting(trg, *args, rsp);
else
return false;
}
(I say probably because I can see what's wrong - in the original, trg is full of NULLs if --desktop or --monitor is not used - but I don't really know if the trg = ref; assigment is "good" C code.)
Edit: for now you should be able to use, for example, bspc config --desktop focused window_gap .
Last edited by aoba (2014-01-28 22:04:30)
Offline
Hey,
not sure if this is a bug. Some config commands, when called without an argument, return the currently set value. Some others dont. For example running:# bspc config split_ratio
prints "0.520000". Running
# bspc config window_gap
prints nothing. It would be nice to have a way of getting the currently window_gap or paddings.
I tried to dig in the code, but I suck at C
Best, senft
Window gap and padding are per-desktop settings. If you change it on one desktop, bspc config window_gap would be undeterminate.
As pointed out above, you can use
bspc config -d focused window_gap
to get this value, as in
# Change window gap
alt + {minus,equal}
bspc config -d focused window_gap $((`bspc config -d focused window_gap` {+,-} 2 ))
Offline
Window gap and padding are per-desktop settings. If you change it on one desktop, bspc config window_gap would be undeterminate.
Ah. I assumed that the currently-focused desktop/monitor was supposed to be the implicit target if one was not specified. Your explanation makes more sense.
Offline
Ah, thanks, both of you guys!
Maybe an error message (missing target: specify a desktop or something like that) would be useful?
Somewhat Offtopic: How would I tinker around with the code? When I compile bspwm, do I have to restart X and start the frehsly compiled version of bspwm? Other WMs often seem to have some kind of mechanism to replace the currently running wm (--replace).
Offline
Ah, thanks, both of you guys!
When I compile bspwm, do I have to restart X and start the frehsly compiled version of bspwm? Other WMs often seem to have some kind of mechanism to replace the currently running wm (--replace).
You don't have to restart it. You can just kill the currently running wm instance and then fire up a new instance of the WM.
Offline
I tried that with
killall bspwm && ./bspwm
But then the complete X session seems to be restarted (and all apps are killed, which is tedious while developing. I would have to restart all editors and stuff...) Is there something wrong with my .xinitrc? I start bspwm like this:
sxhkd -f 100 &
exec bspwm
Last edited by senft (2014-01-29 12:53:44)
Offline
Hi!
Sorry if someone had this issue before, couldn't find anything.
If I make a window fullscreen, suddenly all the floating windows on all desktops (the ones that were before and ones that are opened after) start to appear behind the tiled ones and it persists until all windows are closed/moved from said desktop (the one that had a fullscreen window on it).
Tl;dr: maximize a window on a desktop X -> all the floating windows everywhere switch behind tiled ones until desktop X emptied.
Offline
If I make a window fullscreen, suddenly all the floating windows on all desktops (the ones that were before and ones that are opened after) start to appear behind the tiled ones [...].
Thanks for reporting!
It should be fixed by f5054b5.
Offline
Hi,
Since moving from rulc and ruld to built-in rules I'm experiencing a strange issue with Transmission-gtk. I have the following rule for Transmission-gtk
bspc rule -a Transmission-gtk desktop=^9
When I run Transmission-gtk it follows the window to desktop 9 as if follow=on. I tried appending follow=off, just in case, but it doesn't work.
Is this a bug or is my config wrong?
The class name reported by the command bspc query -T and xprop is the same as the rule.
All my rules for other applications work.
Thanks!
Offline
bspc rule -a Steam floating=on desktop=^3
bspc rule -a Gimp floating=on
bspc rule -a Pidgin desktop=^2
I have an issue with rules as well. I believe these to be correct, as a friend of mine has the steam rule verbatum and it works for him and not for me. I have also checked the class names with bspc query -T and have come up with these names being the correct ones. Hell the gimp rule is straight from the example config. I have the optional dependancies installed, even though built in rules are not supposed to require anything additional. I am also using the git version by the way. Any suggestions?
Offline
I have a general question: Is it possible in bspwm to move/resize floating windows manually with the keyboard, not just with the mouse? For example like one can do that with i3…
Offline
I have a general question: Is it possible in bspwm to move/resize floating windows manually with the keyboard, not just with the mouse? For example like one can do that with i3…
#p1364629
but haven't tried it by myself.
When I run Transmission-gtk it follows the window to desktop 9 as if follow=on. I tried appending follow=off, just in case, but it doesn't work.
you could try
bspc config ignore_ewmh_focus true
Offline
cju wrote:I have a general question: Is it possible in bspwm to move/resize floating windows manually with the keyboard, not just with the mouse? For example like one can do that with i3…
#p1364629
but haven't tried it by myself.
Thank you, that was exactly what I was looking for. Works like a charm btw.
Offline
o_caino wrote:When I run Transmission-gtk it follows the window to desktop 9 as if follow=on. I tried appending follow=off, just in case, but it doesn't work.
you could try
bspc config ignore_ewmh_focus true
As of fd2a62a, it will, indeed, work as intended (i.e. pagers and switchers will continue to work).
Offline
Updated to latest version and added
bspc config ignore_ewmh_focus true
to config.
Now it works.
Thanks!
Offline
Hi guys,
I have just started playing with bspwm and I have a question regarding multihead setup.
I have two monitors, LVDS-0 and VGA-0, configured by
bspc monitor LVDS-0 -d 1 2 3 4 5
bspc monitor VGA-0 -d 6 7 8 9 10
Problem is LVDS-0 desktops get assigned keybinds 6-10, instead of 1-5 and desktops in panel look like this:
6 7 8 9 10 1 2 3 4 5
$ xrandr; bspc query -T
Screen 0: minimum 8 x 8, current 3200 x 1080, maximum 16384 x 16384
VGA-0 connected 1280x1024+1920+0 (normal left inverted right x axis y axis) 338mm x 270mm
1280x1024 60.0*+ 75.0
1024x768 75.0 60.0
800x600 75.0 60.3
640x480 75.0 59.9
LVDS-0 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 382mm x 215mm
1920x1080 60.0*+
HDMI-0 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
VGA-0 1280x1024+1920+0 24,0,0,0
6 2 5 0,0,0,0 T - *
7 2 5 0,0,0,0 T -
8 2 5 0,0,0,0 T -
9 2 5 0,0,0,0 T -
10 2 5 0,0,0,0 T -
LVDS-0 1920x1080+0+0 24,0,0,0 *
1 2 5 0,0,0,0 T - *
V m 0.500000
m URxvt urxvt 0x1600016 2 804x436+0+0 L -------- *
m Firefox Navigator 0x260008B 2 949x1042+962+29 R --------
2 2 5 0,0,0,0 T -
3 2 5 0,0,0,0 T -
4 2 5 0,0,0,0 T -
5 2 5 0,0,0,0 T -
How do I make bspwm treat my main monitor as primary?
Thanks!
Last edited by Šaran (2014-02-07 09:37:43)
Offline
Offline
Thank you! It's working as expected now.
Offline
Perhaps this is stupid question, but is there a way to get all floating windows centered (instead of positioned at 0,0) by default, no matter if the window was originally floating by a rule or just toogled into floating?
Offline
Is there a way to get all floating windows centered (instead of positioned at 0,0) by default, no matter if the window was originally floating by a rule or just toogled into floating?
It should be happening as of 167bd82.
Offline
cju wrote:Is there a way to get all floating windows centered (instead of positioned at 0,0) by default, no matter if the window was originally floating by a rule or just toogled into floating?
It should be happening as of 167bd82.
Awesome! Thanks a lot.
Offline
bloom wrote:cju wrote:Is there a way to get all floating windows centered (instead of positioned at 0,0) by default, no matter if the window was originally floating by a rule or just toogled into floating?
It should be happening as of 167bd82.
Awesome! Thanks a lot.
I'm sorry that I have to bring this up again, but it's a bit strange: now, as said before, floating windows are centered automatically, but they aren't centered correctly. I.e. there is quite more screenspace on the left and on the top than on the right and on the bottom.
You can observe this wrong positioning better if you open a normal window (which is "centered" correctly) and increase window_gap until it has nearly the dimensions of a floating window. Then open a floating window and since it overlaps the previous one, you can see the off-center position of the floating one. It's also pretty visible if you send big windows like firefox to floating, beause they aren't decreased in size that much and so the different spaces to the borders of the monitor become more visible… Or just take a ruler.
Offline