Change dotfiles structure for shell
This commit is contained in:
21
bash/.bashrc
21
bash/.bashrc
@@ -1,21 +0,0 @@
|
||||
# Put all the commands here that should run regardless of whether
|
||||
# this is an interactive or non-interactive shell.
|
||||
|
||||
# Example command:
|
||||
umask 0027
|
||||
|
||||
# test if the prompt var is not set and also to prevent failures
|
||||
# when `$PS1` is unset and `set -u` is used
|
||||
if [ -z "${PS1:-}" ]; then
|
||||
# prompt var is not set, so this is *not* an interactive shell
|
||||
return
|
||||
fi
|
||||
|
||||
# If we reach this line of code, then the prompt var is set, so
|
||||
# this is an interactive shell.
|
||||
# Put all the commands here that should run only if this is an
|
||||
# interactive shell.
|
||||
|
||||
# Example command:
|
||||
source ~/dotfiles/sh_personal #added by 6500gitsetup
|
||||
alias clear="TERM=xterm /usr/bin/clear"
|
||||
@@ -1,50 +0,0 @@
|
||||
#---------------------------------- Alias -----------------------------------------
|
||||
alias tmux='tmux -u'
|
||||
alias cht="cht.sh"
|
||||
# alias ls="exa --group-directories-first --icons -T -L1 -l"
|
||||
# alias lt="exa --group-directories-first --icons -T -L1"
|
||||
# alias ll="ls -lagh"
|
||||
alias ls="lsd"
|
||||
alias bless="bat --paging=auto"
|
||||
alias cat="bat -pf"
|
||||
|
||||
#--------------------------------- Exports ---------------------------------------
|
||||
export EDITOR='nvim'
|
||||
# export MANPAGER="sh -c 'col -bx | bat -l man -pfn --paging always'"
|
||||
export MANPAGER='nvim +Man!'
|
||||
export MANROFFOPT="-c"
|
||||
|
||||
#--------------------------------- Set bash prompt -------------------------------
|
||||
# export PS1="\e[1;32m\h\e[0m:\e[1;34m\w\e[0m\n$ "
|
||||
#
|
||||
#
|
||||
#--- DevOps Shell
|
||||
# Key bindings
|
||||
# bind '"\C-f":"tmux-sessionizer\n"'
|
||||
|
||||
eval "$(starship init bash)"
|
||||
|
||||
if [[ $- =~ i ]] && [[ -z "$TMUX" ]] && [[ -n "$SSH_TTY" ]]; then
|
||||
tmux attach-session -t 0|| tmux new-session -s 0
|
||||
fi
|
||||
#
|
||||
# [ -f ~/.fzf.bash ] && source ~/.fzf.bash
|
||||
# Set up fzf key bindings and fuzzy completion
|
||||
eval "$(fzf --bash)"
|
||||
|
||||
# alias f="fzf --preview 'fzf-preview.sh {}'"
|
||||
# alias t="fzf-tmux"
|
||||
|
||||
# alias tfn="~/scripts/nvim-fzf.sh"
|
||||
# export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
|
||||
# --multi
|
||||
# --color=fg:-1,fg+:#d0d0d0,bg:-1,bg+:#262626
|
||||
# --color=hl:#5f87af,hl+:#5fd7ff,info:#afaf87,marker:#87ff00
|
||||
# --color=prompt:#d7005f,spinner:#af5fff,pointer:#af5fff,header:#87afaf
|
||||
# --color=border:#262626,label:#aeaeae,query:#d9d9d9
|
||||
# --border="rounded"
|
||||
# --border-label="" --preview-window="border-rounded" --prompt="> "
|
||||
# --info="inline" --marker=">" --pointer="◆" --separator="─" --scrollbar="│"'
|
||||
|
||||
# colorscript -r
|
||||
# neofetch
|
||||
@@ -1,82 +0,0 @@
|
||||
format = """
|
||||
$conda$username$hostname$directory$git_branch$git_state$git_status$python$cmd_duration$line_break\
|
||||
$character"""
|
||||
|
||||
# Wait 10 milliseconds for starship to check files under the current directory.
|
||||
scan_timeout = 10
|
||||
|
||||
# Disable the blank line at the start of the prompt
|
||||
add_newline = true
|
||||
|
||||
# # Define custom colors
|
||||
# [palettes.foo]
|
||||
# # Overwrite existing color
|
||||
# blue = '21'
|
||||
# # Define new color
|
||||
# mustard = '#af8700'
|
||||
|
||||
[directory]
|
||||
style = "purple"
|
||||
truncation_length = 3
|
||||
format = ': [$path]($style)[$read_only]($read_only_style) '
|
||||
truncation_symbol = ".../"
|
||||
truncate_to_repo =true
|
||||
|
||||
[character]
|
||||
success_symbol = '[❯](bold green)'
|
||||
# success_symbol = '[➜](bold green)'
|
||||
error_symbol = '[✗](bold purple) '
|
||||
vimcmd_symbol = "[❮](green)"
|
||||
|
||||
[git_branch]
|
||||
symbol = '🌱 '
|
||||
# truncation_length = 4
|
||||
truncation_symbol = ''
|
||||
format = '[$symbol$branch]($style) '
|
||||
|
||||
[git_status]
|
||||
conflicted = '🏳'
|
||||
ahead = '🏎💨'
|
||||
behind = '😰'
|
||||
diverged = '😵'
|
||||
up_to_date = '✓'
|
||||
untracked = '🤷'
|
||||
stashed = '📦'
|
||||
modified = '📝'
|
||||
staged = '[++\($count\)](green)'
|
||||
renamed = '👅'
|
||||
deleted = '🗑'
|
||||
|
||||
[git_state]
|
||||
format = '[\($state( $progress_current of $progress_total)\)]($style) '
|
||||
cherry_pick = '[🍒 PICKING](bold red)'
|
||||
|
||||
[cmd_duration]
|
||||
min_time = 100
|
||||
format = 'underwent [$duration](bold yellow)'
|
||||
|
||||
[os]
|
||||
disabled = false
|
||||
[username]
|
||||
style_user = 'white bold'
|
||||
style_root = 'black bold'
|
||||
format = '[$user]($style) '
|
||||
disabled = false
|
||||
show_always = true
|
||||
|
||||
[hostname]
|
||||
ssh_only = false
|
||||
format = '@(bold blue) [$hostname](bold red) '
|
||||
trim_at = '.ciena.com'
|
||||
disabled = false
|
||||
|
||||
[status]
|
||||
style = 'bg:blue'
|
||||
symbol = '🔴 '
|
||||
success_symbol = '🟢 SUCCESS'
|
||||
format = '[\[$symbol$common_meaning$signal_name$maybe_int\]]($style) '
|
||||
map_symbol = true
|
||||
disabled = false
|
||||
|
||||
[conda]
|
||||
format = "[$symbol$environment]($style) "
|
||||
127
bash/zoxide
127
bash/zoxide
@@ -1,127 +0,0 @@
|
||||
# =============================================================================
|
||||
#
|
||||
# Utility functions for zoxide.
|
||||
#
|
||||
|
||||
# pwd based on the value of _ZO_RESOLVE_SYMLINKS.
|
||||
function __zoxide_pwd() {
|
||||
\builtin pwd -L
|
||||
}
|
||||
|
||||
# cd + custom logic based on the value of _ZO_ECHO.
|
||||
function __zoxide_cd() {
|
||||
# shellcheck disable=SC2164
|
||||
\builtin cd -- "$@"
|
||||
}
|
||||
|
||||
# =============================================================================
|
||||
#
|
||||
# Hook configuration for zoxide.
|
||||
#
|
||||
|
||||
# Hook to add new entries to the database.
|
||||
__zoxide_oldpwd="$(__zoxide_pwd)"
|
||||
|
||||
function __zoxide_hook() {
|
||||
\builtin local -r retval="$?"
|
||||
\builtin local pwd_tmp
|
||||
pwd_tmp="$(__zoxide_pwd)"
|
||||
if [[ ${__zoxide_oldpwd} != "${pwd_tmp}" ]]; then
|
||||
__zoxide_oldpwd="${pwd_tmp}"
|
||||
\command zoxide add -- "${__zoxide_oldpwd}"
|
||||
fi
|
||||
return "${retval}"
|
||||
}
|
||||
|
||||
# Initialize hook.
|
||||
if [[ ${PROMPT_COMMAND:=} != *'__zoxide_hook'* ]]; then
|
||||
PROMPT_COMMAND="__zoxide_hook;${PROMPT_COMMAND#;}"
|
||||
fi
|
||||
|
||||
# =============================================================================
|
||||
#
|
||||
# When using zoxide with --no-cmd, alias these internal functions as desired.
|
||||
#
|
||||
|
||||
__zoxide_z_prefix='z#'
|
||||
|
||||
# Jump to a directory using only keywords.
|
||||
function __zoxide_z() {
|
||||
# shellcheck disable=SC2199
|
||||
if [[ $# -eq 0 ]]; then
|
||||
__zoxide_cd ~
|
||||
elif [[ $# -eq 1 && $1 == '-' ]]; then
|
||||
__zoxide_cd "${OLDPWD}"
|
||||
elif [[ $# -eq 1 && -d $1 ]]; then
|
||||
__zoxide_cd "$1"
|
||||
elif [[ ${@: -1} == "${__zoxide_z_prefix}"?* ]]; then
|
||||
# shellcheck disable=SC2124
|
||||
\builtin local result="${@: -1}"
|
||||
__zoxide_cd "${result:${#__zoxide_z_prefix}}"
|
||||
else
|
||||
\builtin local result
|
||||
# shellcheck disable=SC2312
|
||||
result="$(\command zoxide query --exclude "$(__zoxide_pwd)" -- "$@")" &&
|
||||
__zoxide_cd "${result}"
|
||||
fi
|
||||
}
|
||||
|
||||
# Jump to a directory using interactive search.
|
||||
function __zoxide_zi() {
|
||||
\builtin local result
|
||||
result="$(\command zoxide query --interactive -- "$@")" && __zoxide_cd "${result}"
|
||||
}
|
||||
|
||||
# =============================================================================
|
||||
#
|
||||
# Commands for zoxide. Disable these using --no-cmd.
|
||||
#
|
||||
|
||||
\builtin unalias z &>/dev/null || \builtin true
|
||||
function z() {
|
||||
__zoxide_z "$@"
|
||||
}
|
||||
|
||||
\builtin unalias zi &>/dev/null || \builtin true
|
||||
function zi() {
|
||||
__zoxide_zi "$@"
|
||||
}
|
||||
|
||||
# Load completions.
|
||||
# - Bash 4.4+ is required to use `@Q`.
|
||||
# - Completions require line editing. Since Bash supports only two modes of
|
||||
# line editing (`vim` and `emacs`), we check if either them is enabled.
|
||||
# - Completions don't work on `dumb` terminals.
|
||||
if [[ ${BASH_VERSINFO[0]:-0} -eq 4 && ${BASH_VERSINFO[1]:-0} -ge 4 || ${BASH_VERSINFO[0]:-0} -ge 5 ]] &&
|
||||
[[ :"${SHELLOPTS}": =~ :(vi|emacs): && ${TERM} != 'dumb' ]]; then
|
||||
# Use `printf '\e[5n'` to redraw line after fzf closes.
|
||||
\builtin bind '"\e[0n": redraw-current-line' &>/dev/null
|
||||
|
||||
function __zoxide_z_complete() {
|
||||
# Only show completions when the cursor is at the end of the line.
|
||||
[[ ${#COMP_WORDS[@]} -eq $((COMP_CWORD + 1)) ]] || return
|
||||
|
||||
# If there is only one argument, use `cd` completions.
|
||||
if [[ ${#COMP_WORDS[@]} -eq 2 ]]; then
|
||||
\builtin mapfile -t COMPREPLY < <(
|
||||
\builtin compgen -A directory -- "${COMP_WORDS[-1]}" || \builtin true
|
||||
)
|
||||
# If there is a space after the last word, use interactive selection.
|
||||
elif [[ -z ${COMP_WORDS[-1]} ]] && [[ ${COMP_WORDS[-2]} != "${__zoxide_z_prefix}"?* ]]; then
|
||||
\builtin local result
|
||||
# shellcheck disable=SC2312
|
||||
result="$(\command zoxide query --exclude "$(__zoxide_pwd)" --interactive -- "${COMP_WORDS[@]:1:${#COMP_WORDS[@]}-2}")" &&
|
||||
COMPREPLY=("${__zoxide_z_prefix}${result}/")
|
||||
\builtin printf '\e[5n'
|
||||
fi
|
||||
}
|
||||
|
||||
\builtin complete -F __zoxide_z_complete -o filenames -- z
|
||||
\builtin complete -r zi &>/dev/null || \builtin true
|
||||
fi
|
||||
|
||||
# =============================================================================
|
||||
#
|
||||
# To initialize zoxide, add this to your configuration (usually ~/.bashrc):
|
||||
#
|
||||
eval "$(zoxide init bash)"
|
||||
39
shell/aliases
Normal file
39
shell/aliases
Normal file
@@ -0,0 +1,39 @@
|
||||
|
||||
# some more ls aliases
|
||||
alias ll='ls -alF'
|
||||
alias la='ls -A'
|
||||
alias l='ls -CF'
|
||||
alias tmux='tmux -u'
|
||||
|
||||
# Add an "alert" alias for long running commands. Use like so:
|
||||
# sleep 10; alert
|
||||
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
|
||||
|
||||
|
||||
#---------------------------------- Alias -----------------------------------------
|
||||
alias tmux='tmux -u'
|
||||
alias clear="TERM=xterm /usr/bin/clear"
|
||||
alias cht="cht.sh"
|
||||
# alias ls="lsd"
|
||||
alias ls="eza --group-directories-first --icons"
|
||||
alias lt="eza --group-directories-first --icons -T -L1"
|
||||
alias ll="ls -lagh"
|
||||
alias bless="bat --paging=auto"
|
||||
alias rename-pane="~/dotfiles/scripts/rename-pane.sh"
|
||||
alias cat="bat -pf"
|
||||
alias gl="git log"
|
||||
alias gC="git commit"
|
||||
alias gCa="git commit --amend"
|
||||
alias gs='git status '
|
||||
alias ga='git add '
|
||||
alias gb='git branch '
|
||||
alias gd='git diff'
|
||||
alias gc='git checkout '
|
||||
alias go="git log --oneline"
|
||||
alias gk='gitk --all&'
|
||||
alias gn="git log -n2"
|
||||
alias f="fzf --preview 'fzf-preview.sh {}'"
|
||||
alias t="fzf-tmux"
|
||||
alias tfn="~/scripts/nvim-fzf.sh"
|
||||
|
||||
|
||||
@@ -17,5 +17,7 @@ fi
|
||||
# interactive shell.
|
||||
|
||||
# Example command:
|
||||
source /home/jsarthak/dotfiles/sh_personal #added by 6500gitsetup
|
||||
source ~/dotfiles/shell/common
|
||||
source ~/dotfiles/shell/personal #added by 6500gitsetup
|
||||
source ~/dotfiles/shell/aliases
|
||||
# source /home/jsarthak/dotfiles/sh_ciena #added by 6500gitsetup
|
||||
0
shell/common
Normal file
0
shell/common
Normal file
@@ -45,44 +45,6 @@ esac
|
||||
|
||||
# colored GCC warnings and errors
|
||||
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
|
||||
|
||||
# some more ls aliases
|
||||
alias ll='ls -alF'
|
||||
alias la='ls -A'
|
||||
alias l='ls -CF'
|
||||
alias tmux='tmux -u'
|
||||
|
||||
# Add an "alert" alias for long running commands. Use like so:
|
||||
# sleep 10; alert
|
||||
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
|
||||
|
||||
|
||||
#---------------------------------- Alias -----------------------------------------
|
||||
alias tmux='tmux -u'
|
||||
alias clear="TERM=xterm /usr/bin/clear"
|
||||
alias cht="cht.sh"
|
||||
# alias ls="lsd"
|
||||
alias ls="eza --group-directories-first --icons"
|
||||
alias lt="eza --group-directories-first --icons -T -L1"
|
||||
alias ll="ls -lagh"
|
||||
alias bless="bat --paging=auto"
|
||||
alias rename-pane="~/dotfiles/scripts/rename-pane.sh"
|
||||
alias cat="bat -pf"
|
||||
alias gl="git log"
|
||||
alias gC="git commit"
|
||||
alias gCa="git commit --amend"
|
||||
alias gs='git status '
|
||||
alias ga='git add '
|
||||
alias gb='git branch '
|
||||
alias gd='git diff'
|
||||
alias gc='git checkout '
|
||||
alias go="git log --oneline"
|
||||
alias gk='gitk --all&'
|
||||
alias gn="git log -n2"
|
||||
alias f="fzf --preview 'fzf-preview.sh {}'"
|
||||
alias t="fzf-tmux"
|
||||
alias tfn="~/scripts/nvim-fzf.sh"
|
||||
|
||||
#--------------------------------- Exports ---------------------------------------
|
||||
export STARSHIP_CONFIG_BACKGROUND_COLOR="dark"
|
||||
export EDITOR='nvim'
|
||||
@@ -111,7 +111,9 @@ source <(fzf --zsh)
|
||||
export PATH="/Users/jsarthak/.antigravity/antigravity/bin:$PATH"
|
||||
export PATH="/Users/jsarthak/flutter-sdk/flutter/bin:$PATH"
|
||||
export PATH="/opt/homebrew/bin:/opt/homebrew/sbin:$PATH"
|
||||
source $HOME/dotfiles/sh_personal
|
||||
source $HOME/dotfiles/shell/common
|
||||
source $HOME/dotfiles/shell/personal
|
||||
source $HOME/dotfiles/shell/aliases
|
||||
MANPAGER="col -b | cat"
|
||||
MANROFFOPT="-P-c"
|
||||
eval "$(zoxide init zsh)"
|
||||
@@ -1,60 +0,0 @@
|
||||
# source /opt/tools/swtools/git-completion/git-completion.bash #added by 6500gitsetup
|
||||
#---------------------------------- Alias -----------------------------------------
|
||||
alias tmux='tmux -u'
|
||||
alias vim="nvim"
|
||||
alias n="nvim"
|
||||
alias z="zoxide"
|
||||
alias cht="cht.sh"
|
||||
alias ls="eza --group-directories-first"
|
||||
alias bless="bat --paging=auto"
|
||||
alias gca="git commit --amend"
|
||||
alias gs="git status"
|
||||
alias gC="git commit"
|
||||
alias gl="git log"
|
||||
alias gn="git log -n2"
|
||||
alias go="git log --oneline"
|
||||
alias rename-pane="~/dotfiles/scripts/rename-pane.sh"
|
||||
|
||||
|
||||
#--------------------------------- Exports ---------------------------------------
|
||||
export EDITOR='nvim'
|
||||
|
||||
#--------------------------------- Set bash prompt -------------------------------
|
||||
# export PS1="\e[1;32m\h\e[0m:\e[1;34m\w\e[0m\n$ "
|
||||
#
|
||||
#
|
||||
#--- DevOps Shell
|
||||
# devops-activate
|
||||
|
||||
cdls() {
|
||||
local dir="$1"
|
||||
local dir="${dir:=$HOME}"
|
||||
if [[ -d "$dir" ]]; then
|
||||
cd "$dir" >/dev/null; ls --color=auto
|
||||
else
|
||||
echo "bash: cdls: $dir: Directory not found"
|
||||
fi
|
||||
}
|
||||
#
|
||||
# if [[ $- =~ i ]] && [[ -z "$TMUX" ]] && [[ -n "$SSH_TTY" ]]; then
|
||||
# tmux attach-session -t 0|| tmux new-session -s 0
|
||||
# fi
|
||||
#
|
||||
[ -f ~/.fzf.bash ] && source ~/.fzf.bash
|
||||
|
||||
alias f="fzf --preview 'fzf-preview.sh {}'"
|
||||
alias t="fzf-tmux"
|
||||
|
||||
alias tfn="~/scripts/nvim-fzf.sh"
|
||||
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
|
||||
--multi
|
||||
--color=fg:-1,fg+:#d0d0d0,bg:-1,bg+:#262626
|
||||
--color=hl:#5f87af,hl+:#5fd7ff,info:#afaf87,marker:#87ff00
|
||||
--color=prompt:#d7005f,spinner:#af5fff,pointer:#af5fff,header:#87afaf
|
||||
--color=border:#262626,label:#aeaeae,query:#d9d9d9
|
||||
--border="rounded"
|
||||
--border-label="" --preview-window="border-rounded" --prompt="> "
|
||||
--info="inline" --marker=">" --pointer="◆" --separator="─" --scrollbar="│"'
|
||||
|
||||
export PATH="$HOME/neovim/bin:$PATH"
|
||||
# colorscript -r
|
||||
Reference in New Issue
Block a user