updated, pretty much finished, nvim config :D

This commit is contained in:
Solomon Laing 2022-08-23 17:03:37 +09:30
parent e2b02e081b
commit 641cc38811
17 changed files with 248 additions and 291 deletions

View File

@ -14,7 +14,7 @@ require("user.comment")
require("user.gitsigns") require("user.gitsigns")
require("user.nvim-tree") require("user.nvim-tree")
require("user.bufferline") require("user.bufferline")
require("user.toggleterm") require("user.toggleterm") -- Need to look into this and how it's configured.
require("user.project") require("user.project")
require("user.impatient") require("user.impatient")
require("user.indentline") require("user.indentline")
@ -23,26 +23,27 @@ require("user.whichkey")
-- Not sure I want to use this yet. -- Not sure I want to use this yet.
-- require "user.hop" -- require "user.hop"
require("user.matchup") require("user.matchup")
require "user.numb" require("user.numb")
require("user.colorizer") require("user.colorizer")
require "user.spectre" require("user.spectre")
require("user.zen-mode") require("user.zen-mode")
require("user.neoscroll") require("user.neoscroll")
require("user.todo-comments") require("user.todo-comments")
require("user.symbol-outline") require("user.symbol-outline") -- not working? look into further...
require("user.notify") require("user.notify")
require("user.ts-context") require("user.ts-context")
-- I can look at this in Chritian Chiarulli's config if I wish, for now I can't be bothered. -- I can look at this in Chritian Chiarulli's config if I wish, for now I can't be bothered.
-- require("user.copilot") -- require("user.copilot")
require("user.functions") require("user.functions")
require("user.illuminate") require("user.illuminate")
require("user.dap") require("user.dap") -- Need to work this one out.
require "user.lir" -- require("user.lir")
require("user.winbar") require("user.winbar")
require("user.nvim-webdev-icons") require("user.nvim-webdev-icons")
require "user.fidget" require("user.fidget")
require("user.dressing")
require("user.browse") require("user.browse")
require("user.surround") require("user.surround") -- This need reconfiguration and fixing
require("user.harpoon") require("user.harpoon") -- mark files and navigate them through a nice ui or with keys (good for large codebases)
require("user.vim-slash") require("user.vim-slash")
require("user.lualine") require("user.lualine")

View File

