Files
dotfiles/profiles/base/.bash/conf.d/06-tool-integrations.bash

60 lines
1.8 KiB
Bash

# better ls
if command -v eza >/dev/null 2>&1; then
alias ll="eza -bghHlS"
else
alias ll="exa -bghHlS"
fi
# bat (debian)
if command -v batcat >/dev/null 2>&1; then
alias bat=batcat
fi
# HSTR configuration - add this to ~/.bashrc
alias hh="hstr" # hh to be alias for hstr
export HSTR_CONFIG="hicolor" # get more colors
shopt -s histappend # append new history items to .bash_history
export HISTCONTROL="ignorespace" # leading space hides commands from history
export HISTFILESIZE="10000" # increase history file size (default is 500)
export HISTSIZE="$HISTFILESIZE" # increase history size (default is 500)
# ensure synchronization between bash memory and history file
export PROMPT_COMMAND=("history -a; history -n;" "${PROMPT_COMMAND[@]}")
function hstrnotiocsti {
{ READLINE_LINE="$({ </dev/tty hstr -- "$READLINE_LINE"; } \
2>&1 1>&3 3>&-)"; } 3>&1
READLINE_POINT="${#READLINE_LINE}"
}
# if this is interactive shell, then bind hstr to Ctrl-r (for Vi mode check doc)
if [[ $- =~ .*i.* ]]; then
bind -x '"\C-r": "hstrnotiocsti"'
fi
export HSTR_TIOCSTI="n"
# ranger
ranger_cd() {
temp_file="$(mktemp -t "ranger_cd.XXXXXXXXXX")"
ranger --choosedir="$temp_file" -- "${@:-$PWD}"
if chosen_dir="$(cat -- "$temp_file")" &&
[[ -n "$chosen_dir" ]] &&
[[ "$chosen_dir" != "$PWD" ]]; then
cd -- "$chosen_dir" || exit 1
fi
rm -f -- "$temp_file"
}
alias ranger="ranger_cd"
# mc
# shellcheck source=/dev/null
[[ -f "/usr/libexec/mc/mc.sh" ]] && . "/usr/libexec/mc/mc.sh"
[[ -f "/usr/lib/mc/mc.sh" ]] && . "/usr/lib/mc/mc.sh"
# inside tmux, we don't know if Sway got restarted
if [[ -v TMUX ]]; then
swaymsg() {
SWAYSOCK="$XDG_RUNTIME_DIR/sway-ipc.$UID.$(pgrep -x sway).sock"
export SWAYSOCK
command swaymsg "$@"
}
fi