Compare commits
36 Commits
macos
...
710ad109cc
Author | SHA1 | Date | |
---|---|---|---|
710ad109cc | |||
0b9532e95b | |||
704c4cdd9e | |||
df8172f138 | |||
66c57a0a51 | |||
fe6642402b | |||
a50a9359ad | |||
2fe787a370 | |||
d4c31d32d9 | |||
5aad94e71b | |||
33c51aa0a6 | |||
7836bb1761 | |||
6aec2fe66f | |||
07756ac711 | |||
8d5f8950db | |||
c04d8876a3 | |||
c8442dabc0 | |||
7176baf0bc | |||
18ce1f6d7e | |||
058c4f473c | |||
1e20a91e84 | |||
0e58fa99f4 | |||
ece4edeb18 | |||
2cae0f7d03 | |||
217eb70b58 | |||
e2920cab80 | |||
2ecb4c53fa | |||
c58348a679 | |||
ba9ad2784c | |||
a6948a056a | |||
554f8a4db8 | |||
a67d6448e9 | |||
616bbba449 | |||
b1b8a4b3f9 | |||
5904b2693a | |||
cc25e775d3 |
@ -3,4 +3,7 @@
|
|||||||
# Fun
|
# Fun
|
||||||
alias matrix='tr -c "[:digit:]" " " < /dev/urandom | dd cbs=$COLUMNS conv=unblock | GREP_COLOR="1;32" grep --color "[^ ]"'
|
alias matrix='tr -c "[:digit:]" " " < /dev/urandom | dd cbs=$COLUMNS conv=unblock | GREP_COLOR="1;32" grep --color "[^ ]"'
|
||||||
|
|
||||||
alias starwars='beep -l 350 -f 392 -D 100 --new -l 350 -f 392 -D 100 --new -l 350 -f 392 -D 100 --new -l 250 -f 311.1 -D 100 --new -l 25 -f 466.2 -D 100 --new -l 350 -f 392 -D 100 --new -l 250 -f 311.1 -D 100 --new -l 25 -f 466.2 -D 100 --new -l 700 -f 392 -D 100 --new -l 350 -f 587.32 -D 100 --new -l 350 -f 587.32 -D 100 --new -l 350 -f 587.32 -D 100 --new -l 250 -f 622.26 -D 100 --new -l 25 -f 466.2 -D 100 --new -l 350 -f 369.99 -D 100 --new -l 250 -f 311.1 -D 100 --new -l 25 -f 466.2 -D 100 --new -l 700 -f 392 -D 100 --new -l 350 -f 784 -D 100 --new -l 250 -f 392 -D 100 --new -l 25 -f 392 -D 100 --new -l 350 -f 784 -D 100 --new -l 250 -f 739.98 -D 100 --new -l 25 -f 698.46 -D 100 --new -l 25 -f 659.26 -D 100 --new -l 25 -f 622.26 -D 100 --new -l 50 -f 659.26 -D 400 --new -l 25 -f 415.3 -D 200 --new -l 350 -f 554.36 -D 100 --new -l 250 -f 523.25 -D 100 --new -l 25 -f 493.88 -D 100 --new -l 25 -f 466.16 -D 100 --new -l 25 -f 440 -D 100 --new -l 50 -f 466.16 -D 400 --new -l 25 -f 311.13 -D 200 --new -l 350 -f 369.99 -D 100 --new -l 250 -f 311.13 -D 100 --new -l 25 -f 392 -D 100 --new -l 350 -f 466.16 -D 100 --new -l 250 -f 392 -D 100 --new -l 25 -f 466.16 -D 100 --new -l 700 -f 587.32 -D 100 --new -l 350 -f 784 -D 100 --new -l 250 -f 392 -D 100 --new -l 25 -f 392 -D 100 --new -l 350 -f 784 -D 100 --new -l 250 -f 739.98 -D 100 --new -l 25 -f 698.46 -D 100 --new -l 25 -f 659.26 -D 100 --new -l 25 -f 622.26 -D 100 --new -l 50 -f 659.26 -D 400 --new -l 25 -f 415.3 -D 200 --new -l 350 -f 554.36 -D 100 --new -l 250 -f 523.25 -D 100 --new -l 25 -f 493.88 -D 100 --new -l 25 -f 466.16 -D 100 --new -l 25 -f 440 -D 100 --new -l 50 -f 466.16 -D 400 --new -l 25 -f 311.13 -D 200 --new -l 350 -f 392 -D 100 --new -l 250 -f 311.13 -D 100 --new -l 25 -f 466.16 -D 100 --new -l 300 -f 392.00 -D 150 --new -l 250 -f 311.13 -D 100 --new -l 25 -f 466.16 -D 100 --new -l 700 -f 392'
|
if (command -v beep &> /dev/null)
|
||||||
|
then
|
||||||
|
alias starwars='beep -l 350 -f 392 -D 100 --new -l 350 -f 392 -D 100 --new -l 350 -f 392 -D 100 --new -l 250 -f 311.1 -D 100 --new -l 25 -f 466.2 -D 100 --new -l 350 -f 392 -D 100 --new -l 250 -f 311.1 -D 100 --new -l 25 -f 466.2 -D 100 --new -l 700 -f 392 -D 100 --new -l 350 -f 587.32 -D 100 --new -l 350 -f 587.32 -D 100 --new -l 350 -f 587.32 -D 100 --new -l 250 -f 622.26 -D 100 --new -l 25 -f 466.2 -D 100 --new -l 350 -f 369.99 -D 100 --new -l 250 -f 311.1 -D 100 --new -l 25 -f 466.2 -D 100 --new -l 700 -f 392 -D 100 --new -l 350 -f 784 -D 100 --new -l 250 -f 392 -D 100 --new -l 25 -f 392 -D 100 --new -l 350 -f 784 -D 100 --new -l 250 -f 739.98 -D 100 --new -l 25 -f 698.46 -D 100 --new -l 25 -f 659.26 -D 100 --new -l 25 -f 622.26 -D 100 --new -l 50 -f 659.26 -D 400 --new -l 25 -f 415.3 -D 200 --new -l 350 -f 554.36 -D 100 --new -l 250 -f 523.25 -D 100 --new -l 25 -f 493.88 -D 100 --new -l 25 -f 466.16 -D 100 --new -l 25 -f 440 -D 100 --new -l 50 -f 466.16 -D 400 --new -l 25 -f 311.13 -D 200 --new -l 350 -f 369.99 -D 100 --new -l 250 -f 311.13 -D 100 --new -l 25 -f 392 -D 100 --new -l 350 -f 466.16 -D 100 --new -l 250 -f 392 -D 100 --new -l 25 -f 466.16 -D 100 --new -l 700 -f 587.32 -D 100 --new -l 350 -f 784 -D 100 --new -l 250 -f 392 -D 100 --new -l 25 -f 392 -D 100 --new -l 350 -f 784 -D 100 --new -l 250 -f 739.98 -D 100 --new -l 25 -f 698.46 -D 100 --new -l 25 -f 659.26 -D 100 --new -l 25 -f 622.26 -D 100 --new -l 50 -f 659.26 -D 400 --new -l 25 -f 415.3 -D 200 --new -l 350 -f 554.36 -D 100 --new -l 250 -f 523.25 -D 100 --new -l 25 -f 493.88 -D 100 --new -l 25 -f 466.16 -D 100 --new -l 25 -f 440 -D 100 --new -l 50 -f 466.16 -D 400 --new -l 25 -f 311.13 -D 200 --new -l 350 -f 392 -D 100 --new -l 250 -f 311.13 -D 100 --new -l 25 -f 466.16 -D 100 --new -l 300 -f 392.00 -D 150 --new -l 250 -f 311.13 -D 100 --new -l 25 -f 466.16 -D 100 --new -l 700 -f 392'
|
||||||
|
fi
|
||||||
|
@ -1,29 +1,29 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# Git
|
# Git
|
||||||
if [ -x /usr/bin/git ]
|
if [ -x /usr/bin/git ]; then
|
||||||
then
|
alias gs='git status'
|
||||||
alias gs='git status'
|
alias ga='git add'
|
||||||
alias ga='git add'
|
alias gc='git commit'
|
||||||
alias gc='git commit'
|
alias gca='git commit -a'
|
||||||
alias gca='git commit -a'
|
alias gf='git fetch'
|
||||||
alias gu='git pull'
|
alias gu='git pull'
|
||||||
alias gp='git pull && git push'
|
alias gp='git pull && git push'
|
||||||
alias gd='git diff'
|
alias gd='git diff'
|
||||||
alias gdc='git diff --cached'
|
alias gdc='git diff --cached'
|
||||||
alias gb='git branch'
|
alias gb='git branch'
|
||||||
alias gco='git checkout'
|
alias gco='git checkout'
|
||||||
alias gw='git whatchanged'
|
alias gw='git whatchanged'
|
||||||
alias gl='git log --graph'
|
alias gl='git log --graph'
|
||||||
|
|
||||||
alias gstatus='git status'
|
alias gstatus='git status'
|
||||||
alias glog='git log'
|
alias glog='git log'
|
||||||
alias glast='git last'
|
alias glast='git last'
|
||||||
alias gshow='git show'
|
alias gshow='git show'
|
||||||
alias gdiff='git diff'
|
alias gdiff='git diff'
|
||||||
alias gcommit='git commit'
|
alias gcommit='git commit'
|
||||||
alias gcommitall='git commit --all'
|
alias gcommitall='git commit --all'
|
||||||
alias greset='git reset'
|
alias greset='git reset'
|
||||||
alias gpull='git pull'
|
alias gpull='git pull'
|
||||||
alias gpush='git pull && git push'
|
alias gpush='git pull && git push'
|
||||||
fi
|
fi
|
||||||
|
6
aliases.d/gopass
Normal file
6
aliases.d/gopass
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if (command -v 'gopass' && ! command -v pass ) &> /dev/null
|
||||||
|
then
|
||||||
|
alias pass='gopass'
|
||||||
|
fi
|
14
aliases.d/kubectl
Normal file
14
aliases.d/kubectl
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if (command -v kubectl &> /dev/null)
|
||||||
|
then
|
||||||
|
|
||||||
|
# create a quick alias
|
||||||
|
alias k=kubectl
|
||||||
|
alias ks="kubectl --namespace kube-system"
|
||||||
|
|
||||||
|
# add completion for the alias as well
|
||||||
|
complete -o default -F __start_kubectl k
|
||||||
|
complete -o default -F __start_kubectl ks
|
||||||
|
|
||||||
|
fi
|
6
aliases.d/lazygit
Normal file
6
aliases.d/lazygit
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#/bin/bash
|
||||||
|
|
||||||
|
if (command -v lazygit &> /dev/null)
|
||||||
|
then
|
||||||
|
alias lg=lazygit
|
||||||
|
fi
|
6
aliases.d/lsd
Normal file
6
aliases.d/lsd
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if (command -v lsd &> /dev/null)
|
||||||
|
then
|
||||||
|
alias ls=lsd
|
||||||
|
fi
|
@ -1,9 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
if (which mutt &> /dev/null); then
|
|
||||||
if [ "$TERM" = "rxvt-unicode" ]; then
|
|
||||||
alias mutt="TERM=rxvt-unicode-256color SOCKS_SERVER=10.181.176.208:1080 socksify mutt"
|
|
||||||
else
|
|
||||||
alias mutt="SOCKS_SERVER=10.181.176.208:1080 socksify mutt"
|
|
||||||
fi
|
|
||||||
fi
|
|
7
aliases.d/nvim
Normal file
7
aliases.d/nvim
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Vim Editor
|
||||||
|
if [ -x ~/AppImages/nvim.appimage ]
|
||||||
|
then
|
||||||
|
alias nvim='~/AppImages/nvim.appimage'
|
||||||
|
fi
|
@ -1,6 +1,7 @@
|
|||||||
|
#
|
||||||
# Aliases for taskwarrior
|
# Aliases for taskwarrior
|
||||||
#
|
#
|
||||||
if (which task &> /dev/null)
|
if (command -v task &> /dev/null)
|
||||||
then
|
then
|
||||||
alias t='task'
|
alias t='task'
|
||||||
alias tl='task list'
|
alias tl='task list'
|
||||||
|
@ -1,9 +1,20 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# Vim Editor
|
# Vim Editor
|
||||||
if [ -x /usr/bin/vim ]
|
if (command -v nvim &> /dev/null)
|
||||||
then
|
then
|
||||||
alias vi='vim -p'
|
alias vim=nvim
|
||||||
alias view='vim -R'
|
|
||||||
alias vless='vim -u /usr/share/vim/vim74/macros/less.vim -c "colorscheme mustangpp"'
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# if (command -v lvim &>/dev/null); then
|
||||||
|
# alias vim=lvim
|
||||||
|
# elif (command -v nvim &>/dev/null); then
|
||||||
|
# alias vim=nvim
|
||||||
|
# fi
|
||||||
|
|
||||||
|
# if [ -x /usr/bin/vim ]
|
||||||
|
# then
|
||||||
|
# alias vi='vim -p'
|
||||||
|
# alias view='vim -R'
|
||||||
|
# alias vless='vim -u /usr/share/vim/vim*/macros/less.vim'
|
||||||
|
# fi
|
||||||
|
6
completion.d/helm
Normal file
6
completion.d/helm
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if (command -v helm &> /dev/null)
|
||||||
|
then
|
||||||
|
source <( helm completion bash )
|
||||||
|
fi
|
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
if ( which kubectl ) &> /dev/null
|
if (command -v kubectl &> /dev/null)
|
||||||
then
|
then
|
||||||
source <(kubectl completion bash)
|
source <(kubectl completion bash)
|
||||||
fi
|
fi
|
||||||
|
6
completion.d/poetry
Normal file
6
completion.d/poetry
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if ( command -v poetry &> /dev/null )
|
||||||
|
then
|
||||||
|
source <(poetry completions bash)
|
||||||
|
fi
|
6
completion.d/stern
Normal file
6
completion.d/stern
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if (command -v stern &> /dev/null)
|
||||||
|
then
|
||||||
|
source <(stern --completion bash)
|
||||||
|
fi
|
7
completion.d/taskwarrior
Normal file
7
completion.d/taskwarrior
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
#
|
||||||
|
# Completion for taskwarrior
|
||||||
|
#
|
||||||
|
if (command -v task &> /dev/null)
|
||||||
|
then
|
||||||
|
complete -o nospace -F _task t
|
||||||
|
fi
|
@ -14,8 +14,10 @@ genpasswd() {
|
|||||||
[ "$l" == "" ] && l=12
|
[ "$l" == "" ] && l=12
|
||||||
local password_clear=$(tr -dc A-Za-z0-9_ < /dev/urandom | head -c ${l} | xargs)
|
local password_clear=$(tr -dc A-Za-z0-9_ < /dev/urandom | head -c ${l} | xargs)
|
||||||
local password_md5hash=$(openssl passwd -1 $password_clear)
|
local password_md5hash=$(openssl passwd -1 $password_clear)
|
||||||
local password_sha1=$(echo -n $password_clear | openssl dgst -sha1)
|
local password_sha1=$(echo -n "$password_clear" | openssl dgst -sha1)
|
||||||
|
local password_base64=$(echo -n "$password_clear" | base64)
|
||||||
echo "Password : $password_clear"
|
echo "Password : $password_clear"
|
||||||
|
echo "Base64 : $password_base64"
|
||||||
echo "MD5HASH : $password_md5hash"
|
echo "MD5HASH : $password_md5hash"
|
||||||
echo "SHA1 : $password_sha1"
|
echo "SHA1 : $password_sha1"
|
||||||
}
|
}
|
||||||
|
9
libs/path.bash
Normal file
9
libs/path.bash
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
_path_add() {
|
||||||
|
if [ -d "$1" ] && [[ ":$PATH:" != *":$1:"* ]]; then
|
||||||
|
PATH="${PATH:+"$PATH:"}$1"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Source : https://superuser.com/questions/39751/add-directory-to-path-if-its-not-already-there
|
9
libs/prompt_command.bash
Normal file
9
libs/prompt_command.bash
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
_prompt_command_add() {
|
||||||
|
if [ -n "$1" ] && [[ ":$PROMPT_COMMAND:" != *":$1:"* ]]; then
|
||||||
|
PROMPT_COMMAND="${PROMPT_COMMAND:+"$PROMPT_COMMAND;"}$1"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
export PROMPT_COMMAND
|
@ -1,8 +1,8 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# Defined prefered applications
|
# Defined prefered applications
|
||||||
export TERMINAL=urxvtc
|
export TERMINAL=kitty
|
||||||
export PAGER=less
|
export PAGER=less
|
||||||
export EDITOR=vim
|
export EDITOR=nvim
|
||||||
export BROWSER=surf
|
export BROWSER=firefox
|
||||||
|
|
||||||
|
@ -1,4 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Defined prefered applications
|
|
||||||
export XDG_RUNTIME_DIR=$HOME/.cache
|
|
12
rc.d/asdf
Normal file
12
rc.d/asdf
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ -f ~/.asdf/asdf.sh ]
|
||||||
|
then
|
||||||
|
|
||||||
|
# activate asdf
|
||||||
|
source ~/.asdf/asdf.sh
|
||||||
|
|
||||||
|
# activate completion
|
||||||
|
source ~/.asdf/completions/asdf.bash
|
||||||
|
|
||||||
|
fi
|
23
rc.d/broot
Normal file
23
rc.d/broot
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if (command -v broot &>/dev/null); then
|
||||||
|
# This script was automatically generated by the broot program
|
||||||
|
# More information can be found in https://github.com/Canop/broot
|
||||||
|
# This function starts broot and executes the command
|
||||||
|
# it produces, if any.
|
||||||
|
# It's needed because some shell commands, like `cd`,
|
||||||
|
# have no useful effect if executed in a subshell.
|
||||||
|
function br {
|
||||||
|
local cmd cmd_file code
|
||||||
|
cmd_file=$(mktemp)
|
||||||
|
if broot --outcmd "$cmd_file" "$@"; then
|
||||||
|
cmd=$(<"$cmd_file")
|
||||||
|
rm -f "$cmd_file"
|
||||||
|
eval "$cmd"
|
||||||
|
else
|
||||||
|
code=$?
|
||||||
|
rm -f "$cmd_file"
|
||||||
|
return "$code"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
fi
|
0
rc.d/cgroups
Executable file → Normal file
0
rc.d/cgroups
Executable file → Normal file
24
rc.d/direnv
Normal file
24
rc.d/direnv
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if ( which asdf &> /dev/null )
|
||||||
|
then
|
||||||
|
|
||||||
|
if ( asdf which direnv &> /dev/null )
|
||||||
|
then
|
||||||
|
|
||||||
|
# Hook direnv into your shell.
|
||||||
|
eval "$(asdf exec direnv hook bash)"
|
||||||
|
|
||||||
|
# A shortcut for asdf managed direnv.
|
||||||
|
direnv() { asdf exec direnv "$@"; }
|
||||||
|
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
elif ( which direnv &> /dev/null )
|
||||||
|
then
|
||||||
|
|
||||||
|
# Hook direnv into your shell.
|
||||||
|
eval "$(direnv hook bash)"
|
||||||
|
|
||||||
|
fi
|
5
rc.d/git
Normal file
5
rc.d/git
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if (command -v git && command -v fzf) &>/dev/null; then
|
||||||
|
function gsb { git checkout "$(git branch --all | fzf | tr -d '[:space:]')"; }
|
||||||
|
fi
|
6
rc.d/krew
Normal file
6
rc.d/krew
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ -d ~/.krew/bin ]
|
||||||
|
then
|
||||||
|
export PATH="${KREW_ROOT:-$HOME/.krew}/bin:$PATH"
|
||||||
|
fi
|
10
rc.d/lsd
Normal file
10
rc.d/lsd
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if (which lsd &> /dev/null)
|
||||||
|
then
|
||||||
|
|
||||||
|
# create a aliases
|
||||||
|
alias ls='lsd'
|
||||||
|
alias lt='lsd --tree'
|
||||||
|
|
||||||
|
fi
|
9
rc.d/mcfly
Normal file
9
rc.d/mcfly
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if (which mcfly &> /dev/null)
|
||||||
|
then
|
||||||
|
export MCFLY_INTERFACE_VIEW=BOTTOM
|
||||||
|
export MCFLY_RESULTS=25
|
||||||
|
export MCFLY_RESULTS_SORT=LAST_RUN
|
||||||
|
eval "$(mcfly init bash)"
|
||||||
|
fi
|
@ -1,60 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
if ( ! which mcfly &> /dev/null ); then return; fi
|
|
||||||
|
|
||||||
# Avoid loading this file more than once
|
|
||||||
if [[ "$__MCFLY_LOADED" == "loaded" ]]; then
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
__MCFLY_LOADED="loaded"
|
|
||||||
export MCFLY_SESSION_ID=$(cat /dev/urandom | env LC_ALL=C tr -dc 'a-zA-Z0-9' | fold -w 24 | head -n 1)
|
|
||||||
export MCFLY_HISTORY=$(mktemp -t mcfly.XXXX)
|
|
||||||
export HISTFILE="${HISTFILE:-$HOME/.bash_history}"
|
|
||||||
|
|
||||||
if [[ -f "$HISTFILE" ]];
|
|
||||||
then
|
|
||||||
tail -n100 "${HISTFILE}" >| ${MCFLY_HISTORY}
|
|
||||||
else
|
|
||||||
printf "Welcome to McFly\n" >| ${MCFLY_HISTORY}
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Ignore commands with a leading space
|
|
||||||
#export HISTCONTROL="ignorespace"
|
|
||||||
|
|
||||||
# Append new history items to .bash_history
|
|
||||||
shopt -s histappend
|
|
||||||
|
|
||||||
# Setup a function to be used by $PROMPT_COMMAND.
|
|
||||||
function mcfly_prompt_command {
|
|
||||||
local exit_code=$? # Record exit status of previous command.
|
|
||||||
history -a ${MCFLY_HISTORY} # Append history to $MCFLY_HISTORY.
|
|
||||||
# Run mcfly with the saved code. It will:
|
|
||||||
# * append commands to $HISTFILE, (~/.bash_history by default)
|
|
||||||
# for backwards compatibility and to load in new terminal sessions;
|
|
||||||
# * find the text of the last command in $MCFLY_HISTORY and save it to the database.
|
|
||||||
mcfly add --exit ${exit_code} --append-to-histfile
|
|
||||||
# Clear the in-memory history and reload it from $MCFLY_HISTORY
|
|
||||||
# (to remove instances of '#mcfly: ' from the local session history).
|
|
||||||
history -cr ${MCFLY_HISTORY}
|
|
||||||
return ${exit_code} # Restore the original exit code by returning it.
|
|
||||||
}
|
|
||||||
|
|
||||||
# Set $PROMPT_COMMAND run mcfly_prompt_command and then any existing $PROMPT_COMMAND.
|
|
||||||
PROMPT_COMMAND="mcfly_prompt_command;$PROMPT_COMMAND"
|
|
||||||
|
|
||||||
# If this is an interactive shell, take ownership of ctrl-r.
|
|
||||||
# The logic here is:
|
|
||||||
# 1. Jump to the beginning of the edit buffer, add 'mcfly: ', and comment out the current line. We comment out the line
|
|
||||||
# to ensure that all possible special characters, including backticks, are ignored. This commented out line will
|
|
||||||
# end up as the most recent entry in the $MCFLY_HISTORY file.
|
|
||||||
# 2. Type "mcfly search" and then run the command. McFly will pull the last line from the $MCFLY_HISTORY file,
|
|
||||||
# which should be the commented-out search from step #1. It will then remove that line from the history file and
|
|
||||||
# render the search UI pre-filled with it.
|
|
||||||
if [[ $- =~ .*i.* ]]; then
|
|
||||||
if set -o | grep "vi " | grep -q on; then
|
|
||||||
bind "'\C-r': '\e0i#mcfly: \e\C-j mcfly search\C-j'"
|
|
||||||
else
|
|
||||||
bind "'\C-r': '\C-amcfly: \e# mcfly search\C-j'"
|
|
||||||
fi
|
|
||||||
fi
|
|
46
rc.d/prompt
Executable file → Normal file
46
rc.d/prompt
Executable file → Normal file
@ -2,19 +2,41 @@
|
|||||||
|
|
||||||
# Customize the prompt
|
# Customize the prompt
|
||||||
|
|
||||||
if (which powerline-go &> /dev/null); then
|
POWERLINE_LOCATION=$(command -v powerline-go || command -v powerline) &>/dev/null
|
||||||
function _update_ps1() {
|
POWERLINE=$(basename "$POWERLINE_LOCATION")
|
||||||
PS1="$(powerline-go -error $?)"
|
|
||||||
}
|
if [ "${POWERLINE}" = "powerline-go" ]; then
|
||||||
if [ "$TERM" != "linux" ] ; then
|
|
||||||
export PROMPT_COMMAND="_update_ps1; $PROMPT_COMMAND"
|
echo "Using $POWERLINE"
|
||||||
fi
|
|
||||||
|
function _update_ps1() {
|
||||||
|
PS1=$($POWERLINE -jobs "$(jobs -p | wc -l)" -error $? -modules "ssh,host,wsl,user,cwd,direnv,venv,perms,git,jobs,exit,root" -modules-right "docker,docker-context,kube,terraform-workspace,termtitle" -newline)
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ "$TERM" != "linux" ]; then _prompt_command_add "_update_ps1" ; fi
|
||||||
|
|
||||||
|
elif [ "${POWERLINE}" = "powerline" ]; then
|
||||||
|
|
||||||
|
echo "Using $POWERLINE"
|
||||||
|
|
||||||
|
# Run powerline daemon
|
||||||
|
powerline-daemon -q
|
||||||
|
# Cache powerline location
|
||||||
|
# To locate this directory, run: pip show powerline-status
|
||||||
|
export POWERLINE_LOCATION="/home/xavier/.local/lib/python3.10//site-packages/powerline" # Set up powerline environment
|
||||||
|
export POWERLINE_CONFIG_COMMAND=powerline-config
|
||||||
|
export POWERLINE_BASH_CONTINUATION=1
|
||||||
|
export POWERLINE_BASH_SELECT=1# Invoke binding script
|
||||||
|
. "$POWERLINE_LOCATION/bindings/bash/powerline.sh"
|
||||||
|
|
||||||
else
|
else
|
||||||
if [ "$UID" -eq 0 ]; then
|
|
||||||
export PS1='\[\e[01;31m\]\u@\h\[\e[01;34m\] \w \$\[\e[0m\] '
|
if [ "$UID" -eq 0 ]; then
|
||||||
else
|
export PS1='\[\e[01;31m\]\u@\h\[\e[01;34m\] \w \$\[\e[0m\] '
|
||||||
export PS1='\[\e[01;32m\]\u@\h\[\e[01;34m\] \w \$\[\e[0m\] '
|
else
|
||||||
fi
|
export PS1='\[\e[01;32m\]\u@\h\[\e[01;34m\] \w \$\[\e[0m\] '
|
||||||
|
fi
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Limit the path to 3 levels
|
# Limit the path to 3 levels
|
||||||
|
0
rc.d/screen
Executable file → Normal file
0
rc.d/screen
Executable file → Normal file
0
rc.d/urxvt
Executable file → Normal file
0
rc.d/urxvt
Executable file → Normal file
Reference in New Issue
Block a user