Heiker's Avatar

Heiker

@vonheikemen

I'm a software developer (from Venezuela), mostly do web development stuff. I occasionally like to talk about linux, Neovim and javascript.

111
Followers
132
Following
24
Posts
15.11.2024
Joined
Posts Following

Latest posts by Heiker @vonheikemen

Preview
example.vim GitHub Gist: instantly share code, notes, and snippets.

i want to write a blog post on configuring neovim using vimscript. but i want know how much dark magic i'm allow to use. if i show you this example config, do you think is fine?

gist.github.com/VonHeikemen/...

#vim #neovim

19.02.2026 21:27 ๐Ÿ‘ 1 ๐Ÿ” 5 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Preview
GitHub - VonHeikemen/ts-enable.nvim: An easy way to enable treesitter based features An easy way to enable treesitter based features. Contribute to VonHeikemen/ts-enable.nvim development by creating an account on GitHub.

now that nvim-treesitter's rewrite is the new default i think this might be useful to someone.

(if it's not clear what this plugin does, please tell me. i want to make this "beginner friendly")

github.com/VonHeikemen/...

#neovim

18.12.2025 21:05 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Preview
GitHub - VonHeikemen/ts-enable.nvim: An easy way to enable treesitter based features An easy way to enable treesitter based features. Contribute to VonHeikemen/ts-enable.nvim development by creating an account on GitHub.

secret? the plugin? is a thing i did because i could not sleep last night. treesitter but for casual users that don't want to write autocommands.

github.com/VonHeikemen/...

26.11.2025 22:04 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

a made a new neovim plugin but i'm not sure how to describe effectively. i don't think is the kind of thing people should install blindly. ideally, a user encounters a problem then looks for the solution. i've learn this isn't the normal workflow of a casual user that is just learning neovim.

26.11.2025 15:05 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Introduction | Learn nvim Learn how to use Neovim and survive the experience

not sure if this helps but, i've been writting about neovim stuff on this documentation site for a little while

vonheikemen.github.io/learn-nvim/

is mostly about built-in features and how to use neovim as a text editor.

07.11.2025 02:48 ๐Ÿ‘ 0 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

thank you.

i think i can mention all that along side the `:Inspect` command which apparently i forgot.

19.10.2025 13:32 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Colorscheme | Learn nvim Learn how to use Neovim and survive the experience

i wrote down everything i know about color schemes in neovim. so if you ever wanted to create one from scratch this might be a good place to start.

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

#neovim

18.10.2025 13:07 ๐Ÿ‘ 7 ๐Ÿ” 1 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Preview
MiniMax - Neovim with maximum MINI โ€“ MINI MiniMax is a collection of fully working self-contained Neovim configs. Each uses mostly MINI.

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...

13.10.2025 16:01 ๐Ÿ‘ 16 ๐Ÿ” 1 ๐Ÿ’ฌ 2 ๐Ÿ“Œ 0
I forgot what I was going to say. Says Skeletor and then runs away.

I forgot what I was going to say. Says Skeletor and then runs away.

20.09.2025 15:58 ๐Ÿ‘ 249 ๐Ÿ” 65 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 2
Treesitter | Learn nvim Learn how to use Neovim and survive the experience

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

28.07.2025 14:54 ๐Ÿ‘ 10 ๐Ÿ” 2 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

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.

04.07.2025 14:12 ๐Ÿ‘ 39 ๐Ÿ” 2 ๐Ÿ’ฌ 3 ๐Ÿ“Œ 0

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.

03.07.2025 15:32 ๐Ÿ‘ 2 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Introduction | Learn nvim Learn how to use Neovim and survive the experience

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

02.07.2025 23:40 ๐Ÿ‘ 4 ๐Ÿ” 3 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0

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.

24.05.2025 16:18 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
A guide on Neovim's LSP client | Devlog Enable IDE-like features in Neovim without installing any additional plugins

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

24.05.2025 01:50 ๐Ÿ‘ 3 ๐Ÿ” 1 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
News-0.11 - Neovim docsNeovim Neovim user documentation

#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!

26.03.2025 15:20 ๐Ÿ‘ 127 ๐Ÿ” 42 ๐Ÿ’ฌ 2 ๐Ÿ“Œ 8
Video thumbnail

'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:

07.03.2025 13:16 ๐Ÿ‘ 19 ๐Ÿ” 1 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
TypeScript types can run DOOM
TypeScript types can run DOOM YouTube video by Michigan TypeScript

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

26.02.2025 15:03 ๐Ÿ‘ 148 ๐Ÿ” 34 ๐Ÿ’ฌ 4 ๐Ÿ“Œ 22

We've renamed our luarocks rewrite to Lux, a luxurious package manager for Lua!

github.com/nvim-neorock...

15.02.2025 13:32 ๐Ÿ‘ 8 ๐Ÿ” 1 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
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"

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"

everything is always harder than it "should" be.

27.01.2025 14:51 ๐Ÿ‘ 103 ๐Ÿ” 13 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 1
Simple Neovim config | Devlog Learn the basics of Neovim configuration in lua

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.

15.01.2025 03:21 ๐Ÿ‘ 7 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

what's involved in getting a "modern" terminal setup? jvns.ca/blog/2025/01...

11.01.2025 16:49 ๐Ÿ‘ 571 ๐Ÿ” 50 ๐Ÿ’ฌ 7 ๐Ÿ“Œ 23

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?

08.01.2025 14:48 ๐Ÿ‘ 14 ๐Ÿ” 2 ๐Ÿ’ฌ 8 ๐Ÿ“Œ 0

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=

09.01.2025 00:37 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0
Lua-guide - Neovim docsNeovim Neovim user documentation

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...

30.12.2024 20:09 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
LSP config without plugins | lsp-zero.nvimGitHubGitHub A starting point to setup some lsp related features in neovim

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

22.12.2024 14:14 ๐Ÿ‘ 10 ๐Ÿ” 1 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0
Preview
feat(lsp): add `vim.lsp.config` and `vim.lsp.enable` by lewis6991 ยท Pull Request #31031 ยท neovim/neovim Problem Setting up LSP clients require unnecessary boilerplate. LSP configuration has no system. Solution Add vim.lsp.enable() and vim.lsp.config(). Design goals/requirements: Default configurat...

neovim did the thing. they upstream the setup logic from nvim-lspconfig. okay, is not exactly the same. this one seems to be a little bit more flexible.

github.com/neovim/neovi...

(note this pr being merged on master doesn't mean is going to land in the next stable release)

11.12.2024 15:34 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 0 ๐Ÿ“Œ 0

ethernet? you mean the wifi cable

09.12.2024 17:01 ๐Ÿ‘ 938 ๐Ÿ” 139 ๐Ÿ’ฌ 37 ๐Ÿ“Œ 18

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.

08.12.2024 18:20 ๐Ÿ‘ 1 ๐Ÿ” 0 ๐Ÿ’ฌ 1 ๐Ÿ“Œ 0