Bismuth-Forge / bismuth

KDE Plasma add-on, that tiles your windows automatically and lets you manage them via keyboard, similarly to i3, Sway or dwm.
https://bismuth-forge.github.io/bismuth/
Other
2.4k stars 91 forks source link

Default shortcuts/key bindings #371

Open MelvIsntNormal opened 2 years ago

MelvIsntNormal commented 2 years ago

Apologies if this is in the repo somewhere, I tried looking but couldn't find anything that seemed to answer this.

I've just installed this plugin on Arch Linux through the AUR. When I go into System Settings > Shortcuts > Window Tiling, I see all the possible shortcuts there, but no key bindings (each entry has "No active shortcuts" next to them). Are there supposed to be any default key bindings, or am I expected to make my own? I was hoping for some kind of default I could tweak if needed; I'm having a bit of decision paralysis trying to build my own set of keybindings from scratch...

gikari commented 2 years ago

There are indeed some default shortcuts.

Could you reproduce the problem, when you install Bismuth from source?

MelvIsntNormal commented 2 years ago

Yep, I managed to reproduce this with the source. I uninstalled the AUR package, followed the CONTRIBUTING.md, and got the same result

gikari commented 2 years ago

What's your contents of ~/.config/kglobalshortcutsrc?

MelvIsntNormal commented 2 years ago

kglobalshortcutsrc.txt.

gikari commented 2 years ago

Try to delete the [bismuth] section in that config, then restart kglobalaccel daemon and Bismuth.

If this didn't help, check if Bismuth shortcuts are not overridden by something else. You can see the default shortcuts in [bismuth] section. I see "I3-Tiling" and Tiling shortcuts in your config, so that they could do that.

In that case, you should remove these lines in the config, then restart the kglobalaccel and disable the kwin script, that added them. Then delete the [bismuth] section in that config, then restart kglobalaccel daemon and Bismuth.

MelvIsntNormal commented 2 years ago

I'm still having the same issue unfortunately.

I (think I) removed every i3 and TILING entry in the kglobalshortcutsrc, and removed the bismuth section, but I still cannot see the shortcuts show up in system settings.

However, I do now see the shortcuts in the kglobalshortcutsrc. But they're not being recognised by my system.

kglobalshortcutsrc.1.txt

ETA: I ran systemctl --user restart plasma-kglobalaccel.service to restart the daemon, and I unchecked, applied, then rechecked the "Enable tiling" option in the settings. Is there another way to reload Bismuth?

kuba160 commented 2 years ago

I experienced same issue after installing (on Arch), but only on Wayland session. Shortcuts are there, but they are all disabled by default. On X11 session default shortcuts get applied and they stay on when switching back to Wayland session again.

aasami commented 2 years ago

Same with me on X11 session. I've installed the bin version AUR package kwin-bismuth-bin. I've never used any kwin tiling script before, so no there shouldn't be any conflicts. In kglobalshortcutsrc, there are some shortcuts defined for bismuth:

[bismuth] _k_friendly_name=Window Tiling decrease_master_size=none,,Decrease Master Area Size decrease_master_win_count=none,Meta+[,Decrease Master Area Window Count decrease_window_height=none,Meta+Ctrl+K,Decrease Window Height decrease_window_width=none,Meta+Ctrl+H,Decrease Window Width focus_bottom_window=none,Meta+J,Focus Bottom Window focus_left_window=none,Meta+H,Focus Left Window focus_next_window=none,,Focus Next Window focus_prev_window=none,,Focus Previous Window focus_right_window=none,Meta+L,Focus Right Window focus_upper_window=none,Meta+K,Focus Upper Window increase_master_size=none,,Increase Master Area Size increase_master_win_count=none,Meta+],Increase Master Area Window Count increase_window_height=none,Meta+Ctrl+J,Increase Window Height increase_window_width=none,Meta+Ctrl+L,Increase Window Width move_window_to_bottom_pos=none,Meta+Shift+J,Move Window Down move_window_to_left_pos=none,Meta+Shift+H,Move Window Left move_window_to_next_pos=none,,Move Window to the Next Position move_window_to_prev_pos=none,,Move Window to the Previous Position move_window_to_right_pos=none,Meta+Shift+L,Move Window Right move_window_to_upper_pos=none,Meta+Shift+K,Move Window Up next_layout=none,Meta+\\\\,Switch to the Next Layout prev_layout=none,Meta+|,Switch to the Previous Layout push_window_to_master=none,Meta+Return,Push Active Window to Master Area rotate=none,Meta+R,Rotate rotate_part=none,Meta+Shift+R,Rotate Part rotate_reverse=none,,Rotate (Reverse) toggle_float_layout=none,Meta+Shift+F,Toggle Floating Layout toggle_monocle_layout=none,Meta+M,Toggle Monocle Layout toggle_quarter_layout=none,,Toggle Quarter Layout toggle_spiral_layout=none,,Toggle Spiral Layout toggle_spread_layout=none,,Toggle Spread Layout toggle_stair_layout=none,,Toggle Stair Layout toggle_three_column_layout=none,,Toggle Three Column Layout toggle_tile_layout=none,Meta+T,Toggle Tile Layout toggle_window_floating=none,Meta+F,Toggle Active Window Floating

but in System Settings > Shortcuts > Window Tiling, there are no bindings at all. All shortcuts have "No active shortcuts".

I have removed the [bismuth] section from kglobalshortcutsrc like @gikari sugested and restarted plasma-kglobalaccel.service like @MelvIsntNormal and the section is back with no active shortucuts:

