diff --git a/i3/.config/i3/config b/i3/.config/i3/config new file mode 100755 index 0000000..72622a4 --- /dev/null +++ b/i3/.config/i3/config @@ -0,0 +1,434 @@ +################################################################################################################# +################# Define the $mod variable/key ################# +##################################################################################################################### + +# Key to rule them all : Super(Windows) or Alt key? + +# Mod4 = Windows or Super key on keyboard +# Mod1 = Alt key on keyboard + +#Set Alt key +#set $mod Mod1 + +#set Super key +set $mod Mod4 + + +##################################################################################################################### +################# Define the movements keys - variables ################# +##################################################################################################################### + + +#This is setup for qwerty +set $up j +set $down k +set $left h +set $right l + +# font pango:OperatorMono Nerd Font 0 + +font pango: Source Code Pro 10 + +##################################################################################################################### +################# Single and Dual screen ################# +##################################################################################################################### +exec --no-startup-id xrandr --output DP-4 --mode 1920x1080 --rate 60.00 +exec --no-startup-id xrandr --output DP-4 --left-of DP-6 +exec --no-startup-id xrandr --output DP-0 --left-of DP-4 +exec xrandr --setprovideroutputsource modesetting NVIDIA-0 +exec --no-startup-id xrandr --output DP-4 --left-of DP-6 +exec --no-startup-id xrandr --output DP-0 --left-of DP-4 + +# switch to workspace +bindsym $mod+1 workspace 1 +bindsym $mod+2 workspace 2 +bindsym $mod+3 workspace 3 +bindsym $mod+4 workspace 4 +bindsym $mod+5 workspace 5 +bindsym $mod+6 workspace 6 +bindsym $mod+7 workspace 7 +bindsym $mod+8 workspace 8 +bindsym $mod+9 workspace 9 + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace 1 +bindsym $mod+Shift+2 move container to workspace 2 +bindsym $mod+Shift+3 move container to workspace 3 +bindsym $mod+Shift+4 move container to workspace 4 +bindsym $mod+Shift+5 move container to workspace 5 +bindsym $mod+Shift+6 move container to workspace 6 +bindsym $mod+Shift+7 move container to workspace 7 +bindsym $mod+Shift+8 move container to workspace 8 +bindsym $mod+Shift+9 move container to workspace 9 + + + + +##################################################################################################################### +################# menu ################# +##################################################################################################################### + +# start dmenu +bindsym $mod+d exec --no-startup-id i3-dmenu-desktop + + + +##################################################################################################################### +################# how to exit, logoff, suspend, ... ################# +##################################################################################################################### + +bindsym $mod+0 mode "$mode_system" + +set $mode_system System (k) lock, (l) logout, (u) suspend, (h) hibernate, (r) reboot, (s) shutdown +mode "$mode_system" { + + bindsym k exec --no-startup-id ~/.config/i3/scripts/i3exit.sh lock, mode "default" + bindsym l exec --no-startup-id ~/.config/i3/scripts/i3exit.sh logout, mode "default" + bindsym u exec --no-startup-id ~/.config/i3/scripts/i3exit.sh suspend, mode "default" + bindsym h exec --no-startup-id ~/.config/i3/scripts/i3exit.sh hibernate, mode "default" + bindsym r exec --no-startup-id ~/.config/i3/scripts/i3exit.sh reboot, mode "default" + bindsym s exec --no-startup-id ~/.config/i3/scripts/i3exit.sh shutdown, mode "default" + +# back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} + + +# ArcoLinux Logout +bindsym $mod+Shift+e 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'" + + +##################################################################################################################### +################# reload changed configuration ################# +##################################################################################################################### + + +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r restart + +# reload the configuration file +bindsym $mod+Shift+c reload + + + + +##################################################################################################################### +################# Stopping an application ################# +##################################################################################################################### + +# kill focused window +bindsym $mod+Shift+a kill + + + +##################################################################################################################### +################# Moving around in i3 ################# +##################################################################################################################### + + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus +bindsym $mod+$left focus left +bindsym $mod+$down focus down +bindsym $mod+$up focus up +bindsym $mod+$right 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+$left move left +bindsym $mod+Shift+$down move down +bindsym $mod+Shift+$up move up +bindsym $mod+Shift+$right 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 + + + + +##################################################################################################################### +################# moving around workspaces ################# +##################################################################################################################### +# next/previous workspace + +bindsym Mod1+Tab workspace next +bindsym Mod1+Shift+Tab workspace prev +bindsym $mod+Tab workspace back_and_forth + +#navigate workspaces next / previous +bindsym Mod1+Ctrl+Right workspace next +bindsym Mod1+Ctrl+Left workspace prev + + +##################################################################################################################### +################# Scratchpad ################# +##################################################################################################################### +# Make the currently focused window a scratchpad +bindsym $mod+Shift+minus move scratchpad + +# Show the first scratchpad window +bindsym $mod+minus scratchpad show + + +##################################################################################################################### +################# Tiling parameters ################# +##################################################################################################################### + +# orientation for new workspaces +# default_orientation horizontal + +# split in horizontal orientation +# bindsym $mod+Shift+h split h + +# split in vertical orientation +# bindsym $mod+Shift+v split v + +# Enter fullscreen mode for the focused container +# Super + F in arcolinux is execute thunar +bindsym $mod+f fullscreen toggle + +# change container layout (stacked, tabbed, toggle split) +# qwerty/azerty issue for letter z +bindsym $mod+s layout stacking +bindsym $mod+w layout tabbed +# bindsym $mod+e layout toggle split + + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# focus the parent container +# bindsym $mod+a focus parent + + + +#################################################################################################################### +# resize window (you can also use the mouse for that) + +bindsym $mod+r mode "resize" + +mode "resize" { +# These bindings trigger as soon as you enter the resize mode + +# Pressing left will shrink the window’s width. +# Pressing right will grow the window’s width. +# Pressing up will shrink the window’s height. +# Pressing down will grow the window’s height. + 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 + +# same bindings, but for the arrow keys + bindsym Left resize shrink width 1 px or 1 ppt + bindsym Down resize grow height 1 px or 1 ppt + bindsym Up resize shrink height 1 px or 1 ppt + bindsym Right resize grow width 1 px or 1 ppt + +# back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} + + +##################################################################################################################### +################# autostart - execute applications at boot time ################# +##################################################################################################################### + + +#Authentication dialog (polkit-gnome) +# exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & + + + +##################################################################################################################### +################# applications keyboard shortcuts ################# +##################################################################################################################### + +bindsym $mod+Return exec --no-startup-id gnome-terminal;focus + +# bindsym control+mod1+u exec --no-startup-id pavucontrol + +bindsym $mod+Shift+Return exec --no-startup-id nemo;focus + + + +##################################################################################################################### +################# screenshots ################# +##################################################################################################################### + +bindsym Print exec maim -s --format png /dev/stdout | xclip -selection clipboard -t image/png -i +bindsym $mod+Print exec maim --select | tee ~/Pictures/$(date +%s).png | xclip -sel c -t image/png + + + +##################################################################################################################### +################# audio settings ################# +##################################################################################################################### +# +# 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 +# + +##################################################################################################################### +################# light ################# +##################################################################################################################### + +# Sreen brightness controls +# bindsym XF86MonBrightnessUp exec light -A 1 # increase screen brightness +# bindsym XF86MonBrightnessDown exec light -U 1 # decrease screen brightness + + +##################################################################################################################### +################# bar toggle ################# +##################################################################################################################### + +# bar toggle, hide or show +bindsym $mod+b bar mode toggle + +bindsym $mod+i bar mode invisible + + + +# +#################################################################################################################### +################ i3 gaps next ################# +#################################################################################################################### +# +# for_window [class="^.*"] border pixel 1 +# gaps inner 3 +# gaps outer 1 +# smart_gaps on +# smart_borders on +# +# +# +# +# +#################################################################################################################### +################ i3 gaps change ################# +#################################################################################################################### +# +# +# +# set $mode_gaps Gaps: (o) outer, (i) inner +# set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global) +# set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global) +# bindsym $mod+Shift+g mode "$mode_gaps" +# +# mode "$mode_gaps" { +# bindsym o mode "$mode_gaps_outer" +# bindsym i mode "$mode_gaps_inner" +# bindsym Return mode "default" +# bindsym Escape mode "default" +# } +# +# mode "$mode_gaps_inner" { +# bindsym plus gaps inner current plus 5 +# bindsym minus gaps inner current minus 5 +# bindsym 0 gaps inner current set 0 +# +# bindsym Shift+plus gaps inner all plus 5 +# bindsym Shift+minus gaps inner all minus 5 +# bindsym Shift+0 gaps inner all set 0 +# +# bindsym Return mode "default" +# bindsym Escape mode "default" +# } +# mode "$mode_gaps_outer" { +# bindsym plus gaps outer current plus 5 +# bindsym minus gaps outer current minus 5 +# bindsym 0 gaps outer current set 0 +# +# bindsym Shift+plus gaps outer all plus 5 +# bindsym Shift+minus gaps outer all minus 5 +# bindsym Shift+0 gaps outer all set 0 +# +# bindsym Return mode "default" +# bindsym Escape mode "default" +# } +# + +##################################################################################################################### +################# picom and wallpaper ################# +##################################################################################################################### + +#if you want transparency on non-focused windows, ... +# exec_always --no-startup-id picom --config ~/.config/i3/picom.conf +# exec_always --no-startup-id nitrogen --restore +# exec_always --no-startup-id ~/.config/i3/scripts/mouse.sh + + +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### +################# bar appearance ################# +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### + +bar { + position top + font pango:OperatorMono Nerd Font 10 + status_command i3status + tray_padding 1 + strip_workspace_numbers yes + + colors { + separator #1f222d + background #1f222d + statusline #81a1c1 + +# border background text + focused_workspace #1f222d #1f222d #81a1c1 + active_workspace #1f222d #252936 #5e81ac + inactive_workspace #1f222d #1f222d #4c566a + urgent_workspace #1f222d #1f222d #ee829f + binding_mode #1f222d #81a1c1 #2e3440 + } +} + +##START THEMING WM + +# Window color settings +# class border backgr. text indicator +client.focused #81a1c1 #81a1c1 #ffffff #81a1c1 +client.unfocused #2e3440 #1f222d #888888 #1f222d +client.focused_inactive #2e3440 #1f222d #888888 #1f222d +client.placeholder #2e3440 #1f222d #888888 #1f222d +client.urgent #900000 #900000 #ffffff #900000 + +client.background #242424 + +##STOP THEMING WM + +# exec xset r rate 300 50 & + +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### +######################################## THE END ########################################### +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### + diff --git a/i3/.config/i3/config.save b/i3/.config/i3/config.save new file mode 100755 index 0000000..70a0856 --- /dev/null +++ b/i3/.config/i3/config.save @@ -0,0 +1,430 @@ +##################################################################################################################### +################# Define the $mod variable/key ################# +##################################################################################################################### + +# Key to rule them all : Super(Windows) or Alt key? + +# Mod4 = Windows or Super key on keyboard +# Mod1 = Alt key on keyboard + +#Set Alt key +#set $mod Mod1 + +#set Super key +set $mod Mod4 + + +##################################################################################################################### +################# Define the movements keys - variables ################# +##################################################################################################################### + + +#This is setup for qwerty +set $up j +set $down k +set $left h +set $right l + +# font pango:OperatorMono Nerd Font 0 + +font pango: Source Code Pro 12px + +##################################################################################################################### +################# Single and Dual screen ################# +##################################################################################################################### +exec --no-startup-id xrandr --output eDP-1 --mode 1920x1080 --rate 60.00 +exec xrandr --setprovideroutputsource modesetting NVIDIA-0 + +# switch to workspace +bindsym $mod+1 workspace 1 +bindsym $mod+2 workspace 2 +bindsym $mod+3 workspace 3 +bindsym $mod+4 workspace 4 +bindsym $mod+5 workspace 5 +bindsym $mod+6 workspace 6 +bindsym $mod+7 workspace 7 +bindsym $mod+8 workspace 8 +bindsym $mod+9 workspace 9 + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace 1 +bindsym $mod+Shift+2 move container to workspace 2 +bindsym $mod+Shift+3 move container to workspace 3 +bindsym $mod+Shift+4 move container to workspace 4 +bindsym $mod+Shift+5 move container to workspace 5 +bindsym $mod+Shift+6 move container to workspace 6 +bindsym $mod+Shift+7 move container to workspace 7 +bindsym $mod+Shift+8 move container to workspace 8 +bindsym $mod+Shift+9 move container to workspace 9 + + + + +##################################################################################################################### +################# menu ################# +##################################################################################################################### + +# start dmenu +bindsym $mod+d exec --no-startup-id i3-dmenu-desktop + + + +##################################################################################################################### +################# how to exit, logoff, suspend, ... ################# +##################################################################################################################### + +bindsym $mod+0 mode "$mode_system" + +set $mode_system System (k) lock, (l) logout, (u) suspend, (h) hibernate, (r) reboot, (s) shutdown +mode "$mode_system" { + + bindsym k exec --no-startup-id ~/.config/i3/scripts/i3exit.sh lock, mode "default" + bindsym l exec --no-startup-id ~/.config/i3/scripts/i3exit.sh logout, mode "default" + bindsym u exec --no-startup-id ~/.config/i3/scripts/i3exit.sh suspend, mode "default" + bindsym h exec --no-startup-id ~/.config/i3/scripts/i3exit.sh hibernate, mode "default" + bindsym r exec --no-startup-id ~/.config/i3/scripts/i3exit.sh reboot, mode "default" + bindsym s exec --no-startup-id ~/.config/i3/scripts/i3exit.sh shutdown, mode "default" + + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} + + +# ArcoLinux Logout +bindsym $mod+Shift+e 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'" + + +##################################################################################################################### +################# reload changed configuration ################# +##################################################################################################################### + + +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r restart + +# reload the configuration file +bindsym $mod+Shift+c reload + + + + +##################################################################################################################### +################# Stopping an application ################# +##################################################################################################################### + +# kill focused window +bindsym $mod+Shift+a kill + + + +##################################################################################################################### +################# Moving around in i3 ################# +##################################################################################################################### + + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus +bindsym $mod+$left focus left +bindsym $mod+$down focus down +bindsym $mod+$up focus up +bindsym $mod+$right 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+$left move left +bindsym $mod+Shift+$down move down +bindsym $mod+Shift+$up move up +bindsym $mod+Shift+$right 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 + + + + +##################################################################################################################### +################# moving around workspaces ################# +##################################################################################################################### +# next/previous workspace + +bindsym Mod1+Tab workspace next +bindsym Mod1+Shift+Tab workspace prev +bindsym $mod+Tab workspace back_and_forth + +#navigate workspaces next / previous +bindsym Mod1+Ctrl+Right workspace next +bindsym Mod1+Ctrl+Left workspace prev + + +##################################################################################################################### +################# Scratchpad ################# +##################################################################################################################### +# Make the currently focused window a scratchpad +bindsym $mod+Shift+minus move scratchpad + +# Show the first scratchpad window +bindsym $mod+minus scratchpad show + + +##################################################################################################################### +################# Tiling parameters ################# +##################################################################################################################### + +# orientation for new workspaces +default_orientation vertical + +# split in horizontal orientation +# bindsym $mod+Shift+h split h + +# split in vertical orientation +# bindsym $mod+Shift+v split v + +# Enter fullscreen mode for the focused container +# Super + F in arcolinux is execute thunar +bindsym $mod+f fullscreen toggle + +# change container layout (stacked, tabbed, toggle split) +# qwerty/azerty issue for letter z +bindsym $mod+s layout stacking +bindsym $mod+w layout tabbed +# bindsym $mod+e layout toggle split + + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# focus the parent container +# bindsym $mod+a focus parent + + + +#################################################################################################################### +# resize window (you can also use the mouse for that) + +bindsym $mod+r mode "resize" + +mode "resize" { + # These bindings trigger as soon as you enter the resize mode + + # Pressing left will shrink the window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s height. + 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 + + # same bindings, but for the arrow keys + bindsym Left resize shrink width 1 px or 1 ppt + bindsym Down resize grow height 1 px or 1 ppt + bindsym Up resize shrink height 1 px or 1 ppt + bindsym Right resize grow width 1 px or 1 ppt + + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} + + +##################################################################################################################### +################# autostart - execute applications at boot time ################# +##################################################################################################################### + + +#Authentication dialog (polkit-gnome) +exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & + + +##################################################################################################################### +################# applications keyboard shortcuts ################# +##################################################################################################################### + +bindsym $mod+Return exec --no-startup-id alacritty;focus + +bindsym control+mod1+u exec --no-startup-id pavucontrol + +bindsym $mod+Shift+Return exec --no-startup-id nemo;focus + + + +##################################################################################################################### +################# screenshots ################# +##################################################################################################################### + +bindsym Print exec maim -s --format png /dev/stdout | xclip -selection clipboard -t image/png -i +bindsym $mod+Print exec maim --select | tee ~/Pictures/$(date +%s).png | xclip -sel c -t image/png + + + +##################################################################################################################### +################# audio settings ################# +##################################################################################################################### + +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 + + +##################################################################################################################### +################# light ################# +##################################################################################################################### + +# Sreen brightness controls +bindsym XF86MonBrightnessUp exec light -A 1 # increase screen brightness +bindsym XF86MonBrightnessDown exec light -U 1 # decrease screen brightness + + +##################################################################################################################### +################# bar toggle ################# +##################################################################################################################### + +# bar toggle, hide or show +bindsym $mod+b bar mode toggle + +bindsym $mod+i bar mode invisible + + + + +##################################################################################################################### +################# i3 gaps next ################# +##################################################################################################################### + +for_window [class="^.*"] border pixel 1 +gaps inner 3 +gaps outer 1 +#smart_gaps on +#smart_borders on + + + + + +##################################################################################################################### +################# i3 gaps change ################# +##################################################################################################################### + + + +set $mode_gaps Gaps: (o) outer, (i) inner +set $mode_gaps_outer Outer Gaps: +|-|0 (local), Shift + +|-|0 (global) +set $mode_gaps_inner Inner Gaps: +|-|0 (local), Shift + +|-|0 (global) +bindsym $mod+Shift+g mode "$mode_gaps" + +mode "$mode_gaps" { + bindsym o mode "$mode_gaps_outer" + bindsym i mode "$mode_gaps_inner" + bindsym Return mode "default" + bindsym Escape mode "default" +} + +mode "$mode_gaps_inner" { + bindsym plus gaps inner current plus 5 + bindsym minus gaps inner current minus 5 + bindsym 0 gaps inner current set 0 + + bindsym Shift+plus gaps inner all plus 5 + bindsym Shift+minus gaps inner all minus 5 + bindsym Shift+0 gaps inner all set 0 + + bindsym Return mode "default" + bindsym Escape mode "default" +} +mode "$mode_gaps_outer" { + bindsym plus gaps outer current plus 5 + bindsym minus gaps outer current minus 5 + bindsym 0 gaps outer current set 0 + + bindsym Shift+plus gaps outer all plus 5 + bindsym Shift+minus gaps outer all minus 5 + bindsym Shift+0 gaps outer all set 0 + + bindsym Return mode "default" + bindsym Escape mode "default" +} + + +##################################################################################################################### +################# picom and wallpaper ################# +##################################################################################################################### + +#if you want transparency on non-focused windows, ... +# exec_always --no-startup-id picom --config ~/.config/i3/picom.conf +# exec_always --no-startup-id nitrogen --restore +# exec_always --no-startup-id ~/.config/i3/scripts/mouse.sh + + +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### +################# bar appearance ################# +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### + +bar { + heigth 25 + position top + # font pango:OperatorMono Nerd Font 12 + status_command i3status + tray_padding 1 + strip_workspace_numbers yes + + colors { + separator #1f222d + background #1f222d + statusline #81a1c1 + + # border background text + focused_workspace #1f222d #1f222d #81a1c1 + active_workspace #1f222d #252936 #5e81ac + inactive_workspace #1f222d #1f222d #4c566a + urgent_workspace #1f222d #1f222d #ee829f + binding_mode #1f222d #81a1c1 #2e3440 + } +} + + ##START THEMING WM + + # Window color settings + # class border backgr. text indicator + client.focused #81a1c1 #81a1c1 #ffffff #81a1c1 + client.unfocused #2e3440 #1f222d #888888 #1f222d + client.focused_inactive #2e3440 #1f222d #888888 #1f222d + client.placeholder #2e3440 #1f222d #888888 #1f222d + client.urgent #900000 #900000 #ffffff #900000 + + client.background #242424 + + ##STOP THEMING WM + +exec xset r rate 300 50 & + +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### +######################################## THE END ########################################### +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### +##################################################################################################################### + diff --git a/i3/.config/i3/scripts/i3exit.sh b/i3/.config/i3/scripts/i3exit.sh new file mode 100755 index 0000000..3f19412 --- /dev/null +++ b/i3/.config/i3/scripts/i3exit.sh @@ -0,0 +1,29 @@ +#!/bin/sh + + +case "$1" in + lock) + i3lock -i ~/Downloads/tower-nord.png + ;; + logout) + i3-msg exit + ;; + suspend) + systemctl suspend + ;; + hibernate) + systemctl hibernate + ;; + reboot) + systemctl reboot + ;; + shutdown) + systemctl poweroff + ;; + *) + echo "Usage: $0 {lock|logout|suspend|hibernate|reboot|shutdown}" + exit 2 +esac + +exit 0 + diff --git a/i3status/.config/i3status/config b/i3status/.config/i3status/config new file mode 100755 index 0000000..2686551 --- /dev/null +++ b/i3status/.config/i3status/config @@ -0,0 +1,35 @@ +general { + output_format = "i3bar" + colors = true + interval = 1 +} + +order += "disk /" +order += "memory" +order += "load" +order += "tztime local" + + +tztime local { + format = "%Y-%m-%d %H:%M:%S" +} + + +load { + format = "CPU : %5min" +} + + +memory { + format = "%used" + threshold_degraded = "10%" + format_degraded = "MEMORY: %free" +} + +disk "/" { + format = "%free (%avail)/ %total" +} + +read_file uptime { + path = "/proc/uptime" +} diff --git a/nvim/.config/nvim/init.lua b/nvim/.config/nvim/init.lua new file mode 100644 index 0000000..e4ee6e4 --- /dev/null +++ b/nvim/.config/nvim/init.lua @@ -0,0 +1,21 @@ +local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" +if not vim.loop.fs_stat(lazypath) then + vim.fn.system({ + "git", + "clone", + "--filter=blob:none", + "https://github.com/folke/lazy.nvim.git", + "--branch=stable", -- latest stable release + lazypath, + }) +end +vim.opt.rtp:prepend(lazypath) + +require("vim-options") +require("lazy").setup("plugins") + + + + + + diff --git a/nvim/.config/nvim/lazy-lock.json b/nvim/.config/nvim/lazy-lock.json new file mode 100644 index 0000000..6ccc91c --- /dev/null +++ b/nvim/.config/nvim/lazy-lock.json @@ -0,0 +1,23 @@ +{ + "Comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" }, + "LuaSnip": { "branch": "master", "commit": "82108e7e31cc6fc223cc5df5cae6d89f70bb199f" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" }, + "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, + "friendly-snippets": { "branch": "main", "commit": "69a2c1675b66e002799f5eef803b87a12f593049" }, + "lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" }, + "lualine.nvim": { "branch": "master", "commit": "566b7036f717f3d676362742630518a47f132fff" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "0989bdf4fdf7b5aa4c74131d7ffccc3f399ac788" }, + "mason.nvim": { "branch": "main", "commit": "e110bc3be1a7309617cecd77bfe4bf86ba1b8134" }, + "neo-tree.nvim": { "branch": "v3.x", "commit": "77d9f484b88fd380386b46ed9206e5374d69d9d8" }, + "none-ls.nvim": { "branch": "main", "commit": "7e146f3a188853843bb4ca1bff24c912bb9b7177" }, + "nui.nvim": { "branch": "main", "commit": "35da9ca1de0fc4dda96c2e214d93d363c145f418" }, + "nvim-autopairs": { "branch": "master", "commit": "9fd41181693dd4106b3e414a822bb6569924de81" }, + "nvim-cmp": { "branch": "main", "commit": "538e37ba87284942c1d76ed38dd497e54e65b891" }, + "nvim-lspconfig": { "branch": "master", "commit": "e47ccfae775f0d572ef0f3a7d245f043b259dafc" }, + "nvim-treesitter": { "branch": "master", "commit": "8cd2b230174efbf7b5d9f49fe2f90bda6b5eb16e" }, + "nvim-web-devicons": { "branch": "master", "commit": "584038666b0d8124d452a2e8ea9e38e6d6e56490" }, + "plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" }, + "telescope.nvim": { "branch": "master", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" }, + "vim-fugitive": { "branch": "master", "commit": "59659093581aad2afacedc81f009ed6a4bfad275" }, + "vimtex": { "branch": "master", "commit": "8352d7380a0ea26f9f2ad09e57ccf90b4bd1c746" } +} \ No newline at end of file diff --git a/nvim/.config/nvim/lua/plugins.lua b/nvim/.config/nvim/lua/plugins.lua new file mode 100644 index 0000000..b30bcbd --- /dev/null +++ b/nvim/.config/nvim/lua/plugins.lua @@ -0,0 +1,3 @@ +return { + +} diff --git a/nvim/.config/nvim/lua/plugins/autoclose.lua b/nvim/.config/nvim/lua/plugins/autoclose.lua new file mode 100644 index 0000000..55ba8bf --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/autoclose.lua @@ -0,0 +1,5 @@ +return { + "windwp/nvim-autopairs", + event = "InsertEnter", + opts = {}, -- this is equalent to setup({}) function +} diff --git a/nvim/.config/nvim/lua/plugins/comment.lua b/nvim/.config/nvim/lua/plugins/comment.lua new file mode 100644 index 0000000..883a380 --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/comment.lua @@ -0,0 +1,47 @@ +return { + "numToStr/Comment.nvim", + opts = { + ---Add a space b/w comment and the line + padding = true, + ---Whether the cursor should stay at its position + sticky = true, + ---Lines to be ignored while (un)comment + ignore = nil, + ---LHS of toggle mappings in NORMAL mode + toggler = { + ---Line-comment toggle keymap + line = "gcc", + ---Block-comment toggle keymap + block = "gcc", + }, + ---LHS of operator-pending mappings in NORMAL and VISUAL mode + opleader = { + ---Line-comment keymap + line = "gc", + ---Block-comment keymap + block = "gb", + }, + ---LHS of extra mappings + extra = { + ---Add comment on the line above + above = "gcO", + ---Add comment on the line below + below = "gco", + ---Add comment at the end of line + eol = "gcA", + }, + ---Enable keybindings + ---NOTE: If given `false` then the plugin won't create any mappings + mappings = { + ---Operator-pending mapping; `gcc` `gbc` `gc[count]{motion}` `gb[count]{motion}` + basic = true, + ---Extra mapping; `gco`, `gcO`, `gcA` + extra = true, + }, + ---Function to call before (un)comment + pre_hook = nil, + ---Function to call after (un)comment + post_hook = nil, + }, + lazy = false, +} diff --git a/nvim/.config/nvim/lua/plugins/completion.lua b/nvim/.config/nvim/lua/plugins/completion.lua new file mode 100644 index 0000000..b42d5cc --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/completion.lua @@ -0,0 +1,44 @@ +return { + { + "hrsh7th/cmp-nvim-lsp", + }, + { + "L3MON4D3/LuaSnip", + dependencies = { + "saadparwaiz1/cmp_luasnip", + "rafamadriz/friendly-snippets", + }, + }, + { + "hrsh7th/nvim-cmp", + config = function() + local cmp = require("cmp") + require("luasnip.loaders.from_vscode").lazy_load() + + cmp.setup({ + snippet = { + expand = function(args) + require("luasnip").lsp_expand(args.body) + end, + }, + window = { + completion = cmp.config.window.bordered(), + documentation = cmp.config.window.bordered(), + }, + mapping = cmp.mapping.preset.insert({ + [""] = cmp.mapping.scroll_docs(-4), + [""] = cmp.mapping.scroll_docs(4), + [""] = cmp.mapping.complete(), + [""] = cmp.mapping.abort(), + [""] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. + }), + sources = cmp.config.sources({ + { name = "nvim_lsp" }, + { name = "luasnip" }, -- For luasnip users. + }, { + { name = "buffer" }, + }), + }) + end, + }, +} diff --git a/nvim/.config/nvim/lua/plugins/fugitive.lua b/nvim/.config/nvim/lua/plugins/fugitive.lua new file mode 100644 index 0000000..5efee0e --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/fugitive.lua @@ -0,0 +1,10 @@ +return { + "tpope/vim-fugitive", + config = function() + vim.keymap.set("n", "gs", "Git", { desc = "Git status" }) + vim.keymap.set("n", "ga", "Gwrite", { desc = "Git add" }) + vim.keymap.set("n", "gc", "Git commit", { desc = "Git commit" }) + vim.keymap.set("n", "gpl", "Git pull", { desc = "Git pull" }) + vim.keymap.set("n", "gp", "15 split|term git push", { desc = "Git push" }) + end, +} diff --git a/nvim/.config/nvim/lua/plugins/lsp-config.lua b/nvim/.config/nvim/lua/plugins/lsp-config.lua new file mode 100644 index 0000000..56ec3b9 --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/lsp-config.lua @@ -0,0 +1,44 @@ +return { + { + "williamboman/mason.nvim", + config = function() + require("mason").setup() + end, + }, + { + "williamboman/mason-lspconfig.nvim", + config = function() + require("mason-lspconfig").setup({ + ensure_installed = { "lua_ls", "texlab", "clangd", "pylsp", "html", "tailwindcss", "biome" }, + }) + end, + }, + { + "neovim/nvim-lspconfig", + config = function() + local lspconfig = require("lspconfig") + local capabilities = require("cmp_nvim_lsp").default_capabilities() + lspconfig.lua_ls.setup({ + capabilities = capabilities, + }) + lspconfig.texlab.setup({ + capabilities = capabilities, + }) + lspconfig.clangd.setup({ + capabilities = capabilities, + }) + lspconfig.pylsp.setup({ + capabilities = capabilities, + }) + lspconfig.html.setup({ + capabilities = capabilities, + }) + lspconfig.tailwindcss.setup({ + capabilities = capabilities, + }) + lspconfig.biome.setup({ + capabilities = capabilities, + }) + end, + }, +} diff --git a/nvim/.config/nvim/lua/plugins/lualine.lua b/nvim/.config/nvim/lua/plugins/lualine.lua new file mode 100644 index 0000000..ddba7ec --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/lualine.lua @@ -0,0 +1,7 @@ +return { + "nvim-lualine/lualine.nvim", + dependencies = { "nvim-tree/nvim-web-devicons" }, + config = function() + require("lualine").setup() + end, +} diff --git a/nvim/.config/nvim/lua/plugins/neotree.lua b/nvim/.config/nvim/lua/plugins/neotree.lua new file mode 100644 index 0000000..fbb4006 --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/neotree.lua @@ -0,0 +1,12 @@ +return { + "nvim-neo-tree/neo-tree.nvim", + branch = "v3.x", + dependencies = { + "nvim-lua/plenary.nvim", + "nvim-tree/nvim-web-devicons", + "MunifTanjim/nui.nvim", + }, + config = function() + vim.keymap.set("n", "n", ":Neotree toggle", {}) + end, +} diff --git a/nvim/.config/nvim/lua/plugins/none-ls.lua b/nvim/.config/nvim/lua/plugins/none-ls.lua new file mode 100644 index 0000000..f0fb42f --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/none-ls.lua @@ -0,0 +1,18 @@ +return { + "nvimtools/none-ls.nvim", + config = function() + local null_ls = require("null-ls") + null_ls.setup({ + sources = { + null_ls.builtins.formatting.stylua, + null_ls.builtins.formatting.black, + null_ls.builtins.formatting.isort, + null_ls.builtins.formatting.bibclean, + null_ls.builtins.formatting.clang_format, + null_ls.builtins.formatting.djlint, + null_ls.builtins.formatting.biome, + }, + }) + vim.keymap.set("n", "gf", vim.lsp.buf.format, {}) + end, +} diff --git a/nvim/.config/nvim/lua/plugins/telescope.lua b/nvim/.config/nvim/lua/plugins/telescope.lua new file mode 100644 index 0000000..fb09978 --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/telescope.lua @@ -0,0 +1,10 @@ +return { + "nvim-telescope/telescope.nvim", + tag = "0.1.5", + dependencies = { "nvim-lua/plenary.nvim" }, + config = function() + local builtin = require("telescope.builtin") + vim.keymap.set("n", "", builtin.find_files, {}) + vim.keymap.set("n", "fg", builtin.live_grep, {}) + end, +} diff --git a/nvim/.config/nvim/lua/plugins/treesitter.lua b/nvim/.config/nvim/lua/plugins/treesitter.lua new file mode 100644 index 0000000..de5c1f2 --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/treesitter.lua @@ -0,0 +1,14 @@ +return { + "nvim-treesitter/nvim-treesitter", + build = ":TSUpdate", + config = function() + local config = require("nvim-treesitter.configs") + config.setup({ + ensure_installed = { "c", "lua", "vim", "vimdoc", "query", "python", "html", "css", "javascript", "latex" }, + sync_install = false, + auto_install = true, + highlight = { enable = true }, + indent = { enable = true }, + }) + end, +} diff --git a/nvim/.config/nvim/lua/plugins/vimtex.lua b/nvim/.config/nvim/lua/plugins/vimtex.lua new file mode 100644 index 0000000..f322f82 --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/vimtex.lua @@ -0,0 +1,9 @@ +return { + "lervag/vimtex", + config = function() + vim.g.vimtex_view_general_viewer = "zathura" + vim.g.vimtex_view_automatic = 1 + vim.keymap.set("n", "ll", ":VimtexCompile") + vim.keymap.set("n", "lv", ":VimtexView") + end, +} diff --git a/nvim/.config/nvim/lua/vim-options.lua b/nvim/.config/nvim/lua/vim-options.lua new file mode 100644 index 0000000..101ca94 --- /dev/null +++ b/nvim/.config/nvim/lua/vim-options.lua @@ -0,0 +1,7 @@ +vim.cmd("set relativenumber") +vim.cmd("set expandtab") +vim.cmd("set tabstop=2") +vim.cmd("set softtabstop=2") +vim.cmd("set shiftwidth=2") +vim.g.mapleader = " " + diff --git a/ssh/config b/ssh/.ssh/config similarity index 100% rename from ssh/config rename to ssh/.ssh/config