Files
.dotfile/fish/functions/execute-script.fish
T
laily 67291a9a50 feat: add script catalog and -h help for all dotfile scripts
Introduce ff script -h with auto descriptions, shared help.sh, and usage flags across script/*.sh.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-25 15:09:35 +08:00

43 lines
1.1 KiB
Fish

# Execute script from script directory
function execute-script
if not functions -q script-show-catalog
source ~/.dotfile/fish/functions/script-catalog.fish
end
set -l dotfile_dir ~/.dotfile
set -l script_dir $dotfile_dir/script
set -l script_name $argv[1]
# ff script -h / --help / help
if test -z "$script_name"; or contains -- $script_name -h --help help
if test -z "$script_name"; or test (count $argv) -eq 1
script-show-catalog
return 0
end
end
if test -z "$script_name"
script-show-catalog
return 1
end
set -l script_path (script-resolve-path $script_name 2>/dev/null; or echo "")
if test -n "$script_path" -a -f "$script_path"
echo "Running: $script_path"
if test -x $script_path
$script_path $argv[2..-1]
else if string match -q "*.py" $script_path
python3 $script_path $argv[2..-1]
else
bash $script_path $argv[2..-1]
end
return $status
end
echo "Error: Script not found: $script_name"
echo ""
script-show-catalog
return 1
end