-- Define vim vim = vim or {} -- Line Numbering vim.o.relativenumber = true vim.o.number = true vim.cmd('highlight LineNr ctermfg=DarkGray') -- Enable clipboard vim.o.clipboard = "unnamedplus" -- Keep Cursor vim.o.guicursor = '' -- Indentation vim.opt.shiftwidth = 2 vim.opt.softtabstop = 2 vim.opt.expandtab = true vim.opt.tabstop = 2 -- Init Snippets vim.g.snipMate = { snippet_version = 1 } -- Load packer.nvim local packer_install_path = vim.fn.stdpath('data') .. '/site/pack/packer/start/packer.nvim' if vim.fn.empty(vim.fn.glob(packer_install_path)) > 0 then vim.fn.execute('!git clone https://github.com/wbthomason/packer.nvim ' .. packer_install_path) vim.cmd 'packadd packer.nvim' end dofile(vim.fn.stdpath('config') .. '/plugins.lua') -- Treesitter Enable require'nvim-treesitter.configs'.setup { highlight = { enable = true, }, } -- Load LSP's local nvim_lsp = require('lspconfig') local navic = require('navic') local function on_attach(client, bufnr) navic.on_attach(client) client.server_capabilities.document_formatting = false require('lsp_signature').on_attach() end -- Add / Remove LSP's HERE local servers = { tsserver = { cmd = { "tsserver", "--stdio" } }, pyright = { cmd = { "pyright-langserver", "--stdio" } }, lua_ls = { cmd = { "lua-language-server" } }, rnix = { cmd = { "rnix-lsp" } }, --[[ TODO: Fix these by adding a server_configurations.md vscode_html = { cmd = { "vscode-html-language-server", "--stdio" } }, vscode_css = { cmd = { "vscode-css-language-server", "--stdio" } }, vscode_markdown = { cmd = { "vscode-markdown-language-server", "--stdio" } }, vscode_json = { cmd = { "vscode-json-language-server", "--stdio" } }, vscode_eslint = { cmd = { "vscode-eslint-language-server", "--stdio" } }, ]]-- } for lsp, config in pairs(servers) do nvim_lsp[lsp].setup { cmd = config.cmd, on_attach = on_attach, } end -- TODO: This is supposed to change the opacity for the LSP in-line error messages but it is not. vim.cmd('highlight! link LspDiagnosticsVirtualTextError LspDiagnosticsVirtualTextErrorTransparent') vim.cmd('highlight! LspDiagnosticsVirtualTextErrorTransparent guibg=none gui=none blend=50')