diff --git a/images/blog/outsourcing-my-memory-to-gum/donpm.gif b/images/blog/outsourcing-my-memory-to-gum/donpm.gif new file mode 100644 index 0000000..63ccd01 Binary files /dev/null and b/images/blog/outsourcing-my-memory-to-gum/donpm.gif differ diff --git a/images/blog/outsourcing-my-memory-to-gum/donpm.sh b/images/blog/outsourcing-my-memory-to-gum/donpm.sh new file mode 100644 index 0000000..2bc1aed --- /dev/null +++ b/images/blog/outsourcing-my-memory-to-gum/donpm.sh @@ -0,0 +1,17 @@ +function donpm() { + if [ ! -f "package.json" ]; then + gum log --level error "package.json not found in the current directory" + return 1 + fi + + OPTIONS=$(jq -r '.scripts|to_entries[]|((.key))' package.json) + OPTIONS+="\nšŸ›‘ Cancel" + SELECTION=$(echo $OPTIONS | gum choose --header "Choose a script to run") + + if [[ "$SELECTION" == "šŸ›‘ Cancel" ]]; then + gum log --level info "Execution was cancelled" + return 1 + else + npm run $SELECTION + fi +} diff --git a/images/blog/outsourcing-my-memory-to-gum/donpm.tape b/images/blog/outsourcing-my-memory-to-gum/donpm.tape new file mode 100644 index 0000000..3b3294f --- /dev/null +++ b/images/blog/outsourcing-my-memory-to-gum/donpm.tape @@ -0,0 +1,16 @@ +# Run `vhs` from project root to get the correct output +Output images/blog/outsourcing-my-memory-to-gum/donpm.gif + +Set Shell "zsh" +Set FontSize 32 +Set Width 1100 +Set Height 600 + +Hide + Type "source images/blog/outsourcing-my-memory-to-gum/donpm.sh && clear" Enter +Show + +Type "donpm" Sleep 500ms Enter +Sleep 1.5s +Down Sleep 150ms Down Sleep 300ms Enter +Sleep 3s diff --git a/images/blog/outsourcing-my-memory-to-gum/script-discovery.tape b/images/blog/outsourcing-my-memory-to-gum/script-discovery.tape index e899318..f426a89 100644 --- a/images/blog/outsourcing-my-memory-to-gum/script-discovery.tape +++ b/images/blog/outsourcing-my-memory-to-gum/script-discovery.tape @@ -1,7 +1,7 @@ # Run `vhs` from project root to get the correct output -Output assets/images/blog/outsourcing-my-memory-to-gum/script-discovery.gif +Output images/blog/outsourcing-my-memory-to-gum/script-discovery.gif -Set Shell "bash" +Set Shell "zsh" Set FontSize 32 Set Width 1100 Set Height 900