summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Chausse <benjamin@chausse.xyz>2024-05-23 01:06:50 -0400
committerBenjamin Chausse <benjamin@chausse.xyz>2024-05-23 01:06:50 -0400
commit1c0ac26114e249548dfdd270a07bc2336a37b6e2 (patch)
tree67a9a69b8de26b6ecb9008a0d992e865d1fc12c2
parent796db1e83d41d25a277c46c968a168702c1f3eb8 (diff)
Massive simplification
-rw-r--r--init.lua36
-rw-r--r--lua/ben/core/init.lua77
-rw-r--r--lua/ben/lazy.lua26
-rw-r--r--lua/ben/plugins/blamer.lua16
-rw-r--r--lua/ben/plugins/bling.lua7
-rw-r--r--lua/ben/plugins/cmp.lua56
-rw-r--r--lua/ben/plugins/colorizer.lua4
-rw-r--r--lua/ben/plugins/colorscheme.lua41
-rw-r--r--lua/ben/plugins/dressing.lua4
-rw-r--r--lua/ben/plugins/flog.lua11
-rw-r--r--lua/ben/plugins/formatting.lua38
-rw-r--r--lua/ben/plugins/fugitive.lua36
-rw-r--r--lua/ben/plugins/gitignore.lua18
-rw-r--r--lua/ben/plugins/go.lua34
-rw-r--r--lua/ben/plugins/grammalecte.lua21
-rw-r--r--lua/ben/plugins/gutentags.lua8
-rw-r--r--lua/ben/plugins/linting.lua29
-rw-r--r--lua/ben/plugins/lsp.lua246
-rw-r--r--lua/ben/plugins/markdown-preview.lua43
-rw-r--r--lua/ben/plugins/neorg.lua39
-rw-r--r--lua/ben/plugins/nvim-r.lua14
-rw-r--r--lua/ben/plugins/search-highlight.lua7
-rw-r--r--lua/ben/plugins/smoothie.lua4
-rw-r--r--lua/ben/plugins/syntax.lua7
-rw-r--r--lua/ben/plugins/table-mode.lua4
-rw-r--r--lua/ben/plugins/treesitter-text-objects.lua53
-rw-r--r--lua/ben/plugins/treesitter.lua76
-rw-r--r--lua/ben/plugins/undotree.lua8
-rw-r--r--lua/ben/plugins/vimtex.lua12
-rw-r--r--lua/ben/plugins/winresizer.lua5
-rw-r--r--lua/ben/plugins/yadm-telescope.lua14
-rw-r--r--lua/ben/plugins/yadm.lua13
-rw-r--r--lua/core/init.lua25
-rw-r--r--lua/plugins/auto-session.lua17
-rw-r--r--lua/plugins/colorscheme.lua41
-rw-r--r--lua/plugins/comments.lua (renamed from lua/ben/plugins/comments.lua)4
-rw-r--r--lua/plugins/copilot.lua (renamed from lua/ben/plugins/copilot.lua)0
-rw-r--r--lua/plugins/easyalign.lua (renamed from lua/ben/plugins/easyalign.lua)0
-rw-r--r--lua/plugins/fugitive.lua14
-rw-r--r--lua/plugins/gitignore.lua7
-rw-r--r--lua/plugins/gitsigns.lua (renamed from lua/ben/plugins/gitsigns.lua)0
-rw-r--r--lua/plugins/harpoon.lua20
-rw-r--r--lua/plugins/lf.lua (renamed from lua/ben/plugins/lf.lua)8
-rw-r--r--lua/plugins/lualine.lua (renamed from lua/ben/plugins/lualine.lua)14
-rw-r--r--lua/plugins/orgmode.lua34
-rw-r--r--lua/plugins/surround.lua (renamed from lua/ben/plugins/surround.lua)0
-rw-r--r--lua/plugins/telescope.lua (renamed from lua/ben/plugins/telescope.lua)18
47 files changed, 214 insertions, 995 deletions
diff --git a/init.lua b/init.lua
index 3465962..fb2193c 100644
--- a/init.lua
+++ b/init.lua
@@ -1,2 +1,34 @@
-require("ben.core")
-require("ben.lazy")
+-- _ _ _ _
+-- (_)_ __ (_) |_ | |_ _ __ _
+-- | | '_ \| | __| | | | | |/ _` |
+-- | | | | | | |_ _| | |_| | (_| |
+-- |_|_| |_|_|\__(_)_|\__,_|\__,_|
+--
+require("core")
+
+-- Lazy Plugins Bootstrap {{{
+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",
+ "git@github.com/folke/lazy.nvim.git",
+ "--branch=stable", -- latest stable release
+ lazypath,
+ })
+end
+vim.opt.rtp:prepend(lazypath)
+require("lazy").setup({
+ { import = "plugins" }, -- i.e. the lua/plugins directory
+ -- add more subdirectories as needed
+ }, {
+ checker = {
+ enabled = true,
+ notify = false,
+ },
+ change_detection = {
+ notify = false,
+ },
+})
+-- }}}
diff --git a/lua/ben/core/init.lua b/lua/ben/core/init.lua
deleted file mode 100644
index 59f9e93..0000000
--- a/lua/ben/core/init.lua
+++ /dev/null
@@ -1,77 +0,0 @@
--- My Personal Configurations:
-
--- Superior leader key
-vim.g.mapleader = ";"
-
--- Space is quicker than Shift+Semicolon
-vim.keymap.set("n", "<space>", ":")
-
--- Set encoding to UTF-8
-vim.opt.encoding = "utf-8"
-
--- Do not lazy redraw
-vim.opt.lazyredraw = false
-
--- Display all matching files when tab completing
-vim.opt.wildmenu = true
-
--- Don't show the previously typed command
-vim.opt.shortmess:append("c")
-
--- Set absolute and relative number hybrid
-vim.opt.number = true
-vim.opt.relativenumber = true
-
--- View column count
-vim.opt.ruler = true
-
--- Disable the statusline
-vim.opt.laststatus = 0
-
--- Sensible split directions
-vim.opt.splitbelow = true
-vim.opt.splitright = true
-
--- Set tab width and shift width to 2
-vim.opt.tabstop = 2
-vim.opt.shiftwidth = 2
-
--- Expanding tabs
-vim.opt.expandtab = true
-
--- Set fold method to marker for Vim folding
-vim.opt.foldmethod = "marker"
-
--- Spelling
-vim.opt.complete:append("kspell") -- Better Spell Checking
-vim.opt.spelllang = "fr" -- French prose
-
--- Quickly save
-vim.api.nvim_set_keymap("n", "<Leader>w", ":update<CR>", { silent = true })
-
--- Logical way to Yank
-vim.api.nvim_set_keymap("n", "Y", "y$", {})
-
--- Easily escape terminal mode
-vim.api.nvim_set_keymap("t", "<Esc>", "<C-\\><C-n>", {})
-
--- Split motion
-vim.api.nvim_set_keymap("n", "<C-H>", "<C-w>h", {})
-vim.api.nvim_set_keymap("n", "<C-J>", "<C-w>j", {})
-vim.api.nvim_set_keymap("n", "<C-K>", "<C-w>k", {})
-vim.api.nvim_set_keymap("n", "<C-L>", "<C-w>l", {})
-
--- Saving and quitting buffers
-vim.api.nvim_set_keymap("n", "ZF", "ZQ", {})
-vim.api.nvim_set_keymap("n", "<leader>w", ":update<CR>", { silent = true })
-
--- Enter vim's F.ile M.anager
-vim.api.nvim_set_keymap("n", "<leader>fm", ":e .<CR>", { silent = true })
-
--- Remove trailing white spaces on BufWritePre
-vim.cmd([[autocmd BufWritePre * %s/\s\+$//e]])
-
--- Tree View for the netrw File Manager
-vim.g.netrw_liststyle = 3
-vim.g.netrw_banner = 0
-vim.g.netrw_bufsettings = "noma nomod nu nobl nowrap ro"
diff --git a/lua/ben/lazy.lua b/lua/ben/lazy.lua
deleted file mode 100644
index 46668e4..0000000
--- a/lua/ben/lazy.lua
+++ /dev/null
@@ -1,26 +0,0 @@
-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({
- { import = "ben.plugins" },
-}, {
- install = {
- colorscheme = { "everforest" },
- },
- checker = {
- enabled = true,
- notify = false,
- },
- change_detection = {
- notify = false,
- },
-})
diff --git a/lua/ben/plugins/blamer.lua b/lua/ben/plugins/blamer.lua
deleted file mode 100644
index 243a8a7..0000000
--- a/lua/ben/plugins/blamer.lua
+++ /dev/null
@@ -1,16 +0,0 @@
-return {
- "APZelos/blamer.nvim",
- -- Only load if on a compatible OS and git is installed
- cond = function()
- local goodOS = (vim.fn.has("linux") == 1) or (vim.fn.has("mac") == 1)
- local hasGit = vim.fn.executable("git") == 1
- return goodOS and hasGit
- end,
- config = function()
- vim.g.blamer_enabled = 1
- vim.g.blamer_delay = 500
- vim.g.blamer_template = "<committer>, <committer-time> • <summary>"
- vim.g.blamer_prefix = ">"
- end,
- cmd = { "BlamerToggle", "BlamerShow" },
-}
diff --git a/lua/ben/plugins/bling.lua b/lua/ben/plugins/bling.lua
deleted file mode 100644
index a0771e1..0000000
--- a/lua/ben/plugins/bling.lua
+++ /dev/null
@@ -1,7 +0,0 @@
-return {
- "ivyl/vim-bling",
- keys = {
- { "/", "/" },
- { "?", "?" },
- },
-}
diff --git a/lua/ben/plugins/cmp.lua b/lua/ben/plugins/cmp.lua
deleted file mode 100644
index 2038540..0000000
--- a/lua/ben/plugins/cmp.lua
+++ /dev/null
@@ -1,56 +0,0 @@
-return {
- "hrsh7th/nvim-cmp",
- event = "InsertEnter",
- dependencies = {
- "hrsh7th/cmp-buffer", -- source for text in buffer
- "hrsh7th/cmp-path", -- source for file system paths
- "L3MON4D3/LuaSnip", -- snippet engine
- "saadparwaiz1/cmp_luasnip", -- for autocompletion
- "rafamadriz/friendly-snippets", -- useful snippets
- "onsails/lspkind.nvim", -- vs-code like pictograms
- },
- config = function()
- local cmp = require("cmp")
-
- local luasnip = require("luasnip")
-
- local lspkind = require("lspkind")
-
- -- loads vscode style snippets from installed plugins (e.g. friendly-snippets)
- require("luasnip.loaders.from_vscode").lazy_load()
-
- 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,
- },
- mapping = cmp.mapping.preset.insert({
- ["<C-k>"] = cmp.mapping.select_prev_item(), -- previous suggestion
- ["<C-j>"] = cmp.mapping.select_next_item(), -- next suggestion
- ["<C-b>"] = cmp.mapping.scroll_docs(-4),
- ["<C-f>"] = 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 = false }),
- }),
- -- sources for autocompletion
- sources = cmp.config.sources({
- { name = "nvim_lsp" },
- { name = "luasnip" }, -- snippets
- { name = "buffer" }, -- text within current buffer
- { name = "path" }, -- file system paths
- }),
- -- configure lspkind for vs-code like pictograms in completion menu
- formatting = {
- format = lspkind.cmp_format({
- maxwidth = 50,
- ellipsis_char = "...",
- }),
- },
- })
- end,
-}
diff --git a/lua/ben/plugins/colorizer.lua b/lua/ben/plugins/colorizer.lua
deleted file mode 100644
index 08bd85c..0000000
--- a/lua/ben/plugins/colorizer.lua
+++ /dev/null
@@ -1,4 +0,0 @@
-return {
- "chrisbra/Colorizer",
- event = { "BufReadPre", "BufNewFile" },
-}
diff --git a/lua/ben/plugins/colorscheme.lua b/lua/ben/plugins/colorscheme.lua
deleted file mode 100644
index 4caaa52..0000000
--- a/lua/ben/plugins/colorscheme.lua
+++ /dev/null
@@ -1,41 +0,0 @@
-return {
- -- Treesitter optimized colorscheme
- {
- "neanias/everforest-nvim",
- version = false,
- priority = 1000,
- config = function()
- require("everforest").setup({
- background = "hard",
- italics = true,
- transparent_background_level = 2,
- })
- require("everforest").load()
- end,
- },
- -- My very own colorscheme
- {
- "ChausseBenjamin/friffle-vim",
- lazy = true,
- config = function()
- vim.cmd([[syntax on]]) -- Enable vim syntax
- vim.cmd([[set tgc]]) -- Terminal GUI Colors
- vim.cmd([[set lz]]) -- Lazy redraw
- vim.cmd([[set t_Co=256]]) -- 256 Colors
- vim.cmd([[colo friffle]]) -- Set the colorscheme
- vim.cmd([[hi Normal guibg=NONE]])
- vim.cmd([[hi CursorLineNr guibg=NONE]])
- vim.cmd([[hi Constant guibg=NONE]])
- vim.cmd([[hi Conceal guibg=NONE]])
- vim.cmd([[hi Folded guibg=NONE]])
- vim.cmd([[hi ColorColumn guibg='#738c9c']])
- vim.cmd([[hi Todo guibg='#acb3b5' guifg='#340001']])
- vim.cmd([[hi Search guifg='#810002' guibg='#738c9c']])
- end,
- },
- -- Backup retro colorscheme
- {
- "djpohly/elly.vim",
- lazy = true,
- },
-}
diff --git a/lua/ben/plugins/dressing.lua b/lua/ben/plugins/dressing.lua
deleted file mode 100644
index 105f7e5..0000000
--- a/lua/ben/plugins/dressing.lua
+++ /dev/null
@@ -1,4 +0,0 @@
-return {
- "stevearc/dressing.nvim",
- event = "VeryLazy",
-}
diff --git a/lua/ben/plugins/flog.lua b/lua/ben/plugins/flog.lua
deleted file mode 100644
index 81b0c0d..0000000
--- a/lua/ben/plugins/flog.lua
+++ /dev/null
@@ -1,11 +0,0 @@
-return {
- "rbong/vim-flog",
- -- Only enable if git is installed
- cond = function()
- return vim.fn.executable("git") == 1
- end,
- dependencies = { "tpope/vim-fugitive" },
- keys = {
- { "<leader>gg", "<cmd>Flogsplit<cr>" }, -- G.it G.raph
- },
-}
diff --git a/lua/ben/plugins/formatting.lua b/lua/ben/plugins/formatting.lua
deleted file mode 100644
index 22ddb17..0000000
--- a/lua/ben/plugins/formatting.lua
+++ /dev/null
@@ -1,38 +0,0 @@
-return {
- "stevearc/conform.nvim",
- event = { "BufReadPre", "BufNewFile" },
- config = function()
- local conform = require("conform")
-
- conform.setup({
- formatters_by_ft = {
- javascript = { "prettier" },
- html = { "prettier" },
- css = { "prettier" },
- json = { "prettier" },
- markdown = { "prettier" },
- bib = { "bibtex_tidy" },
- go = { "goimports", "gci", "golines" },
- sh = { "shfmt" },
- tex = { "latexindent" },
- sql = { "sql_formatter" },
- python = { "isort", "black" },
- yaml = { "yamlfix" },
- lua = { "stylua" },
- },
-
- format_on_save = {
- lsp_fallback = true,
- async = false,
- timeout_ms = 300,
- },
- })
- vim.keymap.set({ "n", "v" }, "<leader>mp", function()
- conform.format({
- lsp_fallback = true,
- async = false,
- timeout_ms = 300,
- })
- end, { desc = "Format file or range" })
- end,
-}
diff --git a/lua/ben/plugins/fugitive.lua b/lua/ben/plugins/fugitive.lua
deleted file mode 100644
index 051a983..0000000
--- a/lua/ben/plugins/fugitive.lua
+++ /dev/null
@@ -1,36 +0,0 @@
-return {
- "tpope/vim-fugitive",
- dependencies = "tpope/vim-rhubarb",
- -- Only enable on systems with git installed
- cond = function()
- return vim.fn.executable("git") == 1
- end,
- -- Only load when using one of the following commands:
- keys = {
- { "<leader>gs", "<cmd>G<CR>" }, -- G.it S.tatus
- { "<leader>gd", "<cmd>G difftool<CR>" }, -- G.it D.iff
- { "<leader>gm", "<cmd>Gvdiffsplit!<CR>" }, -- G.it M.erge
- { "<leader>gc", "<cmd>G commit<CR>" }, -- G.it C.ommit
- { "<leader>gu", "<cmd>G push<CR>" }, -- G.it push U.pstream
- { "<leader>gp", "<cmd>G pull<CR>" }, -- G.it P.ull
- { "<leader>gf", "<cmd>G fetch<CR>" }, -- G.it F.etch
- },
- config = function()
- -- Use > and < to fix merge conflicts (keep the cursor in the middle of the screen)
- -- vim.api.nvim_set_keymap("n", ">", "<cmd>diffg //2<cr><cmd>diffupdate<cr>", { noremap = true, silent = true })
- -- vim.api.nvim_set_keymap("n", "<", "<cmd>diffg //3<cr><cmd>diffupdate<cr>", { noremap = true, silent = true })
- -- Use } and { to force the entire file
- -- vim.api.nvim_set_keymap(
- -- "n",
- -- "}",
- -- "<C-w>h<cmd>Gwrite!<cr><cmd>diffupdate<cr>",
- -- { noremap = true, silent = true }
- -- )
- -- vim.api.nvim_set_keymap(
- -- "n",
- -- "{",
- -- "<C-w>l<cmd>Gwrite!<cr><cmd>diffupdate<cr>",
- -- { noremap = true, silent = true }
- -- )
- end,
-}
diff --git a/lua/ben/plugins/gitignore.lua b/lua/ben/plugins/gitignore.lua
deleted file mode 100644
index 0a657d9..0000000
--- a/lua/ben/plugins/gitignore.lua
+++ /dev/null
@@ -1,18 +0,0 @@
-return {
- "theniceboy/fzf-gitignore",
- dependencies = {
- {
- "junegunn/fzf",
- build = function()
- vim.fn["fzf#install"]()
- end,
- },
- },
- cond = function()
- return vim.fn.executable("python3") == 1
- end,
- build = function()
- vim.cmd([[UpdateRemotePlugins]])
- end,
- ft = "gitignore",
-}
diff --git a/lua/ben/plugins/go.lua b/lua/ben/plugins/go.lua
deleted file mode 100644
index 72e42e7..0000000
--- a/lua/ben/plugins/go.lua
+++ /dev/null
@@ -1,34 +0,0 @@
-return {
- "ray-x/go.nvim",
- -- Only if Go is installed
- cond = function()
- return vim.fn.executable("go")
- end,
- dependencies = { -- optional packages
- "ray-x/guihua.lua",
- "neovim/nvim-lspconfig",
- "nvim-treesitter/nvim-treesitter",
- "ray-x/guihua.lua",
- },
- config = function()
- require("go").setup()
- -- Go keymaps
- vim.api.nvim_set_keymap("n", "<Space>gb", "<cmd>GoBuild<cr>", { noremap = true, silent = true })
- vim.api.nvim_set_keymap("n", "<Space>gr", "<cmd>GoRun<cr>", { noremap = true, silent = true })
- vim.api.nvim_set_keymap("n", "<Space>gd", "<cmd>GoDoc<cr>", { noremap = true, silent = true })
- -- Commands to run on save:
- local format_sync_grp = vim.api.nvim_create_augroup("GoFormat", {})
- vim.api.nvim_create_autocmd("BufWritePre", {
- pattern = "*.go",
- callback = function()
- -- Go format:
- require("go.format").gofmt()
- -- Goimports:
- require("go.format").goimport()
- end,
- group = format_sync_grp,
- })
- end,
- ft = { "go", "gomod", "gowork", "gosum" },
- build = ':lua require("go.install").update_all_sync()', -- if you need to install/update all binaries
-}
diff --git a/lua/ben/plugins/grammalecte.lua b/lua/ben/plugins/grammalecte.lua
deleted file mode 100644
index efcdb64..0000000
--- a/lua/ben/plugins/grammalecte.lua
+++ /dev/null
@@ -1,21 +0,0 @@
-return {
- "dpelle/vim-Grammalecte",
- build = function()
- local grammalecte_url = "https://grammalecte.net/zip/Grammalecte-fr-v2.1.1.zip"
- Grammalecte_path = vim.fn.expand("~/.local/share/nvim/grammalecte")
- -- Download the latest version of Grammalecte ~/.local/share/nvim/grammalecte:
- vim.fn.mkdir(Grammalecte_path, "p")
- vim.fn.system({ "curl", "-L", grammalecte_url, "-o", Grammalecte_path .. "/grammalecte.zip" })
- -- Unzip the file
- vim.fn.system({ "unzip", Grammalecte_path .. "/grammalecte.zip", "-d", Grammalecte_path })
- -- Then set g:grammalecte_cli_py to the unzipped python script
- end,
- config = function()
- vim.g.grammalecte_cli_py = vim.fn.expand("~/.local/share/nvim/grammalecte/grammalecte-cli.py")
- end,
- cmd = { "GrammalecteCheck", "GrammalecteClear" },
- keys = {
- { "<leader>cg", "<cmd>GrammalecteCheck<cr>" }, -- C.heck G.rammar
- { "<leader>cs", "<cmd>GrammalecteClear<cr>" }, -- C.heck S.top
- },
-}
diff --git a/lua/ben/plugins/gutentags.lua b/lua/ben/plugins/gutentags.lua
deleted file mode 100644
index 88fb388..0000000
--- a/lua/ben/plugins/gutentags.lua
+++ /dev/null
@@ -1,8 +0,0 @@
-return {
- "ludovicchabant/vim-gutentags",
- -- Only enable if ctags is installed
- condition = function()
- return vim.fn.executable("ctags") == 1
- end,
- event = { "BufReadPre", "BufNewFile" },
-}
diff --git a/lua/ben/plugins/linting.lua b/lua/ben/plugins/linting.lua
deleted file mode 100644
index a5be347..0000000
--- a/lua/ben/plugins/linting.lua
+++ /dev/null
@@ -1,29 +0,0 @@
-return {
- "mfussenegger/nvim-lint",
- event = { "BufReadPre", "BufNewFile" },
- config = function()
- local lint = require("lint")
- lint.linters_by_ft = {
- css = { "stylelint" },
- markdown = { "markdownlint" },
- python = { "pylint" },
- go = { "golangci_lint" },
- sh = { "shellcheck" },
- }
-
- local lint_augroup = vim.api.nvim_create_augroup("link", { clear = true })
-
- vim.api.nvim_create_autocmd({ "BufEnter", "BufWritePost", "InsertLeave" }, {
- group = lint_augroup,
- callback = function()
- lint.try_lint()
- end,
- })
- vim.keymap.set("n", "<leader>l", function()
- lint.try_lint()
- end, {
- desc = "Trigger linting for current file",
- silent = true,
- })
- end,
-}
diff --git a/lua/ben/plugins/lsp.lua b/lua/ben/plugins/lsp.lua
deleted file mode 100644
index 251a459..0000000
--- a/lua/ben/plugins/lsp.lua
+++ /dev/null
@@ -1,246 +0,0 @@
-return {
-
- {
- "williamboman/mason.nvim",
- dependencies = {
- "williamboman/mason-lspconfig.nvim",
- "WhoIsSethDaniel/mason-tool-installer.nvim",
- },
- config = function()
- -- import mason
- local mason = require("mason")
-
- -- import mason-lspconfig
- local mason_lspconfig = require("mason-lspconfig")
- local mason_tool_installer = require("mason-tool-installer")
-
- -- enable mason and configure icons
- mason.setup({
- ui = {
- icons = {
- package_installed = "",
- package_pending = "",
- package_uninstalled = "",
- },
- },
- })
-
- mason_lspconfig.setup({
- -- list of servers for mason to install
- ensure_installed = {
- "ast_grep", -- fallback
- "lua_ls", -- lua
- "autotools_ls", -- Makefile
- "dockerls", -- dockerfiles
- "docker_compose_language_service", -- docker-compose
- "marksman", -- markdown
- "gopls", -- go
- "texlab", -- latex
- "pyre", -- python
- "r_language_server", -- r
- "rust_analyzer", -- rust
- "mutt_ls", -- mutt
- "taplo", -- toml
- "yamlls", -- yaml
- },
- -- auto-install configured servers (with lspconfig)
- automatic_installation = true,
- })
-
- -- configure mason tool installer
- mason_tool_installer.setup({
- ensure_installed = {
- "isort", -- python import formatter
- "goimports", -- go import formatter
- "doctoc", -- markdown table of contents generator
- "go-debug-adapter", -- go debugger
- "codelldb", -- c/c++ debugger
- },
- })
- end,
- },
-
- {
- "neovim/nvim-lspconfig",
- dependencies = { "hrsh7th/cmp-nvim-lsp" },
- event = { "BufReadPre", "BufNewFile" },
- config = function()
- -- import lspconfig plugin
- local lspconfig = require("lspconfig")
-
- -- import cmp-nvim-lsp plugin
- local cmp_nvim_lsp = require("cmp_nvim_lsp")
-
- local keymap = vim.keymap
-
- local opts = { noremap = true, silent = true }
- local on_attach = function(client, bufnr)
- opts.buffer = bufnr
-
- -- set keybinds
- opts.desc = "Show LSP references"
- keymap.set("n", "gR", "<cmd>Telescope lsp_references<CR>", opts) -- show definition, references
-
- opts.desc = "Go to declaration"
- keymap.set("n", "gD", vim.lsp.buf.declaration, opts) -- go to declaration
-
- opts.desc = "Show LSP definitions"
- keymap.set("n", "gd", "<cmd>Telescope lsp_definitions<CR>", opts) -- show lsp definitions
-
- opts.desc = "Show LSP implementations"
- keymap.set("n", "gi", "<cmd>Telescope lsp_implementations<CR>", opts) -- show lsp implementations
-
- opts.desc = "Show LSP type definitions"
- keymap.set("n", "gt", "<cmd>Telescope lsp_type_definitions<CR>", opts) -- show lsp type definitions
-
- opts.desc = "See available code actions"
- keymap.set({ "n", "v" }, "<leader>ca", vim.lsp.buf.code_action, opts) -- see available code actions, in visual mode will apply to selection
-
- opts.desc = "Smart rename"
- keymap.set("n", "<leader>rn", vim.lsp.buf.rename, opts) -- smart rename
-
- opts.desc = "Show buffer diagnostics"
- keymap.set("n", "<leader>D", "<cmd>Telescope diagnostics bufnr=0<CR>", opts) -- show diagnostics for file
-
- opts.desc = "Show line diagnostics"
- keymap.set("n", "<leader>d", vim.diagnostic.open_float, opts) -- show diagnostics for line
-
- opts.desc = "Go to previous diagnostic"
- keymap.set("n", "[d", vim.diagnostic.goto_prev, opts) -- jump to previous diagnostic in buffer
-
- opts.desc = "Go to next diagnostic"
- keymap.set("n", "]d", vim.diagnostic.goto_next, opts) -- jump to next diagostic in buffer
-
- opts.desc = "Show documentation for what is under cursor"
- keymap.set("n", "K", vim.lsp.buf.hover, opts) -- show documentation for what is under cursor
-
- opts.desc = "Restart LSP"
- keymap.set("n", "<leader>rs", ":LspRestart<CR>", opts) -- mapping to restart lsp if necessary
- end
-
- -- used to enable autocompletion (assign to every lsp server config)
- local capabilities = cmp_nvim_lsp.default_capabilities()
-
- -- change diagnostic symbols in sign column
- 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 = "" })
- end
-
- -- configure lua server (with special settings)
- lspconfig["lua_ls"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- settings = { -- custom settings for lua
- Lua = {
- -- make the language server recognize "vim" global
- diagnostics = {
- globals = { "vim" },
- },
- workspace = {
- -- make language server aware of runtime files
- library = {
- [vim.fn.expand("$VIMRUNTIME/lua")] = true,
- [vim.fn.stdpath("config") .. "/lua"] = true,
- },
- },
- },
- },
- })
-
- -- configure dockerfile server
- lspconfig["dockerls"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure docker-compose server
- lspconfig["docker_compose_language_service"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure markdown server
- lspconfig["marksman"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure golang server
- lspconfig["gopls"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure LaTeX server
- lspconfig["texlab"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure LaTeX server
- lspconfig["texlab"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure python server
- lspconfig["pyre"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure R server
- lspconfig["r_language_server"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure R server
- lspconfig["r_language_server"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure mutt server
- lspconfig["mutt_ls"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure toml server
- lspconfig["taplo"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure Makefile server
- lspconfig["autotools_ls"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure fallback server
- lspconfig["ast_grep"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- })
-
- -- configure yaml server
- lspconfig["yamlls"].setup({
- capabilities = capabilities,
- on_attach = on_attach,
- settings = {
- yaml = {
- schemas = {
- ["https://json.schemastore.org/github-workflow.json"] = "/.github/workflows/*",
- ["../path/relative/to/file.yml"] = "/.github/workflows/*",
- ["/path/from/root/of/project"] = "/.github/workflows/*",
- },
- },
- },
- })
- end,
- },
-}
diff --git a/lua/ben/plugins/markdown-preview.lua b/lua/ben/plugins/markdown-preview.lua
deleted file mode 100644
index 1a2f4bc..0000000
--- a/lua/ben/plugins/markdown-preview.lua
+++ /dev/null
@@ -1,43 +0,0 @@
-return {
- "iamcco/markdown-preview.nvim",
- ft = { "markdown", "pandoc.markdown", "rmd" },
- build = function()
- vim.fn["mkdp#util#install"]()
- end,
- config = function()
- vim.g.mkdp_auto_start = 0
- vim.g.mkdp_auto_close = 1
- vim.g.mkdp_auto_update = 1
- vim.g.mkdp_refresh_slow = 1
- vim.g.mkdp_command_for_global = 0
- vim.g.mkdp_open_to_the_world = 0
- vim.g.mkdp_open_ip = ""
- vim.g.mkdp_browser = ""
- vim.g.mkpd_echo_preview_url = 0
- vim.g.mkdp_browser_func = ""
- vim.g.mkdp_preview_options = {
- mkit = {},
- katex = {},
- uml = {},
- maid = {},
- disable_sync_scroll = 0,
- sync_scroll_type = "middle",
- hide_yaml_meta = 1,
- sequence_diagrams = {},
- flowchart_diagrams = {},
- content_editable = false,
- disable_filename = 0,
- toc = {},
- }
- vim.g.mkdp_markdown_css = ""
- vim.g.mkdp_highlight_css = ""
- vim.g.mkpd_port = ""
- vim.g.mkdp_page_title = "「${name}」"
- vim.g.mkpd_filetypes = { "markdown", "pandoc.markdown", "rmd" }
- vim.g.mkdp_theme = "dark"
- -- Keymaps
- vim.api.nvim_set_keymap("n", "<leader>mp", "<Plug>MarkdownPreviewToggle", { silent = true })
- vim.api.nvim_set_keymap("n", "<leader>mk", "<Plug>MarkdownPreviewStop", { silent = true })
- vim.api.nvim_set_keymap("n", "<leader>mi", "<Plug>MarkdownPreview", { silent = true })
- end,
-}
diff --git a/lua/ben/plugins/neorg.lua b/lua/ben/plugins/neorg.lua
deleted file mode 100644
index ece2a53..0000000
--- a/lua/ben/plugins/neorg.lua
+++ /dev/null
@@ -1,39 +0,0 @@
-return {
- "nvim-neorg/neorg",
- build = ":Neorg sync-parsers",
- dependencies = {
- "nvim-lua/plenary.nvim",
- "nvim-neorg/neorg-telescope",
- },
- config = function()
- require("neorg").setup({
- load = {
- ["core.defaults"] = {}, -- Loads default behaviour
- ["core.export"] = {}, -- Loads default behaviour
- ["core.concealer"] = {
- config = {
- icons = {
- heading = {
- icons = {
- "",
- "",
- "",
- "",
- },
- },
- },
- },
- }, -- Adds pretty icons to your documents
- ["core.integrations.telescope"] = {},
- ["core.dirman"] = { -- Manages Neorg workspaces
- config = {
- workspaces = {
- notes = "~/Dropbox/org",
- },
- default_workspace = "notes",
- },
- },
- },
- })
- end,
-}
diff --git a/lua/ben/plugins/nvim-r.lua b/lua/ben/plugins/nvim-r.lua
deleted file mode 100644
index e6e43d1..0000000
--- a/lua/ben/plugins/nvim-r.lua
+++ /dev/null
@@ -1,14 +0,0 @@
-return {
- "jalvesaq/Nvim-R",
- -- Only enable if R is installed
- cond = function()
- return vim.fn.executable("R") == 1
- end,
- ft = { "R", "Rnoweb", "tex", "aux", "bib" },
- config = function()
- vim.g.r_syntax_folding = 1
- vim.opt.foldnestmax = 1
- vim.opt.foldmethod = "marker"
- vim.g.rout_follow_colorscheme = 0
- end,
-}
diff --git a/lua/ben/plugins/search-highlight.lua b/lua/ben/plugins/search-highlight.lua
deleted file mode 100644
index e00e17f..0000000
--- a/lua/ben/plugins/search-highlight.lua
+++ /dev/null
@@ -1,7 +0,0 @@
-return {
- "qxxxb/vim-searchhi",
- keys = {
- { "/", "/" },
- { "?", "?" },
- },
-}
diff --git a/lua/ben/plugins/smoothie.lua b/lua/ben/plugins/smoothie.lua
deleted file mode 100644
index 3afb796..0000000
--- a/lua/ben/plugins/smoothie.lua
+++ /dev/null
@@ -1,4 +0,0 @@
-return {
- "psliwka/vim-smoothie",
- event = "CursorMoved",
-}
diff --git a/lua/ben/plugins/syntax.lua b/lua/ben/plugins/syntax.lua
deleted file mode 100644
index 8b2af10..0000000
--- a/lua/ben/plugins/syntax.lua
+++ /dev/null
@@ -1,7 +0,0 @@
-return {
- -- This layout allows to fit multiple syntax plugins in a single file
- {
- "waycrate/swhkd-vim",
- ft = { "swhkd" },
- },
-}
diff --git a/lua/ben/plugins/table-mode.lua b/lua/ben/plugins/table-mode.lua
deleted file mode 100644
index 838d813..0000000
--- a/lua/ben/plugins/table-mode.lua
+++ /dev/null
@@ -1,4 +0,0 @@
-return {
- "dhruvasagar/vim-table-mode",
- ft = { "org", "markdown", "text" },
-}
diff --git a/lua/ben/plugins/treesitter-text-objects.lua b/lua/ben/plugins/treesitter-text-objects.lua
deleted file mode 100644
index bcf1b92..0000000
--- a/lua/ben/plugins/treesitter-text-objects.lua
+++ /dev/null
@@ -1,53 +0,0 @@
-return {
- "nvim-treesitter/nvim-treesitter-textobjects",
- event = { "BufReadPost", "BufNewFile" },
- dependencies = {
- "nvim-treesitter/nvim-treesitter",
- },
- config = function()
- require("nvim-treesitter.configs").setup({
- textobjects = {
- select = {
- enable = true,
-
- -- Automatically jump forward to textobj, similar to targets.vim
- lookahead = true,
-
- keymaps = {
- -- You can use the capture groups defined in textobjects.scm
- ["a="] = { query = "@assignment.outer", desc = "Select outer part of an assignment region" },
- ["i="] = { query = "@assignment.inner", desc = "Select inner part of an assignment region" },
-
- ["a:"] = { query = "@parameter.outer", desc = "Select outer part of a parameter/field region" },
- ["i:"] = { query = "@parameter.inner", desc = "Select inner part of a parameter/field region" },
-
- ["ai"] = { query = "@conditional.outer", desc = "Select outer part of a conditional region" },
- ["ii"] = { query = "@conditional.inner", desc = "Select inner part of a conditional region" },
-
- ["al"] = { query = "@loop.outer", desc = "Select outer part of a loop region" },
- ["il"] = { query = "@loop.inner", desc = "Select inner part of a loop region" },
-
- ["ab"] = { query = "@block.outer", desc = "Select outer part of a block region" }, -- overrides default text object block of parenthesis to parenthesis
- ["ib"] = { query = "@block.inner", desc = "Select inner part of a block region" }, -- overrides default text object block of parenthesis to parenthesis
-
- ["af"] = { query = "@function.outer", desc = "Select outer part of a function region" },
- ["if"] = { query = "@function.inner", desc = "Select inner part of a function region" },
-
- ["ac"] = { query = "@class.outer", desc = "Select outer part of a class region" },
- ["ic"] = { query = "@class.inner", desc = "Select inner part of a class region" },
- },
- include_surrounding_whitespace = true,
- },
- swap = {
- enable = true,
- swap_next = {
- ["<leader>on"] = "@parameter.inner", -- swap object under cursor with next
- },
- swap_previous = {
- ["<leader>op"] = "@parameter.inner", -- swap object under cursor with previous
- },
- },
- },
- })
- end,
-}
diff --git a/lua/ben/plugins/treesitter.lua b/lua/ben/plugins/treesitter.lua
deleted file mode 100644
index 279fa1a..0000000
--- a/lua/ben/plugins/treesitter.lua
+++ /dev/null
@@ -1,76 +0,0 @@
-return {
- {
- "nvim-treesitter/nvim-treesitter",
- dependencies = "windwp/nvim-ts-autotag",
- build = ":TSUpdate",
- event = { "BufReadPre", "BufNewFile" },
- config = function()
- -- import nvim-treesitter plugin
- local treesitter = require("nvim-treesitter.configs")
-
- -- configure treesitter
- treesitter.setup({ -- enable syntax highlighting
- highlight = {
- enable = true,
- },
- -- enable indentation
- indent = { enable = true },
- -- enable autotagging (w/ nvim-ts-autotag plugin)
- autotag = { enable = true },
- -- ensure these language parsers are installed
- ensure_installed = {
- "json",
- "yaml",
- "html",
- "css",
- "javascript",
- "markdown",
- "markdown_inline",
- "graphql",
- "bash",
- "lua",
- "go",
- "gomod",
- "gowork",
- "gosum",
- "latex",
- "bibtex",
- "rnoweb",
- "org",
- "rust",
- "c",
- "cpp",
- "arduino",
- "vim",
- "make",
- "cmake",
- "mermaid",
- "passwd",
- "gpg",
- "regex",
- "awk",
- "sql",
- "ssh_config",
- "sxhkdrc",
- "nix",
- "xml",
- "csv",
- "dockerfile",
- "git_config",
- "git_rebase",
- "gitattributes",
- "gitcommit",
- "gitignore",
- "diff",
- },
- -- enable nvim-ts-context-commentstring plugin for commenting tsx and jsx
- context_commentstring = {
- enable = true,
- enable_autocmd = false,
- },
- -- auto install above language parsers
- auto_install = true,
- })
- end,
- },
-}
diff --git a/lua/ben/plugins/undotree.lua b/lua/ben/plugins/undotree.lua
deleted file mode 100644
index f5dbefc..0000000
--- a/lua/ben/plugins/undotree.lua
+++ /dev/null
@@ -1,8 +0,0 @@
-return {
- "jiaoshijie/undotree",
- dependencies = { "nvim-lua/plenary.nvim" },
- config = true,
- keys = {
- { "<leader>u", "<cmd>lua require('undotree').toggle()<cr>" },
- },
-}
diff --git a/lua/ben/plugins/vimtex.lua b/lua/ben/plugins/vimtex.lua
deleted file mode 100644
index 31ee15e..0000000
--- a/lua/ben/plugins/vimtex.lua
+++ /dev/null
@@ -1,12 +0,0 @@
-return {
- "lervag/vimtex",
- ft = { "texinfo", "tex", "aux", "bib" },
- config = function()
- vim.g.vimtex_view_general_viewer = "open"
- vim.g.vimtex_view_general_options = "-a zathura"
- vim.g.tex_flavor = "latex"
- vim.g.tex_no_error = 1
- vim.g.tex_conceal = "abdmg"
- vim.api.set_keymap("n", "<C-n>", "<Plug>(vimtex-toc-open)", { noremap = false, silent = true })
- end,
-}
diff --git a/lua/ben/plugins/winresizer.lua b/lua/ben/plugins/winresizer.lua
deleted file mode 100644
index f920cb5..0000000
--- a/lua/ben/plugins/winresizer.lua
+++ /dev/null
@@ -1,5 +0,0 @@
-return {
- "simeji/winresizer",
- lazy = true,
- keys = { "<C-e>", "<cmd>WinResizerStart<cr>" },
-}
diff --git a/lua/ben/plugins/yadm-telescope.lua b/lua/ben/plugins/yadm-telescope.lua
deleted file mode 100644
index 2e3b6ad..0000000
--- a/lua/ben/plugins/yadm-telescope.lua
+++ /dev/null
@@ -1,14 +0,0 @@
-return {
- "pschmitt/telescope-yadm.nvim",
- dependencies = { "nvim-telescope/telescope.nvim" },
- cond = function()
- return vim.fn.executable("yadm") == 1
- end,
- config = function()
- require("telescope").load_extension("yadm_files")
- require("telescope").load_extension("git_or_yadm_files")
- end,
- keys = {
- { "<leader>fy", "<cmd>Telescope yadm_files<cr>" },
- },
-}
diff --git a/lua/ben/plugins/yadm.lua b/lua/ben/plugins/yadm.lua
deleted file mode 100644
index de6389e..0000000
--- a/lua/ben/plugins/yadm.lua
+++ /dev/null
@@ -1,13 +0,0 @@
-return {
- "robstumborg/yadm.nvim",
- dependencies = "tpope/vim-fugitive",
- -- Only load if yadm is installed
- cond = function()
- return vim.fn.executable("yadm") == 1
- end,
- config = function()
- require("yadm").setup({
- yadm_dir = vim.fn.expand("$HOME/.local/share/yadm/repo.git"),
- })
- end,
-}
diff --git a/lua/core/init.lua b/lua/core/init.lua
new file mode 100644
index 0000000..7b47875
--- /dev/null
+++ b/lua/core/init.lua
@@ -0,0 +1,25 @@
+vim.g.mapleader=" "
+vim.opt.encoding="utf-8"
+vim.opt.wildmenu=true -- Show mathes with tab-completion
+vim.opt.number=true
+vim.opt.relativenumber=true
+vim.opt.ruler=true
+vim.opt.laststatus=0
+vim.opt.splitbelow=true
+vim.opt.splitright=true
+vim.opt.tabstop=2
+vim.opt.shiftwidth=2
+vim.opt.expandtab=true
+vim.opt.foldmethod="marker" --- For `{{{` & `}}}` folding
+vim.opt.complete:append("kspell")
+vim.opt.spelllang="fr" -- why does french exist...
+vim.api.nvim_set_keymap("n","Y","y$", {}) -- Better motion for `Y`
+vim.api.nvim_set_keymap("t", "<Esc>", "<C-\\><C-n>", {}) -- terminal mode Esc
+
+vim.keymap.set("v", "<s-l>", ":m '>+1<CR>gv=gv")
+vim.keymap.set("v", "<s-h>", ":m '<-2<CR>gv=gv")
+
+-- Netrw preferences when not using lf
+vim.g.netrw_liststyle = 3
+vim.g.netrw_banner = 0
+vim.g.netrw_bufsettings = "noma nomod nu nobl nowrap ro"
diff --git a/lua/plugins/auto-session.lua b/lua/plugins/auto-session.lua
new file mode 100644
index 0000000..e120c7f
--- /dev/null
+++ b/lua/plugins/auto-session.lua
@@ -0,0 +1,17 @@
+return {
+ "rmagatti/auto-session",
+ dependencies = { "nvim-telescope/telescope.nvim" },
+ config = function()
+ require("auto-session").setup({
+ session_lens = {
+ bufftypes_to_ignore = {},
+ load_on_setup = true,
+ theme_conf = { border = true },
+ previewer = true,
+ }
+ })
+ vim.keymap.set("n", "<C-s>", require("auto-session.session-lens").search_session, {
+ noremap = true,
+ })
+ end,
+}
diff --git a/lua/plugins/colorscheme.lua b/lua/plugins/colorscheme.lua
new file mode 100644
index 0000000..e69ffd8
--- /dev/null
+++ b/lua/plugins/colorscheme.lua
@@ -0,0 +1,41 @@
+return { -- No nonsense, very stoic
+ "aktersnurra/no-clown-fiesta.nvim",
+ dependencies = {
+ { "nvim-treesitter/nvim-treesitter",
+ build = ":TSUpdate",
+ config = function()
+ local configs = require("nvim-treesitter.configs")
+ configs.setup({
+ ensure_installed = {
+ "c", "go", "python", "yaml", "json", "lua", "vim", "graphql"
+ },
+ ignore_install = {
+ "javascript", "typescript"
+ },
+ sync_install = false,
+ highlight = {enable = true},
+ indent = {enable = false},
+ additional_vim_regex_highlighting = false,
+ })
+ end,
+ },
+ },
+ lazy = false,
+ priority = 1000,
+ config = function()
+ require("no-clown-fiesta").setup({
+ transparent = true,
+ styles = {
+ -- You can set any of the style values specified for `:h nvim_set_hl`
+ type = { bold = true },
+ lsp = { underline = true },
+ },
+ })
+ vim.cmd.colorscheme('no-clown-fiesta')
+ vim.api.nvim_set_hl(0,"LineNr",{fg="#727272"})
+ vim.api.nvim_set_hl(0,"Visual",{bg="#171717"})
+ vim.api.nvim_set_hl(0,"VertSplit",{bg="none",fg="#727272"})
+ vim.api.nvim_set_hl(0,"WinSeparator",{bg="none",fg="#727272"})
+ vim.api.nvim_set_hl(0,"StatusLine",{bg="none",fg="#727272"})
+ end,
+}
diff --git a/lua/ben/plugins/comments.lua b/lua/plugins/comments.lua
index b1267f6..5da4b3e 100644
--- a/lua/ben/plugins/comments.lua
+++ b/lua/plugins/comments.lua
@@ -1,5 +1,5 @@
return {
- 'numToStr/Comment.nvim',
+ 'tpope/vim-commentary',
event = { 'BufReadPre', 'BufNewFile' },
- config = true,
}
+
diff --git a/lua/ben/plugins/copilot.lua b/lua/plugins/copilot.lua
index f53bb48..f53bb48 100644
--- a/lua/ben/plugins/copilot.lua
+++ b/lua/plugins/copilot.lua
diff --git a/lua/ben/plugins/easyalign.lua b/lua/plugins/easyalign.lua
index fcf254b..fcf254b 100644
--- a/lua/ben/plugins/easyalign.lua
+++ b/lua/plugins/easyalign.lua
diff --git a/lua/plugins/fugitive.lua b/lua/plugins/fugitive.lua
new file mode 100644
index 0000000..12a6385
--- /dev/null
+++ b/lua/plugins/fugitive.lua
@@ -0,0 +1,14 @@
+return {
+ "tpope/vim-fugitive",
+ dependencies = "tpope/vim-rhubarb",
+ -- Only load when using one of the following commands:
+ keys = {
+ { "<leader>gs", "<cmd>G<CR>" }, -- G.it S.tatus
+ { "<leader>gd", "<cmd>G difftool<CR>" }, -- G.it D.iff
+ { "<leader>gm", "<cmd>Gvdiffsplit!<CR>" }, -- G.it M.erge
+ { "<leader>gc", "<cmd>G commit<CR>" }, -- G.it C.ommit
+ { "<leader>gu", "<cmd>G push<CR>" }, -- G.it push U.pstream
+ { "<leader>gp", "<cmd>G pull<CR>" }, -- G.it P.ull
+ { "<leader>gf", "<cmd>G fetch<CR>" }, -- G.it F.etch
+ },
+}
diff --git a/lua/plugins/gitignore.lua b/lua/plugins/gitignore.lua
new file mode 100644
index 0000000..08188a3
--- /dev/null
+++ b/lua/plugins/gitignore.lua
@@ -0,0 +1,7 @@
+return {
+ "antonk52/gitignore-grabber.nvim",
+ dependencies = {
+ { "nvim-telescope/telescope.nvim" },
+ },
+ cmd = "Gitignore",
+}
diff --git a/lua/ben/plugins/gitsigns.lua b/lua/plugins/gitsigns.lua
index ef8f427..ef8f427 100644
--- a/lua/ben/plugins/gitsigns.lua
+++ b/lua/plugins/gitsigns.lua
diff --git a/lua/plugins/harpoon.lua b/lua/plugins/harpoon.lua
new file mode 100644
index 0000000..a6d4535
--- /dev/null
+++ b/lua/plugins/harpoon.lua
@@ -0,0 +1,20 @@
+return {
+ "theprimeagen/harpoon",
+ branch = "harpoon2",
+ dependencies = {"nvim-lua/plenary.nvim"},
+ config = function()
+ local harpoon = require("harpoon")
+ harpoon:setup()
+
+ vim.keymap.set("n", "<leader>a", function() harpoon:list():add() end )
+ vim.keymap.set("n", "<C-e>", function() harpoon.ui:toggle_quick_menu(harpoon:list()) end )
+
+ 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 )
+
+ vim.keymap.set("n", "<C-S-P>", function() harpoon:list():prev() end)
+ vim.keymap.set("n", "<C-S-P>", function() harpoon:list():next() end)
+ end,
+}
diff --git a/lua/ben/plugins/lf.lua b/lua/plugins/lf.lua
index 5c95197..1ad7090 100644
--- a/lua/ben/plugins/lf.lua
+++ b/lua/plugins/lf.lua
@@ -6,9 +6,15 @@ return {
},
config = function()
vim.g.lf_netrw = 1
- local lf = require("lf").setup({
+ require("lf").setup({
border = "rounded",
+ winblend = 20,
focus_on_open = true,
+ highlights = { -- highlights passed to toggleterm
+ Normal = {link = "Normal"},
+ NormalFloat = {link = 'Normal'},
+ FloatBorder = {guifg = "#111a1f", guibg = "#bada55"},
+ },
})
vim.api.nvim_set_keymap("n", "<leader>lf", "<cmd>Lf<cr>", { noremap = true, silent = true })
end,
diff --git a/lua/ben/plugins/lualine.lua b/lua/plugins/lualine.lua
index 0cecbf4..e41d998 100644
--- a/lua/ben/plugins/lualine.lua
+++ b/lua/plugins/lualine.lua
@@ -5,14 +5,10 @@ return {
config = function()
require("lualine").setup({
options = {
- theme = "everforest",
+ theme = "no-clown-fiesta",
icons_enabled = true,
- -- section_separators = { left = "", right = "" },
- -- component_separators = { left = "", right = "" },
- -- component_separators = { left = "", right = "" },
- -- section_separators = { left = "", right = "" },
- section_separators = { left = "▓", right = "▓" },
- component_separators = { left = "░", right = "░" },
+ section_separators = { left = "", right = "" },
+ component_separators = { left = "", right = "" },
globalstatus = false,
ignore_focus = {},
always_divide_middle = true,
@@ -26,7 +22,7 @@ return {
lualine_a = { "mode" },
lualine_b = { "branch" },
lualine_c = { "filename" },
- lualine_x = { "encoding", "fileformat", "filetype" },
+ lualine_x = { "filetype" },
lualine_y = { "progress" },
lualine_z = { "location" },
},
@@ -40,7 +36,7 @@ return {
},
tabline = {},
winbar = {},
- extensions = {},
+ extensions = {'fugitive'},
})
-- Remove duplicate information that clutters the bottom of the screen
-- "-- INSERT --" on the left:
diff --git a/lua/plugins/orgmode.lua b/lua/plugins/orgmode.lua
new file mode 100644
index 0000000..d6f3ac0
--- /dev/null
+++ b/lua/plugins/orgmode.lua
@@ -0,0 +1,34 @@
+return {
+ 'nvim-orgmode/orgmode',
+ dependencies = {
+ { -- Nicely formatted bullet Headings
+ "akinsho/org-bullets.nvim",
+ dependencies = "nvim-treesitter/nvim-treesitter",
+ config = true,
+ },
+ },
+ event = 'VeryLazy',
+ ft = { 'org' },
+ config = function()
+ -- This is bound to org-modern:
+ -- local Menu = require("org-modern.menu")
+ -- Setup orgmode
+ require('orgmode').setup({
+ org_agenda_files = '~/Dropbox/org/**/*',
+ org_default_notes_file = '~/Dropbox/org/index.org',
+ emacs_config = {
+ -- executable_path = '/opt/homebrew/bin/emacs',
+ config_path = '$HOME/.config/emacs/early-init.el',
+ },
+ })
+ vim.opt.conceallevel = 2
+ vim.opt.concealcursor = 'v'
+
+ -- NOTE: If you are using nvim-treesitter with `ensure_installed = "all"` option
+ -- add `org` to ignore_install
+ -- require('nvim-treesitter.configs').setup({
+ -- ensure_installed = 'all',
+ -- ignore_install = { 'org' },
+ -- })
+ end,
+}
diff --git a/lua/ben/plugins/surround.lua b/lua/plugins/surround.lua
index aef9e72..aef9e72 100644
--- a/lua/ben/plugins/surround.lua
+++ b/lua/plugins/surround.lua
diff --git a/lua/ben/plugins/telescope.lua b/lua/plugins/telescope.lua
index 66c107e..f0efe69 100644
--- a/lua/ben/plugins/telescope.lua
+++ b/lua/plugins/telescope.lua
@@ -6,23 +6,21 @@ return {
},
keys = { -- LazyLoad telescope when it's actually needed
- -- F.ind F.iles
- { "<leader>ff", '<cmd>lua require("telescope.builtin").find_files()<cr>' },
+ -- P.roject F.iles
+ { "<leader>pv", '<cmd>lua require("telescope.builtin").find_files()<cr>' },
+
+ -- P.roject S.earch
+ { "<leader>ps", '<cmd>lua require("telescope.builtin").grep_string({search = vim.fn.input("Grep > ")})<cr>' },
- -- F.ind H.elp
- { "<leader>fh", '<cmd>lua require("telescope.builtin").help_tags()<cr>' },
-- F.ind Q.uickfix
- { "<leader>fq", '<cmd>lua require("telescope.builtin").quickfix()<cr>' },
+ { "<leader>qf", '<cmd>lua require("telescope.builtin").quickfix()<cr>' },
-- F.ind G.it (files known to git / not ignored or untracked)
- { "<leader>fg", '<cmd>lua require("telescope.builtin").git_files()<cr>' },
-
- -- F.ind C.ommit ( checkout )
- { "<leader>fc", '<cmd>lua require("telescope.builtin").git_commits()<cr>' },
+ { "<C-p>", '<cmd>lua require("telescope.builtin").git_files()<cr>' },
-- F.ind B.ranch
- { "<leader>fs", '<cmd>lua require("telescope.builtin").grep_branches()<cr>' },
+ { "<leader>fb", '<cmd>lua require("telescope.builtin").grep_branches()<cr>' },
},
cmd = {
"Telescope",