Skip to content

Repository files navigation

nvim-config

My configuration for Neovim 0.12.0 or later. Part of it is derived from LazyVim.

Configuration Installation

Backp your configurations first.

curl -fsSL https://raw.githubusercontent.com/Willie169/nvim-config/refs/heads/main/install.sh | sh

Full Installation

Backp your configurations first.

curl -fsSL https://raw.githubusercontent.com/Willie169/nvim-config/refs/heads/main/full-install.sh | bash

This script will add following line to your "$HOME/.bashrc":

export PATH="${HOME}/.cargo/bin:${HOME}/eclipse.jdt.ls/bin:${HOME}/ktlsp/server/bin:${HOME}/.local/bin:${PATH:-}"

If you don't want it to touch your "$HOME/.bashrc", use

curl -fsSL https://raw.githubusercontent.com/Willie169/nvim-config/refs/heads/main/full-install.sh | bash -s -- -n

Full installation installs

Debian derivatives on x86_64 or AArch64 architecture with normal or root user are supported provided that the following executables are available:

  • apt
  • brew: can be installed with:
    [ "$EUID" -eq 0 ] && touch /.dockerenv
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv bash)"
    
  • cargo: can be installed with:
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
    . "${HOME}"/.cargo/env
    
  • cargo-binstall: can be installed with:
    curl -L --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh | bash
    
  • npm: can be installed with:
    NVM_VERSION=$(curl -fsSL "https://api.github.com/repos/nvm-sh/nvm/releases/latest" | jq -r '.tag_name')
    bash -c "curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/$NVM_VERSION/install.sh | bash"
    export NVM_DIR="$HOME/.nvm"
    [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"                   # This loads nvm
    [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
    nvm install --lts
    echo y | corepack enable npm
    echo y | npm --help || true
    
  • uv: can be installed with:
    curl -LsSf https://astral.sh/uv/install.sh | sh
    

Termux on AArch64 architecture is supported provided that the following executables are available:

  • apt, pkg
  • cargo: can be installed with:
    pkg install rust -y
    
  • npm: can be installed with:
    pkg install nodejs-lts npm -y
    
  • uv: can be installed with:
    pkg install libxml2 libxslt python python-ensurepip-wheels python-pip uv -y
    

Run :checkhealth in Neovim after installation and refer to the documentations of the plugins for other optional external software you may install.

This is also used in my ubuntu-setup-with-vnc-and-gpu and termux-sh repos. You may check them out for my full setup.

Configuration Update

sh ~/.config/nvim/update.sh

Full Update

Full update updates all applications installed in full installation that is not managed by a package manager, including those installed with cargo and cargo-binstall, and updates Neovim configuration.

bash ~/.config/nvim/full-update.sh

Customization

After you have installed the setup, put your customization in ~/.config/nvim/lua/config/my_configs.lua and plugins in ~/.config/nvim/lua/plugins/.

Included Plugins

All of them are installed with lazy.nvim.

Vim

Refer to my vim-config repo for my Vim configuration.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages