Clean up init.lua, remove unused plugins, switch to blink.cmp

This commit is contained in:
2025-06-03 17:32:56 -07:00
parent b639f69a3b
commit 619c164096
8 changed files with 95 additions and 160 deletions

View File

@@ -1,116 +1,19 @@
require('config.lazy') require('config.lazy')
local capabilities = require('cmp_nvim_lsp').default_capabilities() vim.lsp.enable(
"rust_analyzer",
-- Set up lspconfig. "clangd",
local lspconfig = require('lspconfig') "jdtls",
local servers = { 'jdtls', 'rust_analyzer', 'csharp_ls', 'html', 'marksman', 'ts_ls', 'clangd', 'cssls', 'tinymist'} "csharp_ls",
for _, lsp in ipairs(servers) do "html",
lspconfig[lsp].setup { "ts_ls",
capabilities = capabilities, "css_ls",
} "tinymist"
end )
lspconfig.pylsp.setup({settings={pylsp={plugins={pylint={enabled = true,}}}}})
local cmp = require('cmp')
cmp.setup({
snippet = {
expand = function(args)
vim.fn["vsnip#anonymous"](args.body)
end,
},
window = {
completion = cmp.config.window.bordered(),
documentation = cmp.config.window.bordered(),
},
-- formatting = {
-- format = require('lspkind').cmp_format(),
-- },
mapping = cmp.mapping.preset.insert({
['<CR>'] = cmp.mapping.confirm {
behavior = cmp.ConfirmBehavior.Replace,
select = true,
},
}),
sources = cmp.config.sources({
{ name = 'nvim_lsp' },
{ name = 'vsnip' },
})
})
require('autoclose').setup{}
require('lualine').setup {
options = {
icons_enabled = true,
theme = 'auto',
component_separators = { left = '', right = ''},
section_separators = { left = '', right = ''},
disabled_filetypes = {
statusline = {},
winbar = {},
},
ignore_focus = {},
always_divide_middle = true,
globalstatus = false,
refresh = {
statusline = 1000,
tabline = 1000,
winbar = 1000,
}
},
sections = {
lualine_a = {{'mode', separator = {left = '', right = ''}, padding = 0}},
lualine_b = {'branch'},
lualine_c = {'diagnostics'},
lualine_x = {},
lualine_y = {'filetype'},
lualine_z = {{'filename', separator = {left = '', right = ''}, padding = 0}}
},
tabline = {},
winbar = {},
inactive_winbar = {},
extensions = {}
}
require('screenkey').setup{}
-- The setup config table shows all available config options with their default values:
require("neocord").setup({
-- General options
logo = "auto", -- "auto" or url
logo_tooltip = nil, -- nil or string
main_image = "language", -- "language" or "logo"
client_id = "1157438221865717891", -- Use your own Discord application client id (not recommended)
log_level = nil, -- Log messages at or above this level (one of the following: "debug", "info", "warn", "error")
debounce_timeout = 10, -- Number of seconds to debounce events (or calls to `:lua package.loaded.presence:update(<filename>, true)`)
blacklist = {}, -- A list of strings or Lua patterns that disable Rich Presence if the current file name, path, or workspace matches
file_assets = {}, -- Custom file asset definitions keyed by file names and extensions (see default config at `lua/presence/file_assets.lua` for reference)
show_time = true, -- Show the timer
global_timer = false, -- if set true, timer won't update when any event are triggered
-- Rich Presence text options
editing_text = "Editing %s", -- Format string rendered when an editable file is loaded in the buffer (either string or function(filename: string): string)
file_explorer_text = "Browsing %s", -- Format string rendered when browsing a file explorer (either string or function(file_explorer_name: string): string)
git_commit_text = "Committing changes", -- Format string rendered when committing changes in git (either string or function(filename: string): string)
plugin_manager_text = "Managing plugins", -- Format string rendered when managing plugins (either string or function(plugin_manager_name: string): string)
reading_text = "Reading %s", -- Format string rendered when a read-only or unmodifiable file is loaded in the buffer (either string or function(filename: string): string)
workspace_text = "Working on %s", -- Format string rendered when in a git repository (either string or function(project_name: string|nil, filename: string): string)
line_number_text = "Line %s out of %s", -- Format string rendered when `enable_line_number` is set to true (either string or function(line_number: number, line_count: number): string)
terminal_text = "Using Terminal", -- Format string rendered when in terminal mode.
})
vim.keymap.set({'n', 'x', 'o'}, ',', vim.diagnostic.open_float) vim.keymap.set({'n', 'x', 'o'}, ',', vim.diagnostic.open_float)
vim.keymap.set({'n', 'x', 'o', 'i'}, '<c-s>', "<cmd>up<cr>") vim.keymap.set({'n', 'x', 'o', 'i'}, '<c-s>', "<cmd>up<cr>")
if vim.g.neovide then
vim.o.guifont = 'ComicShannsMono Nerd Font:h14'
vim.g.neovide_transparency = 0.85
vim.g.neovide_cursor_animation_length = 0.05
vim.g.neovide_cursor_trail_size = 0.5
end
vim.cmd([[ vim.cmd([[
no e <c-r> no e <c-r>
@@ -119,9 +22,7 @@ vim.cmd([[
no A I no A I
no I A no I A
no k o no k o
no <c-f> / no j J
ino <c-v> <esc><c-v>
ino <c-bs> <c-w>
no h <left> no h <left>
no t <up> no t <up>
@@ -132,17 +33,19 @@ vim.cmd([[
no / ^ no / ^
no = <end> no = <end>
ino <c-bs> <c-w>
ino <c-v> <esc><c-v>
no <c-h> <esc> no <c-h> <esc>
ino <c-h> <esc> ino <c-h> <esc>
no <c-t> : no <c-t> :
ino <c-t> <c-o>: ino <c-t> <c-o>:
cno <c-h> <esc> cno <c-h> <esc>
nn <c-b> :bn<enter> no + "
nn <c-u> :UndotreeToggle<enter>
no j J no <c-f> /
nn <enter> :noh<enter> nn <enter> :noh<enter>
nn <c-enter> n nn <c-enter> n
set number set number
set relativenumber set relativenumber
hi LineNr ctermfg=67 hi LineNr ctermfg=67

View File

@@ -1,22 +0,0 @@
{
"autoclose.nvim": { "branch": "main", "commit": "b2077aa2c83df7ebc19b2a20a3a0654b24ae9c8f" },
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
"cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" },
"cmp-vsnip": { "branch": "main", "commit": "989a8a73c44e926199bfd05fa7a516d51f2d2752" },
"codesnap.nvim": { "branch": "main", "commit": "be6d6b9a3b5e6999edbda76b16dace03d9bfcd3d" },
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
"lspkind-nvim": { "branch": "master", "commit": "d53c53d76af05641e2ea7d3f8629019fc9c58aff" },
"lualine.nvim": { "branch": "master", "commit": "15884cee63a8c205334ab13ab1c891cd4d27101a" },
"neocord": { "branch": "main", "commit": "41bacd44e9d36f5e36e0271672ac2c02f6fa355a" },
"nvim": { "branch": "main", "commit": "1bf070129c0b6f77cc23f6a2212dcdc868308c52" },
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
"nvim-colorizer.lua": { "branch": "master", "commit": "a065833f35a3a7cc3ef137ac88b5381da2ba302e" },
"nvim-lspconfig": { "branch": "master", "commit": "4bc481b6f0c0cf3671fc894debd0e00347089a4e" },
"nvim-web-devicons": { "branch": "master", "commit": "2c2b4eafce6cdd0cb165036faa17396eff18f847" },
"screenkey.nvim": { "branch": "main", "commit": "16390931d847b1d5d77098daccac4e55654ac9e2" },
"transparent.nvim": { "branch": "main", "commit": "8a2749a2fa74f97fe6557f61b89ac7fd873f3c21" },
"typst-preview.nvim": { "branch": "master", "commit": "2503b188cd2a17ce44fdd21a944a93335e935215" },
"vim-snippets": { "branch": "master", "commit": "f0a3184d9f90b96b044d5914625a25c554d7f301" },
"vim-vsnip": { "branch": "master", "commit": "0a4b8419e44f47c57eec4c90df17567ad4b1b36e" }
}

View File

@@ -1,3 +1,4 @@
return { return {
'm4xshen/autoclose.nvim', 'm4xshen/autoclose.nvim',
opts = { }
} }

View File

@@ -1,17 +1,48 @@
return { return {
'hrsh7th/nvim-cmp', 'saghen/blink.cmp',
version = false,
lazy = false,
dependencies = { dependencies = {
"neovim/nvim-lspconfig", "neovim/nvim-lspconfig",
"hrsh7th/cmp-nvim-lsp", 'rafamadriz/friendly-snippets'
"hrsh7th/cmp-buffer",
"hrsh7th/lspkind-nvim",
"honza/vim-snippets",
"hrsh7th/vim-vsnip",
"hrsh7th/cmp-vsnip",
"rafamadriz/friendly-snippets"
}, },
init = function()
end -- use a release tag to download pre-built binaries
version = '1.*',
---@module 'blink.cmp'
---@type blink.cmp.Config
opts = {
-- 'default' (recommended) for mappings similar to built-in completions (C-y to accept)
-- 'super-tab' for mappings similar to vscode (tab to accept)
-- 'enter' for enter to accept
-- 'none' for no mappings
--
-- All presets have the following mappings:
-- C-space: Open menu or open docs if already open
-- C-n/C-p or Up/Down: Select next/previous item
-- C-e: Hide menu
-- C-k: Toggle signature help (if signature.enabled = true)
--
-- See :h blink-cmp-config-keymap for defining your own keymap
keymap = { preset = 'enter' },
appearance = {
nerd_font_variant = 'mono'
},
-- (Default) Only show the documentation popup when manually triggered
completion = { documentation = { auto_show = true } },
-- Default list of enabled providers defined so that you can extend it
-- elsewhere in your config, without redefining it, due to `opts_extend`
sources = {
default = { 'lsp', 'snippets' },
},
-- (Default) Rust fuzzy matcher for typo resistance and significantly better performance
-- You may use a lua implementation instead by using `implementation = "lua"` or fallback to the lua implementation,
-- when the Rust fuzzy matcher is not available, by using `implementation = "prefer_rust"`
--
-- See the fuzzy documentation for more information
fuzzy = { implementation = "prefer_rust_with_warning" }
},
opts_extend = { "sources.default" }
} }

View File

@@ -1,5 +0,0 @@
return {
'NStefan002/screenkey.nvim',
lazy = false,
version = "*",
}

View File

@@ -2,5 +2,37 @@ return {
'nvim-lualine/lualine.nvim', 'nvim-lualine/lualine.nvim',
dependencies = { dependencies = {
'nvim-tree/nvim-web-devicons', 'nvim-tree/nvim-web-devicons',
},
opts = {
options = {
icons_enabled = true,
theme = 'auto',
component_separators = { left = '', right = ''},
section_separators = { left = '', right = ''},
disabled_filetypes = {
statusline = {},
winbar = {},
},
ignore_focus = {},
always_divide_middle = true,
globalstatus = false,
refresh = {
statusline = 1000,
tabline = 1000,
winbar = 1000,
}
},
sections = {
lualine_a = {{'mode', separator = {left = '', right = ''}, padding = 0}},
lualine_b = {'branch'},
lualine_c = {'diagnostics'},
lualine_x = {},
lualine_y = {'filetype'},
lualine_z = {{'filename', separator = {left = '', right = ''}, padding = 0}}
},
tabline = {},
winbar = {},
inactive_winbar = {},
extensions = {}
} }
} }

View File

@@ -1,3 +0,0 @@
return {
'IogaMaster/neocord',
}

View File

@@ -1,6 +1,4 @@
return { return {
'chomosuke/typst-preview.nvim', 'chomosuke/typst-preview.nvim',
lazy = false, -- or ft = 'typst'
version = '1.*', version = '1.*',
opts = {}, -- lazy.nvim will implicitly calls `setup {}`
} }