commit a3f4fbfa7d5be74a2022a1bf4aef7bfb718467cc Author: xesc Date: Sat Jun 1 14:02:25 2024 +0200 initial commit diff --git a/.zshrc b/.zshrc new file mode 100755 index 0000000..1d507d3 --- /dev/null +++ b/.zshrc @@ -0,0 +1,139 @@ +export PATH="$PATH:${$(find ~/.local/bin -type d -printf %p:)%%:}" +export EDITOR="vim" +export TERM="screen-256color" +export XDG_CONFIG_HOME="$HOME/.config" +export XDG_DATA_HOME="$HOME/.local/share" +export XDG_CACHE_HOME="$HOME/.cache" +export LS_COLORS="no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.svgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.tbz2=01;31:*.bz=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.svg=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:" + +PROMPT='%F{#fffbef}%~%f${vcs_info_msg_0_}'$'\n''%B%(?.%F{#a7c080}>.%F{#e67e80}>)%f%b ' + +zstyle ':completion:*' completer _complete _ignored _approximate +zstyle ':completion:*' list-colors '' +zstyle ':completion:*' menu select=long-list select=0 +zstyle ':completion:*' select-prompt %SScrolling active: current selection at %p%s +zstyle ':completion:*' use-compctl true +zmodload zsh/complist +autoload -Uz compinit +compinit +_comp_options+=(globdots) + +HISTSIZE=10000000 +SAVEHIST=10000000 +HISTFILE=$XDG_DATA_HOME/histfile +setopt nomatch notify +unsetopt beep +setopt autocd + +# Disable ctrl-s to freeze terminal +stty stop undef + +# use the vi keys to navigate the menu completion +bindkey -v +bindkey -M menuselect 'h' vi-backward-char +bindkey -M menuselect 'k' vi-up-line-or-history +bindkey -M menuselect 'l' vi-forward-char +bindkey -M menuselect 'j' vi-down-line-or-history + +# Configs for Git in Prompt +# autoload zsh add-zsh-hook and vcs_info functions (-U autoload w/o substition, -z use zsh style) +autoload -Uz add-zsh-hook vcs_info +# # Enable substitution in the prompt. +setopt prompt_subst +# Run vcs_info just before a prompt is displayed (precmd) +add-zsh-hook precmd vcs_info +# Enable checking for (un)staged changes, enabling use of %u and %c +zstyle ':vcs_info:*' check-for-changes true +# Set custom strings for an unstaged vcs repo changes (*) and staged changes (+) +zstyle ':vcs_info:*' unstagedstr ' +' +zstyle ':vcs_info:*' stagedstr ' *' +# Set the format of the Git information for vcs_info +zstyle ':vcs_info:git:*' formats ' %B%F{#dbbc7f}%f%%b %F{#dbbc7f}%B%b%f%%b%B%F{#dbbc7f}%u%c%%b%f' +zstyle ':vcs_info:git:*' actionformats ' %B%F{#dbbc7f}%f%%b %F{#dbbc7f}%B%b%f%%b %F{#a7c080}(%a)%f%B%F{#fabd2f}%u%c%%b%f' + +local OS=$(grep -w "ID=..*" < /etc/os-release | sed 's/ID=//') +if [ $OS = "artix" ] || [ $OS = "arch" ] || [ $OS = "\"void\"" ]; then + source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh + source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh +else + source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh + source /usr/share/zsh-autosuggestions/zsh-autosuggestions.zsh +fi + +# Use neovim for vim if present. +[ -x "$(command -v nvim)" ] && alias vim="nvim" vimdiff="nvim -d" + +for command in mount umount apt dnf xbps-install pacman updatedb init systemctl service openrc-shutdown reboot sv; do + alias $command="doas $command" +done; unset command + +if command -v doas > /dev/null +then + alias \ + sudo="doas" \ + usod="doas" \ + suod="doas" \ + duso="doas" \ + osud="doas" \ + duso="doas" \ + daos="doas" \ + daso="doas" \ + ados="doas" \ + odas="doas"; +else + alias \ + doas="sudo" \ + usod="sudo" \ + suod="sudo" \ + duso="sudo" \ + osud="sudo" \ + duso="sudo" \ + daos="sudo" \ + daso="sudo" \ + ados="sudo" \ + odas="sudo"; +fi + +alias \ + sl="ls" \ + ls="ls -hN --color=auto" \ + la="ls -ahN --color=auto" \ + ll="ls -ahlN --color=auto" + +alias \ + lsb="lsblk -a" \ + lsu="lsusb" + +alias \ + :q="exit" \ + ZZ="exit" \ + ZQ="exit" \ + quit="exit" + +alias \ + cp="cp -iv" \ + mk="mkdir -pv" \ + rm="rm -rI" \ + mv="mv -iv" + +alias \ + rsync="rsync -rtvzP" + +alias \ + t="tmux" \ + ta="tmux new -A -s" \ + tn="tmux new-session -t" \ + ts="sh -c /home/${USER}/.config/tmux/tmux-sessionizer" + +alias \ + v="$EDITOR" \ + e="$EDITOR" \ + z="zathura" \ + n="nnn" \ + g="git" \ + l="ls --color=auto" + +alias \ + info="info --vi-keys" + +[ -f $XDG_CONFIG_HOME/extrarc ] && . $XDG_CONFIG_HOME/extrarc diff --git a/install.sh b/install.sh new file mode 100644 index 0000000..09e0d4f --- /dev/null +++ b/install.sh @@ -0,0 +1,2 @@ +#!/bin/sh +cp ./.zshrc /home/${USER}/.zshrc