You are not logged in.
What xrandr command are you using? Play around with the --primary setting, as well as --left-of and --right-of.
Here's an excerpt from my xorg.conf
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
Option "Stereo" "0"
Option "nvidiaXineramaInfoOrder" "DFP-0"
Option "metamodes" "DFP-4: nvidia-auto-select +0+0 {rotation=90}, DFP-1: nvidia-auto-select +1200+0"
EndSection
I also sometimes switch to "portrait-left landscape-right" mode using this script:
xrandr --output DP-1 --rotate left
xrandr --output HDMI-0 --rotate normal --pos 1200x0
"DP-1/DFP-4" is on the left side of my desk, and "HDMI-0/DFP-1" is on the right side (and is my --primary monitor). The problem isn't the placement of the dzen bar (which I assume is what the -xs option is for?), but the inversed order that the monitors' desktops are displayed in in the dzen workspace/desktop switcher area:
- The desktops that belong to my ride-side monitor are displayed on the left side in the workspace/desktop switcher area.
- The desktops that belong to my left-side monitor are displayed on the right side in the workspace/desktop switcher area.
I realize that the above wasn't clear in my last post - sorry about that. I'll play around with xrandr commands, and also see if maybe f38f863 fixes it.
Are there bspc commands that might help, btw?
Last edited by andornaut (2013-09-09 13:41:44)
Offline
Would it be possible to implement an all primary selector? This would be most useful in the context of query. For example, the IDs of all urgent windows could be procured with:
bspc query -W -w all.urgent
Perhaps this could also be extended to {window,desktop,monitor} commands, although I'm not sure how it would be handled in the case of certain options (such as --focus).
Additionally, if window gaps/borders were to ever become per-desktop, an all selector would be logical.
Also, with the recent discussion of status bars, I think the "put status" syntax could use a slight overhaul to better parallel the new command syntax (namely occupied and free) and be a bit more flexible. Something like this would make sense:
U/u = focused and urgent/unfocused and urgent desktop
O/o = focused and occupied/unfocused and occupied desktop
F/f = focused and free/unfocused and free desktop
M/m = focused/unfocused monitor
L = layout of focused desktop
I use linux and I dont understand nothing in this post.
Offline
Hello,
I've seen videos of bspwm in action and been interested in trying it, but I can't seem to make it work. I've spent a few hours messing around, trying to figure it out, but everytime I startx, it just gives me a black screen with nothing on it, and no commands works either, as far as I can see.
~/.xinitrc
#!/bin/sh
if [ -d /etc/X11/xinit/xinitrc.d ]; then
for f in /etc/X11/xinit/xinitrc.d/*; do
[ -x "$f" ] && . "$f"
done
unset f
fi
#rehash the fonts
xset +fp /usr/share/fonts/local
xset fp rehash
setxkbmap -option grp:caps_toggle us,ca
#disable the touchpad
synclient TouchpadOff=1
exec bspwm
~/.config/bspwm/bspwmrc
#! /bin/sh
sxhkd -c $HOME/.config/bspwm/sxhkdrc &
FIRST_DESK=1
REMAINING_DESKS="$(seq 2 9) 0"
bspc desktop Desktop01 -n $FIRST_DESK
bspc monitor -a $REMAINING_DESKS
bspc rule -a Gimp -d Eight --floating
bspc config split_ratio 0.52
bspc config border_width 2
bspc config window_gap 12
bspc config borderless_monocle true
bspc config gapless_monocle true
~/.config/bspwm/sxhkdrc
#
# bspwm hotkeys
#
super + alt + Escape
bspc quit
super + w
bspc window -c
super + t
bspc desktop -l next
super + b
bspc desktop -B
super + {s,f}
bspc window -t {floating,fullscreen}
super + {grave,Tab}
bspc {window,desktop} -f last
super + apostrophe
bspc window -s last
super + y
bspc window -w last.manual
super + m
bspc window -s biggest
super + {_,shift + }{h,j,k,l}
bspc window -{f,s} {left,down,up,right}
super + {_,shift + }c
bspc window -f {next,prev}
super + {comma,period}
bspc desktop -C {backward,forward}
super + bracket{left,right}
bspc desktop -f {prev,next}
super + ctrl + {h,j,k,l}
bspc window -p {left,down,up,right}
super + ctrl + {_,shift + }space
bspc {window -p cancel,desktop -c}
super + alt + {h,j,k,l}
bspc window -e {left,down,up,right} push
super + alt + shift + {h,j,k,l}
bspc window -e {right,up,down,left} pull
super + ctrl + {1-9}
bspc window -r 0.{1-9}
super + {_,shift + }{1-9,0}
bspc {desktop -f,window -d} {1-9,0}
~button1
bspc pointer -g focus
super + button{1-3}
bspc pointer -g {move,resize_side,resize_corner}
super + !button{1-3}
bspc pointer -t %i %i
#
# wm independent hotkeys
#
super + Return
urxvt
super + space
dmenu_run
# make sxhkd reload its configuration files:
super + Escape
pkill -USR1 -x sxhkd
Anyone that would have a pointer or two? Thank you.
Last edited by ArchaiosFiniks (2013-09-09 21:14:38)
Offline
Would it be possible to implement an all primary selector?
I'll think about it.
I think the "put status" syntax could use a slight overhaul to better parallel the new command syntax (namely occupied and free) and be a bit more flexible. Something like this would make sense:
U/u = focused and urgent/unfocused and urgent desktop
O/o = focused and occupied/unfocused and occupied desktop
F/f = focused and free/unfocused and free desktop
M/m = focused/unfocused monitor
L = layout of focused desktop
Agreed. Brought by e7cd176.
Message to all users: you are invited to update your panel script accordingly.
Last edited by bloom (2013-09-09 21:46:17)
Offline
ArchaiosFiniks wrote:Anyone that would have a pointer or two?
Maybe:
chmod 755 ~/.config/bspwm/bspwmrc
Good call. I fogot they were supposed to be executable. Changed it, but it still doesn't work (black empty screen).
┌─[~/.config/bspwm] (master ✗)
└─╼ ls -l
total 8.0K
-rwxr-xr-x 1 finiks users 387 Sep 9 17:02 bspwmrc*
-rwxr-xr-x 1 finiks users 1.5K Sep 9 17:03 sxhkdrc*
Offline
bloom wrote:ArchaiosFiniks wrote:Anyone that would have a pointer or two?
Maybe:
chmod 755 ~/.config/bspwm/bspwmrc
Good call. I fogot they were supposed to be executable. Changed it, but it still doesn't work (black empty screen).
┌─[~/.config/bspwm] (master ✗) └─╼ ls -l total 8.0K -rwxr-xr-x 1 finiks users 387 Sep 9 17:02 bspwmrc* -rwxr-xr-x 1 finiks users 1.5K Sep 9 17:03 sxhkdrc*
sxhkdrc doesn't need to be executable. It also belongs in ~/.config/sxhkdrc. Besides all of that, you never start sxhkd. This should happen before the `exec bpswm` line in your .xinitrc. Also, if you dont have urxvt installed, super + enter isn't going to do anything.
Offline
sxhkdrc doesn't need to be executable. It also belongs in ~/.config/sxhkdrc. Besides all of that, you never start sxhkd. This should happen before the `exec bpswm` line in your .xinitrc. Also, if you dont have urxvt installed, super + enter isn't going to do anything.
No, his configs are fine - I ran them on my test user, and sxhkd is launched in his bspwmrc.
It sounds like bspwm is running because (in my experience), that is what a persistent black screen means. At the very least, if it were to exit for any reason, his X session should end.
I would log on to another console and check, though, while bspwm is running. You can try something like this:
DISPLAY=:0 urxvt
and then switch back. Note that :0 might not be the right number if you have multiple displays running.
I would also make sure that the number of instances of sxhkd that are running match what you expect.
Edit: adjusted my wording
Last edited by aoba (2013-09-09 23:40:21)
Offline
I would log on to another console and check, though, while bspwm is running. You can try something like this:
DISPLAY=:0 urxvt
and then switch back. Note that :0 might not be the right number if you have multiple displays running.
Running that command on another tty and switching back, I noticed that the mouse pointer appeared, and I can move it around, although it is a pointer in the shape of an X, and nothing else is happening/appearing.
Edit: And I do have urxvt installed, so theoretically, it should open it no?
Last edited by ArchaiosFiniks (2013-09-09 23:58:35)
Offline
As of f6eacc0, you can swap monitors.
Awesome, I'll give it a shot. Thanks!
Offline
I noticed that the mouse pointer appeared, and I can move it around, although it is a pointer in the shape of an X, and nothing else is happening/appearing.
You could try:
sxhkd 2> ~/.sxhkd.log &
Afterwards, the log file might contain some hints.
Offline
The log file is as empty as it could be. I find it weird that no one seems to have any problems at the start, is there anything else I could try?
Thank you.
Offline
I have a bspwmrc rule that moves Pidgin to the 3rd desktop and changes it to floating, and I also autostart pidgin with bspwm:
bspc rule -a Pidgin -d ^3 --floating
pidgin &
This works, except that it changes focus to the 3rd desktop as well, but I'd like to keep focus on the 1st desktop. Is there any way to accomplish this?
Offline
I have a bspwmrc rule that moves Pidgin to the 3rd desktop and changes it to floating, and I also autostart pidgin with bspwm:
bspc rule -a Pidgin -d ^3 --floating pidgin &
This works, except that it changes focus to the 3rd desktop as well, but I'd like to keep focus on the 1st desktop. Is there any way to accomplish this?
pidgin &
bspc desktop -f 1
Would be a workaround for now
I posted an install tutorial over here for anyone that is interested. Still working out some kinks, but it could prove useful to some:
Offline
pidgin & bspc desktop -f 1
Would be a workaround for now
I posted an install tutorial over here for anyone that is interested. Still working out some kinks, but it could prove useful to some:
Hey earsplit, I saw your tutorial on reddit - well done!
I had tried to do as you suggest, but it looks like bspwm switches to desktop 1, then pidgin finishes loading, then bspwm switches to desktop 3.
One workaround would be to add a "sleep" in between, but that isn't really ideal...
pidgin
sleep 2
desktop -f ^1
Offline
The log file is as empty as it could be. I find it weird that no one seems to have any problems at the start, is there anything else I could try?
Thank you.
Have you added
sxhkd &
to your .xinitrc yet? Put that right before the `exec bspwm` line and your commands should start working!
As for your pointer being an x shape, you may want to add the following to your .xinitrc:
xsetroot -cursor_name left_ptr &
Edit: Welp, just noticed that you run sxhkd in bspwmrc. I guess that should work..
Last edited by china (2013-09-10 22:47:04)
Offline
Since this is my first post, hello!
Now, let's get to the point: I recently started using bspwm and I have a few questions:
1. I am using the "bspc config window_gap" to modify the window_gap on the fly( thanks to earsplit - stole it from his config). Is there any way to have a window_gap value for each workspace? For example, I want bigger gaps on my Media workspace and smaller gaps on Dev/Web.
2. When I am resizing terminals there is an annoying thing happening. Let's say I have terminal1 and terminal2, side by side. If I push terminal2 into terminal1 so much that a response from a command from terminal1 is "hidden", when i pull terminal2 back from over the text, the text in terminal1 does not appear anymore. ls -la in both windows and resizing, for example. Any way to fix this? I should mention I am using urxvt.
Thank you for all the hard work bloom/baskerville!
Offline
ArchaiosFiniks wrote:The log file is as empty as it could be. I find it weird that no one seems to have any problems at the start, is there anything else I could try?
Thank you.
Have you added
sxhkd &
to your .xinitrc yet? Put that right before the `exec bspwm` line and your commands should start working!
As for your pointer being an x shape, you may want to add the following to your .xinitrc:
xsetroot -cursor_name left_ptr &
Edit: Welp, just noticed that you run sxhkd in bspwmrc. I guess that should work..
Actually, I can't even make the pointer appear anymore, no idea why. Just, nothing works. Black screen.
I even tried putting sxhhkd in my xinitrc. I'll repost my configs.
~/.xinitrc
#!/bin/sh
if [ -d /etc/X11/xinit/xinitrc.d ]; then
for f in /etc/X11/xinit/xinitrc.d/*; do
[ -x "$f" ] && . "$f"
done
unset f
fi
#rehash the fonts
xset +fp /usr/share/fonts/local
xset fp rehash
setxkbmap -option grp:caps_toggle us,ca
#launch mpd
mpd &
sxhkd &
exec bspwm
~/.config/bspwm/bspwmrc
#! /bin/sh
FIRST_DESK=1
REMAINING_DESKS="$(seq 2 9) 0"
bspc desktop Desktop01 -n $FIRST_DESK
bspc monitor -a $REMAINING_DESKS
bspc rule -a Gimp -d Eight --floating
bspc config split_ratio 0.52
bspc config border_width 2
bspc config window_gap 12
bspc config borderless_monocle true
bspc config gapless_monocle true
~/.config/sxhkd/sxhkdrc
#
# bspwm hotkeys
#
super + alt + Escape
bspc quit
super + w
bspc window -c
super + t
bspc desktop -l next
super + b
bspc desktop -B
super + {s,f}
bspc window -t {floating,fullscreen}
super + {grave,Tab}
bspc {window,desktop} -f last
super + apostrophe
bspc window -s last
super + y
bspc window -w last.manual
super + m
bspc window -s biggest
super + {_,shift + }{h,j,k,l}
bspc window -{f,s} {left,down,up,right}
super + {_,shift + }c
bspc window -f {next,prev}
super + {comma,period}
bspc desktop -C {backward,forward}
super + bracket{left,right}
bspc desktop -f {prev,next}
super + ctrl + {h,j,k,l}
bspc window -p {left,down,up,right}
super + ctrl + {_,shift + }space
bspc {window -p cancel,desktop -c}
super + alt + {h,j,k,l}
bspc window -e {left,down,up,right} push
super + alt + shift + {h,j,k,l}
bspc window -e {right,up,down,left} pull
super + ctrl + {1-9}
bspc window -r 0.{1-9}
super + {_,shift + }{1-9,0}
bspc {desktop -f,window -d} {1-9,0}
~button1
bspc pointer -g focus
super + button{1-3}
bspc pointer -g {move,resize_side,resize_corner}
super + !button{1-3}
bspc pointer -t %i %i
#
# wm independent hotkeys
#
super + Return
urxvt
super + space
dmenu_run
# make sxhkd reload its configuration files:
super + Escape
pkill -USR1 -x sxhkd
Offline
Running that command on another tty and switching back, I noticed that the mouse pointer appeared, and I can move it around, although it is a pointer in the shape of an X, and nothing else is happening/appearing.
Edit: And I do have urxvt installed, so theoretically, it should open it no?
It should, yes, and it is strange that it appears not to have done so. The process would be attached to the console where you ran the command, not the X session, so if you killed it or the console before switching back to X it urxvt would not be running, but I bet you knew that already.
Anyway, I have one last (vague) idea, and it is to "mess around with keymaps" because there is a probably-small chance that you are not binding the keys that you expect:
When I run bspwm and sxhkd with startx, sxhkd acts as if the following two files do not exist:
/etc/vconsole.conf
KEYMAP=dvorak
/etc/X11/xorg.conf.d/10-keyboard.conf
Section "InputClass"
Identifier "Keyboard Defaults"
MatchIsKeyboard "yes"
Option "XkbLayout" "us(dvorak)"
EndSection
which is to say, it binds keys based on where they appear on a us QWERTY keyboard (which, to a degree, makes sense because that is what the device is), and does not the layout into account. (As an aside, this does not happen when I start bspwm from lightdm.) Maybe something along those lines is happening for you?
Sorry I could not be of more help.
Offline
I'm new to bspwm,
my question is i use conky | bar, is there a way to make the terminal/ other programs not go past the bar.
Offline
Thank you for your work on bspwm. It's great coming from i3 to have that level of control with a better automatic placement of windows.
One thing i miss: desktop backnforth switching. If you focus to the desktop you're currently on, it focuses the last desktop. Probably could do that with scripting, but it should be relatively easy to implement in bspwm itself.
Maybe you could look into that.
@DotDev
you need to use bspc monitor --pad
Last edited by regitator (2013-09-11 06:30:23)
Offline
Thank you for your work on bspwm. It's great coming from i3 to have that level of control with a better automatic placement of windows.
One thing i miss: desktop backnforth switching. If you focus to the desktop you're currently on, it focuses the last desktop. Probably could do that with scripting, but it should be relatively easy to implement in bspwm itself.
Maybe you could look into that.@DotDev
you need to use bspc monitor --pad
Thanks for the help
Offline
Is there anything else I could try?
Maybe you have a working wm in which you could try this:
git clone https://github.com/baskerville/sxhkd
cd sxhkd
make clean debug
printf "a\n\techo hello" > foorc
./sxhkd -c foorc
?
Press a, and then ctrl + c.
What's the output?
Last edited by bloom (2013-09-11 13:56:40)
Offline