full theming for sway, wofi, alacritty, etc

This commit is contained in:
Tim Gröger 2023-05-11 22:57:34 +02:00
parent 43f5f047db
commit 9243048cf1
24 changed files with 708 additions and 0 deletions

20
.tmux.conf Normal file
View File

@ -0,0 +1,20 @@
#if-shell 'env "$POWERLINE_CONFIG_COMMAND" tmux setup' '' 'run-shell "powerline-config tmux setup"'
set-window-option -g xterm-keys on
set -g set-titles on
set -g set-titles-string '#{session_name}: #{window_name}'
# List of plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
# Other examples:
# set -g @plugin 'github_username/plugin_name'
# set -g @plugin 'github_username/plugin_name#branch'
# set -g @plugin 'git@github.com:user/plugin'
# set -g @plugin 'git@bitbucket.com:user/plugin'
set -g @plugin 'catppuccin/tmux'
set -g @catppuccin_flavour 'macchiato' # or frappe, macchiato, mocha
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run '~/.tmux/plugins/tpm/tpm'
# vim: ft=tmux

1
.tmux/plugins/tmux Submodule

@ -0,0 +1 @@
Subproject commit 4e48b09a76829edc7b55fbb15467cf0411f07931

@ -0,0 +1 @@
Subproject commit 25cb91f42d020f675bb0a2ce3fbd3a5d96119efa

1
.tmux/plugins/tpm Submodule

@ -0,0 +1 @@
Subproject commit 99469c4a9b1ccf77fade25842dc7bafbc8ce9946

149
.zshrc Normal file
View File

@ -0,0 +1,149 @@
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
# Initialization code that may require console input (password prompts, [y/n]
# confirmations, etc.) must go above this block; everything else may go below.
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi
#export TERM="xterm-256color"
#export TERM="xterm-256color"
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH
export PATH=/home/crimsen/.cargo/bin:$PATH
export PATH="$PATH:/home/crimsen/.local/share/JetBrains/Toolbox/scripts:/home/crimsen/.local/bin"
# Path to your oh-my-zsh installation.
export ZSH="/home/crimsen/.oh-my-zsh"
# Set name of the theme to load --- if set to "random", it will
# load a random theme each time oh-my-zsh is loaded, in which case,
# to know which specific one was loaded, run: echo $RANDOM_THEME
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
ZSH_THEME="powerlevel10k/powerlevel10k"
# Set list of themes to pick from when loading at random
# Setting this variable when ZSH_THEME=random will cause zsh to load
# a theme from this variable instead of looking in ~/.oh-my-zsh/themes/
# If set to an empty array, this variable will have no effect.
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
# Uncomment the following line to use case-sensitive completion.
# CASE_SENSITIVE="true"
# Uncomment the following line to use hyphen-insensitive completion.
# Case-sensitive completion must be off. _ and - will be interchangeable.
# HYPHEN_INSENSITIVE="true"
# Uncomment the following line to disable bi-weekly auto-update checks.
# DISABLE_AUTO_UPDATE="true"
# Uncomment the following line to automatically update without prompting.
# DISABLE_UPDATE_PROMPT="true"
# Uncomment the following line to change how often to auto-update (in days).
# export UPDATE_ZSH_DAYS=13
# Uncomment the following line if pasting URLs and other text is messed up.
# DISABLE_MAGIC_FUNCTIONS=true
# Uncomment the following line to disable colors in ls.
# DISABLE_LS_COLORS="true"
# Uncomment the following line to disable auto-setting terminal title.
# DISABLE_AUTO_TITLE="true"
# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"
# Uncomment the following line to display red dots whilst waiting for completion.
# COMPLETION_WAITING_DOTS="true"
# Uncomment the following line if you want to disable marking untracked files
# under VCS as dirty. This makes repository status check for large repositories
# much, much faster.
# DISABLE_UNTRACKED_FILES_DIRTY="true"
# Uncomment the following line if you want to change the command execution time
# stamp shown in the history command output.
# You can set one of the optional three formats:
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
# or set a custom format using the strftime function format specifications,
# see 'man strftime' for details.
POWERLEVEL10K_MODE="nerdfont-complete"
# HIST_STAMPS="mm/dd/yyyy"
# Would you like to use another custom folder than $ZSH/custom?
# ZSH_CUSTOM=/path/to/new-custom-folder
# Which plugins would you like to load?
# Standard plugins can be found in ~/.oh-my-zsh/plugins/*
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(git)
plugins=(virtualenv)
POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(virtualenv nvm time)
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(host status os_icon dir_writable dir newline vcs)
POWERLEVEL9K_MODE='nerdfont-complete'
POWERLEVEL9K_VCS_GIT_ICON=''
ZLE_RPROMPT_INDENT=0
POWERLEVEL9K_LEGACY_ICON_SPACING=true
source $ZSH/oh-my-zsh.sh
# User configuration
# export MANPATH="/usr/local/man:$MANPATH"
# You may need to manually set your language environment
# export LANG=en_US.UTF-8
# Preferred editor for local and remote sessions
# if [[ -n $SSH_CONNECTION ]]; then
# export EDITOR='vim'
# else
# export EDITOR='mvim'
# fi
# Compilation flags
# export ARCHFLAGS="-arch x86_64"
# Set personal aliases, overriding those provided by oh-my-zsh libs,
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
# For a full list of active aliases, run `alias`.
#
# Example aliases
# alias zshconfig="mate ~/.zshrc"
# alias ohmyzsh="mate ~/.oh-my-zsh"
###-tns-completion-start-###
#if [ -f /Users/crimsen/.tnsrc ]; then
# source /Users/crimsen/.tnsrc
#fi
###-tns-completion-end-###
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
typeset -g POWERLEVEL9K_INSTANT_PROMPT=off
alias vim=nvim
export vflgeist=/home/crimsen/git/flaschengeist/flaschengeist/venv/bin/activate
if [ -n "$VIRTUAL_ENV" ]; then
source $VIRTUAL_ENV/bin/activate;
fi
if [ -n "$SOURCE_SCRIPT" ]; then
source $SOURCE_SCRIPT;
fi
tmux has-session -t "default" 2>/dev/null
if [ $? != 0 ]; then
TMUX='' tmux new-session -s "default" -d
fi
if [[ -z "$TMUX" ]]; then
tmux attach-session -t "default"
else
tmux switch-client -t "default"
fi

