-
Notifications
You must be signed in to change notification settings - Fork 1
/
.zshrc
148 lines (113 loc) · 4.37 KB
/
.zshrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# Set ZSH theme
ZSH_THEME="fox" # Current theme
# Uncomment to use Powerlevel10k if desired
# ZSH_THEME="powerlevel10k/powerlevel10k"
# Keychain for SSH (moved before instant prompt)
# keychain id_rsa --agents ssh
# Enable p10k-instant-prompt for faster ZSH load
#if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
# source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
#fi
# Path to Oh My Zsh installation
export ZSH="$HOME/.oh-my-zsh"
# Oh My Zsh update settings
zstyle ':omz:update' mode auto # Update automatically
# Uncomment to change frequency (in days)
# zstyle ':omz:update' frequency 13
# Command correction and completion settings
ENABLE_CORRECTION="true" # Enable auto-correction
COMPLETION_WAITING_DOTS="true" # Show dots during completion
# Plugins
plugins=(
git
zsh-syntax-highlighting
zsh-autosuggestions
)
# Source Oh My Zsh
source $ZSH/oh-my-zsh.sh
# Preferred editor
export EDITOR='nvim'
# Aliases for Neovim configurations
alias chad="NVIM_APPNAME=NvChad nvim"
alias lvim='NVIM_APPNAME=lazyvim nvim'
alias avim='NVIM_APPNAME=astronvim nvim'
alias rvim='NVIM_APPNAME=rvim nvim'
alias pvim='NVIM_APPNAME=pvim nvim'
alias dvim='NVIM_APPNAME=dvim nvim'
# Useful aliases
alias ls="colorls" # Colorized ls
alias rustk='rusty-krab-manager -c ~/.config/rusty-krab-manager/config.toml'
alias skullz="~/.config/skullz/skullz"
alias blocks="~/.config/blocks/blocks"
alias bang="~/.config/crunchbang/crunchbang"
alias pacman="~/.config/pacman/pacman"
alias kaisen="~/.config/kaisen"
alias bonk="~/coding/justcoding/clang/bonk/bonk"
# Automatically change to a directory by typing its name
setopt AUTOCD
# Path adjustments
export PATH="$HOME/.console-ninja/.bin:$HOME/go/bin/mdx:$BUN_INSTALL/bin:/usr/local/opt/ruby/bin:/usr/local/Cellar/llvm/19.1.4/bin:$PATH"
export PATH="$PATH:${HOME}/Library/Python/3.12/lib/python/site-packages"
export PATH="/Users/moshoodbello/.local/bin:$PATH"
# bun completions
[ -s "/Users/moshoodbello/.bun/_bun" ] && source "/Users/moshoodbello/.bun/_bun"
# Starship prompt
eval "$(starship init zsh)"
# TheFuck alias
eval $(thefuck --alias)
# fzf setup
eval "$(fzf --zsh)"
# Pywal function
#function pywal {
# Generate color scheme from current wallpaper
# current_wallpaper="$(osascript -e 'tell app "finder" to get posix path of (get desktop picture as alias)')"
#wal -i "$current_wallpaper" -n
#}
function pywal {
current_wallpaper="$(osascript -e 'tell app "finder" to get posix path of (get desktop picture as alias)')"
wal -i "$current_wallpaper" -n 2>/dev/null
# ghosttywal
}
# Fastfetch (run conditionally outside SSH sessions)
if [[ $TERM_PROGRAM != "ssh" ]]; then
fastfetch
fi
# Node Version Manager (NVM)
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"
# Compilation flags
#export CXXFLAGS="-std=c++17"
# Uncomment and set to enable history timestamp
# HIST_STAMPS="mm/dd/yyyy"
# Uncomment to disable VCS untracked file checks for performance
# DISABLE_UNTRACKED_FILES_DIRTY="true"
# Uncomment to set custom language environment
# export LANG=en_US.UTF-8
# Uncomment and set for manual MANPATH configuration
# export MANPATH="/usr/local/man:$MANPATH"
# Uncomment to disable magic functions if pasting is an issue
# DISABLE_MAGIC_FUNCTIONS="true"
# Uncomment to disable auto-setting terminal title
# DISABLE_AUTO_TITLE="true"
# Uncomment to disable colors in ls
# DISABLE_LS_COLORS="true"
# Uncomment for case-sensitive completion
# CASE_SENSITIVE="true"
# Uncomment for hyphen-insensitive completion
# HYPHEN_INSENSITIVE="true"
# Uncomment to enable instant-prompt configuration
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
export PATH="/usr/local/Cellar/llvm/19.1.5/bin/llvm-config:$PATH"
export PATH="/usr/local/opt/llvm/bin:$PATH"
export LDFLAGS="-L/usr/local/opt/llvm/lib"
export CPPFLAGS="-I/usr/local/opt/llvm/include"
# bun
export BUN_INSTALL="$HOME/.bun"
export PATH="$BUN_INSTALL/bin:$PATH"
export PKG_CONFIG_PATH=$(brew --prefix gtk4)/lib/pkgconfig:$PKG_CONFIG_PATH
export PKG_CONFIG_PATH=$(brew --prefix graphene)/lib/pkgconfig:$PKG_CONFIG_PATH
export PKG_CONFIG_PATH=$(brew --prefix cairo)/lib/pkgconfig:$PKG_CONFIG_PATH
wallpaper () { automator -i "${1}" ~/wallchooser.workflow }
export PATH="$HOME/.local/bin:$PATH"
export PATH="$HOME/shell-color-scripts/colorscripts:$PATH"