NeoVim can be quite the rabbit hole, especially when it comes to configurations. There are a lot of them out there, but most are outdated, and focus heavily on programming languages like Rust, Python, Go, and every language other than Java. The few videos about using NeoVim to edit Java files either lack details, or straight up don't work properly. How would I know this? I spent several months configuring, and tinkering with different NeoVim configurations and tutorials to finally piece together a working Full Stack Java configuration with a focus on Java and TypeScript. And now since I have completed the hardwork, I want to share it all with you, and rebuild my configuration from scratch so you can follow along and start on the NeoVim journey with my. Below I am including links to the configuration repository for free to either just copy and paste, or to check in on if you get lost. I am also including my personal configuration which is a modified version of this one with more features and obviously personalized to my liking, along with all the repositories for the plugins used in the configuration. I am keeping this configuration as vanilla as possible to allow you to explore and grow your NeoVim experience into exactly what you want, which really is the beauty of NeoVim. So I definitely recommend starting out with this basic configuration, getting the feel for NeoVim as an editor, and then start exploring my personal configuration, along with the configurations of the developers I mention below.
Github Repository for the configuration in this video: https://github.com/unknownkoder/Java-FullStack-NeoVim-Configuration
Github Repository for my personal configuration: https://github.com/elmcgill/neovim-config
TJ DeVries Youtube: https://www.youtube.com/@teej_dv
TJ DeVries Kickstart.nvim configuration: https://github.com/nvim-lua/kickstart.nvim
The Rad Lectures Youtube: https://www.youtube.com/watch?v=ZjMzBd1Dqz8&t=1982s
Chris@Machine Youtube: https://www.youtube.com/@chrisatmachine
Chris@Machine Launch.nvim configuration: https://github.com/LunarVim/Launch.nvim
Github Repositories for the plugins used in this video in order:
Lazy Plugin Manager: https://github.com/folke/lazy.nvim
Dracula ColorScheme: https://github.com/Mofiqul/dracula.nvim
Popular Color Schemes Github Repository: https://github.com/topics/neovim-colorscheme
Nvim-Tree: https://github.com/nvim-tree/nvim-tree.lua
Telescope: https://github.com/nvim-telescope/telescope.nvim
Treesitter: https://github.com/nvim-treesitter/nvim-treesitter
Mason: https://github.com/williamboman/mason.nvim
Mason LSP Config: https://github.com/williamboman/mason-lspconfig.nvim
Nvim JDTLS: https://github.com/mfussenegger/nvim-jdtls
Lsp Config: https://github.com/neovim/nvim-lspconfig
Nvim Dap: https://github.com/mfussenegger/nvim-dap
Spring Boot Nvim: https://github.com/elmcgill/springboot-nvim
None-LS: https://github.com/nvimtools/none-ls.nvim
LuaSnip: https://github.com/L3MON4D3/LuaSnip
Cmp LuaSnip: https://github.com/saadparwaiz1/cmp_luasnip
Friendly Snippets: https://github.com/rafamadriz/friendly-snippets
Cmp Nvim LSP: https://github.com/hrsh7th/cmp-nvim-lsp
Nvim Cmp: https://github.com/hrsh7th/nvim-cmp
Cmp Buffer: https://github.com/hrsh7th/cmp-buffer
Cmp Path: https://github.com/hrsh7th/cmp-path
Autopairs: https://github.com/windwp/nvim-autopairs
Git Signs: https://github.com/lewis6991/gitsigns.nvim
Fugitive: https://github.com/tpope/vim-fugitive
Lualine: https://github.com/nvim-lualine/lualine.nvim
Which-key: https://github.com/folke/which-key.nvim
Harpoon: https://github.com/ThePrimeagen/harpoon
Comment: https://github.com/numToStr/Comment.nvim
Chapters to save your spot in the video:
Introduction: 0:00:00 - 0:01:58
Prerequisite: 0:01:58 - 0:06:34
Project Structure: 0:06:34 - 0:11:11
Options: 0:11:11 - 0:27:01
Keymaps: 0:27:01 - 0:36:53
Lazy.nvim: 0:36:53 - 0:44:26
Color Scheme: 0:44:26 - 0:48:32
Nvim Tree: 0:48:32 - 0:52:27
Telescope: 0:52:27 - 1:01:53
Treesitter: 1:01:53 - 1:06:12
LSP Config: 1:06:12 - 1:19:45
JDTLS: 1:19:45 - 1:58:13
Auto CMDs: 1:58:13 - 2:02:50
Nvim DAP: 2:02:50 - 2:07:59
Spring Boot Nvim: 2:07:59 - 2:12:17
None LS: 2:12:17 - 2:18:24
Cmps: 2:18:24 - 2:30:30
Auto Pairs: 2:30:30 - 2:34:54
Git: 2:34:54 - 2:40:56
Lua Line: 2:40:56 - 2:49:57
Which Key: 2:49:57 - 2:53:57
Harpoon: 2:53:57 - 2:57:14
Comment: 2:57:14 - 3:01:34
Demonstration: 3:01:34 - 3:22:09
Outroduction: 3:22:09 - 3:23:40
Support me on my other social medias
Twitter/X: https://twitter.com/UnknownKoder
Twitch: https://www.twitch.tv/unknownkoderyt
Tips: https://streamlabs.com/unknownkoder/tip