Neovim Config

Personal Development Environment

My main developing editor is Neovim. I use Neovim for almost all my coding and text editing. The only exceptions are when I need to use python notebooks or work on large projects that requires a full fledge IDE. In these cases I prefer to use VS Code and the JetBrains Suite respectively. My reasons for preferring Neovim over other editors and IDEs comes down to its lightweightness, customizability, and accessibility. I have spent a deal of time configuring and optimizing Neovim to my preferences. This personal development environment allows me to be an organized and efficient coder. In a sense, I have removed any qualms I may have about an editing experience and added enough coherent functionality so that editing becomes a frictionless process.

Config

The Configuration is written in Lua and follows a file structure that complements the plugin manager lazy.nvim. Language Server Protocols (LSP) are managed with mason.nvim. If Neovim is called within VS Code, then only the default configuration is loaded. The general file structure for the configuration goes as follows (subject to change):

File Structure

./config/nvim
└───init.lua

└───lua

    └───config
    │   └───init.lua
    │   └───options.lua
    │   └───keymaps.lua
    │   └───autocmds.lua

    └───plugins
        └───editor
        │   └───init.lua
        │   └───config.lua
        └───coding
        │   └───init.lua
        │   └───config.lua
        └───tools
        │   └───init.lua
        │   └───config.lua
        └───ui
        │   └───init.lua
        │   └───config.lua
        └───lsp
            └───init.lua
            └───config.lua
            └───format.lua
            └───keymaps.lua

Plugins

Plugin Manager

Editor

UI

Colorschemes

Tools

LSP

Source

Link to my Neovim configuration on Github