Update settings

This commit is contained in:
Saeed Afzal
2024-04-12 23:54:07 +01:00
parent 088c1e113d
commit 100ea186dd
20 changed files with 128 additions and 814 deletions

View File

@@ -1,33 +0,0 @@
return {
"hrsh7th/nvim-cmp",
event = "InsertEnter",
dependencies = {
"hrsh7th/cmp-nvim-lsp",
"hrsh7th/cmp-buffer",
"L3MON4D3/LuaSnip",
"saadparwaiz1/cmp_luasnip"
},
config = function()
local cmp = require("cmp")
cmp.setup {
snippet = {
expand = function(args)
require("luasnip").lsp_expand(args.body)
end
},
sources = {
{ name = "nvim_lsp" },
{ name = "luasnip" }
},
mapping = cmp.mapping.preset.insert({
["<C-Space>"] = cmp.mapping.complete(),
["<C-u>"] = cmp.mapping.scroll_docs(-4),
["<C-d>"] = cmp.mapping.scroll_docs(4),
["<CR>"] = cmp.mapping.confirm({ select = true }),
["<Tab>"] = cmp.mapping.select_next_item(),
["<S-Tab>"] = cmp.mapping.select_prev_item()
})
}
end
}

View File

@@ -1,14 +0,0 @@
return {
"ray-x/go.nvim",
dependencies = {
"ray-x/guihua.lua",
"neovim/nvim-lspconfig",
"nvim-treesitter/nvim-treesitter"
},
config = function()
require("go").setup()
end,
event = "CmdlineEnter",
ft = { "go", "gomod" },
build = ":lua require('go.install').update_all_sync()"
}

View File

@@ -1,61 +1,13 @@
return {
"LunarVim/bigfile.nvim",
"wakatime/vim-wakatime",
"j-morano/buffer_manager.nvim",
"rcarriga/nvim-notify",
-- NOTE: Plugins
{
"lukas-reineke/indent-blankline.nvim",
event = "BufEnter",
main = "ibl",
config = true
},
{
"lewis6991/gitsigns.nvim",
event = "BufEnter",
config = true
},
{
"NeogitOrg/neogit",
dependencies = {
"nvim-lua/plenary.nvim",
"sindrets/diffview.nvim",
"nvim-telescope/telescope.nvim"
},
config = true
},
-- NOTE: LSP
{
"windwp/nvim-autopairs",
event = "InsertEnter",
config = true
},
{
"ray-x/lsp_signature.nvim",
dependencies = "neovim/nvim-lspconfig",
config = true
},
{
"numToStr/Comment.nvim",
"folke/tokyonight.nvim",
lazy = false,
config = true
},
-- NOTE: Flutter
{
"akinsho/flutter-tools.nvim",
lazy = false,
dependencies = {
"nvim-lua/plenary.nvim",
"stevearc/dressing.nvim"
},
config = true
priority = 1000,
opts = {
style = "night",
transparent = true
}
}
}

View File

@@ -1,24 +0,0 @@
return {
"williamboman/mason-lspconfig.nvim",
dependencies = {
"williamboman/mason.nvim",
"neovim/nvim-lspconfig",
"hrsh7th/cmp-nvim-lsp"
},
config = function()
local lspconfig = require("lspconfig")
local lsp_capabilities = require("cmp_nvim_lsp").default_capabilities()
local defaultSetup = function(server)
lspconfig[server].setup {
capabilities = lsp_capabilities
}
end
require("mason").setup()
require("mason-lspconfig").setup {
ensure_installed = {},
handlers = { defaultSetup }
}
end
}

View File

