summaryrefslogtreecommitdiff
path: root/roles/core
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2022-01-08 01:03:39 +0100
committerChristian Pointner <equinox@spreadspace.org>2022-01-08 01:03:39 +0100
commit71d37d2333e9bd518739c3868327d6037a43ee47 (patch)
tree2ff77df7c405d82843398bd84763fbd038f9d8f5 /roles/core
parentsk-2019: move /var/backup to zfs (diff)
update zsh config
Diffstat (limited to 'roles/core')
-rw-r--r--roles/core/zsh/files/zshrc34
-rw-r--r--roles/core/zsh/files/zshrc.skel3
2 files changed, 21 insertions, 16 deletions
diff --git a/roles/core/zsh/files/zshrc b/roles/core/zsh/files/zshrc
index 718853f3..22ed1622 100644
--- a/roles/core/zsh/files/zshrc
+++ b/roles/core/zsh/files/zshrc
@@ -432,10 +432,6 @@ is4 && setopt share_history
# save each command's beginning timestamp and the duration to the history file
setopt extended_history
-# If a new command line being added to the history list duplicates an older
-# one, the older command is removed from the list
-is4 && setopt histignorealldups
-
# remove command lines from the history list when the first character on the
# line is a space
setopt histignorespace
@@ -485,6 +481,7 @@ setopt unset
# setting some default values
NOCOR=${NOCOR:-0}
+NOETCHOSTS=${NOETCHOSTS:-0}
NOMENU=${NOMENU:-0}
NOPRECMD=${NOPRECMD:-0}
COMMAND_NOT_FOUND=${COMMAND_NOT_FOUND:-0}
@@ -897,7 +894,7 @@ function grmlcomp () {
if is42 ; then
[[ -r ~/.ssh/config ]] && _ssh_config_hosts=(${${(s: :)${(ps:\t:)${${(@M)${(f)"$(<$HOME/.ssh/config)"}:#Host *}#Host }}}:#*[*?]*}) || _ssh_config_hosts=()
[[ -r ~/.ssh/known_hosts ]] && _ssh_hosts=(${${${${(f)"$(<$HOME/.ssh/known_hosts)"}:#[\|]*}%%\ *}%%,*}) || _ssh_hosts=()
- [[ -r /etc/hosts ]] && : ${(A)_etc_hosts:=${(s: :)${(ps:\t:)${${(f)~~"$(</etc/hosts)"}%%\#*}##[:blank:]#[^[:blank:]]#}}} || _etc_hosts=()
+ [[ -r /etc/hosts ]] && [[ "$NOETCHOSTS" -eq 0 ]] && : ${(A)_etc_hosts:=${(s: :)${(ps:\t:)${${(f)~~"$(grep -v '^0\.0\.0.\0\|^127\.0\.0\.1\|^::1 ' /etc/hosts)"}%%\#*}##[:blank:]#[^[:blank:]]#}}} || _etc_hosts=()
else
_ssh_config_hosts=()
_ssh_hosts=()
@@ -905,14 +902,7 @@ function grmlcomp () {
fi
local localname
- if check_com hostname ; then
- localname=$(hostname)
- elif check_com hostnamectl ; then
- localname=$(hostnamectl --static)
- else
- localname="$(uname -n)"
- fi
-
+ localname="$(uname -n)"
hosts=(
"${localname}"
"$_ssh_config_hosts[@]"
@@ -2583,7 +2573,7 @@ function grml_reset_screen_title () {
# see http://www.faqs.org/docs/Linux-mini/Xterm-Title.html
[[ ${NOTITLE:-} -gt 0 ]] && return 0
case $TERM in
- (xterm*|rxvt*|alacritty)
+ (xterm*|rxvt*|alacritty|foot)
set_title ${(%):-"%n@%m: %~"}
;;
esac
@@ -2620,7 +2610,7 @@ function grml_cmd_to_screen_title () {
function grml_control_xterm_title () {
case $TERM in
- (xterm*|rxvt*|alacritty)
+ (xterm*|rxvt*|alacritty|foot)
set_title "${(%):-"%n@%m:"}" "$2"
;;
esac
@@ -2687,6 +2677,11 @@ else
alias l='command ls -l'
fi
+# use ip from iproute2 with color support
+if ip --color=auto addr show dev lo >/dev/null 2>&1; then
+ alias ip='command ip --color=auto'
+fi
+
if [[ -r /proc/mdstat ]]; then
alias mdstat='cat /proc/mdstat'
fi
@@ -3318,7 +3313,14 @@ zrcautoload lookupinit && lookupinit
# variables
# set terminal property (used e.g. by msgid-chooser)
-export COLORTERM="yes"
+case "${COLORTERM}" in
+ truecolor)
+ # do not overwrite
+ ;;
+ *)
+ export COLORTERM="yes"
+ ;;
+esac
# aliases
diff --git a/roles/core/zsh/files/zshrc.skel b/roles/core/zsh/files/zshrc.skel
index 8695b4db..37642a36 100644
--- a/roles/core/zsh/files/zshrc.skel
+++ b/roles/core/zsh/files/zshrc.skel
@@ -122,6 +122,9 @@ fi
## Allow comments even in interactive shells
#setopt interactivecomments
+## if a new command line being added to the history list duplicates an older
+## one, the older command is removed from the list
+#is4 && setopt histignorealldups
## compsys related snippets ##