Enable Syntax Highlighting for .keymap Files in Neovim
PNC Arena, Raleigh NC
I’ve made a few minor tweaks to my keyboard layout (both in qmk and zmk) in
the last few weeks. Each time, I’ve been annoyed with the non-highlighted text
.keymap files when I edit them in neovim. I learned how to fix this,
and the solution is very simple.
Neovim has been my editor of choice for awhile now, especially when in a terminal.
I converted my configuration to a
.lua setup, with treesitter for
syntax highlighting about a year ago. Generally, this works well.
However, the system didn’t recognize to use
c highlighting for my
After some digging, I was reminded about the
setfiletype option in vim. This
lets you change the buffer’s file type. For example,
When I tried setting the buffer to
c, everything looked much better.
Adding to my Configuration
With a potential fix, I wanted to add it to the configuration to keep it
persistent. I didn’t feel like converting this to the equivalent
lua, so I
just used a
vim.cmd in the general file of my home-manager neovim
-- Generally read .keymap files as C ones vim.cmd[[autocmd BufNewFile,BufRead *.keymap setfiletype c]]
This line tells vim to set the file type to
c for any file that ends in
.keymap. Maybe one day I’ll convert it to
lua, but for now … it works 😄.
After adding that line and rebuilding my home-manager config, neovim opens
.keymap files with syntax highlighting on all my machines. Quick and simple!
Trying Choc Sunset Switches My Required MacOs Apps (2023)