Heiker
@vonheikemen.bsky.social
93 followers 130 following 17 posts
I'm a software developer (from Venezuela), mostly do web development stuff. I occasionally like to talk about linux, Neovim and javascript.
Posts Media Videos Starter Packs
Reposted by Heiker
I am very happy to announce the release of MiniMax - Neovim config example(s) that is primarily based on MINI/mini.nvim.

The plan was to wait until when 'mini.statuscolumn' and 'mini.terminals' are implemented, but decided to just do it now.

Here is the release post: nvim-mini.org/blog/2025-10...
MiniMax - Neovim with maximum MINI – MINI
MiniMax is a collection of fully working self-contained Neovim configs. Each uses mostly MINI.
nvim-mini.org
neovim's built-in "treesitter support" is a cool feature that has been around for a while now. i didn't found many resources that explain what is, so i wrote something

vonheikemen.github.io/learn-nvim/f...

#neovim
Treesitter | Learn nvim
Learn how to use Neovim and survive the experience
vonheikemen.github.io
Reposted by Heiker
It was a long road to get here, but we made it 🎉
Thanks @neovim.io core team for allowing me to do this!

There are still a lot of things to do, but we'll approach them one small step at a time.
thank you. writting it was a nice side project.

oh i love mini.nvim. i will bring attention to it any time i can. the fact that it works on neovim v0.9 means i can recommend it to any casual ubuntu user. that's a nice little detail i appreciate.
i made another documentation site. in this one i wrote everything you need to know to use neovim as a text editor.

vonheikemen.github.io/learn-nvim/

#neovim
Introduction | Learn nvim
Learn how to use Neovim and survive the experience
vonheikemen.github.io
the thing about neovim is that you have to know the details if you want to have a nice experience. your configuration can be a file with 30 lines code but you still need a few hours to gather all the tiny bits to write those 30 lines.
i've updated my post about neovim's lsp client. i added the new stuff from v0.11 and explain how it works, so people can make their own setup even on older neovim versions.

long story short, this is about using neovim's lsp client without plugins.

vonheikemen.github.io/devlog/tools...

#neovim
A guide on Neovim's LSP client | Devlog
Enable IDE-like features in Neovim without installing any additional plugins
vonheikemen.github.io
Reposted by Heiker
Neovim @neovim.io · Mar 26
#neovim 0.11 is out!

- List of notable changes since 0.10: neovim.io/doc/user/new...
- Summary blog post: gpanders.com/blog/whats-n...
- Release binaries: github.com/neovim/neovi...

Thank you all for the support! More things to come in 0.12!
News-0.11 - Neovim docsNeovim
Neovim user documentation
neovim.io
Reposted by Heiker
'mini.completion' now **finally** has snippet support (plus other small improvements). This was a frequently requested feature which I had troubles adding (including a detour of making own snippet engine), but it is finally done.

Here is the updated 'mini.completion' #neovim demo:
Reposted by Heiker
All told, it's been a year and a half of hard work to get to today. We've got so much to share about this project. Let us know what you'd like to hear about! :)

youtu.be/0mCsluv5FXA
TypeScript types can run DOOM
YouTube video by Michigan TypeScript
youtu.be
Reposted by Heiker
We've renamed our luarocks rewrite to Lux, a luxurious package manager for Lua!

github.com/nvim-neorock...
Reposted by Heiker
everything is always harder than it "should" be.
a drawn comic with two men in the foreground wearing construction hats. One is holding papers under his arm and asking "I don't understand why it takes so long to add a new window." while the other looks back in disbelief.

In the background, a house is depicted in shambles, split in half, falling apart, and with an umbrella covering the split in the roof.

The top left titles the image: "Technical Debt"
maybe this can help: a post that explain how to build a "base config" with just 2 plugins.

vonheikemen.github.io/devlog/tools...

even if you don't use the config in the post still a good read to understand some basic concepts in neovim.
Simple Neovim config | Devlog
Learn the basics of Neovim configuration in lua
vonheikemen.github.io
Reposted by Heiker
what's involved in getting a "modern" terminal setup? jvns.ca/blog/2025/01...
Reposted by Heiker
Hey friends, one of the most common concerns I hear from people who want to learn to code is, "I'm not good at math". Don't gatekeep yourself before you even get started - you might find it's fun to make the computer do the math instead! Fellow devs, what would you say to newbies with this concern?
with the set command, if you don't add anything on the right hand side of the equal sign it should be considered empty.

set inccommand=
spending some time learning basic things is never a bad idea. like lua syntax and a little bit of neovim's api.

there's a lot good information in neovim's docs. here:
neovim.io/doc/user/lua...
Lua-guide - Neovim docsNeovim
Neovim user documentation
neovim.io
neovim added a new api to configure language servers. is easy to use if you know what you are doing. sure, writting 6 lines of code is easy enough. knowing what to write is the tricky part.

in this post i try my best to explain how to use this api:

lsp-zero.netlify.app/blog/lsp-con...

#neovim
LSP config without plugins | lsp-zero.nvimGitHubGitHub
A starting point to setup some lsp related features in neovim
lsp-zero.netlify.app
Reposted by Heiker
ethernet? you mean the wifi cable
i do want to use mini.clue. i tried and it worked pretty well, but it was a lot of code. if i could just do `use_builtins = 'all'` i'd replace which-key.

i hesitate to replace lazy.nvim because is everywhere now. and i do like the floating window where you can manage the plugins.
the 300 character limit is really hurting me. in mastodon the standard limit 500 and i'm happy with that. if i'm over 500 i'm saying too much. but 300 is not enough.
thank you for the kind words. i'm glad to hear my blog posts were helpful.

treesitter is pretty cool when other plugins use it. you can ignore it if you don't have a plugin that needs it.

for lsp is unfortunate that the quality depends on the language. some have good lsp support others don't.