summaryrefslogtreecommitdiff
path: root/.config/bash
diff options
context:
space:
mode:
authorben <benjaminfranzke@googlemail.com>2010-03-26 16:44:31 +0100
committerben <benjaminfranzke@googlemail.com>2010-03-26 16:44:31 +0100
commitb4934dbaee78584e802c29bae23524044cb7bb79 (patch)
tree8b359a1a810c18ec86c714281d0c065faee02575 /.config/bash
parente2c50941bdf69f8bc1c77c44a27eb29c6c55da17 (diff)
parent6ad8884c16562bb00e987e46c3424edc5e43b961 (diff)
downloaddotfiles-b4934dbaee78584e802c29bae23524044cb7bb79.tar.gz
dotfiles-b4934dbaee78584e802c29bae23524044cb7bb79.tar.bz2
dotfiles-b4934dbaee78584e802c29bae23524044cb7bb79.zip
Merge branch 'master' of github.com:benf/dotfiles
Conflicts: .config/bash/alias.sh
Diffstat (limited to '.config/bash')
-rw-r--r--.config/bash/alias.sh8
-rw-r--r--.config/bash/environment.sh16
-rw-r--r--.config/bash/functions.sh258
3 files changed, 162 insertions, 120 deletions
diff --git a/.config/bash/alias.sh b/.config/bash/alias.sh
index 8e88eff..d5a6c71 100644
--- a/.config/bash/alias.sh
+++ b/.config/bash/alias.sh
@@ -8,7 +8,12 @@ alias gplay="gnome-mplayer"
# list hidden files - if directory do NOT show contents and dont display ".."
alias lh="ls -d .[^.]*"
alias la="ls -a"
+
+# resizing terminal
alias r="resize_to_min 100 35"
+alias s="resize 60 17"
+
+# resize terminal before launching curses-apps
alias vim="r; vim"
alias man="r; man"
@@ -18,3 +23,6 @@ alias hhtml="highlight --wrap --xhtml --linenumbers --anchors --linenumbers --an
alias use="quse -D"
alias tv="~/.scripts/tv.sh"
+# typos
+alias sl=ls
+
diff --git a/.config/bash/environment.sh b/.config/bash/environment.sh
index 5374027..436bc02 100644
--- a/.config/bash/environment.sh
+++ b/.config/bash/environment.sh
@@ -1,8 +1,14 @@
#export PAGER="col -b 2>/dev/null | view -c 'set ft=man' -c 'set titlestring=[view]man' -c 'set number!' -"
#export PAGER="sed 's/\[[^m]*m//g; s/.//g' | view -c 'set ft=man' -c 'set titlestring=[view]man' -c 'set number!' -"
+
#export MANWIDTH=4294967296
#export PAGER="sed 's/\[[^m]*m//g' | view -c 'set ft=man' -c 'set titlestring=[view]man' -c 'set number!' -"
+# from dell-notebook
+# \x1b = \e ; \x08 = ^H (backspace)
+#PAGER="sed 's/\\x1b\[[^m]*m//g; s/\\x08.//g' | \
+# view -c 'set ft=man' -c 'set titlestring=man' -c 'set number!' -"
+
# since vim has support - use built in ones..
export MANPAGER="vimmanpager"
export PAGER="vimpager"
@@ -66,15 +72,21 @@ CMD="\$(date +%H:%M)"
#for matlab - wont start with out this
#export LIBXCB_ALLOW_SLOPPY_LOCK=true
-#for sdl
+# configure audio
export SDL_AUDIODRIVER=alsa
export AUDIODEV=plug:upmix
-
+# set XDG corresponding variables
export XDG_DATA_HOME="${HOME}/.config"
export XDG_CONFIG_HOME="${HOME}/.config"
export XDG_CACHE_HOME="${HOME}/.cache"
+
+# readline should read its user config from this path instead ~/.inputrc
export INPUTRC="${XDG_CONFIG_HOME}/readline/inputrc"
# manually set vim's vimrc variable and then source that file on vim startup
export VIMINIT='let $MYVIMRC="$XDG_CONFIG_HOME/vim/vimrc" | source $MYVIMRC'
+
+# matlow wont start on some system without this
+export LIBXCB_ALLOW_SLOPPY_LOCK=true
+
diff --git a/.config/bash/functions.sh b/.config/bash/functions.sh
index 34bd71b..c3782b3 100644
--- a/.config/bash/functions.sh
+++ b/.config/bash/functions.sh
@@ -1,113 +1,135 @@
max() { [[ $# -eq 2 ]] && ( [[ $1 -ge $2 ]] && echo $1 || echo $2 ) }
+# param: width = $1, height = $2
+resize() {
+ printf "\e[8;%d;%dt" $2 $1
+}
+
+#s() {
+# local name=${HOSTNAME}.${1}
+# if [ $1 ]; then
+# if [ -e /var/run/screen/S-$(whoami)/[0-9]*.${name} ]; then
+# echo foo
+# # screen -x -r -S ${name}
+# else
+# screen -S ${name}
+# fi
+# else
+# screen -ls
+# fi
+#}
+
resize_to_min() {
-# eval $(resize -s $(max $LINES $2) $(max $COLUMNS $1))
- printf "\e[8;%d;%dt" $(max $LINES $2) $(max $COLUMNS $1)
+ # eval $(resize -s $(max $LINES $2) $(max $COLUMNS $1))
+ printf "\e[8;%d;%dt" $(max $LINES $2) $(max $COLUMNS $1)
}
+nh() {
+ nohup "$@" &> /dev/null &
+}
gvim() {
/usr/bin/gvim $([[ $# > 0 ]] && echo --remote-tab-silent $@)
}
print_prompt_nl_if_needed() {
- local pos
- local char
- local ok=0
- local save=$(stty -g)
-
- stty -echo -icanon
- echo -en '\e[6n' 1>&2
- #response format: \e[n;mR (m is needed)
- while true
- do
- #char=$(dd bs=1 count=1 2>/dev/null)
- char=$(head -c1)
- [[ $char == 'R' ]] && break
- [[ $ok -eq 1 ]] && pos="${pos}${char}"
- [[ $char == ';' ]] && ok=1
- done
-
- stty $save
- [[ $pos -gt 1 ]] && echo 1>&2
+ local pos
+ local char
+ local ok=0
+ local save=$(stty -g)
+
+ stty -echo -icanon
+ echo -en '\e[6n' 1>&2
+ #response format: \e[n;mR (m is needed)
+ while true
+ do
+ #char=$(dd bs=1 count=1 2>/dev/null)
+ char=$(head -c1)
+ [[ $char == 'R' ]] && break
+ [[ $ok -eq 1 ]] && pos="${pos}${char}"
+ [[ $char == ';' ]] && ok=1
+ done
+
+ stty $save
+ [[ $pos -gt 1 ]] && echo 1>&2
}
qjoypad() {
- $(which qjoypad) --device /dev/input $@
+ $(which qjoypad) --device /dev/input $@
}
jdownloader() {
- $(java-config --java) -jar ~/Desktop/jdownloader/JDownloader.jar
+ $(java-config --java) -jar ~/Desktop/jdownloader/JDownloader.jar
}
start() {
- #local dir=/home/ben/coding/cpp/starter/
- #"${dir}"start "${dir}"command.sh $@ >> /dev/null 2>&1
-# nohup "$@" &>/dev/null &
- /home/ben/coding/cpp/starter/start \
- bash -c "source ~/.bashrc.functions; ${@} >> /dev/null 2>&1"
+ #local dir=/home/ben/coding/cpp/starter/
+ #"${dir}"start "${dir}"command.sh $@ >> /dev/null 2>&1
+ # nohup "$@" &>/dev/null &
+ /home/ben/coding/cpp/starter/start \
+ bash -c "source ~/.bashrc.functions; ${@} >> /dev/null 2>&1"
}
ts() {
- start /opt/bin/TeamSpeak $@
+ start /opt/bin/TeamSpeak $@
}
eworld() {
- local packages=$(/usr/bin/eix -u --only-names)
- [[ -n $packages ]] && /usr/bin/sudo /usr/bin/emerge --verbose --ask --update --oneshot $packages
+ local packages=$(/usr/bin/eix -u --only-names)
+ [[ -n $packages ]] && /usr/bin/sudo /usr/bin/emerge --verbose --ask --update --oneshot $packages
}
uflag() {
- local use=`echo ${1} | sed -n "s/[^a-Z0-9\-]//g; p"`
- # [[ -n $use ]] && sed -n "/\(^\|:\)$use -/p" /usr/portage/profiles/use* | grep --color $use
- files="/usr/portage/profiles/use.desc /usr/portage/profiles/desc/*"
- echo "global use flags (searching: ${use})"
- [[ -n $use ]] && sed -n "s~^\(\(.*/.*\):\)\?\(${use} \)\(.*\)$~&~p" $files
-
- echo -e "\nlocal useflags (searching: ${use})"
- [[ -n $use ]] && sed -n "s~^\(\(.*/.*\):\)\?\(${use}\)[[:space:]]*-[[:space:]]*\(.*\)$~\3 (\2):\n\4~p" /usr/portage/profiles/use.local.desc
+ local use=`echo ${1} | sed -n "s/[^a-Z0-9\-]//g; p"`
+ # [[ -n $use ]] && sed -n "/\(^\|:\)$use -/p" /usr/portage/profiles/use* | grep --color $use
+ files="/usr/portage/profiles/use.desc /usr/portage/profiles/desc/*"
+ echo "global use flags (searching: ${use})"
+ [[ -n $use ]] && sed -n "s~^\(\(.*/.*\):\)\?\(${use} \)\(.*\)$~&~p" $files
+
+ echo -e "\nlocal useflags (searching: ${use})"
+ [[ -n $use ]] && sed -n "s~^\(\(.*/.*\):\)\?\(${use}\)[[:space:]]*-[[:space:]]*\(.*\)$~\3 (\2):\n\4~p" /usr/portage/profiles/use.local.desc
}
tstart() {
- [[ -n `ps -C $1 | sed -n 's/^.\([0-9][0-9]*\).*$/\1/p'` ]] && killall $1 || $1
+ [[ -n `ps -C $1 | sed -n 's/^.\([0-9][0-9]*\).*$/\1/p'` ]] && killall $1 || $1
}
up() {
- local server=netdirekt
+ local server=netdirekt
- if [[ -f $1 ]]; then
- local rand=`date +%s | md5sum | sed -n 's/^\(...\).*$/\1/p'`
- local name="${rand}-`basename $1`"
- scp -q $1 $server:"/home/benjamin/uploads/${name}" || exit
+ if [[ -f $1 ]]; then
+ local rand=`date +%s | md5sum | sed -n 's/^\(...\).*$/\1/p'`
+ local name="${rand}-`basename $1`"
+ scp -q $1 $server:"/home/benjamin/uploads/${name}" || exit
- local cmd="sudo chown lighttpd:lighttpd /home/benjamin/uploads/${name}"
- ssh -q $server $cmd || exit
+ local cmd="sudo chown lighttpd:lighttpd /home/benjamin/uploads/${name}"
+ ssh -q $server $cmd || exit
local ext=$(echo $1 | sed "s/^.*\.\([^\.]*\)$/\\1/")
local types="dummy txt $(sed -n "s/^\$ext(\(.*\))=\(.*\)$/\\1 \\2/p" /etc/highlight/filetypes.conf) dummy"
[[ -n $(echo $types | grep " $ext ") ]] && \
- local url="http://89.149.199.86/highlight/${name}" || \
- local url="http://89.149.199.86/filebase/files/${name}"
+ local url="http://89.149.199.86/highlight/${name}" || \
+ local url="http://89.149.199.86/filebase/files/${name}"
- echo -n $url | xclip -selection clipboard
- echo -n $url | xclip -selection primary
- echo $url
- fi
+ echo -n $url | xclip -selection clipboard
+ echo -n $url | xclip -selection primary
+ echo $url
+ fi
}
function calc() { echo "$*" | bc; }
pdftojpeg() {
- if [ -z $2 ] || [ $1 = "--help" ] || [ $1 = "-h" ]; then
- echo "Usage: pdftojpeg <input.pdf> <output.jpg>"
- elif [ -e $2 ]; then
- echo "Error: $2 existiert bereits!"
- else
- pdftoppm -l 1 "$1" | convert - -resize "176x248" "$2"
- #pdftoppm -l 1 -scale-to 248 "$1" -- | cjpeg > "$2"
- fi
+ if [ -z $2 ] || [ $1 = "--help" ] || [ $1 = "-h" ]; then
+ echo "Usage: pdftojpeg <input.pdf> <output.jpg>"
+ elif [ -e $2 ]; then
+ echo "Error: $2 existiert bereits!"
+ else
+ pdftoppm -l 1 "$1" | convert - -resize "176x248" "$2"
+ #pdftoppm -l 1 -scale-to 248 "$1" -- | cjpeg > "$2"
+ fi
}
unpack() {
@@ -123,81 +145,81 @@ unpack() {
y=${x%.*}
y=${y##*.}
-# if [[ ${x} == "./"* ]] ; then
-# srcdir=""
-# elif [[ ${x} == ${DISTDIR%/}/* ]] ; then
-# die "Arguments to unpack() cannot begin with \${DISTDIR}."
-# elif [[ ${x} == "/"* ]] ; then
-# die "Arguments to unpack() cannot be absolute"
-# else
-# srcdir="${DISTDIR}/"
-# fi
+ # if [[ ${x} == "./"* ]] ; then
+ # srcdir=""
+ # elif [[ ${x} == ${DISTDIR%/}/* ]] ; then
+ # die "Arguments to unpack() cannot begin with \${DISTDIR}."
+ # elif [[ ${x} == "/"* ]] ; then
+ # die "Arguments to unpack() cannot be absolute"
+ # else
+ # srcdir="${DISTDIR}/"
+ # fi
[[ ! -s ${x} ]] && die "${x} does not exist"
myfail="failure unpacking ${x}"
case "${x##*.}" in
tar)
- tar xof "${x}" ${tar_opts} || die "$myfail"
- ;;
+ tar xof "${x}" ${tar_opts} || die "$myfail"
+ ;;
tgz)
- tar xozf "${x}" ${tar_opts} || die "$myfail"
- ;;
+ tar xozf "${x}" ${tar_opts} || die "$myfail"
+ ;;
tbz|tbz2)
- bzip2 -dc "${x}" | tar xof - ${tar_opts}
- #assert "$myfail"
- ;;
+ bzip2 -dc "${x}" | tar xof - ${tar_opts}
+ #assert "$myfail"
+ ;;
ZIP|zip|jar)
- unzip -qo "${x}" || die "$myfail"
- ;;
+ unzip -qo "${x}" || die "$myfail"
+ ;;
gz|Z|z)
- if [ "${y}" == "tar" ]; then
- tar zoxf "${x}" ${tar_opts} || die "$myfail"
- else
- gzip -dc "${x}" > ${x%.*} || die "$myfail"
- fi
- ;;
+ if [ "${y}" == "tar" ]; then
+ tar zoxf "${x}" ${tar_opts} || die "$myfail"
+ else
+ gzip -dc "${x}" > ${x%.*} || die "$myfail"
+ fi
+ ;;
bz2|bz)
- if [ "${y}" == "tar" ]; then
- bzip2 -dc "${x}" | tar xof - ${tar_opts}
- assert "$myfail"
- else
- bzip2 -dc "${x}" > ${x%.*} || die "$myfail"
- fi
- ;;
+ if [ "${y}" == "tar" ]; then
+ bzip2 -dc "${x}" | tar xof - ${tar_opts}
+ assert "$myfail"
+ else
+ bzip2 -dc "${x}" > ${x%.*} || die "$myfail"
+ fi
+ ;;
7Z|7z)
- local my_output
- my_output="$(7z x -y "${x}")"
- if [ $? -ne 0 ]; then
- echo "${my_output}" >&2
- die "$myfail"
- fi
- ;;
+ local my_output
+ my_output="$(7z x -y "${x}")"
+ if [ $? -ne 0 ]; then
+ echo "${my_output}" >&2
+ die "$myfail"
+ fi
+ ;;
RAR|rar)
- unrar x -idq -o+ "${x}" || die "$myfail"
- ;;
+ unrar x -idq -o+ "${x}" || die "$myfail"
+ ;;
LHa|LHA|lha|lzh)
- lha xfq "${x}" || die "$myfail"
- ;;
+ lha xfq "${x}" || die "$myfail"
+ ;;
a|deb)
- ar x "${x}" || die "$myfail"
- ;;
+ ar x "${x}" || die "$myfail"
+ ;;
lzma)
- if [ "${y}" == "tar" ]; then
- lzma -dc "${x}" | tar xof - ${tar_opts}
- assert "$myfail"
- else
- lzma -dc "${x}" > ${x%.*} || die "$myfail"
- fi
- ;;
+ if [ "${y}" == "tar" ]; then
+ lzma -dc "${x}" | tar xof - ${tar_opts}
+ assert "$myfail"
+ else
+ lzma -dc "${x}" > ${x%.*} || die "$myfail"
+ fi
+ ;;
*)
- echo "unpack ${x}: file format not recognized. Ignoring."
- ;;
+ echo "unpack ${x}: file format not recognized. Ignoring."
+ ;;
esac
done
-# # Do not chmod '.' since it's probably ${WORKDIR} and PORTAGE_WORKDIR_MODE
-# # should be preserved.
-# find . -mindepth 1 -maxdepth 1 ! -type l -print0 | \
-# ${XARGS} -0 chmod -fR a+rX,u+w,g-w,o-w
+ # # Do not chmod '.' since it's probably ${WORKDIR} and PORTAGE_WORKDIR_MODE
+ # # should be preserved.
+ # find . -mindepth 1 -maxdepth 1 ! -type l -print0 | \
+ # ${XARGS} -0 chmod -fR a+rX,u+w,g-w,o-w
}