Update tmux configs
+ Add gitmux config + Use find to locate libclang in .bash_aliases
This commit is contained in:
parent
c2e4e04a18
commit
0fb52c2472
|
@ -1,9 +1,11 @@
|
||||||
# For Rust stuff, uncomment this line
|
# For Rust stuff, uncomment this line
|
||||||
#. "$HOME/.cargo/env"
|
#. "$HOME/.cargo/env"
|
||||||
|
|
||||||
# Alias to restart plasmashell for Kubuntu Plasma session
|
# Clear kscreen cached settings
|
||||||
|
alias kapp-kscreen='rm -rf ~/.local/share/kscreen/*'
|
||||||
|
# Restart plasmashell
|
||||||
alias kapp-plasmashell='sudo pkill plasmashell && plasmashell --replace &> /dev/null &'
|
alias kapp-plasmashell='sudo pkill plasmashell && plasmashell --replace &> /dev/null &'
|
||||||
# Alias to clear swap
|
# Clear swap
|
||||||
alias kapp-swap='sudo swapoff -a && sudo swapon -a'
|
alias kapp-swap='sudo swapoff -a && sudo swapon -a'
|
||||||
alias kapp-git='git config --global user.name "Shaun Reed" && git config --global user.email "shaunrd0@gmail.com"'
|
alias kapp-git='git config --global user.name "Shaun Reed" && git config --global user.email "shaunrd0@gmail.com"'
|
||||||
alias kapp-update='sudo apt update -y && sudo apt upgrade -y && sudo apt upgrade --fix-broken --fix-missing --auto-remove'
|
alias kapp-update='sudo apt update -y && sudo apt upgrade -y && sudo apt upgrade --fix-broken --fix-missing --auto-remove'
|
||||||
|
@ -24,11 +26,11 @@ alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo
|
||||||
export EDITOR="vim"
|
export EDITOR="vim"
|
||||||
export VISUAL="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 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/kapper/.local/bin/
|
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
|
# Example path for autocompletion using libclang-9-dev package, obtained by the following command
|
||||||
# find /usr/ -name libclang.so.1 2>/dev/null
|
command -v clang &>/dev/null && export LIBCLANG="$(find /usr/ -name libclang.so.1 2>/dev/null)"
|
||||||
export LIBCLANG="/usr/lib/llvm-10/lib/libclang.so.1"
|
|
||||||
|
|
||||||
# Source a top-secret alias file
|
# Source a top-secret alias file
|
||||||
if [ -f ~/.bash_secrets ]; then
|
if [ -f ~/.bash_secrets ]; then
|
||||||
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
tmux:
|
||||||
|
symbols:
|
||||||
|
branch: ""
|
||||||
|
hashprefix: ':'
|
||||||
|
ahead: ↑·
|
||||||
|
behind: ↓·
|
||||||
|
staged: '● '
|
||||||
|
conflict: '✖ '
|
||||||
|
modified: '✚ '
|
||||||
|
untracked: '… '
|
||||||
|
stashed: '⚑ '
|
||||||
|
clean: ✓
|
||||||
|
styles:
|
||||||
|
clear: '#[fg=default]'
|
||||||
|
state: '#[fg=red,bold]'
|
||||||
|
branch: '#[fg=white,bold]'
|
||||||
|
remote: '#[fg=cyan]'
|
||||||
|
staged: '#[fg=green,bold]'
|
||||||
|
conflict: '#[fg=red,bold]'
|
||||||
|
modified: '#[fg=red,bold]'
|
||||||
|
untracked: '#[fg=magenta,bold]'
|
||||||
|
stashed: '#[fg=cyan,bold]'
|
||||||
|
clean: '#[fg=green,bold]'
|
||||||
|
divergence: '#[fg=default]'
|
||||||
|
layout: ["#[bold]⎇ ", branch, ' ⥂ ', remote-branch, divergence, ' - ', flags]
|
||||||
|
options:
|
||||||
|
branch_max_len: 30
|
||||||
|
branch_trim: right
|
68
.tmux.conf
68
.tmux.conf
|
@ -34,19 +34,16 @@ bind -T copy-mode TripleClick1Pane select-pane \; send -X select-line \; send
|
||||||
bind -T copy-mode-vi 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 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"
|
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
|
set-option -s set-clipboard external
|
||||||
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xclip -selection clipboard -i"
|
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xclip -selection clipboard -i"
|
||||||
|
|
||||||
# remap shortcut prefix from 'C-b' to 'C-z'
|
# Remap shortcut prefix from 'C-b' to 'C-z'
|
||||||
unbind C-b
|
#unbind C-b
|
||||||
set-option -g prefix C-z
|
#set-option -g prefix C-z
|
||||||
bind-key C-z send-prefix
|
#bind-key C-z send-prefix
|
||||||
|
set-option -g prefix C-b
|
||||||
|
bind-key C-b send-prefix
|
||||||
|
|
||||||
# Reload tmux.conf in this session
|
# Reload tmux.conf in this session
|
||||||
bind r source-file ~/.tmux.conf
|
bind r source-file ~/.tmux.conf
|
||||||
|
@ -60,21 +57,15 @@ bind -n M-Right select-pane -R
|
||||||
bind -n M-Up select-pane -U
|
bind -n M-Up select-pane -U
|
||||||
bind -n M-Down select-pane -D
|
bind -n M-Down select-pane -D
|
||||||
|
|
||||||
set-option -g status-position top
|
|
||||||
# Can't use theme plugin without risk of repo update overwriting data?
|
# Can't use theme plugin without risk of repo update overwriting data?
|
||||||
#source-file "${HOME}/.tmux-themepack/powerline/double/green.tmuxtheme"
|
#source-file "${HOME}/.tmux-themepack/powerline/double/green.tmuxtheme"
|
||||||
|
|
||||||
|
set-option -g status-position top
|
||||||
# Status update interval
|
# Status update interval
|
||||||
set -g status-interval 1
|
set -g status-interval 1
|
||||||
|
|
||||||
# Basic status bar colors
|
# Basic status bar colors
|
||||||
set -g status-style fg=colour240,bg=colour233
|
set -g status-style fg=colour240,bg=colour233
|
||||||
|
|
||||||
#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] #I:#P #[fg=colour235,bg=colour208]#[fg=colour240,bg=colour208] #{git_remote} #{git_flags} #[fg=colour208,bg=colour233,nobold]"
|
|
||||||
|
|
||||||
# Tmux Git
|
|
||||||
#let -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] #I:#P #[fg=colour235,bg=colour208]#[fg=colour240,bg=colour208] #{git_remote} #{git_flags} #[fg=colour208,bg=colour233,nobold]"
|
|
||||||
|
|
||||||
# Left side of status bar
|
# Left side of status bar
|
||||||
set -g status-left-style bg=colour233,fg=colour243
|
set -g status-left-style bg=colour233,fg=colour243
|
||||||
set -g status-left-length 40
|
set -g status-left-length 40
|
||||||
|
@ -84,78 +75,55 @@ set -g status-left "#[fg=colour233,bg=colour100,bold] #S #[fg=colour100,bg=colou
|
||||||
|
|
||||||
# Right side of status bar
|
# Right side of status bar
|
||||||
set -g status-right-style bg=colour233,fg=colour243
|
set -g status-right-style bg=colour233,fg=colour243
|
||||||
set -g status-right-length 150
|
set -g status-right-length 100
|
||||||
# Hide right bar entirely
|
|
||||||
#set -g status-right ""
|
|
||||||
|
|
||||||
# Note: Powerline font requires alternate of bold on right side
|
# Note: Powerline font requires alternate of bold on right side
|
||||||
# Corrects gap on right of character that reveals BG color
|
# Corrects gap on right of character that reveals BG color
|
||||||
#+ Font: Powerline Consolas
|
#+ Font: Powerline Consolas
|
||||||
#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] #H "
|
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`) "
|
||||||
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] #(/home/kapper/go/bin/gitux #{pane_current_path}) "
|
|
||||||
|
|
||||||
# Simple Git
|
# Set gitmux to appear in center of tmux status bar
|
||||||
#set -g status-right "#[fg=colour235,bg=colour233] #{simple_git_status} #[fg=colour240,bg=colour235] %H:%M:%S #[fg=colour240,bg=colour235]#[fg=colour233,bg=colour240] %d-%b-%y #[fg=colour100,bg=colour240]#[fg=colour233,bg=colour100,bold] #H "
|
run 'bash -c "if command -v $HOME/go/bin/gitmux &>/dev/null; then test -f $HOME/.gitmux.conf || $HOME/go/bin/gitmux -printcfg > $HOME/.gitmux.conf; fi"'
|
||||||
|
set -g window-status-current-format "#($HOME/go/bin/gitmux -cfg $HOME/.gitmux.conf \"#{pane_current_path}\")"
|
||||||
# Tmux Git
|
# Or if you don't want gitmux
|
||||||
#set -g status-right "#[fg=colour208,bg=colour233]#[fg=colour235,bg=colour208] #{git_upstream} #{git_branch} #[fg=colour240,bg=colour235] %H:%M:%S #[fg=colour240,bg=colour235]#[fg=colour233,bg=colour240] %d-%b-%y #[fg=colour100,bg=colour240]#[fg=colour233,bg=colour100,bold] #H "
|
|
||||||
|
|
||||||
# Window status
|
|
||||||
set -g window-status-format '#(/home/kapper/go/bin/gitmux #{pane_current_path})'
|
|
||||||
# set -g window-status-format " #I:#W#F (TMUX OTHER STATUS) #(pwd | sed -e "s|.*/\(.*/.*\)|\1|") "
|
|
||||||
set -g window-status-current-format '#(/home/$USER/go/bin/gitmux #{pane_current_path})'
|
|
||||||
#set -g window-status-current-format "#[fg=colour255,bg=colour233]#[fg=colour100,nobold] #(whoami)@#H #[fg=colour255,bg=colour233,nobold]"
|
#set -g window-status-current-format "#[fg=colour255,bg=colour233]#[fg=colour100,nobold] #(whoami)@#H #[fg=colour255,bg=colour233,nobold]"
|
||||||
# #{pane_current_path}
|
|
||||||
|
|
||||||
# Current window status
|
# Current window status
|
||||||
set -g window-status-current-style bg=colour233,fg=colour100
|
set -g window-status-current-style bg=colour233,fg=colour100
|
||||||
|
|
||||||
# Window with activity status
|
# Window with activity status
|
||||||
set -g window-status-activity-style bg=colour233,fg=colour245
|
set -g window-status-activity-style bg=colour233,fg=colour245
|
||||||
|
|
||||||
# Window separator
|
# Window separator
|
||||||
set -g window-status-separator ""
|
set -g window-status-separator ""
|
||||||
|
|
||||||
# Window status alignment
|
# Window status alignment
|
||||||
set -g status-justify centre
|
set -g status-justify centre
|
||||||
|
|
||||||
# Pane border
|
# Pane border
|
||||||
set -g pane-border-style bg=default,fg=colour238
|
set -g pane-border-style bg=default,fg=colour238
|
||||||
|
|
||||||
# Active pane border
|
# Active pane border
|
||||||
set -g pane-active-border-style bg=default,fg=colour100
|
set -g pane-active-border-style bg=default,fg=colour100
|
||||||
|
|
||||||
# Pane number indicator
|
# Pane number indicator
|
||||||
set -g display-panes-colour colour233
|
set -g display-panes-colour colour233
|
||||||
set -g display-panes-active-colour colour245
|
set -g display-panes-active-colour colour245
|
||||||
|
|
||||||
# Clock mode
|
# Clock mode
|
||||||
set -g clock-mode-colour colour100
|
set -g clock-mode-colour colour100
|
||||||
set -g clock-mode-style 24
|
set -g clock-mode-style 24
|
||||||
|
|
||||||
# Message
|
# Message
|
||||||
set -g message-style bg=colour100,fg=black
|
set -g message-style bg=colour100,fg=black
|
||||||
|
|
||||||
# Command message
|
# Command message
|
||||||
set -g message-command-style bg=colour233,fg=black
|
set -g message-command-style bg=colour233,fg=black
|
||||||
|
|
||||||
# Tmux Git status bar settings
|
|
||||||
# (Un)comment source-file to enable / disable
|
|
||||||
# source-file "$HOME/.tmux-gitbar/tmux-gitbar.tmux"
|
|
||||||
set -g default-terminal "screen-256color"
|
set -g default-terminal "screen-256color"
|
||||||
|
|
||||||
# Mode
|
# Mode
|
||||||
set -g mode-style bg=colour100,fg=colour235
|
set -g mode-style bg=colour100,fg=colour235
|
||||||
|
|
||||||
# List of plugins and their settings
|
# List of plugins and their settings
|
||||||
set -g @plugin 'tmux-plugins/tpm'
|
set -g @plugin 'tmux-plugins/tpm'
|
||||||
|
|
||||||
set -g @plugin 'nhdaly/tmux-better-mouse-mode'
|
set -g @plugin 'nhdaly/tmux-better-mouse-mode'
|
||||||
set -g @scroll-speed-num-lines-per-scroll 2
|
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'
|
||||||
|
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 -g @plugin 'tmux-plugins/tmux-sensible'
|
#set -g @plugin 'tmux-plugins/tmux-sensible'
|
||||||
#set -g @plugin 'kristijanhusak/tmux-simple-git-status'
|
#set -g @plugin 'kristijanhusak/tmux-simple-git-status'
|
||||||
|
|
||||||
# Other examples:
|
# Other examples:
|
||||||
# set -g @plugin 'github_username/plugin_name'
|
# set -g @plugin 'github_username/plugin_name'
|
||||||
# set -g @plugin 'git@github.com/user/plugin'
|
# set -g @plugin 'git@github.com/user/plugin'
|
||||||
|
|
15
.vimrc
15
.vimrc
|
@ -18,7 +18,8 @@ set undofile
|
||||||
" Combine vim clipboard with global clipboard buffer
|
" Combine vim clipboard with global clipboard buffer
|
||||||
" Allows using y and p to copy into CTRL-C buffer, vice versa
|
" Allows using y and p to copy into CTRL-C buffer, vice versa
|
||||||
" :help 'clipboard'
|
" :help 'clipboard'
|
||||||
set clipboard+=unnamed
|
set clipboard=unnamed
|
||||||
|
set clipboard+=unnamedplus
|
||||||
|
|
||||||
" Allows true colors in vim (> 8 bit colors)
|
" Allows true colors in vim (> 8 bit colors)
|
||||||
" :help termguicolors
|
" :help termguicolors
|
||||||
|
@ -28,8 +29,9 @@ set clipboard+=unnamed
|
||||||
" :help autocmd
|
" :help autocmd
|
||||||
"" autocmd FileType yaml set tabstop=2 shiftwidth=2
|
"" autocmd FileType yaml set tabstop=2 shiftwidth=2
|
||||||
|
|
||||||
" Highlight column 80 in c and cpp files
|
" Highlight characters past column N in source files based on file type
|
||||||
autocmd FileType cpp,c set colorcolumn=80
|
autocmd FileType cpp,c match ErrorMsg '\%>80v.\+'
|
||||||
|
autocmd FileType cs match ErrorMsg '\%>120v.\+'
|
||||||
|
|
||||||
" Define function in vim to remove whitespace
|
" Define function in vim to remove whitespace
|
||||||
fun! TrimWhitespace()
|
fun! TrimWhitespace()
|
||||||
|
@ -38,8 +40,9 @@ fun! TrimWhitespace()
|
||||||
call winrestview(l:save)
|
call winrestview(l:save)
|
||||||
endfun
|
endfun
|
||||||
"Call this on every attempt to save a file of types defined below..
|
"Call this on every attempt to save a file of types defined below..
|
||||||
autocmd BufWritePre *.cpp,*.h,*.c,*.php :call TrimWhitespace()
|
autocmd BufWritePre *.cpp,*.h,*.c,*.php,*.cs,*.yml,*.txt,*.md :call TrimWhitespace()
|
||||||
""autocmd BufWritePre *.cpp,*.h,*.c,*.php :%s/\s\+$//ge
|
""autocmd BufWritePre *.cpp,*.h,*.c,*.php :%s/\s\+$//ge
|
||||||
|
|
||||||
" Set terminal title when opening file
|
" Set terminal title when opening file
|
||||||
"" autocmd BufEnter * let &titlestring = ' ' . expand("%:t")
|
"" autocmd BufEnter * let &titlestring = ' ' . expand("%:t")
|
||||||
"" set title
|
"" set title
|
||||||
|
@ -86,8 +89,8 @@ nnoremap <C-e> <C-w>
|
||||||
|
|
||||||
" Build and run keybinds
|
" Build and run keybinds
|
||||||
"" nnoremap <C-b> :!make -C build/
|
"" nnoremap <C-b> :!make -C build/
|
||||||
nnoremap <C-b> :!cmake -S . -B ./build/ && cmake --build ./build
|
"nnoremap <C-b> :!cmake -S . -B ./build/ && cmake --build ./build
|
||||||
nnoremap <C-d> :!./build/scrap
|
"nnoremap <C-d> :!./build/scrap
|
||||||
|
|
||||||
" Vim Plugin Settings
|
" Vim Plugin Settings
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# Headless
|
# Headless
|
||||||
|
|
||||||
Dotfiles configurations for headless Ubuntu 20.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 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.
|
||||||
|
|
||||||
Once installed, editing source code in vim supports features displayed in the screenshot below
|
Once installed, editing source code in vim supports features displayed in the screenshot below
|
||||||
|
|
||||||
|
@ -11,6 +11,7 @@ Once installed, editing source code in vim supports features displayed in the sc
|
||||||
Easiest installation is to clone repository into home directory -
|
Easiest installation is to clone repository into home directory -
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
sudo apt install vim xsel xclip tmux
|
||||||
git clone --recursive https://github.com/shaunrd0/dot ~/dot
|
git clone --recursive https://github.com/shaunrd0/dot ~/dot
|
||||||
cd ~/dot/
|
cd ~/dot/
|
||||||
stow --adopt .
|
stow --adopt .
|
||||||
|
|
Loading…
Reference in New Issue