22
alacritty/alacritty.yml Normal file
View File

@ -0,0 +1,22 @@
font:
normal:
family: Hack Nerd Font Mono
style: Regular
bold:
family: Hack Nerd Font Mono
style: Bold
italic:
family: Hack Nerd Font Mono
style: Italic
bold_italic:
family: Hack Nerd Font Mono
style: Bold Italic
size: 11.0
key_bindings:
- {
key: Return,
mods: Control|Shift,
action: SpawnNewInstance
}
import:
- ~/.config/alacritty/catppuccin/catppuccin-macchiato.yml

1
alacritty/catppuccin Submodule

@ -0,0 +1 @@
Subproject commit 3c808cbb4f9c87be43ba5241bc57373c793d2f17

1
sway/catppuccin Submodule

@ -0,0 +1 @@
Subproject commit c89098fc3517b64f0422aaaccb98dcab6ae9348f

26
sway/config Normal file
View File

@ -0,0 +1,26 @@
include $HOME/.config/sway/catppuccin/themes/catppuccin-macchiato
# Default config for sway
#
# Copy this to ~/.config/sway/config and edit it to your liking.
#
# Read `man 5 sway` for a complete reference.
### Variables
#
# Logo key. Use Mod1 for Alt.
set $mod Mod4
# Home row direction keys, like vim
set $left s
set $down n
set $up r
set $right t
# Your preferred terminal emulator
set $term alacritty
# Your preferred application launcher
# Note: pass the final command to swaymsg so that the resulting window can be opened
# on the original workspace that the command was run on.
#set $menu dmenu_path | dmenu | xargs swaymsg exec --
#set $menu wofi --show drun | xargs swaymsg exec --
set $menu wofi | xargs swaymsg exec --
include $HOME/.config/sway/config.d/*

View File

@ -0,0 +1,7 @@
# target title bg text indicator border
client.focused $pink $base $text $rosewater $pink
client.focused_inactive $mauve $base $text $rosewater $mauve
client.unfocused $mauve $base $text $rosewater $mauve
client.urgent $peach $base $peach $overlay0 $peach
client.placeholder $overlay0 $base $text $overlay0 $overlay0
client.background $base

View File

@ -0,0 +1,13 @@
# Automatically assign a dedicated systemd scope to the GUI applications
# launched in the same cgroup as the compositor. This could be helpful for
# implementing cgroup-based resource management and would be necessary when
# `systemd-oomd` is in use.
#
# Limitations: The script is using i3ipc window:new event to detect application
# launches and would fail to detect background apps or special surfaces.
# Therefore it's recommended to supplement the script with use of systemd user
# services for such background apps.
#
exec /usr/libexec/sway-systemd/assign-cgroups.py
# ex: set filetype=swayconfig syntax=swayconfig

View File

@ -0,0 +1,32 @@
# Address several issues with DBus activation and systemd user sessions
#
# 1. DBus-activated and systemd services do not share the environment with user
# login session. In order to make the applications that have GUI or interact
# with the compositor work as a systemd user service, certain variables must
# be propagated to the systemd and dbus.
# Possible (but not exhaustive) list of variables:
# - DISPLAY - for X11 applications that are started as user session services
# - WAYLAND_DISPLAY - similarly, this is needed for wayland-native services
# - I3SOCK/SWAYSOCK - allow services to talk with sway using i3 IPC protocol
#
# 2. `xdg-desktop-portal` requires XDG_CURRENT_DESKTOP to be set in order to
# select the right implementation for screenshot and screencast portals.
# With all the numerous ways to start sway, it's not possible to rely on the
# right value of the XDG_CURRENT_DESKTOP variable within the login session,
# therefore the script will ensure that it is always set to `sway`.
#
# 3. GUI applications started as a systemd service (or via xdg-autostart-generator)
# may rely on the XDG_SESSION_TYPE variable to select the backend.
# Ensure that it is always set to `wayland`.
#
# 4. The common way to autostart a systemd service along with the desktop
# environment is to add it to a `graphical-session.target`. However, systemd
# forbids starting the graphical session target directly and encourages use
# of an environment-specific target units. Therefore, the integration
# package here provides and uses `sway-session.target` which would bind to
# the `graphical-session.target`.
#
# 5. Optionally, stop the target and unset the variables when the compositor
# exits.
#
exec /usr/libexec/sway-systemd/session.sh --with-cleanup

17
sway/config.d/bar.conf Normal file
View File

@ -0,0 +1,17 @@
# Status Bar:
# Read `man 5 sway-bar` for more information about this section.
bar {
swaybar_command waybar
# position top
#
# # When the status_command prints a new line to stdout, swaybar updates.
# # The default just shows the current date and time.
# status_command while date +'%Y-%m-%d %I:%M:%S %p'; do sleep 1; done
#
# colors {
# statusline #ffffff
# background #323232
# #inactive_workspace #32323200 #32323200 #5c5c5c
# inactive_workspace #323232 #323232 #5c5c5c
# }
}

12
sway/config.d/idle.conf Normal file
View File

@ -0,0 +1,12 @@
### Idle configuration
#
# Example configuration:
#
exec swayidle -w \
timeout 300 'swaylock -f -c 000000' \
before-sleep 'swaylock -f -c 000000'
# timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
#
# This will lock your screen after 300 seconds of inactivity, then turn off
# your displays after another 300 seconds, and turn your screens back on when
# resumed. It will also lock your screen before your computer goes to sleep.

18
sway/config.d/input.conf Normal file
View File

@ -0,0 +1,18 @@
### Input configuration
#
# Example configuration:
#
# input "2:14:SynPS/2_Synaptics_TouchPad" {
# dwt enabled
# tap enabled
# natural_scroll enabled
# middle_emulation enabled
# }
#
input "type:keyboard" {
xkb_layout "de"
xkb_variant "neo"
}
# You can get the names of your inputs by running: swaymsg -t get_inputs
# Read `man 5 sway-input` for more information about this section.

View File

@ -0,0 +1,34 @@
### Key bindings
#
# Basics:
#
# Start a terminal
bindsym $mod+Return exec $term
# Kill focused window
bindsym $mod+Shift+x kill
# Start your launcher
bindsym $mod+a exec $menu
# Drag floating windows by holding down $mod and left mouse button.
# Resize them with right mouse button + $mod.
# Despite the name, also works for non-floating windows.
# Change normal to inverse to use left mouse button for resizing and right
# mouse button for dragging.
floating_modifier $mod normal
# Reload the configuration file
bindsym $mod+Shift+c reload
# Exit sway (logs you out of your Wayland session)
bindsym $mod+Shift+l exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
bindsym XF86MonBrightnessDown exec --no-startup-id brightnessctl --min-val=2 -q set 2%-
bindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl -q set 2%+

25
sway/config.d/layout.conf Normal file
View File

@ -0,0 +1,25 @@
#
# Layout stuff:
#
# You can "split" the current object of your focus with
# $mod+b or $mod+v, for horizontal and vertical splits
# respectively.
bindsym $mod+z splith
bindsym $mod+p splitv
# Switch the current container between different layout styles
bindsym $mod+i layout stacking
bindsym $mod+v layout tabbed
bindsym $mod+l layout toggle split
# Make the current focus fullscreen
bindsym $mod+e fullscreen
# Toggle the current focus between tiling and floating mode
bindsym $mod+Shift+space floating toggle
# Swap focus between the tiling area and the floating area
bindsym $mod+space focus mode_toggle
# Move focus to the parent container
bindsym $mod+u focus parent

View File

@ -0,0 +1,24 @@
#
# Moving around:
#
# Move your focus around
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
# Or use $mod+[up|down|left|right]
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# Move the focused window with the same, but add Shift
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
# Ditto, with arrow keys
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right

13
sway/config.d/output.conf Normal file
View File

@ -0,0 +1,13 @@
### Output configuration
#
# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
#output * bg /usr/share/backgrounds/sway/Sway_Wallpaper_Blue_1920x1080.png fill
output * bg $HOME/Bilder/wallpaper/undertale_sans-wallpaper-2048x1152.jpg fill
#output * bg $HOME/Bilder/wallpaper.jpg fill
#
# Example configuration:
#
# output HDMI-A-1 resolution 1920x1080 position 1920,0
#
# You can get the names of your outputs by running: swaymsg -t get_outputs
font pango:Hack Nerd Font mono:style=Regular 12

26
sway/config.d/resize.conf Normal file
View File

@ -0,0 +1,26 @@
#
# Resizing containers:
#
mode "resize" {
# left will shrink the containers width
# right will grow the containers width
# up will shrink the containers height
# down will grow the containers height
bindsym $left resize shrink width 10px
bindsym $down resize grow height 10px
bindsym $up resize shrink height 10px
bindsym $right resize grow width 10px
# Ditto, with arrow keys
bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
bindsym Up resize shrink height 10px
bindsym Right resize grow width 10px
# Return to default mode
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+c mode "resize"
#

View File

@ -0,0 +1,12 @@
#
# Scratchpad:
#
# Sway has a "scratchpad", which is a bag of holding for windows.
# You can send windows there and get them back later.
# Move the currently focused window to the scratchpad
bindsym $mod+Shift+minus move scratchpad
# Show the next scratchpad window or hide the focused scratchpad window.
# If there are multiple scratchpad windows, this command cycles through them.
bindsym $mod+minus scratchpad show

View File

@ -0,0 +1,27 @@
#
# Workspaces:
#
# Switch to workspace
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+6 workspace number 6
bindsym $mod+7 workspace number 7
bindsym $mod+8 workspace number 8
bindsym $mod+9 workspace number 9
bindsym $mod+0 workspace number 10
# Move focused container to workspace
bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
bindsym $mod+Shift+5 move container to workspace number 5
bindsym $mod+Shift+6 move container to workspace number 6
bindsym $mod+Shift+7 move container to workspace number 7
bindsym $mod+Shift+8 move container to workspace number 8
bindsym $mod+Shift+9 move container to workspace number 9
bindsym $mod+Shift+0 move container to workspace number 10
# Note: workspaces can have any name you want, not just numbers.
# We just use 1-10 as the default.

225
sway/config.old Normal file
View File

@ -0,0 +1,225 @@
# class border bground text indicator child_border
#client.focused #0D47A1 #1565C0 #FFFFFF #0D47A1 #285577
#client.focused_inactive #0D47A1 #90CAF9 #1F1F1F #0D47A1 #5F676A
#client.unfocused #0D47A1 #1F1F1F #90CAF9 #0D47A1 #222222
#client.urgent #0D47A1 #900000 #FFFFFF #900000 #900000
#client.placeholder #0D47A1 #1F1F1F #FFFFFF #0D47A1 #0C0C0C
#client.background #1f1f1f
# This file has been auto-generated by i3-config-wizard(1).
# It will not be overwritten, so edit it as you like.
#
# Should you change your keyboard layout some time, delete
# this file and re-run i3-config-wizard(1).
#
# i3 config file (v4)
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
#font pango:monospace 8
font pango:Hack Nerd Font mono:style=Regular 12
#font pango:JetBrainsMono Nerd Font:style=Regular 12
#exec_always --no-startup-id $HOME/.config/polybar/my_theme/launch.sh
# This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango).
#font pango:DejaVu Sans Mono 8
# Start XDG autostart .desktop files using dex. See also
# https://wiki.archlinux.org/index.php/XDG_Autostart
exec --no-startup-id dex-autostart --autostart --environment i3
# The combination of xss-lock, nm-applet and pactl is a popular choice, so
# they are included here as an example. Modify as you see fit.
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
# screen before suspend. Use loginctl lock-session to lock your screen.
exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
# NetworkManager is the most popular way to manage wireless networks on Linux,
# and nm-applet is a desktop environment-independent system tray GUI for it.
exec --no-startup-id nm-applet
# Use pactl to adjust volume in PulseAudio.
set $refresh_i3status killall -SIGUSR1 i3status
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
bindsym XF86MonBrightnessDown exec --no-startup-id brightnessctl --min-val=2 -q set 2%-
bindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl -q set 2%+
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# move tiling windows via drag & drop by left-clicking into the title bar,
# or left-clicking anywhere into the window while holding the floating modifier.
tiling_drag modifier
# start a terminal
#bindsym $mod+Return exec i3-sensible-terminal
bindsym $mod+Return exec alacritty
# kill focused window
bindsym $mod+Shift+X kill
# start dmenu (a program launcher)
#bindsym $mod+a exec --no-startup-id dmenu_run
bindsym $mod+a exec --no-startup-id $HOME/.config/polybar/my_theme/scripts/launcher.sh
# A more modern dmenu replacement is rofi:
# bindcode $mod+40 exec "rofi -modi drun,run -show drun"
# There also is i3-dmenu-desktop which only displays applications shipping a
# .desktop file. It is a wrapper around dmenu, so you need that installed.
# bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop
# change focus
bindsym $mod+n focus left
bindsym $mod+r focus down
bindsym $mod+t focus up
bindsym $mod+d focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focused window
bindsym $mod+Shift+N move left
bindsym $mod+Shift+R move down
bindsym $mod+Shift+T move up
bindsym $mod+Shift+D move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# split in horizontal orientation
bindsym $mod+s split h
# split in vertical orientation
bindsym $mod+p split v
# enter fullscreen mode for the focused container
bindsym $mod+e fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+i layout stacking
bindsym $mod+v layout tabbed
bindsym $mod+l layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+u focus parent
# focus the child container
#bindsym $mod+d focus child
# Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places.
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# switch to workspace
bindsym $mod+1 workspace number $ws1
bindsym $mod+2 workspace number $ws2
bindsym $mod+3 workspace number $ws3
bindsym $mod+4 workspace number $ws4
bindsym $mod+5 workspace number $ws5
bindsym $mod+6 workspace number $ws6
bindsym $mod+7 workspace number $ws7
bindsym $mod+8 workspace number $ws8
bindsym $mod+9 workspace number $ws9
bindsym $mod+0 workspace number $ws10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace number $ws1
bindsym $mod+Shift+2 move container to workspace number $ws2
bindsym $mod+Shift+3 move container to workspace number $ws3
bindsym $mod+Shift+4 move container to workspace number $ws4
bindsym $mod+Shift+5 move container to workspace number $ws5
bindsym $mod+Shift+6 move container to workspace number $ws6
bindsym $mod+Shift+7 move container to workspace number $ws7
bindsym $mod+Shift+8 move container to workspace number $ws8
bindsym $mod+Shift+9 move container to workspace number $ws9
bindsym $mod+Shift+0 move container to workspace number $ws10
# reload the configuration file
#bindsym $mod+Shift+adiaeresis reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
#bindsym $mod+Shift+C restart
bindsym $mod+Shift+C reload
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+L exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym n resize shrink width 10 px or 10 ppt
bindsym r resize grow height 10 px or 10 ppt
bindsym t resize shrink height 10 px or 10 ppt
bindsym d resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape or $mod+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+c mode "default"
}
bindsym $mod+c mode "resize"
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
status_command i3status
}
#for_window [class=".*"] border pixel 0
gaps inner 10
gaps outer 5
smart_gaps off
smart_borders on
for_window [class=".*"] border pixel 0
#for_window [class=".*"] border_radius 20
exec --no-startup-id nitrogen --restore
bindsym $mod+j exec --no-startup-id $HOME/.config/polybar/my_theme/scripts/powermenu.sh
exec --no-startup-id picom -b
input "type:keyboard" {
xkb_layout "de"
xkb_variant "neo"
}

1
wofi Submodule

@ -0,0 +1 @@
Subproject commit e21f47a050fc60df78045a98426e16756e5f09d5