Compare commits

..

No commits in common. "71dac4d82f2be3e0e358631dc7197abe77639d39" and "1cb0dab7ff14e48d88e16896e73899b1d1e0adde" have entirely different histories.

5 changed files with 128 additions and 34 deletions

View File

@ -90,7 +90,7 @@ require('lazy').setup({
{ 'j-hui/fidget.nvim', tag = 'legacy', opts = {} }, { 'j-hui/fidget.nvim', tag = 'legacy', opts = {} },
-- Additional lua configuration, makes nvim stuff amazing! -- Additional lua configuration, makes nvim stuff amazing!
-- 'folke/neodev.nvim', 'folke/neodev.nvim',
}, },
}, },
@ -274,10 +274,38 @@ vim.api.nvim_create_autocmd('TextYankPost', {
-- [[ Configure Telescope ]] -- [[ Configure Telescope ]]
-- See `:help telescope` and `:help telescope.setup()` -- See `:help telescope` and `:help telescope.setup()`
require('telescope').setup {
defaults = {
mappings = {
i = {
['<C-u>'] = false,
['<C-d>'] = false,
},
},
},
}
-- Enable telescope fzf native, if installed -- Enable telescope fzf native, if installed
pcall(require('telescope').load_extension, 'fzf')
-- See `:help telescope.builtin` -- See `:help telescope.builtin`
vim.keymap.set('n', '<leader>?', require('telescope.builtin').oldfiles, { desc = '[?] Find recently opened files' })
vim.keymap.set('n', '<leader><space>', require('telescope.builtin').buffers, { desc = '[ ] Find existing buffers' })
vim.keymap.set('n', '<leader>/', function()
-- You can pass additional configuration to telescope to change theme, layout, etc.
require('telescope.builtin').current_buffer_fuzzy_find(require('telescope.themes').get_dropdown {
winblend = 10,
previewer = false,
})
end, { desc = '[/] Fuzzily search in current buffer' })
vim.keymap.set('n', '<leader>gf', require('telescope.builtin').git_files, { desc = 'Search [G]it [F]iles' })
vim.keymap.set('n', '<leader>sf', require('telescope.builtin').find_files, { desc = '[S]earch [F]iles' })
vim.keymap.set('n', '<leader>sh', require('telescope.builtin').help_tags, { desc = '[S]earch [H]elp' })
vim.keymap.set('n', '<leader>sw', require('telescope.builtin').grep_string, { desc = '[S]earch current [W]ord' })
vim.keymap.set('n', '<leader>sg', require('telescope.builtin').live_grep, { desc = '[S]earch by [G]rep' })
vim.keymap.set('n', '<leader>sd', require('telescope.builtin').diagnostics, { desc = '[S]earch [D]iagnostics' })
-- Diagnostic keymaps -- Diagnostic keymaps
vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, { desc = 'Go to previous diagnostic message' }) vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, { desc = 'Go to previous diagnostic message' })
@ -331,7 +359,7 @@ local on_attach = function(_, bufnr)
end end
-- Setup neovim lua configuration -- Setup neovim lua configuration
-- require('neodev').setup() require('neodev').setup()
-- [[ Configure nvim-cmp ]] -- [[ Configure nvim-cmp ]]
-- See `:help cmp` -- See `:help cmp`

View File

