Meh I'll figure out submodules later

This commit is contained in:
mustard 2025-09-16 01:01:02 +02:00
parent 4ca9d44a90
commit 8cb281f436
352 changed files with 66107 additions and 0 deletions

View file

@ -0,0 +1,86 @@
# An example install script for people using `:h packages`
$NVIM_APPNAME = if ($env:NVIM_APPNAME) { $env:NVIM_APPNAME } else { "nvim" }
$NEOTREE_DATA_HOME = if ($env:XDG_DATA_HOME) {
Join-Path $env:XDG_DATA_HOME $NVIM_APPNAME
} else {
Join-Path $HOME ".local\share\$NVIM_APPNAME"
}
###########
# Options #
###########
# You can modify the /neo-tree*/ names here, depending on how you like to organize your packages.
$NEOTREE_DIR = Join-Path $NEOTREE_DATA_HOME "site\pack\neo-tree\start"
$NEOTREE_DEPS_DIR = Join-Path $NEOTREE_DATA_HOME "site\pack\neo-tree-deps\start"
$NEOTREE_OPTIONAL_DIR = Join-Path $NEOTREE_DATA_HOME "site\pack\neo-tree-optional\start"
# Modify the optional plugins you want below:
$OPTIONAL_PLUGINS = @(
"https://github.com/nvim-tree/nvim-web-devicons.git" # for file icons
# "https://github.com/antosha417/nvim-lsp-file-operations.git" # for LSP-enhanced renames/etc.
# "https://github.com/folke/snacks.nvim.git" # for image previews
# "https://github.com/3rd/image.nvim.git" # for image previews
# "https://github.com/s1n7ax/nvim-window-picker.git" # for _with_window_picker keymaps
)
###########################
# The rest of the script. #
###########################
# Save the current directory
$ORIGINAL_DIR = Get-Location
function Invoke-GitCloneSparse {
git clone --filter=blob:none @args
if ($LASTEXITCODE -ne 0) {
Write-Error "Git clone failed with exit code $LASTEXITCODE for arguments: $($args -join ' ')"
}
}
New-Item -ItemType Directory -Path $NEOTREE_DIR, $NEOTREE_DEPS_DIR -Force | Out-Null
Write-Host "Installing neo-tree..."
Set-Location $NEOTREE_DIR
Invoke-GitCloneSparse -b v3.x "https://github.com/nvim-neo-tree/neo-tree.nvim.git"
Write-Host "Installing core dependencies..."
Set-Location $NEOTREE_DEPS_DIR
Invoke-GitCloneSparse "https://github.com/nvim-lua/plenary.nvim.git"
Invoke-GitCloneSparse "https://github.com/MunifTanjim/nui.nvim.git"
if ($OPTIONAL_PLUGINS.Count -gt 0) {
Write-Host "Installing optional plugins..."
New-Item -ItemType Directory -Path $NEOTREE_OPTIONAL_DIR -Force | Out-Null
Set-Location $NEOTREE_OPTIONAL_DIR
foreach ($repo in $OPTIONAL_PLUGINS) {
Invoke-GitCloneSparse $repo
}
}
Write-Host "Regenerating help tags..."
$PLUGIN_BASE_DIRS = @(
$NEOTREE_DIR
$NEOTREE_DEPS_DIR
$NEOTREE_OPTIONAL_DIR
)
foreach ($base_dir in $PLUGIN_BASE_DIRS) {
# Check if the base directory exists
if (Test-Path $base_dir -PathType Container) {
foreach ($doc_path in Get-ChildItem "$base_dir/*/doc" -Directory) {
Write-Host "Generating helptags for: $doc_path"
& nvim -u NONE --headless -c "helptags $doc_path" -c "q"
if ($LASTEXITCODE -ne 0) {
Write-Warning "Nvim helptags command failed for $doc_path. Exit code: $LASTEXITCODE"
}
}
} else {
Write-Host "Info: Base plugin directory not found, skipping for helptags: $base_dir"
}
}
Write-Host "Installation complete!"
Set-Location $ORIGINAL_DIR

View file

@ -0,0 +1,74 @@
#!/usr/bin/env bash
# An example install script for people using `:h packages`
export NEOTREE_DATA_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/${NVIM_APPNAME:-nvim}"
###########
# Options #
###########
# You can modify the /neo-tree*/ names here, depending on how you like to organize your packages.
export NEOTREE_DIR="${NEOTREE_DATA_HOME}/site/pack/neo-tree/start"
export NEOTREE_DEPS_DIR="${NEOTREE_DATA_HOME}/site/pack/neo-tree-deps/start"
export NEOTREE_OPTIONAL_DIR="${NEOTREE_DATA_HOME}/site/pack/neo-tree-optional/start"
# Modify the optional plugins you want below:
declare -a OPTIONAL_PLUGINS=(
"https://github.com/nvim-tree/nvim-web-devicons.git" # for file icons
# "https://github.com/antosha417/nvim-lsp-file-operations.git" # for LSP-enhanced renames/etc.
# "https://github.com/folke/snacks.nvim.git" # for image previews
# "https://github.com/3rd/image.nvim.git" # for image previews
# "https://github.com/s1n7ax/nvim-window-picker.git" # for _with_window_picker keymaps
)
###########################
# The rest of the script. #
###########################
ORIGINAL_DIR="$(pwd)"
clone_sparse() {
git clone --filter=blob:none "$@"
}
mkdir -p "${NEOTREE_DIR}" "${NEOTREE_DEPS_DIR}"
echo "Installing neo-tree..."
cd "${NEOTREE_DIR}"
clone_sparse -b v3.x https://github.com/nvim-neo-tree/neo-tree.nvim.git
echo "Installing core dependencies..."
cd "${NEOTREE_DEPS_DIR}"
clone_sparse https://github.com/nvim-lua/plenary.nvim.git
clone_sparse https://github.com/MunifTanjim/nui.nvim.git
if [ ${#OPTIONAL_PLUGINS[@]} -gt 0 ]; then
echo "Installing optional plugins..."
mkdir -p "${NEOTREE_OPTIONAL_DIR}"
cd "${NEOTREE_OPTIONAL_DIR}"
for repo in "${OPTIONAL_PLUGINS[@]}"; do
clone_sparse "$repo"
done
fi
echo "Regenerating help tags..."
declare -a PLUGIN_BASE_DIRS=(
"${NEOTREE_DIR}"
"${NEOTREE_DEPS_DIR}"
"${NEOTREE_OPTIONAL_DIR}"
)
# Loop through each base directory and find all 'doc' subdirectories using glob
shopt -s nullglob # Enable nullglob for safe globbing (empty array if no matches)
for base_dir in "${PLUGIN_BASE_DIRS[@]}"; do
# Check if the base directory exists
if [ -d "$base_dir" ]; then
for doc_path in "${base_dir}"/*/doc; do
nvim -u NONE --headless -c "helptags ${doc_path}" -c "q"
done
fi
done
shopt -u nullglob # Disable nullglob
echo "Installation complete!"
cd "${ORIGINAL_DIR}"

File diff suppressed because it is too large Load diff