summaryrefslogtreecommitdiff
path: root/fedora/.config/bash
diff options
context:
space:
mode:
Diffstat (limited to 'fedora/.config/bash')
-rw-r--r--fedora/.config/bash/autocomplete.bash218
-rw-r--r--fedora/.config/bash/bash_profile116
-rw-r--r--fedora/.config/bash/bashrc180
-rw-r--r--fedora/.config/bash/completions/bat.bash249
-rw-r--r--fedora/.config/bash/completions/rg.bash783
-rw-r--r--fedora/.config/bash/completions/ya.bash647
-rw-r--r--fedora/.config/bash/completions/yazi.bash66
-rw-r--r--fedora/.config/bash/completions/zoxide.bash243
-rw-r--r--fedora/.config/bash/git.bash7
-rw-r--r--fedora/.config/bash/keymaps.bash218
-rw-r--r--fedora/.config/bash/packages.bash35
-rw-r--r--fedora/.config/bash/scripts.bash436
12 files changed, 0 insertions, 3198 deletions
diff --git a/fedora/.config/bash/autocomplete.bash b/fedora/.config/bash/autocomplete.bash
deleted file mode 100644
index 3ee6183..0000000
--- a/fedora/.config/bash/autocomplete.bash
+++ /dev/null
@@ -1,218 +0,0 @@
-#!/bin/bash
-
-### --- Auto-completes aliases --- ###
-# alias - normal aliases (completed with trailing space)
-# balias - blank aliases (completed without space)
-# ialias - ignored aliases (not completed)
-
-ialiases=()
-ialias() {
- # usage: ialias name='value' (same as alias builtin)
- alias "$@"
- # extract name (everything before first '=' or first space)
- local args="$1"
- args=${args%%=*}
- args=${args%% *}
- ialiases+=("$args")
-}
-
-baliases=()
-balias() {
- alias "$@"
- local args="$1"
- args=${args%%=*}
- args=${args%% *}
- baliases+=("$args")
-}
-
-# ---------- helper: get alias value ----------
-# returns alias expansion text for a name, or empty if none
-_get_alias_value() {
- local name="$1"
- # alias output: alias ll='ls -la'
- local a
- a=$(alias "$name" 2>/dev/null) || return 1
- # strip "alias name='...'"
- # use parameter expansion / sed safe parsing
- # get first occurrence of =', then strip quotes
- a=${a#*=}
- # remove leading quote if present
- a=${a#\'}
- a=${a%\'}
- printf "%s" "$a"
- return 0
-}
-
-# ---------- helper: membership check ----------
-_in_array() {
- local item="$1"
- shift
- local elem
- for elem in "$@"; do
- if [[ "$elem" == "$item" ]]; then
- return 0
- fi
- done
- return 1
-}
-
-# ---------- expand alias at cursor and optionally insert space ----------
-# This function is executed via bind -x, so it can read/modify:
-# READLINE_LINE - current full line buffer
-# READLINE_POINT - current cursor index (0..len)
-expand_alias_space() {
- # READLINE_LINE and READLINE_POINT are provided by readline when bind -x is used.
- # If not present (if invoked directly), fallback to no-op
- if [[ -z "${READLINE_LINE+set}" ]]; then
- # fallback: just insert a space
- printf " "
- return 0
- fi
-
- local line=${READLINE_LINE}
- local point=${READLINE_POINT}
-
- # left substring up to cursor
- local left=${line:0:point}
- # right substring after cursor
- local right=${line:point}
-
- # find the last "word" before the cursor (split on whitespace)
- # If left ends with whitespace, current word is empty
- local lastword
- if [[ "$left" =~ [[:space:]]$ ]]; then
- lastword=""
- else
- # remove everything up to last whitespace
- lastword=${left##*['$'\t\n' ']}
- fi
-
- # if lastword is empty -> just insert a space
- if [[ -z "$lastword" ]]; then
- READLINE_LINE="${left} ${right}"
- READLINE_POINT=$((point + 1))
- return 0
- fi
-
- # check if lastword is in ignored aliases -> do not expand, just insert space
- if _in_array "$lastword" "${ialiases[@]}"; then
- READLINE_LINE="${left} ${right}"
- READLINE_POINT=$((point + 1))
- return 0
- fi
-
- # try to get alias expansion
- local expansion
- if expansion=$(_get_alias_value "$lastword"); then
- # Replace the lastword in left with expansion
- # compute left_without_word
- local left_without="${left%${lastword}}"
-
- # If balias: expansion but DO NOT add trailing space
- if _in_array "$lastword" "${baliases[@]}"; then
- READLINE_LINE="${left_without}${expansion}${right}"
- # place cursor right after the expansion
- READLINE_POINT=$((${#left_without} + ${#expansion}))
- return 0
- else
- # Normal alias: expansion and add a space after it
- READLINE_LINE="${left_without}${expansion} ${right}"
- READLINE_POINT=$((${#left_without} + ${#expansion} + 1))
- return 0
- fi
- else
- # no alias found: just insert space
- READLINE_LINE="${left} ${right}"
- READLINE_POINT=$((point + 1))
- return 0
- fi
-}
-
-# ---------- accept-line that expands alias before executing ----------
-# Bind Enter to this function via bind -x; it will expand alias (if needed) then
-# simulate Enter by setting READLINE_LINE and returning - readline will accept it.
-expand_alias_and_accept_line() {
- # Expand at cursor (use current READLINE_LINE/POINT)
- expand_alias_space
- # After expansion, we want to accept the line as if Enter was pressed.
- # To do so in bind -x handler, we can set a marker and then use 'builtin bind -x' hack:
- # Simpler approach: write the line to a temp file, then use 'kill -SIGWINCH' ??? Too complex.
- # Luckily, when a bind -x handler returns, readline continues; we want to end editing.
- # There's no direct way to programmatically press enter. Instead, rely on binding Enter to a wrapper that:
- # - modifies READLINE_LINE (done) and then sets a special variable so readline knows to accept.
- :
-}
-
-# ---------- key bindings ----------
-# Bind Space to our function so pressing space triggers alias-expansion behavior.
-# Use bind -x to call expand_alias_space (it will both expand and insert space when appropriate).
-# WARNING: this overrides normal space key behavior; our function handles insertion.
-# bind -x '" "':expand_alias_space
-
-# optional: bind Ctrl-Space to the same (a bypass key like zsh had)
-# Many terminals send "\C-@" for ctrl-space; try both common sequences:
-bind -x '"\C-@":expand_alias_space' 2>/dev/null || true
-bind -x '"\C- ":expand_alias_space' 2>/dev/null || true
-
-# Bind Enter (Return) to expand alias before accepting the line.
-# We implement this by expanding then forcing a newline insertion.
-# Using bind -x for Enter: when this function returns, readline will NOT automatically accept the line,
-# but we can emulate acceptance by printing a newline and forcing input. Simpler: call 'return 0' from this hook
-# and then send a newline. However, behavior varies between shells/terminals — so we will bind Enter to a function
-# that expands and then uses 'READLINE_LINE' trick to set the expanded line and then call 'builtin bind' to
-# temporarily restore Enter to default and re-invoke it.
-_bash_accept_line() {
- expand_alias_space
- # After expanding, we want readline to accept the line. A workaround:
- # write the expanded line into the current tty so that it becomes input for the shell.
- # But this is messy. Instead, we simply move the cursor to the end and let the user press Enter again.
- # (This is a conservative behavior to avoid interfering unexpectedly.)
- return 0
-}
-#bind -x '"\C-m":_bash_accept_line'
-
-# ---------- helper: background starter ----------
-background() {
- # start multiple args as programs in background
- # usage: background cmd arg1 arg2 ...
- # runs: cmd arg1 & cmd arg2 & ...
- local cmd="$1"
- shift || return 0
- for arg in "$@"; do
- "$cmd" "$arg" &>/dev/null &
- done
-}
-
-# ---------- notes ----------
-# - After placing this into ~/.bashrc, run: source ~/.bashrc
-# - Test aliases:
-# balias ll='ls -la'
-# alias g='git status'
-# ialias X='something'
-# - Then type `ll` followed by Space -> will expand to `ls -la` WITHOUT appending a space (blank alias).
-# - Type `g` then Space -> will expand to `git status ` with a trailing space.
-# - Type `X` then Space -> will NOT expand, just insert space.
-#
-# Limitations / caveats:
-# - readline/bind -x behavior differs slightly across environments and terminals.
-# - Completely emulating zsh's zle widgets (especially auto-accept behaviors) is tricky in bash.
-# - Binding Enter to fully accept-after-expansion programmatically is not perfectly portable;
-# the conservative implementation above expands first and leaves acceptance to the user (press Enter again).
-#
-# If you want a stronger behavior (auto-accept after expansion), tell me and I'll provide a
-# more aggressive implementation that works on most terminals (but with more invasive tricks).
-
-# ---------- file completion patterns ----------
-_vim_complete() {
- local cur="${COMP_WORDS[COMP_CWORD]}"
- COMPREPLY=($(compgen -f -X '!*.@(pdf|odt|ods|doc|docx|xls|xlsx|odp|ppt|pptx|mp4|mkv|aux)' -- "$cur"))
-}
-shopt -s extglob
-complete -F _vim_complete vim
-
-_build_mom_complete() {
- local cur="${COMP_WORDS[COMP_CWORD]}"
- COMPREPLY=($(compgen -f -X '!*.mom' -- "$cur"))
-}
-complete -F _build_mom_complete build-workshop
-complete -F _build_mom_complete build-document
diff --git a/fedora/.config/bash/bash_profile b/fedora/.config/bash/bash_profile
deleted file mode 100644
index d74e372..0000000
--- a/fedora/.config/bash/bash_profile
+++ /dev/null
@@ -1,116 +0,0 @@
-#!/bin/bash
-
-umask 022
-
-###################################################
-### --- DEFAULT PROGRAMS --- ###
-###################################################
-if command -v nvim >/dev/null 2>&1; then
- export EDITOR="nvim"
-elif command -v vim >/dev/null 2>&1; then
- export EDITOR="vim"
-else
- export EDITOR="vi"
-fi
-# export FILE_MANAGER="lf $(lf -version)"
-export KEYTIMEOUT=10
-export SUDO_EDITOR=$EDITOR
-export TERM="xterm-256color"
-export VISUAL=$EDITOR
-export TERM="xterm-256color"
-
-###################################################
-### --- XDG ENV PATHES --- ###
-###################################################
-### --- XDG DEFAULT --- ###
-export XDG_CACHE_HOME="$HOME/.cache"
-export XDG_CONFIG_HOME="$HOME/.config"
-export XDG_DATA_HOME="$HOME/.local/share"
-export XDG_STATE_HOME="$HOME/.local/state"
-
-### --- XDG CUSTOMS --- ###
-export XDG_DOTFILES_DIR="$HOME/.dotfiles"
-export XDG_SCRIPTS_HOME="$HOME/.local/bin"
-export XDG_SOURCES_HOME="$HOME/.local/src"
-export XDG_DESKTOP_DIR="$HOME/Desktop"
-export XDG_DOCUMENTS_DIR="$HOME/Documents"
-export XDG_DOWNLOAD_DIR="$HOME/Downloads"
-export XDG_MUSIC_DIR="$HOME/Music"
-export XDG_PICTURES_DIR="$HOME/Pictures"
-export XDG_PUBLICSHARE_DIR="$HOME/Public"
-export XDG_TEMPLATES_DIR="$HOME/Templates"
-export XDG_VIDEOS_DIR="$HOME/Videos"
-
-#######################################################
-# EXPORTS
-#######################################################
-
-export CLICOLOR=1
-export HISTFILE="${XDG_DATA_HOME:-${HOME}/.local/share}/history/sh_history"
-export INPUTRC="${XDG_CONFIG_HOME:-${HOME}/.config}/shell/inputrc"
-
-### --- MANPAGER --- ###
-([ -x "$(command -v batcat)" ] || [ -x "$(command -v batman)" ]) && {
- export MANPAGER="sh -c 'col -bx | bat -l man -p'"
- export MANROFFOPT="-c"
-} || {
- export MANPAGER='less -s'
- export LESS="R"
- export LESS_TERMCAP_mb="$(printf '%b' '')"
- export LESS_TERMCAP_md="$(printf '%b' '')"
- export LESS_TERMCAP_me="$(printf '%b' '')"
- export LESS_TERMCAP_so="$(printf '%b' '')"
- export LESS_TERMCAP_se="$(printf '%b' '')"
- export LESS_TERMCAP_us="$(printf '%b' '')"
- export LESS_TERMCAP_ue="$(printf '%b' '')"
- export LESSOPEN="| lesspipe.sh %s"
-}
-
-export LS_COLORS="no=00:fi=00:di=00;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:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=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:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.ogg=01;35:*.mp3=01;35:*.wav=01;35:*.xml=00;31:"
-export LS_OPTIONS="--color=auto"
-
-### --- PASSWORD STORE --- ###
-export PASSWORD_STORE_DIR="$XDG_DATA_HOME/.password-store"
-export PASSWORD_STORE_CLIP_TIME=180 # Specifies the number of seconds to wait before restoring the clipboard, by default 45 seconds.
-# export PASSWORD_STORE_GENERATED_LENGTH=18 # by default 25.
-# export PASSWORD_STORE_CHARACTER_SET='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_=+[]{};:,.<>?'
-# export PASSWORD_STORE_CHARACTER_SET_NO_SYMBOLS='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_=+[]{};:,.<>?'
-export PASSWORD_STORE_ENABLE_EXTENSIONS="true"
-# export PASSWORD_STORE_EXTENSIONS_DIR="$PASSWORD_STORE_DIR/.extensions"
-# export BASH_COMPLETION_USER_DIR=$XDG_DATA_HOME/bash-completion/completions
-
-### --- TMUX --- ###
-export TMUX_TMPDIR="$XDG_RUNTIME_DIR"
-
-### --- VIM --- ###
-# export GVIMINIT='let $MYGVIMRC = !has("nvim") ? "$XDG_CONFIG_HOME/vim/gvimrc" : "$XDG_CONFIG_HOME/nvim/init.lua" | so $MYGVIMRC'
-# export VIMINIT='let $MYVIMRC = !has("nvim") ? "$XDG_CONFIG_HOME/vim/vimrc" : "$XDG_CONFIG_HOME/nvim/init.lua" | so $MYVIMRC'
-
-### --- ZSH --- ###
-export ZDOTDIR="$XDG_CONFIG_HOME/zsh"
-export ZPLUGINDIR="$XDG_SCRIPTS_HOME/zsh"
-
-###################################################
-### --- ENV PATH --- ###
-###################################################
-# Add all directories in each subdirectory to $PATH
-[ -d ~/.local/bin ] && export PATH="$(find ~/.local/bin -path '*/.git*' -prune -o \( -type f -o -type l \) -perm -u=x -exec dirname {} \; | sort -u | paste -sd ':' -):$PATH"
-[ -d ~/.local/share/.password-store ] && export PATH="$(find ~/.local/share/.password-store -type d -name '.extensions' | paste -sd ':' -):$PATH"
-export PATH="$ASDF_DATA_DIR/shims:$PATH"
-command -v asdf >/dev/null 2>&1 && export PATH="$(find -L ~/.local/share/asdf/installs -name bin -type d -print 2>/dev/null | sort -u | paste -s -d ':' -):$PATH"
-command -v npm >/dev/null 2>&1 && export PATH="$(find -L ~/.local/share/npm -name bin -type d -print 2>/dev/null | sort -u | paste -s -d ':' -):$PATH"
-
-unsetopt PROMPT_SP 2>/dev/null
-
-#######################################################
-# Source global/local definitions
-#######################################################
-
-[ -f /etc/bash_completion ] && . /etc/bash_completion
-[ -f /usr/share/bash-completion/bash_completion ] && . /usr/share/bash-completion/bash_completion
-[ -f /etc/bash/bashrc ] && . /etc/bash/bashrc
-[ -f "${XDG_CONFIG_HOME:-${HOME}/.config}/bash/bashrc" ] && . "${XDG_CONFIG_HOME:-${HOME}/.config}/bash/bashrc"
-for file in "${XDG_CONFIG_HOME:-${HOME}/.config}/bash/completions"/*.bash; do
- [ -f "$file" ] && . "$file"
-done
-[ ! -f "$XDG_CONFIG_HOME/shell/shortcutrc" ] && setsid -f bmshortcuts >/dev/null 2>&1
diff --git a/fedora/.config/bash/bashrc b/fedora/.config/bash/bashrc
deleted file mode 100644
index ec1cc46..0000000
--- a/fedora/.config/bash/bashrc
+++ /dev/null
@@ -1,180 +0,0 @@
-#!/bin/bash
-
-[[ $- != *i* ]] && return
-
-#######################################################
-# SET OPTIONS
-#######################################################
-# history
-HISTCONTROL=erasedups:ignoredups:ignorespace
-HISTFILESIZE=10000
-HISTSIZE=500
-
-# Allow ctrl-S for history navigation (with ctrl-R)
-stty -ixon
-PROMPT_COMMAND="history -a"
-unset GREP_OPTIONS
-
-set -o vi
-shopt -s autocd # goto without cd
-shopt -s direxpand # expend directory name
-shopt -s cdspell # ignore case cd
-shopt -s checkwinsize # Check the window size after each command and, if necessary, update the values of LINES and COLUMNS
-shopt -s histappend # Causes bash to append to history instead of overwriting it so if you start a new terminal, you have old session history
-
-# Completion settings
-# Ignore case on auto-completion
-# Note: bind used instead of sticking these in .inputrc
-bind "set completion-ignore-case on"
-# Show auto-completion list automatically, without double tab
-bind "set show-all-if-ambiguous on"
-
-#######################################################
-# Set command prompt
-#######################################################
-function __setprompt {
- local LAST_COMMAND=$? # Must come first!
-
- # Define colors
- local LIGHTGRAY="\033[0;37m"
- local WHITE="\033[1;37m"
- local BLACK="\033[0;30m"
- local DARKGRAY="\033[1;30m"
- local RED="\033[0;31m"
- local LIGHTRED="\033[1;31m"
- local GREEN="\033[0;32m"
- local LIGHTGREEN="\033[1;32m"
- local BROWN="\033[0;33m"
- local YELLOW="\033[1;33m"
- local BLUE="\033[0;34m"
- local LIGHTBLUE="\033[1;34m"
- local MAGENTA="\033[0;35m"
- local LIGHTMAGENTA="\033[1;35m"
- local CYAN="\033[0;36m"
- local LIGHTCYAN="\033[1;36m"
- local NOCOLOR="\033[0m"
-
- # Show error exit code if there is one
- if [[ $LAST_COMMAND != 0 ]]; then
- # PS1="\[${RED}\](\[${LIGHTRED}\]ERROR\[${RED}\])-(\[${LIGHTRED}\]Exit Code \[${WHITE}\]${LAST_COMMAND}\[${RED}\])-(\[${LIGHTRED}\]"
- PS1="\[${DARKGRAY}\](\[${LIGHTRED}\]ERROR\[${DARKGRAY}\])-(\[${RED}\]Exit Code \[${LIGHTRED}\]${LAST_COMMAND}\[${DARKGRAY}\])-(\[${RED}\]"
- if [[ $LAST_COMMAND == 1 ]]; then
- PS1+="General error"
- elif [ $LAST_COMMAND == 2 ]; then
- PS1+="Missing keyword, command, or permission problem"
- elif [ $LAST_COMMAND == 126 ]; then
- PS1+="Permission problem or command is not an executable"
- elif [ $LAST_COMMAND == 127 ]; then
- PS1+="Command not found"
- elif [ $LAST_COMMAND == 128 ]; then
- PS1+="Invalid argument to exit"
- elif [ $LAST_COMMAND == 129 ]; then
- PS1+="Fatal error signal 1"
- elif [ $LAST_COMMAND == 130 ]; then
- PS1+="Script terminated by Control-C"
- elif [ $LAST_COMMAND == 131 ]; then
- PS1+="Fatal error signal 3"
- elif [ $LAST_COMMAND == 132 ]; then
- PS1+="Fatal error signal 4"
- elif [ $LAST_COMMAND == 133 ]; then
- PS1+="Fatal error signal 5"
- elif [ $LAST_COMMAND == 134 ]; then
- PS1+="Fatal error signal 6"
- elif [ $LAST_COMMAND == 135 ]; then
- PS1+="Fatal error signal 7"
- elif [ $LAST_COMMAND == 136 ]; then
- PS1+="Fatal error signal 8"
- elif [ $LAST_COMMAND == 137 ]; then
- PS1+="Fatal error signal 9"
- elif [ $LAST_COMMAND -gt 255 ]; then
- PS1+="Exit status out of range"
- else
- PS1+="Unknown error code"
- fi
- PS1+="\[${DARKGRAY}\])\[${NOCOLOR}\]\n"
- else
- PS1=""
- fi
-
- # Date
- PS1+="\[${DARKGRAY}\](\[${CYAN}\]\$(date +%a) $(date +%b-'%-m')" # Date
- PS1+="${BLUE} $(date +'%-I':%M:%S%P)\[${DARKGRAY}\])-" # Time
-
- # CPU
- PS1+="(\[${MAGENTA}\]CPU $(cpu)%"
-
- # Jobs
- PS1+="\[${DARKGRAY}\]:\[${MAGENTA}\]\j"
-
- # Network Connections (for a server - comment out for non-server)
- PS1+="\[${DARKGRAY}\]:\[${MAGENTA}\]Net $(awk 'END {print NR}' /proc/net/tcp)"
-
- PS1+="\[${DARKGRAY}\])-"
-
- # User and server
- local SSH_IP=$(echo $SSH_CLIENT | awk '{ print $1 }')
- local SSH2_IP=$(echo $SSH2_CLIENT | awk '{ print $1 }')
- if [ $SSH2_IP ] || [ $SSH_IP ]; then
- PS1+="(\[${RED}\]\u@\h"
- else
- PS1+="(\[${RED}\]\u"
- fi
-
- # Current directory
- PS1+="\[${DARKGRAY}\]:\[${BROWN}\]\w\[${DARKGRAY}\])-"
-
- # Total size of files in current directory
- PS1+="(\[${GREEN}\]$(/bin/ls -lah | /bin/grep -m 1 total | /bin/sed 's/total //')\[${DARKGRAY}\]:"
-
- # Number of files
- PS1+="\[${GREEN}\]\$(/bin/ls -A -1 | /usr/bin/wc -l)\[${DARKGRAY}\])"
-
- # Skip to the next line
- PS1+="\n"
-
- if [[ $EUID -ne 0 ]]; then
- PS1+="\[${GREEN}\]>\[${NOCOLOR}\] " # Normal user
- else
- PS1+="\[${RED}\]>\[${NOCOLOR}\] " # Root user
- fi
-
- # PS2 is used to continue a command using the \ character
- PS2="\[${DARKGRAY}\]>\[${NOCOLOR}\] "
-
- # PS3 is used to enter a number choice in a script
- PS3='Please enter a number from above list: '
-
- # PS4 is used for tracing a script in debug mode
- PS4='\[${DARKGRAY}\]+\[${NOCOLOR}\] '
-}
-# PROMPT_COMMAND='__setprompt'
-PS1="\[\e[1m\]\[\e[31m\][\[\e[33m\]\u\[\e[32m\]@\[\e[34m\]\h \[\e[35m\]\W\[\e[31m\]]\[\e[37m\]\\$ \[\e[0m\]"
-
-#######################################################
-# KEY BINDING
-#######################################################
-
-bind '"\C-l":clear-screen'
-bind '"\C-g":"lfcd\n"'
-
-#######################################################
-# SOURCE
-#######################################################
-
-eval "$(dircolors)"
-
-[ -f "$HOME/.config/bash/git.bash" ] && . "$HOME/.config/bash/git.bash"
-[ -f "$HOME/.config/bash/p10k.bash" ] && . "$HOME/.config/bash/p10k.bash"
-[ -f "$HOME/.config/bash/autocomplete.bash" ] && . "$HOME/.config/bash/autocomplete.bash"
-[ -f "$HOME/.config/bash/scripts.bash" ] && . "$HOME/.config/bash/scripts.bash"
-[ -f "$HOME/.config/bash/keymaps.bash" ] && . "$HOME/.config/bash/keymaps.bash"
-[ -f "$HOME/.config/bash/plugins.bash" ] && . "$HOME/.config/bash/plugins.bash"
-[ -f "$HOME/.config/bash/packages.bash" ] && . "$HOME/.config/bash/packages.bash"
-[ -f "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/aliasrc" ] && . "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/aliasrc"
-[ -f "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/git-aliasrc" ] && . "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/git-aliasrc"
-[ -f "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/shortcutrc" ] && . "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/shortcutrc"
-[ -f "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/shortcutenvrc" ] && . "${XDG_CONFIG_HOME:-$HOME/.config}/shell/shortcutenvrc"
-[ -f "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/zshnameddirrc" ] && . "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/zshnameddirrc"
-[ -f "${XDG_SCRIPTS_HOME:-${HOME}/.local/bin}/bash-preexec" ] && . "${XDG_SCRIPTS_HOME:-${HOME}/.local/bin}/bash-preexec"
-[ -f "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/rootshortcutrc" ] && . "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/rootshortcutrc"
-[ -f "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/rootzshnameddirrc" ] && . "${XDG_CONFIG_HOME:-${HOME}/.config}/shell/rootzshnameddirrc"
diff --git a/fedora/.config/bash/completions/bat.bash b/fedora/.config/bash/completions/bat.bash
deleted file mode 100644
index fa0f712..0000000
--- a/fedora/.config/bash/completions/bat.bash
+++ /dev/null
@@ -1,249 +0,0 @@
-# shellcheck disable=SC2207
-
-# Requires https://github.com/scop/bash-completion
-
-# Macs have bash3 for which the bash-completion package doesn't include
-# _init_completion. This is a minimal version of that function.
-__bat_init_completion()
-{
- COMPREPLY=()
- _get_comp_words_by_ref "$@" cur prev words cword
-}
-
-__bat_escape_completions()
-{
- # Do not escape if completing a quoted value.
- [[ $cur == [\"\']* ]] && return 0
- if ((
- BASH_VERSINFO[0] > 5 || \
- BASH_VERSINFO[0] == 5 && BASH_VERSINFO[1] >= 3
- )); then
- # bash >= 5.3 has "compopt -o fullquote", which exactly does
- # what this function tries to do.
- compopt -o fullquote
- elif ((
- BASH_VERSINFO[0] > 4 || \
- BASH_VERSINFO[0] == 4 && BASH_VERSINFO[1] > 0
- )); then
- # printf -v to an array index is available in bash >= 4.1.
- # Use it if available, as -o filenames is semantically
- # incorrect if we are not actually completing filenames, and it
- # has side effects (e.g. adds trailing slash to candidates
- # matching present dirs).
- local i
- for i in ${!COMPREPLY[*]}; do
- printf -v "COMPREPLY[i]" %q "${COMPREPLY[i]}"
- done
-
- # We can use "compopt -o noquote" available in bash >= 4.3 to
- # prevent further quoting by the shell, which would be
- # unexpectedly applied when a quoted result matches a filename.
- if ((
- BASH_VERSINFO[0] > 4 || \
- BASH_VERSINFO[0] == 4 && BASH_VERSINFO[1] >= 3
- )); then
- compopt -o noquote
- fi
- else
- compopt -o filenames
- fi
-}
-
-_bat() {
- local cur prev words split=false
- if declare -F _init_completion >/dev/null 2>&1; then
- _init_completion -s || return 0
- else
- __bat_init_completion -n "=" || return 0
- _split_longopt && split=true
- fi
-
- if [[ ${words[1]-} == cache ]]; then
- case $prev in
- --source | --target)
- _filedir -d
- return 0
- ;;
- esac
- COMPREPLY=($(compgen -W "
- --build
- --clear
- --source
- --target
- --blank
- --help
- " -- "$cur"))
- return 0
- fi
-
- case $prev in
- -l | --language)
- local IFS=$'\n'
- COMPREPLY=($(compgen -W "$(
- "$1" --list-languages | while IFS=: read -r lang _; do
- printf "%s\n" "$lang"
- done
- )" -- "$cur"))
- __bat_escape_completions
- return 0
- ;;
- -H | --highlight-line | \
- --diff-context | \
- --tabs | \
- --terminal-width | \
- -m | --map-syntax | \
- --ignored-suffix | \
- --list-themes | \
- --squeeze-limit | \
- --line-range | \
- -L | --list-languages | \
- --lessopen | \
- --no-paging | \
- --diagnostic | \
- --acknowledgements | \
- -h | --help | \
- -V | --version | \
- --cache-dir | \
- --config-dir | \
- --config-file | \
- --generate-config-file)
- # argument required but no completion available, or option
- # causes an exit
- return 0
- ;;
- --file-name)
- _filedir
- return 0
- ;;
- --wrap)
- COMPREPLY=($(compgen -W "auto never character" -- "$cur"))
- return 0
- ;;
- --binary)
- COMPREPLY=($(compgen -W "no-printing as-text" -- "$cur"))
- return 0
- ;;
- --nonprintable-notation)
- COMPREPLY=($(compgen -W "unicode caret" -- "$cur"))
- return 0
- ;;
- --strip-ansi)
- COMPREPLY=($(compgen -W "auto never always" -- "$cur"))
- return 0
- ;;
- --completion)
- COMPREPLY=($(compgen -W "bash fish zsh ps1" -- "$cur"))
- return 0
- ;;
- --color | --decorations | --paging)
- COMPREPLY=($(compgen -W "auto never always" -- "$cur"))
- return 0
- ;;
- --italic-text)
- COMPREPLY=($(compgen -W "always never" -- "$cur"))
- return 0
- ;;
- --pager)
- COMPREPLY=($(compgen -c -- "$cur"))
- return 0
- ;;
- --theme)
- local IFS=$'\n'
- COMPREPLY=($(compgen -W "auto${IFS}auto:always${IFS}auto:system${IFS}dark${IFS}light${IFS}$("$1" --list-themes)" -- "$cur"))
- __bat_escape_completions
- return 0
- ;;
- --theme-dark | \
- --theme-light)
- local IFS=$'\n'
- COMPREPLY=($(compgen -W "$("$1" --list-themes)" -- "$cur"))
- __bat_escape_completions
- return 0
- ;;
- --style)
- # shellcheck disable=SC2034
- local -a styles=(
- default
- full
- auto
- plain
- changes
- header
- header-filename
- header-filesize
- grid
- rule
- numbers
- snip
- )
- # shellcheck disable=SC2016
- if declare -F _comp_delimited >/dev/null 2>&1; then
- # bash-completion > 2.11
- _comp_delimited , -W '"${styles[@]}"'
- else
- COMPREPLY=($(compgen -W '${styles[@]}' -- "$cur"))
- fi
- return 0
- esac
-
- $split && return 0
-
- if [[ $cur == -* ]]; then
- # --unbuffered excluded intentionally (no-op)
- COMPREPLY=($(compgen -W "
- --show-all
- --nonprintable-notation
- --binary
- --plain
- --language
- --highlight-line
- --file-name
- --diff
- --diff-context
- --tabs
- --wrap
- --chop-long-lines
- --terminal-width
- --number
- --color
- --italic-text
- --decorations
- --force-colorization
- --paging
- --no-paging
- --pager
- --map-syntax
- --ignored-suffix
- --theme
- --theme-dark
- --theme-light
- --list-themes
- --squeeze-blank
- --squeeze-limit
- --strip-ansi
- --style
- --line-range
- --list-languages
- --lessopen
- --completion
- --diagnostic
- --acknowledgements
- --set-terminal-title
- --help
- --version
- --cache-dir
- --config-dir
- --config-file
- --generate-config-file
- --no-config
- --no-custom-assets
- --no-lessopen
- " -- "$cur"))
- return 0
- fi
-
- _filedir
-
- ## Completion of the 'cache' command itself is removed for better UX
- ## See https://github.com/sharkdp/bat/issues/2085#issuecomment-1271646802
-} && complete -F _bat bat
diff --git a/fedora/.config/bash/completions/rg.bash b/fedora/.config/bash/completions/rg.bash
deleted file mode 100644
index 12d1039..0000000
--- a/fedora/.config/bash/completions/rg.bash
+++ /dev/null
@@ -1,783 +0,0 @@
-_rg() {
- local i cur prev opts cmds
- COMPREPLY=()
- cur="${COMP_WORDS[COMP_CWORD]}"
- prev="${COMP_WORDS[COMP_CWORD-1]}"
- cmd=""
- opts=""
-
- for i in ${COMP_WORDS[@]}; do
- case "${i}" in
- rg)
- cmd="rg"
- ;;
- *)
- ;;
- esac
- done
-
- case "${cmd}" in
- rg)
- opts="--regexp -e --file -f --after-context -A --before-context -B --binary --no-binary --block-buffered --no-block-buffered --byte-offset -b --no-byte-offset --case-sensitive -s --color --colors --column --no-column --context -C --context-separator --no-context-separator --count -c --count-matches --crlf --no-crlf --debug --dfa-size-limit --encoding -E --no-encoding --engine --field-context-separator --field-match-separator --files --files-with-matches -l --files-without-match --fixed-strings -F --no-fixed-strings --follow -L --no-follow --generate --glob -g --glob-case-insensitive --no-glob-case-insensitive --heading --no-heading --help -h --hidden -. --no-hidden --hostname-bin --hyperlink-format --iglob --ignore-case -i --ignore-file --ignore-file-case-insensitive --no-ignore-file-case-insensitive --include-zero --no-include-zero --invert-match -v --no-invert-match --json --no-json --line-buffered --no-line-buffered --line-number -n --no-line-number -N --line-regexp -x --max-columns -M --max-columns-preview --no-max-columns-preview --max-count -m --max-depth -d --max-filesize --mmap --no-mmap --multiline -U --no-multiline --multiline-dotall --no-multiline-dotall --no-config --no-ignore --ignore --no-ignore-dot --ignore-dot --no-ignore-exclude --ignore-exclude --no-ignore-files --ignore-files --no-ignore-global --ignore-global --no-ignore-messages --ignore-messages --no-ignore-parent --ignore-parent --no-ignore-vcs --ignore-vcs --no-messages --messages --no-require-git --require-git --no-unicode --unicode --null -0 --null-data --one-file-system --no-one-file-system --only-matching -o --path-separator --passthru --pcre2 -P --no-pcre2 --pcre2-version --pre --no-pre --pre-glob --pretty -p --quiet -q --regex-size-limit --replace -r --search-zip -z --no-search-zip --smart-case -S --sort --sortr --stats --no-stats --stop-on-nonmatch --text -a --no-text --threads -j --trace --trim --no-trim --type -t --type-not -T --type-add --type-clear --type-list --unrestricted -u --version -V --vimgrep --with-filename -H --no-filename -I --word-regexp -w --auto-hybrid-regex --no-auto-hybrid-regex --no-pcre2-unicode --pcre2-unicode --sort-files --no-sort-files <PATTERN> <PATH>..."
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then
- COMPREPLY=($(compgen -W "${opts}" -- "${cur}"))
- return 0
- fi
- case "${prev}" in
-
- --regexp)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -e)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --file)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -f)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --after-context)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -A)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --before-context)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -B)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --binary)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-binary)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --block-buffered)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-block-buffered)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --byte-offset)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -b)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-byte-offset)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --case-sensitive)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -s)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --color)
- COMPREPLY=($(compgen -W "never auto always ansi" -- "${cur}"))
- return 0
- ;;
- --colors)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --column)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-column)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --context)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -C)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --context-separator)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-context-separator)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --count)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -c)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --count-matches)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --crlf)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-crlf)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --debug)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --dfa-size-limit)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --encoding)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -E)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-encoding)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --engine)
- COMPREPLY=($(compgen -W "default pcre2 auto" -- "${cur}"))
- return 0
- ;;
- --field-context-separator)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --field-match-separator)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --files)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --files-with-matches)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -l)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --files-without-match)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --fixed-strings)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -F)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-fixed-strings)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --follow)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -L)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-follow)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --generate)
- COMPREPLY=($(compgen -W "man complete-bash complete-zsh complete-fish complete-powershell" -- "${cur}"))
- return 0
- ;;
- --glob)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -g)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --glob-case-insensitive)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-glob-case-insensitive)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --heading)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-heading)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --help)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -h)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --hidden)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -.)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-hidden)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --hostname-bin)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --hyperlink-format)
- COMPREPLY=($(compgen -W "default none cursor file grep+ kitty macvim textmate vscode vscode-insiders vscodium" -- "${cur}"))
- return 0
- ;;
- --iglob)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --ignore-case)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -i)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --ignore-file)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --ignore-file-case-insensitive)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-ignore-file-case-insensitive)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --include-zero)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-include-zero)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --invert-match)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -v)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-invert-match)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --json)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-json)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --line-buffered)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-line-buffered)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --line-number)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -n)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-line-number)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -N)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --line-regexp)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -x)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --max-columns)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -M)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --max-columns-preview)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-max-columns-preview)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --max-count)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -m)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --max-depth)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -d)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --max-filesize)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --mmap)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-mmap)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --multiline)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -U)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-multiline)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --multiline-dotall)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-multiline-dotall)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-config)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-ignore)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --ignore)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-ignore-dot)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --ignore-dot)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-ignore-exclude)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --ignore-exclude)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-ignore-files)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --ignore-files)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-ignore-global)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --ignore-global)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-ignore-messages)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --ignore-messages)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-ignore-parent)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --ignore-parent)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-ignore-vcs)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --ignore-vcs)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-messages)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --messages)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-require-git)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --require-git)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-unicode)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --unicode)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --null)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -0)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --null-data)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --one-file-system)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-one-file-system)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --only-matching)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -o)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --path-separator)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --passthru)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --pcre2)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -P)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-pcre2)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --pcre2-version)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --pre)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-pre)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --pre-glob)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --pretty)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -p)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --quiet)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -q)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --regex-size-limit)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --replace)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -r)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --search-zip)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -z)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-search-zip)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --smart-case)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -S)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --sort)
- COMPREPLY=($(compgen -W "none path modified accessed created" -- "${cur}"))
- return 0
- ;;
- --sortr)
- COMPREPLY=($(compgen -W "none path modified accessed created" -- "${cur}"))
- return 0
- ;;
- --stats)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-stats)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --stop-on-nonmatch)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --text)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -a)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-text)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --threads)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -j)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --trace)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --trim)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-trim)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --type)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -t)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --type-not)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -T)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --type-add)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --type-clear)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --type-list)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --unrestricted)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -u)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --version)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -V)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --vimgrep)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --with-filename)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -H)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-filename)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -I)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --word-regexp)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -w)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --auto-hybrid-regex)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-auto-hybrid-regex)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-pcre2-unicode)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --pcre2-unicode)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --sort-files)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --no-sort-files)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- esac
- COMPREPLY=($(compgen -W "${opts}" -- "${cur}"))
- return 0
- ;;
- esac
-}
-
-complete -F _rg -o bashdefault -o default rg
diff --git a/fedora/.config/bash/completions/ya.bash b/fedora/.config/bash/completions/ya.bash
deleted file mode 100644
index b24e3e5..0000000
--- a/fedora/.config/bash/completions/ya.bash
+++ /dev/null
@@ -1,647 +0,0 @@
-_ya() {
- local i cur prev opts cmd
- COMPREPLY=()
- if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then
- cur="$2"
- else
- cur="${COMP_WORDS[COMP_CWORD]}"
- fi
- prev="$3"
- cmd=""
- opts=""
-
- for i in "${COMP_WORDS[@]:0:COMP_CWORD}"
- do
- case "${cmd},${i}" in
- ",$1")
- cmd="ya"
- ;;
- ya,emit)
- cmd="ya__emit"
- ;;
- ya,emit-to)
- cmd="ya__emit__to"
- ;;
- ya,help)
- cmd="ya__help"
- ;;
- ya,pack)
- cmd="ya__pack"
- ;;
- ya,pkg)
- cmd="ya__pkg"
- ;;
- ya,pub)
- cmd="ya__pub"
- ;;
- ya,pub-to)
- cmd="ya__pub__to"
- ;;
- ya,sub)
- cmd="ya__sub"
- ;;
- ya__help,emit)
- cmd="ya__help__emit"
- ;;
- ya__help,emit-to)
- cmd="ya__help__emit__to"
- ;;
- ya__help,help)
- cmd="ya__help__help"
- ;;
- ya__help,pack)
- cmd="ya__help__pack"
- ;;
- ya__help,pkg)
- cmd="ya__help__pkg"
- ;;
- ya__help,pub)
- cmd="ya__help__pub"
- ;;
- ya__help,pub-to)
- cmd="ya__help__pub__to"
- ;;
- ya__help,sub)
- cmd="ya__help__sub"
- ;;
- ya__help__pkg,add)
- cmd="ya__help__pkg__add"
- ;;
- ya__help__pkg,delete)
- cmd="ya__help__pkg__delete"
- ;;
- ya__help__pkg,install)
- cmd="ya__help__pkg__install"
- ;;
- ya__help__pkg,list)
- cmd="ya__help__pkg__list"
- ;;
- ya__help__pkg,upgrade)
- cmd="ya__help__pkg__upgrade"
- ;;
- ya__pkg,add)
- cmd="ya__pkg__add"
- ;;
- ya__pkg,delete)
- cmd="ya__pkg__delete"
- ;;
- ya__pkg,help)
- cmd="ya__pkg__help"
- ;;
- ya__pkg,install)
- cmd="ya__pkg__install"
- ;;
- ya__pkg,list)
- cmd="ya__pkg__list"
- ;;
- ya__pkg,upgrade)
- cmd="ya__pkg__upgrade"
- ;;
- ya__pkg__help,add)
- cmd="ya__pkg__help__add"
- ;;
- ya__pkg__help,delete)
- cmd="ya__pkg__help__delete"
- ;;
- ya__pkg__help,help)
- cmd="ya__pkg__help__help"
- ;;
- ya__pkg__help,install)
- cmd="ya__pkg__help__install"
- ;;
- ya__pkg__help,list)
- cmd="ya__pkg__help__list"
- ;;
- ya__pkg__help,upgrade)
- cmd="ya__pkg__help__upgrade"
- ;;
- *)
- ;;
- esac
- done
-
- case "${cmd}" in
- ya)
- opts="-V -h --version --help emit emit-to pkg pack pub pub-to sub help"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__emit)
- opts="-h --help <NAME> [ARGS]..."
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__emit__to)
- opts="-h --help <RECEIVER> <NAME> [ARGS]..."
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help)
- opts="emit emit-to pkg pack pub pub-to sub help"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__emit)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__emit__to)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__help)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__pack)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__pkg)
- opts="add delete install list upgrade"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__pkg__add)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__pkg__delete)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__pkg__install)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__pkg__list)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__pkg__upgrade)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__pub)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__pub__to)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__help__sub)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pack)
- opts="-a -d -i -l -u -h --add --delete --install --list --upgrade --help"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- --add)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -a)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --delete)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -d)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg)
- opts="-h --help add delete install list upgrade help"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg__add)
- opts="-h --help [IDS]..."
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg__delete)
- opts="-h --help [IDS]..."
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg__help)
- opts="add delete install list upgrade help"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg__help__add)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg__help__delete)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg__help__help)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg__help__install)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg__help__list)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg__help__upgrade)
- opts=""
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg__install)
- opts="-h --help"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg__list)
- opts="-h --help"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pkg__upgrade)
- opts="-h --help"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pub)
- opts="-h --str --json --list --help <KIND>"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- --str)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --json)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --list)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__pub__to)
- opts="-h --str --json --list --help <RECEIVER> <KIND>"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- --str)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --json)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --list)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- ya__sub)
- opts="-h --help <KINDS>"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- esac
-}
-
-if [[ "${BASH_VERSINFO[0]}" -eq 4 && "${BASH_VERSINFO[1]}" -ge 4 || "${BASH_VERSINFO[0]}" -gt 4 ]]; then
- complete -F _ya -o nosort -o bashdefault -o default ya
-else
- complete -F _ya -o bashdefault -o default ya
-fi
diff --git a/fedora/.config/bash/completions/yazi.bash b/fedora/.config/bash/completions/yazi.bash
deleted file mode 100644
index ae2d3a1..0000000
--- a/fedora/.config/bash/completions/yazi.bash
+++ /dev/null
@@ -1,66 +0,0 @@
-_yazi() {
- local i cur prev opts cmd
- COMPREPLY=()
- if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then
- cur="$2"
- else
- cur="${COMP_WORDS[COMP_CWORD]}"
- fi
- prev="$3"
- cmd=""
- opts=""
-
- for i in "${COMP_WORDS[@]:0:COMP_CWORD}"
- do
- case "${cmd},${i}" in
- ",$1")
- cmd="yazi"
- ;;
- *)
- ;;
- esac
- done
-
- case "${cmd}" in
- yazi)
- opts="-V -h --cwd-file --chooser-file --clear-cache --client-id --local-events --remote-events --debug --version --help [ENTRIES]..."
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- --cwd-file)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --chooser-file)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --client-id)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --local-events)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --remote-events)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- esac
-}
-
-if [[ "${BASH_VERSINFO[0]}" -eq 4 && "${BASH_VERSINFO[1]}" -ge 4 || "${BASH_VERSINFO[0]}" -gt 4 ]]; then
- complete -F _yazi -o nosort -o bashdefault -o default yazi
-else
- complete -F _yazi -o bashdefault -o default yazi
-fi
diff --git a/fedora/.config/bash/completions/zoxide.bash b/fedora/.config/bash/completions/zoxide.bash
deleted file mode 100644
index 1c2ed84..0000000
--- a/fedora/.config/bash/completions/zoxide.bash
+++ /dev/null
@@ -1,243 +0,0 @@
-_zoxide() {
- local i cur prev opts cmd
- COMPREPLY=()
- if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then
- cur="$2"
- else
- cur="${COMP_WORDS[COMP_CWORD]}"
- fi
- prev="$3"
- cmd=""
- opts=""
-
- for i in "${COMP_WORDS[@]:0:COMP_CWORD}"
- do
- case "${cmd},${i}" in
- ",$1")
- cmd="zoxide"
- ;;
- zoxide,add)
- cmd="zoxide__add"
- ;;
- zoxide,edit)
- cmd="zoxide__edit"
- ;;
- zoxide,import)
- cmd="zoxide__import"
- ;;
- zoxide,init)
- cmd="zoxide__init"
- ;;
- zoxide,query)
- cmd="zoxide__query"
- ;;
- zoxide,remove)
- cmd="zoxide__remove"
- ;;
- zoxide__edit,decrement)
- cmd="zoxide__edit__decrement"
- ;;
- zoxide__edit,delete)
- cmd="zoxide__edit__delete"
- ;;
- zoxide__edit,increment)
- cmd="zoxide__edit__increment"
- ;;
- zoxide__edit,reload)
- cmd="zoxide__edit__reload"
- ;;
- *)
- ;;
- esac
- done
-
- case "${cmd}" in
- zoxide)
- opts="-h -V --help --version add edit import init query remove"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- zoxide__add)
- opts="-s -h -V --score --help --version <PATHS>..."
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- --score)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -s)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- zoxide__edit)
- opts="-h -V --help --version decrement delete increment reload"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- zoxide__edit__decrement)
- opts="-h -V --help --version <PATH>"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- zoxide__edit__delete)
- opts="-h -V --help --version <PATH>"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- zoxide__edit__increment)
- opts="-h -V --help --version <PATH>"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- zoxide__edit__reload)
- opts="-h -V --help --version"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- zoxide__import)
- opts="-h -V --from --merge --help --version <PATH>"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- --from)
- COMPREPLY=($(compgen -W "autojump z" -- "${cur}"))
- return 0
- ;;
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- zoxide__init)
- opts="-h -V --no-cmd --cmd --hook --help --version bash elvish fish nushell posix powershell tcsh xonsh zsh"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- --cmd)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --hook)
- COMPREPLY=($(compgen -W "none prompt pwd" -- "${cur}"))
- return 0
- ;;
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- zoxide__query)
- opts="-a -i -l -s -h -V --all --interactive --list --score --exclude --help --version [KEYWORDS]..."
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- --exclude)
- COMPREPLY=()
- if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then
- compopt -o plusdirs
- fi
- return 0
- ;;
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- zoxide__remove)
- opts="-h -V --help --version [PATHS]..."
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- esac
-}
-
-if [[ "${BASH_VERSINFO[0]}" -eq 4 && "${BASH_VERSINFO[1]}" -ge 4 || "${BASH_VERSINFO[0]}" -gt 4 ]]; then
- complete -F _zoxide -o nosort -o bashdefault -o default zoxide
-else
- complete -F _zoxide -o bashdefault -o default zoxide
-fi
diff --git a/fedora/.config/bash/git.bash b/fedora/.config/bash/git.bash
deleted file mode 100644
index 8fe7382..0000000
--- a/fedora/.config/bash/git.bash
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-
-# Speed up git completion
-# http://talkings.org/post/5236392664/zsh-and-slow-git-completion
-__git_files() {
- _wanted files expl 'local files' _files
-}
diff --git a/fedora/.config/bash/keymaps.bash b/fedora/.config/bash/keymaps.bash
deleted file mode 100644
index 15bd7e2..0000000
--- a/fedora/.config/bash/keymaps.bash
+++ /dev/null
@@ -1,218 +0,0 @@
-#!/bin/bash
-
-# --------- Bash port (u-prefix removed) ---------
-# Put this into ~/.bashrc and run: source ~/.bashrc
-
-# enable vi editing mode
-set -o vi
-
-# Try to set beam cursor at prompt (best-effort)
-PROMPT_COMMAND='echo -ne "\e[5 q"'
-
-# ---------- helper: pre_cmd ----------
-pre_cmd() {
- local last_cmd
- last_cmd=$(history 1 | sed 's/^[ ]*[0-9]*[ ]*//')
-
- if [[ $last_cmd != sudo* ]]; then
- READLINE_LINE="sudo $last_cmd"
- READLINE_POINT=${#READLINE_LINE}
- fi
-}
-
-# ---------- Clipboard detection ----------
-_detect_clipboard_setup() {
- if command -v pbcopy >/dev/null 2>&1 && command -v pbpaste >/dev/null 2>&1; then
- clipcopy() { cat "${1:-/dev/stdin}" | pbcopy; }
- clippaste() { pbaste; }
- return 0
- fi
- if command -v wl-copy >/dev/null 2>&1 && command -v wl-paste >/dev/null 2>&1; then
- clipcopy() { cat "${1:-/dev/stdin}" | wl-copy; }
- clippaste() { wl-paste --no-newline; }
- return 0
- fi
- if command -v xclip >/dev/null 2>&1; then
- clipcopy() { cat "${1:-/dev/stdin}" | xclip -selection clipboard; }
- clippaste() { xclip -selection clipboard -out; }
- return 0
- fi
- if command -v xsel >/dev/null 2>&1; then
- clipcopy() { cat "${1:-/dev/stdin}" | xsel --clipboard --input; }
- clippaste() { xsel --clipboard --output; }
- return 0
- fi
- if command -v clip.exe >/dev/null 2>&1; then
- clipcopy() { cat "${1:-/dev/stdin}" | clip.exe; }
- clippaste() { powershell.exe -noprofile -command Get-Clipboard 2>/dev/null; }
- return 0
- fi
- if command -v tmux >/dev/null 2>&1 && [ -n "${TMUX:-}" ]; then
- clipcopy() { tmux load-buffer -; }
- clippaste() { tmux save-buffer -; }
- return 0
- fi
- return 1
-}
-_detect_clipboard_setup || true
-
-paste_clipboard_to_readline() {
- if ! command -v clippaste >/dev/null 2>&1; then
- _detect_clipboard_setup || {
- printf 'No clipboard helper found\n' >&2
- return 1
- }
- fi
- local clip
- clip=$(clippaste 2>/dev/null) || return 1
- clip="${clip%$'\n'}"
- if [[ -z "${READLINE_LINE+set}" ]]; then
- printf '%s' "$clip"
- return
- fi
- local left=${READLINE_LINE:0:READLINE_POINT}
- local right=${READLINE_LINE:READLINE_POINT}
- READLINE_LINE="${left}${clip}${right}"
- READLINE_POINT=$((READLINE_POINT + ${#clip}))
-}
-
-copy_readline_to_clipboard() {
- if [[ -z "${READLINE_LINE+set}" ]]; then
- printf 'No current line to copy\n' >&2
- return 1
- fi
- if ! command -v clipcopy >/dev/null 2>&1; then
- _detect_clipboard_setup || {
- printf 'No clipboard helper found\n' >&2
- return 1
- }
- fi
- printf '%s' "${READLINE_LINE}" | clipcopy
-}
-
-# ---------- basic utilities ----------
-clear_tree_2() {
- clear
- tree -L 2 2>/dev/null || true
-}
-clear_tree_3() {
- clear
- tree -L 3 2>/dev/null || true
-}
-insert_current_date() {
- local txt="$(date -I)"
- if [[ -z "${READLINE_LINE+set}" ]]; then
- printf '%s' "$txt"
- return
- fi
- local left=${READLINE_LINE:0:READLINE_POINT}
- local right=${READLINE_LINE:READLINE_POINT}
- READLINE_LINE="${left}${txt}${right}"
- READLINE_POINT=$((READLINE_POINT + ${#txt}))
-}
-insert_unix_timestamp() {
- local txt="$(date +%s)"
- if [[ -z "${READLINE_LINE+set}" ]]; then
- printf '%s' "$txt"
- return
- fi
- local left=${READLINE_LINE:0:READLINE_POINT}
- local right=${READLINE_LINE:READLINE_POINT}
- READLINE_LINE="${left}${txt}${right}"
- READLINE_POINT=$((READLINE_POINT + ${#txt}))
-}
-git_status_clear() {
- clear
- git status 2>/dev/null || git status --short 2>/dev/null || true
-}
-tmux_left_pane() {
- tmux select-pane -L 2>/dev/null || true
- tmux resize-pane -Z 2>/dev/null || true
-}
-vi_append_clip_selection() { paste_clipboard_to_readline; }
-copybuffer() { copy_readline_to_clipboard; }
-background_start() {
- local cmd="$1"
- shift || return 0
- for arg in "$@"; do "$cmd" "$arg" &>/dev/null & done
-}
-
-# ---------- pre_cmd widgets ----------
-man_command_line() { pre_cmd "man"; }
-sudo_command_line() { pre_cmd "sudo"; }
-
-# ---------- wrappers (u-prefix REMOVED) ----------
-bc() { command -v bc >/dev/null 2>&1 && /usr/bin/env bc "$@" || printf 'bc: not found\n' >&2; }
-cdi() { command -v cdi >/dev/null 2>&1 && cdi "$@" || printf 'cdi: not found\n' >&2; }
-lastfiles() { command -v lastfiles >/dev/null 2>&1 && lastfiles "$@" || printf 'lastfiles: not found\n' >&2; }
-htop() { command -v htop >/dev/null 2>&1 && htop "$@" || printf 'htop: not found\n' >&2; }
-sessionizer() { command -v sessionizer >/dev/null 2>&1 && sessionizer "$@" || printf 'sessionizer: not found\n' >&2; }
-upd() { command -v upd >/dev/null 2>&1 && upd "$@" || printf 'upd: not found\n' >&2; }
-cht() { command -v cht >/dev/null 2>&1 && cht "$@" || printf 'cht: not found\n' >&2; } # from '^ucht' -> 'cht'
-ali() { command -v ali >/dev/null 2>&1 && ali "$@" || printf 'ali: not found\n' >&2; }
-fD() { command -v fD >/dev/null 2>&1 && fD "$@" || printf 'fD: not found\n' >&2; }
-lastfiles_l() { command -v lastfiles >/dev/null 2>&1 && lastfiles -l || printf 'lastfiles: not found\n' >&2; }
-
-# ---------- Readline key bindings (bind -x) ----------
-# basic movement
-bind '"\C-a": beginning-of-line'
-bind '"\C-e": end-of-line'
-
-# function key bindings (map to bash functions above)
-bind -x '"\C-x\C-e":clear_tree_2'
-bind -x '"\C-x\C-w":clear_tree_3'
-bind -x '"\C-x\C-s":git_status_clear'
-bind -x '"\C-x\C-x\C-t":insert_current_date' # ^X^X^T (alternate: C-x C-t)
-bind -x '"\C-x\C-t":insert_current_date'
-bind -x '"\C-x\C-x\C-u":insert_unix_timestamp' # ^X^X^U
-bind -x '"\C-x\C-u":insert_unix_timestamp'
-
-# clipboard binds
-bind -x '"\C-x\C-p":paste_clipboard_to_readline' # ^X^P
-bind -x '"\C-x\C-y":copy_readline_to_clipboard' # ^X^Y
-
-# edit in editor
-edit_command_line() {
- local tmp content
- tmp=$(mktemp /tmp/bash-edit.XXXXXX) || return
- printf '%s' "${READLINE_LINE:-}" >"$tmp"
- "${EDITOR:-vim}" "$tmp"
- content=$(<"$tmp")
- READLINE_LINE="$content"
- READLINE_POINT=${#content}
- rm -f "$tmp"
-}
-bind -x '"\C-x\C-v":edit_command_line' # ^X^V
-
-# man & sudo insertion
-bind -x '"\C-x\C-m":man_command_line' # ^X^M
-stty -ixon 2>/dev/null || true
-bind -x '"\C-s":sudo_command_line' # ^S (stty -ixon to avoid flow control)
-
-# tmux left pane (bind ESC + backslash)
-#bind -x '\e\\':tmux_left_pane
-
-# ---------- mappings of the original bindkey -s lines (u removed) ----------
-bind -x '"\C-b":__bc' # will call function __bc below
-__bc() { bc -lq "$@"; }
-
-bind -x '"\C-d":cdi'
-bind -x '"\C-f":fzffiles'
-bind -x '"\C-n":lastfiles'
-bind -x '"\C-o":tmo'
-bind -x '"\C-p":fzfpass'
-bind -x '"\C-q":htop'
-bind -x '"\C-t":sessionizer'
-bind -x '"\C-z":pd'
-# ^_ (Ctrl-_) mapped to cht (from '^ucht' -> 'cht')
-bind -x $'"\C-_":cht'
-
-# ^X^... sequences (Ctrl-X then key)
-bind -x '"\C-x\C-a":ali'
-bind -x '"\C-x\C-d":fD'
-bind -x '"\C-x\C-f":gitfiles'
-bind -x '"\C-x\C-g":rgafiles'
-bind -x '"\C-x\C-l":gloac'
-bind -x '"\C-x\C-n":lastfiles_l'
-bind -x '"\C-x\C-q":fpkill'
-bind -x '"\C-x\C-_":fzffns' # ^X^_
diff --git a/fedora/.config/bash/packages.bash b/fedora/.config/bash/packages.bash
deleted file mode 100644
index 27d396e..0000000
--- a/fedora/.config/bash/packages.bash
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/bin/bash
-
-# --- Packages (bash version) ---
-declare -A packages=(
- # [zoxide]="--cmd cd --hook prompt"
-)
-
-eval_packages() {
- local package output
- for package in "${!packages[@]}"; do
- if command -v "$package" >/dev/null 2>&1; then
- # split args by space into array (preserve empty => zero args)
- local -a args=()
- if [[ -n "${packages[$package]}" ]]; then
- # Use builtin read to split on spaces (simple split)
- IFS=' ' read -r -a args <<<"${packages[$package]}"
- fi
-
- # Prefer initializing for bash (change to "zsh" if you really want zsh-init)
- if ((${#args[@]})); then
- output="$("$package" init bash "${args[@]}" 2>/dev/null)"
- else
- output="$("$package" init bash 2>/dev/null)"
- fi
-
- # If the command produced output, evaluate it in current shell
- if [[ -n "$output" ]]; then
- eval "$output"
- fi
- fi
- done
-}
-
-# run initialization
-eval_packages
diff --git a/fedora/.config/bash/scripts.bash b/fedora/.config/bash/scripts.bash
deleted file mode 100644
index 400265d..0000000
--- a/fedora/.config/bash/scripts.bash
+++ /dev/null
@@ -1,436 +0,0 @@
-#!/bin/bash
-
-###########################################################################################
-###########################################################################################
-### --- APACHE --- ###
-# View Apache logs
-apachelog() {
- if [ -f /etc/httpd/conf/httpd.conf ]; then
- cd /var/log/httpd && ls -xAh && multitail --no-repeat -c -s 2 /var/log/httpd/*_log
- else
- cd /var/log/apache2 && ls -xAh && multitail --no-repeat -c -s 2 /var/log/apache2/*.log
- fi
-}
-
-# Edit the Apache configuration
-apacheconfig() {
- if [ -f /etc/httpd/conf/httpd.conf ]; then
- sedit /etc/httpd/conf/httpd.conf
- elif [ -f /etc/apache2/apache2.conf ]; then
- sedit /etc/apache2/apache2.conf
- else
- echo "Error: Apache config file could not be found."
- echo "Searching for possible locations:"
- sudo updatedb && locate httpd.conf && locate apache2.conf
- fi
-}
-
-###########################################################################################
-###########################################################################################
-### --- BASH --- ###
-# Automatically install the needed support files for this .bashrc file
-install_bashrc_support() {
- local dtype
- dtype=$(distribution)
-
- if [ $dtype == "redhat" ]; then
- sudo yum install multitail tree joe
- elif [ $dtype == "suse" ]; then
- sudo zypper install multitail
- sudo zypper install tree
- sudo zypper install joe
- elif [ $dtype == "debian" ]; then
- sudo apt-get install multitail tree joe
- elif [ $dtype == "gentoo" ]; then
- sudo emerge multitail
- sudo emerge tree
- sudo emerge joe
- elif [ $dtype == "mandriva" ]; then
- sudo urpmi multitail
- sudo urpmi tree
- sudo urpmi joe
- elif [ $dtype == "slackware" ]; then
- echo "No install support for Slackware"
- else
- echo "Unknown distribution"
- fi
-}
-
-###########################################################################################
-###########################################################################################
-### --- CD --- ###
-# Move and go to the directory
-mvg() {
- if [ -d "$2" ]; then
- mv $1 $2 && cd $2
- else
- mv $1 $2
- fi
-}
-
-# Create and go to the directory
-mc() {
- mkdir -p $1 && cd $1
-}
-
-# Go up a specified number of directories (i.e. up 4)
-up() {
- local d=""
- limit=$1
- for ((i = 1; i <= limit; i++)); do
- d=$d/..
- done
- d=$(echo $d | sed 's/^\///')
- if [ -z "$d" ]; then
- d=..
- fi
- cd $d
-}
-
-#Automatically do an ls after each cd
-# cd () {
-# if [ -n "$1" ]; then
-# builtin cd "$@" && ls
-# else
-# builtin cd ~ && ls
-# fi
-# }
-
-# Returns the last 2 fields of the working directory
-pwdtail() {
- pwd | awk -F/ '{nlast = NF -1;print $nlast"/"$NF}'
-}
-
-###########################################################################################
-###########################################################################################
-### --- COMMAND OUTPUT --- ###
-alias ilco=insert_last_command_output
-insert_last_command_output() {
- local last_cmd
- last_cmd=$(history | tail -n 2 | head -n 1 | sed 's/^[ ]*[0-9]\+[ ]*//')
- eval "$last_cmd"
-}
-
-###########################################################################################
-###########################################################################################
-### --- COPY --- ###
-# Copy file with a progress bar
-cpf() {
- set -e
- strace -q -ewrite cp -- "${1}" "${2}" 2>&1 |
- awk '{
- count += $NF
- if (count % 10 == 0) {
- percent = count / total_size * 100
- printf "%3d%% [", percent
- for (i=0;i<=percent;i++)
- printf "="
- printf ">"
- for (i=percent;i<100;i++)
- printf " "
- printf "]\r"
- }
- }
- END { print "" }' total_size=$(stat -c '%s' "${1}") count=0
-}
-
-# Copy and go to the directory
-cpg() {
- if [ -d "$2" ]; then
- cp $1 $2 && cd $2
- else
- cp $1 $2
- fi
-}
-
-###########################################################################################
-###########################################################################################
-### --- CREATE --- ###
-alias mc=mkcd
-mkcd() { mkdir -p "$1" && cd "$1" || return; }
-
-mkdt() {
- mkdir -p "${1:+$1/}$(date +%F)"
-}
-
-###########################################################################################
-###########################################################################################
-### --- CURSOR --- ###
-# vi-mode cursor change
-function update_cursor {
- if [[ $READLINE_LINE == * ]]; then
- if [[ $READLINE_POINT -eq 0 ]]; then
- echo -ne '\e[6 q' # insert mode
- else
- echo -ne '\e[2 q' # command mode
- fi
- fi
-}
-
-# vi-command, vi-insert 모드 hook 등록
-bind -m vi-insert '":": "\C-o update_cursor"'
-bind -m vi-command '":": "\C-o update_cursor"'
-
-###########################################################################################
-###########################################################################################
-### --- DISTRIBUTION --- ###
-# Show the current distribution
-distribution() {
- local dtype
- # Assume unknown
- dtype="unknown"
-
- # First test against Fedora / RHEL / CentOS / generic Redhat derivative
- if [ -r /etc/rc.d/init.d/functions ]; then
- source /etc/rc.d/init.d/functions
- [ zz$(type -t passed 2>/dev/null) == "zzfunction" ] && dtype="redhat"
-
- # Then test against SUSE (must be after Redhat,
- # I've seen rc.status on Ubuntu I think? TODO: Recheck that)
- elif [ -r /etc/rc.status ]; then
- source /etc/rc.status
- [ zz$(type -t rc_reset 2>/dev/null) == "zzfunction" ] && dtype="suse"
-
- # Then test against Debian, Ubuntu and friends
- elif [ -r /lib/lsb/init-functions ]; then
- source /lib/lsb/init-functions
- [ zz$(type -t log_begin_msg 2>/dev/null) == "zzfunction" ] && dtype="debian"
-
- # Then test against Gentoo
- elif [ -r /etc/init.d/functions.sh ]; then
- source /etc/init.d/functions.sh
- [ zz$(type -t ebegin 2>/dev/null) == "zzfunction" ] && dtype="gentoo"
-
- # For Mandriva we currently just test if /etc/mandriva-release exists
- # and isn't empty (TODO: Find a better way :)
- elif [ -s /etc/mandriva-release ]; then
- dtype="mandriva"
-
- # For Slackware we currently just test if /etc/slackware-version exists
- elif [ -s /etc/slackware-version ]; then
- dtype="slackware"
-
- fi
- echo $dtype
-}
-
-# Show the current version of the operating system
-ver() {
- local dtype
- dtype=$(distribution)
-
- if [ $dtype == "redhat" ]; then
- if [ -s /etc/redhat-release ]; then
- cat /etc/redhat-release && uname -a
- else
- cat /etc/issue && uname -a
- fi
- elif [ $dtype == "suse" ]; then
- cat /etc/SuSE-release
- elif [ $dtype == "debian" ]; then
- lsb_release -a
- # sudo cat /etc/issue && sudo cat /etc/issue.net && sudo cat /etc/lsb_release && sudo cat /etc/os-release # Linux Mint option 2
- elif [ $dtype == "gentoo" ]; then
- cat /etc/gentoo-release
- elif [ $dtype == "mandriva" ]; then
- cat /etc/mandriva-release
- elif [ $dtype == "slackware" ]; then
- cat /etc/slackware-version
- else
- if [ -s /etc/issue ]; then
- cat /etc/issue
- else
- echo "Error: Unknown distribution"
- exit 1
- fi
- fi
-}
-
-###########################################################################################
-###########################################################################################
-### --- EDIT --- ###
-edit() {
- if [ "$(type -t jpico)" = "file" ]; then
- # Use JOE text editor http://joe-editor.sourceforge.net/
- jpico -nonotice -linums -nobackups "$@"
- elif [ "$(type -t nano)" = "file" ]; then
- nano -c "$@"
- elif [ "$(type -t pico)" = "file" ]; then
- pico "$@"
- else
- vim "$@"
- fi
-}
-
-sedit() {
- if [ "$(type -t jpico)" = "file" ]; then
- # Use JOE text editor http://joe-editor.sourceforge.net/
- sudo jpico -nonotice -linums -nobackups "$@"
- elif [ "$(type -t nano)" = "file" ]; then
- sudo nano -c "$@"
- elif [ "$(type -t pico)" = "file" ]; then
- sudo pico "$@"
- else
- sudo vim "$@"
- fi
-}
-
-###########################################################################################
-###########################################################################################
-### --- EXTRACT --- ###
-extract() {
- for archive in $*; do
- if [ -f $archive ]; then
- case $archive in
- *.tar.bz2) tar xvjf $archive ;;
- *.tar.gz) tar xvzf $archive ;;
- *.bz2) bunzip2 $archive ;;
- *.rar) rar x $archive ;;
- *.gz) gunzip $archive ;;
- *.tar) tar xvf $archive ;;
- *.tbz2) tar xvjf $archive ;;
- *.tgz) tar xvzf $archive ;;
- *.zip) unzip $archive ;;
- *.Z) uncompress $archive ;;
- *.7z) 7z x $archive ;;
- *) echo "don't know how to extract '$archive'..." ;;
- esac
- else
- echo "'$archive' is not a valid file!"
- fi
- done
-}
-
-###########################################################################################
-###########################################################################################
-### --- NETWORK --- ###
-# Show current network information
-netinfo() {
- echo "--------------- Network Information ---------------"
- /sbin/ifconfig | awk /'inet addr/ {print $2}'
- echo ""
- /sbin/ifconfig | awk /'Bcast/ {print $3}'
- echo ""
- /sbin/ifconfig | awk /'inet addr/ {print $4}'
-
- /sbin/ifconfig | awk /'HWaddr/ {print $4,$5}'
- echo "---------------------------------------------------"
-}
-
-# IP address lookup
-alias whatismyip="whatsmyip"
-function whatsmyip() {
- # Dumps a list of all IP addresses for every device
- # /sbin/ifconfig |grep -B1 "inet addr" |awk '{ if ( $1 == "inet" ) { print $2 } else if ( $2 == "Link" ) { printf "%s:" ,$1 } }' |awk -F: '{ print $1 ": " $3 }';
-
- # Internal IP Lookup
- echo -n "Internal IP: "
- /sbin/ifconfig eth0 | grep "inet addr" | awk -F: '{print $2}' | awk '{print $1}'
-
- # External IP Lookup
- echo -n "External IP: "
- wget http://smart-ip.net/myip -O - -q
-}
-
-###########################################################################################
-###########################################################################################
-### --- PASS --- ###
-pass_otp() { pass otp uri -q "$1"; }
-pass_otp_insert() { pass otp insert "$1"; }
-
-alias cpqr=pass_qr
-pass_qr() { qrencode -o "$1.png" -t png -Sv 40 <"$1.pgp"; }
-
-###########################################################################################
-###########################################################################################
-### --- PHP --- ###
-# Edit the PHP configuration file
-phpconfig() {
- if [ -f /etc/php.ini ]; then
- sedit /etc/php.ini
- elif [ -f /etc/php/php.ini ]; then
- sedit /etc/php/php.ini
- elif [ -f /etc/php5/php.ini ]; then
- sedit /etc/php5/php.ini
- elif [ -f /usr/bin/php5/bin/php.ini ]; then
- sedit /usr/bin/php5/bin/php.ini
- elif [ -f /etc/php5/apache2/php.ini ]; then
- sedit /etc/php5/apache2/php.ini
- else
- echo "Error: php.ini file could not be found."
- echo "Searching for possible locations:"
- sudo updatedb && locate php.ini
- fi
-}
-
-###########################################################################################
-###########################################################################################
-### --- SEARCH --- ###
-ftext() {
- # -i case-insensitive
- # -I ignore binary files
- # -H causes filename to be printed
- # -r recursive search
- # -n causes line number to be printed
- # optional: -F treat search term as a literal, not a regular expression
- # optional: -l only print filenames and not the matching lines ex. grep -irl "$1" *
- grep -iIHrn --color=always "$1" . | less -r
-}
-
-###########################################################################################
-###########################################################################################
-### --- SQL --- ###
-# Edit the MySQL configuration file
-mysqlconfig() {
- if [ -f /etc/my.cnf ]; then
- sedit /etc/my.cnf
- elif [ -f /etc/mysql/my.cnf ]; then
- sedit /etc/mysql/my.cnf
- elif [ -f /usr/local/etc/my.cnf ]; then
- sedit /usr/local/etc/my.cnf
- elif [ -f /usr/bin/mysql/my.cnf ]; then
- sedit /usr/bin/mysql/my.cnf
- elif [ -f ~/my.cnf ]; then
- sedit ~/my.cnf
- elif [ -f ~/.my.cnf ]; then
- sedit ~/.my.cnf
- else
- echo "Error: my.cnf file could not be found."
- echo "Searching for possible locations:"
- sudo updatedb && locate my.cnf
- fi
-}
-
-###########################################################################################
-###########################################################################################
-### --- STOW --- ###
-alias dstw=dotfiles_stw
-dotfiles_stw() {
- "${XDG_DOTFILES_DIR:-${HOME}/.dotfiles}/$(whereami)/.local/bin/stw"
-}
-
-###########################################################################################
-###########################################################################################
-### --- SUDO --- ###
-pre_cmd() {
- local prepend_command="$1"
- local buffer="${READLINE_LINE:-}"
-
- if [ -z "$buffer" ]; then
- buffer=$(history | tail -n 2 | head -n 1 | sed 's/^[ ]*[0-9]\+[ ]*//')
- fi
-
- READLINE_LINE="$prepend_command $buffer"
- READLINE_POINT=${#READLINE_LINE}
-}
-bind -x '"\es":pre_cmd sudo'
-
-###########################################################################################
-###########################################################################################
-### --- TRIM --- ###
-trim() {
- local var=$@
- var='${var#"${var%%[![:space:]]*}"}' # remove leading whitespace characters
- var='${var%"${var##*[![:space:]]}"}' # remove trailing whitespace characters
- echo -n "$var"
-}