[bismuth] _k_friendly_name=Window Tiling decrease_master_size=none,none,Decrease Master Area Size decrease_master_win_count=none,none,Decrease Master Area Window Count decrease_window_height=none,none,Decrease Window Height decrease_window_width=none,none,Decrease Window Width focus_bottom_window=none,none,Focus Bottom Window focus_left_window=none,none,Focus Left Window focus_next_window=none,none,Focus Next Window focus_prev_window=none,none,Focus Previous Window focus_right_window=none,none,Focus Right Window focus_upper_window=none,none,Focus Upper Window increase_master_size=none,none,Increase Master Area Size increase_master_win_count=none,none,Increase Master Area Window Count increase_window_height=none,none,Increase Window Height increase_window_width=none,none,Increase Window Width move_window_to_bottom_pos=none,none,Move Window Down move_window_to_left_pos=none,none,Move Window Left move_window_to_next_pos=none,none,Move Window to the Next Position move_window_to_prev_pos=none,none,Move Window to the Previous Position move_window_to_right_pos=none,none,Move Window Right move_window_to_upper_pos=none,none,Move Window Up next_layout=none,none,Switch to the Next Layout prev_layout=none,none,Switch to the Previous Layout push_window_to_master=none,none,Push Active Window to Master Area rotate=none,none,Rotate rotate_part=none,none,Rotate Part rotate_reverse=none,none,Rotate (Reverse) toggle_float_layout=none,none,Toggle Floating Layout toggle_monocle_layout=none,none,Toggle Monocle Layout toggle_quarter_layout=none,none,Toggle Quarter Layout toggle_spiral_layout=none,none,Toggle Spiral Layout toggle_spread_layout=none,none,Toggle Spread Layout toggle_stair_layout=none,none,Toggle Stair Layout toggle_three_column_layout=none,none,Toggle Three Column Layout toggle_tile_layout=none,none,Toggle Tile Layout toggle_window_floating=none,none,Toggle Active Window Floating

Any advice is welcome.

Tom-Welch commented 2 years ago

I'm no expert so please excuse any ignorance upfront.

I just ran into the same issue, also running on Arch Linux & Wayland. It looks as if the default shortcuts have 'none' before the assigned shortcut keys in kglobalshortcutsrc so they appear to be ignored / disabled.

Example; decrease_master_win_count=none,Meta+[

My workaround was to find and replace none, under the block of bismuth shortcuts, after logging out and back in, all the shortcuts appeared under the settings menu and started working.

nmstoker commented 1 year ago

@Tom-Welch - thanks a lot for your comment! I expect your workaround would have worked for me but what it appears to be doing is shifting the setting for the default shortcut into the position for the actual shortcut.

So that I could keep the default shortcut entry as an option in the UI to fall back on, I copied all the values that weren't blank directly after the none, and pasted them in place of the none on each such row; I then logged out and back in and it worked as desired.

In case it saves others this cut n paste exercise here are the entries I had after doing this:

[bismuth]
_k_friendly_name=Window Tiling
decrease_master_size=none,,Decrease Master Area Size
decrease_master_win_count=Meta+[,Meta+[,Decrease Master Area Window Count
decrease_window_height=Meta+Ctrl+K,Meta+Ctrl+K,Decrease Window Height
decrease_window_width=Meta+Ctrl+H,Meta+Ctrl+H,Decrease Window Width
focus_bottom_window=Meta+J,Meta+J,Focus Bottom Window
focus_left_window=Meta+H,Meta+H,Focus Left Window
focus_next_window=none,,Focus Next Window
focus_prev_window=none,,Focus Previous Window
focus_right_window=Meta+L,Meta+L,Focus Right Window
focus_upper_window=Meta+K,Meta+K,Focus Upper Window
increase_master_size=none,,Increase Master Area Size
increase_master_win_count=Meta+],Meta+],Increase Master Area Window Count
increase_window_height=Meta+Ctrl+J,Meta+Ctrl+J,Increase Window Height
increase_window_width=Meta+Ctrl+L,Meta+Ctrl+L,Increase Window Width
move_window_to_bottom_pos=Meta+Shift+J,Meta+Shift+J,Move Window Down
move_window_to_left_pos=Meta+Shift+H,Meta+Shift+H,Move Window Left
move_window_to_next_pos=none,,Move Window to the Next Position
move_window_to_prev_pos=none,,Move Window to the Previous Position
move_window_to_right_pos=Meta+Shift+L,Meta+Shift+L,Move Window Right
move_window_to_upper_pos=Meta+Shift+K,Meta+Shift+K,Move Window Up
next_layout=Meta+\\\\,Meta+\\\\,Switch to the Next Layout
prev_layout=Meta+|,Meta+|,Switch to the Previous Layout
push_window_to_master=Meta+Return,Meta+Return,Push Active Window to Master Area
rotate=Meta+R,Meta+R,Rotate
rotate_part=Meta+Shift+R,Meta+Shift+R,Rotate Part
rotate_reverse=none,,Rotate (Reverse)
toggle_float_layout=Meta+Shift+F,Meta+Shift+F,Toggle Floating Layout
toggle_monocle_layout=Meta+M,Meta+M,Toggle Monocle Layout
toggle_quarter_layout=none,,Toggle Quarter Layout
toggle_spiral_layout=none,,Toggle Spiral Layout
toggle_spread_layout=none,,Toggle Spread Layout
toggle_stair_layout=none,,Toggle Stair Layout
toggle_three_column_layout=none,,Toggle Three Column Layout
toggle_tile_layout=Meta+T,Meta+T,Toggle Tile Layout
toggle_window_floating=Meta+F,Meta+F,Toggle Active Window Floating

FYI, my installation was via AUR just a few days ago. I haven't had time to try to replicate by installing directly from source.