Everything you need from Git + SSH to fonts, plugins, and language servers—in one place.
- Prerequisites
- Git & SSH Configuration
- Install Neovim
- Clone Your Neovim Config
- Install Nerd Font & Set Terminal Font
- Required & Recommended CLI Tools
- Launch Neovim & Install Plugins
- LSP / Formatter Setup with Mason
- Quality‑of‑Life Tweaks
- Troubleshooting / FAQ
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"-
Install Git
brew install git
-
Set global identity
git config --global user.name "Your Name" git config --global user.email "you@example.com"
-
Generate an SSH key
ssh-keygen -t ed25519 -C "you@example.com" # Press <Enter> through the prompts (or set a passphrase if you like)
-
Add key to agent & create config
eval "$(ssh-agent -s)" mkdir -p ~/.ssh cat >> ~/.ssh/config <<'EOF' Host github.com AddKeysToAgent yes IdentityFile ~/.ssh/id_ed25519 EOF ssh-add ~/.ssh/id_ed25519
-
Add the public key to GitHub
pbcopy < ~/.ssh/id_ed25519.pub # copies key to clipboard
GitHub ▸ Settings ▸ SSH and GPG keys ▸ New SSH key ▸ paste ▸ Add key.
-
Test
ssh -T git@github.com # Expect: “Hi <username>! You've successfully authenticated …”
brew install neovim
nvim --version # should show v0.11.x# Remove any previous config
rm -rf ~/.config/nvim
# Clone your repo (replace with your own)
git clone git@github.com:desmond-45/nvim-config.git ~/.config/nvim-
Install a patched font (avoid the Mono variant for bigger icons):
brew tap homebrew/cask-fonts brew install --cask font-jetbrains-mono-nerd-font
-
Set the font in your terminal:
| Terminal | Steps |
|---|---|
| iTerm2 | Preferences ▸ Profiles ▸ Text ▸ Font ▸ choose JetBrainsMono Nerd Font |
| Apple Terminal | Settings ▸ Profiles ▸ Text ▸ Change Font ▸ choose JetBrainsMono Nerd Font |
| Alacritty | ~/.config/alacritty/alacritty.yml:yaml<br/>font:<br/> normal:<br/> family: "JetBrainsMono Nerd Font"<br/> style: Regular<br/> |
Restart the terminal after changing the font.
| Purpose | Command |
|---|---|
| Icons | (Already installed Nerd Font above) |
| Fuzzy search (Telescope) | brew install ripgrep fd |
| LSP toolchains |
|
| Git TUI (optional) | brew install lazygit |
nvimOn first open, your plugin manager (Lazy.nvim / Packer / NvChad) will sync and install plugins automatically.
Inside Neovim:
:MasonUse the UI to install, for example:
goplspyrighttypescript-language-serverprettierhtml-lsp,css-lsp, etc.
| What | Command |
|---|---|
Alias vim → nvim |
echo 'alias vim="nvim"' >> ~/.zshrc && source ~/.zshrc |
| Caps Lock → Esc | System Settings ▸ Keyboard ▸ Keyboard Shortcuts ▸ Modifier Keys… ▸ set Caps Lock → Escape |
| Problem | Fix |
|---|---|
?? icons or boxes |
Ensure terminal font is set exactly to JetBrainsMono Nerd Font (not Mono variant) and restart terminal. |
Permission denied (publickey) when cloning |
ssh-add ~/.ssh/id_ed25519, ensure key is added in GitHub Settings. |
Mason installs failing for go/npm |
Install go and node via Homebrew (see above). |
| Telescope search errors | Verify ripgrep (rg) and fd are in PATH. |