diff --git a/config/nvim/.stylua.toml b/config/nvim/.stylua.toml new file mode 100644 index 00000000..440061b0 --- /dev/null +++ b/config/nvim/.stylua.toml @@ -0,0 +1,3 @@ +indent_type = "Spaces" +call_parentheses = "None" +collapse_simple_statement = "Always" diff --git a/config/nvim/lua/colours.lua b/config/nvim/lua/colours.lua index 7098ebd0..d06120f7 100644 --- a/config/nvim/lua/colours.lua +++ b/config/nvim/lua/colours.lua @@ -1,11 +1,11 @@ -vim.opt.fillchars:append({ - horiz = '━', - horizup = '┻', - horizdown = '┳', - vert = '┃', - vertleft = '┨', - vertright = '┣', - verthoriz = '╋', -}) -require("config.catppuccin") -vim.cmd("colorscheme catppuccin") +vim.opt.fillchars:append { + horiz = "━", + horizup = "┻", + horizdown = "┳", + vert = "┃", + vertleft = "┨", + vertright = "┣", + verthoriz = "╋", +} +require "config.catppuccin" +vim.cmd "colorscheme catppuccin" diff --git a/config/nvim/lua/config/catppuccin.lua b/config/nvim/lua/config/catppuccin.lua index e93065d6..42bf058c 100644 --- a/config/nvim/lua/config/catppuccin.lua +++ b/config/nvim/lua/config/catppuccin.lua @@ -1,4 +1,4 @@ -require("catppuccin").setup({ +require("catppuccin").setup { flavour = "macchiato", transparent_background = true, term_colors = true, @@ -10,13 +10,13 @@ require("catppuccin").setup({ }, cmp = true, native_lsp = { - enabled = true + enabled = true, }, notify = true, nvimtree = true, treesitter = true, treesitter_context = true, telescope = true, - lsp_trouble = true - } -}) + lsp_trouble = true, + }, +} diff --git a/config/nvim/lua/config/catppuccin_feline.lua b/config/nvim/lua/config/catppuccin_feline.lua index fff22ab3..f09235f1 100644 --- a/config/nvim/lua/config/catppuccin_feline.lua +++ b/config/nvim/lua/config/catppuccin_feline.lua @@ -1,512 +1,478 @@ local M = {} local C = require("catppuccin.palettes").get_palette() -local lsp = require("feline.providers.lsp") +local lsp = require "feline.providers.lsp" local assets = { - left_separator = "", - right_separator = "", - mode_icon = "", - dir = "", - file = "", - lsp = { - server = "", - error = "", - warning = "", - info = "", - hint = "", - }, - git = { - branch = "", - added = "", - changed = "", - removed = "", - }, + left_separator = "", + right_separator = "", + mode_icon = "", + dir = "", + file = "", + lsp = { + server = "", + error = "", + warning = "", + info = "", + hint = "", + }, + git = { + branch = "", + added = "", + changed = "", + removed = "", + }, } local sett = { - text = C.surface0, - bkg = C.surface0, - diffs = C.mauve, - extras = C.overlay1, - curr_file = C.maroon, - curr_dir = C.flamingo, - show_modified = false, + text = C.surface0, + bkg = C.surface0, + diffs = C.mauve, + extras = C.overlay1, + curr_file = C.maroon, + curr_dir = C.flamingo, + show_modified = false, } if require("catppuccin").flavour == "latte" then - local latte = require("catppuccin.palettes").get_palette("latte") - sett.text = latte.base - sett.bkg = latte.crust + local latte = require("catppuccin.palettes").get_palette "latte" + sett.text = latte.base + sett.bkg = latte.crust end -if require("catppuccin").options.transparent_background then - sett.bkg = "NONE" -end +if require("catppuccin").options.transparent_background then sett.bkg = "NONE" end local mode_colors = { - ["n"] = { "NORMAL", C.lavender }, - ["no"] = { "N-PENDING", C.lavender }, - ["i"] = { "INSERT", C.green }, - ["ic"] = { "INSERT", C.green }, - ["t"] = { "TERMINAL", C.green }, - ["v"] = { "VISUAL", C.flamingo }, - ["V"] = { "V-LINE", C.flamingo }, - [""] = { "V-BLOCK", C.flamingo }, - ["R"] = { "REPLACE", C.maroon }, - ["Rv"] = { "V-REPLACE", C.maroon }, - ["s"] = { "SELECT", C.maroon }, - ["S"] = { "S-LINE", C.maroon }, - [""] = { "S-BLOCK", C.maroon }, - ["c"] = { "COMMAND", C.peach }, - ["cv"] = { "COMMAND", C.peach }, - ["ce"] = { "COMMAND", C.peach }, - ["r"] = { "PROMPT", C.teal }, - ["rm"] = { "MORE", C.teal }, - ["r?"] = { "CONFIRM", C.mauve }, - ["!"] = { "SHELL", C.green }, + ["n"] = { "NORMAL", C.lavender }, + ["no"] = { "N-PENDING", C.lavender }, + ["i"] = { "INSERT", C.green }, + ["ic"] = { "INSERT", C.green }, + ["t"] = { "TERMINAL", C.green }, + ["v"] = { "VISUAL", C.flamingo }, + ["V"] = { "V-LINE", C.flamingo }, + [""] = { "V-BLOCK", C.flamingo }, + ["R"] = { "REPLACE", C.maroon }, + ["Rv"] = { "V-REPLACE", C.maroon }, + ["s"] = { "SELECT", C.maroon }, + ["S"] = { "S-LINE", C.maroon }, + [""] = { "S-BLOCK", C.maroon }, + ["c"] = { "COMMAND", C.peach }, + ["cv"] = { "COMMAND", C.peach }, + ["ce"] = { "COMMAND", C.peach }, + ["r"] = { "PROMPT", C.teal }, + ["rm"] = { "MORE", C.teal }, + ["r?"] = { "CONFIRM", C.mauve }, + ["!"] = { "SHELL", C.green }, } function M.setup(opts) - if opts then - opts.assets = opts.assets or {} - opts.sett = opts.sett or {} - opts.mode_colors = opts.mode_colors or {} - else - opts = {} - end - assets = vim.tbl_deep_extend("force", assets, opts.assets) - sett = vim.tbl_deep_extend("force", sett, opts.sett) - mode_colors = vim.tbl_deep_extend("force", mode_colors, opts.mode_colors) + if opts then + opts.assets = opts.assets or {} + opts.sett = opts.sett or {} + opts.mode_colors = opts.mode_colors or {} + else + opts = {} + end + assets = vim.tbl_deep_extend("force", assets, opts.assets) + sett = vim.tbl_deep_extend("force", sett, opts.sett) + mode_colors = vim.tbl_deep_extend("force", mode_colors, opts.mode_colors) end function M.get() - local shortline = false + local shortline = false - local components = { - active = { {}, {} }, -- left, right - inactive = { {} }, - } + local components = { + active = { {}, {} }, -- left, right + inactive = { {} }, + } - local function is_enabled(min_width) - if shortline then - return true - end + local function is_enabled(min_width) + if shortline then return true end - return vim.api.nvim_win_get_width(0) > min_width - end + return vim.api.nvim_win_get_width(0) > min_width + end - -- global components - local invi_sep = { - str = " ", - hl = { - fg = sett.bkg, - bg = sett.bkg, - }, - } + -- global components + local invi_sep = { + str = " ", + hl = { + fg = sett.bkg, + bg = sett.bkg, + }, + } - -- helpers - local function any_git_changes() - local gst = vim.b.gitsigns_status_dict -- git stats - if gst then - if - gst["added"] and gst["added"] > 0 - or gst["removed"] and gst["removed"] > 0 - or gst["changed"] and gst["changed"] > 0 - then - return true - end - end - return false - end + -- helpers + local function any_git_changes() + local gst = vim.b.gitsigns_status_dict -- git stats + if gst then + if + gst["added"] and gst["added"] > 0 + or gst["removed"] and gst["removed"] > 0 + or gst["changed"] and gst["changed"] > 0 + then + return true + end + end + return false + end - -- #################### STATUSLINE -> + -- #################### STATUSLINE -> - -- ######## Left + -- ######## Left - -- Current vi mode ------> - local vi_mode_hl = function() - return { - fg = sett.text, - bg = mode_colors[vim.fn.mode()][2], - style = "bold", - } - end + -- Current vi mode ------> + local vi_mode_hl = function() + return { + fg = sett.text, + bg = mode_colors[vim.fn.mode()][2], + style = "bold", + } + end - components.active[1][1] = { - provider = " " .. assets.mode_icon .. " ", - hl = function() - return { - fg = sett.text, - bg = mode_colors[vim.fn.mode()][2], - } - end, - } + components.active[1][1] = { + provider = " " .. assets.mode_icon .. " ", + hl = function() + return { + fg = sett.text, + bg = mode_colors[vim.fn.mode()][2], + } + end, + } - components.active[1][2] = { - provider = function() - return mode_colors[vim.fn.mode()][1] .. " " - end, - hl = vi_mode_hl, - } + components.active[1][2] = { + provider = function() return mode_colors[vim.fn.mode()][1] .. " " end, + hl = vi_mode_hl, + } - -- there is a dilema: we need to hide Diffs if ther is no git info. We can do that, but this will - -- leave the right_separator colored with purple, and since we can't change the color conditonally - -- then the solution is to create two right_separators: one with a mauve sett.bkg and the other one normal - -- sett.bkg; both have the same fg (vi mode). The mauve one appears if there is git info, else the one with - -- the normal sett.bkg appears. Fixed :) + -- there is a dilema: we need to hide Diffs if ther is no git info. We can do that, but this will + -- leave the right_separator colored with purple, and since we can't change the color conditonally + -- then the solution is to create two right_separators: one with a mauve sett.bkg and the other one normal + -- sett.bkg; both have the same fg (vi mode). The mauve one appears if there is git info, else the one with + -- the normal sett.bkg appears. Fixed :) - -- enable if git diffs are not available - components.active[1][3] = { - provider = assets.right_separator, - hl = function() - return { - fg = mode_colors[vim.fn.mode()][2], - bg = sett.bkg, - } - end, - enabled = function() - return not any_git_changes() - end, - } + -- enable if git diffs are not available + components.active[1][3] = { + provider = assets.right_separator, + hl = function() + return { + fg = mode_colors[vim.fn.mode()][2], + bg = sett.bkg, + } + end, + enabled = function() return not any_git_changes() end, + } - -- enable if git diffs are available - components.active[1][4] = { - provider = assets.right_separator, - hl = function() - return { - fg = mode_colors[vim.fn.mode()][2], - bg = sett.diffs, - } - end, - enabled = function() - return any_git_changes() - end, - } - -- Current vi mode ------> + -- enable if git diffs are available + components.active[1][4] = { + provider = assets.right_separator, + hl = function() + return { + fg = mode_colors[vim.fn.mode()][2], + bg = sett.diffs, + } + end, + enabled = function() return any_git_changes() end, + } + -- Current vi mode ------> - -- Diffs ------> - components.active[1][5] = { - provider = "git_diff_added", - hl = { - fg = sett.text, - bg = sett.diffs, - }, - icon = " " .. assets.git.added .. " ", - } + -- Diffs ------> + components.active[1][5] = { + provider = "git_diff_added", + hl = { + fg = sett.text, + bg = sett.diffs, + }, + icon = " " .. assets.git.added .. " ", + } - components.active[1][6] = { - provider = "git_diff_changed", - hl = { - fg = sett.text, - bg = sett.diffs, - }, - icon = " " .. assets.git.changed .. " ", - } + components.active[1][6] = { + provider = "git_diff_changed", + hl = { + fg = sett.text, + bg = sett.diffs, + }, + icon = " " .. assets.git.changed .. " ", + } - components.active[1][7] = { - provider = "git_diff_removed", - hl = { - fg = sett.text, - bg = sett.diffs, - }, - icon = " " .. assets.git.removed .. " ", - } + components.active[1][7] = { + provider = "git_diff_removed", + hl = { + fg = sett.text, + bg = sett.diffs, + }, + icon = " " .. assets.git.removed .. " ", + } - components.active[1][8] = { - provider = " ", - hl = { - fg = sett.bkg, - bg = sett.diffs, - }, - enabled = function() - return any_git_changes() - end, - } + components.active[1][8] = { + provider = " ", + hl = { + fg = sett.bkg, + bg = sett.diffs, + }, + enabled = function() return any_git_changes() end, + } - components.active[1][9] = { - provider = assets.right_separator, - hl = { - fg = sett.diffs, - bg = sett.bkg, - }, - enabled = function() - return any_git_changes() - end, - } - -- Diffs ------> + components.active[1][9] = { + provider = assets.right_separator, + hl = { + fg = sett.diffs, + bg = sett.bkg, + }, + enabled = function() return any_git_changes() end, + } + -- Diffs ------> - -- Extras ------> + -- Extras ------> - -- file progess - components.active[1][10] = { - provider = function() - local current_line = vim.fn.line(".") - local total_line = vim.fn.line("$") + -- file progess + components.active[1][10] = { + provider = function() + local current_line = vim.fn.line "." + local total_line = vim.fn.line "$" - if current_line == 1 then - return "Top" - elseif current_line == vim.fn.line("$") then - return "Bot" - end - local result, _ = math.modf((current_line / total_line) * 100) - return result .. "%%" - end, - -- enabled = shortline or function(winid) - -- return vim.api.nvim_win_get_width(winid) > 90 - -- end, - hl = { - fg = sett.extras, - bg = sett.bkg, - }, - left_sep = invi_sep, - } + if current_line == 1 then + return "Top" + elseif current_line == vim.fn.line "$" then + return "Bot" + end + local result, _ = math.modf((current_line / total_line) * 100) + return result .. "%%" + end, + -- enabled = shortline or function(winid) + -- return vim.api.nvim_win_get_width(winid) > 90 + -- end, + hl = { + fg = sett.extras, + bg = sett.bkg, + }, + left_sep = invi_sep, + } - -- position - components.active[1][11] = { - provider = "position", - -- enabled = shortline or function(winid) - -- return vim.api.nvim_win_get_width(winid) > 90 - -- end, - hl = { - fg = sett.extras, - bg = sett.bkg, - }, - left_sep = invi_sep, - } + -- position + components.active[1][11] = { + provider = "position", + -- enabled = shortline or function(winid) + -- return vim.api.nvim_win_get_width(winid) > 90 + -- end, + hl = { + fg = sett.extras, + bg = sett.bkg, + }, + left_sep = invi_sep, + } - -- macro - components.active[1][12] = { - provider = "macro", - enabled = function() - return vim.api.nvim_get_option("cmdheight") == 0 - end, - hl = { - fg = sett.extras, - bg = sett.bkg, - }, - left_sep = invi_sep, - } + -- macro + components.active[1][12] = { + provider = "macro", + enabled = function() return vim.api.nvim_get_option "cmdheight" == 0 end, + hl = { + fg = sett.extras, + bg = sett.bkg, + }, + left_sep = invi_sep, + } - -- search count - components.active[1][13] = { - provider = "search_count", - enabled = function() - return vim.api.nvim_get_option("cmdheight") == 0 - end, - hl = { - fg = sett.extras, - bg = sett.bkg, - }, - left_sep = invi_sep, - } - -- Extras ------> + -- search count + components.active[1][13] = { + provider = "search_count", + enabled = function() return vim.api.nvim_get_option "cmdheight" == 0 end, + hl = { + fg = sett.extras, + bg = sett.bkg, + }, + left_sep = invi_sep, + } + -- Extras ------> - -- ######## Left - -- treesitter position - components.active[1][14] = { - provider = function() - -- if not require("vim.treesitter.language").require_language("lua") then - -- return "" - -- end - local pos = require("nvim-treesitter").statusline({ - indicator_size = 50, - transform_fn = function(line) - return line:gsub("%s*[%[%(%{]+.*$", "") - end, - }) - if pos and pos ~= "" then - return pos - end - return "" - end, - hl = { - fg = sett.extras, - bg = sett.bkg, - }, - left_sep = invi_sep, - } + -- ######## Left + -- treesitter position + components.active[1][14] = { + provider = function() + -- if not require("vim.treesitter.language").require_language("lua") then + -- return "" + -- end + local pos = require("nvim-treesitter").statusline { + indicator_size = 50, + transform_fn = function(line) return line:gsub("%s*[%[%(%{]+.*$", "") end, + } + if pos and pos ~= "" then return pos end + return "" + end, + hl = { + fg = sett.extras, + bg = sett.bkg, + }, + left_sep = invi_sep, + } - -- ######## Right + -- ######## Right - -- Diagnostics ------> - -- workspace loader - components.active[2][1] = { - provider = function() - local Lsp = vim.lsp.util.get_progress_messages()[1] + -- Diagnostics ------> + -- workspace loader + components.active[2][1] = { + provider = function() + local Lsp = vim.lsp.util.get_progress_messages()[1] - if Lsp then - local msg = Lsp.message or "" - local percentage = Lsp.percentage - if not percentage then - return "" - end - local title = Lsp.title or "" - local spinners = { - "", - "", - "", - } - local success_icon = { - "", - "", - "", - } - local ms = vim.loop.hrtime() / 1000000 - local frame = math.floor(ms / 120) % #spinners + if Lsp then + local msg = Lsp.message or "" + local percentage = Lsp.percentage + if not percentage then return "" end + local title = Lsp.title or "" + local spinners = { + "", + "", + "", + } + local success_icon = { + "", + "", + "", + } + local ms = vim.loop.hrtime() / 1000000 + local frame = math.floor(ms / 120) % #spinners - if percentage >= 70 then - return string.format(" %%<%s %s %s (%s%%%%) ", success_icon[frame + 1], title, msg, percentage) - end + if percentage >= 70 then + return string.format(" %%<%s %s %s (%s%%%%) ", success_icon[frame + 1], title, msg, percentage) + end - return string.format(" %%<%s %s %s (%s%%%%) ", spinners[frame + 1], title, msg, percentage) - end + return string.format(" %%<%s %s %s (%s%%%%) ", spinners[frame + 1], title, msg, percentage) + end - return "" - end, - enabled = is_enabled(80), - hl = { - fg = sett.extras, - bg = sett.bkg, - }, - right_sep = invi_sep, - } + return "" + end, + enabled = is_enabled(80), + hl = { + fg = sett.extras, + bg = sett.bkg, + }, + right_sep = invi_sep, + } - components.active[2][2] = { - provider = "git_branch", - enabled = is_enabled(70), - hl = { - fg = sett.extras, - bg = sett.bkg, - }, - icon = assets.git.branch .. " ", - right_sep = invi_sep, - } + components.active[2][2] = { + provider = "git_branch", + enabled = is_enabled(70), + hl = { + fg = sett.extras, + bg = sett.bkg, + }, + icon = assets.git.branch .. " ", + right_sep = invi_sep, + } - components.active[2][3] = { - provider = function() - if next(vim.lsp.buf_get_clients()) ~= nil then - return assets.lsp.server .. " " .. "Lsp" - else - return "" - end - end, - hl = { - fg = sett.extras, - bg = sett.bkg, - }, - right_sep = invi_sep, - } + components.active[2][3] = { + provider = function() + if next(vim.lsp.buf_get_clients()) ~= nil then + return assets.lsp.server .. " " .. "Lsp" + else + return "" + end + end, + hl = { + fg = sett.extras, + bg = sett.bkg, + }, + right_sep = invi_sep, + } - -- genral diagnostics (errors, warnings. info and hints) - components.active[2][4] = { - provider = "diagnostic_errors", - enabled = function() - return lsp.diagnostics_exist(vim.diagnostic.severity.ERROR) - end, + -- genral diagnostics (errors, warnings. info and hints) + components.active[2][4] = { + provider = "diagnostic_errors", + enabled = function() return lsp.diagnostics_exist(vim.diagnostic.severity.ERROR) end, - hl = { - fg = C.red, - bg = sett.bkg, - }, - icon = " " .. assets.lsp.error .. " ", - right_sep = invi_sep, - } + hl = { + fg = C.red, + bg = sett.bkg, + }, + icon = " " .. assets.lsp.error .. " ", + right_sep = invi_sep, + } - components.active[2][5] = { - provider = "diagnostic_warnings", - enabled = function() - return lsp.diagnostics_exist(vim.diagnostic.severity.WARN) - end, - hl = { - fg = C.yellow, - bg = sett.bkg, - }, - icon = " " .. assets.lsp.warning .. " ", - right_sep = invi_sep, - } + components.active[2][5] = { + provider = "diagnostic_warnings", + enabled = function() return lsp.diagnostics_exist(vim.diagnostic.severity.WARN) end, + hl = { + fg = C.yellow, + bg = sett.bkg, + }, + icon = " " .. assets.lsp.warning .. " ", + right_sep = invi_sep, + } - components.active[2][6] = { - provider = "diagnostic_info", - enabled = function() - return lsp.diagnostics_exist(vim.diagnostic.severity.INFO) - end, - hl = { - fg = C.sky, - bg = sett.bkg, - }, - icon = " " .. assets.lsp.info .. " ", - right_sep = invi_sep, - } + components.active[2][6] = { + provider = "diagnostic_info", + enabled = function() return lsp.diagnostics_exist(vim.diagnostic.severity.INFO) end, + hl = { + fg = C.sky, + bg = sett.bkg, + }, + icon = " " .. assets.lsp.info .. " ", + right_sep = invi_sep, + } - components.active[2][7] = { - provider = "diagnostic_hints", - enabled = function() - return lsp.diagnostics_exist(vim.diagnostic.severity.HINT) - end, - hl = { - fg = C.rosewater, - bg = sett.bkg, - }, - icon = " " .. assets.lsp.hint .. " ", - right_sep = invi_sep, - } - -- Diagnostics ------> + components.active[2][7] = { + provider = "diagnostic_hints", + enabled = function() return lsp.diagnostics_exist(vim.diagnostic.severity.HINT) end, + hl = { + fg = C.rosewater, + bg = sett.bkg, + }, + icon = " " .. assets.lsp.hint .. " ", + right_sep = invi_sep, + } + -- Diagnostics ------> - components.active[2][8] = { - provider = function() - local filename = vim.fn.expand("%:t") - local extension = vim.fn.expand("%:e") - local present, icons = pcall(require, "nvim-web-devicons") - local icon = present and icons.get_icon(filename, extension) or assets.file - return (sett.show_modified and "%m" or "") .. " " .. icon .. " " .. filename .. " " - end, - enabled = is_enabled(70), - hl = { - fg = sett.text, - bg = sett.curr_file, - }, - left_sep = { - str = assets.left_separator, - hl = { - fg = sett.curr_file, - bg = sett.bkg, - }, - }, - } + components.active[2][8] = { + provider = function() + local filename = vim.fn.expand "%:t" + local extension = vim.fn.expand "%:e" + local present, icons = pcall(require, "nvim-web-devicons") + local icon = present and icons.get_icon(filename, extension) or assets.file + return (sett.show_modified and "%m" or "") .. " " .. icon .. " " .. filename .. " " + end, + enabled = is_enabled(70), + hl = { + fg = sett.text, + bg = sett.curr_file, + }, + left_sep = { + str = assets.left_separator, + hl = { + fg = sett.curr_file, + bg = sett.bkg, + }, + }, + } - components.active[2][9] = { - provider = function() - local dir_name = vim.fn.fnamemodify(vim.fn.getcwd(), ":t") - return " " .. assets.dir .. " " .. dir_name .. " " - end, - enabled = is_enabled(80), - hl = { - fg = sett.text, - bg = sett.curr_dir, - }, - left_sep = { - str = assets.left_separator, - hl = { - fg = sett.curr_dir, - bg = sett.curr_file, - }, - }, - } - -- ######## Right + components.active[2][9] = { + provider = function() + local dir_name = vim.fn.fnamemodify(vim.fn.getcwd(), ":t") + return " " .. assets.dir .. " " .. dir_name .. " " + end, + enabled = is_enabled(80), + hl = { + fg = sett.text, + bg = sett.curr_dir, + }, + left_sep = { + str = assets.left_separator, + hl = { + fg = sett.curr_dir, + bg = sett.curr_file, + }, + }, + } + -- ######## Right - -- Inanctive components - components.inactive[1][1] = { - provider = function() - return " " .. string.upper(vim.bo.ft) .. " " - end, - hl = { - fg = C.overlay2, - bg = C.mantle, - }, - } + -- Inanctive components + components.inactive[1][1] = { + provider = function() return " " .. string.upper(vim.bo.ft) .. " " end, + hl = { + fg = C.overlay2, + bg = C.mantle, + }, + } - return components + return components end return M diff --git a/config/nvim/lua/config/cmp.lua b/config/nvim/lua/config/cmp.lua index adcde1b6..542c71b5 100644 --- a/config/nvim/lua/config/cmp.lua +++ b/config/nvim/lua/config/cmp.lua @@ -1,75 +1,75 @@ -local cmp = require("cmp") -local luasnip = require("luasnip") +local cmp = require "cmp" +local luasnip = require "luasnip" require("luasnip.loaders.from_vscode").lazy_load() -cmp.setup({ - snippet = { - expand = function(args) - luasnip.lsp_expand(args.body) -- For `luasnip` users. - end, - }, - mapping = cmp.mapping.preset.insert({ - [""] = cmp.mapping.scroll_docs(-4), -- Up - [""] = cmp.mapping.scroll_docs(4), -- Down - [""] = cmp.mapping.complete(), - [""] = cmp.mapping.confirm({ - behavior = cmp.ConfirmBehavior.Replace, - select = true, - }), - [""] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_next_item() - elseif luasnip.expand_or_jumpable() then - luasnip.expand_or_jump() - else - fallback() - end - end, { "i", "s" }), - [""] = 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 = { - { name = "nvim_lsp" }, - { name = "luasnip" }, - { name = "latex_symbols" }, - }, -}) +cmp.setup { + snippet = { + expand = function(args) + luasnip.lsp_expand(args.body) -- For `luasnip` users. + end, + }, + mapping = cmp.mapping.preset.insert { + [""] = cmp.mapping.scroll_docs(-4), -- Up + [""] = cmp.mapping.scroll_docs(4), -- Down + [""] = cmp.mapping.complete(), + [""] = cmp.mapping.confirm { + behavior = cmp.ConfirmBehavior.Replace, + select = true, + }, + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_next_item() + elseif luasnip.expand_or_jumpable() then + luasnip.expand_or_jump() + else + fallback() + end + end, { "i", "s" }), + [""] = 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 = { + { name = "nvim_lsp" }, + { name = "luasnip" }, + { name = "latex_symbols" }, + }, +} -- Set configuration for specific filetype. cmp.setup.filetype("gitcommit", { - sources = { - { name = "git" }, - { name = "commit" }, - { name = "buffer" }, - }, + sources = { + { name = "git" }, + { name = "commit" }, + { name = "buffer" }, + }, }) cmp.setup.filetype("markdown", { - sources = { - { name = "spell" }, - { name = "buffer" }, - }, + sources = { + { name = "spell" }, + { name = "buffer" }, + }, }) cmp.setup.cmdline("/", { - mapping = cmp.mapping.preset.cmdline(), - sources = { - { name = "buffer" }, - }, + mapping = cmp.mapping.preset.cmdline(), + sources = { + { name = "buffer" }, + }, }) cmp.setup.cmdline(":", { - mapping = cmp.mapping.preset.cmdline(), - sources = { - { name = "path" }, - { name = "cmdline" }, - }, + mapping = cmp.mapping.preset.cmdline(), + sources = { + { name = "path" }, + { name = "cmdline" }, + }, }) diff --git a/config/nvim/lua/config/feline.lua b/config/nvim/lua/config/feline.lua index 088805d9..bb4dea5d 100644 --- a/config/nvim/lua/config/feline.lua +++ b/config/nvim/lua/config/feline.lua @@ -1,4 +1,2 @@ local components = require("config.catppuccin_feline").get() -require("feline").setup({ - components = components, -}) +require("feline").setup { components = components } diff --git a/config/nvim/lua/config/gitsigns.lua b/config/nvim/lua/config/gitsigns.lua index 734933ae..d29144b0 100644 --- a/config/nvim/lua/config/gitsigns.lua +++ b/config/nvim/lua/config/gitsigns.lua @@ -1,57 +1,45 @@ -require("gitsigns").setup({ - signcolumn = true, - numhl = true, - linehl = false, - current_line_blame = true, - word_diff = false, - on_attach = function(bufnr) - local gs = package.loaded.gitsigns +require("gitsigns").setup { + signcolumn = true, + numhl = true, + linehl = false, + current_line_blame = true, + word_diff = false, + on_attach = function(bufnr) + local gs = package.loaded.gitsigns - local function map(mode, l, r, opts) - opts = opts or {} - opts.buffer = bufnr - vim.keymap.set(mode, l, r, opts) - end + local function map(mode, l, r, opts) + opts = opts or {} + opts.buffer = bufnr + vim.keymap.set(mode, l, r, opts) + end - -- Navigation - map("n", "]c", function() - if vim.wo.diff then - return "]c" - end - vim.schedule(function() - gs.next_hunk() - end) - return "" - end, { expr = true }) + -- Navigation + map("n", "]c", function() + if vim.wo.diff then return "]c" end + vim.schedule(function() gs.next_hunk() end) + return "" + end, { expr = true }) - map("n", "[c", function() - if vim.wo.diff then - return "[c" - end - vim.schedule(function() - gs.prev_hunk() - end) - return "" - end, { expr = true }) + map("n", "[c", function() + if vim.wo.diff then return "[c" end + vim.schedule(function() gs.prev_hunk() end) + return "" + end, { expr = true }) - -- Actions - map({ "n", "v" }, "hs", ":Gitsigns stage_hunk") - map({ "n", "v" }, "hr", ":Gitsigns reset_hunk") - map("n", "hS", gs.stage_buffer) - map("n", "hu", gs.undo_stage_hunk) - map("n", "hR", gs.reset_buffer) - map("n", "hp", gs.preview_hunk) - map("n", "hb", function() - gs.blame_line({ full = true }) - end) - map("n", "tb", gs.toggle_current_line_blame) - map("n", "hd", gs.diffthis) - map("n", "hD", function() - gs.diffthis("~") - end) - map("n", "td", gs.toggle_deleted) + -- Actions + map({ "n", "v" }, "hs", ":Gitsigns stage_hunk") + map({ "n", "v" }, "hr", ":Gitsigns reset_hunk") + map("n", "hS", gs.stage_buffer) + map("n", "hu", gs.undo_stage_hunk) + map("n", "hR", gs.reset_buffer) + map("n", "hp", gs.preview_hunk) + map("n", "hb", function() gs.blame_line { full = true } end) + map("n", "tb", gs.toggle_current_line_blame) + map("n", "hd", gs.diffthis) + map("n", "hD", function() gs.diffthis "~" end) + map("n", "td", gs.toggle_deleted) - -- Text object - map({ "o", "x" }, "ih", ":Gitsigns select_hunk") - end, -}) + -- Text object + map({ "o", "x" }, "ih", ":Gitsigns select_hunk") + end, +} diff --git a/config/nvim/lua/config/indent_blankline.lua b/config/nvim/lua/config/indent_blankline.lua index fdda642f..856c9714 100644 --- a/config/nvim/lua/config/indent_blankline.lua +++ b/config/nvim/lua/config/indent_blankline.lua @@ -1,12 +1,12 @@ -require("indent_blankline").setup({ - show_current_context = true, - show_current_context_start = false, - char_highlight_list = { - "IndentBlanklineIndent1", - "IndentBlanklineIndent2", - "IndentBlanklineIndent3", - "IndentBlanklineIndent4", - "IndentBlanklineIndent5", - "IndentBlanklineIndent6", - }, -}) +require("indent_blankline").setup { + show_current_context = true, + show_current_context_start = false, + char_highlight_list = { + "IndentBlanklineIndent1", + "IndentBlanklineIndent2", + "IndentBlanklineIndent3", + "IndentBlanklineIndent4", + "IndentBlanklineIndent5", + "IndentBlanklineIndent6", + }, +} diff --git a/config/nvim/lua/config/kanagawa.lua b/config/nvim/lua/config/kanagawa.lua deleted file mode 100644 index 738bba00..00000000 --- a/config/nvim/lua/config/kanagawa.lua +++ /dev/null @@ -1,4 +0,0 @@ -require("kanagawa").setup({ - transparent = true, - dimInactive = true, -}) diff --git a/config/nvim/lua/config/lazy.lua b/config/nvim/lua/config/lazy.lua index 24636b12..6d328143 100644 --- a/config/nvim/lua/config/lazy.lua +++ b/config/nvim/lua/config/lazy.lua @@ -1,10 +1,10 @@ local M = { - install = { - colorscheme = { - "catppuccin", - "habamax", - "default", - }, - }, + install = { + colorscheme = { + "catppuccin", + "habamax", + "default", + }, + }, } return M diff --git a/config/nvim/lua/config/lsp.lua b/config/nvim/lua/config/lsp.lua index 029e079e..362db1c6 100644 --- a/config/nvim/lua/config/lsp.lua +++ b/config/nvim/lua/config/lsp.lua @@ -8,95 +8,91 @@ vim.keymap.set("n", "q", vim.diagnostic.setloclist, opts) local signs = { Error = " ", Warn = " ", Hint = " ", Info = " " } for type, icon in pairs(signs) do - local hl = "DiagnosticSign" .. type - vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = hl }) + local hl = "DiagnosticSign" .. type + vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = hl }) end local lsp_formatting = function(bufnr) - vim.lsp.buf.format({ - filter = function(client) - return client.name == "null-ls" - end, - bufnr = bufnr, - timeout_ms = 2000, - -- async = true, - }) + vim.lsp.buf.format { + filter = function(client) return client.name == "null-ls" end, + bufnr = bufnr, + timeout_ms = 2000, + -- async = true, + } end -- Use an on_attach function to only map the following keys -- after the language server attaches to the current buffer local on_attach = function(_, bufnr) - -- Mappings. - -- See `:help vim.lsp.*` for documentation on any of the below functions - local bufopts = { noremap = true, silent = true, buffer = bufnr } - vim.keymap.set("n", "gD", vim.lsp.buf.definition, bufopts) - vim.keymap.set("n", "gd", "Trouble lsp_definitions", bufopts) - vim.keymap.set("n", "gR", vim.lsp.buf.references, bufopts) - vim.keymap.set("n", "gr", "Trouble lsp_references", bufopts) - vim.keymap.set("n", "gI", vim.lsp.buf.implementation, bufopts) - vim.keymap.set("n", "gi", "Trouble lsp_implementations", bufopts) - vim.keymap.set("n", "K", vim.lsp.buf.hover, bufopts) - vim.keymap.set("n", "", vim.lsp.buf.signature_help, bufopts) - vim.keymap.set("n", "wa", vim.lsp.buf.add_workspace_folder, bufopts) - vim.keymap.set("n", "wr", vim.lsp.buf.remove_workspace_folder, bufopts) - vim.keymap.set("n", "wl", function() - print(vim.inspect(vim.lsp.buf.list_workspace_folders())) - end, bufopts) - vim.keymap.set("n", "D", vim.lsp.buf.type_definition, bufopts) - vim.keymap.set("n", "rn", vim.lsp.buf.rename, bufopts) - vim.keymap.set("n", "ca", vim.lsp.buf.code_action, bufopts) - vim.keymap.set("n", "i", lsp_formatting, bufopts) + -- Mappings. + -- See `:help vim.lsp.*` for documentation on any of the below functions + local bufopts = { noremap = true, silent = true, buffer = bufnr } + vim.keymap.set("n", "gD", vim.lsp.buf.definition, bufopts) + vim.keymap.set("n", "gd", "Trouble lsp_definitions", bufopts) + vim.keymap.set("n", "gR", vim.lsp.buf.references, bufopts) + vim.keymap.set("n", "gr", "Trouble lsp_references", bufopts) + vim.keymap.set("n", "gI", vim.lsp.buf.implementation, bufopts) + vim.keymap.set("n", "gi", "Trouble lsp_implementations", bufopts) + vim.keymap.set("n", "K", vim.lsp.buf.hover, bufopts) + vim.keymap.set("n", "", vim.lsp.buf.signature_help, bufopts) + vim.keymap.set("n", "wa", vim.lsp.buf.add_workspace_folder, bufopts) + vim.keymap.set("n", "wr", vim.lsp.buf.remove_workspace_folder, bufopts) + vim.keymap.set("n", "wl", function() print(vim.inspect(vim.lsp.buf.list_workspace_folders())) end, bufopts) + vim.keymap.set("n", "D", vim.lsp.buf.type_definition, bufopts) + vim.keymap.set("n", "rn", vim.lsp.buf.rename, bufopts) + vim.keymap.set("n", "ca", vim.lsp.buf.code_action, bufopts) + vim.keymap.set("n", "i", lsp_formatting, bufopts) end local lsp_flags = { - -- This is the default in Nvim 0.7+ - debounce_text_changes = 150, + -- This is the default in Nvim 0.7+ + debounce_text_changes = 150, } require("neodev").setup() -local lspconfig = require("lspconfig") +local lspconfig = require "lspconfig" local capabilities = require("cmp_nvim_lsp").default_capabilities() -lspconfig.pyright.setup({ - on_attach = on_attach, - flags = lsp_flags, - capabilities = capabilities, -}) +lspconfig.pyright.setup { + on_attach = on_attach, + flags = lsp_flags, + capabilities = capabilities, +} -lspconfig.fortls.setup({ - on_attach = on_attach, - flags = lsp_flags, - capabilities = capabilities, -}) +lspconfig.fortls.setup { + on_attach = on_attach, + flags = lsp_flags, + capabilities = capabilities, +} -lspconfig.lua_ls.setup({ - on_attach = on_attach, - flags = lsp_flags, - capabilities = capabilities, -}) +lspconfig.lua_ls.setup { + on_attach = on_attach, + flags = lsp_flags, + capabilities = capabilities, +} -lspconfig.texlab.setup({ - on_attach = on_attach, - flags = lsp_flags, - capabilities = capabilities, -}) +lspconfig.texlab.setup { + on_attach = on_attach, + flags = lsp_flags, + capabilities = capabilities, +} -local null_ls = require("null-ls") -null_ls.setup({ - sources = { - null_ls.builtins.code_actions.gitsigns, - null_ls.builtins.diagnostics.mypy, - null_ls.builtins.diagnostics.zsh, - null_ls.builtins.formatting.black, - null_ls.builtins.formatting.isort, - null_ls.builtins.formatting.trim_whitespace, - null_ls.builtins.formatting.stylua, - null_ls.builtins.formatting.shfmt, - null_ls.builtins.formatting.prettier, - null_ls.builtins.hover.dictionary, - }, - on_attach = on_attach, - flags = lsp_flags, - capabilities = capabilities, -}) +local null_ls = require "null-ls" +null_ls.setup { + sources = { + null_ls.builtins.code_actions.gitsigns, + null_ls.builtins.diagnostics.mypy, + null_ls.builtins.diagnostics.zsh, + null_ls.builtins.formatting.black, + null_ls.builtins.formatting.isort, + null_ls.builtins.formatting.trim_whitespace, + null_ls.builtins.formatting.stylua, + null_ls.builtins.formatting.shfmt, + null_ls.builtins.formatting.prettier, + null_ls.builtins.hover.dictionary, + }, + on_attach = on_attach, + flags = lsp_flags, + capabilities = capabilities, +} diff --git a/config/nvim/lua/config/lualine.lua b/config/nvim/lua/config/lualine.lua deleted file mode 100644 index 914692b0..00000000 --- a/config/nvim/lua/config/lualine.lua +++ /dev/null @@ -1,5 +0,0 @@ -require("lualine").setup({ - options = { - global_status = true - }, -}) diff --git a/config/nvim/lua/config/neotree.lua b/config/nvim/lua/config/neotree.lua index 41b31eb2..348a5add 100644 --- a/config/nvim/lua/config/neotree.lua +++ b/config/nvim/lua/config/neotree.lua @@ -1,21 +1,21 @@ -vim.cmd([[ let g:neo_tree_remove_legacy_commands = 1 ]]) -require("neo-tree").setup({ - close_if_last_window = true, - filesystem = { - filtered_items = { - hide_dotfiles = false, - }, - group_empty_dirs = true, - }, - buffers = { - follow_current_file = true, - group_empty_dirs = true, - }, - git_status = { - group_empty_dirs = true, - }, - source_selector = { - winbar = true, - statusline = false, - }, -}) +vim.cmd [[ let g:neo_tree_remove_legacy_commands = 1 ]] +require("neo-tree").setup { + close_if_last_window = true, + filesystem = { + filtered_items = { + hide_dotfiles = false, + }, + group_empty_dirs = true, + }, + buffers = { + follow_current_file = true, + group_empty_dirs = true, + }, + git_status = { + group_empty_dirs = true, + }, + source_selector = { + winbar = true, + statusline = false, + }, +} diff --git a/config/nvim/lua/config/nightfox.lua b/config/nvim/lua/config/nightfox.lua deleted file mode 100644 index f2feb15f..00000000 --- a/config/nvim/lua/config/nightfox.lua +++ /dev/null @@ -1,6 +0,0 @@ -require("nightfox").setup({ - options = { - transparent = true, - }, -}) -require("nightfox").compile() diff --git a/config/nvim/lua/config/nvim-test.lua b/config/nvim/lua/config/nvim-test.lua index 81ca45a6..4deb41b7 100644 --- a/config/nvim/lua/config/nvim-test.lua +++ b/config/nvim/lua/config/nvim-test.lua @@ -1,6 +1,6 @@ -require("nvim-test").setup({ +require("nvim-test").setup { termOpts = { direction = "horizontal", keep_one = true, }, -}) +} diff --git a/config/nvim/lua/config/project.lua b/config/nvim/lua/config/project.lua deleted file mode 100644 index f08c1fd0..00000000 --- a/config/nvim/lua/config/project.lua +++ /dev/null @@ -1,40 +0,0 @@ -require("project_nvim").setup({ - -- Manual mode doesn't automatically change your root directory, so you have - -- the option to manually do so using `:ProjectRoot` command. - manual_mode = false, - - -- Methods of detecting the root directory. **"lsp"** uses the native neovim - -- lsp, while **"pattern"** uses vim-rooter like glob pattern matching. Here - -- order matters: if one is not detected, the other is used as fallback. You - -- can also delete or rearangne the detection methods. - detection_methods = { "pattern", "lsp" }, - - -- All the patterns used to detect root dir, when **"pattern"** is in - -- detection_methods - patterns = { ".git", ".venv", "_darcs", ".hg", ".bzr", ".svn", "Makefile", "package.json" }, - - -- Table of lsp clients to ignore by name - -- eg: { "efm", ... } - ignore_lsp = {}, - - -- Don't calculate root dir on specific directories - -- Ex: { "~/.cargo/*", ... } - exclude_dirs = {}, - - -- Show hidden files in telescope - show_hidden = false, - - -- When set to false, you will get a message when project.nvim changes your - -- directory. - silent_chdir = true, - - -- What scope to change the directory, valid options are - -- * global (default) - -- * tab - -- * win - scope_chdir = "global", - - -- Path where project.nvim will store the project history for use in - -- telescope - datapath = vim.fn.stdpath("data"), -}) diff --git a/config/nvim/lua/config/telescope.lua b/config/nvim/lua/config/telescope.lua index acf91c5b..cbae1feb 100644 --- a/config/nvim/lua/config/telescope.lua +++ b/config/nvim/lua/config/telescope.lua @@ -1,31 +1,31 @@ -require("telescope.actions") -local trouble = require("trouble.providers.telescope") +require "telescope.actions" +local trouble = require "trouble.providers.telescope" -require("telescope").setup({ - extensions = { - fzf = { - fuzzy = true, -- false will only do exact matching - override_generic_sorter = true, -- override the generic sorter - override_file_sorter = true, -- override the file sorter - case_mode = "smart_case", -- or "ignore_case" or "respect_case" - -- the default case_mode is "smart_case" - }, - aerial = { - show_nesting = { - ["_"] = false, - python = true, - json = true, - yaml = true, - }, - }, - }, - defaults = { - mappings = { - i = { [""] = trouble.open_with_trouble }, - n = { [""] = trouble.open_with_trouble }, - }, - }, -}) +require("telescope").setup { + extensions = { + fzf = { + fuzzy = true, -- false will only do exact matching + override_generic_sorter = true, -- override the generic sorter + override_file_sorter = true, -- override the file sorter + case_mode = "smart_case", -- or "ignore_case" or "respect_case" + -- the default case_mode is "smart_case" + }, + aerial = { + show_nesting = { + ["_"] = false, + python = true, + json = true, + yaml = true, + }, + }, + }, + defaults = { + mappings = { + i = { [""] = trouble.open_with_trouble }, + n = { [""] = trouble.open_with_trouble }, + }, + }, +} -require("telescope").load_extension("fzf") -require("telescope").load_extension("notify") +require("telescope").load_extension "fzf" +require("telescope").load_extension "notify" diff --git a/config/nvim/lua/config/treesitter.lua b/config/nvim/lua/config/treesitter.lua index 8e3f9ddc..97dce779 100644 --- a/config/nvim/lua/config/treesitter.lua +++ b/config/nvim/lua/config/treesitter.lua @@ -1,7 +1,7 @@ -require("nvim-treesitter.configs").setup({ - highlight = { - enable = true, - additional_vim_regex_highlighting = false, - disable = { "fortran" }, - }, -}) +require("nvim-treesitter.configs").setup { + highlight = { + enable = true, + additional_vim_regex_highlighting = false, + disable = { "fortran" }, + }, +} diff --git a/config/nvim/lua/config/trouble.lua b/config/nvim/lua/config/trouble.lua index e4b310f6..c0b5d84a 100644 --- a/config/nvim/lua/config/trouble.lua +++ b/config/nvim/lua/config/trouble.lua @@ -1,7 +1,7 @@ -require("trouble").setup({ - mode = "workspace_diagnostics", -- "workspace_diagnostics", "document_diagnostics", "quickfix", "lsp_references", "loclist" - auto_open = false, -- automatically open the list when you have diagnostics - auto_close = false, -- automatically close the list when you have no diagnostics - auto_preview = true, -- automatically preview the location of the diagnostic. to close preview and go back to last window - auto_jump = { "lsp_definitions", "lsp_references", "lsp_implementations" }, -- for the given modes, automatically jump if there is only a single result -}) +require("trouble").setup { + mode = "workspace_diagnostics", -- "workspace_diagnostics", "document_diagnostics", "quickfix", "lsp_references", "loclist" + auto_open = false, -- automatically open the list when you have diagnostics + auto_close = false, -- automatically close the list when you have no diagnostics + auto_preview = true, -- automatically preview the location of the diagnostic. to close preview and go back to last window + auto_jump = { "lsp_definitions", "lsp_references", "lsp_implementations" }, -- for the given modes, automatically jump if there is only a single result +} diff --git a/config/nvim/lua/options.lua b/config/nvim/lua/options.lua index 9a8031b5..979f6abd 100644 --- a/config/nvim/lua/options.lua +++ b/config/nvim/lua/options.lua @@ -2,10 +2,10 @@ vim.opt.title = true vim.opt.cmdheight = 0 vim.g.python3_host_prog = "/usr/bin/python3" vim.g.python_indent = { - open_paren = "shiftwidth()", - nested_paren = "shiftwidth()", - continue = "shiftwidth()", - closed_paren_align_last_line = "v:false", + open_paren = "shiftwidth()", + nested_paren = "shiftwidth()", + continue = "shiftwidth()", + closed_paren_align_last_line = "v:false", } vim.opt.termguicolors = true vim.opt.laststatus = 3 diff --git a/config/nvim/lua/plugins.lua b/config/nvim/lua/plugins.lua index 60001275..97f0925f 100644 --- a/config/nvim/lua/plugins.lua +++ b/config/nvim/lua/plugins.lua @@ -1,126 +1,104 @@ local M = { - { "folke/lazy.nvim", cmd = "Lazy" }, - { - "catppuccin/nvim", - name = "catppuccin", - lazy = false, - priority = 1000, - config = function() - require("colours") - end, - }, - { "stevearc/dressing.nvim" }, - { - "feline-nvim/feline.nvim", - config = function() - require("config.feline") - end, - }, - { - "rcarriga/nvim-notify", - config = function() - require("notify").setup({ - background_colour = "#000000", - }) - vim.notify = require("notify") - end, - }, - { - "neovim/nvim-lspconfig", - dependencies = { - { "hrsh7th/nvim-cmp" }, - { "hrsh7th/cmp-nvim-lsp" }, - { "hrsh7th/cmp-buffer" }, - { "hrsh7th/cmp-path" }, - { "hrsh7th/cmp-cmdline" }, - { "f3fora/cmp-spell" }, - { "petertriho/cmp-git" }, - { "Dosx001/cmp-commit" }, - { "kdheepak/cmp-latex-symbols" }, - { "L3MON4D3/LuaSnip" }, - { "saadparwaiz1/cmp_luasnip" }, - { "rafamadriz/friendly-snippets" }, - { "windwp/nvim-autopairs" }, - { "jose-elias-alvarez/null-ls.nvim" }, - { "folke/neodev.nvim" }, - }, - config = function() - require("config.lsp") - require("config.cmp") - end, - }, - { - "nvim-treesitter/nvim-treesitter", - config = function() - require("config.treesitter") - end, - }, - { - "lewis6991/gitsigns.nvim", - config = function() - require("config.gitsigns") - end, - }, - { - "nvim-neo-tree/neo-tree.nvim", - branch = "v2.x", - dependencies = { - "nvim-lua/plenary.nvim", - "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended - "MunifTanjim/nui.nvim", - }, - cmd = "Neotree", - config = function() - require("config.neotree") - end, - }, - { - "nvim-telescope/telescope.nvim", - branch = "0.1.x", - dependencies = { - { "nvim-lua/plenary.nvim" }, - { - "nvim-telescope/telescope-fzf-native.nvim", - build = "make", - }, - }, - cmd = "Telescope", - config = function() - require("config.telescope") - end, - }, - { - "folke/trouble.nvim", - dependencies = "nvim-tree/nvim-web-devicons", - cmd = "TroubleToggle", - config = function() - require("config.trouble") - end, - }, - { - "lukas-reineke/indent-blankline.nvim", - config = function() - require("config.indent_blankline") - end, - }, - { - "numToStr/Navigator.nvim", - config = function() - require("Navigator").setup() - end, - }, - { - "klen/nvim-test", - config = function() - require("config.nvim-test") - end, - }, - { - "numToStr/Comment.nvim", - name = "Comment", - config = function() - require("Comment") - end, - }, + { "folke/lazy.nvim", cmd = "Lazy" }, + { + "catppuccin/nvim", + name = "catppuccin", + lazy = false, + priority = 1000, + config = function() require "colours" end, + }, + { "stevearc/dressing.nvim" }, + { + "feline-nvim/feline.nvim", + config = function() require "config.feline" end, + }, + { + "rcarriga/nvim-notify", + config = function() + require("notify").setup { + background_colour = "#000000", + } + vim.notify = require "notify" + end, + }, + { + "neovim/nvim-lspconfig", + dependencies = { + { "hrsh7th/nvim-cmp" }, + { "hrsh7th/cmp-nvim-lsp" }, + { "hrsh7th/cmp-buffer" }, + { "hrsh7th/cmp-path" }, + { "hrsh7th/cmp-cmdline" }, + { "f3fora/cmp-spell" }, + { "petertriho/cmp-git" }, + { "Dosx001/cmp-commit" }, + { "kdheepak/cmp-latex-symbols" }, + { "L3MON4D3/LuaSnip" }, + { "saadparwaiz1/cmp_luasnip" }, + { "rafamadriz/friendly-snippets" }, + { "windwp/nvim-autopairs" }, + { "jose-elias-alvarez/null-ls.nvim" }, + { "folke/neodev.nvim" }, + }, + config = function() + require "config.lsp" + require "config.cmp" + end, + }, + { + "nvim-treesitter/nvim-treesitter", + config = function() require "config.treesitter" end, + }, + { + "lewis6991/gitsigns.nvim", + config = function() require "config.gitsigns" end, + }, + { + "nvim-neo-tree/neo-tree.nvim", + branch = "v2.x", + dependencies = { + "nvim-lua/plenary.nvim", + "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended + "MunifTanjim/nui.nvim", + }, + cmd = "Neotree", + config = function() require "config.neotree" end, + }, + { + "nvim-telescope/telescope.nvim", + branch = "0.1.x", + dependencies = { + { "nvim-lua/plenary.nvim" }, + { + "nvim-telescope/telescope-fzf-native.nvim", + build = "make", + }, + }, + cmd = "Telescope", + config = function() require "config.telescope" end, + }, + { + "folke/trouble.nvim", + dependencies = "nvim-tree/nvim-web-devicons", + cmd = "TroubleToggle", + config = function() require "config.trouble" end, + }, + { + "lukas-reineke/indent-blankline.nvim", + config = function() require "config.indent_blankline" end, + }, + { + "numToStr/Navigator.nvim", + config = function() require("Navigator").setup() end, + }, + { + "klen/nvim-test", + config = function() require "config.nvim-test" end, + }, + { + "numToStr/Comment.nvim", + name = "Comment", + config = function() require "Comment" end, + }, } return M diff --git a/config/nvim/lua/vimcommands.lua b/config/nvim/lua/vimcommands.lua index d168b703..42c7221c 100644 --- a/config/nvim/lua/vimcommands.lua +++ b/config/nvim/lua/vimcommands.lua @@ -1,6 +1,6 @@ -- TODO convert to lua -vim.cmd("let &t_ut=''") -- For kitty background colour support -vim.cmd([[ +vim.cmd "let &t_ut=''" -- For kitty background colour support +vim.cmd [[ au BufRead,BufNewFile *.ipynb setlocal filetype=json au BufRead,BufNewFile *.md setlocal spell au BufRead,BufNewFile *.code-workspace setlocal filetype=json @@ -8,4 +8,4 @@ au BufRead,BufNewFile *.csv setlocal nowrap au BufRead,BufNewFile *.service[a-zA-Z0-9]* setlocal filetype=systemd au TermOpen * setlocal nonumber norelativenumber syntax on -]]) +]]