@@ -1,227 +0,0 @@
return {
"nvim-lualine/lualine.nvim",
dependencies = "nvim-tree/nvim-web-devicons",
config = function()
-- Eviline config for lualine
-- Author: shadmansaleh
-- Credit: glepnir
local lualine = require("lualine")
-- Color table for highlights
-- stylua: ignore
local colors = {
bg = "#202328",
fg = "#bbc2cf",
yellow = "#ECBE7B",
cyan = "#008080",
darkblue = "#081633",
green = "#98be65",
orange = "#FF8800",
violet = "#a9a1e1",
magenta = "#c678dd",
blue = "#51afef",
red = "#ec5f67",
}
local conditions = {
buffer_not_empty = function()
return vim.fn.empty(vim.fn.expand("%:t")) ~= 1
end,
hide_in_width = function()
return vim.fn.winwidth(0) > 80
end,
check_git_workspace = function()
local filepath = vim.fn.expand("%:p:h")
local gitdir = vim.fn.finddir(".git", filepath .. ";")
return gitdir and #gitdir > 0 and #gitdir < #filepath
end,
}
-- Config
local config = {
options = {
-- Disable sections and component separators
component_separators = "",
section_separators = "",
theme = {
-- We are going to use lualine_c an lualine_x as left and
-- right section. Both are highlighted by c theme . So we
-- are just setting default looks o statusline
normal = { c = { fg = colors.fg, bg = colors.bg } },
inactive = { c = { fg = colors.fg, bg = colors.bg } },
},
},
sections = {
-- these are to remove the defaults
lualine_a = {},
lualine_b = {},
lualine_y = {},
lualine_z = {},
-- These will be filled later
lualine_c = {},
lualine_x = {},
},
inactive_sections = {
-- these are to remove the defaults
lualine_a = {},
lualine_b = {},
lualine_y = {},
lualine_z = {},
lualine_c = {},
lualine_x = {},
},
}
-- Inserts a component in lualine_c at left section
local function ins_left(component)
table.insert(config.sections.lualine_c, component)
end
-- Inserts a component in lualine_x at right section
local function ins_right(component)
table.insert(config.sections.lualine_x, component)
end
ins_left {
function()
return ""
end,
color = { fg = colors.blue }, -- Sets highlighting of component
padding = { left = 0, right = 1 }, -- We don"t need space before this
}
ins_left {
-- mode component
function()
return ""
end,
color = function()
-- auto change color according to neovims mode
local mode_color = {
n = colors.red,
i = colors.green,
v = colors.blue,
[""] = colors.blue,
V = colors.blue,
c = colors.magenta,
no = colors.red,
s = colors.orange,
S = colors.orange,
[""] = colors.orange,
ic = colors.yellow,
R = colors.violet,
Rv = colors.violet,
cv = colors.red,
ce = colors.red,
r = colors.cyan,
rm = colors.cyan,
["r?"] = colors.cyan,
["!"] = colors.red,
t = colors.red,
}
return { fg = mode_color[vim.fn.mode()] }
end,
padding = { right = 1 },
}
ins_left {
-- filesize component
"filesize",
cond = conditions.buffer_not_empty,
}
ins_left {
"filename",
cond = conditions.buffer_not_empty,
color = { fg = colors.magenta, gui = "bold" },
}
ins_left { "location" }
ins_left { "progress", color = { fg = colors.fg, gui = "bold" } }
ins_left {
"diagnostics",
sources = { "nvim_diagnostic" },
symbols = { error = "", warn = "", info = "" },
diagnostics_color = {
color_error = { fg = colors.red },
color_warn = { fg = colors.yellow },
color_info = { fg = colors.cyan },
},
}
-- Insert mid section. You can make any number of sections in neovim :)
-- for lualine it"s any number greater then 2
ins_left {
function()
return "%="
end,
}
ins_left {
-- Lsp server name .
function()
local msg = "No Active Lsp"
local buf_ft = vim.api.nvim_buf_get_option(0, "filetype")
local clients = vim.lsp.get_active_clients()
if next(clients) == nil then
return msg
end
for _, client in ipairs(clients) do
local filetypes = client.config.filetypes
if filetypes and vim.fn.index(filetypes, buf_ft) ~= -1 then
return client.name
end
end
return msg
end,
icon = " LSP:",
color = { fg = "#ffffff", gui = "bold" },
}
-- Add components to right sections
ins_right {
"o:encoding", -- option component same as &encoding in viml
fmt = string.upper, -- I"m not sure why it"s upper case either ;)
cond = conditions.hide_in_width,
color = { fg = colors.green, gui = "bold" },
}
ins_right {
"fileformat",
fmt = string.upper,
icons_enabled = true, -- I think icons are cool but Eviline doesn't have them. sigh
color = { fg = colors.green, gui = "bold" },
}
ins_right {
"branch",
icon = "",
color = { fg = colors.violet, gui = "bold" },
}
ins_right {
"diff",
-- Is it me or the symbol for modified us really weird
symbols = { added = "", modified = "󰝤 ", removed = "" },
diff_color = {
added = { fg = colors.green },
modified = { fg = colors.orange },
removed = { fg = colors.red },
},
cond = conditions.hide_in_width,
}
ins_right {
function()
return ""
end,
color = { fg = colors.blue },
padding = { left = 1 },
}
-- Now don't forget to initialize lualine
lualine.setup(config)
end
}

View File

@@ -1,20 +0,0 @@
return {
"nvim-neorg/neorg",
build = ":Neorg sync-parsers",
dependencies = "nvim-lua/plenary.nvim",
opts = {
load = {
["core.defaults"] = {},
["core.concealer"] = {},
["core.dirman"] = {
config = {
workspaces = {
notes = "~/Sync/Neorg",
work = "~/Sync/Work"
},
default_workspace = "notes"
}
}
}
}
}

View File

@@ -1,56 +0,0 @@
return {
"nvim-neo-tree/neo-tree.nvim",
branch = "v3.x",
dependencies = {
"nvim-lua/plenary.nvim",
"nvim-tree/nvim-web-devicons",
"MunifTanjim/nui.nvim",
"3rd/image.nvim"
},
cmd = "Neotree",
opts = {
filesystem = {
filtered_items = {
hide_dotfiles = false
}
},
window = {
position = "current",
mappings = {
["Y"] = function(state)
local node = state.tree:get_node()
local filepath = node:get_id()
local filename = node.name
local modify = vim.fn.fnamemodify
local results = {
filepath,
modify(filepath, ':.'),
modify(filepath, ':~'),
filename,
modify(filename, ':r'),
modify(filename, ':e'),
}
vim.ui.select({
'1. Absolute path: ' .. results[1],
'2. Path relative to CWD: ' .. results[2],
'3. Path relative to HOME: ' .. results[3],
'4. Filename: ' .. results[4],
'5. Filename without extension: ' .. results[5],
'6. Extension of the filename: ' .. results[6],
}, { prompt = 'Choose to copy to clipboard:' }, function(choice)
if choice then
local i = tonumber(choice:sub(1, 1))
local result = results[i]
vim.fn.setreg('"+', result)
vim.notify("Copied: " .. result)
end
end)
end
}
}
}
}

