# Minimal bashrc meant for servers set -o vi # `set show-mode-in-prompt on` is not set, # indicating vi mode in bash is too slow # Ctrl-l is disabled in vi mode, bind it manually bind -m vi-command '"\C-l": clear-screen' bind -m vi-insert '"\C-l": clear-screen' stty -ixon # Disable ctrl-s and ctrl-q for freezing prompt shopt -s autocd # Automatically cd into typed directory PS1='\[\e[01;31m\]$(code=$?; [ "$code" -ne 0 ] && echo "[${code}] ")\[\e[00m\]\[\e[01;34m\]\u\[\e[00m\]@\H \w % ' # Source bash completion for bc in /etc/bash_completion /usr/share/bash-completion/bash_completion; do [ -f "$bc" ] && . "$bc" done if [ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shell/aliasrc" ];then source "${XDG_CONFIG_HOME:-$HOME/.config}/shell/aliasrc" else # Fallback aliases where aliasrc isn't present (e.g., on servers) alias \ claer="clear -x" \ clear="clear -x" \ clera="clear -x" \ lf="lfcd" \ vi="nvim" \ vi="vim" fi if [ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shell/functionrc" ];then source "${XDG_CONFIG_HOME:-$HOME/.config}/shell/functionrc" else lfcd () { cd "$(command lf -print-last-dir "$@")" } fi bind '"\C-o": "\C-ulfcd\n"'