X-Git-Url: https://git.wh0rd.org/?p=home.git;a=blobdiff_plain;f=.profile.d%2Faliases.sh;h=0b6338758e672b861cfab369cdcb716fddf61ebd;hp=d3d6b51fddd9a6d07614d2e76fa7b07634eb5cc1;hb=HEAD;hpb=1c9edcf20da3e4765e3d4e34a4f0fcd35677e7b5 diff --git a/.profile.d/aliases.sh b/.profile.d/aliases.sh index d3d6b51..6c3a9b1 100644 --- a/.profile.d/aliases.sh +++ b/.profile.d/aliases.sh @@ -11,7 +11,6 @@ alias gdb='gdb --quiet' alias gdbtui='gdbtui --quiet' alias nohist='export HISTFILE=/dev/null' alias kpdf='okular' -alias ipython='ipython --no-banner --no-confirm-exit --pdb --nosep --PromptManager.in_template=">>> " --PromptManager.out_template="" --PromptManager.justify=False' if command -v elinks >/dev/null ; then alias links='elinks -default-mime-type text/html' alias lynx=links @@ -25,18 +24,50 @@ alias p1d='patch -p1 --dry-run' alias p1dr='patch -p1 --dry-run -R' alias p1r='patch -p1 -R' alias quake4='quake4 +set s_driver oss' -alias repoman='repoman -q -q' alias rrsync='rsync -Hav --inplace --progress' alias s='aspell -a' sss() { aspell -a <<<"$*"; } -smplayer() { sudo -u smriti sh -c 'export DISPLAY=:0; xset s reset; exec mplayer "$@" >/dev/null 2>&1' sh "$@" ; } -svlc() { sudo -u smriti sh -c 'export DISPLAY=:0; xset s reset; exec vlc "$@" >/dev/null 2>&1' sh "$@" ; } -svnc() { sudo -u smriti sh -c 'export DISPLAY=:0; xset s reset; exec x11vnc -q -nopw' ; } -alias trc=transmission-remote-cli +sdisp() { sudo -u smriti sh -c 'export DISPLAY=:0; xset s reset; exec "$0" "$@"' "$@" ; } +smplayer() { sdisp mplayer "$@" ; } +smpv() { sdisp mpv "$@" ; } +svlc() { sdisp vlc "$@" ; } +svnc() { sdisp x11vnc -q -nopw ; } +sweb() { sdisp google-chrome-beta "$@" ; } +sxdg() { sdisp xdg-open "$@" ; } +alias trc=tremc alias xine='xine -l' alias wol-vapier='wakeonlan -i 192.168.1.255 00:25:22:64:19:79; wakeonlan -i 192.168.0.255 00:25:22:64:19:79' +_ipython() { + # These guys keep changing their CLI because they hate their users. + local cmd=$1; shift + local args=( + --no-banner + --no-confirm-exit + --pdb + --nosep + --term-title + --pprint + ) + + case $(command ${cmd} --version) in + 0*) ;; + [123]*) + args+=( + --PromptManager.in_template='>>> ' + --PromptManager.out_template='' + --PromptManager.justify=False + ) + ;; + esac + + command ${cmd} "${args[@]}" "$@" +} +ipython() { _ipython ${FUNCNAME}; } +ipython2() { _ipython ${FUNCNAME}; } +ipython3() { _ipython ${FUNCNAME}; } + adk_path() { local adk=/usr/local/src/android/adk/current/sdk PATH+=":${adk}/tools:${adk}/platform-tools" @@ -45,11 +76,67 @@ adk_path() { pd() { if [[ $# -eq 0 ]] ; then popd + elif [[ $# -eq 1 && $1 == "--" ]] ; then + dirs -v else pushd "$@" fi } +cd_history() { + if [[ $# -eq 1 ]] ; then + case $1 in + -h) + command dirs "$1" |& tail -1 + command cd "$1" |& tail -1 + return + ;; + --help) + command dirs "$1" + command cd "$1" + return + ;; + -[clpv]) + command dirs "$1" + return + ;; + -[0-9]*) + set -- "$(dirs "+${1:1}")" + ;; + esac + fi + + if command cd "$@" ; then + pushd -n "${PWD}" >/dev/null + else + local ret=$? + + if [[ $# -gt 1 ]] ; then + # The `cd` above should have shown an error message for us. + local arg first_arg="$1" + while [[ $# -gt 0 ]] ; do + arg="$1" + shift + if [[ -d ${arg} ]] ; then + if [[ $# -gt 0 ]] ; then + printf 'cd: remaining: %s\n' "$@" >&2 + fi + printf 'cd: entering: %s\n' "${arg}" >&2 + cd_history "${arg}" + return + else + printf 'cd: skipping: %s\n' "${arg}" >&2 + fi + done + # If we're still here, then we didn't cd anywhere. + echo "cd: cwd is unchanged!" >&2 + fi + + return ${ret} + fi +} +alias cd='cd_history' + if [[ ${TERM} != "dumb" ]] ; then export GREP_COLORS=ne #470810 alias grep='grep --colour=auto -d skip'