mirror of
https://github.com/He4eT/dotfiles.git
synced 2026-05-04 23:47:23 +00:00
nvim: inline fzf config
This commit is contained in:
parent
8c96ca101c
commit
bac27b5539
1 changed files with 85 additions and 85 deletions
170
nvim/init.lua
170
nvim/init.lua
|
|
@ -209,6 +209,91 @@ require('lazy').setup({
|
||||||
build = './install --bin',
|
build = './install --bin',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
config = function ()
|
||||||
|
local fzf = require 'fzf-lua'
|
||||||
|
|
||||||
|
fzf.setup {
|
||||||
|
winopts = {
|
||||||
|
border = 'single',
|
||||||
|
fullscreen = true,
|
||||||
|
previewers = {
|
||||||
|
builtin = {
|
||||||
|
syntax = true,
|
||||||
|
syntax_limit_b = 1024 * 64, -- syntax limit (bytes), 0=nolimit
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
grep = {
|
||||||
|
rg_opts = '--vimgrep --smart-case --max-columns=512'
|
||||||
|
.. ' --color=ansi'
|
||||||
|
.. ' --colors path:fg:yellow'
|
||||||
|
.. ' --colors line:fg:green'
|
||||||
|
.. ' --colors column:fg:blue'
|
||||||
|
.. ' --colors match:fg:red',
|
||||||
|
file_ignore_patterns = {
|
||||||
|
'^node_modules/',
|
||||||
|
'/node_modules/',
|
||||||
|
'^.git/',
|
||||||
|
'^.yarn/',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
fzf_opts = {
|
||||||
|
['--border'] = 'none',
|
||||||
|
['--preview-window'] = 'border-sharp',
|
||||||
|
},
|
||||||
|
fzf_colors = {
|
||||||
|
['fg'] = { 'fg', 'CursorLine' },
|
||||||
|
['bg'] = { 'bg', 'Normal' },
|
||||||
|
['hl'] = { 'fg', 'Comment' },
|
||||||
|
['fg+'] = { 'fg', 'Normal' },
|
||||||
|
['bg+'] = { 'bg', 'CursorLine' },
|
||||||
|
['hl+'] = { 'fg', 'Statement' },
|
||||||
|
['info'] = { 'fg', 'Normal' },
|
||||||
|
['prompt'] = { 'fg', 'Conditional' },
|
||||||
|
['pointer'] = { 'fg', 'Exception' },
|
||||||
|
['marker'] = { 'fg', 'Keyword' },
|
||||||
|
['spinner'] = { 'fg', 'Label' },
|
||||||
|
['header'] = { 'fg', 'Comment' },
|
||||||
|
['gutter'] = { 'bg', 'Normal' },
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
local fzf_files = function()
|
||||||
|
fzf.files { fd_opts = '--no-ignore --hidden' }
|
||||||
|
end
|
||||||
|
|
||||||
|
local fzf_grep_filename = function()
|
||||||
|
fzf.grep { search = vim.fn.expand '%:t' }
|
||||||
|
end
|
||||||
|
|
||||||
|
local fzf_git_history = function()
|
||||||
|
fzf.files { cmd = "git log --name-only --pretty=\"\" | sed -e '/^\\s*$/d' | awk '!seen[$0]++'" }
|
||||||
|
end
|
||||||
|
|
||||||
|
-- fzf keymaps
|
||||||
|
vim.keymap.set({ 'n' }, 'gr', fzf.lsp_references, { desc = 'LSP: [G]o to fzf [R]eference list' })
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>fu', fzf_grep_filename, { desc = '[F]zf: current file [U]sages' })
|
||||||
|
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>fp', fzf.builtin, { desc = '[F]zf: [p]allete' })
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>f.', fzf.resume, { desc = '[F]zf: Resume' })
|
||||||
|
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>b', fzf.buffers, { desc = '[F]zf: [B]uffers' })
|
||||||
|
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>fF', fzf_files, { desc = '[F]zf: all [F]iles' })
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>ff', fzf.git_files, { desc = '[F]zf: git [f]iles' })
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>fd', fzf.git_status, { desc = '[F]zf: git [d]iff' })
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>fh', fzf_git_history, { desc = '[F]zf: git [h]istory' })
|
||||||
|
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>fg', fzf.live_grep, { desc = '[F]zf: [g]rep' })
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>fw', fzf.grep_cword, { desc = '[F]zf: grep [w]' })
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>fW', fzf.grep_cWORD, { desc = '[F]zf: grep [W]' })
|
||||||
|
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>p', fzf.registers, { desc = '[F]zf: [p]aste' })
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>/', fzf.blines, { desc = '[F]zf: buffer lines' })
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>f?', fzf.keymaps, { desc = '[F]zf: keymaps' })
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>f/', fzf.search_history, { desc = '[F]zf: search history' })
|
||||||
|
vim.keymap.set({ 'n' }, '<leader>f:', fzf.command_history, { desc = '[F]zf: command history' })
|
||||||
|
end
|
||||||
},
|
},
|
||||||
{ -- LSP Configuration & Plugins
|
{ -- LSP Configuration & Plugins
|
||||||
'neovim/nvim-lspconfig',
|
'neovim/nvim-lspconfig',
|
||||||
|
|
@ -329,91 +414,6 @@ require('lazy').setup({
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
-- [[ Configure fzf-lua ]]
|
|
||||||
local fzf = require 'fzf-lua'
|
|
||||||
|
|
||||||
fzf.setup {
|
|
||||||
winopts = {
|
|
||||||
border = 'single',
|
|
||||||
fullscreen = true,
|
|
||||||
previewers = {
|
|
||||||
builtin = {
|
|
||||||
syntax = true,
|
|
||||||
syntax_limit_b = 1024 * 64, -- syntax limit (bytes), 0=nolimit
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
grep = {
|
|
||||||
rg_opts = '--vimgrep --smart-case --max-columns=512'
|
|
||||||
.. ' --color=ansi'
|
|
||||||
.. ' --colors path:fg:yellow'
|
|
||||||
.. ' --colors line:fg:green'
|
|
||||||
.. ' --colors column:fg:blue'
|
|
||||||
.. ' --colors match:fg:red',
|
|
||||||
file_ignore_patterns = {
|
|
||||||
'^node_modules/',
|
|
||||||
'/node_modules/',
|
|
||||||
'^.git/',
|
|
||||||
'^.yarn/',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
fzf_opts = {
|
|
||||||
['--border'] = 'none',
|
|
||||||
['--preview-window'] = 'border-sharp',
|
|
||||||
},
|
|
||||||
fzf_colors = {
|
|
||||||
['fg'] = { 'fg', 'CursorLine' },
|
|
||||||
['bg'] = { 'bg', 'Normal' },
|
|
||||||
['hl'] = { 'fg', 'Comment' },
|
|
||||||
['fg+'] = { 'fg', 'Normal' },
|
|
||||||
['bg+'] = { 'bg', 'CursorLine' },
|
|
||||||
['hl+'] = { 'fg', 'Statement' },
|
|
||||||
['info'] = { 'fg', 'Normal' },
|
|
||||||
['prompt'] = { 'fg', 'Conditional' },
|
|
||||||
['pointer'] = { 'fg', 'Exception' },
|
|
||||||
['marker'] = { 'fg', 'Keyword' },
|
|
||||||
['spinner'] = { 'fg', 'Label' },
|
|
||||||
['header'] = { 'fg', 'Comment' },
|
|
||||||
['gutter'] = { 'bg', 'Normal' },
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
local fzf_files = function()
|
|
||||||
fzf.files { fd_opts = '--no-ignore --hidden' }
|
|
||||||
end
|
|
||||||
|
|
||||||
local fzf_grep_filename = function()
|
|
||||||
fzf.grep { search = vim.fn.expand '%:t' }
|
|
||||||
end
|
|
||||||
|
|
||||||
local fzf_git_history = function()
|
|
||||||
fzf.files { cmd = "git log --name-only --pretty=\"\" | sed -e '/^\\s*$/d' | awk '!seen[$0]++'" }
|
|
||||||
end
|
|
||||||
|
|
||||||
-- fzf keymaps
|
|
||||||
vim.keymap.set({ 'n' }, 'gr', fzf.lsp_references, { desc = 'LSP: [G]o to fzf [R]eference list' })
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>fu', fzf_grep_filename, { desc = '[F]zf: current file [U]sages' })
|
|
||||||
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>fp', fzf.builtin, { desc = '[F]zf: [p]allete' })
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>f.', fzf.resume, { desc = '[F]zf: Resume' })
|
|
||||||
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>b', fzf.buffers, { desc = '[F]zf: [B]uffers' })
|
|
||||||
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>fF', fzf_files, { desc = '[F]zf: all [F]iles' })
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>ff', fzf.git_files, { desc = '[F]zf: git [f]iles' })
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>fd', fzf.git_status, { desc = '[F]zf: git [d]iff' })
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>fh', fzf_git_history, { desc = '[F]zf: git [h]istory' })
|
|
||||||
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>fg', fzf.live_grep, { desc = '[F]zf: [g]rep' })
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>fw', fzf.grep_cword, { desc = '[F]zf: grep [w]' })
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>fW', fzf.grep_cWORD, { desc = '[F]zf: grep [W]' })
|
|
||||||
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>p', fzf.registers, { desc = '[F]zf: [p]aste' })
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>/', fzf.blines, { desc = '[F]zf: buffer lines' })
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>f?', fzf.keymaps, { desc = '[F]zf: keymaps' })
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>f/', fzf.search_history, { desc = '[F]zf: search history' })
|
|
||||||
vim.keymap.set({ 'n' }, '<leader>f:', fzf.command_history, { desc = '[F]zf: command history' })
|
|
||||||
|
|
||||||
-- [[ Configure Treesitter ]]
|
-- [[ Configure Treesitter ]]
|
||||||
-- See `:help nvim-treesitter`
|
-- See `:help nvim-treesitter`
|
||||||
require('nvim-treesitter.configs').setup {
|
require('nvim-treesitter.configs').setup {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue