Remove old configs
This commit is contained in:
parent
1fcff744b7
commit
ba6cbb01e2
594
.bashrc
594
.bashrc
|
@ -1,594 +0,0 @@
|
|||
## This is a mess, and needs tidying up. Hopefully it works on linux and (free)bsd, and can be sourced repeatedly without making PATH grow each time.
|
||||
|
||||
export LANG=en_GB.UTF-8
|
||||
|
||||
if [[ $- != *i* ]]; then
|
||||
# Non-interactive shell
|
||||
return
|
||||
fi
|
||||
|
||||
export HOSTNAME=${HOSTNAME:-$(hostname -s)}
|
||||
# need -s above for BSD, but that returns localhost on some linuxen
|
||||
[[ "x${HOSTNAME}" == "xlocalhost" ]] && export HOSTNAME=$(hostname)
|
||||
export HOST=$HOSTNAME
|
||||
export USER=${USER:-$(whoami)}
|
||||
|
||||
#if [[ x$SCRIPT == x ]]
|
||||
#then
|
||||
# script -q typescripts/script-`date +%Y%m%d%H%M%S``tty|tr / -`-$$
|
||||
# exit
|
||||
#fi
|
||||
|
||||
## use _ for "internal" functions, and - for those intended to be used
|
||||
## interactively
|
||||
|
||||
do_interesting_prompt() {
|
||||
prompt_choice=$1
|
||||
# col for colour, not column
|
||||
reset_col='\[\e[0m\]'
|
||||
|
||||
sif_col='\[\e[0;35m\]'
|
||||
tyr_col='\[\e[0;36m\]'
|
||||
gaius_col='\[\e[0;33m\]'
|
||||
gendros_col='\[\e[1;37m\]'
|
||||
mnason_col='\[\033[01;32m\]'
|
||||
|
||||
host_col=$reset_col
|
||||
# TODO make all of these unique again
|
||||
[[ "x$HOST" == "xsif" ]] && host_col=$sif_col
|
||||
[[ "x$HOST" == "xtyr" ]] && host_col=$tyr_col
|
||||
[[ "x$HOST" == "xsagacity" ]] && host_col=$tyr_col
|
||||
[[ "x$HOST" == "xwolfman" ]] && host_col=$tyr_col
|
||||
[[ "x$HOST" == "xgaius" ]] && host_col=$gaius_col
|
||||
[[ "x$HOST" == "xgendros" ]] && host_col=$gendros_col
|
||||
[[ "x$HOST" == "xCHESTER" ]] && host_col=$gendros_col
|
||||
[[ "x$HOST" == "xtriton" ]] && host_col=$gendros_col
|
||||
[[ "x$HOST" == "xmnason" ]] && host_col=$mnason_col
|
||||
|
||||
djm_col='\[\e[0;32m\]'
|
||||
wiz_col='\[\e[1;32m\]'
|
||||
deejayem_col='\[\e[1;32m\]'
|
||||
|
||||
user_col=$reset_col
|
||||
[[ "x$USER" == "xdjm" ]] && user_col=$djm_col
|
||||
[[ "x$USER" == "xwizard" ]] && user_col=$wiz_col
|
||||
[[ "x$USER" == "xdeejayem" ]] && user_col=$deejayem_col
|
||||
[[ "x$USER" == "xdavidmo" ]] && user_col=$deejayem_col
|
||||
|
||||
at_col='\[\e[0;37m\]'
|
||||
[[ -n "$SSH_CLIENT" ]] && at_col='\[\e[1;33m\]'
|
||||
|
||||
time_col='\[\e[0;36m\]'
|
||||
# don't clash with host_col
|
||||
[[ "x$HOST" == "xtyr" ]] && time_col='\[\e[1;33m\]'
|
||||
[[ "x$HOST" == "xsagacity" ]] && time_col='\[\e[1;33m\]'
|
||||
[[ "x$HOST" == "xwolfman" ]] && time_col='\[\e[1;33m\]'
|
||||
|
||||
dir_col='\[\e[1;34m\]'
|
||||
sb_col=$reset_col # Square brackets
|
||||
rb_col='\[\e[0;32m\]' # Round brackets
|
||||
cb_col='\[\e[0;32m\]' # Curly brackets
|
||||
cn_col='\[\e[0;35m\]' # Command numbers
|
||||
|
||||
# Should vaguely correspond to user_col, but emphasise whether or not
|
||||
# we're using ssh (shutting down the wrong machine is not cool)
|
||||
prompt_col='\[\e[0;32m\]'
|
||||
[[ -n "$SSH_CLIENT" ]] && prompt_col='\[\e[1;32m\]'
|
||||
|
||||
# col for colour, not column (still)
|
||||
# \h on first line as well as the second, because ^R obscures the second
|
||||
if [[ $prompt_choice -eq 1 ]]; then
|
||||
export PS1="$time_col\d \t $cb_col{$host_col\h$cb_col}\n$sb_col[$user_col\u$at_col@$host_col\h $dir_col\w$sb_col]$rb_col($cn_col\#:\j:"'$?'"$rb_col)$prompt_col\$$reset_col "
|
||||
elif [[ $prompt_choice -eq 2 ]]; then
|
||||
export PS1="$sb_col[$user_col\u$at_col@$host_col\h $dir_col\w$sb_col] $time_col\d \t $rb_col($cn_col\#:\j:"'$?'"$rb_col)\n$prompt_col\$$reset_col "
|
||||
elif [[ $prompt_choice -eq 3 ]]; then
|
||||
export PS1="$sb_col[$user_col\u$at_col@$host_col\h $dir_col\w$sb_col]$rb_col($cn_col\#:\j:"'$?'"$rb_col)$prompt_col\$$reset_col "
|
||||
else
|
||||
do_interesting_prompt 2
|
||||
fi
|
||||
}
|
||||
|
||||
do_boring_prompt() {
|
||||
export PS1='\n\d \t {\h}\n[\u@\h \w](\#)\$ '
|
||||
}
|
||||
|
||||
if [ -x "$(command -v gdircolors)" ]; then
|
||||
dircolors=`type -p gdircolors`
|
||||
else
|
||||
dircolors=`type -p dircolors`
|
||||
fi
|
||||
|
||||
#if [ -n "${dircolors+x}" ]; then
|
||||
if [ -n "${dircolors}" ]; then
|
||||
if [[ -f ~/.dir_colors ]]; then
|
||||
eval `$dircolors -b ~/.dir_colors`
|
||||
else
|
||||
eval `$dircolors -b /etc/DIR_COLORS`
|
||||
fi
|
||||
fi
|
||||
#alias ls="ls --color=no"
|
||||
|
||||
|
||||
## PATH - TODO reduce duplication with a function
|
||||
if [[ -n "${PATH/*\/usr\/local\/mpi\/openmpi\/bin:*/}" ]] ; then
|
||||
export PATH="/usr/local/mpi/openmpi/bin:$PATH"
|
||||
fi
|
||||
|
||||
if [[ -n "${PATH/*\/usr\/local\/texlive\/2009\/bin\/i386-freebsd8:*/}" ]] ; then
|
||||
export PATH="/usr/local/texlive/2009/bin/i386-freebsd8:$PATH"
|
||||
fi
|
||||
|
||||
if [[ -n "${PATH/*$HOME\/local\/bin:*/}" ]] ; then
|
||||
export PATH="$HOME/local/bin:$PATH"
|
||||
fi
|
||||
|
||||
if [[ -n "${PATH/*$HOME\/.local\/bin:*/}" ]] ; then
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
fi
|
||||
|
||||
if [[ -n "${PATH/*$HOME\/games:*/}" ]] ; then
|
||||
export PATH="$HOME/games:$PATH"
|
||||
fi
|
||||
|
||||
if [[ -n "${PATH/*$HOME\/bin:*/}" ]] ; then
|
||||
export PATH="$HOME/bin:$PATH"
|
||||
fi
|
||||
|
||||
if [[ -n "${PATH/*$HOME\/bin:*/}" ]] ; then
|
||||
export PATH="$HOME/bin:$PATH"
|
||||
fi
|
||||
|
||||
if [[ -n "${PATH/*$HOME\/.cargo\/bin:*/}" ]] ; then
|
||||
export PATH="$HOME/.cargo/bin:$PATH"
|
||||
fi
|
||||
|
||||
# MANPATH
|
||||
unset MANPATH
|
||||
#if [[ -n "${MANPATH/*\/usr\/local\/mpi\/openmpi\/man:*/}" ]] ; then
|
||||
# export MANPATH="/usr/local/mpi/openmpi/man:$MANPATH"
|
||||
#fi
|
||||
|
||||
#if [[ -n "${MANMANPATH/*$HOME\/local\/man:*/}" ]] ; then
|
||||
# export MANPATH="$HOME/local/man:$MANPATH"
|
||||
#fi
|
||||
|
||||
#if [[ -n "${MANMANPATH/*$HOME\/local\/share\/man:*/}" ]] ; then
|
||||
# export MANPATH="$HOME/local/share/man:$MANPATH"
|
||||
#fi
|
||||
|
||||
#if [[ -n "${MANMANPATH/*\/usr\/local\/man:*/}" ]] ; then
|
||||
# export MANPATH="/usr/local/man:$MANPATH"
|
||||
#fi
|
||||
|
||||
|
||||
# Should test to see if we're capable of being interesting or not (TODO)
|
||||
do_interesting_prompt 2
|
||||
#do_boring_prompt
|
||||
|
||||
# Change the window title of X terminals
|
||||
case $TERM in
|
||||
xterm*|rxvt*|Eterm)
|
||||
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\007"'
|
||||
;;
|
||||
# screen) # don't want this with tmux...
|
||||
# PROMPT_COMMAND='echo -ne "\033k${USER}@${HOSTNAME%%.*}:${PWD/$HOME/~}\033\\"'
|
||||
# ;;
|
||||
esac
|
||||
|
||||
[ -f /etc/bash_completion ] && source /etc/bash_completion
|
||||
#[ -f /usr/local/etc/bash_completion ] && source /usr/local/etc/bash_completion
|
||||
[ -f /usr/local/share/bash-completion/bash_completion.sh ] && source /usr/local/share/bash-completion/bash_completion.sh
|
||||
set -C
|
||||
|
||||
#export PATH=${HOME}/bin:${HOME}/local/bin:${HOME}/.local/bin:$PATH
|
||||
#export PATH=/usr/local/games/:$PATH
|
||||
#export MPD_HOST=redacted@localhost
|
||||
#export MPD_PORT=6600
|
||||
#export NNTPSERVER=news.btopenworld.com
|
||||
#export NNTPSERVER=news.individual.net
|
||||
#export NNTPSERVER=public.teranews.com
|
||||
#export NNTPSERVER=reader.news4all.se
|
||||
[ -f /usr/bin/vim ] && export EDITOR=/usr/bin/vim
|
||||
[ -f /usr/local/bin/vim ] && export EDITOR=/usr/local/bin/vim
|
||||
export PAGER=/usr/bin/less
|
||||
#export PERL5LIB="${HOME}/perl/share/perl/:${HOME}/lib/perl/:${HOME}/perl5/"
|
||||
export MOZ_NO_PANGO=1
|
||||
|
||||
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
|
||||
|
||||
alias y=yes
|
||||
alias s="sudo"
|
||||
alias svi="sudo vim"
|
||||
alias gvi=gvim
|
||||
alias vi=vim
|
||||
alias viclean="rm *~"
|
||||
alias vidotclean="rm .*~"
|
||||
alias vibinclean="rm ~/bin/*~"
|
||||
alias trunc="colrm 80"
|
||||
|
||||
alias pc="pocket-cli.py"
|
||||
alias pp='pushbullet push "OnePlus" link "${1}" "${1}"'
|
||||
|
||||
[ ! -x "$(command -v fetch)" -a -x "$(command -v wget)" ] && alias fetch="wget"
|
||||
[ -f /etc/debian_version ] && alias psearch="apt-cache search"
|
||||
|
||||
#alias esv='diatheke -b ESV -k'
|
||||
alias esv="bible esv"
|
||||
alias lxxm="bible -m lxx"
|
||||
alias lxxa="bible -a lxx"
|
||||
alias lxxma="bible -ma lxx"
|
||||
#alias gnt="bible Tisch"
|
||||
alias gnt="bible MorphGNT"
|
||||
alias gntm="bible -m MorphGNT"
|
||||
alias gnta="bible -a MorphGNT"
|
||||
alias gntma="bible -ma MorphGNT"
|
||||
alias asv="diatheke -b ASV -k"
|
||||
alias niv="diatheke -b NIV -k"
|
||||
alias tniv="diatheke -b TNIV -k"
|
||||
alias kjv="diatheke -b KJV -k"
|
||||
alias nkjv="diatheke -b NKJV -k"
|
||||
alias nasb="diatheke -b NASB -k"
|
||||
alias amp="diatheke -b Amp -k"
|
||||
alias ylt="diatheke -b YLT -k"
|
||||
alias nlt="diatheke -b NLT -k"
|
||||
alias Geneva="diatheke -b Geneva1599 -k"
|
||||
alias hcsb="diatheke -b HCSB -k"
|
||||
alias net="diatheke -b NETfree -k"
|
||||
|
||||
#alias host=hostx
|
||||
#alias cc_="gcc -ansi -pedantic-errors -Wall -W -Werror -Wnested-externs -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wbad-function-cast -Wredundant-decls -Wcast-qual -Wundef -Winline -Wpointer-arith -Wcast-align -Wchar-subscripts -Wshadow -Wwrite-strings"
|
||||
#alias noxbell=LD_PRELOAD=$HOME/noxbell/libnoxbell.so
|
||||
|
||||
alias m='mpc'
|
||||
alias madd='mpc add'
|
||||
alias mcl='mpc clear'
|
||||
alias mp='mpc play'
|
||||
alias mls='mpc playlist'
|
||||
alias msearch='mpc search'
|
||||
# individual aliases so they can be tab completed
|
||||
alias msearchalbum='mpc search album'
|
||||
alias msearchartist='mpc search artist'
|
||||
alias msearchcomposer='mpc search composer'
|
||||
alias msearchfile='mpc search filename'
|
||||
alias msearchtitle='mpc search title'
|
||||
alias msearchfilename='mpc search filename'
|
||||
alias mupdate='mpc update'
|
||||
|
||||
#source ~/bashmp.sh
|
||||
keychain --agents "gpg,ssh" ~/.ssh/id_rsa C171251002C200F2
|
||||
#. ~/.keychain/${HOSTNAME}-sh-gpg
|
||||
. ~/.keychain/${HOSTNAME}-sh
|
||||
|
||||
|
||||
#if ! type tac &>/dev/null; then
|
||||
if ! [ -x "$(command -v tac)" ]; then
|
||||
alias tac="sed -n '1!G;\$p;h'"
|
||||
fi
|
||||
|
||||
shopt -s extglob
|
||||
shopt -s globstar
|
||||
|
||||
set -o noclobber
|
||||
set -o vi
|
||||
bind '"\e."':yank-last-arg
|
||||
bind -m vi-command ".":insert-last-argument
|
||||
bind -m vi-insert "\C-l.":clear-screen
|
||||
bind -m vi-insert "\C-a.":beginning-of-line
|
||||
bind -m vi-insert "\C-e.":end-of-line
|
||||
bind -m vi-insert "\C-w.":backward-kill-word
|
||||
|
||||
export HISTSIZE=2000
|
||||
export HISTFILESIZE=2000
|
||||
export HISTCONTROL=ignorespace:ignoredups
|
||||
|
||||
# easily done with tail and head, but where's the fun in that?
|
||||
nth-from-end() {
|
||||
n=$1
|
||||
sed -n -e :a -e "\${P;q;};N;$((n+1)),\$D;ba" ${2}
|
||||
}
|
||||
|
||||
most-recent() {
|
||||
ls -t|head -1
|
||||
}
|
||||
|
||||
function google () {
|
||||
w3m http://www.google.co.uk/search?q="$@";
|
||||
}
|
||||
|
||||
function swap-lines() {
|
||||
sed -n "${1}h;${2}{p;x;p};2,3!p" ${3}
|
||||
}
|
||||
|
||||
function maths()
|
||||
{
|
||||
echo "scale=6;${@/x/*}"|bc
|
||||
}
|
||||
|
||||
function title()
|
||||
{
|
||||
wget --quiet -O- "${1}" | sed -n 's/<title>\([^<]*\)<\/title>.*/\1/p'
|
||||
}
|
||||
|
||||
alias set_last_dir='last_dir=$(expr "`history -p !$`" : "\(.*/\)");'
|
||||
|
||||
# Run commands on files in the same directory as the file in !$ (old = on last directory)
|
||||
old() {
|
||||
args=($@)
|
||||
command=${args[@]:0:${#args[@]}-1}
|
||||
file=${args[${#args[@]}-1]}
|
||||
last_dir=$(expr "`history -p !$`" : "\(.*/\)")
|
||||
echo ${command} ${last_dir}${file}
|
||||
${command} ${last_dir}${file}
|
||||
}
|
||||
|
||||
old2() {
|
||||
command=$1
|
||||
shift
|
||||
last_dir=$(expr "`history -p !$`" : "\(.*/\)")
|
||||
echo ${command} ${last_dir}${file}
|
||||
for file in $@
|
||||
do
|
||||
echo \$ ${command} ${last_dir}${file}
|
||||
${command} ${last_dir}${file}
|
||||
echo
|
||||
done
|
||||
}
|
||||
|
||||
#get_default_net_if()
|
||||
#{
|
||||
# sudo route -n get -inet default
|
||||
#}
|
||||
|
||||
# for use with keyboard shortcuts
|
||||
x()
|
||||
{
|
||||
xclip -o
|
||||
}
|
||||
xspeak()
|
||||
{
|
||||
echo "`x`"|festival --tts
|
||||
#espeak "`x`"
|
||||
}
|
||||
|
||||
function ag_less()
|
||||
{
|
||||
ag --color "${@}"|less -RXF
|
||||
}
|
||||
|
||||
function java_run()
|
||||
{
|
||||
javac "${@}"
|
||||
java "${@/.java/}"
|
||||
}
|
||||
|
||||
# useful for aliases
|
||||
function chdir()
|
||||
{
|
||||
|
||||
if [ $# -eq 0 ]; then
|
||||
#cd -
|
||||
echo -n "popd: "
|
||||
popd
|
||||
else
|
||||
#cd $@
|
||||
#pwd
|
||||
echo -n "pushd: "
|
||||
pushd $@
|
||||
fi
|
||||
}
|
||||
|
||||
function run_cmd()
|
||||
{
|
||||
echo "${@}"
|
||||
"${@}"
|
||||
}
|
||||
|
||||
alias gitlog="git log --since=yesterday --name-only"
|
||||
alias gitlog1="git log -p -1"
|
||||
alias gitfp1="git format-patch --stdout -1"
|
||||
alias gitvimdiff="git difftool --tool=vimdiff"
|
||||
alias gitgvimdiff="git difftool --tool=gvimdiff"
|
||||
# useful after commit, before push
|
||||
alias gitdevdiff="git diff origin/develop"
|
||||
alias gitmasterdiff="git diff origin/master"
|
||||
alias hadd='run_cmd $(history -p ^diff^add)'
|
||||
|
||||
alias dogs='run_cmd docker ps; run_cmd docker logs -f $(docker ps|sed 1d|awk '"'"'{print $1;}'"'"')'
|
||||
alias undock='sudo umount `mount|grep -o "/var/lib/docker/aufs/mnt/[a-z0-9]*"`'
|
||||
#alias gp="chdir ${VIEW_DIR} ; run_cmd git pull --rebase --stat ; chdir"
|
||||
#alias gs="chdir ${VIEW_DIR} ; run_cmd git stash ; chdir"
|
||||
#alias gsp="chdir ${VIEW_DIR} ; run_cmd git stash pop ; chdir"
|
||||
#alias gstat="chdir ${VIEW_DIR} ; run_cmd git -c color.status=always status | less -RXF ; chdir"
|
||||
|
||||
|
||||
function esvapi()
|
||||
{
|
||||
ref=${@// /%20}
|
||||
#wget --quiet -O- "http://www.esvapi.org/v2/rest/passageQuery?key=IP&passage=$ref"|lynx -dump -stdin|sed -n 's/\[[0-9]\+\] \?//g;/^Footnotes\|References/q;p'
|
||||
wget --quiet -O- "http://www.esvapi.org/v2/rest/passageQuery?key=IP&passage=$ref"|lynx -dump -stdin|gsed -n '/^\s*$/d;s/\[[0-9]\+\] \?//g;p;/(ESV)$/q'
|
||||
}
|
||||
|
||||
function bgw()
|
||||
{
|
||||
bv=${1}
|
||||
shift
|
||||
ref=${@// /%20}
|
||||
wget --quiet -O- "http://www.biblegateway.com/passage/?search=${ref}&version=${bv}"|lynx -dump -stdin|gsed -n "/^$@.*${bv}/,/^Footnotes/p"|grep -v "^Footnotes"
|
||||
}
|
||||
|
||||
function dl()
|
||||
{
|
||||
DAILY_LIGHT_URL="http://www.gnpcb.org/esv/mobile/devotions/daily.light/"
|
||||
#wget --quiet -O- "${DAILY_LIGHT_URL}"|lynx -dump -stdin|sed -n '/Morning/,/^\s*\[[0-9]/p'|sed -n '/^\s*\[[0-9]/q;p'|less
|
||||
if [ `date +%P` == "am" ]
|
||||
then
|
||||
wget --quiet -O- "${DAILY_LIGHT_URL}"|lynx -dump -stdin|sed -n '/^Morning$/,/^Evening$/p'|sed -n '/^\s*\[[0-9]/q;p'|head -n -2|less
|
||||
elif [ `date +%P` == "pm" ]
|
||||
then
|
||||
wget --quiet -O- "${DAILY_LIGHT_URL}"|lynx -dump -stdin|sed -n '/^Evening$/,/^\s*\[[0-9]/p'|sed -n '/^\s*\[[0-9]/q;p'|head -n -1|less
|
||||
else
|
||||
echo "Neither AM nor PM!"
|
||||
fi
|
||||
}
|
||||
|
||||
function pmp()
|
||||
{
|
||||
#sed -n "/`date +'%B %-d.%p'|sed 's,AM,Morning,;s,PM,Evening,'`/,/`date --date=tomorrow +'%B %-d'`/p" rh_pmp.txt | head -n -1 | less
|
||||
if [ `date +%P` == "am" ]
|
||||
then
|
||||
#sed -n "/`date +'%B %-d.Morning'`/,/`date +'%B %-d.Evening'`/p" rh_pmp.txt | head -n -1 | tr -d '\f' | less
|
||||
xzcat rh_pmp.txt.xz | sed -n "/`date +'%B %-d.Morning'`/,/`date +'%B %-d.Evening'`/p" | head -n -1 | tr -d '\f' | less
|
||||
elif [ `date +%P` == "pm" ]
|
||||
then
|
||||
#sed -n "/`date +'%B %-d.Evening'`/,/`date --date=tomorrow +'%B %-d.Morning'`/p" rh_pmp.txt | head -n -1 | tr -d '\f' | less
|
||||
xzcat rh_pmp.txt.xz | sed -n "/`date +'%B %-d.Evening'`/,/`date --date=tomorrow +'%B %-d.Morning'`/p" | head -n -1 | tr -d '\f' | less
|
||||
else
|
||||
echo "Neither AM nor PM!"
|
||||
fi
|
||||
}
|
||||
|
||||
function wsc()
|
||||
{
|
||||
grep ^[QA]$1: wsc.txt | fold -s | col -b
|
||||
}
|
||||
function wscq()
|
||||
{
|
||||
grep ^Q$1: wsc.txt | fold -s | col -b
|
||||
}
|
||||
function wsca()
|
||||
{
|
||||
grep ^A$1: wsc.txt | fold -s | col -b
|
||||
}
|
||||
|
||||
function wlc()
|
||||
{
|
||||
grep ^[QA]$1: wlc.txt | fold -s | col -b
|
||||
}
|
||||
function wlcq()
|
||||
{
|
||||
grep ^Q$1: wlc.txt | fold -s | col -b
|
||||
}
|
||||
function wlca()
|
||||
{
|
||||
grep ^A$1: wlc.txt | fold -s | col -b
|
||||
}
|
||||
|
||||
bible() {
|
||||
opt=""
|
||||
if [ "x$1" == "x-m" ]
|
||||
then
|
||||
opt="-o m"
|
||||
shift
|
||||
elif [ "x$1" == "x-a" ]
|
||||
then
|
||||
opt="-o a"
|
||||
shift
|
||||
elif [ "x$1" == "x-am" -o "x$1" == "x-ma" ]
|
||||
then
|
||||
opt="-o am"
|
||||
shift
|
||||
fi
|
||||
book=$1
|
||||
shift
|
||||
case $book in
|
||||
esv|niv|tniv|nasb|kjv|nkjv|nlt|hcsb|ylt|asv|lxx)
|
||||
book=${book^^*}
|
||||
;;
|
||||
amp)
|
||||
book=${book^*}
|
||||
;;
|
||||
net)
|
||||
book=NETfree
|
||||
;;
|
||||
esac
|
||||
diatheke -b "${book}" $opt -k "${*}"|grep -v '^$'|sed -e :a -e '/[0-9]: $/N;s/\([0-9][0-9]*\): \n/\1: /;ta'
|
||||
}
|
||||
|
||||
pll() {
|
||||
bible esv $@
|
||||
bible niv $@
|
||||
bible tniv $@
|
||||
bible kjv $@
|
||||
bible nkjv $@
|
||||
bible nasb $@
|
||||
bible net $@
|
||||
bible hcsb $@
|
||||
}
|
||||
|
||||
|
||||
# cricinfo functions (check, replace_urls, add_urls, remove_urls count_urls)
|
||||
function check()
|
||||
{
|
||||
while read i ; do
|
||||
#wget --quiet -O- "${i}" | sed -n 's/<title>\([^|]*\).*/\1/p'
|
||||
wget --quiet -O- "${i}" | sed -n 's/ *<title>\([^|<]*\).*/\1/p'|col
|
||||
done < ${HOME}/urls.txt
|
||||
}
|
||||
|
||||
function replace_urls()
|
||||
{
|
||||
if [ $# -eq 0 ]; then
|
||||
cat >| ${HOME}/urls.txt
|
||||
else
|
||||
: >| ${HOME}/urls.txt
|
||||
for url in "$@"; do
|
||||
echo $url >> ${HOME}/urls.txt
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
function add_urls()
|
||||
{
|
||||
if [ $# -eq 0 ]; then
|
||||
cat >> ${HOME}/urls.txt
|
||||
else
|
||||
for url in "$@"; do
|
||||
echo $url >> ${HOME}/urls.txt
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
function remove_urls()
|
||||
{
|
||||
gsed -i ${1}d ${HOME}/urls.txt
|
||||
}
|
||||
|
||||
function count_urls()
|
||||
{
|
||||
wc -l ${HOME}/urls.txt
|
||||
}
|
||||
|
||||
#pgrep -f raven || screen -S rav -d -m ssh -X -R 6728:localhost:22221 wadh2045@raven.linux.ox.ac.uk
|
||||
#pgrep -f ecs || screen -S ecs -d -m ssh -X -R 6728:localhost:22221 m04dm@booth1.ecs.ox.ac.uk
|
||||
#pgrep -f crow || screen -S crow -d -m ssh -X -D 8080 wadh2045@crow.linux.ox.ac.uk
|
||||
|
||||
|
||||
# cygwin
|
||||
if [[ "x$OS" == "xWindows_NT" ]]; then
|
||||
export nodosfilewarning=1
|
||||
export C=/cygdrive/c
|
||||
export WIN_HOME=$C/Users/davidmo
|
||||
|
||||
# eclipse :(
|
||||
[[ -d $WIN_HOME/workspaces ]] && export WORKSPACES=$WIN_HOME/workspaces
|
||||
fi
|
||||
|
||||
if [ -f ~/.fzf.bash ]; then
|
||||
. ~/.fzf.bash
|
||||
export FZF_DEFAULT_COMMAND='rg --files --no-ignore --hidden --follow -g "!{.git,node_modules}/*" 2> /dev/null'
|
||||
export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND"
|
||||
bind -x '"\C-p": vim $(fzf -m);'
|
||||
#export FZF_ALT_C_COMMAND="cd ~/; bfs -type d -nohidden | sed s/^\./~/"
|
||||
export FZF_ALT_C_COMMAND="rg --hidden --files --sort-files --null | xargs -0 dirname | sort -u"
|
||||
#else
|
||||
# [ -f /usr/share/fzf/completion.bash ] && . /usr/share/fzf/completion.bash
|
||||
# [ -f /usr/share/fzf/key-bindings.bash ] && . /usr/share/fzf/key-bindings.bash
|
||||
fi
|
||||
|
||||
if [ -f /usr/local/bin/tmuxp.bash ]; then
|
||||
. /usr/local/bin/tmuxp.bash
|
||||
fi
|
||||
|
||||
true
|
||||
|
||||
# vim: set et ts=4 tw=120 :
|
315
.muttrc
315
.muttrc
|
@ -1,315 +0,0 @@
|
|||
set header_cache=/home/djm/Mail/.hcache
|
||||
set pager_context=1
|
||||
set pager_index_lines=6 #show a mini-index in pager
|
||||
set menu_scroll
|
||||
#set pgp_verify_sig=no #dont show pgp in pager
|
||||
set status_on_top #put status line at top
|
||||
set sort=threads #sort by message threads in index
|
||||
|
||||
set editor="/usr/bin/vim -c \"set tw=72\""
|
||||
|
||||
set charset=UTF-8
|
||||
set send_charset=UTF-8
|
||||
#set file_charset="utf-8:iso-8859-1"
|
||||
set file_charset="UTF-8"
|
||||
|
||||
set status_format=" %r %b %f %n Del %d Msgs %m %l %> (%P)"
|
||||
set pager_format="%-10.10i %[!%a %b %d %R]"
|
||||
set date_format="!%H:%M %a %d %b "
|
||||
set index_format="%4C %Z %[%b%d] %-15.15F %s"
|
||||
set folder_format="%2C %t %8s %d %N %f"
|
||||
|
||||
#set sendmail="/usr/bin/msmtp"
|
||||
set sendmail="/home/djm/local/bin/msmtp"
|
||||
|
||||
set use_from=yes
|
||||
set from="REDACTED"
|
||||
set realname="David Morgan"
|
||||
set use_envelope_from=yes
|
||||
|
||||
set record="$HOME/Mail/sent" #sent mail is saved here
|
||||
set delete=yes #delete without prompting
|
||||
set include=yes #quote msg in reply
|
||||
set fast_reply=yes #no prompting on reply
|
||||
set beep=no #no noise
|
||||
#set beep_new=yes
|
||||
set markers=no #no + on wrapped lines
|
||||
set confirmappend=no #no prompt for save to =keep
|
||||
set to_chars=" +TCF" #no L for mail_list
|
||||
|
||||
#set folder = $HOME/Mail
|
||||
set folder = /home/djm/Mail
|
||||
mailboxes =spc
|
||||
mailboxes =lfsbc
|
||||
mailboxes =warwick
|
||||
mailboxes =oxford
|
||||
mailboxes =default
|
||||
mailboxes =gods_minute
|
||||
mailboxes =debian-testing-security-announce
|
||||
mailboxes =gentoo-other
|
||||
mailboxes =amazon
|
||||
mailboxes =ebay
|
||||
mailboxes =compsoc
|
||||
mailboxes =debian-testing
|
||||
mailboxes =debian-news
|
||||
mailboxes =debian-user
|
||||
mailboxes =london.pm
|
||||
mailboxes =london.pm_jobs
|
||||
mailboxes =pywm
|
||||
mailboxes =freebsd-security
|
||||
mailboxes =freebsd-python
|
||||
mailboxes =freebsd-announce
|
||||
mailboxes =freebsd-ports-announce
|
||||
mailboxes =freebsd-current
|
||||
mailboxes =freebsd-stable
|
||||
mailboxes =freebsd-bugs
|
||||
mailboxes =freebsd-ports-bugs
|
||||
mailboxes =freebsd-ports
|
||||
mailboxes =freebsd-hackers
|
||||
mailboxes =freebsd-questions
|
||||
mailboxes =freebsd-arch
|
||||
mailboxes =freebsd-net
|
||||
mailboxes =freebsd-emulation
|
||||
mailboxes =freebsd-virtualization
|
||||
mailboxes =freebsd-chromium
|
||||
mailboxes =freebsd-default
|
||||
mailboxes =redports
|
||||
mailboxes =vbox-announce
|
||||
mailboxes =vbox-dev
|
||||
mailboxes =gentoo-dev
|
||||
mailboxes =metal_leper
|
||||
mailboxes =casimir_effect
|
||||
mailboxes =oxlug
|
||||
mailboxes =wolves-lug
|
||||
mailboxes =soc
|
||||
mailboxes =lispnyc
|
||||
mailboxes =gentoo-bsd
|
||||
mailboxes =gentoo-gwn
|
||||
mailboxes =gentoo-forums
|
||||
mailboxes =gentoo-desktop-research
|
||||
mailboxes =gentoo-user
|
||||
mailboxes =gentoo-announce
|
||||
mailboxes =gentoo-security
|
||||
mailboxes =gentoo-sparc
|
||||
mailboxes =gentoo-portage-dev
|
||||
mailboxes =gentoo-desktop
|
||||
mailboxes =gentoo-desktop-research
|
||||
mailboxes =gentoo-performance
|
||||
mailboxes =rgrn
|
||||
mailboxes =mplayer
|
||||
mailboxes =vlc
|
||||
mailboxes =xine
|
||||
mailboxes =junk
|
||||
mailboxes =keep
|
||||
mailboxes =sent
|
||||
mailboxes =gentoo-bugs
|
||||
mailboxes =spam
|
||||
mailboxes =usenet_spam
|
||||
mailboxes =dns_reg_spam
|
||||
mailboxes =gmail_spam
|
||||
mailboxes =damaged
|
||||
|
||||
save-hook .* =keep/ #default mbox to (s)ave mail is =keep
|
||||
#subscribe gentoo-user gentoo-dev #subscribed to these lists
|
||||
|
||||
bind pager h display-toggle-weed #toggle headers with h key
|
||||
|
||||
# simulate the old url menu
|
||||
macro index \cb |urlview\n 'call urlview to extract URLs out of a message'
|
||||
macro pager \cb |urlview\n 'call urlview to extract URLs out of a message'
|
||||
|
||||
#run fetchmail by hitting key of G
|
||||
macro index G "!/home/djm/bin/getmail.sh\r"
|
||||
macro pager G "!/home/djm/bin/getmail.sh\r"
|
||||
|
||||
#use to edit .muttrc and then source it...no restart necessary
|
||||
macro generic ,sm ":source $HOME/.muttrc\r"
|
||||
|
||||
# default list of header fields to weed out when displaying mail
|
||||
#ignore them all and then unignore what you want to see
|
||||
ignore *
|
||||
unignore Date To From Subject X-Mailer Organization User-Agent CC
|
||||
hdr_order Date From To Subject X-Mailer User-Agent Organization
|
||||
|
||||
##your Mutt has to have some colors
|
||||
##these are for four levels of quoted text
|
||||
##they override the system settings in /etc/mutt/Muttrc
|
||||
|
||||
#color quoted green default
|
||||
#color quoted1 magenta blue
|
||||
#color quoted2 yellow default
|
||||
#color quoted3 red default
|
||||
#color signature cyan cyan
|
||||
|
||||
|
||||
#this color setup is copied from /etc/mutt/Muttrc.color
|
||||
#comment it out if you want the default colors in /etc/mutt/Muttrc
|
||||
# Je vois la vie en rose :-)
|
||||
#color hdrdefault brightcyan blue
|
||||
#color header brightwhite blue "^from:"
|
||||
#color header brightwhite blue "^subject:"
|
||||
|
||||
#color quoted brightgreen blue
|
||||
#color signature brightwhite blue
|
||||
|
||||
#color indicator blue green
|
||||
|
||||
#color error red black
|
||||
#mono error bold
|
||||
#color status black cyan
|
||||
#mono status bold
|
||||
#color tree yellow blue
|
||||
|
||||
#color tilde brightmagenta blue
|
||||
#color body brightwhite blue "[-a-z_0-9.]+@[-a-z_0-9.]+"
|
||||
#mono body bold "[-a-z_0-9.]+@[-a-z_0-9.]+"
|
||||
#color body brightyellow black "^Good signature"
|
||||
#mono body bold "^Good signature"
|
||||
#color body brightwhite red "^Bad signature from.*"
|
||||
#mono body bold "^Bad signature from.*"
|
||||
#color normal white blue
|
||||
#color message green black
|
||||
#color attachment brightgreen blue
|
||||
|
||||
# -*-muttrc-*-
|
||||
#
|
||||
# Command formats for gpg.
|
||||
#
|
||||
# This version uses gpg-2comp from
|
||||
# http://muppet.faveve.uni-stuttgart.de/~gero/gpg-2comp.tar.gz
|
||||
#
|
||||
# $Id: muttrc-gpg,v 1.4 2003/12/10 15:33:00 agriffis Exp $
|
||||
#
|
||||
# %p The empty string when no passphrase is needed,
|
||||
# the string "PGPPASSFD=0" if one is needed.
|
||||
#
|
||||
# This is mostly used in conditional % sequences.
|
||||
#
|
||||
# %f Most PGP commands operate on a single file or a file
|
||||
# containing a message. %f expands to this file's name.
|
||||
#
|
||||
# %s When verifying signatures, there is another temporary file
|
||||
# containing the detached signature. %s expands to this
|
||||
# file's name.
|
||||
#
|
||||
# %a In "signing" contexts, this expands to the value of the
|
||||
# configuration variable $pgp_sign_as. You probably need to
|
||||
# use this within a conditional % sequence.
|
||||
#
|
||||
# %r In many contexts, mutt passes key IDs to pgp. %r expands to
|
||||
# a list of key IDs.
|
||||
|
||||
# Note that we explicitly set the comment armor header since GnuPG, when used
|
||||
# in some localiaztion environments, generates 8bit data in that header, thereby
|
||||
# breaking PGP/MIME.
|
||||
|
||||
# decode application/pgp
|
||||
set pgp_decode_command="/usr/bin/gpg --charset utf-8 %?p?--passphrase-fd 0? --no-verbose --quiet --batch --output - %f"
|
||||
|
||||
# verify a pgp/mime signature
|
||||
set pgp_verify_command="/usr/bin/gpg --keyserver pgpkeys.mit.edu --keyserver-options honor-http-proxy --no-verbose --quiet --batch --output - --verify %s %f"
|
||||
|
||||
# decrypt a pgp/mime attachment
|
||||
set pgp_decrypt_command="/usr/bin/gpg --passphrase-fd 0 --no-verbose --quiet --batch --output - %f"
|
||||
|
||||
# create a pgp/mime signed attachment
|
||||
# set pgp_sign_command="/usr/bin/gpg-2comp --comment '' --no-verbose --batch --output - --passphrase-fd 0 --armor --detach-sign --textmode %?a?-u %a? %f"
|
||||
set pgp_sign_command="/usr/bin/gpg --no-verbose --batch --quiet --output - --passphrase-fd 0 --armor --detach-sign --textmode %?a?-u %a? %f"
|
||||
|
||||
# create a application/pgp signed (old-style) message
|
||||
# set pgp_clearsign_command="/usr/bin/gpg-2comp --comment '' --no-verbose --batch --output - --passphrase-fd 0 --armor --textmode --clearsign %?a?-u %a? %f"
|
||||
set pgp_clearsign_command="/usr/bin/gpg --charset utf-8 --no-verbose --batch --quiet --output - --passphrase-fd 0 --armor --textmode --clearsign %?a?-u %a? %f"
|
||||
|
||||
# create a pgp/mime encrypted attachment
|
||||
# set pgp_encrypt_only_command="pgpewrap gpg-2comp -v --batch --output - --encrypt --textmode --armor --always-trust -- -r %r -- %f"
|
||||
set pgp_encrypt_only_command="pgpewrap /usr/bin/gpg --charset utf-8 --batch --quiet --no-verbose --output - --encrypt --textmode --armor --always-trust -- -r %r -- %f"
|
||||
|
||||
# create a pgp/mime encrypted and signed attachment
|
||||
# set pgp_encrypt_sign_command="pgpewrap gpg-2comp --passphrase-fd 0 -v --batch --output - --encrypt --sign %?a?-u %a? --armor --always-trust -- -r %r -- %f"
|
||||
set pgp_encrypt_sign_command="pgpewrap /usr/bin/gpg --charset utf-8 --passphrase-fd 0 --batch --quiet --no-verbose --textmode --output - --encrypt --sign %?a?-u %a? --armor --always-trust -- -r %r -- %f"
|
||||
|
||||
# import a key into the public key ring
|
||||
set pgp_import_command="/usr/bin/gpg --no-verbose --import -v %f"
|
||||
|
||||
# export a key from the public key ring
|
||||
set pgp_export_command="/usr/bin/gpg --no-verbose --export --armor %r"
|
||||
|
||||
# verify a key
|
||||
set pgp_verify_key_command="/usr/bin/gpg --verbose --batch --fingerprint --check-sigs %r"
|
||||
|
||||
# read in the public key ring
|
||||
set pgp_list_pubring_command="/usr/bin/gpg --no-verbose --batch --quiet --with-colons --list-keys %r"
|
||||
|
||||
# read in the secret key ring
|
||||
set pgp_list_secring_command="/usr/bin/gpg --no-verbose --batch --quiet --with-colons --list-secret-keys %r"
|
||||
|
||||
# fetch keys
|
||||
# set pgp_getkeys_command="pkspxycwrap %r"
|
||||
|
||||
# pattern for good signature - may need to be adapted to locale!
|
||||
|
||||
# set pgp_good_sign="^gpg: Good signature from"
|
||||
|
||||
# OK, here's a version which uses gnupg's message catalog:
|
||||
set pgp_good_sign="`gettext -d gnupg -s 'Good signature from "' | tr -d '"'`"
|
||||
|
||||
# End of file...but it can go on and on and on....:)
|
||||
#
|
||||
#
|
||||
|
||||
# spamassassin report and classify:
|
||||
|
||||
macro index X1 "|/usr/bin/pyzor report"
|
||||
macro index X2 "|/usr/bin/razor-report"
|
||||
macro index H "|/usr/bin/sa-learn --ham --no-sync"
|
||||
macro index S "|/usr/bin/sa-learn --spam --no-sync"
|
||||
macro index U "!/usr/bin/sa-learn --sync"
|
||||
macro pager X1 "|/usr/bin/pyzor report"
|
||||
macro pager X2 "|/usr/bin/razor-report"
|
||||
macro pager H "|/usr/bin/sa-learn --ham --no-sync"
|
||||
macro pager S "|/usr/bin/sa-learn --spam --no-sync"
|
||||
macro pager U "!/usr/bin/sa-learn --sync"
|
||||
|
||||
## sidebar stuff
|
||||
#set sidebar_visible=yes
|
||||
#set sidebar_width=10
|
||||
#color sidebar_new yellow default
|
||||
#bind index \CP sidebar-prev
|
||||
#bind index \CN sidebar-next
|
||||
#bind index \CO sidebar-open
|
||||
#bind pager \CP sidebar-prev
|
||||
#bind pager \CN sidebar-next
|
||||
#bind pager \CO sidebar-open
|
||||
|
||||
#macro index c "<change-folder>?<toggle-milboxes>" "list mailboxes and change"
|
||||
#macro pager c "<change-folder>?<toggle-milboxes>" "list mailboxes and change"
|
||||
#
|
||||
charset-hook windows-1250 CP1250
|
||||
charset-hook windows-1251 CP1251
|
||||
charset-hook windows-1252 CP1252
|
||||
charset-hook windows-1253 CP1253
|
||||
charset-hook windows-1254 CP1254
|
||||
charset-hook windows-1255 CP1255
|
||||
charset-hook windows-1256 CP1256
|
||||
charset-hook windows-1257 CP1257
|
||||
charset-hook windows-1258 CP1258
|
||||
|
||||
#set implicit_autoview
|
||||
alternative_order text/plain text/enriched text/html
|
||||
|
||||
#color index yellow default ~v
|
||||
|
||||
#set mime_forward=yes
|
||||
#set mime_forward_rest=yes
|
||||
|
||||
set sidebar_visible=no
|
||||
|
||||
macro pager I "<change-newsgroup>"
|
||||
macro index I "<change-newsgroup>"
|
||||
macro attach I "<change-newsgroup>"
|
||||
|
||||
macro pager i "<exit>"
|
||||
#macro index i "<exit>"
|
||||
macro index i ":set sidebar_visible=no\n"
|
||||
macro attach i ":set sidebar_visible=no\n"
|
||||
|
14
.screenrc
14
.screenrc
|
@ -1,14 +0,0 @@
|
|||
defutf8 on
|
||||
encoding UTF-8
|
||||
vbell off
|
||||
defnonblock 5
|
||||
backtick 1 10 10 /home/djm/bin/showmail.sh
|
||||
|
||||
hardstatus alwayslastline "%{=}%{g}[ %{B}%D%d/%m%{W}%c:%s %{g}][%=%{w}%?%-Lw%?%{r}(%{W}%n*%f%?(%u)%?%{r})%{w}%?%+Lw%?%?%=%{g}][%=%1` ]"
|
||||
|
||||
|
||||
|
||||
#hardstatus alwayslastline "%{=}%{g}[%{B} %D %d/%m%{W}%c:%s %{g}][%= %{w}%?%-Lw%?%{r}(%{W}%n*%f %t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}]%=%1`"
|
||||
#hardstatus alwayslastline "%{=}%{g}[%{B} %D %d/%m%{W}%c:%s %{g}][%= %{w}%?%-Lw%?%{r}(%{W}%n*%f %t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][ %{W}:%l %{g}]"
|
||||
#hardstatus alwayslastline "%{= kw}%?%-Lw%?%{= kw}%n*%f %t%?(%u)%?%{= kw}%?%+Lw%?%{= kw} %=%1` %c %m/%d/%Y"
|
||||
|
56
.tmux.conf
56
.tmux.conf
|
@ -1,56 +0,0 @@
|
|||
unbind C-b
|
||||
set -g prefix C-a
|
||||
bind-key C-a last-window
|
||||
bind-key a send-prefix
|
||||
|
||||
set-window-option -g automatic-rename off
|
||||
set-option -g allow-rename off
|
||||
set-option -g default-terminal "screen-256color"
|
||||
|
||||
set -g bell-action current
|
||||
|
||||
bind-key . source-file ~/.tmux.conf \; display-message "~/.tmux.conf reloaded"
|
||||
|
||||
bind-key -n M-h select-pane -L
|
||||
bind-key -n M-j select-pane -D
|
||||
bind-key -n M-k select-pane -U
|
||||
bind-key -n M-l select-pane -R
|
||||
|
||||
# Fine adjustment (1 or 2 cursor cells per bump)
|
||||
bind -n S-Left resize-pane -L 2
|
||||
bind -n S-Right resize-pane -R 2
|
||||
bind -n S-Down resize-pane -D 1
|
||||
bind -n S-Up resize-pane -U 1
|
||||
|
||||
# Coarse adjustment (5 or 10 cursor cells per bump)
|
||||
bind -n C-Left resize-pane -L 10
|
||||
bind -n C-Right resize-pane -R 10
|
||||
bind -n C-Down resize-pane -D 5
|
||||
bind -n C-Up resize-pane -U 5
|
||||
|
||||
|
||||
set -g status-bg black
|
||||
set -g status-fg white
|
||||
|
||||
setw -g window-status-current-fg cyan
|
||||
setw -g window-status-current-format "#[fg=red,bold][#[fg=default]#F#I:#W#F#[fg=red,bold]]#[default]"
|
||||
setw -g window-status-format "#[fg=green]{#[default]#F#I:#W#F#[fg=green]}#[default]"
|
||||
|
||||
set -g status-left-length 17
|
||||
|
||||
set -g status-interval 1
|
||||
#set -g status-left "#[fg=green](#[bold]#S#[nobold])#[fg=green,nobold]@#[bold]#H#[default]"
|
||||
|
||||
## for sif
|
||||
#set -g status-left "#[fg=green](#[bold]#S#[nobold])#[fg=green,nobold]@#[fg=magenta]#H#[default]"
|
||||
#set -g status-right "#[fg=blue,bold]%a%d/%m#[fg=yellow]%H:%M:%S"
|
||||
|
||||
## for tyr
|
||||
#set -g status-left "#[fg=green](#[bold]#S#[nobold])#[fg=green,nobold]@#[fg=cyan]#H#[default]"
|
||||
#set -g status-right "#[fg=blue,bold]%a%d/%m#[fg=yellow]%H:%M:%S"
|
||||
|
||||
## for basil
|
||||
#set -g status-left "#[fg=green](#[bold]#S#[nobold])#[fg=green,nobold]@#[fg=yellow]#H#[default]"
|
||||
set -g status-left "#[fg=yellow]#H#[default]"
|
||||
set -g status-right "#[fg=magenta,bold]#(/home/djm/bin/showmail.sh)#[fg=blue]%a%d/%m#[fg=yellow]%H:%M:%S"
|
||||
|
423
.vimrc
423
.vimrc
|
@ -1,423 +0,0 @@
|
|||
scriptencoding utf-8
|
||||
set nocompatible
|
||||
filetype off
|
||||
|
||||
" set the runtime path to include Vundle and initialize
|
||||
set rtp+=~/.vim/bundle/Vundle.vim
|
||||
call vundle#begin()
|
||||
|
||||
Plugin 'VundleVim/Vundle.vim'
|
||||
|
||||
Plugin 'tmhedberg/SimpylFold'
|
||||
Plugin 'ctrlpvim/ctrlp.vim'
|
||||
Plugin 'mileszs/ack.vim'
|
||||
Plugin 'rking/ag.vim'
|
||||
Plugin 'vim-airline/vim-airline'
|
||||
Plugin 'vim-airline/vim-airline-themes'
|
||||
Plugin 'bling/vim-bufferline'
|
||||
Plugin 'majutsushi/tagbar'
|
||||
Plugin 'easymotion/vim-easymotion'
|
||||
Plugin 'SirVer/ultisnips'
|
||||
Plugin 'honza/vim-snippets'
|
||||
Plugin 'tpope/vim-surround'
|
||||
Plugin 'tpope/vim-commentary'
|
||||
Plugin 'tpope/vim-repeat'
|
||||
Plugin 'tpope/vim-vinegar'
|
||||
Plugin 'tpope/vim-fugitive'
|
||||
Plugin 'tpope/vim-eunuch'
|
||||
Plugin 'tpope/vim-unimpaired'
|
||||
Plugin 'tpope/vim-tbone'
|
||||
Plugin 'tpope/vim-abolish'
|
||||
Plugin 'tpope/vim-obsession'
|
||||
Plugin 'tpope/vim-speeddating'
|
||||
Plugin 'phillipberndt/python-imports.vim'
|
||||
Plugin 'ervandew/supertab'
|
||||
Plugin 'jiangmiao/auto-pairs'
|
||||
"Plugin 'jmcantrell/vim-virtualenv'
|
||||
"Plugin 'lambdalisue/vim-pyenv' " pip install pyenv
|
||||
Plugin 'mbbill/undotree'
|
||||
|
||||
" These take up a lot of space
|
||||
"Plugin 'klen/python-mode' " DISABLED
|
||||
Plugin 'davidhalter/jedi-vim' " pip install jedi
|
||||
|
||||
" Colours
|
||||
Plugin 'jnurmine/Zenburn'
|
||||
Plugin 'sjl/badwolf'
|
||||
Plugin 'tomasr/molokai'
|
||||
Plugin 'fmoralesc/vim-vitamins'
|
||||
Plugin 'altercation/vim-colors-solarized'
|
||||
Plugin 'ciaranm/inkpot'
|
||||
Plugin 'nanotech/jellybeans.vim'
|
||||
Plugin 'baskerville/bubblegum'
|
||||
Plugin 'morhetz/gruvbox'
|
||||
Plugin 'w0ng/vim-hybrid'
|
||||
Plugin 'mitsuhiko/fruity-vim-colorscheme'
|
||||
" Plugin 'chriskempson/base16-vim'
|
||||
Plugin 'NLKNguyen/papercolor-theme'
|
||||
Plugin 'Lokaltog/vim-distinguished'
|
||||
Plugin 'blueshirts/darcula'
|
||||
Plugin 'joshdick/onedark.vim'
|
||||
Plugin 'ajmwagar/vim-dues'
|
||||
Plugin 'rakr/vim-one'
|
||||
|
||||
" TODO: re-enable
|
||||
"Plugin 'scrooloose/syntastic'
|
||||
"Plugin 'Valloric/YouCompleteMe'
|
||||
|
||||
" Only need these when python-mode is disabled
|
||||
Plugin 'hynek/vim-python-pep8-indent'
|
||||
Plugin 'hdima/python-syntax'
|
||||
Plugin 'nvie/vim-flake8' " pip install flake8
|
||||
|
||||
call vundle#end()
|
||||
filetype plugin indent on
|
||||
|
||||
set encoding=utf-8
|
||||
syntax on
|
||||
|
||||
set splitbelow
|
||||
set splitright
|
||||
nnoremap <C-J> <C-W><C-J>
|
||||
nnoremap <C-K> <C-W><C-K>
|
||||
nnoremap <C-L> <C-W><C-L>
|
||||
nnoremap <C-H> <C-W><C-H>
|
||||
|
||||
nnoremap <C-c> <silent> <C-c>
|
||||
|
||||
inoremap <C-e> <C-o>$
|
||||
inoremap <C-a> <C-o>0
|
||||
|
||||
set foldmethod=indent
|
||||
set foldlevel=99
|
||||
let g:SimpylFold_docstring_preview=1
|
||||
|
||||
au BufNewFile,BufRead *.py
|
||||
\ set tabstop=4 |
|
||||
\ set softtabstop=4 |
|
||||
\ set shiftwidth=4 |
|
||||
\ set textwidth=79 |
|
||||
\ set expandtab |
|
||||
\ set autoindent |
|
||||
\ set fileformat=unix |
|
||||
\ let g:SuperTabDefaultCompletionType = "context" |
|
||||
\ let g:SuperTabContextDefaultCompletionType = "<c-x><c-o>"
|
||||
|
||||
augroup vimrc_autocmds
|
||||
autocmd!
|
||||
autocmd FileType python highlight Excess ctermbg=Red guibg=Red
|
||||
autocmd FileType python match Excess /\%79v.*/
|
||||
autocmd FileType python set nowrap
|
||||
augroup END
|
||||
|
||||
if has('gui_running')
|
||||
set background=dark
|
||||
colorscheme solarized
|
||||
else
|
||||
set t_Co=256
|
||||
colorscheme jellybeans
|
||||
"colorscheme fruity
|
||||
"colorscheme solarized
|
||||
"colorscheme inkpot
|
||||
"colorscheme zenburn
|
||||
"colorscheme molokai
|
||||
"colorscheme badwolf
|
||||
"colorscheme bubblegum-256-dark
|
||||
endif
|
||||
"call togglebg#map("<F9>")
|
||||
|
||||
" override colours on some systems
|
||||
if hostname() =~ '^wolfman'
|
||||
let g:gruvbox_termcolors=16
|
||||
colorscheme gruvbox
|
||||
elseif hostname() =~ '^CHESTER'
|
||||
colorscheme fruity
|
||||
endif
|
||||
|
||||
set number
|
||||
|
||||
nmap <leader>t <ESC>:TagbarToggle<cr>
|
||||
imap <leader>t <ESC>:TagbarToggle<cr>i
|
||||
|
||||
"let g:ycm_autoclose_preview_window_after_completion=1
|
||||
"map <leader>g :YcmCompleter GoToDefinitionElseDeclaration<CR>
|
||||
|
||||
let g:pydiction_location = '/home/user/.vim/bundle/pydiction/complete-dict'
|
||||
set laststatus=2
|
||||
" set showmode
|
||||
set noshowmode " turn this off for airline
|
||||
|
||||
set ruler
|
||||
set encoding=utf-8
|
||||
set showcmd
|
||||
set scrolloff=2
|
||||
"set autoindent
|
||||
"set smartindent
|
||||
"set cindent
|
||||
inoremap # X<BS>#
|
||||
set mouse=
|
||||
"if has('mouse')
|
||||
" set mouse=a
|
||||
"endif
|
||||
set incsearch
|
||||
set ignorecase
|
||||
set smartcase
|
||||
set cino=>4
|
||||
set showmatch
|
||||
set hlsearch
|
||||
" autocmd BufRead,BufNewFile *.lsp,*.lisp so ~/VIlisp-2.0/VIlisp.vim | set bufhidden=hide
|
||||
nmap <silent> <F3> :silent nohlsearch<CR>
|
||||
imap <silent> <F3> <C-o>:silent nohlsearch<CR>
|
||||
" colorscheme inkpot
|
||||
" colorscheme darkblue
|
||||
nmap <silent> <F4> :silent setlocal spell spelllang=en_gb<CR>
|
||||
imap <silent> <F4> <C-o>:silent setlocal spell spelllang=en_gb<CR>
|
||||
nmap <silent> <F5> :silent setlocal nospell<CR>
|
||||
imap <silent> <F5> <C-o>:silent setlocal nospell<CR>
|
||||
|
||||
nmap <silent> <F2> :silent set diffopt+=iwhite<CR>
|
||||
imap <silent> <F2> <C-o>:silent set diffopt+=iwhite<CR>
|
||||
|
||||
" on some systems this is not detected correcly
|
||||
set background=dark
|
||||
|
||||
autocmd BufRead *.upc set filetype=c
|
||||
autocmd BufRead *.gnu set filetype=gnuplot
|
||||
|
||||
autocmd FileType c,cpp set cindent
|
||||
|
||||
if !exists("autocommands_loaded")
|
||||
let autocommands_loaded = 1
|
||||
augroup C
|
||||
autocmd BufRead *.c set cindent
|
||||
augroup END
|
||||
endif
|
||||
|
||||
" gnu indentation style
|
||||
" augroup C
|
||||
" autocmd BufRead *.c set cinoptions={.5s,:.5s,+.5s,t0,g0,^-2,e-2,n-2,p2s,(0,=.5s formatoptions=croql cindent shiftwidth=4 tabstop=8
|
||||
" augroup END
|
||||
|
||||
" Show tabs and trailing whitespace visually
|
||||
"if (&termencoding == "utf-8") || has("gui_running")
|
||||
" if v:version >= 700
|
||||
" set list listchars=tab:»·,trail:·,extends:…,nbsp:‗
|
||||
" else
|
||||
" set list listchars=tab:»·,trail:·,extends:…
|
||||
" endif
|
||||
"else
|
||||
if v:version >= 700
|
||||
set list listchars=tab:>-,trail:.,extends:>,nbsp:_
|
||||
else
|
||||
set list listchars=tab:>-,trail:.,extends:>
|
||||
endif
|
||||
"endif
|
||||
|
||||
" Enable modelines only on secure vim versions
|
||||
if (v:version >= 604)
|
||||
set modeline
|
||||
else
|
||||
set nomodeline
|
||||
endif
|
||||
set tabstop=4
|
||||
set expandtab
|
||||
set shiftwidth=4
|
||||
set shiftround
|
||||
set matchpairs+=<:>
|
||||
|
||||
if has('gui')
|
||||
set guioptions-=m
|
||||
set guioptions-=T
|
||||
set guioptions-=l
|
||||
set guioptions-=L
|
||||
set guioptions-=r
|
||||
set guioptions-=R
|
||||
"set number
|
||||
end
|
||||
|
||||
" Nice statusbar - replaced by airline
|
||||
"set laststatus=2
|
||||
"set statusline=
|
||||
"set statusline+=%2*%-3.3n%0*\ " buffer number
|
||||
"set statusline+=%f\ " file name
|
||||
"set statusline+=%h%1*%m%r%w%0* " flags
|
||||
"set statusline+=\[%{strlen(&ft)?&ft:'none'}, " filetype
|
||||
"set statusline+=%{&encoding}, " encoding
|
||||
"set statusline+=%{&fileformat}] " file format
|
||||
"set statusline+=%= " right align
|
||||
"set statusline+=%2*0x%-8B\ " current char
|
||||
"set statusline+=%-14.(%l,%c%V%)\ %<%P " offset
|
||||
"if filereadable(expand("$VIM/vimfiles/plugin/vimbuddy.vim"))
|
||||
" set statusline+=\ %{VimBuddy()} " vim buddy
|
||||
"endif
|
||||
|
||||
if has('title') && (has('gui_running') || &title)
|
||||
set titlestring=
|
||||
set titlestring+=%f\ " file name
|
||||
set titlestring+=%h%m%r%w " flags
|
||||
set titlestring+=\ -\ %{v:progname} " program name
|
||||
endif
|
||||
|
||||
" If possible, try to use a narrow number column.
|
||||
if v:version >= 700
|
||||
try
|
||||
setlocal numberwidth=3
|
||||
catch
|
||||
endtry
|
||||
endif
|
||||
|
||||
" Filter expected errors from make
|
||||
"if has("eval") && v:version >= 700
|
||||
" let &makeprg='nice make $* 2>&1 \| sed -u -n '
|
||||
" let &makeprg.='-e "/should fail/s/:\([0-9]\)/∶\1/g" '
|
||||
" let &makeprg.='-e "/usr.share.aclocal.*underquoted/s/:\([0-9]\)/∶\1/g" '
|
||||
" let &makeprg.='-e "s/\([0-9]\{2\}\):\([0-9]\{2\}\):\([0-9]\{2\}\)/\1∶\2∶\3/g" '
|
||||
" let &makeprg.='-e "/-version-info/s/:\([0-9]\)/∶\1/g" '
|
||||
" let &makeprg.='-e "/^/p" '
|
||||
"endif
|
||||
|
||||
" autocmd FileType tex set makeprg=pdflatex\ %\ $*
|
||||
" autocmd FileType bib set makeprg=bibtex\ %\ $*
|
||||
|
||||
nmap q: :q
|
||||
|
||||
" tab completion - taken from ciaranm's vimrc
|
||||
"if has("eval")
|
||||
" function! CleverTab()
|
||||
" if strpart(getline('.'), 0, col('.') - 1) =~ '^\s*$'
|
||||
" return "\<Tab>"
|
||||
" else
|
||||
" return "\<C-N>"
|
||||
" endif
|
||||
" endfun
|
||||
" inoremap <Tab> <C-R>=CleverTab()<CR>
|
||||
" inoremap <S-Tab> <C-P>
|
||||
"endif
|
||||
|
||||
if has("autocmd")
|
||||
au VimEnter * nohls
|
||||
endif
|
||||
|
||||
set backspace=indent,eol,start
|
||||
set showfulltag
|
||||
set lazyredraw
|
||||
"set noerrorbells
|
||||
set visualbell
|
||||
|
||||
set wildmenu
|
||||
set wildignore+=*.o,*~,.lo,.class,*/target/**
|
||||
set suffixes+=.in,.a
|
||||
|
||||
set hidden
|
||||
|
||||
set winminheight=1
|
||||
|
||||
autocmd FileType perl set makeprg=perl\ -c\ %\ $*
|
||||
autocmd FileType perl set errorformat=%f:%l:%m
|
||||
autocmd FileType perl set autowrite
|
||||
|
||||
set viminfo='1000,f1,:1000,/1000
|
||||
set history=500
|
||||
|
||||
set backup
|
||||
"set patchmode=.clean
|
||||
|
||||
set dictionary=/usr/share/dict/words
|
||||
"set complete=.,w,u,t,i,d,k
|
||||
set complete=.,w,u,t,i,d
|
||||
|
||||
"autocmd BufRead *.py set smartindent cinwords=if,elif,else,for,while,try,except,finally,def,class
|
||||
"autocmd BufRead *.py set nocindent
|
||||
"autocmd BufWritePre *.py normal m`:%s/\s\+$//e ``
|
||||
|
||||
"let g:syntastic_python_checkers = ['pyflakes']
|
||||
"let g:syntastic_python_python_exec = 'python3'
|
||||
let g:syntastic_check_on_open = 0
|
||||
let g:syntastic_disabled_filetypes=['python'] " use jedi instead
|
||||
|
||||
set colorcolumn=80
|
||||
set cursorline
|
||||
nnoremap <silent> <Leader>l ml:execute 'match Search /\%'.line('.').'l/'<CR>
|
||||
nnoremap <silent> <Leader>m ml:execute 'match'<CR>
|
||||
|
||||
nnoremap <silent> <leader>c :execute 'sign unplace * buffer=' . bufnr('')<CR>
|
||||
nmap <leader>C <ESC>:lclose<CR>
|
||||
nmap <leader>x <ESC>:cclose<CR>
|
||||
|
||||
nmap <leader><tab> <ESC>:bnext<CR>
|
||||
|
||||
noremap <F8> :PymodeLintAuto<CR>
|
||||
|
||||
" python-mode config, hopefully without jedi-vim conflicts - BUNDLE DISABLED
|
||||
"let g:pymode_rope = 0
|
||||
"let g:pymode_rope_completion = 0
|
||||
"let g:pymode_indent = 1
|
||||
"let g:pymode_doc = 0
|
||||
""let g:pymode_doc_bind = '<leader>K'
|
||||
""let g:pymode_rope_goto_definition_bind = '<leader>g'
|
||||
"let g:pymode_lint = 1
|
||||
"let g:pymode_lint_write = 1
|
||||
""let g:pymode_lint_checker = "pyflakes,pep8,pylint,pep257,mccabe"
|
||||
"let g:pymode_lint_checker = "pyflakes,pep8"
|
||||
"let g:pymode_lint_message = 1
|
||||
"let g:pymode_lint_on_fly = 0
|
||||
"let g:pymode_lint_cwindow = 1
|
||||
"let g:pymode_virtualenv = 1
|
||||
"let g:pymode_breakpoint = 1
|
||||
"let g:pymode_breakpoint_bind = '<leader>B'
|
||||
"let g:pymode_run_bind = '<leader>R'
|
||||
"let g:pymode_syntax = 1
|
||||
"let g:pymode_syntax_all = 1
|
||||
"let g:pymode_syntax_indent_errors = g:pymode_syntax_all
|
||||
"let g:pymode_syntax_space_errors = g:pymode_syntax_all
|
||||
"let g:pymode_rope_autoimport = 1
|
||||
"let g:pymode_rope_autoimport_import_after_complete = 1
|
||||
|
||||
" if we're using hdima/python-syntax instead of python mode
|
||||
let python_highlight_all=1
|
||||
" if we're using nvie/vim-flake8 instead of python mode
|
||||
let g:flake8_show_quickfix=1
|
||||
let g:flake8_show_in_gutter=1
|
||||
let g:flake8_show_in_file=1
|
||||
"autocmd BufWritePost *.py call Flake8()
|
||||
autocmd FileType python map <buffer> <F6> :call flake8#Flake8UnplaceMarkers()<CR>
|
||||
|
||||
|
||||
" doesn't work with python3 (no activate_this.py)
|
||||
"py << EOF
|
||||
"import os.path
|
||||
"import sys
|
||||
"import vim
|
||||
"if 'VIRTUAL_ENV' in os.environ:
|
||||
" project_base_dir = os.environ['VIRTUAL_ENV']
|
||||
" sys.path.insert(0, project_base_dir)
|
||||
" activate_this = os.path.join(project_base_dir, 'bin/activate_this.py')
|
||||
" execfile(activate_this, dict(__file__=activate_this))
|
||||
"EOF
|
||||
|
||||
" disable this on slow systems
|
||||
let g:jedi#popup_on_dot = 0
|
||||
|
||||
if has('gui_running')
|
||||
let g:airline#extensions#tabline#enabled = 1
|
||||
let g:airline#extensions#tabline#buffer_nr_show = 1
|
||||
endif
|
||||
let g:airline#extensions#bufferline#enabled = 1
|
||||
"let g:airline#extensions#bufferline#overwrite_variables = 1
|
||||
|
||||
map <silent> <C-E> :silent Lexplore<CR>
|
||||
if has('gui_running')
|
||||
let g:netrw_liststyle = 3
|
||||
else
|
||||
let g:netrw_liststyle = 0
|
||||
endif
|
||||
let g:netrw_winsize = -20
|
||||
let g:netrw_browse_split = 4
|
||||
let g:netrw_banner = 0
|
||||
let g:netrw_altv = 1
|
||||
let g:netrw_preview = 1
|
||||
let g:netrw_sort_sequence = '[\/]$,*'
|
||||
let g:netrw_chgwin=2
|
||||
set autochdir
|
||||
|
||||
" vim: set shiftwidth=4 softtabstop=4 expandtab tw=72 :
|
210
.zshrc
210
.zshrc
|
@ -1,210 +0,0 @@
|
|||
# Personal Zsh configuration file. It is strongly recommended to keep all
|
||||
# shell customization and configuration (including exported environment
|
||||
# variables such as PATH) in this file or in files source by it.
|
||||
#
|
||||
# Documentation: https://github.com/romkatv/zsh4humans/blob/v5/README.md.
|
||||
|
||||
# Periodic auto-update on Zsh startup: 'ask' or 'no'.
|
||||
# You can manually run `z4h update` to update everything.
|
||||
zstyle ':z4h:' auto-update 'no'
|
||||
# Ask whether to auto-update this often; has no effect if auto-update is 'no'.
|
||||
zstyle ':z4h:' auto-update-days '28'
|
||||
|
||||
# Automaticaly wrap TTY with a transparent tmux ('integrated'), or start a
|
||||
# full-fledged tmux ('system'), or disable features that require tmux ('no').
|
||||
if [ -n "$SSH_CLIENT" ] || [ -n "$SSH_TTY" ] || [ -n "$INSIDE_EMACS" ]; then
|
||||
zstyle ':z4h:' start-tmux 'no'
|
||||
else
|
||||
zstyle ':z4h:' start-tmux 'system'
|
||||
fi
|
||||
# Move prompt to the bottom when zsh starts up so that it's always in the
|
||||
# same position. Has no effect if start-tmux is 'no'.
|
||||
zstyle ':z4h:' prompt-at-bottom 'yes'
|
||||
|
||||
# Keyboard type: 'mac' or 'pc'.
|
||||
if [ "$(uname 2> /dev/null)" = "Darwin" ]; then
|
||||
zstyle ':z4h:bindkey' keyboard 'mac'
|
||||
zstyle ':z4h:' iterm2-integration yes
|
||||
else
|
||||
zstyle ':z4h:bindkey' keyboard 'pc'
|
||||
fi
|
||||
|
||||
# Right-arrow key accepts one character ('partial-accept') from
|
||||
# command autosuggestions or the whole thing ('accept')?
|
||||
zstyle ':z4h:autosuggestions' forward-char 'accept'
|
||||
|
||||
# Recursively traverse directories when TAB-completing files.
|
||||
zstyle ':z4h:fzf-complete' recurse-dirs 'yes'
|
||||
|
||||
# Enable ('yes') or disable ('no') automatic teleportation of z4h over
|
||||
# ssh when connecting to these hosts.
|
||||
#zstyle ':z4h:ssh:example-hostname1' enable 'yes'
|
||||
#zstyle ':z4h:ssh:*.example-hostname2' enable 'no'
|
||||
# The default value if none of the overrides above match the hostname.
|
||||
zstyle ':z4h:ssh:*' enable 'no'
|
||||
|
||||
# Send these files over to the remote host when connecting over ssh to the
|
||||
# enabled hosts.
|
||||
#zstyle ':z4h:ssh:*' send-extra-files '~/.nanorc' '~/.env.zsh'
|
||||
|
||||
# Clone additional Git repositories from GitHub.
|
||||
#
|
||||
# This doesn't do anything apart from cloning the repository and keeping it
|
||||
# up-to-date. Cloned files can be used after `z4h init`. This is just an
|
||||
# example. If you don't plan to use Oh My Zsh, delete this line.
|
||||
z4h install ohmyzsh/ohmyzsh || return
|
||||
z4h install wfxr/forgit
|
||||
z4h install hlissner/zsh-autopair
|
||||
#z4h install marlonrichert/zsh-edit@main
|
||||
|
||||
zstyle ':z4h:ssh-agent:' start yes
|
||||
|
||||
# Install or update core components (fzf, zsh-autosuggestions, etc.) and
|
||||
# initialize Zsh. After this point console I/O is unavailable until Zsh
|
||||
# is fully initialized. Everything that requires user interaction or can
|
||||
# perform network I/O must be done above. Everything else is best done below.
|
||||
z4h init || return
|
||||
|
||||
# Extend PATH.
|
||||
path=(~/bin $path)
|
||||
|
||||
# Export environment variables.
|
||||
export GPG_TTY=$TTY
|
||||
|
||||
# Source additional local files if they exist.
|
||||
z4h source ~/.env.zsh
|
||||
|
||||
# Use additional Git repositories pulled in with `z4h install`.
|
||||
#
|
||||
# This is just an example that you should delete. It does nothing useful.
|
||||
#z4h source $Z4H/ohmyzsh/ohmyzsh/lib/diagnostics.zsh
|
||||
#z4h source $Z4H/ohmyzsh/ohmyzsh/plugins/emoji-clock/emoji-clock.plugin.zsh
|
||||
#fpath+=($Z4H/ohmyzsh/ohmyzsh/plugins/supervisor)
|
||||
|
||||
# Define key bindings.
|
||||
z4h bindkey z4h-backward-kill-word Ctrl+Backspace Ctrl+H
|
||||
z4h bindkey z4h-backward-kill-zword Ctrl+Alt+Backspace
|
||||
|
||||
z4h bindkey undo Ctrl+/ # undo the last command line change
|
||||
z4h bindkey redo Alt+/ # redo the last undone command line change
|
||||
|
||||
z4h bindkey z4h-cd-back Alt+Left # cd into the previous directory
|
||||
z4h bindkey z4h-cd-forward Alt+Right # cd into the next directory
|
||||
z4h bindkey z4h-cd-up Alt+Up # cd into the parent directory
|
||||
z4h bindkey z4h-cd-down Alt+Down # cd into a child directory
|
||||
|
||||
# Autoload functions.
|
||||
autoload -Uz zmv
|
||||
|
||||
# Define functions and completions.
|
||||
function md() { [[ $# == 1 ]] && mkdir -p -- "$1" && cd -- "$1" }
|
||||
compdef _directories md
|
||||
|
||||
# Define named directories: ~w <=> Windows home directory on WSL.
|
||||
[[ -n $z4h_win_home ]] && hash -d w=$z4h_win_home
|
||||
|
||||
# Define aliases.
|
||||
alias tree='tree -a -I .git'
|
||||
|
||||
# Add flags to existing aliases.
|
||||
alias ls="${aliases[ls]:-ls} -A"
|
||||
|
||||
# Set shell options: http://zsh.sourceforge.net/Doc/Release/Options.html.
|
||||
setopt glob_dots # no special treatment for file names with a leading dot
|
||||
setopt no_auto_menu # require an extra TAB press to open the completion menu
|
||||
|
||||
# https://gist.github.com/junegunn/8b572b8d4b5eddd8b85e5f4d40f17236
|
||||
# GIT heart FZF (functions)
|
||||
# -------------
|
||||
is_in_git_repo() {
|
||||
git rev-parse HEAD > /dev/null 2>&1
|
||||
}
|
||||
|
||||
fzf-down() {
|
||||
fzf --height 50% "$@" --border
|
||||
}
|
||||
|
||||
_gf() {
|
||||
is_in_git_repo || return
|
||||
git -c color.status=always status --short |
|
||||
fzf-down -m --ansi --nth 2..,.. \
|
||||
--preview '(git diff --color=always -- {-1} | sed 1,4d; cat {-1}) | head -500' |
|
||||
cut -c4- | sed 's/.* -> //'
|
||||
}
|
||||
|
||||
_gb() {
|
||||
is_in_git_repo || return
|
||||
git branch -a --color=always | grep -v '/HEAD\s' | sort |
|
||||
fzf-down --ansi --multi --tac --preview-window right:70% \
|
||||
--preview 'git log --oneline --graph --date=short --color=always --pretty="format:%C(auto)%cd %h%d %s" $(sed s/^..// <<< {} | cut -d" " -f1) | head -'$LINES |
|
||||
sed 's/^..//' | cut -d' ' -f1 |
|
||||
sed 's#^remotes/##'
|
||||
}
|
||||
|
||||
_gt() {
|
||||
is_in_git_repo || return
|
||||
git tag --sort -version:refname |
|
||||
fzf-down --multi --preview-window right:70% \
|
||||
--preview 'git show --color=always {} | head -'$LINES
|
||||
}
|
||||
|
||||
_gh() {
|
||||
is_in_git_repo || return
|
||||
git log --date=short --format="%C(green)%C(bold)%cd %C(auto)%h%d %s (%an)" --graph --color=always |
|
||||
fzf-down --ansi --no-sort --reverse --multi --bind 'ctrl-s:toggle-sort' \
|
||||
--header 'Press CTRL-S to toggle sort' \
|
||||
--preview 'grep -o "[a-f0-9]\{7,\}" <<< {} | xargs git show --color=always | head -'$LINES |
|
||||
grep -o "[a-f0-9]\{7,\}"
|
||||
}
|
||||
|
||||
_gr() {
|
||||
is_in_git_repo || return
|
||||
git remote -v | awk '{print $1 "\t" $2}' | uniq |
|
||||
fzf-down --tac \
|
||||
--preview 'git log --oneline --graph --date=short --pretty="format:%C(auto)%cd %h%d %s" {1} | head -200' |
|
||||
cut -d$'\t' -f1
|
||||
}
|
||||
|
||||
# fzf git keybindings
|
||||
join-lines() {
|
||||
local item
|
||||
while read item; do
|
||||
echo -n "${(q)item} "
|
||||
done
|
||||
}
|
||||
|
||||
bindkey -r '^g'
|
||||
|
||||
bind-git-helper() {
|
||||
local c
|
||||
for c in $@; do
|
||||
eval "fzf-g$c-widget() { local result=\$(_g$c | join-lines); zle reset-prompt; LBUFFER+=\$result }"
|
||||
eval "zle -N fzf-g$c-widget"
|
||||
eval "bindkey '^g^$c' fzf-g$c-widget"
|
||||
done
|
||||
}
|
||||
bind-git-helper f b t r h
|
||||
unset -f bind-git-helper
|
||||
|
||||
z4h source $Z4H/ohmyzsh/ohmyzsh/plugins/git/git.plugin.zsh
|
||||
z4h source $Z4H/wfxr/forgit/forgit.plugin.zsh
|
||||
z4h source $Z4H/hlissner/zsh-autopair/autopair.zsh
|
||||
#z4h source $Z4H/marlonrichert/zsh-edit/zsh-edit.plugin.zsh
|
||||
|
||||
eval "$(zoxide init zsh)"
|
||||
eval "$(direnv hook zsh)"
|
||||
#eval "$(gopass completion zsh)"
|
||||
|
||||
alias cp="cp -iv"
|
||||
alias mv="mv -iv"
|
||||
alias ln="ln -iv"
|
||||
alias mkdir="mkdir -v"
|
||||
alias rm="rm -iv"
|
||||
alias pp='pushbullet push "Pixel" link "${1}" "${1}"'
|
||||
alias upgrade_emacs='emacs -Q --batch -L "$HOME/.emacs.d/lisp/" -l "init-packages.el" --eval "(my/upgrade-packages)"'
|
||||
|
||||
if [[ -f ~/.nix-profile/etc/profile.d/nix.sh ]] ; then
|
||||
source ~/.nix-profile/etc/profile.d/nix.sh
|
||||
#export fpath=(~/.nix-profile/share/zsh/vendor-completions ${fpath})
|
||||
fi
|
||||
|
170
init.vim
170
init.vim
|
@ -1,170 +0,0 @@
|
|||
call plug#begin(stdpath('data') . '/plugged')
|
||||
|
||||
"Plug 'Olical/conjure', { 'for': 'clojure', 'do': 'bin/compile' }
|
||||
"Plug 'Olical/vim-scheme', { 'for': 'scheme', 'on': 'SchemeConnect' }
|
||||
Plug 'PeterRincker/vim-argumentative'
|
||||
"Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
|
||||
Plug 'airblade/vim-gitgutter'
|
||||
"Plug 'clojure-vim/acid.nvim', { 'do': ':UpdateRemotePlugins' }
|
||||
Plug 'clojure-vim/async-clj-omni', { 'for': 'clojure' }
|
||||
Plug 'ctrlpvim/ctrlp.vim'
|
||||
Plug 'easymotion/vim-easymotion'
|
||||
Plug 'embear/vim-localvimrc'
|
||||
Plug 'guns/vim-clojure-highlight', { 'for': 'clojure'}
|
||||
Plug 'guns/vim-clojure-static', { 'for': 'clojure' }
|
||||
Plug 'guns/vim-sexp'
|
||||
Plug 'itchyny/lightline.vim'
|
||||
Plug 'jiangmiao/auto-pairs'
|
||||
Plug 'junegunn/fzf' | Plug 'junegunn/fzf.vim'
|
||||
Plug 'kien/rainbow_parentheses.vim'
|
||||
Plug 'liuchengxu/vim-better-default'
|
||||
Plug 'liuchengxu/vim-clap'
|
||||
Plug 'machakann/vim-highlightedyank'
|
||||
Plug 'ncm2/float-preview.nvim'
|
||||
Plug 'ncm2/ncm2'
|
||||
Plug 'ncm2/ncm2-bufword'
|
||||
Plug 'ncm2/ncm2-path'
|
||||
"Plug 'neoclide/coc.nvim', {'branch': 'release'}
|
||||
Plug 'radenling/vim-dispatch-neovim'
|
||||
Plug 'rafi/awesome-vim-colorschemes'
|
||||
Plug 'roxma/nvim-yarp'
|
||||
Plug 'simnalamburt/vim-mundo'
|
||||
Plug 'snoe/clj-refactor.nvim', { 'for': 'clojure', 'do': ':UpdateRemotePlugins' }
|
||||
Plug 'srcery-colors/srcery-vim'
|
||||
Plug 'tpope/vim-abolish'
|
||||
Plug 'tpope/vim-commentary'
|
||||
Plug 'tpope/vim-dadbod'
|
||||
Plug 'tpope/vim-dispatch'
|
||||
Plug 'tpope/vim-eunuch'
|
||||
Plug 'tpope/vim-fireplace', { 'for': 'clojure', 'on': 'FireplaceConnect' }
|
||||
Plug 'tpope/vim-fugitive'
|
||||
Plug 'tpope/vim-obsession'
|
||||
Plug 'tpope/vim-repeat'
|
||||
Plug 'tpope/vim-sexp-mappings-for-regular-people'
|
||||
Plug 'tpope/vim-sleuth'
|
||||
Plug 'tpope/vim-speeddating'
|
||||
Plug 'tpope/vim-surround'
|
||||
Plug 'tpope/vim-tbone'
|
||||
Plug 'tpope/vim-unimpaired'
|
||||
Plug 'tpope/vim-vinegar'
|
||||
Plug 'venantius/vim-cljfmt', { 'for': 'clojure' }
|
||||
"Plug 'vim-airline/vim-airline' | Plug 'vim-airline/vim-airline-themes'
|
||||
Plug 'w0rp/ale'
|
||||
|
||||
call plug#end()
|
||||
|
||||
" enable ncm2 for all buffers
|
||||
autocmd BufEnter * call ncm2#enable_for_buffer()
|
||||
|
||||
" IMPORTANT: :help Ncm2PopupOpen for more information
|
||||
set completeopt=noinsert,menuone,noselect
|
||||
|
||||
"let g:python2_host_prog = '/home/linuxbrew/.linuxbrew/bin/python'
|
||||
"let g:python3_host_prog = '/home/linuxbrew/.linuxbrew/bin/python3'
|
||||
"let g:deoplete#enable_at_startup = 1
|
||||
"call deoplete#custom#option('keyword_patterns', {'clojure': '[\w!$%&*+/:<=>?@\^_~\-\.#]*'})
|
||||
"set completeopt-=preview
|
||||
|
||||
let g:float_preview#docked = 1
|
||||
"let g:float_preview#docked = 0
|
||||
"let g:float_preview#max_width = 80
|
||||
"let g:float_preview#max_height = 40
|
||||
|
||||
let g:ale_linters = {
|
||||
\ 'clojure': ['clj-kondo', 'joker']
|
||||
\}
|
||||
let g:ale_fixers = { '*': ['remove_trailing_lines', 'trim_whitespace'], }
|
||||
let g:ale_fix_on_save = 1
|
||||
|
||||
let g:lightline = {
|
||||
\ 'colorscheme': 'srcery',
|
||||
"\ 'colorscheme': 'one',
|
||||
"\ 'colorscheme': 'darcula',
|
||||
"\ 'colorscheme': 'selenized_dark',
|
||||
\ }
|
||||
|
||||
nnoremap <leader>ff :Files<cr>
|
||||
nnoremap <leader>fg :Rg<cr>
|
||||
nnoremap <leader>fb :Buffers<cr>
|
||||
nnoremap <leader>fc :Commands<cr>
|
||||
nnoremap <leader>fh :Helptags<cr>
|
||||
nnoremap <leader>fm :Maps<cr>
|
||||
nnoremap <leader>f: :History:<cr>
|
||||
nnoremap <leader>ft :Filetypes<cr>
|
||||
nnoremap <leader>fr :History<cr>
|
||||
nnoremap <leader>* :Rg <c-r><c-w><cr>
|
||||
|
||||
command! -bang -nargs=* Rg
|
||||
\ call fzf#vim#grep(
|
||||
\ 'rg --hidden -g "!.git/" --column --line-number --no-heading --color=never '.shellescape(<q-args>), 1,
|
||||
\ <bang>0 ? fzf#vim#with_preview('up:60%')
|
||||
\ : fzf#vim#with_preview('right:50%:hidden', '?'),
|
||||
\ <bang>0)
|
||||
let g:airline_theme='base16_spacemacs'
|
||||
let g:vim_better_default_persistent_undo = 1
|
||||
|
||||
runtime! plugin/default.vim
|
||||
|
||||
set undodir=~/.config/nvim/undo
|
||||
set wrap
|
||||
set clipboard-=unnamedplus
|
||||
let g:clap_provider_grep_delay = 50
|
||||
let g:clap_provider_grep_opts = '-H --no-heading --vimgrep --smart-case --hidden -g "!.git/"'
|
||||
|
||||
nnoremap <leader>* :Clap grep ++query=<cword><cr>
|
||||
nnoremap <leader>fg :Clap grep<cr>
|
||||
nnoremap <leader>ff :Clap files --hidden<cr>
|
||||
nnoremap <leader>fb :Clap buffers<cr>
|
||||
nnoremap <leader>fw :Clap windows<cr>
|
||||
nnoremap <leader>fr :Clap history<cr>
|
||||
nnoremap <leader>fh :Clap command_history<cr>
|
||||
nnoremap <leader>fj :Clap jumps<cr>
|
||||
nnoremap <leader>fl :Clap blines<cr>
|
||||
nnoremap <leader>fL :Clap lines<cr>
|
||||
nnoremap <leader>ft :Clap filetypes<cr>
|
||||
nnoremap <leader>fm :Clap marks<cr>
|
||||
|
||||
map <leader>j <plug>(easymotion-prefix)
|
||||
autocmd FileType clojure nnoremap <buffer> <localleader>re :Eval<cr>
|
||||
autocmd FileType clojure vnoremap <buffer> <localleader>re :Eval<cr>
|
||||
autocmd FileType clojure nnoremap <buffer> <localleader>rf :%Eval<cr>
|
||||
autocmd FileType clojure nnoremap <buffer> <localleader>rr :Require<cr>
|
||||
autocmd FileType clojure nnoremap <buffer> <localleader>rR :Require!<cr>
|
||||
autocmd FileType clojure nnoremap <buffer> <localleader>rt :RunTests<cr>
|
||||
autocmd FileType clojure nnoremap <buffer> <localleader>rl :Last<cr>
|
||||
autocmd FileType clojure nnoremap <buffer> <localleader>rc :FireplaceConnect<cr>
|
||||
autocmd FileType clojure nnoremap <buffer> gd :normal [<c-d><cr>
|
||||
nnoremap <leader>gs :Gstatus<cr>
|
||||
nnoremap <leader>gb :Gblame<cr>
|
||||
nnoremap <leader>gd :Gdiff<cr>
|
||||
nnoremap <leader>gp :Gpush<cr>
|
||||
nnoremap <leader>gl :Gpull<cr>
|
||||
nnoremap <leader>gf :Gfetch<cr>
|
||||
nnoremap <leader>gcc :Gcommit --verbose<cr>
|
||||
nnoremap <leader>gca :Gcommit --all --verbose<cr>
|
||||
nnoremap <leader>gdl :diffget LOCAL<CR>
|
||||
nnoremap <leader>gdr :diffget REMOTE<CR>
|
||||
let g:localvimrc_persistent = 1
|
||||
nnoremap <leader>ut :MundoToggle<cr>
|
||||
|
||||
"colorscheme space-vim-dark
|
||||
colorscheme srcery
|
||||
|
||||
set termguicolors
|
||||
set list
|
||||
set spell
|
||||
set wildmenu
|
||||
set wildmode=list:longest,full
|
||||
set mouse=a
|
||||
set updatetime=100
|
||||
set sessionoptions=blank,curdir,folds,help,tabpages,winsize
|
||||
set inccommand=split
|
||||
|
||||
au VimEnter * RainbowParenthesesToggle
|
||||
au Syntax * RainbowParenthesesLoadRound
|
||||
au Syntax * RainbowParenthesesLoadSquare
|
||||
au Syntax * RainbowParenthesesLoadBraces
|
||||
|
||||
set number
|
||||
set norelativenumber
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
prompt_order = [
|
||||
"username",
|
||||
"hostname",
|
||||
"kubernetes",
|
||||
"directory",
|
||||
"git_branch",
|
||||
"git_state",
|
||||
"git_status",
|
||||
"package",
|
||||
"dotnet",
|
||||
"golang",
|
||||
"haskell",
|
||||
"java",
|
||||
"nodejs",
|
||||
"python",
|
||||
"ruby",
|
||||
"rust",
|
||||
"nix_shell",
|
||||
"memory_usage",
|
||||
"aws",
|
||||
"env_var",
|
||||
"battery",
|
||||
"cmd_duration",
|
||||
"time",
|
||||
"line_break",
|
||||
"jobs",
|
||||
"character",
|
||||
]
|
||||
|
||||
[time]
|
||||
disabled = false
|
||||
#format = "🕙[ %T %D ]"
|
||||
format = "🕙[ %T %v ]"
|
||||
|
||||
#[character]
|
||||
#symbol = "⮞"
|
||||
#vicmd_symbol = "⮜"
|
||||
|
Loading…
Reference in New Issue