67291a9a50
Introduce ff script -h with auto descriptions, shared help.sh, and usage flags across script/*.sh. Co-authored-by: Cursor <cursoragent@cursor.com>
79 lines
2.4 KiB
Bash
Executable File
79 lines
2.4 KiB
Bash
Executable File
#!/bin/bash
|
||
# 从 GitHub Release 安装 Neovim 到 /usr/local/nvim
|
||
|
||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
# shellcheck disable=SC1091
|
||
source "$SCRIPT_DIR/common/help.sh"
|
||
|
||
usage() {
|
||
cat <<'EOF'
|
||
用法: nvim-install
|
||
|
||
按当前平台下载 Neovim v0.12.2 预编译包,安装到 /usr/local/nvim,
|
||
并链接 nvim/vim 到 /usr/local/bin。
|
||
|
||
支持: macOS x86_64/arm64, Linux x86_64/arm64
|
||
|
||
选项:
|
||
-h, --help 显示此帮助
|
||
EOF
|
||
}
|
||
|
||
dotfile_help_requested "${1:-}" && dotfile_show_help
|
||
|
||
set -e
|
||
|
||
os_arch=$(uname -s)-$(uname -m)
|
||
ver=v0.12.2
|
||
|
||
case $os_arch in
|
||
"Darwin-x86_64")
|
||
cd /tmp
|
||
rm -rf nvim-macos-x86_64.tar.gz
|
||
wget "https://github.com/neovim/neovim/releases/download/$ver/nvim-macos-x86_64.tar.gz"
|
||
tar zxf nvim-macos-x86_64.tar.gz
|
||
sudo mv -f /usr/local/nvim /usr/local/nvim-bak 2>/dev/null || true
|
||
sudo mv nvim-macos-x86_64 /usr/local/nvim
|
||
sudo ln -sf /usr/local/nvim/bin/nvim /usr/local/bin/vim
|
||
sudo ln -sf /usr/local/nvim/bin/nvim /usr/local/bin/nvim
|
||
vim -v
|
||
;;
|
||
"Darwin-arm64" | "Darwin-aarch64")
|
||
cd /tmp
|
||
rm -rf nvim-macos-arm64.tar.gz
|
||
wget "https://github.com/neovim/neovim/releases/download/$ver/nvim-macos-arm64.tar.gz"
|
||
tar zxf nvim-macos-arm64.tar.gz
|
||
[ -e /usr/local/nvim ] && sudo mv -f /usr/local/nvim /usr/local/nvim-bak
|
||
sudo mv nvim-macos-arm64 /usr/local/nvim
|
||
sudo ln -sf /usr/local/nvim/bin/nvim /usr/local/bin/vim
|
||
sudo ln -sf /usr/local/nvim/bin/nvim /usr/local/bin/nvim
|
||
vim -v
|
||
;;
|
||
"Linux-x86_64")
|
||
cd /tmp
|
||
rm -rf nvim-linux-x86_64.tar.gz
|
||
wget "https://github.com/neovim/neovim/releases/download/$ver/nvim-linux-x86_64.tar.gz"
|
||
tar zxf nvim-linux-x86_64.tar.gz
|
||
[ -e /usr/local/nvim ] && sudo mv -f /usr/local/nvim /usr/local/nvim-bak
|
||
sudo mv nvim-linux-x86_64 /usr/local/nvim
|
||
sudo ln -sf /usr/local/nvim/bin/nvim /usr/local/bin/vim
|
||
sudo ln -sf /usr/local/nvim/bin/nvim /usr/local/bin/nvim
|
||
vim -v
|
||
;;
|
||
"Linux-arm64" | "Linux-aarch64")
|
||
cd /tmp
|
||
rm -rf nvim-linux-arm64.tar.gz
|
||
wget "https://github.com/neovim/neovim/releases/download/$ver/nvim-linux-arm64.tar.gz"
|
||
tar zxf nvim-linux-arm64.tar.gz
|
||
[ -e /usr/local/nvim ] && sudo mv -f /usr/local/nvim /usr/local/nvim-bak
|
||
sudo mv nvim-linux-arm64 /usr/local/nvim
|
||
sudo ln -sf /usr/local/nvim/bin/nvim /usr/local/bin/vim
|
||
sudo ln -sf /usr/local/nvim/bin/nvim /usr/local/bin/nvim
|
||
vim -v
|
||
;;
|
||
*)
|
||
echo "不支持的平台: $os_arch" >&2
|
||
exit 1
|
||
;;
|
||
esac
|