diff --git a/etc/bash/bashrc.d/ahurac.bashrc b/etc/bash/bashrc.d/ahurac.bashrc new file mode 100644 index 0000000..f4cadc9 --- /dev/null +++ b/etc/bash/bashrc.d/ahurac.bashrc @@ -0,0 +1,12 @@ +# Lines added by ahurac + +# PS1 +if [ "$(id -u)" -eq 0 ]; then + ps1_color_1=1 + ps1_color_2=10 +else + ps1_color_1=5 + ps1_color_2=4 +fi +export PS1="[\[$(tput sgr0)\]\[$(tput bold)\]\[\033[38;5;${ps1_color_1}m\]\u@\h\[$(tput sgr0)\] \[$(tput sgr0)\]\[$(tput bold)\]\[\033[38;5;${ps1_color_2}m\]\W\[$(tput sgr0)\]]\\$ \[$(tput sgr0)\]" + diff --git a/etc/bash/bashrc.d/aliases.bashrc b/etc/bash/bashrc.d/aliases.bashrc new file mode 100644 index 0000000..6186496 --- /dev/null +++ b/etc/bash/bashrc.d/aliases.bashrc @@ -0,0 +1,24 @@ +# coreutils +alias ls="ls --color=auto" +alias lsa="ls -A" +alias l="ls -l" +alias la="l -A" +alias isodate="date +'%Y_%m_%d'" + +# bash +alias t="type -a" +alias j=jobs +alias pd=pushd + +# neovim +alias nv=nvim + +# procps-ng +alias pg="pgrep -ai" + +# iproute2 +alias ip="ip --color=auto" + +# util-linux +alias cal="cal -m" + diff --git a/etc/bash/bashrc.d/functions.bashrc b/etc/bash/bashrc.d/functions.bashrc new file mode 100644 index 0000000..788b92c --- /dev/null +++ b/etc/bash/bashrc.d/functions.bashrc @@ -0,0 +1,5 @@ +# coreutils +mkcdir() { + mkdir -p "$1" && cd "$_" +} + diff --git a/home/shrc.d/aliases b/home/shrc.d/aliases new file mode 100644 index 0000000..58564b6 --- /dev/null +++ b/home/shrc.d/aliases @@ -0,0 +1,13 @@ +# sudo +alias s="sudo" + +# wine +alias wine32="WINEPREFIX=~/.wine32 wine" + +# kitty +if [ "$TERM" = xterm-kitty ]; then + alias ssh="kitty +kitten ssh" +else + alias sshm="ssh -M" +fi + diff --git a/home/shrc.d/functions b/home/shrc.d/functions new file mode 100644 index 0000000..3d54135 --- /dev/null +++ b/home/shrc.d/functions @@ -0,0 +1,11 @@ +# curl +function reveal-url { + curl "$1" -IL --silent | grep 'location: ' +} + +# zsh +command_not_found_handler() { + >&2 echo "bruh wtf is \"${1}\" o_O" + return 127 +} + diff --git a/home/zshrc b/home/zshrc new file mode 100644 index 0000000..9422bda --- /dev/null +++ b/home/zshrc @@ -0,0 +1,90 @@ +# Lines configured by zsh-newuser-install +HISTFILE=~/.histfile +HISTSIZE=1000 +SAVEHIST=1000 +setopt autocd extendedglob nomatch +unsetopt beep notify +# End of lines configured by zsh-newuser-install +# The following lines were added by compinstall +zstyle :compinstall filename '/home/ahurac/.zshrc' + +autoload -Uz compinit +compinit +# End of lines added by compinstall + +# Bindings +# create a zkbd compatible hash; +# to add other keys to this hash, see: man 5 terminfo +typeset -g -A key + +autoload -Uz up-line-or-beginning-search down-line-or-beginning-search +zle -N up-line-or-beginning-search +zle -N down-line-or-beginning-search + +key[Home]="${terminfo[khome]}" +key[End]="${terminfo[kend]}" +key[Insert]="${terminfo[kich1]}" +key[Backspace]="${terminfo[kbs]}" +key[Delete]="${terminfo[kdch1]}" +key[Up]="${terminfo[kcuu1]}" +key[Down]="${terminfo[kcud1]}" +key[Left]="${terminfo[kcub1]}" +key[Right]="${terminfo[kcuf1]}" +key[PageUp]="${terminfo[kpp]}" +key[PageDown]="${terminfo[knp]}" +key[Shift-Tab]="${terminfo[kcbt]}" +key[Control-Left]="^[[1;5D" +key[Control-Right]="^[[1;5C" + +# setup key accordingly +[[ -n "${key[Home]}" ]] && bindkey -- "${key[Home]}" beginning-of-line +[[ -n "${key[End]}" ]] && bindkey -- "${key[End]}" end-of-line +[[ -n "${key[Insert]}" ]] && bindkey -- "${key[Insert]}" overwrite-mode +[[ -n "${key[Backspace]}" ]] && bindkey -- "${key[Backspace]}" backward-delete-char +[[ -n "${key[Delete]}" ]] && bindkey -- "${key[Delete]}" delete-char +[[ -n "${key[Up]}" ]] && bindkey -- "${key[Up]}" up-line-or-beginning-search +[[ -n "${key[Down]}" ]] && bindkey -- "${key[Down]}" down-line-or-beginning-search +[[ -n "${key[Left]}" ]] && bindkey -- "${key[Left]}" backward-char +[[ -n "${key[Right]}" ]] && bindkey -- "${key[Right]}" forward-char +[[ -n "${key[PageUp]}" ]] && bindkey -- "${key[PageUp]}" beginning-of-buffer-or-history +[[ -n "${key[PageDown]}" ]] && bindkey -- "${key[PageDown]}" end-of-buffer-or-history +[[ -n "${key[Shift-Tab]}" ]] && bindkey -- "${key[Shift-Tab]}" reverse-menu-complete +[[ -n "${key[Control-Left]}" ]] && bindkey -- "${key[Control-Left]}" backward-word +[[ -n "${key[Control-Right]}" ]] && bindkey -- "${key[Control-Right]}" forward-word + +# Finally, 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 + autoload -Uz add-zle-hook-widget + function zle_application_mode_start { echoti smkx } + function zle_application_mode_stop { echoti rmkx } + add-zle-hook-widget -Uz zle-line-init zle_application_mode_start + add-zle-hook-widget -Uz zle-line-finish zle_application_mode_stop +fi + +# Custom the prompt +autoload colors && colors +PROMPT=$'╭─[%F{magenta}%B%n@%m%f%b]──[%F{blue}%B%5~%b%f]──[%B%?%b]\n╰─[%# ' + +# Completion even with sudo +zstyle ':completion::complete:*' gain-privileges 1 + +# Source more definitions +zshrc_d="$HOME/.zshrc.d" +[[ -d $zshrc_d ]] && for rc in "${zshrc_d}/"*; do +source "$rc" +done +unset zshrc_d + +# Disable the vi-mode +bindkey -e + +# Disable the autopushd feature +unsetopt autopushd + +# Set the umask +#umask 077 + +# Case sensitive +CASE_SENSITIVE="true" +