Compare commits
24 Commits
7f0ca310aa
...
bash-d
| Author | SHA1 | Date | |
|---|---|---|---|
| 50571ed8d3 | |||
| 080fa0894f | |||
| 7075151bf0 | |||
| 4d62b10d00 | |||
| 7461098b1c | |||
| c385d74cac | |||
| a4d2245b50 | |||
| f90cb319ba | |||
| 2efcfabb7b | |||
| 9dcdbf1275 | |||
| 644fca32ed | |||
| 753dc47666 | |||
| f9163b626d | |||
| 1479f3ac37 | |||
| 99be1dfecd | |||
| e7c4fe36bc | |||
| dabfa780df | |||
| 288dc28e07 | |||
| c7f6c0b791 | |||
| f1930f166d | |||
| e85e4bb65d | |||
| 6b6e88dcbb | |||
| 10251dd1cb | |||
| c7a300cd58 |
28
.bash.d/.bash_aliases
Normal file
28
.bash.d/.bash_aliases
Normal file
@@ -0,0 +1,28 @@
|
||||
alias ,git='git config --global user.name "Shaun Reed" && git config --global user.email "shaunrd0@gmail.com"'
|
||||
# Some aliases don't make sense in the docker image, like shortcuts to fix plasmashell.
|
||||
if [ -f /.dockerenv ]; then
|
||||
alias ,update='apt update -y && apt upgrade -y && apt upgrade --fix-broken --fix-missing --auto-remove'
|
||||
alias ,init='apt update -y && apt install -y $DOT_PACKAGES'
|
||||
alias ,swap='swapoff -a && swapon -a'
|
||||
else
|
||||
alias ,update='sudo apt update -y && sudo apt upgrade -y && sudo apt upgrade --fix-broken --fix-missing --auto-remove'
|
||||
alias ,init='sudo apt update -y && sudo apt install -y $DOT_PACKAGES'
|
||||
# Clear kscreen cached settings
|
||||
alias ,kscreen='rm -rf ~/.local/share/kscreen/*'
|
||||
# Restart plasmashell
|
||||
alias ,plasmashell='plasmashell --replace &> /dev/null &'
|
||||
alias ,swap='sudo swapoff -a && sudo swapon -a'
|
||||
alias ,vbox="ps aux www |grep 'VBoxClient --draganddrop' | awk '{print $2}' | xargs kill"
|
||||
fi
|
||||
|
||||
# Add an "alert" alias for long running commands. Use like so:
|
||||
# sleep 10; alert
|
||||
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
|
||||
|
||||
# Don't use tmux in vscode to avoid 'failure to resolve shell' errors.
|
||||
if command -v tmux &> /dev/null && [ -n "$PS1" ] && [[ ! "$TERM" =~ screen ]] && [[ ! "$TERM" =~ tmux ]] && [ -z "$TMUX" ]; then
|
||||
if ! pstree -s $$ | grep -wq code; then
|
||||
exec tmux >/dev/null 2>&1
|
||||
fi
|
||||
fi
|
||||
|
||||
73
.bash.d/.bash_exports
Normal file
73
.bash.d/.bash_exports
Normal file
@@ -0,0 +1,73 @@
|
||||
# Used in setup script and dockerfile.
|
||||
if [ -f /.dockerenv ]; then
|
||||
export DOT_PACKAGES='git stow vim tmux ranger clang wget curl golang-go'
|
||||
else
|
||||
# `vim-gtk3` is required to keep your system copy and paste buffers in sync with vim registers.
|
||||
export DOT_PACKAGES='git stow vim vim-gtk3 xsel xclip tmux ranger clang yakuake wget curl golang-go gawk'
|
||||
fi
|
||||
|
||||
# colored GCC warnings and errors
|
||||
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
|
||||
|
||||
export EDITOR="vim"
|
||||
export VISUAL="vim"
|
||||
export LS_COLORS="di=1;34:ln=31;47:so=32:pi=33:ex=1;32:bd=34;46:cd=34;43:su=30;41:sg=30;46:tw=30;42:ow=30;43"
|
||||
export PATH=$PATH:/opt/:$HOME/.local/bin/:$HOME/.dotnet:$HOME/go/bin/
|
||||
export DOTNET_ROOT=$HOME/.dotnet
|
||||
|
||||
# Example path for autocompletion using libclang-9-dev package, obtained by the following command
|
||||
export LIBCLANG="$(command -v clang &>/dev/null && ldconfig -p | sort | grep libclang-[0-9]. | awk -F "> " '{print$2}' | tail -n 1)"
|
||||
|
||||
# Set the default terminal to use konsole, with kapper profile
|
||||
# + Execute tmux on start
|
||||
if [ -e ~/.local/share/konsole/kapper.profile ]; then
|
||||
if command -v tmux &>/dev/null; then
|
||||
export TERMINAL='konsole --profile kapper -e tmux'
|
||||
else
|
||||
export TERMINAL='konsole --profile kapper'
|
||||
fi
|
||||
fi
|
||||
|
||||
# Conditionally enables font glyphs in .vimrc if available
|
||||
if [ -e ~/.local/share/fonts/sauce-code-pro.otf ]; then
|
||||
export SAUCE=1
|
||||
fi
|
||||
|
||||
# Less colors for man pages
|
||||
export PAGER=less
|
||||
default=$(tput sgr0)
|
||||
red=$(tput setaf 1)
|
||||
green=$(tput setaf 2)
|
||||
purple=$(tput setaf 5)
|
||||
orange=$(tput setaf 9)
|
||||
# Begin blinking
|
||||
export LESS_TERMCAP_mb=$red
|
||||
# Begin bold
|
||||
export LESS_TERMCAP_md=$orange
|
||||
# End mode
|
||||
export LESS_TERMCAP_me=$default
|
||||
# End standout-mode
|
||||
export LESS_TERMCAP_se=$default
|
||||
# Begin standout-mode - info box
|
||||
export LESS_TERMCAP_so=$purple
|
||||
# End underline
|
||||
export LESS_TERMCAP_ue=$default
|
||||
# Begin underline
|
||||
export LESS_TERMCAP_us=$green
|
||||
# Allow mouse wheel movement for less output (manpages, diffs)
|
||||
export LESS='--mouse --wheel-lines 2'
|
||||
# Set additional flags for less
|
||||
# + -R for raw control characters
|
||||
# + -w to highlight first unread line when jumping N>1 lines down
|
||||
# + -#2 to shift 2 columns horizontally when right / left arrow is pressed
|
||||
export LESS="$LESS -R -w -#2"
|
||||
|
||||
# For shared systems where history is not desired.
|
||||
# ln -sf /dev/null ~/.bash_history
|
||||
# HISTFILE=/dev/null
|
||||
|
||||
# Avoid duplicates in bash history.
|
||||
HISTCONTROL=ignoredups:erasedups
|
||||
# When the shell exits, append to the history file instead of overwriting it.
|
||||
shopt -s histappend
|
||||
|
||||
8
.bash.d/.bash_functions
Normal file
8
.bash.d/.bash_functions
Normal file
@@ -0,0 +1,8 @@
|
||||
# $1: Version; defaults to 6.7.3
|
||||
# $2: Path to Qt; defaults to $HOME/Qt
|
||||
function assistant {
|
||||
local version=${1:-6\.7\.3}
|
||||
local path=${2:-$HOME/Qt}
|
||||
nohup ${path%/}/$version/gcc_64/bin/assistant > /dev/null 2>&1 &
|
||||
}
|
||||
|
||||
15
.bash.d/.bash_sources
Normal file
15
.bash.d/.bash_sources
Normal file
@@ -0,0 +1,15 @@
|
||||
# Source ble.sh if installed.
|
||||
if [ -f ~/.local/share/blesh/ble.sh ]; then
|
||||
source -- ~/.local/share/blesh/ble.sh
|
||||
fi
|
||||
|
||||
# Source rust things if they exist
|
||||
if [ -f ~/.cargo/env ]; then
|
||||
. ~/.cargo/env
|
||||
fi
|
||||
|
||||
# Source a top-secret alias file
|
||||
if [ -f ~/.bash.d/.bash_secrets ]; then
|
||||
. ~/.bash.d/.bash_secrets
|
||||
fi
|
||||
|
||||
105
.bash_aliases
105
.bash_aliases
@@ -1,105 +0,0 @@
|
||||
# For Rust stuff, uncomment this line
|
||||
#. "$HOME/.cargo/env"
|
||||
|
||||
alias ,git='git config --global user.name "Shaun Reed" && git config --global user.email "shaunrd0@gmail.com"'
|
||||
if [ -f /.dockerenv ]; then
|
||||
export DOT_PACKAGES='git stow vim tmux ranger clang wget curl'
|
||||
alias ,update='apt update -y && apt upgrade -y && apt upgrade --fix-broken --fix-missing --auto-remove'
|
||||
alias ,init='apt update -y && apt install $DOT_PACKAGES -y'
|
||||
alias ,swap='swapoff -a && swapon -a'
|
||||
else
|
||||
export DOT_PACKAGES='git stow vim xsel xclip tmux ranger clang yakuake wget curl'
|
||||
alias ,update='sudo apt update -y && sudo apt upgrade -y && sudo apt upgrade --fix-broken --fix-missing --auto-remove'
|
||||
alias ,init='sudo apt update -y && sudo apt install $DOT_PACKAGES'
|
||||
# Clear kscreen cached settings
|
||||
alias ,kscreen='rm -rf ~/.local/share/kscreen/*'
|
||||
# Restart plasmashell
|
||||
alias ,plasmashell='sudo pkill plasmashell && plasmashell --replace &> /dev/null &'
|
||||
alias ,swap='sudo swapoff -a && sudo swapon -a'
|
||||
alias ,vbox="ps aux www |grep 'VBoxClient --draganddrop' | awk '{print $2}' | xargs kill"
|
||||
fi
|
||||
|
||||
# Alias / export customizations
|
||||
|
||||
# colored GCC warnings and errors
|
||||
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
|
||||
|
||||
# some more ls aliases
|
||||
alias ll='ls -alF'
|
||||
alias la='ls -A'
|
||||
alias l='ls -CF'
|
||||
|
||||
# Add an "alert" alias for long running commands. Use like so:
|
||||
# sleep 10; alert
|
||||
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
|
||||
export EDITOR="vim"
|
||||
export VISUAL="vim"
|
||||
export LS_COLORS="di=1;34:ln=31;47:so=32:pi=33:ex=1;32:bd=34;46:cd=34;43:su=30;41:sg=30;46:tw=30;42:ow=30;43"
|
||||
export PATH=$PATH:/opt/:$HOME/.local/bin/:$HOME/.dotnet:$HOME/go/bin/
|
||||
export DOTNET_ROOT=$HOME/.dotnet
|
||||
|
||||
# Example path for autocompletion using libclang-9-dev package, obtained by the following command
|
||||
export LIBCLANG="$(command -v clang &>/dev/null && ldconfig -p | sort | grep libclang-[0-9]. | awk -F "> " '{print$2}' | tail -n 1)"
|
||||
|
||||
# Source a top-secret alias file
|
||||
if [ -e ~/.bash_secrets ]; then
|
||||
. ~/.bash_secrets
|
||||
fi
|
||||
|
||||
if command -v tmux &> /dev/null && [ -n "$PS1" ] && [[ ! "$TERM" =~ screen ]] && [[ ! "$TERM" =~ tmux ]] && [ -z "$TMUX" ]; then
|
||||
exec tmux
|
||||
fi
|
||||
|
||||
# Set the default terminal to use konsole, with kapper profile
|
||||
# + Execute tmux on start
|
||||
if [ -e ~/.local/share/konsole/kapper.profile ]; then
|
||||
if command -v tmux &>/dev/null; then
|
||||
export TERMINAL='konsole --profile kapper -e tmux'
|
||||
else
|
||||
export TERMINAL='konsole --profile kapper'
|
||||
fi
|
||||
fi
|
||||
|
||||
# Conditionally enables font glyphs in .vimrc if available
|
||||
if [ -e ~/.local/share/fonts/sauce-code-pro.otf ]; then
|
||||
export SAUCE=1
|
||||
fi
|
||||
|
||||
# Less colors for man pages
|
||||
export PAGER=less
|
||||
default=$(tput sgr0)
|
||||
red=$(tput setaf 1)
|
||||
green=$(tput setaf 2)
|
||||
purple=$(tput setaf 5)
|
||||
orange=$(tput setaf 9)
|
||||
# Begin blinking
|
||||
export LESS_TERMCAP_mb=$red
|
||||
# Begin bold
|
||||
export LESS_TERMCAP_md=$orange
|
||||
# End mode
|
||||
export LESS_TERMCAP_me=$default
|
||||
# End standout-mode
|
||||
export LESS_TERMCAP_se=$default
|
||||
# Begin standout-mode - info box
|
||||
export LESS_TERMCAP_so=$purple
|
||||
# End underline
|
||||
export LESS_TERMCAP_ue=$default
|
||||
# Begin underline
|
||||
export LESS_TERMCAP_us=$green
|
||||
# Allow mouse wheel movement for less output (manpages, diffs)
|
||||
export LESS='--mouse --wheel-lines 2'
|
||||
# Set additional flags for less
|
||||
# + -R for raw control characters
|
||||
# + -w to highlight first unread line when jumping N>1 lines down
|
||||
# + -#2 to shift 2 columns horizontally when right / left arrow is pressed
|
||||
export LESS="$LESS -R -w -#2"
|
||||
|
||||
|
||||
if ! [ command -v conda &>/dev/null ] && [ -e ~/Code/Clones/mambaforge/bin/conda ] && ! grep -e conda ~/.bashrc &>/dev/null; then
|
||||
if ! (~/Code/Clones/mambaforge/bin/conda init | awk -F "==>" '{print $1}'); then
|
||||
echo "[dot] ERROR: Failed to initialize Conda."
|
||||
fi
|
||||
echo "[dot] WARN: Ran \`conda init\`; Conda was installed but not initialized"
|
||||
source ~/.bashrc
|
||||
fi
|
||||
|
||||
11
.bashrc
11
.bashrc
@@ -100,11 +100,20 @@ alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo
|
||||
# You may want to put all your additions into a separate file like
|
||||
# ~/.bash_aliases, instead of adding them here directly.
|
||||
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
|
||||
|
||||
if [ -f ~/.bash_aliases ]; then
|
||||
. ~/.bash_aliases
|
||||
fi
|
||||
|
||||
# Source all files in ~/.bash.d, if it exists.
|
||||
# This can contain .bash_aliases, or other configs to append to your shell.
|
||||
if [ -d ~/.bash.d ]; then
|
||||
for f in ~/.bash.d/.*; do
|
||||
if [ -f $f ]; then
|
||||
. $f
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# enable programmable completion features (you don't need to enable
|
||||
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
|
||||
# sources /etc/bash.bashrc).
|
||||
|
||||
54
.blerc
Normal file
54
.blerc
Normal file
@@ -0,0 +1,54 @@
|
||||
# Insert date-time string within a bash prompt using `\dt<SP>`
|
||||
function blerc/define-sabbrev-dt {
|
||||
ble-sabbrev -m '\dt'='ble/util/assign COMPREPLY "date +%F_%H-%M-%S"'
|
||||
}
|
||||
blehook/eval-after-load complete blerc/define-sabbrev-dt
|
||||
|
||||
# Insert the time within a bash prompt using `\time<SP>`
|
||||
function blerc/define-sabbrev-time {
|
||||
ble-sabbrev -m '\time'='ble/util/assign COMPREPLY "date +%H-%M-%S"'
|
||||
}
|
||||
blehook/eval-after-load complete blerc/define-sabbrev-time
|
||||
|
||||
# Insert the date within a bash prompt using `\date<SP>`
|
||||
# https://github.com/akinomyoga/ble.sh/wiki/Recipes#r1-insert-date-through-sabbrev-date
|
||||
function blerc/define-sabbrev-date {
|
||||
ble-sabbrev -m '\date'='ble/util/assign COMPREPLY "date +%F"'
|
||||
}
|
||||
blehook/eval-after-load complete blerc/define-sabbrev-date
|
||||
|
||||
# Interactive git branch selection with `\branch<SP>`
|
||||
# https://github.com/akinomyoga/ble.sh/wiki/Recipes#r2-insert-git-branch-name-from-menu-through-sabbrev-branch
|
||||
function blerc/define-sabbrev-branch {
|
||||
function blerc/sabbrev-git-branch {
|
||||
ble/util/assign-array COMPREPLY "git branch | sed 's/^\*\{0,1\}[[:blank:]]*//'" 2>/dev/null
|
||||
}
|
||||
ble-sabbrev -m '\branch'=blerc/sabbrev-git-branch
|
||||
}
|
||||
blehook/eval-after-load complete blerc/define-sabbrev-branch
|
||||
|
||||
# Interactive git commit selection with `\commit<SP>`
|
||||
# https://github.com/akinomyoga/ble.sh/wiki/Recipes#r3-insert-git-commit-id-from-menu-through-sabbrev-commit
|
||||
function blerc/define-sabbrev-commit {
|
||||
ble/color/defface blerc_git_commit_id fg=63
|
||||
ble/complete/action#inherit-from blerc_git_commit_id word
|
||||
function ble/complete/action:blerc_git_commit_id/init-menu-item {
|
||||
local ret
|
||||
ble/color/face2g blerc_git_commit_id; g=$ret
|
||||
}
|
||||
function blerc/sabbrev-git-commit {
|
||||
bleopt sabbrev_menu_style=desc-raw
|
||||
bleopt sabbrev_menu_opts=enter_menu
|
||||
|
||||
local format=$'%h \e[1;32m(%ar)\e[m %s - \e[4m%an\e[m\e[1;33m%d\e[m'
|
||||
local arr; ble/util/assign-array arr 'git log --pretty=format:"$format"' &>/dev/null
|
||||
local line hash subject
|
||||
for line in "${arr[@]}"; do
|
||||
builtin read hash subject <<< "$line"
|
||||
ble/complete/cand/yield blerc_git_commit_id "$hash" "$subject"
|
||||
done
|
||||
}
|
||||
ble-sabbrev -m '\commit'='blerc/sabbrev-git-commit'
|
||||
}
|
||||
blehook/eval-after-load complete blerc/define-sabbrev-commit
|
||||
|
||||
486
.config/plasma-org.kde.plasma.desktop-appletsrc
Normal file
486
.config/plasma-org.kde.plasma.desktop-appletsrc
Normal file
@@ -0,0 +1,486 @@
|
||||
[ActionPlugins][0]
|
||||
RightButton;NoModifier=org.kde.contextmenu
|
||||
wheel:Vertical;NoModifier=org.kde.switchdesktop
|
||||
|
||||
[ActionPlugins][1]
|
||||
RightButton;NoModifier=org.kde.contextmenu
|
||||
|
||||
[Containments][1][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][2]
|
||||
activityId=
|
||||
formfactor=2
|
||||
immutability=1
|
||||
lastScreen=0
|
||||
location=4
|
||||
plugin=org.kde.panel
|
||||
wallpaperplugin=org.kde.image
|
||||
|
||||
[Containments][2][Applets][20][Configuration]
|
||||
PreloadWeight=77
|
||||
|
||||
[Containments][2][Applets][21]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.minimizeall
|
||||
|
||||
[Containments][2][Applets][21][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][2][Applets][25]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.activitypager
|
||||
|
||||
[Containments][2][Applets][25][Configuration]
|
||||
PreloadWeight=18
|
||||
|
||||
[Containments][2][Applets][25][Configuration][ConfigDialog]
|
||||
DialogHeight=600
|
||||
DialogWidth=800
|
||||
|
||||
[Containments][2][Applets][25][Configuration][General]
|
||||
showWindowIcons=true
|
||||
|
||||
[Containments][2][Applets][26][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][2][Applets][26][Configuration][SensorColors]
|
||||
network/all/download=61,174,233
|
||||
network/all/upload=233,120,61
|
||||
|
||||
[Containments][2][Applets][27]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.systemmonitor
|
||||
|
||||
[Containments][2][Applets][27][Configuration]
|
||||
CurrentPreset=org.kde.plasma.systemmonitor
|
||||
PreloadWeight=46
|
||||
|
||||
[Containments][2][Applets][27][Configuration][Appearance]
|
||||
chartFace=org.kde.ksysguard.piechart
|
||||
title=CPU
|
||||
|
||||
[Containments][2][Applets][27][Configuration][ConfigDialog]
|
||||
DialogHeight=600
|
||||
DialogWidth=800
|
||||
|
||||
[Containments][2][Applets][27][Configuration][SensorColors]
|
||||
cpu/all/usage=61,233,79
|
||||
|
||||
[Containments][2][Applets][27][Configuration][Sensors]
|
||||
highPrioritySensorIds=["cpu/all/usage"]
|
||||
lowPrioritySensorIds=["cpu/all/system","cpu/all/user","cpu/all/wait","cpu/loadaverages/loadaverage1","cpu/loadaverages/loadaverage15","cpu/loadaverages/loadaverage5"]
|
||||
totalSensors=["cpu/all/usage"]
|
||||
|
||||
[Containments][2][Applets][28]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.systemmonitor
|
||||
|
||||
[Containments][2][Applets][28][Configuration]
|
||||
CurrentPreset=org.kde.plasma.systemmonitor
|
||||
PreloadWeight=26
|
||||
|
||||
[Containments][2][Applets][28][Configuration][Appearance]
|
||||
chartFace=org.kde.ksysguard.piechart
|
||||
title=SWAP
|
||||
|
||||
[Containments][2][Applets][28][Configuration][ConfigDialog]
|
||||
DialogHeight=600
|
||||
DialogWidth=800
|
||||
|
||||
[Containments][2][Applets][28][Configuration][SensorColors]
|
||||
memory/swap/freePercent=0,0,0
|
||||
memory/swap/usedPercent=170,0,0
|
||||
|
||||
[Containments][2][Applets][28][Configuration][Sensors]
|
||||
highPrioritySensorIds=["memory/swap/usedPercent"]
|
||||
lowPrioritySensorIds=["memory/swap/freePercent"]
|
||||
totalSensors=["memory/swap/usedPercent","memory/swap/freePercent"]
|
||||
|
||||
[Containments][2][Applets][29]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.systemmonitor
|
||||
|
||||
[Containments][2][Applets][29][Configuration]
|
||||
CurrentPreset=org.kde.plasma.systemmonitor
|
||||
PreloadWeight=31
|
||||
|
||||
[Containments][2][Applets][29][Configuration][Appearance]
|
||||
chartFace=org.kde.ksysguard.piechart
|
||||
title=RAM
|
||||
|
||||
[Containments][2][Applets][29][Configuration][ConfigDialog]
|
||||
DialogHeight=600
|
||||
DialogWidth=800
|
||||
|
||||
[Containments][2][Applets][29][Configuration][SensorColors]
|
||||
memory/physical/freePercent=0,0,0
|
||||
memory/physical/usedPercent=170,0,0
|
||||
|
||||
[Containments][2][Applets][29][Configuration][Sensors]
|
||||
highPrioritySensorIds=["memory/physical/usedPercent"]
|
||||
lowPrioritySensorIds=["memory/physical/freePercent"]
|
||||
totalSensors=["memory/physical/usedPercent","memory/physical/freePercent"]
|
||||
|
||||
[Containments][2][Applets][3]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.kickoff
|
||||
|
||||
[Containments][2][Applets][3][Configuration]
|
||||
PreloadWeight=92
|
||||
popupHeight=556
|
||||
popupWidth=701
|
||||
|
||||
[Containments][2][Applets][3][Configuration][Configuration/General]
|
||||
showAppsByName=true
|
||||
|
||||
[Containments][2][Applets][3][Configuration][General]
|
||||
favorites=preferred://browser,org.kde.discover.desktop,org.kde.kontact.desktop,org.kde.kate.desktop,libreoffice-startcenter.desktop,org.kde.dolphin.desktop,org.kde.plasma-systemmonitor.desktop,systemsettings.desktop,org.kde.konsole.desktop
|
||||
favoritesPortedToKAstats=true
|
||||
|
||||
[Containments][2][Applets][3][Configuration][Shortcuts]
|
||||
global=Alt+F1
|
||||
|
||||
[Containments][2][Applets][3][Shortcuts]
|
||||
global=Alt+F1
|
||||
|
||||
[Containments][2][Applets][30]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.systemmonitor
|
||||
|
||||
[Containments][2][Applets][30][Configuration]
|
||||
CurrentPreset=org.kde.plasma.systemmonitor
|
||||
PreloadWeight=46
|
||||
|
||||
[Containments][2][Applets][30][Configuration][Appearance]
|
||||
chartFace=org.kde.ksysguard.linechart
|
||||
title=Network speed
|
||||
|
||||
[Containments][2][Applets][30][Configuration][SensorColors]
|
||||
network/all/download=61,174,233
|
||||
network/all/upload=233,120,61
|
||||
|
||||
[Containments][2][Applets][30][Configuration][Sensors]
|
||||
highPrioritySensorIds=["network/all/download","network/all/upload"]
|
||||
|
||||
[Containments][2][Applets][31][Configuration]
|
||||
PreloadWeight=26
|
||||
|
||||
[Containments][2][Applets][36]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.eventcalendar
|
||||
|
||||
[Containments][2][Applets][36][Configuration]
|
||||
PreloadWeight=100
|
||||
|
||||
[Containments][2][Applets][36][Configuration][ConfigDialog]
|
||||
DialogHeight=600
|
||||
DialogWidth=800
|
||||
|
||||
[Containments][2][Applets][36][Configuration][General]
|
||||
v71Migration=true
|
||||
v72Migration=true
|
||||
|
||||
[Containments][2][Applets][36][Configuration][Google Calendar]
|
||||
calendarList=W10=
|
||||
tasklistList=W10=
|
||||
|
||||
[Containments][2][Applets][36][Configuration][Weather]
|
||||
openWeatherMapCityId=5149222
|
||||
weatherUnits=imperial
|
||||
|
||||
[Containments][2][Applets][39]
|
||||
immutability=1
|
||||
plugin=org.kde.weatherWidget-2
|
||||
|
||||
[Containments][2][Applets][39][Configuration]
|
||||
PreloadWeight=100
|
||||
|
||||
[Containments][2][Applets][39][Configuration][ConfigDialog]
|
||||
DialogHeight=600
|
||||
DialogWidth=800
|
||||
|
||||
[Containments][2][Applets][39][Configuration][General]
|
||||
firstRun=false
|
||||
places=[{"providerId":"owm","placeIdentifier":"5149222","placeAlias":"Canton, OH","timezoneID":0}]
|
||||
|
||||
[Containments][2][Applets][39][Configuration][Units]
|
||||
pressureType=inHg
|
||||
temperatureType=fahrenheit
|
||||
windSpeedType=mph
|
||||
|
||||
[Containments][2][Applets][4][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][2][Applets][5]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.icontasks
|
||||
|
||||
[Containments][2][Applets][5][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][2][Applets][5][Configuration][ConfigDialog]
|
||||
DialogHeight=600
|
||||
DialogWidth=800
|
||||
|
||||
[Containments][2][Applets][5][Configuration][General]
|
||||
launchers=preferred://filemanager
|
||||
sortingStrategy=4
|
||||
|
||||
[Containments][2][Applets][6]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.marginsseparator
|
||||
|
||||
[Containments][2][Applets][6][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][2][Applets][61]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.digitalclock
|
||||
|
||||
[Containments][2][Applets][61][Configuration]
|
||||
PreloadWeight=100
|
||||
popupHeight=500
|
||||
popupWidth=900
|
||||
|
||||
[Containments][2][Applets][61][Configuration][Appearance]
|
||||
selectedTimeZones=America/Los_Angeles,Local,UTC+00:00,Europe/Paris,Europe/Madrid,Europe/Athens
|
||||
showDate=false
|
||||
showWeekNumbers=true
|
||||
|
||||
[Containments][2][Applets][61][Configuration][ConfigDialog]
|
||||
DialogHeight=540
|
||||
DialogWidth=720
|
||||
|
||||
[Containments][2][Applets][7]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.systemtray
|
||||
|
||||
[Containments][2][Applets][7][Configuration]
|
||||
PreloadWeight=92
|
||||
SystrayContainmentId=8
|
||||
|
||||
[Containments][2][ConfigDialog]
|
||||
DialogHeight=91
|
||||
DialogWidth=1920
|
||||
|
||||
[Containments][2][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][2][General]
|
||||
AppletOrder=3;29;28;27;30;5;25;61;6;7;21
|
||||
|
||||
[Containments][22][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][27][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][28][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][29][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][30][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][32][Configuration]
|
||||
PreloadWeight=34
|
||||
|
||||
[Containments][33][Configuration]
|
||||
PreloadWeight=34
|
||||
|
||||
[Containments][34][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][35][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][36][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][37][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][38][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][39][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][40][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][42][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][71]
|
||||
ItemGeometries-3840x2160=
|
||||
ItemGeometriesHorizontal=
|
||||
activityId=335a53bf-d117-46d8-a166-621281cf7411
|
||||
formfactor=0
|
||||
immutability=1
|
||||
lastScreen=0
|
||||
location=0
|
||||
plugin=org.kde.plasma.folder
|
||||
wallpaperplugin=org.kde.image
|
||||
|
||||
[Containments][72]
|
||||
activityId=335a53bf-d117-46d8-a166-621281cf7411
|
||||
formfactor=0
|
||||
immutability=1
|
||||
lastScreen=1
|
||||
location=0
|
||||
plugin=org.kde.plasma.folder
|
||||
wallpaperplugin=org.kde.image
|
||||
|
||||
[Containments][8]
|
||||
activityId=
|
||||
formfactor=2
|
||||
immutability=1
|
||||
lastScreen=0
|
||||
location=4
|
||||
plugin=org.kde.plasma.private.systemtray
|
||||
popupHeight=480
|
||||
popupWidth=480
|
||||
wallpaperplugin=org.kde.image
|
||||
|
||||
[Containments][8][Applets][10]
|
||||
immutability=1
|
||||
plugin=org.kde.kdeconnect
|
||||
|
||||
[Containments][8][Applets][10][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][8][Applets][11]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.clipboard
|
||||
|
||||
[Containments][8][Applets][11][Configuration]
|
||||
PreloadWeight=92
|
||||
|
||||
[Containments][8][Applets][12]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.volume
|
||||
|
||||
[Containments][8][Applets][12][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][8][Applets][12][Configuration][ConfigDialog]
|
||||
DialogHeight=600
|
||||
DialogWidth=800
|
||||
|
||||
[Containments][8][Applets][12][Configuration][General]
|
||||
currentTab=streams
|
||||
migrated=true
|
||||
|
||||
[Containments][8][Applets][13]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.keyboardindicator
|
||||
|
||||
[Containments][8][Applets][13][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][8][Applets][14]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.devicenotifier
|
||||
|
||||
[Containments][8][Applets][14][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][8][Applets][15]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.nightcolorcontrol
|
||||
|
||||
[Containments][8][Applets][15][Configuration]
|
||||
PreloadWeight=87
|
||||
|
||||
[Containments][8][Applets][16]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.manage-inputmethod
|
||||
|
||||
[Containments][8][Applets][16][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][8][Applets][17]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.vault
|
||||
|
||||
[Containments][8][Applets][17][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][8][Applets][18]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.keyboardlayout
|
||||
|
||||
[Containments][8][Applets][18][Configuration]
|
||||
PreloadWeight=52
|
||||
|
||||
[Containments][8][Applets][19]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.printmanager
|
||||
|
||||
[Containments][8][Applets][19][Configuration]
|
||||
PreloadWeight=92
|
||||
|
||||
[Containments][8][Applets][22]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.battery
|
||||
|
||||
[Containments][8][Applets][22][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][8][Applets][22][Shortcuts]
|
||||
global=
|
||||
|
||||
[Containments][8][Applets][23]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.networkmanagement
|
||||
|
||||
[Containments][8][Applets][23][Configuration]
|
||||
PreloadWeight=47
|
||||
|
||||
[Containments][8][Applets][24]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.bluetooth
|
||||
|
||||
[Containments][8][Applets][24][Configuration]
|
||||
PreloadWeight=18
|
||||
|
||||
[Containments][8][Applets][25][Configuration]
|
||||
PreloadWeight=54
|
||||
|
||||
[Containments][8][Applets][35]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.mediacontroller
|
||||
|
||||
[Containments][8][Applets][35][Configuration]
|
||||
PreloadWeight=0
|
||||
|
||||
[Containments][8][Applets][65]
|
||||
immutability=1
|
||||
plugin=org.kde.kscreen
|
||||
|
||||
[Containments][8][Applets][9]
|
||||
immutability=1
|
||||
plugin=org.kde.plasma.notifications
|
||||
|
||||
[Containments][8][Applets][9][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][8][ConfigDialog]
|
||||
DialogHeight=600
|
||||
DialogWidth=800
|
||||
|
||||
[Containments][8][Configuration]
|
||||
PreloadWeight=42
|
||||
|
||||
[Containments][8][General]
|
||||
extraItems=org.kde.plasma.battery,org.kde.plasma.notifications,org.kde.plasma.clipboard,org.kde.plasma.mediacontroller,org.kde.kupapplet,org.kde.plasma.volume,org.kde.plasma.keyboardindicator,org.kde.plasma.devicenotifier,org.kde.plasma.bluetooth,org.kde.plasma.networkmanagement,org.kde.plasma.nightcolorcontrol,org.kde.plasma.manage-inputmethod,org.kde.plasma.vault,org.kde.plasma.keyboardlayout,org.kde.plasma.printmanager,org.kde.kscreen,org.kde.kdeconnect
|
||||
knownItems=org.kde.plasma.battery,org.kde.plasma.notifications,org.kde.plasma.clipboard,org.kde.plasma.mediacontroller,org.kde.kupapplet,org.kde.plasma.volume,org.kde.plasma.keyboardindicator,org.kde.plasma.devicenotifier,org.kde.plasma.bluetooth,org.kde.plasma.networkmanagement,org.kde.plasma.nightcolorcontrol,org.kde.plasma.manage-inputmethod,org.kde.plasma.vault,org.kde.plasma.keyboardlayout,org.kde.plasma.printmanager,org.kde.kscreen,org.kde.kdeconnect
|
||||
shownItems=org.kde.plasma.battery
|
||||
|
||||
[ScreenMapping]
|
||||
itemsOnDisabledScreens=
|
||||
screenMapping=desktop:/goals.md,0,335a53bf-d117-46d8-a166-621281cf7411,desktop:/kilroy.md,0,335a53bf-d117-46d8-a166-621281cf7411
|
||||
54
.config/yakuake.shortcuts
Normal file
54
.config/yakuake.shortcuts
Normal file
@@ -0,0 +1,54 @@
|
||||
[Global Shortcuts]
|
||||
toggle-window-state=Meta+`
|
||||
|
||||
[Shortcuts]
|
||||
close-active-terminal=Ctrl+Shift+R
|
||||
close-session=none
|
||||
decrease-window-height=Alt+Shift+Up
|
||||
decrease-window-width=Alt+Shift+Left
|
||||
edit-profile=none
|
||||
file_quit=Ctrl+Shift+Q
|
||||
grow-terminal-bottom=Ctrl+Alt+Down
|
||||
grow-terminal-left=Ctrl+Alt+Left
|
||||
grow-terminal-right=Ctrl+Alt+Right
|
||||
grow-terminal-top=Ctrl+Alt+Up
|
||||
help_about_app=none
|
||||
help_about_kde=none
|
||||
help_report_bug=none
|
||||
help_whats_this=Shift+F1
|
||||
increase-window-height=Alt+Shift+Down
|
||||
increase-window-width=Alt+Shift+Right
|
||||
keep-open=none
|
||||
manage-profiles=none
|
||||
move-session-left=Ctrl+Shift+Left
|
||||
move-session-right=Ctrl+Shift+Right
|
||||
new-session=Ctrl+Shift+T
|
||||
new-session-quad=none
|
||||
new-session-two-horizontal=none
|
||||
new-session-two-vertical=none
|
||||
next-session=Shift+Right
|
||||
next-terminal=Ctrl+Tab; Shift+Tab
|
||||
options_configure=Ctrl+Shift+,
|
||||
options_configure_keybinding=none
|
||||
options_configure_notifications=none
|
||||
previous-session=Shift+Left
|
||||
previous-terminal=Ctrl+Shift+Tab
|
||||
rename-session=none
|
||||
split-left-right=Ctrl+(
|
||||
split-top-bottom=Ctrl+)
|
||||
switch-to-session-1=none
|
||||
switch-to-session-12=none
|
||||
switch-to-session-2=none
|
||||
switch-to-session-3=none
|
||||
switch-to-session-4=none
|
||||
switch-to-session-5=none
|
||||
switch-to-session-6=none
|
||||
switch-to-session-7=none
|
||||
switch-to-session-8=none
|
||||
switch-to-session-9=none
|
||||
toggle-session-keyboard-input=none
|
||||
toggle-session-monitor-activity=Ctrl+Shift+A
|
||||
toggle-session-monitor-silence=Ctrl+Shift+I
|
||||
toggle-session-prevent-closing=none
|
||||
toggle-window-state=none
|
||||
view-full-screen=Ctrl+Shift+F11
|
||||
52
.config/yakuakerc
Normal file
52
.config/yakuakerc
Normal file
@@ -0,0 +1,52 @@
|
||||
[Animation]
|
||||
AutoOpen=false
|
||||
Frames=17
|
||||
PollInterval=500
|
||||
UseVMAssist=true
|
||||
|
||||
[Appearance]
|
||||
BackgroundColor=#000000
|
||||
BackgroundColorOpacity=0.4
|
||||
Blur=false
|
||||
KeyboardInputBlockIndicatorColor=#FF0000
|
||||
KeyboardInputBlockIndicatorDuration=250
|
||||
Skin=default
|
||||
SkinInstallWithKns=false
|
||||
TerminalHighlightDuration=250
|
||||
Translucency=false
|
||||
|
||||
[Behavior]
|
||||
FocusFollowMouse=false
|
||||
OpenAfterStart=false
|
||||
RememberFullscreen=false
|
||||
|
||||
[Desktop Entry]
|
||||
DefaultProfile=
|
||||
|
||||
[Dialogs]
|
||||
ConfirmQuit=true
|
||||
FirstRun=false
|
||||
|
||||
[Favorite Profiles]
|
||||
Favorites=
|
||||
|
||||
[KFileDialog Settings]
|
||||
detailViewIconSize=0
|
||||
|
||||
[PrintOptions]
|
||||
PrinterFriendly=true
|
||||
ScaleOutput=true
|
||||
|
||||
[Window]
|
||||
DynamicTabTitles=false
|
||||
Height=60
|
||||
KeepAbove=true
|
||||
KeepOpen=true
|
||||
KeepOpenAfterLastSessionCloses=false
|
||||
Position=50
|
||||
Screen=0
|
||||
ShowOnAllDesktops=true
|
||||
ShowSystrayIcon=true
|
||||
ShowTabBar=true
|
||||
ShowTitleBar=true
|
||||
ToggleToFocus=false
|
||||
6
.gitignore
vendored
6
.gitignore
vendored
@@ -1,4 +1,5 @@
|
||||
.bash_secrets
|
||||
**/.bash_secrets
|
||||
.vim/.netrwhist
|
||||
.idea/
|
||||
.config/Code/Backups/*
|
||||
.config/Code/*Cache*/*
|
||||
@@ -12,6 +13,9 @@
|
||||
.config/Code/rapid_render.json
|
||||
.config/Code/Network*
|
||||
**/.config/.brightness
|
||||
.local/share/fonts/.uuid
|
||||
.local/share/blesh
|
||||
.local/share/doc
|
||||
|
||||
# Byte-compiled / optimized / DLL files
|
||||
*__pycache__/
|
||||
|
||||
4
.inputrc
Normal file
4
.inputrc
Normal file
@@ -0,0 +1,4 @@
|
||||
# This will automatically trigger reverse search when using up / down in bash
|
||||
# However it doesn't feel natural with ble.sh, so it's commented out for now.
|
||||
#"\e[A": history-search-backward
|
||||
#"\e[B": history-search-forward
|
||||
7
.stow-local-ignore
Normal file
7
.stow-local-ignore
Normal file
@@ -0,0 +1,7 @@
|
||||
.git
|
||||
.gitmodules
|
||||
.gitignore
|
||||
README.md
|
||||
setup.sh
|
||||
Dockerfile
|
||||
VimScreenshot.png
|
||||
45
.tmux.conf
45
.tmux.conf
@@ -1,44 +1,26 @@
|
||||
###############################################################################
|
||||
## Author: Shaun Reed | Contact: shaunrd0@gmail.com | URL: www.shaunreed.com ##
|
||||
## ##
|
||||
## A custom tmux multiplexer config / layout created for Manjaro i3 ##
|
||||
##+ Inspired by vim-powerline: https://github.com/Lokaltog/powerline ##
|
||||
## A custom tmux multiplexer config / layout created for KDE ##
|
||||
## ##
|
||||
## This config created and tested with Powerline Consolas ##
|
||||
##+ https://github.com/Lokaltog/powerline-fonts ##
|
||||
##+ Some symbols may require Font Awesome 5 Free Solid ##
|
||||
## This config was tested with SauceCodePro Nerd Font Mono, Regular ##
|
||||
## See: dot/.local/share/fonts/ ##
|
||||
## https://github.com/ryanoasis/nerd-fonts ##
|
||||
## ##
|
||||
###############################################################################
|
||||
# .tmux.conf
|
||||
#
|
||||
# If symbols or powerline layout fail to appear...
|
||||
#+ Check your terminal emulator font settings include these fonts
|
||||
#+ Check that required fonts are installed
|
||||
# + Check your terminal emulator font settings include these fonts
|
||||
# + Check that required fonts are installed
|
||||
#
|
||||
# Note: The use of 256colours in this file allows for portable color definitions between platforms and applications
|
||||
#+ Changing to a different color interpretation may result in some apps displaying colors differently than others
|
||||
#+ Vim plugin 'Colorizer' does not reflect the actual 256colour values
|
||||
#+ See https://jonasjacek.github.io/colors/ for a full list of 256colours
|
||||
# + Changing to a different color interpretation may result in some apps displaying colors differently than others
|
||||
# + Vim plugin 'Colorizer' does not reflect the actual 256colour values
|
||||
# + See https://jonasjacek.github.io/colors/ for a full list of 256colours
|
||||
|
||||
# Settings for terminal text selection / copy options
|
||||
# + Source: https://www.seanh.cc/2020/12/27/copy-and-paste-in-tmux/
|
||||
# + Depends: https://github.com/tmux-plugins/tmux-yank#linux
|
||||
set -g mouse on
|
||||
# These bindings are for X Windows only. If you're using a different
|
||||
# window system you have to replace the `xsel` commands with something
|
||||
# else. See https://github.com/tmux/tmux/wiki/Clipboard#available-tools
|
||||
bind -T copy-mode DoubleClick1Pane select-pane \; send -X select-word \; send -X copy-pipe-no-clear "xsel -i"
|
||||
bind -T copy-mode-vi DoubleClick1Pane select-pane \; send -X select-word \; send -X copy-pipe-no-clear "xsel -i"
|
||||
bind -n DoubleClick1Pane select-pane \; copy-mode -M \; send -X select-word \; send -X copy-pipe-no-clear "xsel -i"
|
||||
bind -T copy-mode TripleClick1Pane select-pane \; send -X select-line \; send -X copy-pipe-no-clear "xsel -i"
|
||||
bind -T copy-mode-vi TripleClick1Pane select-pane \; send -X select-line \; send -X copy-pipe-no-clear "xsel -i"
|
||||
bind -n TripleClick1Pane select-pane \; copy-mode -M \; send -X select-line \; send -X copy-pipe-no-clear "xsel -i"
|
||||
bind -n MouseDown2Pane run "tmux set-buffer -b primary_selection \"$(xsel -o)\"; tmux paste-buffer -b primary_selection; tmux delete-buffer -b primary_selection"
|
||||
#set -g @plugin 'tmux-plugins/tpm'
|
||||
#set -g @plugin 'tmux-plugins/tmux-yank'
|
||||
#set -g @yank_action 'copy-pipe-no-clear'
|
||||
#bind -T copy-mode C-c send -X copy-pipe-no-clear "xsel -i --clipboard"
|
||||
#bind -T copy-mode-vi C-c send -X copy-pipe-no-clear "xsel -i --clipboard"
|
||||
|
||||
set-option -s set-clipboard external
|
||||
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xclip -selection clipboard -i"
|
||||
@@ -72,10 +54,10 @@ set -g status-style fg=colour240,bg=colour233
|
||||
set -g status-left-style bg=colour233,fg=colour243
|
||||
set -g status-left-length 40
|
||||
|
||||
# Note: Powerline font requires alternate of bold on right side
|
||||
# Note: SauceCodePro font requires alternate of bold on right side
|
||||
# + Corrects gap on right of character that reveals BG color
|
||||
# Note: No bold required, no BG reveal produced by symbol gaps on left side
|
||||
# + Font: Sauce Code Pro (NERD patch)
|
||||
# + Font: SauceCodePro (NERD patch, Regular)
|
||||
|
||||
# Right side of status bar
|
||||
set -g status-right-style bg=colour233,fg=colour243
|
||||
@@ -88,11 +70,6 @@ set -g window-status-current-format "#($HOME/go/bin/gitmux -cfg $HOME/.gitmux.co
|
||||
#set -g window-status-current-format "#[fg=colour255,bg=colour233]#[fg=colour100,nobold] #(whoami)@#H #[fg=colour255,bg=colour233,nobold]"
|
||||
|
||||
run-shell "bash ~/.tmux/tmux-conf.sh"
|
||||
# Check if we are running xorg
|
||||
#set -g status-left "#[fg=colour233,bg=colour100,bold] #S #[fg=colour100,bg=colour240,nobold]#[fg=colour233,bg=colour240] #(whoami) #[fg=colour240,bg=colour235]#[fg=colour240,bg=colour235] #(hostname) #[fg=colour235,bg=colour233]#[fg=colour240,bg=colour233]"
|
||||
#set -g status-right "#[fg=colour235,bg=colour233,bold]#[fg=colour240,bg=colour235,nobold] %H:%M:%S #[fg=colour240,bg=colour235,bold]#[fg=colour233,bg=colour240,nobold] %d-%b-%y #[fg=colour100,bg=colour240,bold]#[fg=colour233,bg=colour100,bold] #(cd #{pane_current_path}; basename `git rev-parse --show-toplevel`) "
|
||||
|
||||
|
||||
# Current window status
|
||||
set -g window-status-current-style bg=colour233,fg=colour100
|
||||
# Window with activity status
|
||||
|
||||
@@ -8,21 +8,17 @@ set -g mouse on
|
||||
# These bindings are for X Windows only. If you're using a different
|
||||
# window system you have to replace the `xsel` commands with something
|
||||
# else. See https://github.com/tmux/tmux/wiki/Clipboard#available-tools
|
||||
bind -T copy-mode DoubleClick1Pane select-pane \; send -X select-word \; send -X copy-pipe-no-clear "xsel -i"
|
||||
bind -T copy-mode-vi DoubleClick1Pane select-pane \; send -X select-word \; send -X copy-pipe-no-clear "xsel -i"
|
||||
bind -n DoubleClick1Pane select-pane \; copy-mode -M \; send -X select-word \; send -X copy-pipe-no-clear "xsel -i"
|
||||
bind -T copy-mode TripleClick1Pane select-pane \; send -X select-line \; send -X copy-pipe-no-clear "xsel -i"
|
||||
bind -T copy-mode-vi TripleClick1Pane select-pane \; send -X select-line \; send -X copy-pipe-no-clear "xsel -i"
|
||||
bind -n TripleClick1Pane select-pane \; copy-mode -M \; send -X select-line \; send -X copy-pipe-no-clear "xsel -i"
|
||||
bind -n MouseDown2Pane run "tmux set-buffer -b primary_selection \"$(xsel -o)\"; tmux paste-buffer -b primary_selection; tmux delete-buffer -b primary_selection"
|
||||
|
||||
# List of plugins and their settings
|
||||
set -g @plugin 'tmux-plugins/tpm'
|
||||
set -g @plugin 'nhdaly/tmux-better-mouse-mode'
|
||||
set -g @scroll-speed-num-lines-per-scroll 2
|
||||
set -g @plugin 'tmux-plugins/tpm'
|
||||
set -g @plugin 'tmux-plugins/tmux-yank'
|
||||
set -g @yank_action 'copy-pipe-no-clear'
|
||||
set -g @plugin 'tmux-plugins/tmux-resurrect'
|
||||
set -g @plugin 'tmux-plugins/tmux-continuum'
|
||||
set -g @continuum-restore 'on'
|
||||
bind -T copy-mode C-c send -X copy-pipe-no-clear "xsel -i --clipboard"
|
||||
bind -T copy-mode-vi C-c send -X copy-pipe-no-clear "xsel -i --clipboard"
|
||||
# Other examples:
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
let g:netrw_dirhistmax =10
|
||||
let g:netrw_dirhistcnt =3
|
||||
let g:netrw_dirhist_3='/home/kapper/.ssh'
|
||||
let g:netrw_dirhist_2='/home/kapper'
|
||||
let g:netrw_dirhist_1='/home/kapper/dot/vim/.vim/bundle/vim-airline-themes'
|
||||
4
.vim/backup/.gitignore
vendored
Normal file
4
.vim/backup/.gitignore
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
# Ignore everything in this directory
|
||||
*
|
||||
# Don't ignore this file
|
||||
!.gitignore
|
||||
Submodule .vim/bundle/clang_complete updated: 293a106227...75946deff4
4
.vim/swap/.gitignore
vendored
Normal file
4
.vim/swap/.gitignore
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
# Ignore everything in this directory
|
||||
*
|
||||
# Don't ignore this file
|
||||
!.gitignore
|
||||
79
.vimrc
79
.vimrc
@@ -1,7 +1,12 @@
|
||||
" Single-quote is a comment written to be read
|
||||
" Double-quotes are commented out code and can be removed or added
|
||||
|
||||
"
|
||||
" General Vim Settings
|
||||
|
||||
" Fix plugin compatibility issues
|
||||
set nocp
|
||||
|
||||
let is_docker = filereadable(expand('/.dockerenv'))
|
||||
let has_sauce = filereadable(expand('~/.local/share/fonts/sauce-code-pro.otf'))
|
||||
let is_xorg = exists("$DISPLAY")
|
||||
@@ -13,9 +18,14 @@ let is_xorg = exists("$DISPLAY")
|
||||
" Keep the bottom / top of the page n lines from the cursor
|
||||
set scrolloff=5
|
||||
|
||||
" set paths for swap, backup, and undo files
|
||||
" :help directory
|
||||
set directory=~/.vim/swap//,~/tmp/,/var/tmp/,/tmp/,.
|
||||
" :help backupdir
|
||||
set backupdir=~/.vim/backup//,~/tmp/,/var/tmp/,/tmp/,.
|
||||
" Persistant undo
|
||||
" :help undo-persistence
|
||||
set undodir=~/.vim/undodir
|
||||
set undodir=~/.vim/undodir//,~/tmp/,/var/tmp/,/tmp/,.
|
||||
set undofile
|
||||
|
||||
" Combine vim clipboard with global clipboard buffer
|
||||
@@ -26,29 +36,7 @@ set clipboard+=unnamedplus
|
||||
|
||||
" Allows true colors in vim (> 8 bit colors)
|
||||
" :help termguicolors
|
||||
"set termguicolors
|
||||
|
||||
" Custom formatting based on filetype
|
||||
" :help autocmd
|
||||
"" autocmd FileType yaml set tabstop=2 shiftwidth=2
|
||||
|
||||
" Highlight characters past column N in source files based on file type
|
||||
autocmd FileType cpp,c match ErrorMsg '\%>80v.\+'
|
||||
autocmd FileType cs match ErrorMsg '\%>120v.\+'
|
||||
|
||||
" Define function in vim to remove whitespace
|
||||
fun! TrimWhitespace()
|
||||
let l:save = winsaveview()
|
||||
keeppatterns %s/\s\+$//e
|
||||
call winrestview(l:save)
|
||||
endfun
|
||||
"Call this on every attempt to save a file of types defined below..
|
||||
autocmd BufWritePre *.cpp,*.h,*.c,*.php,*.cs,*.yml,*.txt,*.md :call TrimWhitespace()
|
||||
""autocmd BufWritePre *.cpp,*.h,*.c,*.php :%s/\s\+$//ge
|
||||
|
||||
" Set terminal title when opening file
|
||||
"" autocmd BufEnter * let &titlestring = ' ' . expand("%:t")
|
||||
"" set title
|
||||
""set termguicolors
|
||||
|
||||
" Set tabwidth=2, adjust Vim shiftwidth to the same
|
||||
set tabstop=2 shiftwidth=2
|
||||
@@ -64,23 +52,15 @@ set mouse=a
|
||||
|
||||
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
|
||||
|
||||
" Fix plugin compatibility issues
|
||||
set nocp
|
||||
" Allow backspace to remove all types of characters
|
||||
set backspace=indent,eol,start
|
||||
|
||||
" Set terminal title when opening file
|
||||
"" autocmd BufEnter * let &titlestring = ' ' . expand("%:t")
|
||||
"" set title
|
||||
|
||||
"
|
||||
" Custom Vim Keybindings
|
||||
|
||||
" nnoremap <C-e> <C-w> " Modify and remove leading quotation
|
||||
@@ -95,6 +75,34 @@ nnoremap <C-e> <C-w>
|
||||
"nnoremap <C-b> :!cmake -S . -B ./build/ && cmake --build ./build
|
||||
"nnoremap <C-d> :!./build/scrap
|
||||
|
||||
" Define function in vim to remove whitespace
|
||||
fun! TrimWhitespace()
|
||||
let l:save = winsaveview()
|
||||
keeppatterns %s/\s\+$//e
|
||||
" Restore window view to retain cursor position
|
||||
call winrestview(l:save)
|
||||
endfun
|
||||
|
||||
" :help autocmd
|
||||
augroup DotAutoCmd
|
||||
autocmd!
|
||||
" Set custom options based on filetype
|
||||
autocmd FileType yaml set tabstop=2 shiftwidth=2
|
||||
|
||||
" Highlight characters past column N in source files based on file type
|
||||
autocmd FileType cpp,c,cc,rust match ErrorMsg '\%>80v.\+'
|
||||
autocmd FileType cs match ErrorMsg '\%>120v.\+'
|
||||
|
||||
"Call this on every attempt to save a file of types defined below..
|
||||
autocmd BufWritePre * call TrimWhitespace()
|
||||
|
||||
" Set terminal title when opening file
|
||||
"" autocmd BufEnter * let &titlestring = ' ' . expand("%:t")
|
||||
"" set title
|
||||
augroup END
|
||||
|
||||
|
||||
"
|
||||
" Vim Plugin Settings
|
||||
|
||||
" set rtp+=/path/to/rtp/that/included/pathogen/vim " if needed
|
||||
@@ -133,7 +141,7 @@ nmap <silent> <C-j> <Plug>(ale_next_wrap)
|
||||
"let g:colorizer_colornames = 0 " Don't color literal names, like red, green, etc
|
||||
let g:colorizer_auto_color = 0
|
||||
""let g:colorizer_skip_comments = 1
|
||||
""let g:colorizer_auto_filetype ='css,html,vim'
|
||||
let g:colorizer_auto_filetype ='css,html,qml'
|
||||
nnoremap <C-c> :ColorToggle<CR>
|
||||
|
||||
" Symbols important to vim / terminal layouts
|
||||
@@ -178,7 +186,7 @@ elseif is_xorg
|
||||
let g:airline_symbols.notexists = 'Ɇ'
|
||||
let g:airline_symbols.whitespace = 'Ξ'
|
||||
else
|
||||
" unicode symbols
|
||||
" no symbols
|
||||
let g:airline_left_sep = ''
|
||||
let g:airline_left_sep = ''
|
||||
let g:airline_right_sep = ''
|
||||
@@ -201,6 +209,7 @@ else
|
||||
let g:airline_symbols.whitespace = ''
|
||||
endif
|
||||
|
||||
"
|
||||
" Clang completeion settings
|
||||
|
||||
" If this is set, clang_complete will not be loaded at all
|
||||
|
||||
@@ -3,8 +3,8 @@ FROM ubuntu:latest
|
||||
COPY . /dot
|
||||
ENV TERM=xterm-256color
|
||||
# Install additional packages we need
|
||||
RUN apt update -y && apt upgrade -y
|
||||
RUN apt install -y git stow vim tmux ranger clang wget curl golang-go
|
||||
RUN bash -c '. /dot/.bash_aliases && apt update -y && apt install -y $DOT_PACKAGES fontconfig'
|
||||
RUN apt upgrade -y
|
||||
RUN go install github.com/arl/gitmux@latest
|
||||
# Update submodules for plugins
|
||||
RUN cd /dot && git submodule update --init && cp .gitmux.conf.docker .gitmux.conf
|
||||
|
||||
118
README.md
118
README.md
@@ -1,54 +1,41 @@
|
||||
Dotfiles configurations for headless Ubuntu 22.04 linux environments. Be sure to clone recursively if you want to grab updated plugins / submodules included. For example, using Pathogen with Vim to manage plugins requires that the plugin to be installed are cloned to the `~/.vim/bundle/` directory. Cloning recursively allows git to clone these same nested repositories/submodules within this directory so Pathogen can handle running the Vim plugins.
|
||||
## Dotfiles
|
||||
|
||||
Once installed, editing source code in vim supports features displayed in the screenshot below
|
||||
Dotfiles configurations for headless Kubuntu linux environments. Be sure to
|
||||
clone recursively if you want to grab updated plugins / submodules included. For
|
||||
example, using Pathogen with Vim to manage plugins requires that the plugin to
|
||||
be installed are cloned to the `~/.vim/bundle/` directory. Cloning recursively
|
||||
allows git to clone these same nested repositories/submodules within this
|
||||
directory so Pathogen can handle running the Vim plugins.
|
||||
|
||||
Once installed, editing source code in vim supports features displayed in the
|
||||
screenshot below
|
||||
|
||||

|
||||
|
||||
### Install Dotfiles
|
||||
### Install
|
||||
|
||||
Easiest installation is to clone repository into home directory -
|
||||
Installation instructions
|
||||
|
||||
```bash
|
||||
sudo apt install git stow vim xsel xclip tmux ranger clang yakuake wget curl
|
||||
git clone --recursive https://github.com/shaunrd0/dot ~/dot
|
||||
cd ~/dot/
|
||||
stow --adopt .
|
||||
git clone --recursive https://github.com/shaunrd0/dot
|
||||
cd dot/
|
||||
./setup.sh
|
||||
mv ~/.bashrc ~/.bashrc.backup
|
||||
stow . -t ~
|
||||
```
|
||||
|
||||
If you'd rather clone elsewhere -
|
||||
To uninstall
|
||||
|
||||
```bash
|
||||
git clone --recursive https://github.com/shaunrd0/dot /path/to/dot
|
||||
cd /path/to/dot/
|
||||
stow --adopt -t ~ .
|
||||
```
|
||||
|
||||
**Warning:** `--adopt` is used to link conflicting files, but doing so could result in the loss of some configs within your local copy of the repository and on your local system.
|
||||
After running `stow --adopt .`, be sure to check `git status` is clean.
|
||||
If a file has been modified, discard the local changes to be up-to-date with `origin/master` and it will be restored on your system as well, since the files are now linked. **Your conflicting local system configurations will be lost** unless you back them up manually.
|
||||
|
||||
We could run the following commands to restore changed files
|
||||
```bash
|
||||
git checkout -- .vimrc
|
||||
# Or, to step through each change interactively using git..
|
||||
git checkout -p
|
||||
# Or restore the current directory
|
||||
git restore .
|
||||
```
|
||||
|
||||
If you forget to clone recursively
|
||||
```bash
|
||||
git submodule update --init
|
||||
Submodule path '.vim/bundle/Colorizer': checked out '53ada285f0acc171acda4280b6144e468dded89f'
|
||||
Submodule path '.vim/bundle/ale': checked out '7265ceb6d050d1a4642741d248f11e4f2abd37e1'
|
||||
Submodule path '.vim/bundle/clang_complete': checked out '0b98d7533ad967aac3fc4c1a5b0508dafa8a676f'
|
||||
Submodule path '.vim/bundle/supertab': checked out '40fe711e088e2ab346738233dd5adbb1be355172'
|
||||
Submodule path '.vim/bundle/unicode.vim': checked out '29f43f7b1be94dccfac461f4da0a34410408111f'
|
||||
Submodule path '.vim/bundle/vim-airline': checked out '6d665580a3435f21ad560af192d854d4b608fff5'
|
||||
Submodule path '.vim/bundle/vim-airline-themes': checked out '0d5c5c1e2995126e76606a628316c8e3f5efb37a'
|
||||
Submodule path '.vim/bundle/vim-signify': checked out '16eee41d2b267523b84bd4ac111627588bfd1a47'
|
||||
stow -D . -t ~
|
||||
mv ~/.bashrc.backup ~/.bashrc
|
||||
```
|
||||
|
||||
If you have files other than `~/.bashrc` that conflict with these
|
||||
configurations,
|
||||
be sure to back them up so you can restore to your original state. If you do not
|
||||
provide the `-t` flag to stow, the files will be symlinked within the parent
|
||||
of your current directory.
|
||||
|
||||
### Docker
|
||||
|
||||
@@ -61,33 +48,42 @@ docker build -t dot .
|
||||
docker run -it dot bash
|
||||
```
|
||||
|
||||
This container has the following packages installed and uses `ubuntu:latest` as a base.
|
||||
Note that some features may not work properly in the container, like system
|
||||
clipboard integration with vim or certain font icons used in themes. Still, the
|
||||
base configurations work, and using the container as a clean environment is
|
||||
useful for testing things such as installation instructions for a personal
|
||||
project.
|
||||
|
||||
```
|
||||
git stow vim tmux ranger clang wget curl golang-go
|
||||
```
|
||||
### Configurations
|
||||
|
||||
#### Utilities
|
||||
|
||||
### Install Clang Completion
|
||||
| Tool | Description | Repository |
|
||||
|----------------------|--------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------|
|
||||
| ranger | Console-based file manager with Vim-like keybindings, previews, and customizable commands. | [https://github.com/ranger/ranger](https://github.com/ranger/ranger) |
|
||||
| ble.sh | Advanced Bash line editor providing syntax highlighting, autosuggestions, and improved interactive shell behavior. | [https://github.com/akinomyoga/ble.sh](https://github.com/akinomyoga/ble.sh) |
|
||||
| GNU Stow | Manages dotfiles using symlinks. Repository structure is organized for per-package Stow deployment. | [https://www.gnu.org/software/stow/](https://www.gnu.org/software/stow/) |
|
||||
| `.stow-local-ignore` | Stow configuration file that excludes specific files or patterns from being symlinked during deployment. | [https://www.gnu.org/software/stow/manual/stow.html](https://www.gnu.org/software/stow/manual/stow.html) |
|
||||
| `setup.sh` | Bootstrap script that automates symlink setup and environment initialization. | (Repository-local script) |
|
||||
|
||||
**These configurations require the installation of clang for clang completion**
|
||||
#### Tmux
|
||||
|
||||
If you don't want clang completion, just remove the plugin directory from `~/.vim/bundle/`.
|
||||
| Plugin | Description | Repository |
|
||||
|---------------------|--------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------|
|
||||
| tmux plugin manager | Manages tmux plugins directly from GitHub. | [https://github.com/tmux-plugins/tpm](https://github.com/tmux-plugins/tpm) |
|
||||
| tmux-resurrect | Saves and restores tmux sessions, panes, and layouts between restarts. | [https://github.com/tmux-plugins/tmux-resurrect](https://github.com/tmux-plugins/tmux-resurrect) |
|
||||
| tmux-continuum | Automatically saves tmux sessions and can restore them on system reboot. | [https://github.com/tmux-plugins/tmux-continuum](https://github.com/tmux-plugins/tmux-continuum) |
|
||||
| xclip | Integrates tmux copy mode with the system clipboard under X11. | [https://github.com/astrand/xclip](https://github.com/astrand/xclip) |
|
||||
|
||||
If you don't remove clang completion and skip the following steps, vim will show errors when opening source code files. This is because these configurations use clang completion for source code auto completion and drop-down menus within vim.
|
||||
|
||||
```bash
|
||||
sudo apt install clang
|
||||
source ~/.bashrc
|
||||
```
|
||||
|
||||
|
||||
### Gitmux
|
||||
|
||||
To enable the gitmux status bar in tmux sessions
|
||||
|
||||
```bash
|
||||
sudo apt install golang-go
|
||||
go install github.com/arl/gitmux@latest
|
||||
```
|
||||
#### Vim
|
||||
|
||||
| Plugin | Description | Repository |
|
||||
|--------------------|--------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------|
|
||||
| Colorizer | Highlights color codes in Vim buffers (useful for CSS/ web). | [https://github.com/chrisbra/Colorizer](https://github.com/chrisbra/Colorizer) |
|
||||
| ALE | Asynchronous Lint Engine - linting & fixing in Vim asynchronously. | [https://github.com/dense-analysis/ale](https://github.com/dense-analysis/ale) |
|
||||
| clang_complete | Auto-completion support for C/C++ using libclang. | [https://github.com/xavierd/clang_complete](https://github.com/xavierd/clang_complete) |
|
||||
| supertab | Expand completions using `<Tab>` in insert mode. | [https://github.com/ervandew/supertab](https://github.com/ervandew/supertab) |
|
||||
| unicode.vim | Unicode helpers (insert and inspect Unicode characters). | [https://github.com/chrisbra/unicode.vim](https://github.com/chrisbra/unicode.vim) |
|
||||
| vim-airline | Lean and fast status/tabline for Vim. | [https://github.com/vim-airline/vim-airline](https://github.com/vim-airline/vim-airline) |
|
||||
| vim-airline-themes | Additional themes for vim-airline. | [https://github.com/vim-airline/vim-airline-themes](https://github.com/vim-airline/vim-airline-themes) |
|
||||
| vim-signify | Shows VCS (git/hg) changes in the sign column. | [https://github.com/mhinz/vim-signify](https://github.com/mhinz/vim-signify) |
|
||||
|
||||
35
setup.sh
Executable file
35
setup.sh
Executable file
@@ -0,0 +1,35 @@
|
||||
#!/usr/bin/env bash
|
||||
set -Eeuo pipefail
|
||||
|
||||
# $1: Error message
|
||||
# $2: Error code
|
||||
# $3: Error line
|
||||
function fatal() {
|
||||
local msg=${1:-"Unspecified error"}
|
||||
local line=${3:-9}
|
||||
echo "[Error:$line] Could not install dotfiles: $msg"
|
||||
exit ${2:-1}
|
||||
}
|
||||
trap 'fatal "Trapped an unknown error" $? $LINENO' ERR
|
||||
|
||||
if ! git rev-parse --is-inside-work-tree >/dev/null 2>&1; then
|
||||
fatal "Run setup.sh from the root directory of the dotfiles repository." 2 $LINENO
|
||||
fi
|
||||
git submodule update --init --recursive
|
||||
|
||||
# Use alias for installing packages so we don't maintain several dependency lists.
|
||||
if ! [[ -f .bash.d/.bash_exports ]]; then
|
||||
fatal "Failed to locate .bash.d/.bash_exports in path: $(pwd)" 3 $LINENO
|
||||
fi
|
||||
. .bash.d/.bash_exports
|
||||
|
||||
if [[ -z ${DOT_PACKAGES:-} ]]; then
|
||||
fatal "DOT_PACKAGES variable not found after sourcing $(pwd)/.bash.d/.bash_aliases" 4 $LINENO
|
||||
fi
|
||||
sudo apt update -y && sudo apt install -y $DOT_PACKAGES
|
||||
go install github.com/arl/gitmux@latest
|
||||
|
||||
# Install bash line editor for auto completion.
|
||||
git clone --recursive --depth 1 --shallow-submodules https://github.com/akinomyoga/ble.sh.git
|
||||
make -C ble.sh install PREFIX=$(pwd)/.local
|
||||
rm -rf ble.sh
|
||||
Reference in New Issue
Block a user