My Lua configuration for Neovim on Linux (some features work on Windows). I mainly use this setup for taking notes and doing homework in LaTeX, as well as light programming in Lua, OCaml, etc. Obligatory link to Castel's blog.
-
Font: JetBrains Mono Nerd Font (can be changed in settings)
-
Colorscheme: kanagawa
-
Terminal: I use WezTerm as my interface of choice
- Requires Neovim 0.8+ for Lua integration
- Requires a PDF reader if you want to view compiled LaTeX documents:
- Linux: Zathura
- Windows: SumatraPDF
- [Optional] Requires Node.js and yarn for live previewing markdown files of choice
I use lazy.nvim to manage all of my packages. The general hierarchy for how things are configured is as follows:
after
└── ftplugin
└── ...
queries
└── ...
lua
├── autocommands.lua
├── keymaps.lua
├── settings.lua
├── utils.lua
└── plugins
└── ...
└── luasnippets
└── ...
ftplugin/
-- Stores various settings for specific file typesqueries/
-- Some scheme files for Tree-sitter parsing that define swappable groups, stored in[fileType]/textobjects.scm
autocommands.lua
-- Defines a few useful autocommandskeymaps.lua
-- Stores various key mapssettings.lua
-- General settings and optionsutils.lua
-- Some helper functionsplugins/
-- A folder full of the configurations needed for each individual pluginluasnippets/
-- My snippets configuration for each language I use, stored in the formluasnippets/[fileType].lua