From: Michael Prokop Date: Thu, 4 Jan 2007 23:04:39 +0000 (+0100) Subject: several tuning tweaks like host completion in /etc/zsh/zshrc X-Git-Tag: 0.2.18~6 X-Git-Url: https://git.grml.org/?p=grml-etc-core.git;a=commitdiff_plain;h=7cae82a41c8c1c11ccbdf530830a61c22f7a9fd4 several tuning tweaks like host completion in /etc/zsh/zshrc --- diff --git a/debian/changelog b/debian/changelog index 9f55e17..cb3ea12 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,19 @@ +grml-etc-core (0.2.15) unstable; urgency=low + + * /etc/zsh/zshrc: + - rename edfun() into edfunc() [thanks for hint, Kai Wilke!] + - added some useful config stuff (deactivated by default as it + needs personal tuning) contributed by Kai Wilke [thanks!] + - improved host completion (thanks for some code, Kai Wilke!) + - added apache2-ssl-certificate() as Debian does not ship + the script anymore *grml* + - added alias 0 which does nothing else than 'return 0' (I like + a clean prompt without error return codes inside but don't + want to miss the feature itself, so just press 0 and that's + it :)) + + -- Michael Prokop Fri, 5 Jan 2007 00:00:54 +0100 + grml-etc-core (0.2.14) unstable; urgency=low * Use builtin for chpwd's dirs command instead of the alias diff --git a/etc/zsh/zshrc b/etc/zsh/zshrc index 5466b63..116d35a 100644 --- a/etc/zsh/zshrc +++ b/etc/zsh/zshrc @@ -3,7 +3,7 @@ # Authors: grml-team (grml.org), (c) Michael Prokop # Bug-Reports: see http://grml.org/bugs/ # License: This file is licensed under the GPL v2. -# Latest change: Son Dez 17 13:52:04 CET 2006 [mika] +# Latest change: Fre Jän 05 00:00:23 CET 2007 [mika] ################################################################################ # This file is sourced only for interactive shells. It # should contain commands to set up aliases, functions, @@ -554,6 +554,9 @@ ${BLUE}%n${NO_COLOUR}@%m %40<...<%B%~%b%<< %# " alias swspeak="setopt singlelinezle ; unsetopt prompt_cr ; export PS1='%m%# ' ; speechd-up" # set up software synth. + # I like clean prompt, so provide simple way to get that + alias 0 &>/dev/null || functions 0 &>/dev/null || alias 0='return 0' + # truecrypt; use e.g. via 'truec /dev/ice' /mnt/ice' or 'truec -i' if [ -x /usr/sbin/truecrypt ] ; then if isutfenv ; then @@ -657,6 +660,25 @@ Please use the wodim binary instead' ; return 1" fi fi +# I hate lacking backward compability, so provide an alternative therefore + if ! [ -x /usr/sbin/apache2-ssl-certificate ] ; then + function apache2-ssl-certificate(){ + + print 'Debian does not ship apache2-ssl-certificate anymore (see #398520). :(' + print 'You might want to take a look at Debian the package ssl-cert as well.' + print 'To generate a certificate for use with apache2 follow the instructions:' + + echo ' + +export RANDFILE=/dev/random +mkdir /etc/apache2/ssl/ +openssl req $@ -new -x509 -days 365 -nodes -out /etc/apache2/ssl/apache.pem -keyout /etc/apache2/ssl/apache.pem +chmod 600 /etc/apache2/ssl/apache.pem + +Run "grml-tips ssl-certificate" if you need further instructions. +' + } + fi # }}} # {{{ Use hard limits, except for a smaller stack and no core dumps @@ -756,22 +778,54 @@ grmlcomp() { # bindkey "^M" my_accept # command for process lists, the local web server details and host completion - hosts=(`hostname` grml.org) - zstyle '*' hosts $hosts zstyle ':completion:*:urls' local 'www' '/var/www/' 'public_html' # caching [ -d $ZSHDIR/cache ] && zstyle ':completion:*' use-cache yes && \ zstyle ':completion::complete:*' cache-path $ZSHDIR/cache/ -# use ~/.ssh/known_hosts for completion [does not work with hashing of new ssh versions anymore] - if [ -f "$HOME/.ssh/known_hosts" ] ; then - hosts=(${${${${(f)"$(<$HOME/.ssh/known_hosts)"}:#[\|]*}%%\ *}%%,*}) - zstyle ':completion:*:hosts' hosts $hosts +# host completion + if is42 ; then + [ -r ~/.ssh/known_hosts ] && _ssh_hosts=(${${${${(f)"$(<$HOME/.ssh/known_hosts)"}:#[\|]*}%%\ *}%%,*}) || _ssh_hosts=() + [ -r /etc/hosts ] && : ${(A)_etc_hosts:=${(s: :)${(ps:\t:)${${(f)~~"$(/dev/null ; then @@ -888,10 +954,10 @@ If you want to use xinit anyway please call \"/usr/bin/xinit\"." compdef _aliases edalias # edit function via zle: - edfun() { + edfunc() { [ -z "$1" ] && { echo "Usage: edfun " ; return 1 } || zed -f "$1" ; } - compdef _functions edfun + compdef _functions edfunc # use it e.g. via 'Restart apache2' if [ -d /etc/init.d ] ; then @@ -955,10 +1021,26 @@ If you want to use xinit anyway please call \"/usr/bin/xinit\"." local LENGTH=$(expr length $STRING) local FIRSCHAR=$(echo $(expr substr $STRING 1 1)) local REST=$(echo $(expr substr $STRING 2 $LENGTH)) - ps xauwww| grep [$FIRSCHAR]$REST + ps xauwww| grep "[$FIRSCHAR]$REST" fi } + # Switching shell safely and efficiently? http://www.zsh.org/mla/workers/2001/msg02410.html + # bash() { + # NO_SWITCH="yes" command bash "$@" + # } + # restart () { + # exec $SHELL $SHELL_ARGS "$@" + # } + +# }}} + +# log out? set timeout in seconds {{{ +# TMOUT=1800 +# do not log out in some specific terminals: +# if [[ "${TERM}" == ([Exa]term*|rxvt|dtterm|screen*) ]]; then +# unset TMOUT +# fi # }}} # {{{ make sure our environment is clean regarding colors @@ -979,4 +1061,4 @@ If you want to use xinit anyway please call \"/usr/bin/xinit\"." # }}} ## END OF FILE ################################################################# -# vim:foldmethod=marker +# vim:foldmethod=marker expandtab