Commit 6c78e62
Eric Bower
·
2026-07-28 10:14:43 -0400 EDT
parent 32efe6e
chore(nvim): :salute:
1 files changed,
+0,
-126
+0,
-126
1@@ -1,126 +0,0 @@
2---[[
3- erock's minimal config
4- ======================
5-
6- design goals:
7- - single file
8- - use native nvim features (>= v0.12)
9- - use default keybindings unless painful otherwise
10- - use built-ins unless painful otherwise
11- - use default colorschemes
12- - plugins must be integral to workflow
13-]]
14-local vim = vim -- suppress lsp warnings
15-local o = vim.opt
16-o.tabstop = 2
17-o.shiftwidth = 2
18-o.softtabstop = 2
19-o.expandtab = true
20-o.wrap = false
21-o.autoread = true
22-o.list = true
23-o.signcolumn = "yes"
24-o.backspace = "indent,eol,start"
25-o.shell = "/bin/bash"
26-o.colorcolumn = "100"
27-o.completeopt = { "menuone", "noselect", "popup" }
28-o.wildmode = { "lastused", "full" }
29-o.pumheight = 15
30-o.laststatus = 0
31-o.winborder = "rounded"
32-o.undofile = true
33-o.ignorecase = true
34-o.smartcase = true
35-o.swapfile = false
36-o.foldmethod = "indent"
37-o.foldlevelstart = 99
38-local g = vim.g
39-g.mapleader = " "
40-g.maplocalleader = " "
41-
42-local opts = { silent = true }
43-local map = vim.keymap.set
44-map("t", "<Esc>", [[<C-\><C-n>]], opts) -- exit terminal mode
45-map("n", "Q", "<nop>", opts) -- disable "Q"
46-map("n", "<C-k>", "<cmd>wincmd k<cr>", opts) -- navigate splits
47-map("n", "<C-j>", "<cmd>wincmd j<cr>", opts)
48-map("n", "<C-h>", "<cmd>wincmd h<cr>", opts)
49-map("n", "<C-l>", "<cmd>wincmd l<cr>", opts)
50-map("n", "<leader>q", "<cmd>bd!<cr>", opts)
51-map("n", "<leader>t", "<cmd>term fish<cr>", opts)
52-map({ "n", "v" }, "<leader>u", "<cmd>GitLink<cr>", opts)
53-map("n", "<leader>e", vim.diagnostic.open_float, opts)
54-map("n", "<leader>y", function() -- copy relative filepath to clipboard
55- vim.fn.setreg("+", vim.fn.expand("%"))
56-end)
57-map("n", "<leader>r", function() -- toggle lsp loclist
58- local loclist_win = vim.fn.getloclist(0, { winid = 0 }).winid
59- if loclist_win > 0 then
60- vim.cmd("lclose")
61- else
62- vim.diagnostic.setloclist({ open = true })
63- end
64-end, opts)
65-map("n", "<leader>s", function() -- toggle quickfix
66- for _, win in ipairs(vim.fn.getwininfo()) do
67- if win.quickfix == 1 then
68- vim.cmd("cclose")
69- return
70- end
71- end
72- vim.cmd("copen")
73-end)
74-map("n", "<leader>d", ":DiffviewOpen ")
75-map("n", "<leader>a", "<cmd>lua MiniFiles.open()<cr>")
76-map("n", "<leader>f", "<cmd>Pick files<cr>")
77-map("n", "<leader>g", "<cmd>Pick grep_live<cr>")
78-map("n", "<leader>b", ":b ")
79-
80-local augroup = vim.api.nvim_create_augroup("erock.cfg", { clear = true })
81-local autocmd = vim.api.nvim_create_autocmd
82-autocmd("Filetype", { group = augroup, pattern = "make", command = "setlocal noexpandtab tabstop=4 shiftwidth=4" })
83-autocmd("BufEnter", { -- disable automatic newline comment continuation
84- callback = function()
85- o.formatoptions = vim.opt.formatoptions:remove({ "c", "r", "o" })
86- end,
87-})
88-
89-local function setup_lsp()
90- vim.lsp.enable({
91- "gopls", -- os package mgr: gopls
92- "pyright", -- npm i -g pyright
93- "tsgo", -- npm i -g @typescript/native-preview
94- "zls", -- os package mgr: zls
95- })
96-
97- autocmd("LspAttach", {
98- group = augroup,
99- callback = function(ev)
100- local bufopts = { noremap = true, silent = true, buffer = ev.buf }
101- map("n", "grd", vim.lsp.buf.definition, bufopts)
102- map("i", "<C-k>", vim.lsp.completion.get, bufopts) -- open completion menu manually
103- local client = assert(vim.lsp.get_client_by_id(ev.data.client_id))
104- local methods = vim.lsp.protocol.Methods
105- if client:supports_method(methods.textDocument_completion) then
106- vim.lsp.completion.enable(true, client.id, ev.buf, { autotrigger = true })
107- end
108- end,
109- })
110-end
111-
112-vim.pack.add({
113- "https://github.com/neovim/nvim-lspconfig",
114- "https://github.com/nvim-mini/mini.pick",
115- "https://github.com/karb94/neoscroll.nvim",
116- "https://github.com/linrongbin16/gitlinker.nvim",
117- "https://github.com/nvim-mini/mini.files",
118-})
119-
120-vim.cmd("colorscheme default")
121-
122-require("vim._extui").enable({}) -- https://github.com/neovim/neovim/pull/27855
123-setup_lsp()
124-require("neoscroll").setup({ duration_multiplier = 0.3 })
125-require("gitlinker").setup()
126-require("mini.pick").setup()
127-require("mini.files").setup()