.config | ||
qmk | ||
.tmux.conf | ||
.zshrc | ||
coolnight.itermcolors | ||
README.md |
My Dev Environment Files 🚀
IMPORTANT: These are primarily meant for inspiration. I wouldn't just blindly use them. Proceed at your own risk!
📹 Youtube Playlist With Detailed Walkthroughs on My Setup: 💻 My Dev Environment & Workflow
Terminal Setup
✍🏼 Blog Post Step-by-Step Guide: How To Setup Your Mac Terminal
📹 Youtube Guide: How To Make Your Boring Mac Terminal So Much Better
Relevant Files
- .zshrc - Zsh Shell Configuration
- coolnight.itermcolors - iTerm2 Color Scheme
Tmux Setup
✍🏼 Blog Post: How To Use and Configure Tmux Alongside Neovim
📹 Youtube Guide: How I Setup And Use Tmux Alongside Neovim for an Awesome Dev Workflow
Relevant Files
- .tmux.conf - Tmux Configuration File
Yabai Tiling Window Manager Setup
✍🏼 Blog Post: How To Setup And Use The Yabai Tiling Window Manager On Mac
📹 Youtube Guide: How To Setup And Use The Yabai Tiling Window Manager On Mac
Relevant Files
Sketchybar Custom Menu Bar Setup
✍🏼 Blog Post: How To Make An Amazing Custom Menu Bar For Your Mac With Sketchybar
📹 Youtube Guide: How To Make An Amazing Custom Menu Bar For Your Mac With Sketchybar
Setup Requires
- sketchybar:
brew tap FelixKratz/formulae
andbrew install sketchybar
- jq (json command line processor):
brew install jq
- SF Pro Font:
brew tap homebrew/cask-fonts
andbrew install font-sf-pro
- SF Symbols:
brew install --cask sf-symbols
: - Sketchybar App Font:
`curl -L https://github.com/kvndrsslr/sketchybar-app-font/releases/download/v1.0.16/sketchybar-app-font.ttf -o $HOME/Library/Fonts/sketchybar-app-font.ttf`
Relevant Files
Neovim Setup
Important: This is my latest config with lazy.nvim. It is similar, but not the same as my original packer setup.
If you are coming from my full neovim setup video with packer, that config is found here: Packer Config
📹 Packer Full Neovim Setup Guide: How I Setup Neovim On My Mac To Make It Amazing
📹 lazy.nvim Neovim Guide: How To Use lazy.nvim for an Amazing And Simple Neovim Config
If you clone the repo into your machine and use the config by copying .config/nvim to your home folder, wait for the plugins, language servers and parsers to install with lazy.nvim, Mason and nvim-treesitter. If you are opening a lua file or another file I have language servers configured for, like html, css or javascript/typescript, you might also get an error saying that the server failed to start. This is because Mason hasn't installed it yet. Press enter to continue, Mason will automatically install it.
Relevant Files
Setup Requires
- True Color Terminal Like: iTerm2
- Neovim (Version 0.9 or Later)
- Nerd Font - I use Meslo Nerd Font
- Ripgrep - For Telescope Fuzzy Finder
- XCode Command Line Tools
- If working with typescript/javascript and the typescript language server like me. You might need to install node.
If you're on mac, like me, you can install iTerm2, Neovim, Ripgrep and Node with homebrew.
brew install --cask iterm2
brew install neovim
brew install ripgrep
brew install node
For XCode Command Line Tools do:
xcode-select --install
Plugins
Plugin Manager
- folke/lazy.nvim - Amazing plugin manager
Dependency For Other Plugins
- nvim-lua/plenary - Useful lua functions other plugins use
Preferred Colorscheme
Navigating Between Neovim Windows and Tmux
Essentials
- tpope/vim-surround - manipulate surroundings with "ys", "ds", and "cs"
- vim-scripts/ReplaceWithRegister - replace things with register with "gr"
File Explorer
VS Code Like Icons
Neovim Greeter
Status Line
Buffer Line
Keymap Suggestions
Fuzzy Finder
- nvim-telescope/telescope-fzf-native.nvim - Dependency for better performance
- nvim-telescope/telescope.nvim - Fuzzy Finder
- stevearc/dressing.nvim - select/input ui improvement
Marking Files With Prime's Harpoon
Autocompletion
- hrsh7th/nvim-cmp - Completion plugin
- hrsh7th/cmp-buffer - Completion source for text in current buffer
- hrsh7th/cmp-path - Completion source for file system paths
- onsails/lspkind.nvim - Vs Code Like Icons for autocompletion
Snippets
- L3MON4D3/LuaSnip - Snippet engine
- rafamadriz/friendly-snippets - Useful snippets for different languages
- saadparwaiz1/cmp_luasnip - Completion source for snippet autocomplete
Managing & Installing Language Servers, Linters & Formatters
LSP Configuration
- williamboman/mason-lspconfig.nvim - Bridges gap b/w mason & lspconfig
- neovim/nvim-lspconfig - Easy way to configure lsp servers
- hrsh7th/cmp-nvim-lsp - Smart code autocompletion with lsp
Formatting & Linting
- stevearc/conform.nvim - Easy way to configure formatters
- mfussenegger/nvim-lint - Easy way to configure linters
- WhoIsSethDaniel/mason-tool-installer.nvim - Auto install linters & formatters on startup
Comments
- numToStr/Comment.nvim - toggle comments with "gc"
- JoosepAlviste/nvim-ts-context-commentstring - Requires treesitter
Treesitter Syntax Highlighting, Autoclosing & Text Objects
- nvim-treesitter/nvim-treesitter - Treesitter configuration
- nvim-treesitter/nvim-treesitter-textobjects - Treesitter configuration
- windwp/nvim-autopairs - Autoclose brackets, parens, quotes, etc...
- windwp/nvim-ts-autotag - Autoclose tags
Git
- lewis6991/gitsigns.nvim - Show line modifications on left hand side