Add bspwm
This commit is contained in:
parent
12467a5a8a
commit
1cb6212327
|
@ -119,7 +119,7 @@ font:
|
||||||
# - (macOS) Menlo
|
# - (macOS) Menlo
|
||||||
# - (Linux/BSD) monospace
|
# - (Linux/BSD) monospace
|
||||||
# - (Windows) Consolas
|
# - (Windows) Consolas
|
||||||
family: FiraCode
|
family: FiraCode Nerd Font
|
||||||
|
|
||||||
# The `style` can be specified to pick a specific face.
|
# The `style` can be specified to pick a specific face.
|
||||||
#style: Regular
|
#style: Regular
|
||||||
|
|
20
bspwm/bspwmrc
Executable file
20
bspwm/bspwmrc
Executable file
|
@ -0,0 +1,20 @@
|
||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
sxhkd -c ~/.config/sxhkd/sxhkdrc &
|
||||||
|
|
||||||
|
pgrep -x sxhkd > /dev/null || sxhkd &
|
||||||
|
|
||||||
|
bspc monitor -d I II III IV V VI VII VIII IX X
|
||||||
|
|
||||||
|
bspc config border_width 2
|
||||||
|
bspc config window_gap 12
|
||||||
|
|
||||||
|
bspc config split_ratio 0.52
|
||||||
|
bspc config borderless_monocle true
|
||||||
|
bspc config gapless_monocle true
|
||||||
|
|
||||||
|
bspc rule -a Gimp desktop='^8' state=floating follow=on
|
||||||
|
bspc rule -a Chromium desktop='^2'
|
||||||
|
bspc rule -a mplayer2 state=floating
|
||||||
|
bspc rule -a Kupfer.py focus=on
|
||||||
|
bspc rule -a Screenkey manage=off
|
|
@ -133,17 +133,21 @@ focus-exclude = [ "class_g = 'Cairo-clock'" ];
|
||||||
# example:
|
# example:
|
||||||
# opacity-rule = [ "80:class_g = 'URxvt'" ];
|
# opacity-rule = [ "80:class_g = 'URxvt'" ];
|
||||||
#
|
#
|
||||||
# opacity-rule = []
|
opacity-rule = [
|
||||||
|
"90:class_g = 'Alacritty'"
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
#################################
|
#################################
|
||||||
# Corners #
|
# Corners #
|
||||||
#################################
|
#################################
|
||||||
|
|
||||||
|
detect-rounded-corners = true;
|
||||||
|
|
||||||
# Sets the radius of rounded window corners. When > 0, the compositor will
|
# Sets the radius of rounded window corners. When > 0, the compositor will
|
||||||
# round the corners of windows. Does not interact well with
|
# round the corners of windows. Does not interact well with
|
||||||
# `transparent-clipping`.
|
# `transparent-clipping`.
|
||||||
corner-radius = 5
|
corner-radius = 20;
|
||||||
|
|
||||||
# Exclude conditions for rounded corners.
|
# Exclude conditions for rounded corners.
|
||||||
rounded-corners-exclude = [
|
rounded-corners-exclude = [
|
||||||
|
@ -158,12 +162,12 @@ rounded-corners-exclude = [
|
||||||
|
|
||||||
|
|
||||||
# Parameters for background blurring, see the *BLUR* section for more information.
|
# Parameters for background blurring, see the *BLUR* section for more information.
|
||||||
# blur-method =
|
blur-method = "dual_kawase";
|
||||||
# blur-size = 12
|
# blur-size = 12
|
||||||
#
|
#
|
||||||
# blur-deviation = false
|
# blur-deviation = false
|
||||||
#
|
#
|
||||||
# blur-strength = 5
|
blur-strength = 2;
|
||||||
|
|
||||||
# Blur background of semi-transparent / ARGB windows.
|
# Blur background of semi-transparent / ARGB windows.
|
||||||
# Bad in performance, with driver-dependent behavior.
|
# Bad in performance, with driver-dependent behavior.
|
||||||
|
@ -212,8 +216,8 @@ blur-background-exclude = [
|
||||||
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
|
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
|
||||||
# `xrender` is the default one.
|
# `xrender` is the default one.
|
||||||
#
|
#
|
||||||
# backend = "glx"
|
backend = "glx"
|
||||||
backend = "xrender";
|
# backend = "xrender";
|
||||||
|
|
||||||
# Enable/disable VSync.
|
# Enable/disable VSync.
|
||||||
# vsync = false
|
# vsync = false
|
||||||
|
|
Binary file not shown.
|
@ -3,4 +3,5 @@
|
||||||
picom -b &
|
picom -b &
|
||||||
xfce4-power-manager &
|
xfce4-power-manager &
|
||||||
nitrogen --restore &
|
nitrogen --restore &
|
||||||
|
dunst &
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,8 @@ from libqtile.lazy import lazy
|
||||||
from libqtile.utils import guess_terminal
|
from libqtile.utils import guess_terminal
|
||||||
|
|
||||||
mod = "mod4"
|
mod = "mod4"
|
||||||
terminal = guess_terminal("Alacritty")
|
terminal = guess_terminal("alacritty")
|
||||||
|
browser = "chromium"
|
||||||
|
|
||||||
keys = [
|
keys = [
|
||||||
# A list of available commands that can be bound to keys can be found
|
# A list of available commands that can be bound to keys can be found
|
||||||
|
@ -74,7 +75,8 @@ keys = [
|
||||||
Key([mod], "f", lazy.window.toggle_fullscreen()),
|
Key([mod], "f", lazy.window.toggle_fullscreen()),
|
||||||
Key([mod, "control"], "r", lazy.reload_config(), desc="Reload the config"),
|
Key([mod, "control"], "r", lazy.reload_config(), desc="Reload the config"),
|
||||||
Key([mod, "control"], "q", lazy.shutdown(), desc="Shutdown Qtile"),
|
Key([mod, "control"], "q", lazy.shutdown(), desc="Shutdown Qtile"),
|
||||||
Key([mod], "r", lazy.spawn("rofi -show run"), desc="Launch Rofi"),
|
Key([mod], "r", lazy.spawn("rofi -show drun"), desc="Launch Rofi"),
|
||||||
|
Key([mod], "b", lazy.spawn(browser), desc="Launch Chromium"),
|
||||||
# Key([mod], "r", lazy.spawncmd(), desc="Spawn a command using a prompt widget"),
|
# Key([mod], "r", lazy.spawncmd(), desc="Spawn a command using a prompt widget"),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
@ -124,7 +126,7 @@ layouts = [
|
||||||
# layout.TreeTab(),
|
# layout.TreeTab(),
|
||||||
# layout.VerticalTile(),
|
# layout.VerticalTile(),
|
||||||
# layout.Zoomy(),
|
# layout.Zoomy(),
|
||||||
layout.Floating(**layout_theme)
|
# layout.Floating(**layout_theme)
|
||||||
]
|
]
|
||||||
|
|
||||||
widget_defaults = dict(
|
widget_defaults = dict(
|
||||||
|
@ -154,7 +156,7 @@ screens = [
|
||||||
# widget.StatusNotifier(),
|
# widget.StatusNotifier(),
|
||||||
widget.Systray(),
|
widget.Systray(),
|
||||||
widget.Volume(fmt='Vol: {}'),
|
widget.Volume(fmt='Vol: {}'),
|
||||||
widget.Clipboard(),
|
# widget.Clipboard(),
|
||||||
widget.CheckUpdates(distro="Arch_yay",no_update_string="No updates"),
|
widget.CheckUpdates(distro="Arch_yay",no_update_string="No updates"),
|
||||||
widget.Clock(format="%Y-%m-%d %a %I:%M %p"),
|
widget.Clock(format="%Y-%m-%d %a %I:%M %p"),
|
||||||
widget.QuickExit(countdown_start=3),
|
widget.QuickExit(countdown_start=3),
|
||||||
|
@ -217,3 +219,4 @@ wmname = "LG3D"
|
||||||
def autostart():
|
def autostart():
|
||||||
home = os.path.expanduser('~/.config/qtile/autostart.sh')
|
home = os.path.expanduser('~/.config/qtile/autostart.sh')
|
||||||
subprocess.Popen([home])
|
subprocess.Popen([home])
|
||||||
|
|
||||||
|
|
|
@ -1,2 +1,78 @@
|
||||||
//@theme "/usr/share/rofi/themes/DarkBlue.rasi"
|
configuration {
|
||||||
@theme "/usr/share/rofi/themes/DarkBlue.rasi"
|
display-drun: "Applications:";
|
||||||
|
display-window: "Windows:";
|
||||||
|
drun-display-format: "{name}";
|
||||||
|
font: "JetBrainsMono Nerd Font Medium 10";
|
||||||
|
modi: "window,run,drun";
|
||||||
|
}
|
||||||
|
|
||||||
|
@theme "/dev/null"
|
||||||
|
|
||||||
|
* {
|
||||||
|
bg: #11121D33;
|
||||||
|
bg-alt: #444b6a;
|
||||||
|
|
||||||
|
fg: #FFFFFF;
|
||||||
|
fg-alt: #787c99;
|
||||||
|
|
||||||
|
background-color: @bg;
|
||||||
|
|
||||||
|
border: 0;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
spacing: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
window {
|
||||||
|
width: 30%;
|
||||||
|
}
|
||||||
|
|
||||||
|
element {
|
||||||
|
padding: 8 0;
|
||||||
|
text-color: @fg-alt;
|
||||||
|
}
|
||||||
|
|
||||||
|
element selected {
|
||||||
|
text-color: @fg;
|
||||||
|
}
|
||||||
|
|
||||||
|
element-text {
|
||||||
|
text-color: inherit;
|
||||||
|
vertical-align: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
element-icon {
|
||||||
|
size: 14;
|
||||||
|
padding: 0 10 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
entry {
|
||||||
|
background-color: @bg-alt;
|
||||||
|
padding: 12;
|
||||||
|
text-color: @fg;
|
||||||
|
}
|
||||||
|
|
||||||
|
inputbar {
|
||||||
|
children: [prompt, entry];
|
||||||
|
}
|
||||||
|
|
||||||
|
listview {
|
||||||
|
padding: 8 12;
|
||||||
|
background-color: @bg;
|
||||||
|
columns: 1;
|
||||||
|
lines: 8;
|
||||||
|
}
|
||||||
|
|
||||||
|
mainbox {
|
||||||
|
background-color: @bg;
|
||||||
|
children: [inputbar, listview];
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt {
|
||||||
|
background-color: @bg-alt;
|
||||||
|
enabled: true;
|
||||||
|
padding: 12 0 0 12;
|
||||||
|
text-color: @fg;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* vim: ft=sass
|
||||||
|
|
121
sxhkd/sxhkdrc
Executable file
121
sxhkd/sxhkdrc
Executable file
|
@ -0,0 +1,121 @@
|
||||||
|
#
|
||||||
|
# wm independent hotkeys
|
||||||
|
#
|
||||||
|
|
||||||
|
# terminal emulator
|
||||||
|
super + Return
|
||||||
|
alacritty
|
||||||
|
|
||||||
|
# program launcher
|
||||||
|
super + @space
|
||||||
|
rofi -show drun
|
||||||
|
|
||||||
|
# make sxhkd reload its configuration files:
|
||||||
|
super + Escape
|
||||||
|
pkill -USR1 -x sxhkd
|
||||||
|
|
||||||
|
#
|
||||||
|
# bspwm hotkeys
|
||||||
|
#
|
||||||
|
|
||||||
|
# quit/restart bspwm
|
||||||
|
super + alt + {q,r}
|
||||||
|
bspc {quit,wm -r}
|
||||||
|
|
||||||
|
# close and kill
|
||||||
|
super + {_,shift + }w
|
||||||
|
bspc node -{c,k}
|
||||||
|
|
||||||
|
# alternate between the tiled and monocle layout
|
||||||
|
super + m
|
||||||
|
bspc desktop -l next
|
||||||
|
|
||||||
|
# send the newest marked node to the newest preselected node
|
||||||
|
super + y
|
||||||
|
bspc node newest.marked.local -n newest.!automatic.local
|
||||||
|
|
||||||
|
# swap the current node and the biggest window
|
||||||
|
super + g
|
||||||
|
bspc node -s biggest.window
|
||||||
|
|
||||||
|
#
|
||||||
|
# state/flags
|
||||||
|
#
|
||||||
|
|
||||||
|
# set the window state
|
||||||
|
super + {t,shift + t,s,f}
|
||||||
|
bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
|
||||||
|
|
||||||
|
# set the node flags
|
||||||
|
super + ctrl + {m,x,y,z}
|
||||||
|
bspc node -g {marked,locked,sticky,private}
|
||||||
|
|
||||||
|
#
|
||||||
|
# focus/swap
|
||||||
|
#
|
||||||
|
|
||||||
|
# focus the node in the given direction
|
||||||
|
super + {_,shift + }{h,j,k,l}
|
||||||
|
bspc node -{f,s} {west,south,north,east}
|
||||||
|
|
||||||
|
# focus the node for the given path jump
|
||||||
|
super + {p,b,comma,period}
|
||||||
|
bspc node -f @{parent,brother,first,second}
|
||||||
|
|
||||||
|
# focus the next/previous window in the current desktop
|
||||||
|
super + {_,shift + }c
|
||||||
|
bspc node -f {next,prev}.local.!hidden.window
|
||||||
|
|
||||||
|
# focus the next/previous desktop in the current monitor
|
||||||
|
super + bracket{left,right}
|
||||||
|
bspc desktop -f {prev,next}.local
|
||||||
|
|
||||||
|
# focus the last node/desktop
|
||||||
|
super + {grave,Tab}
|
||||||
|
bspc {node,desktop} -f last
|
||||||
|
|
||||||
|
# focus the older or newer node in the focus history
|
||||||
|
super + {o,i}
|
||||||
|
bspc wm -h off; \
|
||||||
|
bspc node {older,newer} -f; \
|
||||||
|
bspc wm -h on
|
||||||
|
|
||||||
|
# focus or send to the given desktop
|
||||||
|
super + {_,shift + }{1-9,0}
|
||||||
|
bspc {desktop -f,node -d} '^{1-9,10}'
|
||||||
|
|
||||||
|
#
|
||||||
|
# preselect
|
||||||
|
#
|
||||||
|
|
||||||
|
# preselect the direction
|
||||||
|
super + ctrl + {h,j,k,l}
|
||||||
|
bspc node -p {west,south,north,east}
|
||||||
|
|
||||||
|
# preselect the ratio
|
||||||
|
super + ctrl + {1-9}
|
||||||
|
bspc node -o 0.{1-9}
|
||||||
|
|
||||||
|
# cancel the preselection for the focused node
|
||||||
|
super + ctrl + space
|
||||||
|
bspc node -p cancel
|
||||||
|
|
||||||
|
# cancel the preselection for the focused desktop
|
||||||
|
super + ctrl + shift + space
|
||||||
|
bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
|
||||||
|
|
||||||
|
#
|
||||||
|
# move/resize
|
||||||
|
#
|
||||||
|
|
||||||
|
# expand a window by moving one of its side outward
|
||||||
|
super + alt + {h,j,k,l}
|
||||||
|
bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}
|
||||||
|
|
||||||
|
# contract a window by moving one of its side inward
|
||||||
|
super + alt + shift + {h,j,k,l}
|
||||||
|
bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}
|
||||||
|
|
||||||
|
# move a floating window
|
||||||
|
super + {Left,Down,Up,Right}
|
||||||
|
bspc node -v {-20 0,0 20,0 -20,20 0}
|
Loading…
Reference in New Issue
Block a user