@ -13,14 +13,40 @@ end
local icons = require "user.icons" local icons = require "user.icons"
-- dashboard.section.header.val = {
-- [[ __ ]],
-- [[ ___ ___ ___ __ __ /\_\ ___ ___ ]],
-- [[ / _ `\ / __`\ / __`\/\ \/\ \\/\ \ / __` __`\ ]],
-- [[/\ \/\ \/\ __//\ \_\ \ \ \_/ |\ \ \/\ \/\ \/\ \ ]],
-- [[\ \_\ \_\ \____\ \____/\ \___/ \ \_\ \_\ \_\ \_\]],
-- [[ \/_/\/_/\/____/\/___/ \/__/ \/_/\/_/\/_/\/_/]],
-- }
-- dashboard.section.header.val = {
-- [[ ▟▙ ]],
-- [[ ▝▘ ]],
-- [[ ██▃▅▇█▆▖ ▗▟████▙▖ ▄████▄ ██▄ ▄██ ██ ▗▟█▆▄▄▆█▙▖]],
-- [[ ██▛▔ ▝██ ██▄▄▄▄██ ██▛▔▔▜██ ▝██ ██▘ ██ ██▛▜██▛▜██]],
-- [[ ██ ██ ██▀▀▀▀▀▘ ██▖ ▗██ ▜█▙▟█▛ ██ ██ ██ ██]],
-- [[ ██ ██ ▜█▙▄▄▄▟▊ ▀██▙▟██▀ ▝████▘ ██ ██ ██ ██]],
-- [[ ▀▀ ▀▀ ▝▀▀▀▀▀ ▀▀▀▀ ▀▀ ▀▀ ▀▀ ▀▀ ▀▀]],
-- }
-- ▄▀▀▄ ▀▄ ▄▀▀█▄▄▄▄ ▄▀▀▀▀▄ ▄▀▀▄ ▄▀▀▄ ▄▀▀█▀▄ ▄▀▀▄ ▄▀▄
-- █ █ █ █ ▐ ▄▀ ▐ █ █ █ █ █ █ █ █ █ █ ▀ █
-- ▐ █ ▀█ █▄▄▄▄▄ █ █ ▐ █ █ ▐ █ ▐ ▐ █ █
-- █ █ █ ▌ ▀▄ ▄▀ █ ▄▀ █ █ █
-- ▄▀ █ ▄▀▄▄▄▄ ▀▀▀▀ ▀▄▀ ▄▀▀▀▀▀▄ ▄▀ ▄▀
-- █ ▐ █ ▐ █ █ █ █
-- ▐ ▐ ▐ ▐ ▐ ▐
dashboard.section.header.val = { dashboard.section.header.val = {
[[ __ ]], [[ , __ ___ __. _ __ ` , _ , _ ]],
[[ ___ ___ ___ __ __ /\_\ ___ ___ ]], [[ |' `. .' ` .' \ | / | |' `|' `.]],
[[ / _ `\ / __`\ / __`\/\ \/\ \\/\ \ / __` __`\ ]], [[ | | |----' | | ` / | | | |]],
[[/\ \/\ \/\ __//\ \_\ \ \ \_/ |\ \ \/\ \/\ \/\ \ ]], [[ / | `.___, `._.' \/ / / ' /]],
[[\ \_\ \_\ \____\ \____/\ \___/ \ \_\ \_\ \_\ \_\]],
[[ \/_/\/_/\/____/\/___/ \/__/ \/_/\/_/\/_/\/_/]],
} }
dashboard.section.buttons.val = { dashboard.section.buttons.val = {
button("f", icons.documents.Files .. " Find file", ":Telescope find_files <CR>"), button("f", icons.documents.Files .. " Find file", ":Telescope find_files <CR>"),
button("e", icons.ui.NewFile .. " New file", ":ene <BAR> startinsert <CR>"), button("e", icons.ui.NewFile .. " New file", ":ene <BAR> startinsert <CR>"),
@ -37,7 +63,11 @@ local function footer()
-- local fortune = handle:read("*a") -- local fortune = handle:read("*a")
-- handle:close() -- handle:close()
-- return fortune -- return fortune
return "inkletblot.com" return {
[[┬┌┐┌┬┌─┬ ┌─┐┌┬┐┌┐ ┬ ┌─┐┌┬┐┌─┐┌─┐┌┬┐]],
[[││││├┴┐│ ├┤ │ ├┴┐│ │ │ │ │ │ ││││]],
[[┴┘└┘┴ ┴┴─┘└─┘ ┴ └─┘┴─┘└─┘ ┴o└─┘└─┘┴ ┴]],
}
end end
dashboard.section.footer.val = footer() dashboard.section.footer.val = footer()

View File

@ -38,17 +38,6 @@ vim.api.nvim_create_autocmd({ "FileType" }, {
end, end,
}) })
vim.api.nvim_create_autocmd({ "FileType" }, {
pattern = { "Jaq" },
callback = function()
vim.cmd [[
nnoremap <silent> <buffer> <m-r> :close<CR>
" nnoremap <silent> <buffer> <m-r> <NOP>
set nobuflisted
]]
end,
})
vim.api.nvim_create_autocmd({ "BufEnter" }, { vim.api.nvim_create_autocmd({ "BufEnter" }, {
pattern = { "" }, pattern = { "" },
callback = function() callback = function()
@ -170,17 +159,6 @@ vim.api.nvim_create_autocmd({ "CursorHold" }, {
end, end,
}) })
-- vim.api.nvim_create_autocmd({ "ModeChanged" }, {
-- callback = function()
-- local luasnip = require "luasnip"
-- if luasnip.expand_or_jumpable() then
-- -- ask maintainer for option to make this silent
-- -- luasnip.unlink_current()
-- vim.cmd [[silent! lua require("luasnip").unlink_current()]]
-- end
-- end,
-- })
vim.api.nvim_create_autocmd({ "BufWritePost" }, { vim.api.nvim_create_autocmd({ "BufWritePost" }, {
pattern = { "*.ts" }, pattern = { "*.ts" },
callback = function() callback = function()
@ -188,10 +166,13 @@ vim.api.nvim_create_autocmd({ "BufWritePost" }, {
end, end,
}) })
-- Prevent auto comment on next line
vim.cmd [[autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o]] vim.cmd [[autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o]]
-- Set filetype to tex for .tex files?
vim.cmd [[autocmd BufRead,BufNewFile *.tex set filetype=tex]] vim.cmd [[autocmd BufRead,BufNewFile *.tex set filetype=tex]]
-- Trim whitespace from files on save
vim.cmd [[ vim.cmd [[
autocmd BufWritePre * let currPos = getpos(".") autocmd BufWritePre * let currPos = getpos(".")
autocmd BufWritePre * %s/\s\+$//e autocmd BufWritePre * %s/\s\+$//e
@ -200,6 +181,8 @@ autocmd BufWritePre *.[ch] %s/\%$/\r/e
autocmd BufWritePre * cal cursor(currPos[1], currPos[2]) autocmd BufWritePre * cal cursor(currPos[1], currPos[2])
]] ]]
-- Recompile and restart Xmonad on save of config file for Xmonad or Xmobar
vim.cmd [[autocmd BufWritePost ~/.xmonad/xmonad.hs,~/.config/xmobar/xmobar-main.hs,~/.config/xmobar/xmobar-sub.hs,~/.config/xmobar/xmobar-single.hs !xmonad --recompile && xmonad --restart]] vim.cmd [[autocmd BufWritePost ~/.xmonad/xmonad.hs,~/.config/xmobar/xmobar-main.hs,~/.config/xmobar/xmobar-sub.hs,~/.config/xmobar/xmobar-single.hs !xmonad --recompile && xmonad --restart]]
-- Run custom textclear command when exiting a .tex file (cleanup files)
vim.cmd [[autocmd VimLeave *.tex !texclear %]] vim.cmd [[autocmd VimLeave *.tex !texclear %]]

View File

@ -8,6 +8,7 @@ browse.setup {
} }
local bookmarks = { local bookmarks = {
"https://duckduckgo.com/",
"https://www.chrisatmachine.com/", "https://www.chrisatmachine.com/",
"https://github.com/christianchiarulli", "https://github.com/christianchiarulli",
"https://github.com/rockerBOO/awesome-neovim", "https://github.com/rockerBOO/awesome-neovim",
@ -15,8 +16,6 @@ local bookmarks = {
"https://doc.rust-lang.org/book/", "https://doc.rust-lang.org/book/",
"https://aur.archlinux.org/packages/", "https://aur.archlinux.org/packages/",
"https://news.ycombinator.com/", "https://news.ycombinator.com/",
-- "https://github.com/neovim/neovim",
-- "https://neovim.discourse.group/",
} }
local function command(name, rhs, opts) local function command(name, rhs, opts)
@ -53,4 +52,6 @@ local opts = { noremap = true, silent = true }
local keymap = vim.api.nvim_set_keymap local keymap = vim.api.nvim_set_keymap
keymap("n", "<m-o>", "<cmd>BrowseBookmarks<cr>", opts) keymap("n", "<m-o>", "<cmd>BrowseBookmarks<cr>", opts)
keymap("n", "<m-i>", "<cmd>BrowseInputSearch<cr>", opts)
-- Broken, causes segfault.
-- keymap("n", "<m-i>", "<cmd>BrowseInputSearch<cr>", opts)

View File

@ -28,11 +28,6 @@ local compare = require "cmp.config.compare"
require("luasnip/loaders/from_vscode").lazy_load() require("luasnip/loaders/from_vscode").lazy_load()
-- local check_backspace = function()
-- local col = vim.fn.col "." - 1
-- return col == 0 or vim.fn.getline("."):sub(col, col):match "%s"
-- end
local check_backspace = function() local check_backspace = function()
local line, col = unpack(vim.api.nvim_win_get_cursor(0)) local line, col = unpack(vim.api.nvim_win_get_cursor(0))
return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match "%s" == nil return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match "%s" == nil
@ -42,6 +37,7 @@ local icons = require "user.icons"
local kind_icons = icons.kind local kind_icons = icons.kind
-- I don't have most of the following but they can serve as future examples
vim.api.nvim_set_hl(0, "CmpItemKindCopilot", { fg = "#6CC644" }) vim.api.nvim_set_hl(0, "CmpItemKindCopilot", { fg = "#6CC644" })
vim.api.nvim_set_hl(0, "CmpItemKindTabnine", { fg = "#CA42F0" }) vim.api.nvim_set_hl(0, "CmpItemKindTabnine", { fg = "#CA42F0" })
vim.api.nvim_set_hl(0, "CmpItemKindEmoji", { fg = "#FDE030" }) vim.api.nvim_set_hl(0, "CmpItemKindEmoji", { fg = "#FDE030" })
@ -69,7 +65,6 @@ cmp.setup {
["<C-b>"] = cmp.mapping(cmp.mapping.scroll_docs(-1), { "i", "c" }), ["<C-b>"] = cmp.mapping(cmp.mapping.scroll_docs(-1), { "i", "c" }),
["<C-f>"] = cmp.mapping(cmp.mapping.scroll_docs(1), { "i", "c" }), ["<C-f>"] = cmp.mapping(cmp.mapping.scroll_docs(1), { "i", "c" }),
["<C-Space>"] = cmp.mapping(cmp.mapping.complete(), { "i", "c" }), ["<C-Space>"] = cmp.mapping(cmp.mapping.complete(), { "i", "c" }),
["<m-o>"] = cmp.mapping(cmp.mapping.complete(), { "i", "c" }),
-- ["<C-y>"] = cmp.config.disable, -- Specify `cmp.config.disable` if you want to remove the default `<C-y>` mapping. -- ["<C-y>"] = cmp.config.disable, -- Specify `cmp.config.disable` if you want to remove the default `<C-y>` mapping.
["<C-c>"] = cmp.mapping { ["<C-c>"] = cmp.mapping {
i = cmp.mapping.abort(), i = cmp.mapping.abort(),
@ -170,15 +165,11 @@ cmp.setup {
end, end,
}, },
sources = { sources = {
{ name = "crates", group_index = 1 }, {
name = "crates", group_index = 1 },
{ {
name = "copilot", name = "copilot",
-- keyword_length = 0,
max_item_count = 3, max_item_count = 3,
-- trigger_characters = {
-- { ".", ":", "(", "'", '"', "[", ",", "#", "*", "@", "|", "=", "-", "{", "/", "\\", "+", "?", " ", "\t", "\n" },
-- },
group_index = 2, group_index = 2,
}, },
{ {
@ -213,8 +204,6 @@ cmp.setup {
sorting = { sorting = {
priority_weight = 2, priority_weight = 2,
comparators = { comparators = {
-- require("copilot_cmp.comparators").prioritize,
-- require("copilot_cmp.comparators").score,
compare.offset, compare.offset,
compare.exact, compare.exact,
-- compare.scopes, -- compare.scopes,
@ -225,8 +214,6 @@ cmp.setup {
compare.sort_text, compare.sort_text,
compare.length, compare.length,
compare.order, compare.order,
-- require("copilot_cmp.comparators").prioritize,
-- require("copilot_cmp.comparators").score,
}, },
}, },
confirm_opts = { confirm_opts = {
@ -235,10 +222,6 @@ cmp.setup {
}, },
window = { window = {
documentation = false, documentation = false,
-- documentation = {
-- border = "rounded",
-- winhighlight = "NormalFloat:Pmenu,NormalFloat:Pmenu,CursorLine:PmenuSel,Search:None",
-- },
completion = { completion = {
border = "rounded", border = "rounded",
winhighlight = "NormalFloat:Pmenu,NormalFloat:Pmenu,CursorLine:PmenuSel,Search:None", winhighlight = "NormalFloat:Pmenu,NormalFloat:Pmenu,CursorLine:PmenuSel,Search:None",

View File

@ -1,3 +1,7 @@
-- NOTE!
-- I AM NOT USING THIS, IT'S HERE IF I CHOOSE TO IN THE FUTURE!
-- PROBABLY NOT THOUGH...
-- For copilot.vim -- For copilot.vim
-- vim.g.copilot_filetypes = { -- vim.g.copilot_filetypes = {
-- ["*"] = false, -- ["*"] = false,

View File

@ -7,4 +7,5 @@ local h_status_ok, harpoon = pcall(require, "harpoon")
if not h_status_ok then if not h_status_ok then
return return
end end
telescope.load_extension "harpoon" telescope.load_extension "harpoon"

View File

@ -1,3 +1,6 @@
-- NOTE!
-- Not using this currently, might be useful in future but for now I'm happy with default nvim.
local status_ok, hop = pcall(require, "hop") local status_ok, hop = pcall(require, "hop")
if not status_ok then if not status_ok then
return return

View File

@ -2,18 +2,19 @@
-- go to the above and then enter <c-v>u<unicode> and the symbold should appear -- go to the above and then enter <c-v>u<unicode> and the symbold should appear
-- or go here and upload the font file: https://mathew-kurian.github.io/CharacterMap/ -- or go here and upload the font file: https://mathew-kurian.github.io/CharacterMap/
-- find more here: https://www.nerdfonts.com/cheat-sheet -- find more here: https://www.nerdfonts.com/cheat-sheet
return { return {
kind = { kind = {
Text = "", Text = "",
-- Method = "m", -- Method = "m",
-- Function = "", Function = "",
-- Constructor = "", -- Constructor = "",
Method = "", Method = "",
Function = "", -- Function = "",
Constructor = "", Constructor = "",
Field = "", Field = "",
-- Variable = "", -- Variable = "",
Variable = "", Variable = "",
Namespace = "",
Class = "", Class = "",
Interface = "", Interface = "",
-- Module = "", -- Module = "",
@ -22,6 +23,7 @@
Unit = "", Unit = "",
Value = "", Value = "",
Enum = "", Enum = "",
Key = "k",
-- Keyword = "", -- Keyword = "",
Keyword = "", Keyword = "",
-- Snippet = "", -- Snippet = "",
@ -42,6 +44,7 @@
Number = "", Number = "",
String = "", String = "",
Boolean = "", Boolean = "",
Null = "",
Object = "", Object = "",
}, },
documents = { documents = {
@ -110,4 +113,4 @@
Package = "", Package = "",
CircuitBoard = "", CircuitBoard = "",
}, },
} }

View File

@ -1,3 +1,11 @@
vim.g.Illuminate_ftblacklist = { "alpha", "NvimTree", "DressingSelect", "harpoon" } require('illuminate').configure({
vim.api.nvim_set_keymap("n", "<a-n>", '<cmd>lua require"illuminate".next_reference{wrap=true}<cr>', { noremap = true }) providers = {
vim.api.nvim_set_keymap("n", "<a-p>", '<cmd>lua require"illuminate".next_reference{reverse=true,wrap=true}<cr>', { noremap = true }) 'lsp',
'treesitter',
'regex',
},
delay = 100,
filetypes_denylist = {
'alpha',
},
})

View File

@ -57,15 +57,8 @@ keymap("n", "<leader>o", ":setlocal spell! spelllang=en_us<CR>", opts)
-- Tree -- Tree
keymap("n", "<leader>n", ":NvimTreeToggle<CR>", opts) keymap("n", "<leader>n", ":NvimTreeToggle<CR>", opts)
-- Telescope
keymap("n", "<leader>ff", ":Telescope find_files<CR>", opts)
keymap("n", "<leader>ft", ":Telescope live_grep<CR>", opts)
keymap("n", "<leader>fp", ":Telescope projects<CR>", opts)
keymap("n", "<leader>fb", ":Telescope buffers<CR>", opts)
keymap("n", "<leader>fr", ":Telescope oldfiles<CR>", opts)
-- Goyo -- Goyo
keymap("n", "<leader>f", ":Goyo<CR>", opts) -- keymap("n", "<leader>f", ":Goyo<CR>", opts)
-- Copy and Paste -- Copy and Paste
keymap("n", "<C-c>", '"+y', opts) keymap("n", "<C-c>", '"+y', opts)
@ -88,7 +81,6 @@ keymap("n", "w!!", 'execute "silent! write !sudo tee % >/dev/null" <bar> edit!',
-- ZenMode -- ZenMode
keymap("n", "<C-z>", "<cmd>ZenMode<cr>", opts) keymap("n", "<C-z>", "<cmd>ZenMode<cr>", opts)
-- Temporary till I work out whichkey. -- Save
keymap("n", "gr", "<cmd>lua vim.lsp.buf.references()<CR>", opts) keymap("i", "<C-s>", "<ESC>:w<CR>a", opts)
keymap("n", "gd", "<cmd>lua vim.lsp.buf.definition()<CR>", opts) keymap("n", "<C-s>", ":w<CR>", opts)
keymap("n", "gi", "<cmd>lua vim.lsp.buf.implementation()<CR>", opts)

View File

@ -97,16 +97,16 @@ end
local function lsp_keymaps(bufnr) local function lsp_keymaps(bufnr)
local opts = { noremap = true, silent = true } local opts = { noremap = true, silent = true }
vim.api.nvim_buf_set_keymap(bufnr, "n", "gd", "<cmd>Telescope lsp_definitions<CR>", opts) -- vim.api.nvim_buf_set_keymap(bufnr, "n", "gd", "<cmd>Telescope lsp_definitions<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "gD", "<cmd>Telescope lsp_declarations<CR>", opts) -- vim.api.nvim_buf_set_keymap(bufnr, "n", "gD", "<cmd>Telescope lsp_declarations<CR>", opts)
-- vim.api.nvim_buf_set_keymap(bufnr, "n", "K", "<cmd>lua vim.lsp.buf.hover()<CR>", opts) -- vim.api.nvim_buf_set_keymap(bufnr, "n", "K", "<cmd>lua vim.lsp.buf.hover()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "gI", "<cmd>Telescope lsp_implementations<CR>", opts) -- vim.api.nvim_buf_set_keymap(bufnr, "n", "gI", "<cmd>Telescope lsp_implementations<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "gr", "<cmd>Telescope lsp_references<CR>", opts) -- vim.api.nvim_buf_set_keymap(bufnr, "n", "gr", "<cmd>Telescope lsp_references<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "gl", "<cmd>lua vim.diagnostic.open_float()<CR>", opts) -- vim.api.nvim_buf_set_keymap(bufnr, "n", "gl", "<cmd>lua vim.diagnostic.open_float()<CR>", opts)
vim.cmd [[ command! Format execute 'lua vim.lsp.buf.format({ async = true })' ]] -- vim.cmd [[ command! Format execute 'lua vim.lsp.buf.format({ async = true })' ]]
vim.api.nvim_buf_set_keymap(bufnr, "n", "gs", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts) -- vim.api.nvim_buf_set_keymap(bufnr, "n", "gs", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "<M-f>", "<cmd>Format<cr>", opts) -- vim.api.nvim_buf_set_keymap(bufnr, "n", "<M-f>", "<cmd>Format<cr>", opts)
vim.api.nvim_buf_set_keymap(bufnr, "n", "<M-a>", "<cmd>lua vim.lsp.buf.code_action()<cr>", opts) -- vim.api.nvim_buf_set_keymap(bufnr, "n", "<M-a>", "<cmd>lua vim.lsp.buf.code_action()<cr>", opts)
-- vim.api.nvim_buf_set_keymap(bufnr, "n", "<M-s>", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts) -- vim.api.nvim_buf_set_keymap(bufnr, "n", "<M-s>", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts)
-- vim.api.nvim_buf_set_keymap(bufnr, "n", "<leader>rn", "<cmd>lua vim.lsp.buf.rename()<CR>", opts) -- vim.api.nvim_buf_set_keymap(bufnr, "n", "<leader>rn", "<cmd>lua vim.lsp.buf.rename()<CR>", opts)
-- vim.api.nvim_buf_set_keymap(bufnr, "n", "<leader>ca", "<cmd>lua vim.lsp.buf.code_action()<CR>", opts) -- vim.api.nvim_buf_set_keymap(bufnr, "n", "<leader>ca", "<cmd>lua vim.lsp.buf.code_action()<CR>", opts)
@ -118,8 +118,7 @@ end
M.on_attach = function(client, bufnr) M.on_attach = function(client, bufnr)
lsp_keymaps(bufnr) lsp_keymaps(bufnr)
-- This is currently broken, not sure why. lsp_highlight_document(client)
-- lsp_highlight_document(client)
attach_navic(client, bufnr) attach_navic(client, bufnr)
if client.name == "tsserver" then if client.name == "tsserver" then

View File

@ -1,5 +1,6 @@
local status_ok, navic = pcall(require, "nvim-navic") local status_ok, navic = pcall(require, "nvim-navic")
if not status_ok then if not status_ok then
print("navic error!")
return return
end end
@ -8,32 +9,32 @@ local icons = require "user.icons"
navic.setup { navic.setup {
icons = { icons = {
File = '', File = icons.kind.File,
Module = '', Module = icons.kind.Module,
Namespace = '', Namespace = icons.kind.Namespace,
Package = '', Package = icons.ui.Package,
Class = '', Class = icons.kind.Class,
Method = '', Method = icons.kind.Method,
Property = '', Property = icons.kind.Property,
Field = '', Field = icons.kind.Field,
Constructor = '', Constructor = icons.kind.Constructor,
Enum = '', Enum = icons.kind.Enum,
Interface = '', Interface = icons.kind.Interface,
Function = '', Function = icons.kind.Function,
Variable = '', Variable = icons.kind.Variable,
Constant = '', Constant = icons.kind.Constant,
String = '', String = icons.type.String,
Number = '', Number = icons.type.Number,
Boolean = '', Boolean = icons.type.Boolean,
Array = '', Array = icons.type.Array,
Object = '', Object = icons.type.Object,
Key = '', Key = icons.kind.Key,
Null = '', Null = icons.type.Null,
EnumMember = '', EnumMember = icons.kind.EnumMember,
Struct = '', Struct = icons.kind.Struct,
Event = '', Event = icons.kind.Event,
Operator = '', Operator = icons.kind.Operator,
TypeParameter = '' TypeParameter = icons.kind.TypeParameter
}, },
highlight = true, highlight = true,
@ -41,4 +42,3 @@ navic.setup {
depth_limit = 0, depth_limit = 0,
depth_limit_indicator = "..", depth_limit_indicator = "..",
} }

View File

@ -26,8 +26,8 @@ local t = {}
-- t['<C-e>'] = {'scroll', { '0.10', 'false', '100'}} -- t['<C-e>'] = {'scroll', { '0.10', 'false', '100'}}
-- t['H'] = {'scroll', {'-0.10', 'true', '100'}} -- t['H'] = {'scroll', {'-0.10', 'true', '100'}}
-- t['L'] = {'scroll', { '0.10', 'true', '100'}} -- t['L'] = {'scroll', { '0.10', 'true', '100'}}
t["<c-k>"] = { "scroll", { "-vim.wo.scroll", "true", "250" } } -- t["<c-k>"] = { "scroll", { "-vim.wo.scroll", "true", "250" } }
t["<c-j>"] = { "scroll", { "vim.wo.scroll", "true", "250" } } -- t["<c-j>"] = { "scroll", { "vim.wo.scroll", "true", "250" } }
-- t['zt'] = {'zt', {'250'}} -- t['zt'] = {'zt', {'250'}}
-- t['zz'] = {'zz', {'250'}} -- t['zz'] = {'zz', {'250'}}
-- t['zb'] = {'zb', {'250'}} -- t['zb'] = {'zb', {'250'}}

View File

@ -64,7 +64,7 @@ return packer.startup(function(use)
use "simrat39/symbols-outline.nvim" use "simrat39/symbols-outline.nvim"
use "b0o/SchemaStore.nvim" use "b0o/SchemaStore.nvim"
use "RRethy/vim-illuminate" use "RRethy/vim-illuminate"
use "j-hui/fidget.nvim" use "j-hui/fidget.nvim" -- displays LSP progress in bottom right
use "lvimuser/lsp-inlayhints.nvim" use "lvimuser/lsp-inlayhints.nvim"
-- use "simrat39/inlay-hints.nvim" -- use "simrat39/inlay-hints.nvim"
use "https://git.sr.ht/~whynothugo/lsp_lines.nvim" use "https://git.sr.ht/~whynothugo/lsp_lines.nvim"
@ -88,7 +88,7 @@ return packer.startup(function(use)
use "kylechui/nvim-surround" use "kylechui/nvim-surround"
-- Marks -- Marks
use "christianchiarulli/harpoon" use "christianchiarulli/harpoon" -- mark files and navigate them through a nice ui or with keys (good for large codebases)
use "MattesGroeger/vim-bookmarks" use "MattesGroeger/vim-bookmarks"
-- Fuzzy Finder/Telescope -- Fuzzy Finder/Telescope
@ -109,13 +109,14 @@ return packer.startup(function(use)
-- Utility -- Utility
use "rcarriga/nvim-notify" use "rcarriga/nvim-notify"
use "stevearc/dressing.nvim" use "stevearc/dressing.nvim" -- extends the vim api for window (window dressing)
use "ghillb/cybu.nvim" use "ghillb/cybu.nvim"
use "moll/vim-bbye" use "moll/vim-bbye"
use "lewis6991/impatient.nvim" use "lewis6991/impatient.nvim"
use "lalitmee/browse.nvim" use "lalitmee/browse.nvim"
use 'junegunn/goyo.vim' use 'junegunn/goyo.vim'
use 'junegunn/limelight.vim' use 'junegunn/limelight.vim'
use 'folke/trouble.nvim'
-- Icon -- Icon
use "kyazdani42/nvim-web-devicons" use "kyazdani42/nvim-web-devicons"
@ -140,7 +141,7 @@ return packer.startup(function(use)
-- File Explorer -- File Explorer
use "kyazdani42/nvim-tree.lua" use "kyazdani42/nvim-tree.lua"
use "christianchiarulli/lir.nvim" -- use "christianchiarulli/lir.nvim"
-- Comment -- Comment
use "numToStr/Comment.nvim" use "numToStr/Comment.nvim"

View File

@ -5,7 +5,7 @@ end
toggleterm.setup { toggleterm.setup {
size = 20, size = 20,
open_mapping = [[<m-0>]], open_mapping = [[<C-0>]],
hide_numbers = true, hide_numbers = true,
shade_filetypes = {}, shade_filetypes = {},
shade_terminals = true, shade_terminals = true,

View File

@ -108,7 +108,6 @@ local m_mappings = {
} }
local mappings = { local mappings = {
-- ["1"] = "which_key_ignore",
a = { "<cmd>lua vim.lsp.buf.code_action()<cr>", "Action" }, a = { "<cmd>lua vim.lsp.buf.code_action()<cr>", "Action" },
b = { "<cmd>Telescope buffers<cr>", "Buffers" }, b = { "<cmd>Telescope buffers<cr>", "Buffers" },
e = { "<cmd>NvimTreeToggle<cr>", "Explorer" }, e = { "<cmd>NvimTreeToggle<cr>", "Explorer" },
@ -118,7 +117,6 @@ local mappings = {
-- h = { "<cmd>nohlsearch<CR>", "No HL" }, -- h = { "<cmd>nohlsearch<CR>", "No HL" },
q = { '<cmd>lua require("user.functions").smart_quit()<CR>', "Quit" }, q = { '<cmd>lua require("user.functions").smart_quit()<CR>', "Quit" },
["/"] = { '<cmd>lua require("Comment.api").toggle.linewise.current()<CR>', "Comment" }, ["/"] = { '<cmd>lua require("Comment.api").toggle.linewise.current()<CR>', "Comment" },
-- ["c"] = { "<cmd>Bdelete!<CR>", "Close Buffer" },
c = { "<cmd>Bdelete!<CR>", "Close Buffer" }, c = { "<cmd>Bdelete!<CR>", "Close Buffer" },
-- :lua require'lir.float'.toggle() -- :lua require'lir.float'.toggle()
@ -130,7 +128,6 @@ local mappings = {
-- P = { "<cmd>lua require('telescope').extensions.projects.projects()<cr>", "Projects" }, -- P = { "<cmd>lua require('telescope').extensions.projects.projects()<cr>", "Projects" },
-- ["R"] = { '<cmd>lua require("renamer").rename()<cr>', "Rename" }, -- ["R"] = { '<cmd>lua require("renamer").rename()<cr>', "Rename" },
-- ["z"] = { "<cmd>ZenMode<cr>", "Zen" }, -- ["z"] = { "<cmd>ZenMode<cr>", "Zen" },
["gy"] = "Link",
B = { B = {
name = "Browse", name = "Browse",
@ -159,26 +156,6 @@ local mappings = {
l = { '<cmd>lua require("user.functions").toggle_option("cursorline")<cr>', "Cursorline" }, l = { '<cmd>lua require("user.functions").toggle_option("cursorline")<cr>', "Cursorline" },
s = { '<cmd>lua require("user.functions").toggle_option("spell")<cr>', "Spell" }, s = { '<cmd>lua require("user.functions").toggle_option("spell")<cr>', "Spell" },
t = { '<cmd>lua require("user.functions").toggle_tabline()<cr>', "Tabline" }, t = { '<cmd>lua require("user.functions").toggle_tabline()<cr>', "Tabline" },
},
-- s = {
-- name = "Split",
-- s = { "<cmd>split<cr>", "HSplit" },
-- v = { "<cmd>vsplit<cr>", "VSplit" },
-- },
s = {
name = "Session",
s = { "<cmd>SaveSession<cr>", "Save" },
r = { "<cmd>RestoreSession<cr>", "Restore" },
x = { "<cmd>DeleteSession<cr>", "Delete" },
f = { "<cmd>Autosession search<cr>", "Find" },
d = { "<cmd>Autosession delete<cr>", "Find Delete" },
-- a = { ":SaveSession<cr>", "test" },
-- a = { ":RestoreSession<cr>", "test" },
-- a = { ":RestoreSessionFromFile<cr>", "test" },
-- a = { ":DeleteSession<cr>", "test" },
}, },
r = { r = {
@ -201,12 +178,6 @@ local mappings = {
x = { "<cmd>lua require'dap'.terminate()<cr>", "Exit" }, x = { "<cmd>lua require'dap'.terminate()<cr>", "Exit" },
}, },
-- nnoremap <silent> <leader>B :lua require'dap'.set_breakpoint(vim.fn.input('Breakpoint condition: '))<CR>
-- nnoremap <silent> <leader>lp :lua require'dap'.set_breakpoint(nil, nil, vim.fn.input('Log point message: '))<CR>
-- require("dapui").open()
-- require("dapui").close()
-- require("dapui").toggle()
f = { f = {
name = "Find", name = "Find",
b = { "<cmd>Telescope git_branches<cr>", "Checkout branch" }, b = { "<cmd>Telescope git_branches<cr>", "Checkout branch" },
@ -216,7 +187,6 @@ local mappings = {
s = { "<cmd>Telescope grep_string<cr>", "Find String" }, s = { "<cmd>Telescope grep_string<cr>", "Find String" },
h = { "<cmd>Telescope help_tags<cr>", "Help" }, h = { "<cmd>Telescope help_tags<cr>", "Help" },
H = { "<cmd>Telescope highlights<cr>", "Highlights" }, H = { "<cmd>Telescope highlights<cr>", "Highlights" },
i = { "<cmd>lua require('telescope').extensions.media_files.media_files()<cr>", "Media" },
l = { "<cmd>Telescope resume<cr>", "Last Search" }, l = { "<cmd>Telescope resume<cr>", "Last Search" },
M = { "<cmd>Telescope man_pages<cr>", "Man Pages" }, M = { "<cmd>Telescope man_pages<cr>", "Man Pages" },
r = { "<cmd>Telescope oldfiles<cr>", "Recent File" }, r = { "<cmd>Telescope oldfiles<cr>", "Recent File" },
@ -246,15 +216,6 @@ local mappings = {
"<cmd>Gitsigns diffthis HEAD<cr>", "<cmd>Gitsigns diffthis HEAD<cr>",
"Diff", "Diff",
}, },
G = {
name = "Gist",
a = { "<cmd>Gist -b -a<cr>", "Create Anon" },
d = { "<cmd>Gist -d<cr>", "Delete" },
f = { "<cmd>Gist -f<cr>", "Fork" },
g = { "<cmd>Gist -b<cr>", "Create" },
l = { "<cmd>Gist -l<cr>", "List" },
p = { "<cmd>Gist -b -p<cr>", "Create Private" },
},
}, },
l = { l = {
@ -295,22 +256,17 @@ local mappings = {
u = { "<cmd>LuaSnipUnlinkCurrent<cr>", "Unlink Snippet" }, u = { "<cmd>LuaSnipUnlinkCurrent<cr>", "Unlink Snippet" },
}, },
-- s = { s = {
-- name = "Surround", name = "Surround",
-- ["."] = { "<cmd>lua require('surround').repeat_last()<cr>", "Repeat" }, ["."] = { "<cmd>lua require('surround').repeat_last()<cr>", "Repeat" },
-- a = { "<cmd>lua require('surround').surround_add(true)<cr>", "Add" }, a = { "<cmd>lua require('surround').surround_add(true)<cr>", "Add" },
-- d = { "<cmd>lua require('surround').surround_delete()<cr>", "Delete" }, d = { "<cmd>lua require('surround').surround_delete()<cr>", "Delete" },
-- r = { "<cmd>lua require('surround').surround_replace()<cr>", "Replace" }, r = { "<cmd>lua require('surround').surround_replace()<cr>", "Replace" },
-- q = { "<cmd>lua require('surround').toggle_quotes()<cr>", "Quotes" }, q = { "<cmd>lua require('surround').toggle_quotes()<cr>", "Quotes" },
-- b = { "<cmd>lua require('surround').toggle_brackets()<cr>", "Brackets" }, b = { "<cmd>lua require('surround').toggle_brackets()<cr>", "Brackets" },
-- }, },
S = { S = {
-- name = "Session",
-- s = { "<cmd>SaveSession<cr>", "Save" },
-- l = { "<cmd>LoadLastSession!<cr>", "Load Last" },
-- d = { "<cmd>LoadCurrentDirSession!<cr>", "Load Last Dir" },
-- f = { "<cmd>Telescope sessions save_current=false<cr>", "Find Session" },
name = "SnipRun", name = "SnipRun",
c = { "<cmd>SnipClose<cr>", "Close" }, c = { "<cmd>SnipClose<cr>", "Close" },
f = { "<cmd>%SnipRun<cr>", "Run File" }, f = { "<cmd>%SnipRun<cr>", "Run File" },
@ -342,14 +298,6 @@ local mappings = {
p = { "<cmd>TSPlaygroundToggle<cr>", "Playground" }, p = { "<cmd>TSPlaygroundToggle<cr>", "Playground" },
r = { "<cmd>TSToggle rainbow<cr>", "Rainbow" }, r = { "<cmd>TSToggle rainbow<cr>", "Rainbow" },
}, },
-- z = {
-- name = "Zen",
-- z = { "<cmd>TZAtaraxis<cr>", "Zen" },
-- m = { "<cmd>TZMinimalist<cr>", "Minimal" },
-- n = { "<cmd>TZNarrow<cr>", "Narrow" },
-- f = { "<cmd>TZFocus<cr>", "Focus" },
-- },
} }
local vopts = { local vopts = {