Update dotfiles

+ Various improvements for XPS 9310 keybinds
+ Various improvements for XPS 9310 conky sysinfo overlay
+ Limit curl requests for web server status to refresh every 2mins
+ Update conky shortcuts overlay to show new shorts for i3 and vim
+ New darcula colorscheme for vim
+ Adjust i3 window attributes for new applications
+ Fix for vim storing yanked or deleted text to system clipboard
+ Relocate screenshots and backgrounds to subdirectories in ~/Pictures
+ Relocate all user scripts to ~/.local/bin/
+ Use symlinks for scripts in ~/.config/autostart-scripts
+ Relocate all user-created desktopfiles to ~/.local/share/applications
+ Use symlinks for desktopfiles in in ~/.config/autostart
+ Update paths in i3 config to use $HOME environment variable instead of
  absolute paths
This commit is contained in:
Shaun Reed 2021-12-25 15:39:29 -05:00
parent a667db027f
commit 142ce24675
24 changed files with 1126 additions and 278 deletions

View File

@ -1,5 +1,4 @@
# Aliases to use the correct python version
# + Because python doesn't know how to update.. :')
alias python3='python3.9'
alias pip3='python3.9 -m pip'

View File

@ -0,0 +1 @@
../../.local/bin/mountdrive.sh

View File

@ -0,0 +1,21 @@
[Desktop Entry]
Categories=Network;
Comment[en_US]=Mullvad VPN client
Comment=Mullvad VPN client
Exec="/opt/Mullvad VPN/mullvad-vpn" %U
GenericName[en_US]=
GenericName=
Icon=mullvad-vpn
MimeType=
Name[en_US]=Mullvad VPN
Name=Mullvad VPN
Path=
StartupNotify=true
StartupWMClass=Mullvad VPN
Terminal=false
TerminalOptions=
Type=Application
X-DBUS-ServiceName=
X-DBUS-StartupType=
X-KDE-SubstituteUID=false
X-KDE-Username=

View File

@ -0,0 +1,180 @@
[Desktop Entry]
Categories=Qt;KDE;System;TerminalEmulator;
Comment[en_US]=A drop-down terminal emulator based on KDE Konsole technology.
Comment=A drop-down terminal emulator based on KDE Konsole technology.
Comment[ar]=محاكي طرفيّة منسدل مبنيّ على تقنيّة طرفيّة كدي.
Comment[ast]=Un emulador de terminal estenderexable basáu na teunoloxía de KDE Konsole.
Comment[bg]=Падащ терминален емулатор с меню, базиран на конзолната технология на KDE.
Comment[bs]=Padajući simulator terminala baziran na KDE konzolnoj tehnologiji.
Comment[ca@valencia]=Un emulador de terminal desplegable basat en la tecnologia del Konsole del KDE.
Comment[ca]=Un emulador de terminal desplegable basat en la tecnologia del Konsole del KDE.
Comment[cs]=Vysouvací emulátor terminálu založený na KDE programu Konsole.
Comment[da]=En terminal som ruller ned fra oven baseret på KDE's Konsole-teknologi.
Comment[de]=Ein Aufklapp-Terminalemulator basierend auf der KDE-Konsole.
Comment[el]=Μία εφαρμογή τερματικού καθοδικής κύλισης βασισμένη στην τεχνολογία KDE Konsole.
Comment[en_GB]=A drop-down terminal emulator based on KDE Konsole technology.
Comment[es]=Un emulador de terminal desplegable basado en la tecnología de KDE Konsole.
Comment[et]=Lahtikeriv terminaliemulaator, mille aluseks on KDE Konsooli tehnoloogia.
Comment[eu]=KDE Konsole teknologian oinarritzen den goitik-behera zabaltzen den terminal emulatzaile bat.
Comment[fi]=KDE:n Konsoleen pohjautuva alas putoava pääte.
Comment[fr]=Un émulateur de terminal à liste déroulante reposant sur la technologie de l'application Konsole de KDE.
Comment[ga]=Aithriseoir teirminéil anuas bunaithe ar theicneolaíocht Konsole KDE.
Comment[gl]=Un emulador despregábel de terminal baseado en Konsole.
Comment[hi]= ि ि ि
Comment[hne]= ि ि
Comment[hr]=Spuštajući emulator terminala baziran na KDE-ovoj Konsole tehnologiji.
Comment[hu]=A KDE Konsole-ra épülő legördülő terminálemulátor
Comment[id]=Sebuah emulator terminal bentangturun berdasarkan teknologi Konsole KDE.
Comment[it]=Un emulatore di terminale a discesa basato sulla tecnologia di KDE Konsole.
Comment[ja]=KDE Konsole
Comment[km]= KDE 
Comment[ko]=KDE Konsole .
Comment[lt]=Nusileidžiantis terminalo emuliatorius paremtas KDE Konsole technologija.
Comment[lv]=Izkrītošs termināļa emulators, kurš bāzēts uz KDE Konsole tehnoloģijas.
Comment[ml]=ി ി ിി ി ി
Comment[mr]= ि ि .
Comment[nb]=En terminalemulator basert på KDEs Konsole-teknologi.
Comment[nds]=En Konsool-Emulater, de sik utklappen lett, op KDE-Konsole opbuut.
Comment[nl]=Een uitvouwbare terminalemulator, gebaseerd op de technologie van KDE Konsole.
Comment[nn]=Ein rullegardinbasert terminalemulator basert på KDE Konsoll-teknologien
Comment[pa]= ਿ
Comment[pl]=Emulator rozwijanego terminala oparty o technologię KDE Konsole.
Comment[pt]=Um emulador de terminal, baseado na tecnologia do Konsole do KDE.
Comment[pt_BR]=Um emulador de terminal baseado na tecnologia do Konsole do KDE.
Comment[ro]=Un emulator de terminal bazat pe tehnologia Konsole din KDE.
Comment[ru]=Эмулятор терминала в стиле Quake, основанный на технологии KDE Konsole.
Comment[sk]=Rozbaľovací emulátor terminálu založený na technológii KDE Konsole.
Comment[sr@ijekavian]=Падајући емулатор терминала заснован на КДЕовој Конзоли.
Comment[sr@ijekavianlatin]=Padajući emulator terminala zasnovan na KDEovoj Konsoli.
Comment[sr@latin]=Padajući emulator terminala zasnovan na KDEovoj Konsoli.
Comment[sr]=Падајући емулатор терминала заснован на КДЕовој Конзоли.
Comment[sv]=En nerfällbar terminalemulator baserad på teknologi från KDE:s Terminal.
Comment[th]= K
Comment[tr]=KDE Konsole teknolojisi üzerine kurulu, yukarıdan aşağı açılabilen bir uçbirim öykünücüsü.
Comment[uk]=Спадний замінник термінала, заснований на технології KDE Konsole.
Comment[x-test]=xxA drop-down terminal emulator based on KDE Konsole technology.xx
Comment[zh_CN]= KDE Konsole 仿
Comment[zh_TW]= KDE Konsole
Exec=yakuake
GenericName[en_US]=Drop-down Terminal
GenericName=Drop-down Terminal
GenericName[ar]=طرفيّة منسدلة
GenericName[ast]=Terminal estenderexable
GenericName[bg]=Падащ терминал
GenericName[bs]=Padajući terminal
GenericName[ca@valencia]=Terminal desplegable
GenericName[ca]=Terminal desplegable
GenericName[cs]=Vysouvací terminál
GenericName[da]=Terminal der ruller ned
GenericName[de]=Aufklapp-Terminal
GenericName[el]=Τερματικό καθοδικής κύλισης
GenericName[en_GB]=Drop-down Terminal
GenericName[es]=Terminal de menú desplegable
GenericName[et]=Lahtikeriv terminal
GenericName[eu]=Goitik-behera zabaltzen den terminala
GenericName[fi]=Alas putoava pääte
GenericName[fr]=Terminal avec liste déroulante
GenericName[gl]=Terminal despregábel
GenericName[hi]= ि
GenericName[hr]=Spuštajući terminal
GenericName[hu]=Legördülő terminál
GenericName[id]=Terminal Longsor
GenericName[it]=Terminale a discesa
GenericName[ja]=
GenericName[km]=
GenericName[ko]=
GenericName[lt]=Išskleidžiamasis terminalas
GenericName[mr]= ि
GenericName[nb]=Nedtrekksterminal
GenericName[nds]=Utklapp-Konsool
GenericName[nl]=Uitvouwbare terminalemulator
GenericName[nn]=Nedtrekksterminal
GenericName[pa]=
GenericName[pl]=Rozwijany terminal
GenericName[pt]=Terminal Deslizante
GenericName[pt_BR]=Terminal suspenso
GenericName[ro]=Terminal derulant
GenericName[ru]=Выпадающий терминал
GenericName[sk]=Rozbaľovací terminál
GenericName[sr@ijekavian]=Падајући терминал
GenericName[sr@ijekavianlatin]=Padajući terminal
GenericName[sr@latin]=Padajući terminal
GenericName[sr]=Падајући терминал
GenericName[sv]=Rullgardinsterminal
GenericName[th]=
GenericName[tr]=Yukarıdan Açılan Uçbirim
GenericName[uk]=Спадний термінал
GenericName[x-test]=xxDrop-down Terminalxx
GenericName[zh_CN]=
GenericName[zh_TW]=
Icon=yakuake
MimeType=
Name[en_US]=Yakuake
Name=Yakuake
Name[ar]=ياكواكي
Name[ast]=Yakuake
Name[be]=Yakuake
Name[bg]=Yakuake
Name[bs]=Yakuake
Name[ca@valencia]=Yakuake
Name[ca]=Yakuake
Name[cs]=Yakuake
Name[da]=Yakuake
Name[de]=Yakuake
Name[el]=Yakuake
Name[en_GB]=Yakuake
Name[eo]=Yakuake
Name[es]=Yakuake
Name[et]=Yakuake
Name[eu]=Yakuake
Name[fi]=Yakuake
Name[fr]=Yakuake
Name[ga]=Yakuake
Name[gl]=Yakuake
Name[hi]=
Name[hne]=
Name[hr]=Yakuake
Name[hu]=Yakuake
Name[ia]=Yakuake
Name[id]=Yakuake
Name[it]=Yakuake
Name[ja]=Yakuake
Name[km]=Yakuake
Name[ko]=Yakuake
Name[lt]=Yakuake
Name[lv]=Yakuake
Name[ml]=
Name[mr]=
Name[nb]=Yakuake
Name[nds]=Yakuake
Name[nl]=Yakuake
Name[nn]=Yakuake
Name[pa]=
Name[pl]=Yakuake
Name[pt]=Yakuake
Name[pt_BR]=Yakuake
Name[ro]=Yakuake
Name[ru]=Yakuake
Name[sk]=Yakuake
Name[sr@ijekavian]=Јакуаке
Name[sr@ijekavianlatin]=Yakuake
Name[sr@latin]=Yakuake
Name[sr]=Јакуаке
Name[sv]=Yakuake
Name[th]=Yakuake
Name[tr]=Yakuake
Name[ug]=Yakuake
Name[uk]=Yakuake
Name[x-test]=xxYakuakexx
Name[zh_CN]=Yakuake
Name[zh_TW]=Yakuake
Path=
StartupNotify=false
Terminal=false
TerminalOptions=
Type=Application
X-DBUS-ServiceName=org.kde.yakuake
X-DBUS-StartupType=unique
X-KDE-StartupNotify=false
X-KDE-SubstituteUID=false
X-KDE-Username=

