Compare commits

..

16 Commits

Author SHA1 Message Date
e480f27f70 some changes 2025-01-04 19:47:00 +01:00
54860e1f3b fixing neogit + trying new plugins 2024-05-31 18:03:12 +02:00
2218802114 Improving mini config 2024-05-18 00:52:49 +02:00
c32d895f9b New mini.nvim plugins and cleanup 2024-05-18 00:37:07 +02:00
9406f6d742 Adding .luarc.json and cleaning up plugins.lua 2024-05-17 20:28:40 +02:00
69e87e7d77 Updating harpoon config + migrating to codeium 2024-04-26 20:55:48 +02:00
aa3f06a77f Merge branch 'master' of git.nussnougate.net:sevi-kun/nvim 2024-04-15 22:26:13 +02:00
9e50fa629a refining plugins.lua 2024-04-15 22:26:09 +02:00
0009f09e82 Updating treesitter config
Removing unneeded, adding all languages and fixing php indent
2024-02-28 14:48:36 +01:00
ae1e337895 Highlight current line 2024-01-11 12:41:46 +01:00
947d04c265 fix harpoon - lazy - version to branch 2024-01-11 12:37:33 +01:00
3d987091c6 remove neorg as not needed 2024-01-10 22:53:36 +01:00
05fa907bbf migrate from packer to lazy 2023-12-02 16:51:36 +01:00
221eadd375 Merge branch 'master' of git.nussnougate.net:sevi-kun/nvim 2023-09-08 19:14:10 +02:00
d03873fe01 fixing telescope for neovim nightly 2023-09-08 19:13:57 +02:00
e472cf0c13 Disabeling shitty wrap...
Need to find a different solution for wrap in lsp messages
2023-09-06 17:08:06 +02:00
19 changed files with 409 additions and 251 deletions

2
.gitignore vendored
View File

@ -1 +1,3 @@
plugin/packer_compiled.lua
lazy-lock.json

13
.luarc.json Executable file
View File

@ -0,0 +1,13 @@
{
"runtime.version": "LuaJIT",
"runtime.path": [
"lua/?.lua",
"lua/?/init.lua"
],
"diagnostics.globals": ["vim"],
"workspace.checkThirdParty": false,
"workspace.library": [
"$VIMRUNTIME",
"./lua"
]
}

View File

@ -1,23 +1,12 @@
-- Close brackets
local config = {
keys = {
["("] = { escape = false, close = true, pair = "()", disabled_filetypes = {} },
["["] = { escape = false, close = true, pair = "[]", disabled_filetypes = {} },
["{"] = { escape = false, close = true, pair = "{}", disabled_filetypes = {} },
local autoclose = require("autoclose")
[">"] = { escape = true, close = false, pair = "<>", disabled_filetypes = {} },
[")"] = { escape = true, close = false, pair = "()", disabled_filetypes = {} },
["]"] = { escape = true, close = false, pair = "[]", disabled_filetypes = {} },
["}"] = { escape = true, close = false, pair = "{}", disabled_filetypes = {} },
autoclose.setup({
options = {
disabled_filetypes = { "text", "markdown", "neogit", },
disable_when_touch = true,
pair_spaces = true,
auto_indent = true,
disable_command_mode = true,
},
})
['"'] = { escape = true, close = true, pair = '""', disabled_filetypes = {} },
["'"] = { escape = true, close = true, pair = "''", disabled_filetypes = {} },
["`"] = { escape = true, close = true, pair = "``", disabled_filetypes = {} },
},
options = {
disabled_filetypes = { "text", "markdown", "norg" },
disable_when_touch = false,
pair_spaces = false,
auto_indent = true,
},
}

View File

