neovim configuration using rocks.nvim plugin manager
at main 1.6 kB view raw
1require("rocks-setup") 2vim.g.rocks_nvim.experimental_features = { 3 "ext_module_dependency_stubs", 4} 5if vim.fn.has('mac') == 1 then 6 vim.g.rocks_nvim.luarocks_config = { 7 arch = "macosx-aarch64", 8 variables = { 9 LUA_DIR = "/nix/store/8438aynxm813i6ksassvgq8bb40f8fln-lua-5.1.5-env", 10 LUA_INCDIR = "/nix/store/8438aynxm813i6ksassvgq8bb40f8fln-lua-5.1.5-env/include", 11 }, 12 } 13end 14require("core.keymaps") 15require("core.abbrevs") 16require("core.options") 17require("core.autocmds") 18require("core.commands") 19require("core.highlights") 20require("core.ui.statusline") 21require("core.lsp") 22 23require("utils.format").setup() 24 25require("utils").load_local_parser("norg", "norg") 26 27local query = require("vim.treesitter.query") 28local html_script_type_languages = { 29 ["importmap"] = "json", 30 ["module"] = "javascript", 31 ["application/ecmascript"] = "javascript", 32 ["text/ecmascript"] = "javascript", 33} 34 35---@param match (TSNode|nil)[] 36---@param _ string 37---@param bufnr integer 38---@param pred string[] 39---@return boolean|nil 40query.add_directive("set-lang-from-mimetype!", function(match, _, bufnr, pred, metadata) 41 local capture_id = pred[2] 42 local node = match[capture_id] 43 if not node then 44 return 45 end 46 local type_attr_value = vim.treesitter.get_node_text(node, bufnr) 47 local configured = html_script_type_languages[type_attr_value] 48 if configured then 49 metadata["injection.language"] = configured 50 else 51 local parts = vim.split(type_attr_value, "/", {}) 52 metadata["injection.language"] = parts[#parts] 53 end 54end, { force = true, all = false })