Compare commits
2 Commits
e78c8fc07f
...
fcd5cfbd54
Author | SHA1 | Date | |
---|---|---|---|
fcd5cfbd54 | |||
1996e631a3 |
3
after/ftplugin/c.lua
Normal file
3
after/ftplugin/c.lua
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
local opts = { buffer = true, remap = false, silent = true }
|
||||||
|
vim.keymap.set('n', '0', ':PreProcIfWrap<CR>', opts)
|
||||||
|
vim.keymap.set('v', '0', ':PreProcIfWrap<CR>', opts)
|
@ -1,2 +1,6 @@
|
|||||||
vim.opt.commentstring = '//%s'
|
vim.opt.commentstring = '//%s'
|
||||||
vim.opt.matchpairs:append('<:>')
|
vim.opt.matchpairs:append('<:>')
|
||||||
|
|
||||||
|
local opts = { buffer = true, remap = false, silent = true }
|
||||||
|
vim.keymap.set('n', '0', ':PreProcIfWrap<CR>', opts)
|
||||||
|
vim.keymap.set('v', '0', ':PreProcIfWrap<CR>', opts)
|
||||||
|
@ -36,7 +36,6 @@ return {
|
|||||||
vim.keymap.set('n', '<leader>gF', builtin.find_files, opts)
|
vim.keymap.set('n', '<leader>gF', builtin.find_files, opts)
|
||||||
vim.keymap.set('n', '<leader>gf', builtin.git_files, opts)
|
vim.keymap.set('n', '<leader>gf', builtin.git_files, opts)
|
||||||
vim.keymap.set('n', '<leader>gg', builtin.live_grep, opts)
|
vim.keymap.set('n', '<leader>gg', builtin.live_grep, opts)
|
||||||
vim.keymap.set('n', '<leader>rg', builtin.grep_string, opts)
|
|
||||||
vim.keymap.set('n', '<leader>gb', builtin.buffers, opts)
|
vim.keymap.set('n', '<leader>gb', builtin.buffers, opts)
|
||||||
vim.keymap.set('n', '<leader>gh', builtin.help_tags, opts)
|
vim.keymap.set('n', '<leader>gh', builtin.help_tags, opts)
|
||||||
vim.keymap.set('n', '<leader>bl', builtin.current_buffer_fuzzy_find, opts)
|
vim.keymap.set('n', '<leader>bl', builtin.current_buffer_fuzzy_find, opts)
|
||||||
|
@ -116,13 +116,38 @@ end, {
|
|||||||
complete = 'file',
|
complete = 'file',
|
||||||
})
|
})
|
||||||
|
|
||||||
-- :Rg grep for the given string and fuzzy find the results, bang to enable
|
-- :Rg grep for the given string, word under the cursor, or visual selection
|
||||||
-- regex in given string
|
-- then fuzzy find the results. Bang to enable regex in given string.
|
||||||
-- FIXME: Support visual select modes
|
|
||||||
vim.api.nvim_create_user_command('Rg', function(opts)
|
vim.api.nvim_create_user_command('Rg', function(opts)
|
||||||
local grep_opts = { search = opts.args }
|
print(vim.inspect(opts))
|
||||||
|
local search = opts.args
|
||||||
|
if opts.range == 2 then
|
||||||
|
local lines = vim.fn.getline(vim.fn.line("'<"), vim.fn.line("'>"))
|
||||||
|
local start_col = vim.fn.col("'<")
|
||||||
|
local end_col = vim.fn.col("'>")
|
||||||
|
if #lines == 1 then
|
||||||
|
lines[1] = string.sub(lines[1], start_col, end_col)
|
||||||
|
else
|
||||||
|
lines[1] = string.sub(lines[1], start_col)
|
||||||
|
lines[#lines] = string.sub(lines[#lines], 1, end_col)
|
||||||
|
end
|
||||||
|
search = table.concat(lines, "\n")
|
||||||
|
elseif #search == 0 then
|
||||||
|
search = vim.fn.expand('<cword>')
|
||||||
|
end
|
||||||
|
local grep_opts = { search = search}
|
||||||
if opts.bang then
|
if opts.bang then
|
||||||
grep_opts['use_regex'] = true
|
grep_opts['use_regex'] = true
|
||||||
end
|
end
|
||||||
require('telescope.builtin').grep_string(grep_opts)
|
require('telescope.builtin').grep_string(grep_opts)
|
||||||
end, { bang = true, nargs = '*' })
|
end, { bang = true, range = true, nargs = '*' })
|
||||||
|
|
||||||
|
vim.api.nvim_create_user_command('PreProcIfWrap', function(opts)
|
||||||
|
local buffer = vim.api.nvim_get_current_buf()
|
||||||
|
vim.api.nvim_buf_set_lines(
|
||||||
|
buffer, opts.line2, opts.line2, true, { '#endif' })
|
||||||
|
vim.api.nvim_buf_set_lines(
|
||||||
|
buffer, opts.line1 - 1, opts.line1 - 1, true, { '#if 0' })
|
||||||
|
local window = vim.api.nvim_get_current_win()
|
||||||
|
vim.api.nvim_win_set_cursor(window, { opts.line1, 5 })
|
||||||
|
end, { range = true })
|
||||||
|
@ -43,3 +43,7 @@ vim.keymap.set('t', '<C-w><C-g>', '<C-\\><C-n>:Gdb<CR>:startinsert<CR>', opts)
|
|||||||
vim.keymap.set('t', '<C-w><C-e>', '<C-\\><C-n>:Program<CR>', opts)
|
vim.keymap.set('t', '<C-w><C-e>', '<C-\\><C-n>:Program<CR>', opts)
|
||||||
vim.keymap.set('t', '<C-w><C-s>', '<C-\\><C-n>:Source<CR>', opts)
|
vim.keymap.set('t', '<C-w><C-s>', '<C-\\><C-n>:Source<CR>', opts)
|
||||||
vim.keymap.set('t', '<C-w><C-a>', '<C-\\><C-n>:Asm<CR>', opts)
|
vim.keymap.set('t', '<C-w><C-a>', '<C-\\><C-n>:Asm<CR>', opts)
|
||||||
|
|
||||||
|
-- Mappings to grep for then fuzzy find the word under the cursor or visual selection
|
||||||
|
vim.keymap.set('n', '<leader>rg', ':Rg<CR>', opts)
|
||||||
|
vim.keymap.set('v', '<leader>rg', ":'<,'>Rg<CR>", opts)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user