vim.cmd [[packadd nvim-lspconfig]] vim.cmd [[packadd nvim-compe]] local function map(mode, lhs, rhs, opts) local options = {noremap = true} if opts then options = vim.tbl_extend("force", options, opts) end vim.api.nvim_set_keymap(mode, lhs, rhs, options) end local opts = {noremap = true, silent = true} -- Mappings. map("n", "gd", "lua vim.lsp.buf.definition()", opts) map("n", "gD", "lua vim.lsp.buf.declaration()", opts) map("n", "gr", "lua vim.lsp.buf.references()", opts) map("n", "K", "lua vim.lsp.buf.hover()", opts) map("n", "gi", "lua vim.lsp.buf.implementation()", opts) map("n", "", "lua vim.lsp.buf.signature_help()", opts) map("n", "wa", "lua vim.lsp.buf.add_workspace_folder()", opts) map("n", "wr", "lua vim.lsp.buf.remove_workspace_folder()", opts) map("n", "wl", "lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))", opts) map("n", "D", "lua vim.lsp.buf.type_definition()", opts) map("n", "rn", "lua vim.lsp.buf.rename()", opts) map("n", "e", "lua vim.lsp.diagnostic.show_line_diagnostics()", opts) map("n", "[d", "lua vim.lsp.diagnostic.goto_prev()", opts) map("n", "]d", "lua vim.lsp.diagnostic.goto_next()", opts) map("n", "q", "lua vim.lsp.diagnostic.set_loclist()", opts) require "lspconfig".tsserver.setup {} require "lspconfig".cssls.setup {} require "lspconfig".html.setup {}