commit a884f0d045aa28aad14db028a2ab823792245c3a
parent 59ea0f0a9a2407ae69de6cc755119197d92c561f
Author: Tomas Nemec <owl@gtms.dev>
Date: Wed, 10 May 2023 08:52:51 +0200
update
Diffstat:
10 files changed, 86 insertions(+), 47 deletions(-)
diff --git a/after/plugin/dressing.lua b/after/plugin/dressing.lua
@@ -1,4 +1,8 @@
- if not pcall(require, 'dressing') then return end
- require('dressing').setup({
- select = { backend = { 'telescope', 'builtin' }, telescope = require('telescope.themes').get_dropdown() },
- })
+if not pcall(require, 'dressing') then
+ return
+end
+
+require('dressing').setup({
+ input = { insert_only = false },
+ select = { backend = { 'telescope', 'builtin' }, telescope = require('telescope.themes').get_dropdown() },
+})
diff --git a/after/plugin/hbac.lua b/after/plugin/hbac.lua
@@ -1,5 +1,5 @@
-- BUG: Closes open windows!
-require('tms.p.hbac').setup({
- autoclose = true, -- set autoclose to false if you want to close manually
- threshold = 3, -- hbac will start closing unedited buffers once that number is reached
-})
+-- require('tms.p.hbac').setup({
+-- autoclose = true, -- set autoclose to false if you want to close manually
+-- threshold = 3, -- hbac will start closing unedited buffers once that number is reached
+-- })
diff --git a/after/plugin/lsp.lua b/after/plugin/lsp.lua
@@ -45,7 +45,7 @@ vim.api.nvim_create_autocmd('LspAttach', {
vim.keymap.set({ 'n', 'v' }, 'ga', lb.code_action, opt('LSP Code Actions'))
end
if cap.documentHighlightProvider then
- vim.keymap.set('n', 'gk', lb.document_highlight, opt('LSP Highlight'))
+ vim.keymap.set('n', '<leader>k', lb.document_highlight, opt('LSP Highlight'))
vim.api.nvim_create_autocmd('CursorMoved',
{ group = lsp_group, buffer = buf, callback = vim.lsp.buf.clear_references })
end
diff --git a/after/plugin/pubspec.lua b/after/plugin/pubspec.lua
@@ -8,3 +8,7 @@ vim.api.nvim_create_autocmd({ 'BufRead', 'BufNewFile' }, {
vim.keymap.set('n', '<leader>an', require('tms.ft.dart.analyze').qf2131, { buffer = true, desc = 'Dart Analyze' })
end,
})
+
+if pcall(require, 'pubspec-assist') then
+ require('pubspec-assist').setup()
+end
diff --git a/after/plugin/telescope.lua b/after/plugin/telescope.lua
@@ -37,20 +37,16 @@ vim.keymap.set('n', '<space>t', builtin('treesitter'), { desc = 'Telescope Trees
vim.keymap.set('n', '<space>p', require('telescope').extensions.packer.packer, { desc = 'Telescope Packer' })
vim.keymap.set('n', '<space>c', builtin('git_status', l.dd_large()), { desc = 'Telescope Git Status' })
vim.keymap.set('n', '<space>e', builtin('grep_string'), { desc = 'Telescope Grep String' })
-vim.keymap.set('n', '<space>l', builtin('current_buffer_fuzzy_find', l.dd_large_noprev()),
- { desc = 'Telescope Buffer Lines' })
+vim.keymap.set('n', '<space>l', function()
+ require('telescope.builtin')['current_buffer_fuzzy_find'](l.dd_large_noprev())
+end, { desc = 'Telescope Buffer Lines' })
vim.keymap.set('n', '<space>b', builtin('buffers', l.dd_large()), { desc = 'Telescope Buffers' })
vim.keymap.set('n', '<space>h', builtin('help_tags'), { desc = 'Telescope Help Tags' })
vim.keymap.set('n', '<space>d', builtin('diagnostics', l.dd_large()), { desc = 'Telescope Diagnostics' })
-vim.keymap.set('n', '<space>f',
- builtin('git_files', l.dd_large_noprev({ show_untracked = true, use_git_root = false })),
- { desc = 'Telescope Find Files' })
+vim.keymap.set('n', '<space>f', builtin('find_files', l.dd_large_noprev()), { desc = 'Telescope Find Files' })
vim.keymap.set('n', '<space>F', function()
- local opts = l.dd_large_noprev()
- opts.no_ignore = true
- opts.hidden = true
- require('telescope.builtin').find_files(opts)
-end, { desc = 'Telescope Find Files' })
+ require('telescope.builtin').find_files(l.dd_large_noprev({ no_ignore = true, hidden = true }))
+end, { desc = 'Telescope Find All Files' })
vim.keymap.set('n', '<space>P', function()
require('telescope.builtin').reloader(l.dd_noprev())
diff --git a/colors/base16.lua b/colors/base16.lua
@@ -331,6 +331,9 @@ vim.api.nvim_set_hl(0, 'GitGutterChangeDelete', { fg = gui0E, bg = gui00 })
-- vim.api.nvim_set_hl(0, group, {})
-- end
+vim.api.nvim_set_hl(0, 'LspReferenceText', { underline = true })
+vim.api.nvim_set_hl(0, 'LspReferenceRead', { undercurl = true })
+
-- relink @lsp to @treesitter
local links = {
['@lsp.type.namespace'] = '@namespace',
diff --git a/lua/plugins.lua b/lua/plugins.lua
@@ -83,7 +83,7 @@ return packer.startup({
use 'baskerville/vim-sxhkdrc'
-- use 'dart-lang/dart-vim-plugin'
use 'mfussenegger/nvim-jdtls'
- -- use 'akinsho/pubspec-assist.nvim'
+ use 'akinsho/pubspec-assist.nvim'
-- snippets
use 'L3MON4D3/luaSnip'
diff --git a/plugin/bufonly.vim b/plugin/bufonly.vim
@@ -75,6 +75,6 @@ function! BufOnly(buffer, bang)
endfunction
lua << EOF
- vim.keymap.set('n', '<leader>bo', '<cmd>BufOnly<cr>')
- vim.keymap.set('n', '<leader>bO', '<cmd>BufOnly!<cr>')
+ vim.keymap.set('n', '<leader>bo', '<cmd>BufOnly<cr>', {desc = 'Buffer Only'})
+ vim.keymap.set('n', '<leader>bO', '<cmd>BufOnly!<cr>', {desc = 'Buffer Force Only'})
EOF
diff --git a/plugin/bufremove.lua b/plugin/bufremove.lua
@@ -28,24 +28,29 @@ local H = {}
---@param buf_id number: Buffer identifier (see |bufnr()|) to use. Default: 0 for current.
---@param force boolean: Whether to ignore unsaved changes (using `!` version of command). Default: `false`.
---@return boolean: Whether operation was successful.
-function BufRemove.delete(buf_id, force) return H.unshow_and_cmd(buf_id, force, 'bdelete') end
+function BufRemove.delete(buf_id, force)
+ return H.unshow_and_cmd(buf_id, force, 'bdelete')
+end
--- Wipeout buffer `buf_id` with |:bwipeout| after unshowing it.
---
---@param buf_id number: Buffer identifier (see |bufnr()|) to use. Default: 0 for current.
---@param force boolean: Whether to ignore unsaved changes (using `!` version of command). Default: `false`.
---@return boolean: Whether operation was successful.
-function BufRemove.wipeout(buf_id, force) return H.unshow_and_cmd(buf_id, force, 'bwipeout') end
+function BufRemove.wipeout(buf_id, force)
+ return H.unshow_and_cmd(buf_id, force, 'bwipeout')
+end
--- Stop showing buffer `buf_id` in all windows
---
---@param buf_id number: Buffer identifier (see |bufnr()|) to use. Default: 0 for current.
---@return boolean: Whether operation was successful.
function BufRemove.unshow(buf_id)
-
buf_id = H.normalize_buf_id(buf_id)
- if not H.is_valid_id(buf_id, 'buffer') then return false end
+ if not H.is_valid_id(buf_id, 'buffer') then
+ return false
+ end
vim.tbl_map(BufRemove.unshow_in_window, vim.fn.win_findbuf(buf_id))
@@ -56,10 +61,11 @@ end
---@param win_id number: Window identifier (see |win_getid()|) to use. Default: 0 for current.
---@return boolean: Whether operation was successful.
function BufRemove.unshow_in_window(win_id)
-
win_id = (win_id == nil) and 0 or win_id
- if not H.is_valid_id(win_id, 'window') then return false end
+ if not H.is_valid_id(win_id, 'window') then
+ return false
+ end
local cur_buf = vim.api.nvim_win_get_buf(win_id)
@@ -74,7 +80,9 @@ function BufRemove.unshow_in_window(win_id)
-- Try using previous buffer
vim.cmd.bprevious()
- if cur_buf ~= vim.api.nvim_win_get_buf(win_id) then return end
+ if cur_buf ~= vim.api.nvim_win_get_buf(win_id) then
+ return
+ end
-- Create new listed scratch buffer
local new_buf = vim.api.nvim_create_buf(true, true)
@@ -89,10 +97,14 @@ function H.unshow_and_cmd(buf_id, force, cmd)
buf_id = H.normalize_buf_id(buf_id)
force = (force == nil) and false or force
- if not H.is_valid_id(buf_id, 'buffer') then return false end
+ if not H.is_valid_id(buf_id, 'buffer') then
+ return false
+ end
local fun_name = ({ ['bdelete'] = 'delete', ['bwipeout'] = 'wipeout' })[cmd]
- if not H.can_remove(buf_id, force, fun_name) then return false end
+ if not H.can_remove(buf_id, force, fun_name) then
+ return false
+ end
-- Unshow buffer from all windows
BufRemove.unshow(buf_id)
@@ -123,13 +135,17 @@ function H.is_valid_id(x, type)
is_valid = vim.api.nvim_win_is_valid(x)
end
- if not is_valid then H.notify(string.format('%s is not a valid %s id.', tostring(x), type)) end
+ if not is_valid then
+ H.notify(string.format('%s is not a valid %s id.', tostring(x), type))
+ end
return is_valid
end
---- Check if buffer can be removed with `Bufremove.fun_name` function
function H.can_remove(buf_id, force, fun_name)
- if force then return true end
+ if force then
+ return true
+ end
if vim.api.nvim_buf_get_option(buf_id, 'modified') then
H.notify(string.format('Buffer %d has unsaved changes. Use `Bufremove.%s(%d, true)` to force.', buf_id, fun_name,
@@ -142,20 +158,33 @@ end
---- Compute 'true' buffer id (strictly positive integer). Treat `nil` and 0 as
---- current buffer.
function H.normalize_buf_id(buf_id)
- if buf_id == nil or buf_id == 0 or buf_id == '' then return vim.api.nvim_get_current_buf() end
+ if buf_id == nil or buf_id == 0 or buf_id == '' then
+ return vim.api.nvim_get_current_buf()
+ end
return buf_id
end
-function H.notify(msg) vim.notify(string.format('(bufremove) %s', msg)) end
-
-vim.api.nvim_create_user_command('BufDelete', function(data) BufRemove.delete(data.args, data.bang) end,
- { nargs = '?', bang = true })
-vim.api.nvim_create_user_command('BufWipeout', function(data) BufRemove.wipeout(data.args, data.bang) end,
- { nargs = '?', bang = true })
-vim.api.nvim_create_user_command('BufUnshow', function(data) BufRemove.unshow(data.args) end, { nargs = '?' })
-vim.api.nvim_create_user_command('BufWinUnshow', function(data) BufRemove.unshow_in_window(data.args) end,
- { nargs = '?' })
-vim.keymap.set('n', '<leader>bd', BufRemove.delete)
-vim.keymap.set('n', '<leader>bw', BufRemove.wipeout)
-vim.keymap.set('n', '<leader>bu', BufRemove.unshow)
-vim.keymap.set('n', '<leader>bU', BufRemove.unshow_in_window)
+function H.notify(msg)
+ vim.notify(string.format('(bufremove) %s', msg))
+end
+
+vim.api.nvim_create_user_command('BufDelete', function(data)
+ BufRemove.delete(data.args, data.bang)
+end, { nargs = '?', bang = true })
+vim.api.nvim_create_user_command('BufWipeout', function(data)
+ BufRemove.wipeout(data.args, data.bang)
+end, { nargs = '?', bang = true })
+vim.api.nvim_create_user_command('BufUnshow', function(data)
+ BufRemove.unshow(data.args)
+end, { nargs = '?' })
+vim.api.nvim_create_user_command('BufWinUnshow', function(data)
+ BufRemove.unshow_in_window(data.args)
+end, { nargs = '?' })
+
+vim.keymap.set('n', '<leader>bd', BufRemove.delete, { desc = 'Buffer Delete' })
+vim.keymap.set('n', '<leader>bD', function()
+ BufRemove.delete(0, true)
+end, { desc = 'Buffer Force Delete' })
+vim.keymap.set('n', '<leader>bw', BufRemove.wipeout, { desc = 'Buffer Wipeout' })
+vim.keymap.set('n', '<leader>bu', BufRemove.unshow, { desc = 'Buffer Unshow' })
+vim.keymap.set('n', '<leader>bU', BufRemove.unshow_in_window, { desc = 'Buffer Window Unshow' })
diff --git a/plugin/match.lua b/plugin/match.lua
@@ -0,0 +1,3 @@
+-- vim.api.nvim_create_user_command('Match', function(args)
+-- vim.cmd.match()
+-- end, {})