From af1880477d99f931a695a9ea316d9ebf1ea53129 Mon Sep 17 00:00:00 2001 From: Frank Terbeck Date: Mon, 28 Nov 2011 22:48:06 +0100 Subject: [PATCH] zshrc: Move purge to its own file Signed-off-by: Frank Terbeck --- etc/zsh/zshrc | 28 -------------------- usr_share_grml/zsh/functions/purge | 52 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+), 28 deletions(-) create mode 100644 usr_share_grml/zsh/functions/purge diff --git a/etc/zsh/zshrc b/etc/zsh/zshrc index 93055d8..96509d4 100644 --- a/etc/zsh/zshrc +++ b/etc/zsh/zshrc @@ -2896,34 +2896,6 @@ lcheck() { fi } -#f5# Clean up directory - remove well known tempfiles -purge() { - emulate -L zsh - setopt HIST_SUBST_PATTERN - local -a TEXTEMPFILES GHCTEMPFILES PYTEMPFILES FILES - TEXTEMPFILES=(*.tex(N:s/%tex/'(log|toc|aux|nav|snm|out|tex.backup|bbl|blg|bib.backup|vrb|lof|lot|hd|idx)(N)'/)) - GHCTEMPFILES=(*.(hs|lhs)(N:r:s/%/'.(hi|hc|(p|u|s)_(o|hi))(N)'/)) - PYTEMPFILES=(*.py(N:s/%py/'(pyc|pyo)(N)'/)) - LONELY_MOOD_FILES=((*.mood)(.NDe:'local -a AF;AF=( ${${REPLY#.}%mood}(mp3|flac|ogg|asf|wmv|aac)(N) ); [[ -z "$AF" ]]':)) - ZSH_COMPILED=(*.zwc(.NDe:'[[ -f ${REPLY%.zwc} && ${REPLY%.zwc} -nt ${REPLY} ]]':)) - FILES=(*~(.N) \#*\#(.N) *.o(.N) a.out(.N) (*.|)core(.N) *.cmo(.N) *.cmi(.N) .*.swp(.N) *.(orig|rej)(.DN) *.dpkg-(old|dist|new)(DN) ._(cfg|mrg)[0-9][0-9][0-9][0-9]_*(N) ${~TEXTEMPFILES} ${~GHCTEMPFILES} ${~PYTEMPFILES} ${LONELY_MOOD_FILES} ${ZSH_COMPILED} ) - local NBFILES=${#FILES} - local CURDIRSUDO="" - [[ ! -w ./ ]] && CURDIRSUDO=$SUDO - if [[ $NBFILES > 0 ]] ; then - print -l $FILES - local ans - echo -n "Remove these files? [y/n] " - read -q ans; echo - if [[ $ans == "y" ]] ; then - $CURDIRSUDO rm ${FILES} - echo ">> $PWD purged, $NBFILES files removed" - else - echo "Ok. .. then not.." - fi - fi -} - # Translate DE<=>EN # 'translate' looks up fot a word in a file with language-to-language # translations (field separator should be " : "). A typical wordlist looks diff --git a/usr_share_grml/zsh/functions/purge b/usr_share_grml/zsh/functions/purge new file mode 100644 index 0000000..aa5066a --- /dev/null +++ b/usr_share_grml/zsh/functions/purge @@ -0,0 +1,52 @@ +# Clean up directory - remove well known tempfiles +emulate -L zsh + +setopt HIST_SUBST_PATTERN +local -a TEXTEMPFILES GHCTEMPFILES PYTEMPFILES FILES + +TEXTEMPFILES=(*.tex(N:s/%tex/'(log|toc|aux|nav|snm|out|tex.backup|bbl|blg|bib.backup|vrb|lof|lot|hd|idx)(N)'/)) + +GHCTEMPFILES=(*.(hs|lhs)(N:r:s/%/'.(hi|hc|(p|u|s)_(o|hi))(N)'/)) + +PYTEMPFILES=(*.py(N:s/%py/'(pyc|pyo)(N)'/)) + +LONELY_MOOD_FILES=((*.mood)(.NDe:'local -a AF;AF=( ${${REPLY#.}%mood}(mp3|flac|ogg|asf|wmv|aac)(N) ); [[ -z "$AF" ]]':)) + +ZSH_COMPILED=(*.zwc(.NDe:'[[ -f ${REPLY%.zwc} && ${REPLY%.zwc} -nt ${REPLY} ]]':)) + +FILES=( + *~(.N) + \#*\#(.N) + *.o(.N) + a.out(.N) + (*.|)core(.N) + *.cmo(.N) + *.cmi(.N) + .*.swp(.N) + *.(orig|rej)(.DN) + *.dpkg-(old|dist|new)(DN) + ._(cfg|mrg)[0-9][0-9][0-9][0-9]_*(N) + ${~TEXTEMPFILES} + ${~GHCTEMPFILES} + ${~PYTEMPFILES} + ${LONELY_MOOD_FILES} + ${ZSH_COMPILED} +) + +local NBFILES=${#FILES} +local CURDIRSUDO="" + +[[ ! -w ./ ]] && CURDIRSUDO=$SUDO + +if [[ $NBFILES > 0 ]] ; then + print -l $FILES + local ans + echo -n "Remove these files? [y/n] " + read -q ans; echo + if [[ $ans == "y" ]] ; then + $CURDIRSUDO rm ${FILES} + echo ">> $PWD purged, $NBFILES files removed" + else + echo "Ok. .. then not.." + fi +fi -- 2.1.4