A tailored prose-writing and programming environment based on @folke's LazyVim
- Neovim Nightly.
- Terminal emulator with support for the Kitty graphics protocol.
sqlite
andlib-sqlite
. See instructions.- A C compiler (e.g.
gcc
),make
andcmake
for some native plugins.
- IDE experience, out of the box
- Debug Go, Rust, JS and others out of the box.
- Integrated tests for popular languages/frameworks (powered by Neotest)
- Automatic session management (including reloads!) with flag (
+NoSession
) to disable it. - Floating, persistent terminal
- Better marks with Harpoon.
- Editor context awareness and more powered by Treesitter. Checked for performance on large (>5000LOC) files!
- LSP-sensitive completion context (import paths)
- A ton of themes
There are 2 ways:
-
Clone this into
~/.config/nvim-ditsuke
, then run:NVIM_APPNAME=nvim-ditsuke nvim
-
Use it as a layer in your
LazyVim
configuration. Note that1.
is simpler to get started and I personally don't dogfood this configuration as a layer.{ "ditsuke/nvim-config", import = "ditsuke.plugins"} -- And any additional layers -- { import = "ditsuke.extras.code.neotest" }, -- { import = "ditsuke.extras.utils.ai" }, -- { import = "ditsuke.extras.utils.wakatime" }, -- -- -- Language extensions -- { import = "ditsuke.extras.lang.go" }, -- { import = "ditsuke.extras.lang.java" }, -- { import = "ditsuke.extras.lang.typescript" }, -- vs `lazyvim.plugins.extras.lang.typescript`, this one uses vtsls instead -- { import = "ditsuke.extras.lang.python" }, -- { import = "ditsuke.extras.lang.rust" },
I consider this configuration bleeding edge and maintain it for my own use. As such, there are no guarantees on stability but I'm open to issues and fixes and try to keep the configuration as plug-and-play as possible.
It's likely the WakaTime plugin, which misbehaves when the API key is not set. You can either set the API key
(:WakaTimeApiKey
) or disable the WakaTime extra in ./lua/ditsuke/config/lazy.lua
If it's another plugin installation that's failing, please ensure you satisfy all requirements. If you're still stuck, please open an issue.
And countless other dotfiles