From 646d82ae644e90e0ee5f8c62c1428e98b7c703f3 Mon Sep 17 00:00:00 2001 From: araison Date: Mon, 22 Jan 2024 21:57:01 +0100 Subject: [PATCH] Updating i3 config --- i3/.config/i3/bing-wallpaper.sh | 10 + i3/.config/i3/config | 581 +++++++++++--------------------- zsh/.zshrc | 2 +- 3 files changed, 202 insertions(+), 391 deletions(-) create mode 100644 i3/.config/i3/bing-wallpaper.sh diff --git a/i3/.config/i3/bing-wallpaper.sh b/i3/.config/i3/bing-wallpaper.sh new file mode 100644 index 0000000..8067331 --- /dev/null +++ b/i3/.config/i3/bing-wallpaper.sh @@ -0,0 +1,10 @@ +#!/bin/sh +imagepath="$HOME/Pictures/bing-wallpaper.jpg" +urlpath=$( \ +sleep 2 +curl "https://www.bing.com/HPImageArchive.aspx?format=rss&idx=0&n=1&mkt=en-US" \ +| xmllint --xpath "/rss/channel/item/link/text()" - \ +| sed 's/1366x768/1920x1080/g' \ +) +curl "https://www.bing.com$urlpath" -o $imagepath +feh --bg-fill $imagepath diff --git a/i3/.config/i3/config b/i3/.config/i3/config index 72622a4..c894d87 100755 --- a/i3/.config/i3/config +++ b/i3/.config/i3/config @@ -1,82 +1,97 @@ -################################################################################################################# -################# Define the $mod variable/key ################# -##################################################################################################################### +############################### +# CONFIGURATION I3 # +############################### +# Doc : http://i3wm.org/docs/userguide.html -# 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 +set $alt Mod1 +############################### +# APPARENCE # +############################### +# Focus la fenêtre au survol +focus_follows_mouse no -##################################################################################################################### -################# Define the movements keys - variables ################# -##################################################################################################################### +# Police à utiliser +font pango: DroidSansMono Nerd Font 12 +# Couleurs +set_from_resource $active active +set_from_resource $inactive secondary +set_from_resource $background background +set_from_resource $foreground foreground -#This is setup for qwerty -set $up j -set $down k -set $left h -set $right l +# class border backgr. text indicat child_border +client.focused $background $background $active #F8CD7A $active +client.focused_inactive $background $background inactive #5A638C $inactive +client.unfocused $background #16161E $inactive #34384D $inactive +client.urgent $active $active $background #DB4B4B $active +client.placeholder $background $background $foreground #000000 $inactive +client.background $background -# font pango:OperatorMono Nerd Font 0 +# Fond d'écran si pas de multi-screen +#exec_always --no-startup-id ~/.config/i3/bing-wallpaper.sh -font pango: Source Code Pro 10 +############################### +# KEYBINDING # +############################### +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod -##################################################################################################################### -################# 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 +# start a terminal +bindsym $mod+Return exec --no-startup-id gnome-terminal -# 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 +# kill focused window +bindsym $mod+Shift+A kill -# 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 +# dmenu-desktop comme lanceur d'application bindsym $mod+d exec --no-startup-id i3-dmenu-desktop +# Changement du Focus +bindsym $mod+h focus left +bindsym $mod+j focus down +bindsym $mod+k focus up +bindsym $mod+l focus right +bindsym $mod+Left focus left +bindsym $mod+Down focus down +bindsym $mod+Up focus up +bindsym $mod+Right focus right +# Déplacement des fenêtre +bindsym $mod+Shift+h move left +bindsym $mod+Shift+j move down +bindsym $mod+Shift+k move up +bindsym $mod+Shift+l move right +bindsym $mod+Shift+Left move left +bindsym $mod+Shift+Down move down +bindsym $mod+Shift+Up move up +bindsym $mod+Shift+Right move right -##################################################################################################################### -################# how to exit, logoff, suspend, ... ################# -##################################################################################################################### +# Changement du mode de split (vertical ou horizontal) +bindsym $mod+h split h +bindsym $mod+v split v +# Permet de changer de mode +bindsym $mod+f fullscreen toggle +bindsym $mod+s layout stacking +bindsym $mod+z layout tabbed +bindsym $mod+x layout toggle split +bindsym $mod+Shift+f floating toggle + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# focus the parent container +bindsym $mod+q focus parent + +# focus the child container +# bindsym $mod+d focus child + +# Rechargement / Actualisation de la configuration +bindsym $mod+Shift+c reload +bindsym $mod+Shift+r restart + +# Quitter i3 bindsym $mod+0 mode "$mode_system" set $mode_system System (k) lock, (l) logout, (u) suspend, (h) hibernate, (r) reboot, (s) shutdown @@ -94,341 +109,127 @@ mode "$mode_system" { bindsym Escape mode "default" } +# Ouvrir l'exploreur de fichier +bindsym $mod+e exec nautilus -# 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) +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 j resize shrink width 5 px or 5 ppt + bindsym k resize grow height 5 px or 5 ppt + bindsym l resize shrink height 5 px or 5 ppt + bindsym m resize grow width 5 px or 5 ppt + + # same bindings, but for the arrow keys + bindsym Left resize shrink width 5 px or 5 ppt + bindsym Down resize grow height 5 px or 5 ppt + bindsym Up resize shrink height 5 px or 5 ppt + bindsym Right resize grow width 5 px or 5 ppt + + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} bindsym $mod+r mode "resize" -mode "resize" { -# These bindings trigger as soon as you enter the resize mode +# Audio +bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5% +bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5% +bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle # mute sound +# Capture d'écran +bindsym Print exec flameshot gui -# 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 +############################### +# SOURIS # +############################### -# 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 +############################### +# WORKSPACES # +############################### +# Workspaces +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 $monitorCenter DP-1 +#set $monitorLeft DP-3 +#set $monitorRight HDMI-0 -# back to normal: Enter or Escape - bindsym Return mode "default" - bindsym Escape mode "default" -} +# Ecran associé à chaque Workspace +#workspace $ws1 output $monitorCenter +#workspace $ws2 output $monitorCenter +#workspace $ws3 output $monitorCenter +#workspace $ws4 output $monitorCenter +#workspace $ws5 output $monitorLeft +#workspace $ws6 output $monitorLeft +#workspace $ws7 output $monitorRight +#workspace $ws8 output $monitorRight + +# Changmeent de Workspace +bindsym $mod+ampersand workspace $ws1 +bindsym $mod+eacute workspace $ws2 +bindsym $mod+quotedbl workspace $ws3 +bindsym $mod+apostrophe workspace $ws4 +bindsym $mod+parenleft workspace $ws5 +bindsym $mod+minus workspace $ws6 +bindsym $mod+egrave workspace $ws7 +bindsym $mod+underscore workspace $ws8 +bindsym $mod+ccedilla workspace $ws9 +bindsym $mod+agrave workspace $ws10 +bindsym $mod+Tab workspace next +bindsym $mode+Shift+Tab workspace prev +bindsym $mod+Ctrl+Right workspace next +bindsym $mod+Ctrl+Left workspace prev +bindsym $mod+Ctrl+h workspace next +bindsym $mod+Ctrl+l workspace prev + +# Déplacement vers un Workspace +bindsym $mod+Shift+1 move container to workspace $ws1; workspace $ws1 +bindsym $mod+Shift+eacute move container to workspace $ws2; workspace $ws2 +bindsym $mod+Shift+3 move container to workspace $ws3; workspace $ws3 +bindsym $mod+Shift+4 move container to workspace $ws4; workspace $ws4 +bindsym $mod+Shift+5 move container to workspace $ws5; workspace $ws5 +bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6 +bindsym $mod+Shift+egrave move container to workspace $ws7; workspace $ws7 +bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8 +bindsym $mod+Shift+ccedilla move container to workspace $ws9; workspace $ws9 +bindsym $mod+Shift+agrave move container to workspace $ws10; workspace $ws10 + +# Taille des fenêtres flottantes +floating_minimum_size 75 x 50 +floating_maximum_size -1 x -1 + +# Force certaines apps à des wokspaces dédiés +assign [class="Gnome-terminal"] $ws1 +assign [class="firefox"] $ws2 +assign [class="thunderbird"] $ws3 +assign [class="org.gnome.Nautilus"] $ws4 + +############################### +# MISC # +############################### +# Applications au démarrage +#exec --no-startup-id nvidia-settings --load-config-only +exec --no-startup-id firefox +exec --no-startup-id thunderbird +exec --no-startup-id tmux +exec --no-startup-id nautilus -##################################################################################################################### -################# 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 ########################################### -##################################################################################################################### -##################################################################################################################### -##################################################################################################################### -##################################################################################################################### -##################################################################################################################### +# I3 Gaps +for_window [class="^.*"] border pixel 2 +for_window [class=".*"] title_format " %title" +gaps inner 0 +smart_borders on +smart_gaps on diff --git a/zsh/.zshrc b/zsh/.zshrc index d4b5f59..7d93507 100755 --- a/zsh/.zshrc +++ b/zsh/.zshrc @@ -84,7 +84,7 @@ plugins=( ) source $ZSH/oh-my-zsh.sh -export EDITOR='vim' +export EDITOR='nvim' #export PATH="$HOME/.local/lib/python3.10/site-packages/:$PATH" # User configuration