From 189d244d36d4ebb2189b698adb21f51cf1c4176a Mon Sep 17 00:00:00 2001 From: Thomas Schmucker Date: Wed, 12 Aug 2026 09:22:12 +0200 Subject: Revert "Normalize line endings" This reverts commit 6e5882a2fd02d30206ab9ca8aa5847b8ea09196c. --- bootstrap/neovim.sh | 342 ++++++++++++++++++++++++++-------------------------- 1 file changed, 171 insertions(+), 171 deletions(-) (limited to 'bootstrap/neovim.sh') diff --git a/bootstrap/neovim.sh b/bootstrap/neovim.sh index 475853a..158de80 100755 --- a/bootstrap/neovim.sh +++ b/bootstrap/neovim.sh @@ -1,171 +1,171 @@ -#!/bin/sh - -set -eu - -OS="$(uname -s)" - -die() { - printf 'Fehler: %s\n' "$*" >&2 - exit 1 -} - -have() { - command -v "$1" >/dev/null 2>&1 -} - -check_prerequisites() { - case "$OS" in - Darwin) - if ! have brew; then - die "Homebrew ist nicht installiert." - fi - ;; - FreeBSD) - if ! have doas; then - die "doas ist nicht installiert." - fi - ;; - *) - die "Nicht unterstütztes Betriebssystem: $OS" - ;; - esac -} - -setup_homebrew_env() { - case "$OS" in - Darwin) - export HOMEBREW_NO_AUTO_UPDATE=1 - export HOMEBREW_NO_INSTALL_CLEANUP=1 - ;; - esac -} - -install_pkg() { - binary="$1" - package="$2" - - if have "$binary"; then - printf "✓ %-32s vorhanden\n" "$binary" - return - fi - - printf "→ Installiere %s\n" "$package" - - case "$OS" in - Darwin) - brew install "$package" - ;; - FreeBSD) - doas pkg install -y "$package" - ;; - esac -} - -install_npm() { - binary="$1" - package="$2" - - if have "$binary"; then - printf "✓ %-32s vorhanden\n" "$binary" - return - fi - - if ! have npm; then - die "npm wurde nicht gefunden." - fi - - printf "→ Installiere npm-Paket %s\n" "$package" - npm install -g "$package" -} - -install_prerequisites() { - install_pkg curl curl - install_pkg git git - install_pkg node node -} - -install_formatters() { - install_pkg gawk gawk - install_pkg jq jq - install_npm prettier prettier - install_pkg ruff ruff - install_pkg shfmt shfmt - install_pkg stylua stylua - install_pkg yamlfmt yamlfmt - - case "$OS" in - Darwin) - install_pkg clang-format clang-format - ;; - FreeBSD) - install_pkg xmllint libxml2 - ;; - esac -} - -install_tools() { - install_pkg rg ripgrep - - case "$OS" in - Darwin) - # Ein Clipboard-Tool ist als `pbcopy` bereits als Systemtool unter Macos - # vorinstalliert. - install_pkg gmake make - install_pkg fd fd - install_pkg tree-sitter tree-sitter - ;; - FreeBSD) - install_pkg xclip xclip - install_pkg gmake gmake - install_pkg fd fd-find - install_pkg tree-sitter tree-sitter-cli - ;; - esac -} - -install_lsp() { - install_npm basedpyright-langserver basedpyright - install_npm bash-language-server bash-language-server - - case "$OS" in - Darwin) - install_pkg shellcheck shellcheck - ;; - FreeBSD) - install_pkg shellcheck hs-ShellCheck - ;; - esac - - install_pkg clangd llvm - install_npm vscode-html-language-server vscode-langservers-extracted - install_npm vscode-json-language-server vscode-langservers-extracted - install_pkg lua-language-server lua-language-server - install_npm prisma-language-server @prisma/language-server - install_npm vtsls @vtsls/language-server -} - -install_analysis() { - # sonar-scanner wird direkt von nvim/lua/config/usercmds.lua (:SonarScan) - # und nvim/scripts/sonarqube.sh (:SonarIssues) genutzt. Nur beruflich - # unter macOS im Einsatz, deshalb kein FreeBSD-Zweig. - case "$OS" in - Darwin) - install_pkg sonar-scanner sonar-scanner - ;; - esac -} - -main() { - check_prerequisites - setup_homebrew_env - - install_prerequisites - install_formatters - install_tools - install_lsp - install_analysis - - printf "\nNeovim-Bootstrap abgeschlossen.\n" -} - -main "$@" +#!/bin/sh + +set -eu + +OS="$(uname -s)" + +die() { + printf 'Fehler: %s\n' "$*" >&2 + exit 1 +} + +have() { + command -v "$1" >/dev/null 2>&1 +} + +check_prerequisites() { + case "$OS" in + Darwin) + if ! have brew; then + die "Homebrew ist nicht installiert." + fi + ;; + FreeBSD) + if ! have doas; then + die "doas ist nicht installiert." + fi + ;; + *) + die "Nicht unterstütztes Betriebssystem: $OS" + ;; + esac +} + +setup_homebrew_env() { + case "$OS" in + Darwin) + export HOMEBREW_NO_AUTO_UPDATE=1 + export HOMEBREW_NO_INSTALL_CLEANUP=1 + ;; + esac +} + +install_pkg() { + binary="$1" + package="$2" + + if have "$binary"; then + printf "✓ %-32s vorhanden\n" "$binary" + return + fi + + printf "→ Installiere %s\n" "$package" + + case "$OS" in + Darwin) + brew install "$package" + ;; + FreeBSD) + doas pkg install -y "$package" + ;; + esac +} + +install_npm() { + binary="$1" + package="$2" + + if have "$binary"; then + printf "✓ %-32s vorhanden\n" "$binary" + return + fi + + if ! have npm; then + die "npm wurde nicht gefunden." + fi + + printf "→ Installiere npm-Paket %s\n" "$package" + npm install -g "$package" +} + +install_prerequisites() { + install_pkg curl curl + install_pkg git git + install_pkg node node +} + +install_formatters() { + install_pkg gawk gawk + install_pkg jq jq + install_npm prettier prettier + install_pkg ruff ruff + install_pkg shfmt shfmt + install_pkg stylua stylua + install_pkg yamlfmt yamlfmt + + case "$OS" in + Darwin) + install_pkg clang-format clang-format + ;; + FreeBSD) + install_pkg xmllint libxml2 + ;; + esac +} + +install_tools() { + install_pkg rg ripgrep + + case "$OS" in + Darwin) + # Ein Clipboard-Tool ist als `pbcopy` bereits als Systemtool unter Macos + # vorinstalliert. + install_pkg gmake make + install_pkg fd fd + install_pkg tree-sitter tree-sitter + ;; + FreeBSD) + install_pkg xclip xclip + install_pkg gmake gmake + install_pkg fd fd-find + install_pkg tree-sitter tree-sitter-cli + ;; + esac +} + +install_lsp() { + install_npm basedpyright-langserver basedpyright + install_npm bash-language-server bash-language-server + + case "$OS" in + Darwin) + install_pkg shellcheck shellcheck + ;; + FreeBSD) + install_pkg shellcheck hs-ShellCheck + ;; + esac + + install_pkg clangd llvm + install_npm vscode-html-language-server vscode-langservers-extracted + install_npm vscode-json-language-server vscode-langservers-extracted + install_pkg lua-language-server lua-language-server + install_npm prisma-language-server @prisma/language-server + install_npm vtsls @vtsls/language-server +} + +install_analysis() { + # sonar-scanner wird direkt von nvim/lua/config/usercmds.lua (:SonarScan) + # und nvim/scripts/sonarqube.sh (:SonarIssues) genutzt. Nur beruflich + # unter macOS im Einsatz, deshalb kein FreeBSD-Zweig. + case "$OS" in + Darwin) + install_pkg sonar-scanner sonar-scanner + ;; + esac +} + +main() { + check_prerequisites + setup_homebrew_env + + install_prerequisites + install_formatters + install_tools + install_lsp + install_analysis + + printf "\nNeovim-Bootstrap abgeschlossen.\n" +} + +main "$@" -- cgit v1.3