From e66ad7c4520267dfd4d6115f98e5f47973916b51 Mon Sep 17 00:00:00 2001 From: Andrew Kaster Date: Mon, 9 Sep 2024 13:21:20 -0600 Subject: [PATCH] Meta: Remove stale zsh shell completions for serenity.sh If someone wants to add these back for ladybird.sh, they'll need largely rewritten anyway. --- Meta/ShellCompletions/zsh/_serenity | 109 ---------------------------- 1 file changed, 109 deletions(-) delete mode 100644 Meta/ShellCompletions/zsh/_serenity diff --git a/Meta/ShellCompletions/zsh/_serenity b/Meta/ShellCompletions/zsh/_serenity deleted file mode 100644 index 662cc23cd4b..00000000000 --- a/Meta/ShellCompletions/zsh/_serenity +++ /dev/null @@ -1,109 +0,0 @@ -#compdef serenity serenity.sh - -get_top_dir() { - git rev-parse --show-toplevel -} - -get_lagom_executables() { - # Make completion work with user-defined source directory. - LADYBIRD_SOURCE_DIR="${LADYBIRD_SOURCE_DIR:-$(get_top_dir)}" - # If the Lagom binary directory is missing, this creates an empty list instead of erroring. - # Known false positives need to be filtered manually; please add new ones. - find "${LADYBIRD_SOURCE_DIR}/Build/lagom" -mindepth 1 -type f -executable -not -name '*.so*' \ - -not \( -name 'a.out' -o -name 'CMake*.bin' \) \ - -printf '%f\n' 2>/dev/null || true -} - -_serenity() { - local args - args=( - '1:command:->commands' - '2:target:->targets' - '3:toolchain_or_executable:->toolchains_or_executables' - '*:: :->args' - ) - - local commands - commands=( - 'help' - 'build' - 'install' - 'image' - 'run' - 'gdb' - 'test' - 'delete' - 'recreate' - 'rebuild' - 'kaddr2line' - 'addr2line' - 'rebuild-toolchain' - 'rebuild-world' - 'copy-src' - ) - - local targets - targets=( - 'x86_64:Target x86_64 or $SERENITY_ARCH (default)' - 'aarch64:Target aarch64' - 'riscv64:Target riscv64' - 'lagom:Target host machine' - ) - - local toolchains - toolchains=( - 'GNU:Toolchain gcc or $SERENITY_TOOLCHAIN (default)' - 'Clang:Toolchain clang' - ) - - local lagom_executables - # Prevent splitting array on spaces with IFS; bash would have `mapfile` for this. - IFS=$'\n'; set -f - lagom_executables=($(get_lagom_executables)) - unset IFS; set +f - - _arguments -C -S "$args[@]" - - local command - command="$line[1]" - - local target - target="$line[2]" - - local toolchain - toolchain="$line[3]" - - case "$state" in - commands) - _describe 'command' commands - ;; - targets) - case "$command" in - install|image|copy-src|kaddr2line|rebuild-toolchain|rebuild-world) - # Lagom target is not supported for these, remove from targets. - targets[$targets[(i)lagom]]=() - ;; - help) - # Help command has no targets. - targets=() - ;; - esac - _describe 'target' targets - ;; - toolchains_or_executables) - if [[ "$command" != help && "$target" != lagom ]]; then - # Toolchain-dependent invocations. - _describe 'toolchain_or_executable' toolchains - elif [[ "$command" = run && "$target" = lagom ]]; then - # With `run lagom` this already is the executable. - _describe 'toolchain_or_executable' lagom_executables - fi - ;; - args) - ;; - esac - - return 0 -} - -_serenity