Skip to content

Commit ea855bd

Browse files
kRHYME7Copilotzeerayne
authored
Breaking (ZSH): move ZDOTDIR to ~/.config/zsh (#858)
* Breaking (ZSH): move ZDOTDIR to ~/.config/zsh please manually move the following ~/.zshrc --> ~/.config/zsh/.zshrc (or delete the old one) ~/.p10k --> ~/.config/zsh/.p10k.zsh (only if you use it ) ~/.user.zsh --> ~/.config/zsh/user.zsh ~/.zsh_history -- ~/.config/zsh/.zsh_history * Update Configs/.config/zsh/modules/hyde/prompt.zsh Co-authored-by: Copilot <[email protected]> * Update Configs/.config/zsh/modules/hyde/term.zsh Co-authored-by: Copilot <[email protected]> * yey * cleanup * follow fish's convention * follow fish's convention * cleanup * feat: use `bat` as replace for `cat` using new zsh architecture (#860) * feat: use `bat` as replace for `cat` using new zsh architecture * fix: move `bat` package from core to extra * fix: move `eza` to pkg_extra * add them as uncommented in pkg extra --------- Co-authored-by: Khing <[email protected]> * Fix eza * refactor: #858 (comment) Defaulted to 1 hour per security checks assuming users updates frequently * fix: add `bat.zsh` to sync (#864) * FiX: #858 (review) Nice catch @mahaveergurjar * Update Scripts/pkg_extra.lst Co-authored-by: Copilot <[email protected]> * fix: #858 (comment) * prevent bat to output colors when piped * Use arrays instead of dqoutes * reflect logs to the PSV --------- Co-authored-by: Copilot <[email protected]> Co-authored-by: Ilya Bogdanov <[email protected]>
1 parent 97f9c20 commit ea855bd

File tree

22 files changed

+573
-435
lines changed

22 files changed

+573
-435
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,5 @@ Scripts/pkg_user.lst
66
*__pycache__*
77
Scripts/pkg_black.lst
88
Scripts/pkg_user.lst
9+
.zsh_history*
10+
.zcompdump*
File renamed without changes.

Configs/.config/zsh/.zshenv

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#!/usr/bin/env zsh
2+
3+
#! ██████╗░░█████╗░  ███╗░░██╗░█████╗░████████╗  ███████╗██████╗░██╗████████╗
4+
#! ██╔══██╗██╔══██╗  ████╗░██║██╔══██╗╚══██╔══╝  ██╔════╝██╔══██╗██║╚══██╔══╝
5+
#! ██║░░██║██║░░██║  ██╔██╗██║██║░░██║░░░██║░░░  █████╗░░██║░░██║██║░░░██║░░░
6+
#! ██║░░██║██║░░██║  ██║╚████║██║░░██║░░░██║░░░  ██╔══╝░░██║░░██║██║░░░██║░░░
7+
#! ██████╔╝╚█████╔╝  ██║░╚███║╚█████╔╝░░░██║░░░  ███████╗██████╔╝██║░░░██║░░░
8+
#! ╚═════╝░░╚════╝░  ╚═╝░░╚══╝░╚════╝░░░░╚═╝░░░  ╚══════╝╚═════╝░╚═╝░░░╚═╝░░░
9+
10+
# Load all custom module files // Directories are ignored
11+
# As Directories are ignored, we can store a bunch of boilerplate script in a ``./conf.d/custom-directory``
12+
# then we can make an entry point script: `./conf.d/custom-directory.zsh`managing all the files in that directory
13+
14+
for file in "${ZDOTDIR:-$HOME/.config/zsh}/conf.d/"*.zsh; do
15+
[ -r "$file" ] && source "$file"
16+
done
Lines changed: 14 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,13 @@
1-
#  Startup 
2-
# Commands to execute on startup (before the prompt is shown)
3-
# Check if the interactive shell option is set
4-
if [[ $- == *i* ]]; then
5-
# This is a good place to load graphic/ascii art, display system information, etc.
6-
if command -v pokego >/dev/null; then
7-
pokego --no-title -r 1,3,6
8-
elif command -v pokemon-colorscripts >/dev/null; then
9-
pokemon-colorscripts --no-title -r 1,3,6
10-
elif command -v fastfetch >/dev/null; then
11-
if do_render "image"; then
12-
fastfetch --logo-type kitty
13-
fi
14-
fi
15-
fi
16-
# fastfetch.sh
1+
# Add user configurations here
2+
# For HyDE to not touch your beloved configurations,
3+
# we added a config file for you to customize HyDE before loading zshrc
4+
# Edit $ZDOTDIR/.user.zsh to customize HyDE before loading zshrc
5+
6+
#  Plugins 
7+
# oh-my-zsh plugins are loaded in $ZDOTDIR/.user.zsh file, see the file for more information
178

189
#  Aliases 
19-
# Override aliases here or in '~/.zshrc' (already set in .zshenv)
10+
# Override aliases here in '$ZDOTDIR/.zshrc' (already set in .zshenv)
2011

2112
# # Helpful aliases
2213
# alias c='clear' # clear terminal
@@ -44,12 +35,9 @@ fi
4435
# # Always mkdir a path (this doesn't inhibit functionality to make a single dir)
4536
# alias mkdir='mkdir -p'
4637

47-
#  Plugins 
48-
# manually add your oh-my-zsh plugins here
49-
plugins=(
50-
"sudo"
51-
# "git" # (default)
52-
# "zsh-autosuggestions" # (default)
53-
# "zsh-syntax-highlighting" # (default)
54-
# "zsh-completions" # (default)
55-
)
38+
#  This is your file 
39+
# Add your configurations here
40+
# export EDITOR=nvim
41+
export EDITOR=code
42+
43+
# unset -f command_not_found_handler # Uncomment to prevent searching for commands not found in package manager
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Ctrl-R fzf completio
2+
if command -v fzf &>/dev/null; then
3+
eval "$(fzf --zsh)"
4+
fi
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# hydectl tab completion
2+
if command -v hydectl &>/dev/null; then
3+
compdef _hydectl hydectl
4+
eval "$(hydectl completion zsh)"
5+
fi
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/usr/bin/env zsh
2+
3+
#! ██████╗░░█████╗░  ███╗░░██╗░█████╗░████████╗  ███████╗██████╗░██╗████████╗
4+
#! ██╔══██╗██╔══██╗  ████╗░██║██╔══██╗╚══██╔══╝  ██╔════╝██╔══██╗██║╚══██╔══╝
5+
#! ██║░░██║██║░░██║  ██╔██╗██║██║░░██║░░░██║░░░  █████╗░░██║░░██║██║░░░██║░░░
6+
#! ██║░░██║██║░░██║  ██║╚████║██║░░██║░░░██║░░░  ██╔══╝░░██║░░██║██║░░░██║░░░
7+
#! ██████╔╝╚█████╔╝  ██║░╚███║╚█████╔╝░░░██║░░░  ███████╗██████╔╝██║░░░██║░░░
8+
#! ╚═════╝░░╚════╝░  ╚═╝░░╚══╝░╚════╝░░░░╚═╝░░░  ╚══════╝╚═════╝░╚═╝░░░╚═╝░░░
9+
10+
11+
# Sources vital global environment variables and configurations // Users are encouraged to use ./user.zsh for customization
12+
# shellcheck disable=SC1091
13+
if ! . "$ZDOTDIR/conf.d/hyde/env.zsh"; then
14+
echo "Error: Could not source $ZDOTDIR/conf.d/hyde/env.zsh"
15+
return 1
16+
fi
17+
18+
if [ -t 1 ] && [ -f "$ZDOTDIR/conf.d/hyde/terminal.zsh" ]; then
19+
. "$ZDOTDIR/conf.d/hyde/terminal.zsh" || echo "Error: Could not source $ZDOTDIR/conf.d/hyde/terminal.zsh"
20+
fi
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
#!/usr/bin/env zsh
2+
3+
#! ██████╗░░█████╗░  ███╗░░██╗░█████╗░████████╗  ███████╗██████╗░██╗████████╗
4+
#! ██╔══██╗██╔══██╗  ████╗░██║██╔══██╗╚══██╔══╝  ██╔════╝██╔══██╗██║╚══██╔══╝
5+
#! ██║░░██║██║░░██║  ██╔██╗██║██║░░██║░░░██║░░░  █████╗░░██║░░██║██║░░░██║░░░
6+
#! ██║░░██║██║░░██║  ██║╚████║██║░░██║░░░██║░░░  ██╔══╝░░██║░░██║██║░░░██║░░░
7+
#! ██████╔╝╚█████╔╝  ██║░╚███║╚█████╔╝░░░██║░░░  ███████╗██████╔╝██║░░░██║░░░
8+
#! ╚═════╝░░╚════╝░  ╚═╝░░╚══╝░╚════╝░░░░╚═╝░░░  ╚══════╝╚═════╝░╚═╝░░░╚═╝░░░
9+
10+
# Hyde's Shell Environment Initialization Script
11+
# If users used UWSM, uwsm will override any variables set anywhere in you shell configurations
12+
13+
# Basic PATH prepending (user local bin)
14+
PATH="$HOME/.local/bin:$PATH"
15+
16+
# XDG Base Directory Specification variables with defaults
17+
XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}"
18+
XDG_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}"
19+
XDG_DATA_DIRS="${XDG_DATA_DIRS:-$XDG_DATA_HOME:/usr/local/share:/usr/share}"
20+
XDG_STATE_HOME="${XDG_STATE_HOME:-$HOME/.local/state}"
21+
XDG_CACHE_HOME="${XDG_CACHE_HOME:-$HOME/.cache}"
22+
23+
# XDG User Directories (fallback to xdg-user-dir command if available)
24+
if command -v xdg-user-dir >/dev/null 2>&1; then
25+
XDG_DESKTOP_DIR="${XDG_DESKTOP_DIR:-$(xdg-user-dir DESKTOP)}"
26+
XDG_DOWNLOAD_DIR="${XDG_DOWNLOAD_DIR:-$(xdg-user-dir DOWNLOAD)}"
27+
XDG_TEMPLATES_DIR="${XDG_TEMPLATES_DIR:-$(xdg-user-dir TEMPLATES)}"
28+
XDG_PUBLICSHARE_DIR="${XDG_PUBLICSHARE_DIR:-$(xdg-user-dir PUBLICSHARE)}"
29+
XDG_DOCUMENTS_DIR="${XDG_DOCUMENTS_DIR:-$(xdg-user-dir DOCUMENTS)}"
30+
XDG_MUSIC_DIR="${XDG_MUSIC_DIR:-$(xdg-user-dir MUSIC)}"
31+
XDG_PICTURES_DIR="${XDG_PICTURES_DIR:-$(xdg-user-dir PICTURES)}"
32+
XDG_VIDEOS_DIR="${XDG_VIDEOS_DIR:-$(xdg-user-dir VIDEOS)}"
33+
fi
34+
35+
# Less history file location
36+
LESSHISTFILE="${LESSHISTFILE:-/tmp/less-hist}"
37+
38+
# Application config files
39+
PARALLEL_HOME="$XDG_CONFIG_HOME/parallel"
40+
SCREENRC="$XDG_CONFIG_HOME/screen/screenrc"
41+
42+
# Export all variables
43+
export PATH \
44+
XDG_CONFIG_HOME XDG_DATA_HOME XDG_DATA_DIRS XDG_STATE_HOME XDG_CACHE_HOME \
45+
XDG_DESKTOP_DIR XDG_DOWNLOAD_DIR XDG_TEMPLATES_DIR XDG_PUBLICSHARE_DIR \
46+
XDG_DOCUMENTS_DIR XDG_MUSIC_DIR XDG_PICTURES_DIR XDG_VIDEOS_DIR \
47+
LESSHISTFILE PARALLEL_HOME SCREENRC
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
#!/usr/bin/env zsh
2+
3+
#! ██████╗░░█████╗░  ███╗░░██╗░█████╗░████████╗  ███████╗██████╗░██╗████████╗
4+
#! ██╔══██╗██╔══██╗  ████╗░██║██╔══██╗╚══██╔══╝  ██╔════╝██╔══██╗██║╚══██╔══╝
5+
#! ██║░░██║██║░░██║  ██╔██╗██║██║░░██║░░░██║░░░  █████╗░░██║░░██║██║░░░██║░░░
6+
#! ██║░░██║██║░░██║  ██║╚████║██║░░██║░░░██║░░░  ██╔══╝░░██║░░██║██║░░░██║░░░
7+
#! ██████╔╝╚█████╔╝  ██║░╚███║╚█████╔╝░░░██║░░░  ███████╗██████╔╝██║░░░██║░░░
8+
#! ╚═════╝░░╚════╝░  ╚═╝░░╚══╝░╚════╝░░░░╚═╝░░░  ╚══════╝╚═════╝░╚═╝░░░╚═╝░░░
9+
10+
# Let HyDE immediately load prompts
11+
# For now supported prompts are Starship and Powerlevel10k (p10k)
12+
13+
# Exit early if HYDE_ZSH_PROMPT is not set to 1
14+
if [[ "${HYDE_ZSH_PROMPT}" != "1" ]]; then
15+
return
16+
fi
17+
18+
if command -v starship &>/dev/null; then
19+
# ===== START Initialize Starship prompt =====
20+
eval "$(starship init zsh)"
21+
export STARSHIP_CACHE=$XDG_CACHE_HOME/starship
22+
export STARSHIP_CONFIG=$XDG_CONFIG_HOME/starship/starship.toml
23+
# ===== END Initialize Starship prompt =====
24+
elif [ -r $HOME/.p10k.zsh ] || [ -r $ZDOTDIR/.p10k.zsh ]; then
25+
# ===== START Initialize Powerlevel10k theme =====
26+
POWERLEVEL10K_TRANSIENT_PROMPT=same-dir
27+
P10k_THEME=${P10k_THEME:-/usr/share/zsh-theme-powerlevel10k/powerlevel10k.zsh-theme}
28+
[[ -r $P10k_THEME ]] && source $P10k_THEME
29+
# To customize prompt, run `p10k configure` or edit $HOME/.p10k.zsh
30+
if [[ -f $HOME/.p10k.zsh ]]; then
31+
source $HOME/.p10k.zsh
32+
elif [[ -f $ZDOTDIR/.p10k.zsh ]]; then
33+
source $ZDOTDIR/.p10k.zsh
34+
fi
35+
# ===== END Initialize Powerlevel10k theme =====
36+
fi
Lines changed: 197 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,197 @@
1+
#!/usr/bin/env zsh
2+
3+
#! ██████╗░░█████╗░  ███╗░░██╗░█████╗░████████╗  ███████╗██████╗░██╗████████╗
4+
#! ██╔══██╗██╔══██╗  ████╗░██║██╔══██╗╚══██╔══╝  ██╔════╝██╔══██╗██║╚══██╔══╝
5+
#! ██║░░██║██║░░██║  ██╔██╗██║██║░░██║░░░██║░░░  █████╗░░██║░░██║██║░░░██║░░░
6+
#! ██║░░██║██║░░██║  ██║╚████║██║░░██║░░░██║░░░  ██╔══╝░░██║░░██║██║░░░██║░░░
7+
#! ██████╔╝╚█████╔╝  ██║░╚███║╚█████╔╝░░░██║░░░  ███████╗██████╔╝██║░░░██║░░░
8+
#! ╚═════╝░░╚════╝░  ╚═╝░░╚══╝░╚════╝░░░░╚═╝░░░  ╚══════╝╚═════╝░╚═╝░░░╚═╝░░░
9+
10+
# HyDE's ZSH env configuration
11+
# This file is sourced by ZSH on startup
12+
# And ensures that we have an obstruction-free .zshrc file
13+
# This also ensures that the proper HyDE $ENVs are loaded
14+
15+
function _load_zsh_plugins {
16+
unset -f _load_zsh_plugins
17+
# Oh-my-zsh installation path
18+
zsh_paths=(
19+
"$HOME/.oh-my-zsh"
20+
"/usr/local/share/oh-my-zsh"
21+
"/usr/share/oh-my-zsh"
22+
)
23+
for zsh_path in "${zsh_paths[@]}"; do [[ -d $zsh_path ]] && export ZSH=$zsh_path && break; done
24+
# Load Plugins
25+
hyde_plugins=(git zsh-256color zsh-autosuggestions zsh-syntax-highlighting)
26+
plugins+=("${plugins[@]}" "${hyde_plugins[@]}")
27+
# Deduplicate plugins
28+
plugins=("${plugins[@]}")
29+
plugins=($(printf "%s\n" "${plugins[@]}" | sort -u))
30+
# Defer oh-my-zsh loading until after prompt appears
31+
typeset -g DEFER_OMZ_LOAD=1
32+
}
33+
34+
function _load_post_init() {
35+
#! Never load time consuming functions here
36+
37+
# Add your completions directory to fpath
38+
fpath=($ZDOTDIR/completions "${fpath[@]}")
39+
40+
# Initialize completions with optimized performance
41+
autoload -Uz compinit
42+
43+
HYDE_ZSH_COMPINIT_CHECK=${HYDE_ZSH_COMPINIT_CHECK:-1}
44+
if [[ -n ${ZDOTDIR}/.zcompdump(#qN.mh+${HYDE_ZSH_COMPINIT_CHECK}) ]]; then
45+
compinit
46+
else
47+
compinit -C
48+
fi
49+
50+
_comp_options+=(globdots) # tab complete hidden files
51+
52+
for file in "${ZDOTDIR:-$HOME/.config/zsh}/completions/"*.zsh; do
53+
[ -r "$file" ] && source "$file"
54+
done
55+
56+
# Load all custom function files // Directories are ignored
57+
for file in "${ZDOTDIR:-$HOME/.config/zsh}/functions/"*.zsh; do
58+
[ -r "$file" ] && source "$file"
59+
done
60+
61+
# zsh-autosuggestions won't work on first prompt when deferred
62+
if typeset -f _zsh_autosuggest_start >/dev/null; then
63+
_zsh_autosuggest_start
64+
fi
65+
66+
}
67+
68+
function _load_omz_on_init() {
69+
# Load oh-my-zsh when line editor initializes // before user input
70+
if [[ -n $DEFER_OMZ_LOAD ]]; then
71+
unset DEFER_OMZ_LOAD
72+
[[ -r $ZSH/oh-my-zsh.sh ]] && source $ZSH/oh-my-zsh.sh
73+
ZDOTDIR="${__ZDOTDIR:-${XDG_CONFIG_HOME:-$HOME/.config}/zsh}"
74+
_load_post_init
75+
fi
76+
}
77+
78+
function do_render {
79+
# Check if the terminal supports images
80+
local type="${1:-image}"
81+
# TODO: update this list if needed
82+
TERMINAL_IMAGE_SUPPORT=(kitty konsole ghostty WezTerm)
83+
local terminal_no_art=(vscode code codium)
84+
TERMINAL_NO_ART="${TERMINAL_NO_ART:-${terminal_no_art[@]}}"
85+
CURRENT_TERMINAL="${TERM_PROGRAM:-$(ps -o comm= -p $(ps -o ppid= -p $$))}"
86+
87+
case "${type}" in
88+
image)
89+
if [[ " ${TERMINAL_IMAGE_SUPPORT[@]} " =~ " ${CURRENT_TERMINAL} " ]]; then
90+
return 0
91+
else
92+
return 1
93+
fi
94+
;;
95+
art)
96+
if [[ " ${TERMINAL_NO_ART[@]} " =~ " ${CURRENT_TERMINAL} " ]]; then
97+
return 1
98+
else
99+
return 0
100+
fi
101+
;;
102+
*)
103+
return 1
104+
;;
105+
esac
106+
}
107+
108+
_load_deferred_plugin_system_by_hyde() {
109+
110+
# Exit early if HYDE_ZSH_DEFER is not set to 1
111+
if [[ "${HYDE_ZSH_DEFER}" != "1" ]]; then
112+
unset -f _load_deferred_plugin_system_by_hyde
113+
return
114+
fi
115+
116+
# Load plugins
117+
_load_zsh_plugins
118+
119+
# Load zsh hooks module once
120+
121+
#? Methods to load oh-my-zsh lazily
122+
__ZDOTDIR="${ZDOTDIR:-${XDG_CONFIG_HOME:-$HOME/.config}/zsh}"
123+
# Temporarily set ZDOTDIR to /tmp to isolate deferred plugin loading from the user's primary configuration directory.
124+
ZDOTDIR=/tmp
125+
zle -N zle-line-init _load_omz_on_init # Loads when the line editor initializes // The best option
126+
127+
# Below this line are the commands that are executed after the prompt appears
128+
129+
autoload -Uz add-zsh-hook
130+
# add-zsh-hook zshaddhistory load_omz_deferred # loads after the first command is added to history
131+
# add-zsh-hook precmd load_omz_deferred # Loads when shell is ready to accept commands
132+
# add-zsh-hook preexec load_omz_deferred # Loads before the first command executes
133+
134+
# TODO: add handlers in pm.sh
135+
# for these aliases please manually add the following lines to your .zshrc file.(Using yay as the aur helper)
136+
# pc='yay -Sc' # remove all cached packages
137+
# po='yay -Qtdq | ${PM_COMMAND[@]} -Rns -' # remove orphaned packages
138+
139+
# Some binds won't work on first prompt when deferred
140+
bindkey '\e[H' beginning-of-line
141+
bindkey '\e[F' end-of-line
142+
143+
}
144+
145+
#? Override this environment variable in ~/.zshrc
146+
# cleaning up home folder
147+
# ZSH Plugin Configuration
148+
149+
HYDE_ZSH_DEFER="1" #Unset this variable in $ZDOTDIR/user.zsh to disable HyDE's deferred Zsh loading.
150+
HYDE_ZSH_PROMPT="1" #Unset this variable in $ZDOTDIR/user.zsh to disable HyDE's prompt customization.
151+
152+
ZSH_AUTOSUGGEST_STRATEGY=(history completion)
153+
154+
# # History configuration
155+
HISTFILE=${HISTFILE:-$ZDOTDIR/.zsh_history}
156+
if [[ -f $HOME/.zsh_history ]] && [[ ! -f $HISTFILE ]]; then
157+
echo "Please manually move $HOME/.zsh_history to $HISTFILE"
158+
echo "Or move it somewhere else to avoid conflicts"
159+
fi
160+
161+
export HISTFILE ZSH_AUTOSUGGEST_STRATEGY
162+
163+
# HyDE Package Manager
164+
PM_COMMAND=(hyde-shell pm)
165+
166+
# Optionally load user configuration // useful for customizing the shell without modifying the main file
167+
if [[ -f $HOME/.hyde.zshrc ]]; then
168+
source $HOME/.hyde.zshrc # for backward compatibility
169+
elif [[ -f $HOME/.user.zsh ]]; then
170+
source $HOME/.user.zsh # renamed to .user.zsh for intuitiveness that it is a user config
171+
elif [[ -f $ZDOTDIR/user.zsh ]]; then
172+
source $ZDOTDIR/user.zsh
173+
fi
174+
175+
# Try to load prompts immediately
176+
[[ -f $ZDOTDIR/conf.d/hyde/prompt.zsh ]] && source $ZDOTDIR/conf.d/hyde/prompt.zsh
177+
178+
_load_deferred_plugin_system_by_hyde
179+
180+
alias c='clear' \
181+
in='${PM_COMMAND[@]} install' \
182+
un='${PM_COMMAND[@]} remove' \
183+
up='${PM_COMMAND[@]} upgrade' \
184+
pl='${PM_COMMAND[@]} search installed' \
185+
pa='${PM_COMMAND[@]} search all' \
186+
vc='code' \
187+
fastfetch='fastfetch --logo-type kitty' \
188+
..='cd ..' \
189+
...='cd ../..' \
190+
.3='cd ../../..' \
191+
.4='cd ../../../..' \
192+
.5='cd ../../../../..' \
193+
mkdir='mkdir -p'
194+
195+
# revert to proper ZDOTDIR
196+
export ZDOTDIR="${__ZDOTDIR:-${XDG_CONFIG_HOME:-$HOME/.config}/zsh}"
197+
unset __ZDOTDIR

0 commit comments

Comments
 (0)