|
|
|
@ -41,8 +41,7 @@ P.S. You can delete this when you're done too. It's your config now :)
|
|
|
|
|
-- Set <space> as the leader key
|
|
|
|
|
-- See `:help mapleader`
|
|
|
|
|
-- NOTE: Must happen before plugins are required (otherwise wrong leader will be used)
|
|
|
|
|
vim.g.mapleader = ' '
|
|
|
|
|
vim.g.maplocalleader = ' '
|
|
|
|
|
require("custom.evan")
|
|
|
|
|
|
|
|
|
|
-- [[ Install `lazy.nvim` plugin manager ]]
|
|
|
|
|
-- https://github.com/folke/lazy.nvim
|
|
|
|
@ -256,6 +255,16 @@ require('lazy').setup({
|
|
|
|
|
|
|
|
|
|
{ 'ThePrimeagen/vim-be-good' },
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
"ibhagwan/fzf-lua",
|
|
|
|
|
-- optional for icon support
|
|
|
|
|
dependencies = { "nvim-tree/nvim-web-devicons" },
|
|
|
|
|
config = function()
|
|
|
|
|
-- calling `setup` is optional for customization
|
|
|
|
|
require("fzf-lua").setup({})
|
|
|
|
|
end
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
-- NOTE: Next Step on Your Neovim Journey: Add/Configure additional "plugins" for kickstart
|
|
|
|
|
-- These are some example plugins that I've included in the kickstart repository.
|
|
|
|
|
-- Uncomment any of the lines below to enable them.
|
|
|
|
@ -268,7 +277,7 @@ require('lazy').setup({
|
|
|
|
|
-- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going.
|
|
|
|
|
--
|
|
|
|
|
-- For additional information see: https://github.com/folke/lazy.nvim#-structuring-your-plugins
|
|
|
|
|
-- { import = 'custom.plugins' },
|
|
|
|
|
{ import = 'custom.plugins' },
|
|
|
|
|
}, {})
|
|
|
|
|
|
|
|
|
|
-- [[ Setting options ]]
|
|
|
|
@ -323,37 +332,6 @@ vim.o.expandtab = true
|
|
|
|
|
|
|
|
|
|
vim.o.scrolloff = 10
|
|
|
|
|
|
|
|
|
|
-- [[ Basic Keymaps ]]
|
|
|
|
|
|
|
|
|
|
-- Keymaps for better default experience
|
|
|
|
|
-- See `:help vim.keymap.set()`
|
|
|
|
|
vim.keymap.set({ 'n', 'v' }, '<Space>', '<Nop>', { silent = true })
|
|
|
|
|
|
|
|
|
|
-- Remap for dealing with word wrap
|
|
|
|
|
vim.keymap.set('n', 'k', "v:count == 0 ? 'gk' : 'k'", { expr = true, silent = true })
|
|
|
|
|
vim.keymap.set('n', 'j', "v:count == 0 ? 'gj' : 'j'", { expr = true, silent = true })
|
|
|
|
|
|
|
|
|
|
-- Diagnostic keymaps
|
|
|
|
|
vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, { desc = 'Go to previous diagnostic message' })
|
|
|
|
|
vim.keymap.set('n', ']d', vim.diagnostic.goto_next, { desc = 'Go to next diagnostic message' })
|
|
|
|
|
vim.keymap.set('n', '<leader>e', vim.diagnostic.open_float, { desc = 'Open floating diagnostic message' })
|
|
|
|
|
vim.keymap.set('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Open diagnostics list' })
|
|
|
|
|
|
|
|
|
|
-- my keymaps
|
|
|
|
|
-- ctrl u/d and center
|
|
|
|
|
vim.keymap.set('n', '<C-d>', '<C-d>zz')
|
|
|
|
|
vim.keymap.set('n', '<C-u>', '<C-u>zz')
|
|
|
|
|
|
|
|
|
|
-- cursor in middle when search
|
|
|
|
|
vim.keymap.set('n', 'n', 'nzzzv')
|
|
|
|
|
vim.keymap.set('n', 'N', 'Nzzzv')
|
|
|
|
|
|
|
|
|
|
-- greatest remap ever
|
|
|
|
|
vim.keymap.set("x", "<leader>p", [["_dP]])
|
|
|
|
|
|
|
|
|
|
-- next greatest remap ever : asbjornHaland
|
|
|
|
|
vim.keymap.set({"n", "v"}, "<leader>y", [["+y]])
|
|
|
|
|
vim.keymap.set("n", "<leader>Y", [["+Y]])
|
|
|
|
|
|
|
|
|
|
-- [[ Highlight on yank ]]
|
|
|
|
|
-- See `:help vim.highlight.on_yank()`
|
|
|
|
@ -386,7 +364,9 @@ require('telescope').setup {
|
|
|
|
|
|
|
|
|
|
-- Enable telescope fzf native, if installed
|
|
|
|
|
pcall(require('telescope').load_extension, 'fzf')
|
|
|
|
|
pcall(require('telescope').load_extension, 'file_browser')
|
|
|
|
|
|
|
|
|
|
-- Enable comment.nvim
|
|
|
|
|
require('Comment').setup()
|
|
|
|
|
|
|
|
|
|
-- Telescope live_grep in git root
|
|
|
|
|
-- Function to find the git root directory based on the current buffer's path
|
|
|
|
@ -435,22 +415,34 @@ vim.keymap.set('n', '<leader>/', function()
|
|
|
|
|
})
|
|
|
|
|
end, { desc = '[/] Fuzzily search in current buffer' })
|
|
|
|
|
|
|
|
|
|
local function telescope_live_grep_open_files()
|
|
|
|
|
require('telescope.builtin').live_grep {
|
|
|
|
|
grep_open_files = true,
|
|
|
|
|
prompt_title = 'Live Grep in Open Files',
|
|
|
|
|
}
|
|
|
|
|
end
|
|
|
|
|
vim.keymap.set('n', '<leader>s/', telescope_live_grep_open_files, { desc = '[S]earch [/] in Open Files' })
|
|
|
|
|
vim.keymap.set('n', '<leader>ss', require('telescope.builtin').builtin, { desc = '[S]earch [S]elect Telescope' })
|
|
|
|
|
vim.keymap.set('n', '<leader>gf', require('telescope.builtin').git_files, { desc = 'Search [G]it [F]iles' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sf', require('telescope.builtin').find_files, { desc = '[S]earch [F]iles' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sh', require('telescope.builtin').help_tags, { desc = '[S]earch [H]elp' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sw', require('telescope.builtin').grep_string, { desc = '[S]earch current [W]ord' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sg', require('telescope.builtin').live_grep, { desc = '[S]earch by [G]rep' })
|
|
|
|
|
-- local function telescope_live_grep_open_files()
|
|
|
|
|
-- require('telescope.builtin').live_grep {
|
|
|
|
|
-- grep_open_files = true,
|
|
|
|
|
-- prompt_title = 'Live Grep in Open Files',
|
|
|
|
|
-- }
|
|
|
|
|
-- end
|
|
|
|
|
-- vim.keymap.set('n', '<leader>s/', telescope_live_grep_open_files, { desc = '[S]earch [/] in Open Files' })
|
|
|
|
|
-- vim.keymap.set('n', '<leader>ss', require('telescope.builtin').builtin, { desc = '[S]earch [S]elect Telescope' })
|
|
|
|
|
-- vim.keymap.set('n', '<leader>gf', require('telescope.builtin').git_files, { desc = 'Search [G]it [F]iles' })
|
|
|
|
|
-- vim.keymap.set('n', '<leader>sf', require('telescope.builtin').find_files, { desc = '[S]earch [F]iles' })
|
|
|
|
|
-- vim.keymap.set('n', '<leader>sh', require('telescope.builtin').help_tags, { desc = '[S]earch [H]elp' })
|
|
|
|
|
-- vim.keymap.set('n', '<leader>sw', require('telescope.builtin').grep_string, { desc = '[S]earch current [W]ord' })
|
|
|
|
|
-- vim.keymap.set('n', '<leader>sg', require('telescope.builtin').live_grep, { desc = '[S]earch by [G]rep' })
|
|
|
|
|
-- vim.keymap.set('n', '<leader>sG', ':LiveGrepGitRoot<cr>', { desc = '[S]earch by [G]rep on Git Root' })
|
|
|
|
|
-- vim.keymap.set('n', '<leader>sd', require('telescope.builtin').diagnostics, { desc = '[S]earch [D]iagnostics' })
|
|
|
|
|
-- vim.keymap.set('n', '<leader>sr', require('telescope.builtin').resume, { desc = '[S]earch [R]esume' })
|
|
|
|
|
|
|
|
|
|
vim.keymap.set("n", "<C-p>", require('fzf-lua').files, { desc = "[F]ind [F]iles"})
|
|
|
|
|
vim.keymap.set('n', '<leader>s/', require('fzf-lua').live_grep, { desc = '[S]earch [/] in Open Files' })
|
|
|
|
|
vim.keymap.set('n', '<leader>gf', require('fzf-lua').git_files, { desc = 'Search [G]it [F]iles' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sf', require('fzf-lua').files, { desc = '[S]earch [F]iles' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sh', require('fzf-lua').help_tags, { desc = '[S]earch [H]elp' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sw', require('fzf-lua').grep_cword, { desc = '[S]earch current [W]ord' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sg', require('fzf-lua').live_grep, { desc = '[S]earch by [G]rep' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sG', ':LiveGrepGitRoot<cr>', { desc = '[S]earch by [G]rep on Git Root' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sd', require('telescope.builtin').diagnostics, { desc = '[S]earch [D]iagnostics' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sr', require('telescope.builtin').resume, { desc = '[S]earch [R]esume' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sd', require('fzf-lua').diagnostics_document, { desc = '[S]earch [D]iagnostics' })
|
|
|
|
|
vim.keymap.set('n', '<leader>sr', require('fzf-lua').resume, { desc = '[S]earch [R]esume' })
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- [[ Configure Treesitter ]]
|
|
|
|
|
-- See `:help nvim-treesitter`
|
|
|
|
|