From: Frank Brehm Date: Thu, 17 Nov 2016 15:47:11 +0000 (+0100) Subject: committing changes in /etc after apt run X-Git-Url: https://git.uhu-banane.org/?a=commitdiff_plain;h=c7ca25b2b3995368394714a3186e4f9e816b518b;p=config%2Flena%2Fetc.git committing changes in /etc after apt run Package changes: +zsh 5.2-5+b1 amd64 +zsh-common 5.2-5 all --- diff --git a/.etckeeper b/.etckeeper index 26134ec..428e3ae 100755 --- a/.etckeeper +++ b/.etckeeper @@ -750,3 +750,10 @@ maybe chmod 0644 'xdg/user-dirs.defaults' maybe chmod 0755 'xml' maybe chmod 0644 'xml/catalog' maybe chmod 0644 'xml/xml-core.xml' +maybe chmod 0755 'zsh' +maybe chmod 0644 'zsh/newuser.zshrc.recommended' +maybe chmod 0644 'zsh/zlogin' +maybe chmod 0644 'zsh/zlogout' +maybe chmod 0644 'zsh/zprofile' +maybe chmod 0644 'zsh/zshenv' +maybe chmod 0644 'zsh/zshrc' diff --git a/shells b/shells index c53e62b..b8110be 100644 --- a/shells +++ b/shells @@ -5,3 +5,5 @@ /bin/rbash /usr/bin/screen /usr/bin/tmux +/bin/zsh +/usr/bin/zsh diff --git a/zsh/newuser.zshrc.recommended b/zsh/newuser.zshrc.recommended new file mode 100644 index 0000000..55be3ab --- /dev/null +++ b/zsh/newuser.zshrc.recommended @@ -0,0 +1,37 @@ +# Set up the prompt + +autoload -Uz promptinit +promptinit +prompt adam1 + +setopt histignorealldups sharehistory + +# Use emacs keybindings even if our EDITOR is set to vi +bindkey -e + +# Keep 1000 lines of history within the shell and save it to ~/.zsh_history: +HISTSIZE=1000 +SAVEHIST=1000 +HISTFILE=~/.zsh_history + +# Use modern completion system +autoload -Uz compinit +compinit + +zstyle ':completion:*' auto-description 'specify: %d' +zstyle ':completion:*' completer _expand _complete _correct _approximate +zstyle ':completion:*' format 'Completing %d' +zstyle ':completion:*' group-name '' +zstyle ':completion:*' menu select=2 +eval "$(dircolors -b)" +zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS} +zstyle ':completion:*' list-colors '' +zstyle ':completion:*' list-prompt %SAt %p: Hit TAB for more, or the character to insert%s +zstyle ':completion:*' matcher-list '' 'm:{a-z}={A-Z}' 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=* l:|=*' +zstyle ':completion:*' menu select=long +zstyle ':completion:*' select-prompt %SScrolling active: current selection at %p%s +zstyle ':completion:*' use-compctl false +zstyle ':completion:*' verbose true + +zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)*=0=01;31' +zstyle ':completion:*:kill:*' command 'ps -u $USER -o pid,%cpu,tty,cputime,cmd' diff --git a/zsh/zlogin b/zsh/zlogin new file mode 100644 index 0000000..f6cd2f2 --- /dev/null +++ b/zsh/zlogin @@ -0,0 +1,9 @@ +# /etc/zsh/zlogin: system-wide .zlogin file for zsh(1). +# +# This file is sourced only for login shells. It +# should contain commands that should be executed only +# in login shells. It should be used to set the terminal +# type and run a series of external commands (fortune, +# msgs, from, etc.) +# +# Global Order: zshenv, zprofile, zshrc, zlogin diff --git a/zsh/zlogout b/zsh/zlogout new file mode 100644 index 0000000..22d842f --- /dev/null +++ b/zsh/zlogout @@ -0,0 +1 @@ +# /etc/zsh/zlogout: system-wide .zlogout file for zsh(1). diff --git a/zsh/zprofile b/zsh/zprofile new file mode 100644 index 0000000..09db6f5 --- /dev/null +++ b/zsh/zprofile @@ -0,0 +1,7 @@ +# /etc/zsh/zprofile: system-wide .zprofile file for zsh(1). +# +# This file is sourced only for login shells (i.e. shells +# invoked with "-" as the first character of argv[0], and +# shells invoked with the -l flag.) +# +# Global Order: zshenv, zprofile, zshrc, zlogin diff --git a/zsh/zshenv b/zsh/zshenv new file mode 100644 index 0000000..e2613c3 --- /dev/null +++ b/zsh/zshenv @@ -0,0 +1,18 @@ +# /etc/zsh/zshenv: system-wide .zshenv file for zsh(1). +# +# This file is sourced on all invocations of the shell. +# If the -f flag is present or if the NO_RCS option is +# set within this file, all other initialization files +# are skipped. +# +# This file should contain commands to set the command +# search path, plus other important environment variables. +# This file should not contain commands that produce +# output or assume the shell is attached to a tty. +# +# Global Order: zshenv, zprofile, zshrc, zlogin + +if [[ -z "$PATH" || "$PATH" == "/bin:/usr/bin" ]] +then + export PATH="/usr/local/bin:/usr/bin:/bin:/usr/games" +fi diff --git a/zsh/zshrc b/zsh/zshrc new file mode 100644 index 0000000..45aebde --- /dev/null +++ b/zsh/zshrc @@ -0,0 +1,104 @@ +# /etc/zsh/zshrc: system-wide .zshrc file for zsh(1). +# +# This file is sourced only for interactive shells. It +# should contain commands to set up aliases, functions, +# options, key bindings, etc. +# +# Global Order: zshenv, zprofile, zshrc, zlogin + +READNULLCMD=${PAGER:-/usr/bin/pager} + +# An array to note missing features to ease diagnosis in case of problems. +typeset -ga debian_missing_features + +if [[ -z "${DEBIAN_PREVENT_KEYBOARD_CHANGES-}" ]] && + [[ "$TERM" != 'emacs' ]] +then + + typeset -A key + key=( + BackSpace "${terminfo[kbs]}" + Home "${terminfo[khome]}" + End "${terminfo[kend]}" + Insert "${terminfo[kich1]}" + Delete "${terminfo[kdch1]}" + Up "${terminfo[kcuu1]}" + Down "${terminfo[kcud1]}" + Left "${terminfo[kcub1]}" + Right "${terminfo[kcuf1]}" + PageUp "${terminfo[kpp]}" + PageDown "${terminfo[knp]}" + ) + + function bind2maps () { + local i sequence widget + local -a maps + + while [[ "$1" != "--" ]]; do + maps+=( "$1" ) + shift + done + shift + + sequence="${key[$1]}" + widget="$2" + + [[ -z "$sequence" ]] && return 1 + + for i in "${maps[@]}"; do + bindkey -M "$i" "$sequence" "$widget" + done + } + + bind2maps emacs -- BackSpace backward-delete-char + bind2maps viins -- BackSpace vi-backward-delete-char + bind2maps vicmd -- BackSpace vi-backward-char + bind2maps emacs -- Home beginning-of-line + bind2maps viins vicmd -- Home vi-beginning-of-line + bind2maps emacs -- End end-of-line + bind2maps viins vicmd -- End vi-end-of-line + bind2maps emacs viins -- Insert overwrite-mode + bind2maps vicmd -- Insert vi-insert + bind2maps emacs -- Delete delete-char + bind2maps viins vicmd -- Delete vi-delete-char + bind2maps emacs viins vicmd -- Up up-line-or-history + bind2maps emacs viins vicmd -- Down down-line-or-history + bind2maps emacs -- Left backward-char + bind2maps viins vicmd -- Left vi-backward-char + bind2maps emacs -- Right forward-char + bind2maps viins vicmd -- Right vi-forward-char + + # Make sure the terminal is in application mode, when zle is + # active. Only then are the values from $terminfo valid. + if (( ${+terminfo[smkx]} )) && (( ${+terminfo[rmkx]} )); then + function zle-line-init () { + emulate -L zsh + printf '%s' ${terminfo[smkx]} + } + function zle-line-finish () { + emulate -L zsh + printf '%s' ${terminfo[rmkx]} + } + zle -N zle-line-init + zle -N zle-line-finish + else + for i in {s,r}mkx; do + (( ${+terminfo[$i]} )) || debian_missing_features+=($i) + done + unset i + fi + + unfunction bind2maps + +fi # [[ -z "$DEBIAN_PREVENT_KEYBOARD_CHANGES" ]] && [[ "$TERM" != 'emacs' ]] + +zstyle ':completion:*:sudo:*' command-path /usr/local/sbin \ + /usr/local/bin \ + /usr/sbin \ + /usr/bin \ + /sbin \ + /bin \ + /usr/X11R6/bin + +(( ${+aliases[run-help]} )) && unalias run-help +autoload -Uz run-help