.bashrc (view raw)
1#
2# ~/.bashrc
3#
4
5# If not running interactively, don't do anything
6[[ $- != *i* ]] && return
7
8# vi mode
9set -o vi
10
11# aliases
12alias ls='ls --color=auto --group-directories-first'
13alias ll='ls -lAh'
14alias cat='bat -p'
15alias mocp='mocp -M "~/.config/moc"'
16alias ssh='TERM=rxvt ssh' # fix alacritty term issues
17
18# see https://www.atlassian.com/git/tutorials/dotfiles
19# and https://youtu.be/tBoLDpTWVOM
20alias config='/usr/bin/git --git-dir=$HOME/Documents/dotfiles --work-tree=$HOME'
21
22alias brc='nvim ~/.bashrc && source ~/.bashrc'
23alias vrc='nvim ~/.config/nvim/init.vim'
24
25alias v='nvim'
26alias fsl='fossil'
27
28PS1='[\u@\h \W]\$ '
29
30# use gpg authentication key for ssh auth
31SSH_AUTH_SOCK=$( gpgconf --list-dirs agent-ssh-socket )
32export SSH_AUTH_SOCK
33gpgconf --launch gpg-agent
34
35# fzf bindings and tweaks
36source /usr/share/fzf/key-bindings.bash
37source /usr/share/fzf/completion.bash
38export FZF_DEFAULT_COMMAND='fd --type f --hidden --follow --exclude .git'
39# shellcheck disable=SC2016
40export FZF_CTRL_T_COMMAND='$FZF_DEFAULT_COMMAND'
41
42FOSSILS_HOME=$HOME/Documents/Fossils
43export FOSSILS_HOME
44
45# quickly cd into fossil repo
46fslcd() {
47 _fsl_checkout=$(fossil all ls -c | fzf +m)
48 cd "$_fsl_checkout" || return
49}
50
51# starship prompt
52eval "$(starship init bash)"
53