X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=etc%2Fskel%2F.zshrc;h=684ee0e2502e4b377476390d2f0f9b999c7d4203;hb=0c58a5397603ceaca58b045e78d8bdaab56cf550;hp=0ccf8efb4f473c6a23479b0cb09a751b1aa68ff0;hpb=fab8bcc2d42a8202856a8ff1e1b5b21c596c51f8;p=grml-etc-core.git diff --git a/etc/skel/.zshrc b/etc/skel/.zshrc index 0ccf8ef..684ee0e 100644 --- a/etc/skel/.zshrc +++ b/etc/skel/.zshrc @@ -30,9 +30,26 @@ if [ -r ~/.zshrc -a -r ~/.zshrc.global -a ! -r ~/.zshrc.local ] ; then printf '-!-\n' fi +## Settings for umask +#if (( EUID == 0 )); then +# umask 002 +#else +# umask 022 +#fi + ## Now, we'll give a few examples of what you might want to use in your ## .zshrc.local file (just copy'n'paste and uncomment it there): +## Prompt theme extension ## + +# Virtualenv support + +#function virtual_env_prompt () { +# REPLY=${VIRTUAL_ENV+(${VIRTUAL_ENV:t}) } +#} +#grml_theme_add_token virtual-env -f virtual_env_prompt '%F{magenta}' '%f' +#zstyle ':prompt:grml:left:setup:items' rc virtual-env change-root user at host path vcs percent + ## ZLE tweaks ## ## use the vi navigation keys (hjkl) besides cursor keys in menu completion @@ -64,6 +81,23 @@ fi #WORDCHARS='*?_[]~=&;!#$%^(){}' #WORDCHARS='${WORDCHARS:s@/@}' +# just type '...' to get '../..' +#rationalise-dot() { +#local MATCH +#if [[ $LBUFFER =~ '(^|/| | |'$'\n''|\||;|&)\.\.$' ]]; then +# LBUFFER+=/ +# zle self-insert +# zle self-insert +#else +# zle self-insert +#fi +#} +#zle -N rationalise-dot +#bindkey . rationalise-dot +## without this, typing a . aborts incremental history search +#bindkey -M isearch . self-insert + +#bindkey '\eq' push-line-or-edit ## some popular options ## @@ -107,6 +141,10 @@ fi #zstyle ':completion:*:my-accounts' users-hosts $my_accounts #zstyle ':completion:*:other-accounts' users-hosts $other_accounts +## add grml.org to your list of hosts +#hosts+=(grml.org) +#zstyle ':completion:*:hosts' hosts $hosts + ## telnet on non-default ports? ...well: ## specify specific port/service settings: #telnet_users_hosts_ports=( @@ -151,6 +189,18 @@ fi #alias -g T='|tail' #alias -g V='| vim -' +## instead of global aliase it might be better to use grmls $abk assoc array, whose contents are expanded after pressing ,. +#$abk[SnL]="| sort -n | less" + +## get top 10 shell commands: +#alias top10='print -l ${(o)history%% *} | uniq -c | sort -nr | head -n 10' + +## Execute \kbd{./configure} +#alias CO="./configure" + +## Execute \kbd{./configure --help} +#alias CH="./configure --help" + ## miscellaneous code ## ## Use a default width of 80 for manpages for more convenient reading @@ -170,6 +220,80 @@ fi # exec $SHELL $SHELL_ARGS "$@" #} +## Handy functions for use with the (e::) globbing qualifier (like nt) +#contains() { grep -q "$*" $REPLY } +#sameas() { diff -q "$*" $REPLY &>/dev/null } +#ot () { [[ $REPLY -ot ${~1} ]] } + +## 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 +#} + +## List all occurrences of programm in current PATH +#plap() { +# emulate -L zsh +# if [[ $# = 0 ]] ; then +# echo "Usage: $0 program" +# echo "Example: $0 zsh" +# echo "Lists all occurrences of program in the current PATH." +# else +# ls -l ${^path}/*$1*(*N) +# fi +#} + +## Find out which libs define a symbol +#lcheck() { +# if [[ -n "$1" ]] ; then +# nm -go /usr/lib/lib*.a 2>/dev/null | grep ":[[:xdigit:]]\{8\} . .*$1" +# else +# echo "Usage: lcheck " >&2 +# fi +#} + +## Download a file and display it locally +#uopen() { +# emulate -L zsh +# if ! [[ -n "$1" ]] ; then +# print "Usage: uopen \$URL/\$file">&2 +# return 1 +# else +# FILE=$1 +# MIME=$(curl --head $FILE | \ +# grep Content-Type | \ +# cut -d ' ' -f 2 | \ +# cut -d\; -f 1) +# MIME=${MIME%$'\r'} +# curl $FILE | see ${MIME}:- +# fi +#} + +## Memory overview +#memusage() { +# ps aux | awk '{if (NR > 1) print $5; +# if (NR > 2) print "+"} +# END { print "p" }' | dc +#} + +## print hex value of a number +#hex() { +# emulate -L zsh +# if [[ -n "$1" ]]; then +# printf "%x\n" $1 +# else +# print 'Usage: hex ' +# return 1 +# fi +#} + ## log out? set timeout in seconds... ## ...and do not log out in some specific terminals: #if [[ "${TERM}" == ([Exa]term*|rxvt|dtterm|screen*) ]] ; then