Browse Source

fix: some stuff

master
Tovi Jaeschke-Rogers 3 months ago
parent
commit
60bfae08f6
3 changed files with 173 additions and 173 deletions
  1. +33
    -33
      .config/nvim/lua/tovi/plugins/linting.lua
  2. +36
    -36
      .config/nvim/lua/tovi/plugins/lualine.lua
  3. +104
    -104
      .config/nvim/lua/tovi/plugins/nvim-cmp.lua

+ 33
- 33
.config/nvim/lua/tovi/plugins/linting.lua View File

@ -1,8 +1,8 @@
return {
"mfussenegger/nvim-lint",
event = { "BufReadPre", "BufNewFile" },
config = function()
local lint = require("lint")
"mfussenegger/nvim-lint",
event = { "BufReadPre", "BufNewFile" },
config = function()
local lint = require("lint")
local severities = {
ERROR = vim.diagnostic.severity.ERROR,
@ -24,7 +24,7 @@ return {
return {}
end
if not vim.startswith(output,'{') then
if not vim.startswith(output, '{') then
vim.notify(output)
return {}
end
@ -50,36 +50,36 @@ return {
end
}
lint.linters_by_ft = {
javascript = { "eslint_d" },
typescript = { "eslint_d" },
vue = { "eslint_d" },
json = { "jsonlint" },
markdown = { "markdownlint" },
php = { "phpcs" },
golang = { "gospell", "golangci-lint" },
python = { "pylint" },
dockerfile = { "hadolint" },
lint.linters_by_ft = {
javascript = { "eslint" },
typescript = { "eslint" },
vue = { "eslint" },
json = { "jsonlint" },
markdown = { "markdownlint" },
php = { "phpcs" },
golang = { "gospell", "golangci-lint" },
python = { "pylint" },
dockerfile = { "hadolint" },
blade = { "phpcs" },
}
}
local lint_augroup = vim.api.nvim_create_augroup("lint", {
clear = true,
})
local lint_augroup = vim.api.nvim_create_augroup("lint", {
clear = true,
})
vim.api.nvim_create_autocmd({
"BufEnter",
"BufWritePost",
"InsertLeave",
}, {
group = lint_augroup,
callback = function()
lint.try_lint()
end,
})
vim.api.nvim_create_autocmd({
"BufEnter",
"BufWritePost",
"InsertLeave",
}, {
group = lint_augroup,
callback = function()
lint.try_lint()
end,
})
vim.keymap.set("n", "<leader>ll", function()
lint.try_lint()
end)
end,
vim.keymap.set("n", "<leader>ll", function()
lint.try_lint()
end)
end,
}

+ 36
- 36
.config/nvim/lua/tovi/plugins/lualine.lua View File

@ -1,39 +1,39 @@
return {
"nvim-lualine/lualine.nvim",
dependencies = {
"nvim-tree/nvim-web-devicons",
"letieu/harpoon-lualine",
},
config = function()
local lualine = require("lualine")
local lazy_status = require("lazy.status")
"nvim-lualine/lualine.nvim",
dependencies = {
"nvim-tree/nvim-web-devicons",
"letieu/harpoon-lualine",
},
config = function()
local lualine = require("lualine")
local lazy_status = require("lazy.status")
lualine.setup({
options = {
theme = "kanagawa",
component_separators = { left = "", right = "" },
section_separators = { left = "", right = "" },
globalstatus = true,
},
sections = {
lualine_b = {
{ "branch" },
{ "diff" },
{ "diagnostics" },
},
lualine_c = {
{ "filename", file_status = true, path = 1 },
{ "harpoon2" },
},
lualine_x = {
{
lazy_status.updates,
cond = lazy_status.has_updates,
},
{ "fileformat" },
{ "filetype" },
},
},
})
end,
lualine.setup({
options = {
theme = "kanagawa",
component_separators = { left = "", right = "" },
section_separators = { left = "", right = "" },
},
sections = {
lualine_b = {
{ "branch" },
{ "diff" },
{ "diagnostics" },
},
lualine_c = {
{ "filename", file_status = true, path = 1 },
{ "harpoon2" },
},
lualine_x = {
{
lazy_status.updates,
cond = lazy_status.has_updates,
color = { fg = "#ff9e64" },
},
{ "fileformat" },
{ "filetype" },
},
},
})
end,
}

+ 104
- 104
.config/nvim/lua/tovi/plugins/nvim-cmp.lua View File

@ -1,111 +1,111 @@
return {
"hrsh7th/nvim-cmp",
event = "InsertEnter",
dependencies = {
"hrsh7th/cmp-nvim-lsp",
"hrsh7th/cmp-buffer",
"hrsh7th/cmp-path",
"L3MON4D3/LuaSnip",
"saadparwaiz1/cmp_luasnip",
"rafamadriz/friendly-snippets",
"onsails/lspkind.nvim",
"kristijanhusak/vim-dadbod-completion",
},
config = function()
local cmp = require("cmp")
"hrsh7th/nvim-cmp",
event = "InsertEnter",
dependencies = {
"hrsh7th/cmp-nvim-lsp",
"hrsh7th/cmp-buffer",
"hrsh7th/cmp-path",
"L3MON4D3/LuaSnip",
"saadparwaiz1/cmp_luasnip",
"rafamadriz/friendly-snippets",
"onsails/lspkind.nvim",
"kristijanhusak/vim-dadbod-completion",
},
config = function()
local cmp = require("cmp")
local luasnip = require("luasnip")
local luasnip = require("luasnip")
local lspkind = require("lspkind")
local lspkind = require("lspkind")
-- loads vscode style snippets from installed plugins (e.g. friendly-snippets)
require("luasnip.loaders.from_vscode").lazy_load({ paths = { "~/.config/nvim/snippets" } })
-- loads vscode style snippets from installed plugins (e.g. friendly-snippets)
require("luasnip.loaders.from_vscode").lazy_load({ paths = { "~/.config/nvim/snippets" } })
local has_words_before = function()
local line, col = table.unpack(vim.api.nvim_win_get_cursor(0))
return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match("%s") == nil
end
local has_words_before = function()
local line, col = unpack(vim.api.nvim_win_get_cursor(0))
return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match("%s") == nil
end
cmp.setup({
completion = {
completeopt = "menu,menuone,preview,noselect",
},
snippet = { -- configure how nvim-cmp interacts with snippet engine
expand = function(args)
luasnip.lsp_expand(args.body)
end,
},
window = {
completion = cmp.config.window.bordered(),
documentation = cmp.config.window.bordered(),
},
mapping = cmp.mapping.preset.insert({
["<C-k>"] = cmp.mapping.select_prev_item(), -- previous suggestion
["<C-j>"] = cmp.mapping.select_next_item(), -- next suggestion
["<C-u>"] = cmp.mapping.scroll_docs(-4),
["<C-d>"] = cmp.mapping.scroll_docs(4),
["<C-Space>"] = cmp.mapping.complete(), -- show completion suggestions
["<C-e>"] = cmp.mapping.abort(), -- close completion window
["<CR>"] = cmp.mapping.confirm({ select = true }),
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif luasnip.expand_or_jumpable() then
luasnip.expand_or_jump()
elseif has_words_before() then
cmp.complete()
else
fallback()
end
end, {
"i",
"s",
}),
["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.jumpable(-1) then
luasnip.jump(-1)
else
fallback()
end
end, {
"i",
"s",
}),
}),
-- sources for autocompletion
sources = cmp.config.sources({
{ name = "nvim_lsp" },
{ name = "copilot" },
{ name = "luasnip" },
{ name = "buffer" },
{ name = "path" },
{ name = "vim-dadbod-completion" },
}),
-- configure lspkind for vs-code like pictograms in completion menu
formatting = {
format = lspkind.cmp_format({
mode = "symbol_text",
menu = {
nvim_lua = "[api]",
nvim_lsp = "[LSP]",
luasnip = "[snip]",
vim_dadbod_completion = "[DB]",
path = "[path]",
buffer = "[Buffer]",
},
}),
},
event = {
on = {
CompleteChanged = function(data)
if data.entry then
vim.lsp.buf.hover()
end
end,
},
},
})
end,
cmp.setup({
completion = {
completeopt = "menu,menuone,preview,noselect",
},
snippet = { -- configure how nvim-cmp interacts with snippet engine
expand = function(args)
luasnip.lsp_expand(args.body)
end,
},
window = {
completion = cmp.config.window.bordered(),
documentation = cmp.config.window.bordered(),
},
mapping = cmp.mapping.preset.insert({
["<C-k>"] = cmp.mapping.select_prev_item(), -- previous suggestion
["<C-j>"] = cmp.mapping.select_next_item(), -- next suggestion
["<C-u>"] = cmp.mapping.scroll_docs(-4),
["<C-d>"] = cmp.mapping.scroll_docs(4),
["<C-Space>"] = cmp.mapping.complete(), -- show completion suggestions
["<C-e>"] = cmp.mapping.abort(), -- close completion window
["<CR>"] = cmp.mapping.confirm({ select = true }),
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif luasnip.expand_or_jumpable() then
luasnip.expand_or_jump()
elseif has_words_before() then
cmp.complete()
else
fallback()
end
end, {
"i",
"s",
}),
["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.jumpable(-1) then
luasnip.jump(-1)
else
fallback()
end
end, {
"i",
"s",
}),
}),
-- sources for autocompletion
sources = cmp.config.sources({
{ name = "nvim_lsp" },
{ name = "copilot" },
{ name = "luasnip" },
{ name = "buffer" },
{ name = "path" },
{ name = "vim-dadbod-completion" },
}),
-- configure lspkind for vs-code like pictograms in completion menu
formatting = {
format = lspkind.cmp_format({
mode = "symbol_text",
menu = {
nvim_lua = "[api]",
nvim_lsp = "[LSP]",
luasnip = "[snip]",
vim_dadbod_completion = "[DB]",
path = "[path]",
buffer = "[Buffer]",
},
}),
},
event = {
on = {
CompleteChanged = function(data)
if data.entry then
vim.lsp.buf.hover()
end
end,
},
},
})
end,
}

Loading…
Cancel
Save