View File

@ -5,9 +5,9 @@ conky.config = {
cpu_avg_samples = 2,
default_color = 'FFFFFF',
double_buffer = true,
font = 'Bitstream Vera Sans:size=8',
font = 'Bitstream Vera Sans:size=10',
gap_x = 15,
gap_y = 40,
gap_y = 15,
minimum_width = 200,
no_buffers = true,
own_window = true,
@ -18,35 +18,54 @@ conky.config = {
use_xft = true,
}
conky.text = [[
#
# Date
# Date Display
${alignr}${color1}
${goto 20}${voffset 8}${color2}${font Bitstream Vera Sans:size=16}${time %A}$font\
${goto 140}${voffset -8}${color}${font Bitstream Vera Sans:size=38}${time %e}$font
${goto 20}${color}${voffset -30}${color}${font Bitstream Vera Sans:size=18}${time %b}$font\
${goto 60}${voffset -3} ${color}${font Bitstream Vera Sans:size=20}${time %Y}$font${color2}$hr
# Month
${goto 20}${color}${voffset 0}${color}${font Bitstream Vera Sans:size=18}${time %b}\
# Date
${goto 65}${voffset 0} ${color}${font Bitstream Vera Sans:size=16}${time %e}\
# Year
${goto 100}${voffset -5} ${color}${font Bitstream Vera Sans:size=20}${time %Y}
${goto 0}${voffset -20}$font${color2}$hr
# Day
${goto 20}${voffset 0}${color2}${font Bitstream Vera Sans:size=16}${time %A}
#
$font${color}
${color2}mod key - ${color}Meta
${color2}lock session - ${color}mod+l
---------------Vim Keybinds---------------
${color2}Toggle color highlighting - ${color}CTRL+c
${color2}Build make project in CWD - ${color}CTRL+m
${color2}Build cmake project in CWD - ${color}CTRL+b
${color2}Previous ALE Warning / Error - ${color}CTRL+k
${color2}Next ALE Warning / Error - ${color}CTRL+j
-----------------Commands-----------------
${color2}Window info - ${color}xprop
---------------Applications---------------
${color2}open new terminal - ${color}mod+Enter
${color2}open dropdown yakuake terminal - ${color}F4
${color2}Firefox - ${color}mod+Shift+f
${color2}[konsole] Open new terminal - ${color}mod+Enter
${color2}[yakuake] Open dropdown terminal - ${color}mod+`
${color2}[firefox] Web Browser ${color}mod+Shift+f
---------------Screenshots----------------
${color2}image clip tool - ${color}mod+Shift+p
${color2}[scrot] image clip tool - ${color}mod+Shift+p
---------------Menus----------------------
${color2}audio devices - ${color}mod+Ctrl+a
${color2}bluetooth devices - ${color}mod+Ctrl+d
${color2}[pavucontrol] Audio devices ${color}mod+Ctrl+a
${color2}[blueman-manager] Bluetooth devices ${color}mod+Ctrl+d
${color2}[dmenu] App launcher - ${color}mod+d
${color2}[rofi] App launcher - ${color}mod+x
${color2}[rofi] Active window menu - ${color}mod+a
${color2}[rofi] Network / SSH menu - ${color}mod+z
${color2}bmenu system settings - ${color}mod+Ctrl+b
${color2}dmenu app launcher - ${color}mod+d
${color2}morc_menu app menu - ${color}mod+z
${color2}power modes - ${color}mod+0
${color2}blur lock - ${color}mod+9
---------------Restart / Reload-----------
${color2}kill conky - ${color}mod+o
${color2}start conky - ${color}mod+shift+o
${color2}kill polybar - ${color}mod+p
${color2}start polybar - ${color}mod+shift+p
${color2}kill compton - ${color}mod+t
${color2}start compton - ${color}mod+Shift+t
${color2}reload i3 - ${color}mod+Shift+c
@ -54,6 +73,7 @@ ${color2}restart i3 - ${color}mod+Shift+r
---------------Scratchpad-----------------
${color2}send to scratchpad - ${color}mod+Shift+minus
${color2}remove from scratchpad - ${color}mod+Shift+Space
${color2}show scratchpad - ${color}mod+minus
---------------Windows--------------------
@ -62,15 +82,15 @@ ${color2}resize mode - ${color}mod+r
${color2}toggle split direction - ${color}mod+q
${color2}kill cursor selection - ${color}mod+Ctrl+q
${color2}kill active window - ${color}mod+Shift+q
${color2}toggle floating - ${color}mod+Shift+Space
${color2}move floating window - ${color}mod+Click&Drag
${color2}resize floating window - ${color}mod+RightClick&Drag
---------------Workspace--------------------
${color2}move to empty workspace - ${color}mod+Shift+z
${color2}switch to workspace 1-8 - ${color}mod+1-8
${color2}send to workspace 1-8 - ${color}mod+Ctrl+1-8
${color2}navigate workspaces - ${color}mod+Ctrl+arrowkeys
${color2}toggle floating - ${color}mod+Shift+Space
${color2}exit - ${color}mod+0
${color2}help - ${color}mod+Shift+h
${color2}mod key - ${color}<Alt>
${color2}switch to workspace 1-9 - ${color}mod+1-9
${color2}navigate active workspaces - ${color}mod+Ctrl+arrowkeys
${color2}send active to workspace 1-9 - ${color}mod+Ctrl+1-9
${color2}move active to workspace 1-9 - ${color}mod+Ctrl+1-9
]]

View File

@ -5,31 +5,33 @@ conky.config = {
cpu_avg_samples = 2,
default_color = 'FFFFFF',
double_buffer = true,
font = 'Bitstream Vera Sans:size=8',
gap_x = 15,
gap_y = -5,
font = 'Bitstream Vera Sans:size=10',
gap_x = 20,
gap_y = 10,
minimum_width = 200,
no_buffers = true,
own_window = true,
own_window_type = 'override',
own_window_class = 'sysinfo_green',
own_window_transparent = true,
update_interval = 5.0,
update_interval = 10.0,
use_xft = true,
temperature_unit = 'fahrenheit',
}
conky.text = [[
conky.text = [[
# Process list, load average
# 1m / 5m / 15m format for lad avg
${color2}${voffset 35}${alignr}${font Bitstream Vera Sans:size=10}Proccesses${color}
${color}${alignr}${font Bitstream Vera Sans:size=8}Load Average: $font$alignr${loadavg}
#
# Process list CPU / RAM utilization table
${font}CPU${goto 170}RAM
${voffset 3}$font${color2}${top name 1}${goto 120}${color}${top cpu 1}%${goto 170}${color2}${top_mem name 1}${color}${alignr}${top_mem mem_res 1}${color}
${color2}${top name 2}${goto 120}${color}${top cpu 2}%${goto 170}${color2}${top_mem name 2}${color}${alignr}${top_mem mem_res 2}${color}
${voffset 3}$hr
#
# RAM Display
${color2}${voffset 4}${alignr}${font Bitstream Vera Sans:size=10}RAM ${color}
@ -37,11 +39,12 @@ ${goto 0}${color2}$alignc${memgraph 40,305}${color}
${voffset 4}${goto 0}${alignc}${color2}${membar 10, 305}
${color}${goto 10}${font}${memperc}%${alignr}${exec grep -w Active: /proc/meminfo | awk '{print $2 / 1024 }'}MiB /${memmax}
${voffset 3}${color}$hr
#
# CPU Display
${color2}${voffset 4}${alignr}${font Bitstream Vera Sans:size=10}CPU ${color}
# Chipset
${alignr}${font}${exec inxi |grep CPU | awk '{print $4" "$2" "$3" "$6}'}${exec lscpu |grep -w "Model name:"| awk '{print " - " $8}'}
${alignr}${font}${exec lscpu | grep -w "Model name:" | awk '{print $3 " " $4 " " $5 " " $6 " " $7 " " $8 " " $9}'}
# CPU Graph
${voffset 4}${goto 0}${alignc}${color2}${cpugraph 40, 305}
# Percentage / GHz utilized
@ -53,6 +56,7 @@ ${voffset 10}${color}${goto 10}${font Bitstream Vera Sans:size=8}${cpu cpu5}%${g
${voffset 10}${color}${goto 10}${font Bitstream Vera Sans:size=8}${cpu cpu7}%${goto 43}${color2}${cpubar cpu7 12,110} ${goto 170}${color}${cpu cpu8}%${goto 203}${color2}${cpubar cpu8 12,110}
${voffset 3}${color}$hr
#
# Network display
${color2}${font}${alignr}NETWORK${color}
@ -65,14 +69,17 @@ ${goto 5}${color2}${downspeedgraph enp0s31f6 40,153}${goto 160}${upspeedgraph en
# Ethernet network display
${goto 5}${color}${downspeedf enp0s31f6} Kb/s - ${totaldown enp0s31f6}${alignr}${upspeedf enp0s31f6} Kb/s - ${totalup enp0s31f6}
${voffset 4}${color}$hr
#
# HDDisk Display
${color2}${voffset 4}${alignr}${font Bitstream Vera Sans:size=10}DISKS${color}
#
# Root Filesystem Display
${voffset 2}${font}${goto 45} /dev/sda - /${font}${alignr}System: ${fs_used /} / ${fs_size /}
${color2}${diskiograph /dev/sda}${color}
${color2}${fs_bar 8 /}${color}
#
# Home Filesystem Display
#${voffset 6}${font}${goto 45}/dev/sda1 - /home/${font}${alignr}Data: ${fs_used /home/} / ${fs_size /home/}
@ -81,28 +88,30 @@ ${color2}${fs_bar 8 /}${color}
# Optinal drive display, specify path to check mount
#${if_mounted /run/media/thib/Data}${color}${font}${exec sudo hddtemp /dev/sdb -u F | awk '{print $NF}'}${alignr}${fs_used /run/media/thib/Data}/${fs_size /run/media/thib/Data}${else}${color}${font}${alignr}Unmounted${endif}
$hr
#
# Other information
${color2}${voffset 4}${alignr}${font Bitstream Vera Sans:size=10}OTHER${color}
# MOBO temp, uptime
${color}${voffset 4}${font}Motherboard: ${goto 120}${acpitemp}F°${alignr}Uptime: ${uptime_short}
# Domain status
# ${color}${voffset 4}${font}Knoats: ${alignc}${exec curl -Is https://knoats.com | grep HTTP | awk '{print $1 " - " $2}'}${alignr}${exec curl -o /dev/null -s -w %{time_total}\\n https://knoats.com}s
# ${font}Shaunreed: ${alignc}${exec curl -Is https://shaunreed.com | grep HTTP | awk '{print $1 " - " $2}'}${alignr}${exec curl -o /dev/null -s -w %{time_total}\\n https://shaunreed.com}s
# ${font}dv: ${alignc}${exec curl -Is https://kapp.ga | grep HTTP | awk '{print $1 " - " $2}'}${alignr}${exec curl -o /dev/null -s -w %{time_total}\\n https://kapp.ga}s
${color}${voffset 4}${font}Knoats: ${alignc}${execi 120 curl -Is https://knoats.com | grep HTTP | awk '{print $1 " - " $2}'}${alignr}${execi 120 curl -o /dev/null -s -w %{time_total}\\n https://knoats.com}s
${font}Shaunreed: ${alignc}${execi 120 curl -Is https://shaunreed.com | grep HTTP | awk '{print $1 " - " $2}'}${alignr}${execi 120 curl -o /dev/null -s -w %{time_total}\\n https://shaunreed.com}s
# ${font}dv: ${alignc}${execi 120 curl -Is https://kapp.ga | grep HTTP | awk '{print $1 " - " $2}'}${alignr}${execi 120 curl -o /dev/null -s -w %{time_total}\\n https://kapp.ga}s
#
${voffset 3}$hr
#
#
# Things I don't use, but could in the future
# I don't need to track docker containers.. unless I can check remotes?
# ${font}Docker containers: ${goto 120}${exec docker ps -q $1 | wc -l}/${exec docker ps -a | grep -v -F 'Exited (0)' | grep -c -F 'Exited ('}
#
# Commented out, since I am using a desktop
# BATTERY
# $color${voffset 4}${alignr}${font Bitstream Vera Sans:size=10}BATTERY
# ${font}${voffset 3}${alignr}${battery_percent}%
# ${color2}${battery_bar}
# $color${alignr}${if_match "$battery_time"=="unknown"}Charging...${else}Remain Time: ${battery_time}${endif}
# Battery Display
$color2${voffset 4}${alignr}${font Bitstream Vera Sans:size=10}BATTERY
$color${alignr}${if_match "$battery_time"=="unknown"}Charging...${else}Remain Time: ${battery_time}${endif}
${color2}${battery_bar}
${voffset 3}${alignr}${battery_percent}%
]]

View File

@ -9,15 +9,25 @@
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
#
# Startup scripts and commands for i3 sessions
exec --no-startup-id yakuake
exec --no-startup-id xbindkeys --poll-rc
exec --no-startup-id xautolock -time 10 -locker blurlock
exec_always --no-startup-id compton
# Run custom scripts to start polybar, conky, and feh background
exec --no-startup-id $HOME/.local/bin/i3scripts/start-konky
exec --no-startup-id $HOME/.local/bin/i3scripts/fehbg
exec_always --no-startup-id $HOME/.local/bin/i3scripts/start-polybar
#
# i3 settings
set $mod Mod4
# Mod1 = Alt
#set $mod Mod1
focus_follows_mouse no
for_window [class="yakuake"] floating enable
# Move to a new empty workspace
#bindsym $mod+Ctrl+Left exec --no-startup-id i3empty.py prev
bindsym $mod+Shift+z exec --no-startup-id $HOME/.local/bin/i3scripts/i3empty.py
@ -49,28 +59,19 @@ default_floating_border normal
# Hide borders
hide_edge_borders none
# start a terminal
# kill focused window
bindsym $mod+Shift+q kill
# start dmenu (a program launcher)
bindsym $mod+d exec dmenu_run
bindsym $mod+x exec rofi -show run
bindsym $mod+a exec rofi -show window
bindsym $mod+z exec rofi -show ssh
# There also is the (new) i3-dmenu-desktop which only displays applications
# shipping a .desktop file. It is a wrapper around dmenu, so you need that
# installed.
# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
# change focus
bindsym $mod+j focus left
bindsym $mod+k focus down
bindsym $mod+l focus up
bindsym $mod+semicolon focus right
#bindsym $mod+j focus left
#bindsym $mod+k focus down
#bindsym $mod+l focus up
#bindsym $mod+semicolon focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Left focus left
@ -92,7 +93,6 @@ bindsym $mod+Shift+Right move right
# split in horizontal orientation
# bindsym $mod+h split h
# split in vertical orientation
# bindsym $mod+v split v
@ -104,89 +104,16 @@ bindsym $mod+f fullscreen toggle
# bindsym $mod+w layout tabbed
# bindsym $mod+e 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+a 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"
# Custom named workspaces for keeping frequently used apps
# Numbers overwritten by Polybar i3 module config
set $ws99 99
set $ws98 98
set $ws97 97
set $ws96 96
set $ws95 95
set $ws94 94
# Custom named workspace keybinds
# To get keysymbols, run 'xmodmap -pke'
bindsym $mod+Ctrl+backslash move container to workspace $ws99
bindsym $mod+Ctrl+bracketright move container to workspace $ws98
bindsym $mod+Ctrl+apostrophe move container to workspace $ws97
bindsym $mod+Ctrl+slash move container to workspace $ws96
bindsym $mod+Ctrl+period move container to workspace $ws95
bindsym $mod+Ctrl+comma move container to workspace $ws94
# Move to workspace with focused container
bindsym $mod+Shift+backslash move container to workspace $ws99; workspace $ws99
bindsym $mod+Shift+bracketright move container to workspace $ws98; workspace $ws98
bindsym $mod+Shift+apostrophe move container to workspace $ws97; workspace $ws97
bindsym $mod+Shift+slash move container to workspace $ws96; workspace $ws96
bindsym $mod+Shift+period move container to workspace $ws95; workspace $ws95
bindsym $mod+Shift+comma move container to workspace $ws94; workspace $ws94
# Move to workspace
bindsym $mod+backslash workspace number $ws99
bindsym $mod+bracketright workspace number $ws98
bindsym $mod+apostrophe workspace number $ws97
bindsym $mod+slash workspace number $ws96
bindsym $mod+period workspace number $ws95
bindsym $mod+comma workspace number $ws94
# Switch to workspace
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
# move focused container to workspace
# bindsym $mod+Shift+1 move container to workspace $ws1
# bindsym $mod+Shift+2 move container to workspace $ws2
# bindsym $mod+Shift+3 move container to workspace $ws3
# bindsym $mod+Shift+4 move container to workspace $ws4
# bindsym $mod+Shift+5 move container to workspace $ws5
# bindsym $mod+Shift+6 move container to workspace $ws6
# bindsym $mod+Shift+7 move container to workspace $ws7
# bindsym $mod+Shift+8 move container to workspace $ws8
# bindsym $mod+Shift+9 move container to workspace $ws9
# bindsym $mod+Shift+0 move container to workspace $ws10
# Application keybinds
###########################################
# Passing -n to urxvt forces Xorg to default the WM_ICON_NAME to tmux
# Only this instance of urxvt will have that WM_ICON_NAME
@ -200,6 +127,9 @@ bindsym $mod+0 workspace $ws10
# for_window [title="origin"] resize set width 1000
# for_window [title="origin"] move position center
# NOTE: To get these window class names, run `xprop` and click a window
for_window [class="yakuake"] floating enable
bindsym $mod+Ctrl+a exec "pavucontrol"
for_window [class="Pavucontrol"] floating enable
for_window [class="Pavucontrol"] resize set height 400
@ -225,33 +155,25 @@ for_window [class="discord"] resize set height 600
for_window [class="discord"] resize set width 800
for_window [class="discord"] move position center
for_window [class="Wicd-client.py"] floating enable
for_window [class="Wicd-client.py"] resize set height 400
for_window [class="Wicd-client.py"] resize set width 600
for_window [class="Wicd-client.py"] move position center
# Bluetooth device settings
bindsym $mod+Ctrl+d exec "blueman-manager
for_window [class="Blueman-manager"] floating enable
for_window [class="Blueman-manager"] resize set height 400
for_window [class="Blueman-manager"] resize set width 600
for_window [class="Blueman-manager"] move position center
for_window [class="systemsettings"] floating enable
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
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'"
# start dmenu (a program launcher)
bindsym $mod+d exec dmenu_run
bindsym $mod+x exec rofi -show run
bindsym $mod+a exec rofi -show window
bindsym $mod+z exec rofi -show ssh
exec --no-startup-id yakuake
exec --no-startup-id xbindkeys --poll-rc
exec --no-startup-id $HOME/.local/bin/i3scripts/start_konky
exec --no-startup-id sh ~/.fehbg
exec --no-startup-id xautolock -time 10 -locker blurlock
#exec --no-startup-id wicd-client -t
#exec --no-startup-id xfce4-power-manager
#exec --no-startup-id google-drive-ocamlfuse ~/gdrive
# Locks the screen now with i3locker
bindsym $mod+l exec i3lock -c 000000
# Application keybinds
###########################################
bindsym $mod+Return exec konsole -e tmux
# start a terminal
# Uses $TERMINAL environment setting
# bindsym $mod+Return exec terminal
@ -260,26 +182,28 @@ bindsym $mod+t exec pkill compton
bindsym $mod+Shift+t exec compton
# Firefox
bindsym $mod+Shift+f exec firefox
# Bluetooth device settings
bindsym $mod+Ctrl+d exec blueman-manager
## Screenshot keybinds
###########################################
# Screenshot marquee tool
bindsym $mod+Shift+p --release exec --no-startup-id scrot -s
# Restart, reload, kill keybinds
###########################################
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
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'"
# Bind Mod+O to kill conky
bindsym $mod+o exec pkill conky
# Bind Mod+Shift+O to start conky
bindsym $mod+Shift+o exec $HOME/.local/bin/i3scripts/start_konky
bindsym $mod+Shift+o exec $HOME/.local/bin/i3scripts/start-konky
# Bind Mod+P kill polybars
bindsym $mod+p exec pkill -f polybar
# Bind Mod+Shift+P to start polybars
bindsym $mod+Shift+p exec /home/kapper/.config/polybar/start-polybar.sh
bindsym $mod+Shift+p exec $HOME/.local/bin/i3scripts/start-polybar
# Workspace keybinds
###########################################
@ -288,6 +212,82 @@ bindsym $mod+Shift+p exec /home/kapper/.config/polybar/start-polybar.sh
bindsym $mod+u border none
bindsym $mod+y border pixel 1
bindsym $mod+n border normal
#navigate workspaces next / previous
bindsym $mod+Ctrl+Right workspace next
bindsym $mod+Ctrl+Left workspace prev
# workspace back and forth (with/without active container)
workspace_auto_back_and_forth yes
# Bind to swap to previous / last workspace
bindsym $mod+Tab workspace back_and_forth
# 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"
# Custom named workspaces for keeping frequently used apps
# Numbers overwritten by Polybar i3 module config
set $ws99 99
set $ws98 98
set $ws97 97
set $ws96 96
set $ws95 95
set $ws94 94
# Switch to workspace
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
# Custom named workspace keybinds
# To get keysymbols, run 'xmodmap -pke'
bindsym $mod+Ctrl+backslash move container to workspace $ws99
bindsym $mod+Ctrl+bracketright move container to workspace $ws98
bindsym $mod+Ctrl+apostrophe move container to workspace $ws97
bindsym $mod+Ctrl+slash move container to workspace $ws96
bindsym $mod+Ctrl+period move container to workspace $ws95
bindsym $mod+Ctrl+comma move container to workspace $ws94
# Move to workspace with focused container
bindsym $mod+Shift+backslash move container to workspace $ws99; workspace $ws99
bindsym $mod+Shift+bracketright move container to workspace $ws98; workspace $ws98
bindsym $mod+Shift+apostrophe move container to workspace $ws97; workspace $ws97
bindsym $mod+Shift+slash move container to workspace $ws96; workspace $ws96
bindsym $mod+Shift+period move container to workspace $ws95; workspace $ws95
bindsym $mod+Shift+comma move container to workspace $ws94; workspace $ws94
# Move to workspace
bindsym $mod+backslash workspace number $ws99
bindsym $mod+bracketright workspace number $ws98
bindsym $mod+apostrophe workspace number $ws97
bindsym $mod+slash workspace number $ws96
bindsym $mod+period workspace number $ws95
bindsym $mod+comma workspace number $ws94
# move focused container to workspace
# bindsym $mod+Shift+1 move container to workspace $ws1
# bindsym $mod+Shift+2 move container to workspace $ws2
# bindsym $mod+Shift+3 move container to workspace $ws3
# bindsym $mod+Shift+4 move container to workspace $ws4
# bindsym $mod+Shift+5 move container to workspace $ws5
# bindsym $mod+Shift+6 move container to workspace $ws6
# bindsym $mod+Shift+7 move container to workspace $ws7
# bindsym $mod+Shift+8 move container to workspace $ws8
# bindsym $mod+Shift+9 move container to workspace $ws9
# bindsym $mod+Shift+0 move container to workspace $ws10
# Move focused container to workspace
bindsym $mod+Ctrl+1 move container to workspace $ws1
@ -308,14 +308,6 @@ bindsym $mod+Shift+6 move container to workspace $ws6; workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7; workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8; workspace $ws8
#navigate workspaces next / previous
bindsym $mod+Ctrl+Right workspace next
bindsym $mod+Ctrl+Left workspace prev
# workspace back and forth (with/without active container)
workspace_auto_back_and_forth yes
# Bind to swap to previous / last workspace
bindsym $mod+Tab workspace back_and_forth
# Layout keybinds
###########################################
@ -345,8 +337,6 @@ bindsym $mod+Shift+s sticky 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
@ -374,9 +364,6 @@ mode "resize" {
bindsym $mod+r mode "resize"
# Use polybar installed
exec_always --no-startup-id /home/kapper/.config/polybar/start-polybar.sh
exec_always --no-startup-id compton
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
#bar {

View File

@ -8,8 +8,8 @@ Favorites=
ShowMenuBarByDefault=false
[MainWindow]
Height 1200=1135
Height 1200=1151
MenuBar=Disabled
State=AAAA/wAAAAD9AAAAAAAAA8AAAARvAAAABAAAAAQAAAAIAAAACPwAAAAA
ToolBarsMovable=Disabled
Width 1920=960
Width 1920=1916

View File

@ -1,7 +1,8 @@
[window]
width=1366
height=749
width=596
height=396
sinkInputType=0
sourceOutputType=1
sinkType=0
sourceType=0
showVolumeMeters=1

View File

@ -0,0 +1 @@
../../.local/bin/i3scripts/start-polybar

2
.fehbg
View File

@ -1,2 +0,0 @@
#!/bin/sh
feh --no-fehbg --bg-tile '/home/kapper/screens/use_your_illusion.png'

2
.local/bin/i3scripts/fehbg Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
feh --no-fehbg --bg-tile '/home/kapper/Pictures/backgrounds/use_your_illusion.png'

5
.local/bin/i3scripts/fix-vbox Executable file
View File

@ -0,0 +1,5 @@
# A fix for a common issue found in virtual box
# https://forums.linuxmint.com/viewtopic.php?t=247850
# https://askubuntu.com/questions/1014172/virtualbox-unresponsive-area-on-desktop
#################################################################################
ps aux www |grep 'VBoxClient --draganddrop' | awk '{print $2}' | xargs kill

621
.vim/colors/darcula.vim Normal file
View File

@ -0,0 +1,621 @@
" This Source Code Form is subject to the terms of the Mozilla Public
" License, v. 2.0. If a copy of the MPL was not distributed with this
" file, You can obtain one at https://mozilla.org/MPL/2.0/.
if exists("g:darcula")
finish
endif
let g:darcula = 1
highlight clear
if exists("syntax_on")
syntax reset
endif
let g:colors_name='darcula'
let s:p={
\ 'null': ['NONE', 'NONE'],
\ 'bg': ['#2B2B2B', 235],
\ 'fg': ['#A9B7C6', 145],
\ 'cursor': ['#BBBBBB', 250],
\ 'identifierUnderCaret': ['#344134', 237],
\ 'identifierUnderCaretWrite': ['#40332B', 58],
\ 'gutter': ['#313335', 236],
\ 'selection': ['#214283', 24],
\ 'cursorLine': ['#323232', 236],
\ 'cursorLineNr': ['#A4A3A3', 248],
\ 'errorMsg': ['#CC666E', 174],
\ 'error': ['#BC3F3C', 131],
\ 'warning': ['#A9B7C6', 145],
\ 'muted': ['#606060', 241],
\ 'link': ['#287BDE', 32],
\ 'stdOutput': ['#BBBBBB', 250],
\ 'lineNumber': ['#606366', 241],
\ 'matchBraceFg': ['#FFEF28', 220],
\ 'matchBraceBg': ['#3B514D', 59],
\ 'todo': ['#A8C023', 142],
\ 'search': ['#32593D', 23],
\ 'incSearch': ['#155221', 22],
\ 'foldedFg': ['#8C8C8C', 245],
\ 'foldedBg': ['#3A3A3A', 237],
\ 'constant': ['#9876AA', 103],
\ 'keyword': ['#CC7832', 172],
\ 'comment': ['#808080', 244],
\ 'docComment': ['#629755', 65],
\ 'string': ['#6A8759', 101],
\ 'number': ['#6897BB', 103],
\ 'delimiter': ['#CC7832', 172],
\ 'specialComment': ['#8A653B', 95],
\ 'function': ['#FFC66D', 216],
\ 'diffAdd': ['#294436', 23],
\ 'diffText': ['#385570', 60],
\ 'diffDelete': ['#484A4A', 239],
\ 'diffChange': ['#303C47', 23],
\ 'addStripe': ['#384C38', 66],
\ 'stripeWhiteSpace': ['#4C4638', 59],
\ 'changeStripe': ['#374752', 60],
\ 'deleteStripe': ['#656E76', 242],
\ 'typo': ['#659C6B', 72],
\ 'metaData': ['#BBB529', 142],
\ 'macroName': ['#908B25', 100],
\ 'cDataStructure': ['#B5B6E3', 146],
\ 'cStructField': ['#9373A5', 103],
\ 'debug': ['#666D75', 102],
\ 'codeError': ['#532B2E', 52],
\ 'codeWarning': ['#52503A', 59],
\ 'errorStripe': ['#9E2927', 124],
\ 'warnStripe': ['#BE9117', 136],
\ 'infoStripe': ['#756D56', 101],
\ 'hintStripe': ['#6c7176', 242],
\ 'typeDef': ['#B9BCD1', 146],
\ 'menu': ['#46484A', 238],
\ 'menuFg': ['#BBBBBB', 250],
\ 'menuSel': ['#113A5C', 23],
\ 'menuSBar': ['#616263', 241],
\ 'tag': ['#E8BF6A', 180],
\ 'entity': ['#6D9CBE', 109],
\ 'htmlAttribute': ['#BABABA', 250],
\ 'htmlString': ['#A5C261', 143],
\ 'tsObject': ['#507874', 66],
\ 'statusLine': ['#3C3F41', 237],
\ 'statusLineFg': ['#BBBBBB', 250],
\ 'statusLineNC': ['#787878', 243],
\ 'tabLineSel': ['#4E5254', 239],
\ 'shCommand': ['#C57633', 137],
\ 'templateLanguage': ['#232525', 235],
\ 'rustMacro': ['#4EADE5', 74],
\ 'rustLifetime': ['#20999D', 37],
\ 'duplicateFromServer': ['#5E5339', 59],
\ 'hintBg': ['#3B3B3B', 237],
\ 'hintFg': ['#787878', 243],
\ 'wrapGuide': ['#2F2F2F', 236],
\ 'UIBorder': ['#616161', 241],
\ 'UISelection': ['#0D293E', 17],
\ 'ANSIBlack': ['#FFFFFF', 231],
\ 'ANSIRed': ['#FF6B68', 210],
\ 'ANSIGreen': ['#A8C023', 142],
\ 'ANSIYellow': ['#D6BF55', 179],
\ 'ANSIBlue': ['#5394EC', 68],
\ 'ANSIMagenta': ['#AE8ABE', 139],
\ 'ANSICyan': ['#299999', 37],
\ 'ANSIGray': ['#999999', 247],
\ 'ANSIDarkGray': ['#555555', 240],
\ 'ANSIBrightRed': ['#FF8785', 210],
\ 'ANSIBrightGreen': ['#A8C023', 142],
\ 'ANSIBrightYellow': ['#FFFF00', 226],
\ 'ANSIBrightBlue': ['#7EAEF1', 110],
\ 'ANSIBrightMagenta': ['#FF99FF', 219],
\ 'ANSIBrightCyan': ['#6CDADA', 116],
\ 'ANSIWhite': ['#1F1F1F', 234],
\ 'UIBlue': ['#3592C4', 67],
\ 'UIGreen': ['#499C54', 71],
\ 'UIRed': ['#C75450', 131],
\ 'UIBrown': ['#93896C', 102]
\ }
" expose the palette
let darcula#palette=s:p
" helper function
function s:Hi(group, fg, ...)
" arguments: group, fg, bg, style
if a:0 >= 1
let bg=a:1
else
let bg=s:p.null
endif
if a:0 >= 2 && strlen(a:2)
let style=a:2
else
let style='NONE'
endif
let hiList = [
\ 'hi', a:group,
\ 'ctermfg=' . a:fg[1],
\ 'guifg=' . a:fg[0],
\ 'ctermbg=' . bg[1],
\ 'guibg=' . bg[0],
\ 'cterm=' . style,
\ 'gui=' . style
\ ]
execute join(hiList)
endfunction
" expose that function
function darcula#Hi(group, fg, ...)
if a:0 >= 2
call s:Hi(a:group, a:fg, a:1, a:2)
elseif a:0 == 1
call s:Hi(a:group, a:fg, a:1)
else
call s:Hi(a:group, a:fg)
endif
endfunction
call s:Hi('Normal', s:p.fg, s:p.bg)
call s:Hi('ColorColumn', s:p.null, s:p.wrapGuide)
call s:Hi('Conceal', s:p.muted, s:p.bg)
call s:Hi('Cursor', s:p.cursor)
hi! link lCursor Cursor
hi! link CursorIM Cursor
hi! link CursorColumn CursorLine
call s:Hi('CursorLine', s:p.null, s:p.cursorLine, 'NONE')
call s:Hi('DiffAdd', s:p.null, s:p.diffAdd)
call s:Hi('DiffChange', s:p.null, s:p.diffChange)
call s:Hi('DiffDelete', s:p.null, s:p.diffDelete)
call s:Hi('DiffText', s:p.null, s:p.diffText)
hi! link Directory NormalFg
hi! link EndOfBuffer NonText
call s:Hi('ErrorMsg', s:p.errorMsg)
call s:Hi('Error', s:p.error)
call s:Hi('VertSplit', s:p.muted)
call s:Hi('Folded', s:p.foldedFg, s:p.foldedBg)
hi! link FoldColumn Folded
call s:Hi('SignColumn', s:p.null, s:p.gutter)
call s:Hi('LineNr', s:p.lineNumber, s:p.gutter)
hi! link LineNrAbove LineNr
hi! link LineNrBelow LineNr
call s:Hi('CursorLineNr', s:p.cursorLineNr, s:p.cursorLine)
call s:Hi('MatchParen', s:p.matchBraceFg, s:p.matchBraceBg, 'bold')
call s:Hi('ModeMsg', s:p.stdOutput)
hi! link MoreMsg NormalFg
call s:Hi('NonText', s:p.muted)
call s:Hi('Pmenu', s:p.menuFg, s:p.menu)
call s:Hi('PmenuSel', s:p.menuFg, s:p.menuSel)
call s:Hi('PmenuSbar', s:p.menu, s:p.menu)
call s:Hi('PmenuThumb', s:p.menuSBar, s:p.menuSBar)
hi! link Question NormalFg
hi! link QuickFixLine NormalFg
call s:Hi('Search', s:p.null, s:p.search)
call s:Hi('IncSearch', s:p.null, s:p.incSearch)
hi! link SpecialKey NonText
call s:Hi('SpellBad', s:p.typo, s:p.null, 'underline')
hi! link SpellCap SpellBad
hi! link SpellLocal SpellBad
hi! link SpellRare SpellBad
call s:Hi('StatusLine', s:p.statusLineFg, s:p.statusLine)
call s:Hi('StatusLineNC', s:p.statusLineNC, s:p.statusLine)
hi! link StatusLineTerm StatusLine
hi! link StatusLineTermNC StatusLineNC
call s:Hi('TabLine', s:p.statusLineFg, s:p.statusLine)
call s:Hi('TabLineFill', s:p.statusLine, s:p.statusLine)
call s:Hi('TabLineSel', s:p.fg, s:p.tabLineSel)
call s:Hi('Terminal', s:p.stdOutput, s:p.bg)
hi! link Title Special
call s:Hi('Visual', s:p.null, s:p.selection)
hi! link VisualNOS Visual
call s:Hi('WarningMsg', s:p.warning)
hi! link WildMenu PmenuSel
call s:Hi('Comment', s:p.comment)
hi! link Identifier NormalFg
hi! link Type Keyword
call s:Hi('Typedef', s:p.typeDef)
call s:Hi('Todo', s:p.todo, s:p.null, 'italic')
hi! link Special PreProc
call s:Hi('Constant', s:p.constant, s:p.null, 'italic')
call s:Hi('String', s:p.string)
hi! link Character String
call s:Hi('Number', s:p.number)
call s:Hi('Delimiter', s:p.delimiter)
call s:Hi('SpecialComment', s:p.specialComment, s:p.null, 'italic')
hi! link Statement Keyword
call s:Hi('Keyword', s:p.keyword)
call s:Hi('Underlined', s:p.fg, s:p.null, 'underline')
call s:Hi('PreProc', s:p.metaData)
hi! link Tag Keyword
call s:Hi('Debug', s:p.debug, s:p.null, 'italic')
call s:Hi('Function', s:p.function)
" helper groups
call s:Hi('docComment', s:p.docComment, s:p.null, 'italic')
call s:Hi('NormalFg', s:p.fg)
call s:Hi('GitAddStripe', s:p.addStripe, s:p.addStripe)
call s:Hi('GitChangeStripe', s:p.changeStripe, s:p.changeStripe)
call s:Hi('GitDeleteStripe', s:p.deleteStripe, s:p.gutter)
call s:Hi('CodeError', s:p.null, s:p.codeError)
call s:Hi('CodeWarning', s:p.null, s:p.codeWarning)
call s:Hi('CodeInfo', s:p.null, s:p.infoStripe)
call s:Hi('CodeHint', s:p.hintFg, s:p.hintBg)
call s:Hi('ErrorSign', s:p.errorStripe, s:p.gutter)
call s:Hi('WarningSign', s:p.warnStripe, s:p.gutter)
call s:Hi('InfoSign', s:p.infoStripe, s:p.gutter)
call s:Hi('HintSign', s:p.hintStripe, s:p.gutter)
call s:Hi('IdentifierUnderCaret', s:p.null, s:p.identifierUnderCaret)
call s:Hi('IdentifierUnderCaretWrite', s:p.null, s:p.identifierUnderCaretWrite)
call s:Hi('InstanceField', s:p.constant)
call s:Hi('UIDialog', s:p.fg, s:p.statusLine)
call s:Hi('UIBorder', s:p.UIBorder, s:p.statusLine)
call s:Hi('UISelection', s:p.null, s:p.UISelection)
" neovim
if has('nvim')
" the following code snippet fix an issue with CursorLine hi group
" see https://github.com/neovim/neovim/issues/9019
if has('termguicolors') && &termguicolors
hi CursorLine ctermfg=white
else
hi CursorLine guifg=white
endif
hi! link NormalFloat Pmenu
hi! link NormalNC NormalFg
hi! link MsgArea NormalFg
hi! link MsgSeparator StatusLine
hi! link QuickFixLine NormalFg
hi! link Substitute Search
" TermCursor
" TermCursorNC
hi! link Whitespace NonText
hi! link healthSuccess IncSearch
call s:Hi('NvimInternalError', s:p.error, s:p.error)
call s:Hi('RedrawDebugClear', s:p.fg, s:p.duplicateFromServer)
call s:Hi('RedrawDebugComposed', s:p.fg, s:p.search)
call s:Hi('RedrawDebugRecompose', s:p.fg, s:p.codeError)
" Terminal colors
let g:terminal_color_0 = s:p.ANSIBlack[0]
let g:terminal_color_1 = s:p.ANSIRed[0]
let g:terminal_color_2 = s:p.ANSIGreen[0]
let g:terminal_color_3 = s:p.ANSIYellow[0]
let g:terminal_color_4 = s:p.ANSIBlue[0]
let g:terminal_color_5 = s:p.ANSIMagenta[0]
let g:terminal_color_6 = s:p.ANSICyan[0]
let g:terminal_color_7 = s:p.ANSIGray[0]
let g:terminal_color_8 = s:p.ANSIDarkGray[0]
let g:terminal_color_9 = s:p.ANSIBrightRed[0]
let g:terminal_color_10 = s:p.ANSIBrightGreen[0]
let g:terminal_color_11 = s:p.ANSIBrightYellow[0]
let g:terminal_color_12 = s:p.ANSIBrightBlue[0]
let g:terminal_color_13 = s:p.ANSIBrightMagenta[0]
let g:terminal_color_14 = s:p.ANSIBrightCyan[0]
let g:terminal_color_15 = s:p.ANSIWhite[0]
" nvim-treesitter
hi! link TSAnnotation PreProc
hi! link TSAttribute PreProc
hi! link TSBoolean Keyword
hi! link TSCharacter Character
hi! link TSComment Comment
hi! link TSConstructor Function
hi! link TSConditional Keyword
hi! link TSConstant Constant
hi! link TSConstBuiltin Keyword
hi! link TSConstMacro cMacroName
hi! link TSError codeError
hi! link TSException Keyword
hi! link TSField InstanceField
hi! link TSFloat Number
hi! link TSFunction Function
hi! link TSFuncBuiltin Normal
hi! link TSFuncMacro cMacroName
hi! link TSInclude Keyword
hi! link TSKeyword Keyword
hi! link TSKeywordFunction Keyword
hi! link TSLabel Normal
hi! link TSMethod Function
hi! link TSNamespace cDataStructure
hi! link TSNone Normal
hi! link TSNumber Number
hi! link TSOperator Normal
hi! link TSParameter Normal
hi! link TSParameterReference Normal
hi! link TSProperty TSField
hi! link TSPunctDelimiter Normal
hi! link TSPunctBracket Normal
hi! link TSPunctSpecial Keyword
hi! link TSRepeat Keyword
hi! link TSString String
hi! link TSStringRegex Number
hi! link TSStringEscape Keyword
hi! link TSTag htmlTag
hi! link TSTagDelimiter htmlTag
hi! link TSText Normal
call s:Hi('TSStrong', s:p.fg, s:p.null, 'bold')
call s:Hi('TSEmphasis', s:p.fg, s:p.null, 'italic')
call s:Hi('TSUnderline', s:p.fg, s:p.null, 'underline')
call s:Hi('TSStrike', s:p.fg, s:p.null, 'strikethrough')
call s:Hi('TSTitle', s:p.fg, s:p.null, 'bold,underline')
hi! link TSLiteral Normal
hi! link TSURI markdownLinkText
hi! link TSNote CodeInfo
hi! link TSWarning CodeWarning
hi! link TSDanger CodeError
hi! link TSType Normal
hi! link TSTypeBuiltin Keyword
hi! link TSVariable Normal
hi! link TSVariableBuiltin Keyword
" LSP
hi! link LspDiagnosticsDefaultError CodeError
hi! link LspDiagnosticsDefaultWarning CodeWarning
hi! link LspDiagnosticsDefaultInformation CodeInfo
hi! link LspDiagnosticsDefaultHint CodeHint
hi! link LspDiagnosticsSignError ErrorSign
hi! link LspDiagnosticsSignWarning WarningSign
hi! link LspDiagnosticsSignInformation InfoSign
hi! link LspDiagnosticsSignHint HintSign
hi! link LspReferenceText IdentifierUnderCaret
hi! link LspReferenceRead IdentifierUnderCaret
hi! link LspReferenceWrite IdentifierUnderCaretWrite
hi! link LspDiagnosticsUnderlineError CodeError
hi! link LspDiagnosticsUnderlineWarning CodeWarning
hi! link LspDiagnosticsUnderlineInformation CodeInfo
hi! link LspDiagnosticsUnderlineHint CodeHint
hi! link LspDiagnosticsFloatingError NormalFloat
hi! link LspDiagnosticsFloatingWarning NormalFloat
hi! link LspDiagnosticsFloatingInformation NormalFloat
hi! link LspDiagnosticsFloatingHint NormalFloat
endif
" Vim terminal colors (for :terminal)
if !has('nvim')
let g:terminal_ansi_colors=[
\ s:p.ANSIBlack[0],
\ s:p.ANSIRed[0],
\ s:p.ANSIGreen[0],
\ s:p.ANSIYellow[0],
\ s:p.ANSIBlue[0],
\ s:p.ANSIMagenta[0],
\ s:p.ANSICyan[0],
\ s:p.ANSIGray[0],
\ s:p.ANSIDarkGray[0],
\ s:p.ANSIBrightRed[0],
\ s:p.ANSIBrightGreen[0],
\ s:p.ANSIBrightYellow[0],
\ s:p.ANSIBrightBlue[0],
\ s:p.ANSIBrightMagenta[0],
\ s:p.ANSIBrightCyan[0],
\ s:p.ANSIWhite[0]
\ ]
endif
" C/C++
call s:Hi('cMacroName', s:p.macroName)
hi! link cConstant cMacroName
hi! link cPreInclude String
hi! link cPreProcRegion NormalFg
hi! link cUserLabel NormalFg
hi! link cDataStructureKeyword Keyword
call s:Hi('cDataStructure', s:p.cDataStructure)
hi! link cFunction Function
hi! link cppDestructor cFunction
hi! link cSemicolon Keyword
hi! link cComma Keyword
call s:Hi('cppAfterColon', s:p.cStructField)
hi! link cppBeforeColon cDataStructure
call s:Hi('cStructField', s:p.cStructField)
hi! link cppNullptr Keyword
hi! link cppTemplate Keyword
hi! link cTypedef Keyword
hi! link cppTypeName Keyword
hi! link cSpecial Keyword
hi! link cEnum Keyword
call s:Hi('cSomeMacro', s:p.macroName)
" Rust
call s:Hi('rustDeriveTrait', s:p.metaData)
hi! link rustQuestionMark Keyword
hi! link rustComma Keyword
hi! link rustSemicolon Keyword
hi! link rustOperator NormalFg
call s:Hi('rustCommentLineDoc', s:p.docComment, s:p.null, 'italic')
call s:Hi('rustMacro', s:p.rustMacro)
hi! link rustAssert rustMacro
hi! link rustPanic rustMacro
hi! link rustEscape Keyword
hi! link rustSigil NormalFg
hi! link rustSelf Keyword
call s:Hi('rustLifetime', s:p.rustLifetime, s:p.null, 'italic')
call s:Hi('rustTypeParameter', s:p.rustLifetime)
hi! link rustEnumVariant Constant
hi! link rustModPath NormalFg
hi! link rustModPathSep NormalFg
hi! link rustAs Keyword
hi! link rustConst Constant
hi! link rustVarField InstanceField
" Vim
hi! link vimOption Constant
hi! link vimFunction Function
hi! link vimContinue NonText
hi! link vimParenSep NormalFg
hi! link vimBracket PreProc
hi! link vimOper NormalFg
hi! link vimSep NormalFg
hi! link vimCommentString Comment
" JavaScript
hi! link jsNoise Keyword
hi! link JsImport Keyword
hi! link JsFrom Keyword
hi! link JsOperator NormalFg
hi! link jsArrowFunction NormalFg
hi! link jsFuncArgCommas Delimiter
hi! link jsObjectKey InstanceField
hi! link jsTernaryIfOperator NormalFg
hi! link jsObjectSeparator Keyword
hi! link jsSpreadOperator NormalFg
hi! link jsModuleComma Keyword
hi! link jsClassDefinition NormalFg
hi! link jsSuper Keyword
hi! link jsThis Keyword
hi! link jsObjectProp InstanceField
hi! link jsDestructuringNoise Keyword
hi! link jsClassProperty Function
hi! link jsBooleanTrue Keyword
hi! link jsBooleanFalse Keyword
hi! link jsObjectShorthandProp NormalFg
hi! link jsObjectColon NormalFg
hi! link jsExport Keyword
hi! link jsModuleAs Keyword
" TypeScript
hi! link typescriptBraces NormalFg
hi! link typescriptDocComment docComment
hi! link typescriptDocParam docComment
hi! link typescriptParens NormalFg
hi! link typescriptOpSymbols InstanceField
hi! link typescriptRegexpString Number
hi! link typescriptSpecial Keyword
hi! link typescriptLogicSymbols InstanceField
hi! link typescriptExceptions Keyword
call s:Hi('typescriptDocTags', s:p.docComment, s:p.null, 'bold,italic,underline')
call s:Hi('typescriptGlobalObjects', s:p.tsObject)
" JSON
hi! link jsonBraces NormalFg
hi! link jsonKeyword InstanceField
hi! link jsonNoise Keyword
hi! link jsonKeywordMatch Keyword
hi! link jsonBoolean Keyword
hi! link jsonNull Keyword
hi! link jsonEscape Keyword
hi! link jsonStringMatch String
" XML
call s:Hi('xmlTagName', s:p.tag)
hi! link xmlEndTag xmlTagName
hi! link xmlAttrib NormalFg
hi! link xmlProcessingDelim xmlTagName
hi! link xmlDocTypeKeyword xmlTagName
hi! link xmlComment Comment
hi! link xmlCommentStart xmlComment
hi! link xmlCommentPart xmlComment
call s:Hi('xmlEntity', s:p.entity)
hi! link xmlEntityPunct xmlEntity
hi! link xmlCdata NormalFg
hi! link xmlCdataCdata xmlCdata
hi! link xmlCdataStart xmlCdata
hi! link xmlCdataEnd xmlCdata
hi! link xmlNamespace InstanceField
hi! link xmlAttribPunct NormalFg
hi! link xmlEqual xmlString
" GraphQL
hi! link graphqlTaggedTemplate NormalFg
" YAML
hi! link yamlDocumentStart NormalFg
hi! link yamlDocumentEnd NormalFg
hi! link yamlComment docComment
hi! link yamlBlockMappingKey Keyword
hi! link yamlKeyValueDelimiter NormalFg
hi! link yamlInteger NormalFg
hi! link yamlFloat NormalFg
hi! link yamlBlockCollectionItemStart NormalFg
call s:Hi('yamlAnchor', s:p.tag)
hi! link yamlAlias yamlAnchor
hi! link yamlBool NormalFg
hi! link yamlNodeTag NormalFg
hi! link yamlNull NormalFg
" Markdown
hi! link markdownH1 Constant
hi! link markdownH2 markdownH1
hi! link markdownH3 markdownH1
hi! link markdownH4 markdownH1
hi! link markdownH5 markdownH1
hi! link markdownH6 markdownH1
hi! link markdownHeadingRule markdownH1
hi! link markdownHeadingDelimiter markdownH1
call s:Hi('markdownAutomaticLink', s:p.link, s:p.null, 'underline')
hi! link markdownBlockquote String
hi! link markdownBoldDelimiter Keyword
hi! link markdownBold NormalFg
hi! link markdownItalicDelimiter Keyword
hi! link markdownItalic NormalFg
hi! link markdownCode Comment
hi! link markdownCodeDelimiter markdownCode
hi! link markdownCodeBlock markdownCode
call s:Hi('markdownLinkText', s:p.link, s:p.null, 'underline')
hi! link markdownLinkTextDelimiter markdownLinkText
hi! link markdownUrlDelimiter markdownLinkText
call s:Hi('markdownUrl', s:p.function, s:p.null, 'italic')
hi! link markdownIdDelimiter Keyword
hi! link markdownLinkDelimiter Keyword
hi! link markdownIdDeclaration Keyword
hi! link markdownLinkDelimiter NormalFg
hi! link markdownUrlTitleDelimiter Comment
hi! link markdownRule Comment
" HTML
let html_no_rendering=1
call s:Hi('htmlTag', s:p.tag)
hi! link htmlTagName htmlTag
hi! link htmlEndTag htmlTag
call s:Hi('htmlArg', s:p.htmlAttribute)
call s:Hi('htmlString', s:p.htmlString)
hi! link htmlValue htmlString
hi! link htmlComment Comment
hi! link htmlCommentError Comment
hi! link htmlCommentPart Comment
call s:Hi('htmlSpecialChar', s:p.entity)
hi! link htmlSpecialTagName htmlTag
" CSS
hi! link cssAtKeyword Keyword
hi! link cssBraces NormalFg
hi! link cssAttributeSelector htmlTag
hi! link cssSelectorOp NormalFg
hi! link cssClassName htmlTag
hi! link cssNoise Keyword
hi! link cssAttrComma Keyword
hi! link cssFunctionComma Keyword
hi! link cssMediaComma Keyword
hi! link cssComment Comment
hi! link cssClassNameDot NormalFg
call s:Hi('cssFunctionName', s:p.tag)
call s:Hi('cssColor', s:p.number)
call s:Hi('cssIdentifier', s:p.tag)
call s:Hi('cssPseudoClassId', s:p.tag)
call s:Hi('cssImportant', s:p.keyword, s:p.null, 'bold')
call s:Hi('cssProp', s:p.htmlAttribute)
call s:Hi('cssAttr', s:p.htmlString)
call s:Hi('cssAttrRegion', s:p.htmlString)
call s:Hi('cssURL', s:p.link)
" Shell Script
call s:Hi('sheBang', s:p.fg, s:p.null, 'bold')
hi! link shRange NormalFg
hi! link shFunctionKey Keyword
call s:Hi('shStatement', s:p.shCommand)
hi! link bashStatement shStatement
hi! link shDerefVar NormalFg
hi! link shQuote String
call s:Hi('shHereDoc', s:p.null, s:p.templateLanguage)
call s:Hi('shRedir', s:p.fg, s:p.null, 'bold')
hi! link shDerefSimple NormalFg
hi! link shCommandSubBQ InstanceField
hi! link shOption NormalFg
hi! link shCmdSubRegion shStatement
hi! link shCommandSub NormalFg
hi! link shLoop Keyword
hi! link shCommandSub Keyword
hi! link shSet shStatement
hi! link shFunctionTwo shStatement
hi! link shCtrlSeq String
hi! link shSpecial String
hi! link shCommandSub NormalFg
hi! link shDerefSpecial NormalFg
hi! link shOperator NormalFg
" help
hi! link helpHyperTextJump Number

View File

@ -21,7 +21,7 @@ let colors_name = "sourcerer"
" █▓▒░ GUI colors
hi Normal guifg=#c2c2b0 guibg=#000000 gui=NONE
hi Normal guifg=#c2c2b0 guibg=#222222 gui=NONE
hi ColorColumn guifg=NONE guibg=#1c1c1c
hi Cursor guifg=NONE guibg=#626262 gui=NONE
hi CursorColumn guibg=#2d2d2d

25
.vimrc
View File

@ -17,8 +17,10 @@ set undofile
" Combine vim clipboard with global clipboard buffer
" Allows using y and p to copy into CTRL-C buffer, vice versa
" :help 'clipboard'
set clipboard+=unnamed
" :help clipboard
" :help registers
""set clipboard=unnamed
set clipboard=unnamedplus
" Allows true colors in vim (> 8 bit colors)
" :help termguicolors
@ -61,10 +63,11 @@ set number
" Use Powerline symbols
""let g:airline_powerline_fonts = 1
" Enable Syntax Highlighting in Vim
syntax on
" Use Sourcerer color scheme by Xero
colorscheme sourcerer
""colorscheme darcula
" Enable Syntax Highlighting in Vim
syntax on
" Fix plugin compatibility issues
set nocp
@ -92,7 +95,7 @@ nnoremap <C-e> <C-w>
nnoremap <C-b> :!cmake -S . -B ./build/ && cmake --build ./build
nnoremap <C-d> :!./build/scrap
nnoremap <C-b> :!make -C build/
nnoremap <C-m> :!make -C build/
" Vim Plugin Settings
@ -103,7 +106,7 @@ filetype plugin indent on
" Set Vim Airline theme
" base16 soda base16_pop laederon night_owl kalisi* ayu_mirage* raven
let g:airline_theme='kalisi'
"let g:airline_theme='kalisi'
" Gitgutter installed for + - diffs in gutters within repo files
@ -112,11 +115,11 @@ let g:airline_theme='kalisi'
let g:ale_hover_to_preview = 1
" Hover detail info in balloons
""let g:ale_set_balloons = 1
let g:ale_sign_error = 'X'
let g:ale_sign_warning = '?'
""let g:ale_sign_error = '🗙'
""let g:ale_sign_warning = '⚠'
let g:ale_sign_warning = ''
""let g:ale_sign_error = 'X'
""let g:ale_sign_warning = '?'
let g:ale_sign_error = '🗙'
let g:ale_sign_warning = '⚠'
""let g:ale_sign_warning = ''
highlight ALEWarningSign ctermbg=Yellow
highlight ALEWarningSign ctermfg=Black
highlight ALEWarning ctermbg=DarkYellow

View File

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

Before

Width:  |  Height:  |  Size: 99 KiB

After

Width:  |  Height:  |  Size: 99 KiB

View File

Before

Width:  |  Height:  |  Size: 414 KiB

After

Width:  |  Height:  |  Size: 414 KiB

View File

@ -55,7 +55,7 @@ cd ~/dot/
git submodule update --init
```
![desktop](screens/dtop-code.png)
![desktop](Pictures/screenshots/dtop-code.png)
#### Additional Configuration