Improve Workspace Script

This commit is contained in:
Snoweuph 2025-02-27 23:32:18 +01:00
parent 0e26babeb9
commit 6ba14dec6d
Signed by: snoweuph
GPG key ID: BEFC41DA223CEC55

9
.zshrc
View file

@ -81,11 +81,15 @@ ws() {
["$HOME/Workspace/School"]='3, '
["$HOME/Workspace/AdventOfCode"]='3, '
["$HOME/Workspace/Userscripts"]='3,󰯁'
["$HOME/Workspace/Forgejo"]='3,'
["$HOME/Workspace/TowerDefence"]='3,'
["$HOME/Workspace/Engine"]='3,󱎓'
["$HOME/Workspace/Contribute"]='3,󰮮'
["$HOME/Workspace/Contribute/Forgejo"]='4,'
["$HOME/Workspace"]='2, '
)
typeset -A display_to_path
projects=()
find "$HOME/Workspace" -maxdepth 4 -type d \( -name ".git" -o -name "go.mod" -o -name "Cargo.toml" -o -name "compose.yaml" -o -name "package.json" \) -exec dirname {} \; | sort -u | \
while IFS= read -r line; do
display_line="$line"
@ -100,9 +104,10 @@ ws() {
fi
done
display_to_path[$display_line]=$line
projects+=($display_line)
done
selected=$display_to_path[$(printf "%s\n" "${(@k)display_to_path}" | fzf)]
selected=$display_to_path[$(print -l $projects | fzf)]
if [[ -n $selected ]]; then
cd $selected
fi