X-Git-Url: https://git.grml.org/?a=blobdiff_plain;f=etc%2Fzsh%2Fzshrc;h=4fef3319acf53344f6dbda7bb0d0698dfeac7f04;hb=3ff24c26824bafb88fb6f1be05f63ac5afe307de;hp=aeaeb7b6ce24707aed6cfccd4b42adf689b4b772;hpb=8bb730a82617bbbc60d2723c8d022b40f1456b46;p=grml-etc-core.git diff --git a/etc/zsh/zshrc b/etc/zsh/zshrc index aeaeb7b..4fef331 100644 --- a/etc/zsh/zshrc +++ b/etc/zsh/zshrc @@ -3413,58 +3413,11 @@ mmake() { make -n install > ~/.errorlogs/${PWD##*/}-makelog } -#f5# Indent source code -smart-indent() { - indent -npro -kr -i8 -ts8 -sob -l80 -ss -ncs "$@" -} - # highlight important stuff in diff output, usage example: hg diff | hidiff #m# a2 hidiff \kbd{histring} oneliner for diffs check_com -c histring && \ alias hidiff="histring -fE '^Comparing files .*|^diff .*' | histring -c yellow -fE '^\-.*' | histring -c green -fE '^\+.*'" -# rename pictures based on information found in exif headers -#f5# Rename pictures based on information found in exif headers -exirename() { - emulate -L zsh - if [[ $# -lt 1 ]] ; then - echo 'Usage: jpgrename $FILES' >& 2 - return 1 - else - echo -n 'Checking for jhead with version newer than 1.9: ' - jhead_version=`jhead -h | grep 'used by most Digital Cameras. v.*' | awk '{print $6}' | tr -d v` - if [[ $jhead_version > '1.9' ]]; then - echo 'success - now running jhead.' - jhead -n%Y-%m-%d_%Hh%M_%f $* - else - echo 'failed - exiting.' - fi - fi -} - -# get_ic() - queries imap servers for capabilities; real simple. no imaps -ic_get() { - emulate -L zsh - local port - if [[ ! -z $1 ]] ; then - port=${2:-143} - print "querying imap server on $1:${port}...\n"; - print "a1 capability\na2 logout\n" | nc $1 ${port} - else - print "usage:\n $0 [port]" - fi -} - -# creates a Maildir/ with its {new,cur,tmp} subdirs -mkmaildir() { - emulate -L zsh - local root subdir - root=${MAILDIR_ROOT:-${HOME}/Mail} - if [[ -z ${1} ]] ; then print "Usage:\n $0 " ; return 1 ; fi - subdir=${1} - mkdir -p ${root}/${subdir}/{cur,new,tmp} -} - #f5# Change the xterm title from within GNU-screen xtrename() { emulate -L zsh @@ -3487,66 +3440,6 @@ xtrename() { return 0 } -# hl() highlighted less -# http://ft.bewatermyfriend.org/comp/data/zsh/zfunct.html -if check_com -c highlight ; then - function hl() { - emulate -L zsh - local theme lang - theme=${HL_THEME:-""} - case ${1} in - (-l|--list) - ( printf 'available languages (syntax parameter):\n\n' ; - highlight --list-langs ; ) | less -SMr - ;; - (-t|--themes) - ( printf 'available themes (style parameter):\n\n' ; - highlight --list-themes ; ) | less -SMr - ;; - (-h|--help) - printf 'usage: hl \n' - printf ' available options: --list (-l), --themes (-t), --help (-h)\n\n' - printf ' Example: hl c main.c\n' - ;; - (*) - if [[ -z ${2} ]] || (( ${#argv} > 2 )) ; then - printf 'usage: hl \n' - printf ' available options: --list (-l), --themes (-t), --help (-h)\n' - (( ${#argv} > 2 )) && printf ' Too many arguments.\n' - return 1 - fi - lang=${1%:*} - [[ ${1} == *:* ]] && [[ -n ${1#*:} ]] && theme=${1#*:} - if [[ -n ${theme} ]] ; then - highlight -O xterm256 --syntax ${lang} --style ${theme} ${2} | less -SMr - else - highlight -O ansi --syntax ${lang} ${2} | less -SMr - fi - ;; - esac - return 0 - } - # ... and a proper completion for hl() - # needs 'highlight' as well, so it fits fine in here. - function _hl_genarg() { - local expl - if [[ -prefix 1 *: ]] ; then - local themes - themes=(${${${(f)"$(LC_ALL=C highlight --list-themes)"}/ #/}:#*(Installed|Use name)*}) - compset -P 1 '*:' - _wanted -C list themes expl theme compadd ${themes} - else - local langs - langs=(${${${(f)"$(LC_ALL=C highlight --list-langs)"}/ #/}:#*(Installed|Use name)*}) - _wanted -C list languages expl languages compadd -S ':' -q ${langs} - fi - } - function _hl_complete() { - _arguments -s '1: :_hl_genarg' '2:files:_path_files' - } - compdef _hl_complete hl -fi - # TODO: # Rewrite this by either using tinyurl.com's API # or using another shortening service to comply with @@ -3588,29 +3481,6 @@ fi # fi #} -#f2# Print a specific line of file(s). -linenr () { - emulate -L zsh - if [ $# -lt 2 ] ; then - print "Usage: linenr [,] " ; return 1 - elif [ $# -eq 2 ] ; then - local number=$1 - local file=$2 - command ed -s $file <<< "${number}n" - else - local number=$1 - shift - for file in "$@" ; do - if [ ! -d $file ] ; then - echo "${file}:" - command ed -s $file <<< "${number}n" 2> /dev/null - else - continue - fi - done | less - fi -} - #f2# Find history events by search pattern and list them by date. whatwhen() { emulate -L zsh