Updated dotfiles
This commit is contained in:
parent
ff31fd3bea
commit
c1896bf949
8 changed files with 1183 additions and 1 deletions
147
bash/.bashrc
Normal file
147
bash/.bashrc
Normal file
|
|
@ -0,0 +1,147 @@
|
||||||
|
# ~/.bashrc: executed by bash(1) for non-login shells.
|
||||||
|
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
|
||||||
|
# for examples
|
||||||
|
|
||||||
|
# If not running interactively, don't do anything
|
||||||
|
case $- in
|
||||||
|
*i*) ;;
|
||||||
|
*) return;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# don't put duplicate lines or lines starting with space in the history.
|
||||||
|
# See bash(1) for more options
|
||||||
|
HISTCONTROL=ignoreboth
|
||||||
|
|
||||||
|
# append to the history file, don't overwrite it
|
||||||
|
shopt -s histappend
|
||||||
|
|
||||||
|
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
|
||||||
|
HISTSIZE=1000
|
||||||
|
HISTFILESIZE=2000
|
||||||
|
|
||||||
|
# check the window size after each command and, if necessary,
|
||||||
|
# update the values of LINES and COLUMNS.
|
||||||
|
shopt -s checkwinsize
|
||||||
|
|
||||||
|
# If set, the pattern "**" used in a pathname expansion context will
|
||||||
|
# match all files and zero or more directories and subdirectories.
|
||||||
|
#shopt -s globstar
|
||||||
|
|
||||||
|
# make less more friendly for non-text input files, see lesspipe(1)
|
||||||
|
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
|
||||||
|
|
||||||
|
# set variable identifying the chroot you work in (used in the prompt below)
|
||||||
|
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
|
||||||
|
debian_chroot=$(cat /etc/debian_chroot)
|
||||||
|
fi
|
||||||
|
|
||||||
|
# set a fancy prompt (non-color, unless we know we "want" color)
|
||||||
|
case "$TERM" in
|
||||||
|
xterm-color|*-256color) color_prompt=yes;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# uncomment for a colored prompt, if the terminal has the capability; turned
|
||||||
|
# off by default to not distract the user: the focus in a terminal window
|
||||||
|
# should be on the output of commands, not on the prompt
|
||||||
|
#force_color_prompt=yes
|
||||||
|
|
||||||
|
if [ -n "$force_color_prompt" ]; then
|
||||||
|
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
|
||||||
|
# We have color support; assume it's compliant with Ecma-48
|
||||||
|
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
|
||||||
|
# a case would tend to support setf rather than setaf.)
|
||||||
|
color_prompt=yes
|
||||||
|
else
|
||||||
|
color_prompt=
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$color_prompt" = yes ]; then
|
||||||
|
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
|
||||||
|
else
|
||||||
|
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
|
||||||
|
fi
|
||||||
|
unset color_prompt force_color_prompt
|
||||||
|
|
||||||
|
# If this is an xterm set the title to user@host:dir
|
||||||
|
case "$TERM" in
|
||||||
|
xterm*|rxvt*)
|
||||||
|
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# enable color support of ls and also add handy aliases
|
||||||
|
if [ -x /usr/bin/dircolors ]; then
|
||||||
|
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
|
||||||
|
alias ls='ls --color=auto'
|
||||||
|
#alias dir='dir --color=auto'
|
||||||
|
#alias vdir='vdir --color=auto'
|
||||||
|
|
||||||
|
alias grep='grep --color=auto'
|
||||||
|
alias fgrep='fgrep --color=auto'
|
||||||
|
alias egrep='egrep --color=auto'
|
||||||
|
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'
|
||||||
|
|
||||||
|
# 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$//'\'')"'
|
||||||
|
|
||||||
|
# Alias definitions.
|
||||||
|
# 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
|
||||||
|
|
||||||
|
# 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).
|
||||||
|
if ! shopt -oq posix; then
|
||||||
|
if [ -f /usr/share/bash-completion/bash_completion ]; then
|
||||||
|
. /usr/share/bash-completion/bash_completion
|
||||||
|
elif [ -f /etc/bash_completion ]; then
|
||||||
|
. /etc/bash_completion
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
alias a='/home/e/arsenal/run -t'
|
||||||
|
|
||||||
|
# Added by LM Studio CLI (lms)
|
||||||
|
export PATH="$PATH:/home/e/.cache/lm-studio/bin"
|
||||||
|
export PATH="$PATH:/home/$USER/go/bin"
|
||||||
|
|
||||||
|
|
||||||
|
# Generated for pdtm. Do not edit.
|
||||||
|
export PATH=$PATH:/home/e/.pdtm/go/bin
|
||||||
|
|
||||||
|
export PATH=$PATH=/home/e/.local/bin:/home/e/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/go/bin:/usr/local/go/bin:/home/e/:/home/e/.cache/lm-studio/bin:/home/e/.cache/lm-studio/bin:/home/e/go/bin:/usr/local/go/bin:/home/e/.cache/lm-studio/bin:/home/e/go/bin:/home/e/.pdtm/go/bin:/usr/local/go/bin:/home/e/:/home/e/.cache/lm-studio/bin
|
||||||
|
|
||||||
|
# >>> conda initialize >>>
|
||||||
|
# !! Contents within this block are managed by 'conda init' !!
|
||||||
|
__conda_setup="$('/home/e/miniconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
eval "$__conda_setup"
|
||||||
|
else
|
||||||
|
if [ -f "/home/e/miniconda3/etc/profile.d/conda.sh" ]; then
|
||||||
|
. "/home/e/miniconda3/etc/profile.d/conda.sh"
|
||||||
|
else
|
||||||
|
export PATH="/home/e/miniconda3/bin:$PATH"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
unset __conda_setup
|
||||||
|
# <<< conda initialize <<<
|
||||||
|
|
||||||
|
. "$HOME/.cargo/env"
|
||||||
|
|
||||||
|
[ ! -f "$HOME/.x-cmd.root/X" ] || . "$HOME/.x-cmd.root/X" # boot up x-cmd.
|
||||||
8
git/.gitconfig
Normal file
8
git/.gitconfig
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
[user]
|
||||||
|
name = rpriven
|
||||||
|
email = rob.pratt@tutanota.com
|
||||||
|
[init]
|
||||||
|
defaultBranch = main
|
||||||
|
|
||||||
|
[core]
|
||||||
|
editor = nvim
|
||||||
74
omp/zen.toml
Normal file
74
omp/zen.toml
Normal file
|
|
@ -0,0 +1,74 @@
|
||||||
|
#:schema https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json
|
||||||
|
|
||||||
|
version = 2
|
||||||
|
final_space = true
|
||||||
|
console_title_template = '{{ .Shell }} in {{ .Folder }}'
|
||||||
|
|
||||||
|
[[blocks]]
|
||||||
|
type = 'prompt'
|
||||||
|
alignment = 'left'
|
||||||
|
newline = true
|
||||||
|
|
||||||
|
[[blocks.segments]]
|
||||||
|
type = 'path'
|
||||||
|
style = 'plain'
|
||||||
|
background = 'transparent'
|
||||||
|
foreground = 'blue'
|
||||||
|
template = '{{ .Path }}'
|
||||||
|
|
||||||
|
[blocks.segments.properties]
|
||||||
|
style = 'full'
|
||||||
|
|
||||||
|
[[blocks.segments]]
|
||||||
|
type = 'git'
|
||||||
|
style = 'plain'
|
||||||
|
foreground = 'p:grey'
|
||||||
|
background = 'transparent'
|
||||||
|
template = ' {{ .HEAD }}{{ if or (.Working.Changed) (.Staging.Changed) }}*{{ end }} <cyan>{{ if gt .Behind 0 }}⇣{{ end }}{{ if gt .Ahead 0 }}⇡{{ end }}</>'
|
||||||
|
|
||||||
|
[blocks.segments.properties]
|
||||||
|
branch_icon = ''
|
||||||
|
commit_icon = '@'
|
||||||
|
fetch_status = true
|
||||||
|
|
||||||
|
[[blocks]]
|
||||||
|
type = 'rprompt'
|
||||||
|
overflow = 'hidden'
|
||||||
|
|
||||||
|
[[blocks.segments]]
|
||||||
|
type = 'executiontime'
|
||||||
|
style = 'plain'
|
||||||
|
foreground = 'yellow'
|
||||||
|
background = 'transparent'
|
||||||
|
template = '{{ .FormattedMs }}'
|
||||||
|
|
||||||
|
[blocks.segments.properties]
|
||||||
|
threshold = 5000
|
||||||
|
|
||||||
|
[[blocks]]
|
||||||
|
type = 'prompt'
|
||||||
|
alignment = 'left'
|
||||||
|
newline = true
|
||||||
|
|
||||||
|
[[blocks.segments]]
|
||||||
|
type = 'text'
|
||||||
|
style = 'plain'
|
||||||
|
foreground_templates = [
|
||||||
|
"{{if gt .Code 0}}red{{end}}",
|
||||||
|
"{{if eq .Code 0}}magenta{{end}}",
|
||||||
|
]
|
||||||
|
background = 'transparent'
|
||||||
|
template = '❯'
|
||||||
|
|
||||||
|
[transient_prompt]
|
||||||
|
foreground_templates = [
|
||||||
|
"{{if gt .Code 0}}red{{end}}",
|
||||||
|
"{{if eq .Code 0}}magenta{{end}}",
|
||||||
|
]
|
||||||
|
background = 'transparent'
|
||||||
|
template = '❯ '
|
||||||
|
|
||||||
|
[secondary_prompt]
|
||||||
|
foreground = 'magenta'
|
||||||
|
background = 'transparent'
|
||||||
|
template = '❯❯ '
|
||||||
690
tmux/.tmux.conf.local
Normal file
690
tmux/.tmux.conf.local
Normal file
|
|
@ -0,0 +1,690 @@
|
||||||
|
# : << EOF
|
||||||
|
# Oh my tmux!
|
||||||
|
# 💛🩷💙🖤❤️🤍
|
||||||
|
# https://github.com/gpakosz/.tmux
|
||||||
|
# (‑●‑●)> dual licensed under the WTFPL v2 license and the MIT license,
|
||||||
|
# without any warranty.
|
||||||
|
# Copyright 2012— Gregory Pakosz (@gpakosz).
|
||||||
|
|
||||||
|
|
||||||
|
# -- bindings ------------------------------------------------------------------
|
||||||
|
|
||||||
|
# preserve tmux stock bindings,
|
||||||
|
# while adding bindings that don't conflict with these stock bindings
|
||||||
|
# /!\ this disables some of Oh my tmux! bindings described in README.md
|
||||||
|
# - true
|
||||||
|
# - false (default)
|
||||||
|
tmux_conf_preserve_stock_bindings=false
|
||||||
|
|
||||||
|
|
||||||
|
# -- session creation ----------------------------------------------------------
|
||||||
|
|
||||||
|
# prompt for session name when creating a new session, possible values are:
|
||||||
|
# - true
|
||||||
|
# - false (default)
|
||||||
|
# - disabled (do not modify new-session bindings)
|
||||||
|
tmux_conf_new_session_prompt=false
|
||||||
|
|
||||||
|
# new session retains current path, possible values are:
|
||||||
|
# - true
|
||||||
|
# - false (default)
|
||||||
|
# - disabled (do not modify new-session bindings)
|
||||||
|
tmux_conf_new_session_retain_current_path=false
|
||||||
|
|
||||||
|
|
||||||
|
# -- windows & pane creation ---------------------------------------------------
|
||||||
|
|
||||||
|
# new window retains current path, possible values are:
|
||||||
|
# - true
|
||||||
|
# - false (default)
|
||||||
|
# - disabled (do not modify new-window bindings)
|
||||||
|
tmux_conf_new_window_retain_current_path=false
|
||||||
|
|
||||||
|
# new window tries to reconnect ssh sessions, possible values are:
|
||||||
|
# - true
|
||||||
|
# - false (default)
|
||||||
|
# - disabled (do not modify new-window bindings)
|
||||||
|
tmux_conf_new_window_reconnect_ssh=false
|
||||||
|
|
||||||
|
# new pane retains current path, possible values are:
|
||||||
|
# - true (default)
|
||||||
|
# - false
|
||||||
|
# - disabled (do not modify split-window bindings)
|
||||||
|
tmux_conf_new_pane_retain_current_path=true
|
||||||
|
|
||||||
|
# new pane tries to reconnect ssh sessions, possible values are:
|
||||||
|
# - true
|
||||||
|
# - false (default)
|
||||||
|
# - disabled (do not modify split-window bindings)
|
||||||
|
tmux_conf_new_pane_reconnect_ssh=false
|
||||||
|
|
||||||
|
|
||||||
|
# -- display -------------------------------------------------------------------
|
||||||
|
|
||||||
|
# RGB 24-bit colour support, possible values are:
|
||||||
|
# - true
|
||||||
|
# - false
|
||||||
|
# - auto (default)
|
||||||
|
#
|
||||||
|
# automatic detection relies on the COLORTERM environment variable being defined
|
||||||
|
# to 'truecolor' or '24bit' or '$ tput colors' answering '16777216'
|
||||||
|
# see https://github.com/termstandard/colors
|
||||||
|
tmux_conf_24b_colour=auto
|
||||||
|
|
||||||
|
|
||||||
|
# -- theming -------------------------------------------------------------------
|
||||||
|
|
||||||
|
# enable or disable theming:
|
||||||
|
# - enabled (default)
|
||||||
|
# - disabled
|
||||||
|
# when disabled, all tmux_conf_theme_xxx variables are ignored except:
|
||||||
|
# - tmux_conf_theme_pairing
|
||||||
|
# - tmux_conf_theme_prefix
|
||||||
|
# - tmux_conf_theme_mouse
|
||||||
|
# - tmux_conf_theme_root
|
||||||
|
# - tmux_conf_theme_synchronized
|
||||||
|
tmux_conf_theme=enabled
|
||||||
|
|
||||||
|
# default theme
|
||||||
|
tmux_conf_theme_colour_1="#080808" # dark gray
|
||||||
|
tmux_conf_theme_colour_2="#303030" # gray
|
||||||
|
tmux_conf_theme_colour_3="#8a8a8a" # light gray
|
||||||
|
tmux_conf_theme_colour_4="#00afff" # light blue
|
||||||
|
tmux_conf_theme_colour_5="#ffff00" # yellow
|
||||||
|
tmux_conf_theme_colour_6="#080808" # dark gray
|
||||||
|
tmux_conf_theme_colour_7="#e4e4e4" # white
|
||||||
|
tmux_conf_theme_colour_8="#080808" # dark gray
|
||||||
|
tmux_conf_theme_colour_9="#ffff00" # yellow
|
||||||
|
tmux_conf_theme_colour_10="#ff00af" # pink
|
||||||
|
tmux_conf_theme_colour_11="#5fff00" # green
|
||||||
|
tmux_conf_theme_colour_12="#8a8a8a" # light gray
|
||||||
|
tmux_conf_theme_colour_13="#e4e4e4" # white
|
||||||
|
tmux_conf_theme_colour_14="#080808" # dark gray
|
||||||
|
tmux_conf_theme_colour_15="#080808" # dark gray
|
||||||
|
tmux_conf_theme_colour_16="#d70000" # red
|
||||||
|
tmux_conf_theme_colour_17="#e4e4e4" # white
|
||||||
|
|
||||||
|
# default theme (ansi)
|
||||||
|
#tmux_conf_theme_colour_1="colour0"
|
||||||
|
#tmux_conf_theme_colour_2="colour8"
|
||||||
|
#tmux_conf_theme_colour_3="colour8"
|
||||||
|
#tmux_conf_theme_colour_4="colour14"
|
||||||
|
#tmux_conf_theme_colour_5="colour11"
|
||||||
|
#tmux_conf_theme_colour_6="colour0"
|
||||||
|
#tmux_conf_theme_colour_7="colour15"
|
||||||
|
#tmux_conf_theme_colour_8="colour0"
|
||||||
|
#tmux_conf_theme_colour_9="colour11"
|
||||||
|
#tmux_conf_theme_colour_10="colour13"
|
||||||
|
#tmux_conf_theme_colour_11="colour10"
|
||||||
|
#tmux_conf_theme_colour_12="colour8"
|
||||||
|
#tmux_conf_theme_colour_13="colour15"
|
||||||
|
#tmux_conf_theme_colour_14="colour0"
|
||||||
|
#tmux_conf_theme_colour_15="colour0"
|
||||||
|
#tmux_conf_theme_colour_16="colour1"
|
||||||
|
#tmux_conf_theme_colour_17="colour15"
|
||||||
|
|
||||||
|
# window style
|
||||||
|
tmux_conf_theme_window_fg="default"
|
||||||
|
tmux_conf_theme_window_bg="default"
|
||||||
|
|
||||||
|
# highlight focused pane, possible values are:
|
||||||
|
# - true
|
||||||
|
# - false (default)
|
||||||
|
tmux_conf_theme_highlight_focused_pane=false
|
||||||
|
|
||||||
|
# focused pane colours:
|
||||||
|
tmux_conf_theme_focused_pane_bg="$tmux_conf_theme_colour_2"
|
||||||
|
|
||||||
|
# pane border style, possible values are:
|
||||||
|
# - thin (default)
|
||||||
|
# - fat
|
||||||
|
tmux_conf_theme_pane_border_style=thin
|
||||||
|
|
||||||
|
# pane borders colours:
|
||||||
|
tmux_conf_theme_pane_border="$tmux_conf_theme_colour_2"
|
||||||
|
tmux_conf_theme_pane_active_border="$tmux_conf_theme_colour_4"
|
||||||
|
%if #{>=:#{version},3.2}
|
||||||
|
tmux_conf_theme_pane_active_border="#{?pane_in_mode,$tmux_conf_theme_colour_9,#{?synchronize-panes,$tmux_conf_theme_colour_16,$tmux_conf_theme_colour_4}}"
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# pane indicator colours (when you hit <prefix> + q)
|
||||||
|
tmux_conf_theme_pane_indicator="$tmux_conf_theme_colour_4"
|
||||||
|
tmux_conf_theme_pane_active_indicator="$tmux_conf_theme_colour_4"
|
||||||
|
|
||||||
|
# status line style
|
||||||
|
tmux_conf_theme_message_fg="$tmux_conf_theme_colour_1"
|
||||||
|
tmux_conf_theme_message_bg="$tmux_conf_theme_colour_5"
|
||||||
|
tmux_conf_theme_message_attr="bold"
|
||||||
|
|
||||||
|
# status line command style (<prefix> : Escape)
|
||||||
|
tmux_conf_theme_message_command_fg="$tmux_conf_theme_colour_5"
|
||||||
|
tmux_conf_theme_message_command_bg="$tmux_conf_theme_colour_1"
|
||||||
|
tmux_conf_theme_message_command_attr="bold"
|
||||||
|
|
||||||
|
# window modes style
|
||||||
|
tmux_conf_theme_mode_fg="$tmux_conf_theme_colour_1"
|
||||||
|
tmux_conf_theme_mode_bg="$tmux_conf_theme_colour_5"
|
||||||
|
tmux_conf_theme_mode_attr="bold"
|
||||||
|
|
||||||
|
# status line style
|
||||||
|
tmux_conf_theme_status_fg="$tmux_conf_theme_colour_3"
|
||||||
|
tmux_conf_theme_status_bg="$tmux_conf_theme_colour_1"
|
||||||
|
tmux_conf_theme_status_attr="none"
|
||||||
|
|
||||||
|
# terminal title
|
||||||
|
# - built-in variables are:
|
||||||
|
# - #{circled_window_index}
|
||||||
|
# - #{circled_session_name}
|
||||||
|
# - #{hostname}
|
||||||
|
# - #{hostname_ssh}
|
||||||
|
# - #{hostname_full}
|
||||||
|
# - #{hostname_full_ssh}
|
||||||
|
# - #{username}
|
||||||
|
# - #{username_ssh}
|
||||||
|
tmux_conf_theme_terminal_title="#h ❐ #S ● #I #W"
|
||||||
|
|
||||||
|
# window status style
|
||||||
|
# - built-in variables are:
|
||||||
|
# - #{circled_window_index}
|
||||||
|
# - #{circled_session_name}
|
||||||
|
# - #{hostname}
|
||||||
|
# - #{hostname_ssh}
|
||||||
|
# - #{hostname_full}
|
||||||
|
# - #{hostname_full_ssh}
|
||||||
|
# - #{username}
|
||||||
|
# - #{username_ssh}
|
||||||
|
tmux_conf_theme_window_status_fg="$tmux_conf_theme_colour_3"
|
||||||
|
tmux_conf_theme_window_status_bg="$tmux_conf_theme_colour_1"
|
||||||
|
tmux_conf_theme_window_status_attr="none"
|
||||||
|
tmux_conf_theme_window_status_format="#I #W#{?#{||:#{window_bell_flag},#{window_zoomed_flag}}, ,}#{?window_bell_flag,!,}#{?window_zoomed_flag,Z,}"
|
||||||
|
#tmux_conf_theme_window_status_format="#{circled_window_index} #W#{?#{||:#{window_bell_flag},#{window_zoomed_flag}}, ,}#{?window_bell_flag,!,}#{?window_zoomed_flag,Z,}"
|
||||||
|
#tmux_conf_theme_window_status_format="#I #W#{?#{||:#{window_bell_flag},#{window_zoomed_flag}}, ,}#{?window_bell_flag,🔔,}#{?window_zoomed_flag,🔍,}"
|
||||||
|
|
||||||
|
# window current status style
|
||||||
|
# - built-in variables are:
|
||||||
|
# - #{circled_window_index}
|
||||||
|
# - #{circled_session_name}
|
||||||
|
# - #{hostname}
|
||||||
|
# - #{hostname_ssh}
|
||||||
|
# - #{hostname_full}
|
||||||
|
# - #{hostname_full_ssh}
|
||||||
|
# - #{username}
|
||||||
|
# - #{username_ssh}
|
||||||
|
tmux_conf_theme_window_status_current_fg="$tmux_conf_theme_colour_1"
|
||||||
|
tmux_conf_theme_window_status_current_bg="$tmux_conf_theme_colour_4"
|
||||||
|
tmux_conf_theme_window_status_current_attr="bold"
|
||||||
|
tmux_conf_theme_window_status_current_format="#I #W#{?#{||:#{window_bell_flag},#{window_zoomed_flag}}, ,}#{?window_bell_flag,!,}#{?window_zoomed_flag,Z,}"
|
||||||
|
#tmux_conf_theme_window_status_current_format="#{circled_window_index} #W#{?#{||:#{window_bell_flag},#{window_zoomed_flag}}, ,}#{?window_bell_flag,!,}#{?window_zoomed_flag,Z,}"
|
||||||
|
#tmux_conf_theme_window_status_current_format="#I #W#{?#{||:#{window_bell_flag},#{window_zoomed_flag}}, ,}#{?window_bell_flag,🔔,}#{?window_zoomed_flag,🔍,}"
|
||||||
|
|
||||||
|
# window activity status style
|
||||||
|
tmux_conf_theme_window_status_activity_fg="default"
|
||||||
|
tmux_conf_theme_window_status_activity_bg="default"
|
||||||
|
tmux_conf_theme_window_status_activity_attr="underscore"
|
||||||
|
|
||||||
|
# window bell status style
|
||||||
|
tmux_conf_theme_window_status_bell_fg="$tmux_conf_theme_colour_5"
|
||||||
|
tmux_conf_theme_window_status_bell_bg="default"
|
||||||
|
tmux_conf_theme_window_status_bell_attr="blink,bold"
|
||||||
|
|
||||||
|
# window last status style
|
||||||
|
tmux_conf_theme_window_status_last_fg="$tmux_conf_theme_colour_4"
|
||||||
|
tmux_conf_theme_window_status_last_bg="$tmux_conf_theme_colour_2"
|
||||||
|
tmux_conf_theme_window_status_last_attr="none"
|
||||||
|
|
||||||
|
# status left/right sections separators
|
||||||
|
tmux_conf_theme_left_separator_main=""
|
||||||
|
tmux_conf_theme_left_separator_sub="|"
|
||||||
|
tmux_conf_theme_right_separator_main=""
|
||||||
|
tmux_conf_theme_right_separator_sub="|"
|
||||||
|
#tmux_conf_theme_left_separator_main='\uE0B0' # /!\ you don't need to install Powerline
|
||||||
|
#tmux_conf_theme_left_separator_sub='\uE0B1' # you only need fonts patched with
|
||||||
|
#tmux_conf_theme_right_separator_main='\uE0B2' # Powerline symbols or the standalone
|
||||||
|
#tmux_conf_theme_right_separator_sub='\uE0B3' # PowerlineSymbols.otf font, see README.md
|
||||||
|
|
||||||
|
# status left/right content:
|
||||||
|
# - separate main sections with "|"
|
||||||
|
# - separate subsections with ","
|
||||||
|
# - built-in variables are:
|
||||||
|
# - #{battery_bar}
|
||||||
|
# - #{battery_hbar}
|
||||||
|
# - #{battery_percentage}
|
||||||
|
# - #{battery_status}
|
||||||
|
# - #{battery_vbar}
|
||||||
|
# - #{circled_session_name}
|
||||||
|
# - #{hostname_ssh}
|
||||||
|
# - #{hostname}
|
||||||
|
# - #{hostname_full}
|
||||||
|
# - #{hostname_full_ssh}
|
||||||
|
# - #{loadavg}
|
||||||
|
# - #{mouse}
|
||||||
|
# - #{pairing}
|
||||||
|
# - #{prefix}
|
||||||
|
# - #{root}
|
||||||
|
# - #{synchronized}
|
||||||
|
# - #{uptime_y}
|
||||||
|
# - #{uptime_d} (modulo 365 when #{uptime_y} is used)
|
||||||
|
# - #{uptime_h}
|
||||||
|
# - #{uptime_m}
|
||||||
|
# - #{uptime_s}
|
||||||
|
# - #{username}
|
||||||
|
# - #{username_ssh}
|
||||||
|
tmux_conf_theme_status_left=" ❐ #S | ↑#{?uptime_y, #{uptime_y}y,}#{?uptime_d, #{uptime_d}d,}#{?uptime_h, #{uptime_h}h,}#{?uptime_m, #{uptime_m}m,} "
|
||||||
|
#tmux_conf_theme_status_left=" ❐ #S | ↑#{?uptime_y, #{uptime_y}y,}#{?uptime_d, #{uptime_d}d,}#{?uptime_h, #{uptime_h}h,}#{?uptime_m, #{uptime_m}m,} | #{pretty_pane_current_path} "
|
||||||
|
#tmux_conf_theme_status_right=" #{prefix}#{mouse}#{pairing}#{synchronized}#{?battery_status,#{battery_status},}#{?battery_bar, #{battery_bar},}#{?battery_percentage, #{battery_percentage},} , %R , %d %b | #{username}#{root} | #{hostname} "
|
||||||
|
|
||||||
|
#############################
|
||||||
|
# ---- Custom Status Bar ----
|
||||||
|
|
||||||
|
|
||||||
|
# reload for testing
|
||||||
|
# set -g status-interval 1
|
||||||
|
|
||||||
|
#tmux_conf_theme_status_right=" #{prefix_highlight} #{mouse} Online: #{online_status} #{pairing}#{synchronized}#{?battery_status, | #{battery_status},}#{?battery_bar, | #{battery_bar},}#{?battery_percentage, | #{battery_percentage},} | #{kripto} | %R , %d %b #{root}#{?username_ssh, | #{username_ssh},}#{?hostname_ssh, @#{hostname_ssh},} | #{username} | #{hostname} "
|
||||||
|
|
||||||
|
# Shortcuts for readability
|
||||||
|
#btc="#f7931a"
|
||||||
|
#dark="#080808"
|
||||||
|
#light="#e4e4e4"
|
||||||
|
#red="#d70000"
|
||||||
|
#gray="#8a8a8a"
|
||||||
|
#white="#ffffff"
|
||||||
|
#green="#5fff00"
|
||||||
|
#duoblue="#1688f0"
|
||||||
|
|
||||||
|
# left
|
||||||
|
tmux_conf_theme_status_left_fg="$tmux_conf_theme_colour_4,$tmux_conf_theme_colour_11,$tmux_conf_theme_colour_14"
|
||||||
|
tmux_conf_theme_status_left_bg="$tmux_conf_theme_colour_1,$tmux_conf_theme_colour_1,$tmux_conf_theme_colour_0"
|
||||||
|
|
||||||
|
# right
|
||||||
|
tmux_conf_theme_status_right=" #[fg=#00afff,bg=#080808]#{prefix_highlight} #[fg=#00afff,bg=#080808]#{mouse} #[fg=#e4e4e4,bg=#080808]Online: #[fg=#5fff00,bg=#080808]#{online_status} #[fg=#f7931a,bg=#080808] #{kripto} #[fg=#5fff00,bg=#080808]%R #[fg=#e4e4e4,bg=#080808] %a %d %b #[fg=#e4e4e4,bg=#d70000,bold] #{?#{==:#{username},root},!, #{username}} #[fg=#e4e4e4,bg=#d70000,bold]#{?username_ssh, @ #{username_ssh},} #[fg=#080808,bg=#e4e4e4,bold] #{hostname} "
|
||||||
|
#tmux_conf_theme_status_right_attr="bold,bold,bold,bold,bold,bold,bold,bold,bold"
|
||||||
|
|
||||||
|
# tmux_conf_theme_status_right="
|
||||||
|
#[fg=#00afff,bg=#080808]#{prefix_highlight} \
|
||||||
|
#[fg=#00afff,bg=#080808]#{mouse} \
|
||||||
|
#[fg=#e4e4e4,bg=#080808]Online: \
|
||||||
|
#[fg=#5fff00,bg=#080808]#{online_status} \
|
||||||
|
#[fg=#f7931a,bg=#080808]#{kripto} \
|
||||||
|
#[fg=#e4e4e4,bg=#080808]%R \
|
||||||
|
#[fg=#e4e4e4,bg=#080808]%d %b \
|
||||||
|
#[fg=#e4e4e4,bg=#d70000]#{?#{==:#{username},root},!,#{username}} \
|
||||||
|
#[fg=#e4e4e4,bg=#d70000]#{?username_ssh, @#{username_ssh},} \
|
||||||
|
#[fg=#080808,bg=#e4e4e4]#{hostname}"
|
||||||
|
|
||||||
|
|
||||||
|
# Foreground Colors (17 segments, match total items including conditionals)
|
||||||
|
#tmux_conf_theme_status_right_fg="$c_white,$c_white,$c_white,$c_white,$c_white,$c_white,$c_white,$c_white,$c_white,$c_btc,$c_white,$c_white,$c_white,$c_white,$c_white,$c_white,$c_white"
|
||||||
|
|
||||||
|
# Background Colors (same count)
|
||||||
|
#tmux_conf_theme_status_right_bg="$c_black,$c_black,$c_black,$c_black,$c_black,$c_black,$c_black,$c_black,$c_black,$c_black,$c_black,$c_black,$c_black,$c_black,$c_red,$c_white,$c_white"
|
||||||
|
|
||||||
|
|
||||||
|
# ---- End Custom Status Bar ----
|
||||||
|
################################
|
||||||
|
|
||||||
|
# status left style
|
||||||
|
#tmux_conf_theme_status_left_fg="$tmux_conf_theme_colour_6,$tmux_conf_theme_colour_7,$tmux_conf_theme_colour_8"
|
||||||
|
#tmux_conf_theme_status_left_bg="$tmux_conf_theme_colour_9,$tmux_conf_theme_colour_10,$tmux_conf_theme_colour_11"
|
||||||
|
tmux_conf_theme_status_left_attr="bold,none,none"
|
||||||
|
|
||||||
|
# status right style
|
||||||
|
#tmux_conf_theme_status_right_fg="$tmux_conf_theme_colour_12,$tmux_conf_theme_colour_13,$tmux_conf_theme_colour_14"
|
||||||
|
#tmux_conf_theme_status_right_bg="$tmux_conf_theme_colour_15,$tmux_conf_theme_colour_16,$tmux_conf_theme_colour_17"
|
||||||
|
#tmux_conf_theme_status_right_attr="none,none,bold"
|
||||||
|
|
||||||
|
# pairing indicator
|
||||||
|
tmux_conf_theme_pairing="⚇" # U+2687
|
||||||
|
tmux_conf_theme_pairing_fg="none"
|
||||||
|
tmux_conf_theme_pairing_bg="none"
|
||||||
|
tmux_conf_theme_pairing_attr="none"
|
||||||
|
|
||||||
|
# prefix indicator
|
||||||
|
tmux_conf_theme_prefix="⌨" # U+2328
|
||||||
|
tmux_conf_theme_prefix_fg="none"
|
||||||
|
tmux_conf_theme_prefix_bg="none"
|
||||||
|
tmux_conf_theme_prefix_attr="none"
|
||||||
|
|
||||||
|
# mouse indicator
|
||||||
|
tmux_conf_theme_mouse="↗" # U+2197
|
||||||
|
tmux_conf_theme_mouse_fg="none"
|
||||||
|
tmux_conf_theme_mouse_bg="none"
|
||||||
|
tmux_conf_theme_mouse_attr="none"
|
||||||
|
|
||||||
|
# root indicator
|
||||||
|
tmux_conf_theme_root="!"
|
||||||
|
tmux_conf_theme_root_fg="none"
|
||||||
|
tmux_conf_theme_root_bg="none"
|
||||||
|
tmux_conf_theme_root_attr="bold,blink"
|
||||||
|
|
||||||
|
# synchronized indicator
|
||||||
|
tmux_conf_theme_synchronized="⚏" # U+268F
|
||||||
|
tmux_conf_theme_synchronized_fg="none"
|
||||||
|
tmux_conf_theme_synchronized_bg="none"
|
||||||
|
tmux_conf_theme_synchronized_attr="none"
|
||||||
|
|
||||||
|
# battery bar symbols
|
||||||
|
tmux_conf_battery_bar_symbol_full="◼"
|
||||||
|
tmux_conf_battery_bar_symbol_empty="◻"
|
||||||
|
#tmux_conf_battery_bar_symbol_full="♥"
|
||||||
|
#tmux_conf_battery_bar_symbol_empty="·"
|
||||||
|
|
||||||
|
# battery bar length (in number of symbols), possible values are:
|
||||||
|
# - auto
|
||||||
|
# - a number, e.g. 5
|
||||||
|
tmux_conf_battery_bar_length="auto"
|
||||||
|
|
||||||
|
# battery bar palette, possible values are:
|
||||||
|
# - gradient (default)
|
||||||
|
# - heat
|
||||||
|
# - "colour_full_fg,colour_empty_fg,colour_bg"
|
||||||
|
# - gradient(colour_fg_1,colour_fg_2,...,colour_fg_n)
|
||||||
|
tmux_conf_battery_bar_palette="gradient"
|
||||||
|
#tmux_conf_battery_bar_palette="#d70000,#e4e4e4,#000000" # red, white, black
|
||||||
|
#tmux_conf_battery_bar_palette="gradient(#00afff,#47a2ff,#7c91ff,#ac7afb,#d65be2,#e163df,#eb6cdd,#f475db,#ec9ff1,#eac3fe,#efe2ff,#ffffff)"
|
||||||
|
|
||||||
|
# battery hbar palette, possible values are:
|
||||||
|
# - gradient (default)
|
||||||
|
# - heat
|
||||||
|
# - "colour_low,colour_half,colour_full"
|
||||||
|
# - gradient(colour_fg_1,colour_fg_2,...,colour_fg_n)
|
||||||
|
tmux_conf_battery_hbar_palette="gradient"
|
||||||
|
#tmux_conf_battery_hbar_palette="#d70000,#ff5f00,#5fff00" # red, orange, green
|
||||||
|
#tmux_conf_battery_hbar_palette="gradient(#00afff,#47a2ff,#7c91ff,#ac7afb,#d65be2,#e163df,#eb6cdd,#f475db,#ec9ff1,#eac3fe,#efe2ff,#ffffff)"
|
||||||
|
|
||||||
|
# battery vbar palette, possible values are:
|
||||||
|
# - gradient (default)
|
||||||
|
# - heat
|
||||||
|
# - "colour_low,colour_half,colour_full"
|
||||||
|
# - gradient(colour_fg_1,colour_fg_2,...,colour_fg_n)
|
||||||
|
tmux_conf_battery_vbar_palette="gradient"
|
||||||
|
#tmux_conf_battery_vbar_palette="#d70000,#ff5f00,#5fff00" # red, orange, green
|
||||||
|
#tmux_conf_battery_vbar_palette="gradient(#00afff,#47a2ff,#7c91ff,#ac7afb,#d65be2,#e163df,#eb6cdd,#f475db,#ec9ff1,#eac3fe,#efe2ff,#ffffff)"
|
||||||
|
|
||||||
|
# symbols used to indicate whether battery is charging or discharging
|
||||||
|
tmux_conf_battery_status_charging="↑" # U+2191
|
||||||
|
tmux_conf_battery_status_discharging="↓" # U+2193
|
||||||
|
#tmux_conf_battery_status_charging="🔌" # U+1F50C
|
||||||
|
#tmux_conf_battery_status_discharging="🔋" # U+1F50B
|
||||||
|
|
||||||
|
# clock style (when you hit <prefix> + t)
|
||||||
|
# you may want to use %I:%M %p in place of %R in tmux_conf_theme_status_right
|
||||||
|
tmux_conf_theme_clock_colour="$tmux_conf_theme_colour_4"
|
||||||
|
tmux_conf_theme_clock_style="24"
|
||||||
|
|
||||||
|
|
||||||
|
# -- clipboard -----------------------------------------------------------------
|
||||||
|
|
||||||
|
# in copy mode, copying selection also copies to the OS clipboard
|
||||||
|
# - true
|
||||||
|
# - false (default)
|
||||||
|
# - disabled
|
||||||
|
# on Linux, this requires xsel, xclip or wl-copy
|
||||||
|
tmux_conf_copy_to_os_clipboard=false
|
||||||
|
|
||||||
|
|
||||||
|
# -- urlscan -------------------------------------------------------------------
|
||||||
|
|
||||||
|
# options passed to urlscan
|
||||||
|
tmux_conf_urlscan_options="--compact --dedupe"
|
||||||
|
|
||||||
|
|
||||||
|
# -- user customizations -------------------------------------------------------
|
||||||
|
|
||||||
|
# this is the place to override or undo settings
|
||||||
|
|
||||||
|
# increase history size
|
||||||
|
#set -g history-limit 10000
|
||||||
|
|
||||||
|
# start with mouse mode enabled
|
||||||
|
#set -g mouse on
|
||||||
|
|
||||||
|
# force Vi mode
|
||||||
|
# really you should export VISUAL or EDITOR environment variable, see manual
|
||||||
|
#set -g status-keys vi
|
||||||
|
#set -g mode-keys vi
|
||||||
|
|
||||||
|
# replace C-b by C-a instead of using both prefixes
|
||||||
|
# set -gu prefix2
|
||||||
|
# unbind C-a
|
||||||
|
# unbind C-b
|
||||||
|
# set -g prefix C-a
|
||||||
|
# bind C-a send-prefix
|
||||||
|
|
||||||
|
# if you don't want Oh my tmux! to alter a binding or a setting, use #!important
|
||||||
|
# bind c new-window -c '#{pane_current_path}' #!important
|
||||||
|
|
||||||
|
# move status line to top
|
||||||
|
#set -g status-position top
|
||||||
|
|
||||||
|
|
||||||
|
# -- tpm -----------------------------------------------------------------------
|
||||||
|
|
||||||
|
# while I don't use tpm myself, many people requested official support so here
|
||||||
|
# is a seamless integration that automatically installs plugins in parallel
|
||||||
|
|
||||||
|
# whenever a plugin introduces a variable to be used in 'status-left' or
|
||||||
|
# 'status-right', you can use it in 'tmux_conf_theme_status_left' and
|
||||||
|
# 'tmux_conf_theme_status_right' variables.
|
||||||
|
|
||||||
|
# by default, launching tmux will update tpm and all plugins
|
||||||
|
# - true (default)
|
||||||
|
# - false
|
||||||
|
tmux_conf_update_plugins_on_launch=true
|
||||||
|
|
||||||
|
# by default, reloading the configuration will update tpm and all plugins
|
||||||
|
# - true (default)
|
||||||
|
# - false
|
||||||
|
tmux_conf_update_plugins_on_reload=true
|
||||||
|
|
||||||
|
# by default, reloading the configuration will uninstall tpm and plugins when no
|
||||||
|
# plugins are enabled
|
||||||
|
# - true (default)
|
||||||
|
# - false
|
||||||
|
tmux_conf_uninstall_plugins_on_reload=true
|
||||||
|
|
||||||
|
# /!\ the tpm bindings differ slightly from upstream:
|
||||||
|
# - installing plugins: <prefix> + I
|
||||||
|
# - uninstalling plugins: <prefix> + Alt + u
|
||||||
|
# - updating plugins: <prefix> + u
|
||||||
|
|
||||||
|
# /!\ do not add set -g @plugin 'tmux-plugins/tpm'
|
||||||
|
# /!\ do not add run '~/.tmux/plugins/tpm/tpm'
|
||||||
|
|
||||||
|
# to enable a plugin, use the 'set -g @plugin' syntax:
|
||||||
|
# visit https://github.com/tmux-plugins for available plugins
|
||||||
|
#set -g @plugin 'tmux-plugins/tmux-copycat'
|
||||||
|
#set -g @plugin 'tmux-plugins/tmux-cpu'
|
||||||
|
#set -g @plugin 'tmux-plugins/tmux-resurrect'
|
||||||
|
#set -g @plugin 'tmux-plugins/tmux-continuum'
|
||||||
|
#set -g @continuum-restore 'on'
|
||||||
|
|
||||||
|
|
||||||
|
#############################
|
||||||
|
# ---- My Customizations ----
|
||||||
|
|
||||||
|
|
||||||
|
# -- TMUX-RECON .tmux.conf --------------------------------------------------------------------
|
||||||
|
|
||||||
|
# -- general -------------------------------------------------------------------
|
||||||
|
|
||||||
|
setw -g xterm-keys on
|
||||||
|
set -g history-limit 999999
|
||||||
|
|
||||||
|
bind-key -T prefix I refresh-client -S
|
||||||
|
|
||||||
|
|
||||||
|
# -- custom --------------------------------------------------------------------
|
||||||
|
|
||||||
|
setenv -g py3 "python3 -c 'import pty;pty.spawn(\"bin/bash\")'"
|
||||||
|
setenv -g shellexports "export TERM=xterm;stty rows $(tput lines) columns $(tput cols)"
|
||||||
|
|
||||||
|
# stabilize reverse shell
|
||||||
|
bind C-q send $py3 Enter
|
||||||
|
bind -n C-q send C-z "stty raw -echo" Enter fg Enter reset Enter $shellexports Enter
|
||||||
|
|
||||||
|
# This means you just need to hit Ctrl-aqq
|
||||||
|
# Ctrl-aq is the first binding
|
||||||
|
# Ctrl-q is the second part
|
||||||
|
|
||||||
|
# kripto
|
||||||
|
# set -g status-right "#{kripto}"
|
||||||
|
|
||||||
|
set -g @kripto_id "bitcoin"
|
||||||
|
set -g @kripto_currency_symbol " "
|
||||||
|
set -g @kripto_icon "₿ $"
|
||||||
|
set -g @kripto_ttl 150
|
||||||
|
set -g @krypto_round "true"
|
||||||
|
|
||||||
|
# -- display -------------------------------------------------------------------
|
||||||
|
|
||||||
|
set -g status-interval 5 # redraw status line every 5 seconds
|
||||||
|
set -g visual-activity on
|
||||||
|
|
||||||
|
# floax
|
||||||
|
|
||||||
|
# set -g @floax-bind 'F'
|
||||||
|
|
||||||
|
# M- means "hold Meta/Alt"
|
||||||
|
# set -g @floax-bind '-n M-p'
|
||||||
|
|
||||||
|
# set -g @fzf-url-open "brave"
|
||||||
|
|
||||||
|
|
||||||
|
# -- navigation ----------------------------------------------------------------
|
||||||
|
|
||||||
|
# Use | instead of _ to split window horizontally
|
||||||
|
bind | split-window -h
|
||||||
|
|
||||||
|
# switch panes using Alt-arrow without prefix
|
||||||
|
bind -n M-left select-pane -L
|
||||||
|
bind -n M-Right select-pane -R
|
||||||
|
bind -n M-Up select-pane -U
|
||||||
|
bind -n M-Down select-pane -D
|
||||||
|
|
||||||
|
# vim movements
|
||||||
|
unbind h
|
||||||
|
unbind j
|
||||||
|
unbind k
|
||||||
|
unbind l
|
||||||
|
bind-key h select-pane -L
|
||||||
|
bind-key j select-pane -D
|
||||||
|
bind-key k select-pane -U
|
||||||
|
bind-key l select-pane -R
|
||||||
|
|
||||||
|
|
||||||
|
# -- urlview -------------------------------------------------------------------
|
||||||
|
|
||||||
|
# bind U run "cut -c3- ~/.tmux.conf | sh -s _urlview #{pane_id}"
|
||||||
|
|
||||||
|
|
||||||
|
# -- TMUX-RECON .tmux.conf.local -------------------------------------------------------------------
|
||||||
|
|
||||||
|
# -- theming -------------------------------------------------------------------
|
||||||
|
|
||||||
|
# tmux_conf_theme_colour_18="#f7931a" # bitcoin yellow
|
||||||
|
|
||||||
|
# -- clipboard -----------------------------------------------------------------
|
||||||
|
|
||||||
|
tmux_conf_copy_to_os_clipboard=true
|
||||||
|
|
||||||
|
# -- user customizations -------------------------------------------------------
|
||||||
|
|
||||||
|
set -g mouse on
|
||||||
|
unbind r
|
||||||
|
bind r source-file ~/.tmux.conf.local
|
||||||
|
|
||||||
|
# set-option -g status-position top
|
||||||
|
set-option -g status-position bottom
|
||||||
|
|
||||||
|
# -- tpm -----------------------------------------------------------------------
|
||||||
|
|
||||||
|
set -g @plugin 'tmux-plugins/tmux-copycat'
|
||||||
|
set -g @plugin 'tmux-plugins/tmux-cpu'
|
||||||
|
set -g @plugin 'tmux-plugins/tmux-resurrect'
|
||||||
|
set -g @plugin 'tmux-plugins/tmux-continuum'
|
||||||
|
set -g @continuum-restore 'on'
|
||||||
|
|
||||||
|
# unbind-key -T prefix 'u'
|
||||||
|
bind-key -T prefix U run-shell /home/e/.tmux/plugins/tpm/bindings/update_plugins
|
||||||
|
|
||||||
|
# -- custom plugins -----------------------------------------------------------
|
||||||
|
|
||||||
|
set -g @plugin 'tmux-plugins/tmux-online-status'
|
||||||
|
set -g @plugin 'xamut/tmux-network-bandwidth'
|
||||||
|
#set -g @plugin 'ChanderG/tmux-notify'
|
||||||
|
#set -g @tnotify-verbose 'on'
|
||||||
|
set -g @plugin 'tmux-plugins/tmux-prefix-highlight'
|
||||||
|
set -g @plugin 'vascomfnunes/tmux-kripto'
|
||||||
|
|
||||||
|
set -g @plugin '27medkamal/tmux-session-wizard'
|
||||||
|
set -g @session-wizard-windows on # default is off
|
||||||
|
|
||||||
|
# set -g @plugin 'wfxr/tmux-fzf-url'
|
||||||
|
# set -g @plugin 'omerxx/tmux-floax'
|
||||||
|
|
||||||
|
set -g @plugin 'BartSte/tmux-fzf-open'
|
||||||
|
set -g @fzf-open-bind 'u'
|
||||||
|
# source-file '$HOME/.tmux/plugins/tmux-fzf-open/setup.tmux'
|
||||||
|
# bind-key -T prefix u run-shell '~/.tmux/plugins/tmux-fzf-open/setup.tmux'
|
||||||
|
set -g @fzf-open-open-cmd "brave-browser"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# ---- End My Customizations ----
|
||||||
|
##################################
|
||||||
|
|
||||||
|
|
||||||
|
# -- custom variables ----------------------------------------------------------
|
||||||
|
|
||||||
|
# to define a custom #{foo} variable, define a POSIX shell function between the
|
||||||
|
# '# EOF' and the '# "$@"' lines. Please note that the opening brace { character
|
||||||
|
# must be on the same line as the function name otherwise the parse won't detect
|
||||||
|
# it.
|
||||||
|
#
|
||||||
|
# then, use #{foo} in e.g. the 'tmux_conf_theme_status_left' or the
|
||||||
|
# 'tmux_conf_theme_status_right' variables.
|
||||||
|
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
# # /!\ do not remove the following line
|
||||||
|
# EOF
|
||||||
|
#
|
||||||
|
# # /!\ do not "uncomment" the functions: the leading "# " characters are needed
|
||||||
|
#
|
||||||
|
# # usage: #{weather}
|
||||||
|
# weather() { # see https://github.com/chubin/wttr.in#one-line-output
|
||||||
|
# curl -f -s -m 2 'wttr.in?format=3' || printf '\n' # /!\ make sure curl is installed
|
||||||
|
# sleep 900 # sleep for 15 minutes, throttle network requests whatever the value of status-interval
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
# # usage: #{online}
|
||||||
|
# online() {
|
||||||
|
# ping -c 1 1.1.1.1 >/dev/null 2>&1 && printf '✔' || printf '✘'
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
# # usage: #{wan_ip_v4}
|
||||||
|
# wan_ip_v4() {
|
||||||
|
# curl -f -s -m 2 -4 ifconfig.me
|
||||||
|
# sleep 300 # sleep for 5 minutes, throttle network requests whatever the value of status-interval
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
# # usage: #{wan_ip_v6}
|
||||||
|
# wan_ip_v6() {
|
||||||
|
# curl -f -s -m 2 -6 ifconfig.me
|
||||||
|
# sleep 300 # sleep for 5 minutes, throttle network requests whatever the value of status-interval
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
# # usage: #{github_stars}, #{github_stars tmux/tmux}, ...
|
||||||
|
# github_stars() {
|
||||||
|
# repository=${1##*https://github.com/}
|
||||||
|
# repository=${repository%% *}
|
||||||
|
# repository=${repository%%.git}
|
||||||
|
# url="https://api.github.com/repos/${repository:-gpakosz/.tmux}"
|
||||||
|
# curl -s "$url" | perl -MJSON::PP=decode_json -CO -0777 -E '$response = decode_json(readline *STDIN); say ($response->{stargazers_count})'
|
||||||
|
# sleep 300 # sleep for 5 minutes, throttle network requests whatever the value of status-interval
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
# "$@"
|
||||||
|
# # /!\ do not remove the previous line
|
||||||
|
# # do not write below this line
|
||||||
19
zsh/.exports
19
zsh/.exports
|
|
@ -1,7 +1,24 @@
|
||||||
# ~/dotfiles/env.sh
|
# .exports dotfile
|
||||||
export EDITOR="${EDITOR:-vim}"
|
export EDITOR="${EDITOR:-vim}"
|
||||||
export PAGER="${PAGER:-most}"
|
export PAGER="${PAGER:-most}"
|
||||||
export BROWSER="${BROWSER:-brave}"
|
export BROWSER="${BROWSER:-brave}"
|
||||||
|
export LANG=en_US.UTF-8 # avoid locale issues
|
||||||
|
export LC_ALL=en_US.UTF-8
|
||||||
|
export GOROOT="/usr/local/go"
|
||||||
|
export GOPATH="$HOME/go"
|
||||||
|
|
||||||
|
# Path
|
||||||
|
export PATH="$PATH:$HOME/go/bin"
|
||||||
|
export PATH="$PATH:$HOME/.scripts"
|
||||||
|
export PATH="$PATH:$HOME/.cargo/bin"
|
||||||
|
export PATH="$PATH:$GOPATH/bin:$GOROOT/bin"
|
||||||
|
export PATH="$PATH:/usr/local/go/bin"
|
||||||
|
export PATH="$PATH:$HOME/.local/bin"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# PY3="python3 -c 'import pty;pty.spawn(\"bin/bash\")'"
|
||||||
|
# SHELLEXPORTS="export TERM=xterm;stty rows $(tput lines) columns $(tput cols)"
|
||||||
|
|
||||||
if command -v bat &> /dev/null; then
|
if command -v bat &> /dev/null; then
|
||||||
export MANPAGER="sh -c 'sed -u -e \"s/\\x1B\[[0-9;]*m//g; s/.\\x08//g\" | bat -p -lman'"
|
export MANPAGER="sh -c 'sed -u -e \"s/\\x1B\[[0-9;]*m//g; s/.\\x08//g\" | bat -p -lman'"
|
||||||
|
|
|
||||||
93
zsh/.zshrc
Normal file
93
zsh/.zshrc
Normal file
|
|
@ -0,0 +1,93 @@
|
||||||
|
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
|
||||||
|
# Initialization code that may require console input (password prompts, [y/n]
|
||||||
|
# confirmations, etc.) must go above this block; everything else may go below.
|
||||||
|
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
|
||||||
|
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -f "/opt/homebrew/bin/brew" ]] then
|
||||||
|
# If you're using macOS, you'll want this enabled
|
||||||
|
eval "$(/opt/homebrew/bin/brew shellenv)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Set the directory we want to store zinit and plugins
|
||||||
|
ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git"
|
||||||
|
|
||||||
|
# Download Zinit, if it's not there yet
|
||||||
|
if [ ! -d "$ZINIT_HOME" ]; then
|
||||||
|
mkdir -p "$(dirname $ZINIT_HOME)"
|
||||||
|
git clone https://github.com/zdharma-continuum/zinit.git "$ZINIT_HOME"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Source/Load zinit
|
||||||
|
source "${ZINIT_HOME}/zinit.zsh"
|
||||||
|
|
||||||
|
# Add in Powerlevel10k
|
||||||
|
zinit ice depth=1; zinit light romkatv/powerlevel10k
|
||||||
|
|
||||||
|
# Add in zsh plugins
|
||||||
|
zinit light zsh-users/zsh-syntax-highlighting
|
||||||
|
zinit light zsh-users/zsh-completions
|
||||||
|
zinit light zsh-users/zsh-autosuggestions
|
||||||
|
zinit light Aloxaf/fzf-tab
|
||||||
|
|
||||||
|
# Add in snippets
|
||||||
|
zinit snippet OMZL::git.zsh
|
||||||
|
zinit snippet OMZP::git
|
||||||
|
zinit snippet OMZP::sudo
|
||||||
|
zinit snippet OMZP::archlinux
|
||||||
|
zinit snippet OMZP::aws
|
||||||
|
zinit snippet OMZP::kubectl
|
||||||
|
zinit snippet OMZP::kubectx
|
||||||
|
zinit snippet OMZP::command-not-found
|
||||||
|
|
||||||
|
# Load completions
|
||||||
|
autoload -Uz compinit && compinit
|
||||||
|
|
||||||
|
zinit cdreplay -q
|
||||||
|
|
||||||
|
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
||||||
|
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
||||||
|
|
||||||
|
# Keybindings
|
||||||
|
bindkey -e
|
||||||
|
bindkey '^p' history-search-backward
|
||||||
|
bindkey '^n' history-search-forward
|
||||||
|
bindkey '^[w' kill-region
|
||||||
|
|
||||||
|
# History
|
||||||
|
HISTSIZE=5000
|
||||||
|
HISTFILE=~/.zsh_history
|
||||||
|
SAVEHIST=$HISTSIZE
|
||||||
|
HISTDUP=erase
|
||||||
|
setopt appendhistory
|
||||||
|
setopt sharehistory
|
||||||
|
setopt hist_ignore_space
|
||||||
|
setopt hist_ignore_all_dups
|
||||||
|
setopt hist_save_no_dups
|
||||||
|
setopt hist_ignore_dups
|
||||||
|
setopt hist_find_no_dups
|
||||||
|
|
||||||
|
# Completion styling
|
||||||
|
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}'
|
||||||
|
zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}"
|
||||||
|
zstyle ':completion:*' menu no
|
||||||
|
zstyle ':fzf-tab:complete:cd:*' fzf-preview 'ls --color $realpath'
|
||||||
|
zstyle ':fzf-tab:complete:__zoxide_z:*' fzf-preview 'ls --color $realpath'
|
||||||
|
|
||||||
|
# Aliases
|
||||||
|
alias ls='ls --color'
|
||||||
|
alias vim='nvim'
|
||||||
|
alias c='clear'
|
||||||
|
|
||||||
|
# Shell integrations
|
||||||
|
# eval "$(fzf --zsh)"
|
||||||
|
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
|
||||||
|
eval "$(zoxide init --cmd cd zsh)"
|
||||||
|
|
||||||
|
# Sourcing
|
||||||
|
source $HOME/.cargo/env
|
||||||
|
[ -f ~/.aliases ] && source ~/.aliases
|
||||||
|
[ -f ~/.exports ] && source ~/.exports
|
||||||
|
[ -f ~/.p10k.zsh ] && source ~/.p10k.zsh
|
||||||
|
|
||||||
147
zsh/.zshrc.bak
Normal file
147
zsh/.zshrc.bak
Normal file
|
|
@ -0,0 +1,147 @@
|
||||||
|
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
|
||||||
|
# Initialization code that may require console input (password prompts, [y/n]
|
||||||
|
# confirmations, etc.) must go above this block; everything else may go below.
|
||||||
|
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
|
||||||
|
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# If you come from bash you might have to change your $PATH.
|
||||||
|
# export PATH=$HOME/bin:$HOME/.local/bin:/usr/local/bin:$PATH
|
||||||
|
|
||||||
|
# Path to your Oh My Zsh installation.
|
||||||
|
export ZSH="$HOME/.oh-my-zsh"
|
||||||
|
|
||||||
|
# Set name of the theme to load --- if set to "random", it will
|
||||||
|
# load a random theme each time Oh My Zsh is loaded, in which case,
|
||||||
|
# to know which specific one was loaded, run: echo $RANDOM_THEME
|
||||||
|
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
|
||||||
|
ZSH_THEME="robbyrussell"
|
||||||
|
|
||||||
|
# Set list of themes to pick from when loading at random
|
||||||
|
# Setting this variable when ZSH_THEME=random will cause zsh to load
|
||||||
|
# a theme from this variable instead of looking in $ZSH/themes/
|
||||||
|
# If set to an empty array, this variable will have no effect.
|
||||||
|
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
||||||
|
|
||||||
|
# Uncomment the following line to use case-sensitive completion.
|
||||||
|
# CASE_SENSITIVE="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to use hyphen-insensitive completion.
|
||||||
|
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||||
|
# HYPHEN_INSENSITIVE="true"
|
||||||
|
|
||||||
|
# Uncomment one of the following lines to change the auto-update behavior
|
||||||
|
# zstyle ':omz:update' mode disabled # disable automatic updates
|
||||||
|
# zstyle ':omz:update' mode auto # update automatically without asking
|
||||||
|
# zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
||||||
|
|
||||||
|
# Uncomment the following line to change how often to auto-update (in days).
|
||||||
|
# zstyle ':omz:update' frequency 13
|
||||||
|
|
||||||
|
# Uncomment the following line if pasting URLs and other text is messed up.
|
||||||
|
# DISABLE_MAGIC_FUNCTIONS="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to disable colors in ls.
|
||||||
|
# DISABLE_LS_COLORS="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to disable auto-setting terminal title.
|
||||||
|
# DISABLE_AUTO_TITLE="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to enable command auto-correction.
|
||||||
|
# ENABLE_CORRECTION="true"
|
||||||
|
|
||||||
|
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||||
|
# You can also set it to another string to have that shown instead of the default red dots.
|
||||||
|
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
||||||
|
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
|
||||||
|
# COMPLETION_WAITING_DOTS="true"
|
||||||
|
|
||||||
|
# Uncomment the following line if you want to disable marking untracked files
|
||||||
|
# under VCS as dirty. This makes repository status check for large repositories
|
||||||
|
# much, much faster.
|
||||||
|
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
||||||
|
|
||||||
|
# Uncomment the following line if you want to change the command execution time
|
||||||
|
# stamp shown in the history command output.
|
||||||
|
# You can set one of the optional three formats:
|
||||||
|
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||||
|
# or set a custom format using the strftime function format specifications,
|
||||||
|
# see 'man strftime' for details.
|
||||||
|
# HIST_STAMPS="mm/dd/yyyy"
|
||||||
|
|
||||||
|
# Would you like to use another custom folder than $ZSH/custom?
|
||||||
|
# ZSH_CUSTOM=/path/to/new-custom-folder
|
||||||
|
|
||||||
|
# Which plugins would you like to load?
|
||||||
|
# Standard plugins can be found in $ZSH/plugins/
|
||||||
|
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
|
||||||
|
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||||
|
# Add wisely, as too many plugins slow down shell startup.
|
||||||
|
plugins=(git zoxide zsh-autosuggestions)
|
||||||
|
|
||||||
|
source $ZSH/oh-my-zsh.sh
|
||||||
|
|
||||||
|
# User configuration
|
||||||
|
|
||||||
|
# export MANPATH="/usr/local/man:$MANPATH"
|
||||||
|
|
||||||
|
# You may need to manually set your language environment
|
||||||
|
# export LANG=en_US.UTF-8
|
||||||
|
|
||||||
|
# Preferred editor for local and remote sessions
|
||||||
|
# if [[ -n $SSH_CONNECTION ]]; then
|
||||||
|
# export EDITOR='vim'
|
||||||
|
# else
|
||||||
|
# export EDITOR='nvim'
|
||||||
|
# fi
|
||||||
|
|
||||||
|
# Compilation flags
|
||||||
|
# export ARCHFLAGS="-arch $(uname -m)"
|
||||||
|
|
||||||
|
# Set personal aliases, overriding those provided by Oh My Zsh libs,
|
||||||
|
# plugins, and themes. Aliases can be placed here, though Oh My Zsh
|
||||||
|
# users are encouraged to define aliases within a top-level file in
|
||||||
|
# the $ZSH_CUSTOM folder, with .zsh extension. Examples:
|
||||||
|
# - $ZSH_CUSTOM/aliases.zsh
|
||||||
|
# - $ZSH_CUSTOM/macos.zsh
|
||||||
|
# For a full list of active aliases, run `alias`.
|
||||||
|
#
|
||||||
|
# Example aliases
|
||||||
|
# alias zshconfig="mate ~/.zshrc"
|
||||||
|
# alias ohmyzsh="mate ~/.oh-my-zsh"
|
||||||
|
|
||||||
|
# PROMPT='%n@%m:%~$ '
|
||||||
|
|
||||||
|
# >>> conda initialize >>>
|
||||||
|
# !! Contents within this block are managed by 'conda init' !!
|
||||||
|
__conda_setup="$('/home/e/miniconda3/bin/conda' 'shell.zsh' 'hook' 2> /dev/null)"
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
eval "$__conda_setup"
|
||||||
|
else
|
||||||
|
if [ -f "/home/e/miniconda3/etc/profile.d/conda.sh" ]; then
|
||||||
|
. "/home/e/miniconda3/etc/profile.d/conda.sh"
|
||||||
|
else
|
||||||
|
export PATH="/home/e/miniconda3/bin:$PATH"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
unset __conda_setup
|
||||||
|
# <<< conda initialize <<<
|
||||||
|
|
||||||
|
eval "$(zoxide init zsh)"
|
||||||
|
bindkey -s '\ec' 'cd $(find . -type d | fzf)\n'
|
||||||
|
|
||||||
|
eval "$(starship init zsh)"
|
||||||
|
source ~/.powerlevel10k/powerlevel10k.zsh-theme
|
||||||
|
|
||||||
|
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
||||||
|
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
||||||
|
|
||||||
|
[ ! -f "$HOME/.x-cmd.root/X" ] || . "$HOME/.x-cmd.root/X" # boot up x-cmd.
|
||||||
|
|
||||||
|
autoload -U compinit; compinit
|
||||||
|
source ~/fzf-tab/fzf-tab.plugin.zsh
|
||||||
|
|
||||||
|
source ~/.zsh/zsh-syntax-highlighting.zsh
|
||||||
|
|
||||||
|
alias -g -- -h='-h 2>&1 | bat --language=help --style=plain'
|
||||||
|
alias -g -- --help='--help 2>&1 | bat --language=help --style=plain'
|
||||||
6
zsh/.zshrc.pre-oh-my-zsh
Normal file
6
zsh/.zshrc.pre-oh-my-zsh
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
alias a='/home/e/arsenal/run -t'
|
||||||
|
|
||||||
|
# Added by LM Studio CLI (lms)
|
||||||
|
export PATH="$PATH:/home/e/.cache/lm-studio/bin"
|
||||||
|
|
||||||
|
export PATH=$PATH=/home/e/.local/bin:/home/e/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/go/bin:/usr/local/go/bin:/home/e/:/home/e/.cache/lm-studio/bin:/home/e/.cache/lm-studio/bin:/home/e/go/bin:/usr/local/go/bin:/home/e/.cache/lm-studio/bin:/home/e/go/bin:/home/e/.pdtm/go/bin:/usr/local/go/bin:/home/e/:/home/e/.cache/lm-studio/bin
|
||||||
Loading…
Add table
Reference in a new issue