Update configs. (#4)

This commit is contained in:
2026-02-14 01:58:02 +00:00
parent 7f0ca310aa
commit c7a300cd58
16 changed files with 708 additions and 126 deletions

View File

@@ -1,34 +1,31 @@
# For Rust stuff, uncomment this line
#. "$HOME/.cargo/env"
# Source rust things if they exist
if [ -f ~/.cargo/env ]; then
. ~/.cargo/env
fi
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
export DOT_PACKAGES='git stow vim tmux ranger clang wget curl'
export DOT_PACKAGES='git stow vim tmux ranger clang wget curl golang-go'
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 ,init='apt update -y && apt install -y $DOT_PACKAGES'
alias ,swap='swapoff -a && swapon -a'
else
export DOT_PACKAGES='git stow vim xsel xclip tmux ranger clang yakuake wget curl'
export DOT_PACKAGES='git stow vim vim-gtk3 xsel xclip tmux ranger clang yakuake wget curl golang-go'
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'
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='sudo pkill plasmashell && plasmashell --replace &> /dev/null &'
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"
alias ,assistant="nohup $HOME/Qt/6.9.0/gcc_64/bin/assistant > /dev/null 2>&1 &"
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$//'\'')"'
@@ -47,7 +44,9 @@ if [ -e ~/.bash_secrets ]; then
fi
if command -v tmux &> /dev/null && [ -n "$PS1" ] && [[ ! "$TERM" =~ screen ]] && [[ ! "$TERM" =~ tmux ]] && [ -z "$TMUX" ]; then
exec tmux
if ! pstree -s $$ | grep -wq code; then
exec tmux >/dev/null 2>&1
fi
fi
# Set the default terminal to use konsole, with kapper profile
@@ -103,3 +102,12 @@ if ! [ command -v conda &>/dev/null ] && [ -e ~/Code/Clones/mambaforge/bin/conda
source ~/.bashrc
fi
# 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

View 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
View 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
View 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

1
.gitignore vendored
View File

@@ -1,4 +1,5 @@
.bash_secrets
.vim/.netrwhist
.idea/
.config/Code/Backups/*
.config/Code/*Cache*/*

2
.inputrc Normal file
View File

@@ -0,0 +1,2 @@
"\e[A": history-search-backward
"\e[B": history-search-forward

7
.stow-local-ignore Normal file
View File

@@ -0,0 +1,7 @@
.git
.gitmodules
.gitignore
README.md
setup.sh
Dockerfile
VimScreenshot.png

View File

@@ -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

View File

@@ -8,16 +8,9 @@ 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'

View File

@@ -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
View File

@@ -0,0 +1,4 @@
# Ignore everything in this directory
*
# Don't ignore this file
!.gitignore

4
.vim/swap/.gitignore vendored Normal file
View File

@@ -0,0 +1,4 @@
# Ignore everything in this directory
*
# Don't ignore this file
!.gitignore

79
.vimrc
View File

@@ -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

View File

@@ -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

View File

@@ -1,39 +1,23 @@
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
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
![Vim screenshot](VimScreenshot.png)
### Install Dotfiles
### Install
Easiest installation is to clone repository into home directory -
If you don't install `vim-gtk3`, vim will not have access to your system clipboard, and your copy and paste buffers will not stay in sync.
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 .
```
If you'd rather clone elsewhere -
```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 .
git clone --recursive https://github.com/shaunrd0/dot
cd dot/
./setup.sh
mv ~/.bashrc ~/.bashrc.backup
stow . -t ~
```
If you forget to clone recursively

6
setup.sh Executable file
View File

@@ -0,0 +1,6 @@
#!/usr/bin/env bash
git submodule update --init
# Use alias for installing packages so we don't maintain several dependency lists.
. .bash_aliases
,init
go install github.com/arl/gitmux@latest