mirror of
https://github.com/ivuorinen/dotfiles.git
synced 2026-02-16 19:49:55 +00:00
feat(nvim): plugins, fixes, helpers
Plugins: - voldikss/vim-floaterm - vim-test/vim-test - tpope/vim-projectionist - phpactor/phpactor - catgoose/nvim-colorizer.lua Fixes: - lsp diagnostics config - lsp diagnostics icons - neo-tree configuration fixes - tokyonight.nvim color scheme tweaks Lots of tweaks to options.lua
This commit is contained in:
@@ -42,6 +42,18 @@ K.nl('o', function() require('snacks').gitbrowse() end, 'Open repo in browser')
|
|||||||
K.n('<C-s>', ':w!<cr>', { desc = 'Save', noremap = true })
|
K.n('<C-s>', ':w!<cr>', { desc = 'Save', noremap = true })
|
||||||
K.n('<esc><esc>', ':nohlsearch<cr>', { desc = 'Clear Search Highlighting' })
|
K.n('<esc><esc>', ':nohlsearch<cr>', { desc = 'Clear Search Highlighting' })
|
||||||
|
|
||||||
|
-- ── ToggleTerm ──────────────────────────────────────────────────────
|
||||||
|
K.d('<F1>', 'n', ':FloatermToggle<CR>', 'Toggle Floaterm')
|
||||||
|
K.d('<F1>', 'i', '<Esc>:FloatermToggle<CR>', 'Toggle Floaterm')
|
||||||
|
K.d('<F1>', 't', '<C-\\><C-n>:FloatermToggle<CR>', 'Toggle Floaterm')
|
||||||
|
|
||||||
|
-- ── Test operations ─────────────────────────────────────────────────
|
||||||
|
K.nl('an', ':silent TestNearest<CR>', 'Test Nearest')
|
||||||
|
K.nl('af', ':silent TestFile<CR>', 'Test File')
|
||||||
|
K.nl('as', ':silent TestSuite<CR>', 'Test Suite')
|
||||||
|
K.nl('al', ':silent TestLast<CR>', 'Test Last')
|
||||||
|
K.nl('av', ':silent TestVisit<CR>', 'Test Visit')
|
||||||
|
|
||||||
-- ── Buffer operations ───────────────────────────────────────────────
|
-- ── Buffer operations ───────────────────────────────────────────────
|
||||||
-- Mappings for buffer management operations like switching, deleting, etc.
|
-- Mappings for buffer management operations like switching, deleting, etc.
|
||||||
-- Convention: All mappings start with 'b' followed by the operation
|
-- Convention: All mappings start with 'b' followed by the operation
|
||||||
@@ -90,7 +102,7 @@ K.nl('cbt', '<Cmd>CBllline<CR>', 'CB: Titled Line')
|
|||||||
-- Mappings for Telescope operations like finding files, buffers, etc.
|
-- Mappings for Telescope operations like finding files, buffers, etc.
|
||||||
-- Convention: All mappings start with 's' followed by the operation
|
-- Convention: All mappings start with 's' followed by the operation
|
||||||
-- unless it's a generic operation like searching or finding buffers
|
-- unless it's a generic operation like searching or finding buffers
|
||||||
K.nl('f', ':Telescope find_files<cr>', 'Find Files')
|
K.nl('f', ':Telescope fd --hidden=true<cr>', 'Find Files')
|
||||||
K.nl(',', ':Telescope buffers<cr>', 'Find existing buffers')
|
K.nl(',', ':Telescope buffers<cr>', 'Find existing buffers')
|
||||||
K.nl(
|
K.nl(
|
||||||
'/',
|
'/',
|
||||||
@@ -105,6 +117,11 @@ K.nl(
|
|||||||
'Fuzzily search in current buffer'
|
'Fuzzily search in current buffer'
|
||||||
)
|
)
|
||||||
|
|
||||||
|
K.nl('pm', ':PhpactorContextMenu<cr>', 'PHPactor: Context Menu')
|
||||||
|
K.nl('pn', ':PhpactorClassNew<cr>', 'PHPactor: Class New')
|
||||||
|
K.nl('ps', ':PhpactorClassSearch<cr>', 'PHPactor: Class Search')
|
||||||
|
K.nl('pt', ':PhpactorTransform<cr>', 'PHPactor: Transform')
|
||||||
|
|
||||||
K.nl('sc', ':Telescope commands<cr>', 'Commands')
|
K.nl('sc', ':Telescope commands<cr>', 'Commands')
|
||||||
K.nl('sd', ':Telescope diagnostics<cr>', 'Search Diagnostics')
|
K.nl('sd', ':Telescope diagnostics<cr>', 'Search Diagnostics')
|
||||||
K.nl('sg', ':Telescope live_grep<cr>', 'Search by Grep')
|
K.nl('sg', ':Telescope live_grep<cr>', 'Search by Grep')
|
||||||
@@ -119,7 +136,6 @@ K.nl(
|
|||||||
)
|
)
|
||||||
K.nl('sq', ':Telescope quickfix<cr>', 'Quickfix')
|
K.nl('sq', ':Telescope quickfix<cr>', 'Quickfix')
|
||||||
K.nl('ss', ':Telescope treesitter<cr>', 'Treesitter')
|
K.nl('ss', ':Telescope treesitter<cr>', 'Treesitter')
|
||||||
K.nl('st', ':TodoTelescope<cr>', 'Search Todos')
|
|
||||||
K.nl('sw', ':Telescope grep_string<cr>', 'Grep String')
|
K.nl('sw', ':Telescope grep_string<cr>', 'Grep String')
|
||||||
K.nl('sx', ':Telescope import<cr>', 'Telescope: Import')
|
K.nl('sx', ':Telescope import<cr>', 'Telescope: Import')
|
||||||
|
|
||||||
|
|||||||
@@ -24,13 +24,15 @@ g.loaded_java_provider = 0 -- Disable java provider
|
|||||||
-- vim.options
|
-- vim.options
|
||||||
-- Most of the good defaults are provided by `mini.basics`
|
-- Most of the good defaults are provided by `mini.basics`
|
||||||
-- See: lua/plugins/mini.lua
|
-- See: lua/plugins/mini.lua
|
||||||
|
o.confirm = true -- Confirm before closing unsaved buffers
|
||||||
o.ignorecase = true -- Ignore case in search patterns
|
o.ignorecase = true -- Ignore case in search patterns
|
||||||
o.inccommand = 'split' -- Preview substitutions live, as you type!
|
o.inccommand = 'split' -- Preview substitutions live, as you type!
|
||||||
o.number = true -- Show line numbers
|
o.number = true -- Show line numbers
|
||||||
o.numberwidth = 3 -- Set the width of the number column
|
o.numberwidth = 3 -- Set the width of the number column
|
||||||
o.relativenumber = true -- Show relative line numbers
|
o.relativenumber = true -- Show relative line numbers
|
||||||
o.scrolloff = 15 -- Show context around cursor
|
o.scrolloff = 8 -- Show context around cursor
|
||||||
o.signcolumn = 'yes:3' -- Keep signcolumn on by default
|
o.sidescrolloff = 8 -- Show context around cursor
|
||||||
|
o.signcolumn = 'yes' -- Keep signcolumn on by default
|
||||||
o.spell = true -- Enable spell checking
|
o.spell = true -- Enable spell checking
|
||||||
o.spelllang = 'en_us' -- Set the spell checking language
|
o.spelllang = 'en_us' -- Set the spell checking language
|
||||||
o.splitbelow = true -- split to the bottom
|
o.splitbelow = true -- split to the bottom
|
||||||
@@ -41,6 +43,8 @@ o.updatetime = 250 -- 250 ms = 2,5 seconds
|
|||||||
o.sessionoptions =
|
o.sessionoptions =
|
||||||
'buffers,curdir,folds,tabpages,winsize,winpos,terminal,localoptions'
|
'buffers,curdir,folds,tabpages,winsize,winpos,terminal,localoptions'
|
||||||
|
|
||||||
|
o.wildmode = 'longest:full,full' -- Command-line completion mode
|
||||||
|
|
||||||
-- Enable the colorcolumn
|
-- Enable the colorcolumn
|
||||||
vim.api.nvim_set_option_value('colorcolumn', '+1', { scope = 'global' })
|
vim.api.nvim_set_option_value('colorcolumn', '+1', { scope = 'global' })
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,47 @@ return {
|
|||||||
opts = { enabled = true, snippet_engine = 'luasnip' },
|
opts = { enabled = true, snippet_engine = 'luasnip' },
|
||||||
},
|
},
|
||||||
|
|
||||||
|
-- Terminal manager for (neo)vim
|
||||||
|
-- https://github.com/voldikss/vim-floaterm
|
||||||
|
{
|
||||||
|
'voldikss/vim-floaterm',
|
||||||
|
cmd = { 'FloatermToggle' },
|
||||||
|
init = function()
|
||||||
|
vim.g.floaterm_width = 0.8
|
||||||
|
vim.g.floaterm_height = 0.8
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Run your tests at the speed of thought
|
||||||
|
-- https://github.com/vim-test/vim-test
|
||||||
|
{
|
||||||
|
'vim-test/vim-test',
|
||||||
|
dependencies = { 'voldikss/vim-floaterm' },
|
||||||
|
config = function()
|
||||||
|
vim.cmd [[
|
||||||
|
function! PhpUnitTransform(cmd) abort
|
||||||
|
return join(map(split(a:cmd), 'v:val == "--colors" ? "--colors=always" : v:val'))
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
let g:test#custom_transformations = {'phpunit': function('PhpUnitTransform')}
|
||||||
|
let g:test#transformation = 'phpunit'
|
||||||
|
|
||||||
|
" let test#php#phpunit#options = '--colors=always'
|
||||||
|
let test#php#pest#options = '-v'
|
||||||
|
let test#javascript#jest#options = '--color'
|
||||||
|
|
||||||
|
function! FloatermStrategy(cmd)
|
||||||
|
execute 'silent FloatermSend q'
|
||||||
|
execute 'silent FloatermKill'
|
||||||
|
execute 'FloatermNew! '.a:cmd.' | less -X'
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
let g:test#custom_strategies = {'floaterm': function('FloatermStrategy')}
|
||||||
|
let g:test#strategy = 'floaterm'
|
||||||
|
]]
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
-- Cloak allows you to overlay *'s over defined patterns in defined files.
|
-- Cloak allows you to overlay *'s over defined patterns in defined files.
|
||||||
-- https://github.com/laytan/cloak.nvim
|
-- https://github.com/laytan/cloak.nvim
|
||||||
{
|
{
|
||||||
@@ -36,6 +77,82 @@ return {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
-- projectionist.vim: Granular project configuration
|
||||||
|
-- https://github.com/tpope/vim-projectionist
|
||||||
|
{
|
||||||
|
'tpope/vim-projectionist',
|
||||||
|
dependencies = 'tpope/vim-dispatch',
|
||||||
|
config = function()
|
||||||
|
vim.g.projectionist_heuristics = {
|
||||||
|
artisan = {
|
||||||
|
['*'] = {
|
||||||
|
start = 'php artisan serve',
|
||||||
|
console = 'php artisan tinker',
|
||||||
|
},
|
||||||
|
['app/*.php'] = {
|
||||||
|
type = 'source',
|
||||||
|
alternate = {
|
||||||
|
'tests/Unit/{}Test.php',
|
||||||
|
'tests/Feature/{}Test.php',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
['tests/Feature/*Test.php'] = {
|
||||||
|
type = 'test',
|
||||||
|
alternate = 'app/{}.php',
|
||||||
|
},
|
||||||
|
['tests/Unit/*Test.php'] = {
|
||||||
|
type = 'test',
|
||||||
|
alternate = 'app/{}.php',
|
||||||
|
},
|
||||||
|
['app/Models/*.php'] = {
|
||||||
|
type = 'model',
|
||||||
|
},
|
||||||
|
['app/Http/Controllers/*.php'] = {
|
||||||
|
type = 'controller',
|
||||||
|
},
|
||||||
|
['routes/*.php'] = {
|
||||||
|
type = 'route',
|
||||||
|
},
|
||||||
|
['database/migrations/*.php'] = {
|
||||||
|
type = 'migration',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
['src/&composer.json'] = {
|
||||||
|
['src/*.php'] = {
|
||||||
|
type = 'source',
|
||||||
|
alternate = {
|
||||||
|
'tests/{}Test.php',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
['tests/*Test.php'] = {
|
||||||
|
type = 'test',
|
||||||
|
alternate = 'src/{}.php',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
['app/&composer.json'] = {
|
||||||
|
['app/*.php'] = {
|
||||||
|
type = 'source',
|
||||||
|
alternate = {
|
||||||
|
'tests/{}Test.php',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
['tests/*Test.php'] = {
|
||||||
|
type = 'test',
|
||||||
|
alternate = 'app/{}.php',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
-- A vim text object for XML/HTML attributes.
|
||||||
|
-- https://github.com/whatyouhide/vim-textobj-xmlattr
|
||||||
|
{
|
||||||
|
'whatyouhide/vim-textobj-xmlattr',
|
||||||
|
dependencies = { 'kana/vim-textobj-user' },
|
||||||
|
opts = {},
|
||||||
|
},
|
||||||
|
|
||||||
-- Describe the regexp under the cursor
|
-- Describe the regexp under the cursor
|
||||||
-- https://github.com/bennypowers/nvim-regexplainer
|
-- https://github.com/bennypowers/nvim-regexplainer
|
||||||
{
|
{
|
||||||
@@ -84,4 +201,12 @@ return {
|
|||||||
ft = { 'go', 'gomod' },
|
ft = { 'go', 'gomod' },
|
||||||
build = ':lua require("go.install").update_all_sync()', -- if you need to install/update all binaries
|
build = ':lua require("go.install").update_all_sync()', -- if you need to install/update all binaries
|
||||||
},
|
},
|
||||||
|
|
||||||
|
-- Mainly a PHP Language Server with more features than you can shake a stick at
|
||||||
|
-- https://github.com/phpactor/phpactor
|
||||||
|
{
|
||||||
|
'phpactor/phpactor',
|
||||||
|
build = 'composer install --no-dev --optimize-autoloader',
|
||||||
|
ft = 'php',
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,7 +26,15 @@ local lsp_servers = {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
html = {},
|
html = {},
|
||||||
intelephense = {},
|
intelephense = {
|
||||||
|
commands = {
|
||||||
|
IntelephenseIndex = {
|
||||||
|
function()
|
||||||
|
vim.lsp.buf.execute_command { command = 'intelephense.index.workspace' }
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
jsonls = {},
|
jsonls = {},
|
||||||
lua_ls = {
|
lua_ls = {
|
||||||
settings = {
|
settings = {
|
||||||
@@ -236,12 +244,12 @@ return {
|
|||||||
config = function(_, opts)
|
config = function(_, opts)
|
||||||
require('lazydev').setup()
|
require('lazydev').setup()
|
||||||
require('lsp-setup').setup(opts)
|
require('lsp-setup').setup(opts)
|
||||||
|
local cmp = require 'blink.cmp'
|
||||||
local lspconfig = require 'lspconfig'
|
local lspconfig = require 'lspconfig'
|
||||||
for server, config in pairs(opts.servers) do
|
for server, config in pairs(opts.servers) do
|
||||||
-- passing config.capabilities to blink.cmp merges with the capabilities in your
|
-- passing config.capabilities to blink.cmp merges with the capabilities in your
|
||||||
-- `opts[server].capabilities, if you've defined it
|
-- `opts[server].capabilities, if you've defined it
|
||||||
config.capabilities =
|
config.capabilities = cmp.get_lsp_capabilities(config.capabilities)
|
||||||
require('blink.cmp').get_lsp_capabilities(config.capabilities)
|
|
||||||
lspconfig[server].setup(config)
|
lspconfig[server].setup(config)
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -289,6 +297,32 @@ return {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-- Diagnostic configuration
|
||||||
|
vim.diagnostic.config {
|
||||||
|
virtual_text = false,
|
||||||
|
float = {
|
||||||
|
source = true,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Sign configuration
|
||||||
|
vim.fn.sign_define(
|
||||||
|
'DiagnosticSignError',
|
||||||
|
{ text = '', texthl = 'DiagnosticSignError' }
|
||||||
|
)
|
||||||
|
vim.fn.sign_define(
|
||||||
|
'DiagnosticSignWarn',
|
||||||
|
{ text = '', texthl = 'DiagnosticSignWarn' }
|
||||||
|
)
|
||||||
|
vim.fn.sign_define(
|
||||||
|
'DiagnosticSignInfo',
|
||||||
|
{ text = '', texthl = 'DiagnosticSignInfo' }
|
||||||
|
)
|
||||||
|
vim.fn.sign_define(
|
||||||
|
'DiagnosticSignHint',
|
||||||
|
{ text = '', texthl = 'DiagnosticSignHint' }
|
||||||
|
)
|
||||||
|
|
||||||
-- end of junnplus/lsp-setup config
|
-- end of junnplus/lsp-setup config
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -31,9 +31,43 @@ return {
|
|||||||
cmd = 'Neotree',
|
cmd = 'Neotree',
|
||||||
opts = {
|
opts = {
|
||||||
close_if_last_window = true,
|
close_if_last_window = true,
|
||||||
|
hide_root_node = true,
|
||||||
popup_border_style = 'rounded',
|
popup_border_style = 'rounded',
|
||||||
enable_git_status = true,
|
enable_git_status = true,
|
||||||
enable_diagnostics = true,
|
enable_diagnostics = true,
|
||||||
|
sources = {
|
||||||
|
'filesystem',
|
||||||
|
'buffers',
|
||||||
|
'document_symbols',
|
||||||
|
},
|
||||||
|
source_selector = {
|
||||||
|
winbar = true,
|
||||||
|
statusline = false,
|
||||||
|
separator = { left = '', right = '' },
|
||||||
|
show_separator_on_edge = true,
|
||||||
|
highlight_tab = 'SidebarTabInactive',
|
||||||
|
highlight_tab_active = 'SidebarTabActive',
|
||||||
|
highlight_background = 'StatusLine',
|
||||||
|
highlight_separator = 'SidebarTabInactiveSeparator',
|
||||||
|
highlight_separator_active = 'SidebarTabActiveSeparator',
|
||||||
|
},
|
||||||
|
event_handlers = {
|
||||||
|
{
|
||||||
|
event = 'file_opened',
|
||||||
|
handler = function(file_path)
|
||||||
|
require('neo-tree.command').execute { action = 'close' }
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
default_component_configs = {
|
||||||
|
indent = {
|
||||||
|
padding = 0,
|
||||||
|
},
|
||||||
|
name = {
|
||||||
|
use_git_status_colors = true,
|
||||||
|
highlight_opened_files = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
git_status = {
|
git_status = {
|
||||||
symbols = {
|
symbols = {
|
||||||
-- Change type
|
-- Change type
|
||||||
@@ -54,59 +88,18 @@ return {
|
|||||||
mappings = {
|
mappings = {
|
||||||
['<Esc>'] = 'close_window',
|
['<Esc>'] = 'close_window',
|
||||||
['q'] = 'close_window',
|
['q'] = 'close_window',
|
||||||
|
['<cr>'] = 'open_with_window_picker',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
filtered_items = {
|
filtered_items = {
|
||||||
hide_dotfiles = true,
|
hide_dotfiles = false,
|
||||||
hide_gitignored = true,
|
|
||||||
hide_hidden = true, -- only works on Windows for hidden files/directories
|
hide_hidden = true, -- only works on Windows for hidden files/directories
|
||||||
never_show = {
|
never_show = {
|
||||||
'.DS_Store',
|
'.DS_Store',
|
||||||
},
|
},
|
||||||
hide_by_name = {
|
hide_by_name = {
|
||||||
'node_modules',
|
'node_modules',
|
||||||
},
|
'.git',
|
||||||
always_show = {
|
|
||||||
'.actrc',
|
|
||||||
'.browserslistrc',
|
|
||||||
'.commitlintrc.json',
|
|
||||||
'.editorconfig',
|
|
||||||
'.env',
|
|
||||||
'.env.example',
|
|
||||||
'.envrc',
|
|
||||||
'.eslintrc.json',
|
|
||||||
'.github',
|
|
||||||
'.gitignore',
|
|
||||||
'.gitkeep',
|
|
||||||
'.ignore',
|
|
||||||
'.markdownlint.json',
|
|
||||||
'.markdownlint.yaml',
|
|
||||||
'.markdownlintignore',
|
|
||||||
'.nvmrc',
|
|
||||||
'.prettierignore',
|
|
||||||
'.prettierrc.js',
|
|
||||||
'.prettierrc.json',
|
|
||||||
'.prettierrc.yaml',
|
|
||||||
'.python-version',
|
|
||||||
'.releaserc.json',
|
|
||||||
'.shellcheckrc',
|
|
||||||
'.simple-git-hooks.json',
|
|
||||||
'.stylelintrc.json',
|
|
||||||
'.stylua.toml',
|
|
||||||
'.yamlignore',
|
|
||||||
'.yamllint.yaml',
|
|
||||||
},
|
|
||||||
always_show_by_pattern = {
|
|
||||||
'.*.json',
|
|
||||||
'.*.toml',
|
|
||||||
'.*.yaml',
|
|
||||||
'.*.yml',
|
|
||||||
'.*rc',
|
|
||||||
'.*rc.*',
|
|
||||||
'.env*',
|
|
||||||
'.prettierrc*',
|
|
||||||
'.markdownlint*',
|
|
||||||
'.stylua.*',
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -7,6 +7,121 @@ return {
|
|||||||
init = function() vim.cmd.colorscheme(vim.g.colors_theme) end,
|
init = function() vim.cmd.colorscheme(vim.g.colors_theme) end,
|
||||||
opts = {
|
opts = {
|
||||||
transparent = true,
|
transparent = true,
|
||||||
|
on_colors = function(colors)
|
||||||
|
colors.gitSigns = {
|
||||||
|
add = colors.teal,
|
||||||
|
change = colors.purple,
|
||||||
|
delete = colors.red,
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
on_highlights = function(hl, c)
|
||||||
|
local util = require 'tokyonight.util'
|
||||||
|
local prompt = '#2d3149'
|
||||||
|
|
||||||
|
hl.NeoTreeFileNameOpened = {
|
||||||
|
fg = c.orange,
|
||||||
|
}
|
||||||
|
|
||||||
|
hl.GitSignsCurrentLineBlame = {
|
||||||
|
fg = c.fg_gutter,
|
||||||
|
}
|
||||||
|
|
||||||
|
hl.StatusLine = {
|
||||||
|
bg = util.darken(c.bg_dark, 0.98, '#000000'),
|
||||||
|
fg = c.fg_dark,
|
||||||
|
}
|
||||||
|
hl.StatusLineComment = {
|
||||||
|
bg = util.darken(c.bg_dark, 0.85, '#000000'),
|
||||||
|
fg = c.comment,
|
||||||
|
}
|
||||||
|
|
||||||
|
hl.LineNrAbove = {
|
||||||
|
fg = c.fg_gutter,
|
||||||
|
}
|
||||||
|
hl.LineNr = {
|
||||||
|
fg = util.lighten(c.fg_gutter, 0.7),
|
||||||
|
}
|
||||||
|
hl.LineNrBelow = {
|
||||||
|
fg = c.fg_gutter,
|
||||||
|
}
|
||||||
|
|
||||||
|
hl.MsgArea = {
|
||||||
|
bg = util.darken(c.bg_dark, 0.85, '#000000'),
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Spelling
|
||||||
|
hl.SpellBad = {
|
||||||
|
undercurl = true,
|
||||||
|
sp = '#7F3A43',
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Telescope
|
||||||
|
hl.TelescopeNormal = {
|
||||||
|
bg = c.bg_dark,
|
||||||
|
fg = c.fg_dark,
|
||||||
|
}
|
||||||
|
hl.TelescopeBorder = {
|
||||||
|
bg = c.bg_dark,
|
||||||
|
fg = c.bg_dark,
|
||||||
|
}
|
||||||
|
hl.TelescopePromptNormal = {
|
||||||
|
bg = prompt,
|
||||||
|
}
|
||||||
|
hl.TelescopePromptBorder = {
|
||||||
|
bg = prompt,
|
||||||
|
fg = prompt,
|
||||||
|
}
|
||||||
|
hl.TelescopePromptTitle = {
|
||||||
|
bg = c.bg,
|
||||||
|
fg = c.fg_dark,
|
||||||
|
}
|
||||||
|
hl.TelescopePreviewTitle = {
|
||||||
|
bg = c.bg_dark,
|
||||||
|
fg = c.bg_dark,
|
||||||
|
}
|
||||||
|
hl.TelescopeResultsTitle = {
|
||||||
|
bg = c.bg_dark,
|
||||||
|
fg = c.bg_dark,
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Indent
|
||||||
|
hl.MiniIndentscopeSymbol = {
|
||||||
|
fg = util.darken(c.bg_highlight, 0.30),
|
||||||
|
}
|
||||||
|
hl.IblScope = {
|
||||||
|
fg = util.darken(c.bg_highlight, 0.80),
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Floaterm
|
||||||
|
hl.Floaterm = {
|
||||||
|
bg = prompt,
|
||||||
|
}
|
||||||
|
hl.FloatermBorder = {
|
||||||
|
bg = prompt,
|
||||||
|
fg = prompt,
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Copilot
|
||||||
|
hl.CopilotSuggestion = {
|
||||||
|
fg = c.comment,
|
||||||
|
}
|
||||||
|
|
||||||
|
-- NeoTree
|
||||||
|
hl.NeoTreeFileNameOpened = {
|
||||||
|
fg = c.fg,
|
||||||
|
bold = true,
|
||||||
|
}
|
||||||
|
hl.NvimTreeNormal = {
|
||||||
|
bg = util.darken(c.bg_dark, 0.85, '#000000'),
|
||||||
|
}
|
||||||
|
hl.NvimTreeNormalNC = {
|
||||||
|
bg = util.darken(c.bg_dark, 0.85, '#000000'),
|
||||||
|
}
|
||||||
|
hl.NvimTreeWinSeparator = {
|
||||||
|
fg = util.darken(c.bg_dark, 0.85, '#000000'),
|
||||||
|
bg = util.darken(c.bg_dark, 0.85, '#000000'),
|
||||||
|
}
|
||||||
|
end,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -27,6 +142,17 @@ return {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
-- The fastest Neovim colorizer
|
||||||
|
-- https://github.com/catgoose/nvim-colorizer.lua
|
||||||
|
{
|
||||||
|
'catgoose/nvim-colorizer.lua',
|
||||||
|
opts = {
|
||||||
|
user_default_options = {
|
||||||
|
names = false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
-- A neovim plugin that shows colorcolumn dynamically
|
-- A neovim plugin that shows colorcolumn dynamically
|
||||||
-- https://github.com/Bekaboo/deadcolumn.nvim
|
-- https://github.com/Bekaboo/deadcolumn.nvim
|
||||||
{ 'Bekaboo/deadcolumn.nvim' },
|
{ 'Bekaboo/deadcolumn.nvim' },
|
||||||
|
|||||||
@@ -60,8 +60,6 @@ n <Space>sx * :Telescope import<CR>
|
|||||||
Telescope: Import
|
Telescope: Import
|
||||||
n <Space>sw * :Telescope grep_string<CR>
|
n <Space>sw * :Telescope grep_string<CR>
|
||||||
Grep String
|
Grep String
|
||||||
n <Space>st * :TodoTelescope<CR>
|
|
||||||
Search Todos
|
|
||||||
n <Space>ss * :Telescope treesitter<CR>
|
n <Space>ss * :Telescope treesitter<CR>
|
||||||
Treesitter
|
Treesitter
|
||||||
n <Space>sq * :Telescope quickfix<CR>
|
n <Space>sq * :Telescope quickfix<CR>
|
||||||
@@ -82,11 +80,19 @@ n <Space>sd * :Telescope diagnostics<CR>
|
|||||||
Search Diagnostics
|
Search Diagnostics
|
||||||
n <Space>sc * :Telescope commands<CR>
|
n <Space>sc * :Telescope commands<CR>
|
||||||
Commands
|
Commands
|
||||||
|
n <Space>pt * :PhpactorTransform<CR>
|
||||||
|
PHPactor: Transform
|
||||||
|
n <Space>ps * :PhpactorClassSearch<CR>
|
||||||
|
PHPactor: Class Search
|
||||||
|
n <Space>pn * :PhpactorClassNew<CR>
|
||||||
|
PHPactor: Class New
|
||||||
|
n <Space>pm * :PhpactorContextMenu<CR>
|
||||||
|
PHPactor: Context Menu
|
||||||
n <Space>/ * ~/.config/nvim/lua/keymaps.lua
|
n <Space>/ * ~/.config/nvim/lua/keymaps.lua
|
||||||
Fuzzily search in current buffer
|
Fuzzily search in current buffer
|
||||||
n <Space>, * :Telescope buffers<CR>
|
n <Space>, * :Telescope buffers<CR>
|
||||||
Find existing buffers
|
Find existing buffers
|
||||||
n <Space>f * :Telescope find_files<CR>
|
n <Space>f * :Telescope fd --hidden=true<CR>
|
||||||
Find Files
|
Find Files
|
||||||
n <Space>cbt * <Cmd>CBllline<CR>
|
n <Space>cbt * <Cmd>CBllline<CR>
|
||||||
CB: Titled Line
|
CB: Titled Line
|
||||||
@@ -144,6 +150,16 @@ n <Space>bd * :lua MiniBufremove.delete()<CR>
|
|||||||
Delete
|
Delete
|
||||||
n <Space>ba * :%bd|e#|bd#<CR>
|
n <Space>ba * :%bd|e#|bd#<CR>
|
||||||
Close all except current
|
Close all except current
|
||||||
|
n <Space>av * :silent TestVisit<CR>
|
||||||
|
Test Visit
|
||||||
|
n <Space>al * :silent TestLast<CR>
|
||||||
|
Test Last
|
||||||
|
n <Space>as * :silent TestSuite<CR>
|
||||||
|
Test Suite
|
||||||
|
n <Space>af * :silent TestFile<CR>
|
||||||
|
Test File
|
||||||
|
n <Space>an * :silent TestNearest<CR>
|
||||||
|
Test Nearest
|
||||||
n <Space>o * ~/.config/nvim/lua/keymaps.lua
|
n <Space>o * ~/.config/nvim/lua/keymaps.lua
|
||||||
Open repo in browser
|
Open repo in browser
|
||||||
n <Space>tmw * <Cmd>setlocal wrap! wrap?<CR>
|
n <Space>tmw * <Cmd>setlocal wrap! wrap?<CR>
|
||||||
@@ -177,6 +193,10 @@ x % <Plug>(MatchitVisualForward)
|
|||||||
n % <Plug>(MatchitNormalForward)
|
n % <Plug>(MatchitNormalForward)
|
||||||
n & * :&&<CR>
|
n & * :&&<CR>
|
||||||
:help &-default
|
:help &-default
|
||||||
|
n '? & :<C-U>echo ":Start" dispatch#start_focus(v:count > 1 ? 0 : v:count ? line(".") : -1)<CR>
|
||||||
|
n '! & <SNR>30_:.Start!
|
||||||
|
n '<Space> & <SNR>30_:.Start<Space>
|
||||||
|
n '<CR> & <SNR>30_:.Start<CR>
|
||||||
x * * vim/_defaults.lua
|
x * * vim/_defaults.lua
|
||||||
:help v_star-default
|
:help v_star-default
|
||||||
o ; * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/jump.lua
|
o ; * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/jump.lua
|
||||||
@@ -195,7 +215,7 @@ n > * >gv
|
|||||||
Indent Right
|
Indent Right
|
||||||
n @ * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/clue.lua
|
n @ * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/clue.lua
|
||||||
Execute macro without 'mini.clue' triggers
|
Execute macro without 'mini.clue' triggers
|
||||||
x @ * mode() == 'V' ? ':normal! @'.getcharstr().'<CR>' : '@'
|
x @ * mode() ==# 'V' ? ':normal! @'.getcharstr().'<CR>' : '@'
|
||||||
:help v_@-default
|
:help v_@-default
|
||||||
o F * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/jump.lua
|
o F * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/jump.lua
|
||||||
Jump backward
|
Jump backward
|
||||||
@@ -207,7 +227,7 @@ n K * :Lspsaga hover_doc<CR>
|
|||||||
Hover Documentation
|
Hover Documentation
|
||||||
n Q * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/clue.lua
|
n Q * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/clue.lua
|
||||||
Execute macro without 'mini.clue' triggers
|
Execute macro without 'mini.clue' triggers
|
||||||
x Q * mode() == 'V' ? ':normal! @<C-R>=reg_recorded()<CR><CR>' : 'Q'
|
x Q * mode() ==# 'V' ? ':normal! @<C-R>=reg_recorded()<CR><CR>' : 'Q'
|
||||||
:help v_Q-default
|
:help v_Q-default
|
||||||
o T * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/jump.lua
|
o T * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/jump.lua
|
||||||
Jump backward till
|
Jump backward till
|
||||||
@@ -269,7 +289,13 @@ n ]h * <Cmd>lua MiniDiff.goto_hunk('next')<CR>
|
|||||||
Next hunk
|
Next hunk
|
||||||
n ]d * vim/_defaults.lua
|
n ]d * vim/_defaults.lua
|
||||||
Jump to the next diagnostic
|
Jump to the next diagnostic
|
||||||
|
n `? & <SNR>30_:.FocusDispatch<CR>
|
||||||
|
n `! & <SNR>30_:.Dispatch!
|
||||||
|
n `<Space> & <SNR>30_:.Dispatch<Space>
|
||||||
|
n `<CR> & <SNR>30_:.Dispatch<CR>
|
||||||
x a% <Plug>(MatchitVisualTextObject)
|
x a% <Plug>(MatchitVisualTextObject)
|
||||||
|
o ax <Plug>(textobj-xmlattr-attr-a)
|
||||||
|
x ax <Plug>(textobj-xmlattr-attr-a)
|
||||||
o ai * <Cmd>lua MiniIndentscope.textobject(true)<CR>
|
o ai * <Cmd>lua MiniIndentscope.textobject(true)<CR>
|
||||||
Object scope with border
|
Object scope with border
|
||||||
x ai * <Cmd>lua MiniIndentscope.textobject(true)<CR>
|
x ai * <Cmd>lua MiniIndentscope.textobject(true)<CR>
|
||||||
@@ -285,6 +311,14 @@ n gR * :RegexplainerToggle<CR>
|
|||||||
o g% <Plug>(MatchitOperationBackward)
|
o g% <Plug>(MatchitOperationBackward)
|
||||||
x g% <Plug>(MatchitVisualBackward)
|
x g% <Plug>(MatchitVisualBackward)
|
||||||
n g% <Plug>(MatchitNormalBackward)
|
n g% <Plug>(MatchitNormalBackward)
|
||||||
|
n g`? & :<C-U>echo ":Spawn" dispatch#spawn_focus(v:count > 1 ? 0 : v:count ? line(".") : -1)<CR>
|
||||||
|
n g`! & <SNR>30_:.Spawn!
|
||||||
|
n g`<Space> & <SNR>30_:.Spawn<Space>
|
||||||
|
n g`<CR> & <SNR>30_:.Spawn<CR>
|
||||||
|
n g'? & :<C-U>echo ":Spawn" dispatch#spawn_focus(v:count > 1 ? 0 : v:count ? line(".") : -1)<CR>
|
||||||
|
n g'! & <SNR>30_:.Spawn!
|
||||||
|
n g'<Space> & <SNR>30_:.Spawn<Space>
|
||||||
|
n g'<CR> & <SNR>30_:.Spawn<CR>
|
||||||
x gS * :<C-U>lua MiniSplitjoin.toggle({ region = MiniSplitjoin.get_visual_region() })<CR>
|
x gS * :<C-U>lua MiniSplitjoin.toggle({ region = MiniSplitjoin.get_visual_region() })<CR>
|
||||||
Toggle arguments
|
Toggle arguments
|
||||||
n gS * v:lua.MiniSplitjoin.operator("toggle") . " "
|
n gS * v:lua.MiniSplitjoin.operator("toggle") . " "
|
||||||
@@ -353,6 +387,8 @@ x gx * <Cmd>lua MiniOperators.exchange('visual')<CR>
|
|||||||
Exchange selection
|
Exchange selection
|
||||||
n gx * v:lua.MiniOperators.exchange()
|
n gx * v:lua.MiniOperators.exchange()
|
||||||
Exchange operator
|
Exchange operator
|
||||||
|
o ix <Plug>(textobj-xmlattr-attr-i)
|
||||||
|
x ix <Plug>(textobj-xmlattr-attr-i)
|
||||||
o ii * <Cmd>lua MiniIndentscope.textobject(false)<CR>
|
o ii * <Cmd>lua MiniIndentscope.textobject(false)<CR>
|
||||||
Object scope
|
Object scope
|
||||||
x ii * <Cmd>lua MiniIndentscope.textobject(false)<CR>
|
x ii * <Cmd>lua MiniIndentscope.textobject(false)<CR>
|
||||||
@@ -363,6 +399,10 @@ n j * v:count == 0 ? 'gj' : 'j'
|
|||||||
x k * v:count == 0 ? 'gk' : 'k'
|
x k * v:count == 0 ? 'gk' : 'k'
|
||||||
n k * v:count == 0 ? 'gk' : 'k'
|
n k * v:count == 0 ? 'gk' : 'k'
|
||||||
Move up
|
Move up
|
||||||
|
n m? & :<C-U>echo ":Dispatch" dispatch#make_focus(v:count > 1 ? 0 : v:count ? line(".") : -1)<CR>
|
||||||
|
n m! & <SNR>30_:.Make!
|
||||||
|
n m<Space> & <SNR>30_:.Make<Space>
|
||||||
|
n m<CR> & <SNR>30_:.Make<CR>
|
||||||
n shn * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua
|
n shn * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua
|
||||||
Highlight next surrounding
|
Highlight next surrounding
|
||||||
n sFn * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua
|
n sFn * ~/.local/share/nvim/lazy/mini.nvim/lua/mini/surround.lua
|
||||||
@@ -405,12 +445,14 @@ x t * <Cmd>lua MiniJump.smart_jump(false, true)<CR>
|
|||||||
Jump forward till
|
Jump forward till
|
||||||
n t * <Cmd>lua MiniJump.smart_jump(false, true)<CR>
|
n t * <Cmd>lua MiniJump.smart_jump(false, true)<CR>
|
||||||
Jump forward till
|
Jump forward till
|
||||||
x zk * ~/.local/share/nvim/lazy/lazy.nvim/lua/lazy/core/handler/keys.lua
|
|
||||||
Flash
|
|
||||||
o zk * ~/.local/share/nvim/lazy/lazy.nvim/lua/lazy/core/handler/keys.lua
|
o zk * ~/.local/share/nvim/lazy/lazy.nvim/lua/lazy/core/handler/keys.lua
|
||||||
Flash
|
Flash
|
||||||
|
x zk * ~/.local/share/nvim/lazy/lazy.nvim/lua/lazy/core/handler/keys.lua
|
||||||
|
Flash
|
||||||
n zk * ~/.local/share/nvim/lazy/lazy.nvim/lua/lazy/core/handler/keys.lua
|
n zk * ~/.local/share/nvim/lazy/lazy.nvim/lua/lazy/core/handler/keys.lua
|
||||||
Flash
|
Flash
|
||||||
|
n <F1> * :FloatermToggle<CR>
|
||||||
|
Toggle Floaterm
|
||||||
v <C-J> * :m '>+1<CR>gv=gv
|
v <C-J> * :m '>+1<CR>gv=gv
|
||||||
Move Block Down
|
Move Block Down
|
||||||
n <C-J> * :m '>+1<CR>gv=gv
|
n <C-J> * :m '>+1<CR>gv=gv
|
||||||
@@ -450,6 +492,13 @@ x <Plug>(MatchitVisualBackward) * :<C-U>call matchit#Match_wrapper('',0,'v')<CR
|
|||||||
x <Plug>(MatchitVisualForward) * :<C-U>call matchit#Match_wrapper('',1,'v')<CR>:if col("''") != col("$") | exe ":normal! m'" | endif<CR>gv``
|
x <Plug>(MatchitVisualForward) * :<C-U>call matchit#Match_wrapper('',1,'v')<CR>:if col("''") != col("$") | exe ":normal! m'" | endif<CR>gv``
|
||||||
n <Plug>(MatchitNormalBackward) * :<C-U>call matchit#Match_wrapper('',0,'n')<CR>
|
n <Plug>(MatchitNormalBackward) * :<C-U>call matchit#Match_wrapper('',0,'n')<CR>
|
||||||
n <Plug>(MatchitNormalForward) * :<C-U>call matchit#Match_wrapper('',1,'n')<CR>
|
n <Plug>(MatchitNormalForward) * :<C-U>call matchit#Match_wrapper('',1,'n')<CR>
|
||||||
|
n <SNR>30_:. & :<C-R>=getcmdline() =~ ',' ? "\0250" : ""<CR>
|
||||||
|
o <Plug>(textobj-xmlattr-attr-i) & <SNR>26_(save-cursor-pos):<C-U>call g:__textobj_xmlattr.do_by_pattern("select","attr-i","o")<CR>
|
||||||
|
v <Plug>(textobj-xmlattr-attr-i) & <SNR>26_(save-cursor-pos):<C-U>call g:__textobj_xmlattr.do_by_pattern("select","attr-i","v")<CR>
|
||||||
|
o <Plug>(textobj-xmlattr-attr-a) & <SNR>26_(save-cursor-pos):<C-U>call g:__textobj_xmlattr.do_by_pattern("select","attr-a","o")<CR>
|
||||||
|
v <Plug>(textobj-xmlattr-attr-a) & <SNR>26_(save-cursor-pos):<C-U>call g:__textobj_xmlattr.do_by_pattern("select","attr-a","v")<CR>
|
||||||
|
n <SNR>26_ * <SNR>26_
|
||||||
|
<SNR>26_(save-cursor-pos) * <SNR>26_save_cursor_pos()
|
||||||
n <Plug>PlenaryTestFile * :lua require('plenary.test_harness').test_file(vim.fn.expand("%:p"))<CR>
|
n <Plug>PlenaryTestFile * :lua require('plenary.test_harness').test_file(vim.fn.expand("%:p"))<CR>
|
||||||
n <M-k> * <Cmd>lua MiniMove.move_line('up')<CR>
|
n <M-k> * <Cmd>lua MiniMove.move_line('up')<CR>
|
||||||
Move line up
|
Move line up
|
||||||
@@ -479,4 +528,4 @@ n <C-L> * :lua vim.lsp.buf.signature_help()<CR>
|
|||||||
Signature
|
Signature
|
||||||
```
|
```
|
||||||
|
|
||||||
- Generated on Thu 2 Jan 2025 17:41:13 EET
|
- Generated on Tue 7 Jan 2025 21:37:18 EET
|
||||||
|
|||||||
Reference in New Issue
Block a user