My neovim
configuration as a git repository.
NOTE
----
Until this message is removed, this repository is considered unstable.
I am developing my Neovim configuration based on the Kickstart.nvim template, but am still in the early stages of developing it.
WARNING
-------
The Linux install script(s) do not support LXC container environments or ARM CPUs.
I have access to both of these environments and will develop the configuration for those platforms,
but until this message is removed, LXC containers and ARM CPUs are not supported.
If you install neovim
using one of the install/setup scripts, the dependencies for my neovim
configuration will be installed automatically.
Otherwise, requirements for this configuration are:
- Kickstart.nvim dependencies
nodejs
/npm
- The setup scripts install
nodejs-lts
with the Node Version Manager (nvm
) on Linux, andnodejs-lts
viascoop
on Windows.
- The setup scripts install
- Clone repository with
git clone [email protected]:redjax/neovim
(or with HTTPS:git clone https://github.com/redjax/neovim ./neovim
) - Run the setup script for your platform:
- Run
nvim
to ensure everything installed correctly.
The Linux setup script installs & configures neovim
and any dependencies needed to build/configure/run the program. The script also creates a symlink of the config/nvim
profile at ~/.config/nvim
.
Run ./scripts/linux/install.sh
to install neovim
and its dependencies.
The Windows setup script installs the scoop
package manager, then installs all neovim
requirements (including nodejs-lts
) with it. neovim
itself is installed with scoop
using this script.
I chose scoop
over other options like winget
and chocolatey
because every dependency I need is there, the setup is simple, and it keeps everything contained to a path instead of throwing shit all over the OS's $PATH
.
- Run
./scripts/windows/install-neovim-win.ps1
- NOTE: Windows requires Administrator priviliges to create path junctions. If you use the Windows setup script, the junction will call the
Run-AsAdmin
command if the script is not running in an elevated session; you may see a UAC prompt, have to type a password, or you might see a blue Powershell window flash on the screen for a moment.
- NOTE: Windows requires Administrator priviliges to create path junctions. If you use the Windows setup script, the junction will call the
This repository includes Docker images for building Neovim with my custom config in a container environment. The Dockerfiles can be found in the containers/ path. For example, deb.Dockerfile
builds neovim
on a Debian base and installs the configuration for Debian.
The containers set up an environment to run install.sh
, and can be used to test my neovim
setup across multiple platforms.
To build the container, run the build-deb-img.sh
(for Debian) or build-rpm-img.sh
(for Fedora) script.
You can also manually build the command (note: add --progress=plain
to the end of the docker build command to see all build output):
## Enable CONTAINER_ENV and set a build path for Neovim before running container
# This example builds the deb.Dockerfile Debian container environment
CONTAINER_ENV=1 NEOVIM_MAKE_BUILD_DIR="/tmp/build" docker build -f ./containers/deb.Dockerfile -t neovim-buildtest .
After building the Docker container, you can run it with:
docker exec --rm -it nvim-buildtest /bin/bash
Once you're in the container, open neovim with nvim
. The Lazy
installer should kick off and build the configuration. After this first execution, each subsequent run will launch immediately, until the container is rebuilt.
- View available colorschemes by opening neovim and running
:Telescope colorscheme
- Press
<Space>
to open an interactive menu - Run
:Lazy
to open the package manager