Zine

Neovim Tooling Setup

This guide assumes that you are already familiar with Neovims built-in package manager Pack, nvim-lspconfig and nvim-treesitter.

Prerequisites are that you have SuperHTML and Ziggy installed and available in your $PATH.

The following is a complete Neovim configuration that:

vim.pack.add{
  { src = 'https://github.com/neovim/nvim-lspconfig' },
  { src = 'https://github.com/nvim-treesitter/nvim-treesitter' }
}

vim.lsp.enable('superhtml')
vim.lsp.enable('ziggy')
vim.lsp.enable('ziggy_schema')

require('nvim-treesitter').install({ 'superhtml', 'ziggy', 'ziggy_schema' })

The Tree-sitter parsers for SuperMD are not yet available via nvim-treesitter. To install and enable them use following snipped based on the official nvim-treesitter documentation:

vim.api.nvim_create_autocmd('User', { pattern = 'TSUpdate',
callback = function()
  require('nvim-treesitter.parsers').supermd = {
    install_info = {
      url = 'https://github.com/kristoff-it/supermd',
      location = 'tree-sitter/supermd',
    },
	}
  require('nvim-treesitter.parsers').supermd_inline = {
    install_info = {
      url = 'https://github.com/kristoff-it/supermd',
      location = 'tree-sitter/supermd-inline',
    },
	}
end})

require('nvim-treesitter').install { 'supermd', 'supermd_inline' }