@ -120,10 +120,11 @@ setup_server("rust_analyzer", {
["rust-analyzer"] = { checkOnSave = true }, ["rust-analyzer"] = { checkOnSave = true },
}, },
}) })
setup_server("lua_ls", { filetypes = { "lua" } })
-- setup_server("slint_lsp", { filetypes = { "slint" } })
-- PHP LSPs -- PHP LSPs
local util = vim.lsp.util local util = require("lspconfig.util")
root_dir = function(fname) root_dir = function(fname)
return util.root_pattern("composer.json", ".git")(fname) return util.root_pattern("composer.json", ".git")(fname)
or util.path.dirname(fname) or util.path.dirname(fname)
@ -138,16 +139,6 @@ setup_server("phpactor", {
}, },
}) })
vim.lsp.config("lua_ls", {
filetypes = { "lua" },
settings = {
Lua = {
diagnostics = {
globals = { "vim" } }
}
}
})
setup_server("intelephense", { setup_server("intelephense", {
filetypes = { "php" }, filetypes = { "php" },
root_dir = fallback_root_dir, root_dir = fallback_root_dir,
@ -186,6 +177,14 @@ elseif vim.loop.fs_stat(phpcs_config) then
vim.g.nvim_phpcs_config_phpcs_standard = phpcs_config vim.g.nvim_phpcs_config_phpcs_standard = phpcs_config
end end
vim.lsp.config("lua_ls", {
settings = {
Lua = {
diagnostics = {
globals = { "vim" } }
}
}
})
-- === ENABLE: tell Neovim to autostart these configs lazily (filetype + root_dir) -- === ENABLE: tell Neovim to autostart these configs lazily (filetype + root_dir)
-- call this early in your init (so FileType autocommands are installed before opening files) -- call this early in your init (so FileType autocommands are installed before opening files)
local enabled_servers = { local enabled_servers = {

View File

@ -63,6 +63,19 @@ return {
}, },
"norcalli/nvim-colorizer.lua", "norcalli/nvim-colorizer.lua",
{
"neovim/nvim-lspconfig",
dependencies = {
{
"SmiteshP/nvim-navbuddy",
dependencies = {
"SmiteshP/nvim-navic",
"MunifTanjim/nui.nvim",
},
opts = { lsp = { auto_attach = true } },
},
},
},
"easymotion/vim-easymotion", "easymotion/vim-easymotion",
-- Markdown -- Markdown

View File

@ -19,8 +19,6 @@ telescope.setup({
["<C-k>"] = actions.move_selection_previous, -- move to prev result ["<C-k>"] = actions.move_selection_previous, -- move to prev result
["<C-j>"] = actions.move_selection_next, -- move to next result ["<C-j>"] = actions.move_selection_next, -- move to next result
["<C-q>"] = actions.send_selected_to_qflist + actions.open_qflist, -- send selected to quickfixlist ["<C-q>"] = actions.send_selected_to_qflist + actions.open_qflist, -- send selected to quickfixlist
['<C-u>'] = false,
['<C-d>'] = false,
}, },
}, },
}, },
@ -45,21 +43,3 @@ vim.api.nvim_set_keymap(
":lua require'telescope'.extensions.project.project{}<CR>", ":lua require'telescope'.extensions.project.project{}<CR>",
{ noremap = true, silent = true } { noremap = true, silent = true }
) )
vim.keymap.set('n', '<leader>?', require('telescope.builtin').oldfiles, { desc = '[?] Find recently opened files' })
vim.keymap.set('n', '<leader><space>', require('telescope.builtin').buffers, { desc = '[ ] Find existing buffers' })
vim.keymap.set('n', '<leader>/', function()
-- You can pass additional configuration to telescope to change theme, layout, etc.
require('telescope.builtin').current_buffer_fuzzy_find(require('telescope.themes').get_dropdown {
winblend = 10,
previewer = false,
})
end, { desc = '[/] Fuzzily search in current buffer' })
vim.keymap.set('n', '<leader>gf', require('telescope.builtin').git_files, { desc = 'Search [G]it [F]iles' })
vim.keymap.set('n', '<leader>sf', require('telescope.builtin').find_files, { desc = '[S]earch [F]iles' })
vim.keymap.set('n', '<leader>sh', require('telescope.builtin').help_tags, { desc = '[S]earch [H]elp' })
vim.keymap.set('n', '<leader>sw', require('telescope.builtin').grep_string, { desc = '[S]earch current [W]ord' })
vim.keymap.set('n', '<leader>sg', require('telescope.builtin').live_grep, { desc = '[S]earch by [G]rep' })
vim.keymap.set('n', '<leader>sd', require('telescope.builtin').diagnostics, { desc = '[S]earch [D]iagnostics' })

View File

@ -0,0 +1,74 @@
-- autoformat.lua
--
-- Use your language server to automatically format your code on save.
-- Adds additional commands as well to manage the behavior
return {
'neovim/nvim-lspconfig',
config = function()
-- Switch for controlling whether you want autoformatting.
-- Use :KickstartFormatToggle to toggle autoformatting on or off
local format_is_enabled = true
vim.api.nvim_create_user_command('KickstartFormatToggle', function()
format_is_enabled = not format_is_enabled
print('Setting autoformatting to: ' .. tostring(format_is_enabled))
end, {})
-- Create an augroup that is used for managing our formatting autocmds.
-- We need one augroup per client to make sure that multiple clients
-- can attach to the same buffer without interfering with each other.
local _augroups = {}
local get_augroup = function(client)
if not _augroups[client.id] then
local group_name = 'kickstart-lsp-format-' .. client.name
local id = vim.api.nvim_create_augroup(group_name, { clear = true })
_augroups[client.id] = id
end
return _augroups[client.id]
end
-- Whenever an LSP attaches to a buffer, we will run this function.
--
-- See `:help LspAttach` for more information about this autocmd event.
vim.api.nvim_create_autocmd('LspAttach', {
group = vim.api.nvim_create_augroup('kickstart-lsp-attach-format', { clear = true }),
-- This is where we attach the autoformatting for reasonable clients
callback = function(args)
local client_id = args.data.client_id
local client = vim.lsp.get_client_by_id(client_id)
local bufnr = args.buf
-- Only attach to clients that support document formatting
if not client.server_capabilities.documentFormattingProvider then
return
end
-- Tsserver usually works poorly. Sorry you work with bad languages
-- You can remove this line if you know what you're doing :)
if client.name == 'tsserver' then
return
end
-- Create an autocmd that will run *before* we save the buffer.
-- Run the formatting command for the LSP that has just attached.
vim.api.nvim_create_autocmd('BufWritePre', {
group = get_augroup(client),
buffer = bufnr,
callback = function()
if not format_is_enabled then
return
end
vim.lsp.buf.format {
async = false,
filter = function(c)
return c.id == client.id
end,
}
end,
})
end,
})
end,
}