ai-mindset/init.vim
A Neovim configuration for Python, Zig, and Deno development
A comprehensive Neovim configuration that transforms your editor into a full-featured IDE with intelligent code assistance, seamless Git integration, and powerful language tools for Data Science, AI Engineering, and Backend development.
<leader> = <space><localleader> = ,Kgdgr<leader>ca<leader>==<leader>j<leader>f<leader>k[c / ]c<localleader>c<localleader>l<localleader>v (in visual mode)<leader>gd<leader>gm<leader>hs<leader>hp<leader>go/gt/gb (ours/theirs/both)<leader>cp<leader>cpt<leader>cpf<leader>cpe<leader>os<leader>ox<C-x><C-o> (insert mode)mv ~/.config/nvim ~/.config/nvim.backup # Backup your current setup
# Cleanup old configuration artefacts
rm -r ~/.local/share/nvim
rm -r ~/.local/state/nvim
rm -r ~/.cache/nvim
curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
git clone https://github.com/ai-mindset/init.vim ~/.config/nvim
nvim --headless +PlugInstall +qall # Only required on first start, to install plugins
For local LLM capabilities, you need to install and set up Ollama:
# Install Ollama
curl -fsSL https://ollama.com/install.sh | sh
# Start the Ollama server
ollama serve
# In another terminal, pull the mistral model
ollama pull mistral
You can also start and stop the Ollama server directly from Neovim using:
<leader>os - Start Ollama Server<leader>ox - Stop Ollama ServerFor text-to-speech capabilities, install Piper using uv (a faster, more reliable Python package installer):
# Install uv if you don't have it already
curl -fsSL https://astral.sh/uv/install.sh | bash
# Install Piper using uv
uv pip install piper-tts
# Download a voice model
mkdir -p ~/.local/share/piper-voices/
# You can choose any voice model from https://huggingface.co/rhasspy/piper-voices/
# For example:
wget -P ~/.local/share/piper-voices/ https://huggingface.co/rhasspy/piper-voices/resolve/main/en/en_GB/alba/medium/en_GB-alba-medium.onnx
Use text-to-speech in Neovim with these commands:
<space>tw - Speak Word<space>tc - Speak Current Line<space>tp - Speak Current Paragraph<space>tf - Speak Current File<space>tv - Speak Visual SelectionFor full Julia language support, set up your environment with these steps:
# Install juliaup (cross-platform Julia version manager)
curl -fsSL https://install.julialang.org | sh
# Add Julia and set as default (v1.12 is the latest stable release at the time of writing)
juliaup add 1.12 # Replace with your version
juliaup default 1.12 # Replace with your version
# Install required packages in the global environment
julia --project=~/.julia/environments/v1.12 -e '
using Pkg;
Pkg.add(["LanguageServer", "SymbolServer", "StaticLint", "JuliaFormatter"]);
Pkg.precompile()
'
Note: v1.12 is used in this example as it's the latest stable version at the time of writing. Replace with whichever version you have installed.
ensure_installed in the Mason setup (Python, Zig, Deno, JSON, YAML, etc.)colorscheme catppuccin to your preferred themeformatters_by_ft in the conform.nvim setupFor Exuberant Ctags (default in many distros), a .ctags file is provided in this repo with support for:
Save the file in $HOME/.ctags.
Press <F8> to toggle Tagbar for code navigation in supported languages.
Both Zig and TypeScript support requires the language patterns in .ctags. The configuration is already included in this repo.