Change dotfiles structure for shell

This commit is contained in:
2026-03-13 17:57:57 +05:30
parent 4f3f274626
commit 88c308ecc4
13 changed files with 45 additions and 380 deletions

View File

@@ -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"

View File

@@ -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

View File

@@ -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) "

View File

@@ -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
View 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"

View File

@@ -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
View File

View 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'

View File

@@ -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)"

View File

@@ -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