@ -19,7 +19,7 @@ require("barbecue").setup({
---modified.
---
---@type boolean
show_modified = false,
show_modified = true,
---Get modified status of file.
---

View File

@ -1,11 +1,44 @@
-- fast switching between files
local mark = require("harpoon.mark")
local ui = require("harpoon.ui")
local harpoon = require("harpoon")
vim.keymap.set("n", "<leader>a", mark.add_file)
vim.keymap.set("n", "<leader>h", ui.toggle_quick_menu)
-- REQUIRED
harpoon:setup({})
-- REQUIRED
--
-- basic telescope configuration
local conf = require("telescope.config").values
local function toggle_telescope(harpoon_files)
local file_paths = {}
for _, item in ipairs(harpoon_files.items) do
table.insert(file_paths, item.value)
end
require("telescope.pickers").new({}, {
prompt_title = "Harpoon",
finder = require("telescope.finders").new_table({
results = file_paths,
}),
previewer = conf.file_previewer({}),
sorter = conf.generic_sorter({}),
}):find()
end
vim.keymap.set("n", "<leader>H", function() toggle_telescope(harpoon:list()) end,
{ desc = "Open harpoon in telescope" })
vim.keymap.set("n", "<leader>a", function() harpoon:list():add() end,
{ desc = "Harpoon: Add current buffer" })
vim.keymap.set("n", "<leader>hh", function() harpoon.ui:toggle_quick_menu(harpoon:list()) end,
{ desc = "Harpoon: Toggle quick menu" })
vim.keymap.set("n", "<C-h>", function() harpoon:list():select(1) end)
vim.keymap.set("n", "<C-j>", function() harpoon:list():select(2) end)
vim.keymap.set("n", "<C-k>", function() harpoon:list():select(3) end)
vim.keymap.set("n", "<C-l>", function() harpoon:list():select(4) end)
-- Toggle previous & next buffers stored within Harpoon list
vim.keymap.set("n", "<leader>hp", function() harpoon:list():prev() end,
{ desc = "Harpoon: Previous buffer" })
vim.keymap.set("n", "<leader>hn", function() harpoon:list():next() end,
{ desc = "Harpoon: Next buffer" })
vim.keymap.set("n", "<C-h>", function() ui.nav_file(1) end)
vim.keymap.set("n", "<C-j>", function() ui.nav_file(2) end)
vim.keymap.set("n", "<C-k>", function() ui.nav_file(3) end)
vim.keymap.set("n", "<C-l>", function() ui.nav_file(4) end)

View File

@ -1,11 +1,22 @@
-- language server manager (via Mason)
local lsp = require('lsp-zero').preset({})
local lsp_zero = require("lsp-zero")
lsp.on_attach(function(client, bufnr)
lsp.default_keymaps({buffer = bufnr})
lsp_zero.on_attach(function(client, bufnr)
-- see :help lsp-zero-keybindings
-- to learn the available actions
lsp_zero.default_keymaps({buffer = bufnr})
end)
-- (Optional) Configure lua language server for neovim
require('lspconfig').lua_ls.setup(lsp.nvim_lua_ls())
require("mason").setup({})
require("mason-lspconfig").setup({
ensure_installed = {},
handlers = {
lsp_zero.default_setup,
},
})
local codeium = require("codeium")
codeium.setup({
enable_chat = true,
})
lsp.setup()

48
after/plugin/mini.lua Normal file
View File

@ -0,0 +1,48 @@
-- Configuration of mini.nvim plugins
-- mini.map
local map = require("mini.map")
map.setup({
symbols = {
encode = map.gen_encode_symbols.dot("3x2")
},
window = {
width = 16,
show_integration_count = false
},
integrations = {
map.gen_integration.diagnostic({
error = "DiagnosticFloatingError",
warn = "DiagnosticFloatingWarn",
info = "DiagnosticFloatingInfo",
hint = "DiagnosticFloatingHint",
}),
map.gen_integration.builtin_search(),
},
})
vim.keymap.set("n", "<Leader>mf", map.toggle_focus)
vim.keymap.set("n", "<Leader>mr", map.refresh)
vim.keymap.set("n", "<Leader>mt", map.toggle)
-- mini.animate
local animate = require("mini.animate")
animate.setup({
cursor = {
timing = animate.gen_timing.linear({ duration = 150, unit = "total" })
},
scroll = {
timing = animate.gen_timing.linear({ duration = 150, unit = "total" })
},
resize = {
timing = animate.gen_timing.linear({ duration = 150, unit = "total" })
},
open = {
timing = animate.gen_timing.linear({ duration = 150, unit = "total" })
},
close = {
timing = animate.gen_timing.linear({ duration = 150, unit = "total" })
},
})

View File

@ -1,7 +0,0 @@
-- Note keymaps
vim.keymap.set("n", "<leader>ni", ":Neorg index<CR>")
vim.keymap.set("n", "<leader>nr", ":Neorg return<CR>")
vim.keymap.set("n", "<leader>nj", ":Neorg journal custom<CR>")
vim.keymap.set("n", "<leader>nim", ":Neorg inject-metadata<CR>")
vim.keymap.set("n", "<leader>nis", ":Neorg inject-metadata<CR>")

6
after/plugin/notes.lua Normal file
View File

@ -0,0 +1,6 @@
-- Configuration of note taking setup
local mkdnflow = require("mkdnflow")
mkdnflow.setup({
wrap = true
})

View File

@ -1,4 +1,4 @@
require('oil').setup({
require("oil").setup({
default_file_explorer = false,
columns = {
@ -10,8 +10,8 @@ require('oil').setup({
float = {
-- Padding around the floating window
padding = 8,
max_width = 80,
padding = 12,
max_width = 120,
max_height = 64,
border = "rounded",
win_options = {
@ -22,23 +22,7 @@ require('oil').setup({
override = function(conf)
return conf
end,
},
keymaps = {
["g?"] = "actions.show_help",
["<CR>"] = "actions.select",
["<C-s>"] = "actions.select_vsplit",
["<C-h>"] = "actions.select_split",
["<C-t>"] = "actions.select_tab",
["<C-p>"] = "actions.preview",
["<Esc>"] = "actions.close",
["<C-r>"] = "actions.refresh",
["-"] = "actions.parent",
["_"] = "actions.open_cwd",
["`"] = "actions.cd",
["~"] = "actions.tcd",
["g."] = "actions.toggle_hidden",
},
}
})
vim.keymap.set('n', '<leader>-', ":Oil --float <CR>")
vim.keymap.set("n", "<leader>-", ":Oil --float <CR>")

View File

@ -1,13 +1,10 @@
require("auto-session").setup {
log_level = "error",
auto_session_suppress_dirs = { "~/", "~/Projects", "~/Downloads", "/"},
}
require('session-lens').setup({
path_display = {'shorten'},
theme_conf = { border = true },
previewer = false,
})
vim.keymap.set('n', '<leader>ss', ":SearchSession<CR>")
sessions = require("seshmgr")
sessions.setup({
session_dir = os.getenv("HOME") .. "/.nvim/sessions",
telescope = {
enabled = true,
keymap = "<leader>ss",
},
})

View File

@ -1,7 +1,7 @@
-- finding files in working dir and repo
local builtin = require('telescope.builtin')
vim.keymap.set('n', '<leader>ff', builtin.find_files, {})
vim.keymap.set('n', '<leader>pf', builtin.git_files, {})
vim.keymap.set('n', '<leader>ps', function()
local builtin = require("telescope.builtin")
vim.keymap.set("n", "<leader>ff", builtin.find_files, {})
vim.keymap.set("n", "<leader>pf", builtin.git_files, {})
vim.keymap.set("n", "<leader>ps", function()
builtin.grep_string({ search = vim.fn.input("Grep > ") });
end)

View File

@ -1,23 +1,32 @@
-- parsing and highlighting
require'nvim-treesitter.configs'.setup {
-- A list of parser names, or "all" (the five listed parsers should always be installed)
ensure_installed = { "python", "javascript", "php", "typescript", "c", "rust", "bash", "lua", "vim", "vimdoc", "query" },
require"nvim-treesitter.configs".setup {
-- A list of parser names, or "all" (the five listed parsers should always be installed)
-- Install parsers synchronously (only applied to `ensure_installed`)
sync_install = false,
ensure_installed = "all",
-- Install parsers synchronously (only applied to `ensure_installed`)
sync_install = false,
-- Automatically install missing parsers when entering buffer
-- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally
auto_install = true,
highlight = {
enable = true,
-- Automatically install missing parsers when entering buffer
-- Recommendation: set to false if you don"t have `tree-sitter` CLI installed locally
auto_install = true,
-- Setting this to true will run `:h syntax` and tree-sitter at the same time.
-- Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
-- Using this option may slow down your editor, and you may see some duplicate highlights.
-- Instead of true it can also be a list of languages
additional_vim_regex_highlighting = false,
},
incremental_selection = {
enable = true,
keymaps = {
init_selection = "gnn",
node_incremental = "grn",
scope_incremental = "grc",
node_decremental = "grm",
},
},
highlight = {
enable = true,
},
-- Needed because treesitter highlight turns off autoindent for php files
indent = {
enable = true,
},
}

View File

@ -1,2 +1,7 @@
-- advanced undo history
vim.keymap.set("n", "<leader>u", vim.cmd.UndotreeToggle)
vim.opt.undodir = os.getenv("HOME") .. "/.nvim/undodir"
vim.opt.swapfile = false
vim.opt.backup = false
vim.opt.undofile = true

View File

@ -1 +1,16 @@
require("sevi-kun")
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({
"git",
"clone",
"--filter=blob:none",
"https://github.com/folke/lazy.nvim.git",
"--branch=stable", -- latest stable release
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
require("lazy").setup("sevi-kun.plugins")

View File

@ -1,142 +0,0 @@
-- This file can be loaded by calling `lua require('plugins')` from your init.vim
-- Only required if you have packer configured as `opt`
vim.cmd [[packadd packer.nvim]]
return require('packer').startup(function(use)
-- Packer can manage itself
use 'wbthomason/packer.nvim'
-- treesitter
use ('nvim-treesitter/nvim-treesitter', {run = ':TSUpdate'})
use ('nvim-treesitter/playground')
use ('nvim-treesitter/nvim-treesitter-context')
-- useful
use { 'rmagatti/auto-session' }
use {
'rmagatti/session-lens',
requires = {'rmagatti/auto-session', 'nvim-telescope/telescope.nvim'},
}
use {
'nvim-telescope/telescope.nvim', tag = '0.1.2',
requires = 'nvim-lua/plenary.nvim'
}
use {
'ThePrimeagen/harpoon',
requires = 'nvim-lua/plenary.nvim'
}
use {
'NeogitOrg/neogit',
requires = 'nvim-lua/plenary.nvim'
}
use { 'stevearc/oil.nvim' }
use {
"nvim-neorg/neorg",
tag = "*",
run = ":Neorg sync-parsers",
requires = "nvim-lua/plenary.nvim",
config = function ()
require('neorg').setup {
load = {
["core.defaults"] = {},
["core.concealer"] = {},
["core.summary"] = {},
["core.export"] = {},
["core.export.markdown"] = {},
["core.ui"] = {},
["core.ui.calendar"] = {},
["core.dirman"] = {
config = {
workspaces = {
notes = os.getenv("LOCALAPPDATA") .. "\\nvim-data\\Notes",
},
default_workspace = "notes",
},
},
},
}
end
}
use({
"kylechui/nvim-surround",
tag = "*", -- Use for stability; omit to use `main` branch for the latest features
config = function()
require("nvim-surround").setup()
end
})
use {
'numToStr/Comment.nvim',
config = function()
require('Comment').setup()
end
}
use ('mbbill/undotree')
use {
'm4xshen/autoclose.nvim',
config = function ()
require("autoclose").setup()
end
}
-- pretty
use {
"loctvl842/monokai-pro.nvim",
config = function()
require("monokai-pro").setup()
vim.cmd([[colorscheme monokai-pro]])
end
}
use { "lukas-reineke/indent-blankline.nvim" }
use {
"utilyre/barbecue.nvim", tag = "*",
requires = {
"SmiteshP/nvim-navic",
"nvim-tree/nvim-web-devicons", -- optional dependency
},
after = "nvim-web-devicons", -- keep this if you're using NvChad
config = function()
require("barbecue").setup()
end,
}
-- lsp
use ('github/copilot.vim')
use {
'VonHeikemen/lsp-zero.nvim',
branch = 'v2.x',
requires = {
-- LSP Support
{'neovim/nvim-lspconfig'}, -- Required
{ -- Optional
'williamboman/mason.nvim',
run = function()
pcall(vim.cmd, 'MasonUpdate')
end,
},
{'williamboman/mason-lspconfig.nvim'}, -- Optional
-- Autocompletion
{'hrsh7th/nvim-cmp'}, -- Required
{'hrsh7th/cmp-nvim-lsp'}, -- Required
{'L3MON4D3/LuaSnip'}, -- Required
}
}
end)

199
lua/sevi-kun/plugins.lua Normal file
View File

@ -0,0 +1,199 @@
-- lazy.nvim plugins
return {
-- treesitter
{ "nvim-treesitter/nvim-treesitter",
build = ":TSUpdate"
},
{ "nvim-treesitter/playground" },
{ "nvim-treesitter/nvim-treesitter-context" },
-- useful
--{ dir = "/mnt/nas_belar/code/vim-plugins/narrator.nvim" },
{ "nvim-telescope/telescope.nvim",
version = "0.1.x",
dependencies = { "nvim-lua/plenary.nvim" }
},
{ "mackeper/SeshMgr.nvim",
event = "VeryLazy"
},
{ "ThePrimeagen/harpoon",
branch = "harpoon2",
dependencies = { "nvim-lua/plenary.nvim" },
},
{ "ThePrimeagen/refactoring.nvim",
dependencies = {
"nvim-lua/plenary.nvim",
"nvim-treesitter/nvim-treesitter",
},
lazy = false,
config = function()
require("refactoring").setup()
end,
},
{ "NeogitOrg/neogit",
branch = "master",
dependencies = {
"nvim-lua/plenary.nvim",
"sindrets/diffview.nvim",
"nvim-telescope/telescope.nvim",
}
},
{ "stevearc/oil.nvim",
dependencies = { "nvim-tree/nvim-web-devicons" }
},
{ "kylechui/nvim-surround",
version = "*",
event = "VeryLazy",
config = function()
require("nvim-surround").setup()
end
},
{ "mbbill/undotree" },
{ "m4xshen/autoclose.nvim" },
-- Notes
{ "jbyuki/nabla.nvim",
dependencies = { "nvim-treesitter/nvim-treesitter" }
},
{ "jakewvincent/mkdnflow.nvim" },
-- pretty
{ "navarasu/onedark.nvim",
lazy = false,
priority = 1000,
config = function()
vim.cmd("colorscheme onedark")
end
},
{ "lukas-reineke/indent-blankline.nvim",
lazy = false,
main = "ibl",
opts = {},
config = function()
require("ibl").setup({})
end
},
{ "utilyre/barbecue.nvim",
lazy = false,
name = "barbecue",
version = "*",
dependencies = {
"SmiteshP/nvim-navic",
"nvim-tree/nvim-web-devicons",
},
},
-- mini
{ "echasnovski/mini.basics",
version = false,
config = function()
require("mini.basics").setup()
end
},
{ "echasnovski/mini.ai",
version = false,
config = function()
require("mini.ai").setup()
end
},
{ "echasnovski/mini.comment",
version = false,
config = function()
require("mini.comment").setup()
end
},
{ "echasnovski/mini.map",
version = false,
},
{ "echasnovski/mini.statusline",
version = false,
config = function()
require("mini.statusline").setup()
end
},
{ "echasnovski/mini.animate",
version = false,
config = function()
require("mini.animate").setup()
end
},
{ "echasnovski/mini.fuzzy",
version = false,
config = function()
require("mini.fuzzy").setup()
end
},
{ "echasnovski/mini.splitjoin",
version = false,
config = function()
require("mini.splitjoin").setup()
end
},
-- Style Checker
{ "averms/black-nvim" },
-- trouble
{ "folke/trouble.nvim",
branch = "dev",
},
-- lsp
{ "Exafunction/codeium.nvim",
dependencies = {
"nvim-lua/plenary.nvim",
"hrsh7th/nvim-cmp",
},
},
{ "neoclide/coc.nvim",
branch = "release"
},
{ "williamboman/mason.nvim",
config = function()
require("mason").setup({})
end
},
{ "williamboman/mason-lspconfig.nvim" },
{ "VonHeikemen/lsp-zero.nvim", branch = "v3.x" },
{ "neovim/nvim-lspconfig" },
{ "hrsh7th/cmp-nvim-lsp" },
{ "hrsh7th/nvim-cmp" },
{ "L3MON4D3/LuaSnip" },
}

View File

@ -5,8 +5,6 @@ vim.keymap.set("n", "<leader>.", vim.cmd.Ex)
vim.keymap.set("n", "<C-b>", ":e #<CR>")
vim.keymap.set("n", "<C-b>w", ":wq<CR>")
vim.keymap.set("v", "J", ":m '>+1<CR>gv=gv")
vim.keymap.set("v", "K", ":m '<-2<CR>gv=gv")
@ -22,3 +20,5 @@ vim.keymap.set("v", "<leader>y", "\"+y")
vim.keymap.set("n", "<leader>Y", "\"+Y")
vim.keymap.set("n", "<F5>", ":make")
vim.keymap.set("n", "<leader>l", ":noh<CR>")

View File

@ -3,6 +3,7 @@ vim.g.mapleader = " "
vim.opt.nu = true
vim.opt.relativenumber = true
vim.opt.ignorecase = true
vim.opt.cursorline = true
vim.opt.tabstop = 4
vim.opt.softtabstop = 4
@ -11,12 +12,7 @@ vim.opt.expandtab = true
vim.opt.smartindent = true
vim.opt.wrap = true
vim.opt.swapfile = false
vim.opt.backup = false
vim.opt.undodir = os.getenv("LOCALAPPDATA") .. "\\nvim-data\\undodir"
vim.opt.undofile = true
vim.opt.wrap = false
vim.opt.hlsearch = true
vim.opt.incsearch = true
@ -29,7 +25,7 @@ vim.opt.isfname:append("@-@")
vim.opt.updatetime = 50
vim.opt.colorcolumn = "95"
vim.opt.colorcolumn = "80"
vim.g.netrw_preview = 1
vim.g.netrw_liststyle = 3