View File

@@ -1,29 +0,0 @@
return {
"nvim-telescope/telescope.nvim",
tag = "0.1.5",
dependencies = {
"nvim-lua/plenary.nvim",
{
"nvim-telescope/telescope-fzf-native.nvim",
build = "make"
}
},
config = function()
local telescope = require("telescope")
telescope.setup {
defaults = {
layout_config = {
vertical = { width = 0.75 }
}
},
pickers = {
fd = { layout_strategy = "vertical" },
live_grep = { layout_strategy = "vertical" },
current_buffer_fuzzy_find = { layout_strategy = "vertical" }
}
}
telescope.load_extension("fzf")
end
}

View File

@@ -1,11 +0,0 @@
return {
"akinsho/toggleterm.nvim",
version = "*",
opts = {
open_mapping = [[<c-t>]],
direction = "float",
float_opts = {
border = "curved"
}
}
}

View File

@@ -1,8 +0,0 @@
return {
"folke/tokyonight.nvim",
lazy = false,
priority = 1000,
config = function()
vim.cmd[[colorscheme tokyonight-night]]
end
}

View File

@@ -1,31 +0,0 @@
return {
"nvim-treesitter/nvim-treesitter",
dependencies = {
{ "windwp/nvim-ts-autotag", config = true }
},
build = ":TSUpdate",
config = function()
local configs = require("nvim-treesitter.configs")
configs.setup {
ensure_installed = { "lua" },
highlight = { enable = true },
indent = {
enable = true,
disable = { "dart" }
},
autotag = { enable = true }
}
end,
opts = {
ensure_installed = { "lua" },
auto_install = true,
highlight = { enable = true },
indent = { enable = true },
autotag = { enable = true }
}
}

View File

@@ -1,80 +0,0 @@
local function config()
local wk = require("which-key")
wk.register({
["<leader>"] = {
-- Finders
f = {
name = "Finders",
f = { "<cmd>Telescope fd<CR>", "Find files" },
w = { "<cmd>Telescope live_grep<CR>", "Text grep" },
s = { "<cmd>Telescope spell_suggest<CR>", "Spell suggest" },
t = { "<cmd>TodoTelescope<CR>", "Todos" },
b = { "<cmd>Telescope buffers<CR>", "Buffers" },
["."] = { "<cmd>Telescope keymaps<CR>", "Keymaps" }
},
-- Git
g = {
name = "Git",
b = { "<cmd>Gitsigns blame_line<CR>", "Blame line" },
d = { "<cmd>Gitsigns diffthis<CR>", "Diff" },
D = { "<cmd>DiffviewOpen<CR>", "Diff view & merge tool" },
C = { "<cmd>DiffviewClose<CR>", "Close diffview & merge tool" }
},
-- LSP
l = {
name = "LSP",
f = { "<cmd>lua vim.lsp.buf.format { async = true }<CR>", "Format" },
a = { "<cmd>lua vim.lsp.buf.code_action()<CR>", "Code Action" },
r = { "<cmd>lua vim.lsp.buf.rename()<CR>", "Rename" }
},
-- Buffers
b = { "<cmd>lua require('buffer_manager.ui').toggle_quick_menu()<CR>", "Buffer Manager" },
-- Misc
h = { "<cmd>noh<CR>", "No highlight" },
s = { "<cmd>SymbolsOutline<CR>", "Symbols outline" },
-- Terminal
t = {
t = { "<cmd>ToggleTerm size=40 direction=horizontal<CR>", "Horizontal Terminal" }
},
T = { "<cmd>TroubleToggle<CR>", "Toggle trouble" }
},
g = {
d = { "<cmd>lua vim.lsp.buf.definition()<CR>", "definition" },
t = { "<cmd>lua vim.lsp.buf.type_definition()<CR>", "type definition" }
},
-- Find in file
["<C-f>"] = { "<cmd>Telescope current_buffer_fuzzy_find<CR>", "Find in file" },
-- Neotree
["<C-n>"] = { "<cmd>Neotree reveal_force_cwd<CR>", "Neotree" },
-- Misc
K = { "<cmd>lua vim.lsp.buf.hover()<CR>", "Hover" }
})
end
return {
"folke/which-key.nvim",
event = "VeryLazy",
init = function()
local o = vim.o
o.timeout = true
o.timeoutlen = 300
end,
config = config,
opts = {
ignore_missing = true,
key_labels = {
["<space>"] = "SPC"
}
}
}