From 1b6562839fa37d5e32f5ef634672f7f8309bf58b Mon Sep 17 00:00:00 2001 From: Tim Date: Sun, 10 May 2026 08:57:20 +0000 Subject: [PATCH] arch.zshrc aktualisiert --- arch.zshrc | 71 ++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 45 insertions(+), 26 deletions(-) diff --git a/arch.zshrc b/arch.zshrc index 97ab2e6..12c23d1 100644 --- a/arch.zshrc +++ b/arch.zshrc @@ -1,36 +1,32 @@ -sleep 0.1 && fastfetch --config ~/.config/fastfetch/fastfetch.jsonc - -# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc. -# Initialization code that may require console input (password prompts, [y/n] -# confirmations, etc.) must go above this block; everything else may go below. +# --- P10k Instant Prompt --- if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" fi -#zstyle ':completion:*:*:paru:*' aur-search true zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}' zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}" +# --- Zinit Setup --- ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git" [ ! -d $ZINIT_HOME ] && mkdir -p "$(dirname $ZINIT_HOME)" [ ! -d $ZINIT_HOME/.git ] && git clone https://github.com/zdharma-continuum/zinit.git "$ZINIT_HOME" source "${ZINIT_HOME}/zinit.zsh" -source ~/.zsh/catppuccin_mocha-zsh-syntax-highlighting.zsh +# --- Plugins --- zinit ice depth=1; zinit light romkatv/powerlevel10k - zinit light zsh-users/zsh-syntax-highlighting zinit light zsh-users/zsh-completions zinit light zsh-users/zsh-autosuggestions - zinit snippet OMZ::plugins/git/git.plugin.zsh zinit load 'zsh-users/zsh-history-substring-search' -zinit ice wait atload'_history_substring_search_config' autoload -Uz compinit && compinit zinit cdreplay -q +# --- Theme & Fastfetch --- [[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh +# Fastfetch erst nach dem Prompt-Setup aufrufen +(( $+commands[fastfetch] )) && fastfetch --config ~/.config/fastfetch/fastfetch.jsonc bindkey -e bindkey "^[[1;5C" forward-word @@ -63,23 +59,46 @@ setopt autocd setopt auto_param_slash setopt globdots -# Aliases -alias clean-cache='yay -Sc && yay -Yc' -alias u='yay -Syu --needed --noconfirm && flatpak update -y && flatpak uninstall --unused' -alias q='pacman -Qu && yay -Qa && flatpak update --dry-run' -alias yay='yay --noconfirm' -alias yayold='yay' -alias ff='sleep 0.1 && fastfetch --config ~/.config/fastfetch/fastfetch.jsonc' -alias l='ls -lah --color=always --group-directories-first' -alias c='clear' -alias x='exit' -# copy dotfiles to git folder -alias cp-dotfiles='cp -r ~/.config/alacritty ~/projects/dotfiles/.config/ && cp -r ~/.config/gtk-3.0 ~/projects/dotfiles/.config/ && cp -r ~/.config/gtk-4.0 ~/projects/dotfiles/.config/ && cp -r ~/.config/hypr ~/projects/dotfiles/.config/ && cp -r ~/.config/fastfetch ~/projects/dotfiles/.config/ && cp -r ~/.config/gedit ~/projects/dotfiles/.config/ && cp -r ~/.config/niri ~/projects/dotfiles/.config/ && cp -r ~/.config/noctalia ~/projects/dotfiles/.config/ && cp -r ~/.config/nvim ~/projects/dotfiles/.config/ && cp -r ~/.config/qt5ct ~/projects/dotfiles/.config/ && cp -r ~/.config/qt6ct ~/projects/dotfiles/.config/ && cp -r ~/.zshrc ~/projects/dotfiles/ && cp -r ~/.p10k.zsh ~/projects/dotfiles/ && cp -r ~/.zsh_history ~/projects/dotfiles/' - - -# Environment +# --- Environment --- export EDITOR='nvim' export VISUAL='nvim' +export TERM='xterm-256color' # Entferne das '/' aus der Definition eines Wortes -WORDCHARS='*?_-.[]~=&;!#$%^(){}<>' \ No newline at end of file +WORDCHARS='*?_-.[]~=&;!#$%^(){}<>' + +# --- Aliases --- +alias c='clear' +alias x='exit' +alias yay='yay --noconfirm' + +# Check ob eza installiert ist, sonst ls fallback +if (( $+commands[eza] )); then + alias l='eza -lagh --group-directories-first' +else + alias l='ls -lah --color=always --group-directories-first' +fi + +# --- Update Script --- +update_system() { + echo "--- System Update ---" + if (( $+commands[yay] )); then + yay -Syu --needed --noconfirm + else + sudo pacman -Syu --noconfirm + fi + + if (( $+commands[flatpak] )); then + echo "--- Flatpak Update ---" + flatpak update -y && flatpak uninstall --unused -y + fi + + orphans=$(pacman -Qdtq) + if [[ -n "$orphans" ]]; then + echo "--- Entferne verwaiste Pakete ---" + sudo pacman -Rns ${=orphans} --noconfirm + else + echo "--- System ist bereits sauber ---" + fi + } +alias u='update_system' \ No newline at end of file