aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lua/keys.lua520
-rw-r--r--lua/mods.lua138
-rw-r--r--lua/opts.lua181
-rw-r--r--lua/pack.lua359
-rw-r--r--lua/plugins/airline.lua9
-rw-r--r--lua/plugins/autopairs.lua33
-rw-r--r--lua/plugins/bufferline.lua323
-rw-r--r--lua/plugins/bufferline.lua-202209041657.backup322
-rw-r--r--lua/plugins/cmp-22.10.14-23:39-bak.lua161
-rw-r--r--lua/plugins/cmp.lua220
-rw-r--r--lua/plugins/colorizer.lua6
-rw-r--r--lua/plugins/colorscheme.lua32
-rw-r--r--lua/plugins/feline.lua726
-rw-r--r--lua/plugins/floaterm.lua6
-rw-r--r--lua/plugins/fzf.lua66
-rw-r--r--lua/plugins/git.lua11
-rw-r--r--lua/plugins/gitsigns.lua1
-rw-r--r--lua/plugins/heirline.backup.lua733
-rw-r--r--lua/plugins/heirline.backup2.lua1921
-rw-r--r--lua/plugins/heirline.lua1191
-rw-r--r--lua/plugins/heirline.lua-202210111610.backup1452
-rw-r--r--lua/plugins/heirlinenew.lua1342
-rw-r--r--lua/plugins/linecolor.lua112
-rw-r--r--lua/plugins/lsp-22.10.12-21:29-bak-22.10.12-23:45-bak.lua301
-rw-r--r--lua/plugins/lsp-22.10.12-21:29-bak.lua301
-rw-r--r--lua/plugins/lsp-22.10.14-23:39-bak.lua422
-rw-r--r--lua/plugins/lsp-colors.lua9
-rw-r--r--lua/plugins/lsp.lua527
-rw-r--r--lua/plugins/lspOld.lsp531
-rw-r--r--lua/plugins/lspconfig.lua148
-rw-r--r--lua/plugins/lspkind.lua47
-rw-r--r--lua/plugins/lspsaga-22.10.13-22:51-bak.lua61
-rw-r--r--lua/plugins/lspsaga.lua145
-rw-r--r--lua/plugins/lualine.lua423
-rw-r--r--lua/plugins/mason.lua27
-rw-r--r--lua/plugins/neoscroll.lua21
-rw-r--r--lua/plugins/null-ls.lua26
-rw-r--r--lua/plugins/nvim-tree.lua68
-rw-r--r--lua/plugins/prettier.lua19
-rw-r--r--lua/plugins/tabline.lua22
-rw-r--r--lua/plugins/telescope.lua177
-rw-r--r--lua/plugins/toggleterm.lua90
-rw-r--r--lua/plugins/treesitter.lua34
-rw-r--r--lua/plugins/web-devicons.lua12
-rw-r--r--lua/plugins/winbar.lua35
-rw-r--r--lua/plugins/zen-mode.lua7
-rw-r--r--lua/scripts/lsp-ext.lua48
-rw-r--r--lua/scripts/setcolors.lua121
-rw-r--r--lua/scripts/toggleLsp.lua40
-rw-r--r--lua/startup.log6125
-rw-r--r--lua/utils.lua66
51 files changed, 0 insertions, 19718 deletions
diff --git a/lua/keys.lua b/lua/keys.lua
deleted file mode 100644
index c8f796d..0000000
--- a/lua/keys.lua
+++ /dev/null
@@ -1,520 +0,0 @@
---[[ key.lua ]]
-
--- Shorten function name
-local map = vim.api.nvim_set_keymap
-
-local function new_desc(d)
- return { desc = d }
-end
-
-local d = new_desc
-
-local opts = { noremap = true, silent = true }
-
-local term_opts = { silent = true }
-
---------------- Standard Operations ---------------
--- Semi-colon as leader key
-vim.g.mapleader = ";"
---vim.g.maplocalleader = ";"
-
--- "jj" to exit insert-mode
-map("i", "jj", "<esc>", opts)
-
--- save quickly
---map("n", ";w", ":w<CR>", d("Save buffer"))
-
---Easier split navigations, just ctrl-j instead of ctrl-w then j
-map("n", "<C-J>", "<C-W><C-J>", opts)
-map("n", "<C-K>", "<C-W><C-K>", opts)
-map("n", "<C-L>", "<C-W><C-L>", opts)
-map("n", "<C-H>", "<C-W><C-H>", opts)
-
--- Combine buffers list with buffer name
-map("n", "<Leader>b", ":buffers<CR>:buffer<Space>", opts)
-
--- Map buffer next, prev and delete to <leader+(n/p/d)>
-map("n", "<leader>n", ":bn<cr>", opts)
-map("n", "<leader>p", ":bp<cr>", opts)
-map("n", "<leader>d", ":bd<cr>", opts)
-
--- Disable default completion.
-map('i', '<C-n>', '<Nop>', opts)
-map('i', '<C-p>', '<Nop>', opts)
-
--- Set alt + j/k to switch lines of texts or simply move them
-map("n", "<A-k>", ':let save_a=@a<Cr><Up>"add"ap<Up>:let @a=save_a<Cr>', opts)
-map("n", "<A-j>", ':let save_a=@a<Cr>"add"ap:let @a=save_a<Cr>', opts)
-
-map("n", "<leader><C-l>", "<Cmd>!clear<CR>", opts)
-vim.cmd([[
- inoremap <A-h> <left>
- inoremap <A-j> <down>
- inoremap <A-k> <up>
- inoremap <A-l> <right>
-]])
-
-vim.cmd([[
- cnoremap <A-h> <left>
- cnoremap <A-j> <down>
- cnoremap <A-k> <up>
- cnoremap <A-l> <right>
-]])
-
---vim.cmd([[
--- cnoremap <C-A> <Home>
--- cnoremap <C-F> <Right>
--- cnoremap <C-B> <Left>
--- cnoremap <C-E> <End>
---]])
-
-vim.cmd([[
- snoremap <A-h> <left>
- snoremap <A-j> <down>
- snoremap <A-k> <up>
- snoremap <A-l> <right>
-]])
-
--- move block easily
-map("n", "<", "<<", d("Decrease indent"))
-map("n", ">", ">>", d("Increase indent"))
-map("x", "<", "<gv", d("Increase indent"))
-map("x", ">", ">gv", d("Decrease indent"))
-
--- Resize Panes
-map("n", "<Leader>+", ":resize +5<CR>", opts)
-map("n", "<Leader>-", ":resize -5<CR>", opts)
-map("n", "<Leader><", ":vertical resize +5<CR>", opts)
-map("n", "<Leader>>", ":vertical resize -5<CR>", opts)
-map("n", "<Leader>=", "<C-w>=", opts)
-
--- New tab
-map("n", "<C-T>e", ":tabedit", opts)
-
--- create tab like window
-map("n", "<C-T>h", ":tabprevious<CR>", d("Goto previous tab"))
-map("n", "<C-T>l", ":tabnext<CR>", d("Goto next tab"))
-map("n", "<C-T>n", ":tabnew<CR>", d("Create a new tab"))
-
--- Vim TABs
-map("n", "<leader>1", "1gt<CR>", opts)
-map("n", "<leader>2", "2gt<CR>", opts)
-map("n", "<leader>3", "3gt<CR>", opts)
-map("n", "<leader>4", "4gt<CR>", opts)
-map("n", "<leader>5", "5gt<CR>", opts)
-map("n", "<leader>6", "6gt<CR>", opts)
-map("n", "<leader>7", "7gt<CR>", opts)
-map("n", "<leader>8", "8gt<CR>", opts)
-map("n", "<leader>9", "9gt<CR>", opts)
-map("n", "<leader>0", "10gt<CR>", opts)
-
--- Split window
-map("n", "<leader>h", ":split<CR>", opts)
-map("n", "<leader>v", ":vsplit<CR>", opts)
-map("n", "<leader>c", "<C-w>c", opts)
-
--- Toggle set number
-map("n", "<leader>$", ":NumbersToggle<CR>", opts)
-map("n", "<leader>%", ":NumbersOnOff<CR>", opts)
-
--- Change mode to executable
-map("n", "<leader>x", ":!chmod +x %<CR>", opts)
-
--- Paste without replace clipboard
-map("v", "p", '"_dP', opts)
-
--- Paste end of line
---map("n", ",", "$p", opts)
-vim.cmd([[
- nmap , $p
-]])
-
--- Select entire buffer
-map("v", "<aa>", "gg<S-v>G", opts)
-
--- Delete without changing the registers
---map('n', 'x', '"_x', opts)
-
--- Select all text in current buffer
---map('n', '<leader>a', ':keepjumps normal! ggVG<cr>')
-
--- Swap two pieces of text, use x to cut in visual mode, then use Ctrl-x in
--- visual mode to select text to swap with
-map("v", "<C-X>", "<Esc>`.``gvP``P", opts)
-
--- Search and replace
-map("v", "<leader>sr", 'y:%s/<C-r><C-r>"//g<Left><Left>c', opts)
---vnoremap ; :call Get_visual_selection()<cr>
---
---function! Get_visual_selection()
--- " Why is this not a built-in Vim script function?!
--- let [lnum1, col1] = getpos("'<")[1:2]
--- let [lnum2, col2] = getpos("'>")[1:2]
--- let lines = getline(lnum1, lnum2)
--- let lines[-1] = lines[-1][: col2 - (&selection == 'inclusive' ? 1 : 2)]
--- let lines[0] = lines[0][col1 - 1:]
--- let selection = join(lines,'\n')
--- let change = input('Change the selection with: ')
--- execute ":%s/".selection."/".change."/g"
---endfunction
-vim.cmd([[
-let s:hidden_all = 0
-function! ToggleHiddenAll()
- if s:hidden_all == 0
- let s:hidden_all = 1
- set noshowmode
- set noruler
- set laststatus=0
- set noshowcmd
- else
- let s:hidden_all = 0
- set showmode
- set ruler
- set laststatus=2
- set showcmd
- endif
-endfunction
-nnoremap <S-h> :call ToggleHiddenAll()<CR>
-]])
-
-vim.cmd([[
- map <leader>s :up \| saveas! %:p:r-<C-R>=strftime("%y.%m.%d-%H:%M")<CR>-bak.<C-R>=expand("%:e")<CR> \| 3sleep \| e #<CR>
-]])
-
--------------- Telescope --------------
---Telescope find_files cwd=..
-map("n", "<leader>fc", "<cmd>lua require('telescope.builtin').commands()<cr>", opts)
-map(
- "n",
- "<leader>ft",
- "<cmd>lua require('telescope.builtin').builtin(require('telescope.themes').get_dropdown({}))<cr>",
- opts
-)
-
-map("n", "<leader>fg", "<cmd>lua require('telescope.builtin').live_grep()<cr>", opts)
-map("n", "<leader>fb", "<cmd>lua require('telescope.builtin').current_buffer_fuzzy_find()<cr>", opts)
-
- map("n", "<leader>fd", "<cmd>lua require('telescope.builtin').diagnostics()<cr>", opts)
---map("n", "<leader>fz", ":FZF<CR>", opts)
---map("t", [[<Esc><Esc>]], [[<C-\><C-N>]], opts)
---map("n", "ff", ":NvimTreeToggle<CR>", {})
-map("n", "<leader>f", ":NvimTreeToggle<CR>", {})
--- This <Esc><Esc> avoids crashing fzf menu running in TERMINAL MODE (:q if you do)
--- Find files in config dirs
---key_map("n", "<leader>e", ":lua require('plugins.telescope').find_configs()<CR>", opts)
---map("n", "<leader>f.", "<cmd>lua require('plugins.telescope').find_configs({})<cr>", opts)
-map("n", "<leader>ft", "<cmd>lua require('plugins.telescope').file_explorer({})<cr>", opts)
---map("n", "<leader>fd", "<cmd>lua require('plugins.telescope').find_notes({})<cr>", opts)
-map("n", "<leader>fm", "<cmd>lua require('telescope').extensions.media_files.media_files({})<cr>", opts)
--- registers picker
-map("n", "<leader>r", "<cmd>lua require('telescope.builtin').registers({})<CR>", opts)
--- find files including gitignored
---keymap(
--- "n",
--- "<leader>fg",
--- "<cmd>lua require('telescope.builtin').find_files({find_command={'fd','--no-ignore-vcs'}})<CR>", opts)
--- open available commands & run it
-map("n", "<leader>fc", "<cmd>lua require('telescope.builtin').commands({results_title='Commands Results'})<CR>", opts)
-
--------------- Autopairs --------------
-Toggle_autopairs = function()
- local ok, autopairs = pcall(require, "nvim-autopairs")
- if ok then
- if autopairs.state.disabled then
- autopairs.enable()
- print("autopairs on")
- else
- autopairs.disable()
- print("autopairs off")
- end
- else
- print("autopairs not available")
- end
-end
-map("n", "<leader>ww", ":lua Toggle_autopairs()<CR>", term_opts)
-
--------------- Functions --------------
--- Toggle transparency
-vim.cmd([[
- let t:is_transparent = 0
- function! Toggle_transparent_background()
- if t:is_transparent == 0
- hi Normal guibg=#111111 ctermbg=black
- let t:is_transparent = 1
- else
- hi Normal guibg=NONE ctermbg=NONE
- let t:is_transparent = 0
- endif
- endfunction
- nnoremap <leader>tb :call Toggle_transparent_background()<CR>
-]])
---keymap('n', '<leader>tb', ':Toggle_transparent_background<CR>', opts)
-
--- Toggle zoom
-vim.cmd([[
- function! s:ZoomToggle() abort
- if exists('t:zoomed') && t:zoomed
- execute t:zoom_winrestcmd
- let t:zoomed = 0
- else
- let t:zoom_winrestcmd = winrestcmd()
- resize
- vertical resize
- let t:zoomed = 1
- endif
- endfunction
- command! ZoomToggle call s:ZoomToggle()
- ]])
-map("n", "<leader>z", ":ZoomToggle<CR>", opts)
--- "Zoom" a split window into a tab and/or close it
---keymap('n', '<Leader>,', ':tabnew %<CR>', opts)
---keymap('n', '<Leader>.', ':tabclose<CR>', opts)
-
--- Open last closed buffer
-vim.cmd([[
- function! OpenLastClosed()
- let last_buf = bufname('#')
- if empty(last_buf)
- echo "No recently closed buffer found"
- return
- endif
- let result = input("Open ". last_buf . " in (n)ormal (v)split, (t)ab or (s)plit ? (n/v/t/s) : ")
- if empty(result) || (result !=# 'v' && result !=# 't' && result !=# 's' && result !=# 'n')
- return
- endif
- if result ==# 't'
- execute 'tabnew'
- elseif result ==# 'v'
- execute "vsplit"
- elseif result ==# 's'
- execute "split"
- endif
- execute 'b ' . last_buf
- endfunction
- ]])
-map("n", "<C-t>", ":call OpenLastClosed() <CR>", opts)
-
--- Tabularize
-vim.cmd([[
- vnoremap <expr> <Leader>mm ':Tabularize /^\s*\S.*\zs' . split(&commentstring, '%s')[0] . "<CR>"
- nnoremap <expr> <Leader>mm ':Tabularize /^\s*\S.*\zs' . split(&commentstring, '%s')[0] . "<CR>"
- "nnoremap <leader>i mc40A <esc>080lDgelD`cP
- "vnoremap <leader>ii mc0f-20i<Space><Esc>`cdt=j
-]])
-
-vim.cmd([[
- " Start interactive EasyAlign in visual mode (e.g. vipga)
- xmap ga <Plug>(EasyAlign)
- " Start interactive EasyAlign for a motion/text object (e.g. gaip)
- nmap ga <Plug>(EasyAlign)
- if !exists('g:easy_align_delimiters')
- let g:easy_align_delimiters = {}
- endif
- let g:easy_align_delimiters['--'] = { 'pattern': '--', 'ignore_groups': ['String'] }
- nnoremap <F1> 21A <Esc>d21\|
- imap <F1> <Esc><F1>a
-]])
---:'<,'>EasyAlign /--/
---EasyAlign /--/
---:'<,'>Tabularize /--
-
-map("n", "<leader>,", ":hide<CR>", opts)
-map("n", "<leader>.", ":unhide<CR>", opts)
-
---" Clean trailing whitespace
---nnoremap <leader>ww mz:%s/\s\+$//<cr>:let @/=''<cr>`z
-
--- Save with root permission (not working for now)
---vim.api.nvim_create_user_command('W', 'w !sudo tee > /dev/null %', {})
-
--- Copy and Paste with <C-c> and <C-v>
---keymap('n', '<expr> p', (v:register =--= '"' && &clipboard =~ 'unnamed' ? '"*p' : '"' . v:register . 'p')'', opts)
--- Use command :Vb for Visual Block or <C-q> since <C-v> is used for Copy
---command! Vb normal! <C-v>
--- Map <w!!> to save/edit a root permission/read-only file, only works in
--- traditional vim and not neovim
---keymap('c', 'w!! %!sudo tee > /dev/null', opts)
---" Copying text to the system clipboard.
---"
---" For some reason Vim no longer wants to talk to the OS X pasteboard through "*.
---" Computers are bullshit.
---function! g:FuckingCopyTheTextPlease()
--- let old_z = @z
--- normal! gv"zy
--- call system('pbcopy', @z)
--- let @z = old_z
---endfunction
---noremap <leader>p :silent! set paste<CR>"*p:set nopaste<CR>
---" noremap <leader>p mz:r!pbpaste<cr>`z
---vnoremap <leader>y :<c-u>call g:FuckingCopyTheTextPlease()<cr>
-
---" Indent/dedent/autoindent what you just pasted.
---nnoremap <lt>> V`]<
---nnoremap ><lt> V`]>
---nnoremap =- V`]=
-
---" Keep the cursor in place while joining lines
---nnoremap J mzJ`z
-
---" Toggle [i]nvisible characters
---nnoremap <leader>i :set list!<cr>
---
---" Unfuck my screen
---nnoremap U :syntax sync fromstart<cr>:redraw!<cr>
-
---" Ranger
---nnoremap <leader>r :silent !ranger %:h<cr>:redraw!<cr>
---nnoremap <leader>R :silent !ranger<cr>:redraw!<cr>
---
---" Insert Mode Completion {{{
---
---inoremap <c-f> <c-x><c-f>
---inoremap <c-]> <c-x><c-]>
---inoremap <c-l> <c-x><c-l>
----- Open the current file in the default program (on Mac this should just be just `open`)
---keymap('n', '<leader>x', ':!xdg-open %<cr><cr>')
-
-map("n", "<leader>ff", "<cmd>lua require('telescope.builtin').find_files()<cr>", opts)
---keymap("n", "<leader>ff", "<cmd>lua require('telescope.builtin').find_files cwd=..()<cr>", opts)
---keymap('n', '<leader>k', ':nohlsearch<CR>')
---
---"This unsets the "last search pattern" register by hitting return
-vim.cmd([[
- nnoremap <silent> <CR> :noh<CR><CR>
-]])
-
---keymap('n', '<leader>Q', ':bufdo bdelete<CR>')
---
----- Allow gf to open non-existent files
---keymap('', 'gf', ':edit <cfile><CR>')
---
----- Reselect visual selection after indenting
---keymap('v', '<', '<gv')
---keymap('v', '>', '>gv')
---
----- Maintain the cursor position when yanking a visual selection
----- http://ddrscott.github.io/blog/2016/yank-without-jank/
---keymap('v', 'y', 'myy`y')
---keymap('v', 'Y', 'myY`y')
---keymap("n", "<C-q>", ":q<cr>", opts)
---keymap("n", "<C-M-q>", ":qa!<cr>", opts)
-
---" Sort lines
---nnoremap <leader>s vip:!sort<cr>
---vnoremap <leader>s :!sort<cr>
---
---" Tabs
---nnoremap <leader>( :tabprev<cr>
---nnoremap <leader>) :tabnext<cr>
---
---" Wrap
---nnoremap <leader>W :set wrap!<cr>
-
---set foldlevelstart=0
---
---" Space to toggle folds.
---nnoremap <Space> za
---vnoremap <Space> za
---" Make zO recursively open whatever fold we're in, even if it's partially open.
---nnoremap zO zczO
-
--- Packer
---maps.n["<leader>pc"] = { "<cmd>PackerCompile<cr>", desc = "Packer Compile" }
---maps.n["<leader>pi"] = { "<cmd>PackerInstall<cr>", desc = "Packer Install" }
---maps.n["<leader>ps"] = { "<cmd>PackerSync<cr>", desc = "Packer Sync" }
---maps.n["<leader>pS"] = { "<cmd>PackerStatus<cr>", desc = "Packer Status" }
---maps.n["<leader>pu"] = { "<cmd>PackerUpdate<cr>", desc = "Packer Update" }
--- NeoTree
---if is_available "neo-tree.nvim" then
--- keymaps.n["<leader>e"] = { "<cmd>Neotree toggle<cr>", desc = "Toggle Explorer" }
--- keymaps.n["<leader>o"] = { "<cmd>Neotree focus<cr>", desc = "Focus Explorer" }
---end
--- Alpha
---if is_available "alpha-nvim" then maps.n["<leader>d"] = { "<cmd>Alpha<cr>", desc = "Alpha Dashboard" } end
-
--- Package Manager
--- TODO: v2 rework these key bindings to be more general
---if is_available "mason.nvim" then maps.n["<leader>lI"] = { "<cmd>Mason<cr>", desc = "LSP installer" } end
--- Telescope
---if is_available "telescope.nvim" then
--- maps.n["<leader>fw"] = { function() require("telescope.builtin").live_grep() end, desc = "Search words" }
--- maps.n["<leader>fW"] = {
--- function()
--- require("telescope.builtin").live_grep {
--- additional_args = function(args) return vim.list_extend(args, { "--hidden", "--no-ignore" }) end,
--- }
--- end,
--- desc = "Search words in all files",
--- }
--- maps.n["<leader>gt"] = { function() require("telescope.builtin").git_status() end, desc = "Git status" }
--- maps.n["<leader>gb"] = { function() require("telescope.builtin").git_branches() end, desc = "Git branches" }
--- maps.n["<leader>gc"] = { function() require("telescope.builtin").git_commits() end, desc = "Git commits" }
--- maps.n["<leader>ff"] = { function() require("telescope.builtin").find_files() end, desc = "Search files" }
--- maps.n["<leader>fF"] = {
--- function() require("telescope.builtin").find_files { hidden = true, no_ignore = true } end,
--- desc = "Search all files",
--- }
--- maps.n["<leader>fb"] = { function() require("telescope.builtin").buffers() end, desc = "Search buffers" }
--- maps.n["<leader>fh"] = { function() require("telescope.builtin").help_tags() end, desc = "Search help" }
--- maps.n["<leader>fm"] = { function() require("telescope.builtin").marks() end, desc = "Search marks" }
--- maps.n["<leader>fo"] = { function() require("telescope.builtin").oldfiles() end, desc = "Search history" }
--- maps.n["<leader>fc"] =
--- { function() require("telescope.builtin").grep_string() end, desc = "Search for word under cursor" }
--- maps.n["<leader>sb"] = { function() require("telescope.builtin").git_branches() end, desc = "Git branches" }
--- maps.n["<leader>sh"] = { function() require("telescope.builtin").help_tags() end, desc = "Search help" }
--- maps.n["<leader>sm"] = { function() require("telescope.builtin").man_pages() end, desc = "Search man" }
--- maps.n["<leader>sn"] =
--- { function() require("telescope").extensions.notify.notify() end, desc = "Search notifications" }
--- maps.n["<leader>sr"] = { function() require("telescope.builtin").registers() end, desc = "Search registers" }
--- maps.n["<leader>sk"] = { function() require("telescope.builtin").keymaps() end, desc = "Search keymaps" }
--- maps.n["<leader>sc"] = { function() require("telescope.builtin").commands() end, desc = "Search commands" }
--- maps.n["<leader>ls"] = {
--- function()
--- local aerial_avail, _ = pcall(require, "aerial")
--- if aerial_avail then
--- require("telescope").extensions.aerial.aerial()
--- else
--- require("telescope.builtin").lsp_document_symbols()
--- end
--- end,
--- desc = "Search symbols",
--- }
--- maps.n["<leader>lR"] = { function() require("telescope.builtin").lsp_references() end, desc = "Search references" }
---end
---
----- Terminal
---if is_available "toggleterm.nvim" then
--- local toggle_term_cmd = astronvim.toggle_term_cmd
--- maps.n["<C-\\>"] = { "<cmd>ToggleTerm<cr>", desc = "Toggle terminal" }
--- maps.n["<leader>gg"] = { function() toggle_term_cmd "lazygit" end, desc = "ToggleTerm lazygit" }
--- maps.n["<leader>tn"] = { function() toggle_term_cmd "node" end, desc = "ToggleTerm node" }
--- maps.n["<leader>tu"] = { function() toggle_term_cmd "ncdu" end, desc = "ToggleTerm NCDU" }
--- maps.n["<leader>tt"] = { function() toggle_term_cmd "htop" end, desc = "ToggleTerm htop" }
--- maps.n["<leader>tp"] = { function() toggle_term_cmd "python" end, desc = "ToggleTerm python" }
--- maps.n["<leader>tl"] = { function() toggle_term_cmd "lazygit" end, desc = "ToggleTerm lazygit" }
--- maps.n["<leader>tf"] = { "<cmd>ToggleTerm direction=float<cr>", desc = "ToggleTerm float" }
--- maps.n["<leader>th"] = { "<cmd>ToggleTerm size=10 direction=horizontal<cr>", desc = "ToggleTerm horizontal split" }
--- maps.n["<leader>tv"] = { "<cmd>ToggleTerm size=80 direction=vertical<cr>", desc = "ToggleTerm vertical split" }
---end
---
----- Stay in indent mode
---maps.v["<"] = { "<gv", desc = "unindent line" }
---maps.v[">"] = { ">gv", desc = "indent line" }
---
----- Improved Terminal Mappings
---maps.t["<esc>"] = { "<C-\\><C-n>", desc = "Terminal normal mode" }
---maps.t["jk"] = { "<C-\\><C-n>", desc = "Terminal normal mode" }
---maps.t["<C-h>"] = { "<c-\\><c-n><c-w>h", desc = "Terminal left window navigation" }
---maps.t["<C-j>"] = { "<c-\\><c-n><c-w>j", desc = "Terminal down window navigation" }
---maps.t["<C-k>"] = { "<c-\\><c-n><c-w>k", desc = "Terminal up window navigation" }
---maps.t["<C-l>"] = { "<c-\\><c-n><c-w>l", desc = "Terminal right window naviation" }
--- LSP Installer
---if is_available "mason-lspconfig.nvim" then maps.n["<leader>li"] = { "<cmd>LspInfo<cr>", desc = "LSP information" } end
-
--- ALE: toggle _ALE activity
---keymap('n', '<leader>a',[[:ALEToggle<CR>]])
-
---keymap('n', '<Leader>cd', ':call fzf#run({'source': 'fd -t d -H . ~', 'sink': 'cd'})<CR>', opts)
--- ":lua require('neogen').generate()<CR>", opts)
---keymap("n", "<leader>ww", ":set wrap!<CR>", opts)
---
diff --git a/lua/mods.lua b/lua/mods.lua
deleted file mode 100644
index b8866fc..0000000
--- a/lua/mods.lua
+++ /dev/null
@@ -1,138 +0,0 @@
-vim.cmd([[
- function RandomColorScheme()
- let mycolors = split(globpath(&rtp,"**/colors/*.vim"),"\n")
- exe 'so ' . mycolors[localtime() % len(mycolors)]
- unlet mycolors
- endfunction
-
- call RandomColorScheme()
-
- :command NewColor call RandomColorScheme()
-]])
-
---vim.cmd([[
--- function RandomColorSchemeMyPicks()
--- let mypicks = ["pyte", "fokus", "github", "peachpuff", "morning", "simple256", "xcode", "gruvbox"]
--- let mypick = mypicks[localtime() % len(mypicks)]
--- echom mypick
--- execute 'colo' mypick
--- endfunction
---
--- command NewColor call RandomColorSchemeMyPicks()
---
--- let s:use_gui = exists('g:neovide') || has('gui_running') || (has('termguicolors') && &termguicolors)
--- if (s:use_gui)
--- call RandomColorSchemeMyPicks()
--- endif
---]])
-
-vim.cmd([[
- let g:fzf_history_dir = '~/.local/share/fzf-history'
- map <leader>z :FZF<CR>
- map <leader>a :Files<CR>
- map <leader>l :Lines<CR>
- map <leader>L :BLines<CR>
- map <leader>B :Buffers<CR>
- map <leader>h :History:<CR>
- nnoremap <leader>g :Rg<CR>
- "nnoremap <leader>t :Tags<CR>
- nnoremap <leader>m :Marks<CR>
- " This is the default extra key bindings
- let g:fzf_action = {
- \ 'ctrl-t': 'tab split',
- \ 'ctrl-x': 'split',
- \ 'ctrl-y': 'vsplit' }
- let g:fzf_tags_command = 'ctags -R'
- " Border color
- let g:fzf_layout = {'up':'~90%', 'window': { 'width': 0.8, 'height': 0.8,'yoffset':0.5,'xoffset': 0.5, 'highlight': 'Todo', 'border': 'sharp' } }
- let $FZF_DEFAULT_OPTS = '--layout=reverse --info=inline'
- let $FZF_DEFAULT_COMMAND="rg --files --hidden"
- " Customize fzf colors to match your color scheme
- let g:fzf_colors =
- \ { 'fg': ['fg', 'Normal'],
- \ 'bg': ['bg', 'Normal'],
- \ 'hl': ['fg', 'Comment'],
- \ 'fg+': ['fg', 'CursorLine', 'CursorColumn', 'Normal'],
- \ 'bg+': ['bg', 'CursorLine', 'CursorColumn'],
- \ 'hl+': ['fg', 'Statement'],
- \ 'info': ['fg', 'PreProc'],
- \ 'border': ['fg', 'Ignore'],
- \ 'prompt': ['fg', 'Conditional'],
- \ 'pointer': ['fg', 'Exception'],
- \ 'marker': ['fg', 'Keyword'],
- \ 'spinner': ['fg', 'Label'],
- \ 'header': ['fg', 'Comment'] }
- " Get Files
- command! -bang -nargs=? -complete=dir Files
- \ call fzf#vim#files(<q-args>, fzf#vim#with_preview({'options': ['--layout=reverse', '--info=inline']}), <bang>0)
- " Get text in files with Rg
- command! -bang -nargs=* Rg
- \ call fzf#vim#grep(
- \ 'rg --column --line-number --no-heading --color=always --smart-case '.shellescape(<q-args>), 1,
- \ fzf#vim#with_preview(), <bang>0)
- " Ripgrep advanced
- function! RipgrepFzf(query, fullscreen)
- let command_fmt = 'rg --column --line-number --no-heading --color=always --smart-case %s || true'
- let initial_command = printf(command_fmt, shellescape(a:query))
- let reload_command = printf(command_fmt, '{q}')
- let spec = {'options': ['--phony', '--query', a:query, '--bind', 'change:reload:'.reload_command]}
- call fzf#vim#grep(initial_command, 1, fzf#vim#with_preview(spec), a:fullscreen)
- endfunction
- command! -nargs=* -bang RG call RipgrepFzf(<q-args>, <bang>0)
- " Git grep
- command! -bang -nargs=* GGrep
- \ call fzf#vim#grep(
- \ 'git grep --line-number '.shellescape(<q-args>), 0,
- \ fzf#vim#with_preview({'dir': systemlist('git rev-parse --show-toplevel')[0]}), <bang>0)
- command! -bang FM call fzf#run(fzf#wrap({'source': 'cat ~/.fzf-marks | sed "s/.*: \(.*\)$/\1/" | sed "s#~#${HOME}#"', 'sink': 'lcd'}, <bang>0))
-]])
-
-vim.cmd([[
- " Enable mouse scrollback
- set mouse=a
- tnoremap <Esc> <C-\><C-n>
- tnoremap <c-b> <c-\><c-n>
- function! ClearTerminal()
- set scrollback=1
- let &g:scrollback=1
- echo &scrollback
- call feedkeys("\i")
- call feedkeys("clear\<CR>")
- call feedkeys("\<C-\>\<C-n>")
- call feedkeys("\i")
- sleep 100m
- let &scrollback=s:scroll_value
- endfunction
-]])
-
-vim.cmd([[
- " :Rename {newname}
- function! RenameFile()
- let old_name = expand('%')
- let new_name = input('New file name: ', expand('%'), 'file')
- if new_name != '' && new_name != old_name
- exec ':saveas ' . new_name
- exec ':silent !rm ' . old_name
- redraw!
- endif
- endfunction
- map <leader>re :call RenameFile()<cr>
-]])
-
---vim.cmd([[
--- " Markdown Settings
--- autocmd BufNewFile,BufReadPost *.md set filetype=markdown
--- let g:markdown_fenced_languages = ['html', 'python', 'bash=sh', 'sql', 'pug']
--- let g:markdown_minlines = 100
--- let g:instant_markdown_autostart = 0
---]])
---
---vim.cmd([[
--- " On The Fly Table mode
--- function! s:isAtStartOfLine(mapping)
--- let text_before_cursor = getline('.')[0 : col('.')-1]
--- let mapping_pattern = '\V' . escape(a:mapping, '\')
--- let comment_pattern = '\V' . escape(substitute(&l:commentstring, '%s.*$', '', ''), '\')
--- return (text_before_cursor =~? '^' . ('\v(' . comment_pattern . '\v)?') . '\s*\v' . mapping_pattern . '\v$')
--- endfunction
---]])
diff --git a/lua/opts.lua b/lua/opts.lua
deleted file mode 100644
index 51b3628..0000000
--- a/lua/opts.lua
+++ /dev/null
@@ -1,181 +0,0 @@
---[[ opts.lua ]]
-
-vim.cmd([[
- "filetype plugin indent on " Load indent files, to automatically do language-dependent indenting.
- "autocmd BufEnter * :syntax sync fromstart
- "syntax enable
- let g:clipbrdDefaultReg = '+'
- "set nocompatible
- "autocmd FileType lua set comments=s1:---,m:--,ex:--
-]])
-
--- Environment
-vim.opt.shell = "zsh" --
-vim.scriptencoding = "utf-8" --
-vim.opt.encoding = "utf-8" --
-vim.opt.fileencoding = "utf-8" --
-vim.g.python3_host_prog = "/usr/bin/python3" --
-vim.g.loaded_python3_provider = 1 --
-vim.g.sh_noisk = 1 -- iskeyword word boundaries when editing a 'sh' file
---vim.opt.sessionoptions = "buffers,curdir,folds,help,tabpages,winsize,resize,winpos,terminal,globals" --
-
-vim.opt.termguicolors = true
--- Behaviour
-vim.opt.clipboard:append({ "unnamedplus" }) --
-vim.opt.backspace = { "start", "eol", "indent" } -- Make backspace work as you would expect.
-vim.opt.hidden = true -- Switch between buffers without having to save first.
-vim.opt.splitbelow = true -- make split put the new buffer below the current buffer
-vim.opt.splitright = true -- make vsplit put the new buffer on the right of the current buffer
-vim.opt.scrolloff = 8 --
-vim.opt.sidescrolloff = 8 -- how many lines to scroll when using the scrollbar
-vim.opt.autoread = true -- reload files if changed externally
-vim.opt.display = "lastline" -- Show as much as possible of the last line.
-vim.opt.inccommand = "split" --
-vim.opt.ttyfast = true -- Faster redrawing.
-vim.opt.lazyredraw = true -- Only redraw when necessary
-vim.opt.keywordprg = ":help" -- :help options
-vim.opt.ruler = true --
-vim.opt.errorbells = false --
-vim.opt.list = true -- Show non-printable characters.
-vim.opt.showmatch = true --
-vim.opt.matchtime = 3 --
-vim.opt.showbreak = "↪ " --
-vim.opt.linebreak = true --
-vim.opt.exrc = true --
---vim.opt.autochdir = true -- or use this to use <:e> to create a file in current directory
-vim.opt.autoread = true -- if a file is changed outside of vim, automatically reload it without asking
---vim.opt.notimeout = true -- Timeout on keycodes and not mappings
-vim.opt.ttimeout = true -- Makes terminal vim work sanely
-vim.opt.ttimeoutlen = 10 --
---vim.opt.timeoutlen = 100 -- time to wait for a mapped sequence to complete (in milliseconds)
---vim.cmd([[set diffopt = vertical = true]]) -- diffs are shown side-by-side not above/below
-
--- Indent/tab
-vim.opt.breakindent = true --
-vim.opt.autoindent = true -- Indent according to previous line.
-vim.opt.smarttab = false --
-vim.opt.tabstop = 2 --
-vim.opt.expandtab = true -- Indent according to previous line.
---vim.opt.expandtab = true -- Use spaces instead of tabs.
-vim.opt.softtabstop = 2 -- Tab key indents by 2 spaces.
-vim.opt.shiftwidth = 2 -- >> indents by 2 spaces.
-vim.opt.shiftround = true -- >> indents to next multiple of 'shiftwidth'.
-vim.opt.smartindent = true -- smart indent
-
--- Column/statusline/Cl
-vim.opt.number = true --
---vim.opt.title = true --
---vim.opt.colorcolumn = "+1" --
---vim.opt.signcolumn = "yes:1" -- always show the sign column
-vim.opt.signcolumn = "number"
---vim.opt.signcolumn = "no" --
-vim.opt.laststatus = 3 -- " Always show statusline.
-vim.opt.showmode = true -- Show current mode in command-line, example: -- INSERT -- mode
-vim.opt.showcmd = true -- Show the command in the status bar
-vim.opt.cmdheight = 1 --
---vim.opt.cmdheight = 0 --
-vim.opt.report = 0 -- Always report changed lines.
---local autocmd = vim.api.nvim_create_autocmd
---autocmd("bufenter", {
--- pattern = "*",
--- callback = function()
--- if vim.bo.ft ~= "terminal" then
--- vim.opt.statusline = "%!v:lua.require'ui.statusline'.run()"
--- else
--- vim.opt.statusline = "%#normal# "
--- end
--- end,
---})
-
--- Backup/undo
-vim.opt.backup = false --
---vim.opt.noswapfile = true --
---vim.opt.undofile = true --
-vim.opt.backupskip = { "/tmp/*", "/private/tmp/*" } --
-
--- Format
-vim.opt.textwidth = 80 --
-vim.cmd([[let &t_Cs = "\e[4:3m"]]) -- Undercurl
-vim.cmd([[let &t_Ce = "\e[4:0m"]]) --
-vim.opt.path:append({ "**" }) -- Finding files - Search down into subfolder
-vim.cmd("set whichwrap+=<,>,[,],h,l") --
-vim.cmd([[set iskeyword+=-]]) --
-vim.cmd([[set formatoptions-=cro]]) -- TODO: this doesn't seem to work
-vim.opt.wrapscan = true -- " Searches wrap around end-of-file.
---vim.wo.number = true --
---vim.opt.wrap = false -- No Wrap lines
---vim.opt.foldmethod = 'manual' --
---vim.opt.foldmethod = "expr" --
-vim.opt.modeline = true --
-vim.opt.modelines = 3 -- modelines (comments that set vim options on a per-file basis)
---vim.opt.nofoldenable = true -- turn folding off
-vim.opt.foldenable = false -- turn folding off
-
--- Highlights
-vim.opt.incsearch = true -- Highlight while searching with / or ?.
-vim.opt.hlsearch = true -- Keep matches highlighted.
-vim.opt.ignorecase = true -- ignore case in search patterns UNLESS /C or capital in search
-vim.opt.smartcase = true -- smart case
-vim.opt.synmaxcol = 200 -- Only highlight the first 200 columns.
-vim.opt.winblend = 30
---vim.opt.winblend = 5
-vim.opt.wildoptions = "pum" --
-vim.opt.pumblend = 5 --
---vim.opt.pumblend=15
-vim.opt.pumheight = 10 -- pop up menu height
-
--- Better Completion
-vim.opt.complete = { ".", "w", "b", "u", "t" } --
---vim.opt.completeopt = { "longest,menuone,preview" } --
-vim.opt.completeopt = {'menu', 'menuone', 'noselect'}
---vim.opt.completeopt = { "menuone", "noselect" } -- mostly just for cmp
---vim.opt.completeopt = { "menu", "menuone", "noselect" } --
-
--- Wildmenu completion --
-vim.opt.wildmenu = true --
-vim.opt.wildmode = { "list:longest" } --
-vim.opt.wildignore:append({ ".hg", ".git", ".svn" }) -- Version control
-vim.opt.wildignore:append({ "*.aux", "*.out", "*.toc" }) -- LaTeX intermediate files
-vim.opt.wildignore:append({ "*.jpg", "*.bmp", "*.gif", "*.png", "*.jpeg" }) -- binary images
-vim.opt.wildignore:append({ "*.o", "*.obj", "*.exe", "*.dll", "*.manifest" }) -- compiled object files
-vim.opt.wildignore:append({ "*.spl" }) -- compiled spelling word lists
-vim.opt.wildignore:append({ "*.sw?" }) -- Vim swap files
-vim.opt.wildignore:append({ "*.DS_Store" }) -- OSX bullshit
-vim.opt.wildignore:append({ "*.luac" }) -- Lua byte code
-vim.opt.wildignore:append({ "migrations" }) -- Django migrations
-vim.opt.wildignore:append({ "*.pyc" }) -- Python byte code
-vim.opt.wildignore:append({ "*.orig" }) -- Merge resolution files
-vim.opt.wildignore:append({ "*/node_modules/*" }) --
-
--- Cursorline
-vim.cmd([[ " Only show cursorline in the current window and in normal mode
- augroup cline
- au!
- au WinLeave,InsertEnter * set nocursorline
- au WinEnter,InsertLeave * set cursorline
- augroup END
-]])
-vim.opt.cursorline = true --
-vim.opt.guicursor = "i:ver100,r:hor100" --
-
--- Trailing whitespace
-vim.cmd([[ " Only show in insert mode
- augroup trailing
- au!
- au InsertEnter * :set listchars-=trail:⌴
- au InsertLeave * :set listchars+=trail:⌴
- augroup END
-]])
-vim.opt.listchars = { tab = "▸ ", trail = "·" } --
-vim.opt.fillchars:append({ eob = " " }) -- remove the ~ from end of buffer
-
--- Line Return
-vim.cmd([[ " Return to the same line when we reopen a file
- augroup line_return
- au!
- au BufReadPost *
- \ if line("'\"") > 0 && line("'\"") <= line("$") |
- \ execute 'normal! g`"zvzz' |
- \ endif
- augroup END
-]])
diff --git a/lua/pack.lua b/lua/pack.lua
deleted file mode 100644
index 840baf2..0000000
--- a/lua/pack.lua
+++ /dev/null
@@ -1,359 +0,0 @@
-local fn = vim.fn
-
--- Automatically install packer
-local install_path = fn.stdpath("data") .. "/site/pack/packer/start/packer.nvim"
-if fn.empty(fn.glob(install_path)) > 0 then
- PACKER_BOOTSTRAP = fn.system({
- "git",
- "clone",
- "--depth",
- "1",
- "https://github.com/wbthomason/packer.nvim",
- install_path,
- })
- print("Installing packer close and reopen Neovim...")
- vim.cmd([[packadd packer.nvim]])
-end
-
--- Autocommand that reloads neovim whenever you save the plugins.lua file
-vim.cmd([[
- augroup packer_user_config
- autocmd!
- autocmd BufWritePost pack.lua source <afile> | PackerSync
- augroup end
-]])
-
--- Use a protected call so we don't error out on first use
-local status_ok, packer = pcall(require, "packer")
-if not status_ok then
- return
-end
-
--- Have packer use a popup window
-packer.init({
- auto_reload_compiled = true,
- display = {
- open_fn = function()
- return require("packer.util").float({ border = "rounded" })
- end,
- },
-})
-
--- Install your plugins here
-return packer.startup(function(use)
- use("wbthomason/packer.nvim") -- Have packer manage itself
-
- use("nvim-lua/plenary.nvim") -- Useful lua functions used ny lots of plugins
- --use("jose-elias-alvarez/null-ls.nvim")
-
- -- lsp
- use {
- "williamboman/mason.nvim",
- "williamboman/mason-lspconfig.nvim",
- "neovim/nvim-lspconfig",
- }
- require("mason").setup()
- local mason_lspconfig = require("mason-lspconfig")
- mason_lspconfig.setup({
- ensure_installed = {
- "pylsp",
- "pyright",
- "clangd",
- --"vim-language-server",
- --"bash-language-server",
- --"lua-language-server",
- "sumneko_lua",
- }
- })
- use({ "j-hui/fidget.nvim",
- config = function()
- require("fidget").setup()
- end
- })
- --use({ "folke/trouble.nvim",
- -- config = function()
- -- require("trouble").setup({ position = "right", })
- -- end
- --})
- --use({
- --"folke/trouble.nvim",
- --requires = "kyazdani42/nvim-web-devicons",
- --config = function()
- -- require("trouble").setup({
- -- postion = "top",
- -- -- your configuration comes here
- -- -- or leave it empty to use the default settings
- -- -- refer to the configuration section below
- -- })
- --end,
- --})
-
- --use({
- -- "https://git.sr.ht/~whynothugo/lsp_lines.nvim", -- See also: https://github.com/Maan2003/lsp_lines.nvim
- -- config = function()
- -- require("lsp_lines").setup()
-
- -- -- disable virtual_text since it's redundant due to lsp_lines.
- -- vim.diagnostic.config({
- -- virtual_text = false,
- -- })
- -- end,
- --})
- use { "simrat39/symbols-outline.nvim",
- config = function()
- require("symbols-outline").setup({
- auto_close = true,
- })
- end
- }
- use { "kosayoda/nvim-lightbulb", requires = { "antoinemadec/FixCursorHold.nvim" } }
- --use("folke/lsp-colors.nvim")
- use "mfussenegger/nvim-lint"
- use "weilbith/nvim-code-action-menu"
- use "simrat39/rust-tools.nvim"
- use { "saecki/crates.nvim",
- requires = { "nvim-lua/plenary.nvim" },
- config = function()
- require("crates").setup()
- end,
- }
- --use "lvimuser/lsp-inlayhints.nvim" -- rust-tools already provides this feature, but gopls doesn't
-
- -- null-ls
- use({ "jose-elias-alvarez/null-ls.nvim",
- config = function()
- require("null-ls").setup({
- sources = {
- require("null-ls").builtins.diagnostics.checkmake, -- https://github.com/mrtazz/checkmake
- }
- })
- end
- })
- use({
- "SmiteshP/nvim-navic",
- requires = "neovim/nvim-lspconfig",
- })
-
- -- nvimlsp plugins
- --use({
- -- "williamboman/mason.nvim",
- -- config = function()
- -- require("mason").setup()
- -- require("mason-lspconfig").setup({
- -- ensure_installed = { "sumneko_lua", "clangd", "rust_analyzer" },
- -- })
- -- end,
- --})
- --use("williamboman/mason.nvim")
- --use("williamboman/mason-lspconfig.nvim")
- --use("neovim/nvim-lspconfig")
- --use("williamboman/nvim-lsp-installer")
- --use("glepnir/lspsaga.nvim")
- --use("nvim-lua/lsp-status.nvim")
- --use({
- -- "glepnir/lspsaga.nvim",
- -- branch = "main",
- -- config = function()
- -- local saga = require("lspsaga")
-
- -- saga.init_lsp_saga({
- -- -- your configuration
- -- })
- -- end,
- --})
- -- use("nvim-lua/popup.nvim")
- --use("SmiteshP/nvim-gps")
- -- autocomplete plugins
- use("hrsh7th/nvim-cmp")
- use("hrsh7th/cmp-nvim-lsp")
- use("hrsh7th/cmp-buffer")
- use("hrsh7th/cmp-path")
- use("hrsh7th/cmp-cmdline")
- use("onsails/lspkind-nvim")
- use("saadparwaiz1/cmp_luasnip")
-
- -- snippets
- use("L3MON4D3/LuaSnip") --snippet engine
- use("rafamadriz/friendly-snippets") -- a bunch of snippets to use
- --use("github/copilot.vim")
- --use({
- --"zbirenbaum/copilot.lua",
- --event = { "VimEnter" },
- --config = function()
- --vim.defer_fn(function()
- --require("plugins.copilot")
- --end, 100)
- --end,
- --})
- --use({
- --"zbirenbaum/copilot-cmp",
- --module = "copilot_cmp",
- --})
-
- -- treesitter plugins
- use({ "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" }) --folding, jumping, refactoring...
- use("nvim-treesitter/nvim-treesitter-refactor")
- use("nvim-treesitter/nvim-treesitter-context")
- --use({
- -- "danymat/neogen",
- -- config = function()
- -- require("neogen").setup({ snippet_engine = "luasnip" })
- -- end,
- -- requires = "nvim-treesitter/nvim-treesitter",
- --})
- use({ "junegunn/fzf", run = ":call fzf#install()" })
- -- telescope plugins
- use("nvim-telescope/telescope.nvim")
- use({ "nvim-telescope/telescope-fzf-native.nvim", run = "make" })
- use("tami5/sqlite.lua")
- use("nvim-telescope/telescope-frecency.nvim")
- use("nvim-telescope/telescope-ui-select.nvim")
- use("nvim-telescope/telescope-media-files.nvim")
- use("nvim-telescope/telescope-file-browser.nvim")
- -- search emoji and other symbols
- use({ "nvim-telescope/telescope-symbols.nvim", after = "telescope.nvim" })
- -- statusline plugins
- --use("nvim-lualine/lualine.nvim")
- --use({
- -- "nvim-lualine/lualine.nvim",
- -- requires = { "kyazdani42/nvim-web-devicons", opt = true },
- --})
- --use({
- -- "folke/trouble.nvim",
- -- requires = "kyazdani42/nvim-web-devicons",
- -- config = function()
- -- require("trouble").setup({
- -- -- your configuration comes here
- -- -- or leave it empty to use the default settings
- -- -- refer to the configuration section below
- -- })
- -- end,
- --})
- use("rebelot/heirline.nvim")
- --use({ "akinsho/bufferline.nvim", tag = "v2.*", requires = "kyazdani42/nvim-web-devicons" })
- --use("itchyny/lightline.vim")
- -- debug plugins
- --use("puremourning/vimspector")
- use("mfussenegger/nvim-dap")
- use("rcarriga/nvim-dap-ui")
- --use({
- -- "rcarriga/neotest",
- -- requires = {
- -- "nvim-lua/plenary.nvim",
- -- "nvim-treesitter/nvim-treesitter",
- -- "antoinemadec/FixCursorHold.nvim",
- -- "rcarriga/neotest-python",
- -- "rcarriga/neotest-vim-test",
- -- "rcarriga/neotest-plenary",
- -- "vim-test/vim-test",
- -- },
- -- config = function()
- -- require("plugins.neotest")
- -- end,
- --})
- --use("vim-test/vim-test")
- --use({
- -- "rcarriga/vim-ultest",
- -- requires = { "vim-test/vim-test" },
- -- run = ":UpdateRemotePlugins",
- -- config = function()
- -- require("plugins.ultest")
- -- end,
- --})
- -- UI
- use("karb94/neoscroll.nvim")
- use("folke/which-key.nvim")
- use("MunifTanjim/prettier.nvim") -- Prettier plugin for Neovim's built-in LSP client
- use("norcalli/nvim-colorizer.lua")
- use("folke/zen-mode.nvim")
- use("romainl/vim-cool")
- --use("p00f/nvim-ts-rainbow")
- --use("goolord/alpha-nvim")
- --use("feline-nvim/feline.nvim")
- --use({ "fgheng/winbar.nvim" })
- --use("vim-airline/vim-airline")
- --use("kdheepak/tabline.nvim")
- -- use({
- -- "kdheepak/tabline.nvim",
- -- config = function()
- -- require("tabline").setup({ enable = false })
- -- end,
- -- requires = { "hoob3rt/lualine.nvim", "kyazdani42/nvim-web-devicons" },
- -- notification plugin
- use("rcarriga/nvim-notify")
- --use("lukas-reineke/indent-blankline.nvim")
- use("kyazdani42/nvim-web-devicons")
- -- Colorschemes
- use("gruvbox-community/gruvbox")
- use("srcery-colors/srcery-vim")
- use("tomasr/molokai")
- use("ayu-theme/ayu-vim")
- --use("sjl/badwolf")
- use("joshdick/onedark.vim")
- use("everblush/everblush.nvim")
- use("EdenEast/nightfox.nvim")
- use("bluz71/vim-nightfly-guicolors")
- --use({ "shaunsingh/oxocarbon.nvim", run = "./install.sh" })
- use("jacoborus/tender.vim")
- use("sainnhe/sonokai")
- use("NTBBloodbath/doom-one.nvim")
-
- -- Utilities
- use("nathom/filetype.nvim")
- use("christoomey/vim-tmux-navigator")
- --use("preservim/vimux")
- use("myusuf3/numbers.vim")
- use("windwp/nvim-autopairs")
- use("lewis6991/gitsigns.nvim")
- use("dinhhuy258/git.nvim") -- For git blame & browse
- use("kyazdani42/nvim-tree.lua")
- use("numToStr/Comment.nvim")
- use("akinsho/toggleterm.nvim")
- --use("godlygeek/tabular")
- --use("Vonr/align.nvim")
- --use("junegunn/vim-easy-align")
- --use("dstein64/vim-startuptime")
- use("tweekmonster/startuptime.vim")
- use("lewis6991/impatient.nvim")
- -- use("luukvbaal/stabilize.nvim")
- --use({
- -- "ggandor/leap.nvim",
- -- config = function()
- -- require("leap").set_default_keymaps()
- -- end,
- --})
- --use("Shatur/neovim-session-manager")
- --use("rmagatti/auto-session")
- --use("rmagatti/session-lens")
- --use("ahmedkhalf/project.nvim")
- --use("aserowy/tmux.nvim")
- --use("wakatime/vim-wakatime")
- --use("tpope/vim-eunuch")
- -- Handy unix command inside Vim (Rename, Move etc.)
- use({ "tpope/vim-eunuch", cmd = { "Rename", "Delete" } })
- --use("tpope/vim-fugitive")
- --use("tpope/vim-surround")
- --use("tpope/vim-obsession")
- --use("tpope/vim-unimpaired")
- --use("voldikss/vim-floaterm")
- --use("vimpostor/vim-tpipeline")
- --use({
- -- "vimwiki/vimwiki",
- -- config = function()
- -- vim.g.vimwiki_list = {
- -- {
- -- path = "~/",
- -- syntax = "markdown",
- -- ext = ".md",
- -- },
- -- }
- -- vim.g.vimwiki_ext2syntax = {
- -- [".md"] = "markdown",
- -- [".markdown"] = "markdown",
- -- [".mdown"] = "markdown",
- -- Automatically set up your configuration after cloning packer.nvim
- -- Put this at the end after all plugins
- if PACKER_BOOTSTRAP then
- require("packer").sync()
- end
-end)
diff --git a/lua/plugins/airline.lua b/lua/plugins/airline.lua
deleted file mode 100644
index 76f3655..0000000
--- a/lua/plugins/airline.lua
+++ /dev/null
@@ -1,9 +0,0 @@
--- airline
-vim.cmd([[
- let g:airline#extensions#tabline#enabled = 1
- let g:airline#extensions#tabline#show_buffers = 1
- let g:airline_powerline_fonts = 1
- let g:airline#extensions#tabline#buffer_nr_show = 1
- let g:airline#extensions#tagbar#enabled = 0
- let g:airline_theme='onedark'
-]])
diff --git a/lua/plugins/autopairs.lua b/lua/plugins/autopairs.lua
deleted file mode 100644
index 577e571..0000000
--- a/lua/plugins/autopairs.lua
+++ /dev/null
@@ -1,33 +0,0 @@
--- Setup nvim-cmp.
-local status_ok, npairs = pcall(require, "nvim-autopairs")
-if not status_ok then
- return
-end
-
-npairs.setup {
- check_ts = true,
- ts_config = {
- lua = { "string", "source" },
- javascript = { "string", "template_string" },
- java = false,
- },
- disable_filetype = { "TelescopePrompt", "spectre_panel" },
- fast_wrap = {
- map = "<M-e>",
- chars = { "{", "[", "(", '"', "'" },
- pattern = string.gsub([[ [%'%"%)%>%]%)%}%,] ]], "%s+", ""),
- offset = 0, -- Offset from pattern match
- end_key = "$",
- keys = "qwertyuiopzxcvbnmasdfghjkl",
- check_comma = true,
- highlight = "PmenuSel",
- highlight_grey = "LineNr",
- },
-}
-
-local cmp_autopairs = require "nvim-autopairs.completion.cmp"
-local cmp_status_ok, cmp = pcall(require, "cmp")
-if not cmp_status_ok then
- return
-end
-cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done { map_char = { tex = "" } })
diff --git a/lua/plugins/bufferline.lua b/lua/plugins/bufferline.lua
deleted file mode 100644
index 6488f29..0000000
--- a/lua/plugins/bufferline.lua
+++ /dev/null
@@ -1,323 +0,0 @@
-require("bufferline").setup({
- options = {
- numbers = "buffer_id", -- | "ordinal" | "buffer_id" | "both" | "none" | function({ ordinal, id, lower, raise }): string,
- close_command = "Bdelete! %d", -- can be a string | function, see "Mouse actions"
- right_mouse_command = "Bdelete! %d", -- can be a string | function, see "Mouse actions"
- left_mouse_command = "Bdelete! %d", -- can be a string | function, see "Mouse actions"
- middle_mouse_command = nil, -- can be a string | function, see "Mouse actions"
- --indicator = {
- -- icon = '', -- this should be omitted if indicator style is not 'icon'
- -- style = 'icon', -- | 'underline' | 'none',
- --},
- --indicator_icon = " ",
- --left_mouse_command = "buffer %d", -- can be a string | function, see "Mouse actions"
- modified_icon = '●',
- left_trunc_marker = "",
- right_trunc_marker = "",
- show_buffer_close_icons = true,
- --diagnostics = "nvim_lsp",
- diagnostics = false, --"nvim_lsp", --false, -- | "nvim_lsp" | "coc",
- diagnostics_update_in_insert = false,
- buffer_close_icon = "",
- separator_style = "thin",
- enforce_regular_tabs = true,
- always_show_bufferline = true,
- max_name_length = 25,
- offsets = {
- {
- filetype = "NvimTree",
- text = "File Explorer",
- highlight = "StatusLine",
- text_align = "center",
- },
- },
- custom_areas = {
- right = function()
- local result = {}
- local error = vim.diagnostic.get_count(0, [[Error]])
- local warning = vim.diagnostic.get_count(0, [[Warning]])
- local info = vim.diagnostic.get_count(0, [[Information]])
- local hint = vim.diagnostic.get_count(0, [[Hint]])
-
- if error ~= 0 then
- result[1] = { text = "  " .. error, fg = "#EC5241" }
- end
-
- if warning ~= 0 then
- result[2] = { text = "  " .. warning, fg = "#EFB839" }
- end
-
- if hint ~= 0 then
- result[3] = { text = "  " .. hint, fg = "#A3BA5E" }
- end
-
- if info ~= 0 then
- result[4] = { text = "  " .. info, fg = "#7EA9A7" }
- end
-
- return result
- end,
- },
- },
- highlights = {
- background = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- tab = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- tab_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- --fg = tabline_sel_bg,
- },
- tab_close = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- close_button = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- close_button_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- close_button_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- buffer_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- buffer_selected = {
- fg = "002b36",
- bg = "#fdf6e3",
- bold = true,
- italic = true,
- },
- numbers = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- numbers_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- numbers_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- diagnostic = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- diagnostic_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- diagnostic_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- hint = {
- fg = "#fdf6e3",
- sp = "#002b36",
- bg = "#002b36",
- },
- hint_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- hint_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- hint_diagnostic = {
- fg = "#fdf6e3",
- sp = "#002b36",
- bg = "#002b36",
- },
- hint_diagnostic_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- hint_diagnostic_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- info = {
- fg = "#fdf6e3",
- sp = "#002b36",
- bg = "#002b36",
- },
- info_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- info_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- info_diagnostic = {
- fg = "#fdf6e3",
- sp = "#002b36",
- bg = "#002b36",
- },
- info_diagnostic_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- info_diagnostic_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- warning = {
- fg = "#fdf6e3",
- sp = "#002b36",
- bg = "#002b36",
- },
- warning_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- warning_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- warning_diagnostic = {
- fg = "#fdf6e3",
- sp = "#002b36",
- bg = "#002b36",
- },
- warning_diagnostic_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- warning_diagnostic_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- error = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- },
- error_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- error_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- error_diagnostic = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- },
- error_diagnostic_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- error_diagnostic_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- modified = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- modified_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- modified_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- duplicate_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- italic = true,
- },
- duplicate_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- italic = true
- },
- duplicate = {
- fg = "#fdf6e3",
- bg = "#002b36",
- italic = true
- },
- separator_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- separator_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- separator = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- indicator_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- pick_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- pick_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- pick = {
- fg = "#fdf6e3",
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- --offset_separator = {
- -- fg = win_separator_fg,
- -- bg = separator_background_color,
- --},
- }
-})
diff --git a/lua/plugins/bufferline.lua-202209041657.backup b/lua/plugins/bufferline.lua-202209041657.backup
deleted file mode 100644
index 1d45e5f..0000000
--- a/lua/plugins/bufferline.lua-202209041657.backup
+++ /dev/null
@@ -1,322 +0,0 @@
-require("bufferline").setup({
- options = {
- numbers = "buffer_id", -- | "ordinal" | "buffer_id" | "both" | "none" | function({ ordinal, id, lower, raise }): string,
- close_command = "Bdelete! %d", -- can be a string | function, see "Mouse actions"
- right_mouse_command = "Bdelete! %d", -- can be a string | function, see "Mouse actions"
- left_mouse_command = "Bdelete! %d", -- can be a string | function, see "Mouse actions"
- middle_mouse_command = nil, -- can be a string | function, see "Mouse actions"
- --indicator = {
- -- icon = '', -- this should be omitted if indicator style is not 'icon'
- -- style = 'icon', -- | 'underline' | 'none',
- --},
- --indicator_icon = " ",
- --left_mouse_command = "buffer %d", -- can be a string | function, see "Mouse actions"
- modified_icon = '●',
- left_trunc_marker = "",
- right_trunc_marker = "",
- show_buffer_close_icons = true,
- --diagnostics = "nvim_lsp",
- diagnostics = false, --"nvim_lsp", --false, -- | "nvim_lsp" | "coc",
- diagnostics_update_in_insert = false,
- buffer_close_icon = "",
- separator_style = "slant",
- enforce_regular_tabs = true,
- always_show_bufferline = true,
- max_name_length = 25,
- offsets = {
- {
- filetype = "NvimTree",
- text = "File Explorer",
- highlight = "StatusLine",
- text_align = "center",
- },
- },
- custom_areas = {
- right = function()
- local result = {}
- local error = vim.diagnostic.get_count(0, [[Error]])
- local warning = vim.diagnostic.get_count(0, [[Warning]])
- local info = vim.diagnostic.get_count(0, [[Information]])
- local hint = vim.diagnostic.get_count(0, [[Hint]])
-
- if error ~= 0 then
- result[1] = { text = "  " .. error, fg = "#EC5241" }
- end
-
- if warning ~= 0 then
- result[2] = { text = "  " .. warning, fg = "#EFB839" }
- end
-
- if hint ~= 0 then
- result[3] = { text = "  " .. hint, fg = "#A3BA5E" }
- end
-
- if info ~= 0 then
- result[4] = { text = "  " .. info, fg = "#7EA9A7" }
- end
-
- return result
- end,
- },
- },
- highlights = {
- background = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- tab = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- tab_selected = {
- fg = tabline_sel_bg,
- bg = "#002b36",
- },
- tab_close = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- close_button = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- close_button_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- close_button_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- buffer_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- buffer_selected = {
- fg = normal_fg,
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- numbers = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- numbers_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- numbers_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- diagnostic = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- diagnostic_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- diagnostic_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- hint = {
- fg = "#fdf6e3",
- sp = "#002b36",
- bg = "#002b36",
- },
- hint_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- hint_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- hint_diagnostic = {
- fg = "#fdf6e3",
- sp = "#002b36",
- bg = "#002b36",
- },
- hint_diagnostic_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- hint_diagnostic_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- info = {
- fg = "#fdf6e3",
- sp = "#002b36",
- bg = "#002b36",
- },
- info_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- info_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- info_diagnostic = {
- fg = "#fdf6e3",
- sp = "#002b36",
- bg = "#002b36",
- },
- info_diagnostic_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- info_diagnostic_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- warning = {
- fg = "#fdf6e3",
- sp = "#002b36",
- bg = "#002b36",
- },
- warning_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- warning_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- warning_diagnostic = {
- fg = "#fdf6e3",
- sp = "#002b36",
- bg = "#002b36",
- },
- warning_diagnostic_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- warning_diagnostic_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- error = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- },
- error_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- error_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- error_diagnostic = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- },
- error_diagnostic_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- error_diagnostic_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- sp = "#002b36",
- bold = true,
- italic = true,
- },
- modified = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- modified_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- modified_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- duplicate_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- italic = true,
- },
- duplicate_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- italic = true
- },
- duplicate = {
- fg = "#fdf6e3",
- bg = "#002b36",
- italic = true
- },
- separator_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- separator_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- separator = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- indicator_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- },
- pick_selected = {
- fg = "#fdf6e3",
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- pick_visible = {
- fg = "#fdf6e3",
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- pick = {
- fg = "#fdf6e3",
- bg = "#002b36",
- bold = true,
- italic = true,
- },
- --offset_separator = {
- -- fg = win_separator_fg,
- -- bg = separator_background_color,
- --},
- }
-})
diff --git a/lua/plugins/cmp-22.10.14-23:39-bak.lua b/lua/plugins/cmp-22.10.14-23:39-bak.lua
deleted file mode 100644
index 3b0a8f5..0000000
--- a/lua/plugins/cmp-22.10.14-23:39-bak.lua
+++ /dev/null
@@ -1,161 +0,0 @@
-local cmp_status_ok, cmp = pcall(require, "cmp")
-if not cmp_status_ok then
- return
-end
-
-vim.o.completeopt = "menu,menuone,noselect"
-
---require("luasnip/loaders/from_vscode").lazy_load()
---local luasnip = require "luasnip"
-
-cmp.setup {
- snippet = {
- expand = function(args)
- require("luasnip").lsp_expand(args.body)
- end,
- },
- mapping = {
- ['<C-Space>'] = cmp.mapping.complete(),
- ['<C-e>'] = cmp.mapping.close(),
- ['<CR>'] = cmp.mapping.confirm {
- behavior = cmp.ConfirmBehavior.Replace,
- select = true,
- },
- ['<Down>'] = cmp.mapping(cmp.mapping.select_next_item({ behavior = cmp.SelectBehavior.Select }), {'i'}),
- ['<Up>'] = cmp.mapping(cmp.mapping.select_prev_item({ behavior = cmp.SelectBehavior.Select }), {'i'}),
- },
- sources = {
- { name = 'nvim_lsp' },
- { name = 'treesitter' },
- { name = 'luasnip' },
- }
-}
---local lspkind = require("lspkind")
---cmp.setup({
--- formatting = {
--- format = lspkind.cmp_format({
--- mode = "symbol", -- show only symbol annotations
--- maxwidth = 50, -- prevent the popup from showing more than provided characters (e.g 50 will not show more than 50 characters)
--- ellipsis_char = "...", -- when popup menu exceed maxwidth, the truncated part would show ellipsis_char instead (must define maxwidth first)
---
--- -- The function below will be called before any actual modifications from lspkind
--- -- so that you can provide more controls on popup customization. (See [#30](https://github.com/onsails/lspkind-nvim/pull/30))
--- before = function(entry, vim_item)
--- --...
--- return vim_item
--- end,
--- }),
--- },
---})
---
---require("luasnip/loaders/from_vscode").lazy_load()
---
-----   פּ ﯟ  some other good icons
---local kind_icons = {
--- Text = "",
--- Method = "",
--- Function = "",
--- Constructor = "⚙️",
--- Field = "",
--- Variable = "",
--- Class = "ﴯ",
--- Interface = "",
--- Module = "",
--- Property = "ﰠ",
--- Unit = "",
--- Value = "",
--- Enum = "",
--- Keyword = "",
--- Snippet = "",
--- Color = "",
--- File = "",
--- Reference = "",
--- Folder = "",
--- EnumMember = "",
--- Constant = "",
--- Struct = "",
--- Event = "",
--- Operator = "",
--- TypeParameter = "",
---}
---
----- find more here: https://www.nerdfonts.com/cheat-sheet
---
---cmp.setup({
--- snippet = {
--- expand = function(args)
--- require("luasnip").lsp_expand(args.body)
--- end,
--- },
--- mapping = cmp.mapping.preset.insert({
--- ["<C-d>"] = cmp.mapping.scroll_docs(-4),
--- ["<C-f>"] = cmp.mapping.scroll_docs(4),
--- ["<C-Space>"] = cmp.mapping.complete(),
--- ["<C-e>"] = cmp.mapping.close(),
--- ["<CR>"] = cmp.mapping.confirm({
--- behavior = cmp.ConfirmBehavior.Replace,
--- select = true,
--- }),
--- }),
--- sources = cmp.config.sources({
--- { name = "path" },
--- { name = "nvim_lsp", keyword_length = 3 },
--- { name = "buffer", keyword_length = 3 },
--- { name = "luasnip", keyword_length = 4 },
--- { name = "cmdline", keyword_pattern = [=[[^[:blank:]\!]*]=], keyword_length = 3 },
--- --{ name = "cmdline", keyword_pattern = [=[[^[:blank:]\!]*]=] }, --exclamation mark hangs a bit without this
--- --{name = 'luasnip', keyword_length = 2},
--- }),
--- formatting = {
--- fields = { "kind", "abbr", "menu" },
--- format = function(entry, vim_item)
--- -- Kind icons
--- vim_item.kind = string.format("%s", kind_icons[vim_item.kind])
--- -- vim_item.kind = string.format('%s %s', kind_icons[vim_item.kind], vim_item.kind) -- This concatonates the icons with the name of the item kind
--- vim_item.menu = ({
--- nvim_lsp = "[LSP]",
--- luasnip = "[Snippet]",
--- buffer = "[Buffer]",
--- path = "[Path]",
--- })[entry.source.name]
--- return vim_item
--- end,
--- },
--- confirm_opts = {
--- behavior = cmp.ConfirmBehavior.Replace,
--- select = false,
--- },
--- window = {
--- documentation = {
--- border = { "╭", "─", "╮", "│", "╯", "─", "╰", "│" },
--- },
--- },
--- experimental = {
--- ghost_text = true,
--- native_menu = false,
--- --view = {
--- -- entries = "native"
--- --},
--- },
---})
---
-----vim.cmd([[
----- set completeopt=menuone,noinsert,noselect
----- highlight! default link CmpItemKind CmpItemMenuDefault
-----]])
---
---cmp.setup.cmdline("/", {
--- mapping = cmp.mapping.preset.cmdline(),
--- sources = {
--- { name = "buffer" },
--- },
---})
---
---cmp.setup.cmdline(":", {
--- mapping = cmp.mapping.preset.cmdline(),
--- sources = cmp.config.sources({
--- { name = "path" },
--- }, {
--- { name = "cmdline" },
--- }),
---})
diff --git a/lua/plugins/cmp.lua b/lua/plugins/cmp.lua
deleted file mode 100644
index 122524c..0000000
--- a/lua/plugins/cmp.lua
+++ /dev/null
@@ -1,220 +0,0 @@
-
--- Setup nvim-cmp.
---vim.opt.completeopt = "menu,menuone,noselect"
-vim.g.completeopt = "menu,menuone,noselect,noinsert"
-local cmp_status_ok, cmp = pcall(require, "cmp")
-if not cmp_status_ok then
- return
-end
-local WIDE_HEIGHT = 40
-
-local opts = {
- -- whether to highlight the currently hovered symbol
- -- disable if your cpu usage is higher than you want it
- -- or you just hate the highlight
- -- default: true
- highlight_hovered_item = true,
- show_guides = true,
-}
-require("symbols-outline").setup(opts)
-
-
---local snippets_paths = function()
--- local plugins = { "friendly-snippets" }
--- local paths = {}
--- local path
--- local root_path = vim.env.HOME .. "/.vim/plugged/"
--- for _, plug in ipairs(plugins) do
--- path = root_path .. plug
--- if vim.fn.isdirectory(path) ~= 0 then
--- table.insert(paths, path)
--- end
--- end
--- return paths
---end
---
---require("luasnip.loaders.from_vscode").lazy_load({
--- paths = snippets_paths(),
--- include = nil, -- Load all languages
--- exclude = {},
---})
-
-require("luasnip.loaders.from_vscode").lazy_load()
-local lspkind = require("lspkind")
-local kind_icons = {
- Text = "",
- Method = "m", --"",
- Function = "",
- Constructor = "", --"⚙️",
- Field = "",
- Variable = "",
- Class = "",
- Interface = "",
- Module = "",
- Property = "",
- Unit = "",
- Value = "",
- Enum = "",
- Keyword = "",
- Snippet = "",
- Color = "",
- File = "",
- Reference = "",
- Folder = "",
- EnumMember = "",
- Constant = "",
- Struct = "",
- Event = "",
- Operator = "",
- TypeParameter = "",
-}
-cmp.setup({
- snippet = {
- expand = function(args)
- require("luasnip").lsp_expand(args.body)
- end,
- },
- mapping = cmp.mapping.preset.insert({
--- ["<CR>"] = cmp.mapping.confirm({
--- behavior = cmp.ConfirmBehavior.Replace,
--- select = true,
--- }),
- ['<C-y>'] = cmp.mapping.confirm({ select = true }),
- ["<C-e>"] = cmp.mapping.close(),
- --['<CR>'] = cmp.config.disable,
- ["<C-u>"] = cmp.mapping.scroll_docs(-4),
- ["<C-d>"] = cmp.mapping.scroll_docs(4),
- ["<C-Space>"] = cmp.mapping.complete(),
- ['<C-o>'] = function(fallback)
- if cmp.visible() then
- cmp.mapping.confirm({ select = true })(fallback)
- else
- cmp.mapping.complete()(fallback)
- end
- end
- }),
-
- sources = cmp.config.sources({
- { name = "path" },
- { name = "nvim_lsp", keyword_length = 3 },
- { name = "luasnip", keyword_length = 4 },
- --{ name = "buffer", keyword_length = 3 },
- { name = "buffer", option = { get_bufnrs = function()
- return vim.api.nvim_list_bufs()
- end
- }},
- --{ name = 'treesitter' },
- { name = "cmdline", keyword_pattern = [=[[^[:blank:]\!]*]=], keyword_length = 3 },
- --{ name = "cmdline", keyword_pattern = [=[[^[:blank:]\!]*]=] }, --exclamation mark hangs a bit without this
- { name = "cmp_git"},
- --{name = 'luasnip', keyword_length = 2},
- }),
- formatting = {
- --formatting = {
- format = function(entry, vim_item)
- --format = function(entry, vim_item,)
- --local icons = kind_icons
- --vim_item.kind = string.format("%s", kind_icons[vim_item.kind])
- -- vim_item.kind = lspkind.presets.default[vim_item.kind]
- vim_item.kind = string.format('%s %s', kind_icons[vim_item.kind], vim_item.kind) -- This concatonates the icons with the name of the item kind
- --vim_item.kind = string.format("%s %s", icons[vim_item.kind], vim_item.kind)
- vim_item.menu = ({
- nvim_lsp = "Lsp",
- luasnip = "Snip",
- buffer = "Buf",
- path = "Path",
- cmdline = "Cmd",
- })[entry.source.name]
- return vim_item
- end,
- --},
-
- --
- --
- --fields = { "abbr", "kind", "menu" },
- -- format = lspkind.cmp_format({
- -- mode = 'symbol_text', -- show only symbol annotations
- -- maxwidth = 50, -- prevent the popup from showing more than provided characters (e.g 50 will not show more than 50 characters)
- -- })
- --format = require('lspkind').cmp_format {
- -- with_text = true,
- -- menu = {
- -- luasnip = "Snip",
- -- buffer = "Buf",
- -- nvim_lsp = "LSP",
- -- path = "Path",
- -- cmdline = "Cmd",
- -- cmp_git = "Git",
- -- },
- --},
- },
- --format = function(entry, vim_item)
- -- -- Kind icons
- -- --vim_item.kind = string.format("%s", kind_icons[vim_item.kind])
- -- vim_item.kind = lspkind.presets.default[vim_item.kind]
- -- -- vim_item.kind = string.format('%s %s', kind_icons[vim_item.kind], vim_item.kind) -- This concatonates the icons with the name of the item kind
- -- vim_item.menu = ({
- -- nvim_lsp = "LSP",
- -- luasnip = "Snip",
- -- buffer = "Buf",
- -- path = "Path",
- -- cmdline = "Cmd",
- -- })[entry.source.name]
- -- return vim_item
- --end,
- confirm_opts = {
- behavior = cmp.ConfirmBehavior.Replace,
- select = false,
- },
-
-
- event = {},
-
- experimental = {
- ghost_text = true,
- hl_group = 'Nontext',
- },
-
- view = {
- entries = { name = 'custom', selection_order = 'top_down' },
- },
-
- window = {
- --completion = cmp.config.window.bordered(),
- completion = {
- border = { '', '', '', ' ', '', '', '', ' ' },
- --border = { "╭", "─", "╮", "│", "╯", "─", "╰", "│" },
- --border = { '', '', '', '', '', '', '', '' },
- --border = "CmpBorder",
- --winhighlight = 'Normal:Pmenu,FloatBorder:Pmenu,CursorLine:PmenuSel,Search:None',
- winhighlight = "Normal:CmpPmenu,CursorLine:PmenuSel,Search:None",
- },
- --documentation = cmp.config.window.bordered(),
- documentation = {
- max_height = math.floor(WIDE_HEIGHT * (WIDE_HEIGHT / vim.o.lines)),
- max_width = math.floor((WIDE_HEIGHT * 2) * (vim.o.columns / (WIDE_HEIGHT * 2 * 16 / 9))),
- border = { '', '', '', ' ', '', '', '', ' ' },
- --border = { "╭", "─", "╮", "│", "╯", "─", "╰", "│" },
- winhighlight = 'FloatBorder:NormalFloat',
- },
- },
-})
-
-
-cmp.setup.cmdline("/", {
- mapping = cmp.mapping.preset.cmdline(),
- sources = {
- { name = "buffer" },
- },
-})
-
-cmp.setup.cmdline(":", {
- mapping = cmp.mapping.preset.cmdline(),
- sources = cmp.config.sources({
- { name = "path" },
- }, {
- { name = "cmdline" },
- }),
-})
-
-
diff --git a/lua/plugins/colorizer.lua b/lua/plugins/colorizer.lua
deleted file mode 100644
index 14d25e2..0000000
--- a/lua/plugins/colorizer.lua
+++ /dev/null
@@ -1,6 +0,0 @@
-local status, colorizer = pcall(require, "colorizer")
-if (not status) then return end
-
-colorizer.setup({
- '*';
-})
diff --git a/lua/plugins/colorscheme.lua b/lua/plugins/colorscheme.lua
deleted file mode 100644
index 35e4f47..0000000
--- a/lua/plugins/colorscheme.lua
+++ /dev/null
@@ -1,32 +0,0 @@
--- Colorscheme
--- ayu gruvbox molokai onedark srcery everblush vscode edge nightfly
-local colorscheme = "onedark"
-local status_ok, _ = pcall(vim.cmd, "colorscheme " .. colorscheme)
-if not status_ok then
- vim.notify("colorscheme " .. colorscheme .. " not found!")
- return
-end
-
-vim.api.nvim_command("syntax on")
-vim.api.nvim_command("highlight Normal guibg=none")
-vim.api.nvim_command("highlight SignColumn guibg=none")
-vim.api.nvim_command("highlight TabLine guibg=#333842 gui=bold")
---vim.api.nvim_command("highlight TabLine guibg=none gui=bold")
-vim.api.nvim_command("highlight StatusLine guibg=#333842 gui=bold")
---vim.api.nvim_command("highlight StatusLine guibg=#333842 guifg=#d6d3ea gui=bold")
---vim.api.nvim_command("highlight StatusLine guibg=none gui=bold")
---vim.api.nvim_command("highlight TabLineNC guibg=none gui=bold")
---vim.api.nvim_command("highlight TabLineSel guibg=#bd93f9 gui=bold")
-vim.api.nvim_command("highlight TabLineSel guibg=#333842 gui=bold")
-vim.api.nvim_command("highlight TabLineFill guibg=none gui=bold")
-vim.api.nvim_command("highlight WinBar guibg=none gui=bold")
-vim.api.nvim_command("highlight NormalFloat guibg=none")
---vim.api.nvim_command("highlight PmenuSel guibg=none")
---vim.api.nvim_command("highlight winblend guibg=none")
---vim.api.nvim_command("highlight StatusLine guibg=none gui=bold")
---vim.api.nvim_command("highlight StatusLineNC guibg=none gui=bold")
---vim.api.nvim_command("highlight StatusLineNC guibg=none ctermfg=Cyan guifg=#80a0ff gui=bold")
-
-require("notify").setup({
- background_colour = "#000000",
-})
diff --git a/lua/plugins/feline.lua b/lua/plugins/feline.lua
deleted file mode 100644
index f259108..0000000
--- a/lua/plugins/feline.lua
+++ /dev/null
@@ -1,726 +0,0 @@
-require('feline').setup()
---local lsp = require("feline.providers.lsp")
---local vi_mode_utils = require("feline.providers.vi_mode")
---local navic = require("nvim-navic")
---
---local force_inactive = {
--- filetypes = {},
--- buftypes = {},
--- bufnames = {},
---}
---
---local winbar_components = {
--- active = { {}, {}, {} },
--- inactive = { {}, {}, {} },
---}
---
---local components = {
--- active = { {}, {}, {} },
--- inactive = { {}, {}, {} },
---}
---
---local colors = {
--- bg = "#282828",
--- black = "#282828",
--- yellow = "#d8a657",
--- cyan = "#89b482",
--- oceanblue = "#45707a",
--- green = "#a9b665",
--- orange = "#e78a4e",
--- violet = "#d3869b",
--- magenta = "#c14a4a",
--- white = "#a89984",
--- fg = "#a89984",
--- skyblue = "#7daea3",
--- red = "#ea6962",
---}
---
---local vi_mode_colors = {
--- NORMAL = "green",
--- OP = "green",
--- INSERT = "red",
--- CONFIRM = "red",
--- VISUAL = "skyblue",
--- LINES = "skyblue",
--- BLOCK = "skyblue",
--- REPLACE = "violet",
--- ["V-REPLACE"] = "violet",
--- ENTER = "cyan",
--- MORE = "cyan",
--- SELECT = "orange",
--- COMMAND = "green",
--- SHELL = "green",
--- TERM = "green",
--- NONE = "yellow",
---}
---
---local vi_mode_text = {
--- NORMAL = "<|",
--- OP = "<|",
--- INSERT = "|>",
--- VISUAL = "<>",
--- LINES = "<>",
--- BLOCK = "<>",
--- REPLACE = "<>",
--- ["V-REPLACE"] = "<>",
--- ENTER = "<>",
--- MORE = "<>",
--- SELECT = "<>",
--- COMMAND = "<|",
--- SHELL = "<|",
--- TERM = "<|",
--- NONE = "<>",
--- CONFIRM = "|>",
---}
---
---local buffer_not_empty = function()
--- if vim.fn.empty(vim.fn.expand("%:t")) ~= 1 then
--- return true
--- end
--- return false
---end
---
---local checkwidth = function()
--- local squeeze_width = vim.fn.winwidth(0) / 2
--- if squeeze_width > 40 then
--- return true
--- end
--- return false
---end
---
---force_inactive.filetypes = {
--- "NvimTree",
--- "dbui",
--- "packer",
--- "startify",
--- "fugitive",
--- "fugitiveblame",
---}
---
---force_inactive.buftypes = {
--- "terminal",
---}
---
----- STATUSLINE
----- LEFT
---
----- vi-mode
---components.active[1][1] = {
--- provider = " NV-IDE ",
--- hl = function()
--- local val = {}
---
--- val.bg = vi_mode_utils.get_mode_color()
--- val.fg = "black"
--- val.style = "bold"
---
--- return val
--- end,
--- right_sep = " ",
---}
----- vi-symbol
---components.active[1][2] = {
--- provider = function()
--- return vi_mode_text[vi_mode_utils.get_vim_mode()]
--- end,
--- hl = function()
--- local val = {}
--- val.fg = vi_mode_utils.get_mode_color()
--- val.bg = "bg"
--- val.style = "bold"
--- return val
--- end,
--- right_sep = " ",
---}
----- filename
---components.active[1][3] = {
--- provider = function()
--- return vim.fn.expand("%:F")
--- end,
--- hl = {
--- fg = "white",
--- bg = "bg",
--- style = "bold",
--- },
---}
----- MID
---
----- gitBranch
---components.active[2][1] = {
--- provider = "git_branch",
--- hl = {
--- fg = "yellow",
--- bg = "bg",
--- style = "bold",
--- },
---}
----- diffAdd
---components.active[2][2] = {
--- provider = "git_diff_added",
--- hl = {
--- fg = "green",
--- bg = "bg",
--- style = "bold",
--- },
---}
----- diffModfified
---components.active[2][3] = {
--- provider = "git_diff_changed",
--- hl = {
--- fg = "orange",
--- bg = "bg",
--- style = "bold",
--- },
---}
----- diffRemove
---components.active[2][4] = {
--- provider = "git_diff_removed",
--- hl = {
--- fg = "red",
--- bg = "bg",
--- style = "bold",
--- },
---}
---
----- RIGHT
---
----- fileIcon
---components.active[3][1] = {
--- provider = function()
--- local filename = vim.fn.expand("%:t")
--- local extension = vim.fn.expand("%:e")
--- local icon = require("nvim-web-devicons").get_icon(filename, extension)
--- if icon == nil then
--- icon = ""
--- end
--- return icon
--- end,
--- hl = function()
--- local val = {}
--- local filename = vim.fn.expand("%:t")
--- local extension = vim.fn.expand("%:e")
--- local icon, name = require("nvim-web-devicons").get_icon(filename, extension)
--- if icon ~= nil then
--- val.fg = vim.fn.synIDattr(vim.fn.hlID(name), "fg")
--- else
--- val.fg = "white"
--- end
--- val.bg = "bg"
--- val.style = "bold"
--- return val
--- end,
--- right_sep = " ",
---}
----- fileType
---components.active[3][2] = {
--- provider = "file_type",
--- hl = function()
--- local val = {}
--- local filename = vim.fn.expand("%:t")
--- local extension = vim.fn.expand("%:e")
--- local icon, name = require("nvim-web-devicons").get_icon(filename, extension)
--- if icon ~= nil then
--- val.fg = vim.fn.synIDattr(vim.fn.hlID(name), "fg")
--- else
--- val.fg = "white"
--- end
--- val.bg = "bg"
--- val.style = "bold"
--- return val
--- end,
--- right_sep = " ",
---}
----- fileSize
---components.active[3][3] = {
--- provider = "file_size",
--- enabled = function()
--- return vim.fn.getfsize(vim.fn.expand("%:t")) > 0
--- end,
--- hl = {
--- fg = "skyblue",
--- bg = "bg",
--- style = "bold",
--- },
--- right_sep = " ",
---}
----- fileFormat
---components.active[3][4] = {
--- provider = function()
--- return "" .. vim.bo.fileformat:upper() .. ""
--- end,
--- hl = {
--- fg = "white",
--- bg = "bg",
--- style = "bold",
--- },
--- right_sep = " ",
---}
----- fileEncode
---components.active[3][5] = {
--- provider = "file_encoding",
--- hl = {
--- fg = "white",
--- bg = "bg",
--- style = "bold",
--- },
--- right_sep = " ",
---}
---components.active[3][6] = {
--- provider = "position",
--- hl = {
--- fg = "white",
--- bg = "bg",
--- style = "bold",
--- },
--- right_sep = " ",
---}
----- linePercent
---components.active[3][7] = {
--- provider = "line_percentage",
--- hl = {
--- fg = "white",
--- bg = "bg",
--- style = "bold",
--- },
--- right_sep = " ",
---}
----- scrollBar
---components.active[3][8] = {
--- provider = "scroll_bar",
--- hl = {
--- fg = "yellow",
--- bg = "bg",
--- },
---}
---
----- INACTIVE
---
----- fileType
---components.inactive[1][1] = {
--- provider = "file_type",
--- hl = {
--- fg = "black",
--- bg = "cyan",
--- style = "bold",
--- },
--- left_sep = {
--- str = " ",
--- hl = {
--- fg = "NONE",
--- bg = "cyan",
--- },
--- },
--- right_sep = {
--- {
--- str = " ",
--- hl = {
--- fg = "NONE",
--- bg = "cyan",
--- },
--- },
--- " ",
--- },
---}
---
----- WINBAR
----- LEFT
---
----- nvimGps
---winbar_components.active[1][1] = {
--- provider = function()
--- return navic.get_location()
--- end,
--- enabled = function()
--- return navic.is_available()
--- end,
--- hl = {
--- fg = "orange",
--- style = "bold",
--- },
---}
---
----- MID
---
----- RIGHT
---
----- LspName
---winbar_components.active[3][1] = {
--- provider = "lsp_client_names",
--- hl = {
--- fg = "yellow",
--- style = "bold",
--- },
--- right_sep = " ",
---}
----- diagnosticErrors
---winbar_components.active[3][2] = {
--- provider = "diagnostic_errors",
--- enabled = function()
--- return lsp.diagnostics_exist(vim.diagnostic.severity.ERROR)
--- end,
--- hl = {
--- fg = "red",
--- style = "bold",
--- },
---}
----- diagnosticWarn
---winbar_components.active[3][3] = {
--- provider = "diagnostic_warnings",
--- enabled = function()
--- return lsp.diagnostics_exist(vim.diagnostic.severity.WARN)
--- end,
--- hl = {
--- fg = "yellow",
--- style = "bold",
--- },
---}
----- diagnosticHint
---winbar_components.active[3][4] = {
--- provider = "diagnostic_hints",
--- enabled = function()
--- return lsp.diagnostics_exist(vim.diagnostic.severity.HINT)
--- end,
--- hl = {
--- fg = "cyan",
--- style = "bold",
--- },
---}
----- diagnosticInfo
---winbar_components.active[3][5] = {
--- provider = "diagnostic_info",
--- enabled = function()
--- return lsp.diagnostics_exist(vim.diagnostic.severity.INFO)
--- end,
--- hl = {
--- fg = "skyblue",
--- style = "bold",
--- },
---}
---
----- INACTIVE
---
----- fileType
---winbar_components.inactive[1][1] = {
--- provider = "file_type",
--- hl = {
--- fg = "black",
--- bg = "cyan",
--- style = "bold",
--- },
--- left_sep = {
--- str = " ",
--- hl = {
--- fg = "NONE",
--- bg = "cyan",
--- },
--- },
--- right_sep = {
--- {
--- str = " ",
--- hl = {
--- fg = "NONE",
--- bg = "cyan",
--- },
--- },
--- " ",
--- },
---}
---
---require("feline").setup({
--- theme = colors,
--- default_bg = bg,
--- default_fg = fg,
--- vi_mode_colors = vi_mode_colors,
--- components = components,
--- force_inactive = force_inactive,
---})
---
---require("feline").winbar.setup({
--- components = winbar_components,
--- force_inactive = force_inactive,
---})
-----local M = { vi = {} }
-----
-----
-----M.vi.text = {
----- n = "NORMAL",
----- no = "NORMAL",
----- i = "INSERT",
----- v = "VISUAL",
----- V = "V-LINE",
----- [""] = "V-BLOCK",
----- c = "COMMAND",
----- cv = "COMMAND",
----- ce = "COMMAND",
----- R = "REPLACE",
----- Rv = "REPLACE",
----- s = "SELECT",
----- S = "SELECT",
----- [""] = "SELECT",
----- t = "TERMINAL",
-----}
-----
-----M.vi.colors = {
----- n = "FlnViCyan",
----- no = "FlnViCyan",
----- i = "FlnStatus",
----- v = "FlnViMagenta",
----- V = "FlnViMagenta",
----- [""] = "FlnViMagenta",
----- R = "FlnViRed",
----- Rv = "FlnViRed",
----- r = "FlnViBlue",
----- rm = "FlnViBlue",
----- s = "FlnViMagenta",
----- S = "FlnViMagenta",
----- [""] = "FelnMagenta",
----- c = "FlnViYellow",
----- ["!"] = "FlnViBlue",
----- t = "FlnViBlue",
-----}
-----
-----M.vi.sep = {
----- n = "FlnCyan",
----- no = "FlnCyan",
----- i = "FlnStatusBg",
----- v = "FlnMagenta",
----- V = "FlnMagenta",
----- [""] = "FlnMagenta",
----- R = "FlnRed",
----- Rv = "FlnRed",
----- r = "FlnBlue",
----- rm = "FlnBlue",
----- s = "FlnMagenta",
----- S = "FlnMagenta",
----- [""] = "FelnMagenta",
----- c = "FlnYellow",
----- ["!"] = "FlnBlue",
----- t = "FlnBlue",
-----}
-----
-----M.icons = {
----- locker = "", -- #f023
----- page = "☰", -- 2630
----- line_number = "", -- e0a1
----- connected = "", -- f817
----- dos = "", -- e70f
----- unix = "", -- f17c
----- mac = "", -- f179
----- mathematical_L = "𝑳",
----- vertical_bar = "┃",
----- vertical_bar_thin = "│",
----- left = "",
----- right = "",
----- block = "█",
----- left_filled = "",
----- right_filled = "",
----- slant_left = "",
----- slant_left_thin = "",
----- slant_right = "",
----- slant_right_thin = "",
----- slant_left_2 = "",
----- slant_left_2_thin = "",
----- slant_right_2 = "",
----- slant_right_2_thin = "",
----- left_rounded = "",
----- left_rounded_thin = "",
----- right_rounded = "",
----- right_rounded_thin = "",
----- circle = "●",
-----}
-----
-----return M
------- Feline statusline definition.
-------
------- Note: This statusline does not define any colors. Instead the statusline is
------- built on custom highlight groups that I define. The colors for these
------- highlight groups are pulled from the current colorscheme applied. Check the
------- file: `lua/eden/modules/ui/colors.lua` to see how they are defined.
-----
-----local u = require("eden.modules.ui.feline.util")
-----local fmt = string.format
-----
------- "┃", "█", "", "", "", "", "", "", "●"
-----
-----local get_diag = function(str)
----- local count = vim.lsp.diagnostic.get_count(0, str)
----- return (count > 0) and " " .. count .. " " or ""
-----end
-----
-----local function vi_mode_hl()
----- return u.vi.colors[vim.fn.mode()] or "FlnViBlack"
-----end
-----
-----local function vi_sep_hl()
----- return u.vi.sep[vim.fn.mode()] or "FlnBlack"
-----end
-----
-----local c = {
----- vimode = {
----- provider = function()
----- return string.format(" %s ", u.vi.text[vim.fn.mode()])
----- end,
----- hl = vi_mode_hl,
----- right_sep = { str = " ", hl = vi_sep_hl },
----- },
----- gitbranch = {
----- provider = "git_branch",
----- icon = " ",
----- hl = "FlnGitBranch",
----- right_sep = { str = " ", hl = "FlnGitBranch" },
----- enabled = function()
----- return vim.b.gitsigns_status_dict ~= nil
----- end,
----- },
----- file_type = {
----- provider = function()
----- return fmt(" %s ", vim.bo.filetype:upper())
----- end,
----- hl = "FlnAlt",
----- },
----- fileinfo = {
----- provider = { name = "file_info", opts = { type = "relative" } },
----- hl = "FlnAlt",
----- left_sep = { str = " ", hl = "FlnAltSep" },
----- right_sep = { str = "", hl = "FlnAltSep" },
----- },
----- file_enc = {
----- provider = function()
----- local os = u.icons[vim.bo.fileformat] or ""
----- return fmt(" %s %s ", os, vim.bo.fileencoding)
----- end,
----- hl = "StatusLine",
----- left_sep = { str = u.icons.left_filled, hl = "FlnAltSep" },
----- },
----- cur_position = {
----- provider = function()
----- -- TODO: What about 4+ diget line numbers?
----- return fmt(" %3d:%-2d ", unpack(vim.api.nvim_win_get_cursor(0)))
----- end,
----- hl = vi_mode_hl,
----- left_sep = { str = u.icons.left_filled, hl = vi_sep_hl },
----- },
----- cur_percent = {
----- provider = function()
----- return " " .. require("feline.providers.cursor").line_percentage() .. " "
----- end,
----- hl = vi_mode_hl,
----- left_sep = { str = u.icons.left, hl = vi_mode_hl },
----- },
----- default = { -- needed to pass the parent StatusLine hl group to right hand side
----- provider = "",
----- hl = "StatusLine",
----- },
----- lsp_status = {
----- provider = function()
----- return require("lsp-status").status()
----- end,
----- hl = "FlnStatus",
----- left_sep = { str = "", hl = "FlnStatusBg", always_visible = true },
----- right_sep = { str = "", hl = "FlnErrorStatus", always_visible = true },
----- },
----- lsp_error = {
----- provider = function()
----- return get_diag("Error")
----- end,
----- hl = "FlnError",
----- right_sep = { str = "", hl = "FlnWarnError", always_visible = true },
----- },
----- lsp_warn = {
----- provider = function()
----- return get_diag("Warning")
----- end,
----- hl = "FlnWarn",
----- right_sep = { str = "", hl = "FlnInfoWarn", always_visible = true },
----- },
----- lsp_info = {
----- provider = function()
----- return get_diag("Information")
----- end,
----- hl = "FlnInfo",
----- right_sep = { str = "", hl = "FlnHintInfo", always_visible = true },
----- },
----- lsp_hint = {
----- provider = function()
----- return get_diag("Hint")
----- end,
----- hl = "FlnHint",
----- right_sep = { str = "", hl = "FlnBgHint", always_visible = true },
----- },
-----
----- in_fileinfo = {
----- provider = "file_info",
----- hl = "StatusLine",
----- },
----- in_position = {
----- provider = "position",
----- hl = "StatusLine",
----- },
-----}
-----
-----local active = {
----- { -- left
----- c.vimode,
----- c.gitbranch,
----- c.fileinfo,
----- c.default, -- must be last
----- },
----- { -- right
----- c.lsp_status,
----- c.lsp_error,
----- c.lsp_warn,
----- c.lsp_info,
----- c.lsp_hint,
----- c.file_type,
----- c.file_enc,
----- c.cur_position,
----- c.cur_percent,
----- },
-----}
-----
-----local inactive = {
----- { c.in_fileinfo }, -- left
----- { c.in_position }, -- right
-----}
-----
------- -- Define autocmd that generates the highlight groups from the new colorscheme
------- -- Then reset the highlights for feline
------- edn.aug.FelineColorschemeReload = {
------- {
------- { "SessionLoadPost", "ColorScheme" },
------- function()
------- require("eden.modules.ui.feline.colors").gen_highlights()
------- -- This does not look like it is required. If this is called I see the ^^^^^^ that
------- -- seperates the two sides of the bar. Since the entire config uses highlight groups
------- -- all that is required is to redefine them.
------- -- require("feline").reset_highlights()
------- end,
------- },
------- }
-----
-----require("feline").setup({
----- components = { active = active, inactive = inactive },
----- highlight_reset_triggers = {},
----- force_inactive = {
----- filetypes = {
----- "NvimTree",
----- "packer",
----- "dap-repl",
----- "dapui_scopes",
----- "dapui_stacks",
----- "dapui_watches",
----- "dapui_repl",
----- "LspTrouble",
----- "qf",
----- "help",
----- },
----- buftypes = { "terminal" },
----- bufnames = {},
----- },
----- disable = {
----- filetypes = {
----- "dashboard",
----- "startify",
----- },
----- },
-----})
diff --git a/lua/plugins/floaterm.lua b/lua/plugins/floaterm.lua
deleted file mode 100644
index ea554af..0000000
--- a/lua/plugins/floaterm.lua
+++ /dev/null
@@ -1,6 +0,0 @@
-vim.cmd([[
- let g:floaterm_keymap_new = '<leader>t'
- let g:floaterm_keymap_prev = '<leader>tn'
- let g:floaterm_keymap_next = '<leader>tp'
- let g:floaterm_keymap_toggle = '<leader>tt'
-]])
diff --git a/lua/plugins/fzf.lua b/lua/plugins/fzf.lua
deleted file mode 100644
index 4195cd6..0000000
--- a/lua/plugins/fzf.lua
+++ /dev/null
@@ -1,66 +0,0 @@
-vim.cmd([[
- " FZF fuzzy finder
- "---------------------------------------
- " Enable per-command history.
- " CTRL-N and CTRL-P will be automatically bound to next-history and
- " previous-history instead of down and up. If you don't like the change,
- " explicitly bind the keys to down and up in your $FZF_DEFAULT_OPTS.
- let g:fzf_history_dir = '~/.local/share/fzf-history'
- map <leader>fz :FZF<CR>
- map <leader>a :Files<CR>
- map <leader>l :Lines<CR>
- map <leader>L :BLines<CR>
- map <leader>B :Buffers<CR>
- map <leader>h :History:<CR>
- nnoremap <leader>g :Rg<CR>
- "nnoremap <leader>t :Tags<CR>
- nnoremap <leader>m :Marks<CR>
- " This is the default extra key bindings
- let g:fzf_action = {
- \ 'ctrl-t': 'tab split',
- \ 'ctrl-x': 'split',
- \ 'ctrl-y': 'vsplit' }
- let g:fzf_tags_command = 'ctags -R'
- " Border color
- let g:fzf_layout = {'up':'~90%', 'window': { 'width': 0.8, 'height': 0.8,'yoffset':0.5,'xoffset': 0.5, 'highlight': 'Todo', 'border': 'sharp' } }
- let $FZF_DEFAULT_OPTS = '--layout=reverse --info=inline'
- let $FZF_DEFAULT_COMMAND="rg --files --hidden"
- " Customize fzf colors to match your color scheme
- let g:fzf_colors =
- \ { 'fg': ['fg', 'Normal'],
- \ 'bg': ['bg', 'Normal'],
- \ 'hl': ['fg', 'Comment'],
- \ 'fg+': ['fg', 'CursorLine', 'CursorColumn', 'Normal'],
- \ 'bg+': ['bg', 'CursorLine', 'CursorColumn'],
- \ 'hl+': ['fg', 'Statement'],
- \ 'info': ['fg', 'PreProc'],
- \ 'border': ['fg', 'Ignore'],
- \ 'prompt': ['fg', 'Conditional'],
- \ 'pointer': ['fg', 'Exception'],
- \ 'marker': ['fg', 'Keyword'],
- \ 'spinner': ['fg', 'Label'],
- \ 'header': ['fg', 'Comment'] }
- " Get Files
- command! -bang -nargs=? -complete=dir Files
- \ call fzf#vim#files(<q-args>, fzf#vim#with_preview({'options': ['--layout=reverse', '--info=inline']}), <bang>0)
- " Get text in files with Rg
- command! -bang -nargs=* Rg
- \ call fzf#vim#grep(
- \ 'rg --column --line-number --no-heading --color=always --smart-case '.shellescape(<q-args>), 1,
- \ fzf#vim#with_preview(), <bang>0)
- " Ripgrep advanced
- function! RipgrepFzf(query, fullscreen)
- let command_fmt = 'rg --column --line-number --no-heading --color=always --smart-case %s || true'
- let initial_command = printf(command_fmt, shellescape(a:query))
- let reload_command = printf(command_fmt, '{q}')
- let spec = {'options': ['--phony', '--query', a:query, '--bind', 'change:reload:'.reload_command]}
- call fzf#vim#grep(initial_command, 1, fzf#vim#with_preview(spec), a:fullscreen)
- endfunction
- command! -nargs=* -bang RG call RipgrepFzf(<q-args>, <bang>0)
- " Git grep
- command! -bang -nargs=* GGrep
- \ call fzf#vim#grep(
- \ 'git grep --line-number '.shellescape(<q-args>), 0,
- \ fzf#vim#with_preview({'dir': systemlist('git rev-parse --show-toplevel')[0]}), <bang>0)
- command! -bang FM call fzf#run(fzf#wrap({'source': 'cat ~/.fzf-marks | sed "s/.*: \(.*\)$/\1/" | sed "s#~#${HOME}#"', 'sink': 'lcd'}, <bang>0))
-]])
diff --git a/lua/plugins/git.lua b/lua/plugins/git.lua
deleted file mode 100644
index 963f7f9..0000000
--- a/lua/plugins/git.lua
+++ /dev/null
@@ -1,11 +0,0 @@
-local status, git = pcall(require, "git")
-if (not status) then return end
-
-git.setup({
- keymaps = {
- -- Open blame window
- blame = "<Leader>gb",
- -- Open file/folder in git repository
- browse = "<Leader>go",
- }
-})
diff --git a/lua/plugins/gitsigns.lua b/lua/plugins/gitsigns.lua
deleted file mode 100644
index 53d1a1e..0000000
--- a/lua/plugins/gitsigns.lua
+++ /dev/null
@@ -1 +0,0 @@
-require('gitsigns').setup {}
diff --git a/lua/plugins/heirline.backup.lua b/lua/plugins/heirline.backup.lua
deleted file mode 100644
index d65de92..0000000
--- a/lua/plugins/heirline.backup.lua
+++ /dev/null
@@ -1,733 +0,0 @@
-local conditions = require("heirline.conditions")
-local utils = require("heirline.utils")
-
-require("nvim-gps").setup({
- icons = {
- ["class-name"] = " ",
- ["function-name"] = " ",
- ["method-name"] = " ",
- ["container-name"] = "炙",
- ["tag-name"] = "炙",
- },
-})
-
-vim.o.laststatus = 3
-
-local colors = {
- bg = "#333842",
- brown = "#504945",
- white = "#f8f8f0",
- grey = "#8F908A",
- black = "#000000",
- pink = "#f92672",
- green = "#a6e22e",
- blue = "#66d9ef",
- yellow = "#e6db74",
- orange = "#fd971f",
- purple = "#ae81ff",
- red = "#e95678",
- diag = {
- warn = utils.get_highlight("DiagnosticSignWarn").fg,
- error = utils.get_highlight("DiagnosticSignError").fg,
- hint = utils.get_highlight("DiagnosticSignHint").fg,
- info = utils.get_highlight("DiagnosticSignInfo").fg,
- },
- git = {
- del = "#e95678",
- add = "#a6e22e",
- change = "#ae81ff",
- },
-}
-
-local ViMode = {
- -- get vim current mode, this information will be required by the provider
- -- and the highlight functions, so we compute it only once per component
- -- evaluation and store it as a component attribute
- init = function(self)
- self.mode = vim.fn.mode(1) -- :h mode()
- end,
- -- Now we define some dictionaries to map the output of mode() to the
- -- corresponding string and color. We can put these into `static` to compute
- -- them at initialisation time.
- static = {
- mode_names = {
- -- change the strings if you like it vvvvverbose!
- ["n"] = "NORMAL ",
- ["no"] = "N·OPERATOR PENDING ",
- ["v"] = "VISUAL ",
- ["V"] = "V·LINE ",
- [""] = "V·BLOCK ",
- ["s"] = "SELECT ",
- ["S"] = "S·LINE ",
- [""] = "S·BLOCK ",
- ["i"] = "INSERT ",
- ["R"] = "REPLACE ",
- ["Rv"] = "V·REPLACE ",
- ["c"] = "COMMAND ",
- ["cv"] = "VIM EX ",
- ["ce"] = "EX ",
- ["r"] = "PROMPT ",
- ["rm"] = "MORE ",
- ["r?"] = "CONFIRM ",
- ["!"] = "SHELL ",
- ["t"] = "TERMINAL ",
- },
- mode_colors = {
- n = colors.green,
- i = colors.pink,
- v = colors.blue,
- V = colors.blue,
- [""] = colors.blue,
- c = colors.red,
- s = colors.purple,
- S = colors.purple,
- [""] = colors.purple,
- R = colors.orange,
- r = colors.orange,
- ["!"] = colors.red,
- t = colors.red,
- },
- },
- -- We can now access the value of mode() that, by now, would have been
- -- computed by `init()` and use it to index our strings dictionary.
- -- note how `static` fields become just regular attributes once the
- -- component is instantiated.
- -- To be extra meticulous, we can also add some vim statusline syntax to
- -- control the padding and make sure our string is always at least 2
- -- characters long. Plus a nice Icon.
- provider = function(self)
- return " %2(" .. self.mode_names[self.mode] .. "%)"
- end,
- -- Same goes for the highlight. Now the foreground will change according to the current mode.
- hl = function(self)
- local mode = self.mode:sub(1, 1) -- get only the first mode character
- return { bg = self.mode_colors[mode], fg = colors.bg, bold = true }
- end,
-}
-
-local FileNameBlock = {
- -- let's first set up some attributes needed by this component and it's children
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(0)
- end,
-}
--- We can now define some children separately and add them later
-
-local FileIcon = {
- init = function(self)
- local filename = self.filename
- local extension = vim.fn.fnamemodify(filename, ":e")
- self.icon, self.icon_color =
- require("nvim-web-devicons").get_icon_color(filename, extension, { default = true })
- end,
- provider = function(self)
- return self.icon and (self.icon .. " ")
- end,
- hl = function(self)
- return { fg = self.icon_color, bg = colors.bg }
- end,
-}
-
-local FileName = {
- provider = function(self)
- -- first, trim the pattern relative to the current directory. For other
- -- options, see :h filename-modifers
- local filename = vim.fn.fnamemodify(self.filename, ":.")
- if filename == "" then
- return "[No Name]"
- end
- -- now, if the filename would occupy more than 1/4th of the available
- -- space, we trim the file path to its initials
- -- See Flexible Components section below for dynamic truncation
- if not conditions.width_percent_below(#filename, 0.25) then
- filename = vim.fn.pathshorten(filename)
- end
- return filename
- end,
- hl = { fg = utils.get_highlight("Directory").fg, bg = colors.bg },
-}
-
-local FileFlags = {
- {
- provider = function()
- if vim.bo.modified then
- return " [+]"
- end
- end,
- hl = { fg = colors.green, bg = colors.bg },
- },
- {
- provider = function()
- if not vim.bo.modifiable or vim.bo.readonly then
- return ""
- end
- end,
- hl = { fg = colors.orange },
- },
-}
-
--- Now, let's say that we want the filename color to change if the buffer is
--- modified. Of course, we could do that directly using the FileName.hl field,
--- but we'll see how easy it is to alter existing components using a "modifier"
--- component
-
-local FileNameModifer = {
- hl = function()
- if vim.bo.modified then
- -- use `force` because we need to override the child's hl foreground
- return { fg = colors.cyan, bold = true, force = true, bg = colors.bg }
- end
- end,
-}
-
--- let's add the children to our FileNameBlock component
-FileNameBlock = utils.insert(
- FileNameBlock,
- FileIcon,
- utils.insert(FileNameModifer, FileName), -- a new table where FileName is a child of FileNameModifier
- unpack(FileFlags), -- A small optimisation, since their parent does nothing
- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
-)
-
-local Diagnostics = {
- condition = conditions.has_diagnostics,
- static = {
- error_icon = vim.fn.sign_getdefined("DiagnosticSignError")[1].text,
- warn_icon = vim.fn.sign_getdefined("DiagnosticSignWarn")[1].text,
- info_icon = vim.fn.sign_getdefined("DiagnosticSignInfo")[1].text,
- hint_icon = vim.fn.sign_getdefined("DiagnosticSignHint")[1].text,
- },
- init = function(self)
- self.errors = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.ERROR })
- self.warnings = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.WARN })
- self.hints = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.HINT })
- self.info = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.INFO })
- end,
- {
- provider = function(self)
- -- 0 is just another output, we can decide to print it or not!
- return self.errors > 0 and (self.error_icon .. self.errors .. " ")
- end,
- hl = { fg = colors.diag.error, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.warnings > 0 and (self.warn_icon .. self.warnings .. " ")
- end,
- hl = { fg = colors.diag.warn, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.info > 0 and (self.info_icon .. self.info .. " ")
- end,
- hl = { fg = colors.diag.info, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.hints > 0 and (self.hint_icon .. self.hints)
- end,
- hl = { fg = colors.diag.hint, bg = colors.bg },
- },
-}
-
-local Git = {
- condition = conditions.is_git_repo,
- init = function(self)
- self.status_dict = vim.b.gitsigns_status_dict
- self.has_changes = self.status_dict.added ~= 0 or self.status_dict.removed ~= 0 or self.status_dict.changed ~= 0
- end,
- hl = { fg = colors.orange, bg = colors.bg },
- {
- -- git branch name
- provider = function(self)
- return " " .. self.status_dict.head
- end,
- hl = { bold = true, bg = colors.bg },
- },
- -- You could handle delimiters, icons and counts similar to Diagnostics
- {
- condition = function(self)
- return self.has_changes
- end,
- provider = " ",
- },
- {
- provider = function(self)
- local count = self.status_dict.added or 0
- return count > 0 and ("  " .. count)
- end,
- hl = { fg = colors.git.add, bg = colors.bg },
- },
- {
- provider = function(self)
- local count = self.status_dict.removed or 0
- return count > 0 and ("  " .. count)
- end,
- hl = { fg = colors.git.del, bg = colors.bg },
- },
- {
- provider = function(self)
- local count = self.status_dict.changed or 0
- return count > 0 and ("  " .. count)
- end,
- hl = { fg = colors.git.change, bg = colors.bg },
- },
-}
-
-local WorkDir = {
- provider = function()
- local icon = " "
- local cwd = vim.fn.getcwd(0)
- cwd = vim.fn.fnamemodify(cwd, ":~")
- if not conditions.width_percent_below(#cwd, 0.25) then
- cwd = vim.fn.pathshorten(cwd)
- end
- local trail = cwd:sub(-1) == "/" and "" or "/"
- return icon .. cwd .. trail
- end,
- hl = { fg = colors.blue, bold = true, bg = colors.bg },
-}
-
-local TerminalName = {
- -- we could add a condition to check that buftype == 'terminal'
- -- or we could do that later (see #conditional-statuslines below)
- provider = function()
- local tname, _ = vim.api.nvim_buf_get_name(0):gsub(".*:", "")
- return " " .. tname
- end,
- hl = { bold = true, bg = colors.bg },
-}
-
-local Ruler = {
- -- %l = current line number
- -- %L = number of lines in the buffer
- -- %c = column number
- -- %P = percentage through file of displayed window
- provider = "%7 %p%% Ln %l, Col %c",
-}
-
-local Align = { provider = "%=", hl = { bg = colors.bg } }
-local Space = { provider = " " }
-
-local FileInfoBlock = {
- -- let's first set up some attributes needed by this component and it's children
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(0)
- end,
-}
-
-local FileType = {
- provider = function()
- return vim.bo.filetype
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
-local FileEncoding = {
- provider = function()
- local enc = (vim.bo.fenc ~= "" and vim.bo.fenc) or vim.o.enc -- :h 'enc'
- return enc:upper()
- end,
-}
-
-FileInfoBlock = utils.insert(
- FileInfoBlock,
- FileEncoding,
- Space,
- FileIcon,
- FileType,
- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
-)
-
-local FileNameShort = {
- provider = function(self)
- -- first, trim the pattern relative to the current directory. For other
- -- options, see :h filename-modifers
- local filename = vim.fn.fnamemodify(self.filename, ":t")
- if filename == "" then
- return "[No Name]"
- end
- return filename
- end,
- hl = { fg = colors.gray, bg = colors.bg },
-}
-
-local FileNameShortBlock = {
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(0)
- end,
-}
-
-FileNameShortBlock = utils.insert(
- FileNameShortBlock,
- FileIcon,
- FileNameShort,
- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
-)
-
-local Gps = {
- condition = require("nvim-gps").is_available,
- provider = function()
- local loc = require("nvim-gps").get_location()
- if loc == "" then
- return ""
- end
- return "> " .. loc
- end,
- hl = { fg = colors.gray, bg = colors.bg },
-}
-
-local DefaultStatusline = {
- ViMode,
- Space,
- FileNameBlock,
- Space,
- Diagnostics,
- Align,
- Ruler,
- Space,
- FileInfoBlock,
- Space,
- Git,
-}
-
-local SpecialStatusline = {
- condition = function()
- return conditions.buffer_matches({
- buftype = { "nofile", "prompt", "help", "quickfix" },
- filetype = { "^git.*", "fugitive" },
- })
- end,
- FileType,
- Space,
- Align,
-}
-
-local TerminalStatusline = {
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } })
- end,
- TerminalName,
- Align,
-}
-
-local StatusLines = {
- fallthrough = false,
- SpecialStatusline,
- TerminalStatusline,
- DefaultStatusline,
-}
-
-local GSpace = { provider = " ", hl = { bg = colors.bg } }
-
-local WinBars = {
- fallthrough = false,
- {
- -- Hide the winbar for special buffers
- condition = function()
- return conditions.buffer_matches({
- buftype = { "nofile", "prompt", "help", "quickfix", "nofile", "promt" },
- filetype = { "^git.*", "fugitive" },
- })
- end,
- provider = "",
- },
- {
- -- An inactive winbar for regular files
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } }) and not conditions.is_active()
- end,
- utils.surround(
- { "", "" },
- colors.bright_bg,
- { hl = { fg = "gray", force = true }, GSpace, TerminalName, Align }
- ),
- },
- {
- -- A special winbar for terminals
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } })
- end,
- utils.surround({ "", "" }, colors.dark_red, {
- GSpace,
- TerminalName,
- Align,
- }),
- },
- {
- -- An inactive winbar for regular files
- condition = function()
- return not conditions.is_active()
- end,
- utils.surround(
- { "", "" },
- colors.bright_bg,
- { hl = { fg = "gray", force = true }, GSpace, FileNameShortBlock, Align }
- ),
- },
- -- A winbar for regular files
- { GSpace, FileNameShortBlock, GSpace, Gps, Align },
-}
-
-vim.api.nvim_create_autocmd("User", {
- pattern = "HeirlineInitWinbar",
- callback = function(args)
- local buf = args.buf
- local buftype = vim.tbl_contains({ "prompt", "nofile", "help", "quickfix" }, vim.bo[buf].buftype)
- local filetype = vim.tbl_contains({ "gitcommit", "fugitive" }, vim.bo[buf].filetype)
- if buftype or filetype then
- vim.opt_local.winbar = nil
- end
- end,
-})
-
--- we redefine the filename component, as we probably only want the tail and not the relative path
-local TablineFileName = {
- provider = function(self)
- -- self.filename will be defined later, just keep looking at the example!
- local filename = self.filename
- filename = filename == "" and "[No Name]" or vim.fn.fnamemodify(filename, ":t")
- return filename
- end,
- hl = function(self)
- return { bold = self.is_active or self.is_visible, italic = true }
- end,
-}
-
-local TablineFileFlags = {
- {
- provider = function(self)
- if vim.bo[self.bufnr].modified then
- return " [+]"
- end
- end,
- hl = { fg = colors.green },
- },
- {
- provider = function(self)
- if not vim.bo[self.bufnr].modifiable or vim.bo[self.bufnr].readonly then
- return ""
- end
- end,
- hl = { fg = "orange" },
- },
-}
-
-local TablineDiagnostics = {
- static = {
- error_icon = " " .. vim.fn.sign_getdefined("DiagnosticSignError")[1].text,
- warn_icon = " " .. vim.fn.sign_getdefined("DiagnosticSignWarn")[1].text,
- info_icon = " " .. vim.fn.sign_getdefined("DiagnosticSignInfo")[1].text,
- hint_icon = " " .. vim.fn.sign_getdefined("DiagnosticSignHint")[1].text,
- },
- init = function(self)
- self.errors = #vim.diagnostic.get(self.bufnr, { severity = vim.diagnostic.severity.ERROR })
- self.warnings = #vim.diagnostic.get(self.bufnr, { severity = vim.diagnostic.severity.WARN })
- self.hints = #vim.diagnostic.get(self.bufnr, { severity = vim.diagnostic.severity.HINT })
- self.info = #vim.diagnostic.get(self.bufnr, { severity = vim.diagnostic.severity.INFO })
- end,
- {
- provider = function(self)
- return self.errors > 0 and (self.error_icon .. self.errors .. " ")
- end,
- hl = { fg = colors.diag.error },
- },
- {
- provider = function(self)
- return self.warnings > 0 and (self.warn_icon .. self.warnings .. " ")
- end,
- hl = { fg = colors.diag.warn },
- },
- {
- provider = function(self)
- return self.info > 0 and (self.info_icon .. self.info .. " ")
- end,
- hl = { fg = colors.diag.info },
- },
- {
- provider = function(self)
- return self.hints > 0 and (self.hint_icon .. self.hints)
- end,
- hl = { fg = colors.diag.hint },
- },
-}
-
-local TablineFileIcon = {
- init = function(self)
- local filename = self.filename
- local extension = vim.fn.fnamemodify(filename, ":e")
- self.icon, self.icon_color =
- require("nvim-web-devicons").get_icon_color(filename, extension, { default = true })
- end,
- provider = function(self)
- return self.icon and (" " .. self.icon .. " ")
- end,
- hl = function(self)
- return { fg = self.icon_color }
- end,
-}
-
--- Here the filename block finally comes together
-local TablineFileNameBlock = {
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(self.bufnr)
- end,
- hl = function(self)
- if self.is_active then
- return "TabLineSel"
- else
- return "TabLine"
- end
- end,
- on_click = {
- callback = function(_, minwid, _, button)
- if button == "m" then -- close on mouse middle click
- vim.api.nvim_buf_delete(minwid, { force = true })
- else
- vim.api.nvim_win_set_buf(0, minwid)
- end
- end,
- minwid = function(self)
- return self.bufnr
- end,
- name = "heirline_tabline_buffer_callback",
- },
- TablineFileIcon,
- TablineFileName,
- TablineFileFlags,
- TablineDiagnostics,
-}
-
--- a nice "x" button to close the buffer
-local TablineCloseButton = {
- condition = function(self)
- return not vim.bo[self.bufnr].modified
- end,
- { provider = " " },
- {
- provider = "",
- hl = { fg = "gray" },
- on_click = {
- callback = function(_, minwid)
- vim.api.nvim_buf_delete(minwid, { force = false })
- end,
- minwid = function(self)
- return self.bufnr
- end,
- name = "heirline_tabline_close_buffer_callback",
- },
- },
-}
-
--- The final touch!
-local TablineBufferBlock = utils.surround({ "", "" }, function(self)
- if self.is_active then
- return utils.get_highlight("TabLineSel").bg
- else
- return utils.get_highlight("TabLine").bg
- end
-end, { TablineFileNameBlock, TablineCloseButton })
-
--- and here we go
-local BufferLine = utils.make_buflist(
- TablineBufferBlock,
- { provider = "", hl = { fg = "gray" } }, -- left truncation, optional (defaults to "<")
- { provider = "", hl = { fg = "gray" } } -- right trunctation, also optional (defaults to ...... yep, ">")
- -- by the way, open a lot of buffers and try clicking them ;)
-)
-
-local TabLineOffset = {
- condition = function(self)
- local win = vim.api.nvim_tabpage_list_wins(0)[1]
- local bufnr = vim.api.nvim_win_get_buf(win)
- self.winid = win
-
- if vim.bo[bufnr].filetype == "NvimTree" then
- self.title = "NvimTree"
- return true
- -- elseif vim.bo[bufnr].filetype == "TagBar" then
- -- ...
- end
- end,
- provider = function(self)
- local title = self.title
- local width = vim.api.nvim_win_get_width(self.winid)
- local pad = math.ceil((width - #title) / 2)
- return string.rep(" ", pad) .. title .. string.rep(" ", pad)
- end,
- hl = function(self)
- if vim.api.nvim_get_current_win() == self.winid then
- return "TablineSel"
- else
- return "Tabline"
- end
- end,
-}
-
-local Tabpage = {
- provider = function(self)
- return "%" .. self.tabnr .. "T " .. self.tabnr .. " %T"
- end,
- hl = function(self)
- if not self.is_active then
- return "TabLine"
- else
- return "TabLineSel"
- end
- end,
-}
-
-local TabpageClose = {
- provider = "%999X  %X",
- hl = "TabLine",
-}
-
-local TabPages = {
- -- only show this component if there's 2 or more tabpages
- condition = function()
- return #vim.api.nvim_list_tabpages() >= 2
- end,
- { provider = "%=" },
- utils.make_tablist(Tabpage),
- TabpageClose,
-}
-
-local TabLine = { TabLineOffset, BufferLine, TabPages }
-
-require("heirline").setup(StatusLines, WinBars, TabLine)
-
-vim.cmd([[au FileType * if index(['wipe', 'delete', 'unload'], &bufhidden) >= 0 | set nobuflisted | endif]])
-
-vim.api.nvim_create_augroup("Heirline", { clear = true })
-vim.api.nvim_create_autocmd("ColorScheme", {
- callback = function()
- local colors = setup_colors()
- utils.on_colorscheme(colors)
- end,
- group = "Heirline",
-})
-
-local function get_bufs()
- return vim.tbl_filter(function(bufnr)
- return vim.api.nvim_buf_is_loaded(bufnr) and vim.bo[bufnr].buflisted
- end, vim.api.nvim_list_bufs())
-end
-
-local function goto_buf(index)
- local bufs = get_bufs()
- if index > #bufs then
- index = #bufs
- end
- vim.api.nvim_win_set_buf(0, bufs[index])
-end
-
-local function addKey(key, index)
- vim.keymap.set("", "<A-" .. key .. ">", function()
- goto_buf(index)
- end, { noremap = true, silent = true })
-end
-
-for i = 1, 9 do
- addKey(i, i)
-end
-addKey("0", 10)
diff --git a/lua/plugins/heirline.backup2.lua b/lua/plugins/heirline.backup2.lua
deleted file mode 100644
index 9f5c4ca..0000000
--- a/lua/plugins/heirline.backup2.lua
+++ /dev/null
@@ -1,1921 +0,0 @@
-local conditions = require("heirline.conditions")
-local utils = require("heirline.utils")
-
--- Colors
---local colors = {
--- bright_bg = utils.get_highlight("Folded").bg,
--- bright_fg = utils.get_highlight("Folded").fg,
--- red = utils.get_highlight("DiagnosticError").fg,
--- dark_red = utils.get_highlight("DiffDelete").bg,
--- green = utils.get_highlight("String").fg,
--- blue = utils.get_highlight("Function").fg,
--- gray = utils.get_highlight("NonText").fg,
--- orange = utils.get_highlight("Constant").fg,
--- purple = utils.get_highlight("Statement").fg,
--- cyan = utils.get_highlight("Special").fg,
--- diag_warn = utils.get_highlight("DiagnosticWarn").fg,
--- diag_error = utils.get_highlight("DiagnosticError").fg,
--- diag_hint = utils.get_highlight("DiagnosticHint").fg,
--- diag_info = utils.get_highlight("DiagnosticInfo").fg,
--- git_del = utils.get_highlight("diffDeleted").fg,
--- git_add = utils.get_highlight("diffAdded").fg,
--- git_change = utils.get_highlight("diffChanged").fg,
---}
-
---local colors = {
--- gray = '#23232e',
--- lightgray = '#5f6a8e',
--- orange = '#ffb86c',
--- purple = '#bd93f9',
--- red = '#ff5555',
--- yellow = '#f1fa8c',
--- green = '#50fa7b',
--- white = '#f8f8f2',
--- black = '#282a36',
---}
-local colors = {
- bg = "#333842",
- nobg = nil,
- bright_fg = "#ffffff",
- bright_bg = "#000000",
- brown = "#504945",
- white = "#f8f8f0",
- grey = "#8F908A",
- pink = "#f92672",
- --green = "#a6e22e",
- green = "#AAD94C",
- --blue = "#66d9ef",
- blue = "#39BAE6",
- yellow = "#e6db74",
- --orange = "#fd971f",
- orange = "#FA8D3F",
- purple = "#ae81ff",
- --red = "#e95678",
- red = "#F07171",
- cyan = "#66d9eC",
- mode_fg = "#242424",
- diag = {
- warn = utils.get_highlight("DiagnosticSignWarn").fg,
- error = utils.get_highlight("DiagnosticSignError").fg,
- hint = utils.get_highlight("DiagnosticSignHint").fg,
- info = utils.get_highlight("DiagnosticSignInfo").fg,
- },
- git = {
- del = "#e95678",
- add = "#a6e22e",
- change = "#ae81ff",
- },
-}
-
-require("heirline").load_colors(colors)
-
---local mode_lable = {
--- n = 'NORMAL',
--- no = 'OPPEND',
--- nov = 'N?',
--- noV = 'N?',
--- ['no\22'] = 'N?',
--- niI = 'Ni',
--- niR = 'Nr',
--- niV = 'Nv',
--- nt = 'N-TERM',
--- v = 'VISUAL',
--- vs = 'Vs',
--- V = 'V-LINE',
--- Vs = 'Vs',
--- ['\22'] = 'V-BLCK',
--- ['\22s'] = '^V',
--- s = 'SELECT',
--- S = 'S-LINE',
--- ['\19'] = 'S-BLCK',
--- i = 'INSERT',
--- ic = 'ICOMPL',
--- ix = 'Ix',
--- R = 'REPLACE',
--- Rc = 'Rc',
--- Rx = 'Rx',
--- Rv = 'VRPLCE',
--- Rvc = 'Rv',
--- Rvx = 'Rv',
--- c = 'CMMAND',
--- cv = 'PROMPT',
--- r = '...',
--- rm = 'MORE',
--- ['r?'] = 'CNFIRM',
--- ['!'] = 'SHELL',
--- t = 'TERM',
---}
---
---local mode_colors_table = {
--- n = 'red',
--- no = 'blue',
--- nov = 'blue',
--- noV = 'blue',
--- niI = 'red',
--- niR = 'red',
--- niV = 'red',
--- nt = 'red',
--- v = 'cyan',
--- vs = 'cyan',
--- V = 'cyan',
--- Vs = 'cyan',
--- ['\22'] = 'cyan',
--- ['\22s'] = 'cyan',
--- s = 'purple',
--- S = 'purple',
--- ['\19'] = 'purple',
--- i = 'blue',
--- ic = 'blue',
--- ix = 'blue',
--- R = 'orange',
--- Rc = 'orange',
--- Rx = 'orange',
--- Rv = 'orange',
--- Rvc = 'orange',
--- Rvx = 'orange',
--- c = 'green',
--- cv = 'green',
--- r = 'green',
--- rm = 'green',
--- ['r?'] = 'green',
--- ['!'] = 'red',
--- t = 'red',
---}
---
---local mode_colors = setmetatable({
--- n = { fg = 'red' }
---}, {
--- __index = function(_, mode)
--- return {
--- fg = 'mode_fg',
--- bg = mode_colors_table[mode],
--- }
--- end
---})
---
---
---local VimModeNormal = {
--- condition = function(self)
--- return self.mode == 'n'
--- end,
--- provider = ' ●',
---}
---
---local VimModeOthers = {
--- condition = function(self)
--- return self.mode ~= 'n'
--- end,
---
--- utils.surround({ '', '' },
--- function(self)
--- return mode_colors[self.mode].bg
--- end,
--- {
--- {
--- provider = function(self)
--- return '● ' .. mode_lable[self.mode]
--- end,
--- },
--- hl = function(self)
--- return mode_colors[self.mode]
--- end
--- }
--- ),
---}
---
---local ViMode = {
--- init = function(self)
--- self.mode = vim.fn.mode(1)
--- end,
---
--- VimModeNormal, VimModeOthers,
---
--- update = { 'ModeChanged' }
---}
---local colors = require'kanagawa.colors'.setup() -- wink
-
---utils.surround({ "", "" }, function(self) return self:mode_color() end, {Ruler, hl = {fg = 'black'}} ),
--- we are surrounding the component and adjusting the foreground in one go!
-
--- ViMode truemode
---local ViMode = {
--- -- get vim current mode, this information will be required by the provider
--- -- and the highlight functions, so we compute it only once per component
--- -- evaluation and store it as a component attribute
--- init = function(self)
--- self.mode = vim.fn.mode(1) -- :h mode()
---
--- -- execute this only once, this is required if you want the ViMode
--- -- component to be updated on operator pending mode
--- if not self.once then
--- vim.api.nvim_create_autocmd("ModeChanged", {
--- pattern = "*:*o",
--- command = "redrawstatus",
--- })
--- self.once = true
--- end
--- end,
--- -- Now we define some dictionaries to map the output of mode() to the
--- -- corresponding string and color. We can put these into `static` to compute
--- -- them at initialisation time.
--- static = {
--- mode_names = { -- change the strings if you like it vvvvverbose!
--- ["n"] = "NORMAL ",
--- ["no"] = "N·OPERATOR PENDING ",
--- ["v"] = "VISUAL ",
--- ["V"] = "V·LINE ",
--- [""] = "V·BLOCK ",
--- ["s"] = "SELECT ",
--- ["S"] = "S·LINE ",
--- [""] = "S·BLOCK ",
--- ["i"] = "INSERT ",
--- ["R"] = "REPLACE ",
--- ["Rv"] = "V·REPLACE ",
--- ["c"] = "COMMAND ",
--- ["cv"] = "VIM EX ",
--- ["ce"] = "EX ",
--- ["r"] = "PROMPT ",
--- ["rm"] = "MORE ",
--- ["r?"] = "CONFIRM ",
--- ["!"] = "SHELL ",
--- ["t"] = "TERMINAL ",
--- },
--- mode_colors = {
--- n = colors.blue,
--- i = colors.green,
--- v = colors.purple,
--- V = colors.purple,
--- [""] = colors.purple,
--- c = colors.red,
--- s = colors.purple,
--- S = colors.purple,
--- [""] = colors.purple,
--- R = colors.orange,
--- r = colors.orange,
--- ["!"] = colors.red,
--- t = colors.red,
--- --n = "blue" ,
--- --i = "green",
--- --v = "cyan",
--- --V = "cyan",
--- --["\22"] = "cyan",
--- --c = "orange",
--- --s = "purple",
--- --S = "purple",
--- --["\19"] = "purple",
--- --R = "orange",
--- --r = "orange",
--- --["!"] = "red",
--- --t = "red",
--- },
--- },
--- -- We can now access the value of mode() that, by now, would have been
--- -- computed by `init()` and use it to index our strings dictionary.
--- -- note how `static` fields become just regular attributes once the
--- -- component is instantiated.
--- -- To be extra meticulous, we can also add some vim statusline syntax to
--- -- control the padding and make sure our string is always at least 2
--- -- characters long. Plus a nice Icon.
--- provider = function(self)
--- return " %2(" .. self.mode_names[self.mode] .. "%)"
--- --return " %2("..self.mode_names[self.mode].."%)"
--- --
--- --
--- --
--- end,
--- -- Same goes for the highlight. Now the foreground will change according to the current mode.
--- hl = function(self)
--- local mode = self.mode:sub(1, 1) -- get only the first mode character
--- --return { fg = self.mode_colors[mode], bold = true, }
--- return { bg = self.mode_colors[mode], fg = colors.bg, bold = true }
--- end,
--- -- Re-evaluate the component only on ModeChanged event!
--- -- This is not required in any way, but it's there, and it's a small
--- -- performance improvement.
--- update = {
--- "ModeChanged",
--- }, --optional
---}
-local ViMode = {
- static = {
- mode_names = { -- change the strings if you like it vvvvverbose!
- ["n"] = "NORMAL ",
- ["no"] = "N·OPERATOR PENDING ",
- ["v"] = "VISUAL ",
- ["V"] = "V·LINE ",
- [""] = "V·BLOCK ",
- ["s"] = "SELECT ",
- ["S"] = "S·LINE ",
- [""] = "S·BLOCK ",
- ["i"] = "INSERT ",
- ["R"] = "REPLACE ",
- ["Rv"] = "V·REPLACE ",
- ["c"] = "COMMAND ",
- ["cv"] = "VIM EX ",
- ["ce"] = "EX ",
- ["r"] = "PROMPT ",
- ["rm"] = "MORE ",
- ["r?"] = "CONFIRM ",
- ["!"] = "SHELL ",
- ["t"] = "TERMINAL ",
- },
- },
- provider = function(self)
- return " %2(" .. self.mode_names[vim.fn.mode(1)] .. "%)"
- end,
- hl = function(self)
- local color = self:mode_color() -- here!
- return { bg = color, fg = colors.bg, bold = true }
- end,
-}
-
-local ViModeColor = {
- static = {
- mode_colors_map = {
- n = colors.blue,
- i = colors.green,
- v = colors.purple,
- V = colors.purple,
- [""] = colors.purple,
- c = colors.red,
- s = colors.purple,
- S = colors.purple,
- [""] = colors.purple,
- R = colors.orange,
- r = colors.orange,
- ["!"] = colors.red,
- t = colors.red,
- },
- mode_color = function(self)
- local mode = conditions.is_active() and vim.fn.mode() or "n"
- return self.mode_colors_map[mode]
- end,
- },
-}
-
--- LSP
-
---local LSPActive = {
--- condition = conditions.lsp_attached,
--- update = {'LspAttach', 'LspDetach'},
---
--- -- You can keep it simple,
--- -- provider = " [LSP]",
---
--- -- Or complicate things a bit and get the servers names
--- provider = function()
--- local names = {}
--- for i, server in pairs(vim.lsp.buf_get_clients(0)) do
--- table.insert(names, server.name)
--- end
--- return " [" .. table.concat(names, " ") .. "]"
--- end,
--- hl = { fg = "green", bold = true },
--- on_click = {
--- callback = function()
--- vim.defer_fn(function()
--- vim.cmd("LspInfo")
--- end, 100)
--- end,
--- name = "heirline_LSP",
--- },
---}
---
----- lsp status
----- I personally use it only to display progress messages!
----- See lsp-status/README.md for configuration options.
---
----- Note: check "j-hui/fidget.nvim" for a nice statusline-free alternative.
---local LSPMessages = {
--- provider = require("lsp-status").status,
--- hl = { fg = "gray" },
---}
-
--- Nvim Navic
---local Navic = {
--- condition = require("nvim-navic").is_available,
--- provider = require("nvim-navic").get_location,
---}
---local Navic = utils.make_flexible_component(3, Navic, { provider = "" })
-
--- Full nerd (with icon colors)!
-local Navic = {
- condition = require("nvim-navic").is_available,
- static = {
- -- create a type highlight map
- type_hl = {
- File = "Directory",
- Module = "Include",
- Namespace = "TSNamespace",
- Package = "Include",
- Class = "Struct",
- Method = "Method",
- Property = "TSProperty",
- Field = "TSField",
- Constructor = "TSConstructor ",
- Enum = "TSField",
- Interface = "Type",
- Function = "Function",
- Variable = "TSVariable",
- Constant = "Constant",
- String = "String",
- Number = "Number",
- Boolean = "Boolean",
- Array = "TSField",
- Object = "Type",
- Key = "TSKeyword",
- Null = "Comment",
- EnumMember = "TSField",
- Struct = "Struct",
- Event = "Keyword",
- Operator = "Operator",
- TypeParameter = "Type",
- },
- },
- init = function(self)
- local data = require("nvim-navic").get_data() or {}
- local children = {}
- -- create a child for each level
- for i, d in ipairs(data) do
- local child = {
- {
- provider = d.icon,
- hl = self.type_hl[d.type],
- },
- {
- provider = d.name,
- -- highlight icon only or location name as well
- -- hl = self.type_hl[d.type],
- },
- }
- -- add a separator only if needed
- if #data > 1 and i < #data then
- table.insert(child, {
- provider = " > ",
- hl = { fg = "bright_fg" },
- })
- end
- table.insert(children, child)
- end
- -- instantiate the new child, overwriting the previous one
- self[1] = self:new(children, 1)
- end,
- hl = { fg = "gray" },
-}
-
--- Diagnostics
-local Diagnostics = {
-
- condition = conditions.has_diagnostics,
-
- static = {
- error_icon = vim.fn.sign_getdefined("DiagnosticSignError")[1].text,
- warn_icon = vim.fn.sign_getdefined("DiagnosticSignWarn")[1].text,
- info_icon = vim.fn.sign_getdefined("DiagnosticSignInfo")[1].text,
- hint_icon = vim.fn.sign_getdefined("DiagnosticSignHint")[1].text,
- },
-
- init = function(self)
- self.errors = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.ERROR })
- self.warnings = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.WARN })
- self.hints = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.HINT })
- self.info = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.INFO })
- end,
-
- update = { "DiagnosticChanged", "BufEnter" },
-
- {
- provider = function(self)
- -- 0 is just another output, we can decide to print it or not!
- return self.errors > 0 and (self.error_icon .. self.errors .. " ")
- end,
- hl = { fg = colors.diag.error, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.warnings > 0 and (self.warn_icon .. self.warnings .. " ")
- end,
- hl = { fg = colors.diag.warn, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.info > 0 and (self.info_icon .. self.info .. " ")
- end,
- hl = { fg = colors.diag.info, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.hints > 0 and (self.hint_icon .. self.hints)
- end,
- hl = { fg = colors.diag.hint, bg = colors.bg },
- },
- --{
- -- provider = "]",
- --},
- on_click = {
- callback = function()
- require("trouble").toggle({ mode = "document_diagnostics" })
- -- or
- -- vim.diagnostic.setqflist()
- end,
- name = "heirline_diagnostics",
- },
-}
-
--- Git
--- For the ones who're not (too) afraid of changes! Uses gitsigns.
-local Git = {
- condition = conditions.is_git_repo,
-
- init = function(self)
- self.status_dict = vim.b.gitsigns_status_dict
- self.has_changes = self.status_dict.added ~= 0 or self.status_dict.removed ~= 0 or self.status_dict.changed ~= 0
- end,
- --hl = { fg = "orange" },
- hl = { fg = colors.orange, bg = colors.bg },
- { -- git branch name
- provider = function(self)
- return " " .. self.status_dict.head
- end,
- --hl = { bold = true },
- hl = { bold = true, bg = colors.bg },
- },
- -- You could handle delimiters, icons and counts similar to Diagnostics
- {
- condition = function(self)
- return self.has_changes
- end,
- --provider = "("
- provider = " ",
- },
- {
- provider = function(self)
- local count = self.status_dict.added or 0
- --return count > 0 and ("+" .. count)
- return count > 0 and ("  " .. count)
- end,
- --hl = { fg = "git_add" },
- hl = { fg = colors.git.add, bg = colors.bg },
- },
- {
- provider = function(self)
- local count = self.status_dict.removed or 0
- --return count > 0 and ("-" .. count)
- return count > 0 and ("  " .. count)
- end,
- --hl = { fg = "git_del" },
- hl = { fg = colors.git.del, bg = colors.bg },
- },
- {
- provider = function(self)
- local count = self.status_dict.changed or 0
- --return count > 0 and ("~" .. count)
- return count > 0 and ("  " .. count)
- end,
- --hl = { fg = "git_change" },
- hl = { fg = colors.git.change, bg = colors.bg },
- },
- --{
- -- condition = function(self)
- -- return self.has_changes
- -- end,
- -- provider = ")",
- --},
- on_click = {
- callback = function()
- -- If you want to use Fugitive:
- -- vim.cmd("G")
-
- -- If you prefer Lazygit
- -- use vim.defer_fn() if the callback requires
- -- opening of a floating window
- -- (this also applies to telescope)
- vim.defer_fn(function()
- vim.cmd("Lazygit")
- end, 100)
- end,
- name = "heirline_git",
- },
-}
-
--- Debugger
--- Display informations from nvim-dap!
-local DAPMessages = {
- -- display the dap messages only on the debugged file
- condition = function()
- local session = require("dap").session()
- if session then
- local filename = vim.api.nvim_buf_get_name(0)
- if session.config then
- local progname = session.config.program
- return filename == progname
- end
- end
- return false
- end,
- provider = function()
- return " " .. require("dap").status()
- end,
- hl = { fg = utils.get_highlight("Debug").fg },
- -- Debugger on_click: step-over, step-into, next, previous, stop buttons
- -- coming soon!
-}
-
--- Tests
--- This requires the great ultest.
---local UltTest = {
--- condition = function()
--- return vim .api.nvim_call_function("ultest#is_test_file", {}) ~= 0
--- end,
--- static = {
--- passed_icon = vim.fn.sign_getdefined("test_pass")[1].text,
--- failed_icon = vim.fn.sign_getdefined("test_fail")[1].text,
--- passed_hl = { fg = utils.get_highlight("UltestPass").fg },
--- failed_hl = { fg = utils.get_highlight("UltestFail").fg },
--- },
--- init = function(self)
--- self.status = vim.api.nvim_call_function("ultest#status", {})
--- end,
---
--- -- again, if you'd like icons and numbers to be colored differently,
--- -- just split the component in two
--- {
--- provider = function(self)
--- return self.passed_icon .. self.status.passed .. " "
--- end,
--- hl = function(self)
--- return self.passed_hl
--- end,
--- },
--- {
--- provider = function(self)
--- return self.failed_icon .. self.status.failed .. " "
--- end,
--- hl = function(self)
--- return self.failed_hl
--- end,
--- },
--- {
--- provider = function(self)
--- return "of " .. self.status.tests - 1
--- end,
--- },
---}
-
--- FileName and Friends
-
---local Align = { provider = "%=" }
-local Align = { provider = "%=", hl = { bg = colors.bg } }
-local Space = { provider = " ", hl = { bg = colors.bg } }
-local fill = { provider = "%=", hl = { bg = colors.nobg } }
---local LeftSep = { provider = "" hl = { fg = colors.bg } }
---local RightSep = { provider = "" hl = { fg = colors.bg }}
-
-local FileNameBlock = {
- -- let's first set up some attributes needed by this component and it's children
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(0)
- end,
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
- hl = { bg = colors.bg },
-}
--- We can now define some children separately and add them later
---
-
-local FileIcon = {
- init = function(self)
- local filename = self.filename
- local extension = vim.fn.fnamemodify(filename, ":e")
- self.icon, self.icon_color =
- require("nvim-web-devicons").get_icon_color(filename, extension, { default = true })
- end,
- provider = function(self)
- return self.icon and (self.icon .. " ")
- end,
- hl = function(self)
- --return { fg = self.icon_color }
- return { fg = self.icon_color, bg = colors.bg }
- end,
-}
-
-local FileName = {
- provider = function(self)
- -- first, trim the pattern relative to the current directory. For other
- -- options, see :h filename-modifers
- local filename = vim.fn.fnamemodify(self.filename, ":.")
- if filename == "" then
- return "[No Name]"
- end
- -- now, if the filename would occupy more than 1/4th of the available
- -- space, we trim the file path to its initials
- -- See Flexible Components section below for dynamic truncation
- if not conditions.width_percent_below(#filename, 0.25) then
- filename = vim.fn.pathshorten(filename)
- end
- return filename
- end,
- --hl = { fg = utils.get_highlight("Directory").fg, bg = colors.bg },
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
-local FileFlags = {
- {
- provider = function()
- if vim.bo.modified then
- return " [+]"
- end
- end,
- hl = { fg = colors.green, bg = colors.bg },
- },
- {
- provider = function()
- if not vim.bo.modifiable or vim.bo.readonly then
- return ""
- end
- end,
- --hl = { fg = colors.orange },
- hl = { fg = colors.orange, bold = true, bg = colors.bg },
- },
-}
--- Now, let's say that we want the filename color to change if the buffer is
--- modified. Of course, we could do that directly using the FileName.hl field,
--- but we'll see how easy it is to alter existing components using a "modifier"
--- component
-
-local FileNameModifer = {
- hl = function()
- if vim.bo.modified then
- -- use `force` because we need to override the child's hl foreground
- --return { fg = "cyan", bold = true, force = true }
- return { fg = "blue", bold = true, force = true, bg = colors.bg }
- end
- end,
-}
-
--- FileType, FileEncoding and FileFormat
-local FileType = {
- provider = function()
- -- return string.upper(vim.bo.filetype)
- --end,
- ----hl = { fg = utils.get_highlight("Type").fg, bold = true },
- --hl = { fg = utils.get_highlight("Type").fg, bold = true, bg = colors.bg },
- return vim.bo.filetype
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
---local FileEncoding = {
--- provider = function()
--- local enc = (vim.bo.fenc ~= "" and vim.bo.fenc) or vim.o.enc -- :h 'enc'
--- return enc ~= "utf-8" and enc:upper()
--- end,
---}
-local FileEncoding = {
- Space,
- provider = function()
- local enc = (vim.bo.fenc ~= "" and vim.bo.fenc) or vim.o.enc -- :h 'enc'
- return enc:upper()
- end,
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
- hl = { bg = colors.bg },
-}
-
-local FileFormat = {
- provider = function()
- local fmt = vim.bo.fileformat
- return fmt ~= "unix" and fmt:upper()
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
--- FileSize and FileLastModified
-local FileSize = {
- provider = function()
- -- stackoverflow, compute human readable file size
- local suffix = { "b", "k", "M", "G", "T", "P", "E" }
- local fsize = vim.fn.getfsize(vim.api.nvim_buf_get_name(0))
- fsize = (fsize < 0 and 0) or fsize
- if fsize < 1024 then
- return fsize .. suffix[1]
- end
- local i = math.floor((math.log(fsize) / math.log(1024)))
- return string.format("%.2g%s", fsize / math.pow(1024, i), suffix[i + 1])
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
-local FileLastModified = {
- -- did you know? Vim is full of functions!
- provider = function()
- local ftime = vim.fn.getftime(vim.api.nvim_buf_get_name(0))
- return (ftime > 0) and os.date("%c", ftime)
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
--- Spell
--- Add indicator when spell is set!
-local Spell = {
- condition = function()
- return vim.wo.spell
- end,
- provider = "SPELL ",
- hl = { bold = true, fg = "orange" },
-}
-
--- Cursor position: Ruler and ScrollBar
--- We're getting minimalists here!
-local Ruler = {
- -- We're getting minimalists here!
- -- %l = current line number
- -- %L = number of lines in the buffer
- -- %c = column number
- -- %P = percentage through file of displayed window
- provider = "%3(%2l%):%c %P",
- --provider = "%7(%l/%3L%):%2c %P",
- --provider = "%3(%P%)",
- --provider = "%7(%l/%3L%):%2c %P",
- --provider = "%7 %p%% Ln %l, Col %c",
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
---local ScrollBar = {
--- static = {
--- --sbar = { "▁", "▂", "▃", "▄", "▅", "▆", "▇", "█" },
--- sbar = { "🭶", "🭷", "🭸", "🭹", "🭺", "🭻" },
--- },
--- provider = function(self)
--- local curr_line = vim.api.nvim_win_get_cursor(0)[1]
--- local lines = vim.api.nvim_buf_line_count(0)
--- local i = math.floor((curr_line - 1) / lines * #self.sbar) + 1
--- return string.rep(self.sbar[i], 2)
--- end,
--- --hl = { fg = "blue", bg = "bright_bg" },
--- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
---}
-local WordCount = {
- condition = function()
- return conditions.buffer_matches({
- filetype = {
- "markdown",
- "txt",
- "vimwiki",
- },
- })
- end,
- Space,
- {
- provider = function()
- return "W:" .. vim.fn.wordcount().words
- end,
- },
-}
-
-local Position = {
- Space,
- { provider = "%l:%c" },
- hl = { bg = colors.bg },
-}
-
-local Percentage = {
- Space,
- { provider = "%p%%" },
- hl = { bg = colors.bg },
-}
--- Working Directory
-local WorkDir = {
- provider = function(self)
- self.icon = (vim.fn.haslocaldir(0) == 1 and "l" or "g") .. " " .. " "
- local cwd = vim.fn.getcwd(0)
- self.cwd = vim.fn.fnamemodify(cwd, ":~")
- end,
- --hl = { fg = "blue", bold = true },
- hl = { fg = colors.blue, bold = true, bg = colors.bg },
-
- utils.make_flexible_component(1, {
- -- evaluates to the full-lenth path
- provider = function(self)
- local trail = self.cwd:sub(-1) == "/" and "" or "/"
- return self.icon .. self.cwd .. trail .. " "
- end,
- }, {
- -- evaluates to the shortened path
- provider = function(self)
- local cwd = vim.fn.pathshorten(self.cwd)
- local trail = self.cwd:sub(-1) == "/" and "" or "/"
- return self.icon .. cwd .. trail .. " "
- end,
- }, {
- -- evaluates to "", hiding the component
- provider = "",
- }),
-}
-
--- Terminal Name
--- Special handling of the built-in terminal bufname. See conditional statuslines below to see an example of dedicated statusline for terminals!
-
-local TerminalName = {
- -- we could add a condition to check that buftype == 'terminal'
- -- or we could do that later (see #conditional-statuslines below)
- provider = function()
- local tname, _ = vim.api.nvim_buf_get_name(0):gsub(".*:", "")
- return " " .. tname
- end,
- --hl = { fg = "blue", bold = true },
- hl = { bold = true, bg = colors.bg },
-}
-
--- Snippets Indicator
--- This requires ultisnips
---local Snippets = {
--- -- check that we are in insert or select mode
--- condition = function()
--- return vim.tbl_contains({'s', 'i'}, vim.fn.mode())
--- end,
--- provider = function()
--- local forward = (vim.fn["UltiSnips#CanJumpForwards"]() == 1) and "" or ""
--- local backward = (vim.fn["UltiSnips#CanJumpBackwards"]() == 1) and " " or ""
--- return backward .. forward
--- end,
--- hl = { fg = "red", bold = true },
---}
-
--- let's add the children to our FileNameBlock component
---FileNameBlock = utils.insert(
--- FileNameBlock,
---FileEncoding,
---Space,
---FileIcon,
---FileType,
---FileLastModified,
---FileSize,
---FileFormat,
---FileNameModifer,
--- unpack(FileFlags),
--- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
---)
--- let's add the children to our FileNameBlock component
-FileNameBlock = utils.insert(
- FileNameBlock,
- FileIcon,
- utils.insert(FileNameModifer, FileName), -- a new table where FileName is a child of FileNameModifier
- unpack(FileFlags), -- A small optimisation, since their parent does nothing
- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
-)
-
-local FileInfoBlock = {
- -- let's first set up some attributes needed by this component and it's children
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(0)
- end,
-}
-
-FileInfoBlock = utils.insert(
- FileInfoBlock,
- FileEncoding,
- Space,
- FileIcon,
- FileType,
- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
-)
---FileNameBlock = utils.insert(
--- FileNameBlock,
--- FileIcon,
--- utils.insert(FileNameModifer, FileName), -- a new table where FileName is a child of FileNameModifier
--- unpack(FileFlags), -- A small optimisation, since their parent does nothing
--- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
---)
-
--- Statusline
-
-local Surrr = {
- utils.surround({ "", "" }, "red", {
- utils.surround({ "", "" }, "green", utils.surround({ "", "" }, "blue", { provider = "heyya" })),
- { provider = "Normal" },
- }),
-}
---ViMode = utils.surround({ "", "" }, "bright_bg", { ViMode, Snippets })
-ViMode = utils.surround({ "", "" }, function(self)
- return self:mode_color()
-end, { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } })
-
---ViMode = utils.surround({ "◥", "" }, function(self) return self:mode_color() end, {
--- utils.surround({ "█", "" }, function(self) return self:mode_color() end, utils.surround({ "", "" }, function(self) return self:mode_color() end, { {provider = "normal" }, ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } } )),
--- { provider = "heyya" },
--- })
-
---utils.surround({ "█", "█" }, function(self) return self:mode_color() end, { FileNameBlock, hl = { fg = colors.bg, force = true } } ),
-local DefaultStatusline = {
- ViMode,
- Space,
- FileNameBlock,
- Space,
- Git,
- Space,
- Diagnostics,
- Align,
- Navic,
- DAPMessages,
- Align,
- Space,
- FileInfoBlock,
- Space,
- WordCount,
- Ruler,
- Space,
- --Position,
- --Percentage,
- --ScrollBar,
- --Space,
- --LSPActive, Space, LSPMessages, Space, UltTest, Space, FileType, Space, Ruler, Space, ScrollBar
-}
-
---local InactiveStatusline = {
--- condition = conditions.is_not_active,
--- FileType,
--- Space,
--- FileName,
--- Align,
---}
-
-local SpecialStatusline = {
- condition = function()
- return conditions.buffer_matches({
- buftype = { "nofile", "prompt", "help", "quickfix" },
- filetype = { "^git.*", "fugitive" },
- })
- end,
-
- FileType,
- Space,
- Align,
- --FileType, Space, HelpFileName, Align
-}
-
-local TerminalStatusline = {
-
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } })
- end,
-
- hl = { bg = "dark_red" },
-
- -- Quickly add a condition to the ViMode to only show it when buffer is active!
- { condition = conditions.is_active, ViMode, Space },
- FileType,
- Space,
- TerminalName,
- Align,
-}
-
---local StatusLines = {
---
--- hl = function()
--- if conditions.is_active() then
--- return "StatusLine"
--- else
--- return "StatusLineNC"
--- end
--- end,
---
--- -- the first statusline with no condition, or which condition returns true is used.
--- -- think of it as a switch case with breaks to stop fallthrough.
--- fallthrough = false,
---
--- SpecialStatusline,
--- TerminalStatusline,
--- --InactiveStatusline,
--- DefaultStatusline,
---}
-local StatusLines = {
-
- hl = function()
- if conditions.is_active() then
- return "StatusLine"
- else
- return "StatusLineNC"
- end
- end,
-
- static = {
- mode_colors_map = {
- n = colors.blue,
- i = colors.green,
- v = colors.purple,
- V = colors.purple,
- [""] = colors.purple,
- c = colors.red,
- s = colors.purple,
- S = colors.purple,
- [""] = colors.purple,
- R = colors.orange,
- r = colors.orange,
- ["!"] = colors.red,
- t = colors.red,
- },
- mode_color = function(self)
- local mode = conditions.is_active() and vim.fn.mode() or "n"
- return self.mode_colors_map[mode]
- end,
- },
- fallthrough = false,
-
- SpecialStatusline,
- TerminalStatusline,
- --InactiveStatusline,
- DefaultStatusline,
-}
---hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
--- hl = { bg = colors.bg },
---require("heirline").setup(StatusLines)
--- we're done.
-
---local FelineStyle = {
---
--- -- stop at child where buftype/filetype/bufname matches
--- fallthrough = false,
---
--- { -- Identify the buftype/filetype/bufname first
--- condtion = function()
--- return conditions.buffer_matches({...})
--- end,
---
--- -- Evaluate only the "active" or "inactive" child
--- fallthrough = false,
---
--- { -- If it's the current window, display some components
--- condition = conditions.is_active
--- {...} --
--- },
--- { -- Otherwise, display some other components
--- {...} --
--- }
--- },
--- { -- this block can be exactly as the one above for a different kind of
--- -- buffer
--- ...
--- }
---}
-
--- WinBar
-
-vim.api.nvim_create_autocmd("User", {
- pattern = "HeirlineInitWinbar",
- callback = function(args)
- local buf = args.buf
- local buftype = vim.tbl_contains({ "prompt", "nofile", "help", "quickfix" }, vim.bo[buf].buftype)
- local filetype = vim.tbl_contains({ "gitcommit", "fugitive" }, vim.bo[buf].filetype)
- if buftype or filetype then
- vim.opt_local.winbar = nil
- end
- end,
-})
-local active_middle_segment = { --{{{
- -- provider = "%999X  %X",
-
- --provider = function(self)
- -- --return " %999X %999X "
- -- return " %2("..self.mode_names[self.mode].."%)"
- -- --
- -- --
- -- --
- --end,
- fallthrough = false,
- { -- Hide the winbar for special buffers
- condition = function()
- return conditions.buffer_matches({
- buftype = { "nofile", "prompt", "help", "quickfix" },
- filetype = { "^git.*", "fugitive" },
- })
- end,
- init = function()
- vim.opt_local.winbar = nil
- end,
- },
- static = {
- mode_colors_map = {
- n = colors.blue,
- i = colors.green,
- v = colors.purple,
- V = colors.purple,
- [""] = colors.purple,
- c = colors.red,
- s = colors.purple,
- S = colors.purple,
- [""] = colors.purple,
- R = colors.orange,
- r = colors.orange,
- ["!"] = colors.red,
- t = colors.red,
- },
- mode_color = function(self)
- local mode = conditions.is_active() and vim.fn.mode() or "n"
- return self.mode_colors_map[mode]
- end,
- provider = "%f",
- hl = function(self)
- local color = self:mode_color() -- here!
- return { fg = color }
- end,
- -- self.filename will be defined later, just keep looking at the example!
- },
- { -- A special winbar for terminals
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } })
- end,
- utils.surround({ "", "" }, "dark_red", {
- FileType,
- Space,
- TerminalName,
- }),
- },
- { -- An inactive winbar for regular files
- condition = function()
- return not conditions.is_active()
- end,
- --utils.surround({ "", "" }, "bright_bg", { hl = { fg = "gray", force = true }, FileNameBlock }),
- --utils.surround({ "", "" }, function(self) return self:mode_color() end, { FileNameBlock, hl = { fg = colors.bg, force = true } } ),
- },
- -- A winbar for regular files
- --utils.surround({ "", "" }, "bright_bg", FileNameBlock),
- --█🙼🙽🙼█⮘██⮚
- --utils.surround({ "", "" }, function(self) return self:mode_color() end, { FileNameBlock, hl = function(self)
- -- local color = self:mode_color() -- here!
- -- return { bg = color, bold = true, force = true }
- --end,
- --}),
- --utils.surround({ "", "" }, function(self) return self:mode_color() end, FileNameBlock),
-}
-
---utils.surround({ "", "" }, function(self) return self:mode_color() end, { active_middle_segment, hl = { fg = colors.bg, force = true } })
-
-local WinBars = {
- fill,
- active_middle_segment,
- fill,
-}
--- --utils.surround({ " ", " " }, colors.nobg, { fill, active_middle_segment, fill })
--- --static = {
--- -- mode_colors_map = {
--- -- n = colors.blue,
--- -- i = colors.green,
--- -- v = colors.purple,
--- -- V = colors.purple,
--- -- [""] = colors.purple,
--- -- c = colors.red,
--- -- s = colors.purple,
--- -- S = colors.purple,
--- -- [""] = colors.purple,
--- -- R = colors.orange,
--- -- r = colors.orange,
--- -- ["!"] = colors.red,
--- -- t = colors.red,
--- -- },
--- -- mode_color = function(self)
--- -- local mode = conditions.is_active() and vim.fn.mode() or "n"
--- -- return self.mode_colors_map[mode]
--- -- end,
--- --},
--- --utils.surround({ " ", " " }, colors.nobg, { active_middle_segment, hl = function(self)
--- -- local color = self:mode_color() -- here!
--- -- return { bg = color, bold = true, force = true }
--- --end,
--- --})
---}
-on_click = {
- -- get the window id of the window in which the component was evaluated
- minwid = function()
- return vim.api.nvim_get_current_win()
- end,
- callback = function(_, minwid)
- -- winid is the window id of the window the component was clicked from
- local winid = minwid
- -- do something with the window id, e.g.:
- local buf = vim.api.nvim_win_get_buf(winid)
- -- ...
- end,
-}
-
-local CloseButton = {
- condition = function(self)
- return not vim.bo.modified
- end,
- -- a small performance improvement:
- -- re register the component callback only on layout/buffer changes.
- update = { "WinNew", "WinClosed", "BufEnter" },
- { provider = " " },
- {
- provider = "",
- hl = { fg = "gray" },
- on_click = {
- minwid = function()
- return vim.api.nvim_get_current_win()
- end,
- callback = function(_, minwid)
- vim.api.nvim_win_close(minwid, true)
- end,
- name = "heirline_winbar_close_button",
- },
- },
-}
-
--- Use it anywhere!
---local WinBarFileName = utils.surround({ "", "" }, "bright_bg", {
--- hl = function()
--- if not conditions.is_active() then
--- return { fg = "gray", force = true }
--- end
--- end,
--- FileNameBlock,
--- Space,
--- CloseButton,
---})
-
---local WinBars = {
--- -- init = utils.pick_child_on_condition,
--- fallthrough = false,
--- {
--- condition = function()
--- return conditions.buffer_matches({
--- buftype = { "nofile", "prompt", "help", "quickfix" },
--- filetype = { "^git.*", "fugitive" },
--- })
--- end,
--- init = function()
--- vim.opt_local.winbar = nil
--- end,
--- },
--- {
--- condition = function()
--- return conditions.buffer_matches({ buftype = { "terminal" } })
--- end,
--- utils.surround({ "", "" }, "dark_red", {
--- FileType,
--- Space,
--- TerminalName,
--- CloseButton,
--- }),
--- },
--- utils.surround({ "", "" }, "bright_bg", {
--- hl = function()
--- if conditions.is_not_active() then
--- return { fg = "gray", force = true }
--- end
--- end,
---
--- FileNameBlock,
--- CloseButton,
--- }),
---}
-
--- TabLine
---local TabLine ={
--- hl = { bg = colors.bg },
---}
-local TablineBufnr = {
- provider = function(self)
- return tostring(self.bufnr) .. ". "
- end,
- --hl = "Comment",
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true },
-}
-
--- we redefine the filename component, as we probably only want the tail and not the relative path
-local TablineFileName = {
- provider = function(self)
- -- self.filename will be defined later, just keep looking at the example!
- local filename = self.filename
- filename = filename == "" and "[No Name]" or vim.fn.fnamemodify(filename, ":t")
- return filename
- end,
- hl = function(self)
- return { bold = self.is_active or self.is_visible, italic = true }
- end,
-}
-
--- this looks exactly like the FileFlags component that we saw in
--- #crash-course-part-ii-filename-and-friends, but we are indexing the bufnr explicitly
--- also, we are adding a nice icon for terminal buffers.
---local TablineFileFlags = {
--- {
--- condition = function(self)
--- return vim.api.nvim_buf_get_option(self.bufnr, "modified")
--- end,
--- provider = "[+]",
--- --hl = { fg = colors.green },
--- hl = { fg = colors.green, bold = true, bg = colors.bg },
--- },
--- {
--- condition = function(self)
--- return not vim.api.nvim_buf_get_option(self.bufnr, "modifiable")
--- or vim.api.nvim_buf_get_option(self.bufnr, "readonly")
--- end,
--- provider = function(self)
--- if vim.api.nvim_buf_get_option(self.bufnr, "buftype") == "terminal" then
--- return "  "
--- else
--- return ""
--- end
--- end,
--- hl = { fg = "orange", bg = colors.bg },
--- },
---}
-
-local TablineFileFlags = {
- {
- provider = function(self)
- if vim.bo[self.bufnr].modified then
- return " [+]"
- end
- end,
- hl = { fg = colors.green },
- },
- {
- provider = function(self)
- if not vim.bo[self.bufnr].modifiable or vim.bo[self.bufnr].readonly then
- return ""
- end
- end,
- hl = { fg = "orange" },
- },
-}
-
-local TablineFileIcon = {
- init = function(self)
- local filename = self.filename
- local extension = vim.fn.fnamemodify(filename, ":e")
- self.icon, self.icon_color =
- require("nvim-web-devicons").get_icon_color(filename, extension, { default = true })
- end,
- provider = function(self)
- return self.icon and (" " .. self.icon .. " ")
- end,
- hl = function(self)
- return { fg = self.icon_color }
- end,
-}
-
--- Here the filename block finally comes together
-local TablineFileNameBlock = {
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(self.bufnr)
- end,
- hl = function(self)
- if self.is_active then
- return "TabLineSel"
- -- why not?
- --elseif not vim.api.nvim_buf_is_loaded(self.bufnr) then
- --return { fg = "gray", bg = colors.bg }
- else
- return "TabLine"
- end
- end,
- on_click = {
- callback = function(_, minwid, _, button)
- if button == "m" then -- close on mouse middle click
- vim.api.nvim_buf_delete(minwid, { force = false })
- else
- vim.api.nvim_win_set_buf(0, minwid)
- end
- end,
- minwid = function(self)
- return self.bufnr
- end,
- name = "heirline_tabline_buffer_callback",
- },
- TablineBufnr,
- --FileIcon, -- turns out the version defined in #crash-course-part-ii-filename-and-friends can be reutilized as is here!
- TablineFileIcon,
- TablineFileName,
- TablineFileFlags,
-}
-
--- a nice "x" button to close the buffer
-local TablineCloseButton = {
- condition = function(self)
- return not vim.api.nvim_buf_get_option(self.bufnr, "modified")
- end,
- { provider = " " },
- {
- provider = " ",
- --hl = { fg = "red", bg = colors.bg },
- hl = { fg = "red" },
- on_click = {
- callback = function(_, minwid)
- vim.api.nvim_buf_delete(minwid, { force = false })
- end,
- minwid = function(self)
- return self.bufnr
- end,
- name = "heirline_tabline_close_buffer_callback",
- },
- },
-}
-
--- The final touch!
---local TablineBufferBlock = utils.surround({ "", "", hl = { bg =colors.bg } }, function(self)
--- if self.is_active then
--- return utils.get_highlight("TabLineSel").fg, utils.get_highlight("TabLineSel").bg
--- else
--- return utils.get_highlight("TabLine").fg, utils.get_highlight("TabLine").bg
--- end
-----end, { TabLine, TablineFileNameBlock, TablineCloseButton })
---end, { TablineFileNameBlock, TablineCloseButton })
-
---local TablineBufferBlock = utils.surround({ "█", "█" }, "bg", {
--- hl = function()
--- if not conditions.is_active() then
--- return { fg = "gray", force = true, bg = colors.bg }
--- end
--- end,
--- TablineFileNameBlock,
--- TablineCloseButton,
---})
---local TablineBufferBlock = utils.surround({ "█", "█" },
--- { hl = function(self)
--- local mode = self.mode:sub(1, 1) -- get only the first mode character
--- --return { fg = self.mode_colors[mode], bold = true, }
--- return { bg = self.mode_colors[mode], fg = colors.bg, bold = true }
--- end, },
---{ TablineFileNameBlock, TablineCloseButton, { hl = ViMode }, })
-
---local TablineBufferBlock = {
--- init = function(self)
---
--- self.mode = vim.fn.mode(1) -- :h mode()
---
--- vim.api.nvim_create_autocmd("ModeChanged", {
--- pattern = "*:*o",
--- command = "redrawstatus",
--- })
--- self.once = true
--- end,
--- static = {
--- mode_colors = {
--- n = colors.blue,
--- i = colors.green,
--- v = colors.purple,
--- V = colors.purple,
--- [""] = colors.purple,
--- c = colors.red,
--- s = colors.purple,
--- S = colors.purple,
--- [""] = colors.purple,
--- R = colors.orange,
--- r = colors.orange,
--- ["!"] = colors.red,
--- t = colors.red,
--- },
--- },
--- hl = function(self)
--- if self.is_active then
--- local mode = self.mode:sub(1, 1) -- get only the first mode character
--- --return { fg = self.mode_colors[mode], bold = true, }
--- return { bg = self.mode_colors[mode], fg = colors.bg, bold = true }
--- else
--- return utils.get_highlight("TabLine").bg
--- end
--- end,
--- update = {
--- "ModeChanged",
--- }, --optional
--- { TablineFileNameBlock, TablineCloseButton }
---}
-
---local TabLineSel = {
--- hl = { bg = self.mode_colors[mode], fg = colors.bg, bold = true }
---}
---local ViMode2 = {
--- init = function(self)
--- self.mode = vim.fn.mode()
--- end,
--- static = {
--- mode_colors = {
--- n = "red",
--- i = "green",
--- v = "blue",
--- c = "orange"
---
--- }
--- },
--- provider = function(self)
--- return string.upper(self.mode)
--- end,
--- hl = function(self)
--- return { fg = self.mode_colors[self.mode], bold = true, }
--- end
---}
---local surrr = {
--- utils.surround({ "", "" }, "red", {
--- utils.surround({ "", "" }, "green", utils.surround({ "", "" }, "blue", { provider = "heyya" })),
--- { provider = "Normal" },
--- }),
---}
---local statusline = ViMode
-
---local TablineBufferBlock = utils.surround({ "", "" }, function(self)
--- if self.is_active then
--- --self.mode = vim.fn.mode(1) -- :h mode()
---
--- --return utils.get_highlight(vim.api.nvim_get_mode().mode).bg
--- return utils.get_highlight("TabLineSel").bg
--- --return utils.get_highlight("Normal").bg
--- --local mode = self.mode:sub(1, 1) -- get only the first mode character
--- --return { bg = TabLineSel, fg = colors.bg, bold = true }
--- else
--- return utils.get_highlight("TabLine").bg
--- end
---end, { TablineFileNameBlock, TablineCloseButton })
-
-local TablineBufferBlock = utils.surround({ "█", "▎" }, function(self)
- --local TablineBufferBlock = utils.surround({ "█", "█" }, function(self)
- if self.is_active then
- return utils.get_highlight("TabLineSel").bg
- else
- return utils.get_highlight("TabLine").bg
- end
-end, { TablineFileNameBlock, TablineCloseButton })
---█
---local TablineBufferBlock = {
--- init = function(self)
--- self.mode = vim.fn.mode()
--- end,
--- static = {
--- mode_colors = {
--- n = colors.blue,
--- i = colors.green,
--- v = colors.purple,
--- V = colors.purple,
--- [""] = colors.purple,
--- c = colors.red,
--- s = colors.purple,
--- S = colors.purple,
--- [""] = colors.purple,
--- R = colors.orange,
--- r = colors.orange,
--- ["!"] = colors.red,
--- t = colors.red,
--- },
--- },
--- hl = function(self)
--- if conditions.is_active() then
--- return { bg = self.mode_colors[self.mode], fg = colors.bg, bold = true }
--- else
--- return utils.get_highlight("Tabline").bg
--- end
--- end,
--- update = {
--- "ModeChanged",
--- }, --optional
--- { TablineFileNameBlock, TablineCloseButton },
---}
-
---local TablineBufferBlock = {
--- static = {
--- mode_colors_map = {
--- n = colors.blue,
--- i = colors.green,
--- v = colors.purple,
--- V = colors.purple,
--- [""] = colors.purple,
--- c = colors.red,
--- s = colors.purple,
--- S = colors.purple,
--- [""] = colors.purple,
--- R = colors.orange,
--- r = colors.orange,
--- ["!"] = colors.red,
--- t = colors.red,
--- },
--- mode_color = function(self)
--- local mode = conditions.is_active() and vim.fn.mode() or "n"
--- return self.mode_colors_map[mode]
--- end,
--- },
--- { -- A special winbar for terminals
--- condition = function()
--- return conditions.buffer_matches({ buftype = { "terminal" } })
--- end,
--- utils.surround({ "", "" }, "dark_red", {
--- FileType,
--- Space,
--- TerminalName,
--- }),
--- },
--- { -- An inactive winbar for regular files
--- condition = function()
--- return conditions.is_not_active()
--- end,
--- utils.surround({ "█", "█" }, function() return utils.get_highlight("TabLine").bg end, { TablineFileNameBlock, TablineCloseButton } )
--- },
--- {
--- condition = function()
--- return conditions.is_active()
--- end,
--- utils.surround({ "█", "█" }, function(self) return self:mode_color() end, { TablineFileNameBlock, TablineCloseButton, hl = { fg = colors.bg, force = true } } )
--- },
---function()
---if self.is_active then
---utils.surround({ "", "" }, "bright_bg", { hl = { fg = "gray", force = true }, FileNameBlock }),
---utils.surround({ "", "" }, function(self) return self:mode_color() end, { FileNameBlock, hl = { fg = colors.bg, force = true } } ),
---utils.surround({ "█", "█" }, function() return utils.get_highlight("TabLine").bg end, { TablineFileNameBlock, TablineCloseButton, hl = { fg = colors.bg, force = true } } ),
---}
---ViMode = utils.surround({ "", "" }, function(self)
--- if self.is_active then
--- return self:mode_color()
--- else
--- return utils.get_highlight("TabLine").bg
--- end
--- end, { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } } )
---
-----}
---local TablineBufferBlock = {
--- ViMode,
--- TablineFileName,
--- TablineCloseButton,
---}
--- A winbar for regular files
---utils.surround({ "", "" }, "bright_bg", FileNameBlock),
---utils.surround({ "", "" }, function(self) return self:mode_color() end, FileNameBlock),
-local BufferLine = utils.make_buflist(
- TablineBufferBlock,
- { provider = "", hl = { fg = "gray" } }, -- left truncation, optional (defaults to "<")
- { provider = "", hl = { fg = "gray" } } -- right trunctation, also optional (defaults to ...... yep, ">")
- --{ provider = "", hl = { fg = "gray" } }, -- left truncation, optional (defaults to "<")
- --{ provider = "", hl = { fg = "gray" } } -- right trunctation, also optional (defaults to ...... yep, ">")
- -- by the way, open a lot of buffers and try clicking them ;)
-)
-
--- if self.is_active then
--- return utils.get_highlight("TabLineSel").bg
--- else
--- return utils.get_highlight("TabLine").bg
--- end
---end, { TablineFileNameBlock, TablineCloseButton, } )
--- TabList
-local Tabpage = {
- provider = function(self)
- return "%" .. self.tabnr .. "T " .. self.tabnr .. " %T"
- end,
- hl = function(self)
- if not self.is_active then
- return "TabLine"
- else
- return "TabLineSel"
- end
- end,
-}
-
-local TabpageClose = {
- provider = "%999X  %X",
- --hl = "TabLine",
- hl = { fg = colors.red, bg = colors.bg },
-}
-
-local TabPages = {
- -- only show this component if there's 2 or more tabpages
- condition = function()
- return #vim.api.nvim_list_tabpages() >= 2
- end,
- { provider = "%=" },
- utils.make_tablist(Tabpage),
- TabpageClose,
-}
-
--- TabLineOffset
-local TabLineOffset = {
- condition = function(self)
- local win = vim.api.nvim_tabpage_list_wins(0)[1]
- local bufnr = vim.api.nvim_win_get_buf(win)
- self.winid = win
-
- if vim.bo[bufnr].filetype == "NvimTree" then
- self.title = "NvimTree"
- return true
- -- elseif vim.bo[bufnr].filetype == "TagBar" then
- -- ...
- end
- end,
-
- provider = function(self)
- local title = self.title
- local width = vim.api.nvim_win_get_width(self.winid)
- local pad = math.ceil((width - #title) / 2)
- return string.rep(" ", pad) .. title .. string.rep(" ", pad)
- end,
-
- hl = function(self)
- if vim.api.nvim_get_current_win() == self.winid then
- return "TablineSel"
- else
- return "Tabline"
- end
- end,
-}
-
-local TabLine = {
- --hl = { bg = colors.bg },
- fallthrough = false,
- TabLineOffset,
- BufferLine,
- TabPages,
-}
-
-vim.cmd([[au FileType * if index(['wipe', 'delete', 'unload'], &bufhidden) >= 0 | set nobuflisted | endif]])
---local StatusLines = {
---
--- hl = function()
--- if conditions.is_active() then
--- return "StatusLine"
--- else
--- return "StatusLineNC"
--- end
--- end,
---
--- -- the first statusline with no condition, or which condition returns true is used.
--- -- think of it as a switch case with breaks to stop fallthrough.
--- fallthrough = false,
---
--- SpecialStatusline,
--- TerminalStatusline,
--- --InactiveStatusline,
--- DefaultStatusline,
---}
---
--- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
--- hl = { bg = colors.bg },
---local TabLine ={
--- hl = { bg = colors.bg },
---}
--- Window Close button: Let the callback know from which window it was clicked from!
--- The following is the recommended way of achieving that:
-require("heirline").setup(StatusLines, WinBars, TabLine)
-
--- Yep, with heirline we're driving manual!
-vim.cmd([[au FileType * if index(['wipe', 'delete', 'unload'], &bufhidden) >= 0 | set nobuflisted | endif]])
-
-vim.api.nvim_create_augroup("Heirline", { clear = true })
-vim.api.nvim_create_autocmd("ColorScheme", {
- callback = function()
- local colors = setup_colors()
- utils.on_colorscheme(colors)
- end,
- group = "Heirline",
-})
-
-local function get_bufs()
- return vim.tbl_filter(function(bufnr)
- return vim.api.nvim_buf_is_loaded(bufnr) and vim.bo[bufnr].buflisted
- end, vim.api.nvim_list_bufs())
-end
-
-local function goto_buf(index)
- local bufs = get_bufs()
- if index > #bufs then
- index = #bufs
- end
- vim.api.nvim_win_set_buf(0, bufs[index])
-end
-
-local function addKey(key, index)
- vim.keymap.set("", "<A-" .. key .. ">", function()
- goto_buf(index)
- end, { noremap = true, silent = true })
-end
-
-for i = 1, 9 do
- addKey(i, i)
-end
-addKey("0", 10)
--- Theming
---local function setup_colors()
--- return {
--- bright_bg = utils.get_highlight("Folded").bg,
--- bright_fg = utils.get_highlight("Folded").fg,
--- red = utils.get_highlight("DiagnosticError").fg,
--- dark_red = utils.get_highlight("DiffDelete").bg,
--- green = utils.get_highlight("String").fg,
--- blue = utils.get_highlight("Function").fg,
--- gray = utils.get_highlight("NonText").fg,
--- orange = utils.get_highlight("Constant").fg,
--- purple = utils.get_highlight("Statement").fg,
--- cyan = utils.get_highlight("Special").fg,
--- diag_warn = utils.get_highlight("DiagnosticWarn").fg,
--- diag_error = utils.get_highlight("DiagnosticError").fg,
--- diag_hint = utils.get_highlight("DiagnosticHint").fg,
--- diag_info = utils.get_highlight("DiagnosticInfo").fg,
--- git_del = utils.get_highlight("diffDeleted").fg,
--- git_add = utils.get_highlight("diffAdded").fg,
--- git_change = utils.get_highlight("diffChanged").fg,
--- }
---end
---require('heirline').load_colors(setup_colors())
---
---vim.api.nvim_create_augroup("Heirline", { clear = true })
---vim.api.nvim_create_autocmd("ColorScheme", {
--- callback = function()
--- local colors = setup_colors()
--- utils.on_colorscheme(colors)
--- end,
--- group = "Heirline",
---})
diff --git a/lua/plugins/heirline.lua b/lua/plugins/heirline.lua
deleted file mode 100644
index 78408dc..0000000
--- a/lua/plugins/heirline.lua
+++ /dev/null
@@ -1,1191 +0,0 @@
-local conditions = require("heirline.conditions")
-local utils = require("heirline.utils")
-
-local colors = {
- --bg = "#23232e",
- bg = nil,
- nobg = nil,
- white = "#f8f8f2",
- black = "#000000",
- darkgray = "#23232e",
- gray = "#2d2b3a",
- lightgray = "#d6d3ea",
- pink = "#f92672",
- green = "#50fa7b",
- blue = "#39BAE6",
- yellow = "#f1fa8c",
- orange = "#ffb86c",
- purple = "#BF40BF",
- violet = "#7F00FF",
- red = "#ff5555",
- cyan = "#66d9eC",
- diag = {
- warn = utils.get_highlight("DiagnosticSignWarn").fg,
- error = utils.get_highlight("DiagnosticSignError").fg,
- hint = utils.get_highlight("DiagnosticSignHint").fg,
- info = utils.get_highlight("DiagnosticSignInfo").fg,
- },
- git = {
- del = "#e95678",
- add = "#a6e22e",
- change = "#ae81ff",
- },
-}
-
-require("heirline").load_colors(colors)
-
-local Align = { provider = "%=", hl = { bg = colors.bg } }
-local Space = { provider = " ", hl = { bg = colors.bg } }
-local Tab = { provider = " " }
-local Fill = { provider = "%=", hl = { bg = colors.nobg } }
-local LeftSep = { provider = "", hl = { fg = colors.bg } }
-local RightSep = { provider = "", hl = { fg = colors.bg } }
-
-local ViMode = {
- init = function(self)
- self.mode = vim.fn.mode(1)
- if not self.once then
- vim.cmd("au ModeChanged *:*o redrawstatus")
- end
- self.once = true
- end,
- static = {
- mode_names = {
- n = "NORMAL ",
- no = "N·OPERATOR PENDING ",
- nov = "N?",
- noV = "N?",
- ["no\22"] = "N? ",
- niI = "Ni",
- niR = "Nr",
- niV = "Nv",
- nt = "Nt",
- v = "VISUAL ",
- vs = "Vs",
- V = "V·LINE ",
- ["\22"] = "V·BLOCK ",
- ["\22s"] = "V·BLOCK ",
- s = "SELECT ",
- S = "S·LINE ",
- ["\19"] = "S·BLOCK ",
- i = "INSERT ",
- ix = "insert x ",
- ic = "insert c ",
- R = "REPLACE ",
- Rc = "Rc",
- Rx = "Rx",
- Rv = "V·REPLACE ",
- Rvc = "Rv",
- Rvx = "Rv",
- c = "COMMAND ",
- cv = "VIM EX ",
- ce = "EX ",
- r = "PROMPT ",
- rm = "MORE ",
- ["r?"] = "CONFIRM ",
- ["!"] = "SHELL ",
- t = "TERMINAL ",
- },
- },
- provider = function(self)
- return " %2(" .. self.mode_names[self.mode] .. "%) "
- end,
- hl = function(self)
- local color = self:mode_color()
- return { fg = color, bold = true }
- end,
- update = {
- "ModeChanged",
- },
-}
-
--- LSP
-local LSPActive = {
- condition = conditions.lsp_attached,
- update = { "LspAttach", "LspDetach" },
-
- provider = function()
- local buf_clients = vim.lsp.buf_get_clients()
- local buf_client_names = {}
-
- -- add client
- for _, client in pairs(buf_clients) do
- if client.name ~= "null-ls" then
- table.insert(buf_client_names, client.name)
- end
- end
- return "⚙️ " .. table.concat(buf_client_names, "")
- end,
- hl = { fg = colors.lightgray, bold = false },
-}
-
--- Navic
-local Navic = {
- condition = require("nvim-navic").is_available,
- static = {
- -- create a type highlight map
- type_hl = {
- File = "Directory",
- Module = "Include",
- Namespace = "TSNamespace",
- Package = "Include",
- Class = "Struct",
- Method = "Method",
- Property = "TSProperty",
- Field = "TSField",
- Constructor = "TSConstructor ",
- Enum = "TSField",
- Interface = "Type",
- Function = "Function",
- Variable = "TSVariable",
- Constant = "Constant",
- String = "String",
- Number = "Number",
- Boolean = "Boolean",
- Array = "TSField",
- Object = "Type",
- Key = "TSKeyword",
- Null = "Comment",
- EnumMember = "TSField",
- Struct = "Struct",
- Event = "Keyword",
- Operator = "Operator",
- TypeParameter = "Type",
- },
- },
- init = function(self)
- local data = require("nvim-navic").get_data() or {}
- local children = {}
- -- create a child for each level
- for i, d in ipairs(data) do
- local child = {
- {
- provider = d.icon,
- hl = self.type_hl[d.type],
- },
- {
- provider = d.name,
- -- highlight icon only or location name as well
- -- hl = self.type_hl[d.type],
- },
- }
- -- add a separator only if needed
- if #data > 1 and i < #data then
- table.insert(child, {
- provider = " > ",
- hl = { fg = colors.white },
- })
- end
- table.insert(children, child)
- end
- -- instantiate the new child, overwriting the previous one
- self[1] = self:new(children, 1)
- end,
- hl = { fg = colors.white },
-}
-
--- Diagnostics
-local Diagnostics = {
-
- condition = conditions.has_diagnostics,
-
- static = {
- error_icon = vim.fn.sign_getdefined("DiagnosticSignError")[1].text,
- warn_icon = vim.fn.sign_getdefined("DiagnosticSignWarn")[1].text,
- info_icon = vim.fn.sign_getdefined("DiagnosticSignInfo")[1].text,
- hint_icon = vim.fn.sign_getdefined("DiagnosticSignHint")[1].text,
- },
-
- init = function(self)
- self.errors = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.ERROR })
- self.warnings = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.WARN })
- self.hints = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.HINT })
- self.info = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.INFO })
- end,
-
- update = { "DiagnosticChanged", "BufEnter" },
-
- {
- provider = function(self)
- -- 0 is just another output, we can decide to print it or not!
- return self.errors > 0 and (self.error_icon .. self.errors .. " ")
- end,
- hl = { fg = colors.diag.error, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.warnings > 0 and (self.warn_icon .. self.warnings .. " ")
- end,
- hl = { fg = colors.diag.warn, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.info > 0 and (self.info_icon .. self.info .. " ")
- end,
- hl = { fg = colors.diag.info, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.hints > 0 and (self.hint_icon .. self.hints)
- end,
- hl = { fg = colors.diag.hint, bg = colors.bg },
- },
- on_click = {
- callback = function()
- require("trouble").toggle({ mode = "document_diagnostics" })
- -- or
- -- vim.diagnostic.setqflist()
- end,
- name = "heirline_diagnostics",
- },
-}
-
--- Git
--- For the ones who're not (too) afraid of changes! Uses gitsigns.
-local Git = {
- condition = conditions.is_git_repo,
-
- init = function(self)
- self.status_dict = vim.b.gitsigns_status_dict
- self.has_changes = self.status_dict.added ~= 0 or self.status_dict.removed ~= 0 or self.status_dict.changed ~= 0
- end,
- --hl = { fg = "orange" },
- hl = { fg = colors.orange, bg = colors.bg },
- { -- git branch name
- provider = function(self)
- return " " .. self.status_dict.head
- end,
- --hl = { bold = true },
- hl = { bold = true, bg = colors.bg },
- },
- -- You could handle delimiters, icons and counts similar to Diagnostics
- {
- condition = function(self)
- return self.has_changes
- end,
- --provider = "("
- provider = " ",
- },
- {
- provider = function(self)
- local count = self.status_dict.added or 0
- --return count > 0 and ("+" .. count)
- return count > 0 and ("  " .. count)
- end,
- --hl = { fg = "git_add" },
- hl = { fg = colors.git.add, bg = colors.bg },
- },
- {
- provider = function(self)
- local count = self.status_dict.removed or 0
- --return count > 0 and ("-" .. count)
- return count > 0 and ("  " .. count)
- end,
- --hl = { fg = "git_del" },
- hl = { fg = colors.git.del, bg = colors.bg },
- },
- {
- provider = function(self)
- local count = self.status_dict.changed or 0
- --return count > 0 and ("~" .. count)
- return count > 0 and (" 柳" .. count)
- end,
- --hl = { fg = "git_change" },
- hl = { fg = colors.git.change, bg = colors.bg },
- },
- --{
- -- condition = function(self)
- -- return self.has_changes
- -- end,
- -- provider = ")",
- --},
- on_click = {
- callback = function()
- -- If you want to use Fugitive:
- -- vim.cmd("G")
-
- -- If you prefer Lazygit
- -- use vim.defer_fn() if the callback requires
- -- opening of a floating window
- -- (this also applies to telescope)
- vim.defer_fn(function()
- vim.cmd("Lazygit")
- end, 100)
- end,
- name = "heirline_git",
- },
-}
-
--- Debugger
--- Display informations from nvim-dap!
-local DAPMessages = {
- -- display the dap messages only on the debugged file
- condition = function()
- local session = require("dap").session()
- if session then
- local filename = vim.api.nvim_buf_get_name(0)
- if session.config then
- local progname = session.config.program
- return filename == progname
- end
- end
- return false
- end,
- provider = function()
- return " " .. require("dap").status()
- end,
- hl = { fg = utils.get_highlight("Debug").fg },
- -- Debugger on_click: step-over, step-into, next, previous, stop buttons
- -- coming soon!
-}
-
--- Tests
--- This requires the great ultest.
---local UltTest = {
--- condition = function()
--- return vim .api.nvim_call_function("ultest#is_test_file", {}) ~= 0
--- end,
--- static = {
--- passed_icon = vim.fn.sign_getdefined("test_pass")[1].text,
--- failed_icon = vim.fn.sign_getdefined("test_fail")[1].text,
--- passed_hl = { fg = utils.get_highlight("UltestPass").fg },
--- failed_hl = { fg = utils.get_highlight("UltestFail").fg },
--- },
--- init = function(self)
--- self.status = vim.api.nvim_call_function("ultest#status", {})
--- end,
---
--- -- again, if you'd like icons and numbers to be colored differently,
--- -- just split the component in two
--- {
--- provider = function(self)
--- return self.passed_icon .. self.status.passed .. " "
--- end,
--- hl = function(self)
--- return self.passed_hl
--- end,
--- },
--- {
--- provider = function(self)
--- return self.failed_icon .. self.status.failed .. " "
--- end,
--- hl = function(self)
--- return self.failed_hl
--- end,
--- },
--- {
--- provider = function(self)
--- return "of " .. self.status.tests - 1
--- end,
--- },
---}
-
--- FileNameBlock: FileIcon, FileName and friends
-local FileNameBlock = {
- -- let's first set up some attributes needed by this component and it's children
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(0)
- end,
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
- hl = { bg = colors.bg },
-}
-
--- FileIcon, FileName, FileFlags and FileNameModifier
-local FileIcon = {
- init = function(self)
- local filename = self.filename
- local extension = vim.fn.fnamemodify(filename, ":e")
- self.icon, self.icon_color =
- require("nvim-web-devicons").get_icon_color(filename, extension, { default = true })
- end,
- provider = function(self)
- return self.icon and (self.icon .. " ")
- end,
- hl = function(self)
- return { fg = self.icon_color, bg = colors.bg }
- end,
-}
-
-local FileName = {
- provider = function(self)
- -- first, trim the pattern relative to the current directory. For other
- -- options, see :h filename-modifers
- local filename = vim.fn.fnamemodify(self.filename, ":.")
- if filename == "" then
- return "No Name"
- end
- -- now, if the filename would occupy more than 1/4th of the available
- -- space, we trim the file path to its initials
- -- See Flexible Components section below for dynamic truncation
- if not conditions.width_percent_below(#filename, 0.25) then
- filename = vim.fn.pathshorten(filename)
- end
- return filename
- end,
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = false, bg = colors.bg },
- hl = { fg = colors.white, bold = false, bg = colors.bg },
-}
-
-local FileFlags = {
- {
- provider = function()
- if vim.bo.modified then
- return " [+]" -- ±[+]
- end
- end,
- hl = { fg = colors.green, bg = colors.bg },
- },
- {
- provider = function()
- if not vim.bo.modifiable or vim.bo.readonly then
- return " "
- end
- end,
- --hl = { fg = colors.orange },
- hl = { fg = colors.orange, bold = true, bg = colors.bg },
- },
-}
-
-local FileNameModifier = {
- hl = function()
- if vim.bo.modified then
- return { fg = colors.green, bold = false, force = true }
- end
- end,
-}
-
--- FileType, FileEncoding and FileFormat
-local FileType = {
- provider = function()
- return vim.bo.filetype
- end,
- hl = { fg = colors.white, bold = false, bg = colors.bg },
-}
-
-local FileEncoding = {
- Space,
- provider = function()
- local enc = (vim.bo.fenc ~= "" and vim.bo.fenc) or vim.o.enc -- :h 'enc'
- return enc:lower()
- end,
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
- hl = { bg = colors.bg, bold = false },
-}
-
-local FileFormat = {
- provider = function()
- local fmt = vim.bo.fileformat
- --return fmt ~= "unix" and fmt:upper()
- return fmt ~= "unix" and fmt:lower()
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
--- FileSize and FileLastModified
-local FileSize = {
- provider = function()
- -- stackoverflow, compute human readable file size
- local suffix = { "b", "k", "M", "G", "T", "P", "E" }
- local fsize = vim.fn.getfsize(vim.api.nvim_buf_get_name(0))
- fsize = (fsize < 0 and 0) or fsize
- if fsize < 1024 then
- return fsize .. suffix[1]
- end
- local i = math.floor((math.log(fsize) / math.log(1024)))
- return string.format("%.2g%s", fsize / math.pow(1024, i), suffix[i + 1])
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
-local FileLastModified = {
- -- did you know? Vim is full of functions!
- provider = function()
- local ftime = vim.fn.getftime(vim.api.nvim_buf_get_name(0))
- return (ftime > 0) and os.date("%c", ftime)
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
--- Spell
--- Add indicator when spell is set!
-local Spell = {
- condition = function()
- return vim.wo.spell
- end,
- provider = " 暈",
- hl = { bold = true, fg = colors.yellow },
-}
-
-local help_file_name = {
- condition = function()
- return vim.bo.filetype == "help"
- end,
- provider = function()
- local filename = vim.api.nvim_buf_get_name(0)
- return vim.fn.fnamemodify(filename, ":t")
- end,
- hl = { fg = colors.blue },
-}
-
--- Cursor position: Ruler
---local Ruler = {
- -- %l = current line number
- -- %L = number of lines in the buffer
- -- %c = column number
- -- %P = percentage through file of displayed window
- --provider = "%P %(%l/%L%):%c ",
- --provider = "%3(%2l%):%c %P ",
- --provider = "%7(%l/%3L%):%2c%P ",
- --provider = "%3(%P%)",
- --provider = "%7(%l/%3L%):%2c %P",
- --provider = "%7 %p%% Ln %l, Col %c",
- --provider = "%9( %P %2l/%L :%2c %)",
- --provider = "%9(%2l%2( : %c%)/%L %P %)",
- --provider = "%7(%l:%c/%L%) ",
- --provider = "%6(%l:%1.5c/%L%) %P ",
- --provider = "%6(%l:%1.5c/%L%) ",
- --provider = "%3(%l:%1.5c/%L%) ",
- --provider = "%7(%l/%3L%):%2c ",
--- provider = "%7(%l:%c%) ",
- --provider = "%l:%c ",
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true },
--- hl = { fg = colors.darkgray, bold = true },
---}
-local leftruler = { Space, Align }
-local rightruler = { Align, Space }
-local cursor_location = {
- --{ provider = "", hl = { fg = utils.get_highlight("StatusLine").bg, bold = true } },
--- { provider = "%<%-05.10(%l:%c%)", hl = { fg = colors.darkgray, bold = true } },
--- { provider = " ", hl = { fg = colors.darkgray, bold = true } },
- --{ provider = "%P %=%<%(%l,%c)" },
- --{ provider = " %w%-8.(%l,%c%)%>" },
- { provider = " %1(%4l:%-3(%c%) %)%*", hl = { fg = colors.black, bold = true } },
-}
-local Ruler = { cursor_location }
-
- --utils.make_flexible_component(
- -- 3,
- -- { Ruler, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- -- { provider = "%<" }
- --),
---local cursor_location = {
--- { provider = "%7(%l:%c%) ", hl = { bold = true } },
--- {
--- provider = " ",
--- hl = function(self)
--- local color = self:mode_color()
--- return { fg = color, bold = true }
--- end,
--- },
---}
-
-local WordCount = {
- condition = function()
- return conditions.buffer_matches({
- filetype = {
- "markdown",
- "txt",
- "vimwiki",
- },
- })
- end,
- Space,
- {
- provider = function()
- return "W:" .. vim.fn.wordcount().words
- end,
- },
-}
-
--- Working Directory
-local WorkDir = {
- provider = function(self)
- self.icon = (vim.fn.haslocaldir(0) == 1 and "l" or "g") .. " " .. " "
- local cwd = vim.fn.getcwd(0)
- self.cwd = vim.fn.fnamemodify(cwd, ":~")
- end,
- hl = { fg = colors.blue, bold = true, bg = colors.bg },
-
- utils.make_flexible_component(1, {
- -- evaluates to the full-lenth path
- provider = function(self)
- local trail = self.cwd:sub(-1) == "/" and "" or "/"
- return self.icon .. self.cwd .. trail .. " "
- end,
- }, {
- -- evaluates to the shortened path
- provider = function(self)
- local cwd = vim.fn.pathshorten(self.cwd)
- local trail = self.cwd:sub(-1) == "/" and "" or "/"
- return self.icon .. cwd .. trail .. " "
- end,
- }, {
- -- evaluates to "", hiding the component
- provider = "",
- }),
-}
-
--- Snippets Indicator
--- This requires ultisnips
---local Snippets = {
--- -- check that we are in insert or select mode
--- condition = function()
--- return vim.tbl_contains({'s', 'i'}, vim.fn.mode())
--- end,
--- provider = function()
--- local forward = (vim.fn["UltiSnips#CanJumpForwards"]() == 1) and "" or ""
--- local backward = (vim.fn["UltiSnips#CanJumpBackwards"]() == 1) and " " or ""
--- return backward .. forward
--- end,
--- hl = { fg = "red", bold = true },
---}
-
--- let's add the children to our FileNameBlock component
-FileNameBlock = utils.insert(
- FileNameBlock,
- FileIcon,
- utils.insert(FileNameModifier, FileName), -- a new table where FileName is a child of FileNameModifier
- unpack(FileFlags), -- A small optimisation, since their parent does nothing
- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
-)
-
-local FileInfoBlock = {
- -- let's first set up some attributes needed by this component and it's children
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(0)
- end,
-}
-
-FileInfoBlock = utils.insert(
- FileInfoBlock,
- Space,
- FileIcon,
- FileType,
- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
-)
-
-ViMode = utils.surround({ "", "" }, function(self)
- return self:mode_color()
-end, { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } })
-
-LeftSpace = utils.surround({ "", " " }, function(self)
- return self:mode_color()
-end, { LeftSpace, hl = { fg = utils.get_highlight("statusline").bg, force = true } })
-
-RightSpace = utils.surround(
- { "", "" },
- colors.gray,
- { RightSpace, hl = { bg = utils.get_highlight("statusline").bg, force = true } }
-)
-
-RightSpace2 = utils.surround(
- { "█", "" },
- colors.darkgray,
- { RightSpace2, hl = { fg = colors.darkgray, force = true } }
-)
-
-RightSpace3 = utils.surround(
- { "█", "" },
- utils.get_highlight("statusline").bg,
- { RightSpace3, hl = { fg = colors.darkgray, force = true } }
-)
-
-LSPActive = utils.surround({ "", "" }, function(self)
- return self:mode_color()
-end, { Space, LSPActive, hl = { bg = colors.darkgray, force = true } })
-
-FileInfoBlock = utils.surround({ "", "" }, function(self)
- return self:mode_color()
-end, { FileInfoBlock, Space, hl = { bg = colors.gray, force = true } })
-
-Ruler = utils.surround({ "", "" }, colors.gray, { Ruler, hl = { fg = colors.gray, force = true } })
-
-local left = {
- { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- { LeftSpace, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { FileNameBlock, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Git, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
-}
-local middle = {
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Navic, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { DAPMessages, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
-}
-local right = {
- { Diagnostics, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- {
- RightSpace3,
- hl = { bg = colors.darkgray, force = true },
- },
- { LSPActive, hl = { bg = colors.darkgray, force = true } },
- { RightSpace2, hl = { bg = colors.gray, force = true } },
- { FileInfoBlock, hl = { bg = colors.gray, force = true } },
- { RightSpace, hl = { fg = colors.gray, force = true } },
- --{ cursor_location, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- { Ruler, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- --utils.make_flexible_component(
- -- 3,
- -- { Ruler, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- -- { provider = "%<" }
- --),
-}
---local Align = { provider = "%=", hl = { bg = colors.bg } }
-
-local sections = { left, middle, right }
-local DefaultStatusline = { sections }
---LSPActive, Space, LSPMessages, Space, UltTest, Space, FileType, Space, Ruler, Space, ScrollBar
-
-local InactiveStatusline = {
- condition = conditions.is_not_active,
- { FileType, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { FileName, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
-}
-
-local SpecialStatusline = {
- condition = function()
- return conditions.buffer_matches({
- buftype = { "nofile", "prompt", "help", "quickfix" },
- filetype = { "^git.*", "fugitive" },
- })
- end,
-
- --FileType,
- --Space,
- --Align,
- { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- { LeftSpace, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { FileType, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { RightSpace, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- { Ruler, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
-}
-
-local TerminalStatusline = {
-
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } })
- end,
-
- --hl = { bg = colors.red },
-
- -- Quickly add a condition to the ViMode to only show it when buffer is active!
- --{ condition = conditions.is_active, ViMode, Space },
- { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- { LeftSpace, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { FileType, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { RightSpace, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- { Ruler, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- --FileType,
- --Space,
- --TerminalName,
- --Align,
-}
-
-local StatusLine = {
-
- --hl = function()
- -- if conditions.is_active() then
- -- return "StatusLine"
- -- else
- -- return "StatusLineNC"
- -- end
- --end,
- static = {
- mode_colors = {
- n = colors.blue,
- i = colors.green,
- v = colors.purple,
- V = colors.purple,
- ["\22"] = colors.purple,
- c = colors.orange,
- s = colors.purple,
- S = colors.purple,
- ["\19"] = colors.purple,
- R = colors.red,
- r = colors.red,
- ["!"] = colors.orange,
- t = colors.orange,
- },
- mode_color = function(self)
- local mode = conditions.is_active() and vim.fn.mode() or "n"
- return self.mode_colors[mode]
- end,
- hl = function(self)
- local color = self:mode_color() -- here!
- return { bg = color }
- end,
- },
- fallthrough = false,
-
- SpecialStatusline,
- TerminalStatusline,
- InactiveStatusline,
- DefaultStatusline,
-}
-
-
---
---- WinBar
---
-local WinbarFileNameBlock = {
- -- let's first set up some attributes needed by this component and it's children
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(0)
- end,
- hl = { bg = colors.bg },
-}
-
---local WinbarFileName = {
--- provider = function(self)
--- -- self.filename will be defined later, just keep looking at the example!
--- local filename = self.filename
--- filename = filename == "" and "No Name" or vim.fn.fnamemodify(filename, ":t")
--- return filename
--- end,
--- hl = function()
--- return { fg = colors.gray, italic = true }
--- end,
---}
-local WinbarFileName = {
- provider = function(self)
- -- first, trim the pattern relative to the current directory. For other
- -- options, see :h filename-modifers
- local filename = vim.fn.fnamemodify(self.filename, ":.")
- if filename == "" then
- return "No Name"
- end
- -- now, if the filename would occupy more than 1/4th of the available
- -- space, we trim the file path to its initials
- -- See Flexible Components section below for dynamic truncation
- if not conditions.width_percent_below(#filename, 0.25) then
- filename = vim.fn.pathshorten(filename)
- end
- return filename
- end,
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = false, bg = colors.bg },
- hl = { fg = colors.gray, bold = false, bg = colors.bg },
-}
-
-WinbarFileNameBlock = utils.insert(
- WinbarFileNameBlock,
- FileIcon,
- utils.insert(WinbarFileName), -- a new table where FileName is a child of FileNameModifier
- unpack(FileFlags), -- A small optimisation, since their parent does nothing
- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
-)
-
-vim.api.nvim_create_autocmd("User", {
- pattern = "HeirlineInitWinbar",
- callback = function(args)
- local buf = args.buf
- local buftype = vim.tbl_contains({ "prompt", "nofile", "help", "quickfix" }, vim.bo[buf].buftype)
- local filetype = vim.tbl_contains({ "gitcommit", "fugitive" }, vim.bo[buf].filetype)
- if buftype or filetype then
- vim.opt_local.winbar = nil
- end
- end,
-})
-
-On_click = {
- -- get the window id of the window in which the component was evaluated
- minwid = function()
- return vim.api.nvim_get_current_win()
- end,
- callback = function(_, minwid)
- -- winid is the window id of the window the component was clicked from
- local winid = minwid
- -- do something with the window id, e.g.:
- local buf = vim.api.nvim_win_get_buf(winid)
- -- ...
- end,
-}
-
-local CloseButton = {
- condition = function(self)
- return not vim.bo.modified
- end,
- -- a small performance improvement:
- -- re register the component callback only on layout/buffer changes.
- update = { "WinNew", "WinClosed", "BufEnter" },
- { provider = " " },
- {
- provider = "",
- hl = { fg = "gray" },
- On_click = {
- minwid = function()
- return vim.api.nvim_get_current_win()
- end,
- callback = function(_, minwid)
- vim.api.nvim_win_close(minwid, true)
- end,
- name = "heirline_winbar_close_button",
- },
- },
-}
-
-local Center = {
- fallthrough = false,
- { -- Hide the winbar for special buffers
- condition = function()
- return conditions.buffer_matches({
- buftype = { "nofile", "prompt", "help", "quickfix" },
- filetype = { "^git.*", "fugitive" },
- })
- end,
- init = function()
- vim.opt_local.winbar = nil
- end,
- },
- { -- A special winbar for terminals
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } })
- end,
- FileType,
- Space,
- --TerminalName,
- },
- { -- An inactive winbar for regular files
- condition = function()
- return not conditions.is_active()
- end,
- --utils.surround({ "", "" }, colors.nobg, { FileIcon, { WinbarFileName, hl = { fg = colors.gray } }, FileFlags } ),
- utils.surround({ "", "" }, colors.nobg, { WinbarFileNameBlock } ),
- },
- -- A winbar for regular files
- utils.surround({ "", "" }, colors.nobg, { FileNameBlock }),
-}
-
---local WinBar = { Align, Center, Align }
-local WinBar = { Space, Center }
-
-
--- TabLine
-local TablineBufnr = {
- provider = function(self)
- return tostring(self.bufnr) .. "."
- end,
- hl = { fg = colors.white, bold = false },
-}
-
--- we redefine the filename component, as we probably only want the tail and not the relative path
-local TablineFileName = {
- provider = function(self)
- -- self.filename will be defined later, just keep looking at the example!
- local filename = self.filename
- filename = filename == "" and "No Name" or vim.fn.fnamemodify(filename, ":t")
- return filename
- end,
- hl = function(self)
- return { fg = colors.white, bold = self.is_active or self.is_visible, italic = true }
- end,
-}
-
-local TablineFileFlags = {
- {
- provider = function(self)
- if vim.bo[self.bufnr].modified then
- return " [+] "
- end
- end,
- hl = { fg = colors.green },
- },
- {
- provider = function(self)
- if not vim.bo[self.bufnr].modifiable or vim.bo[self.bufnr].readonly then
- return "  "
- end
- end,
- hl = { fg = "orange" },
- },
-}
-
-local TablineFileIcon = {
- init = function(self)
- local filename = self.filename
- local extension = vim.fn.fnamemodify(filename, ":e")
- self.icon, self.icon_color =
- require("nvim-web-devicons").get_icon_color(filename, extension, { default = true })
- end,
- provider = function(self)
- return self.icon and (" " .. self.icon .. " ")
- end,
- hl = function(self)
- return { fg = self.icon_color }
- end,
-}
-
--- Here the filename block finally comes together
-local TablineFileNameBlock = {
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(self.bufnr)
- end,
- hl = function(self)
- if self.is_active then
- return "TabLineSel"
- -- why not?
- --elseif not vim.api.nvim_buf_is_loaded(self.bufnr) then
- --return { fg = "gray", bg = colors.bg }
- else
- return "TabLineFill"
- end
- end,
- on_click = {
- callback = function(_, minwid, _, button)
- if button == "m" then -- close on mouse middle click
- vim.api.nvim_buf_delete(minwid, { force = false })
- else
- vim.api.nvim_win_set_buf(0, minwid)
- end
- end,
- minwid = function(self)
- return self.bufnr
- end,
- name = "heirline_tabline_buffer_callback",
- },
- TablineBufnr,
- TablineFileIcon,
- TablineFileName,
- TablineFileFlags,
-}
-
--- a nice "x" button to close the buffer
-local TablineCloseButton = {
- condition = function(self)
- return not vim.api.nvim_buf_get_option(self.bufnr, "modified")
- end,
- { provider = " " },
- {
- provider = " ",
- --hl = { fg = "red", bg = colors.bg },
- hl = { fg = colors.red },
- on_click = {
- callback = function(_, minwid)
- vim.api.nvim_buf_delete(minwid, { force = false })
- end,
- minwid = function(self)
- return self.bufnr
- end,
- name = "heirline_tabline_close_buffer_callback",
- },
- },
-}
-
--- The final touch!
-local TablineBufferBlock = utils.surround({ "", "" }, function(self)
- --local TablineBufferBlock = utils.surround({ "█", "█" }, function(self)
- if self.is_active then
- return utils.get_highlight("TabLineSel").bg
- else
- return utils.get_highlight("TabLineFill").bg
- end
-end, { Tab, TablineFileNameBlock, TablineCloseButton })
-
-local BufferLine = utils.make_buflist(
- TablineBufferBlock,
- { provider = "􀰎 ", hl = { fg = colors.white } }, -- left truncation, optional (defaults to "<")
- { provider = " 􀰓", hl = { fg = colors.white } } -- right trunctation, also optional (defaults to ...... yep, ">")
- -- by the way, open a lot of buffers and try clicking them ;)
-)
--- TabList
-local Tabpage = {
- provider = function(self)
- return "%" .. self.tabnr .. "T " .. self.tabnr .. " %T"
- end,
- hl = function(self)
- if not self.is_active then
- return "TabLineFill"
- else
- return "TabLineSel"
- end
- end,
-}
-
-local TabpageClose = {
- provider = "%999X  %X",
- --hl = "TabLine",
- hl = { fg = colors.red, bg = colors.bg },
-}
-
-local TabPages = {
- -- only show this component if there's 2 or more tabpages
- condition = function()
- return #vim.api.nvim_list_tabpages() >= 2
- end,
- {
- provider = "%=",
- },
- utils.make_tablist(Tabpage),
- TabpageClose,
-}
-
--- TabLineOffset
-local TabLineOffset = {
- condition = function(self)
- local win = vim.api.nvim_tabpage_list_wins(0)[1]
- local bufnr = vim.api.nvim_win_get_buf(win)
- self.winid = win
-
- if vim.api.nvim_buf_get_option(bufnr, "filetype") == "NvimTree" then
- self.title = "NvimTree"
- return true
- end
- end,
-
- provider = function(self)
- local title = self.title
- local width = vim.api.nvim_win_get_width(self.winid)
- local pad = math.ceil((width - #title) / 2)
- return string.rep(" ", pad) .. title .. string.rep(" ", pad)
- end,
-
- hl = function(self)
- if vim.api.nvim_get_current_win() == self.winid then
- return "TablineSel"
- else
- return "TablineFill"
- end
- end,
-}
-
-local TabLine = {
- TabLineOffset,
- BufferLine,
- TabPages,
-}
-
-require("heirline").setup(StatusLine, WinBar, TabLine)
-
--- Yep, with heirline we're driving manual!
-vim.cmd([[au FileType * if index(['wipe', 'delete', 'unload'], &bufhidden) >= 0 | set nobuflisted | endif]])
-
-local function get_bufs()
- return vim.tbl_filter(function(bufnr)
- return vim.api.nvim_buf_is_loaded(bufnr) and vim.bo[bufnr].buflisted
- end, vim.api.nvim_list_bufs())
-end
-
-local function goto_buf(index)
- local bufs = get_bufs()
- if index > #bufs then
- index = #bufs
- end
- vim.api.nvim_win_set_buf(0, bufs[index])
-end
-
-local function addKey(key, index)
- vim.keymap.set("", "<A-" .. key .. ">", function()
- goto_buf(index)
- end, { noremap = true, silent = true })
-end
-
-for i = 1, 9 do
- addKey(i, i)
-end
-addKey("0", 10)
diff --git a/lua/plugins/heirline.lua-202210111610.backup b/lua/plugins/heirline.lua-202210111610.backup
deleted file mode 100644
index e1a54e3..0000000
--- a/lua/plugins/heirline.lua-202210111610.backup
+++ /dev/null
@@ -1,1452 +0,0 @@
-local conditions = require("heirline.conditions")
-local utils = require("heirline.utils")
-
-local colors = {
- --bg = "#23232e",
- bg = nil,
- nobg = nil,
- bright_fg = "#ffffff",
- bright_bg = "#000000",
- white = "#f8f8f2",
- --darkgray = "#1c1c29",
- --darkgray = "#2d2b3a",
- --darkgray = "#181818",
- darkgray = "#23232e",
- --darkgray = "#404040",
- --gray = "#333842",
- --gray = "#393547",
- --gray = "#333842",
- --lightgray = "#888888",
- gray = "#2d2b3a",
- lightgray = "#d6d3ea",
- pink = "#f92672",
- green = "#50fa7b",
- blue = "#39BAE6",
- yellow = "#f1fa8c",
- orange = "#ffb86c",
- ---purple = "#bd93f9",
- ---purple = "#be2ed6",
- purple = "#BF40BF",
- --purple = "#5D3FD3",
- --purple = "#DA70D6",
- violet = "#7F00FF",
- red = "#ff5555",
- cyan = "#66d9eC",
- diag = {
- warn = utils.get_highlight("DiagnosticSignWarn").fg,
- error = utils.get_highlight("DiagnosticSignError").fg,
- hint = utils.get_highlight("DiagnosticSignHint").fg,
- info = utils.get_highlight("DiagnosticSignInfo").fg,
- },
- git = {
- del = "#e95678",
- add = "#a6e22e",
- change = "#ae81ff",
- },
-}
-
-require("heirline").load_colors(colors)
-
-local ViMode = {
- init = function(self)
- self.mode = vim.fn.mode(1)
- if not self.once then
- vim.cmd("au ModeChanged *:*o redrawstatus")
- end
- self.once = true
- end,
- static = {
- mode_names = {
- n = "NORMAL ",
- no = "N·OPERATOR PENDING ",
- nov = "N?",
- noV = "N?",
- ["no\22"] = "N? ",
- niI = "Ni",
- niR = "Nr",
- niV = "Nv",
- nt = "Nt",
- v = "VISUAL ",
- vs = "Vs",
- V = "V·LINE ",
- ["\22"] = "V·BLOCK ",
- ["\22s"] = "V·BLOCK ",
- s = "SELECT ",
- S = "S·LINE ",
- ["\19"] = "S·BLOCK ",
- i = "INSERT ",
- ix = "insert x ",
- ic = "insert c ",
- R = "REPLACE ",
- Rc = "Rc",
- Rx = "Rx",
- Rv = "V·REPLACE ",
- Rvc = "Rv",
- Rvx = "Rv",
- c = "COMMAND ",
- cv = "VIM EX ",
- --ce = "EX ",
- r = "PROMPT ",
- rm = "MORE ",
- ["r?"] = "CONFIRM ",
- ["!"] = "SHELL ",
- t = "TERMINAL ",
- },
- },
- provider = function(self)
- return " %2(" .. self.mode_names[self.mode] .. "%)"
- end,
- hl = function(self)
- local color = self:mode_color()
- return { fg = color, bold = true }
- end,
- update = {
- "ModeChanged",
- },
-}
-
---
---
---
--- 
---凜兩
--- LSP
-
---local LSPActive = {
--- condition = conditions.lsp_attached,
--- update = {'LspAttach', 'LspDetach'},
---
--- -- You can keep it simple,
--- -- provider = " [LSP]",
---
--- -- Or complicate things a bit and get the servers names
--- provider = function()
--- local names = {}
--- for i, server in pairs(vim.lsp.buf_get_clients(0)) do
--- table.insert(names, server.name)
--- end
--- return " [" .. table.concat(names, " ") .. "]"
--- end,
--- hl = { fg = "green", bold = true },
--- on_click = {
--- callback = function()
--- vim.defer_fn(function()
--- vim.cmd("LspInfo")
--- end, 100)
--- end,
--- name = "heirline_LSP",
--- },
---}
-
---local LSPActive = {
--- condition = conditions.lsp_attached,
--- update = { "LspAttach", "LspDetach" },
---
--- -- You can keep it simple,
--- -- provider = " [LSP]",
---
--- -- Or complicate things a bit and get the servers names
--- provider = function()
--- local names = {}
--- for i, server in pairs(vim.lsp.buf_get_clients(0)) do
--- table.insert(names, server.name)
--- end
--- return " [" .. table.concat(names, " ") .. "]"
--- end,
--- hl = { fg = "green", bold = true },
---}
-
---local LSPActive = {
--- condition = conditions.lsp_attached,
---
--- provider = function()
--- local names = vim.tbl_values(vim.tbl_map(function(cl)
--- return cl.name
--- end, vim.lsp.buf_get_clients(0)))
---
--- return "LSP " .. table.concat(names, " ") .. ""
--- end,
--- hl = { fg = colors.bg },
---}
-local LSPActive = {
- condition = conditions.lsp_attached,
- update = { "LspAttach", "LspDetach" },
-
- -- You can keep it simple,
- -- provider = " [LSP]",
-
- -- Or complicate things a bit and get the servers names
- provider = function()
- local buf_clients = vim.lsp.buf_get_clients()
- local buf_ft = vim.bo.filetype
- local buf_client_names = {}
-
- -- add client
- for _, client in pairs(buf_clients) do
- if client.name ~= "null-ls" then
- table.insert(buf_client_names, client.name)
- end
- end
- return "⚙️ " .. table.concat(buf_client_names, "")
- --return table.concat(buf_client_names, " ")
- --return "⚙️﬉ " .. table.concat(buf_client_names, ", ") .. " "
- --return " " .. table.concat(names, " ") .. " "
- end,
- hl = { fg = colors.lightgray, bold = false },
-}
---local LSPActive = {
--- function(msg)
--- msg = msg or "LS Inactive"
--- local buf_clients = vim.lsp.buf_get_clients()
--- if next(buf_clients) == nil then
--- if type(msg) == "boolean" or #msg == 0 then
--- return "LS Inactive"
--- end
--- return msg
--- end
---
--- local buf_ft = vim.bo.filetype
--- local buf_client_names = {}
---
--- -- add client
--- for _, client in pairs(buf_clients) do
--- if client.name ~= "null-ls" then
--- table.insert(buf_client_names, client.name)
--- end
--- end
---
--- -- add formatter
--- local formatters = require("user.lsp.null-ls.formatters")
--- local supported_formatters = formatters.list_registered(buf_ft)
--- vim.list_extend(buf_client_names, supported_formatters)
---
--- -- add linter
--- local linters = require("user.lsp.null-ls.linters")
--- local supported_linters = linters.list_registered(buf_ft)
--- vim.list_extend(buf_client_names, supported_linters)
---
--- return table.concat(buf_client_names, " ")
--- -- return "[" .. table.concat(buf_client_names, ", ") .. "]"
--- end,
--- hl = { fg = colors.bg },
---}
--- lsp status
--- I personally use it only to display progress messages!
--- See lsp-status/README.md for configuration options.
-
--- Note: check "j-hui/fidget.nvim" for a nice statusline-free alternative.
-local LSPMessages = {
- provider = require("lsp-status").status,
- hl = { fg = "gray" },
-}
-
--- Nvim Navic
---local Navic = {
--- condition = require("nvim-navic").is_available,
--- provider = require("nvim-navic").get_location,
---}
---local Navic = utils.make_flexible_component(3, Navic, { provider = "" })
-
--- Full nerd (with icon colors)!
-local Navic = {
- condition = require("nvim-navic").is_available,
- static = {
- -- create a type highlight map
- type_hl = {
- File = "Directory",
- Module = "Include",
- Namespace = "TSNamespace",
- Package = "Include",
- Class = "Struct",
- Method = "Method",
- Property = "TSProperty",
- Field = "TSField",
- Constructor = "TSConstructor ",
- Enum = "TSField",
- Interface = "Type",
- Function = "Function",
- Variable = "TSVariable",
- Constant = "Constant",
- String = "String",
- Number = "Number",
- Boolean = "Boolean",
- Array = "TSField",
- Object = "Type",
- Key = "TSKeyword",
- Null = "Comment",
- EnumMember = "TSField",
- Struct = "Struct",
- Event = "Keyword",
- Operator = "Operator",
- TypeParameter = "Type",
- },
- },
- init = function(self)
- local data = require("nvim-navic").get_data() or {}
- local children = {}
- -- create a child for each level
- for i, d in ipairs(data) do
- local child = {
- {
- provider = d.icon,
- hl = self.type_hl[d.type],
- },
- {
- provider = d.name,
- -- highlight icon only or location name as well
- -- hl = self.type_hl[d.type],
- },
- }
- -- add a separator only if needed
- if #data > 1 and i < #data then
- table.insert(child, {
- provider = " > ",
- hl = { fg = "bright_fg" },
- })
- end
- table.insert(children, child)
- end
- -- instantiate the new child, overwriting the previous one
- self[1] = self:new(children, 1)
- end,
- hl = { fg = "gray" },
-}
-
--- Diagnostics
-local Diagnostics = {
-
- condition = conditions.has_diagnostics,
-
- static = {
- error_icon = vim.fn.sign_getdefined("DiagnosticSignError")[1].text,
- warn_icon = vim.fn.sign_getdefined("DiagnosticSignWarn")[1].text,
- info_icon = vim.fn.sign_getdefined("DiagnosticSignInfo")[1].text,
- hint_icon = vim.fn.sign_getdefined("DiagnosticSignHint")[1].text,
- },
-
- init = function(self)
- self.errors = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.ERROR })
- self.warnings = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.WARN })
- self.hints = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.HINT })
- self.info = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.INFO })
- end,
-
- update = { "DiagnosticChanged", "BufEnter" },
-
- {
- provider = function(self)
- -- 0 is just another output, we can decide to print it or not!
- return self.errors > 0 and (self.error_icon .. self.errors .. " ")
- end,
- hl = { fg = colors.diag.error, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.warnings > 0 and (self.warn_icon .. self.warnings .. " ")
- end,
- hl = { fg = colors.diag.warn, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.info > 0 and (self.info_icon .. self.info .. " ")
- end,
- hl = { fg = colors.diag.info, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.hints > 0 and (self.hint_icon .. self.hints)
- end,
- hl = { fg = colors.diag.hint, bg = colors.bg },
- },
- --{
- -- provider = "]",
- --},
- on_click = {
- callback = function()
- require("trouble").toggle({ mode = "document_diagnostics" })
- -- or
- -- vim.diagnostic.setqflist()
- end,
- name = "heirline_diagnostics",
- },
-}
-
--- Git
--- For the ones who're not (too) afraid of changes! Uses gitsigns.
-local Git = {
- condition = conditions.is_git_repo,
-
- init = function(self)
- self.status_dict = vim.b.gitsigns_status_dict
- self.has_changes = self.status_dict.added ~= 0 or self.status_dict.removed ~= 0 or self.status_dict.changed ~= 0
- end,
- --hl = { fg = "orange" },
- hl = { fg = colors.orange, bg = colors.bg },
- { -- git branch name
- provider = function(self)
- return " " .. self.status_dict.head
- end,
- --hl = { bold = true },
- hl = { bold = true, bg = colors.bg },
- },
- -- You could handle delimiters, icons and counts similar to Diagnostics
- {
- condition = function(self)
- return self.has_changes
- end,
- --provider = "("
- provider = " ",
- },
- {
- provider = function(self)
- local count = self.status_dict.added or 0
- --return count > 0 and ("+" .. count)
- return count > 0 and ("  " .. count)
- end,
- --hl = { fg = "git_add" },
- hl = { fg = colors.git.add, bg = colors.bg },
- },
- {
- provider = function(self)
- local count = self.status_dict.removed or 0
- --return count > 0 and ("-" .. count)
- return count > 0 and ("  " .. count)
- end,
- --hl = { fg = "git_del" },
- hl = { fg = colors.git.del, bg = colors.bg },
- },
- {
- provider = function(self)
- local count = self.status_dict.changed or 0
- --return count > 0 and ("~" .. count)
- return count > 0 and ("  " .. count)
- end,
- --hl = { fg = "git_change" },
- hl = { fg = colors.git.change, bg = colors.bg },
- },
- --{
- -- condition = function(self)
- -- return self.has_changes
- -- end,
- -- provider = ")",
- --},
- on_click = {
- callback = function()
- -- If you want to use Fugitive:
- -- vim.cmd("G")
-
- -- If you prefer Lazygit
- -- use vim.defer_fn() if the callback requires
- -- opening of a floating window
- -- (this also applies to telescope)
- vim.defer_fn(function()
- vim.cmd("Lazygit")
- end, 100)
- end,
- name = "heirline_git",
- },
-}
-
--- Debugger
--- Display informations from nvim-dap!
-local DAPMessages = {
- -- display the dap messages only on the debugged file
- condition = function()
- local session = require("dap").session()
- if session then
- local filename = vim.api.nvim_buf_get_name(0)
- if session.config then
- local progname = session.config.program
- return filename == progname
- end
- end
- return false
- end,
- provider = function()
- return " " .. require("dap").status()
- end,
- hl = { fg = utils.get_highlight("Debug").fg },
- -- Debugger on_click: step-over, step-into, next, previous, stop buttons
- -- coming soon!
-}
-
--- Tests
--- This requires the great ultest.
---local UltTest = {
--- condition = function()
--- return vim .api.nvim_call_function("ultest#is_test_file", {}) ~= 0
--- end,
--- static = {
--- passed_icon = vim.fn.sign_getdefined("test_pass")[1].text,
--- failed_icon = vim.fn.sign_getdefined("test_fail")[1].text,
--- passed_hl = { fg = utils.get_highlight("UltestPass").fg },
--- failed_hl = { fg = utils.get_highlight("UltestFail").fg },
--- },
--- init = function(self)
--- self.status = vim.api.nvim_call_function("ultest#status", {})
--- end,
---
--- -- again, if you'd like icons and numbers to be colored differently,
--- -- just split the component in two
--- {
--- provider = function(self)
--- return self.passed_icon .. self.status.passed .. " "
--- end,
--- hl = function(self)
--- return self.passed_hl
--- end,
--- },
--- {
--- provider = function(self)
--- return self.failed_icon .. self.status.failed .. " "
--- end,
--- hl = function(self)
--- return self.failed_hl
--- end,
--- },
--- {
--- provider = function(self)
--- return "of " .. self.status.tests - 1
--- end,
--- },
---}
-
--- FileName and Friends
-
---local Align = { provider = "%=" }
-local Align = { provider = "%=", hl = { bg = colors.bg } }
-local Space = { provider = " ", hl = { bg = colors.bg } }
-local Tab = { provider = " " }
-local Fill = { provider = "%=", hl = { bg = colors.nobg } }
-local LeftSep = { provider = "", hl = { fg = colors.bg } }
-local RightSep = { provider = "", hl = { fg = colors.bg } }
-
-local FileNameBlock = {
- -- let's first set up some attributes needed by this component and it's children
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(0)
- end,
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
- hl = { bg = colors.bg },
-}
--- We can now define some children separately and add them later
---
-
-local FileIcon = {
- init = function(self)
- local filename = self.filename
- local extension = vim.fn.fnamemodify(filename, ":e")
- self.icon, self.icon_color =
- require("nvim-web-devicons").get_icon_color(filename, extension, { default = true })
- end,
- provider = function(self)
- return self.icon and (self.icon .. " ")
- end,
- hl = function(self)
- return { fg = self.icon_color, bg = colors.bg }
- end,
-}
-
-local FileName = {
- provider = function(self)
- -- first, trim the pattern relative to the current directory. For other
- -- options, see :h filename-modifers
- local filename = vim.fn.fnamemodify(self.filename, ":.")
- if filename == "" then
- return "No Name"
- end
- -- now, if the filename would occupy more than 1/4th of the available
- -- space, we trim the file path to its initials
- -- See Flexible Components section below for dynamic truncation
- if not conditions.width_percent_below(#filename, 0.25) then
- filename = vim.fn.pathshorten(filename)
- end
- return filename
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = false, bg = colors.bg },
-}
-
-local FileFlags = {
- {
- provider = function()
- if vim.bo.modified then
- return " [+]"
- --±[+]
- end
- end,
- hl = { fg = colors.green, bg = colors.bg },
- },
- {
- provider = function()
- if not vim.bo.modifiable or vim.bo.readonly then
- return " "
- end
- end,
- --hl = { fg = colors.orange },
- hl = { fg = colors.orange, bold = true, bg = colors.bg },
- },
-}
--- Now, let's say that we want the filename color to change if the buffer is
--- modified. Of course, we could do that directly using the FileName.hl field,
--- but we'll see how easy it is to alter existing components using a "modifier"
--- component
-
-local FileNameModifer = {
- hl = function()
- if vim.bo.modified then
- return { fg = colors.green, bold = false, force = true }
- end
- end,
-}
-
--- FileType, FileEncoding and FileFormat
-local FileType = {
- provider = function()
- return vim.bo.filetype
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = false, bg = colors.bg },
-}
-
---local FileEncoding = {
--- provider = function()
--- local enc = (vim.bo.fenc ~= "" and vim.bo.fenc) or vim.o.enc -- :h 'enc'
--- return enc ~= "utf-8" and enc:upper()
--- end,
--- hl = { bg = colors.bg },
---}
-local FileEncoding = {
- Space,
- provider = function()
- local enc = (vim.bo.fenc ~= "" and vim.bo.fenc) or vim.o.enc -- :h 'enc'
- return enc:lower()
- end,
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
- hl = { bg = colors.bg, bold = false },
-}
-
-local FileFormat = {
- provider = function()
- local fmt = vim.bo.fileformat
- return fmt ~= "unix" and fmt:upper()
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
--- FileSize and FileLastModified
-local FileSize = {
- provider = function()
- -- stackoverflow, compute human readable file size
- local suffix = { "b", "k", "M", "G", "T", "P", "E" }
- local fsize = vim.fn.getfsize(vim.api.nvim_buf_get_name(0))
- fsize = (fsize < 0 and 0) or fsize
- if fsize < 1024 then
- return fsize .. suffix[1]
- end
- local i = math.floor((math.log(fsize) / math.log(1024)))
- return string.format("%.2g%s", fsize / math.pow(1024, i), suffix[i + 1])
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
-local FileLastModified = {
- -- did you know? Vim is full of functions!
- provider = function()
- local ftime = vim.fn.getftime(vim.api.nvim_buf_get_name(0))
- return (ftime > 0) and os.date("%c", ftime)
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
--- Spell
--- Add indicator when spell is set!
-local Spell = {
- condition = function()
- return vim.wo.spell
- end,
- provider = "SPELL ",
- hl = { bold = true, fg = "orange" },
-}
-
--- Cursor position: Ruler and ScrollBar
--- We're getting minimalists here!
-local Ruler = {
- -- We're getting minimalists here!
- -- %l = current line number
- -- %L = number of lines in the buffer
- -- %c = column number
- -- %P = percentage through file of displayed window
- --provider = "%P %(%l/%L%):%c ",
- --provider = "%3(%2l%):%c %P ",
- --provider = "%7(%l/%3L%):%2c%P ",
- --provider = "%3(%P%)",
- --provider = "%7(%l/%3L%):%2c %P",
- --provider = "%7 %p%% Ln %l, Col %c",
- --provider = "%9( %P %2l/%L :%2c %)",
- --provider = "%9(%2l%2( : %c%)/%L %P %)",
- --provider = "%7(%l:%c/%L%) ",
- --provider = "%6(%l:%1.5c/%L%) %P ",
- provider = "%3(%l:%1.5c/%L%) ",
- --provider = "%6(%l:%1.5c/%L%) ",
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true },
-}
-
-local Total = {
- provider = "%L",
- hl = { fg = utils.get_highlight("Statusline").fg, bold = false },
-}
-
-local WordCount = {
- condition = function()
- return conditions.buffer_matches({
- filetype = {
- "markdown",
- "txt",
- "vimwiki",
- },
- })
- end,
- Space,
- {
- provider = function()
- return "W:" .. vim.fn.wordcount().words
- end,
- },
-}
-
-local Position = {
- Space,
- { provider = "%l:%c" },
- hl = { bg = colors.bg },
-}
-
-local Percentage = {
- Space,
- { provider = "%P" },
- hl = { bg = colors.bg },
-}
--- Working Directory
-local WorkDir = {
- provider = function(self)
- self.icon = (vim.fn.haslocaldir(0) == 1 and "l" or "g") .. " " .. " "
- local cwd = vim.fn.getcwd(0)
- self.cwd = vim.fn.fnamemodify(cwd, ":~")
- end,
- hl = { fg = colors.blue, bold = true, bg = colors.bg },
-
- utils.make_flexible_component(1, {
- -- evaluates to the full-lenth path
- provider = function(self)
- local trail = self.cwd:sub(-1) == "/" and "" or "/"
- return self.icon .. self.cwd .. trail .. " "
- end,
- }, {
- -- evaluates to the shortened path
- provider = function(self)
- local cwd = vim.fn.pathshorten(self.cwd)
- local trail = self.cwd:sub(-1) == "/" and "" or "/"
- return self.icon .. cwd .. trail .. " "
- end,
- }, {
- -- evaluates to "", hiding the component
- provider = "",
- }),
-}
-
--- Terminal Name
--- Special handling of the built-in terminal bufname. See conditional statuslines below to see an example of dedicated statusline for terminals!
-
---local TerminalName = {
--- -- we could add a condition to check that buftype == 'terminal'
--- -- or we could do that later (see #conditional-statuslines below)
--- provider = function()
--- local tname, _ = vim.api.nvim_buf_get_name(0):gsub(".*:", "")
--- return " " .. tname
--- end,
--- hl = { bold = true, bg = colors.bg },
---}
-
--- Snippets Indicator
--- This requires ultisnips
---local Snippets = {
--- -- check that we are in insert or select mode
--- condition = function()
--- return vim.tbl_contains({'s', 'i'}, vim.fn.mode())
--- end,
--- provider = function()
--- local forward = (vim.fn["UltiSnips#CanJumpForwards"]() == 1) and "" or ""
--- local backward = (vim.fn["UltiSnips#CanJumpBackwards"]() == 1) and " " or ""
--- return backward .. forward
--- end,
--- hl = { fg = "red", bold = true },
---}
-
--- let's add the children to our FileNameBlock component
---FileNameBlock = utils.insert(
--- FileNameBlock,
---FileEncoding,
---Space,
---FileIcon,
---FileType,
---FileLastModified,
---FileSize,
---FileFormat,
---FileNameModifer,
--- unpack(FileFlags),
--- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
---)
--- let's add the children to our FileNameBlock component
-FileNameBlock = utils.insert(
- FileNameBlock,
- FileIcon,
- utils.insert(FileNameModifer, FileName), -- a new table where FileName is a child of FileNameModifier
- unpack(FileFlags), -- A small optimisation, since their parent does nothing
- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
-)
-
-local FileInfoBlock = {
- -- let's first set up some attributes needed by this component and it's children
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(0)
- end,
-}
-
-FileInfoBlock = utils.insert(
- FileInfoBlock,
- Space,
- FileIcon,
- FileType,
- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
-)
---FileNameBlock = utils.insert(
--- FileNameBlock,
--- FileIcon,
--- utils.insert(FileNameModifer, FileName), -- a new table where FileName is a child of FileNameModifier
--- unpack(FileFlags), -- A small optimisation, since their parent does nothing
--- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
---)
-
-local Surrr = {
- utils.surround({ "", "" }, "red", {
- utils.surround({ "", "" }, "green", utils.surround({ "", "" }, "blue", { provider = "heyya" })),
- { provider = "Normal" },
- }),
-}
---ViMode = utils.surround({ "", "" }, "bright_bg", { ViMode, Snippets })
---ViMode = utils.surround({ "", "" }, function(self)
--- return self:mode_color()
---end, { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } })
-
---ViMode = utils.surround({ "◥", "" }, function(self) return self:mode_color() end, {
--- utils.surround({ "█", "" }, function(self) return self:mode_color() end, utils.surround({ "", "" }, function(self) return self:mode_color() end, { {provider = "normal" }, ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } } )),
--- { provider = "heyya" },
--- })
--- Statusline
---BackgroundStatusline = utils.surround({ "", "" }, function(self)
--- return self:mode_color()
---end, { BackgroundStatusline, hl = { bg = utils.get_highlight("statusline").bg, force = true } })
---
-local Surrr = {
- utils.surround({ "", "" }, "gray", {
- FileInfoBlock,
- hl = { bg = colors.gray },
- utils.surround({ "", "" }, "gray", {
- Percentage,
- utils.surround({ "", "" }, function(self)
- return self:mode_color()
- end, { Space, Ruler, hl = { fg = utils.get_highlight("statusline").bg, force = true } }),
- }),
- }),
-}
-
-ViMode = utils.surround({ "", "" }, function(self)
- return self:mode_color()
-end, { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } })
-
-LeftSpace = utils.surround({ "", " " }, function(self)
- return self:mode_color()
-end, { LeftSpace, hl = { fg = utils.get_highlight("statusline").bg, force = true } })
---
-RightSpace = utils.surround(
- { "", "" },
- colors.gray,
- { RightSpace, hl = { bg = utils.get_highlight("statusline").bg, force = true } }
-)
-
-RightSpace2 = utils.surround(
- { "█", "" },
- colors.darkgray,
- { RightSpace2, hl = { fg = colors.darkgray, force = true } }
-)
-
-RightSpace3 = utils.surround(
- { "█", "" },
- utils.get_highlight("statusline").bg,
- { RightSpace3, hl = { fg = colors.darkgray, force = true } }
-)
---RightSpace = utils.surround({ "", "" }, function(self)
--- return self:mode_color()
---end, { RightSpace, hl = { fg = utils.get_highlight("statusline").bg, force = true } })
-----
---
---Percentage = utils.surround({ "", " " }, "red", { Percentage, hl = { bg = colors.red, force = true } })
---
-
-LSPActive = utils.surround({ "", "" }, function(self)
- return self:mode_color()
-end, { Space, LSPActive, hl = { bg = colors.darkgray, force = true } })
-
-FileInfoBlock = utils.surround({ "", "" }, function(self)
- return self:mode_color()
-end, { FileInfoBlock, Space, hl = { bg = colors.gray, force = true } })
-
-Ruler = utils.surround({ "", "" }, colors.gray, { Space, Ruler, hl = { fg = colors.gray, force = true } })
-
-local align = { provider = "%=" }
-local left = {
- { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- { LeftSpace, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { FileNameBlock, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Git, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- --{ Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- --{ Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
-}
-local middle = {
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Navic, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { DAPMessages, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
-}
-local right = {
- { Diagnostics, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- {
- RightSpace3,
- hl = { bg = colors.darkgray, force = true },
- },
- --{ Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { LSPActive, hl = { bg = colors.darkgray, force = true } },
- --{ FileEncoding, hl = { bg = colors.orange, force = true } },
- { RightSpace2, hl = { bg = colors.gray, force = true } },
- --{ Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { FileInfoBlock, hl = { bg = colors.gray, force = true } },
- --{ Space, hl = { bg = colors.red, force = true } },
- --{ FileType, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- --{ WordCount, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { RightSpace, hl = { fg = colors.gray, force = true } },
- { Ruler, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
-}
-
-local sections = { left, middle, right }
-local DefaultStatusline = { sections }
-
---local NewSpace = { provider = "", hl = { bg = utils.get_highlight("statusline").bg } }
---local statusline = {
---Space,
---Space,
---Git,
---Space,
---Diagnostics,
---Align,
---Navic,
---DAPMessages,
---Align,
---Space,
---FileInfoBlock,
---Space,
---WordCount,
---Ruler,
---LSPActive, Space, LSPMessages, Space, UltTest, Space, FileType, Space, Ruler, Space, ScrollBar
---}
-
-local InactiveStatusline = {
- condition = conditions.is_not_active,
- { FileType, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { FileName, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
-}
-
-local SpecialStatusline = {
- condition = function()
- return conditions.buffer_matches({
- buftype = { "nofile", "prompt", "help", "quickfix" },
- filetype = { "^git.*", "fugitive" },
- })
- end,
-
- --FileType,
- --Space,
- --Align,
- { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- { LeftSpace, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { FileType, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { RightSpace, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- { Ruler, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
-
- --FileType, Space, HelpFileName, Align
-}
-
-local TerminalStatusline = {
-
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } })
- end,
-
- --hl = { bg = colors.red },
-
- -- Quickly add a condition to the ViMode to only show it when buffer is active!
- --{ condition = conditions.is_active, ViMode, Space },
-
- { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- { LeftSpace, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { FileType, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { RightSpace, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- { Ruler, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- --FileType,
- --Space,
- --TerminalName,
- --Align,
-}
-
-local StatusLine = {
-
- --hl = function()
- -- if conditions.is_active() then
- -- return "StatusLine"
- -- else
- -- return "StatusLineNC"
- -- end
- --end,
- static = {
- mode_colors = {
- n = colors.blue,
- i = colors.green,
- v = colors.purple,
- V = colors.purple,
- ["\22"] = colors.purple,
- c = colors.red,
- s = colors.purple,
- S = colors.purple,
- ["\19"] = colors.purple,
- R = colors.orange,
- r = colors.orange,
- ["!"] = colors.red,
- t = colors.red,
- --mode_colors_map = {
- -- n = colors.blue,
- -- i = colors.green,
- -- v = colors.purple,
- -- V = colors.violet,
- -- [""] = colors.red,
- -- c = colors.yellow,
- -- s = colors.orange,
- -- S = colors.orange,
- -- [""] = colors.purple,
- -- R = colors.orange,
- -- r = colors.orange,
- -- ["!"] = colors.red,
- -- t = colors.red,
- },
- --mode_color = function(self)
- -- local mode = conditions.is_active() and vim.fn.mode() or "n"
- -- return self.mode_colors_map[mode]
- --end,
- mode_color = function(self)
- local mode = conditions.is_active() and vim.fn.mode() or "n"
- return self.mode_colors[mode]
- end,
- hl = function(self)
- local color = self:mode_color() -- here!
- return { bg = color }
- end,
- },
- fallthrough = false,
-
- SpecialStatusline,
- TerminalStatusline,
- InactiveStatusline,
- DefaultStatusline,
-}
-
--- WinBar
-
-vim.api.nvim_create_autocmd("User", {
- pattern = "HeirlineInitWinbar",
- callback = function(args)
- local buf = args.buf
- local buftype = vim.tbl_contains({ "prompt", "nofile", "help", "quickfix" }, vim.bo[buf].buftype)
- local filetype = vim.tbl_contains({ "gitcommit", "fugitive" }, vim.bo[buf].filetype)
- if buftype or filetype then
- vim.opt_local.winbar = nil
- end
- end,
-})
-
-on_click = {
- -- get the window id of the window in which the component was evaluated
- minwid = function()
- return vim.api.nvim_get_current_win()
- end,
- callback = function(_, minwid)
- -- winid is the window id of the window the component was clicked from
- local winid = minwid
- -- do something with the window id, e.g.:
- local buf = vim.api.nvim_win_get_buf(winid)
- -- ...
- end,
-}
-
-local CloseButton = {
- condition = function(self)
- return not vim.bo.modified
- end,
- -- a small performance improvement:
- -- re register the component callback only on layout/buffer changes.
- update = { "WinNew", "WinClosed", "BufEnter" },
- { provider = " " },
- {
- provider = "",
- hl = { fg = "gray" },
- on_click = {
- minwid = function()
- return vim.api.nvim_get_current_win()
- end,
- callback = function(_, minwid)
- vim.api.nvim_win_close(minwid, true)
- end,
- name = "heirline_winbar_close_button",
- },
- },
-}
-
-local active_middle_segment = { --{{{
- fallthrough = false,
- { -- Hide the winbar for special buffers
- condition = function()
- return conditions.buffer_matches({
- buftype = { "nofile", "prompt", "help", "quickfix" },
- filetype = { "^git.*", "fugitive" },
- })
- end,
- init = function()
- vim.opt_local.winbar = nil
- end,
- },
- static = {
- mode_colors_map = {
- n = colors.blue,
- i = colors.green,
- v = colors.purple,
- V = colors.purple,
- [""] = colors.purple,
- c = colors.red,
- s = colors.purple,
- S = colors.purple,
- [""] = colors.purple,
- R = colors.orange,
- r = colors.orange,
- ["!"] = colors.red,
- t = colors.red,
- },
- mode_color = function(self)
- local mode = conditions.is_active() and vim.fn.mode() or "n"
- return self.mode_colors_map[mode]
- end,
- provider = "%f",
- hl = function(self)
- local color = self:mode_color() -- here!
- return { fg = color }
- end,
- -- self.filename will be defined later, just keep looking at the example!
- },
- { -- A special winbar for terminals
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } })
- end,
- FileType,
- Space,
- --TerminalName,
- },
- { -- An inactive winbar for regular files
- condition = function()
- return not conditions.is_active()
- end,
- utils.surround({ "", "" }, colors.nobg, { hl = { fg = "gray", force = true }, FileNameBlock }),
- },
-}
-
---local WinBar = {
--- Fill,
--- active_middle_segment,
--- Fill,
---}
-local WinBar = {
- fallthrough = false,
- { -- Hide the winbar for special buffers
- condition = function()
- return conditions.buffer_matches({
- buftype = { "nofile", "prompt", "help", "quickfix" },
- filetype = { "^git.*", "fugitive" },
- })
- end,
- init = function()
- vim.opt_local.winbar = nil
- end,
- },
- { -- A special winbar for terminals
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } })
- end,
- FileType,
- Space,
- --TerminalName,
- },
- { -- An inactive winbar for regular files
- condition = function()
- return not conditions.is_active()
- end,
- utils.surround({ "", "" }, colors.nobg, { hl = { fg = "gray", force = true }, FileNameBlock }),
- },
- -- A winbar for regular files
- utils.surround({ "", "" }, colors.nobg, FileNameBlock),
-}
-
--- TabLine
---
-
-local TablineBufnr = {
- provider = function(self)
- return tostring(self.bufnr) .. "."
- end,
- --hl = "Comment",
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true },
-}
-
--- we redefine the filename component, as we probably only want the tail and not the relative path
-local TablineFileName = {
- provider = function(self)
- -- self.filename will be defined later, just keep looking at the example!
- local filename = self.filename
- filename = filename == "" and "No Name" or vim.fn.fnamemodify(filename, ":t")
- return filename
- end,
- hl = function(self)
- return { bold = self.is_active or self.is_visible, italic = true }
- end,
-}
-
-local TablineFileFlags = {
- {
- provider = function(self)
- if vim.bo[self.bufnr].modified then
- return " [+] "
- end
- end,
- hl = { fg = colors.green },
- },
- --+
- {
- provider = function(self)
- if not vim.bo[self.bufnr].modifiable or vim.bo[self.bufnr].readonly then
- return "  "
- end
- end,
- hl = { fg = "orange" },
- },
-}
-
-local TablineFileIcon = {
- init = function(self)
- local filename = self.filename
- local extension = vim.fn.fnamemodify(filename, ":e")
- self.icon, self.icon_color =
- require("nvim-web-devicons").get_icon_color(filename, extension, { default = true })
- end,
- provider = function(self)
- return self.icon and (" " .. self.icon .. " ")
- end,
- hl = function(self)
- return { fg = self.icon_color }
- end,
-}
-
--- Here the filename block finally comes together
-local TablineFileNameBlock = {
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(self.bufnr)
- end,
- hl = function(self)
- if self.is_active then
- return "TabLineSel"
- -- why not?
- --elseif not vim.api.nvim_buf_is_loaded(self.bufnr) then
- --return { fg = "gray", bg = colors.bg }
- else
- return "TabLineFill"
- end
- end,
- on_click = {
- callback = function(_, minwid, _, button)
- if button == "m" then -- close on mouse middle click
- vim.api.nvim_buf_delete(minwid, { force = false })
- else
- vim.api.nvim_win_set_buf(0, minwid)
- end
- end,
- minwid = function(self)
- return self.bufnr
- end,
- name = "heirline_tabline_buffer_callback",
- },
- TablineBufnr,
- --FileIcon, -- turns out the version defined in #crash-course-part-ii-filename-and-friends can be reutilized as is here!
- TablineFileIcon,
- TablineFileName,
- TablineFileFlags,
-}
-
--- a nice "x" button to close the buffer
-local TablineCloseButton = {
- condition = function(self)
- return not vim.api.nvim_buf_get_option(self.bufnr, "modified")
- end,
- { provider = " " },
- {
- provider = " ",
- --hl = { fg = "red", bg = colors.bg },
- hl = { fg = "red" },
- on_click = {
- callback = function(_, minwid)
- vim.api.nvim_buf_delete(minwid, { force = false })
- end,
- minwid = function(self)
- return self.bufnr
- end,
- name = "heirline_tabline_close_buffer_callback",
- },
- },
-}
-
--- The final touch!
-local TablineBufferBlock = utils.surround({ "", "" }, function(self)
- --local TablineBufferBlock = utils.surround({ "█", "█" }, function(self)
- if self.is_active then
- return utils.get_highlight("TabLineSel").bg
- else
- return utils.get_highlight("TabLineFill").bg
- end
-end, { Tab, TablineFileNameBlock, TablineCloseButton })
-
-local BufferLine = utils.make_buflist(
- TablineBufferBlock,
- --{ provider = "", hl = { fg = "gray" } }, -- left truncation, optional (defaults to "<")
- --{ provider = "", hl = { fg = "gray" } } -- right trunctation, also optional (defaults to ...... yep, ">")
- { provider = "", hl = { fg = "gray" } }, -- left truncation, optional (defaults to "<")
- { provider = "", hl = { fg = "gray" } } -- right trunctation, also optional (defaults to ...... yep, ">")
- -- by the way, open a lot of buffers and try clicking them ;)
-)
-
--- TabList
-local Tabpage = {
- provider = function(self)
- return "%" .. self.tabnr .. "T " .. self.tabnr .. " %T"
- end,
- hl = function(self)
- if not self.is_active then
- return "TabLine"
- else
- return "TabLineSel"
- end
- end,
-}
-
-local TabpageClose = {
- provider = "%999X  %X",
- --hl = "TabLine",
- hl = { fg = colors.red, bg = colors.bg },
-}
-
-local TabPages = {
- -- only show this component if there's 2 or more tabpages
- condition = function()
- return #vim.api.nvim_list_tabpages() >= 2
- end,
- { provider = "%=" },
- utils.make_tablist(Tabpage),
- TabpageClose,
-}
-
--- TabLineOffset
-local TabLineOffset = {
- condition = function(self)
- local win = vim.api.nvim_tabpage_list_wins(0)[1]
- local bufnr = vim.api.nvim_win_get_buf(win)
- self.winid = win
-
- if vim.bo[bufnr].filetype == "NvimTree" then
- self.title = "NvimTree"
- return true
- -- elseif vim.bo[bufnr].filetype == "TagBar" then
- -- ...
- end
- end,
-
- provider = function(self)
- local title = self.title
- local width = vim.api.nvim_win_get_width(self.winid)
- local pad = math.ceil((width - #title) / 2)
- return string.rep(" ", pad) .. title .. string.rep(" ", pad)
- end,
-
- hl = function(self)
- if vim.api.nvim_get_current_win() == self.winid then
- return "TablineSel"
- else
- return "Tabline"
- end
- end,
-}
-
-local TabLine = {
- --hl = { bg = colors.bg },
- fallthrough = false,
- TabLineOffset,
- BufferLine,
- TabPages,
-}
-
-require("heirline").setup(StatusLine, WinBar, TabLine)
---require("heirline").setup(StatusLine, TabLine)
-
--- Yep, with heirline we're driving manual!
-vim.cmd([[au FileType * if index(['wipe', 'delete', 'unload'], &bufhidden) >= 0 | set nobuflisted | endif]])
-
---local function get_bufs()
--- return vim.tbl_filter(function(bufnr)
--- return vim.api.nvim_buf_is_loaded(bufnr) and vim.bo[bufnr].buflisted
--- end, vim.api.nvim_list_bufs())
---end
---
---local function goto_buf(index)
--- local bufs = get_bufs()
--- if index > #bufs then
--- index = #bufs
--- end
--- vim.api.nvim_win_set_buf(0, bufs[index])
---end
---
---local function addKey(key, index)
--- vim.keymap.set("", "<A-" .. key .. ">", function()
--- goto_buf(index)
--- end, { noremap = true, silent = true })
---end
---
---for i = 1, 9 do
--- addKey(i, i)
---end
---addKey("0", 10)
diff --git a/lua/plugins/heirlinenew.lua b/lua/plugins/heirlinenew.lua
deleted file mode 100644
index 64a33b2..0000000
--- a/lua/plugins/heirlinenew.lua
+++ /dev/null
@@ -1,1342 +0,0 @@
-local conditions = require("heirline.conditions")
-local utils = require("heirline.utils")
-
-local colors = {
- --bg = "#23232e",
- bg = nil,
- nobg = nil,
- bright_fg = "#ffffff",
- bright_bg = "#000000",
- white = "#f8f8f2",
- gray = "#23232e",
- pink = "#f92672",
- green = "#50fa7b",
- blue = "#39BAE6",
- yellow = "#f1fa8c",
- orange = "#ffb86c",
- purple = "#bd93f9",
- red = "#ff5555",
- cyan = "#66d9eC",
- diag = {
- warn = utils.get_highlight("DiagnosticSignWarn").fg,
- error = utils.get_highlight("DiagnosticSignError").fg,
- hint = utils.get_highlight("DiagnosticSignHint").fg,
- info = utils.get_highlight("DiagnosticSignInfo").fg,
- },
- git = {
- del = "#e95678",
- add = "#a6e22e",
- change = "#ae81ff",
- },
-}
-
-require("heirline").load_colors(colors)
-
---local function setup_colors()
--- return {
--- bright_bg = utils.get_highlight("Folded").bg,
--- bright_fg = utils.get_highlight("Folded").fg,
--- red = utils.get_highlight("DiagnosticError").fg,
--- dark_red = utils.get_highlight("DiffDelete").bg,
--- green = utils.get_highlight("String").fg,
--- blue = utils.get_highlight("Function").fg,
--- gray = utils.get_highlight("NonText").fg,
--- orange = utils.get_highlight("Constant").fg,
--- purple = utils.get_highlight("Statement").fg,
--- cyan = utils.get_highlight("Special").fg,
--- diag_warn = utils.get_highlight("DiagnosticWarn").fg,
--- diag_error = utils.get_highlight("DiagnosticError").fg,
--- diag_hint = utils.get_highlight("DiagnosticHint").fg,
--- diag_info = utils.get_highlight("DiagnosticInfo").fg,
--- git_del = utils.get_highlight("diffDeleted").fg,
--- git_add = utils.get_highlight("diffAdded").fg,
--- git_change = utils.get_highlight("diffChanged").fg,
--- }
---end
---require('heirline').load_colors(setup_colors())
---
---vim.api.nvim_create_augroup("Heirline", { clear = true })
---vim.api.nvim_create_autocmd("ColorScheme", {
--- callback = function()
--- local colors = setup_colors()
--- utils.on_colorscheme(colors)
--- end,
--- group = "Heirline",
---})
-
-local ViMode = {
- static = {
- mode_names = { -- change the strings if you like it vvvvverbose!
- ["n"] = "NORMAL ",
- ["no"] = "N·OPERATOR PENDING ",
- ["v"] = "VISUAL ",
- ["V"] = "V·LINE ",
- [""] = "V·BLOCK ",
- ["s"] = "SELECT ",
- ["S"] = "S·LINE ",
- [""] = "S·BLOCK ",
- ["i"] = "INSERT ",
- ["R"] = "REPLACE ",
- ["Rv"] = "V·REPLACE ",
- ["c"] = "COMMAND ",
- ["cv"] = "VIM EX ",
- ["ce"] = "EX ",
- ["r"] = "PROMPT ",
- ["rm"] = "MORE ",
- ["r?"] = "CONFIRM ",
- ["!"] = "SHELL ",
- ["t"] = "TERMINAL ",
- },
- },
- provider = function(self)
- return " %2(" .. self.mode_names[vim.fn.mode(1)] .. "%)"
- end,
- hl = function(self)
- local color = self:mode_color() -- here!
- return { bg = color, fg = colors.bg, bold = true }
- end,
-}
-
--- LSP
-
---local LSPActive = {
--- condition = conditions.lsp_attached,
--- update = {'LspAttach', 'LspDetach'},
---
--- -- You can keep it simple,
--- -- provider = " [LSP]",
---
--- -- Or complicate things a bit and get the servers names
--- provider = function()
--- local names = {}
--- for i, server in pairs(vim.lsp.buf_get_clients(0)) do
--- table.insert(names, server.name)
--- end
--- return " [" .. table.concat(names, " ") .. "]"
--- end,
--- hl = { fg = "green", bold = true },
--- on_click = {
--- callback = function()
--- vim.defer_fn(function()
--- vim.cmd("LspInfo")
--- end, 100)
--- end,
--- name = "heirline_LSP",
--- },
---}
-
---local LSPActive = {
--- condition = conditions.lsp_attached,
--- update = { "LspAttach", "LspDetach" },
---
--- -- You can keep it simple,
--- -- provider = " [LSP]",
---
--- -- Or complicate things a bit and get the servers names
--- provider = function()
--- local names = {}
--- for i, server in pairs(vim.lsp.buf_get_clients(0)) do
--- table.insert(names, server.name)
--- end
--- return " [" .. table.concat(names, " ") .. "]"
--- end,
--- hl = { fg = "green", bold = true },
---}
-
-local LSPActive = {
- condition = conditions.lsp_attached,
-
- provider = function()
- local names = vim.tbl_values(vim.tbl_map(function(cl)
- return cl.name
- end, vim.lsp.buf_get_clients(0)))
-
- return "LSP [" .. table.concat(names, " ") .. "]"
- end,
- hl = { fg = colors.green },
-}
--- lsp status
--- I personally use it only to display progress messages!
--- See lsp-status/README.md for configuration options.
-
--- Note: check "j-hui/fidget.nvim" for a nice statusline-free alternative.
-local LSPMessages = {
- provider = require("lsp-status").status,
- hl = { fg = "gray" },
-}
-
--- Nvim Navic
---local Navic = {
--- condition = require("nvim-navic").is_available,
--- provider = require("nvim-navic").get_location,
---}
---local Navic = utils.make_flexible_component(3, Navic, { provider = "" })
-
--- Full nerd (with icon colors)!
-local Navic = {
- condition = require("nvim-navic").is_available,
- static = {
- -- create a type highlight map
- type_hl = {
- File = "Directory",
- Module = "Include",
- Namespace = "TSNamespace",
- Package = "Include",
- Class = "Struct",
- Method = "Method",
- Property = "TSProperty",
- Field = "TSField",
- Constructor = "TSConstructor ",
- Enum = "TSField",
- Interface = "Type",
- Function = "Function",
- Variable = "TSVariable",
- Constant = "Constant",
- String = "String",
- Number = "Number",
- Boolean = "Boolean",
- Array = "TSField",
- Object = "Type",
- Key = "TSKeyword",
- Null = "Comment",
- EnumMember = "TSField",
- Struct = "Struct",
- Event = "Keyword",
- Operator = "Operator",
- TypeParameter = "Type",
- },
- },
- init = function(self)
- local data = require("nvim-navic").get_data() or {}
- local children = {}
- -- create a child for each level
- for i, d in ipairs(data) do
- local child = {
- {
- provider = d.icon,
- hl = self.type_hl[d.type],
- },
- {
- provider = d.name,
- -- highlight icon only or location name as well
- -- hl = self.type_hl[d.type],
- },
- }
- -- add a separator only if needed
- if #data > 1 and i < #data then
- table.insert(child, {
- provider = " > ",
- hl = { fg = "bright_fg" },
- })
- end
- table.insert(children, child)
- end
- -- instantiate the new child, overwriting the previous one
- self[1] = self:new(children, 1)
- end,
- hl = { fg = "gray" },
-}
-
--- Diagnostics
-local Diagnostics = {
-
- condition = conditions.has_diagnostics,
-
- static = {
- error_icon = vim.fn.sign_getdefined("DiagnosticSignError")[1].text,
- warn_icon = vim.fn.sign_getdefined("DiagnosticSignWarn")[1].text,
- info_icon = vim.fn.sign_getdefined("DiagnosticSignInfo")[1].text,
- hint_icon = vim.fn.sign_getdefined("DiagnosticSignHint")[1].text,
- },
-
- init = function(self)
- self.errors = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.ERROR })
- self.warnings = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.WARN })
- self.hints = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.HINT })
- self.info = #vim.diagnostic.get(0, { severity = vim.diagnostic.severity.INFO })
- end,
-
- update = { "DiagnosticChanged", "BufEnter" },
-
- {
- provider = function(self)
- -- 0 is just another output, we can decide to print it or not!
- return self.errors > 0 and (self.error_icon .. self.errors .. " ")
- end,
- hl = { fg = colors.diag.error, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.warnings > 0 and (self.warn_icon .. self.warnings .. " ")
- end,
- hl = { fg = colors.diag.warn, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.info > 0 and (self.info_icon .. self.info .. " ")
- end,
- hl = { fg = colors.diag.info, bg = colors.bg },
- },
- {
- provider = function(self)
- return self.hints > 0 and (self.hint_icon .. self.hints)
- end,
- hl = { fg = colors.diag.hint, bg = colors.bg },
- },
- --{
- -- provider = "]",
- --},
- on_click = {
- callback = function()
- require("trouble").toggle({ mode = "document_diagnostics" })
- -- or
- -- vim.diagnostic.setqflist()
- end,
- name = "heirline_diagnostics",
- },
-}
-
--- Git
--- For the ones who're not (too) afraid of changes! Uses gitsigns.
-local Git = {
- condition = conditions.is_git_repo,
-
- init = function(self)
- self.status_dict = vim.b.gitsigns_status_dict
- self.has_changes = self.status_dict.added ~= 0 or self.status_dict.removed ~= 0 or self.status_dict.changed ~= 0
- end,
- --hl = { fg = "orange" },
- hl = { fg = colors.orange, bg = colors.bg },
- { -- git branch name
- provider = function(self)
- return " " .. self.status_dict.head
- end,
- --hl = { bold = true },
- hl = { bold = true, bg = colors.bg },
- },
- -- You could handle delimiters, icons and counts similar to Diagnostics
- {
- condition = function(self)
- return self.has_changes
- end,
- --provider = "("
- provider = " ",
- },
- {
- provider = function(self)
- local count = self.status_dict.added or 0
- --return count > 0 and ("+" .. count)
- return count > 0 and ("  " .. count)
- end,
- --hl = { fg = "git_add" },
- hl = { fg = colors.git.add, bg = colors.bg },
- },
- {
- provider = function(self)
- local count = self.status_dict.removed or 0
- --return count > 0 and ("-" .. count)
- return count > 0 and ("  " .. count)
- end,
- --hl = { fg = "git_del" },
- hl = { fg = colors.git.del, bg = colors.bg },
- },
- {
- provider = function(self)
- local count = self.status_dict.changed or 0
- --return count > 0 and ("~" .. count)
- return count > 0 and ("  " .. count)
- end,
- --hl = { fg = "git_change" },
- hl = { fg = colors.git.change, bg = colors.bg },
- },
- --{
- -- condition = function(self)
- -- return self.has_changes
- -- end,
- -- provider = ")",
- --},
- on_click = {
- callback = function()
- -- If you want to use Fugitive:
- -- vim.cmd("G")
-
- -- If you prefer Lazygit
- -- use vim.defer_fn() if the callback requires
- -- opening of a floating window
- -- (this also applies to telescope)
- vim.defer_fn(function()
- vim.cmd("Lazygit")
- end, 100)
- end,
- name = "heirline_git",
- },
-}
-
--- Debugger
--- Display informations from nvim-dap!
-local DAPMessages = {
- -- display the dap messages only on the debugged file
- condition = function()
- local session = require("dap").session()
- if session then
- local filename = vim.api.nvim_buf_get_name(0)
- if session.config then
- local progname = session.config.program
- return filename == progname
- end
- end
- return false
- end,
- provider = function()
- return " " .. require("dap").status()
- end,
- hl = { fg = utils.get_highlight("Debug").fg },
- -- Debugger on_click: step-over, step-into, next, previous, stop buttons
- -- coming soon!
-}
-
--- Tests
--- This requires the great ultest.
---local UltTest = {
--- condition = function()
--- return vim .api.nvim_call_function("ultest#is_test_file", {}) ~= 0
--- end,
--- static = {
--- passed_icon = vim.fn.sign_getdefined("test_pass")[1].text,
--- failed_icon = vim.fn.sign_getdefined("test_fail")[1].text,
--- passed_hl = { fg = utils.get_highlight("UltestPass").fg },
--- failed_hl = { fg = utils.get_highlight("UltestFail").fg },
--- },
--- init = function(self)
--- self.status = vim.api.nvim_call_function("ultest#status", {})
--- end,
---
--- -- again, if you'd like icons and numbers to be colored differently,
--- -- just split the component in two
--- {
--- provider = function(self)
--- return self.passed_icon .. self.status.passed .. " "
--- end,
--- hl = function(self)
--- return self.passed_hl
--- end,
--- },
--- {
--- provider = function(self)
--- return self.failed_icon .. self.status.failed .. " "
--- end,
--- hl = function(self)
--- return self.failed_hl
--- end,
--- },
--- {
--- provider = function(self)
--- return "of " .. self.status.tests - 1
--- end,
--- },
---}
-
--- FileName and Friends
-
---local Align = { provider = "%=" }
-local Align = { provider = "%=", hl = { bg = colors.bg } }
-local Space = { provider = " ", hl = { bg = colors.bg } }
-local Tab = { provider = " " }
-local Fill = { provider = "%=", hl = { bg = colors.nobg } }
-local LeftSep = { provider = "", hl = { fg = colors.bg } }
-local RightSep = { provider = "", hl = { fg = colors.bg } }
-
-local FileNameBlock = {
- -- let's first set up some attributes needed by this component and it's children
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(0)
- end,
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
- hl = { bg = colors.bg },
-}
--- We can now define some children separately and add them later
---
-
-local FileIcon = {
- init = function(self)
- local filename = self.filename
- local extension = vim.fn.fnamemodify(filename, ":e")
- self.icon, self.icon_color =
- require("nvim-web-devicons").get_icon_color(filename, extension, { default = true })
- end,
- provider = function(self)
- return self.icon and (self.icon .. " ")
- end,
- hl = function(self)
- return { fg = self.icon_color, bg = colors.bg }
- end,
-}
-
-local FileName = {
- provider = function(self)
- -- first, trim the pattern relative to the current directory. For other
- -- options, see :h filename-modifers
- local filename = vim.fn.fnamemodify(self.filename, ":.")
- if filename == "" then
- return "No Name"
- end
- -- now, if the filename would occupy more than 1/4th of the available
- -- space, we trim the file path to its initials
- -- See Flexible Components section below for dynamic truncation
- if not conditions.width_percent_below(#filename, 0.25) then
- filename = vim.fn.pathshorten(filename)
- end
- return filename
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = false, bg = colors.bg },
-}
-
-local FileFlags = {
- {
- provider = function()
- if vim.bo.modified then
- return " [+]"
- --±[+]
- end
- end,
- hl = { fg = colors.green, bg = colors.bg },
- },
- {
- provider = function()
- if not vim.bo.modifiable or vim.bo.readonly then
- return " "
- end
- end,
- --hl = { fg = colors.orange },
- hl = { fg = colors.orange, bold = true, bg = colors.bg },
- },
-}
--- Now, let's say that we want the filename color to change if the buffer is
--- modified. Of course, we could do that directly using the FileName.hl field,
--- but we'll see how easy it is to alter existing components using a "modifier"
--- component
-
-local FileNameModifer = {
- hl = function()
- if vim.bo.modified then
- return { fg = colors.green, bold = false, force = true }
- end
- end,
-}
-
--- FileType, FileEncoding and FileFormat
-local FileType = {
- provider = function()
- return vim.bo.filetype
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = false, bg = colors.bg },
-}
-
---local FileEncoding = {
--- provider = function()
--- local enc = (vim.bo.fenc ~= "" and vim.bo.fenc) or vim.o.enc -- :h 'enc'
--- return enc ~= "utf-8" and enc:upper()
--- end,
--- hl = { bg = colors.bg },
---}
-local FileEncoding = {
- Space,
- provider = function()
- local enc = (vim.bo.fenc ~= "" and vim.bo.fenc) or vim.o.enc -- :h 'enc'
- return enc:lower()
- end,
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
- hl = { bg = colors.bg, bold = false },
-}
-
-local FileFormat = {
- provider = function()
- local fmt = vim.bo.fileformat
- return fmt ~= "unix" and fmt:upper()
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
--- FileSize and FileLastModified
-local FileSize = {
- provider = function()
- -- stackoverflow, compute human readable file size
- local suffix = { "b", "k", "M", "G", "T", "P", "E" }
- local fsize = vim.fn.getfsize(vim.api.nvim_buf_get_name(0))
- fsize = (fsize < 0 and 0) or fsize
- if fsize < 1024 then
- return fsize .. suffix[1]
- end
- local i = math.floor((math.log(fsize) / math.log(1024)))
- return string.format("%.2g%s", fsize / math.pow(1024, i), suffix[i + 1])
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
-local FileLastModified = {
- -- did you know? Vim is full of functions!
- provider = function()
- local ftime = vim.fn.getftime(vim.api.nvim_buf_get_name(0))
- return (ftime > 0) and os.date("%c", ftime)
- end,
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
-}
-
--- Spell
--- Add indicator when spell is set!
-local Spell = {
- condition = function()
- return vim.wo.spell
- end,
- provider = "SPELL ",
- hl = { bold = true, fg = "orange" },
-}
-
--- Cursor position: Ruler and ScrollBar
--- We're getting minimalists here!
-local Ruler = {
- -- We're getting minimalists here!
- -- %l = current line number
- -- %L = number of lines in the buffer
- -- %c = column number
- -- %P = percentage through file of displayed window
- --provider = "%P %(%l/%L%):%c ",
- --provider = "%3(%2l%):%c %P ",
- --provider = "%7(%l/%3L%):%2c%P ",
- --provider = "%3(%P%)",
- --provider = "%7(%l/%3L%):%2c %P",
- --provider = "%7 %p%% Ln %l, Col %c",
- --provider = "%9( %P %2l/%L :%2c %)",
- --provider = "%9(%2l%2( : %c%)/%L %P %)",
- --provider = "%7(%l:%c/%L%) ",
- --provider = "%6(%l:%1.5c/%L%) %P ",
- provider = "%6(%l:%1.5c/%L%) ",
- hl = { fg = utils.get_highlight("Statusline").fg, bold = false },
-}
-
-local WordCount = {
- condition = function()
- return conditions.buffer_matches({
- filetype = {
- "markdown",
- "txt",
- "vimwiki",
- },
- })
- end,
- Space,
- {
- provider = function()
- return "W:" .. vim.fn.wordcount().words
- end,
- },
-}
-
-local Position = {
- Space,
- { provider = "%l:%c" },
- hl = { bg = colors.bg },
-}
-
-local Percentage = {
- Space,
- { provider = "%P" },
- hl = { bg = colors.bg },
-}
--- Working Directory
-local WorkDir = {
- provider = function(self)
- self.icon = (vim.fn.haslocaldir(0) == 1 and "l" or "g") .. " " .. " "
- local cwd = vim.fn.getcwd(0)
- self.cwd = vim.fn.fnamemodify(cwd, ":~")
- end,
- hl = { fg = colors.blue, bold = true, bg = colors.bg },
-
- utils.make_flexible_component(1, {
- -- evaluates to the full-lenth path
- provider = function(self)
- local trail = self.cwd:sub(-1) == "/" and "" or "/"
- return self.icon .. self.cwd .. trail .. " "
- end,
- }, {
- -- evaluates to the shortened path
- provider = function(self)
- local cwd = vim.fn.pathshorten(self.cwd)
- local trail = self.cwd:sub(-1) == "/" and "" or "/"
- return self.icon .. cwd .. trail .. " "
- end,
- }, {
- -- evaluates to "", hiding the component
- provider = "",
- }),
-}
-
--- Terminal Name
--- Special handling of the built-in terminal bufname. See conditional statuslines below to see an example of dedicated statusline for terminals!
-
-local TerminalName = {
- -- we could add a condition to check that buftype == 'terminal'
- -- or we could do that later (see #conditional-statuslines below)
- provider = function()
- local tname, _ = vim.api.nvim_buf_get_name(0):gsub(".*:", "")
- return " " .. tname
- end,
- hl = { bold = true, bg = colors.bg },
-}
-
--- Snippets Indicator
--- This requires ultisnips
---local Snippets = {
--- -- check that we are in insert or select mode
--- condition = function()
--- return vim.tbl_contains({'s', 'i'}, vim.fn.mode())
--- end,
--- provider = function()
--- local forward = (vim.fn["UltiSnips#CanJumpForwards"]() == 1) and "" or ""
--- local backward = (vim.fn["UltiSnips#CanJumpBackwards"]() == 1) and " " or ""
--- return backward .. forward
--- end,
--- hl = { fg = "red", bold = true },
---}
-
--- let's add the children to our FileNameBlock component
---FileNameBlock = utils.insert(
--- FileNameBlock,
---FileEncoding,
---Space,
---FileIcon,
---FileType,
---FileLastModified,
---FileSize,
---FileFormat,
---FileNameModifer,
--- unpack(FileFlags),
--- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
---)
--- let's add the children to our FileNameBlock component
-FileNameBlock = utils.insert(
- FileNameBlock,
- FileIcon,
- utils.insert(FileNameModifer, FileName), -- a new table where FileName is a child of FileNameModifier
- unpack(FileFlags), -- A small optimisation, since their parent does nothing
- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
-)
-
-local FileInfoBlock = {
- -- let's first set up some attributes needed by this component and it's children
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(0)
- end,
-}
-
-FileInfoBlock = utils.insert(
- FileInfoBlock,
- Space,
- FileIcon,
- FileType,
- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
-)
---FileNameBlock = utils.insert(
--- FileNameBlock,
--- FileIcon,
--- utils.insert(FileNameModifer, FileName), -- a new table where FileName is a child of FileNameModifier
--- unpack(FileFlags), -- A small optimisation, since their parent does nothing
--- { provider = "%<" } -- this means that the statusline is cut here when there's not enough space
---)
-
-local Surrr = {
- utils.surround({ "", "" }, "red", {
- utils.surround({ "", "" }, "green", utils.surround({ "", "" }, "blue", { provider = "heyya" })),
- { provider = "Normal" },
- }),
-}
---ViMode = utils.surround({ "", "" }, "bright_bg", { ViMode, Snippets })
---ViMode = utils.surround({ "", "" }, function(self)
--- return self:mode_color()
---end, { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } })
-
---ViMode = utils.surround({ "◥", "" }, function(self) return self:mode_color() end, {
--- utils.surround({ "█", "" }, function(self) return self:mode_color() end, utils.surround({ "", "" }, function(self) return self:mode_color() end, { {provider = "normal" }, ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } } )),
--- { provider = "heyya" },
--- })
--- Statusline
---BackgroundStatusline = utils.surround({ "", "" }, function(self)
--- return self:mode_color()
---end, { BackgroundStatusline, hl = { bg = utils.get_highlight("statusline").bg, force = true } })
---
-local Surrr = {
- utils.surround({ "", "" }, "gray", {
- FileInfoBlock,
- hl = { bg = colors.gray },
- utils.surround({ "", "" }, "gray", {
- Percentage,
- utils.surround({ "", "" }, function(self)
- return self:mode_color()
- end, { Space, Ruler, hl = { fg = utils.get_highlight("statusline").bg, force = true } }),
- }),
- }),
-}
-
-ViMode = utils.surround({ "", "" }, function(self)
- return self:mode_color()
-end, { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } })
-
-LeftSpace = utils.surround({ "", " " }, function(self)
- return self:mode_color()
-end, { LeftSpace, hl = { fg = utils.get_highlight("statusline").bg, force = true } })
---
-RightSpace = utils.surround(
- { "", "" },
- colors.red,
- { RightSpace, hl = { bg = utils.get_highlight("statusline").bg, force = true } }
-)
-
-RightSpace2 = utils.surround({ "", "" }, colors.orange, { RightSpace2, hl = { bg = colors.red, force = true } })
---RightSpace = utils.surround({ "", "" }, function(self)
--- return self:mode_color()
---end, { RightSpace, hl = { fg = utils.get_highlight("statusline").bg, force = true } })
-----
---
---Percentage = utils.surround({ "", " " }, "red", { Percentage, hl = { bg = colors.red, force = true } })
---
-
-LSPActive = utils.surround({ "", "" }, function(self)
- return self:mode_color()
-end, { Space, LSPActive, hl = { bg = colors.orange, force = true } })
-
-FileInfoBlock = utils.surround({ "", "" }, function(self)
- return self:mode_color()
-end, { FileInfoBlock, Space, hl = { bg = colors.red, force = true } })
-
-Ruler = utils.surround({ "", "" }, colors.red, { Space, Ruler, hl = { fg = colors.red, force = true } })
-
-local align = { provider = "%=" }
-local left = {
- { ViMode, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
- { LeftSpace, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { FileNameBlock, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- --{ Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Git, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- --{ Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
-}
-local middle = {
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Navic, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { DAPMessages, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
-}
-local right = {
- { Align, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { Diagnostics, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- --{ Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { LSPActive, hl = { bg = colors.orange, force = true } },
- --{ FileEncoding, hl = { bg = colors.orange, force = true } },
- { RightSpace2, hl = { fg = colors.orange, bg = colors.red, force = true } },
- --{ Space, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { FileInfoBlock, hl = { bg = colors.red, force = true } },
- --{ Space, hl = { bg = colors.red, force = true } },
- --{ FileType, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- --{ WordCount, hl = { bg = utils.get_highlight("statusline").bg, force = true } },
- { RightSpace, hl = { fg = colors.red, force = true } },
- { Ruler, hl = { fg = utils.get_highlight("statusline").bg, force = true } },
-}
-
-local sections = { left, align, middle, align, right }
-local DefaultStatusline = { sections }
-
---local NewSpace = { provider = "", hl = { bg = utils.get_highlight("statusline").bg } }
---local statusline = {
---Space,
---Space,
---Git,
---Space,
---Diagnostics,
---Align,
---Navic,
---DAPMessages,
---Align,
---Space,
---FileInfoBlock,
---Space,
---WordCount,
---Ruler,
---LSPActive, Space, LSPMessages, Space, UltTest, Space, FileType, Space, Ruler, Space, ScrollBar
---}
-
---local InactiveStatusline = {
--- condition = conditions.is_not_active,
--- FileType,
--- Space,
--- FileName,
--- Align,
---}
-
-local SpecialStatusline = {
- condition = function()
- return conditions.buffer_matches({
- buftype = { "nofile", "prompt", "help", "quickfix" },
- filetype = { "^git.*", "fugitive" },
- })
- end,
-
- FileType,
- Space,
- Align,
- --FileType, Space, HelpFileName, Align
-}
-
-local TerminalStatusline = {
-
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } })
- end,
-
- hl = { bg = "dark_red" },
-
- -- Quickly add a condition to the ViMode to only show it when buffer is active!
- { condition = conditions.is_active, ViMode, Space },
- FileType,
- Space,
- TerminalName,
- Align,
-}
-
-local StatusLine = {
-
- --hl = function()
- -- if conditions.is_active() then
- -- return "StatusLine"
- -- else
- -- return "StatusLineNC"
- -- end
- --end,
- static = {
- mode_colors_map = {
- n = colors.blue,
- i = colors.green,
- v = colors.purple,
- V = colors.purple,
- [""] = colors.purple,
- c = colors.red,
- s = colors.purple,
- S = colors.purple,
- [""] = colors.purple,
- R = colors.orange,
- r = colors.orange,
- ["!"] = colors.red,
- t = colors.red,
- --mode_colors_map = {
- -- n = colors.blue,
- -- i = colors.green,
- -- v = colors.purple,
- -- V = colors.violet,
- -- [""] = colors.red,
- -- c = colors.yellow,
- -- s = colors.orange,
- -- S = colors.orange,
- -- [""] = colors.purple,
- -- R = colors.orange,
- -- r = colors.orange,
- -- ["!"] = colors.red,
- -- t = colors.red,
- },
- mode_color = function(self)
- local mode = conditions.is_active() and vim.fn.mode() or "n"
- return self.mode_colors_map[mode]
- end,
- hl = function(self)
- local color = self:mode_color() -- here!
- return { bg = color }
- end,
- },
- fallthrough = false,
-
- SpecialStatusline,
- TerminalStatusline,
- --InactiveStatusline,
- DefaultStatusline,
-}
-
--- WinBar
-
-vim.api.nvim_create_autocmd("User", {
- pattern = "HeirlineInitWinbar",
- callback = function(args)
- local buf = args.buf
- local buftype = vim.tbl_contains({ "prompt", "nofile", "help", "quickfix" }, vim.bo[buf].buftype)
- local filetype = vim.tbl_contains({ "gitcommit", "fugitive" }, vim.bo[buf].filetype)
- if buftype or filetype then
- vim.opt_local.winbar = nil
- end
- end,
-})
-
-on_click = {
- -- get the window id of the window in which the component was evaluated
- minwid = function()
- return vim.api.nvim_get_current_win()
- end,
- callback = function(_, minwid)
- -- winid is the window id of the window the component was clicked from
- local winid = minwid
- -- do something with the window id, e.g.:
- local buf = vim.api.nvim_win_get_buf(winid)
- -- ...
- end,
-}
-
-local CloseButton = {
- condition = function(self)
- return not vim.bo.modified
- end,
- -- a small performance improvement:
- -- re register the component callback only on layout/buffer changes.
- update = { "WinNew", "WinClosed", "BufEnter" },
- { provider = " " },
- {
- provider = "",
- hl = { fg = "gray" },
- on_click = {
- minwid = function()
- return vim.api.nvim_get_current_win()
- end,
- callback = function(_, minwid)
- vim.api.nvim_win_close(minwid, true)
- end,
- name = "heirline_winbar_close_button",
- },
- },
-}
-
-local active_middle_segment = { --{{{
- fallthrough = false,
- { -- Hide the winbar for special buffers
- condition = function()
- return conditions.buffer_matches({
- buftype = { "nofile", "prompt", "help", "quickfix" },
- filetype = { "^git.*", "fugitive" },
- })
- end,
- init = function()
- vim.opt_local.winbar = nil
- end,
- },
- static = {
- mode_colors_map = {
- n = colors.blue,
- i = colors.green,
- v = colors.purple,
- V = colors.purple,
- [""] = colors.purple,
- c = colors.red,
- s = colors.purple,
- S = colors.purple,
- [""] = colors.purple,
- R = colors.orange,
- r = colors.orange,
- ["!"] = colors.red,
- t = colors.red,
- },
- mode_color = function(self)
- local mode = conditions.is_active() and vim.fn.mode() or "n"
- return self.mode_colors_map[mode]
- end,
- provider = "%f",
- hl = function(self)
- local color = self:mode_color() -- here!
- return { fg = color }
- end,
- -- self.filename will be defined later, just keep looking at the example!
- },
- { -- A special winbar for terminals
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } })
- end,
- utils.surround({ "", "" }, "dark_red", {
- FileType,
- Space,
- TerminalName,
- }),
- },
- { -- An inactive winbar for regular files
- condition = function()
- return not conditions.is_active()
- end,
- utils.surround({ "", "" }, "bright_bg", { hl = { fg = "gray", force = true }, FileNameBlock }),
- },
-}
-
---local WinBar = {
--- Fill,
--- active_middle_segment,
--- Fill,
---}
-local WinBar = {
- fallthrough = false,
- { -- Hide the winbar for special buffers
- condition = function()
- return conditions.buffer_matches({
- buftype = { "nofile", "prompt", "help", "quickfix" },
- filetype = { "^git.*", "fugitive" },
- })
- end,
- init = function()
- vim.opt_local.winbar = nil
- end,
- },
- { -- A special winbar for terminals
- condition = function()
- return conditions.buffer_matches({ buftype = { "terminal" } })
- end,
- utils.surround({ "", "" }, "dark_red", {
- FileType,
- Space,
- TerminalName,
- }),
- },
- { -- An inactive winbar for regular files
- condition = function()
- return not conditions.is_active()
- end,
- utils.surround({ "", "" }, "bright_bg", { hl = { fg = "gray", force = true }, FileNameBlock }),
- },
- -- A winbar for regular files
- utils.surround({ "", "" }, "bright_bg", FileNameBlock),
-}
-
--- TabLine
---
-
-local TablineBufnr = {
- provider = function(self)
- return tostring(self.bufnr) .. "."
- end,
- --hl = "Comment",
- --hl = { fg = utils.get_highlight("Statusline").fg, bold = true, bg = colors.bg },
- hl = { fg = utils.get_highlight("Statusline").fg, bold = true },
-}
-
--- we redefine the filename component, as we probably only want the tail and not the relative path
-local TablineFileName = {
- provider = function(self)
- -- self.filename will be defined later, just keep looking at the example!
- local filename = self.filename
- filename = filename == "" and "No Name" or vim.fn.fnamemodify(filename, ":t")
- return filename
- end,
- hl = function(self)
- return { bold = self.is_active or self.is_visible, italic = true }
- end,
-}
-
-local TablineFileFlags = {
- {
- provider = function(self)
- if vim.bo[self.bufnr].modified then
- return " [+] "
- end
- end,
- hl = { fg = colors.green },
- },
- --+
- {
- provider = function(self)
- if not vim.bo[self.bufnr].modifiable or vim.bo[self.bufnr].readonly then
- return "  "
- end
- end,
- hl = { fg = "orange" },
- },
-}
-
-local TablineFileIcon = {
- init = function(self)
- local filename = self.filename
- local extension = vim.fn.fnamemodify(filename, ":e")
- self.icon, self.icon_color =
- require("nvim-web-devicons").get_icon_color(filename, extension, { default = true })
- end,
- provider = function(self)
- return self.icon and (" " .. self.icon .. " ")
- end,
- hl = function(self)
- return { fg = self.icon_color }
- end,
-}
-
--- Here the filename block finally comes together
-local TablineFileNameBlock = {
- init = function(self)
- self.filename = vim.api.nvim_buf_get_name(self.bufnr)
- end,
- hl = function(self)
- if self.is_active then
- return "TabLineSel"
- -- why not?
- --elseif not vim.api.nvim_buf_is_loaded(self.bufnr) then
- --return { fg = "gray", bg = colors.bg }
- else
- return "TabLineFill"
- end
- end,
- on_click = {
- callback = function(_, minwid, _, button)
- if button == "m" then -- close on mouse middle click
- vim.api.nvim_buf_delete(minwid, { force = false })
- else
- vim.api.nvim_win_set_buf(0, minwid)
- end
- end,
- minwid = function(self)
- return self.bufnr
- end,
- name = "heirline_tabline_buffer_callback",
- },
- TablineBufnr,
- --FileIcon, -- turns out the version defined in #crash-course-part-ii-filename-and-friends can be reutilized as is here!
- TablineFileIcon,
- TablineFileName,
- TablineFileFlags,
-}
-
--- a nice "x" button to close the buffer
-local TablineCloseButton = {
- condition = function(self)
- return not vim.api.nvim_buf_get_option(self.bufnr, "modified")
- end,
- { provider = " " },
- {
- provider = " ",
- --hl = { fg = "red", bg = colors.bg },
- hl = { fg = "red" },
- on_click = {
- callback = function(_, minwid)
- vim.api.nvim_buf_delete(minwid, { force = false })
- end,
- minwid = function(self)
- return self.bufnr
- end,
- name = "heirline_tabline_close_buffer_callback",
- },
- },
-}
-
--- The final touch!
-local TablineBufferBlock = utils.surround({ "", "" }, function(self)
- --local TablineBufferBlock = utils.surround({ "█", "█" }, function(self)
- if self.is_active then
- return utils.get_highlight("TabLineSel").bg
- else
- return utils.get_highlight("TabLineFill").bg
- end
-end, { Tab, TablineFileNameBlock, TablineCloseButton })
-
-local BufferLine = utils.make_buflist(
- TablineBufferBlock,
- --{ provider = "", hl = { fg = "gray" } }, -- left truncation, optional (defaults to "<")
- --{ provider = "", hl = { fg = "gray" } } -- right trunctation, also optional (defaults to ...... yep, ">")
- { provider = "", hl = { fg = "gray" } }, -- left truncation, optional (defaults to "<")
- { provider = "", hl = { fg = "gray" } } -- right trunctation, also optional (defaults to ...... yep, ">")
- -- by the way, open a lot of buffers and try clicking them ;)
-)
-
--- TabList
-local Tabpage = {
- provider = function(self)
- return "%" .. self.tabnr .. "T " .. self.tabnr .. " %T"
- end,
- hl = function(self)
- if not self.is_active then
- return "TabLine"
- else
- return "TabLineSel"
- end
- end,
-}
-
-local TabpageClose = {
- provider = "%999X  %X",
- --hl = "TabLine",
- hl = { fg = colors.red, bg = colors.bg },
-}
-
-local TabPages = {
- -- only show this component if there's 2 or more tabpages
- condition = function()
- return #vim.api.nvim_list_tabpages() >= 2
- end,
- { provider = "%=" },
- utils.make_tablist(Tabpage),
- TabpageClose,
-}
-
--- TabLineOffset
-local TabLineOffset = {
- condition = function(self)
- local win = vim.api.nvim_tabpage_list_wins(0)[1]
- local bufnr = vim.api.nvim_win_get_buf(win)
- self.winid = win
-
- if vim.bo[bufnr].filetype == "NvimTree" then
- self.title = "NvimTree"
- return true
- -- elseif vim.bo[bufnr].filetype == "TagBar" then
- -- ...
- end
- end,
-
- provider = function(self)
- local title = self.title
- local width = vim.api.nvim_win_get_width(self.winid)
- local pad = math.ceil((width - #title) / 2)
- return string.rep(" ", pad) .. title .. string.rep(" ", pad)
- end,
-
- hl = function(self)
- if vim.api.nvim_get_current_win() == self.winid then
- return "TablineSel"
- else
- return "Tabline"
- end
- end,
-}
-
-local TabLine = {
- --hl = { bg = colors.bg },
- fallthrough = false,
- TabLineOffset,
- BufferLine,
- TabPages,
-}
-
-require("heirline").setup(StatusLine, WinBar, TabLine)
---require("heirline").setup(StatusLine, TabLine)
-
--- Yep, with heirline we're driving manual!
-vim.cmd([[au FileType * if index(['wipe', 'delete', 'unload'], &bufhidden) >= 0 | set nobuflisted | endif]])
-
---local function get_bufs()
--- return vim.tbl_filter(function(bufnr)
--- return vim.api.nvim_buf_is_loaded(bufnr) and vim.bo[bufnr].buflisted
--- end, vim.api.nvim_list_bufs())
---end
---
---local function goto_buf(index)
--- local bufs = get_bufs()
--- if index > #bufs then
--- index = #bufs
--- end
--- vim.api.nvim_win_set_buf(0, bufs[index])
---end
---
---local function addKey(key, index)
--- vim.keymap.set("", "<A-" .. key .. ">", function()
--- goto_buf(index)
--- end, { noremap = true, silent = true })
---end
---
---for i = 1, 9 do
--- addKey(i, i)
---end
---addKey("0", 10)
diff --git a/lua/plugins/linecolor.lua b/lua/plugins/linecolor.lua
deleted file mode 100644
index 37550dd..0000000
--- a/lua/plugins/linecolor.lua
+++ /dev/null
@@ -1,112 +0,0 @@
---local M = {}
---M.theme = function()
--- -- I know I could just set bg = nil but I'm leaving this here in case I want custom colors in the future
--- local colors = {
--- nobg = nil,
--- blue = "#87b0f9",
--- mauve = "#cba6f7",
--- red = "#f38ba8",
--- green = "#a6e3a1",
--- peach = "#fab387",
--- white = "#c6d0f5",
--- gray = "#a1a8c9",
--- black = "#1e1e2e",
--- }
--- return {
--- inactive = {
--- a = { fg = colors.blue, bg = colors.nobg, gui = "bold" },
--- b = { fg = colors.white, bg = colors.black },
--- c = { fg = colors.gray, bg = colors.nobg },
--- },
--- visual = {
--- a = { fg = colors.black, bg = colors.mauve, gui = "bold" },
--- b = { fg = colors.mauve, bg = colors.nobg },
--- c = { fg = colors.white, bg = colors.nobg },
--- },
--- replace = {
--- a = { fg = colors.black, bg = colors.red, gui = "bold" },
--- b = { fg = colors.red, bg = colors.nobg },
--- c = { fg = colors.white, bg = colors.nobg },
--- },
--- normal = {
--- a = { fg = colors.black, bg = colors.blue, gui = "bold" },
--- b = { fg = colors.black, bg = colors.green },
--- c = { fg = colors.white, bg = colors.black },
--- },
--- insert = {
--- a = { fg = colors.black, bg = colors.green, gui = "bold" },
--- b = { fg = colors.teal, bg = colors.nobg },
--- c = { fg = colors.white, bg = colors.nobg },
--- },
--- command = {
--- a = { fg = colors.black, bg = colors.peach, gui = "bold" },
--- b = { fg = colors.peach, bg = colors.nobg },
--- c = { fg = colors.white, bg = colors.nobg },
--- },
--- modified = {
--- a = { fg = colors.black, bg = colors.peach, gui = "bold" },
--- b = { fg = colors.peach, bg = colors.peach },
--- c = { fg = colors.white, bg = colors.peach },
--- },
--- }
---end
---return M
-local M = {}
-M.theme = function()
- --local colors = {
- -- darkgray = "#16161d",
- -- gray = "#727169",
- -- innerbg = nil,
- -- outerbg = "#16161D",
- -- normal = "#7e9cd8",
- -- insert = "#98bb6c",
- -- visual = "#ffa066",
- -- replace = "#e46876",
- -- command = "#e6c384",
- --}
- local colors = {
- darkgray = "#16161d",
- gray = "#727169",
- innerbg = nil,
- outerbg = "#16161D",
- normal = "#39BAE6",
- insert = "#AAD94C",
- visual = "#FA8D3F",
- replace = "#F07171",
- command = "#F2AE49",
- }
- return {
- inactive = {
- a = { fg = colors.gray, bg = colors.outerbg, gui = "bold" },
- b = { fg = colors.gray, bg = colors.outerbg },
- c = { fg = colors.gray, bg = colors.innerbg },
- },
- visual = {
- a = { fg = colors.darkgray, bg = colors.visual, gui = "bold" },
- b = { fg = colors.gray, bg = colors.outerbg },
- c = { fg = colors.gray, bg = colors.innerbg },
- },
- replace = {
- a = { fg = colors.darkgray, bg = colors.replace, gui = "bold" },
- b = { fg = colors.gray, bg = colors.outerbg },
- c = { fg = colors.gray, bg = colors.innerbg },
- },
- normal = {
- a = { fg = colors.darkgray, bg = colors.normal, gui = "bold" },
- b = { fg = colors.gray, bg = colors.outerbg },
- c = { fg = colors.gray, bg = colors.innerbg },
- y = { fg = colors.gray, bg = colors.outerbg },
- },
- insert = {
- a = { fg = colors.darkgray, bg = colors.insert, gui = "bold" },
- b = { fg = colors.gray, bg = colors.outerbg },
- c = { fg = colors.gray, bg = colors.innerbg },
- },
- command = {
- a = { fg = colors.darkgray, bg = colors.command, gui = "bold" },
- b = { fg = colors.gray, bg = colors.outerbg },
- c = { fg = colors.gray, bg = colors.innerbg },
- },
- }
-end
-return M
diff --git a/lua/plugins/lsp-22.10.12-21:29-bak-22.10.12-23:45-bak.lua b/lua/plugins/lsp-22.10.12-21:29-bak-22.10.12-23:45-bak.lua
deleted file mode 100644
index dd25d9a..0000000
--- a/lua/plugins/lsp-22.10.12-21:29-bak-22.10.12-23:45-bak.lua
+++ /dev/null
@@ -1,301 +0,0 @@
-local lsp_defaults = {
- flags = {
- debounce_text_changes = 150,
- },
- capabilities = require('cmp_nvim_lsp').update_capabilities(
- vim.lsp.protocol.make_client_capabilities()
- ),
- on_attach = function(client, bufnr)
- vim.api.nvim_exec_autocmds('User', {pattern = 'LspAttached'})
- end
-}
-
-local lspconfig = require('lspconfig')
-
-lspconfig.util.default_config = vim.tbl_deep_extend(
- 'force',
- lspconfig.util.default_config,
- lsp_defaults
-)
-
-lspconfig.sumneko_lua.setup({
- single_file_support = true,
- on_attach = function(client, bufnr)
- print('hello')
- lspconfig.util.default_config.on_attach(client, bufnr)
- end
-})
-
-vim.api.nvim_create_autocmd('User', {
- pattern = 'LspAttached',
- desc = 'LSP actions',
- callback = function()
- local bufmap = function(mode, lhs, rhs)
- local opts = {buffer = true}
- vim.keymap.set(mode, lhs, rhs, opts)
- end
-
- -- Displays hover information about the symbol under the cursor
- bufmap('n', 'K', '<cmd>lua vim.lsp.buf.hover()<cr>')
-
- -- Jump to the definition
- bufmap('n', 'gd', '<cmd>lua vim.lsp.buf.definition()<cr>')
-
- -- Jump to declaration
- bufmap('n', 'gD', '<cmd>lua vim.lsp.buf.declaration()<cr>')
-
- -- Lists all the implementations for the symbol under the cursor
- bufmap('n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<cr>')
-
- -- Jumps to the definition of the type symbol
- bufmap('n', 'go', '<cmd>lua vim.lsp.buf.type_definition()<cr>')
-
- -- Lists all the references
- bufmap('n', 'gr', '<cmd>lua vim.lsp.buf.references()<cr>')
-
- -- Displays a function's signature information
- bufmap('n', '<C-k>', '<cmd>lua vim.lsp.buf.signature_help()<cr>')
-
- -- Renames all references to the symbol under the cursor
- bufmap('n', '<F2>', '<cmd>lua vim.lsp.buf.rename()<cr>')
-
- -- Selects a code action available at the current cursor position
- bufmap('n', '<F4>', '<cmd>lua vim.lsp.buf.code_action()<cr>')
- bufmap('x', '<F4>', '<cmd>lua vim.lsp.buf.range_code_action()<cr>')
-
- -- Show diagnostics in a floating window
- bufmap('n', 'gl', '<cmd>lua vim.diagnostic.open_float()<cr>')
-
- -- Move to the previous diagnostic
- bufmap('n', '[d', '<cmd>lua vim.diagnostic.goto_prev()<cr>')
-
- -- Move to the next diagnostic
- bufmap('n', ']d', '<cmd>lua vim.diagnostic.goto_next()<cr>')
- end
-})
-
---
----Snippets
---
-require('luasnip.loaders.from_vscode').lazy_load()
-
---
---- Autocompletion/nvim-cmp
---
-vim.opt.completeopt = {'menu', 'menuone', 'noselect'} -- Suggested values for completeopt
-local cmp = require('cmp')
-local luasnip = require('luasnip')
-
-local select_opts = {behavior = cmp.SelectBehavior.Select}
-
-cmp.setup({
-
-})
-
-snippet = {
- expand = function(args)
- luasnip.lsp_expand(args.body)
- end
-},
-
-sources = {
- {name = 'path'},
- {name = 'nvim_lsp', keyword_length = 3},
- {name = 'buffer', keyword_length = 3},
- {name = 'luasnip', keyword_length = 2},
-},
-
-window = {
- documentation = cmp.config.window.bordered()
-},
-
-formatting = {
- fields = {'menu', 'abbr', 'kind'}
-},
-
-formatting = {
- fields = {'menu', 'abbr', 'kind'},
- format = function(entry, item)
- local menu_icon = {
- nvim_lsp = 'λ',
- luasnip = '⋗',
- buffer = 'Ω',
- path = '🖫',
- }
-
- item.menu = menu_icon[entry.source.name]
- return item
- end,
-},
-
-mapping = {
- ['<CR>'] = cmp.mapping.confirm({select = true}),
-}
-['<Up>'] = cmp.mapping.select_prev_item(select_opts),
-['<Down>'] = cmp.mapping.select_next_item(select_opts),
-
-['<C-p>'] = cmp.mapping.select_prev_item(select_opts),
-['<C-n>'] = cmp.mapping.select_next_item(select_opts),
-['<C-u>'] = cmp.mapping.scroll_docs(-4),
-['<C-f>'] = cmp.mapping.scroll_docs(4),
-['<C-e>'] = cmp.mapping.abort(),
-['<CR>'] = cmp.mapping.confirm({select = true}),
-['<C-d>'] = cmp.mapping(function(fallback)
- if luasnip.jumpable(1) then
- luasnip.jump(1)
- else
- fallback()
- end
-end, {'i', 's'}),
-['<C-b>'] = cmp.mapping(function(fallback)
- if luasnip.jumpable(-1) then
- luasnip.jump(-1)
- else
- fallback()
- end
-end, {'i', 's'}),
-
-vim.opt.completeopt = {'menu', 'menuone', 'noselect'}
-
-require('luasnip.loaders.from_vscode').lazy_load()
-
-local cmp = require('cmp')
-local luasnip = require('luasnip')
-
-local select_opts = {behavior = cmp.SelectBehavior.Select}
-
-cmp.setup({
- snippet = {
- expand = function(args)
- luasnip.lsp_expand(args.body)
- end
- },
- sources = {
- {name = 'path'},
- {name = 'nvim_lsp', keyword_length = 3},
- {name = 'buffer', keyword_length = 3},
- {name = 'luasnip', keyword_length = 2},
- },
- window = {
- documentation = cmp.config.window.bordered()
- },
- formatting = {
- fields = {'menu', 'abbr', 'kind'},
- format = function(entry, item)
- local menu_icon = {
- nvim_lsp = 'λ',
- luasnip = '⋗',
- buffer = 'Ω',
- path = '🖫',
- }
-
- item.menu = menu_icon[entry.source.name]
- return item
- end,
- },
- mapping = {
- ['<Up>'] = cmp.mapping.select_prev_item(select_opts),
- ['<Down>'] = cmp.mapping.select_next_item(select_opts),
-
- ['<C-p>'] = cmp.mapping.select_prev_item(select_opts),
- ['<C-n>'] = cmp.mapping.select_next_item(select_opts),
-
- ['<C-u>'] = cmp.mapping.scroll_docs(-4),
- ['<C-f>'] = cmp.mapping.scroll_docs(4),
-
- ['<C-e>'] = cmp.mapping.abort(),
- ['<CR>'] = cmp.mapping.confirm({select = true}),
-
- ['<C-d>'] = cmp.mapping(function(fallback)
- if luasnip.jumpable(1) then
- luasnip.jump(1)
- else
- fallback()
- end
- end, {'i', 's'}),
-
- ['<C-b>'] = cmp.mapping(function(fallback)
- if luasnip.jumpable(-1) then
- luasnip.jump(-1)
- else
- fallback()
- end
- end, {'i', 's'}),
-
- ['<Tab>'] = cmp.mapping(function(fallback)
- local col = vim.fn.col('.') - 1
-
- if cmp.visible() then
- cmp.select_next_item(select_opts)
- elseif col == 0 or vim.fn.getline('.'):sub(col, col):match('%s') then
- fallback()
- else
- cmp.complete()
- end
- end, {'i', 's'}),
-
- ['<S-Tab>'] = cmp.mapping(function(fallback)
- if cmp.visible() then
- cmp.select_prev_item(select_opts)
- else
- fallback()
- end
- end, {'i', 's'}),
- },
-})
-
-
-vim.diagnostic.config({
- virtual_text = false,
- severity_sort = true,
- float = {
- border = 'rounded',
- source = 'always',
- header = '',
- prefix = '',
- },
-})
-
-vim.lsp.handlers['textDocument/hover'] = vim.lsp.with(
- vim.lsp.handlers.hover,
- {border = 'rounded'}
-)
-
-vim.lsp.handlers['textDocument/signatureHelp'] = vim.lsp.with(
- vim.lsp.handlers.signature_help,
- {border = 'rounded'}
-)
-
-require('mason').setup()
-require('mason-lspconfig').setup()
-
-
-local lsp_defaults = {
- flags = {
- debounce_text_changes = 150,
- },
- capabilities = require('cmp_nvim_lsp').update_capabilities(
- vim.lsp.protocol.make_client_capabilities()
- ),
- on_attach = function(client, bufnr)
- vim.api.nvim_exec_autocmds('User', {pattern = 'LspAttached'})
- end
-}
-
-local lspconfig = require('lspconfig')
-
-lspconfig.util.default_config = vim.tbl_deep_extend(
- 'force',
- lspconfig.util.default_config,
- lsp_defaults
-)
-
-lspconfig.sumneko_lua.setup({})
-
-
-
-
-
-
-
-
diff --git a/lua/plugins/lsp-22.10.12-21:29-bak.lua b/lua/plugins/lsp-22.10.12-21:29-bak.lua
deleted file mode 100644
index dd25d9a..0000000
--- a/lua/plugins/lsp-22.10.12-21:29-bak.lua
+++ /dev/null
@@ -1,301 +0,0 @@
-local lsp_defaults = {
- flags = {
- debounce_text_changes = 150,
- },
- capabilities = require('cmp_nvim_lsp').update_capabilities(
- vim.lsp.protocol.make_client_capabilities()
- ),
- on_attach = function(client, bufnr)
- vim.api.nvim_exec_autocmds('User', {pattern = 'LspAttached'})
- end
-}
-
-local lspconfig = require('lspconfig')
-
-lspconfig.util.default_config = vim.tbl_deep_extend(
- 'force',
- lspconfig.util.default_config,
- lsp_defaults
-)
-
-lspconfig.sumneko_lua.setup({
- single_file_support = true,
- on_attach = function(client, bufnr)
- print('hello')
- lspconfig.util.default_config.on_attach(client, bufnr)
- end
-})
-
-vim.api.nvim_create_autocmd('User', {
- pattern = 'LspAttached',
- desc = 'LSP actions',
- callback = function()
- local bufmap = function(mode, lhs, rhs)
- local opts = {buffer = true}
- vim.keymap.set(mode, lhs, rhs, opts)
- end
-
- -- Displays hover information about the symbol under the cursor
- bufmap('n', 'K', '<cmd>lua vim.lsp.buf.hover()<cr>')
-
- -- Jump to the definition
- bufmap('n', 'gd', '<cmd>lua vim.lsp.buf.definition()<cr>')
-
- -- Jump to declaration
- bufmap('n', 'gD', '<cmd>lua vim.lsp.buf.declaration()<cr>')
-
- -- Lists all the implementations for the symbol under the cursor
- bufmap('n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<cr>')
-
- -- Jumps to the definition of the type symbol
- bufmap('n', 'go', '<cmd>lua vim.lsp.buf.type_definition()<cr>')
-
- -- Lists all the references
- bufmap('n', 'gr', '<cmd>lua vim.lsp.buf.references()<cr>')
-
- -- Displays a function's signature information
- bufmap('n', '<C-k>', '<cmd>lua vim.lsp.buf.signature_help()<cr>')
-
- -- Renames all references to the symbol under the cursor
- bufmap('n', '<F2>', '<cmd>lua vim.lsp.buf.rename()<cr>')
-
- -- Selects a code action available at the current cursor position
- bufmap('n', '<F4>', '<cmd>lua vim.lsp.buf.code_action()<cr>')
- bufmap('x', '<F4>', '<cmd>lua vim.lsp.buf.range_code_action()<cr>')
-
- -- Show diagnostics in a floating window
- bufmap('n', 'gl', '<cmd>lua vim.diagnostic.open_float()<cr>')
-
- -- Move to the previous diagnostic
- bufmap('n', '[d', '<cmd>lua vim.diagnostic.goto_prev()<cr>')
-
- -- Move to the next diagnostic
- bufmap('n', ']d', '<cmd>lua vim.diagnostic.goto_next()<cr>')
- end
-})
-
---
----Snippets
---
-require('luasnip.loaders.from_vscode').lazy_load()
-
---
---- Autocompletion/nvim-cmp
---
-vim.opt.completeopt = {'menu', 'menuone', 'noselect'} -- Suggested values for completeopt
-local cmp = require('cmp')
-local luasnip = require('luasnip')
-
-local select_opts = {behavior = cmp.SelectBehavior.Select}
-
-cmp.setup({
-
-})
-
-snippet = {
- expand = function(args)
- luasnip.lsp_expand(args.body)
- end
-},
-
-sources = {
- {name = 'path'},
- {name = 'nvim_lsp', keyword_length = 3},
- {name = 'buffer', keyword_length = 3},
- {name = 'luasnip', keyword_length = 2},
-},
-
-window = {
- documentation = cmp.config.window.bordered()
-},
-
-formatting = {
- fields = {'menu', 'abbr', 'kind'}
-},
-
-formatting = {
- fields = {'menu', 'abbr', 'kind'},
- format = function(entry, item)
- local menu_icon = {
- nvim_lsp = 'λ',
- luasnip = '⋗',
- buffer = 'Ω',
- path = '🖫',
- }
-
- item.menu = menu_icon[entry.source.name]
- return item
- end,
-},
-
-mapping = {
- ['<CR>'] = cmp.mapping.confirm({select = true}),
-}
-['<Up>'] = cmp.mapping.select_prev_item(select_opts),
-['<Down>'] = cmp.mapping.select_next_item(select_opts),
-
-['<C-p>'] = cmp.mapping.select_prev_item(select_opts),
-['<C-n>'] = cmp.mapping.select_next_item(select_opts),
-['<C-u>'] = cmp.mapping.scroll_docs(-4),
-['<C-f>'] = cmp.mapping.scroll_docs(4),
-['<C-e>'] = cmp.mapping.abort(),
-['<CR>'] = cmp.mapping.confirm({select = true}),
-['<C-d>'] = cmp.mapping(function(fallback)
- if luasnip.jumpable(1) then
- luasnip.jump(1)
- else
- fallback()
- end
-end, {'i', 's'}),
-['<C-b>'] = cmp.mapping(function(fallback)
- if luasnip.jumpable(-1) then
- luasnip.jump(-1)
- else
- fallback()
- end
-end, {'i', 's'}),
-
-vim.opt.completeopt = {'menu', 'menuone', 'noselect'}
-
-require('luasnip.loaders.from_vscode').lazy_load()
-
-local cmp = require('cmp')
-local luasnip = require('luasnip')
-
-local select_opts = {behavior = cmp.SelectBehavior.Select}
-
-cmp.setup({
- snippet = {
- expand = function(args)
- luasnip.lsp_expand(args.body)
- end
- },
- sources = {
- {name = 'path'},
- {name = 'nvim_lsp', keyword_length = 3},
- {name = 'buffer', keyword_length = 3},
- {name = 'luasnip', keyword_length = 2},
- },
- window = {
- documentation = cmp.config.window.bordered()
- },
- formatting = {
- fields = {'menu', 'abbr', 'kind'},
- format = function(entry, item)
- local menu_icon = {
- nvim_lsp = 'λ',
- luasnip = '⋗',
- buffer = 'Ω',
- path = '🖫',
- }
-
- item.menu = menu_icon[entry.source.name]
- return item
- end,
- },
- mapping = {
- ['<Up>'] = cmp.mapping.select_prev_item(select_opts),
- ['<Down>'] = cmp.mapping.select_next_item(select_opts),
-
- ['<C-p>'] = cmp.mapping.select_prev_item(select_opts),
- ['<C-n>'] = cmp.mapping.select_next_item(select_opts),
-
- ['<C-u>'] = cmp.mapping.scroll_docs(-4),
- ['<C-f>'] = cmp.mapping.scroll_docs(4),
-
- ['<C-e>'] = cmp.mapping.abort(),
- ['<CR>'] = cmp.mapping.confirm({select = true}),
-
- ['<C-d>'] = cmp.mapping(function(fallback)
- if luasnip.jumpable(1) then
- luasnip.jump(1)
- else
- fallback()
- end
- end, {'i', 's'}),
-
- ['<C-b>'] = cmp.mapping(function(fallback)
- if luasnip.jumpable(-1) then
- luasnip.jump(-1)
- else
- fallback()
- end
- end, {'i', 's'}),
-
- ['<Tab>'] = cmp.mapping(function(fallback)
- local col = vim.fn.col('.') - 1
-
- if cmp.visible() then
- cmp.select_next_item(select_opts)
- elseif col == 0 or vim.fn.getline('.'):sub(col, col):match('%s') then
- fallback()
- else
- cmp.complete()
- end
- end, {'i', 's'}),
-
- ['<S-Tab>'] = cmp.mapping(function(fallback)
- if cmp.visible() then
- cmp.select_prev_item(select_opts)
- else
- fallback()
- end
- end, {'i', 's'}),
- },
-})
-
-
-vim.diagnostic.config({
- virtual_text = false,
- severity_sort = true,
- float = {
- border = 'rounded',
- source = 'always',
- header = '',
- prefix = '',
- },
-})
-
-vim.lsp.handlers['textDocument/hover'] = vim.lsp.with(
- vim.lsp.handlers.hover,
- {border = 'rounded'}
-)
-
-vim.lsp.handlers['textDocument/signatureHelp'] = vim.lsp.with(
- vim.lsp.handlers.signature_help,
- {border = 'rounded'}
-)
-
-require('mason').setup()
-require('mason-lspconfig').setup()
-
-
-local lsp_defaults = {
- flags = {
- debounce_text_changes = 150,
- },
- capabilities = require('cmp_nvim_lsp').update_capabilities(
- vim.lsp.protocol.make_client_capabilities()
- ),
- on_attach = function(client, bufnr)
- vim.api.nvim_exec_autocmds('User', {pattern = 'LspAttached'})
- end
-}
-
-local lspconfig = require('lspconfig')
-
-lspconfig.util.default_config = vim.tbl_deep_extend(
- 'force',
- lspconfig.util.default_config,
- lsp_defaults
-)
-
-lspconfig.sumneko_lua.setup({})
-
-
-
-
-
-
-
-
diff --git a/lua/plugins/lsp-22.10.14-23:39-bak.lua b/lua/plugins/lsp-22.10.14-23:39-bak.lua
deleted file mode 100644
index 9c8e943..0000000
--- a/lua/plugins/lsp-22.10.14-23:39-bak.lua
+++ /dev/null
@@ -1,422 +0,0 @@
-
-local fn = vim.fn
-local keymap = vim.keymap
-
-local utils = require("utils")
-
-local custom_attach = function(client, bufnr)
- -- Enable completion triggered by <c-x><c-o>
- vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
-
- -- Mappings.
- local map = function(mode, l, r, opts)
- opts = opts or {}
- opts.silent = true
- opts.noremap = true
- opts.buffer = bufnr
- keymap.set(mode, l, r, opts)
- end
---map("n", "gd", "<Cmd>Lspsaga lsp_finder<CR>") -- Press "o" to open the reference location
---map("n", "gp", "<Cmd>Lspsaga peek_definition<CR>")
--- --map("n", "gd", vim.lsp.buf.definition, { desc = "go to definition" })
--- map("n", "<C-]>", vim.lsp.buf.definition)
--- map("n", "K", vim.lsp.buf.hover)
--- map("n", "<C-k>", vim.lsp.buf.signature_help)
--- map("n", "<leader>rn", vim.lsp.buf.rename, { desc = "varialble rename" })
--- map("n", "gr", vim.lsp.buf.references, { desc = "show references" })
--- map("n", "[d", vim.diagnostic.goto_prev, { desc = "previous diagnostic" })
--- map("n", "]d", vim.diagnostic.goto_next, { desc = "next diagnostic" })
--- map("n", "<leader>q", function()
--- vim.diagnostic.setqflist({ open = true })
--- end, { desc = "put diagnostic to qf" })
--- --map.('n', '<space>q', vim.diagnostic.setloclist)
--- map("n", "ga", vim.lsp.buf.code_action, { desc = "LSP code action" })
--- map("n", "<leader>wa", vim.lsp.buf.add_workspace_folder, { desc = "add workspace folder" })
--- map("n", "<leader>wr", vim.lsp.buf.remove_workspace_folder, { desc = "remove workspace folder" })
--- map("n", "<leader>wl", function()
--- print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
--- end, { desc = "list workspace folder" })
--- map("n", "gs", "vim.lsp.buf.document_symbol()<cr>")
--- map("n", "gw", "vim.lsp.buf.workspace_symbol()<cr>", { desc = "list workspace folder" })
--- --map("n", "gs", ":lua vim.lsp.buf.document_symbol()<cr>")
--- map("n", "gt", ":lua vim.lsp.buf.type_definition()<cr>")
--- map("n", "gD", ":lua vim.lsp.buf.declaration()<cr>") -- most lsp servers don't implement textDocument/Declaration, so gD is useless for now.
--- map("n", "gi", ":lua vim.lsp.buf.implementation()<cr>")
--- map("n", "go", ":lua vim.diagnostic.open_float()<cr>")
--- map("n", "gk", "<Cmd>Lspsaga diagnostic_jump_prev<CR>")
--- map("n", "gj", "<Cmd>Lspsaga diagnostic_jump_next<CR>")
-
- -- Set some key bindings conditional on server capabilities
- if client.server_capabilities.documentFormattingProvider then
- map("n", "<space>f", vim.lsp.buf.format, { desc = "format code" })
- end
-
- -- add rust specific keymappings
- if client.name == "rust_analyzer" then
- map("n", "<leader>rr", "<cmd>RustRunnables<CR>")
- map("n", "<leader>ra", "<cmd>RustHoverAction<CR>")
- end
-
- -- Diagnostic position
- vim.api.nvim_create_autocmd("CursorHold", {
- buffer = bufnr,
- callback = function()
- local float_opts = {
- focusable = false,
- close_events = { "BufLeave", "CursorMoved", "InsertEnter", "FocusLost" },
- border = "rounded",
- source = "always", -- show source in diagnostic popup window
- prefix = " ",
- }
-
- if not vim.b.diagnostics_pos then
- vim.b.diagnostics_pos = { nil, nil }
- end
-
- local cursor_pos = vim.api.nvim_win_get_cursor(0)
- if
- (cursor_pos[1] ~= vim.b.diagnostics_pos[1] or cursor_pos[2] ~= vim.b.diagnostics_pos[2])
- and #vim.diagnostic.get() > 0
- then
- vim.diagnostic.open_float(nil, float_opts)
- end
-
- vim.b.diagnostics_pos = cursor_pos
- end,
- })
-
- -- The below command will highlight the current variable and its usages in the buffer.
- if client.server_capabilities.documentHighlightProvider then
- vim.cmd([[
- hi! link LspReferenceRead Visual
- hi! link LspReferenceText Visual
- hi! link LspReferenceWrite Visual
- augroup lsp_document_highlight
- autocmd! * <buffer>
- autocmd CursorHold <buffer> lua vim.lsp.buf.document_highlight()
- autocmd CursorMoved <buffer> lua vim.lsp.buf.clear_references()
- augroup END
- ]])
- end
-
- if vim.g.logging_level == "debug" then
- local msg = string.format("Language server %s started!", client.name)
- vim.notify(msg, vim.log.levels.DEBUG, { title = "Server?" })
- end
-end
-
-local capabilities = vim.lsp.protocol.make_client_capabilities()
-capabilities = require("cmp_nvim_lsp").update_capabilities(capabilities)
-capabilities.textDocument.completion.completionItem.snippetSupport = true
-capabilities.offsetEncoding = { "utf-16" }
-
-local lspconfig = require("lspconfig")
-
-if utils.executable("pylsp") then
- lspconfig.pylsp.setup({
- settings = {
- pylsp = {
- plugins = {
- pylint = { enabled = true, executable = "pylint" },
- pyflakes = { enabled = false },
- pycodestyle = { enabled = false },
- jedi_completion = { fuzzy = true },
- pyls_isort = { enabled = true },
- pylsp_mypy = { enabled = true },
- },
- },
- },
- flags = {
- debounce_text_changes = 200,
- },
- capabilities = capabilities,
- })
-else
- vim.notify("pylsp not found!", vim.log.levels.WARN, { title = "Server?" })
-end
-
--- if utils.executable('pyright') then
--- lspconfig.pyright.setup{
--- on_attach = custom_attach,
--- capabilities = capabilities
--- }
--- else
--- vim.notify("pyright not found!", vim.log.levels.WARN, {title = 'Server?'})
--- end
-
-if utils.executable("clangd") then
- lspconfig.clangd.setup({
- on_attach = custom_attach,
- capabilities = capabilities,
- filetypes = { "c", "cpp", "cc" },
- flags = {
- debounce_text_changes = 500,
- },
- })
-else
- vim.notify("clangd not found!", vim.log.levels.WARN, { title = "Server?" })
-end
-
--- set up vim-language-server
-if utils.executable("vim-language-server") then
- lspconfig.vimls.setup({
- on_attach = custom_attach,
- flags = {
- debounce_text_changes = 500,
- },
- capabilities = capabilities,
- })
-else
- vim.notify("vim-language-server not found!", vim.log.levels.WARN, { title = "Server?" })
-end
-
--- set up bash-language-server
-if utils.executable("bash-language-server") then
- lspconfig.bashls.setup({
- on_attach = custom_attach,
- capabilities = capabilities,
- })
-end
-
-if utils.executable("lua-language-server") then
- lspconfig.sumneko_lua.setup({
- on_attach = custom_attach,
- settings = {
- Lua = {
- runtime = {
- -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
- version = "LuaJIT",
- },
- diagnostics = {
- -- Get the language server to recognize the `vim` global
- globals = { "vim" },
- },
- workspace = {
- -- Make the server aware of Neovim runtime files,
- library = {
- fn.stdpath("data") .. "/site/pack/packer/opt/emmylua-nvim",
- fn.stdpath("config"),
- },
- maxPreload = 2000,
- preloadFileSize = 50000,
- },
- },
- },
- capabilities = capabilities,
- })
-end
-
-
-if utils.executable("rust-language-server") then
-require("lspconfig").rust_analyzer.setup{
- cmd = { "rustup", "run", "nightly", "rust-analyzer" },
- on_attach = custom_attach,
- flags = {
- debounce_text_changes = 500,
- },
- --[[
- settings = {
- rust = {
- unstable_features = true,
- build_on_save = false,
- all_features = true,
- },
- }
- --]]
-}
-end
-
-
--- Setup nvim-cmp.
-vim.opt.completeopt = "menu,menuone,noselect"
-
-local cmp_status_ok, cmp = pcall(require, "cmp")
-if not cmp_status_ok then
- return
-end
-
-
-local opts = {
- -- whether to highlight the currently hovered symbol
- -- disable if your cpu usage is higher than you want it
- -- or you just hate the highlight
- -- default: true
- highlight_hovered_item = true,
-
- -- whether to show outline guides
- -- default: true
- show_guides = true,
-}
-require("symbols-outline").setup(opts)
-
-local snippets_paths = function()
- local plugins = { "friendly-snippets" }
- local paths = {}
- local path
- local root_path = vim.env.HOME .. "/.vim/plugged/"
- for _, plug in ipairs(plugins) do
- path = root_path .. plug
- if vim.fn.isdirectory(path) ~= 0 then
- table.insert(paths, path)
- end
- end
- return paths
-end
-
-require("luasnip.loaders.from_vscode").lazy_load({
- paths = snippets_paths(),
- include = nil, -- Load all languages
- exclude = {},
-})
-
-local lspkind = require("lspkind")
-
---local kind_icons = {
--- Text = "",
--- Method = "",
--- Function = "",
--- Constructor = "⚙️",
--- Field = "",
--- Variable = "",
--- Class = "ﴯ",
--- Interface = "",
--- Module = "",
--- Property = "ﰠ",
--- Unit = "",
--- Value = "",
--- Enum = "",
--- Keyword = "",
--- Snippet = "",
--- Color = "",
--- File = "",
--- Reference = "",
--- Folder = "",
--- EnumMember = "",
--- Constant = "",
--- Struct = "",
--- Event = "",
--- Operator = "",
--- TypeParameter = "",
---}
-
-cmp.setup({
- snippet = {
- expand = function(args)
- require("luasnip").lsp_expand(args.body)
- end,
- },
- mapping = cmp.mapping.preset.insert({
--- ["<CR>"] = cmp.mapping.confirm({
--- behavior = cmp.ConfirmBehavior.Replace,
--- select = true,
--- }),
- ['<C-y>'] = cmp.mapping.confirm({ select = true }),
- ["<C-e>"] = cmp.mapping.close(),
- ["<C-u>"] = cmp.mapping.scroll_docs(-4),
- ["<C-d>"] = cmp.mapping.scroll_docs(4),
- ["<C-Space>"] = cmp.mapping.complete(),
- }),
-
- formatting = {
- fields = { "abbr", "kind", "menu" },
- format = function(entry, vim_item)
- -- Kind icons
- --vim_item.kind = string.format("%s", kind_icons[vim_item.kind])
- vim_item.kind = lspkind.presets.default[vim_item.kind]
- -- vim_item.kind = string.format('%s %s', kind_icons[vim_item.kind], vim_item.kind) -- This concatonates the icons with the name of the item kind
- vim_item.menu = ({
- nvim_lsp = "LSP",
- luasnip = "Snip",
- buffer = "Buf",
- path = "Path",
- cmdline = "Cmd",
- })[entry.source.name]
- return vim_item
- end,
- },
- sources = cmp.config.sources({
- { name = "path" },
- { name = "nvim_lsp", keyword_length = 3 },
- { name = "luasnip", keyword_length = 4 },
- { name = "buffer", keyword_length = 3 },
- --{ name = 'treesitter' },
- { name = "cmdline", keyword_pattern = [=[[^[:blank:]\!]*]=], keyword_length = 3 },
- --{ name = "cmdline", keyword_pattern = [=[[^[:blank:]\!]*]=] }, --exclamation mark hangs a bit without this
- --{name = 'luasnip', keyword_length = 2},
- }),
- confirm_opts = {
- behavior = cmp.ConfirmBehavior.Replace,
- select = false,
- },
- window = {
- completion = cmp.config.window.bordered(),
- documentation = cmp.config.window.bordered(),
- --documentation = {
- -- border = { "╭", "─", "╮", "│", "╯", "─", "╰", "│" },
- --},
- },
- experimental = {
- ghost_text = true,
- native_menu = true,
- --native_menu = false,
- --view = {
- -- entries = "native"
- --},
- },
-})
-
-cmp.setup.cmdline("/", {
- mapping = cmp.mapping.preset.cmdline(),
- sources = {
- { name = "buffer" },
- },
-})
-
-cmp.setup.cmdline(":", {
- mapping = cmp.mapping.preset.cmdline(),
- sources = cmp.config.sources({
- { name = "path" },
- }, {
- { name = "cmdline" },
- }),
-})
-
-
-
--- Global config for diagnostic
-vim.diagnostic.config({
- underline = false,
- virtual_text = true,
- signs = true,
- severity_sort = true,
- float = {
- focusable = true, --
- style = "minimal", --
- --border = "rounded",
- border = "shadow",
- source = "always",
- header = "",
- prefix = "",
- },
-})
-
-vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, {
- underline = false,
- virtual_text = false,
- signs = true,
- update_in_insert = false,
-})
---vim.lsp.buf.definition
---vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, { border = "rounded" })
-
-vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, { border = "rounded" })
-
-vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with(vim.lsp.handlers.signature_help, { border = "rounded" })
-
---local signs = { Error = " ", Warn = " ", Info = "􀅴 ", Hint = " " }
---local signs = { Error = "✘", Warn = "▲", Info = "🛈 ", Hint = "⚑" }
-local signs = { Error = "✘", Warn = "▲", Info = "􀅳", Hint = "⚑" }
-for type, icon in pairs(signs) do
- local hl = "DiagnosticSign" .. type
- vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = "" })
-end
diff --git a/lua/plugins/lsp-colors.lua b/lua/plugins/lsp-colors.lua
deleted file mode 100644
index 1398123..0000000
--- a/lua/plugins/lsp-colors.lua
+++ /dev/null
@@ -1,9 +0,0 @@
-local status, colors = pcall(require, "lsp-colors")
-if (not status) then return end
-
-colors.setup {
- Error = "#db4b4b",
- Warning = "#e0af68",
- Information = "#0db9d7",
- Hint = "#10B981"
-}
diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua
deleted file mode 100644
index 323b864..0000000
--- a/lua/plugins/lsp.lua
+++ /dev/null
@@ -1,527 +0,0 @@
-
-local fn = vim.fn
-local keymap = vim.keymap
-
-local utils = require("utils")
-
-local custom_attach = function(client, bufnr)
- -- Enable completion triggered by <c-x><c-o>
- vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
-
- -- Mappings.
- local map = function(mode, l, r, opts)
- opts = opts or {}
- opts.silent = true
- opts.noremap = true
- opts.buffer = bufnr
- keymap.set(mode, l, r, opts)
- end
---map("n", "gd", "<Cmd>Lspsaga lsp_finder<CR>") -- Press "o" to open the reference location
---map("n", "gp", "<Cmd>Lspsaga peek_definition<CR>")
--- --map("n", "gd", vim.lsp.buf.definition, { desc = "go to definition" })
- map("n", "<C-]>", vim.lsp.buf.definition)
--- map("n", "K", vim.lsp.buf.hover)
--- map("n", "<C-k>", vim.lsp.buf.signature_help)
--- map("n", "<leader>rn", vim.lsp.buf.rename, { desc = "varialble rename" })
--- map("n", "gr", vim.lsp.buf.references, { desc = "show references" })
--- map("n", "[d", vim.diagnostic.goto_prev, { desc = "previous diagnostic" })
--- map("n", "]d", vim.diagnostic.goto_next, { desc = "next diagnostic" })
- map("n", "<leader>q", function()
- vim.diagnostic.setqflist({ open = true })
- end, { desc = "put diagnostic to qf" })
--- --map.('n', '<space>q', vim.diagnostic.setloclist)
--- map("n", "ga", vim.lsp.buf.code_action, { desc = "LSP code action" })
--- map("n", "<leader>wa", vim.lsp.buf.add_workspace_folder, { desc = "add workspace folder" })
--- map("n", "<leader>wr", vim.lsp.buf.remove_workspace_folder, { desc = "remove workspace folder" })
--- map("n", "<leader>wl", function()
--- print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
--- end, { desc = "list workspace folder" })
--- map("n", "gs", "vim.lsp.buf.document_symbol()<cr>")
--- map("n", "gw", "vim.lsp.buf.workspace_symbol()<cr>", { desc = "list workspace folder" })
--- --map("n", "gs", ":lua vim.lsp.buf.document_symbol()<cr>")
--- map("n", "gt", ":lua vim.lsp.buf.type_definition()<cr>")
--- map("n", "gD", ":lua vim.lsp.buf.declaration()<cr>") -- most lsp servers don't implement textDocument/Declaration, so gD is useless for now.
--- map("n", "gi", ":lua vim.lsp.buf.implementation()<cr>")
- map("n", "go", ":lua vim.diagnostic.open_float()<cr>")
--- map("n", "gk", "<Cmd>Lspsaga diagnostic_jump_prev<CR>")
--- map("n", "gj", "<Cmd>Lspsaga diagnostic_jump_next<CR>")
-
-vim.g.diagnostics_visible = true
-function _G.toggle_diagnostics()
- if vim.g.diagnostics_visible then
- vim.g.diagnostics_visible = false
- vim.diagnostic.disable()
- else
- vim.g.diagnostics_visible = true
- vim.diagnostic.enable()
- end
-end
-map('n', '<Leader>m', ':call v:lua.toggle_diagnostics()<CR>')
---vim.g.diagnostics_active = true
---function _G.toggle_diagnostics()
--- if vim.g.diagnostics_active then
--- vim.g.diagnostics_active = false
--- vim.lsp.diagnostic.clear(0)
--- vim.cmd([[exe "normal ii\<Esc>x"]])
--- vim.lsp.handlers["textDocument/publishDiagnostics"] = function() end
--- else
--- vim.g.diagnostics_active = true
--- vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(
--- vim.lsp.diagnostic.on_publish_diagnostics, {
--- virtual_text = true,
--- signs = true,
--- underline = true,
--- update_in_insert = false,
--- }
--- )
--- end
---end
---
---map("n", "<leader>i", ":call v:lua.toggle_diagnostics()<CR>")
-
-
- -- Set some key bindings conditional on server capabilities
- if client.server_capabilities.documentFormattingProvider then
- map("n", "<space>f", vim.lsp.buf.format, { desc = "format code" })
- end
-
- -- add rust specific keymappings
- if client.name == "rust_analyzer" then
- map("n", "<leader>rr", "<cmd>RustRunnables<CR>")
- map("n", "<leader>ra", "<cmd>RustHoverAction<CR>")
- end
-
---For diagnostics for specific cursor position
---vim.api.nvim_create_autocmd("CursorHold", {
--- buffer = bufnr,
--- callback = function()
--- local opts = {
--- focusable = false,
--- close_events = { "BufLeave", "CursorMoved", "InsertEnter", "FocusLost" },
--- border = 'rounded',
--- source = 'always',
--- prefix = ' ',
--- scope = 'cursor',
--- }
--- vim.diagnostic.open_float(nil, opts)
--- end
---})
- -- Diagnostic position
--- vim.api.nvim_create_autocmd("CursorHold", {
--- buffer = bufnr,
--- callback = function()
--- local float_opts = {
--- focusable = false,
--- close_events = { "BufLeave", "CursorMoved", "InsertEnter", "FocusLost" },
--- border = "rounded",
--- source = "always", -- show source in diagnostic popup window
--- prefix = " ",
--- }
---
--- if not vim.b.diagnostics_pos then
--- vim.b.diagnostics_pos = { nil, nil }
--- end
---
--- local cursor_pos = vim.api.nvim_win_get_cursor(0)
--- if
--- (cursor_pos[1] ~= vim.b.diagnostics_pos[1] or cursor_pos[2] ~= vim.b.diagnostics_pos[2])
--- and #vim.diagnostic.get() > 0
--- then
--- vim.diagnostic.open_float(nil, float_opts)
--- end
---
--- vim.b.diagnostics_pos = cursor_pos
--- end,
--- })
-
- -- The below command will highlight the current variable and its usages in the buffer.
- if client.server_capabilities.documentHighlightProvider then
- vim.cmd([[
- hi! link LspReferenceRead Visual
- hi! link LspReferenceText Visual
- hi! link LspReferenceWrite Visual
- augroup lsp_document_highlight
- autocmd! * <buffer>
- autocmd CursorHold <buffer> lua vim.lsp.buf.document_highlight()
- autocmd CursorMoved <buffer> lua vim.lsp.buf.clear_references()
- augroup END
- ]])
- end
-
- if vim.g.logging_level == "debug" then
- local msg = string.format("Language server %s started!", client.name)
- vim.notify(msg, vim.log.levels.DEBUG, { title = "Server?" })
- end
-end
-
-local capabilities = vim.lsp.protocol.make_client_capabilities()
-capabilities = require("cmp_nvim_lsp").default_capabilities(capabilities)
-capabilities.textDocument.completion.completionItem.snippetSupport = true
-capabilities.offsetEncoding = { "utf-16" }
-
-local lspconfig = require("lspconfig")
-
-if utils.executable("pylsp") then
- lspconfig.pylsp.setup({
- settings = {
- pylsp = {
- plugins = {
- pylint = { enabled = true, executable = "pylint" },
- pyflakes = { enabled = false },
- pycodestyle = { enabled = false },
- jedi_completion = { fuzzy = true },
- pyls_isort = { enabled = true },
- pylsp_mypy = { enabled = true },
- },
- },
- },
- flags = {
- debounce_text_changes = 200,
- },
- capabilities = capabilities,
- })
-else
- vim.notify("pylsp not found!", vim.log.levels.WARN, { title = "Server?" })
-end
-
--- if utils.executable('pyright') then
--- lspconfig.pyright.setup{
--- on_attach = custom_attach,
--- capabilities = capabilities
--- }
--- else
--- vim.notify("pyright not found!", vim.log.levels.WARN, {title = 'Server?'})
--- end
-
-if utils.executable("clangd") then
- lspconfig.clangd.setup({
- on_attach = custom_attach,
- capabilities = capabilities,
- filetypes = { "c", "cpp", "cc" },
- flags = {
- debounce_text_changes = 500,
- },
- })
-else
- vim.notify("clangd not found!", vim.log.levels.WARN, { title = "Server?" })
-end
-
--- set up vim-language-server
-if utils.executable("vim-language-server") then
- lspconfig.vimls.setup({
- on_attach = custom_attach,
- flags = {
- debounce_text_changes = 500,
- },
- capabilities = capabilities,
- })
-else
- vim.notify("vim-language-server not found!", vim.log.levels.WARN, { title = "Server?" })
-end
-
--- set up bash-language-server
-if utils.executable("bash-language-server") then
- lspconfig.bashls.setup({
- on_attach = custom_attach,
- capabilities = capabilities,
- })
-end
-
-if utils.executable("lua-language-server") then
- lspconfig.sumneko_lua.setup({
- on_attach = custom_attach,
- settings = {
- Lua = {
- runtime = {
- -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
- version = "LuaJIT",
- },
- diagnostics = {
- -- Get the language server to recognize the `vim` global
- globals = { "vim" },
- },
- workspace = {
- -- Make the server aware of Neovim runtime files,
- library = {
- fn.stdpath("data") .. "/site/pack/packer/opt/emmylua-nvim",
- fn.stdpath("config"),
- },
- maxPreload = 2000,
- preloadFileSize = 50000,
- },
- },
- },
- capabilities = capabilities,
- })
-end
-
-
-if utils.executable("rust-language-server") then
-require("lspconfig").rust_analyzer.setup{
- cmd = { "rustup", "run", "nightly", "rust-analyzer" },
- on_attach = custom_attach,
- flags = {
- debounce_text_changes = 500,
- },
- --[[
- settings = {
- rust = {
- unstable_features = true,
- build_on_save = false,
- all_features = true,
- },
- }
- --]]
-}
-end
-
---vim.diagnostic.config({
--- virtual_text = false,
--- underline = true,
---})
-vim.diagnostic.config({
- underline = false,
- signs = true,
- virtual_text = false,
- float = {
- show_header = true,
- source = 'if_many',
- border = 'rounded',
- focusable = false,
- },
- update_in_insert = false, -- default to false
- severity_sort = false, -- default to false
-})
--- Show line diagnostics automatically in hover window
-vim.o.updatetime = 250
-vim.cmd [[autocmd CursorHold,CursorHoldI * lua vim.diagnostic.open_float(nil, {focus=false})]]
-
---local diagnostics_active = true
---local toggle_diagnostics = function()
--- diagnostics_active = not diagnostics_active
--- if diagnostics_active then
--- vim.o.updatetime = 250
--- vim.cmd [[autocmd CursorHold,CursorHoldI * lua vim.diagnostic.open_float(nil, {focus=false})]]
--- --vim.diagnostic.open_float(nil, {focus=false})
--- else
--- --vim.diagnostic.hide()
--- vim.diagnostic.disable()
--- end
---end
---vim.keymap.set("n", "<leader>a", toggle_diagnostics)
-
--- Toogle diagnostics
-local diagnostics_active = true
-local toggle_diagnostics = function()
- diagnostics_active = not diagnostics_active
- if diagnostics_active then
- vim.api.nvim_echo({ { "Show diagnostics" } }, false, {})
- vim.diagnostic.enable()
- else
- vim.api.nvim_echo({ { "Disable diagnostics" } }, false, {})
- vim.diagnostic.disable()
- end
-end
-vim.keymap.set("n", "<leader>a", toggle_diagnostics)
-
---vim.cmd [[autocmd CursorHold * lua vim.diagnostic.open_float(0, {scope="cursor", close_events = {"CursorMoved", "CursorMovedI", "BufHidden", "InsertCharPre", "WinLeave"}})]]
-
---function LspDiagnosticsFocus()
--- vim.api.nvim_command('set eventignore=WinLeave')
--- vim.api.nvim_command('autocmd CursorMoved <buffer> ++once set eventignore=""')
--- vim.diagnostic.open_float(nil, {focusable = false, scope = 'line', close_events = {"CursorMoved", "CursorMovedI", "BufHidden", "InsertCharPre", "WinLeave"}})
---end
---vim.api.nvim_set_keymap('', '<Leader>a', '<Cmd>lua LspDiagnosticsFocus()<CR>', {silent = true})
-
---local diagnostics_active = true
---map('n', '<leader>a', function()
--- diagnostics_active = not diagnostics_active
--- if diagnostics_active then
--- vim.diagnostic.show()
--- else
--- vim.diagnostic.hide()
--- end
---end)
-
--- Global config for diagnostic
---vim.diagnostic.config({
--- underline = false,
--- virtual_text = false,
--- signs = true,
--- severity_sort = true,
--- float = {
--- focusable = true, --
--- style = "minimal", --
--- --border = "rounded",
--- border = "shadow",
--- source = "always",
--- header = "",
--- prefix = "",
--- },
---})
-
-vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, {
- underline = true,
- virtual_text = false,
- signs = true,
- update_in_insert = false,
-})
-
---vim.lsp.buf.definition
---vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, { border = "rounded" })
-
-vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, { border = "rounded" })
-
-vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with(vim.lsp.handlers.signature_help, { border = "rounded" })
-
---local signs = { Error = " ", Warn = " ", Info = "􀅴 ", Hint = " " }
---local signs = { Error = "✘", Warn = "▲", Info = "🛈 ", Hint = "⚑" }
-local signs = { Error = "✘", Warn = "▲", Info = "􀅳", Hint = "⚑" }
-for type, icon in pairs(signs) do
- local hl = "DiagnosticSign" .. type
- vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = "" })
-end
-
-
----- Location information about the last message printed. The format is
----- `(did print, buffer number, line number)`.
---local last_echo = { false, -1, -1 }
---
----- The timer used for displaying a diagnostic in the commandline.
---local echo_timer = nil
---
----- The timer after which to display a diagnostic in the commandline.
---local echo_timeout = 250
---
----- The highlight group to use for warning messages.
---local warning_hlgroup = 'WarningMsg'
---
----- The highlight group to use for error messages.
---local error_hlgroup = 'ErrorMsg'
---
----- If the first diagnostic line has fewer than this many characters, also add
----- the second line to it.
---local short_line_limit = 20
---
----- Shows the current line's diagnostics in a floating window.
---function show_line_diagnostics()
--- vim
--- .lsp
--- .diagnostic
--- .show_line_diagnostics({ severity_limit = 'Warning' }, vim.fn.bufnr(''))
---end
---
----- Prints the first diagnostic for the current line.
---function echo_diagnostic()
--- if echo_timer then
--- echo_timer:stop()
--- end
---
--- echo_timer = vim.defer_fn(
--- function()
--- local line = vim.fn.line('.') - 1
--- local bufnr = vim.api.nvim_win_get_buf(0)
---
--- if last_echo[1] and last_echo[2] == bufnr and last_echo[3] == line then
--- return
--- end
---
--- local diags = vim
--- .lsp
--- .diagnostic
--- .get_line_diagnostics(bufnr, line, { severity_limit = 'Warning' })
---
--- if #diags == 0 then
--- -- If we previously echo'd a message, clear it out by echoing an empty
--- -- message.
--- if last_echo[1] then
--- last_echo = { false, -1, -1 }
---
--- vim.api.nvim_command('echo ""')
--- end
---
--- return
--- end
---
--- last_echo = { true, bufnr, line }
---
--- local diag = diags[1]
--- local width = vim.api.nvim_get_option('columns') - 15
--- local lines = vim.split(diag.message, "\n")
--- local message = lines[1]
--- local trimmed = false
---
--- if #lines > 1 and #message <= short_line_limit then
--- message = message .. ' ' .. lines[2]
--- end
---
--- if width > 0 and #message >= width then
--- message = message:sub(1, width) .. '...'
--- end
---
--- local kind = 'warning'
--- local hlgroup = warning_hlgroup
---
--- if diag.severity == vim.lsp.protocol.DiagnosticSeverity.Error then
--- kind = 'error'
--- hlgroup = error_hlgroup
--- end
---
--- local chunks = {
--- { kind .. ': ', hlgroup },
--- { message }
--- }
---
--- vim.api.nvim_echo(chunks, false, {})
--- end,
--- echo_timeout
--- )
---end
---vim.cmd([[
--- autocmd CursorMoved * :lua echo_diagnostic()
---]])
--- Highlight line number instead of having icons in sign column
-
--- See the properties of the signs with sign list.
-
---vim.cmd [[
--- highlight! DiagnosticLineNrError guibg=#51202A guifg=#FF0000 gui=bold
--- highlight! DiagnosticLineNrWarn guibg=#51412A guifg=#FFA500 gui=bold
--- highlight! DiagnosticLineNrInfo guibg=#1E535D guifg=#00FFFF gui=bold
--- highlight! DiagnosticLineNrHint guibg=#1E205D guifg=#0000FF gui=bold
---
--- sign define DiagnosticSignError text= texthl=DiagnosticSignError linehl= numhl=DiagnosticLineNrError
--- sign define DiagnosticSignWarn text= texthl=DiagnosticSignWarn linehl= numhl=DiagnosticLineNrWarn
--- sign define DiagnosticSignInfo text= texthl=DiagnosticSignInfo linehl= numhl=DiagnosticLineNrInfo
--- sign define DiagnosticSignHint text= texthl=DiagnosticSignHint linehl= numhl=DiagnosticLineNrHint
---]]
-
--- Highlight symbol under cursor
-
--- Add the following to your on_attach (this allows checking server capabilities to avoid calling invalid commands.
-
---if client.resolved_capabilities.document_highlight then
--- vim.cmd [[
--- hi! LspReferenceRead cterm=bold ctermbg=red guibg=LightYellow
--- hi! LspReferenceText cterm=bold ctermbg=red guibg=LightYellow
--- hi! LspReferenceWrite cterm=bold ctermbg=red guibg=LightYellow
--- ]]
--- vim.api.nvim_create_augroup('lsp_document_highlight', {
--- clear = false
--- })
--- vim.api.nvim_clear_autocmds({
--- buffer = bufnr,
--- group = 'lsp_document_highlight',
--- })
--- vim.api.nvim_create_autocmd({ 'CursorHold', 'CursorHoldI' }, {
--- group = 'lsp_document_highlight',
--- buffer = bufnr,
--- callback = vim.lsp.buf.document_highlight,
--- })
--- vim.api.nvim_create_autocmd('CursorMoved', {
--- group = 'lsp_document_highlight',
--- buffer = bufnr,
--- callback = vim.lsp.buf.clear_references,
--- })
---end
-
diff --git a/lua/plugins/lspOld.lsp b/lua/plugins/lspOld.lsp
deleted file mode 100644
index 206ea57..0000000
--- a/lua/plugins/lspOld.lsp
+++ /dev/null
@@ -1,531 +0,0 @@
--- lspconfig + nvim-cmp + lspsaga
--- Dependencies
--- nvim-lspconfig
--- nvim-cmp
--- cmp-buffer
--- cmp-path
--- cmp_luasnip
--- cmp-nvim-lsp
--- LuaSnip
--- friendly-snippets
-local fn = vim.fn
-local api = vim.api
-local keymap = vim.keymap
-local lsp = vim.lsp
-
-local utils = require("utils")
-
-local custom_attach = function(client, bufnr)
- -- Mappings.
- local map = function(mode, l, r, opts)
- opts = opts or {}
- opts.silent = true
- opts.buffer = bufnr
- keymap.set(mode, l, r, opts)
- end
-
-
-local lsp_defaults = {
- flags = {
- debounce_text_changes = 150, -- Amount of miliseconds neovim will wait to send the next document update notification.
- },
-
- -- The data on this option is send to the server, to announce what features the editor can support.
- capabilities = require("cmp_nvim_lsp").update_capabilities(vim.lsp.protocol.make_client_capabilities()),
- on_attach = function(client, bufnr)
- vim.api.nvim_exec_autocmds("User", { pattern = "LspAttached" })
- end,
-}
-
-local lspconfig = require('lspconfig')
-
-lspconfig.util.default_config = vim.tbl_deep_extend(
- 'force',
- lspconfig.util.default_config,
- lsp_defaults
-)
-
----
--- LSP Servers
----
-
-if utils.executable("pylsp") then
- lspconfig.pylsp.setup {
- on_attach = custom_attach,
- settings = {
- pylsp = {
- plugins = {
- pylint = { enabled = true, executable = "pylint" },
- pyflakes = { enabled = false },
- pycodestyle = { enabled = false },
- jedi_completion = { fuzzy = true },
- pyls_isort = { enabled = true },
- pylsp_mypy = { enabled = true },
- },
- },
- },
- flags = {
- debounce_text_changes = 200,
- },
- capabilities = capabilities,
- }
-else
- vim.notify("pylsp not found!", vim.log.levels.WARN, { title = "Nvim-config" })
-end
-
--- if utils.executable('pyright') then
--- lspconfig.pyright.setup{
--- on_attach = custom_attach,
--- capabilities = capabilities
--- }
--- else
--- vim.notify("pyright not found!", vim.log.levels.WARN, {title = 'Nvim-config'})
--- end
-
-if utils.executable("clangd") then
- lspconfig.clangd.setup {
- on_attach = custom_attach,
- capabilities = capabilities,
- filetypes = { "c", "cpp", "cc" },
- flags = {
- debounce_text_changes = 500,
- },
- }
-else
- vim.notify("clangd not found!", vim.log.levels.WARN, { title = "Nvim-config" })
-end
-
--- set up vim-language-server
-if utils.executable("vim-language-server") then
- lspconfig.vimls.setup {
- on_attach = custom_attach,
- flags = {
- debounce_text_changes = 500,
- },
- capabilities = capabilities,
- }
-else
- vim.notify("vim-language-server not found!", vim.log.levels.WARN, { title = "Nvim-config" })
-end
-
--- set up bash-language-server
-if utils.executable("bash-language-server") then
- lspconfig.bashls.setup {
- on_attach = custom_attach,
- capabilities = capabilities,
- }
-end
-
-if utils.executable("lua-language-server") then
- -- settings for lua-language-server can be found on https://github.com/sumneko/lua-language-server/wiki/Settings .
- lspconfig.sumneko_lua.setup {
- on_attach = custom_attach,
- settings = {
- Lua = {
- runtime = {
- -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
- version = "LuaJIT",
- },
- diagnostics = {
- -- Get the language server to recognize the `vim` global
- globals = { "vim" },
- },
- workspace = {
- -- Make the server aware of Neovim runtime files,
- -- see also https://github.com/sumneko/lua-language-server/wiki/Libraries#link-to-workspace .
- -- Lua-dev.nvim also has similar settings for sumneko lua, https://github.com/folke/lua-dev.nvim/blob/main/lua/lua-dev/sumneko.lua .
- library = {
- fn.stdpath("data") .. "/site/pack/packer/opt/emmylua-nvim",
- fn.stdpath("config"),
- },
- maxPreload = 2000,
- preloadFileSize = 50000,
- },
- },
- },
- capabilities = capabilities,
- }
-end
--- Lua
-lspconfig.sumneko_lua.setup({
- settings = {
- Lua = {
- runtime = {
- -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
- version = 'LuaJIT',
- },
- diagnostics = {
- -- Get the language server to recognize the `vim` global
- globals = {'vim'},
- },
- workspace = {
- -- Make the server aware of Neovim runtime files
- library = vim.api.nvim_get_runtime_file("", true),
- },
- -- Do not send telemetry data containing a randomized but unique identifier
- telemetry = {
- enable = false,
- },
- },
- },
- single_file_support = true,
- on_attach = function(client, bufnr)
- print('hello')
- lspconfig.util.default_config.on_attach(client, bufnr)
- end
-})
-
-lspconfig.sumneko_lua.setup({
-on_attach = custom_attach,
-settings = {
- Lua = {
- runtime = {
- -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
- version = "LuaJIT",
- -- Setup your lua path
- path = runtime_path,
- },
- diagnostics = {
- -- Get the language server to recognize the `vim` global
- globals = { "vim" },
- },
- workspace = {
- -- Make the server aware of Neovim runtime files
- library = api.nvim_get_runtime_file("", true),
- },
- -- Do not send telemetry data containing a randomized but unique identifier
- telemetry = {
- enable = false,
- },
- },
-},
-})
-
- lspconfig.sumneko_lua.setup {
- on_attach = custom_attach,
- settings = {
- Lua = {
- runtime = {
- -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
- version = "LuaJIT",
- },
- diagnostics = {
- -- Get the language server to recognize the `vim` global
- globals = { "vim" },
- },
- workspace = {
- -- Make the server aware of Neovim runtime files,
- -- see also https://github.com/sumneko/lua-language-server/wiki/Libraries#link-to-workspace .
- -- Lua-dev.nvim also has similar settings for sumneko lua, https://github.com/folke/lua-dev.nvim/blob/main/lua/lua-dev/sumneko.lua .
- library = {
- fn.stdpath("data") .. "/site/pack/packer/opt/emmylua-nvim",
- fn.stdpath("config"),
- },
- maxPreload = 2000,
- preloadFileSize = 50000,
- },
- },
- },
- capabilities = capabilities,
- }
-
-require'lspconfig'.sumneko_lua.setup {
- settings = {
- Lua = {
- runtime = {
- -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
- version = 'LuaJIT',
- },
- diagnostics = {
- -- Get the language server to recognize the `vim` global
- globals = {'vim'},
- },
- workspace = {
- -- Make the server aware of Neovim runtime files
- library = vim.api.nvim_get_runtime_file("", true),
- },
- -- Do not send telemetry data containing a randomized but unique identifier
- telemetry = {
- enable = false,
- },
- },
- },
-}
-
-
-
-require'lspconfig'.sumneko_lua.setup{}
-
-
-**Default values:**
- - `cmd` :
- { "lua-language-server" }
- - `filetypes` :
- - `log_level` :
- ```lua
- 2
- ```
- - `root_dir` :
- ```lua
- root_pattern(".luarc.json", ".luacheckrc", ".stylua.toml", "stylua.toml", "selene.toml", ".git")
- ```
- - `settings` :
- ```lua
- {
- Lua = {
- telemetry = {
- enable = false
- }
- }
- }
- - `single_file_support` :
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-**Snippet to enable the language server:**
-```lua
-require'lspconfig'.ccls.setup{}
-```
-
-
-**Default values:**
- - `cmd` :
- ```lua
- { "ccls" }
- ```
- - `filetypes` :
- ```lua
- { "c", "cpp", "objc", "objcpp" }
- ```
- - `offset_encoding` :
- ```lua
- "utf-32"
- ```
- - `root_dir` :
- ```lua
- root_pattern('compile_commands.json', '.ccls', '.git')
- ```
- - `single_file_support` :
- ```lua
- false
- ```
-
-
-
-**Snippet to enable the language server:**
-```lua
-require'lspconfig'.clangd.setup{}
-```
-**Commands:**
-- ClangdSwitchSourceHeader: Switch between source/header
-
-**Default values:**
- - `capabilities` :
- ```lua
- default capabilities, with offsetEncoding utf-8
- ```
- - `cmd` :
- ```lua
- { "clangd" }
- ```
- - `filetypes` :
- ```lua
- { "c", "cpp", "objc", "objcpp", "cuda", "proto" }
- ```
- - `root_dir` :
- ```lua
- root_pattern(
- '.clangd',
- '.clang-tidy',
- '.clang-format',
- 'compile_commands.json',
- 'compile_flags.txt',
- 'configure.ac',
- '.git'
- )
-
- ```
- - `single_file_support` :
- ```lua
- true
- ```
-
-
-**Snippet to enable the language server:**
-```lua
-require'lspconfig'.pyright.setup{}
-```
-**Commands:**
-- PyrightOrganizeImports: Organize Imports
-
-**Default values:**
- - `cmd` :
- ```lua
- { "pyright-langserver", "--stdio" }
- ```
- - `filetypes` :
- ```lua
- { "python" }
- ```
- - `root_dir` :
- ```lua
- see source file
- ```
- - `settings` :
- ```lua
- {
- python = {
- analysis = {
- autoSearchPaths = true,
- diagnosticMode = "workspace",
- useLibraryCodeForTypes = true
- }
- }
- }
- ```
- - `single_file_support` :
- ```lua
- true
- ```
-
-## rls
-
-https://github.com/rust-lang/rls
-
-rls, a language server for Rust
-
-See https://github.com/rust-lang/rls#setup to setup rls itself.
-See https://github.com/rust-lang/rls#configuration for rls-specific settings.
-All settings listed on the rls configuration section of the readme
-must be set under settings.rust as follows:
-
-```lua
-nvim_lsp.rls.setup {
- settings = {
- rust = {
- unstable_features = true,
- build_on_save = false,
- all_features = true,
- },
- },
-}
-```
-
-If you want to use rls for a particular build, eg nightly, set cmd as follows:
-
-```lua
-cmd = {"rustup", "run", "nightly", "rls"}
-```
-
-
-
-**Snippet to enable the language server:**
-```lua
-require'lspconfig'.rls.setup{}
-```
-
-
-**Default values:**
- - `cmd` :
- ```lua
- { "rls" }
- ```
- - `filetypes` :
- ```lua
- { "rust" }
- ```
- - `root_dir` :
- ```lua
- root_pattern("Cargo.toml")
- ```
-
-
-## rust_analyzer
-
-https://github.com/rust-analyzer/rust-analyzer
-
-rust-analyzer (aka rls 2.0), a language server for Rust
-
-See [docs](https://github.com/rust-analyzer/rust-analyzer/tree/master/docs/user#settings) for extra settings.
-
-
-
-**Snippet to enable the language server:**
-```lua
-require'lspconfig'.rust_analyzer.setup{}
-```
-**Commands:**
-- CargoReload: Reload current cargo workspace
-
-**Default values:**
- - `cmd` :
- ```lua
- { "rust-analyzer" }
- ```
- - `filetypes` :
- ```lua
- { "rust" }
- ```
- - `root_dir` :
- ```lua
- root_pattern("Cargo.toml", "rust-project.json")
- ```
- - `settings` :
- ```lua
- {
- ["rust-analyzer"] = {}
- }
- ```
-
-## rust_analyzer
-
-https://github.com/rust-analyzer/rust-analyzer
-
-rust-analyzer (aka rls 2.0), a language server for Rust
-
-See [docs](https://github.com/rust-analyzer/rust-analyzer/tree/master/docs/user#settings) for extra settings.
-
-
-
-**Snippet to enable the language server:**
-```lua
-require'lspconfig'.rust_analyzer.setup{}
-```
-**Commands:**
-- CargoReload: Reload current cargo workspace
-
-**Default values:**
- - `cmd` :
- ```lua
- { "rust-analyzer" }
- ```
- - `filetypes` :
- ```lua
- { "rust" }
- ```
- - `root_dir` :
- ```lua
- root_pattern("Cargo.toml", "rust-project.json")
- ```
- - `settings` :
- ```lua
- {
- ["rust-analyzer"] = {}
- }
- ```
-
-
diff --git a/lua/plugins/lspconfig.lua b/lua/plugins/lspconfig.lua
deleted file mode 100644
index a130dcd..0000000
--- a/lua/plugins/lspconfig.lua
+++ /dev/null
@@ -1,148 +0,0 @@
---vim.lsp.set_log_level("debug")
-
-local status, nvim_lsp = pcall(require, "lspconfig")
-if not status then
- return
-end
-
-local protocol = require("vim.lsp.protocol")
-
--- Use an on_attach function to only map the following keys
--- after the language server attaches to the current buffer
-local on_attach = function(client, bufnr)
- local function buf_set_keymap(...)
- vim.api.nvim_buf_set_keymap(bufnr, ...)
- end
-
- local function buf_set_option(...)
- vim.api.nvim_buf_set_option(bufnr, ...)
- end
-
- --Enable completion triggered by <c-x><c-o>
- buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc")
-
- -- Mappings.
- local opts = { noremap = true, silent = true }
-
- -- See `:help vim.lsp.*` for documentation on any of the below functions
- buf_set_keymap("n", "gD", "<Cmd>lua vim.lsp.buf.declaration()<CR>", opts) -- most of the lsp server don't implement textDocument/Declaration, so gD is useless for now.
- --buf_set_keymap('n', 'gd', '<Cmd>lua vim.lsp.buf.definition()<CR>', opts)
- buf_set_keymap("n", "gi", "<cmd>lua vim.lsp.buf.implementation()<CR>", opts)
- --buf_set_keymap('n', 'K', '<Cmd>lua vim.lsp.buf.hover()<CR>', opts)
-
- -- add rust specific keymappings
- if client.name == "rust_analyzer" then
- buf_set_keymap("n", "<leader>rr", "<cmd>RustRunnables<CR>", opts)
- buf_set_keymap("n", "<leader>ra", "<cmd>RustHoverAction<CR>", opts)
- end
-
- -- formatting
- if client.server_capabilities.documentFormattingProvider then
- vim.api.nvim_create_autocmd("BufWritePre", {
- group = vim.api.nvim_create_augroup("Format", { clear = true }),
- buffer = bufnr,
- callback = function()
- vim.lsp.buf.format()
- end,
- })
- end
-end
-
-protocol.CompletionItemKind = {
- -- "", -- Text
- -- "", -- Method
- -- "", -- Function
- -- "", -- Constructor
- -- "", -- Field
- -- "", -- Variable
- -- "", -- Class
- -- "ﰮ", -- Interface
- -- "", -- Module
- -- "", -- Property
- -- "", -- Unit
- -- "", -- Value
- -- "", -- Enum
- -- "", -- Keyword
- -- "", -- Snippet
- -- "", -- Color
- -- "", -- File
- -- "", -- Reference
- -- "", -- Folder
- -- "", -- EnumMember
- -- "", -- Constant
- -- "", -- Struct
- -- "", -- Event
- -- "ﬦ", -- Operator
- -- "", -- TypeParameter
- File = { icon = "", hl = "TSURI" },
- Module = { icon = "", hl = "TSNamespace" },
- Namespace = { icon = "", hl = "TSNamespace" },
- Package = { icon = "", hl = "TSNamespace" },
- Class = { icon = "ﴯ", hl = "TSType" },
- Method = { icon = "", hl = "TSMethod" },
- Property = { icon = "", hl = "TSMethod" },
- Field = { icon = "", hl = "TSField" },
- Constructor = { icon = "", hl = "TSConstructor" },
- Enum = { icon = "", hl = "TSType" },
- Interface = { icon = "", hl = "TSType" },
- Function = { icon = "", hl = "TSFunction" },
- Variable = { icon = "", hl = "TSConstant" },
- Constant = { icon = "", hl = "TSConstant" },
- String = { icon = "ﮜ", hl = "TSString" },
- Number = { icon = "", hl = "TSNumber" },
- Boolean = { icon = "ﮒ", hl = "TSBoolean" },
- Array = { icon = "", hl = "TSConstant" },
- Object = { icon = "⦿", hl = "TSType" },
- Key = { icon = "", hl = "TSType" },
- Null = { icon = "ﳠ", hl = "TSType" },
- EnumMember = { icon = "", hl = "TSField" },
- Struct = { icon = "ﴯ", hl = "TSType" },
- Event = { icon = "🗲", hl = "TSType" },
- Operator = { icon = "+", hl = "TSOperator" },
- TypeParameter = { icon = "𝙏", hl = "TSParameter" },
-}
-
--- Set up completion using nvim_cmp with LSP source
-local capabilities = require("cmp_nvim_lsp").update_capabilities(vim.lsp.protocol.make_client_capabilities())
-
-nvim_lsp.flow.setup({
- on_attach = on_attach,
- capabilities = capabilities,
-})
-
-nvim_lsp.sumneko_lua.setup({
- on_attach = on_attach,
- settings = {
- Lua = {
- diagnostics = {
- -- Get the language server to recognize the `vim` global
- globals = { "vim" },
- },
-
- workspace = {
- -- Make the server aware of Neovim runtime files
- library = vim.api.nvim_get_runtime_file("", true),
- checkThirdParty = false,
- },
- },
- },
-})
-
--- Diagnostic symbols in the sign column (gutter)
---local signs = { Error = " ", Warn = " ", Hint = " ", Info = " " }
---local signs = { Error = " ", Warn = " ", Hint = " ", Info = "􀅴 " }
-local signs = { Error = " ", Warn = " ", Hint = " ", Info = "􀅴 " }
-for type, icon in pairs(signs) do
- local hl = "DiagnosticSign" .. type
- vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = "" })
-end
---
-vim.diagnostic.config({
- virtual_text = {
- prefix = "●",
- },
- update_in_insert = true,
- float = {
- source = "always", -- Or "if_many"
- },
-})
diff --git a/lua/plugins/lspkind.lua b/lua/plugins/lspkind.lua
deleted file mode 100644
index 72ca5c2..0000000
--- a/lua/plugins/lspkind.lua
+++ /dev/null
@@ -1,47 +0,0 @@
-local status, lspkind = pcall(require, "lspkind")
-if (not status) then return end
-
-lspkind.init({
- -- enables text annotations
- --
- -- default: true
- mode = 'symbol',
-
- -- default symbol map
- -- can be either 'default' (requires nerd-fonts font) or
- -- 'codicons' for codicon preset (requires vscode-codicons font)
- --
- -- default: 'default'
- preset = 'codicons',
-
- -- override preset symbols
- --
- -- default: {}
- symbol_map = {
- Text = "",
- Method = "",
- Function = "",
- Constructor = "",
- Field = "ﰠ",
- Variable = "",
- Class = "ﴯ",
- Interface = "",
- Module = "",
- Property = "ﰠ",
- Unit = "塞",
- Value = "",
- Enum = "",
- Keyword = "",
- Snippet = "",
- Color = "",
- File = "",
- Reference = "",
- Folder = "",
- EnumMember = "",
- Constant = "",
- Struct = "פּ",
- Event = "",
- Operator = "",
- TypeParameter = ""
- },
-})
diff --git a/lua/plugins/lspsaga-22.10.13-22:51-bak.lua b/lua/plugins/lspsaga-22.10.13-22:51-bak.lua
deleted file mode 100644
index ceb1099..0000000
--- a/lua/plugins/lspsaga-22.10.13-22:51-bak.lua
+++ /dev/null
@@ -1,61 +0,0 @@
-local status, saga = pcall(require, "lspsaga")
-if not status then
- return
-end
-
-saga.init_lsp_saga({
- -- when cursor in saga window you config these to move
- move_in_saga = { prev = "k", next = "j" },
- diagnostic_header = { " ", " ", " ", " " },
- scroll_in_preview = {
- scroll_down = "<C-d>",
- scroll_up = "<C-u>",
- },
- code_action_icon = "ﯦ ",
- -- Same as nvim-lightbulb but async
- code_action_lightbulb = {
- sign = false,
- virtual_text = true,
- },
- finder_icons = {
- def = " ",
- ref = " ",
- link = " ",
- },
- finder_action_keys = {
- open = "<CR>",
- "o",
- vsplit = "gv",
- split = "gs",
- tabe = "t",
- quit = "gq",
- scroll_down = "<C-f>",
- scroll_up = "<C-b>",
- },
-
- -- Show symbols in winbar must be neovim 0.8.0,
- -- Close it until neovim 0.8.0 become stable
- symbol_in_winbar = {
- in_custom = false,
- --enable = enable_winbar,
- separator = "  ",
- show_file = true,
- click_support = false,
- },
-})
-
- -- Mappings.
-local map = vim.api.nvim_set_keymap
-local opts = { noremap = true, silent = true }
-
-map("n", "gd", "<Cmd>Lspsaga lsp_finder<CR>", opts) -- Press "o" to open the reference location
-map("n", "gp", "<Cmd>Lspsaga peek_definition<CR>", opts)
-map("n", "K", "<Cmd>Lspsaga hover_doc<CR>", opts)
-map("n", "gk", "<Cmd>Lspsaga diagnostic_jump_prev<CR>", opts)
-map("n", "gj", "<Cmd>Lspsaga diagnostic_jump_next<CR>", opts)
-map("n", "gs", "<Cmd>Lspsaga signature_help<CR>", opts) -- Default is <C-k>
-map("n", "go", "<Cmd>Lspsaga show_line_diagnostics<CR>", opts)
-map("n", "gr", "<Cmd>Lspsaga rename<CR>", opts)
-map("n", "ga", "<Cmd>Lspsaga code_action<CR>", opts)
-map("n", "[d", "<Cmd>lua vim.lsp.diagnostic.goto_prev()<CR>", opts)
-map("n", "]d", "<Cmd>lua vim.lsp.diagnostic.goto_next()<CR>", opts)
diff --git a/lua/plugins/lspsaga.lua b/lua/plugins/lspsaga.lua
deleted file mode 100644
index 0bf1ec7..0000000
--- a/lua/plugins/lspsaga.lua
+++ /dev/null
@@ -1,145 +0,0 @@
-require "lspsaga".init_lsp_saga {
- -- "single" | "double" | "rounded" | "bold" | "plus"
- border_style = "rounded",
- --border_style = "single",
- saga_winblend = 30,
- move_in_saga = { next = '<C-n>', prev = '<C-p>' },
- --move_in_saga = { prev = "k", next = "j" },
- scroll_in_preview = {
- scroll_down = "<C-d>",
- scroll_up = "<C-u>",
- },
- diagnostic_header = { " ", " ", " ", " " },
- -- add bracket or something with diagnostic source, just have 2 elements
- -- use emoji lightbulb in default
- code_action_icon = "",
- --code_action_icon = "ﯦ ",
- -- if true can press number to execute the codeaction in codeaction window
- code_action_num_shortcut = true,
- -- same as nvim-lightbulb but async
- code_action_lightbulb = {
- enable = false,
- sign = false,
- sign_priority = 20, --
- virtual_text = false,
- },
- finder_icons = {
- def = " ",
- ref = " ",
- link = " ",
- },
- -- preview lines of lsp_finder and definition preview
- max_preview_lines = 5,
- definition_action_keys = {
- edit = '<CR>',
- vsplit = '<C-y>',
- split = '<C-x>',
- tabe = '<C-t>',
- quit = '<ESC>',
- },
- -- definition_preview_quit = '<ESC>',
- -- finder_preview_hl_ns = 8,
- finder_action_keys = {
- open = { 'o', '<CR>' },
- vsplit = "v",
- split = "s",
- tabe = "t",
- quit = "<ESC>",
- scroll_down = "<C-j>",
- scroll_up = "<C-k>", -- quit can be a table
- },
- code_action_keys = {
- quit = "<ESC>",
- exec = "<CR>",
- },
- rename_action_quit = "<ESC>",
- rename_in_select = true,
- symbol_in_winbar = {
- enable = true,
- --in_custom = false,
- in_custom = true,
- separator = '  ',
- --show_file = false,
- show_file = true,
- click_support = false,
- --click_support = false,
- },
- --show_outline = {
- -- win_position = 'right',
- -- --set special filetype win that outline window split.like NvimTree neotree
- -- -- defx, db_ui
- -- min_with = '',
- -- win_width = 40,
- -- auto_enter = false,
- -- auto_preview = true,
- -- virt_text = 'x',
- -- jump_key = 'l',
- -- -- auto refresh when change buffer
- -- auto_refresh = true,
- --},
- custom_kind = {
- File = { " " },
- Module = { " " },
- Namespace = { "ﱕ " },
- Package = { " " },
- Class = { "ﴯ " },
- Method = { "" },
- Property = { "ﰠ " },
- Field = { "ﰠ " },
- Constructor = { " " },
- Enum = { " " },
- Interface = { " " },
- Function = { " " },
- Variable = { " " },
- Constant = { " " },
- String = { " " },
- Number = { " " },
- Boolean = { " " },
- Array = { " " },
- Object = { " " },
- Key = { "- " },
- Null = { " " },
- EnumMember = { " " },
- Struct = { " " },
- Event = { " " },
- Operator = { " " },
- TypeParameter = { " " },
- TypeAlias = { " " },
- Parameter = { " " },
- StaticMethod = { " " },
- Macro = { "廓" },
- },
-}
-
- -- Mappings.
-local map = vim.api.nvim_set_keymap
-local opts = { noremap = true, silent = true }
-
-map("n", "gd", "<CMD>Lspsaga peek_definition<CR>", opts)
---map("n", "gp", "<Cmd>Lspsaga peek_definition<CR>", opts)
-map("n", "gi", "<CMD>Lspsaga lsp_finder<CR>", opts)
-map("n", "gh", "<CMD>Lspsaga hover_doc<CR>", opts)
-map("n", "gs", "<CMD>Lspsaga signature_help<CR>", opts)
-map("n", "ga", "<CMD>Lspsaga code_action<CR>", opts)
-map("v", "ga", "<CMD><C-u>Lspsaga range_code_action<CR>", opts)
-map("n", "gl", "<CMD>Lspsaga show_line_diagnostics<CR>", opts)
---map("n", "go", "<CMD>Lspsaga open_floaterm zsh<CR>", opts)
-map("n", ";D", "<CMD>Lspsaga show_cursor_diagnostics<CR>", opts)
-map("n", "<gr>", "<CMD>Lspsaga rename<CR>", opts)
-map("n", "gk", "<CMD>Lspsaga diagnostic_jump_prev<CR>", opts)
-map("n", "gj", "<CMD>Lspsaga diagnostic_jump_next<CR>", opts)
-map("n", "[d", "<Cmd>lua vim.lsp.diagnostic.goto_prev()<CR>", opts)
-map("n", "]d", "<Cmd>lua vim.lsp.diagnostic.goto_next()<CR>", opts)
-map("t", "<ESC>", "<CMD>Lspsaga close_floaterm<CR>", opts)
-
---vim.api.nvim_command("highlight LspFloatWinNormal guibg=none ")
---hi LspFloatWinNormal guibg=none
-
-
--- vim.api.nvim_create_autocmd("BufEnter", {
--- callback = function ()
--- if #vim.api.nvim_list_wins() == 1 and vim.bo.filetype == "lspsagaoutline" then
--- vim.cmd "quit"
--- end
--- end
--- })
diff --git a/lua/plugins/lualine.lua b/lua/plugins/lualine.lua
deleted file mode 100644
index 9d86e21..0000000
--- a/lua/plugins/lualine.lua
+++ /dev/null
@@ -1,423 +0,0 @@
-local lualine_status_ok, lualine = pcall(require, "lualine")
-if not lualine_status_ok then
- print("lualine.nvim is etiher broken or is not installed.")
- return
-end
-
---local colors = require('tokyonight.colors').setup()
---local colors = {
---bg_dark = "#1f2335",
---bg = "#24283b",
---fg = "#c0caf5",
---fg_gutter = "#3b4261",
---green = "#a6e3a1",
---red = "#f38ba8",
---}
-
---local colors = {
--- gray = '#23232e',
--- lightgray = '#5f6a8e',
--- orange = '#ffb86c',
--- purple = '#bd93f9',
--- red = '#ff5555',
--- yellow = '#f1fa8c',
--- green = '#50fa7b',
--- white = '#f8f8f2',
--- black = '#282a36',
---}
-local colors = {
- nobg = nil,
- blue = "#87b0f9",
- mauve = "#cba6f7",
- red = "#f38ba8",
- green = "#a6e3a1",
- peach = "#fab387",
- white = "#c6d0f5",
- gray = "#a1a8c9",
- black = "#1e1e2e",
- innerbg = nil,
- outerbg = "#16161D",
-}
---require("lualine").setup({
--- Your lua part of config goes here
-require("lualine").setup({
- options = {
- icons_enabled = true,
- --theme = "auto",
- theme = require("plugins.linecolor").theme(),
- --theme = {
- -- We are going to use lualine_c an lualine_x as left and
- -- right section. Both are highlighte by c theme . So we
- -- are just setting default looks o statusline
- --normal = { c = { fg = colors.fg, bg = colors.bg } },
- --inactive = { c = { fg = colors.fg, bg = colors.bg } },
- --},
- component_separators = { left = "", right = "" },
- section_separators = { left = "", right = "" },
- --component_separators = { left = '|', right = '|'},
- --section_separators = { left = '', right = ''},
- disabled_filetypes = {
- statusline = {},
- winbar = {},
- },
- ignore_focus = {},
- always_divide_middle = true,
- globalstatus = true,
- refresh = {
- statusline = 1000,
- tabline = 1000,
- winbar = 1000,
- },
- },
- sections = {
- lualine_a = { "mode" },
- lualine_b = {
- "branch",
- {
- "diff",
- colored = true,
- diff_color = {
- added = "DiffAdd",
- modified = "DiffChange",
- removed = "DiffDelete",
- },
- },
- {
- "diagnostics",
-
- sources = { "nvim_lsp" },
- sections = { "error", "warn", "info" },
-
- diagnostics_color = {
- error = "DiagnosticError",
- warn = "DiagnosticWarn",
- info = "DiagnosticInfo",
- },
- colored = true,
- update_in_insert = false,
- always_visible = false,
- },
- },
- --lualine_b = { "branch", "diff", "diagnostics" },
- lualine_c = {
- --{"filetype", padding={right=0}, icon_only = true, component_separators = {left = "", right = ""}},
- --{"filename", padding={left=0}, color = {gui = "bold,italic"}},
- --{ "filetype",
- -- icon_only = true,
- --},
- {
- "filename",
- --color = {gui = "bold,italic", fg = '#ffaa88', bg = 'nil' },
- --component_separators = {left = "", right = ""},
- },
- },
- lualine_x = { "encoding", "fileformat", "filetype" },
- --lualine_x = {
- -- {"encoding", color = { bg = colors.black }, component_separators = {left = "", right = ""}},
- -- {"fileformat", color = { bg = colors.black }, component_separators = {left = "", right = ""}},
- -- {"filetype", color = { bg = colors.black }, component_separators = {left = "", right = ""}},
- --},
- lualine_y = { "progress" },
- lualine_z = { "location" },
- },
- inactive_sections = {
- lualine_a = {},
- lualine_b = {},
- lualine_c = { "filename" },
- lualine_x = { "location" },
- lualine_y = {},
- lualine_z = {},
- },
- -- tabline = {},
- tabline = {
- --lualine_a = { "mode" },
- --lualine_a = {custom_fname},
- lualine_a = {
- {
- "buffers",
- show_filename_only = false,
- show_modified_status = true,
- mode = 4,
- buffers_color = {
- active = { bg = colors.nobg, fg = colors.black }, -- color for active buffer
- --inactive = { bg = colors.white, fg = colors.fg_gutter }, -- color for inactive buffer
- --active = { bg = colors.bg, fg = colors.white }, -- color for active buffer
- --inactive = { bg = colors.bg_dark, fg = colors.fg_gutter }, -- color for inactive buffer
- ----color = function()
- ---- return { bg = vim.bo.modified and '#aa3355' or '#33aa88' }
- ----end,
- },
- symbols = {
- modified = " ●", -- Text to show when the buffer is modified
- alternate_file = "", -- Text to show to identify the alternate file
- --directory = "", -- Text to show when the buffer is a directory
- },
- max_length = vim.o.columns * 5 / 6,
- --{{function()
- -- local bg = 'hi! lualine_buffers_color' -- not modified
- -- if vim.bo.modified then bg = '#c70039' -- unsaved
- -- elseif not vim.bo.readonly then bg = 'hi! lualine_buffers_color' end -- readonly
- -- vim.cmd('hi! lualine_buffers_color guibg='..bg)
- --end,
- --color = 'hi! lualine_buffers_color',
- --}},
- },
- },
- lualine_b = {},
- lualine_c = {},
- lualine_x = {},
- lualine_y = {},
- lualine_z = {},
- --lualine_z = { "tabs" },
- },
- --tabline = {
- -- lualine_a = { "mode" },
- -- lualine_b = { "buffers" },
- -- lualine_c = { "branch" },
- -- --lualine_c = { "branch", "diff", "diagnostics" },
- -- lualine_x = {},
- -- lualine_y = {},
- -- lualine_z = { "tabs" },
- --},
- --winbar = {
- -- lualine_a = {},
- -- lualine_b = {},
- -- lualine_c = {'filename'},
- -- lualine_x = {},
- -- lualine_y = {},
- -- lualine_z = {}
- --},
- --inactive_winbar = {
- -- lualine_a = {},
- -- lualine_b = {},
- -- lualine_c = {},
- -- lualine_x = {},
- -- lualine_y = {},
- -- lualine_z = {}
- --},
- winbar = {},
- inactive_winbar = {},
- --extensions = {},
- extensions = { "quickfix" },
-})
---require("lualine").statusline()
---require("lualine").tabline()
---if not lualine_status_ok then
--- print("lualine.nvim is etiher broken or is not installed.")
--- return
---end
---local lualine_status_ok, lualine = pcall(require, "lualine")
---if not lualine_status_ok then
--- print("lualine.nvim is etiher broken or is not installed.")
--- return
---end
---local utils = require("heirline.utils")
-
---local M = {}
-
--- stylua: ignore start
---M.colours = {--{{{
----- Color table for highlights
----- stylua: ignore
---local colors = {
--- bg = '#2E3440',
--- fg = '#E5E9F0',
--- yellow = '#EBCB8B',
--- cyan = '#88C0D0',
--- darkblue = '#5E81AC',
--- green = '#A3BE8C',
--- orange = '#D08770',
--- violet = '#B48EAD',
--- magenta = '#B48EAD',
--- blue = '#81A1C1',
--- red = '#BF616A',
---}
---
---local conditions = {
--- buffer_not_empty = function()
--- return vim.fn.empty(vim.fn.expand("%:t")) ~= 1
--- end,
--- hide_in_width = function()
--- return vim.fn.winwidth(0) > 80
--- end,
--- check_git_workspace = function()
--- local filepath = vim.fn.expand("%:p:h")
--- local gitdir = vim.fn.finddir(".git", filepath .. ";")
--- return gitdir and #gitdir > 0 and #gitdir < #filepath
--- end,
---}
-
--- Config
---local config = {
---require('lualine').setup {
--- options = {
--- -- Disable sections and component separators
--- component_separators = "",
--- section_separators = "",
--- theme = {
--- -- We are going to use lualine_c an lualine_x as left and
--- -- right section. Both are highlighte by c theme . So we
--- -- are just setting default looks o statusline
--- normal = { c = { fg = colors.fg, bg = colors.bg } },
--- inactive = { c = { fg = colors.fg, bg = colors.bg } },
--- },
--- disabled_filetypes = { "NvimTree" },
--- },
--- sections = {
--- -- these are to remove the defaults
--- lualine_a = {},
--- lualine_b = {},
--- lualine_y = {},
--- lualine_z = {},
--- -- These will be filled later
--- lualine_c = {},
--- lualine_x = {},
--- },
--- inactive_sections = {
--- -- these are to remove the defaults
--- lualine_a = {},
--- lualine_b = {},
--- lualine_y = {},
--- lualine_z = {},
--- lualine_c = {},
--- lualine_x = {},
--- },
---}
---
----- Inserts a component in lualine_c at left section
---local function ins_left(component)
--- table.insert(lualine.sections.lualine_c, component)
---end
---
----- Inserts a component in lualine_x ot right section
---local function ins_right(component)
--- table.insert(lualine.sections.lualine_x, component)
---end
---
---ins_left({
--- function()
--- return "▊"
--- end,
--- color = { fg = colors.green }, -- Sets highlighting of component
--- padding = { left = 0, right = 1 }, -- We don't need space before this
---})
---
---ins_left({
--- -- mode component
--- function()
--- return ""
--- end,
--- color = function()
--- -- auto change color according to neovims mode
--- local mode_color = {
--- n = colors.blue,
--- i = colors.green,
--- v = colors.violet,
--- ["�"] = colors.blue,
--- V = colors.blue,
--- c = colors.magenta,
--- no = colors.red,
--- s = colors.orange,
--- S = colors.orange,
--- ic = colors.yellow,
--- R = colors.violet,
--- Rv = colors.violet,
--- cv = colors.red,
--- ce = colors.red,
--- r = colors.cyan,
--- rm = colors.cyan,
--- ["r?"] = colors.cyan,
--- ["!"] = colors.red,
--- t = colors.red,
--- }
--- return { fg = mode_color[vim.fn.mode()] }
--- end,
--- padding = { right = 1 },
---})
---
---ins_left({
--- -- mode component
--- "mode",
--- color = function()
--- -- auto change color according to neovims mode
--- local mode_color = {
--- n = colors.red,
--- i = colors.green,
--- v = colors.violet,
--- ["�"] = colors.blue,
--- V = colors.blue,
--- c = colors.magenta,
--- no = colors.red,
--- s = colors.orange,
--- S = colors.orange,
--- ic = colors.yellow,
--- R = colors.violet,
--- Rv = colors.violet,
--- cv = colors.red,
--- ce = colors.red,
--- r = colors.cyan,
--- rm = colors.cyan,
--- ["r?"] = colors.cyan,
--- ["!"] = colors.red,
--- t = colors.red,
--- }
--- return { fg = mode_color[vim.fn.mode()] }
--- end,
--- padding = { right = 1 },
---})
---
---ins_left({
--- "branch",
--- icon = "",
--- color = { fg = colors.violet, gui = "bold" },
---})
---
---ins_left({
--- "filename",
--- cond = conditions.buffer_not_empty,
--- color = { fg = colors.aqua, gui = "bold" },
---})
---
---ins_left({
--- -- filesize component
--- "filesize",
--- cond = conditions.buffer_not_empty,
---})
---
----- Add components to right sections
---ins_right({
--- "o:encoding", -- option component same as &encoding in viml
--- fmt = string.lower, -- I'm not sure why it's upper case either ;)
--- cond = conditions.hide_in_width,
--- color = { fg = colors.yellow },
---})
---
---ins_right({
--- "fileformat",
--- fmt = string.upper,
--- icons_enabled = true, -- I think icons are cool but Eviline doesn't have them. sigh
--- color = { fg = colors.fg, gui = "bold" },
---})
---
---ins_right({
--- "filetype",
---})
---
---ins_right({ "progress", color = { fg = colors.fg, gui = "bold" } })
---
---ins_right({
--- "location",
---})
---
---ins_right({
--- function()
--- return "▊"
--- end,
--- color = { fg = colors.green },
--- padding = { left = 1 },
---})
---return M
--- Now don't forget to initialize lualine
---require("lualine").setup(config)
---require"lualine".setup(config)
---lualine.setup(config)
diff --git a/lua/plugins/mason.lua b/lua/plugins/mason.lua
deleted file mode 100644
index 69c61ba..0000000
--- a/lua/plugins/mason.lua
+++ /dev/null
@@ -1,27 +0,0 @@
-local status, mason = pcall(require, "mason")
-if (not status) then return end
-local status2, lspconfig = pcall(require, "mason-lspconfig")
-if (not status2) then return end
-
-mason.setup({
-
-})
-
-lspconfig.setup {
- ensure_installed = { "sumneko_lua" },
-}
-local keymap = vim.api.nvim_set_keymap
-local opts = { noremap = true }
-
-
-keymap('n', 'gd', ':lua vim.lsp.buf.definition()<cr>', opts)
-keymap('n', 'gD', ':lua vim.lsp.buf.declaration()<cr>', opts)
-keymap('n', 'gi', ':lua vim.lsp.buf.implementation()<cr>', opts)
-keymap('n', 'gw', ':lua vim.lsp.buf.document_symbol()<cr>', opts)
-keymap('n', 'gw', ':lua vim.lsp.buf.workspace_symbol()<cr>', opts)
-keymap('n', 'gr', ':lua vim.lsp.buf.references()<cr>', opts)
-keymap('n', 'gt', ':lua vim.lsp.buf.type_definition()<cr>', opts)
-keymap('n', 'K', ':lua vim.lsp.buf.hover()<cr>', opts)
-keymap('n', '<c-k>', ':lua vim.lsp.buf.signature_help()<cr>', opts)
-keymap('n', '<leader>af', ':lua vim.lsp.buf.code_action()<cr>', opts)
-keymap('n', '<leader>rn', ':lua vim.lsp.buf.rename()<cr>', opts)
diff --git a/lua/plugins/neoscroll.lua b/lua/plugins/neoscroll.lua
deleted file mode 100644
index d122584..0000000
--- a/lua/plugins/neoscroll.lua
+++ /dev/null
@@ -1,21 +0,0 @@
-require("neoscroll").setup({
- easing_function = "quadratic",
-})
-
-local t = {}
--- Syntax: t[keys] = {function, {function arguments}}
--- Use the "sine" easing function
-t["<C-u>"] = { "scroll", { "-vim.wo.scroll", "true", "20", [['cubic']] } }
-t["<C-d>"] = { "scroll", { "vim.wo.scroll", "true", "20", [['cubic']] } }
--- Use the "circular" easing function
-t["<C-b>"] = { "scroll", { "-vim.api.nvim_win_get_height(0)", "true", "50", [['cubic']] } }
-t["<C-f>"] = { "scroll", { "vim.api.nvim_win_get_height(0)", "true", "50", [['cubic']] } }
--- Pass "nil" to disable the easing animation (constant scrolling speed)
-t["<C-y>"] = { "scroll", { "-0.10", "false", "100", nil } }
-t["<C-e>"] = { "scroll", { "0.10", "false", "100", nil } }
--- When no easing function is provided the default easing function (in this case "quadratic") will be used
-t["zt"] = { "zt", { "10" } }
-t["zz"] = { "zz", { "10" } }
-t["zb"] = { "zb", { "10" } }
-
-require("neoscroll.config").set_mappings(t)
diff --git a/lua/plugins/null-ls.lua b/lua/plugins/null-ls.lua
deleted file mode 100644
index 7fc4377..0000000
--- a/lua/plugins/null-ls.lua
+++ /dev/null
@@ -1,26 +0,0 @@
-local null_ls_status_ok, null_ls = pcall(require, "null-ls")
-if not null_ls_status_ok then
- return
-end
-
--- https://github.com/jose-elias-alvarez/null-ls.nvim/tree/main/lua/null-ls/builtins/formatting
-local formatting = null_ls.builtins.formatting
--- https://github.com/jose-elias-alvarez/null-ls.nvim/tree/main/lua/null-ls/builtins/diagnostics
-local diagnostics = null_ls.builtins.diagnostics
-
---null_ls.setup({
--- debug = false,
--- sources = {
--- formatting.prettier.with({ extra_args = { "--no-semi", "--single-quote", "--jsx-single-quote" } }),
--- formatting.black.with({ extra_args = { "--fast" } }),
--- formatting.stylua,
--- -- diagnostics.flake8
--- },
---})
-require("null-ls").setup({
- sources = {
- require("null-ls").builtins.formatting.stylua,
- require("null-ls").builtins.diagnostics.eslint,
- require("null-ls").builtins.completion.spell,
- },
-})
diff --git a/lua/plugins/nvim-tree.lua b/lua/plugins/nvim-tree.lua
deleted file mode 100644
index 74030cb..0000000
--- a/lua/plugins/nvim-tree.lua
+++ /dev/null
@@ -1,68 +0,0 @@
-local status_ok, nvim_tree = pcall(require, "nvim-tree")
-if not status_ok then
- return
-end
-
-local config_status_ok, nvim_tree_config = pcall(require, "nvim-tree.config")
-if not config_status_ok then
- return
-end
-
-local tree_cb = nvim_tree_config.nvim_tree_callback
-
-nvim_tree.setup({
- update_focused_file = {
- enable = true,
- update_cwd = true,
- },
- renderer = {
- root_folder_modifier = ":t",
- icons = {
- glyphs = {
- default = "",
- symlink = "",
- folder = {
- arrow_open = "",
- arrow_closed = "",
- default = "",
- open = "",
- empty = "",
- empty_open = "",
- symlink = "",
- symlink_open = "",
- },
- git = {
- unstaged = "",
- staged = "S",
- unmerged = "",
- renamed = "➜",
- untracked = "U",
- deleted = "",
- ignored = "◌",
- },
- },
- },
- },
- diagnostics = {
- enable = true,
- show_on_dirs = true,
- icons = {
- hint = "",
- info = "",
- warning = "",
- error = "",
- },
- },
- view = {
- width = 30,
- --height = 30,
- side = "left",
- mappings = {
- list = {
- { key = { "l", "<CR>", "o" }, cb = tree_cb("edit") },
- { key = "h", cb = tree_cb("close_node") },
- { key = "v", cb = tree_cb("vsplit") },
- },
- },
- },
-})
diff --git a/lua/plugins/prettier.lua b/lua/plugins/prettier.lua
deleted file mode 100644
index 05d4665..0000000
--- a/lua/plugins/prettier.lua
+++ /dev/null
@@ -1,19 +0,0 @@
-local status, prettier = pcall(require, "prettier")
-if (not status) then return end
-
-prettier.setup {
- bin = 'prettierd',
- filetypes = {
- "c",
- "lua",
- "vim",
- --"css",
- --"javascript",
- --"javascriptreact",
- --"typescript",
- --"typescriptreact",
- --"json",
- --"scss",
- "less"
- }
-}
diff --git a/lua/plugins/tabline.lua b/lua/plugins/tabline.lua
deleted file mode 100644
index 4e1c506..0000000
--- a/lua/plugins/tabline.lua
+++ /dev/null
@@ -1,22 +0,0 @@
-require("tabline").setup({
- -- Defaults configuration options
- enable = true,
- options = {
- -- If lualine is installed tabline will use separators configured in lualine by default.
- -- These options can be used to override those settings.
- section_separators = { "", "" },
- component_separators = { "", "" },
- max_bufferline_percent = 66, -- set to nil by default, and it uses vim.o.columns * 2/3
- show_tabs_always = true, -- this shows tabs only when there are more than one tab or if the first tab is named
- show_devicons = true, -- this shows devicons in buffer section
- show_bufnr = true, -- this appends [bufnr] to buffer section,
- show_filename_only = false, -- shows base filename only instead of relative path in filename
- modified_icon = "+", -- change the default modified icon
- modified_italic = true, -- set to true by default; this determines whether the filename turns italic if modified
- show_tabs_only = false, -- this shows only tabs instead of tabs + buffers
- },
-})
-vim.cmd([[
- set guioptions-=e " Use showtabline in gui vim
- set sessionoptions+=tabpages,globals " store tabpages and globals in session
-]])
diff --git a/lua/plugins/telescope.lua b/lua/plugins/telescope.lua
deleted file mode 100644
index 7e70bd5..0000000
--- a/lua/plugins/telescope.lua
+++ /dev/null
@@ -1,177 +0,0 @@
-local status_ok, telescope = pcall(require, "telescope")
-if not status_ok then
- return
-end
-local actions = require("telescope.actions")
-local builtin = require("telescope.builtin")
-
-local function telescope_buffer_dir()
- return vim.fn.expand("%:p:h")
-end
-
-telescope.load_extension("fzf")
-telescope.load_extension("file_browser")
-require("telescope").load_extension("file_browser")
-local fb_actions = require("telescope").extensions.file_browser.actions
---telescope.load_extension('media_files')
-
-telescope.setup({
- defaults = {
- --
- prompt_prefix = " ",
- selection_caret = " ",
- path_display = { "smart" },
- --
- mappings = {
- i = {
- ["<C-n>"] = actions.cycle_history_next,
- ["<C-p>"] = actions.cycle_history_prev,
-
- ["<C-j>"] = actions.move_selection_next,
- ["<C-k>"] = actions.move_selection_previous,
-
- ["<C-c>"] = actions.close,
-
- ["<Down>"] = actions.move_selection_next,
- ["<Up>"] = actions.move_selection_previous,
-
- ["<CR>"] = actions.select_default,
- ["<C-x>"] = actions.select_horizontal,
- ["<C-y>"] = actions.select_vertical,
- ["<C-t>"] = actions.select_tab,
-
- ["<C-u>"] = actions.preview_scrolling_up,
- ["<C-d>"] = actions.preview_scrolling_down,
-
- ["<PageUp>"] = actions.results_scrolling_up,
- ["<PageDown>"] = actions.results_scrolling_down,
-
- ["<Tab>"] = actions.toggle_selection + actions.move_selection_worse,
- ["<S-Tab>"] = actions.toggle_selection + actions.move_selection_better,
- ["<C-q>"] = actions.send_to_qflist + actions.open_qflist,
- ["<M-q>"] = actions.send_selected_to_qflist + actions.open_qflist,
- ["<C-l>"] = actions.complete_tag,
- ["<C-_>"] = actions.which_key, -- keys from pressing <C-/>
- },
-
- n = {
- ["<esc>"] = actions.close,
- ["<CR>"] = actions.select_default,
- ["<C-x>"] = actions.select_horizontal,
- ["<C-v>"] = actions.select_vertical,
- ["<C-t>"] = actions.select_tab,
-
- ["<Tab>"] = actions.toggle_selection + actions.move_selection_worse,
- ["<S-Tab>"] = actions.toggle_selection + actions.move_selection_better,
- ["<C-q>"] = actions.send_to_qflist + actions.open_qflist,
- ["<M-q>"] = actions.send_selected_to_qflist + actions.open_qflist,
-
- ["j"] = actions.move_selection_next,
- ["k"] = actions.move_selection_previous,
- ["H"] = actions.move_to_top,
- ["M"] = actions.move_to_middle,
- ["L"] = actions.move_to_bottom,
-
- ["<Down>"] = actions.move_selection_next,
- ["<Up>"] = actions.move_selection_previous,
- ["gg"] = actions.move_to_top,
- ["G"] = actions.move_to_bottom,
-
- ["<C-u>"] = actions.preview_scrolling_up,
- ["<C-d>"] = actions.preview_scrolling_down,
-
- ["<PageUp>"] = actions.results_scrolling_up,
- ["<PageDown>"] = actions.results_scrolling_down,
-
- ["?"] = actions.which_key,
- ["cd"] = function(prompt_bufnr)
- local selection = require("telescope.actions.state").get_selected_entry()
- local dir = vim.fn.fnamemodify(selection.path, ":p:h")
- require("telescope.actions").close(prompt_bufnr)
- -- Depending on what you want put `cd`, `lcd`, `tcd`
- vim.cmd(string.format("silent lcd %s", dir))
- end,
- },
- },
- },
- pickers = {
- -- Default configuration for builtin pickers goes here:
- -- picker_name = {
- -- picker_config_key = value,
- -- ...
- -- }
- -- Now the picker_config_key will be applied every time you call this
- -- builtin picker
- },
- extensions = {
- file_browser = {
- theme = "dropdown",
- -- disables netrw and use telescope-file-browser in its place
- hijack_netrw = true,
- mappings = {
- -- your custom insert mode mappings
- ["i"] = {
- ["<C-w>"] = function()
- vim.cmd("normal vbd")
- end,
- },
- ["n"] = {
- -- your custom normal mode mappings
- ["N"] = fb_actions.create,
- ["h"] = fb_actions.goto_parent_dir,
- ["/"] = function()
- vim.cmd("startinsert")
- end,
- },
- },
- },
-
- media_files = {
- -- filetypes whitelist
- -- defaults to {"png", "jpg", "mp4", "webm", "pdf"}
- filetypes = { "png", "webp", "jpg", "jpeg" },
- find_cmd = "rg", -- find command (defaults to `fd`)
- },
- -- Your extension configuration goes here:
- -- extension_name = {
- -- extension_config_key = value,
- -- }
- -- please take a look at the readme of the extension you want to configure
- },
-})
-
-telescope.load_extension("file_browser")
-
---vim.keymap.set("n", ";f", function()
--- builtin.find_files({
--- no_ignore = false,
--- hidden = true,
--- })
---end)
-vim.keymap.set("n", ";r", function()
- builtin.live_grep()
-end)
-vim.keymap.set("n", "\\\\", function()
- builtin.buffers()
-end)
-vim.keymap.set("n", ";t", function()
- builtin.help_tags()
-end)
-vim.keymap.set("n", ";;", function()
- builtin.resume()
-end)
-vim.keymap.set("n", ";e", function()
- builtin.diagnostics()
-end)
---vim.keymap.set("n", "sf", function()
--- telescope.extensions.file_browser.file_browser({
--- path = "%:p:h",
--- cwd = telescope_buffer_dir(),
--- respect_gitignore = false,
--- hidden = true,
--- grouped = true,
--- previewer = false,
--- initial_mode = "normal",
--- layout_config = { height = 40 },
--- })
---end)
diff --git a/lua/plugins/toggleterm.lua b/lua/plugins/toggleterm.lua
deleted file mode 100644
index 912729a..0000000
--- a/lua/plugins/toggleterm.lua
+++ /dev/null
@@ -1,90 +0,0 @@
-local status_ok, toggleterm = pcall(require, "toggleterm")
-if not status_ok then
- return
-end
-
-toggleterm.setup({
- size = function(term)
- if term.direction == "horizontal" then
- return 12
- elseif term.direction == "vertical" then
- return vim.o.columns * 0.3
- end
- end,
- --size = 20,
- open_mapping = [[<leader>to]],
- hide_numbers = true,
- shade_filetypes = {},
- shade_terminals = false,
- shading_factor = 1,
- start_in_insert = true,
- insert_mappings = true,
- persist_size = true,
- direction = "float",
- --direction = "vertical",
- --direction = "horizontal",
- close_on_exit = true,
- shell = vim.o.shell,
- highlights = {
- -- highlights which map to a highlight group name and a table of it's values
- -- NOTE: this is only a subset of values, any group placed here will be set for the terminal window split
- Normal = {
- background = "#000000",
- },
- },
- float_opts = {
- width = 70,
- height = 15,
- winblend = 3,
- border = "curved",
- --winblend = 0,
- highlights = {
- border = "Normal",
- background = "Normal",
- },
- },
-})
-
-function _G.set_terminal_keymaps()
- local opts = { noremap = true }
- --local opts = {buffer = 0}
- vim.api.nvim_buf_set_keymap(0, "t", "<esc>", [[<C-\><C-n>]], opts)
- vim.api.nvim_buf_set_keymap(0, "t", "jj", [[<C-\><C-n>]], opts)
- vim.api.nvim_buf_set_keymap(0, "t", "<C-h>", [[<C-\><C-n><C-W>h]], opts)
- vim.api.nvim_buf_set_keymap(0, "t", "<C-j>", [[<C-\><C-n><C-W>j]], opts)
- vim.api.nvim_buf_set_keymap(0, "t", "<C-k>", [[<C-\><C-n><C-W>k]], opts)
- vim.api.nvim_buf_set_keymap(0, "t", "<C-l>", [[<C-\><C-n><C-W>l]], opts)
-end
-
-vim.cmd("autocmd! TermOpen term://* lua set_terminal_keymaps()")
-
-local Terminal = require("toggleterm.terminal").Terminal
-local lazygit = Terminal:new({ cmd = "lazygit", hidden = true })
-
-function _LAZYGIT_TOGGLE()
- lazygit:toggle()
-end
-
-local node = Terminal:new({ cmd = "node", hidden = true })
-
-function _NODE_TOGGLE()
- node:toggle()
-end
-
-local ncdu = Terminal:new({ cmd = "ncdu", hidden = true })
-
-function _NCDU_TOGGLE()
- ncdu:toggle()
-end
-
-local htop = Terminal:new({ cmd = "htop", hidden = true })
-
-function _HTOP_TOGGLE()
- htop:toggle()
-end
-
-local python = Terminal:new({ cmd = "python", hidden = true })
-
-function _PYTHON_TOGGLE()
- python:toggle()
-end
diff --git a/lua/plugins/treesitter.lua b/lua/plugins/treesitter.lua
deleted file mode 100644
index b081ca3..0000000
--- a/lua/plugins/treesitter.lua
+++ /dev/null
@@ -1,34 +0,0 @@
-local status, treesitter = pcall(require, "nvim-treesitter.configs")
-if (not status) then return end
-
-treesitter.setup {
- highlight = {
- enable = true,
- disable = {},
- },
- indent = {
- enable = true,
- disable = {},
- --disable = { "python", "css" }
- },
- ensure_installed = {
- "c",
- "bash",
- "lua",
- "rust",
- },
- --ensure_installed = "all", -- one of "all" or a list of languages
- --ignore_install = { "" }, -- List of parsers to ignore installing
- autotag = {
- enable = true,
- },
- efactor = {
- highlight_definitions = { enable = true },
- highlight_current_scope = { enable = true }
- }
-}
---vim.opt.foldmethod = "expr"
---vim.opt.foldexpr = "nvim_treesitter#foldexpr()"
-
---local parser_config = require "nvim-treesitter.parsers".get_parser_configs()
---parser_config.tsx.filetype_to_parsername = { "javascript", "typescript.tsx" }
diff --git a/lua/plugins/web-devicons.lua b/lua/plugins/web-devicons.lua
deleted file mode 100644
index b8396bc..0000000
--- a/lua/plugins/web-devicons.lua
+++ /dev/null
@@ -1,12 +0,0 @@
-local status, icons = pcall(require, "nvim-web-devicons")
-if (not status) then return end
-
-icons.setup {
- -- your personnal icons can go here (to override)
- -- DevIcon will be appended to `name`
- override = {
- },
- -- globally enable default icons (default to false)
- -- will get overriden by `get_icons` option
- default = true
-}
diff --git a/lua/plugins/winbar.lua b/lua/plugins/winbar.lua
deleted file mode 100644
index 1573828..0000000
--- a/lua/plugins/winbar.lua
+++ /dev/null
@@ -1,35 +0,0 @@
-require("winbar").setup({
- enabled = true,
-
- show_file_path = true,
- show_symbols = true,
-
- colors = {
- path = "", -- You can customize colors like #c946fd
- file_name = "",
- symbols = "",
- },
-
- icons = {
- file_icon_default = "",
- seperator = ">",
- editor_state = "●",
- lock_icon = "",
- },
-
- exclude_filetype = {
- "help",
- "startify",
- "dashboard",
- "packer",
- "neogitstatus",
- "NvimTree",
- "Trouble",
- "alpha",
- "lir",
- "Outline",
- "spectre_panel",
- "toggleterm",
- "qf",
- },
-})
diff --git a/lua/plugins/zen-mode.lua b/lua/plugins/zen-mode.lua
deleted file mode 100644
index 7e52854..0000000
--- a/lua/plugins/zen-mode.lua
+++ /dev/null
@@ -1,7 +0,0 @@
-local status, zenMode = pcall(require, "zen-mode")
-if (not status) then return end
-
-zenMode.setup {
-}
-
-vim.keymap.set('n', '<C-w>o', '<cmd>ZenMode<cr>', { silent = true })
diff --git a/lua/scripts/lsp-ext.lua b/lua/scripts/lsp-ext.lua
deleted file mode 100644
index c4378c6..0000000
--- a/lua/scripts/lsp-ext.lua
+++ /dev/null
@@ -1,48 +0,0 @@
---
--- lsp-ext.lua
-
-
-M = {}
-
-function M.preview_location(location, context, before_context)
- -- location may be LocationLink or Location (more useful for the former)
- context = context or 15
- before_context = before_context or 0
- local uri = location.targetUri or location.uri
- if uri == nil then
- return
- end
- local bufnr = vim.uri_to_bufnr(uri)
- if not vim.api.nvim_buf_is_loaded(bufnr) then
- vim.fn.bufload(bufnr)
- end
- local range = location.targetRange or location.range
- local contents =
- vim.api.nvim_buf_get_lines(bufnr, range.start.line - before_context, range["end"].line + 1 + context, false)
- local filetype = vim.api.nvim_buf_get_option(bufnr, "filetype")
- return vim.lsp.util.open_floating_preview(contents, filetype)
-end
-
-function M.preview_location_callback(_, method, result)
- local context = 15
- if result == nil or vim.tbl_isempty(result) then
- print("No location found: " .. method)
- return nil
- end
- if vim.tbl_islist(result) then
- M.floating_buf, M.floating_win = M.preview_location(result[1], context)
- else
- M.floating_buf, M.floating_win = M.preview_location(result, context)
- end
-end
-
-function M.peek_definition()
- if vim.tbl_contains(vim.api.nvim_list_wins(), M.floating_win) then
- vim.api.nvim_set_current_win(M.floating_win)
- else
- local params = vim.lsp.util.make_position_params()
- return vim.lsp.buf_request(0, "textDocument/definition", params, M.preview_location_callback)
- end
-end
-
-return M
diff --git a/lua/scripts/setcolors.lua b/lua/scripts/setcolors.lua
deleted file mode 100644
index 605bc84..0000000
--- a/lua/scripts/setcolors.lua
+++ /dev/null
@@ -1,121 +0,0 @@
-vim.cmd([[
-" Change the color scheme from a list of color scheme names.
-" Version 2010-09-12 from http://vim.wikia.com/wiki/VimTip341
-" Press key:
-" F8 next scheme
-" Shift-F8 previous scheme
-" Alt-F8 random scheme
-" Set the list of color schemes used by the above (default is 'all'):
-" :SetColors all (all $VIMRUNTIME/colors/*.vim)
-" :SetColors my (names built into script)
-" :SetColors blue ayu ron (these schemes)
-" :SetColors (display current scheme names)
-" Set the current color scheme based on time of day:
-" :SetColors now
-if v:version < 700 || exists('loaded_setcolors') || &cp
- finish
-endif
-
-let loaded_setcolors = 1
-let s:mycolors = ['everblush', 'ayu', 'gruvbox', 'molokai', 'onedark', 'srcery'] " colorscheme names that we use to set color
-
-" Set list of color scheme names that we will use, except
-" argument 'now' actually changes the current color scheme.
-function! s:SetColors(args)
- if len(a:args) == 0
- echo 'Current color scheme names:'
- let i = 0
- while i < len(s:mycolors)
- echo ' '.join(map(s:mycolors[i : i+4], 'printf("%-14s", v:val)'))
- let i += 5
- endwhile
- elseif a:args == 'all'
- let paths = split(globpath(&runtimepath, 'colors/*.vim'), "\n")
- let s:mycolors = uniq(sort(map(paths, 'fnamemodify(v:val, ":t:r")')))
- echo 'List of colors set from all installed color schemes'
- elseif a:args == 'my'
- let c1 = 'default srcery everblush'
- let c2 = 'gruvbox onedark'
- let c3 = 'ayu molokai'
- let s:mycolors = split(c1.' '.c2.' '.c3)
- echo 'List of colors set from built-in names'
- elseif a:args == 'now'
- call s:HourColor()
- else
- let s:mycolors = split(a:args)
- echo 'List of colors set from argument (space-separated names)'
- endif
-endfunction
-
-command! -nargs=* SetColors call s:SetColors('<args>')
-
-" Set next/previous/random (how = 1/-1/0) color from our list of colors.
-" The 'random' index is actually set from the current time in seconds.
-" Global (no 's:') so can easily call from command line.
-function! NextColor(how)
- call s:NextColor(a:how, 1)
-endfunction
-
-" Helper function for NextColor(), allows echoing of the color name to be
-" disabled.
-function! s:NextColor(how, echo_color)
- if len(s:mycolors) == 0
- call s:SetColors('all')
- endif
- if exists('g:colors_name')
- let current = index(s:mycolors, g:colors_name)
- else
- let current = -1
- endif
- let missing = []
- let how = a:how
- for i in range(len(s:mycolors))
- if how == 0
- let current = localtime() % len(s:mycolors)
- let how = 1 " in case random color does not exist
- else
- let current += how
- if !(0 <= current && current < len(s:mycolors))
- let current = (how>0 ? 0 : len(s:mycolors)-1)
- endif
- endif
- try
- execute 'colorscheme '.s:mycolors[current]
- break
- catch /E185:/
- call add(missing, s:mycolors[current])
- endtry
- endfor
- redraw
- if len(missing) > 0
- echo 'Error: colorscheme not found:' join(missing)
- endif
- if (a:echo_color)
- echo g:colors_name
- endif
-endfunction
-
-nnoremap <leader>cn :call NextColor(1)<CR>
-nnoremap <leader>cp :call NextColor(-1)<CR>
-nnoremap <leader>cc :call NextColor(0)<CR>
-
-" Set color scheme according to current time of day.
-function! s:HourColor()
- let hr = str2nr(strftime('%H'))
- if hr <= 3
- let i = 0
- elseif hr <= 7
- let i = 1
- elseif hr <= 14
- let i = 2
- elseif hr <= 18
- let i = 3
- else
- let i = 4
- endif
- let nowcolors = 'srcery onedark molokai'
- execute 'colorscheme '.split(nowcolors)[i]
- redraw
- echo g:colors_name
-endfunction
-]])
diff --git a/lua/scripts/toggleLsp.lua b/lua/scripts/toggleLsp.lua
deleted file mode 100644
index 28af698..0000000
--- a/lua/scripts/toggleLsp.lua
+++ /dev/null
@@ -1,40 +0,0 @@
-local M = {}
-
-local check_function = function(bufnr, _)
- local ok, result = pcall(vim.api.nvim_buf_get_var, bufnr, 'lsp_enabled')
- -- No buffer local variable set, so just enable by default
- if not ok then
- return true
- end
-
- return result
-end
-
-vim.lsp.handlers["textDocument/publishDiagnostics"] =
- vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, {
- underline = check_function,
- virtual_text = check_function,
- signs = check_function
- })
-
-function M.Enable()
- vim.b.lsp_enabled = true
-end
-
-function M.Disable()
- vim.b.lsp_enabled = false
-end
-
-function M.Toggle()
- if vim.b.lsp_enabled == false then
- M.Enable()
- else
- M.Disable()
- end
-end
-
-vim.cmd [[
- command! -nargs=* ToggleLsp lua require'lsp.toggle'.Toggle()
-]]
-
-return M
diff --git a/lua/startup.log b/lua/startup.log
deleted file mode 100644
index cd880b7..0000000
--- a/lua/startup.log
+++ /dev/null
@@ -1,6125 +0,0 @@
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-000.030 000.030: --- NVIM STARTING ---
-000.690 000.660: locale set
-001.457 000.767: inits 1
-001.481 000.024: window checked
-001.489 000.008: parsing arguments
-006.143 004.654: init lua interpreter
-006.432 000.289: expanding arguments
-006.485 000.054: inits 2
-007.386 000.901: init highlight
-007.390 000.004: waiting for UI
-009.710 002.320: done waiting for UI
-009.741 000.031: init screen for UI
-009.777 000.036: init default mappings
-009.849 000.072: init default autocommands
-014.503 000.337 000.337: sourcing /usr/share/nvim/runtime/ftplugin.vim
-015.383 000.089 000.089: sourcing /usr/share/nvim/runtime/indent.vim
-015.552 000.030 000.030: sourcing /usr/share/nvim/archlinux.vim
-015.561 000.082 000.052: sourcing /etc/xdg/nvim/sysinit.vim
-021.171 000.093 000.093: sourcing /usr/share/nvim/runtime/filetype.lua
-036.308 000.035 000.035: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/ftdetect/snippets.vim
-037.051 000.025 000.025: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-fugitive/ftdetect/fugitive.vim
-037.378 000.026 000.026: sourcing /usr/share/vim/vimfiles/ftdetect/PKGBUILD.vim
-037.446 000.036 000.036: sourcing /usr/share/vim/vimfiles/ftdetect/conkyrc.vim
-037.617 000.131 000.131: sourcing /usr/share/vim/vimfiles/ftdetect/firejail.vim
-037.716 000.064 000.064: sourcing /usr/share/vim/vimfiles/ftdetect/meson.vim
-038.773 017.553 017.236: sourcing /usr/share/nvim/runtime/filetype.vim
-039.391 000.027 000.027: sourcing /usr/share/nvim/runtime/ftplugin.vim
-039.936 000.021 000.021: sourcing /usr/share/nvim/runtime/indent.vim
-365.797 003.542 003.542: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/ayu-vim/colors/ayu.vim
-368.520 000.193 000.193: sourcing /usr/share/nvim/runtime/syntax/synload.vim
-368.860 001.099 000.906: sourcing /usr/share/nvim/runtime/syntax/syntax.vim
-369.137 353.529 331.193: sourcing /home/sxrdusr/.config/nvim/init.lua
-369.157 005.272: sourcing vimrc file(s)
-373.085 000.554 000.554: sourcing /usr/share/nvim/runtime/plugin/gzip.vim
-373.151 000.025 000.025: sourcing /usr/share/nvim/runtime/plugin/health.vim
-373.327 000.144 000.144: sourcing /usr/share/nvim/runtime/plugin/man.vim
-374.418 000.444 000.444: sourcing /usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-374.626 001.264 000.820: sourcing /usr/share/nvim/runtime/plugin/matchit.vim
-374.959 000.297 000.297: sourcing /usr/share/nvim/runtime/plugin/matchparen.vim
-375.038 000.042 000.042: sourcing /usr/share/nvim/runtime/plugin/netrwPlugin.vim
-375.374 000.022 000.022: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-375.392 000.321 000.299: sourcing /usr/share/nvim/runtime/plugin/rplugin.vim
-375.631 000.209 000.209: sourcing /usr/share/nvim/runtime/plugin/shada.vim
-375.731 000.054 000.054: sourcing /usr/share/nvim/runtime/plugin/spellfile.vim
-376.093 000.318 000.318: sourcing /usr/share/nvim/runtime/plugin/tarPlugin.vim
-376.308 000.167 000.167: sourcing /usr/share/nvim/runtime/plugin/tohtml.vim
-376.393 000.041 000.041: sourcing /usr/share/nvim/runtime/plugin/tutor.vim
-376.825 000.397 000.397: sourcing /usr/share/nvim/runtime/plugin/zipPlugin.vim
-378.105 001.110 001.110: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-387.539 009.175 009.175: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-388.054 004.777: loading rtp plugins
-391.529 001.769 001.769: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-392.303 000.615 000.615: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-393.117 000.042 000.042: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-396.623 003.164 003.164: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/plugin/indent_blankline.vim
-397.394 000.420 000.420: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/leap.nvim/plugin/init.lua
-398.575 000.976 000.976: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-399.616 000.673 000.673: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-400.317 000.481 000.481: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/markdown-preview.nvim/plugin/mkdp.vim
-401.132 000.394 000.394: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-402.646 001.181 001.181: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-402.889 000.071 000.071: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-403.318 000.155 000.155: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-403.887 000.309 000.309: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-410.104 005.911 005.911: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-411.745 001.430 001.430: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-412.774 000.731 000.731: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-413.166 000.113 000.113: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-413.556 000.085 000.085: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-413.859 000.093 000.093: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-414.509 000.341 000.341: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-414.920 000.062 000.062: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-416.289 000.902 000.902: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-417.493 000.175 000.175: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/init.vim
-419.578 001.080 001.080: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/parts.vim
-420.400 000.034 000.034: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/formatter/short_path.vim
-423.478 000.285 000.285: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/util.vim
-423.652 007.107 005.534: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/plugin/airline.vim
-424.176 000.279 000.279: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-easy-align/plugin/easy_align.vim
-425.502 001.103 001.103: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-eunuch/plugin/eunuch.vim
-426.259 000.483 000.483: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-floaterm/plugin/floaterm.vim
-428.992 002.485 002.485: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-fugitive/plugin/fugitive.vim
-429.902 000.528 000.528: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-obsession/plugin/obsession.vim
-431.653 001.300 001.300: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-surround/plugin/surround.vim
-432.720 000.543 000.543: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-447.697 014.724 014.724: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-unimpaired/plugin/unimpaired.vim
-449.392 000.133 000.133: sourcing /usr/share/nvim/runtime/autoload/provider/pythonx.vim
-450.395 000.326 000.326: sourcing /usr/share/nvim/runtime/autoload/remote/host.vim
-450.586 001.896 001.437: sourcing /usr/share/nvim/runtime/autoload/provider/python3.vim
-451.786 003.739 001.843: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimspector/plugin/vimspector.vim
-452.701 000.649 000.649: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-454.329 000.593 000.593: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimwiki/autoload/vimwiki/vars.vim
-457.139 000.166 000.166: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimwiki/autoload/vimwiki/u.vim
-463.032 010.052 009.294: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimwiki/plugin/vimwiki.vim
-463.438 000.046 000.046: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-463.709 000.052 000.052: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-464.077 013.014: loading packages
-465.745 000.393 000.393: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-469.545 004.983 004.590: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-470.936 001.172 001.172: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-471.544 000.451 000.451: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-472.050 000.344 000.344: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-472.695 000.497 000.497: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-473.371 000.514 000.514: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-473.511 001.472: loading after plugins
-473.539 000.029: inits 3
-478.437 004.898: reading ShaDa
-482.242 000.511 000.511: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions.vim
-482.916 000.109 000.109: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/quickfix.vim
-483.659 000.282 000.282: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline.vim
-484.393 000.066 000.066: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/fzf.vim
-485.973 000.106 000.106: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/section.vim
-486.960 000.329 000.329: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/highlighter.vim
-487.570 002.286 001.851: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/term.vim
-488.773 000.379 000.379: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/branch.vim
-489.544 000.105 000.105: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/fugitiveline.vim
-490.389 000.116 000.116: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/nvimlsp.vim
-491.221 000.199 000.199: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/whitespace.vim
-492.050 000.104 000.104: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/po.vim
-492.776 000.155 000.155: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/wordcount.vim
-493.511 000.057 000.057: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/keymap.vim
-494.153 000.071 000.071: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/obsession.vim
-495.585 000.096 000.096: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/searchcount.vim
-515.108 000.119 000.119: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/themes.vim
-516.155 001.981 001.862: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/ayu-vim/autoload/airline/themes/ayu.vim
-554.910 000.246 000.246: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/builder.vim
-556.123 000.142 000.142: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/default.vim
-663.827 178.485: opening buffers
-664.368 000.541: BufEnter autocommands
-664.379 000.010: editing files in windows
-667.364 000.707 000.707: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimspector/autoload/vimspector.vim
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-000.016 000.016: --- NVIM STARTING ---
-000.645 000.628: locale set
-001.314 000.670: inits 1
-001.351 000.036: window checked
-001.360 000.010: parsing arguments
-007.583 006.223: init lua interpreter
-007.958 000.374: expanding arguments
-008.022 000.064: inits 2
-009.122 001.100: init highlight
-009.128 000.006: waiting for UI
-012.871 003.743: done waiting for UI
-012.918 000.047: init screen for UI
-012.972 000.054: init default mappings
-013.052 000.080: init default autocommands
-017.713 000.148 000.148: sourcing /usr/share/nvim/runtime/ftplugin.vim
-018.500 000.086 000.086: sourcing /usr/share/nvim/runtime/indent.vim
-018.734 000.034 000.034: sourcing /usr/share/nvim/archlinux.vim
-018.747 000.102 000.068: sourcing /etc/xdg/nvim/sysinit.vim
-026.363 000.143 000.143: sourcing /usr/share/nvim/runtime/filetype.lua
-040.626 000.040 000.040: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/ftdetect/snippets.vim
-041.433 000.029 000.029: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-fugitive/ftdetect/fugitive.vim
-041.845 000.030 000.030: sourcing /usr/share/vim/vimfiles/ftdetect/PKGBUILD.vim
-041.980 000.099 000.099: sourcing /usr/share/vim/vimfiles/ftdetect/conkyrc.vim
-042.145 000.127 000.127: sourcing /usr/share/vim/vimfiles/ftdetect/firejail.vim
-042.247 000.068 000.068: sourcing /usr/share/vim/vimfiles/ftdetect/meson.vim
-043.487 017.063 016.671: sourcing /usr/share/nvim/runtime/filetype.vim
-044.228 000.039 000.039: sourcing /usr/share/nvim/runtime/ftplugin.vim
-044.826 000.023 000.023: sourcing /usr/share/nvim/runtime/indent.vim
-354.645 003.386 003.386: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/ayu-vim/colors/ayu.vim
-357.306 000.212 000.212: sourcing /usr/share/nvim/runtime/syntax/synload.vim
-357.593 001.082 000.870: sourcing /usr/share/nvim/runtime/syntax/syntax.vim
-357.862 339.061 317.325: sourcing /home/sxrdusr/.config/nvim/init.lua
-357.884 005.435: sourcing vimrc file(s)
-361.965 000.572 000.572: sourcing /usr/share/nvim/runtime/plugin/gzip.vim
-362.033 000.026 000.026: sourcing /usr/share/nvim/runtime/plugin/health.vim
-362.218 000.153 000.153: sourcing /usr/share/nvim/runtime/plugin/man.vim
-363.321 000.444 000.444: sourcing /usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-363.527 001.273 000.829: sourcing /usr/share/nvim/runtime/plugin/matchit.vim
-363.867 000.305 000.305: sourcing /usr/share/nvim/runtime/plugin/matchparen.vim
-363.944 000.041 000.041: sourcing /usr/share/nvim/runtime/plugin/netrwPlugin.vim
-364.272 000.037 000.037: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-364.291 000.314 000.277: sourcing /usr/share/nvim/runtime/plugin/rplugin.vim
-364.528 000.206 000.206: sourcing /usr/share/nvim/runtime/plugin/shada.vim
-364.630 000.054 000.054: sourcing /usr/share/nvim/runtime/plugin/spellfile.vim
-364.985 000.311 000.311: sourcing /usr/share/nvim/runtime/plugin/tarPlugin.vim
-365.214 000.177 000.177: sourcing /usr/share/nvim/runtime/plugin/tohtml.vim
-365.321 000.049 000.049: sourcing /usr/share/nvim/runtime/plugin/tutor.vim
-365.765 000.406 000.406: sourcing /usr/share/nvim/runtime/plugin/zipPlugin.vim
-367.088 001.150 001.150: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-375.323 008.056 008.056: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-375.841 004.866: loading rtp plugins
-379.412 001.854 001.854: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-380.146 000.570 000.570: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-380.990 000.043 000.043: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-383.716 002.369 002.369: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/plugin/indent_blankline.vim
-384.344 000.301 000.301: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/leap.nvim/plugin/init.lua
-385.072 000.525 000.525: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-386.341 000.878 000.878: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-386.938 000.366 000.366: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/markdown-preview.nvim/plugin/mkdp.vim
-387.768 000.406 000.406: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-389.297 001.189 001.189: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-389.543 000.070 000.070: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-389.981 000.154 000.154: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-390.544 000.298 000.298: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-394.211 003.349 003.349: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-395.750 001.332 001.332: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-396.621 000.626 000.626: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-396.957 000.101 000.101: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-397.349 000.078 000.078: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-397.652 000.089 000.089: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-398.317 000.358 000.358: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-398.678 000.055 000.055: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-399.781 000.665 000.665: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-400.996 000.181 000.181: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/init.vim
-403.064 001.038 001.038: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/parts.vim
-403.886 000.034 000.034: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/formatter/short_path.vim
-406.913 000.299 000.299: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/util.vim
-407.082 007.039 005.486: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/plugin/airline.vim
-407.616 000.277 000.277: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-easy-align/plugin/easy_align.vim
-408.966 001.122 001.122: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-eunuch/plugin/eunuch.vim
-409.735 000.483 000.483: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-floaterm/plugin/floaterm.vim
-412.162 002.181 002.181: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-fugitive/plugin/fugitive.vim
-412.683 000.254 000.254: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-obsession/plugin/obsession.vim
-413.367 000.438 000.438: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-414.379 000.760 000.760: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-surround/plugin/surround.vim
-415.083 000.417 000.417: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-429.507 014.133 014.133: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-unimpaired/plugin/unimpaired.vim
-431.102 000.130 000.130: sourcing /usr/share/nvim/runtime/autoload/provider/pythonx.vim
-432.166 000.343 000.343: sourcing /usr/share/nvim/runtime/autoload/remote/host.vim
-432.357 001.966 001.493: sourcing /usr/share/nvim/runtime/autoload/provider/python3.vim
-433.372 003.592 001.625: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimspector/plugin/vimspector.vim
-434.296 000.662 000.662: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-435.993 000.612 000.612: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimwiki/autoload/vimwiki/vars.vim
-438.802 000.176 000.176: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimwiki/autoload/vimwiki/u.vim
-444.128 009.557 008.768: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimwiki/plugin/vimwiki.vim
-444.497 000.035 000.035: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-444.772 000.049 000.049: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-445.139 012.625: loading packages
-446.629 000.373 000.373: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-450.348 004.674 004.300: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-451.730 001.165 001.165: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-452.362 000.473 000.473: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-452.781 000.268 000.268: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-453.460 000.534 000.534: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-454.136 000.525 000.525: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-454.275 001.498: loading after plugins
-454.303 000.028: inits 3
-459.084 004.781: reading ShaDa
-462.255 000.518 000.518: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions.vim
-462.914 000.094 000.094: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/quickfix.vim
-463.666 000.283 000.283: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline.vim
-464.405 000.068 000.068: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/fzf.vim
-465.992 000.119 000.119: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/section.vim
-466.989 000.346 000.346: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/highlighter.vim
-467.604 002.304 001.840: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/term.vim
-468.826 000.393 000.393: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/branch.vim
-469.599 000.103 000.103: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/fugitiveline.vim
-470.437 000.118 000.118: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/nvimlsp.vim
-471.295 000.208 000.208: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/whitespace.vim
-472.141 000.112 000.112: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/po.vim
-472.878 000.162 000.162: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/wordcount.vim
-473.615 000.058 000.058: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/keymap.vim
-474.255 000.065 000.065: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/obsession.vim
-475.552 000.083 000.083: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/searchcount.vim
-493.677 000.106 000.106: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/themes.vim
-494.652 001.780 001.673: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/ayu-vim/autoload/airline/themes/ayu.vim
-531.806 000.251 000.251: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/builder.vim
-533.020 000.147 000.147: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-airline/autoload/airline/extensions/default.vim
-634.041 168.210: opening buffers
-634.303 000.263: BufEnter autocommands
-634.310 000.007: editing files in windows
-636.729 000.726 000.726: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimspector/autoload/vimspector.vim
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.077 001.077: --- NVIM STARTING ---
-028.689 027.612: event init
-046.977 018.288: early init
-048.697 001.720: locale set
-054.356 005.659: init first window
-065.332 010.976: inits 1
-065.359 000.027: window checked
-065.367 000.008: parsing arguments
-077.586 000.123 000.123: require('vim.shared')
-077.824 000.107 000.107: require('vim._meta')
-077.830 000.231 000.124: require('vim._editor')
-077.834 000.414 000.060: require('vim._init_packages')
-077.837 012.056: init lua interpreter
-077.932 000.095: expanding arguments
-079.680 001.748: inits 2
-080.294 000.614: init highlight
-080.299 000.004: waiting for UI
-082.730 002.431: done waiting for UI
-082.778 000.048: init screen for UI
-083.210 000.432: init default mappings
-083.247 000.037: init default autocommands
-094.132 004.012 004.012: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/ftplugin.vim
-096.795 000.983 000.983: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/indent.vim
-097.228 000.051 000.051: sourcing /usr/share/nvim/archlinux.vim
-097.252 000.163 000.112: sourcing /etc/xdg/nvim/sysinit.vim
-114.521 016.974 016.974: require('impatient')
-114.662 000.125 000.125: require('impatient.profile')
-118.350 000.854 000.854: require('keys')
-119.312 000.215 000.215: require('packer.util')
-119.373 000.674 000.458: require('packer')
-120.180 000.435 000.435: require('packer.log')
-120.196 000.556 000.122: require('packer.async')
-120.438 000.116 000.116: require('packer.result')
-120.447 000.245 000.128: require('packer.jobs')
-120.463 001.034 000.234: require('packer.plugin_utils')
-120.612 000.125 000.125: require('packer.snapshot')
-121.714 003.350 001.517: require('pack')
-121.772 024.427 003.123: sourcing /home/sxrdusr/.config/nvim/init.lua
-121.801 008.970: sourcing vimrc file(s)
-122.332 000.103 000.103: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-123.500 000.086 000.086: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/filetype.lua
-124.937 001.189 001.189: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/filetype.vim
-127.169 000.260 000.260: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/syntax/synload.vim
-127.861 002.338 002.078: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/syntax/syntax.vim
-133.403 001.041 001.041: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/gzip.vim
-133.559 000.065 000.065: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/health.vim
-136.590 001.376 001.376: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-137.190 003.546 002.170: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/matchit.vim
-137.698 000.421 000.421: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/matchparen.vim
-137.887 000.097 000.097: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-138.490 000.036 000.036: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-138.512 000.537 000.501: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/rplugin.vim
-138.798 000.197 000.197: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/shada.vim
-138.955 000.064 000.064: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/spellfile.vim
-139.124 000.079 000.079: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/tarPlugin.vim
-139.292 000.078 000.078: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/tohtml.vim
-139.438 000.058 000.058: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/tutor.vim
-140.205 000.679 000.679: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/zipPlugin.vim
-140.504 000.038 000.038: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-142.282 000.260 000.260: require('lspsaga')
-142.901 000.205 000.205: require('lspsaga.window')
-142.926 000.443 000.238: require('lspsaga.libs')
-145.564 000.465 000.465: require('vim.lsp.log')
-169.723 000.018 000.018: require('vim.F')
-169.738 002.191 002.173: require('vim.lsp.protocol')
-170.357 000.261 000.261: require('vim.lsp._snippet')
-170.593 000.227 000.227: require('vim.highlight')
-170.630 000.886 000.398: require('vim.lsp.util')
-170.668 026.257 022.716: require('vim.lsp.handlers')
-171.061 000.383 000.383: require('vim.lsp.rpc')
-171.364 000.291 000.291: require('vim.lsp.sync')
-171.679 000.305 000.305: require('vim.lsp.buf')
-171.894 000.205 000.205: require('vim.lsp.diagnostic')
-172.159 000.256 000.256: require('vim.lsp.codelens')
-172.312 028.804 001.107: require('vim.lsp')
-172.481 000.122 000.122: require('lspsaga.wrap')
-172.495 029.494 000.568: require('lspsaga.codeaction')
-172.544 030.250 000.313: require('lspsaga.lightbulb')
-172.784 000.198 000.198: require('lspsaga.lspkind')
-173.147 000.146 000.146: require('mason-core.path')
-173.167 000.276 000.130: require('mason.settings')
-173.545 000.105 000.105: require('mason-core.functional.data')
-173.558 000.217 000.112: require('mason-core.functional.function')
-173.598 000.425 000.208: require('mason-core.platform')
-173.603 000.806 000.106: require('mason')
-173.894 000.141 000.141: require('mason-core.functional')
-174.044 000.126 000.126: require('mason-core.functional.list')
-174.089 000.456 000.189: require('mason.api.command')
-174.347 000.139 000.139: require('mason-core.log')
-174.356 000.261 000.122: require('mason-lspconfig')
-174.461 000.097 000.097: require('mason-lspconfig.settings')
-174.648 000.119 000.119: require('mason-lspconfig.lspconfig_hook')
-174.939 000.283 000.283: require('lspconfig.util')
-175.274 000.102 000.102: require('mason-core.functional.table')
-175.368 000.408 000.306: require('mason-lspconfig.mappings.server')
-175.698 000.113 000.113: require('mason-core.async')
-175.804 000.091 000.091: require('mason-core.async.uv')
-175.815 000.334 000.131: require('mason-core.fs')
-175.919 000.098 000.098: require('mason-core.optional')
-176.021 000.095 000.095: require('mason-core.EventEmitter')
-176.228 000.201 000.201: require('mason-registry.index')
-176.254 000.877 000.150: require('mason-registry')
-176.363 000.102 000.102: require('mason-lspconfig.server_config_extensions')
-176.490 000.120 000.120: require('lspconfig.configs')
-176.635 000.138 000.138: require('lspconfig.server_configurations.omnisharp')
-176.840 000.105 000.105: require('mason-lspconfig.ensure_installed')
-177.337 000.145 000.145: require('mason-core.result')
-178.358 000.752 000.752: require('mason-core.process')
-178.492 000.118 000.118: require('mason-core.functional.relation')
-178.603 000.097 000.097: require('mason-core.functional.logic')
-178.620 001.137 000.169: require('mason-core.spawn')
-178.751 000.119 000.119: require('mason-core.receipt')
-178.880 000.108 000.108: require('mason-core.functional.string')
-178.910 001.564 000.201: require('mason-core.installer.context')
-179.062 000.145 000.145: require('mason-core.installer.linker')
-179.227 000.153 000.153: require('mason-core.async.control')
-179.237 002.268 000.260: require('mason-core.installer')
-179.374 000.128 000.128: require('mason-core.installer.handle')
-179.949 000.105 000.105: require('mason-core.managers.powershell')
-179.957 000.222 000.117: require('mason-core.fetch')
-179.961 000.376 000.154: require('mason-core.managers.cargo.client')
-179.995 000.514 000.138: require('mason-core.managers.cargo')
-180.147 000.146 000.146: require('mason-core.managers.composer')
-180.301 000.147 000.147: require('mason-core.managers.gem')
-180.417 000.109 000.109: require('mason-core.managers.git')
-180.670 000.129 000.129: require('mason-core.managers.std')
-180.789 000.112 000.112: require('mason-core.managers.github.client')
-180.806 000.382 000.142: require('mason-core.managers.github')
-180.957 000.146 000.146: require('mason-core.managers.go')
-181.140 000.176 000.176: require('mason-core.managers.luarocks')
-181.503 000.356 000.356: require('mason-core.managers.npm')
-181.709 000.181 000.181: require('mason-core.managers.pip3')
-181.763 002.376 000.219: require('mason-core.package.version-check')
-181.774 004.926 000.154: require('mason-core.package')
-182.043 000.228 000.228: require('mason-registry.lua-language-server')
-182.376 000.155 000.155: require('mason-registry.clangd')
-182.814 000.414 000.414: require('mason-registry.rust-analyzer')
-183.076 000.094 000.094: require('mason-core.notify')
-183.229 000.143 000.143: require('mason-core.functional.number')
-183.286 000.458 000.221: require('mason-lspconfig.api.command')
-183.293 042.652 001.993: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-184.424 000.122 000.122: sourcing /tmp/.mount_nvimgsxj67/usr/share/nvim/runtime/plugin/man.lua
-184.966 009.773: loading rtp plugins
-186.975 000.018 000.018: require('vim.keymap')
-187.357 000.155 000.155: require('Comment.config')
-187.549 000.182 000.182: require('Comment.utils')
-187.822 000.264 000.264: require('Comment.opfunc')
-187.947 000.116 000.116: require('Comment.extra')
-187.974 000.986 000.269: require('Comment.api')
-188.811 001.972 000.968: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-189.751 000.207 000.207: require('luasnip.util.types')
-189.955 000.191 000.191: require('luasnip.util.ext_opts')
-191.461 000.264 000.264: require('vim.treesitter.language')
-191.494 000.686 000.422: require('vim.treesitter.query')
-191.893 000.391 000.391: require('vim.treesitter.languagetree')
-191.972 001.516 000.439: require('vim.treesitter')
-192.479 002.387 000.871: require('nvim-treesitter.parsers')
-192.816 000.163 000.163: require('nvim-treesitter.utils')
-192.831 000.341 000.179: require('nvim-treesitter.ts_utils')
-192.840 002.877 000.148: require('luasnip.extras.filetype_functions')
-192.983 000.138 000.138: require('luasnip.session')
-193.462 000.187 000.187: require('luasnip.util.util')
-193.599 000.125 000.125: require('luasnip.nodes.util')
-193.707 000.099 000.099: require('luasnip.util.events')
-193.739 000.614 000.203: require('luasnip.nodes.node')
-194.029 000.113 000.113: require('luasnip.util.extend_decorator')
-194.044 001.053 000.326: require('luasnip.nodes.insertNode')
-194.823 000.255 000.255: require('luasnip.util.mark')
-196.003 000.498 000.498: require('luasnip.nodes.textNode')
-197.798 001.448 001.448: require('luasnip.util._builtin_vars')
-198.128 000.299 000.299: require('vim.inspect')
-198.478 002.453 000.707: require('luasnip.util.environ')
-198.613 000.122 000.122: require('luasnip.util.pattern_tokenizer')
-198.708 000.087 000.087: require('luasnip.util.dict')
-198.828 000.112 000.112: require('luasnip.session.snippet_collection')
-198.893 004.060 000.790: require('luasnip.nodes.snippet')
-198.913 004.863 000.548: require('luasnip.nodes.choiceNode')
-199.131 000.188 000.188: require('luasnip.nodes.functionNode')
-199.295 000.151 000.151: require('luasnip.nodes.dynamicNode')
-199.572 000.268 000.268: require('luasnip.nodes.restoreNode')
-199.761 000.158 000.158: require('luasnip.extras')
-200.016 000.106 000.106: require('luasnip.util.str')
-200.029 000.252 000.146: require('luasnip.extras.fmt')
-200.132 000.096 000.096: require('luasnip.extras.expand_conditions')
-200.444 000.095 000.095: require('luasnip.util.parser.neovim_ast')
-211.625 000.154 000.154: require('luasnip.util.directed_graph')
-211.650 011.406 011.157: require('luasnip.util.parser.ast_utils')
-211.868 000.087 000.087: require('luasnip.util.functions')
-211.882 000.224 000.137: require('luasnip.util.parser.ast_parser')
-212.035 000.148 000.148: require('luasnip.util.parser.neovim_parser')
-212.051 011.907 000.129: require('luasnip.util.parser')
-212.142 000.084 000.084: require('luasnip.nodes.absolute_indexer')
-212.684 023.347 000.915: require('luasnip.config')
-212.841 023.839 000.491: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-213.735 000.052 000.052: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-214.713 000.113 000.113: require('indent_blankline/utils')
-214.723 000.309 000.196: require('indent_blankline')
-215.272 000.101 000.101: require('indent_blankline.commands')
-215.432 001.197 000.787: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/plugin/indent_blankline.vim
-215.854 000.112 000.112: require('lsp-colors')
-216.374 000.683 000.572: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-217.476 000.712 000.712: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-218.519 000.405 000.405: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-219.096 000.111 000.111: require('cmp.utils.api')
-219.265 000.080 000.080: require('cmp.types.cmp')
-219.455 000.092 000.092: require('cmp.utils.misc')
-219.550 000.277 000.186: require('cmp.types.lsp')
-219.639 000.080 000.080: require('cmp.types.vim')
-219.644 000.539 000.102: require('cmp.types')
-219.729 000.079 000.079: require('cmp.utils.highlight')
-219.888 000.073 000.073: require('cmp.utils.debug')
-219.903 000.167 000.094: require('cmp.utils.autocmd')
-220.440 001.544 000.647: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-220.714 000.080 000.080: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-221.137 000.108 000.108: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-221.612 000.177 000.177: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-222.733 000.097 000.097: require('nvim-treesitter.tsrange')
-222.825 000.082 000.082: require('nvim-treesitter.caching')
-222.842 000.306 000.128: require('nvim-treesitter.query')
-222.868 000.449 000.143: require('nvim-treesitter.configs')
-222.875 000.549 000.100: require('nvim-treesitter.info')
-222.999 000.117 000.117: require('nvim-treesitter.shell_command_selectors')
-223.061 000.878 000.211: require('nvim-treesitter.install')
-223.160 000.089 000.089: require('nvim-treesitter.statusline')
-223.261 000.094 000.094: require('nvim-treesitter.query_predicates')
-223.267 001.169 000.108: require('nvim-treesitter')
-224.518 000.332 000.332: require('vim.treesitter.highlighter')
-224.815 000.781 000.449: require('nvim-treesitter.highlight')
-225.463 003.438 001.488: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-225.909 000.214 000.214: require('treesitter-context')
-225.919 000.259 000.045: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-226.301 000.100 000.100: require('nvim-treesitter-refactor')
-226.635 000.463 000.363: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-227.006 000.112 000.112: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-227.383 000.078 000.078: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-227.709 000.092 000.092: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-228.502 000.446 000.446: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-228.871 000.060 000.060: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-229.853 000.494 000.494: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-230.676 000.537 000.537: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-231.318 000.391 000.391: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-232.188 000.595 000.595: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-232.511 000.030 000.030: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-232.791 000.047 000.047: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-233.904 011.128: loading packages
-235.602 000.461 000.461: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-240.266 005.819 005.358: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-241.144 000.147 000.147: require('cmp.utils.char')
-241.159 000.257 000.110: require('cmp.utils.str')
-241.254 000.088 000.088: require('cmp.utils.pattern')
-241.600 000.126 000.126: require('cmp.utils.buffer')
-241.614 000.252 000.126: require('cmp.utils.keymap')
-241.626 000.364 000.112: require('cmp.utils.feedkeys')
-241.741 000.109 000.109: require('cmp.utils.async')
-241.924 000.083 000.083: require('cmp.utils.cache')
-241.933 000.184 000.101: require('cmp.context')
-242.260 000.117 000.117: require('cmp.config.mapping')
-242.477 000.106 000.106: require('cmp.config.compare')
-242.483 000.212 000.106: require('cmp.config.default')
-242.509 000.462 000.134: require('cmp.config')
-242.732 000.085 000.085: require('cmp.matcher')
-242.746 000.230 000.145: require('cmp.entry')
-242.761 000.824 000.131: require('cmp.source')
-242.948 000.084 000.084: require('cmp.utils.event')
-243.168 000.111 000.111: require('cmp.utils.window')
-243.176 000.220 000.109: require('cmp.view.docs_view')
-243.327 000.146 000.146: require('cmp.view.custom_entries_view')
-243.466 000.132 000.132: require('cmp.view.wildmenu_entries_view')
-243.584 000.112 000.112: require('cmp.view.native_entries_view')
-243.688 000.098 000.098: require('cmp.view.ghost_text_view')
-243.706 000.940 000.150: require('cmp.view')
-243.817 003.068 000.302: require('cmp.core')
-244.161 000.093 000.093: require('cmp.config.sources')
-244.259 000.087 000.087: require('cmp.config.window')
-244.362 003.763 000.515: require('cmp')
-244.731 000.083 000.083: require('cmp_buffer.timer')
-244.743 000.196 000.113: require('cmp_buffer.buffer')
-244.748 000.295 000.099: require('cmp_buffer.source')
-244.752 000.384 000.089: require('cmp_buffer')
-244.783 004.279 000.132: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-245.357 000.256 000.256: require('cmp_cmdline')
-245.393 000.408 000.152: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-245.812 000.099 000.099: require('cmp_nvim_lsp.source')
-245.820 000.204 000.105: require('cmp_nvim_lsp')
-245.917 000.363 000.159: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-246.284 000.146 000.146: require('cmp_path')
-246.318 000.246 000.100: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-246.649 000.105 000.105: require('cmp_luasnip')
-246.719 000.244 000.139: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-246.874 001.611: loading after plugins
-246.910 000.036: inits 3
-246.920 000.011: reading ShaDa
-247.351 000.091 000.091: require('luasnip.loaders._caches')
-247.486 000.126 000.126: require('luasnip.util.path')
-247.606 000.112 000.112: require('luasnip.loaders.util')
-247.897 000.141 000.141: require('luasnip.loaders')
-247.951 000.337 000.196: require('luasnip')
-247.957 000.805 000.139: require('luasnip.loaders.from_lua')
-248.252 000.121 000.121: require('luasnip.nodes.snippetProxy')
-248.266 000.255 000.134: require('luasnip.loaders.from_snipmate')
-248.494 000.122 000.122: require('luasnip.loaders.from_vscode')
-249.362 001.259: opening buffers
-249.368 000.006: BufEnter autocommands
-249.371 000.004: editing files in windows
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.215 001.215: --- NVIM STARTING ---
-028.665 027.450: event init
-045.736 017.071: early init
-047.546 001.811: locale set
-053.272 005.725: init first window
-063.706 010.434: inits 1
-063.737 000.031: window checked
-063.745 000.009: parsing arguments
-075.797 000.281 000.281: require('vim.shared')
-076.316 000.237 000.237: require('vim._meta')
-076.329 000.509 000.272: require('vim._editor')
-076.337 000.917 000.127: require('vim._init_packages')
-076.345 011.682: init lua interpreter
-076.535 000.191: expanding arguments
-078.389 001.854: inits 2
-079.780 001.390: init highlight
-079.790 000.010: waiting for UI
-082.769 002.979: done waiting for UI
-082.820 000.051: init screen for UI
-083.178 000.358: init default mappings
-083.214 000.036: init default autocommands
-091.921 004.068 004.068: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/ftplugin.vim
-095.030 001.354 001.354: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/indent.vim
-095.750 000.072 000.072: sourcing /usr/share/nvim/archlinux.vim
-095.777 000.241 000.169: sourcing /etc/xdg/nvim/sysinit.vim
-121.943 025.794 025.794: require('impatient')
-122.199 000.229 000.229: require('impatient.profile')
-131.279 002.028 002.028: require('keys')
-136.986 005.676 005.676: require('opts')
-138.889 000.369 000.369: require('packer.util')
-139.047 001.067 000.698: require('packer')
-140.531 000.662 000.662: require('packer.log')
-140.554 000.943 000.281: require('packer.async')
-141.218 000.285 000.285: require('packer.result')
-141.238 000.669 000.384: require('packer.jobs')
-141.379 002.217 000.605: require('packer.plugin_utils')
-142.546 001.109 001.109: require('packer.snapshot')
-145.067 008.052 003.658: require('pack')
-147.725 000.587 000.587: require('vim.treesitter.language')
-147.771 001.260 000.673: require('vim.treesitter.query')
-150.344 000.518 000.518: require('vim.treesitter.languagetree')
-150.457 001.130 000.611: require('vim.treesitter')
-151.134 002.622 001.492: require('nvim-treesitter.parsers')
-152.015 000.862 000.862: require('nvim-treesitter.utils')
-152.043 003.863 000.379: require('nvim-treesitter.ts_utils')
-152.074 004.281 000.417: require('nvim-treesitter.tsrange')
-152.465 000.373 000.373: require('nvim-treesitter.caching')
-152.508 006.281 000.367: require('nvim-treesitter.query')
-152.584 006.707 000.426: require('nvim-treesitter.configs')
-153.878 000.354 000.354: require('nvim-treesitter.info')
-154.194 000.294 000.294: require('nvim-treesitter.shell_command_selectors')
-154.311 001.429 000.781: require('nvim-treesitter.install')
-222.484 077.393 069.257: require('plugins.treesitter')
-223.003 000.151 000.151: require('telescope._extensions')
-223.015 000.272 000.121: require('telescope')
-223.849 000.143 000.143: require('plenary.bit')
-223.949 000.091 000.091: require('plenary.functional')
-224.011 000.035 000.035: require('ffi')
-224.034 000.483 000.214: require('plenary.path')
-224.051 000.602 000.119: require('plenary.strings')
-224.140 000.083 000.083: require('telescope.deprecated')
-224.650 000.303 000.303: require('plenary.log')
-224.723 000.456 000.153: require('telescope.log')
-225.018 000.150 000.150: require('plenary.job')
-225.112 000.085 000.085: require('telescope.state')
-225.127 000.396 000.160: require('telescope.utils')
-225.141 000.994 000.142: require('telescope.sorters')
-225.248 000.080 000.080: require('vim.inspect')
-225.765 000.019 000.019: require('vim.F')
-229.308 006.007 004.228: require('telescope.config')
-229.577 000.120 000.120: require('plenary.window.border')
-229.683 000.098 000.098: require('plenary.window')
-229.770 000.080 000.080: require('plenary.popup.utils')
-229.781 000.456 000.158: require('plenary.popup')
-229.882 000.095 000.095: require('telescope.pickers.scroller')
-229.979 000.091 000.091: require('telescope.actions.state')
-230.081 000.095 000.095: require('telescope.actions.utils')
-230.286 000.096 000.096: require('telescope.actions.mt')
-230.366 000.280 000.184: require('telescope.actions.set')
-230.575 000.101 000.101: require('telescope.config.resolve')
-230.582 000.209 000.107: require('telescope.pickers.entry_display')
-230.672 000.086 000.086: require('telescope.from_entry')
-231.015 007.994 000.677: require('telescope.actions')
-231.930 000.115 000.115: require('plenary.tbl')
-231.939 000.219 000.104: require('plenary.vararg.rotate')
-231.943 000.319 000.100: require('plenary.vararg')
-232.042 000.086 000.086: require('plenary.errors')
-232.062 000.539 000.134: require('plenary.async.async')
-232.167 000.100 000.100: require('plenary.async.structs')
-232.186 000.783 000.144: require('plenary.async.control')
-232.710 000.361 000.361: require('telescope.make_entry')
-233.194 000.129 000.129: require('plenary.async.util')
-233.201 000.233 000.104: require('plenary.async.tests')
-233.207 000.357 000.124: require('plenary.async')
-233.213 000.488 000.131: require('telescope.finders.async_static_finder')
-233.549 000.093 000.093: require('plenary.class')
-233.580 000.246 000.153: require('telescope._')
-233.587 000.369 000.123: require('telescope.finders.async_oneshot_finder')
-233.698 000.105 000.105: require('telescope.finders.async_job_finder')
-233.710 001.515 000.192: require('telescope.finders')
-234.124 000.171 000.171: require('telescope.debounce')
-234.362 000.229 000.229: require('telescope.mappings')
-234.498 000.126 000.126: require('telescope.pickers.highlights')
-234.610 000.104 000.104: require('telescope.pickers.window')
-234.844 000.108 000.108: require('telescope.algos.linked_list')
-234.853 000.236 000.128: require('telescope.entry_manager')
-234.963 000.106 000.106: require('telescope.pickers.multi')
-235.003 001.288 000.316: require('telescope.pickers')
-235.020 003.806 000.220: require('telescope.builtin.__lsp')
-235.078 004.055 000.249: require('telescope.builtin')
-235.503 000.287 000.287: require('fzf_lib')
-235.517 000.432 000.145: require('telescope._extensions.fzf')
-236.042 000.183 000.183: require('telescope._extensions.file_browser.utils')
-236.187 000.522 000.339: require('telescope._extensions.file_browser.actions')
-236.536 000.198 000.198: require('telescope._extensions.file_browser.make_entry')
-236.753 000.204 000.204: require('plenary.scandir')
-236.804 000.609 000.208: require('telescope._extensions.file_browser.finders')
-236.937 000.124 000.124: require('telescope._extensions.file_browser.picker')
-237.091 000.147 000.147: require('telescope._extensions.file_browser.config')
-237.098 001.565 000.163: require('telescope._extensions.file_browser')
-243.325 000.017 000.017: require('vim.keymap')
-243.488 020.979 006.644: require('plugins.telescope')
-245.555 000.085 000.085: require('notify.util.queue')
-245.565 000.495 000.410: require('notify.util')
-245.823 000.253 000.253: require('notify.config.highlights')
-245.834 001.119 000.371: require('notify.config')
-246.182 000.341 000.341: require('notify.stages')
-246.287 000.097 000.097: require('notify.service.notification')
-246.645 000.079 000.079: require('notify.animate.spring')
-246.652 000.175 000.096: require('notify.animate')
-246.661 000.367 000.192: require('notify.windows')
-247.013 000.098 000.098: require('notify.service.buffer.highlights')
-247.023 000.262 000.164: require('notify.service.buffer')
-247.028 000.362 000.100: require('notify.service')
-247.128 000.095 000.095: require('notify.stages.util')
-247.137 002.804 000.422: require('notify')
-247.232 000.089 000.089: require('nvim-tree.iterators.node-iterator')
-247.295 003.077 000.183: require('nvim-tree.utils')
-247.307 003.176 000.100: require('nvim-tree.events')
-247.638 000.084 000.084: require('nvim-tree.log')
-247.810 000.164 000.164: require('nvim-tree.git.utils')
-247.913 000.095 000.095: require('nvim-tree.git.runner')
-248.009 000.090 000.090: require('nvim-tree.watcher')
-248.019 000.608 000.174: require('nvim-tree.git')
-248.113 000.089 000.089: require('nvim-tree.explorer.watch')
-248.246 000.086 000.086: require('nvim-tree.explorer.common')
-248.436 000.098 000.098: require('nvim-tree.explorer.node-builders')
-248.530 000.086 000.086: require('nvim-tree.explorer.sorters')
-248.634 000.089 000.089: require('nvim-tree.explorer.filters')
-248.908 000.177 000.177: require('nvim-tree.view')
-248.920 000.279 000.102: require('nvim-tree.live-filter')
-248.925 000.671 000.119: require('nvim-tree.explorer.explore')
-249.050 000.104 000.104: require('nvim-tree.explorer.reload')
-249.058 001.745 000.187: require('nvim-tree.explorer')
-249.065 005.013 000.091: require('nvim-tree.core')
-249.181 000.110 000.110: require('nvim-tree.diagnostics')
-249.279 000.090 000.090: require('nvim-tree.renderer.components.padding')
-249.374 000.088 000.088: require('nvim-tree.renderer.components.icons')
-249.474 000.094 000.094: require('nvim-tree.renderer.components.full-name')
-249.562 000.082 000.082: require('nvim-tree.renderer.help')
-249.675 000.107 000.107: require('nvim-tree.renderer.components.git')
-249.794 000.112 000.112: require('nvim-tree.renderer.builder')
-249.901 000.100 000.100: require('nvim-tree.marks')
-249.916 005.971 000.175: require('nvim-tree.renderer')
-250.022 000.095 000.095: require('nvim-tree.actions.tree-modifiers.collapse-all')
-250.110 000.081 000.081: require('nvim-tree.actions.root.dir-up')
-250.210 000.094 000.094: require('nvim-tree.actions.root.change-dir')
-250.308 000.091 000.091: require('nvim-tree.actions.reloaders.reloaders')
-250.406 000.089 000.089: require('nvim-tree.actions.finders.find-file')
-250.411 006.559 000.137: require('nvim-tree.lib')
-250.512 000.096 000.096: require('nvim-tree.colors')
-250.633 000.111 000.111: require('nvim-tree.legacy')
-250.749 000.108 000.108: require('nvim-tree.actions.fs.copy-paste')
-250.948 000.093 000.093: require('nvim-tree.actions.tree-modifiers.expand-all')
-251.044 000.089 000.089: require('nvim-tree.actions.tree-modifiers.toggles')
-251.152 000.093 000.093: require('nvim-tree.actions.fs.create-file')
-251.249 000.089 000.089: require('nvim-tree.actions.fs.rename-file')
-251.369 000.113 000.113: require('nvim-tree.actions.fs.trash')
-251.472 000.095 000.095: require('nvim-tree.actions.fs.remove-file')
-251.566 000.085 000.085: require('nvim-tree.actions.moves.parent')
-251.657 000.084 000.084: require('nvim-tree.actions.moves.sibling')
-251.747 000.083 000.083: require('nvim-tree.actions.moves.item')
-251.856 000.090 000.090: require('nvim-tree.actions.finders.search-node')
-251.945 000.083 000.083: require('nvim-tree.actions.node.run-command')
-252.039 000.088 000.088: require('nvim-tree.actions.node.file-popup')
-252.148 000.103 000.103: require('nvim-tree.actions.node.system-open')
-252.247 000.088 000.088: require('nvim-tree.marks.bulk-move')
-252.253 001.494 000.219: require('nvim-tree.actions.dispatch')
-252.298 008.630 000.262: require('nvim-tree')
-252.386 000.080 000.080: require('nvim-tree.config')
-257.095 000.193 000.193: require('nvim-tree.actions')
-257.240 000.128 000.128: require('nvim-tree.actions.node.open-file')
-260.691 000.107 000.107: require('nvim-tree.marks.navigation')
-260.703 000.318 000.211: require('nvim-tree.api')
-260.730 000.478 000.160: require('nvim-tree.keymap')
-261.644 000.460 000.460: require('nvim-web-devicons')
-265.847 022.349 012.380: require('plugins.nvim-tree')
-266.218 000.107 000.107: require('lualine_require')
-266.776 000.811 000.704: require('lualine')
-266.861 000.076 000.076: require('plugins.linecolor')
-271.822 000.113 000.113: require('lualine.utils.mode')
-278.657 012.797 011.798: require('plugins.lualine')
-278.733 182.854 007.556: sourcing /home/sxrdusr/.config/nvim/init.lua
-278.753 007.023: sourcing vimrc file(s)
-279.069 000.055 000.055: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-280.561 000.083 000.083: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/filetype.lua
-282.097 001.197 001.197: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/filetype.vim
-284.560 000.271 000.271: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/syntax/synload.vim
-284.797 002.162 001.892: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/syntax/syntax.vim
-290.655 001.081 001.081: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/gzip.vim
-290.838 000.074 000.074: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/health.vim
-293.462 001.365 001.365: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-293.908 003.000 001.635: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/matchit.vim
-294.379 000.409 000.409: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/matchparen.vim
-294.523 000.076 000.076: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-294.930 000.024 000.024: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-294.951 000.364 000.340: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/rplugin.vim
-295.198 000.188 000.188: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/shada.vim
-295.317 000.052 000.052: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/spellfile.vim
-295.444 000.062 000.062: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/tarPlugin.vim
-295.569 000.061 000.061: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/tohtml.vim
-295.694 000.049 000.049: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/tutor.vim
-296.445 000.685 000.685: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/zipPlugin.vim
-296.743 000.039 000.039: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-298.142 000.181 000.181: require('lspsaga')
-298.522 000.126 000.126: require('lspsaga.window')
-298.545 000.267 000.141: require('lspsaga.libs')
-299.708 000.362 000.362: require('vim.lsp.log')
-300.673 000.954 000.954: require('vim.lsp.protocol')
-301.346 000.346 000.346: require('vim.lsp._snippet')
-301.641 000.285 000.285: require('vim.highlight')
-301.680 000.996 000.365: require('vim.lsp.util')
-301.701 002.616 000.304: require('vim.lsp.handlers')
-301.930 000.222 000.222: require('vim.lsp.rpc')
-302.074 000.133 000.133: require('vim.lsp.sync')
-302.593 000.511 000.511: require('vim.lsp.buf')
-303.020 000.417 000.417: require('vim.lsp.diagnostic')
-303.435 000.406 000.406: require('vim.lsp.codelens')
-303.596 004.920 000.615: require('vim.lsp')
-303.708 000.100 000.100: require('lspsaga.wrap')
-303.723 005.172 000.152: require('lspsaga.codeaction')
-303.769 005.615 000.176: require('lspsaga.lightbulb')
-303.937 000.131 000.131: require('lspsaga.lspkind')
-304.222 000.093 000.093: require('mason-core.path')
-304.240 000.198 000.105: require('mason.settings')
-304.542 000.086 000.086: require('mason-core.functional.data')
-304.553 000.189 000.104: require('mason-core.functional.function')
-304.594 000.347 000.158: require('mason-core.platform')
-304.599 000.650 000.105: require('mason')
-304.884 000.145 000.145: require('mason-core.functional')
-305.020 000.116 000.116: require('mason-core.functional.list')
-305.058 000.434 000.173: require('mason.api.command')
-305.320 000.142 000.142: require('mason-core.log')
-305.331 000.268 000.126: require('mason-lspconfig')
-305.425 000.088 000.088: require('mason-lspconfig.settings')
-305.553 000.105 000.105: require('mason-lspconfig.lspconfig_hook')
-305.792 000.233 000.233: require('lspconfig.util')
-306.061 000.092 000.092: require('mason-core.functional.table')
-306.169 000.352 000.260: require('mason-lspconfig.mappings.server')
-306.537 000.120 000.120: require('mason-core.async')
-306.641 000.094 000.094: require('mason-core.async.uv')
-306.661 000.347 000.133: require('mason-core.fs')
-306.767 000.099 000.099: require('mason-core.optional')
-306.864 000.089 000.089: require('mason-core.EventEmitter')
-307.048 000.178 000.178: require('mason-registry.index')
-307.071 000.893 000.181: require('mason-registry')
-307.172 000.094 000.094: require('mason-lspconfig.server_config_extensions')
-307.343 000.126 000.126: require('lspconfig.configs')
-307.463 000.113 000.113: require('lspconfig.server_configurations.omnisharp')
-307.665 000.101 000.101: require('mason-lspconfig.ensure_installed')
-308.014 000.094 000.094: require('mason-core.result')
-308.491 000.256 000.256: require('mason-core.process')
-308.603 000.100 000.100: require('mason-core.functional.relation')
-308.703 000.089 000.089: require('mason-core.functional.logic')
-308.723 000.583 000.138: require('mason-core.spawn')
-308.851 000.120 000.120: require('mason-core.receipt')
-308.984 000.113 000.113: require('mason-core.functional.string')
-309.020 000.998 000.182: require('mason-core.installer.context')
-309.126 000.099 000.099: require('mason-core.installer.linker')
-309.229 000.096 000.096: require('mason-core.async.control')
-309.237 001.439 000.151: require('mason-core.installer')
-309.364 000.122 000.122: require('mason-core.installer.handle')
-311.696 000.112 000.112: require('mason-core.managers.powershell')
-311.706 002.028 001.916: require('mason-core.fetch')
-311.711 002.119 000.092: require('mason-core.managers.cargo.client')
-311.749 002.278 000.158: require('mason-core.managers.cargo')
-312.009 000.255 000.255: require('mason-core.managers.composer')
-312.211 000.193 000.193: require('mason-core.managers.gem')
-312.357 000.134 000.134: require('mason-core.managers.git')
-312.604 000.124 000.124: require('mason-core.managers.std')
-312.724 000.112 000.112: require('mason-core.managers.github.client')
-312.738 000.373 000.137: require('mason-core.managers.github')
-312.893 000.150 000.150: require('mason-core.managers.go')
-313.074 000.174 000.174: require('mason-core.managers.luarocks')
-313.273 000.193 000.193: require('mason-core.managers.npm')
-313.429 000.148 000.148: require('mason-core.managers.pip3')
-313.440 004.063 000.166: require('mason-core.package.version-check')
-313.453 005.780 000.156: require('mason-core.package')
-313.596 000.120 000.120: require('mason-registry.lua-language-server')
-314.016 000.148 000.148: require('mason-registry.clangd')
-314.251 000.202 000.202: require('mason-registry.rust-analyzer')
-314.478 000.079 000.079: require('mason-core.notify')
-314.587 000.100 000.100: require('mason-core.functional.number')
-314.647 000.385 000.206: require('mason-lspconfig.api.command')
-314.654 017.774 001.756: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-315.963 000.101 000.101: sourcing /tmp/.mount_nvimqgAC59/usr/share/nvim/runtime/plugin/man.lua
-316.291 010.027: loading rtp plugins
-318.118 000.121 000.121: require('Comment.config')
-318.235 000.108 000.108: require('Comment.utils')
-318.334 000.092 000.092: require('Comment.opfunc')
-318.429 000.089 000.089: require('Comment.extra')
-318.444 000.586 000.176: require('Comment.api')
-318.874 001.089 000.503: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-319.655 000.090 000.090: require('luasnip.util.types')
-319.758 000.094 000.094: require('luasnip.util.ext_opts')
-319.863 000.098 000.098: require('luasnip.extras.filetype_functions')
-319.970 000.100 000.100: require('luasnip.session')
-320.338 000.137 000.137: require('luasnip.util.util')
-320.444 000.098 000.098: require('luasnip.nodes.util')
-320.531 000.080 000.080: require('luasnip.util.events')
-320.549 000.467 000.152: require('luasnip.nodes.node')
-320.704 000.092 000.092: require('luasnip.util.extend_decorator')
-320.715 000.738 000.179: require('luasnip.nodes.insertNode')
-321.030 000.111 000.111: require('luasnip.util.mark')
-321.311 000.122 000.122: require('luasnip.nodes.textNode')
-323.154 001.735 001.735: require('luasnip.util._builtin_vars')
-323.344 002.021 000.286: require('luasnip.util.environ')
-323.470 000.114 000.114: require('luasnip.util.pattern_tokenizer')
-323.562 000.085 000.085: require('luasnip.util.dict')
-323.680 000.110 000.110: require('luasnip.session.snippet_collection')
-323.746 002.707 000.255: require('luasnip.nodes.snippet')
-323.805 003.084 000.266: require('luasnip.nodes.choiceNode')
-323.972 000.139 000.139: require('luasnip.nodes.functionNode')
-324.195 000.214 000.214: require('luasnip.nodes.dynamicNode')
-324.383 000.179 000.179: require('luasnip.nodes.restoreNode')
-324.509 000.119 000.119: require('luasnip.extras')
-324.709 000.086 000.086: require('luasnip.util.str')
-324.718 000.193 000.107: require('luasnip.extras.fmt')
-324.812 000.088 000.088: require('luasnip.extras.expand_conditions')
-325.142 000.106 000.106: require('luasnip.util.parser.neovim_ast')
-337.540 000.132 000.132: require('luasnip.util.directed_graph')
-337.562 012.634 012.397: require('luasnip.util.parser.ast_utils')
-337.788 000.094 000.094: require('luasnip.util.functions')
-337.804 000.235 000.140: require('luasnip.util.parser.ast_parser')
-337.986 000.177 000.177: require('luasnip.util.parser.neovim_parser')
-338.002 013.180 000.134: require('luasnip.util.parser')
-338.102 000.093 000.093: require('luasnip.nodes.absolute_indexer')
-338.653 019.224 000.817: require('luasnip.config')
-338.816 019.693 000.469: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-339.740 000.051 000.051: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-340.704 000.121 000.121: require('indent_blankline/utils')
-340.714 000.328 000.207: require('indent_blankline')
-341.171 000.107 000.107: require('indent_blankline.commands')
-341.331 001.120 000.686: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/plugin/indent_blankline.vim
-341.766 000.120 000.120: require('lsp-colors')
-342.120 000.527 000.407: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-343.544 001.016 001.016: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-344.414 000.400 000.400: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-345.007 000.111 000.111: require('cmp.utils.api')
-345.199 000.086 000.086: require('cmp.types.cmp')
-345.402 000.100 000.100: require('cmp.utils.misc')
-345.503 000.297 000.197: require('cmp.types.lsp')
-345.626 000.113 000.113: require('cmp.types.vim')
-345.632 000.615 000.119: require('cmp.types')
-345.728 000.090 000.090: require('cmp.utils.highlight')
-345.899 000.080 000.080: require('cmp.utils.debug')
-345.915 000.180 000.101: require('cmp.utils.autocmd')
-346.453 001.651 000.655: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-346.722 000.082 000.082: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-347.167 000.120 000.120: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-347.647 000.177 000.177: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-348.348 000.094 000.094: require('nvim-treesitter.statusline')
-348.460 000.104 000.104: require('nvim-treesitter.query_predicates')
-348.467 000.315 000.116: require('nvim-treesitter')
-349.846 000.554 000.554: require('vim.treesitter.highlighter')
-350.210 001.095 000.541: require('nvim-treesitter.highlight')
-350.824 002.752 001.342: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-351.290 000.239 000.239: require('treesitter-context')
-351.300 000.282 000.042: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-351.700 000.111 000.111: require('nvim-treesitter-refactor')
-351.993 000.433 000.322: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-352.381 000.124 000.124: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-352.769 000.082 000.082: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-353.140 000.093 000.093: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-353.923 000.425 000.425: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-354.290 000.060 000.060: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-355.450 000.659 000.659: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-356.275 000.502 000.502: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-356.887 000.359 000.359: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-357.732 000.594 000.594: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-358.028 000.029 000.029: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-358.315 000.044 000.044: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-359.679 011.023: loading packages
-361.384 000.464 000.464: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-365.756 005.510 005.046: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-366.647 000.195 000.195: require('cmp.utils.char')
-366.667 000.306 000.111: require('cmp.utils.str')
-366.765 000.090 000.090: require('cmp.utils.pattern')
-367.066 000.082 000.082: require('cmp.utils.buffer')
-367.081 000.207 000.126: require('cmp.utils.keymap')
-367.091 000.315 000.108: require('cmp.utils.feedkeys')
-367.201 000.105 000.105: require('cmp.utils.async')
-367.380 000.082 000.082: require('cmp.utils.cache')
-367.389 000.180 000.098: require('cmp.context')
-367.705 000.104 000.104: require('cmp.config.mapping')
-367.927 000.112 000.112: require('cmp.config.compare')
-367.934 000.218 000.106: require('cmp.config.default')
-367.962 000.455 000.133: require('cmp.config')
-368.178 000.083 000.083: require('cmp.matcher')
-368.191 000.223 000.140: require('cmp.entry')
-368.209 000.816 000.138: require('cmp.source')
-368.392 000.080 000.080: require('cmp.utils.event')
-368.603 000.111 000.111: require('cmp.utils.window')
-368.611 000.211 000.101: require('cmp.view.docs_view')
-368.766 000.150 000.150: require('cmp.view.custom_entries_view')
-368.897 000.124 000.124: require('cmp.view.wildmenu_entries_view')
-369.028 000.124 000.124: require('cmp.view.native_entries_view')
-369.135 000.100 000.100: require('cmp.view.ghost_text_view')
-369.152 000.938 000.148: require('cmp.view')
-369.269 003.048 000.297: require('cmp.core')
-369.712 000.089 000.089: require('cmp.config.sources')
-369.804 000.082 000.082: require('cmp.config.window')
-369.904 003.832 000.613: require('cmp')
-370.290 000.081 000.081: require('cmp_buffer.timer')
-370.302 000.203 000.122: require('cmp_buffer.buffer')
-370.308 000.305 000.102: require('cmp_buffer.source')
-370.312 000.401 000.095: require('cmp_buffer')
-370.344 004.362 000.130: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-370.777 000.183 000.183: require('cmp_cmdline')
-370.811 000.289 000.106: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-371.233 000.099 000.099: require('cmp_nvim_lsp.source')
-371.241 000.212 000.113: require('cmp_nvim_lsp')
-371.290 000.324 000.112: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-371.645 000.140 000.140: require('cmp_path')
-371.743 000.303 000.163: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-372.089 000.120 000.120: require('cmp_luasnip')
-372.183 000.285 000.166: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-372.388 001.635: loading after plugins
-372.417 000.029: inits 3
-372.430 000.013: reading ShaDa
-372.874 000.094 000.094: require('luasnip.loaders._caches')
-373.012 000.130 000.130: require('luasnip.util.path')
-373.134 000.114 000.114: require('luasnip.loaders.util')
-373.430 000.135 000.135: require('luasnip.loaders')
-373.482 000.340 000.205: require('luasnip')
-373.489 000.831 000.154: require('luasnip.loaders.from_lua')
-373.761 000.100 000.100: require('luasnip.nodes.snippetProxy')
-373.775 000.232 000.132: require('luasnip.loaders.from_snipmate')
-373.944 000.123 000.123: require('luasnip.loaders.from_vscode')
-374.862 001.247: opening buffers
-375.085 000.223: BufEnter autocommands
-375.092 000.007: editing files in windows
-411.604 001.608 001.608: require('vim.diagnostic')
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.111 001.111: --- NVIM STARTING ---
-027.185 026.074: event init
-043.596 016.411: early init
-045.265 001.669: locale set
-050.725 005.460: init first window
-060.579 009.854: inits 1
-060.609 000.030: window checked
-060.619 000.010: parsing arguments
-071.284 000.124 000.124: require('vim.shared')
-071.506 000.108 000.108: require('vim._meta')
-071.512 000.217 000.109: require('vim._editor')
-071.515 000.397 000.055: require('vim._init_packages')
-071.519 010.503: init lua interpreter
-071.592 000.073: expanding arguments
-073.348 001.755: inits 2
-073.982 000.634: init highlight
-073.987 000.005: waiting for UI
-077.805 003.818: done waiting for UI
-077.840 000.035: init screen for UI
-078.079 000.239: init default mappings
-078.106 000.027: init default autocommands
-087.815 004.243 004.243: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/ftplugin.vim
-089.992 001.017 001.017: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/indent.vim
-090.372 000.035 000.035: sourcing /usr/share/nvim/archlinux.vim
-090.385 000.098 000.064: sourcing /etc/xdg/nvim/sysinit.vim
-105.119 014.531 014.531: require('impatient')
-105.253 000.119 000.119: require('impatient.profile')
-108.631 000.731 000.731: require('keys')
-111.118 002.475 002.475: require('opts')
-111.846 000.144 000.144: require('packer.util')
-111.903 000.510 000.366: require('packer')
-112.587 000.275 000.275: require('packer.log')
-112.597 000.463 000.188: require('packer.async')
-112.989 000.210 000.210: require('packer.result')
-112.997 000.394 000.183: require('packer.jobs')
-113.012 001.062 000.206: require('packer.plugin_utils')
-113.532 000.496 000.496: require('packer.snapshot')
-114.562 003.432 001.363: require('pack')
-115.890 000.293 000.293: require('vim.treesitter.language')
-115.910 000.727 000.434: require('vim.treesitter.query')
-117.287 000.216 000.216: require('vim.treesitter.languagetree')
-117.351 000.578 000.363: require('vim.treesitter')
-117.630 001.176 000.598: require('nvim-treesitter.parsers')
-117.859 000.220 000.220: require('nvim-treesitter.utils')
-117.871 001.701 000.305: require('nvim-treesitter.ts_utils')
-117.885 001.964 000.263: require('nvim-treesitter.tsrange')
-117.988 000.096 000.096: require('nvim-treesitter.caching')
-118.007 002.945 000.158: require('nvim-treesitter.query')
-118.039 003.132 000.187: require('nvim-treesitter.configs')
-118.536 000.114 000.114: require('nvim-treesitter.info')
-118.675 000.129 000.129: require('nvim-treesitter.shell_command_selectors')
-118.724 000.480 000.236: require('nvim-treesitter.install')
-157.329 042.756 039.144: require('plugins.treesitter')
-157.746 000.103 000.103: require('telescope._extensions')
-157.757 000.215 000.113: require('telescope')
-158.664 000.097 000.097: require('plenary.bit')
-158.765 000.092 000.092: require('plenary.functional')
-158.812 000.031 000.031: require('ffi')
-158.835 000.422 000.202: require('plenary.path')
-158.850 000.595 000.173: require('plenary.strings')
-158.947 000.092 000.092: require('telescope.deprecated')
-159.473 000.318 000.318: require('plenary.log')
-159.514 000.439 000.120: require('telescope.log')
-159.793 000.137 000.137: require('plenary.job')
-159.900 000.098 000.098: require('telescope.state')
-159.916 000.395 000.160: require('telescope.utils')
-159.931 000.977 000.143: require('telescope.sorters')
-160.097 000.145 000.145: require('vim.inspect')
-160.525 000.020 000.020: require('vim.F')
-164.303 006.263 004.434: require('telescope.config')
-164.534 000.095 000.095: require('plenary.window.border')
-164.641 000.100 000.100: require('plenary.window')
-164.732 000.083 000.083: require('plenary.popup.utils')
-164.741 000.423 000.145: require('plenary.popup')
-164.846 000.099 000.099: require('telescope.pickers.scroller')
-164.947 000.094 000.094: require('telescope.actions.state')
-165.047 000.094 000.094: require('telescope.actions.utils')
-165.255 000.098 000.098: require('telescope.actions.mt')
-165.339 000.285 000.187: require('telescope.actions.set')
-165.628 000.111 000.111: require('telescope.config.resolve')
-165.635 000.290 000.180: require('telescope.pickers.entry_display')
-165.765 000.089 000.089: require('telescope.from_entry')
-166.096 008.333 000.695: require('telescope.actions')
-167.038 000.094 000.094: require('plenary.tbl')
-167.049 000.215 000.122: require('plenary.vararg.rotate')
-167.053 000.346 000.131: require('plenary.vararg')
-167.177 000.112 000.112: require('plenary.errors')
-167.190 000.618 000.160: require('plenary.async.async')
-167.317 000.121 000.121: require('plenary.async.structs')
-167.332 000.898 000.159: require('plenary.async.control')
-167.818 000.360 000.360: require('telescope.make_entry')
-168.264 000.119 000.119: require('plenary.async.util')
-168.271 000.220 000.101: require('plenary.async.tests')
-168.277 000.330 000.110: require('plenary.async')
-168.287 000.453 000.123: require('telescope.finders.async_static_finder')
-168.613 000.092 000.092: require('plenary.class')
-168.647 000.246 000.155: require('telescope._')
-168.654 000.362 000.115: require('telescope.finders.async_oneshot_finder')
-168.772 000.113 000.113: require('telescope.finders.async_job_finder')
-168.788 001.448 000.161: require('telescope.finders')
-169.220 000.156 000.156: require('telescope.debounce')
-169.470 000.241 000.241: require('telescope.mappings')
-169.610 000.129 000.129: require('telescope.pickers.highlights')
-169.755 000.136 000.136: require('telescope.pickers.window')
-169.976 000.103 000.103: require('telescope.algos.linked_list')
-169.989 000.227 000.124: require('telescope.entry_manager')
-170.088 000.094 000.094: require('telescope.pickers.multi')
-170.141 001.347 000.364: require('telescope.pickers')
-170.166 003.902 000.209: require('telescope.builtin.__lsp')
-170.213 004.110 000.208: require('telescope.builtin')
-170.621 000.277 000.277: require('fzf_lib')
-170.638 000.414 000.136: require('telescope._extensions.fzf')
-171.172 000.187 000.187: require('telescope._extensions.file_browser.utils')
-171.332 000.559 000.372: require('telescope._extensions.file_browser.actions')
-171.693 000.212 000.212: require('telescope._extensions.file_browser.make_entry')
-171.940 000.235 000.235: require('plenary.scandir')
-171.994 000.653 000.206: require('telescope._extensions.file_browser.finders')
-172.126 000.124 000.124: require('telescope._extensions.file_browser.picker')
-172.281 000.148 000.148: require('telescope._extensions.file_browser.config')
-172.287 001.634 000.149: require('telescope._extensions.file_browser')
-177.884 000.017 000.017: require('vim.keymap')
-178.248 020.907 006.185: require('plugins.telescope')
-179.753 000.165 000.165: require('notify.util.queue')
-179.763 000.341 000.175: require('notify.util')
-180.014 000.244 000.244: require('notify.config.highlights')
-180.024 000.708 000.123: require('notify.config')
-180.121 000.091 000.091: require('notify.stages')
-180.279 000.128 000.128: require('notify.service.notification')
-180.547 000.077 000.077: require('notify.animate.spring')
-180.553 000.163 000.086: require('notify.animate')
-180.562 000.276 000.113: require('notify.windows')
-180.849 000.099 000.099: require('notify.service.buffer.highlights')
-180.859 000.202 000.104: require('notify.service.buffer')
-180.864 000.297 000.095: require('notify.service')
-180.964 000.096 000.096: require('notify.stages.util')
-180.973 001.863 000.268: require('notify')
-181.067 000.088 000.088: require('nvim-tree.iterators.node-iterator')
-181.131 002.139 000.187: require('nvim-tree.utils')
-181.143 002.243 000.104: require('nvim-tree.events')
-181.520 000.083 000.083: require('nvim-tree.log')
-181.695 000.166 000.166: require('nvim-tree.git.utils')
-181.800 000.098 000.098: require('nvim-tree.git.runner')
-181.898 000.091 000.091: require('nvim-tree.watcher')
-181.908 000.566 000.128: require('nvim-tree.git')
-182.001 000.088 000.088: require('nvim-tree.explorer.watch')
-182.135 000.087 000.087: require('nvim-tree.explorer.common')
-182.325 000.099 000.099: require('nvim-tree.explorer.node-builders')
-182.421 000.087 000.087: require('nvim-tree.explorer.sorters')
-182.521 000.085 000.085: require('nvim-tree.explorer.filters')
-182.808 000.182 000.182: require('nvim-tree.view')
-182.825 000.297 000.115: require('nvim-tree.live-filter')
-182.833 000.691 000.123: require('nvim-tree.explorer.explore')
-182.993 000.151 000.151: require('nvim-tree.explorer.reload')
-183.004 001.856 000.273: require('nvim-tree.explorer')
-183.016 004.199 000.099: require('nvim-tree.core')
-183.191 000.168 000.168: require('nvim-tree.diagnostics')
-183.342 000.138 000.138: require('nvim-tree.renderer.components.padding')
-183.522 000.170 000.170: require('nvim-tree.renderer.components.icons')
-183.685 000.151 000.151: require('nvim-tree.renderer.components.full-name')
-183.825 000.130 000.130: require('nvim-tree.renderer.help')
-184.007 000.171 000.171: require('nvim-tree.renderer.components.git')
-184.195 000.178 000.178: require('nvim-tree.renderer.builder')
-184.347 000.141 000.141: require('nvim-tree.marks')
-184.368 005.654 000.208: require('nvim-tree.renderer')
-184.535 000.149 000.149: require('nvim-tree.actions.tree-modifiers.collapse-all')
-184.674 000.129 000.129: require('nvim-tree.actions.root.dir-up')
-184.832 000.147 000.147: require('nvim-tree.actions.root.change-dir')
-184.958 000.116 000.116: require('nvim-tree.actions.reloaders.reloaders')
-185.064 000.095 000.095: require('nvim-tree.actions.finders.find-file')
-185.070 006.451 000.159: require('nvim-tree.lib')
-185.173 000.098 000.098: require('nvim-tree.colors')
-185.295 000.112 000.112: require('nvim-tree.legacy')
-185.413 000.109 000.109: require('nvim-tree.actions.fs.copy-paste')
-185.615 000.095 000.095: require('nvim-tree.actions.tree-modifiers.expand-all')
-185.712 000.090 000.090: require('nvim-tree.actions.tree-modifiers.toggles')
-185.821 000.094 000.094: require('nvim-tree.actions.fs.create-file')
-185.919 000.090 000.090: require('nvim-tree.actions.fs.rename-file')
-186.041 000.114 000.114: require('nvim-tree.actions.fs.trash')
-186.143 000.095 000.095: require('nvim-tree.actions.fs.remove-file')
-186.240 000.086 000.086: require('nvim-tree.actions.moves.parent')
-186.331 000.085 000.085: require('nvim-tree.actions.moves.sibling')
-186.423 000.084 000.084: require('nvim-tree.actions.moves.item')
-186.533 000.091 000.091: require('nvim-tree.actions.finders.search-node')
-186.622 000.083 000.083: require('nvim-tree.actions.node.run-command')
-186.719 000.091 000.091: require('nvim-tree.actions.node.file-popup')
-186.848 000.121 000.121: require('nvim-tree.actions.node.system-open')
-186.948 000.090 000.090: require('nvim-tree.marks.bulk-move')
-186.954 001.531 000.224: require('nvim-tree.actions.dispatch')
-186.983 008.551 000.251: require('nvim-tree')
-187.065 000.076 000.076: require('nvim-tree.config')
-190.975 000.179 000.179: require('nvim-tree.actions')
-191.118 000.126 000.126: require('nvim-tree.actions.node.open-file')
-194.601 000.103 000.103: require('nvim-tree.marks.navigation')
-194.613 000.300 000.197: require('nvim-tree.api')
-194.642 000.462 000.162: require('nvim-tree.keymap')
-195.607 000.463 000.463: require('nvim-web-devicons')
-200.113 021.854 011.996: require('plugins.nvim-tree')
-200.819 000.138 000.138: require('lualine_require')
-201.441 000.999 000.861: require('lualine')
-201.530 000.079 000.079: require('plugins.linecolor')
-209.975 000.135 000.135: require('lualine.utils.mode')
-213.198 013.006 011.794: require('plugins.lualine')
-213.236 122.803 002.991: sourcing /home/sxrdusr/.config/nvim/init.lua
-213.254 006.986: sourcing vimrc file(s)
-213.571 000.053 000.053: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-214.883 000.074 000.074: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/filetype.lua
-216.250 001.156 001.156: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/filetype.vim
-218.459 000.289 000.289: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/syntax/synload.vim
-218.710 001.984 001.695: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/syntax/syntax.vim
-224.924 001.037 001.037: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/gzip.vim
-225.080 000.065 000.065: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/health.vim
-228.009 001.454 001.454: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-228.576 003.411 001.957: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/matchit.vim
-229.076 000.413 000.413: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/matchparen.vim
-229.256 000.090 000.090: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-229.702 000.024 000.024: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-229.723 000.379 000.355: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/rplugin.vim
-230.008 000.198 000.198: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/shada.vim
-230.190 000.091 000.091: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/spellfile.vim
-230.360 000.080 000.080: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/tarPlugin.vim
-230.524 000.075 000.075: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/tohtml.vim
-230.670 000.058 000.058: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/tutor.vim
-231.429 000.673 000.673: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/zipPlugin.vim
-231.723 000.037 000.037: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-233.248 000.155 000.155: require('lspsaga')
-233.650 000.126 000.126: require('lspsaga.window')
-233.674 000.289 000.163: require('lspsaga.libs')
-234.831 000.402 000.402: require('vim.lsp.log')
-235.514 000.671 000.671: require('vim.lsp.protocol')
-236.036 000.228 000.228: require('vim.lsp._snippet')
-236.195 000.149 000.149: require('vim.highlight')
-236.231 000.707 000.330: require('vim.lsp.util')
-236.254 002.041 000.262: require('vim.lsp.handlers')
-236.548 000.287 000.287: require('vim.lsp.rpc')
-236.714 000.154 000.154: require('vim.lsp.sync')
-236.982 000.258 000.258: require('vim.lsp.buf')
-237.189 000.194 000.194: require('vim.lsp.diagnostic')
-237.383 000.186 000.186: require('vim.lsp.codelens')
-237.546 003.740 000.620: require('vim.lsp')
-237.656 000.098 000.098: require('lspsaga.wrap')
-237.672 003.992 000.153: require('lspsaga.codeaction')
-237.713 004.454 000.172: require('lspsaga.lightbulb')
-237.892 000.137 000.137: require('lspsaga.lspkind')
-238.160 000.086 000.086: require('mason-core.path')
-238.178 000.190 000.104: require('mason.settings')
-238.483 000.086 000.086: require('mason-core.functional.data')
-238.491 000.190 000.104: require('mason-core.functional.function')
-238.531 000.345 000.156: require('mason-core.platform')
-238.536 000.631 000.096: require('mason')
-238.821 000.142 000.142: require('mason-core.functional')
-238.957 000.113 000.113: require('mason-core.functional.list')
-239.001 000.437 000.182: require('mason.api.command')
-239.249 000.137 000.137: require('mason-core.log')
-239.258 000.250 000.114: require('mason-lspconfig')
-239.355 000.092 000.092: require('mason-lspconfig.settings')
-239.481 000.107 000.107: require('mason-lspconfig.lspconfig_hook')
-239.804 000.316 000.316: require('lspconfig.util')
-240.204 000.126 000.126: require('mason-core.functional.table')
-240.364 000.446 000.320: require('mason-lspconfig.mappings.server')
-240.714 000.112 000.112: require('mason-core.async')
-240.810 000.087 000.087: require('mason-core.async.uv')
-240.822 000.314 000.115: require('mason-core.fs')
-240.921 000.090 000.090: require('mason-core.optional')
-241.022 000.094 000.094: require('mason-core.EventEmitter')
-241.210 000.181 000.181: require('mason-registry.index')
-241.234 000.860 000.181: require('mason-registry')
-241.334 000.093 000.093: require('mason-lspconfig.server_config_extensions')
-241.505 000.118 000.118: require('lspconfig.configs')
-241.623 000.110 000.110: require('lspconfig.server_configurations.omnisharp')
-241.763 000.097 000.097: require('mason-lspconfig.ensure_installed')
-242.095 000.095 000.095: require('mason-core.result')
-242.582 000.251 000.251: require('mason-core.process')
-242.688 000.094 000.094: require('mason-core.functional.relation')
-242.788 000.090 000.090: require('mason-core.functional.logic')
-242.807 000.575 000.140: require('mason-core.spawn')
-242.922 000.106 000.106: require('mason-core.receipt')
-243.037 000.096 000.096: require('mason-core.functional.string')
-243.067 000.964 000.187: require('mason-core.installer.context')
-243.173 000.100 000.100: require('mason-core.installer.linker')
-243.274 000.095 000.095: require('mason-core.async.control')
-243.283 001.396 000.141: require('mason-core.installer')
-243.420 000.132 000.132: require('mason-core.installer.handle')
-245.806 000.120 000.120: require('mason-core.managers.powershell')
-245.817 002.066 001.945: require('mason-core.fetch')
-245.822 002.152 000.086: require('mason-core.managers.cargo.client')
-245.863 002.308 000.156: require('mason-core.managers.cargo')
-246.012 000.143 000.143: require('mason-core.managers.composer')
-246.163 000.144 000.144: require('mason-core.managers.gem')
-246.277 000.107 000.107: require('mason-core.managers.git')
-246.520 000.120 000.120: require('mason-core.managers.std')
-246.633 000.106 000.106: require('mason-core.managers.github.client')
-246.652 000.368 000.142: require('mason-core.managers.github')
-246.927 000.270 000.270: require('mason-core.managers.go')
-247.120 000.184 000.184: require('mason-core.managers.luarocks')
-247.268 000.141 000.141: require('mason-core.managers.npm')
-247.446 000.171 000.171: require('mason-core.managers.pip3')
-247.459 004.027 000.192: require('mason-core.package.version-check')
-247.472 005.702 000.147: require('mason-core.package')
-247.697 000.125 000.125: require('mason-registry.lua-language-server')
-248.154 000.144 000.144: require('mason-registry.clangd')
-248.338 000.142 000.142: require('mason-registry.rust-analyzer')
-248.567 000.079 000.079: require('mason-core.notify')
-248.681 000.104 000.104: require('mason-core.functional.number')
-248.744 000.395 000.212: require('mason-lspconfig.api.command')
-248.751 016.895 002.084: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-250.216 000.149 000.149: sourcing /tmp/.mount_nvimnx9QwH/usr/share/nvim/runtime/plugin/man.lua
-250.464 010.291: loading rtp plugins
-252.317 000.130 000.130: require('Comment.config')
-252.432 000.105 000.105: require('Comment.utils')
-252.532 000.092 000.092: require('Comment.opfunc')
-252.631 000.092 000.092: require('Comment.extra')
-252.648 000.616 000.196: require('Comment.api')
-253.164 001.202 000.586: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-253.955 000.088 000.088: require('luasnip.util.types')
-254.062 000.098 000.098: require('luasnip.util.ext_opts')
-254.171 000.101 000.101: require('luasnip.extras.filetype_functions')
-254.272 000.094 000.094: require('luasnip.session')
-254.636 000.137 000.137: require('luasnip.util.util')
-254.743 000.099 000.099: require('luasnip.nodes.util')
-254.843 000.092 000.092: require('luasnip.util.events')
-254.861 000.475 000.147: require('luasnip.nodes.node')
-255.012 000.094 000.094: require('luasnip.util.extend_decorator')
-255.023 000.743 000.175: require('luasnip.nodes.insertNode')
-255.408 000.109 000.109: require('luasnip.util.mark')
-255.695 000.123 000.123: require('luasnip.nodes.textNode')
-256.595 000.792 000.792: require('luasnip.util._builtin_vars')
-256.841 001.133 000.341: require('luasnip.util.environ')
-256.963 000.111 000.111: require('luasnip.util.pattern_tokenizer')
-257.055 000.084 000.084: require('luasnip.util.dict')
-257.172 000.110 000.110: require('luasnip.session.snippet_collection')
-257.232 001.814 000.254: require('luasnip.nodes.snippet')
-257.291 002.263 000.339: require('luasnip.nodes.choiceNode')
-257.465 000.139 000.139: require('luasnip.nodes.functionNode')
-257.663 000.187 000.187: require('luasnip.nodes.dynamicNode')
-257.824 000.153 000.153: require('luasnip.nodes.restoreNode')
-257.940 000.109 000.109: require('luasnip.extras')
-258.135 000.088 000.088: require('luasnip.util.str')
-258.144 000.193 000.104: require('luasnip.extras.fmt')
-258.239 000.087 000.087: require('luasnip.extras.expand_conditions')
-258.565 000.104 000.104: require('luasnip.util.parser.neovim_ast')
-268.931 000.123 000.123: require('luasnip.util.directed_graph')
-268.952 010.600 010.373: require('luasnip.util.parser.ast_utils')
-269.185 000.096 000.096: require('luasnip.util.functions')
-269.202 000.243 000.147: require('luasnip.util.parser.ast_parser')
-269.421 000.212 000.212: require('luasnip.util.parser.neovim_parser')
-269.442 011.193 000.138: require('luasnip.util.parser')
-269.543 000.094 000.094: require('luasnip.nodes.absolute_indexer')
-269.972 016.251 000.709: require('luasnip.config')
-270.152 016.806 000.555: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-271.034 000.049 000.049: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-271.973 000.123 000.123: require('indent_blankline/utils')
-271.982 000.313 000.190: require('indent_blankline')
-272.343 000.105 000.105: require('indent_blankline.commands')
-272.499 001.006 000.587: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/plugin/indent_blankline.vim
-272.937 000.132 000.132: require('lsp-colors')
-273.381 000.626 000.495: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-274.698 000.902 000.902: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-275.547 000.392 000.392: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-276.124 000.110 000.110: require('cmp.utils.api')
-276.308 000.089 000.089: require('cmp.types.cmp')
-276.520 000.102 000.102: require('cmp.utils.misc')
-276.553 000.238 000.136: require('cmp.types.lsp')
-276.641 000.081 000.081: require('cmp.types.vim')
-276.647 000.514 000.105: require('cmp.types')
-276.740 000.088 000.088: require('cmp.utils.highlight')
-276.942 000.083 000.083: require('cmp.utils.debug')
-276.958 000.211 000.128: require('cmp.utils.autocmd')
-277.710 001.788 000.865: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-277.977 000.081 000.081: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-278.441 000.144 000.144: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-278.924 000.182 000.182: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-279.607 000.095 000.095: require('nvim-treesitter.statusline')
-279.735 000.120 000.120: require('nvim-treesitter.query_predicates')
-279.743 000.332 000.117: require('nvim-treesitter')
-280.880 000.218 000.218: require('vim.treesitter.highlighter')
-281.220 000.738 000.520: require('nvim-treesitter.highlight')
-281.584 002.249 001.180: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-282.055 000.247 000.247: require('treesitter-context')
-282.065 000.289 000.042: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-282.467 000.116 000.116: require('nvim-treesitter-refactor')
-282.639 000.316 000.200: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-282.999 000.105 000.105: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-283.374 000.078 000.078: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-283.801 000.096 000.096: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-284.568 000.417 000.417: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-284.926 000.058 000.058: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-285.791 000.378 000.378: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-286.575 000.492 000.492: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-287.223 000.361 000.361: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-288.060 000.588 000.588: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-288.358 000.029 000.029: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-288.635 000.044 000.044: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-289.572 010.432: loading packages
-291.291 000.474 000.474: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-295.675 005.526 005.052: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-296.520 000.147 000.147: require('cmp.utils.char')
-296.536 000.263 000.115: require('cmp.utils.str')
-296.633 000.090 000.090: require('cmp.utils.pattern')
-296.969 000.081 000.081: require('cmp.utils.buffer')
-296.982 000.246 000.166: require('cmp.utils.keymap')
-296.995 000.354 000.108: require('cmp.utils.feedkeys')
-297.107 000.107 000.107: require('cmp.utils.async')
-297.291 000.081 000.081: require('cmp.utils.cache')
-297.301 000.186 000.104: require('cmp.context')
-297.636 000.107 000.107: require('cmp.config.mapping')
-297.858 000.108 000.108: require('cmp.config.compare')
-297.868 000.220 000.112: require('cmp.config.default')
-297.896 000.466 000.139: require('cmp.config')
-298.116 000.086 000.086: require('cmp.matcher')
-298.130 000.228 000.142: require('cmp.entry')
-298.150 000.844 000.150: require('cmp.source')
-298.347 000.087 000.087: require('cmp.utils.event')
-298.569 000.111 000.111: require('cmp.utils.window')
-298.577 000.222 000.112: require('cmp.view.docs_view')
-298.733 000.151 000.151: require('cmp.view.custom_entries_view')
-298.868 000.128 000.128: require('cmp.view.wildmenu_entries_view')
-298.986 000.112 000.112: require('cmp.view.native_entries_view')
-299.096 000.102 000.102: require('cmp.view.ghost_text_view')
-299.114 000.959 000.156: require('cmp.view')
-299.197 003.078 000.275: require('cmp.core')
-299.687 000.092 000.092: require('cmp.config.sources')
-299.782 000.085 000.085: require('cmp.config.window')
-299.886 003.913 000.659: require('cmp')
-300.287 000.084 000.084: require('cmp_buffer.timer')
-300.296 000.211 000.127: require('cmp_buffer.buffer')
-300.304 000.319 000.108: require('cmp_buffer.source')
-300.309 000.416 000.097: require('cmp_buffer')
-300.342 004.448 000.119: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-300.758 000.175 000.175: require('cmp_cmdline')
-300.793 000.281 000.106: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-301.292 000.176 000.176: require('cmp_nvim_lsp.source')
-301.303 000.288 000.112: require('cmp_nvim_lsp')
-301.353 000.407 000.119: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-301.714 000.146 000.146: require('cmp_path')
-301.753 000.246 000.100: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-302.079 000.105 000.105: require('cmp_luasnip')
-302.261 000.359 000.254: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-302.459 001.620: loading after plugins
-302.488 000.029: inits 3
-302.501 000.013: reading ShaDa
-302.942 000.097 000.097: require('luasnip.loaders._caches')
-303.083 000.132 000.132: require('luasnip.util.path')
-303.202 000.111 000.111: require('luasnip.loaders.util')
-303.527 000.159 000.159: require('luasnip.loaders')
-303.585 000.375 000.215: require('luasnip')
-303.592 000.859 000.145: require('luasnip.loaders.from_lua')
-303.889 000.122 000.122: require('luasnip.nodes.snippetProxy')
-303.901 000.254 000.133: require('luasnip.loaders.from_snipmate')
-304.069 000.123 000.123: require('luasnip.loaders.from_vscode')
-305.197 001.459: opening buffers
-305.422 000.225: BufEnter autocommands
-305.429 000.007: editing files in windows
-322.290 000.943 000.943: require('vim.diagnostic')
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.092 001.092: --- NVIM STARTING ---
-027.470 026.378: event init
-043.953 016.484: early init
-045.599 001.646: locale set
-051.045 005.446: init first window
-060.894 009.849: inits 1
-060.923 000.029: window checked
-060.933 000.011: parsing arguments
-071.709 000.123 000.123: require('vim.shared')
-071.945 000.108 000.108: require('vim._meta')
-071.950 000.231 000.123: require('vim._editor')
-071.954 000.411 000.057: require('vim._init_packages')
-071.957 010.613: init lua interpreter
-072.034 000.077: expanding arguments
-073.708 001.674: inits 2
-074.323 000.616: init highlight
-074.327 000.004: waiting for UI
-078.106 003.778: done waiting for UI
-078.157 000.052: init screen for UI
-078.520 000.363: init default mappings
-078.555 000.035: init default autocommands
-088.938 004.488 004.488: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/ftplugin.vim
-090.930 000.943 000.943: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/indent.vim
-091.231 000.027 000.027: sourcing /usr/share/nvim/archlinux.vim
-091.243 000.084 000.057: sourcing /etc/xdg/nvim/sysinit.vim
-105.580 014.174 014.174: require('impatient')
-105.713 000.118 000.118: require('impatient.profile')
-109.123 000.739 000.739: require('keys')
-111.607 002.472 002.472: require('opts')
-112.518 000.214 000.214: require('packer.util')
-112.571 000.683 000.470: require('packer')
-113.172 000.202 000.202: require('packer.log')
-113.182 000.366 000.164: require('packer.async')
-113.454 000.161 000.161: require('packer.result')
-113.465 000.277 000.116: require('packer.jobs')
-113.478 000.858 000.215: require('packer.plugin_utils')
-113.774 000.272 000.272: require('packer.snapshot')
-114.919 003.300 001.486: require('pack')
-116.141 000.252 000.252: require('vim.treesitter.language')
-116.161 000.730 000.479: require('vim.treesitter.query')
-117.088 000.211 000.211: require('vim.treesitter.languagetree')
-117.193 000.526 000.315: require('vim.treesitter')
-117.477 001.084 000.558: require('nvim-treesitter.parsers')
-117.613 000.127 000.127: require('nvim-treesitter.utils')
-117.627 001.344 000.133: require('nvim-treesitter.ts_utils')
-117.641 001.470 000.126: require('nvim-treesitter.tsrange')
-117.738 000.090 000.090: require('nvim-treesitter.caching')
-117.759 002.507 000.217: require('nvim-treesitter.query')
-117.790 002.780 000.273: require('nvim-treesitter.configs')
-118.152 000.107 000.107: require('nvim-treesitter.info')
-118.293 000.132 000.132: require('nvim-treesitter.shell_command_selectors')
-118.339 000.451 000.212: require('nvim-treesitter.install')
-156.898 041.970 038.738: require('plugins.treesitter')
-157.216 000.091 000.091: require('telescope._extensions')
-157.226 000.195 000.105: require('telescope')
-157.946 000.092 000.092: require('plenary.bit')
-158.045 000.090 000.090: require('plenary.functional')
-158.093 000.029 000.029: require('ffi')
-158.116 000.407 000.196: require('plenary.path')
-158.132 000.520 000.113: require('plenary.strings')
-158.310 000.173 000.173: require('telescope.deprecated')
-158.887 000.298 000.298: require('plenary.log')
-159.000 000.494 000.196: require('telescope.log')
-159.285 000.138 000.138: require('plenary.job')
-159.380 000.086 000.086: require('telescope.state')
-159.395 000.386 000.162: require('telescope.utils')
-159.405 001.086 000.207: require('telescope.sorters')
-159.514 000.086 000.086: require('vim.inspect')
-160.442 000.019 000.019: require('vim.F')
-164.246 006.778 004.895: require('telescope.config')
-164.541 000.161 000.161: require('plenary.window.border')
-164.687 000.136 000.136: require('plenary.window')
-164.772 000.076 000.076: require('plenary.popup.utils')
-164.780 000.520 000.147: require('plenary.popup')
-164.894 000.108 000.108: require('telescope.pickers.scroller')
-164.993 000.091 000.091: require('telescope.actions.state')
-165.092 000.092 000.092: require('telescope.actions.utils')
-165.296 000.095 000.095: require('telescope.actions.mt')
-165.373 000.274 000.179: require('telescope.actions.set')
-165.577 000.097 000.097: require('telescope.config.resolve')
-165.583 000.204 000.107: require('telescope.pickers.entry_display')
-165.670 000.081 000.081: require('telescope.from_entry')
-166.061 008.829 000.680: require('telescope.actions')
-166.884 000.089 000.089: require('plenary.tbl')
-166.896 000.201 000.112: require('plenary.vararg.rotate')
-166.900 000.295 000.094: require('plenary.vararg')
-167.037 000.125 000.125: require('plenary.errors')
-167.063 000.564 000.144: require('plenary.async.async')
-167.168 000.098 000.098: require('plenary.async.structs')
-167.185 000.805 000.142: require('plenary.async.control')
-167.596 000.295 000.295: require('telescope.make_entry')
-168.063 000.142 000.142: require('plenary.async.util')
-168.070 000.240 000.098: require('plenary.async.tests')
-168.076 000.347 000.107: require('plenary.async')
-168.088 000.480 000.133: require('telescope.finders.async_static_finder')
-168.440 000.106 000.106: require('plenary.class')
-168.476 000.270 000.163: require('telescope._')
-168.482 000.389 000.119: require('telescope.finders.async_oneshot_finder')
-168.596 000.108 000.108: require('telescope.finders.async_job_finder')
-168.611 001.418 000.147: require('telescope.finders')
-169.013 000.151 000.151: require('telescope.debounce')
-169.240 000.217 000.217: require('telescope.mappings')
-169.382 000.132 000.132: require('telescope.pickers.highlights')
-169.541 000.146 000.146: require('telescope.pickers.window')
-169.887 000.127 000.127: require('telescope.algos.linked_list')
-169.898 000.304 000.178: require('telescope.entry_manager')
-170.005 000.102 000.102: require('telescope.pickers.multi')
-170.047 001.428 000.376: require('telescope.pickers')
-170.069 003.829 000.178: require('telescope.builtin.__lsp')
-170.126 004.055 000.227: require('telescope.builtin')
-170.538 000.280 000.280: require('fzf_lib')
-170.556 000.422 000.142: require('telescope._extensions.fzf')
-171.114 000.177 000.177: require('telescope._extensions.file_browser.utils')
-171.256 000.523 000.345: require('telescope._extensions.file_browser.actions')
-171.607 000.207 000.207: require('telescope._extensions.file_browser.make_entry')
-171.830 000.210 000.210: require('plenary.scandir')
-171.885 000.621 000.204: require('telescope._extensions.file_browser.finders')
-172.019 000.126 000.126: require('telescope._extensions.file_browser.picker')
-172.179 000.153 000.153: require('telescope._extensions.file_browser.config')
-172.195 001.582 000.159: require('telescope._extensions.file_browser')
-177.155 000.039 000.039: require('vim.keymap')
-177.505 020.593 005.471: require('plugins.telescope')
-179.728 000.170 000.170: require('notify.util.queue')
-179.739 000.342 000.172: require('notify.util')
-179.999 000.254 000.254: require('notify.config.highlights')
-180.010 000.712 000.116: require('notify.config')
-180.101 000.086 000.086: require('notify.stages')
-180.201 000.092 000.092: require('notify.service.notification')
-180.473 000.076 000.076: require('notify.animate.spring')
-180.479 000.174 000.098: require('notify.animate')
-180.488 000.281 000.107: require('notify.windows')
-180.766 000.095 000.095: require('notify.service.buffer.highlights')
-180.775 000.195 000.100: require('notify.service.buffer')
-180.780 000.287 000.091: require('notify.service')
-180.878 000.093 000.093: require('notify.stages.util')
-180.888 001.802 000.250: require('notify')
-180.980 000.087 000.087: require('nvim-tree.iterators.node-iterator')
-181.047 002.073 000.184: require('nvim-tree.utils')
-181.058 002.174 000.101: require('nvim-tree.events')
-181.322 000.081 000.081: require('nvim-tree.log')
-181.491 000.161 000.161: require('nvim-tree.git.utils')
-181.595 000.097 000.097: require('nvim-tree.git.runner')
-181.696 000.094 000.094: require('nvim-tree.watcher')
-181.707 000.555 000.122: require('nvim-tree.git')
-181.802 000.090 000.090: require('nvim-tree.explorer.watch')
-181.935 000.086 000.086: require('nvim-tree.explorer.common')
-182.126 000.098 000.098: require('nvim-tree.explorer.node-builders')
-182.222 000.087 000.087: require('nvim-tree.explorer.sorters')
-182.325 000.086 000.086: require('nvim-tree.explorer.filters')
-182.606 000.178 000.178: require('nvim-tree.view')
-182.618 000.286 000.108: require('nvim-tree.live-filter')
-182.623 000.680 000.123: require('nvim-tree.explorer.explore')
-182.725 000.098 000.098: require('nvim-tree.explorer.reload')
-182.733 001.669 000.160: require('nvim-tree.explorer')
-182.740 003.940 000.096: require('nvim-tree.core')
-182.854 000.110 000.110: require('nvim-tree.diagnostics')
-182.951 000.089 000.089: require('nvim-tree.renderer.components.padding')
-183.045 000.087 000.087: require('nvim-tree.renderer.components.icons')
-183.143 000.092 000.092: require('nvim-tree.renderer.components.full-name')
-183.231 000.081 000.081: require('nvim-tree.renderer.help')
-183.343 000.105 000.105: require('nvim-tree.renderer.components.git')
-183.459 000.110 000.110: require('nvim-tree.renderer.builder')
-183.554 000.088 000.088: require('nvim-tree.marks')
-183.569 004.957 000.255: require('nvim-tree.renderer')
-183.714 000.133 000.133: require('nvim-tree.actions.tree-modifiers.collapse-all')
-183.809 000.088 000.088: require('nvim-tree.actions.root.dir-up')
-183.909 000.093 000.093: require('nvim-tree.actions.root.change-dir')
-184.006 000.091 000.091: require('nvim-tree.actions.reloaders.reloaders')
-184.106 000.090 000.090: require('nvim-tree.actions.finders.find-file')
-184.111 006.027 000.576: require('nvim-tree.lib')
-184.209 000.093 000.093: require('nvim-tree.colors')
-184.329 000.110 000.110: require('nvim-tree.legacy')
-184.447 000.109 000.109: require('nvim-tree.actions.fs.copy-paste')
-184.645 000.092 000.092: require('nvim-tree.actions.tree-modifiers.expand-all')
-184.740 000.088 000.088: require('nvim-tree.actions.tree-modifiers.toggles')
-184.847 000.092 000.092: require('nvim-tree.actions.fs.create-file')
-184.944 000.088 000.088: require('nvim-tree.actions.fs.rename-file')
-185.063 000.112 000.112: require('nvim-tree.actions.fs.trash')
-185.164 000.093 000.093: require('nvim-tree.actions.fs.remove-file')
-185.257 000.084 000.084: require('nvim-tree.actions.moves.parent')
-185.347 000.083 000.083: require('nvim-tree.actions.moves.sibling')
-185.436 000.081 000.081: require('nvim-tree.actions.moves.item')
-185.544 000.090 000.090: require('nvim-tree.actions.finders.search-node')
-185.634 000.083 000.083: require('nvim-tree.actions.node.run-command')
-185.729 000.089 000.089: require('nvim-tree.actions.node.file-popup')
-185.840 000.104 000.104: require('nvim-tree.actions.node.system-open')
-185.937 000.087 000.087: require('nvim-tree.marks.bulk-move')
-185.943 001.485 000.221: require('nvim-tree.actions.dispatch')
-185.973 008.278 000.454: require('nvim-tree')
-186.053 000.074 000.074: require('nvim-tree.config')
-192.349 000.155 000.155: require('nvim-tree.actions')
-192.479 000.113 000.113: require('nvim-tree.actions.node.open-file')
-196.244 000.112 000.112: require('nvim-tree.marks.navigation')
-196.255 000.312 000.199: require('nvim-tree.api')
-196.284 000.470 000.158: require('nvim-tree.keymap')
-197.266 000.487 000.487: require('nvim-web-devicons')
-202.059 024.544 014.966: require('plugins.nvim-tree')
-202.450 000.103 000.103: require('lualine_require')
-203.033 000.835 000.732: require('lualine')
-203.120 000.078 000.078: require('plugins.linecolor')
-211.064 000.113 000.113: require('lualine.utils.mode')
-213.472 011.399 010.372: require('plugins.lualine')
-213.595 122.306 002.998: sourcing /home/sxrdusr/.config/nvim/init.lua
-213.617 007.239: sourcing vimrc file(s)
-214.062 000.083 000.083: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-215.663 000.110 000.110: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/filetype.lua
-218.896 002.865 002.865: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/filetype.vim
-222.633 000.464 000.464: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/syntax/synload.vim
-222.910 003.277 002.813: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/syntax/syntax.vim
-230.982 002.165 002.165: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/gzip.vim
-231.269 000.080 000.080: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/health.vim
-234.916 002.388 002.388: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-235.394 004.055 001.667: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/matchit.vim
-235.851 000.389 000.389: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/matchparen.vim
-235.996 000.075 000.075: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-236.395 000.024 000.024: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-236.416 000.357 000.333: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/rplugin.vim
-236.661 000.185 000.185: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/shada.vim
-236.780 000.051 000.051: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/spellfile.vim
-236.906 000.061 000.061: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/tarPlugin.vim
-237.061 000.091 000.091: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/tohtml.vim
-237.174 000.046 000.046: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/tutor.vim
-238.457 001.220 001.220: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/zipPlugin.vim
-238.752 000.039 000.039: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-240.127 000.153 000.153: require('lspsaga')
-240.603 000.125 000.125: require('lspsaga.window')
-240.623 000.279 000.154: require('lspsaga.libs')
-241.874 000.487 000.487: require('vim.lsp.log')
-242.691 000.807 000.807: require('vim.lsp.protocol')
-243.422 000.332 000.332: require('vim.lsp._snippet')
-243.615 000.184 000.184: require('vim.highlight')
-243.648 000.946 000.430: require('vim.lsp.util')
-243.726 002.598 000.358: require('vim.lsp.handlers')
-244.087 000.352 000.352: require('vim.lsp.rpc')
-244.346 000.248 000.248: require('vim.lsp.sync')
-244.661 000.306 000.306: require('vim.lsp.buf')
-244.922 000.253 000.253: require('vim.lsp.diagnostic')
-245.190 000.257 000.257: require('vim.lsp.codelens')
-245.375 004.624 000.610: require('vim.lsp')
-245.483 000.096 000.096: require('lspsaga.wrap')
-245.499 004.869 000.149: require('lspsaga.codeaction')
-245.544 005.350 000.202: require('lspsaga.lightbulb')
-245.715 000.129 000.129: require('lspsaga.lspkind')
-245.979 000.083 000.083: require('mason-core.path')
-246.000 000.191 000.108: require('mason.settings')
-246.299 000.084 000.084: require('mason-core.functional.data')
-246.308 000.184 000.100: require('mason-core.functional.function')
-246.351 000.344 000.159: require('mason-core.platform')
-246.356 000.629 000.095: require('mason')
-246.650 000.148 000.148: require('mason-core.functional')
-246.787 000.115 000.115: require('mason-core.functional.list')
-246.828 000.447 000.184: require('mason.api.command')
-247.090 000.151 000.151: require('mason-core.log')
-247.099 000.265 000.115: require('mason-lspconfig')
-247.239 000.098 000.098: require('mason-lspconfig.settings')
-247.367 000.107 000.107: require('mason-lspconfig.lspconfig_hook')
-247.717 000.343 000.343: require('lspconfig.util')
-247.999 000.096 000.096: require('mason-core.functional.table')
-248.100 000.356 000.260: require('mason-lspconfig.mappings.server')
-248.444 000.109 000.109: require('mason-core.async')
-248.538 000.084 000.084: require('mason-core.async.uv')
-248.552 000.314 000.121: require('mason-core.fs')
-248.651 000.092 000.092: require('mason-core.optional')
-248.748 000.089 000.089: require('mason-core.EventEmitter')
-248.943 000.189 000.189: require('mason-registry.index')
-248.967 000.858 000.174: require('mason-registry')
-249.068 000.094 000.094: require('mason-lspconfig.server_config_extensions')
-249.236 000.119 000.119: require('lspconfig.configs')
-249.356 000.112 000.112: require('lspconfig.server_configurations.omnisharp')
-249.701 000.098 000.098: require('mason-lspconfig.ensure_installed')
-250.043 000.099 000.099: require('mason-core.result')
-250.531 000.264 000.264: require('mason-core.process')
-250.642 000.095 000.095: require('mason-core.functional.relation')
-250.743 000.090 000.090: require('mason-core.functional.logic')
-250.762 000.589 000.140: require('mason-core.spawn')
-250.889 000.119 000.119: require('mason-core.receipt')
-251.006 000.101 000.101: require('mason-core.functional.string')
-251.040 000.990 000.181: require('mason-core.installer.context')
-251.152 000.105 000.105: require('mason-core.installer.linker')
-251.255 000.096 000.096: require('mason-core.async.control')
-251.263 001.435 000.145: require('mason-core.installer')
-251.392 000.124 000.124: require('mason-core.installer.handle')
-251.882 000.093 000.093: require('mason-core.managers.powershell')
-251.892 000.198 000.105: require('mason-core.fetch')
-251.896 000.286 000.089: require('mason-core.managers.cargo.client')
-251.931 000.430 000.143: require('mason-core.managers.cargo')
-252.157 000.220 000.220: require('mason-core.managers.composer')
-252.349 000.184 000.184: require('mason-core.managers.gem')
-252.472 000.116 000.116: require('mason-core.managers.git')
-252.713 000.124 000.124: require('mason-core.managers.std')
-252.826 000.107 000.107: require('mason-core.managers.github.client')
-252.842 000.363 000.132: require('mason-core.managers.github')
-253.075 000.228 000.228: require('mason-core.managers.go')
-253.279 000.192 000.192: require('mason-core.managers.luarocks')
-255.465 002.178 002.178: require('mason-core.managers.npm')
-255.647 000.171 000.171: require('mason-core.managers.pip3')
-255.660 004.254 000.173: require('mason-core.package.version-check')
-255.672 005.963 000.150: require('mason-core.package')
-255.814 000.120 000.120: require('mason-registry.lua-language-server')
-256.247 000.143 000.143: require('mason-registry.clangd')
-256.412 000.142 000.142: require('mason-registry.rust-analyzer')
-256.636 000.080 000.080: require('mason-core.notify')
-256.741 000.092 000.092: require('mason-core.functional.number')
-256.804 000.378 000.207: require('mason-lspconfig.api.command')
-256.810 017.922 002.017: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-258.334 000.124 000.124: sourcing /tmp/.mount_nvimLES7HE/usr/share/nvim/runtime/plugin/man.lua
-258.674 011.862: loading rtp plugins
-260.488 000.126 000.126: require('Comment.config')
-260.600 000.103 000.103: require('Comment.utils')
-260.698 000.091 000.091: require('Comment.opfunc')
-260.790 000.085 000.085: require('Comment.extra')
-260.805 000.590 000.185: require('Comment.api')
-261.303 001.171 000.580: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-262.020 000.084 000.084: require('luasnip.util.types')
-262.125 000.095 000.095: require('luasnip.util.ext_opts')
-262.226 000.094 000.094: require('luasnip.extras.filetype_functions')
-262.320 000.088 000.088: require('luasnip.session')
-262.672 000.136 000.136: require('luasnip.util.util')
-262.777 000.096 000.096: require('luasnip.nodes.util')
-262.872 000.088 000.088: require('luasnip.util.events')
-262.889 000.459 000.138: require('luasnip.nodes.node')
-263.033 000.092 000.092: require('luasnip.util.extend_decorator')
-263.047 000.717 000.166: require('luasnip.nodes.insertNode')
-263.389 000.102 000.102: require('luasnip.util.mark')
-263.702 000.152 000.152: require('luasnip.nodes.textNode')
-264.565 000.754 000.754: require('luasnip.util._builtin_vars')
-264.807 001.092 000.338: require('luasnip.util.environ')
-264.926 000.108 000.108: require('luasnip.util.pattern_tokenizer')
-265.014 000.082 000.082: require('luasnip.util.dict')
-265.129 000.108 000.108: require('luasnip.session.snippet_collection')
-265.186 001.787 000.246: require('luasnip.nodes.snippet')
-265.245 002.193 000.304: require('luasnip.nodes.choiceNode')
-265.415 000.135 000.135: require('luasnip.nodes.functionNode')
-265.607 000.182 000.182: require('luasnip.nodes.dynamicNode')
-265.760 000.145 000.145: require('luasnip.nodes.restoreNode')
-265.872 000.104 000.104: require('luasnip.extras')
-266.061 000.084 000.084: require('luasnip.util.str')
-266.070 000.187 000.103: require('luasnip.extras.fmt')
-266.166 000.089 000.089: require('luasnip.extras.expand_conditions')
-266.477 000.098 000.098: require('luasnip.util.parser.neovim_ast')
-279.924 000.122 000.122: require('luasnip.util.directed_graph')
-279.941 013.672 013.452: require('luasnip.util.parser.ast_utils')
-280.168 000.093 000.093: require('luasnip.util.functions')
-280.187 000.238 000.145: require('luasnip.util.parser.ast_parser')
-280.414 000.221 000.221: require('luasnip.util.parser.neovim_parser')
-280.432 014.256 000.125: require('luasnip.util.parser')
-280.551 000.113 000.113: require('luasnip.nodes.absolute_indexer')
-281.168 019.368 000.886: require('luasnip.config')
-281.363 019.881 000.514: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-282.264 000.049 000.049: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-283.237 000.123 000.123: require('indent_blankline/utils')
-283.246 000.329 000.206: require('indent_blankline')
-283.723 000.159 000.159: require('indent_blankline.commands')
-283.889 001.158 000.670: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/plugin/indent_blankline.vim
-284.318 000.120 000.120: require('lsp-colors')
-284.791 000.644 000.524: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-286.230 001.057 001.057: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-287.117 000.424 000.424: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-287.689 000.109 000.109: require('cmp.utils.api')
-287.867 000.085 000.085: require('cmp.types.cmp')
-288.082 000.103 000.103: require('cmp.utils.misc')
-288.116 000.242 000.139: require('cmp.types.lsp')
-288.203 000.080 000.080: require('cmp.types.vim')
-288.209 000.511 000.103: require('cmp.types')
-288.300 000.087 000.087: require('cmp.utils.highlight')
-288.468 000.075 000.075: require('cmp.utils.debug')
-288.487 000.180 000.104: require('cmp.utils.autocmd')
-289.175 001.687 000.800: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-289.438 000.080 000.080: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-289.877 000.124 000.124: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-290.371 000.202 000.202: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-291.056 000.093 000.093: require('nvim-treesitter.statusline')
-291.170 000.105 000.105: require('nvim-treesitter.query_predicates')
-291.177 000.314 000.116: require('nvim-treesitter')
-292.449 000.351 000.351: require('vim.treesitter.highlighter')
-292.800 000.880 000.529: require('nvim-treesitter.highlight')
-293.462 002.680 001.486: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-293.983 000.281 000.281: require('treesitter-context')
-293.994 000.339 000.058: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-294.391 000.113 000.113: require('nvim-treesitter-refactor')
-294.702 000.452 000.339: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-295.066 000.111 000.111: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-295.444 000.082 000.082: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-295.810 000.094 000.094: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-296.594 000.435 000.435: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-296.954 000.060 000.060: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-297.994 000.516 000.516: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-298.775 000.494 000.494: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-299.392 000.369 000.369: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-300.231 000.595 000.595: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-300.559 000.031 000.031: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-300.840 000.045 000.045: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-302.316 010.862: loading packages
-304.000 000.477 000.477: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-308.385 005.527 005.050: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-309.211 000.138 000.138: require('cmp.utils.char')
-309.226 000.246 000.108: require('cmp.utils.str')
-309.320 000.084 000.084: require('cmp.utils.pattern')
-309.610 000.079 000.079: require('cmp.utils.buffer')
-309.623 000.201 000.121: require('cmp.utils.keymap')
-309.635 000.307 000.107: require('cmp.utils.feedkeys')
-309.744 000.104 000.104: require('cmp.utils.async')
-309.917 000.078 000.078: require('cmp.utils.cache')
-309.929 000.177 000.100: require('cmp.context')
-310.244 000.102 000.102: require('cmp.config.mapping')
-310.511 000.110 000.110: require('cmp.config.compare')
-310.519 000.263 000.153: require('cmp.config.default')
-310.547 000.500 000.136: require('cmp.config')
-310.761 000.084 000.084: require('cmp.matcher')
-310.780 000.227 000.142: require('cmp.entry')
-310.799 000.864 000.138: require('cmp.source')
-310.988 000.084 000.084: require('cmp.utils.event')
-311.203 000.111 000.111: require('cmp.utils.window')
-311.211 000.215 000.103: require('cmp.view.docs_view')
-311.357 000.142 000.142: require('cmp.view.custom_entries_view')
-311.490 000.126 000.126: require('cmp.view.wildmenu_entries_view')
-311.604 000.107 000.107: require('cmp.view.native_entries_view')
-311.710 000.100 000.100: require('cmp.view.ghost_text_view')
-311.727 000.924 000.150: require('cmp.view')
-311.803 002.979 000.272: require('cmp.core')
-312.217 000.087 000.087: require('cmp.config.sources')
-312.306 000.080 000.080: require('cmp.config.window')
-312.410 003.722 000.577: require('cmp')
-312.773 000.080 000.080: require('cmp_buffer.timer')
-312.784 000.190 000.110: require('cmp_buffer.buffer')
-312.790 000.291 000.101: require('cmp_buffer.source')
-312.794 000.377 000.086: require('cmp_buffer')
-312.824 004.222 000.123: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-313.238 000.172 000.172: require('cmp_cmdline')
-313.309 000.311 000.139: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-313.744 000.113 000.113: require('cmp_nvim_lsp.source')
-313.752 000.215 000.102: require('cmp_nvim_lsp')
-313.803 000.339 000.125: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-314.151 000.135 000.135: require('cmp_path')
-314.182 000.229 000.095: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-314.508 000.108 000.108: require('cmp_luasnip')
-314.576 000.248 000.140: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-314.766 001.573: loading after plugins
-314.793 000.027: inits 3
-314.807 000.013: reading ShaDa
-315.224 000.089 000.089: require('luasnip.loaders._caches')
-315.359 000.126 000.126: require('luasnip.util.path')
-315.478 000.111 000.111: require('luasnip.loaders.util')
-315.758 000.127 000.127: require('luasnip.loaders')
-315.808 000.320 000.193: require('luasnip')
-315.817 000.790 000.144: require('luasnip.loaders.from_lua')
-316.103 000.118 000.118: require('luasnip.nodes.snippetProxy')
-316.113 000.248 000.130: require('luasnip.loaders.from_snipmate')
-316.273 000.116 000.116: require('luasnip.loaders.from_vscode')
-316.685 000.723: opening buffers
-316.958 000.273: BufEnter autocommands
-316.964 000.006: editing files in windows
-332.727 000.884 000.884: require('vim.diagnostic')
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.446 001.446: --- NVIM STARTING ---
-034.391 032.946: event init
-053.253 018.862: early init
-055.138 001.885: locale set
-061.173 006.035: init first window
-072.093 010.921: inits 1
-072.119 000.025: window checked
-072.127 000.008: parsing arguments
-084.299 000.253 000.253: require('vim.shared')
-084.825 000.245 000.245: require('vim._meta')
-084.838 000.515 000.270: require('vim._editor')
-084.846 000.907 000.138: require('vim._init_packages')
-084.854 011.820: init lua interpreter
-085.014 000.160: expanding arguments
-086.871 001.857: inits 2
-088.296 001.425: init highlight
-088.307 000.011: waiting for UI
-091.281 002.974: done waiting for UI
-091.320 000.039: init screen for UI
-091.587 000.268: init default mappings
-091.617 000.029: init default autocommands
-105.862 004.615 004.615: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/ftplugin.vim
-109.042 001.072 001.072: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/indent.vim
-109.527 000.058 000.058: sourcing /usr/share/nvim/archlinux.vim
-109.553 000.203 000.145: sourcing /etc/xdg/nvim/sysinit.vim
-124.517 008.169 008.169: require('keys')
-127.624 003.092 003.092: require('opts')
-131.344 000.876 000.876: require('packer.util')
-131.441 003.319 002.443: require('packer')
-134.792 001.317 001.317: require('packer.log')
-134.809 002.095 000.778: require('packer.async')
-135.940 000.481 000.481: require('packer.result')
-135.957 001.143 000.661: require('packer.jobs')
-135.990 004.473 001.236: require('packer.plugin_utils')
-137.171 001.140 001.140: require('packer.snapshot')
-138.112 010.477 001.545: require('pack')
-174.631 004.832 004.832: require('vim.treesitter.language')
-174.731 034.723 029.891: require('vim.treesitter.query')
-182.498 001.394 001.394: require('vim.treesitter.languagetree')
-182.620 003.179 001.784: require('vim.treesitter')
-182.807 005.430 002.251: require('nvim-treesitter.parsers')
-183.323 000.510 000.510: require('nvim-treesitter.utils')
-183.337 007.243 001.303: require('nvim-treesitter.ts_utils')
-183.347 008.606 001.362: require('nvim-treesitter.tsrange')
-183.675 000.325 000.325: require('nvim-treesitter.caching')
-183.693 044.437 000.783: require('nvim-treesitter.query')
-183.713 045.495 001.058: require('nvim-treesitter.configs')
-185.283 000.496 000.496: require('nvim-treesitter.info')
-185.901 000.611 000.611: require('nvim-treesitter.shell_command_selectors')
-185.950 002.216 001.109: require('nvim-treesitter.install')
-226.316 088.194 040.483: require('plugins.treesitter')
-228.281 000.510 000.510: require('telescope._extensions')
-228.291 001.388 000.878: require('telescope')
-233.980 000.661 000.661: require('plenary.bit')
-234.407 000.418 000.418: require('plenary.functional')
-234.465 000.034 000.034: require('ffi')
-234.502 002.597 001.485: require('plenary.path')
-234.518 003.286 000.689: require('plenary.strings')
-234.981 000.459 000.459: require('telescope.deprecated')
-237.389 000.899 000.899: require('plenary.log')
-237.465 001.393 000.494: require('telescope.log')
-239.791 000.910 000.910: require('plenary.job')
-240.261 000.462 000.462: require('telescope.state')
-240.275 002.804 001.432: require('telescope.utils')
-240.286 005.300 001.103: require('telescope.sorters')
-240.377 000.064 000.064: require('vim.inspect')
-240.801 000.009 000.009: require('vim.F')
-243.617 013.288 004.171: require('telescope.config')
-245.047 000.635 000.635: require('plenary.window.border')
-245.396 000.343 000.343: require('plenary.window')
-245.741 000.339 000.339: require('plenary.popup.utils')
-245.751 002.123 000.807: require('plenary.popup')
-246.288 000.534 000.534: require('telescope.pickers.scroller')
-246.712 000.418 000.418: require('telescope.actions.state')
-247.221 000.504 000.504: require('telescope.actions.utils')
-248.426 000.575 000.575: require('telescope.actions.mt')
-248.453 001.226 000.652: require('telescope.actions.set')
-249.553 000.570 000.570: require('telescope.config.resolve')
-249.638 001.181 000.611: require('telescope.pickers.entry_display')
-250.094 000.451 000.451: require('telescope.from_entry')
-250.351 022.055 002.330: require('telescope.actions')
-254.012 000.350 000.350: require('plenary.tbl')
-254.026 000.776 000.426: require('plenary.vararg.rotate')
-254.030 001.103 000.327: require('plenary.vararg')
-254.379 000.345 000.345: require('plenary.errors')
-254.392 001.900 000.451: require('plenary.async.async')
-254.792 000.396 000.396: require('plenary.async.structs')
-254.807 002.825 000.529: require('plenary.async.control')
-257.266 001.853 001.853: require('telescope.make_entry')
-258.923 000.455 000.455: require('plenary.async.util')
-258.934 000.802 000.347: require('plenary.async.tests')
-258.939 001.187 000.385: require('plenary.async')
-258.944 001.672 000.485: require('telescope.finders.async_static_finder')
-260.499 000.373 000.373: require('plenary.class')
-260.528 001.112 000.739: require('telescope._')
-260.533 001.586 000.474: require('telescope.finders.async_oneshot_finder')
-261.012 000.476 000.476: require('telescope.finders.async_job_finder')
-261.026 006.214 000.628: require('telescope.finders')
-263.707 000.618 000.618: require('telescope.debounce')
-264.575 000.861 000.861: require('telescope.mappings')
-265.147 000.563 000.563: require('telescope.pickers.highlights')
-265.602 000.448 000.448: require('telescope.pickers.window')
-266.839 000.597 000.597: require('telescope.algos.linked_list')
-266.852 001.244 000.647: require('telescope.entry_manager')
-267.303 000.447 000.447: require('telescope.pickers.multi')
-267.343 006.314 002.133: require('telescope.pickers')
-267.363 016.250 000.898: require('telescope.builtin.__lsp')
-267.438 017.081 000.831: require('telescope.builtin')
-268.963 000.874 000.874: require('fzf_lib')
-268.976 001.531 000.657: require('telescope._extensions.fzf')
-271.538 000.669 000.669: require('telescope._extensions.file_browser.utils')
-271.680 002.230 001.561: require('telescope._extensions.file_browser.actions')
-273.005 000.728 000.728: require('telescope._extensions.file_browser.make_entry')
-274.099 001.086 001.086: require('plenary.scandir')
-274.156 002.470 000.656: require('telescope._extensions.file_browser.finders')
-274.619 000.457 000.457: require('telescope._extensions.file_browser.picker')
-275.155 000.530 000.530: require('telescope._extensions.file_browser.config')
-275.162 006.170 000.482: require('telescope._extensions.file_browser')
-278.191 000.015 000.015: require('vim.keymap')
-278.481 052.148 003.907: require('plugins.telescope')
-285.455 000.308 000.308: require('notify.util.queue')
-285.467 000.754 000.445: require('notify.util')
-285.896 000.425 000.425: require('notify.config.highlights')
-285.906 001.633 000.454: require('notify.config')
-286.199 000.289 000.289: require('notify.stages')
-286.532 000.328 000.328: require('notify.service.notification')
-287.750 000.370 000.370: require('notify.animate.spring')
-287.757 000.655 000.286: require('notify.animate')
-287.764 001.227 000.571: require('notify.windows')
-289.020 000.462 000.462: require('notify.service.buffer.highlights')
-289.029 000.888 000.426: require('notify.service.buffer')
-289.034 001.267 000.380: require('notify.service')
-289.541 000.504 000.504: require('notify.stages.util')
-289.551 005.996 000.749: require('notify')
-289.891 000.337 000.337: require('nvim-tree.iterators.node-iterator')
-289.949 007.136 000.803: require('nvim-tree.utils')
-289.961 007.521 000.385: require('nvim-tree.events')
-291.151 000.375 000.375: require('nvim-tree.log')
-291.600 000.442 000.442: require('nvim-tree.git.utils')
-292.069 000.463 000.463: require('nvim-tree.git.runner')
-292.502 000.427 000.427: require('nvim-tree.watcher')
-292.512 002.201 000.494: require('nvim-tree.git')
-292.881 000.365 000.365: require('nvim-tree.explorer.watch')
-293.219 000.332 000.332: require('nvim-tree.explorer.common')
-293.979 000.387 000.387: require('nvim-tree.explorer.node-builders')
-294.448 000.427 000.427: require('nvim-tree.explorer.sorters')
-294.804 000.350 000.350: require('nvim-tree.explorer.filters')
-296.091 000.838 000.838: require('nvim-tree.view')
-296.102 001.293 000.455: require('nvim-tree.live-filter')
-296.108 002.883 000.427: require('nvim-tree.explorer.explore')
-296.528 000.417 000.417: require('nvim-tree.explorer.reload')
-296.536 006.571 000.373: require('nvim-tree.explorer')
-296.542 014.417 000.324: require('nvim-tree.core')
-297.024 000.478 000.478: require('nvim-tree.diagnostics')
-297.445 000.416 000.416: require('nvim-tree.renderer.components.padding')
-297.856 000.406 000.406: require('nvim-tree.renderer.components.icons')
-298.237 000.375 000.375: require('nvim-tree.renderer.components.full-name')
-298.610 000.367 000.367: require('nvim-tree.renderer.help')
-299.064 000.448 000.448: require('nvim-tree.renderer.components.git')
-299.738 000.670 000.670: require('nvim-tree.renderer.builder')
-300.117 000.372 000.372: require('nvim-tree.marks')
-300.132 018.530 000.582: require('nvim-tree.renderer')
-300.461 000.320 000.320: require('nvim-tree.actions.tree-modifiers.collapse-all')
-300.771 000.305 000.305: require('nvim-tree.actions.root.dir-up')
-301.187 000.412 000.412: require('nvim-tree.actions.root.change-dir')
-301.543 000.350 000.350: require('nvim-tree.actions.reloaders.reloaders')
-301.898 000.348 000.348: require('nvim-tree.actions.finders.find-file')
-301.903 020.827 000.561: require('nvim-tree.lib')
-302.310 000.402 000.402: require('nvim-tree.colors')
-302.938 000.622 000.622: require('nvim-tree.legacy')
-303.510 000.566 000.566: require('nvim-tree.actions.fs.copy-paste')
-304.307 000.377 000.377: require('nvim-tree.actions.tree-modifiers.expand-all')
-304.608 000.295 000.295: require('nvim-tree.actions.tree-modifiers.toggles')
-305.033 000.418 000.418: require('nvim-tree.actions.fs.create-file')
-305.373 000.335 000.335: require('nvim-tree.actions.fs.rename-file')
-305.812 000.433 000.433: require('nvim-tree.actions.fs.trash')
-306.212 000.394 000.394: require('nvim-tree.actions.fs.remove-file')
-306.534 000.316 000.316: require('nvim-tree.actions.moves.parent')
-306.873 000.333 000.333: require('nvim-tree.actions.moves.sibling')
-307.195 000.316 000.316: require('nvim-tree.actions.moves.item')
-307.593 000.389 000.389: require('nvim-tree.actions.finders.search-node')
-307.893 000.293 000.293: require('nvim-tree.actions.node.run-command')
-308.255 000.357 000.357: require('nvim-tree.actions.node.file-popup')
-308.639 000.379 000.379: require('nvim-tree.actions.node.system-open')
-308.972 000.327 000.327: require('nvim-tree.marks.bulk-move')
-308.979 005.461 000.499: require('nvim-tree.actions.dispatch')
-309.002 030.359 002.482: require('nvim-tree')
-309.279 000.272 000.272: require('nvim-tree.config')
-313.941 000.732 000.732: require('nvim-tree.actions')
-314.588 000.636 000.636: require('nvim-tree.actions.node.open-file')
-319.150 000.373 000.373: require('nvim-tree.marks.navigation')
-319.161 000.910 000.538: require('nvim-tree.api')
-319.173 001.467 000.556: require('nvim-tree.keymap')
-321.363 001.634 001.634: require('nvim-web-devicons')
-325.370 046.882 011.781: require('plugins.nvim-tree')
-326.951 000.407 000.407: require('lualine_require')
-327.467 001.916 001.508: require('lualine')
-327.617 000.143 000.143: require('plugins.linecolor')
-332.743 000.275 000.275: require('lualine.utils.mode')
-339.312 013.933 011.599: require('plugins.lualine')
-339.349 229.696 006.802: sourcing /home/sxrdusr/.config/nvim/init.lua
-339.368 012.165: sourcing vimrc file(s)
-339.660 000.053 000.053: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-348.941 007.971 007.971: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/filetype.lua
-350.389 001.116 001.116: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/filetype.vim
-352.816 000.289 000.289: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/syntax/synload.vim
-353.026 001.998 001.709: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/syntax/syntax.vim
-362.102 002.096 002.096: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/gzip.vim
-362.366 000.082 000.082: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/health.vim
-365.926 002.326 002.326: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-366.374 003.940 001.614: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/matchit.vim
-366.845 000.408 000.408: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/matchparen.vim
-366.988 000.075 000.075: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-367.396 000.024 000.024: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-367.417 000.366 000.342: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/rplugin.vim
-367.690 000.199 000.199: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/shada.vim
-367.917 000.107 000.107: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/spellfile.vim
-368.083 000.077 000.077: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/tarPlugin.vim
-368.210 000.061 000.061: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/tohtml.vim
-368.322 000.049 000.049: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/tutor.vim
-369.032 000.646 000.646: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/zipPlugin.vim
-369.289 000.036 000.036: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-376.726 005.767 005.767: require('lspsaga')
-378.402 000.532 000.532: require('lspsaga.window')
-378.422 001.147 000.615: require('lspsaga.libs')
-389.942 001.342 001.342: require('vim.lsp.log')
-392.272 002.318 002.318: require('vim.lsp.protocol')
-401.933 003.948 003.948: require('vim.lsp._snippet')
-403.138 001.193 001.193: require('vim.highlight')
-403.242 010.961 005.820: require('vim.lsp.util')
-403.387 018.830 004.210: require('vim.lsp.handlers')
-405.766 002.373 002.373: require('vim.lsp.rpc')
-407.189 001.413 001.413: require('vim.lsp.sync')
-409.652 002.454 002.454: require('vim.lsp.buf')
-410.617 000.956 000.956: require('vim.lsp.diagnostic')
-411.642 001.017 001.017: require('vim.lsp.codelens')
-411.828 032.776 005.732: require('vim.lsp')
-412.130 000.294 000.294: require('lspsaga.wrap')
-412.144 033.717 000.648: require('lspsaga.codeaction')
-412.193 035.457 000.593: require('lspsaga.lightbulb')
-412.561 000.325 000.325: require('lspsaga.lspkind')
-413.496 000.317 000.317: require('mason-core.path')
-413.516 000.581 000.264: require('mason.settings')
-414.437 000.214 000.214: require('mason-core.functional.data')
-414.448 000.531 000.317: require('mason-core.functional.function')
-414.490 000.970 000.440: require('mason-core.platform')
-414.496 001.923 000.371: require('mason')
-415.290 000.369 000.369: require('mason-core.functional')
-415.678 000.368 000.368: require('mason-core.functional.list')
-415.717 001.197 000.461: require('mason.api.command')
-416.606 000.463 000.463: require('mason-core.log')
-416.615 000.893 000.430: require('mason-lspconfig')
-416.821 000.202 000.202: require('mason-lspconfig.settings')
-417.142 000.303 000.303: require('mason-lspconfig.lspconfig_hook')
-418.153 001.006 001.006: require('lspconfig.util')
-418.901 000.238 000.238: require('mason-core.functional.table')
-419.004 000.655 000.418: require('mason-lspconfig.mappings.server')
-420.276 000.481 000.481: require('mason-core.async')
-420.497 000.214 000.214: require('mason-core.async.uv')
-420.511 001.074 000.379: require('mason-core.fs')
-420.786 000.271 000.271: require('mason-core.optional')
-421.104 000.313 000.313: require('mason-core.EventEmitter')
-421.522 000.412 000.412: require('mason-registry.index')
-421.542 002.532 000.462: require('mason-registry')
-421.738 000.191 000.191: require('mason-lspconfig.server_config_extensions')
-422.345 000.601 000.601: require('lspconfig.configs')
-422.688 000.337 000.337: require('lspconfig.server_configurations.omnisharp')
-422.997 000.230 000.230: require('mason-lspconfig.ensure_installed')
-424.154 000.316 000.316: require('mason-core.result')
-425.593 000.568 000.568: require('mason-core.process')
-425.846 000.244 000.244: require('mason-core.functional.relation')
-426.105 000.249 000.249: require('mason-core.functional.logic')
-426.120 001.428 000.367: require('mason-core.spawn')
-426.454 000.329 000.329: require('mason-core.receipt')
-426.731 000.262 000.262: require('mason-core.functional.string')
-426.762 002.602 000.582: require('mason-core.installer.context')
-427.049 000.282 000.282: require('mason-core.installer.linker')
-427.332 000.278 000.278: require('mason-core.async.control')
-427.342 003.909 000.431: require('mason-core.installer')
-427.790 000.445 000.445: require('mason-core.installer.handle')
-429.210 000.257 000.257: require('mason-core.managers.powershell')
-429.217 000.596 000.339: require('mason-core.fetch')
-429.221 000.800 000.204: require('mason-core.managers.cargo.client')
-429.295 001.234 000.434: require('mason-core.managers.cargo')
-429.685 000.384 000.384: require('mason-core.managers.composer')
-430.162 000.472 000.472: require('mason-core.managers.gem')
-430.485 000.316 000.316: require('mason-core.managers.git')
-431.314 000.415 000.415: require('mason-core.managers.std')
-431.638 000.318 000.318: require('mason-core.managers.github.client')
-431.650 001.160 000.427: require('mason-core.managers.github')
-432.174 000.520 000.520: require('mason-core.managers.go')
-432.583 000.402 000.402: require('mason-core.managers.luarocks')
-432.980 000.391 000.391: require('mason-core.managers.npm')
-433.412 000.426 000.426: require('mason-core.managers.pip3')
-433.421 005.623 000.317: require('mason-core.package.version-check')
-433.431 010.428 000.451: require('mason-core.package')
-433.830 000.366 000.366: require('mason-registry.lua-language-server')
-434.422 000.329 000.329: require('mason-registry.clangd')
-434.839 000.397 000.397: require('mason-registry.rust-analyzer')
-435.484 000.210 000.210: require('mason-core.notify')
-435.716 000.224 000.224: require('mason-core.functional.number')
-435.772 000.908 000.473: require('mason-lspconfig.api.command')
-435.779 066.357 002.308: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-439.475 002.338 002.338: sourcing /tmp/.mount_nvimiDDPJE/usr/share/nvim/runtime/plugin/man.lua
-439.843 012.502: loading rtp plugins
-442.029 000.114 000.114: require('Comment.config')
-442.422 000.385 000.385: require('Comment.utils')
-442.685 000.256 000.256: require('Comment.opfunc')
-442.851 000.160 000.160: require('Comment.extra')
-442.866 001.436 000.520: require('Comment.api')
-443.317 001.976 000.541: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-444.238 000.106 000.106: require('luasnip.util.types')
-444.437 000.191 000.191: require('luasnip.util.ext_opts')
-444.592 000.150 000.150: require('luasnip.extras.filetype_functions')
-444.701 000.103 000.103: require('luasnip.session')
-445.990 000.652 000.652: require('luasnip.util.util')
-446.208 000.211 000.211: require('luasnip.nodes.util')
-446.297 000.083 000.083: require('luasnip.util.events')
-446.313 001.341 000.396: require('luasnip.nodes.node')
-446.475 000.118 000.118: require('luasnip.util.extend_decorator')
-446.488 001.780 000.321: require('luasnip.nodes.insertNode')
-447.282 000.230 000.230: require('luasnip.util.mark')
-448.571 000.146 000.146: require('luasnip.nodes.textNode')
-449.775 000.953 000.953: require('luasnip.util._builtin_vars')
-450.037 001.457 000.505: require('luasnip.util.environ')
-450.246 000.202 000.202: require('luasnip.util.pattern_tokenizer')
-450.380 000.128 000.128: require('luasnip.util.dict')
-450.730 000.343 000.343: require('luasnip.session.snippet_collection')
-450.829 003.540 001.263: require('luasnip.nodes.snippet')
-450.849 004.357 000.587: require('luasnip.nodes.choiceNode')
-451.126 000.254 000.254: require('luasnip.nodes.functionNode')
-451.619 000.452 000.452: require('luasnip.nodes.dynamicNode')
-451.977 000.351 000.351: require('luasnip.nodes.restoreNode')
-452.271 000.288 000.288: require('luasnip.extras')
-452.718 000.171 000.171: require('luasnip.util.str')
-452.728 000.449 000.278: require('luasnip.extras.fmt')
-452.808 000.077 000.077: require('luasnip.extras.expand_conditions')
-453.711 000.215 000.215: require('luasnip.util.parser.neovim_ast')
-458.522 000.207 000.207: require('luasnip.util.directed_graph')
-458.539 005.513 005.091: require('luasnip.util.parser.ast_utils')
-459.047 000.120 000.120: require('luasnip.util.functions')
-459.063 000.520 000.400: require('luasnip.util.parser.ast_parser')
-459.638 000.572 000.572: require('luasnip.util.parser.neovim_parser')
-459.651 006.836 000.232: require('luasnip.util.parser')
-459.756 000.101 000.101: require('luasnip.nodes.absolute_indexer')
-460.442 016.621 001.125: require('luasnip.config')
-460.594 017.096 000.475: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-461.486 000.050 000.050: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-463.733 000.544 000.544: require('indent_blankline/utils')
-463.745 001.635 001.091: require('indent_blankline')
-464.372 000.237 000.237: require('indent_blankline.commands')
-464.543 002.607 000.734: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/plugin/indent_blankline.vim
-465.254 000.402 000.402: require('lsp-colors')
-465.702 000.898 000.496: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-466.844 000.759 000.759: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-467.709 000.416 000.416: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-468.674 000.425 000.425: require('cmp.utils.api')
-469.191 000.266 000.266: require('cmp.types.cmp')
-470.001 000.463 000.463: require('cmp.utils.misc')
-470.060 000.862 000.399: require('cmp.types.lsp')
-470.289 000.224 000.224: require('cmp.types.vim')
-470.295 001.614 000.262: require('cmp.types')
-470.561 000.263 000.263: require('cmp.utils.highlight')
-471.101 000.238 000.238: require('cmp.utils.debug')
-471.116 000.550 000.312: require('cmp.utils.autocmd')
-471.737 003.659 000.807: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-472.001 000.083 000.083: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-472.457 000.142 000.142: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-473.092 000.330 000.330: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-474.378 000.356 000.356: require('nvim-treesitter.statusline')
-474.870 000.486 000.486: require('nvim-treesitter.query_predicates')
-474.878 001.286 000.445: require('nvim-treesitter')
-479.565 003.214 003.214: require('vim.treesitter.highlighter')
-479.952 004.226 001.012: require('nvim-treesitter.highlight')
-480.541 007.035 001.523: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-482.236 001.440 001.440: require('treesitter-context')
-482.247 001.482 000.042: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-483.082 000.547 000.547: require('nvim-treesitter-refactor')
-483.498 000.991 000.444: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-483.892 000.124 000.124: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-484.296 000.085 000.085: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-484.629 000.094 000.094: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-485.454 000.430 000.430: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-485.825 000.061 000.061: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-486.950 000.637 000.637: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-487.796 000.557 000.557: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-488.430 000.375 000.375: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-489.286 000.600 000.600: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-489.580 000.030 000.030: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-489.862 000.046 000.046: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-491.430 011.024: loading packages
-493.086 000.470 000.470: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-497.379 005.411 004.941: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-500.257 000.501 000.501: require('cmp.utils.char')
-500.273 000.919 000.418: require('cmp.utils.str')
-500.546 000.269 000.269: require('cmp.utils.pattern')
-501.678 000.247 000.247: require('cmp.utils.buffer')
-501.690 000.802 000.554: require('cmp.utils.keymap')
-501.702 001.149 000.348: require('cmp.utils.feedkeys')
-502.073 000.368 000.368: require('cmp.utils.async')
-502.672 000.260 000.260: require('cmp.utils.cache')
-502.681 000.601 000.341: require('cmp.context')
-504.215 000.421 000.421: require('cmp.config.mapping')
-505.148 000.576 000.576: require('cmp.config.compare')
-505.155 000.931 000.355: require('cmp.config.default')
-505.188 001.869 000.517: require('cmp.config')
-506.646 000.505 000.505: require('cmp.matcher')
-506.659 001.467 000.962: require('cmp.entry')
-506.671 003.987 000.652: require('cmp.source')
-507.468 000.270 000.270: require('cmp.utils.event')
-508.541 000.609 000.609: require('cmp.utils.window')
-508.550 001.039 000.430: require('cmp.view.docs_view')
-509.426 000.873 000.873: require('cmp.view.custom_entries_view')
-510.050 000.618 000.618: require('cmp.view.wildmenu_entries_view')
-510.582 000.526 000.526: require('cmp.view.native_entries_view')
-510.984 000.394 000.394: require('cmp.view.ghost_text_view')
-511.006 004.332 000.612: require('cmp.view')
-511.082 012.635 001.010: require('cmp.core')
-511.722 000.253 000.253: require('cmp.config.sources')
-511.975 000.245 000.245: require('cmp.config.window')
-512.091 014.421 001.288: require('cmp')
-513.095 000.131 000.131: require('cmp_buffer.timer')
-513.109 000.631 000.500: require('cmp_buffer.buffer')
-513.124 000.906 000.274: require('cmp_buffer.source')
-513.128 001.032 000.126: require('cmp_buffer')
-513.165 015.538 000.086: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-513.841 000.456 000.456: require('cmp_cmdline')
-513.874 000.532 000.076: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-514.568 000.254 000.254: require('cmp_nvim_lsp.source')
-514.576 000.508 000.254: require('cmp_nvim_lsp')
-514.632 000.604 000.096: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-515.335 000.509 000.509: require('cmp_path')
-515.377 000.588 000.079: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-515.975 000.377 000.377: require('cmp_luasnip')
-516.048 000.514 000.137: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-516.202 001.586: loading after plugins
-516.230 000.028: inits 3
-516.270 000.040: reading ShaDa
-516.927 000.117 000.117: require('luasnip.loaders._caches')
-517.217 000.282 000.282: require('luasnip.util.path')
-517.595 000.372 000.372: require('luasnip.loaders.util')
-518.720 000.249 000.249: require('luasnip.loaders')
-518.763 001.161 000.912: require('luasnip')
-518.773 002.250 000.318: require('luasnip.loaders.from_lua')
-519.505 000.161 000.161: require('luasnip.nodes.snippetProxy')
-519.520 000.565 000.403: require('luasnip.loaders.from_snipmate')
-519.981 000.416 000.416: require('luasnip.loaders.from_vscode')
-521.013 001.514: opening buffers
-521.250 000.236: BufEnter autocommands
-521.256 000.007: editing files in windows
-541.936 005.547 005.547: require('vim.diagnostic')
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.130 001.130: --- NVIM STARTING ---
-028.662 027.532: event init
-045.564 016.901: early init
-047.354 001.791: locale set
-053.076 005.722: init first window
-063.419 010.343: inits 1
-063.444 000.025: window checked
-063.452 000.008: parsing arguments
-075.453 000.269 000.269: require('vim.shared')
-075.970 000.243 000.243: require('vim._meta')
-075.984 000.508 000.265: require('vim._editor')
-075.992 000.906 000.129: require('vim._init_packages')
-075.999 011.641: init lua interpreter
-076.163 000.165: expanding arguments
-078.127 001.963: inits 2
-079.512 001.385: init highlight
-079.523 000.011: waiting for UI
-082.429 002.906: done waiting for UI
-082.481 000.051: init screen for UI
-082.734 000.253: init default mappings
-082.761 000.027: init default autocommands
-096.037 004.070 004.070: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/ftplugin.vim
-098.005 000.870 000.870: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/indent.vim
-098.228 000.026 000.026: sourcing /usr/share/nvim/archlinux.vim
-098.239 000.082 000.056: sourcing /etc/xdg/nvim/sysinit.vim
-106.098 004.759 004.759: require('keys')
-108.429 002.320 002.320: require('opts')
-110.994 000.525 000.525: require('packer.util')
-111.051 002.259 001.734: require('packer')
-113.022 000.703 000.703: require('packer.log')
-113.033 001.190 000.487: require('packer.async')
-114.010 000.399 000.399: require('packer.result')
-114.019 000.983 000.584: require('packer.jobs')
-114.037 002.940 000.767: require('packer.plugin_utils')
-114.709 000.650 000.650: require('packer.snapshot')
-115.767 007.330 001.481: require('pack')
-122.285 001.983 001.983: require('vim.treesitter.language')
-122.321 004.812 002.828: require('vim.treesitter.query')
-127.167 001.367 001.367: require('vim.treesitter.languagetree')
-127.282 002.610 001.243: require('vim.treesitter')
-127.465 003.928 001.318: require('nvim-treesitter.parsers')
-127.973 000.502 000.502: require('nvim-treesitter.utils')
-127.986 005.169 000.738: require('nvim-treesitter.ts_utils')
-127.995 005.670 000.501: require('nvim-treesitter.tsrange')
-128.361 000.362 000.362: require('nvim-treesitter.caching')
-128.381 011.616 000.772: require('nvim-treesitter.query')
-128.399 012.541 000.926: require('nvim-treesitter.configs')
-129.960 000.492 000.492: require('nvim-treesitter.info')
-130.546 000.578 000.578: require('nvim-treesitter.shell_command_selectors')
-130.590 002.170 001.100: require('nvim-treesitter.install')
-169.623 053.848 039.137: require('plugins.treesitter')
-170.997 000.453 000.453: require('telescope._extensions')
-171.008 000.966 000.513: require('telescope')
-176.579 000.682 000.682: require('plenary.bit')
-177.000 000.412 000.412: require('plenary.functional')
-177.065 000.045 000.045: require('ffi')
-177.103 002.623 001.485: require('plenary.path')
-177.117 003.190 000.567: require('plenary.strings')
-177.539 000.418 000.418: require('telescope.deprecated')
-179.950 000.907 000.907: require('plenary.log')
-180.034 001.388 000.481: require('telescope.log')
-182.278 000.962 000.962: require('plenary.job')
-182.711 000.423 000.423: require('telescope.state')
-182.730 002.690 001.304: require('telescope.utils')
-182.741 005.196 001.118: require('telescope.sorters')
-182.830 000.070 000.070: require('vim.inspect')
-183.420 000.009 000.009: require('vim.F')
-186.156 013.120 004.238: require('telescope.config')
-187.621 000.692 000.692: require('plenary.window.border')
-187.974 000.344 000.344: require('plenary.window')
-188.373 000.393 000.393: require('plenary.popup.utils')
-188.389 002.223 000.794: require('plenary.popup')
-188.911 000.516 000.516: require('telescope.pickers.scroller')
-189.373 000.455 000.455: require('telescope.actions.state')
-189.899 000.520 000.520: require('telescope.actions.utils')
-191.115 000.591 000.591: require('telescope.actions.mt')
-191.142 001.237 000.646: require('telescope.actions.set')
-192.310 000.591 000.591: require('telescope.config.resolve')
-192.455 001.309 000.718: require('telescope.pickers.entry_display')
-192.880 000.420 000.420: require('telescope.from_entry')
-193.232 022.221 002.421: require('telescope.actions')
-196.969 000.355 000.355: require('plenary.tbl')
-196.980 000.779 000.424: require('plenary.vararg.rotate')
-196.983 001.106 000.327: require('plenary.vararg')
-197.327 000.340 000.340: require('plenary.errors')
-197.336 001.903 000.457: require('plenary.async.async')
-197.766 000.426 000.426: require('plenary.async.structs')
-197.780 002.921 000.592: require('plenary.async.control')
-200.322 001.961 001.961: require('telescope.make_entry')
-202.215 000.477 000.477: require('plenary.async.util')
-202.224 000.921 000.444: require('plenary.async.tests')
-202.229 001.339 000.419: require('plenary.async')
-202.234 001.903 000.563: require('telescope.finders.async_static_finder')
-204.011 000.466 000.466: require('plenary.class')
-204.053 001.282 000.816: require('telescope._')
-204.059 001.822 000.540: require('telescope.finders.async_oneshot_finder')
-204.571 000.509 000.509: require('telescope.finders.async_job_finder')
-204.589 006.805 000.611: require('telescope.finders')
-207.500 000.676 000.676: require('telescope.debounce')
-208.415 000.901 000.901: require('telescope.mappings')
-209.040 000.615 000.615: require('telescope.pickers.highlights')
-209.508 000.460 000.460: require('telescope.pickers.window')
-210.723 000.587 000.587: require('telescope.algos.linked_list')
-210.737 001.223 000.636: require('telescope.entry_manager')
-211.200 000.458 000.458: require('telescope.pickers.multi')
-211.247 006.653 002.320: require('telescope.pickers')
-211.270 017.287 000.908: require('telescope.builtin.__lsp')
-211.337 018.097 000.809: require('telescope.builtin')
-212.713 000.700 000.700: require('fzf_lib')
-212.727 001.383 000.682: require('telescope._extensions.fzf')
-215.338 000.735 000.735: require('telescope._extensions.file_browser.utils')
-215.473 002.261 001.526: require('telescope._extensions.file_browser.actions')
-216.814 000.755 000.755: require('telescope._extensions.file_browser.make_entry')
-217.929 001.107 001.107: require('plenary.scandir')
-217.978 002.498 000.636: require('telescope._extensions.file_browser.finders')
-218.472 000.489 000.489: require('telescope._extensions.file_browser.picker')
-219.064 000.585 000.585: require('telescope._extensions.file_browser.config')
-219.072 006.331 000.498: require('telescope._extensions.file_browser')
-222.320 000.022 000.022: require('vim.keymap')
-222.663 053.030 004.011: require('plugins.telescope')
-229.348 000.311 000.311: require('notify.util.queue')
-229.360 000.746 000.436: require('notify.util')
-229.801 000.437 000.437: require('notify.config.highlights')
-229.811 001.652 000.469: require('notify.config')
-230.096 000.281 000.281: require('notify.stages')
-230.429 000.328 000.328: require('notify.service.notification')
-231.660 000.387 000.387: require('notify.animate.spring')
-231.668 000.673 000.287: require('notify.animate')
-231.676 001.241 000.568: require('notify.windows')
-232.939 000.468 000.468: require('notify.service.buffer.highlights')
-232.950 000.892 000.424: require('notify.service.buffer')
-232.955 001.276 000.383: require('notify.service')
-233.458 000.500 000.500: require('notify.stages.util')
-233.469 005.847 000.570: require('notify')
-233.816 000.343 000.343: require('nvim-tree.iterators.node-iterator')
-233.876 007.006 000.816: require('nvim-tree.utils')
-233.888 007.404 000.398: require('nvim-tree.events')
-235.090 000.396 000.396: require('nvim-tree.log')
-235.550 000.452 000.452: require('nvim-tree.git.utils')
-236.022 000.467 000.467: require('nvim-tree.git.runner')
-236.460 000.431 000.431: require('nvim-tree.watcher')
-236.471 002.238 000.492: require('nvim-tree.git')
-236.846 000.372 000.372: require('nvim-tree.explorer.watch')
-237.192 000.340 000.340: require('nvim-tree.explorer.common')
-237.942 000.374 000.374: require('nvim-tree.explorer.node-builders')
-238.415 000.428 000.428: require('nvim-tree.explorer.sorters')
-238.782 000.360 000.360: require('nvim-tree.explorer.filters')
-240.087 000.849 000.849: require('nvim-tree.view')
-240.099 001.311 000.462: require('nvim-tree.live-filter')
-240.104 002.906 000.433: require('nvim-tree.explorer.explore')
-240.531 000.423 000.423: require('nvim-tree.explorer.reload')
-240.540 006.649 000.370: require('nvim-tree.explorer')
-240.546 014.389 000.336: require('nvim-tree.core')
-241.036 000.486 000.486: require('nvim-tree.diagnostics')
-241.460 000.417 000.417: require('nvim-tree.renderer.components.padding')
-241.895 000.429 000.429: require('nvim-tree.renderer.components.icons')
-242.283 000.380 000.380: require('nvim-tree.renderer.components.full-name')
-242.655 000.366 000.366: require('nvim-tree.renderer.help')
-243.131 000.470 000.470: require('nvim-tree.renderer.components.git')
-243.809 000.672 000.672: require('nvim-tree.renderer.builder')
-244.178 000.362 000.362: require('nvim-tree.marks')
-244.193 018.557 000.586: require('nvim-tree.renderer')
-244.526 000.323 000.323: require('nvim-tree.actions.tree-modifiers.collapse-all')
-244.826 000.294 000.294: require('nvim-tree.actions.root.dir-up')
-245.239 000.407 000.407: require('nvim-tree.actions.root.change-dir')
-245.597 000.351 000.351: require('nvim-tree.actions.reloaders.reloaders')
-245.955 000.351 000.351: require('nvim-tree.actions.finders.find-file')
-245.962 020.902 000.617: require('nvim-tree.lib')
-246.374 000.408 000.408: require('nvim-tree.colors')
-247.007 000.626 000.626: require('nvim-tree.legacy')
-247.592 000.578 000.578: require('nvim-tree.actions.fs.copy-paste')
-248.402 000.383 000.383: require('nvim-tree.actions.tree-modifiers.expand-all')
-248.711 000.302 000.302: require('nvim-tree.actions.tree-modifiers.toggles')
-249.141 000.423 000.423: require('nvim-tree.actions.fs.create-file')
-249.494 000.346 000.346: require('nvim-tree.actions.fs.rename-file')
-249.956 000.455 000.455: require('nvim-tree.actions.fs.trash')
-250.366 000.404 000.404: require('nvim-tree.actions.fs.remove-file')
-250.696 000.323 000.323: require('nvim-tree.actions.moves.parent')
-251.027 000.325 000.325: require('nvim-tree.actions.moves.sibling')
-251.358 000.324 000.324: require('nvim-tree.actions.moves.item')
-251.755 000.387 000.387: require('nvim-tree.actions.finders.search-node')
-252.054 000.293 000.293: require('nvim-tree.actions.node.run-command')
-252.422 000.363 000.363: require('nvim-tree.actions.node.file-popup')
-252.815 000.387 000.387: require('nvim-tree.actions.node.system-open')
-253.155 000.334 000.334: require('nvim-tree.marks.bulk-move')
-253.163 005.563 000.514: require('nvim-tree.actions.dispatch')
-253.187 030.363 002.286: require('nvim-tree')
-253.472 000.281 000.281: require('nvim-tree.config')
-258.166 000.718 000.718: require('nvim-tree.actions')
-258.838 000.660 000.660: require('nvim-tree.actions.node.open-file')
-262.869 000.364 000.364: require('nvim-tree.marks.navigation')
-262.880 000.869 000.505: require('nvim-tree.api')
-262.891 001.433 000.564: require('nvim-tree.keymap')
-264.972 001.417 001.417: require('nvim-web-devicons')
-268.994 046.324 011.453: require('plugins.nvim-tree')
-270.370 000.316 000.316: require('lualine_require')
-270.882 001.704 001.388: require('lualine')
-271.018 000.129 000.129: require('plugins.linecolor')
-275.708 000.256 000.256: require('lualine.utils.mode')
-282.774 013.771 011.683: require('plugins.lualine')
-282.808 184.508 003.124: sourcing /home/sxrdusr/.config/nvim/init.lua
-282.826 010.535: sourcing vimrc file(s)
-283.117 000.051 000.051: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-285.405 000.888 000.888: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/filetype.lua
-288.117 002.272 002.272: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/filetype.vim
-292.092 000.281 000.281: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/syntax/synload.vim
-292.295 003.051 002.770: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/syntax/syntax.vim
-300.224 002.091 002.091: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/gzip.vim
-300.446 000.070 000.070: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/health.vim
-303.966 002.282 002.282: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-304.438 003.923 001.640: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/matchit.vim
-304.891 000.386 000.386: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/matchparen.vim
-305.113 000.103 000.103: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-305.539 000.024 000.024: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-305.560 000.386 000.362: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/rplugin.vim
-305.852 000.210 000.210: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/shada.vim
-305.972 000.053 000.053: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/spellfile.vim
-306.099 000.062 000.062: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/tarPlugin.vim
-306.224 000.061 000.061: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/tohtml.vim
-306.332 000.045 000.045: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/tutor.vim
-307.601 001.207 001.207: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/zipPlugin.vim
-307.896 000.038 000.038: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-315.401 005.658 005.658: require('lspsaga')
-317.073 000.553 000.553: require('lspsaga.window')
-317.093 001.174 000.621: require('lspsaga.libs')
-327.566 001.347 001.347: require('vim.lsp.log')
-329.533 001.954 001.954: require('vim.lsp.protocol')
-335.456 002.092 002.092: require('vim.lsp._snippet')
-336.370 000.904 000.904: require('vim.highlight')
-336.415 006.873 003.878: require('vim.lsp.util')
-336.447 013.200 003.026: require('vim.lsp.handlers')
-338.763 002.311 002.311: require('vim.lsp.rpc')
-340.121 001.348 001.348: require('vim.lsp.sync')
-342.921 002.791 002.791: require('vim.lsp.buf')
-344.093 001.161 001.161: require('vim.lsp.diagnostic')
-345.202 001.102 001.102: require('vim.lsp.codelens')
-345.388 027.654 005.740: require('vim.lsp')
-345.692 000.295 000.295: require('lspsaga.wrap')
-345.705 028.607 000.659: require('lspsaga.codeaction')
-345.751 030.339 000.558: require('lspsaga.lightbulb')
-346.108 000.317 000.317: require('lspsaga.lspkind')
-346.885 000.249 000.249: require('mason-core.path')
-346.905 000.522 000.274: require('mason.settings')
-347.804 000.214 000.214: require('mason-core.functional.data')
-347.824 000.525 000.310: require('mason-core.functional.function')
-347.863 000.954 000.429: require('mason-core.platform')
-347.868 001.714 000.238: require('mason')
-348.650 000.336 000.336: require('mason-core.functional')
-349.056 000.385 000.385: require('mason-core.functional.list')
-349.098 001.207 000.486: require('mason.api.command')
-349.944 000.489 000.489: require('mason-core.log')
-349.953 000.851 000.363: require('mason-lspconfig')
-350.166 000.209 000.209: require('mason-lspconfig.settings')
-350.488 000.303 000.303: require('mason-lspconfig.lspconfig_hook')
-351.357 000.863 000.863: require('lspconfig.util')
-352.102 000.240 000.240: require('mason-core.functional.table')
-352.205 000.679 000.439: require('mason-lspconfig.mappings.server')
-353.344 000.475 000.475: require('mason-core.async')
-353.567 000.215 000.215: require('mason-core.async.uv')
-353.581 001.068 000.378: require('mason-core.fs')
-353.858 000.274 000.274: require('mason-core.optional')
-354.125 000.261 000.261: require('mason-core.EventEmitter')
-354.540 000.408 000.408: require('mason-registry.index')
-354.560 002.349 000.337: require('mason-registry')
-354.774 000.194 000.194: require('mason-lspconfig.server_config_extensions')
-355.406 000.626 000.626: require('lspconfig.configs')
-355.759 000.346 000.346: require('lspconfig.server_configurations.omnisharp')
-356.173 000.238 000.238: require('mason-lspconfig.ensure_installed')
-357.319 000.316 000.316: require('mason-core.result')
-358.773 000.589 000.589: require('mason-core.process')
-359.014 000.232 000.232: require('mason-core.functional.relation')
-359.271 000.248 000.248: require('mason-core.functional.logic')
-359.286 001.434 000.366: require('mason-core.spawn')
-359.639 000.348 000.348: require('mason-core.receipt')
-359.919 000.265 000.265: require('mason-core.functional.string')
-359.992 002.667 000.620: require('mason-core.installer.context')
-360.293 000.295 000.295: require('mason-core.installer.linker')
-360.573 000.274 000.274: require('mason-core.async.control')
-360.584 003.980 000.428: require('mason-core.installer')
-361.020 000.432 000.432: require('mason-core.installer.handle')
-362.441 000.255 000.255: require('mason-core.managers.powershell')
-362.449 000.590 000.334: require('mason-core.fetch')
-362.453 000.800 000.210: require('mason-core.managers.cargo.client')
-362.485 001.188 000.388: require('mason-core.managers.cargo')
-362.937 000.447 000.447: require('mason-core.managers.composer')
-363.425 000.481 000.481: require('mason-core.managers.gem')
-363.736 000.304 000.304: require('mason-core.managers.git')
-364.544 000.414 000.414: require('mason-core.managers.std')
-364.866 000.316 000.316: require('mason-core.managers.github.client')
-364.879 001.136 000.407: require('mason-core.managers.github')
-365.439 000.556 000.556: require('mason-core.managers.go')
-365.845 000.399 000.399: require('mason-core.managers.luarocks')
-366.240 000.389 000.389: require('mason-core.managers.npm')
-366.667 000.421 000.421: require('mason-core.managers.pip3')
-366.677 005.650 000.327: require('mason-core.package.version-check')
-366.688 010.508 000.446: require('mason-core.package')
-367.072 000.351 000.351: require('mason-registry.lua-language-server')
-367.593 000.337 000.337: require('mason-registry.clangd')
-368.004 000.391 000.391: require('mason-registry.rust-analyzer')
-368.654 000.215 000.215: require('mason-core.notify')
-368.894 000.232 000.232: require('mason-core.functional.number')
-368.937 000.921 000.475: require('mason-lspconfig.api.command')
-368.943 060.914 002.513: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-372.883 002.516 002.516: sourcing /tmp/.mount_nvimrmYXl7/usr/share/nvim/runtime/plugin/man.lua
-373.092 011.939: loading rtp plugins
-375.285 000.120 000.120: require('Comment.config')
-375.689 000.396 000.396: require('Comment.utils')
-375.957 000.261 000.261: require('Comment.opfunc')
-376.127 000.163 000.163: require('Comment.extra')
-376.142 001.495 000.555: require('Comment.api')
-376.586 002.031 000.535: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-377.477 000.089 000.089: require('luasnip.util.types')
-377.675 000.191 000.191: require('luasnip.util.ext_opts')
-377.832 000.150 000.150: require('luasnip.extras.filetype_functions')
-377.934 000.097 000.097: require('luasnip.session')
-379.260 000.652 000.652: require('luasnip.util.util')
-379.484 000.217 000.217: require('luasnip.nodes.util')
-379.576 000.085 000.085: require('luasnip.util.events')
-379.592 001.391 000.437: require('luasnip.nodes.node')
-379.758 000.120 000.120: require('luasnip.util.extend_decorator')
-379.772 001.831 000.320: require('luasnip.nodes.insertNode')
-380.477 000.226 000.226: require('luasnip.util.mark')
-381.700 000.190 000.190: require('luasnip.nodes.textNode')
-382.881 000.927 000.927: require('luasnip.util._builtin_vars')
-383.108 001.398 000.472: require('luasnip.util.environ')
-383.314 000.199 000.199: require('luasnip.util.pattern_tokenizer')
-383.448 000.127 000.127: require('luasnip.util.dict')
-383.802 000.347 000.347: require('luasnip.session.snippet_collection')
-383.864 003.380 001.118: require('luasnip.nodes.snippet')
-383.885 004.109 000.503: require('luasnip.nodes.choiceNode')
-384.209 000.306 000.306: require('luasnip.nodes.functionNode')
-384.709 000.453 000.453: require('luasnip.nodes.dynamicNode')
-385.091 000.376 000.376: require('luasnip.nodes.restoreNode')
-385.380 000.281 000.281: require('luasnip.extras')
-385.829 000.173 000.173: require('luasnip.util.str')
-385.843 000.455 000.282: require('luasnip.extras.fmt')
-385.921 000.074 000.074: require('luasnip.extras.expand_conditions')
-386.811 000.218 000.218: require('luasnip.util.parser.neovim_ast')
-394.178 000.216 000.216: require('luasnip.util.directed_graph')
-394.197 008.074 007.640: require('luasnip.util.parser.ast_utils')
-394.712 000.119 000.119: require('luasnip.util.functions')
-394.724 000.523 000.404: require('luasnip.util.parser.ast_parser')
-395.338 000.610 000.610: require('luasnip.util.parser.neovim_parser')
-395.354 009.426 000.219: require('luasnip.util.parser')
-395.462 000.103 000.103: require('luasnip.nodes.absolute_indexer')
-395.919 018.839 000.897: require('luasnip.config')
-396.076 019.310 000.471: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-396.949 000.050 000.050: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-399.137 000.540 000.540: require('indent_blankline/utils')
-399.147 001.578 001.038: require('indent_blankline')
-399.631 000.228 000.228: require('indent_blankline.commands')
-399.796 002.397 000.592: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/plugin/indent_blankline.vim
-400.425 000.323 000.323: require('lsp-colors')
-401.069 001.016 000.693: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-402.327 000.871 000.871: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-403.161 000.384 000.384: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-404.040 000.344 000.344: require('cmp.utils.api')
-404.538 000.261 000.261: require('cmp.types.cmp')
-405.386 000.498 000.498: require('cmp.utils.misc')
-405.496 000.948 000.450: require('cmp.types.lsp')
-405.726 000.223 000.223: require('cmp.types.vim')
-405.732 001.684 000.251: require('cmp.types')
-406.002 000.267 000.267: require('cmp.utils.highlight')
-406.540 000.242 000.242: require('cmp.utils.debug')
-406.556 000.548 000.306: require('cmp.utils.autocmd')
-407.084 003.553 000.711: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-407.344 000.081 000.081: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-407.801 000.144 000.144: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-408.480 000.388 000.388: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-409.656 000.348 000.348: require('nvim-treesitter.statusline')
-410.199 000.536 000.536: require('nvim-treesitter.query_predicates')
-410.209 001.231 000.346: require('nvim-treesitter')
-415.282 003.359 003.359: require('vim.treesitter.highlighter')
-415.649 004.397 001.038: require('nvim-treesitter.highlight')
-416.245 007.349 001.721: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-417.669 001.190 001.190: require('treesitter-context')
-417.680 001.230 000.040: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-418.365 000.398 000.398: require('nvim-treesitter-refactor')
-418.550 000.610 000.212: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-418.917 000.110 000.110: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-419.292 000.081 000.081: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-419.612 000.090 000.090: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-420.406 000.409 000.409: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-420.761 000.057 000.057: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-421.920 000.679 000.679: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-422.693 000.489 000.489: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-423.304 000.356 000.356: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-424.131 000.577 000.577: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-424.430 000.029 000.029: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-424.709 000.043 000.043: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-426.618 011.192: loading packages
-428.473 000.582 000.582: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-435.277 008.051 007.469: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-439.647 000.636 000.636: require('cmp.utils.char')
-439.672 001.332 000.696: require('cmp.utils.str')
-440.141 000.462 000.462: require('cmp.utils.pattern')
-441.991 000.487 000.487: require('cmp.utils.buffer')
-442.020 001.349 000.862: require('cmp.utils.keymap')
-442.036 001.884 000.535: require('cmp.utils.feedkeys')
-442.696 000.654 000.654: require('cmp.utils.async')
-443.685 000.436 000.436: require('cmp.utils.cache')
-443.699 000.993 000.557: require('cmp.context')
-446.228 000.680 000.680: require('cmp.config.mapping')
-447.627 000.842 000.842: require('cmp.config.compare')
-447.639 001.397 000.555: require('cmp.config.default')
-447.677 002.938 000.861: require('cmp.config')
-449.991 000.843 000.843: require('cmp.matcher')
-450.012 002.328 001.484: require('cmp.entry')
-450.031 006.326 001.060: require('cmp.source')
-451.346 000.454 000.454: require('cmp.utils.event')
-453.138 001.051 001.051: require('cmp.utils.window')
-453.154 001.797 000.747: require('cmp.view.docs_view')
-454.619 001.457 001.457: require('cmp.view.custom_entries_view')
-455.631 001.002 001.002: require('cmp.view.wildmenu_entries_view')
-456.455 000.814 000.814: require('cmp.view.native_entries_view')
-457.096 000.631 000.631: require('cmp.view.ghost_text_view')
-457.135 007.098 000.943: require('cmp.view')
-457.324 020.479 001.729: require('cmp.core')
-458.114 000.426 000.426: require('cmp.config.sources')
-458.585 000.459 000.459: require('cmp.config.window')
-458.791 023.106 001.741: require('cmp')
-460.357 000.200 000.200: require('cmp_buffer.timer')
-460.383 001.018 000.819: require('cmp_buffer.buffer')
-460.396 001.462 000.444: require('cmp_buffer.source')
-460.403 001.600 000.138: require('cmp_buffer')
-460.617 025.003 000.297: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-461.566 000.629 000.629: require('cmp_cmdline')
-461.645 000.769 000.141: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-462.627 000.390 000.390: require('cmp_nvim_lsp.source')
-462.640 000.711 000.321: require('cmp_nvim_lsp')
-462.717 000.840 000.129: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-463.711 000.710 000.710: require('cmp_path')
-463.773 000.827 000.117: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-464.614 000.517 000.517: require('cmp_luasnip')
-464.722 000.716 000.199: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-464.985 002.160: loading after plugins
-465.026 000.041: inits 3
-465.094 000.068: reading ShaDa
-465.979 000.175 000.175: require('luasnip.loaders._caches')
-466.558 000.569 000.569: require('luasnip.util.path')
-467.066 000.497 000.497: require('luasnip.loaders.util')
-468.731 000.293 000.293: require('luasnip.loaders')
-468.782 001.705 001.413: require('luasnip')
-468.795 003.396 000.449: require('luasnip.loaders.from_lua')
-469.563 000.191 000.191: require('luasnip.nodes.snippetProxy')
-469.575 000.593 000.402: require('luasnip.loaders.from_snipmate')
-470.027 000.403 000.403: require('luasnip.loaders.from_vscode')
-471.125 001.641: opening buffers
-471.367 000.241: BufEnter autocommands
-471.374 000.007: editing files in windows
-492.712 005.083 005.083: require('vim.diagnostic')
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.282 001.282: --- NVIM STARTING ---
-029.206 027.924: event init
-046.400 017.195: early init
-048.223 001.823: locale set
-053.937 005.714: init first window
-064.347 010.410: inits 1
-064.372 000.025: window checked
-064.380 000.008: parsing arguments
-076.420 000.295 000.295: require('vim.shared')
-076.917 000.241 000.241: require('vim._meta')
-076.931 000.488 000.247: require('vim._editor')
-076.938 000.901 000.118: require('vim._init_packages')
-076.946 011.665: init lua interpreter
-077.114 000.168: expanding arguments
-079.080 001.966: inits 2
-080.421 001.341: init highlight
-080.430 000.009: waiting for UI
-083.335 002.905: done waiting for UI
-083.386 000.051: init screen for UI
-084.183 000.797: init default mappings
-084.250 000.068: init default autocommands
-095.904 004.673 004.673: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/ftplugin.vim
-098.355 001.073 001.073: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/indent.vim
-098.631 000.029 000.029: sourcing /usr/share/nvim/archlinux.vim
-098.642 000.086 000.057: sourcing /etc/xdg/nvim/sysinit.vim
-109.895 006.296 006.296: require('keys')
-112.293 002.386 002.386: require('opts')
-114.877 000.524 000.524: require('packer.util')
-114.935 002.267 001.743: require('packer')
-116.828 000.639 000.639: require('packer.log')
-116.838 001.118 000.479: require('packer.async')
-117.810 000.400 000.400: require('packer.result')
-117.819 000.976 000.577: require('packer.jobs')
-117.836 002.853 000.759: require('packer.plugin_utils')
-118.494 000.636 000.636: require('packer.snapshot')
-119.546 007.244 001.489: require('pack')
-130.393 010.839 010.839: require('impatient')
-131.485 000.276 000.276: require('vim.treesitter.language')
-131.511 000.729 000.454: require('vim.treesitter.query')
-132.514 000.241 000.241: require('vim.treesitter.languagetree')
-132.575 000.456 000.215: require('vim.treesitter')
-132.857 001.011 000.556: require('nvim-treesitter.parsers')
-132.981 000.118 000.118: require('nvim-treesitter.utils')
-132.995 001.348 000.218: require('nvim-treesitter.ts_utils')
-133.005 001.489 000.141: require('nvim-treesitter.tsrange')
-133.084 000.076 000.076: require('nvim-treesitter.caching')
-133.105 002.472 000.178: require('nvim-treesitter.query')
-133.133 002.641 000.168: require('nvim-treesitter.configs')
-133.974 000.524 000.524: require('nvim-treesitter.info')
-134.163 000.182 000.182: require('nvim-treesitter.shell_command_selectors')
-134.209 000.904 000.198: require('nvim-treesitter.install')
-172.984 042.575 039.031: require('plugins.treesitter')
-173.299 000.131 000.131: require('telescope._extensions')
-173.308 000.211 000.080: require('telescope')
-174.714 000.323 000.323: require('plenary.bit')
-175.035 000.315 000.315: require('plenary.functional')
-175.105 000.031 000.031: require('ffi')
-175.128 001.120 000.451: require('plenary.path')
-175.141 001.487 000.367: require('plenary.strings')
-175.261 000.116 000.116: require('telescope.deprecated')
-175.722 000.276 000.276: require('plenary.log')
-175.802 000.416 000.140: require('telescope.log')
-176.040 000.117 000.117: require('plenary.job')
-176.114 000.069 000.069: require('telescope.state')
-176.129 000.321 000.136: require('telescope.utils')
-176.149 000.882 000.145: require('telescope.sorters')
-176.244 000.075 000.075: require('vim.inspect')
-176.749 000.013 000.013: require('vim.F')
-179.793 006.266 003.693: require('telescope.config')
-180.432 000.092 000.092: require('plenary.window.border')
-180.569 000.130 000.130: require('plenary.window')
-180.636 000.061 000.061: require('plenary.popup.utils')
-180.647 000.846 000.563: require('plenary.popup')
-180.720 000.069 000.069: require('telescope.pickers.scroller')
-180.793 000.068 000.068: require('telescope.actions.state')
-180.866 000.068 000.068: require('telescope.actions.utils')
-181.014 000.068 000.068: require('telescope.actions.mt')
-181.045 000.175 000.107: require('telescope.actions.set')
-181.358 000.152 000.152: require('telescope.config.resolve')
-181.365 000.267 000.115: require('telescope.pickers.entry_display')
-181.470 000.101 000.101: require('telescope.from_entry')
-181.848 008.537 000.678: require('telescope.actions')
-182.823 000.058 000.058: require('plenary.tbl')
-182.833 000.129 000.071: require('plenary.vararg.rotate')
-182.837 000.192 000.063: require('plenary.vararg')
-182.898 000.058 000.058: require('plenary.errors')
-182.906 000.330 000.081: require('plenary.async.async')
-183.025 000.115 000.115: require('plenary.async.structs')
-183.038 000.834 000.388: require('plenary.async.control')
-183.329 000.214 000.214: require('telescope.make_entry')
-183.599 000.074 000.074: require('plenary.async.util')
-183.605 000.138 000.064: require('plenary.async.tests')
-183.610 000.207 000.069: require('plenary.async')
-183.614 000.279 000.072: require('telescope.finders.async_static_finder')
-183.821 000.058 000.058: require('plenary.class')
-183.846 000.163 000.105: require('telescope._')
-183.851 000.234 000.071: require('telescope.finders.async_oneshot_finder')
-183.919 000.066 000.066: require('telescope.finders.async_job_finder')
-183.931 000.890 000.097: require('telescope.finders')
-184.185 000.079 000.079: require('telescope.debounce')
-184.335 000.144 000.144: require('telescope.mappings')
-184.428 000.088 000.088: require('telescope.pickers.highlights')
-184.499 000.066 000.066: require('telescope.pickers.window')
-184.648 000.072 000.072: require('telescope.algos.linked_list')
-184.656 000.152 000.080: require('telescope.entry_manager')
-184.783 000.124 000.124: require('telescope.pickers.multi')
-184.814 000.879 000.226: require('telescope.pickers')
-184.829 002.770 000.167: require('telescope.builtin.__lsp')
-184.852 002.997 000.227: require('telescope.builtin')
-185.164 000.225 000.225: require('fzf_lib')
-185.175 000.317 000.093: require('telescope._extensions.fzf')
-185.568 000.096 000.096: require('telescope._extensions.file_browser.utils')
-185.662 000.348 000.252: require('telescope._extensions.file_browser.actions')
-185.891 000.137 000.137: require('telescope._extensions.file_browser.make_entry')
-186.045 000.148 000.148: require('plenary.scandir')
-186.092 000.425 000.140: require('telescope._extensions.file_browser.finders')
-186.173 000.077 000.077: require('telescope._extensions.file_browser.picker')
-186.271 000.093 000.093: require('telescope._extensions.file_browser.config')
-186.277 001.039 000.097: require('telescope._extensions.file_browser')
-189.722 000.012 000.012: require('vim.keymap')
-189.980 016.986 003.873: require('plugins.telescope')
-191.812 000.068 000.068: require('notify.util.queue')
-191.822 000.421 000.352: require('notify.util')
-192.063 000.237 000.237: require('notify.config.highlights')
-192.078 001.067 000.409: require('notify.config')
-192.463 000.380 000.380: require('notify.stages')
-192.560 000.091 000.091: require('notify.service.notification')
-192.902 000.085 000.085: require('notify.animate.spring')
-192.908 000.166 000.081: require('notify.animate')
-192.920 000.354 000.188: require('notify.windows')
-193.224 000.108 000.108: require('notify.service.buffer.highlights')
-193.235 000.219 000.112: require('notify.service.buffer')
-193.243 000.320 000.101: require('notify.service')
-193.375 000.129 000.129: require('notify.stages.util')
-193.389 002.748 000.406: require('notify')
-193.485 000.091 000.091: require('nvim-tree.iterators.node-iterator')
-193.580 003.039 000.200: require('nvim-tree.utils')
-193.599 003.130 000.091: require('nvim-tree.events')
-193.918 000.090 000.090: require('nvim-tree.log')
-194.118 000.194 000.194: require('nvim-tree.git.utils')
-194.227 000.102 000.102: require('nvim-tree.git.runner')
-194.333 000.101 000.101: require('nvim-tree.watcher')
-194.345 000.616 000.129: require('nvim-tree.git')
-194.437 000.089 000.089: require('nvim-tree.explorer.watch')
-194.521 000.079 000.079: require('nvim-tree.explorer.common')
-194.761 000.104 000.104: require('nvim-tree.explorer.node-builders')
-194.865 000.098 000.098: require('nvim-tree.explorer.sorters')
-194.953 000.083 000.083: require('nvim-tree.explorer.filters')
-195.346 000.289 000.289: require('nvim-tree.view')
-195.370 000.412 000.123: require('nvim-tree.live-filter')
-195.381 000.815 000.117: require('nvim-tree.explorer.explore')
-195.522 000.136 000.136: require('nvim-tree.explorer.reload')
-195.542 001.939 000.204: require('nvim-tree.explorer')
-195.554 005.142 000.073: require('nvim-tree.core')
-195.717 000.158 000.158: require('nvim-tree.diagnostics')
-195.848 000.124 000.124: require('nvim-tree.renderer.components.padding')
-195.995 000.140 000.140: require('nvim-tree.renderer.components.icons')
-196.151 000.149 000.149: require('nvim-tree.renderer.components.full-name')
-196.312 000.153 000.153: require('nvim-tree.renderer.help')
-196.492 000.171 000.171: require('nvim-tree.renderer.components.git')
-196.678 000.179 000.179: require('nvim-tree.renderer.builder')
-196.813 000.127 000.127: require('nvim-tree.marks')
-196.834 006.502 000.159: require('nvim-tree.renderer')
-197.065 000.215 000.215: require('nvim-tree.actions.tree-modifiers.collapse-all')
-197.186 000.112 000.112: require('nvim-tree.actions.root.dir-up')
-197.335 000.142 000.142: require('nvim-tree.actions.root.change-dir')
-197.451 000.108 000.108: require('nvim-tree.actions.reloaders.reloaders')
-197.551 000.092 000.092: require('nvim-tree.actions.finders.find-file')
-197.557 007.300 000.128: require('nvim-tree.lib')
-197.687 000.127 000.127: require('nvim-tree.colors')
-197.844 000.150 000.150: require('nvim-tree.legacy')
-197.974 000.125 000.125: require('nvim-tree.actions.fs.copy-paste')
-198.172 000.086 000.086: require('nvim-tree.actions.tree-modifiers.expand-all')
-198.258 000.080 000.080: require('nvim-tree.actions.tree-modifiers.toggles')
-198.368 000.102 000.102: require('nvim-tree.actions.fs.create-file')
-198.462 000.090 000.090: require('nvim-tree.actions.fs.rename-file')
-198.587 000.119 000.119: require('nvim-tree.actions.fs.trash')
-198.728 000.135 000.135: require('nvim-tree.actions.fs.remove-file')
-198.838 000.098 000.098: require('nvim-tree.actions.moves.parent')
-198.925 000.080 000.080: require('nvim-tree.actions.moves.sibling')
-199.012 000.081 000.081: require('nvim-tree.actions.moves.item')
-199.114 000.087 000.087: require('nvim-tree.actions.finders.search-node')
-199.278 000.160 000.160: require('nvim-tree.actions.node.run-command')
-199.385 000.101 000.101: require('nvim-tree.actions.node.file-popup')
-199.549 000.159 000.159: require('nvim-tree.actions.node.system-open')
-199.652 000.095 000.095: require('nvim-tree.marks.bulk-move')
-199.667 001.685 000.210: require('nvim-tree.actions.dispatch')
-199.728 009.650 000.262: require('nvim-tree')
-199.813 000.080 000.080: require('nvim-tree.config')
-203.971 000.220 000.220: require('nvim-tree.actions')
-204.111 000.129 000.129: require('nvim-tree.actions.node.open-file')
-209.463 000.522 000.522: require('nvim-tree.marks.navigation')
-209.477 001.387 000.866: require('nvim-tree.api')
-209.608 002.226 000.838: require('nvim-tree.keymap')
-212.901 002.345 002.345: require('nvim-web-devicons')
-217.310 027.323 012.673: require('plugins.nvim-tree')
-217.684 000.085 000.085: require('lualine_require')
-218.261 000.793 000.708: require('lualine')
-218.340 000.072 000.072: require('plugins.linecolor')
-222.766 000.090 000.090: require('lualine.utils.mode')
-229.111 011.786 010.831: require('plugins.lualine')
-229.143 130.389 004.953: sourcing /home/sxrdusr/.config/nvim/init.lua
-229.161 008.689: sourcing vimrc file(s)
-229.452 000.053 000.053: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-230.601 000.057 000.057: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/filetype.lua
-232.794 002.048 002.048: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/filetype.vim
-236.078 000.256 000.256: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/syntax/synload.vim
-236.340 002.832 002.576: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/syntax/syntax.vim
-242.671 001.056 001.056: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/gzip.vim
-242.829 000.065 000.065: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/health.vim
-245.729 001.412 001.412: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-246.361 003.446 002.034: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/matchit.vim
-246.870 000.420 000.420: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/matchparen.vim
-247.052 000.090 000.090: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-247.500 000.025 000.025: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-247.522 000.383 000.358: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/rplugin.vim
-247.811 000.203 000.203: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/shada.vim
-247.967 000.065 000.065: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/spellfile.vim
-248.132 000.075 000.075: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/tarPlugin.vim
-248.296 000.078 000.078: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/tohtml.vim
-248.442 000.059 000.059: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/tutor.vim
-249.216 000.687 000.687: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/zipPlugin.vim
-249.516 000.038 000.038: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-250.932 000.127 000.127: require('lspsaga')
-251.194 000.086 000.086: require('lspsaga.window')
-251.213 000.185 000.099: require('lspsaga.libs')
-252.990 000.425 000.425: require('vim.lsp.log')
-253.817 000.818 000.818: require('vim.lsp.protocol')
-254.531 000.456 000.456: require('vim.lsp._snippet')
-254.675 000.136 000.136: require('vim.highlight')
-254.704 000.879 000.287: require('vim.lsp.util')
-254.723 002.459 000.337: require('vim.lsp.handlers')
-254.916 000.189 000.189: require('vim.lsp.rpc')
-255.049 000.125 000.125: require('vim.lsp.sync')
-255.512 000.456 000.456: require('vim.lsp.buf')
-255.898 000.378 000.378: require('vim.lsp.diagnostic')
-256.286 000.381 000.381: require('vim.lsp.codelens')
-256.435 005.130 001.140: require('vim.lsp')
-256.519 000.076 000.076: require('lspsaga.wrap')
-256.530 005.313 000.107: require('lspsaga.codeaction')
-256.569 005.629 000.131: require('lspsaga.lightbulb')
-256.699 000.095 000.095: require('lspsaga.lspkind')
-256.886 000.058 000.058: require('mason-core.path')
-256.903 000.134 000.076: require('mason.settings')
-257.101 000.054 000.054: require('mason-core.functional.data')
-257.109 000.123 000.069: require('mason-core.functional.function')
-257.145 000.238 000.115: require('mason-core.platform')
-257.150 000.437 000.066: require('mason')
-257.357 000.105 000.105: require('mason-core.functional')
-257.475 000.101 000.101: require('mason-core.functional.list')
-257.521 000.349 000.143: require('mason.api.command')
-257.719 000.110 000.110: require('mason-core.log')
-257.726 000.201 000.091: require('mason-lspconfig')
-257.798 000.068 000.068: require('mason-lspconfig.settings')
-257.891 000.077 000.077: require('mason-lspconfig.lspconfig_hook')
-258.211 000.315 000.315: require('lspconfig.util')
-258.438 000.079 000.079: require('mason-core.functional.table')
-258.544 000.310 000.231: require('mason-lspconfig.mappings.server')
-258.849 000.091 000.091: require('mason-core.async')
-258.922 000.065 000.065: require('mason-core.async.uv')
-258.933 000.303 000.147: require('mason-core.fs')
-259.009 000.073 000.073: require('mason-core.optional')
-259.080 000.067 000.067: require('mason-core.EventEmitter')
-259.241 000.156 000.156: require('mason-registry.index')
-259.260 000.710 000.112: require('mason-registry')
-259.341 000.076 000.076: require('mason-lspconfig.server_config_extensions')
-259.439 000.093 000.093: require('lspconfig.configs')
-259.568 000.085 000.085: require('lspconfig.server_configurations.omnisharp')
-259.680 000.072 000.072: require('mason-lspconfig.ensure_installed')
-259.937 000.075 000.075: require('mason-core.result')
-260.355 000.248 000.248: require('mason-core.process')
-260.434 000.070 000.070: require('mason-core.functional.relation')
-260.509 000.067 000.067: require('mason-core.functional.logic')
-260.524 000.485 000.101: require('mason-core.spawn')
-260.611 000.082 000.082: require('mason-core.receipt')
-260.695 000.069 000.069: require('mason-core.functional.string')
-260.727 000.784 000.147: require('mason-core.installer.context')
-260.802 000.071 000.071: require('mason-core.installer.linker')
-260.878 000.071 000.071: require('mason-core.async.control')
-260.886 001.109 000.108: require('mason-core.installer')
-260.986 000.097 000.097: require('mason-core.installer.handle')
-261.352 000.075 000.075: require('mason-core.managers.powershell')
-261.358 000.152 000.077: require('mason-core.fetch')
-261.362 000.213 000.061: require('mason-core.managers.cargo.client')
-261.471 000.410 000.197: require('mason-core.managers.cargo')
-261.626 000.150 000.150: require('mason-core.managers.composer')
-261.751 000.118 000.118: require('mason-core.managers.gem')
-261.836 000.080 000.080: require('mason-core.managers.git')
-262.055 000.129 000.129: require('mason-core.managers.std')
-262.144 000.084 000.084: require('mason-core.managers.github.client')
-262.158 000.317 000.104: require('mason-core.managers.github')
-262.335 000.174 000.174: require('mason-core.managers.go')
-262.467 000.127 000.127: require('mason-core.managers.luarocks')
-262.578 000.106 000.106: require('mason-core.managers.npm')
-262.694 000.111 000.111: require('mason-core.managers.pip3')
-262.705 001.714 000.122: require('mason-core.package.version-check')
-262.717 003.032 000.112: require('mason-core.package')
-262.825 000.089 000.089: require('mason-registry.lua-language-server')
-263.139 000.116 000.116: require('mason-registry.clangd')
-263.374 000.126 000.126: require('mason-registry.rust-analyzer')
-263.531 000.060 000.060: require('mason-core.notify')
-263.611 000.074 000.074: require('mason-core.functional.number')
-263.665 000.282 000.149: require('mason-lspconfig.api.command')
-263.672 014.021 001.730: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-264.646 000.093 000.093: sourcing /tmp/.mount_nvimSUUymO/usr/share/nvim/runtime/plugin/man.lua
-264.859 009.930: loading rtp plugins
-266.616 000.071 000.071: require('Comment.config')
-266.723 000.099 000.099: require('Comment.utils')
-266.800 000.072 000.072: require('Comment.opfunc')
-266.873 000.068 000.068: require('Comment.extra')
-266.888 000.475 000.165: require('Comment.api')
-267.312 000.956 000.481: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-267.990 000.074 000.074: require('luasnip.util.types')
-268.278 000.281 000.281: require('luasnip.util.ext_opts')
-268.369 000.085 000.085: require('luasnip.extras.filetype_functions')
-268.451 000.077 000.077: require('luasnip.session')
-268.969 000.166 000.166: require('luasnip.util.util')
-269.057 000.081 000.081: require('luasnip.nodes.util')
-269.128 000.066 000.066: require('luasnip.util.events')
-269.145 000.440 000.128: require('luasnip.nodes.node')
-269.338 000.080 000.080: require('luasnip.util.extend_decorator')
-269.350 000.893 000.373: require('luasnip.nodes.insertNode')
-269.673 000.091 000.091: require('luasnip.util.mark')
-270.003 000.192 000.192: require('luasnip.nodes.textNode')
-271.216 001.044 001.044: require('luasnip.util._builtin_vars')
-271.484 001.472 000.428: require('luasnip.util.environ')
-271.584 000.093 000.093: require('luasnip.util.pattern_tokenizer')
-271.677 000.087 000.087: require('luasnip.util.dict')
-271.776 000.093 000.093: require('luasnip.session.snippet_collection')
-271.836 002.157 000.219: require('luasnip.nodes.snippet')
-271.857 002.504 000.256: require('luasnip.nodes.choiceNode')
-272.071 000.154 000.154: require('luasnip.nodes.functionNode')
-272.213 000.134 000.134: require('luasnip.nodes.dynamicNode')
-272.335 000.116 000.116: require('luasnip.nodes.restoreNode')
-272.429 000.089 000.089: require('luasnip.extras')
-272.581 000.069 000.069: require('luasnip.util.str')
-272.593 000.156 000.088: require('luasnip.extras.fmt')
-272.659 000.062 000.062: require('luasnip.extras.expand_conditions')
-274.837 000.115 000.115: require('luasnip.util.parser.neovim_ast')
-285.484 000.102 000.102: require('luasnip.util.directed_graph')
-285.508 012.765 012.548: require('luasnip.util.parser.ast_utils')
-285.683 000.077 000.077: require('luasnip.util.functions')
-285.694 000.181 000.104: require('luasnip.util.parser.ast_parser')
-285.864 000.166 000.166: require('luasnip.util.parser.neovim_parser')
-285.880 013.211 000.100: require('luasnip.util.parser')
-285.961 000.076 000.076: require('luasnip.nodes.absolute_indexer')
-286.571 018.788 000.878: require('luasnip.config')
-286.736 019.252 000.463: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-287.625 000.052 000.052: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-288.516 000.096 000.096: require('indent_blankline/utils')
-288.525 000.261 000.164: require('indent_blankline')
-289.078 000.085 000.085: require('indent_blankline.commands')
-289.243 001.156 000.810: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/plugin/indent_blankline.vim
-289.661 000.100 000.100: require('lsp-colors')
-290.066 000.560 000.459: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-291.337 000.883 000.883: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-292.198 000.399 000.399: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-292.735 000.093 000.093: require('cmp.utils.api')
-292.879 000.068 000.068: require('cmp.types.cmp')
-293.040 000.078 000.078: require('cmp.utils.misc')
-293.161 000.276 000.197: require('cmp.types.lsp')
-293.233 000.066 000.066: require('cmp.types.vim')
-293.239 000.498 000.088: require('cmp.types')
-293.311 000.069 000.069: require('cmp.utils.highlight')
-293.438 000.060 000.060: require('cmp.utils.debug')
-293.453 000.137 000.077: require('cmp.utils.autocmd')
-294.094 001.520 000.724: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-294.361 000.084 000.084: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-294.791 000.107 000.107: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-295.290 000.200 000.200: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-295.922 000.069 000.069: require('nvim-treesitter.statusline')
-296.008 000.079 000.079: require('nvim-treesitter.query_predicates')
-296.014 000.235 000.087: require('nvim-treesitter')
-297.249 000.211 000.211: require('vim.treesitter.highlighter')
-297.604 000.717 000.506: require('nvim-treesitter.highlight')
-298.233 002.511 001.559: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-298.701 000.250 000.250: require('treesitter-context')
-298.712 000.288 000.038: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-299.085 000.089 000.089: require('nvim-treesitter-refactor')
-299.521 000.552 000.463: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-299.907 000.123 000.123: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-300.288 000.079 000.079: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-300.657 000.094 000.094: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-301.449 000.439 000.439: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-301.814 000.060 000.060: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-302.983 000.662 000.662: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-303.777 000.499 000.499: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-304.414 000.381 000.381: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-305.285 000.605 000.605: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-305.595 000.030 000.030: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-305.881 000.045 000.045: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-306.951 010.557: loading packages
-308.634 000.475 000.475: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-313.061 005.554 005.079: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-313.787 000.116 000.116: require('cmp.utils.char')
-313.803 000.204 000.088: require('cmp.utils.str')
-313.877 000.070 000.070: require('cmp.utils.pattern')
-314.102 000.060 000.060: require('cmp.utils.buffer')
-314.113 000.161 000.101: require('cmp.utils.keymap')
-314.124 000.242 000.080: require('cmp.utils.feedkeys')
-314.212 000.084 000.084: require('cmp.utils.async')
-314.351 000.064 000.064: require('cmp.utils.cache')
-314.358 000.141 000.077: require('cmp.context')
-314.613 000.081 000.081: require('cmp.config.mapping')
-314.787 000.091 000.091: require('cmp.config.compare')
-314.796 000.176 000.085: require('cmp.config.default')
-314.822 000.365 000.108: require('cmp.config')
-314.996 000.067 000.067: require('cmp.matcher')
-315.009 000.183 000.116: require('cmp.entry')
-315.023 000.661 000.114: require('cmp.source')
-315.170 000.064 000.064: require('cmp.utils.event')
-315.349 000.099 000.099: require('cmp.utils.window')
-315.357 000.181 000.082: require('cmp.view.docs_view')
-315.477 000.117 000.117: require('cmp.view.custom_entries_view')
-315.589 000.107 000.107: require('cmp.view.wildmenu_entries_view')
-315.680 000.086 000.086: require('cmp.view.native_entries_view')
-315.757 000.073 000.073: require('cmp.view.ghost_text_view')
-315.774 000.748 000.120: require('cmp.view')
-315.888 002.417 000.267: require('cmp.core')
-316.199 000.074 000.074: require('cmp.config.sources')
-316.266 000.059 000.059: require('cmp.config.window')
-316.365 003.024 000.473: require('cmp')
-316.650 000.063 000.063: require('cmp_buffer.timer')
-316.662 000.153 000.090: require('cmp_buffer.buffer')
-316.667 000.232 000.079: require('cmp_buffer.source')
-316.671 000.301 000.069: require('cmp_buffer')
-316.767 003.486 000.161: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-317.148 000.154 000.154: require('cmp_cmdline')
-317.183 000.237 000.084: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-317.538 000.084 000.084: require('cmp_nvim_lsp.source')
-317.546 000.168 000.084: require('cmp_nvim_lsp')
-317.596 000.258 000.089: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-318.051 000.260 000.260: require('cmp_path')
-318.087 000.339 000.079: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-318.379 000.087 000.087: require('cmp_luasnip')
-318.445 000.203 000.116: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-318.598 001.570: loading after plugins
-318.676 000.078: inits 3
-318.691 000.015: reading ShaDa
-319.079 000.072 000.072: require('luasnip.loaders._caches')
-319.267 000.181 000.181: require('luasnip.util.path')
-319.366 000.092 000.092: require('luasnip.loaders.util')
-319.603 000.104 000.104: require('luasnip.loaders')
-319.642 000.271 000.167: require('luasnip')
-319.649 000.734 000.119: require('luasnip.loaders.from_lua')
-319.877 000.075 000.075: require('luasnip.nodes.snippetProxy')
-319.886 000.177 000.102: require('luasnip.loaders.from_snipmate')
-320.022 000.091 000.091: require('luasnip.loaders.from_vscode')
-320.658 000.965: opening buffers
-320.916 000.258: BufEnter autocommands
-320.923 000.007: editing files in windows
-335.685 000.594 000.594: require('vim.diagnostic')
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.315 001.315: --- NVIM STARTING ---
-029.519 028.204: event init
-045.885 016.366: early init
-047.405 001.520: locale set
-052.798 005.393: init first window
-063.084 010.286: inits 1
-063.111 000.026: window checked
-063.119 000.008: parsing arguments
-075.078 000.268 000.268: require('vim.shared')
-075.596 000.245 000.245: require('vim._meta')
-075.609 000.509 000.263: require('vim._editor')
-075.617 000.903 000.126: require('vim._init_packages')
-075.624 011.602: init lua interpreter
-075.789 000.165: expanding arguments
-077.774 001.985: inits 2
-079.125 001.351: init highlight
-079.134 000.009: waiting for UI
-082.047 002.914: done waiting for UI
-082.119 000.071: init screen for UI
-082.613 000.495: init default mappings
-082.660 000.047: init default autocommands
-093.091 004.347 004.347: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/ftplugin.vim
-095.882 001.064 001.064: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/indent.vim
-096.229 000.037 000.037: sourcing /usr/share/nvim/archlinux.vim
-096.246 000.117 000.080: sourcing /etc/xdg/nvim/sysinit.vim
-106.342 005.865 005.865: require('keys')
-108.711 002.358 002.358: require('opts')
-112.148 001.046 001.046: require('packer.util')
-112.298 003.211 002.165: require('packer')
-116.366 001.643 001.643: require('packer.log')
-116.396 002.522 000.879: require('packer.async')
-118.234 000.752 000.752: require('packer.result')
-118.250 001.845 001.093: require('packer.jobs')
-118.281 005.884 001.517: require('packer.plugin_utils')
-119.461 001.139 001.139: require('packer.snapshot')
-120.985 012.265 002.031: require('pack')
-137.495 016.498 016.498: require('impatient')
-138.790 000.212 000.212: require('vim.treesitter.language')
-138.824 000.831 000.619: require('vim.treesitter.query')
-140.076 000.251 000.251: require('vim.treesitter.languagetree')
-140.174 000.578 000.326: require('vim.treesitter')
-140.627 001.447 000.869: require('nvim-treesitter.parsers')
-140.797 000.161 000.161: require('nvim-treesitter.utils')
-140.818 001.862 000.253: require('nvim-treesitter.ts_utils')
-140.835 002.005 000.143: require('nvim-treesitter.tsrange')
-141.528 000.687 000.687: require('nvim-treesitter.caching')
-141.559 003.700 000.177: require('nvim-treesitter.query')
-141.598 003.967 000.267: require('nvim-treesitter.configs')
-142.951 000.527 000.527: require('nvim-treesitter.info')
-143.550 000.590 000.590: require('nvim-treesitter.shell_command_selectors')
-143.619 001.783 000.666: require('nvim-treesitter.install')
-192.821 055.307 049.557: require('plugins.treesitter')
-193.168 000.081 000.081: require('telescope._extensions')
-193.177 000.173 000.092: require('telescope')
-193.960 000.087 000.087: require('plenary.bit')
-194.045 000.078 000.078: require('plenary.functional')
-194.102 000.040 000.040: require('ffi')
-194.152 000.438 000.234: require('plenary.path')
-194.171 000.539 000.101: require('plenary.strings')
-194.537 000.363 000.363: require('telescope.deprecated')
-195.061 000.255 000.255: require('plenary.log')
-195.141 000.488 000.233: require('telescope.log')
-195.420 000.156 000.156: require('plenary.job')
-195.511 000.085 000.085: require('telescope.state')
-195.526 000.380 000.139: require('telescope.utils')
-195.538 000.993 000.126: require('telescope.sorters')
-195.706 000.144 000.144: require('vim.inspect')
-196.270 000.015 000.015: require('vim.F')
-200.294 006.805 004.751: require('telescope.config')
-201.142 000.155 000.155: require('plenary.window.border')
-201.222 000.074 000.074: require('plenary.window')
-201.445 000.214 000.214: require('plenary.popup.utils')
-201.461 001.156 000.713: require('plenary.popup')
-201.595 000.128 000.128: require('telescope.pickers.scroller')
-201.749 000.148 000.148: require('telescope.actions.state')
-201.827 000.072 000.072: require('telescope.actions.utils')
-201.984 000.071 000.071: require('telescope.actions.mt')
-202.017 000.184 000.113: require('telescope.actions.set')
-202.212 000.078 000.078: require('telescope.config.resolve')
-202.218 000.157 000.079: require('telescope.pickers.entry_display')
-202.292 000.070 000.070: require('telescope.from_entry')
-202.894 009.714 000.995: require('telescope.actions')
-203.744 000.059 000.059: require('plenary.tbl')
-203.753 000.131 000.073: require('plenary.vararg.rotate')
-203.756 000.192 000.061: require('plenary.vararg')
-203.872 000.113 000.113: require('plenary.errors')
-203.892 000.393 000.087: require('plenary.async.async')
-203.963 000.068 000.068: require('plenary.async.structs')
-203.978 000.558 000.097: require('plenary.async.control')
-204.289 000.233 000.233: require('telescope.make_entry')
-204.577 000.085 000.085: require('plenary.async.util')
-204.584 000.151 000.066: require('plenary.async.tests')
-204.589 000.225 000.074: require('plenary.async')
-204.594 000.299 000.074: require('telescope.finders.async_static_finder')
-204.816 000.062 000.062: require('plenary.class')
-204.845 000.177 000.116: require('telescope._')
-204.850 000.253 000.076: require('telescope.finders.async_oneshot_finder')
-204.930 000.076 000.076: require('telescope.finders.async_job_finder')
-204.942 000.959 000.098: require('telescope.finders')
-205.285 000.099 000.099: require('telescope.debounce')
-205.562 000.270 000.270: require('telescope.mappings')
-205.686 000.115 000.115: require('telescope.pickers.highlights')
-205.793 000.101 000.101: require('telescope.pickers.window')
-205.962 000.076 000.076: require('telescope.algos.linked_list')
-205.970 000.171 000.096: require('telescope.entry_manager')
-206.040 000.067 000.067: require('telescope.pickers.multi')
-206.079 001.133 000.311: require('telescope.pickers')
-206.097 002.802 000.151: require('telescope.builtin.__lsp')
-206.126 003.202 000.400: require('telescope.builtin')
-206.457 000.236 000.236: require('fzf_lib')
-206.469 000.338 000.102: require('telescope._extensions.fzf')
-206.811 000.097 000.097: require('telescope._extensions.file_browser.utils')
-206.921 000.358 000.261: require('telescope._extensions.file_browser.actions')
-207.218 000.200 000.200: require('telescope._extensions.file_browser.make_entry')
-207.387 000.161 000.161: require('plenary.scandir')
-207.444 000.519 000.158: require('telescope._extensions.file_browser.finders')
-207.545 000.097 000.097: require('telescope._extensions.file_browser.picker')
-207.650 000.099 000.099: require('telescope._extensions.file_browser.config')
-207.657 001.177 000.103: require('telescope._extensions.file_browser')
-211.310 000.020 000.020: require('vim.keymap')
-211.563 018.727 004.104: require('plugins.telescope')
-212.720 000.062 000.062: require('notify.util.queue')
-212.735 000.155 000.093: require('notify.util')
-213.007 000.269 000.269: require('notify.config.highlights')
-213.022 000.525 000.101: require('notify.config')
-213.094 000.068 000.068: require('notify.stages')
-213.169 000.069 000.069: require('notify.service.notification')
-213.682 000.175 000.175: require('notify.animate.spring')
-213.690 000.392 000.217: require('notify.animate')
-213.704 000.530 000.139: require('notify.windows')
-214.066 000.097 000.097: require('notify.service.buffer.highlights')
-214.077 000.258 000.161: require('notify.service.buffer')
-214.082 000.375 000.117: require('notify.service')
-214.184 000.099 000.099: require('notify.stages.util')
-214.194 001.784 000.118: require('notify')
-214.350 000.152 000.152: require('nvim-tree.iterators.node-iterator')
-214.431 002.141 000.206: require('nvim-tree.utils')
-214.445 002.227 000.086: require('nvim-tree.events')
-214.713 000.088 000.088: require('nvim-tree.log')
-214.890 000.171 000.171: require('nvim-tree.git.utils')
-215.009 000.114 000.114: require('nvim-tree.git.runner')
-215.174 000.161 000.161: require('nvim-tree.watcher')
-215.192 000.657 000.124: require('nvim-tree.git')
-215.298 000.103 000.103: require('nvim-tree.explorer.watch')
-215.406 000.102 000.102: require('nvim-tree.explorer.common')
-215.643 000.101 000.101: require('nvim-tree.explorer.node-builders')
-215.743 000.094 000.094: require('nvim-tree.explorer.sorters')
-215.833 000.085 000.085: require('nvim-tree.explorer.filters')
-216.211 000.273 000.273: require('nvim-tree.view')
-216.236 000.399 000.126: require('nvim-tree.live-filter')
-216.246 000.795 000.117: require('nvim-tree.explorer.explore')
-216.401 000.150 000.150: require('nvim-tree.explorer.reload')
-216.415 001.967 000.159: require('nvim-tree.explorer')
-216.427 004.273 000.079: require('nvim-tree.core')
-216.599 000.166 000.166: require('nvim-tree.diagnostics')
-216.736 000.128 000.128: require('nvim-tree.renderer.components.padding')
-216.878 000.135 000.135: require('nvim-tree.renderer.components.icons')
-217.023 000.137 000.137: require('nvim-tree.renderer.components.full-name')
-217.159 000.130 000.130: require('nvim-tree.renderer.help')
-217.462 000.200 000.200: require('nvim-tree.renderer.components.git')
-217.671 000.201 000.201: require('nvim-tree.renderer.builder')
-217.860 000.182 000.182: require('nvim-tree.marks')
-217.885 005.824 000.272: require('nvim-tree.renderer')
-218.041 000.140 000.140: require('nvim-tree.actions.tree-modifiers.collapse-all')
-218.225 000.176 000.176: require('nvim-tree.actions.root.dir-up')
-218.363 000.130 000.130: require('nvim-tree.actions.root.change-dir')
-218.464 000.095 000.095: require('nvim-tree.actions.reloaders.reloaders')
-218.613 000.139 000.139: require('nvim-tree.actions.finders.find-file')
-218.622 006.686 000.182: require('nvim-tree.lib')
-218.780 000.153 000.153: require('nvim-tree.colors')
-218.941 000.154 000.154: require('nvim-tree.legacy')
-219.076 000.130 000.130: require('nvim-tree.actions.fs.copy-paste')
-219.307 000.103 000.103: require('nvim-tree.actions.tree-modifiers.expand-all')
-219.397 000.084 000.084: require('nvim-tree.actions.tree-modifiers.toggles')
-219.500 000.097 000.097: require('nvim-tree.actions.fs.create-file')
-219.594 000.088 000.088: require('nvim-tree.actions.fs.rename-file')
-219.723 000.124 000.124: require('nvim-tree.actions.fs.trash')
-219.830 000.101 000.101: require('nvim-tree.actions.fs.remove-file')
-219.918 000.080 000.080: require('nvim-tree.actions.moves.parent')
-220.008 000.085 000.085: require('nvim-tree.actions.moves.sibling')
-220.096 000.082 000.082: require('nvim-tree.actions.moves.item')
-220.192 000.086 000.086: require('nvim-tree.actions.finders.search-node')
-220.275 000.078 000.078: require('nvim-tree.actions.node.run-command')
-220.377 000.098 000.098: require('nvim-tree.actions.node.file-popup')
-220.493 000.111 000.111: require('nvim-tree.actions.node.system-open')
-220.617 000.095 000.095: require('nvim-tree.marks.bulk-move')
-220.629 001.547 000.234: require('nvim-tree.actions.dispatch')
-220.682 008.952 000.284: require('nvim-tree')
-220.763 000.077 000.077: require('nvim-tree.config')
-225.457 000.258 000.258: require('nvim-tree.actions')
-225.612 000.138 000.138: require('nvim-tree.actions.node.open-file')
-231.177 000.215 000.215: require('nvim-tree.marks.navigation')
-231.192 000.752 000.537: require('nvim-tree.api')
-231.319 001.308 000.556: require('nvim-tree.keymap')
-233.412 001.322 001.322: require('nvim-web-devicons')
-237.819 026.249 014.194: require('plugins.nvim-tree')
-238.149 000.080 000.080: require('lualine_require')
-238.693 000.744 000.664: require('lualine')
-238.769 000.068 000.068: require('plugins.linecolor')
-246.769 000.098 000.098: require('lualine.utils.mode')
-249.215 011.383 010.473: require('plugins.lualine')
-249.247 152.936 004.285: sourcing /home/sxrdusr/.config/nvim/init.lua
-249.266 008.141: sourcing vimrc file(s)
-249.558 000.053 000.053: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-250.909 000.165 000.165: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/filetype.lua
-252.249 001.187 001.187: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/filetype.vim
-254.478 000.324 000.324: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/syntax/synload.vim
-254.864 002.122 001.798: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/syntax/syntax.vim
-261.357 001.228 001.228: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/gzip.vim
-261.572 000.105 000.105: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/health.vim
-264.456 001.402 001.402: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-264.907 003.231 001.828: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/matchit.vim
-265.364 000.392 000.392: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/matchparen.vim
-265.507 000.075 000.075: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-265.913 000.024 000.024: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-265.934 000.361 000.337: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/rplugin.vim
-266.179 000.184 000.184: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/shada.vim
-266.298 000.051 000.051: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/spellfile.vim
-266.427 000.062 000.062: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/tarPlugin.vim
-266.555 000.063 000.063: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/tohtml.vim
-266.666 000.045 000.045: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/tutor.vim
-267.424 000.693 000.693: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/zipPlugin.vim
-267.688 000.035 000.035: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-269.082 000.120 000.120: require('lspsaga')
-269.341 000.083 000.083: require('lspsaga.window')
-269.360 000.181 000.097: require('lspsaga.libs')
-270.284 000.369 000.369: require('vim.lsp.log')
-270.982 000.690 000.690: require('vim.lsp.protocol')
-271.405 000.179 000.179: require('vim.lsp._snippet')
-271.540 000.128 000.128: require('vim.highlight')
-271.568 000.579 000.272: require('vim.lsp.util')
-271.602 001.846 000.207: require('vim.lsp.handlers')
-271.792 000.185 000.185: require('vim.lsp.rpc')
-271.899 000.100 000.100: require('vim.lsp.sync')
-272.049 000.144 000.144: require('vim.lsp.buf')
-272.158 000.102 000.102: require('vim.lsp.diagnostic')
-272.268 000.104 000.104: require('vim.lsp.codelens')
-272.410 002.961 000.479: require('vim.lsp')
-272.488 000.069 000.069: require('lspsaga.wrap')
-272.498 003.134 000.105: require('lspsaga.codeaction')
-272.539 003.448 000.133: require('lspsaga.lightbulb')
-272.662 000.089 000.089: require('lspsaga.lspkind')
-272.840 000.056 000.056: require('mason-core.path')
-272.856 000.130 000.074: require('mason.settings')
-273.051 000.055 000.055: require('mason-core.functional.data')
-273.059 000.122 000.068: require('mason-core.functional.function')
-273.095 000.234 000.112: require('mason-core.platform')
-273.099 000.427 000.063: require('mason')
-273.317 000.110 000.110: require('mason-core.functional')
-273.431 000.094 000.094: require('mason-core.functional.list')
-273.472 000.351 000.146: require('mason.api.command')
-273.730 000.170 000.170: require('mason-core.log')
-273.738 000.261 000.091: require('mason-lspconfig')
-273.810 000.069 000.069: require('mason-lspconfig.settings')
-273.930 000.083 000.083: require('mason-lspconfig.lspconfig_hook')
-274.191 000.255 000.255: require('lspconfig.util')
-274.407 000.070 000.070: require('mason-core.functional.table')
-274.515 000.300 000.230: require('mason-lspconfig.mappings.server')
-274.819 000.121 000.121: require('mason-core.async')
-274.889 000.063 000.063: require('mason-core.async.uv')
-274.903 000.305 000.121: require('mason-core.fs')
-274.984 000.077 000.077: require('mason-core.optional')
-275.055 000.066 000.066: require('mason-core.EventEmitter')
-275.213 000.154 000.154: require('mason-registry.index')
-275.233 000.711 000.111: require('mason-registry')
-275.320 000.069 000.069: require('mason-lspconfig.server_config_extensions')
-275.415 000.090 000.090: require('lspconfig.configs')
-275.544 000.085 000.085: require('lspconfig.server_configurations.omnisharp')
-275.748 000.074 000.074: require('mason-lspconfig.ensure_installed')
-276.005 000.072 000.072: require('mason-core.result')
-276.417 000.240 000.240: require('mason-core.process')
-276.495 000.070 000.070: require('mason-core.functional.relation')
-276.570 000.064 000.064: require('mason-core.functional.logic')
-276.586 000.480 000.107: require('mason-core.spawn')
-276.672 000.081 000.081: require('mason-core.receipt')
-276.761 000.078 000.078: require('mason-core.functional.string')
-276.793 000.783 000.144: require('mason-core.installer.context')
-276.869 000.072 000.072: require('mason-core.installer.linker')
-276.943 000.070 000.070: require('mason-core.async.control')
-276.955 001.111 000.114: require('mason-core.installer')
-277.048 000.090 000.090: require('mason-core.installer.handle')
-277.418 000.067 000.067: require('mason-core.managers.powershell')
-277.428 000.146 000.079: require('mason-core.fetch')
-277.432 000.212 000.066: require('mason-core.managers.cargo.client')
-277.559 000.435 000.223: require('mason-core.managers.cargo')
-277.681 000.116 000.116: require('mason-core.managers.composer')
-277.797 000.110 000.110: require('mason-core.managers.gem')
-277.878 000.076 000.076: require('mason-core.managers.git')
-278.059 000.095 000.095: require('mason-core.managers.std')
-278.142 000.078 000.078: require('mason-core.managers.github.client')
-278.155 000.273 000.100: require('mason-core.managers.github')
-278.342 000.183 000.183: require('mason-core.managers.go')
-278.486 000.139 000.139: require('mason-core.managers.luarocks')
-278.592 000.101 000.101: require('mason-core.managers.npm')
-278.705 000.108 000.108: require('mason-core.managers.pip3')
-278.716 001.661 000.121: require('mason-core.package.version-check')
-278.728 002.974 000.112: require('mason-core.package')
-278.830 000.089 000.089: require('mason-registry.lua-language-server')
-279.275 000.122 000.122: require('mason-registry.clangd')
-279.487 000.147 000.147: require('mason-registry.rust-analyzer')
-279.655 000.067 000.067: require('mason-core.notify')
-279.733 000.071 000.071: require('mason-core.functional.number')
-279.785 000.289 000.152: require('mason-lspconfig.api.command')
-279.791 011.969 001.915: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-280.735 000.090 000.090: sourcing /tmp/.mount_nvimCHM7IC/usr/share/nvim/runtime/plugin/man.lua
-280.920 009.546: loading rtp plugins
-282.674 000.073 000.073: require('Comment.config')
-282.771 000.089 000.089: require('Comment.utils')
-282.846 000.071 000.071: require('Comment.opfunc')
-282.917 000.066 000.066: require('Comment.extra')
-282.933 000.458 000.160: require('Comment.api')
-283.468 001.047 000.589: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-284.190 000.090 000.090: require('luasnip.util.types')
-284.274 000.076 000.076: require('luasnip.util.ext_opts')
-284.352 000.074 000.074: require('luasnip.extras.filetype_functions')
-284.425 000.068 000.068: require('luasnip.session')
-284.739 000.127 000.127: require('luasnip.util.util')
-284.819 000.075 000.075: require('luasnip.nodes.util')
-284.887 000.062 000.062: require('luasnip.util.events')
-284.908 000.387 000.123: require('luasnip.nodes.node')
-285.048 000.095 000.095: require('luasnip.util.extend_decorator')
-285.063 000.633 000.151: require('luasnip.nodes.insertNode')
-285.330 000.083 000.083: require('luasnip.util.mark')
-285.616 000.140 000.140: require('luasnip.nodes.textNode')
-286.531 000.827 000.827: require('luasnip.util._builtin_vars')
-286.833 001.209 000.383: require('luasnip.util.environ')
-286.926 000.086 000.086: require('luasnip.util.pattern_tokenizer')
-286.999 000.068 000.068: require('luasnip.util.dict')
-287.096 000.092 000.092: require('luasnip.session.snippet_collection')
-287.152 001.816 000.221: require('luasnip.nodes.snippet')
-287.188 002.122 000.223: require('luasnip.nodes.choiceNode')
-287.368 000.112 000.112: require('luasnip.nodes.functionNode')
-287.544 000.169 000.169: require('luasnip.nodes.dynamicNode')
-287.688 000.138 000.138: require('luasnip.nodes.restoreNode')
-287.780 000.086 000.086: require('luasnip.extras')
-287.977 000.068 000.068: require('luasnip.util.str')
-287.989 000.202 000.133: require('luasnip.extras.fmt')
-288.054 000.061 000.061: require('luasnip.extras.expand_conditions')
-290.201 000.078 000.078: require('luasnip.util.parser.neovim_ast')
-300.163 000.097 000.097: require('luasnip.util.directed_graph')
-300.185 012.054 011.879: require('luasnip.util.parser.ast_utils')
-300.367 000.085 000.085: require('luasnip.util.functions')
-300.387 000.196 000.111: require('luasnip.util.parser.ast_parser')
-300.563 000.173 000.173: require('luasnip.util.parser.neovim_parser')
-300.577 012.513 000.090: require('luasnip.util.parser')
-300.655 000.074 000.074: require('luasnip.nodes.absolute_indexer')
-301.222 017.241 000.824: require('luasnip.config')
-301.385 017.742 000.502: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-302.266 000.049 000.049: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-303.147 000.099 000.099: require('indent_blankline/utils')
-303.156 000.256 000.156: require('indent_blankline')
-303.623 000.093 000.093: require('indent_blankline.commands')
-303.782 001.055 000.706: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/plugin/indent_blankline.vim
-304.216 000.098 000.098: require('lsp-colors')
-305.024 000.956 000.858: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-306.488 001.075 001.075: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-307.360 000.411 000.411: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-307.912 000.092 000.092: require('cmp.utils.api')
-308.048 000.066 000.066: require('cmp.types.cmp')
-308.210 000.080 000.080: require('cmp.utils.misc')
-308.328 000.274 000.194: require('cmp.types.lsp')
-308.401 000.067 000.067: require('cmp.types.vim')
-308.406 000.487 000.081: require('cmp.types')
-308.475 000.065 000.065: require('cmp.utils.highlight')
-308.602 000.060 000.060: require('cmp.utils.debug')
-308.617 000.137 000.077: require('cmp.utils.autocmd')
-309.515 001.773 000.991: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-309.780 000.081 000.081: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-310.207 000.104 000.104: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-310.692 000.172 000.172: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-311.299 000.065 000.065: require('nvim-treesitter.statusline')
-311.390 000.084 000.084: require('nvim-treesitter.query_predicates')
-311.397 000.237 000.087: require('nvim-treesitter')
-312.386 000.250 000.250: require('vim.treesitter.highlighter')
-312.746 000.762 000.512: require('nvim-treesitter.highlight')
-313.417 002.309 001.310: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-313.878 000.234 000.234: require('treesitter-context')
-313.888 000.278 000.043: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-314.260 000.086 000.086: require('nvim-treesitter-refactor')
-314.421 000.273 000.187: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-314.787 000.110 000.110: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-315.167 000.079 000.079: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-315.536 000.092 000.092: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-316.316 000.428 000.428: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-316.677 000.059 000.059: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-317.659 000.460 000.460: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-318.449 000.494 000.494: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-319.069 000.362 000.362: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-319.927 000.594 000.594: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-320.227 000.030 000.030: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-320.530 000.061 000.061: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-322.022 011.008: loading packages
-323.663 000.443 000.443: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-328.017 005.446 005.003: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-328.726 000.122 000.122: require('cmp.utils.char')
-328.741 000.206 000.084: require('cmp.utils.str')
-328.812 000.067 000.067: require('cmp.utils.pattern')
-329.041 000.067 000.067: require('cmp.utils.buffer')
-329.055 000.166 000.099: require('cmp.utils.keymap')
-329.064 000.247 000.081: require('cmp.utils.feedkeys')
-329.153 000.085 000.085: require('cmp.utils.async')
-329.288 000.060 000.060: require('cmp.utils.cache')
-329.295 000.137 000.076: require('cmp.context')
-329.538 000.082 000.082: require('cmp.config.mapping')
-329.700 000.081 000.081: require('cmp.config.compare')
-329.705 000.160 000.079: require('cmp.config.default')
-329.731 000.347 000.104: require('cmp.config')
-329.907 000.066 000.066: require('cmp.matcher')
-329.920 000.185 000.119: require('cmp.entry')
-329.934 000.636 000.104: require('cmp.source')
-330.070 000.059 000.059: require('cmp.utils.event')
-330.244 000.086 000.086: require('cmp.utils.window')
-330.251 000.175 000.089: require('cmp.view.docs_view')
-330.368 000.115 000.115: require('cmp.view.custom_entries_view')
-330.485 000.111 000.111: require('cmp.view.wildmenu_entries_view')
-330.590 000.100 000.100: require('cmp.view.native_entries_view')
-330.668 000.073 000.073: require('cmp.view.ghost_text_view')
-330.686 000.748 000.115: require('cmp.view')
-330.759 002.340 000.215: require('cmp.core')
-331.206 000.068 000.068: require('cmp.config.sources')
-331.275 000.061 000.061: require('cmp.config.window')
-331.378 003.082 000.613: require('cmp')
-331.667 000.065 000.065: require('cmp_buffer.timer')
-331.676 000.156 000.090: require('cmp_buffer.buffer')
-331.684 000.236 000.080: require('cmp_buffer.source')
-331.688 000.305 000.069: require('cmp_buffer')
-331.717 003.480 000.093: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-332.116 000.150 000.150: require('cmp_cmdline')
-332.152 000.259 000.108: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-332.495 000.072 000.072: require('cmp_nvim_lsp.source')
-332.502 000.149 000.078: require('cmp_nvim_lsp')
-332.552 000.244 000.094: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-332.866 000.115 000.115: require('cmp_path')
-332.896 000.193 000.079: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-333.187 000.090 000.090: require('cmp_luasnip')
-333.256 000.210 000.120: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-333.412 001.558: loading after plugins
-333.475 000.062: inits 3
-333.487 000.013: reading ShaDa
-333.892 000.092 000.092: require('luasnip.loaders._caches')
-334.006 000.108 000.108: require('luasnip.util.path')
-334.098 000.086 000.086: require('luasnip.loaders.util')
-334.316 000.100 000.100: require('luasnip.loaders')
-334.355 000.252 000.151: require('luasnip')
-334.362 000.653 000.115: require('luasnip.loaders.from_lua')
-334.576 000.074 000.074: require('luasnip.nodes.snippetProxy')
-334.586 000.175 000.101: require('luasnip.loaders.from_snipmate')
-334.714 000.088 000.088: require('luasnip.loaders.from_vscode')
-335.773 001.369: opening buffers
-335.985 000.212: BufEnter autocommands
-335.991 000.006: editing files in windows
-351.037 000.897 000.897: require('vim.diagnostic')
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.080 001.080: --- NVIM STARTING ---
-027.406 026.326: event init
-043.818 016.412: early init
-045.469 001.651: locale set
-050.897 005.428: init first window
-060.729 009.831: inits 1
-060.758 000.029: window checked
-060.768 000.010: parsing arguments
-071.499 000.121 000.121: require('vim.shared')
-071.736 000.114 000.114: require('vim._meta')
-071.742 000.234 000.119: require('vim._editor')
-071.746 000.411 000.057: require('vim._init_packages')
-071.749 010.570: init lua interpreter
-071.828 000.079: expanding arguments
-073.656 001.828: inits 2
-074.260 000.605: init highlight
-074.265 000.004: waiting for UI
-076.636 002.371: done waiting for UI
-076.670 000.035: init screen for UI
-076.912 000.241: init default mappings
-076.939 000.028: init default autocommands
-085.849 003.940 003.940: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/ftplugin.vim
-087.715 000.864 000.864: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/indent.vim
-087.951 000.027 000.027: sourcing /usr/share/nvim/archlinux.vim
-087.963 000.086 000.059: sourcing /etc/xdg/nvim/sysinit.vim
-096.976 005.642 005.642: require('keys')
-099.478 002.489 002.489: require('opts')
-102.067 000.524 000.524: require('packer.util')
-102.123 002.264 001.740: require('packer')
-103.995 000.611 000.611: require('packer.log')
-104.017 001.096 000.485: require('packer.async')
-105.004 000.395 000.395: require('packer.result')
-105.013 000.991 000.596: require('packer.jobs')
-105.029 002.859 000.772: require('packer.plugin_utils')
-105.671 000.619 000.619: require('packer.snapshot')
-106.678 007.192 001.450: require('pack')
-117.616 010.929 010.929: require('impatient')
-118.465 000.192 000.192: require('vim.treesitter.language')
-118.485 000.545 000.353: require('vim.treesitter.query')
-119.777 000.239 000.239: require('vim.treesitter.languagetree')
-119.839 000.619 000.380: require('vim.treesitter')
-120.125 001.208 000.589: require('nvim-treesitter.parsers')
-120.247 000.116 000.116: require('nvim-treesitter.utils')
-120.262 001.550 000.226: require('nvim-treesitter.ts_utils')
-120.271 001.781 000.231: require('nvim-treesitter.tsrange')
-120.346 000.072 000.072: require('nvim-treesitter.caching')
-120.368 002.520 000.122: require('nvim-treesitter.query')
-120.394 002.687 000.167: require('nvim-treesitter.configs')
-120.789 000.085 000.085: require('nvim-treesitter.info')
-120.911 000.116 000.116: require('nvim-treesitter.shell_command_selectors')
-120.959 000.452 000.250: require('nvim-treesitter.install')
-163.436 045.806 042.666: require('plugins.treesitter')
-163.913 000.263 000.263: require('telescope._extensions')
-163.923 000.350 000.088: require('telescope')
-164.650 000.083 000.083: require('plenary.bit')
-164.727 000.071 000.071: require('plenary.functional')
-164.774 000.028 000.028: require('ffi')
-164.798 000.360 000.178: require('plenary.path')
-164.812 000.452 000.092: require('plenary.strings')
-164.881 000.066 000.066: require('telescope.deprecated')
-165.525 000.355 000.355: require('plenary.log')
-165.613 000.628 000.273: require('telescope.log')
-166.068 000.281 000.281: require('plenary.job')
-166.146 000.071 000.071: require('telescope.state')
-166.167 000.548 000.196: require('telescope.utils')
-166.178 001.291 000.115: require('telescope.sorters')
-166.339 000.139 000.139: require('vim.inspect')
-166.544 000.011 000.011: require('vim.F')
-169.773 005.637 003.678: require('telescope.config')
-170.373 000.089 000.089: require('plenary.window.border')
-170.442 000.063 000.063: require('plenary.window')
-170.504 000.057 000.057: require('plenary.popup.utils')
-170.515 000.733 000.525: require('plenary.popup')
-170.584 000.065 000.065: require('telescope.pickers.scroller')
-170.652 000.064 000.064: require('telescope.actions.state')
-170.724 000.067 000.067: require('telescope.actions.utils')
-170.865 000.067 000.067: require('telescope.actions.mt')
-170.895 000.167 000.099: require('telescope.actions.set')
-171.089 000.072 000.072: require('telescope.config.resolve')
-171.099 000.152 000.080: require('telescope.pickers.entry_display')
-171.158 000.056 000.056: require('telescope.from_entry')
-171.494 007.567 000.626: require('telescope.actions')
-172.112 000.077 000.077: require('plenary.tbl')
-172.121 000.172 000.094: require('plenary.vararg.rotate')
-172.125 000.232 000.060: require('plenary.vararg')
-172.186 000.058 000.058: require('plenary.errors')
-172.198 000.367 000.077: require('plenary.async.async')
-172.264 000.063 000.063: require('plenary.async.structs')
-172.278 000.518 000.089: require('plenary.async.control')
-172.615 000.234 000.234: require('telescope.make_entry')
-172.879 000.074 000.074: require('plenary.async.util')
-172.886 000.136 000.063: require('plenary.async.tests')
-172.890 000.203 000.066: require('plenary.async')
-172.894 000.273 000.070: require('telescope.finders.async_static_finder')
-173.099 000.057 000.057: require('plenary.class')
-173.124 000.162 000.106: require('telescope._')
-173.129 000.232 000.070: require('telescope.finders.async_oneshot_finder')
-173.199 000.066 000.066: require('telescope.finders.async_job_finder')
-173.208 000.925 000.119: require('telescope.finders')
-173.492 000.103 000.103: require('telescope.debounce')
-173.650 000.152 000.152: require('telescope.mappings')
-173.736 000.081 000.081: require('telescope.pickers.highlights')
-173.812 000.070 000.070: require('telescope.pickers.window')
-173.959 000.070 000.070: require('telescope.algos.linked_list')
-173.966 000.150 000.080: require('telescope.entry_manager')
-174.031 000.062 000.062: require('telescope.pickers.multi')
-174.060 000.849 000.232: require('telescope.pickers')
-174.075 002.421 000.129: require('telescope.builtin.__lsp')
-174.124 002.624 000.203: require('telescope.builtin')
-174.430 000.222 000.222: require('fzf_lib')
-174.440 000.310 000.088: require('telescope._extensions.fzf')
-174.788 000.093 000.093: require('telescope._extensions.file_browser.utils')
-174.884 000.353 000.260: require('telescope._extensions.file_browser.actions')
-175.118 000.142 000.142: require('telescope._extensions.file_browser.make_entry')
-175.267 000.143 000.143: require('plenary.scandir')
-175.316 000.427 000.142: require('telescope._extensions.file_browser.finders')
-175.401 000.081 000.081: require('telescope._extensions.file_browser.picker')
-175.494 000.088 000.088: require('telescope._extensions.file_browser.config')
-175.500 001.050 000.100: require('telescope._extensions.file_browser')
-179.114 000.014 000.014: require('vim.keymap')
-179.332 015.886 003.971: require('plugins.telescope')
-180.337 000.061 000.061: require('notify.util.queue')
-180.346 000.147 000.085: require('notify.util')
-180.570 000.221 000.221: require('notify.config.highlights')
-180.587 000.469 000.102: require('notify.config')
-180.765 000.174 000.174: require('notify.stages')
-180.841 000.069 000.069: require('notify.service.notification')
-181.057 000.060 000.060: require('notify.animate.spring')
-181.063 000.120 000.060: require('notify.animate')
-181.076 000.230 000.110: require('notify.windows')
-181.365 000.108 000.108: require('notify.service.buffer.highlights')
-181.379 000.225 000.116: require('notify.service.buffer')
-181.385 000.306 000.081: require('notify.service')
-181.497 000.108 000.108: require('notify.stages.util')
-181.507 001.480 000.123: require('notify')
-181.616 000.106 000.106: require('nvim-tree.iterators.node-iterator')
-181.725 001.805 000.219: require('nvim-tree.utils')
-181.738 001.887 000.083: require('nvim-tree.events')
-181.989 000.078 000.078: require('nvim-tree.log')
-182.151 000.156 000.156: require('nvim-tree.git.utils')
-182.251 000.095 000.095: require('nvim-tree.git.runner')
-182.369 000.113 000.113: require('nvim-tree.watcher')
-182.393 000.567 000.125: require('nvim-tree.git')
-182.492 000.095 000.095: require('nvim-tree.explorer.watch')
-182.580 000.083 000.083: require('nvim-tree.explorer.common')
-182.807 000.090 000.090: require('nvim-tree.explorer.node-builders')
-182.903 000.089 000.089: require('nvim-tree.explorer.sorters')
-183.040 000.132 000.132: require('nvim-tree.explorer.filters')
-183.398 000.251 000.251: require('nvim-tree.view')
-183.410 000.366 000.114: require('nvim-tree.live-filter')
-183.421 000.797 000.120: require('nvim-tree.explorer.explore')
-183.517 000.093 000.093: require('nvim-tree.explorer.reload')
-183.527 001.785 000.150: require('nvim-tree.explorer')
-183.545 003.754 000.082: require('nvim-tree.core')
-183.660 000.111 000.111: require('nvim-tree.diagnostics')
-183.753 000.087 000.087: require('nvim-tree.renderer.components.padding')
-183.842 000.084 000.084: require('nvim-tree.renderer.components.icons')
-183.948 000.101 000.101: require('nvim-tree.renderer.components.full-name')
-184.037 000.085 000.085: require('nvim-tree.renderer.help')
-184.170 000.127 000.127: require('nvim-tree.renderer.components.git')
-184.303 000.128 000.128: require('nvim-tree.renderer.builder')
-184.399 000.091 000.091: require('nvim-tree.marks')
-184.415 004.706 000.137: require('nvim-tree.renderer')
-184.518 000.089 000.089: require('nvim-tree.actions.tree-modifiers.collapse-all')
-184.609 000.086 000.086: require('nvim-tree.actions.root.dir-up')
-184.703 000.089 000.089: require('nvim-tree.actions.root.change-dir')
-184.787 000.079 000.079: require('nvim-tree.actions.reloaders.reloaders')
-184.875 000.079 000.079: require('nvim-tree.actions.finders.find-file')
-184.880 005.245 000.117: require('nvim-tree.lib')
-184.995 000.111 000.111: require('nvim-tree.colors')
-185.150 000.149 000.149: require('nvim-tree.legacy')
-185.288 000.132 000.132: require('nvim-tree.actions.fs.copy-paste')
-185.532 000.098 000.098: require('nvim-tree.actions.tree-modifiers.expand-all')
-185.617 000.078 000.078: require('nvim-tree.actions.tree-modifiers.toggles')
-185.756 000.132 000.132: require('nvim-tree.actions.fs.create-file')
-185.858 000.095 000.095: require('nvim-tree.actions.fs.rename-file')
-185.985 000.121 000.121: require('nvim-tree.actions.fs.trash')
-186.111 000.121 000.121: require('nvim-tree.actions.fs.remove-file')
-186.203 000.085 000.085: require('nvim-tree.actions.moves.parent')
-186.287 000.079 000.079: require('nvim-tree.actions.moves.sibling')
-186.369 000.076 000.076: require('nvim-tree.actions.moves.item')
-186.482 000.089 000.089: require('nvim-tree.actions.finders.search-node')
-186.565 000.078 000.078: require('nvim-tree.actions.node.run-command')
-186.658 000.088 000.088: require('nvim-tree.actions.node.file-popup')
-186.795 000.132 000.132: require('nvim-tree.actions.node.system-open')
-186.898 000.095 000.095: require('nvim-tree.marks.bulk-move')
-186.906 001.612 000.242: require('nvim-tree.actions.dispatch')
-186.960 007.522 000.273: require('nvim-tree')
-187.039 000.075 000.075: require('nvim-tree.config')
-192.091 000.306 000.306: require('nvim-tree.actions')
-192.263 000.152 000.152: require('nvim-tree.actions.node.open-file')
-196.580 000.258 000.258: require('nvim-tree.marks.navigation')
-196.599 001.236 000.978: require('nvim-tree.api')
-196.734 001.594 000.357: require('nvim-tree.keymap')
-199.512 002.025 002.025: require('nvim-web-devicons')
-203.706 024.367 012.694: require('plugins.nvim-tree')
-204.070 000.080 000.080: require('lualine_require')
-204.613 000.770 000.690: require('lualine')
-204.685 000.065 000.065: require('plugins.linecolor')
-213.446 000.088 000.088: require('lualine.utils.mode')
-215.545 011.829 010.906: require('plugins.lualine')
-215.554 127.545 003.406: sourcing /home/sxrdusr/.config/nvim/init.lua
-215.571 006.197: sourcing vimrc file(s)
-215.888 000.054 000.054: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-217.247 000.068 000.068: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/filetype.lua
-218.594 001.163 001.163: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/filetype.vim
-222.514 000.412 000.412: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/syntax/synload.vim
-222.762 003.325 002.913: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/syntax/syntax.vim
-231.144 002.457 002.457: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/gzip.vim
-231.338 000.069 000.069: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/health.vim
-234.897 002.302 002.302: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-235.369 003.968 001.667: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/matchit.vim
-235.874 000.439 000.439: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/matchparen.vim
-236.128 000.132 000.132: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-236.569 000.021 000.021: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-236.590 000.393 000.372: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/rplugin.vim
-236.889 000.215 000.215: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/shada.vim
-237.045 000.083 000.083: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/spellfile.vim
-237.420 000.309 000.309: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/tarPlugin.vim
-237.699 000.210 000.210: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/tohtml.vim
-237.832 000.066 000.066: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/tutor.vim
-239.418 001.521 001.521: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/zipPlugin.vim
-240.901 001.250 001.250: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-242.244 000.130 000.130: require('lspsaga')
-242.541 000.087 000.087: require('lspsaga.window')
-242.561 000.223 000.135: require('lspsaga.libs')
-243.563 000.403 000.403: require('vim.lsp.log')
-244.323 000.753 000.753: require('vim.lsp.protocol')
-244.738 000.179 000.179: require('vim.lsp._snippet')
-244.874 000.130 000.130: require('vim.highlight')
-244.902 000.572 000.264: require('vim.lsp.util')
-244.921 001.953 000.225: require('vim.lsp.handlers')
-245.149 000.225 000.225: require('vim.lsp.rpc')
-245.278 000.122 000.122: require('vim.lsp.sync')
-245.455 000.170 000.170: require('vim.lsp.buf')
-245.583 000.123 000.123: require('vim.lsp.diagnostic')
-245.762 000.173 000.173: require('vim.lsp.codelens')
-245.998 003.347 000.582: require('vim.lsp')
-246.078 000.072 000.072: require('lspsaga.wrap')
-246.088 003.523 000.104: require('lspsaga.codeaction')
-246.147 003.895 000.150: require('lspsaga.lightbulb')
-246.279 000.090 000.090: require('lspsaga.lspkind')
-246.456 000.056 000.056: require('mason-core.path')
-246.472 000.128 000.072: require('mason.settings')
-246.696 000.053 000.053: require('mason-core.functional.data')
-246.704 000.122 000.069: require('mason-core.functional.function')
-246.741 000.265 000.143: require('mason-core.platform')
-246.746 000.457 000.064: require('mason')
-246.951 000.103 000.103: require('mason-core.functional')
-247.046 000.077 000.077: require('mason-core.functional.list')
-247.086 000.318 000.138: require('mason.api.command')
-247.253 000.093 000.093: require('mason-core.log')
-247.260 000.170 000.077: require('mason-lspconfig')
-247.323 000.059 000.059: require('mason-lspconfig.settings')
-247.407 000.066 000.066: require('mason-lspconfig.lspconfig_hook')
-247.643 000.232 000.232: require('lspconfig.util')
-247.953 000.084 000.084: require('mason-core.functional.table')
-248.053 000.296 000.211: require('mason-lspconfig.mappings.server')
-248.324 000.084 000.084: require('mason-core.async')
-248.393 000.062 000.062: require('mason-core.async.uv')
-248.404 000.269 000.123: require('mason-core.fs')
-248.477 000.069 000.069: require('mason-core.optional')
-248.549 000.068 000.068: require('mason-core.EventEmitter')
-248.699 000.145 000.145: require('mason-registry.index')
-248.726 000.667 000.117: require('mason-registry')
-248.799 000.068 000.068: require('mason-lspconfig.server_config_extensions')
-248.932 000.129 000.129: require('lspconfig.configs')
-249.152 000.176 000.176: require('lspconfig.server_configurations.omnisharp')
-249.411 000.075 000.075: require('mason-lspconfig.ensure_installed')
-249.664 000.076 000.076: require('mason-core.result')
-250.074 000.234 000.234: require('mason-core.process')
-250.151 000.069 000.069: require('mason-core.functional.relation')
-250.225 000.066 000.066: require('mason-core.functional.logic')
-250.238 000.475 000.106: require('mason-core.spawn')
-250.323 000.082 000.082: require('mason-core.receipt')
-250.409 000.071 000.071: require('mason-core.functional.string')
-250.437 000.768 000.141: require('mason-core.installer.context')
-250.513 000.072 000.072: require('mason-core.installer.linker')
-250.587 000.070 000.070: require('mason-core.async.control')
-250.595 001.086 000.101: require('mason-core.installer')
-250.695 000.097 000.097: require('mason-core.installer.handle')
-251.037 000.066 000.066: require('mason-core.managers.powershell')
-251.043 000.138 000.073: require('mason-core.fetch')
-251.047 000.200 000.061: require('mason-core.managers.cargo.client')
-251.294 000.526 000.327: require('mason-core.managers.cargo')
-251.449 000.148 000.148: require('mason-core.managers.composer')
-251.567 000.112 000.112: require('mason-core.managers.gem')
-251.649 000.077 000.077: require('mason-core.managers.git')
-251.832 000.090 000.090: require('mason-core.managers.std')
-251.912 000.075 000.075: require('mason-core.managers.github.client')
-251.925 000.271 000.106: require('mason-core.managers.github')
-252.028 000.100 000.100: require('mason-core.managers.go')
-252.155 000.122 000.122: require('mason-core.managers.luarocks')
-252.261 000.101 000.101: require('mason-core.managers.npm')
-252.406 000.139 000.139: require('mason-core.managers.pip3')
-252.423 001.722 000.125: require('mason-core.package.version-check')
-252.433 003.015 000.110: require('mason-core.package')
-252.549 000.091 000.091: require('mason-registry.lua-language-server')
-252.939 000.191 000.191: require('mason-registry.clangd')
-253.173 000.194 000.194: require('mason-registry.rust-analyzer')
-253.330 000.055 000.055: require('mason-core.notify')
-253.408 000.068 000.068: require('mason-core.functional.number')
-253.465 000.282 000.159: require('mason-lspconfig.api.command')
-253.471 012.397 001.794: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-254.877 000.113 000.113: sourcing /tmp/.mount_nvimPFskb9/usr/share/nvim/runtime/plugin/man.lua
-255.100 011.297: loading rtp plugins
-256.891 000.076 000.076: require('Comment.config')
-256.985 000.086 000.086: require('Comment.utils')
-257.060 000.070 000.070: require('Comment.opfunc')
-257.130 000.065 000.065: require('Comment.extra')
-257.145 000.468 000.170: require('Comment.api')
-257.568 000.946 000.477: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-258.251 000.068 000.068: require('luasnip.util.types')
-258.335 000.077 000.077: require('luasnip.util.ext_opts')
-258.413 000.073 000.073: require('luasnip.extras.filetype_functions')
-258.485 000.067 000.067: require('luasnip.session')
-258.793 000.118 000.118: require('luasnip.util.util')
-258.874 000.075 000.075: require('luasnip.nodes.util')
-258.941 000.063 000.063: require('luasnip.util.events')
-258.958 000.376 000.119: require('luasnip.nodes.node')
-259.103 000.096 000.096: require('luasnip.util.extend_decorator')
-259.115 000.625 000.153: require('luasnip.nodes.insertNode')
-259.378 000.090 000.090: require('luasnip.util.mark')
-259.606 000.093 000.093: require('luasnip.nodes.textNode')
-260.491 000.806 000.806: require('luasnip.util._builtin_vars')
-260.690 001.078 000.272: require('luasnip.util.environ')
-260.786 000.090 000.090: require('luasnip.util.pattern_tokenizer')
-260.853 000.062 000.062: require('luasnip.util.dict')
-260.946 000.088 000.088: require('luasnip.session.snippet_collection')
-261.000 001.615 000.205: require('luasnip.nodes.snippet')
-261.029 001.911 000.206: require('luasnip.nodes.choiceNode')
-261.206 000.114 000.114: require('luasnip.nodes.functionNode')
-261.370 000.157 000.157: require('luasnip.nodes.dynamicNode')
-261.490 000.114 000.114: require('luasnip.nodes.restoreNode')
-261.582 000.086 000.086: require('luasnip.extras')
-263.685 002.019 002.019: require('luasnip.util.str')
-263.699 002.110 000.091: require('luasnip.extras.fmt')
-263.788 000.083 000.083: require('luasnip.extras.expand_conditions')
-264.029 000.075 000.075: require('luasnip.util.parser.neovim_ast')
-277.336 000.093 000.093: require('luasnip.util.directed_graph')
-277.357 013.492 013.325: require('luasnip.util.parser.ast_utils')
-277.516 000.067 000.067: require('luasnip.util.functions')
-277.529 000.167 000.100: require('luasnip.util.parser.ast_parser')
-277.696 000.163 000.163: require('luasnip.util.parser.neovim_parser')
-277.708 013.913 000.090: require('luasnip.util.parser')
-277.779 000.066 000.066: require('luasnip.nodes.absolute_indexer')
-278.395 020.332 000.867: require('luasnip.config')
-278.560 020.810 000.478: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-279.482 000.049 000.049: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-280.347 000.091 000.091: require('indent_blankline/utils')
-280.356 000.243 000.152: require('indent_blankline')
-280.865 000.093 000.093: require('indent_blankline.commands')
-281.069 001.130 000.793: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/plugin/indent_blankline.vim
-281.484 000.096 000.096: require('lsp-colors')
-281.881 000.545 000.449: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-283.314 001.039 001.039: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-284.157 000.385 000.385: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-284.682 000.088 000.088: require('cmp.utils.api')
-284.811 000.061 000.061: require('cmp.types.cmp')
-284.973 000.083 000.083: require('cmp.utils.misc')
-285.067 000.251 000.168: require('cmp.types.lsp')
-285.136 000.063 000.063: require('cmp.types.vim')
-285.142 000.453 000.079: require('cmp.types')
-285.208 000.062 000.062: require('cmp.utils.highlight')
-285.330 000.055 000.055: require('cmp.utils.debug')
-285.351 000.139 000.084: require('cmp.utils.autocmd')
-285.930 001.404 000.661: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-286.193 000.079 000.079: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-286.604 000.102 000.102: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-287.061 000.154 000.154: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-287.709 000.068 000.068: require('nvim-treesitter.statusline')
-287.795 000.080 000.080: require('nvim-treesitter.query_predicates')
-287.802 000.235 000.087: require('nvim-treesitter')
-289.115 000.255 000.255: require('vim.treesitter.highlighter')
-289.471 000.761 000.506: require('nvim-treesitter.highlight')
-289.873 002.400 001.404: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-290.336 000.219 000.219: require('treesitter-context')
-290.346 000.259 000.040: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-290.708 000.080 000.080: require('nvim-treesitter-refactor')
-290.977 000.375 000.295: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-291.352 000.109 000.109: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-291.727 000.077 000.077: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-292.092 000.092 000.092: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-292.887 000.424 000.424: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-293.259 000.060 000.060: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-294.235 000.484 000.484: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-295.020 000.494 000.494: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-295.620 000.349 000.349: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-296.512 000.601 000.601: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-296.818 000.030 000.030: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-297.099 000.045 000.045: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-298.594 011.053: loading packages
-300.317 000.483 000.483: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-304.622 005.447 004.964: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-305.441 000.235 000.235: require('cmp.utils.char')
-305.461 000.333 000.098: require('cmp.utils.str')
-305.537 000.071 000.071: require('cmp.utils.pattern')
-305.802 000.083 000.083: require('cmp.utils.buffer')
-305.818 000.210 000.128: require('cmp.utils.keymap')
-305.827 000.285 000.075: require('cmp.utils.feedkeys')
-305.917 000.087 000.087: require('cmp.utils.async')
-306.045 000.057 000.057: require('cmp.utils.cache')
-306.058 000.135 000.078: require('cmp.context')
-306.303 000.077 000.077: require('cmp.config.mapping')
-306.465 000.079 000.079: require('cmp.config.compare')
-306.470 000.161 000.081: require('cmp.config.default')
-306.496 000.349 000.111: require('cmp.config')
-306.668 000.065 000.065: require('cmp.matcher')
-306.681 000.182 000.116: require('cmp.entry')
-306.692 000.631 000.100: require('cmp.source')
-306.832 000.064 000.064: require('cmp.utils.event')
-306.997 000.088 000.088: require('cmp.utils.window')
-307.004 000.167 000.079: require('cmp.view.docs_view')
-307.117 000.110 000.110: require('cmp.view.custom_entries_view')
-307.224 000.102 000.102: require('cmp.view.wildmenu_entries_view')
-307.309 000.080 000.080: require('cmp.view.native_entries_view')
-307.385 000.072 000.072: require('cmp.view.ghost_text_view')
-307.402 000.707 000.112: require('cmp.view')
-307.510 002.498 000.249: require('cmp.core')
-307.774 000.074 000.074: require('cmp.config.sources')
-307.838 000.058 000.058: require('cmp.config.window')
-307.940 003.047 000.417: require('cmp')
-308.208 000.061 000.061: require('cmp_buffer.timer')
-308.217 000.143 000.082: require('cmp_buffer.buffer')
-308.222 000.220 000.078: require('cmp_buffer.source')
-308.226 000.281 000.061: require('cmp_buffer')
-308.256 003.417 000.089: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-308.633 000.153 000.153: require('cmp_cmdline')
-308.667 000.236 000.083: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-308.999 000.072 000.072: require('cmp_nvim_lsp.source')
-309.006 000.147 000.075: require('cmp_nvim_lsp')
-309.084 000.268 000.121: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-309.398 000.114 000.114: require('cmp_path')
-309.432 000.197 000.083: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-309.712 000.085 000.085: require('cmp_luasnip')
-309.781 000.199 000.115: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-309.930 001.571: loading after plugins
-309.992 000.062: inits 3
-310.006 000.014: reading ShaDa
-310.393 000.068 000.068: require('luasnip.loaders._caches')
-310.505 000.105 000.105: require('luasnip.util.path')
-310.592 000.082 000.082: require('luasnip.loaders.util')
-310.822 000.111 000.111: require('luasnip.loaders')
-310.860 000.263 000.151: require('luasnip')
-310.867 000.635 000.118: require('luasnip.loaders.from_lua')
-311.072 000.071 000.071: require('luasnip.nodes.snippetProxy')
-311.081 000.167 000.096: require('luasnip.loaders.from_snipmate')
-311.240 000.091 000.091: require('luasnip.loaders.from_vscode')
-311.943 001.045: opening buffers
-312.150 000.207: BufEnter autocommands
-312.157 000.006: editing files in windows
-327.507 000.688 000.688: require('vim.diagnostic')
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.319 001.319: --- NVIM STARTING ---
-030.721 029.402: event init
-047.792 017.071: early init
-049.585 001.792: locale set
-055.317 005.732: init first window
-065.751 010.434: inits 1
-065.775 000.025: window checked
-065.783 000.008: parsing arguments
-077.866 000.266 000.266: require('vim.shared')
-078.373 000.236 000.236: require('vim._meta')
-078.386 000.497 000.261: require('vim._editor')
-078.394 000.903 000.139: require('vim._init_packages')
-078.401 011.715: init lua interpreter
-078.562 000.161: expanding arguments
-080.531 001.969: inits 2
-081.878 001.347: init highlight
-081.888 000.010: waiting for UI
-084.866 002.978: done waiting for UI
-084.916 000.050: init screen for UI
-085.278 000.361: init default mappings
-085.312 000.035: init default autocommands
-097.149 004.626 004.626: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/ftplugin.vim
-100.189 001.071 001.071: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/indent.vim
-100.744 000.057 000.057: sourcing /usr/share/nvim/archlinux.vim
-100.769 000.180 000.123: sourcing /etc/xdg/nvim/sysinit.vim
-114.486 007.066 007.066: require('keys')
-116.767 002.270 002.270: require('opts')
-119.360 000.518 000.518: require('packer.util')
-119.441 002.273 001.755: require('packer')
-121.592 000.885 000.885: require('packer.log')
-121.606 001.371 000.486: require('packer.async')
-122.581 000.395 000.395: require('packer.result')
-122.589 000.978 000.583: require('packer.jobs')
-122.606 003.115 000.766: require('packer.plugin_utils')
-123.247 000.619 000.619: require('packer.snapshot')
-124.534 007.759 001.752: require('pack')
-143.252 018.703 018.703: require('impatient')
-145.195 000.383 000.383: require('vim.treesitter.language')
-145.225 001.260 000.877: require('vim.treesitter.query')
-146.906 000.447 000.447: require('vim.treesitter.languagetree')
-147.037 000.947 000.500: require('vim.treesitter')
-147.497 001.828 000.882: require('nvim-treesitter.parsers')
-147.696 000.190 000.190: require('nvim-treesitter.utils')
-147.719 002.227 000.209: require('nvim-treesitter.ts_utils')
-147.732 002.501 000.273: require('nvim-treesitter.tsrange')
-147.854 000.116 000.116: require('nvim-treesitter.caching')
-147.890 004.072 000.195: require('nvim-treesitter.query')
-147.933 004.487 000.416: require('nvim-treesitter.configs')
-148.437 000.212 000.212: require('nvim-treesitter.info')
-148.898 000.450 000.450: require('nvim-treesitter.shell_command_selectors')
-148.976 001.005 000.343: require('nvim-treesitter.install')
-198.789 055.516 050.023: require('plugins.treesitter')
-199.156 000.076 000.076: require('telescope._extensions')
-199.170 000.197 000.121: require('telescope')
-199.903 000.086 000.086: require('plenary.bit')
-199.981 000.071 000.071: require('plenary.functional')
-200.068 000.067 000.067: require('ffi')
-200.094 000.469 000.244: require('plenary.path')
-200.107 000.558 000.089: require('plenary.strings')
-200.177 000.067 000.067: require('telescope.deprecated')
-200.582 000.238 000.238: require('plenary.log')
-200.663 000.379 000.141: require('telescope.log')
-201.029 000.245 000.245: require('plenary.job')
-201.108 000.073 000.073: require('telescope.state')
-201.123 000.454 000.136: require('telescope.utils')
-201.136 000.954 000.122: require('telescope.sorters')
-201.247 000.088 000.088: require('vim.inspect')
-201.726 000.011 000.011: require('vim.F')
-205.122 005.710 004.033: require('telescope.config')
-205.782 000.089 000.089: require('plenary.window.border')
-205.852 000.062 000.062: require('plenary.window')
-205.913 000.056 000.056: require('plenary.popup.utils')
-205.925 000.793 000.585: require('plenary.popup')
-205.993 000.065 000.065: require('telescope.pickers.scroller')
-206.062 000.064 000.064: require('telescope.actions.state')
-206.136 000.069 000.069: require('telescope.actions.utils')
-206.279 000.068 000.068: require('telescope.actions.mt')
-206.310 000.169 000.101: require('telescope.actions.set')
-206.504 000.073 000.073: require('telescope.config.resolve')
-206.510 000.147 000.075: require('telescope.pickers.entry_display')
-206.575 000.061 000.061: require('telescope.from_entry')
-206.997 007.823 000.744: require('telescope.actions')
-207.559 000.058 000.058: require('plenary.tbl')
-207.568 000.123 000.065: require('plenary.vararg.rotate')
-207.572 000.184 000.061: require('plenary.vararg')
-207.667 000.092 000.092: require('plenary.errors')
-207.677 000.352 000.076: require('plenary.async.async')
-207.862 000.182 000.182: require('plenary.async.structs')
-207.879 000.623 000.089: require('plenary.async.control')
-208.162 000.201 000.201: require('telescope.make_entry')
-208.425 000.073 000.073: require('plenary.async.util')
-208.431 000.135 000.063: require('plenary.async.tests')
-208.435 000.204 000.068: require('plenary.async')
-208.440 000.273 000.069: require('telescope.finders.async_static_finder')
-208.641 000.058 000.058: require('plenary.class')
-208.667 000.161 000.103: require('telescope._')
-208.672 000.229 000.068: require('telescope.finders.async_oneshot_finder')
-208.741 000.066 000.066: require('telescope.finders.async_job_finder')
-208.751 000.867 000.098: require('telescope.finders')
-209.003 000.075 000.075: require('telescope.debounce')
-209.169 000.161 000.161: require('telescope.mappings')
-209.256 000.081 000.081: require('telescope.pickers.highlights')
-209.330 000.069 000.069: require('telescope.pickers.window')
-209.471 000.069 000.069: require('telescope.algos.linked_list')
-209.479 000.144 000.075: require('telescope.entry_manager')
-209.542 000.061 000.061: require('telescope.pickers.multi')
-209.574 000.820 000.230: require('telescope.pickers')
-209.589 002.444 000.134: require('telescope.builtin.__lsp')
-209.612 002.607 000.163: require('telescope.builtin')
-209.917 000.224 000.224: require('fzf_lib')
-209.927 000.310 000.087: require('telescope._extensions.fzf')
-210.257 000.090 000.090: require('telescope._extensions.file_browser.utils')
-210.353 000.324 000.234: require('telescope._extensions.file_browser.actions')
-210.580 000.137 000.137: require('telescope._extensions.file_browser.make_entry')
-210.726 000.140 000.140: require('plenary.scandir')
-210.774 000.416 000.139: require('telescope._extensions.file_browser.finders')
-210.858 000.079 000.079: require('telescope._extensions.file_browser.picker')
-210.951 000.088 000.088: require('telescope._extensions.file_browser.config')
-210.957 001.019 000.112: require('telescope._extensions.file_browser')
-213.828 000.012 000.012: require('vim.keymap')
-214.133 015.325 003.356: require('plugins.telescope')
-215.166 000.060 000.060: require('notify.util.queue')
-215.175 000.142 000.083: require('notify.util')
-215.388 000.209 000.209: require('notify.config.highlights')
-215.402 000.458 000.106: require('notify.config')
-215.472 000.066 000.066: require('notify.stages')
-215.542 000.065 000.065: require('notify.service.notification')
-215.796 000.078 000.078: require('notify.animate.spring')
-215.801 000.160 000.082: require('notify.animate')
-215.809 000.262 000.102: require('notify.windows')
-216.106 000.110 000.110: require('notify.service.buffer.highlights')
-216.116 000.217 000.107: require('notify.service.buffer')
-216.123 000.311 000.094: require('notify.service')
-216.229 000.103 000.103: require('notify.stages.util')
-216.244 001.471 000.207: require('notify')
-216.328 000.080 000.080: require('nvim-tree.iterators.node-iterator')
-216.417 001.742 000.190: require('nvim-tree.utils')
-216.453 001.850 000.108: require('nvim-tree.events')
-216.712 000.089 000.089: require('nvim-tree.log')
-216.874 000.156 000.156: require('nvim-tree.git.utils')
-216.970 000.091 000.091: require('nvim-tree.git.runner')
-217.064 000.090 000.090: require('nvim-tree.watcher')
-217.075 000.536 000.110: require('nvim-tree.git')
-217.170 000.092 000.092: require('nvim-tree.explorer.watch')
-217.254 000.078 000.078: require('nvim-tree.explorer.common')
-217.514 000.128 000.128: require('nvim-tree.explorer.node-builders')
-217.619 000.099 000.099: require('nvim-tree.explorer.sorters')
-217.714 000.090 000.090: require('nvim-tree.explorer.filters')
-218.054 000.223 000.223: require('nvim-tree.view')
-218.067 000.349 000.125: require('nvim-tree.live-filter')
-218.074 000.777 000.112: require('nvim-tree.explorer.explore')
-218.180 000.102 000.102: require('nvim-tree.explorer.reload')
-218.193 001.736 000.150: require('nvim-tree.explorer')
-218.201 003.654 000.068: require('nvim-tree.core')
-218.320 000.115 000.115: require('nvim-tree.diagnostics')
-218.413 000.087 000.087: require('nvim-tree.renderer.components.padding')
-218.510 000.093 000.093: require('nvim-tree.renderer.components.icons')
-218.610 000.095 000.095: require('nvim-tree.renderer.components.full-name')
-218.693 000.078 000.078: require('nvim-tree.renderer.help')
-218.820 000.122 000.122: require('nvim-tree.renderer.components.git')
-218.949 000.124 000.124: require('nvim-tree.renderer.builder')
-219.045 000.091 000.091: require('nvim-tree.marks')
-219.065 004.592 000.133: require('nvim-tree.renderer')
-219.158 000.083 000.083: require('nvim-tree.actions.tree-modifiers.collapse-all')
-219.256 000.094 000.094: require('nvim-tree.actions.root.dir-up')
-219.354 000.092 000.092: require('nvim-tree.actions.root.change-dir')
-219.445 000.087 000.087: require('nvim-tree.actions.reloaders.reloaders')
-219.533 000.082 000.082: require('nvim-tree.actions.finders.find-file')
-219.538 005.136 000.107: require('nvim-tree.lib')
-219.654 000.112 000.112: require('nvim-tree.colors')
-219.809 000.149 000.149: require('nvim-tree.legacy')
-219.940 000.126 000.126: require('nvim-tree.actions.fs.copy-paste')
-220.210 000.120 000.120: require('nvim-tree.actions.tree-modifiers.expand-all')
-220.313 000.096 000.096: require('nvim-tree.actions.tree-modifiers.toggles')
-220.456 000.134 000.134: require('nvim-tree.actions.fs.create-file')
-220.597 000.133 000.133: require('nvim-tree.actions.fs.rename-file')
-220.741 000.133 000.133: require('nvim-tree.actions.fs.trash')
-220.840 000.093 000.093: require('nvim-tree.actions.fs.remove-file')
-220.929 000.079 000.079: require('nvim-tree.actions.moves.parent')
-221.015 000.081 000.081: require('nvim-tree.actions.moves.sibling')
-221.098 000.078 000.078: require('nvim-tree.actions.moves.item')
-221.197 000.085 000.085: require('nvim-tree.actions.finders.search-node')
-221.282 000.080 000.080: require('nvim-tree.actions.node.run-command')
-221.377 000.090 000.090: require('nvim-tree.actions.node.file-popup')
-221.479 000.097 000.097: require('nvim-tree.actions.node.system-open')
-221.574 000.084 000.084: require('nvim-tree.marks.bulk-move')
-221.586 001.639 000.257: require('nvim-tree.actions.dispatch')
-221.649 007.424 000.262: require('nvim-tree')
-221.726 000.073 000.073: require('nvim-tree.config')
-225.771 000.220 000.220: require('nvim-tree.actions')
-225.914 000.131 000.131: require('nvim-tree.actions.node.open-file')
-230.601 000.428 000.428: require('nvim-tree.marks.navigation')
-230.613 000.910 000.482: require('nvim-tree.api')
-230.739 001.334 000.423: require('nvim-tree.keymap')
-232.960 001.583 001.583: require('nvim-web-devicons')
-237.002 022.861 012.097: require('plugins.nvim-tree')
-237.294 000.076 000.076: require('lualine_require')
-237.847 000.737 000.661: require('lualine')
-237.917 000.063 000.063: require('plugins.linecolor')
-245.353 000.079 000.079: require('lualine.utils.mode')
-247.774 010.763 009.884: require('plugins.lualine')
-247.783 146.914 006.650: sourcing /home/sxrdusr/.config/nvim/init.lua
-247.800 009.697: sourcing vimrc file(s)
-248.092 000.053 000.053: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-249.536 000.063 000.063: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/filetype.lua
-252.421 002.539 002.539: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/filetype.vim
-255.626 000.259 000.259: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/syntax/synload.vim
-255.875 002.652 002.393: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/syntax/syntax.vim
-264.298 002.416 002.416: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/gzip.vim
-264.568 000.071 000.071: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/health.vim
-268.136 002.317 002.317: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-268.581 003.942 001.625: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/matchit.vim
-269.046 000.402 000.402: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/matchparen.vim
-269.193 000.077 000.077: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-269.596 000.021 000.021: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-269.616 000.360 000.339: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/rplugin.vim
-269.864 000.186 000.186: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/shada.vim
-270.034 000.101 000.101: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/spellfile.vim
-270.474 000.343 000.343: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/tarPlugin.vim
-270.876 000.269 000.269: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/tohtml.vim
-271.243 000.249 000.249: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/tutor.vim
-273.325 001.871 001.871: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/zipPlugin.vim
-275.008 001.252 001.252: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-276.428 000.132 000.132: require('lspsaga')
-276.723 000.115 000.115: require('lspsaga.window')
-276.745 000.219 000.104: require('lspsaga.libs')
-277.875 000.496 000.496: require('vim.lsp.log')
-278.559 000.676 000.676: require('vim.lsp.protocol')
-279.115 000.243 000.243: require('vim.lsp._snippet')
-279.299 000.178 000.178: require('vim.highlight')
-279.329 000.762 000.341: require('vim.lsp.util')
-279.348 002.182 000.248: require('vim.lsp.handlers')
-279.618 000.266 000.266: require('vim.lsp.rpc')
-279.748 000.123 000.123: require('vim.lsp.sync')
-279.924 000.169 000.169: require('vim.lsp.buf')
-280.123 000.193 000.193: require('vim.lsp.diagnostic')
-280.307 000.178 000.178: require('vim.lsp.codelens')
-280.454 003.614 000.502: require('vim.lsp')
-280.531 000.069 000.069: require('lspsaga.wrap')
-280.541 003.792 000.109: require('lspsaga.codeaction')
-280.582 004.146 000.135: require('lspsaga.lightbulb')
-280.712 000.090 000.090: require('lspsaga.lspkind')
-280.888 000.054 000.054: require('mason-core.path')
-280.905 000.127 000.073: require('mason.settings')
-281.098 000.053 000.053: require('mason-core.functional.data')
-281.107 000.120 000.067: require('mason-core.functional.function')
-281.164 000.255 000.135: require('mason-core.platform')
-281.169 000.446 000.064: require('mason')
-281.386 000.115 000.115: require('mason-core.functional')
-281.494 000.089 000.089: require('mason-core.functional.list')
-281.542 000.350 000.146: require('mason.api.command')
-281.730 000.105 000.105: require('mason-core.log')
-281.740 000.194 000.089: require('mason-lspconfig')
-281.808 000.064 000.064: require('mason-lspconfig.settings')
-281.901 000.076 000.076: require('mason-lspconfig.lspconfig_hook')
-282.200 000.294 000.294: require('lspconfig.util')
-282.434 000.073 000.073: require('mason-core.functional.table')
-282.539 000.313 000.240: require('mason-lspconfig.mappings.server')
-282.810 000.086 000.086: require('mason-core.async')
-282.878 000.061 000.061: require('mason-core.async.uv')
-282.892 000.271 000.124: require('mason-core.fs')
-282.962 000.066 000.066: require('mason-core.optional')
-283.034 000.068 000.068: require('mason-core.EventEmitter')
-283.206 000.167 000.167: require('mason-registry.index')
-283.228 000.682 000.110: require('mason-registry')
-283.298 000.066 000.066: require('mason-lspconfig.server_config_extensions')
-283.428 000.125 000.125: require('lspconfig.configs')
-283.560 000.087 000.087: require('lspconfig.server_configurations.omnisharp')
-283.773 000.072 000.072: require('mason-lspconfig.ensure_installed')
-284.028 000.072 000.072: require('mason-core.result')
-284.440 000.229 000.229: require('mason-core.process')
-284.519 000.070 000.070: require('mason-core.functional.relation')
-284.595 000.067 000.067: require('mason-core.functional.logic')
-284.608 000.468 000.101: require('mason-core.spawn')
-284.698 000.085 000.085: require('mason-core.receipt')
-284.781 000.071 000.071: require('mason-core.functional.string')
-284.810 000.776 000.153: require('mason-core.installer.context')
-284.890 000.076 000.076: require('mason-core.installer.linker')
-284.972 000.078 000.078: require('mason-core.async.control')
-284.981 001.107 000.105: require('mason-core.installer')
-285.078 000.094 000.094: require('mason-core.installer.handle')
-285.427 000.066 000.066: require('mason-core.managers.powershell')
-285.433 000.140 000.074: require('mason-core.fetch')
-285.436 000.205 000.065: require('mason-core.managers.cargo.client')
-285.472 000.319 000.114: require('mason-core.managers.cargo')
-285.581 000.104 000.104: require('mason-core.managers.composer')
-285.755 000.169 000.169: require('mason-core.managers.gem')
-285.850 000.089 000.089: require('mason-core.managers.git')
-286.034 000.095 000.095: require('mason-core.managers.std')
-286.124 000.084 000.084: require('mason-core.managers.github.client')
-286.134 000.279 000.099: require('mason-core.managers.github')
-286.323 000.186 000.186: require('mason-core.managers.go')
-286.458 000.129 000.129: require('mason-core.managers.luarocks')
-286.603 000.139 000.139: require('mason-core.managers.npm')
-286.811 000.202 000.202: require('mason-core.managers.pip3')
-286.831 001.746 000.130: require('mason-core.package.version-check')
-286.851 003.071 000.124: require('mason-core.package')
-287.185 000.212 000.212: require('mason-registry.lua-language-server')
-287.599 000.121 000.121: require('mason-registry.clangd')
-287.807 000.156 000.156: require('mason-registry.rust-analyzer')
-287.971 000.059 000.059: require('mason-core.notify')
-288.048 000.070 000.070: require('mason-core.functional.number')
-288.105 000.288 000.159: require('mason-lspconfig.api.command')
-288.111 012.924 001.940: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-289.627 000.116 000.116: sourcing /tmp/.mount_nvimc6bcRu/usr/share/nvim/runtime/plugin/man.lua
-289.926 012.241: loading rtp plugins
-291.669 000.068 000.068: require('Comment.config')
-291.770 000.093 000.093: require('Comment.utils')
-291.845 000.070 000.070: require('Comment.opfunc')
-291.913 000.063 000.063: require('Comment.extra')
-291.931 000.454 000.161: require('Comment.api')
-292.336 000.918 000.463: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-293.020 000.065 000.065: require('luasnip.util.types')
-293.097 000.070 000.070: require('luasnip.util.ext_opts')
-293.175 000.073 000.073: require('luasnip.extras.filetype_functions')
-293.253 000.073 000.073: require('luasnip.session')
-293.586 000.123 000.123: require('luasnip.util.util')
-293.668 000.075 000.075: require('luasnip.nodes.util')
-293.740 000.067 000.067: require('luasnip.util.events')
-293.759 000.415 000.150: require('luasnip.nodes.node')
-293.874 000.069 000.069: require('luasnip.util.extend_decorator')
-293.890 000.632 000.147: require('luasnip.nodes.insertNode')
-294.141 000.080 000.080: require('luasnip.util.mark')
-294.372 000.092 000.092: require('luasnip.nodes.textNode')
-295.150 000.699 000.699: require('luasnip.util._builtin_vars')
-295.399 001.020 000.321: require('luasnip.util.environ')
-295.489 000.083 000.083: require('luasnip.util.pattern_tokenizer')
-295.557 000.063 000.063: require('luasnip.util.dict')
-295.649 000.087 000.087: require('luasnip.session.snippet_collection')
-295.706 001.558 000.213: require('luasnip.nodes.snippet')
-295.735 001.841 000.203: require('luasnip.nodes.choiceNode')
-295.954 000.158 000.158: require('luasnip.nodes.functionNode')
-296.138 000.175 000.175: require('luasnip.nodes.dynamicNode')
-296.263 000.119 000.119: require('luasnip.nodes.restoreNode')
-296.351 000.082 000.082: require('luasnip.extras')
-298.885 000.081 000.081: require('luasnip.util.str')
-298.898 002.540 002.459: require('luasnip.extras.fmt')
-298.964 000.061 000.061: require('luasnip.extras.expand_conditions')
-299.206 000.074 000.074: require('luasnip.util.parser.neovim_ast')
-310.443 000.088 000.088: require('luasnip.util.directed_graph')
-310.466 011.416 011.254: require('luasnip.util.parser.ast_utils')
-310.629 000.069 000.069: require('luasnip.util.functions')
-310.643 000.173 000.103: require('luasnip.util.parser.ast_parser')
-310.828 000.181 000.181: require('luasnip.util.parser.neovim_parser')
-310.841 011.869 000.099: require('luasnip.util.parser')
-310.920 000.075 000.075: require('luasnip.nodes.absolute_indexer')
-311.421 018.589 000.756: require('luasnip.config')
-311.587 019.067 000.477: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-312.464 000.049 000.049: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-313.335 000.094 000.094: require('indent_blankline/utils')
-313.345 000.250 000.155: require('indent_blankline')
-313.879 000.080 000.080: require('indent_blankline.commands')
-314.049 001.124 000.794: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/plugin/indent_blankline.vim
-314.476 000.103 000.103: require('lsp-colors')
-315.271 000.951 000.848: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-316.489 000.830 000.830: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-317.341 000.380 000.380: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-317.862 000.085 000.085: require('cmp.utils.api')
-318.005 000.073 000.073: require('cmp.types.cmp')
-318.157 000.075 000.075: require('cmp.utils.misc')
-318.188 000.177 000.102: require('cmp.types.lsp')
-318.250 000.057 000.057: require('cmp.types.vim')
-318.255 000.386 000.079: require('cmp.types')
-318.323 000.065 000.065: require('cmp.utils.highlight')
-318.445 000.056 000.056: require('cmp.utils.debug')
-318.463 000.135 000.078: require('cmp.utils.autocmd')
-319.108 001.399 000.728: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-319.363 000.080 000.080: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-319.779 000.099 000.099: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-320.253 000.163 000.163: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-320.855 000.065 000.065: require('nvim-treesitter.statusline')
-320.945 000.083 000.083: require('nvim-treesitter.query_predicates')
-320.952 000.230 000.082: require('nvim-treesitter')
-322.295 000.193 000.193: require('vim.treesitter.highlighter')
-322.662 000.704 000.510: require('nvim-treesitter.highlight')
-323.417 002.749 001.816: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-323.932 000.256 000.256: require('treesitter-context')
-323.942 000.298 000.043: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-324.311 000.082 000.082: require('nvim-treesitter-refactor')
-324.529 000.327 000.245: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-324.909 000.111 000.111: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-325.289 000.079 000.079: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-325.655 000.092 000.092: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-326.420 000.419 000.419: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-326.828 000.061 000.061: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-327.883 000.564 000.564: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-328.663 000.487 000.487: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-329.274 000.359 000.359: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-330.130 000.601 000.601: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-330.437 000.030 000.030: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-330.720 000.045 000.045: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-332.100 010.893: loading packages
-333.792 000.490 000.490: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-338.131 005.488 004.998: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-338.944 000.173 000.173: require('cmp.utils.char')
-338.960 000.260 000.087: require('cmp.utils.str')
-339.037 000.072 000.072: require('cmp.utils.pattern')
-339.257 000.059 000.059: require('cmp.utils.buffer')
-339.268 000.156 000.097: require('cmp.utils.keymap')
-339.279 000.237 000.082: require('cmp.utils.feedkeys')
-339.372 000.089 000.089: require('cmp.utils.async')
-339.505 000.058 000.058: require('cmp.utils.cache')
-339.512 000.135 000.076: require('cmp.context')
-339.751 000.077 000.077: require('cmp.config.mapping')
-339.918 000.085 000.085: require('cmp.config.compare')
-339.924 000.165 000.080: require('cmp.config.default')
-339.950 000.350 000.108: require('cmp.config')
-340.139 000.066 000.066: require('cmp.matcher')
-340.154 000.199 000.133: require('cmp.entry')
-340.168 000.653 000.104: require('cmp.source')
-340.306 000.058 000.058: require('cmp.utils.event')
-340.467 000.084 000.084: require('cmp.utils.window')
-340.474 000.163 000.078: require('cmp.view.docs_view')
-340.593 000.116 000.116: require('cmp.view.custom_entries_view')
-340.706 000.109 000.109: require('cmp.view.wildmenu_entries_view')
-340.794 000.083 000.083: require('cmp.view.native_entries_view')
-340.869 000.071 000.071: require('cmp.view.ghost_text_view')
-340.886 000.715 000.116: require('cmp.view')
-340.961 002.378 000.217: require('cmp.core')
-341.208 000.064 000.064: require('cmp.config.sources')
-341.271 000.055 000.055: require('cmp.config.window')
-341.368 002.921 000.423: require('cmp')
-341.641 000.060 000.060: require('cmp_buffer.timer')
-341.652 000.145 000.085: require('cmp_buffer.buffer')
-341.658 000.223 000.078: require('cmp_buffer.source')
-341.662 000.289 000.066: require('cmp_buffer')
-341.699 003.345 000.135: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-342.059 000.148 000.148: require('cmp_cmdline')
-342.093 000.222 000.075: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-342.424 000.070 000.070: require('cmp_nvim_lsp.source')
-342.434 000.147 000.076: require('cmp_nvim_lsp')
-342.494 000.251 000.105: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-342.793 000.115 000.115: require('cmp_path')
-342.826 000.184 000.070: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-343.121 000.086 000.086: require('cmp_luasnip')
-343.190 000.203 000.118: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-343.339 001.544: loading after plugins
-343.447 000.108: inits 3
-343.452 000.005: reading ShaDa
-343.839 000.070 000.070: require('luasnip.loaders._caches')
-343.956 000.110 000.110: require('luasnip.util.path')
-344.050 000.088 000.088: require('luasnip.loaders.util')
-344.269 000.099 000.099: require('luasnip.loaders')
-344.305 000.250 000.151: require('luasnip')
-344.318 000.637 000.119: require('luasnip.loaders.from_lua')
-344.553 000.102 000.102: require('luasnip.nodes.snippetProxy')
-344.567 000.203 000.101: require('luasnip.loaders.from_snipmate')
-344.694 000.088 000.088: require('luasnip.loaders.from_vscode')
-345.712 001.333: opening buffers
-345.922 000.210: BufEnter autocommands
-345.929 000.007: editing files in windows
-363.002 000.669 000.669: require('vim.diagnostic')
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.322 001.322: --- NVIM STARTING ---
-029.108 027.786: event init
-046.110 017.002: early init
-047.930 001.821: locale set
-053.675 005.744: init first window
-064.058 010.383: inits 1
-064.083 000.025: window checked
-064.091 000.008: parsing arguments
-075.019 000.133 000.133: require('vim.shared')
-075.240 000.108 000.108: require('vim._meta')
-075.247 000.218 000.109: require('vim._editor')
-075.251 000.404 000.054: require('vim._init_packages')
-075.254 010.759: init lua interpreter
-075.336 000.082: expanding arguments
-077.080 001.744: inits 2
-077.695 000.615: init highlight
-077.699 000.004: waiting for UI
-080.125 002.426: done waiting for UI
-080.175 000.050: init screen for UI
-080.470 000.294: init default mappings
-080.497 000.027: init default autocommands
-091.758 004.623 004.623: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/ftplugin.vim
-095.325 001.210 001.210: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/indent.vim
-095.907 000.058 000.058: sourcing /usr/share/nvim/archlinux.vim
-095.932 000.182 000.125: sourcing /etc/xdg/nvim/sysinit.vim
-111.541 008.988 008.988: require('keys')
-115.565 004.013 004.013: require('opts')
-120.844 001.016 001.016: require('packer.util')
-120.952 004.563 003.547: require('packer')
-124.638 001.239 001.239: require('packer.log')
-124.655 002.203 000.964: require('packer.async')
-126.342 000.685 000.685: require('packer.result')
-126.357 001.694 001.009: require('packer.jobs')
-126.384 005.338 001.441: require('packer.plugin_utils')
-127.605 001.102 001.102: require('packer.snapshot')
-129.209 013.625 002.622: require('pack')
-145.528 016.305 016.305: require('impatient')
-146.779 000.225 000.225: require('vim.treesitter.language')
-146.806 000.728 000.503: require('vim.treesitter.query')
-148.454 000.354 000.354: require('vim.treesitter.languagetree')
-148.543 000.890 000.536: require('vim.treesitter')
-148.929 001.667 000.777: require('nvim-treesitter.parsers')
-149.095 000.158 000.158: require('nvim-treesitter.utils')
-149.110 002.017 000.192: require('nvim-treesitter.ts_utils')
-149.127 002.315 000.298: require('nvim-treesitter.tsrange')
-149.233 000.101 000.101: require('nvim-treesitter.caching')
-149.259 003.314 000.170: require('nvim-treesitter.query')
-149.296 003.607 000.293: require('nvim-treesitter.configs')
-149.827 000.157 000.157: require('nvim-treesitter.info')
-150.068 000.234 000.234: require('nvim-treesitter.shell_command_selectors')
-150.133 000.656 000.264: require('nvim-treesitter.install')
-198.197 052.650 048.387: require('plugins.treesitter')
-198.978 000.175 000.175: require('telescope._extensions')
-198.988 000.419 000.244: require('telescope')
-199.670 000.080 000.080: require('plenary.bit')
-199.751 000.074 000.074: require('plenary.functional')
-199.872 000.035 000.035: require('ffi')
-199.897 000.444 000.255: require('plenary.path')
-199.911 000.544 000.100: require('plenary.strings')
-199.991 000.077 000.077: require('telescope.deprecated')
-200.551 000.253 000.253: require('plenary.log')
-200.660 000.556 000.304: require('telescope.log')
-200.909 000.124 000.124: require('plenary.job')
-200.988 000.073 000.073: require('telescope.state')
-201.011 000.344 000.147: require('telescope.utils')
-201.022 001.025 000.124: require('telescope.sorters')
-201.131 000.085 000.085: require('vim.inspect')
-201.401 000.009 000.009: require('vim.F')
-205.141 005.915 004.175: require('telescope.config')
-205.454 000.098 000.098: require('plenary.window.border')
-206.220 000.759 000.759: require('plenary.window')
-206.291 000.062 000.062: require('plenary.popup.utils')
-206.300 001.140 000.221: require('plenary.popup')
-206.374 000.070 000.070: require('telescope.pickers.scroller')
-206.471 000.092 000.092: require('telescope.actions.state')
-206.548 000.072 000.072: require('telescope.actions.utils')
-206.700 000.070 000.070: require('telescope.actions.mt')
-206.731 000.178 000.108: require('telescope.actions.set')
-206.953 000.091 000.091: require('telescope.config.resolve')
-206.959 000.171 000.080: require('telescope.pickers.entry_display')
-207.019 000.056 000.056: require('telescope.from_entry')
-207.478 008.486 000.793: require('telescope.actions')
-208.123 000.061 000.061: require('plenary.tbl')
-208.134 000.133 000.073: require('plenary.vararg.rotate')
-208.138 000.196 000.062: require('plenary.vararg')
-208.205 000.064 000.064: require('plenary.errors')
-208.218 000.340 000.080: require('plenary.async.async')
-208.295 000.074 000.074: require('plenary.async.structs')
-208.310 000.514 000.100: require('plenary.async.control')
-208.644 000.244 000.244: require('telescope.make_entry')
-208.929 000.077 000.077: require('plenary.async.util')
-208.935 000.142 000.066: require('plenary.async.tests')
-208.940 000.220 000.078: require('plenary.async')
-208.944 000.295 000.075: require('telescope.finders.async_static_finder')
-209.164 000.060 000.060: require('plenary.class')
-209.192 000.177 000.117: require('telescope._')
-209.197 000.250 000.073: require('telescope.finders.async_oneshot_finder')
-209.270 000.070 000.070: require('telescope.finders.async_job_finder')
-209.280 000.965 000.106: require('telescope.finders')
-209.749 000.157 000.157: require('telescope.debounce')
-209.958 000.201 000.201: require('telescope.mappings')
-210.050 000.086 000.086: require('telescope.pickers.highlights')
-210.123 000.067 000.067: require('telescope.pickers.window')
-210.263 000.066 000.066: require('telescope.algos.linked_list')
-210.271 000.143 000.078: require('telescope.entry_manager')
-210.337 000.064 000.064: require('telescope.pickers.multi')
-210.372 001.087 000.369: require('telescope.pickers')
-210.386 002.716 000.149: require('telescope.builtin.__lsp')
-210.436 002.947 000.231: require('telescope.builtin')
-210.773 000.249 000.249: require('fzf_lib')
-210.783 000.341 000.092: require('telescope._extensions.fzf')
-211.122 000.091 000.091: require('telescope._extensions.file_browser.utils')
-211.200 000.319 000.229: require('telescope._extensions.file_browser.actions')
-211.438 000.145 000.145: require('telescope._extensions.file_browser.make_entry')
-211.592 000.147 000.147: require('plenary.scandir')
-211.643 000.439 000.147: require('telescope._extensions.file_browser.finders')
-211.726 000.078 000.078: require('telescope._extensions.file_browser.picker')
-211.821 000.091 000.091: require('telescope._extensions.file_browser.config')
-211.827 001.030 000.102: require('telescope._extensions.file_browser')
-215.018 000.012 000.012: require('vim.keymap')
-215.222 017.012 003.777: require('plugins.telescope')
-216.619 000.066 000.066: require('notify.util.queue')
-216.628 000.405 000.339: require('notify.util')
-216.852 000.220 000.220: require('notify.config.highlights')
-216.866 000.729 000.104: require('notify.config')
-217.028 000.158 000.158: require('notify.stages')
-217.107 000.072 000.072: require('notify.service.notification')
-217.362 000.090 000.090: require('notify.animate.spring')
-217.368 000.164 000.074: require('notify.animate')
-217.376 000.264 000.100: require('notify.windows')
-217.666 000.105 000.105: require('notify.service.buffer.highlights')
-217.677 000.209 000.104: require('notify.service.buffer')
-217.683 000.304 000.095: require('notify.service')
-217.796 000.110 000.110: require('notify.stages.util')
-217.806 001.754 000.117: require('notify')
-217.895 000.086 000.086: require('nvim-tree.iterators.node-iterator')
-217.998 002.054 000.213: require('nvim-tree.utils')
-218.018 002.239 000.185: require('nvim-tree.events')
-218.391 000.101 000.101: require('nvim-tree.log')
-218.565 000.167 000.167: require('nvim-tree.git.utils')
-218.670 000.100 000.100: require('nvim-tree.git.runner')
-218.777 000.102 000.102: require('nvim-tree.watcher')
-218.810 000.653 000.184: require('nvim-tree.git')
-218.907 000.093 000.093: require('nvim-tree.explorer.watch')
-218.987 000.075 000.075: require('nvim-tree.explorer.common')
-219.196 000.087 000.087: require('nvim-tree.explorer.node-builders')
-219.280 000.078 000.078: require('nvim-tree.explorer.sorters')
-219.363 000.078 000.078: require('nvim-tree.explorer.filters')
-219.691 000.235 000.235: require('nvim-tree.view')
-219.701 000.334 000.099: require('nvim-tree.live-filter')
-219.708 000.677 000.100: require('nvim-tree.explorer.explore')
-219.838 000.127 000.127: require('nvim-tree.explorer.reload')
-219.849 001.827 000.201: require('nvim-tree.explorer')
-219.857 004.139 000.073: require('nvim-tree.core')
-219.989 000.129 000.129: require('nvim-tree.diagnostics')
-220.084 000.089 000.089: require('nvim-tree.renderer.components.padding')
-220.180 000.091 000.091: require('nvim-tree.renderer.components.icons')
-220.281 000.097 000.097: require('nvim-tree.renderer.components.full-name')
-220.366 000.080 000.080: require('nvim-tree.renderer.help')
-220.500 000.128 000.128: require('nvim-tree.renderer.components.git')
-220.628 000.123 000.123: require('nvim-tree.renderer.builder')
-220.724 000.091 000.091: require('nvim-tree.marks')
-220.744 005.108 000.142: require('nvim-tree.renderer')
-220.838 000.084 000.084: require('nvim-tree.actions.tree-modifiers.collapse-all')
-220.936 000.093 000.093: require('nvim-tree.actions.root.dir-up')
-221.036 000.096 000.096: require('nvim-tree.actions.root.change-dir')
-221.124 000.082 000.082: require('nvim-tree.actions.reloaders.reloaders')
-221.213 000.083 000.083: require('nvim-tree.actions.finders.find-file')
-221.219 005.692 000.146: require('nvim-tree.lib')
-221.342 000.120 000.120: require('nvim-tree.colors')
-221.500 000.151 000.151: require('nvim-tree.legacy')
-221.623 000.118 000.118: require('nvim-tree.actions.fs.copy-paste')
-221.826 000.086 000.086: require('nvim-tree.actions.tree-modifiers.expand-all')
-221.919 000.087 000.087: require('nvim-tree.actions.tree-modifiers.toggles')
-222.020 000.093 000.093: require('nvim-tree.actions.fs.create-file')
-222.111 000.086 000.086: require('nvim-tree.actions.fs.rename-file')
-222.241 000.124 000.124: require('nvim-tree.actions.fs.trash')
-222.345 000.098 000.098: require('nvim-tree.actions.fs.remove-file')
-222.427 000.075 000.075: require('nvim-tree.actions.moves.parent')
-222.511 000.079 000.079: require('nvim-tree.actions.moves.sibling')
-222.593 000.076 000.076: require('nvim-tree.actions.moves.item')
-222.688 000.082 000.082: require('nvim-tree.actions.finders.search-node')
-222.768 000.074 000.074: require('nvim-tree.actions.node.run-command')
-222.863 000.091 000.091: require('nvim-tree.actions.node.file-popup')
-222.971 000.103 000.103: require('nvim-tree.actions.node.system-open')
-223.078 000.099 000.099: require('nvim-tree.marks.bulk-move')
-223.086 001.453 000.198: require('nvim-tree.actions.dispatch')
-223.158 007.841 000.307: require('nvim-tree')
-223.239 000.076 000.076: require('nvim-tree.config')
-227.868 000.224 000.224: require('nvim-tree.actions')
-228.009 000.128 000.128: require('nvim-tree.actions.node.open-file')
-232.689 000.182 000.182: require('nvim-tree.marks.navigation')
-232.700 000.678 000.496: require('nvim-tree.api')
-232.818 001.097 000.419: require('nvim-tree.keymap')
-234.928 001.392 001.392: require('nvim-web-devicons')
-238.932 023.703 012.946: require('plugins.nvim-tree')
-239.221 000.075 000.075: require('lualine_require')
-239.776 000.738 000.663: require('lualine')
-239.865 000.078 000.078: require('plugins.linecolor')
-248.350 000.085 000.085: require('lualine.utils.mode')
-250.201 011.260 010.360: require('plugins.lualine')
-250.210 154.176 006.621: sourcing /home/sxrdusr/.config/nvim/init.lua
-250.227 009.539: sourcing vimrc file(s)
-250.562 000.098 000.098: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-251.765 000.124 000.124: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/filetype.lua
-253.184 001.213 001.213: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/filetype.vim
-255.318 000.259 000.259: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/syntax/synload.vim
-255.565 001.872 001.613: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/syntax/syntax.vim
-261.462 001.488 001.488: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/gzip.vim
-261.738 000.176 000.176: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/health.vim
-264.612 001.404 001.404: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-265.083 003.248 001.845: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/matchit.vim
-265.547 000.397 000.397: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/matchparen.vim
-265.699 000.083 000.083: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-266.102 000.023 000.023: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-266.122 000.357 000.335: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/rplugin.vim
-266.369 000.188 000.188: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/shada.vim
-266.530 000.085 000.085: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/spellfile.vim
-266.916 000.319 000.319: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/tarPlugin.vim
-267.194 000.210 000.210: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/tohtml.vim
-267.330 000.070 000.070: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/tutor.vim
-268.418 001.023 001.023: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/zipPlugin.vim
-269.943 001.270 001.270: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-271.634 000.129 000.129: require('lspsaga')
-271.896 000.081 000.081: require('lspsaga.window')
-271.917 000.184 000.103: require('lspsaga.libs')
-272.998 000.411 000.411: require('vim.lsp.log')
-273.656 000.651 000.651: require('vim.lsp.protocol')
-274.070 000.175 000.175: require('vim.lsp._snippet')
-274.203 000.126 000.126: require('vim.highlight')
-274.231 000.567 000.267: require('vim.lsp.util')
-274.265 001.891 000.262: require('vim.lsp.handlers')
-274.453 000.184 000.184: require('vim.lsp.rpc')
-274.578 000.119 000.119: require('vim.lsp.sync')
-274.751 000.165 000.165: require('vim.lsp.buf')
-274.881 000.123 000.123: require('vim.lsp.diagnostic')
-275.010 000.123 000.123: require('vim.lsp.codelens')
-275.159 003.151 000.545: require('vim.lsp')
-275.236 000.070 000.070: require('lspsaga.wrap')
-275.247 003.325 000.105: require('lspsaga.codeaction')
-275.287 003.644 000.134: require('lspsaga.lightbulb')
-275.414 000.089 000.089: require('lspsaga.lspkind')
-275.590 000.054 000.054: require('mason-core.path')
-275.607 000.128 000.074: require('mason.settings')
-275.797 000.052 000.052: require('mason-core.functional.data')
-275.805 000.118 000.066: require('mason-core.functional.function')
-275.841 000.229 000.112: require('mason-core.platform')
-275.846 000.421 000.063: require('mason')
-276.050 000.105 000.105: require('mason-core.functional')
-276.160 000.089 000.089: require('mason-core.functional.list')
-276.208 000.340 000.145: require('mason.api.command')
-276.402 000.108 000.108: require('mason-core.log')
-276.410 000.197 000.090: require('mason-lspconfig')
-276.490 000.077 000.077: require('mason-lspconfig.settings')
-276.585 000.076 000.076: require('mason-lspconfig.lspconfig_hook')
-276.984 000.394 000.394: require('lspconfig.util')
-277.217 000.066 000.066: require('mason-core.functional.table')
-277.322 000.301 000.235: require('mason-lspconfig.mappings.server')
-277.585 000.082 000.082: require('mason-core.async')
-277.652 000.061 000.061: require('mason-core.async.uv')
-277.666 000.262 000.119: require('mason-core.fs')
-277.743 000.073 000.073: require('mason-core.optional')
-277.812 000.064 000.064: require('mason-core.EventEmitter')
-277.971 000.155 000.155: require('mason-registry.index')
-277.991 000.663 000.110: require('mason-registry')
-278.063 000.068 000.068: require('mason-lspconfig.server_config_extensions')
-278.159 000.090 000.090: require('lspconfig.configs')
-278.284 000.081 000.081: require('lspconfig.server_configurations.omnisharp')
-278.517 000.076 000.076: require('mason-lspconfig.ensure_installed')
-278.766 000.073 000.073: require('mason-core.result')
-279.162 000.221 000.221: require('mason-core.process')
-279.239 000.069 000.069: require('mason-core.functional.relation')
-279.313 000.067 000.067: require('mason-core.functional.logic')
-279.329 000.457 000.101: require('mason-core.spawn')
-279.415 000.081 000.081: require('mason-core.receipt')
-279.500 000.070 000.070: require('mason-core.functional.string')
-279.530 000.758 000.149: require('mason-core.installer.context')
-279.606 000.072 000.072: require('mason-core.installer.linker')
-279.689 000.079 000.079: require('mason-core.async.control')
-279.698 001.086 000.104: require('mason-core.installer')
-279.814 000.113 000.113: require('mason-core.installer.handle')
-280.159 000.069 000.069: require('mason-core.managers.powershell')
-280.165 000.145 000.076: require('mason-core.fetch')
-280.169 000.203 000.059: require('mason-core.managers.cargo.client')
-280.199 000.311 000.107: require('mason-core.managers.cargo')
-280.306 000.103 000.103: require('mason-core.managers.composer')
-280.419 000.108 000.108: require('mason-core.managers.gem')
-280.507 000.083 000.083: require('mason-core.managers.git')
-280.683 000.090 000.090: require('mason-core.managers.std')
-280.766 000.078 000.078: require('mason-core.managers.github.client')
-280.780 000.268 000.100: require('mason-core.managers.github')
-280.887 000.104 000.104: require('mason-core.managers.go')
-281.031 000.139 000.139: require('mason-core.managers.luarocks')
-281.318 000.281 000.281: require('mason-core.managers.npm')
-281.444 000.120 000.120: require('mason-core.managers.pip3')
-281.459 001.638 000.121: require('mason-core.package.version-check')
-281.468 002.944 000.107: require('mason-core.package')
-281.574 000.088 000.088: require('mason-registry.lua-language-server')
-281.992 000.116 000.116: require('mason-registry.clangd')
-282.246 000.198 000.198: require('mason-registry.rust-analyzer')
-282.408 000.057 000.057: require('mason-core.notify')
-282.484 000.066 000.066: require('mason-core.functional.number')
-282.540 000.284 000.160: require('mason-lspconfig.api.command')
-282.547 012.419 002.143: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-283.519 000.094 000.094: sourcing /tmp/.mount_nvimq1iep8/usr/share/nvim/runtime/plugin/man.lua
-283.761 008.799: loading rtp plugins
-285.454 000.072 000.072: require('Comment.config')
-285.549 000.088 000.088: require('Comment.utils')
-285.625 000.070 000.070: require('Comment.opfunc')
-285.695 000.065 000.065: require('Comment.extra')
-285.711 000.458 000.163: require('Comment.api')
-286.065 000.870 000.412: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-286.768 000.069 000.069: require('luasnip.util.types')
-286.846 000.071 000.071: require('luasnip.util.ext_opts')
-286.923 000.072 000.072: require('luasnip.extras.filetype_functions')
-286.996 000.068 000.068: require('luasnip.session')
-287.298 000.115 000.115: require('luasnip.util.util')
-287.380 000.076 000.076: require('luasnip.nodes.util')
-287.446 000.060 000.060: require('luasnip.util.events')
-287.467 000.372 000.121: require('luasnip.nodes.node')
-287.583 000.069 000.069: require('luasnip.util.extend_decorator')
-287.594 000.593 000.152: require('luasnip.nodes.insertNode')
-287.879 000.086 000.086: require('luasnip.util.mark')
-288.102 000.087 000.087: require('luasnip.nodes.textNode')
-288.965 000.784 000.784: require('luasnip.util._builtin_vars')
-289.156 001.047 000.263: require('luasnip.util.environ')
-289.245 000.082 000.082: require('luasnip.util.pattern_tokenizer')
-289.318 000.068 000.068: require('luasnip.util.dict')
-289.407 000.084 000.084: require('luasnip.session.snippet_collection')
-289.464 001.578 000.210: require('luasnip.nodes.snippet')
-289.482 001.884 000.220: require('luasnip.nodes.choiceNode')
-289.656 000.108 000.108: require('luasnip.nodes.functionNode')
-289.832 000.169 000.169: require('luasnip.nodes.dynamicNode')
-289.954 000.115 000.115: require('luasnip.nodes.restoreNode')
-291.929 001.969 001.969: require('luasnip.extras')
-292.090 000.062 000.062: require('luasnip.util.str')
-292.099 000.159 000.097: require('luasnip.extras.fmt')
-292.163 000.060 000.060: require('luasnip.extras.expand_conditions')
-292.402 000.072 000.072: require('luasnip.util.parser.neovim_ast')
-302.428 000.095 000.095: require('luasnip.util.directed_graph')
-302.448 010.211 010.044: require('luasnip.util.parser.ast_utils')
-302.614 000.071 000.071: require('luasnip.util.functions')
-302.625 000.171 000.100: require('luasnip.util.parser.ast_parser')
-302.778 000.150 000.150: require('luasnip.util.parser.neovim_parser')
-302.795 010.626 000.094: require('luasnip.util.parser')
-302.866 000.066 000.066: require('luasnip.nodes.absolute_indexer')
-303.377 016.798 000.767: require('luasnip.config')
-303.545 017.302 000.504: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-304.431 000.049 000.049: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-305.901 000.877 000.877: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-306.799 000.424 000.424: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-307.353 000.100 000.100: require('cmp.utils.api')
-307.486 000.063 000.063: require('cmp.types.cmp')
-307.645 000.078 000.078: require('cmp.utils.misc')
-307.676 000.183 000.105: require('cmp.types.lsp')
-307.736 000.056 000.056: require('cmp.types.vim')
-307.742 000.382 000.079: require('cmp.types')
-307.810 000.065 000.065: require('cmp.utils.highlight')
-307.933 000.056 000.056: require('cmp.utils.debug')
-307.951 000.136 000.080: require('cmp.utils.autocmd')
-308.471 001.284 000.601: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-308.727 000.077 000.077: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-309.148 000.103 000.103: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-309.640 000.196 000.196: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-310.274 000.069 000.069: require('nvim-treesitter.statusline')
-310.361 000.080 000.080: require('nvim-treesitter.query_predicates')
-310.368 000.231 000.083: require('nvim-treesitter')
-311.777 000.241 000.241: require('vim.treesitter.highlighter')
-312.243 000.859 000.618: require('nvim-treesitter.highlight')
-312.932 002.859 001.768: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-313.468 000.264 000.264: require('treesitter-context')
-313.478 000.308 000.044: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-313.858 000.083 000.083: require('nvim-treesitter-refactor')
-314.072 000.327 000.244: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-314.445 000.113 000.113: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-314.840 000.083 000.083: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-315.176 000.092 000.092: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-315.945 000.415 000.415: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/plugin/Tabular.vim
-316.320 000.060 000.060: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-317.353 000.525 000.525: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-318.205 000.523 000.523: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-318.818 000.355 000.355: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-319.671 000.596 000.596: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vimux/plugin/vimux.vim
-319.991 000.030 000.030: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-320.278 000.047 000.047: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-321.792 010.515: loading packages
-323.446 000.470 000.470: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/autoload/tabular.vim
-327.698 005.367 004.898: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/tabular/after/plugin/TabularMaps.vim
-328.389 000.115 000.115: require('cmp.utils.char')
-328.404 000.200 000.085: require('cmp.utils.str')
-328.474 000.065 000.065: require('cmp.utils.pattern')
-328.690 000.060 000.060: require('cmp.utils.buffer')
-328.713 000.165 000.105: require('cmp.utils.keymap')
-328.722 000.244 000.078: require('cmp.utils.feedkeys')
-328.808 000.082 000.082: require('cmp.utils.async')
-328.940 000.058 000.058: require('cmp.utils.cache')
-328.948 000.134 000.076: require('cmp.context')
-329.187 000.077 000.077: require('cmp.config.mapping')
-329.353 000.084 000.084: require('cmp.config.compare')
-329.359 000.164 000.080: require('cmp.config.default')
-329.384 000.345 000.104: require('cmp.config')
-329.559 000.066 000.066: require('cmp.matcher')
-329.570 000.182 000.115: require('cmp.entry')
-329.584 000.633 000.106: require('cmp.source')
-329.722 000.058 000.058: require('cmp.utils.event')
-329.918 000.086 000.086: require('cmp.utils.window')
-329.930 000.203 000.117: require('cmp.view.docs_view')
-330.048 000.115 000.115: require('cmp.view.custom_entries_view')
-330.163 000.110 000.110: require('cmp.view.wildmenu_entries_view')
-330.251 000.082 000.082: require('cmp.view.native_entries_view')
-330.331 000.076 000.076: require('cmp.view.ghost_text_view')
-330.346 000.758 000.114: require('cmp.view')
-330.416 002.325 000.209: require('cmp.core')
-330.712 000.066 000.066: require('cmp.config.sources')
-330.779 000.059 000.059: require('cmp.config.window')
-330.877 002.905 000.453: require('cmp')
-331.159 000.067 000.067: require('cmp_buffer.timer')
-331.171 000.152 000.086: require('cmp_buffer.buffer')
-331.177 000.233 000.081: require('cmp_buffer.source')
-331.181 000.299 000.066: require('cmp_buffer')
-331.276 003.361 000.157: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-331.654 000.153 000.153: require('cmp_cmdline')
-331.685 000.231 000.079: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-332.024 000.071 000.071: require('cmp_nvim_lsp.source')
-332.032 000.150 000.079: require('cmp_nvim_lsp')
-332.086 000.248 000.098: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-332.388 000.114 000.114: require('cmp_path')
-332.423 000.187 000.073: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-332.706 000.086 000.086: require('cmp_luasnip')
-332.774 000.201 000.115: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-332.928 001.541: loading after plugins
-332.955 000.027: inits 3
-332.969 000.014: reading ShaDa
-333.378 000.068 000.068: require('luasnip.loaders._caches')
-333.497 000.113 000.113: require('luasnip.util.path')
-333.589 000.086 000.086: require('luasnip.loaders.util')
-333.813 000.099 000.099: require('luasnip.loaders')
-333.855 000.260 000.161: require('luasnip')
-333.862 000.635 000.108: require('luasnip.loaders.from_lua')
-334.083 000.069 000.069: require('luasnip.nodes.snippetProxy')
-334.095 000.168 000.099: require('luasnip.loaders.from_snipmate')
-334.263 000.091 000.091: require('luasnip.loaders.from_vscode')
-334.302 000.439: opening buffers
-334.522 000.221: BufEnter autocommands
-334.529 000.007: editing files in windows
-349.099 000.632 000.632: require('vim.diagnostic')
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.170 001.170: --- NVIM STARTING ---
-030.530 029.361: event init
-047.939 017.409: early init
-049.639 001.699: locale set
-055.163 005.524: init first window
-064.966 009.803: inits 1
-064.989 000.023: window checked
-064.997 000.009: parsing arguments
-076.902 000.266 000.266: require('vim.shared')
-077.425 000.241 000.241: require('vim._meta')
-077.438 000.513 000.273: require('vim._editor')
-077.446 000.901 000.121: require('vim._init_packages')
-077.454 011.555: init lua interpreter
-077.612 000.158: expanding arguments
-079.498 001.886: inits 2
-080.971 001.472: init highlight
-080.983 000.012: waiting for UI
-084.759 003.776: done waiting for UI
-084.791 000.032: init screen for UI
-085.030 000.239: init default mappings
-085.056 000.027: init default autocommands
-095.848 004.168 004.168: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/ftplugin.vim
-098.579 001.149 001.149: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/indent.vim
-099.101 000.057 000.057: sourcing /usr/share/nvim/archlinux.vim
-099.127 000.187 000.129: sourcing /etc/xdg/nvim/sysinit.vim
-113.526 006.784 006.784: require('keys')
-118.451 004.902 004.902: require('opts')
-123.870 001.098 001.098: require('packer.util')
-124.002 004.774 003.676: require('packer')
-128.144 001.664 001.664: require('packer.log')
-128.165 002.615 000.951: require('packer.async')
-129.891 000.733 000.733: require('packer.result')
-129.909 001.735 001.003: require('packer.jobs')
-129.934 005.826 001.476: require('packer.plugin_utils')
-131.122 001.143 001.143: require('packer.snapshot')
-132.785 014.316 002.573: require('pack')
-150.741 017.940 017.940: require('impatient')
-152.207 000.384 000.384: require('vim.treesitter.language')
-152.241 001.024 000.640: require('vim.treesitter.query')
-154.123 000.382 000.382: require('vim.treesitter.languagetree')
-154.235 000.878 000.495: require('vim.treesitter')
-154.661 001.800 000.922: require('nvim-treesitter.parsers')
-154.846 000.176 000.176: require('nvim-treesitter.utils')
-154.867 002.236 000.260: require('nvim-treesitter.ts_utils')
-154.881 002.633 000.396: require('nvim-treesitter.tsrange')
-154.997 000.111 000.111: require('nvim-treesitter.caching')
-155.031 003.990 000.223: require('nvim-treesitter.query')
-155.071 004.197 000.207: require('nvim-treesitter.configs')
-155.678 000.124 000.124: require('nvim-treesitter.info')
-155.935 000.250 000.250: require('nvim-treesitter.shell_command_selectors')
-156.003 000.658 000.284: require('nvim-treesitter.install')
-196.263 045.502 040.647: require('plugins.treesitter')
-197.005 000.512 000.512: require('telescope._extensions')
-197.018 000.617 000.105: require('telescope')
-199.073 000.401 000.401: require('plenary.bit')
-199.180 000.097 000.097: require('plenary.functional')
-199.240 000.036 000.036: require('ffi')
-199.268 000.818 000.284: require('plenary.path')
-199.284 001.226 000.408: require('plenary.strings')
-199.445 000.157 000.157: require('telescope.deprecated')
-200.029 000.248 000.248: require('plenary.log')
-200.134 000.426 000.178: require('telescope.log')
-200.532 000.213 000.213: require('plenary.job')
-200.629 000.089 000.089: require('telescope.state')
-200.646 000.505 000.204: require('telescope.utils')
-200.657 001.204 000.273: require('telescope.sorters')
-200.775 000.085 000.085: require('vim.inspect')
-201.684 000.015 000.015: require('vim.F')
-205.169 007.578 004.892: require('telescope.config')
-205.905 000.559 000.559: require('plenary.window.border')
-206.101 000.187 000.187: require('plenary.window')
-206.179 000.070 000.070: require('plenary.popup.utils')
-206.188 001.009 000.193: require('plenary.popup')
-206.310 000.117 000.117: require('telescope.pickers.scroller')
-206.392 000.076 000.076: require('telescope.actions.state')
-206.466 000.069 000.069: require('telescope.actions.utils')
-206.670 000.115 000.115: require('telescope.actions.mt')
-206.709 000.238 000.123: require('telescope.actions.set')
-206.910 000.069 000.069: require('telescope.config.resolve')
-206.917 000.151 000.082: require('telescope.pickers.entry_display')
-207.087 000.167 000.167: require('telescope.from_entry')
-207.560 010.538 001.131: require('telescope.actions')
-208.168 000.061 000.061: require('plenary.tbl')
-208.181 000.140 000.079: require('plenary.vararg.rotate')
-208.185 000.204 000.064: require('plenary.vararg')
-208.245 000.057 000.057: require('plenary.errors')
-208.257 000.341 000.080: require('plenary.async.async')
-208.335 000.075 000.075: require('plenary.async.structs')
-208.347 000.510 000.095: require('plenary.async.control')
-208.643 000.208 000.208: require('telescope.make_entry')
-208.923 000.079 000.079: require('plenary.async.util')
-208.929 000.145 000.066: require('plenary.async.tests')
-208.934 000.214 000.069: require('plenary.async')
-208.939 000.290 000.075: require('telescope.finders.async_static_finder')
-209.161 000.064 000.064: require('plenary.class')
-209.184 000.169 000.105: require('telescope._')
-209.189 000.247 000.079: require('telescope.finders.async_oneshot_finder')
-209.264 000.072 000.072: require('telescope.finders.async_job_finder')
-209.274 000.922 000.105: require('telescope.finders')
-209.542 000.077 000.077: require('telescope.debounce')
-209.743 000.195 000.195: require('telescope.mappings')
-209.838 000.088 000.088: require('telescope.pickers.highlights')
-209.914 000.071 000.071: require('telescope.pickers.window')
-210.064 000.074 000.074: require('telescope.algos.linked_list')
-210.072 000.153 000.080: require('telescope.entry_manager')
-210.141 000.066 000.066: require('telescope.pickers.multi')
-210.172 000.894 000.244: require('telescope.pickers')
-210.187 002.467 000.140: require('telescope.builtin.__lsp')
-210.211 002.643 000.176: require('telescope.builtin')
-210.537 000.239 000.239: require('fzf_lib')
-210.552 000.335 000.096: require('telescope._extensions.fzf')
-210.882 000.094 000.094: require('telescope._extensions.file_browser.utils')
-210.984 000.343 000.249: require('telescope._extensions.file_browser.actions')
-211.232 000.144 000.144: require('telescope._extensions.file_browser.make_entry')
-211.387 000.149 000.149: require('plenary.scandir')
-211.441 000.452 000.159: require('telescope._extensions.file_browser.finders')
-211.528 000.082 000.082: require('telescope._extensions.file_browser.picker')
-211.669 000.136 000.136: require('telescope._extensions.file_browser.config')
-211.676 001.113 000.101: require('telescope._extensions.file_browser')
-215.882 000.019 000.019: require('vim.keymap')
-216.141 019.866 004.600: require('plugins.telescope')
-217.337 000.107 000.107: require('notify.util.queue')
-217.352 000.200 000.092: require('notify.util')
-217.591 000.235 000.235: require('notify.config.highlights')
-217.607 000.539 000.104: require('notify.config')
-217.684 000.073 000.073: require('notify.stages')
-217.757 000.067 000.067: require('notify.service.notification')
-218.011 000.090 000.090: require('notify.animate.spring')
-218.017 000.152 000.062: require('notify.animate')
-218.024 000.263 000.111: require('notify.windows')
-218.321 000.139 000.139: require('notify.service.buffer.highlights')
-218.332 000.232 000.093: require('notify.service.buffer')
-218.340 000.312 000.080: require('notify.service')
-218.468 000.126 000.126: require('notify.stages.util')
-218.481 001.512 000.133: require('notify')
-218.572 000.087 000.087: require('nvim-tree.iterators.node-iterator')
-218.665 001.808 000.209: require('nvim-tree.utils')
-218.683 001.902 000.094: require('nvim-tree.events')
-218.980 000.091 000.091: require('nvim-tree.log')
-219.156 000.170 000.170: require('nvim-tree.git.utils')
-219.354 000.192 000.192: require('nvim-tree.git.runner')
-219.493 000.134 000.134: require('nvim-tree.watcher')
-219.506 000.725 000.138: require('nvim-tree.git')
-219.640 000.130 000.130: require('nvim-tree.explorer.watch')
-219.762 000.117 000.117: require('nvim-tree.explorer.common')
-220.044 000.111 000.111: require('nvim-tree.explorer.node-builders')
-220.134 000.084 000.084: require('nvim-tree.explorer.sorters')
-220.217 000.078 000.078: require('nvim-tree.explorer.filters')
-220.565 000.247 000.247: require('nvim-tree.view')
-220.581 000.359 000.112: require('nvim-tree.live-filter')
-220.588 000.766 000.134: require('nvim-tree.explorer.explore')
-220.709 000.117 000.117: require('nvim-tree.explorer.reload')
-220.718 002.031 000.176: require('nvim-tree.explorer')
-220.726 004.007 000.074: require('nvim-tree.core')
-220.909 000.180 000.180: require('nvim-tree.diagnostics')
-221.015 000.099 000.099: require('nvim-tree.renderer.components.padding')
-221.118 000.098 000.098: require('nvim-tree.renderer.components.icons')
-221.226 000.103 000.103: require('nvim-tree.renderer.components.full-name')
-221.318 000.088 000.088: require('nvim-tree.renderer.help')
-221.462 000.138 000.138: require('nvim-tree.renderer.components.git')
-221.608 000.142 000.142: require('nvim-tree.renderer.builder')
-221.714 000.101 000.101: require('nvim-tree.marks')
-221.737 005.101 000.146: require('nvim-tree.renderer')
-221.833 000.087 000.087: require('nvim-tree.actions.tree-modifiers.collapse-all')
-221.937 000.098 000.098: require('nvim-tree.actions.root.dir-up')
-222.038 000.097 000.097: require('nvim-tree.actions.root.change-dir')
-222.133 000.090 000.090: require('nvim-tree.actions.reloaders.reloaders')
-222.232 000.093 000.093: require('nvim-tree.actions.finders.find-file')
-222.237 005.683 000.118: require('nvim-tree.lib')
-222.366 000.125 000.125: require('nvim-tree.colors')
-222.542 000.170 000.170: require('nvim-tree.legacy')
-222.681 000.133 000.133: require('nvim-tree.actions.fs.copy-paste')
-222.892 000.091 000.091: require('nvim-tree.actions.tree-modifiers.expand-all')
-223.020 000.122 000.122: require('nvim-tree.actions.tree-modifiers.toggles')
-223.130 000.103 000.103: require('nvim-tree.actions.fs.create-file')
-223.238 000.102 000.102: require('nvim-tree.actions.fs.rename-file')
-223.383 000.139 000.139: require('nvim-tree.actions.fs.trash')
-223.530 000.141 000.141: require('nvim-tree.actions.fs.remove-file')
-223.668 000.128 000.128: require('nvim-tree.actions.moves.parent')
-223.754 000.081 000.081: require('nvim-tree.actions.moves.sibling')
-223.838 000.078 000.078: require('nvim-tree.actions.moves.item')
-223.939 000.092 000.092: require('nvim-tree.actions.finders.search-node')
-224.022 000.078 000.078: require('nvim-tree.actions.node.run-command')
-224.119 000.092 000.092: require('nvim-tree.actions.node.file-popup')
-224.227 000.103 000.103: require('nvim-tree.actions.node.system-open')
-224.338 000.098 000.098: require('nvim-tree.marks.bulk-move')
-224.347 001.659 000.211: require('nvim-tree.actions.dispatch')
-224.407 008.093 000.322: require('nvim-tree')
-224.486 000.074 000.074: require('nvim-tree.config')
-229.437 000.237 000.237: require('nvim-tree.actions')
-229.603 000.154 000.154: require('nvim-tree.actions.node.open-file')
-233.354 000.233 000.233: require('nvim-tree.marks.navigation')
-233.364 000.784 000.551: require('nvim-tree.api')
-233.479 001.040 000.255: require('nvim-tree.keymap')
-236.336 002.170 002.170: require('nvim-web-devicons')
-240.525 024.376 012.609: require('plugins.nvim-tree')
-240.824 000.077 000.077: require('lualine_require')
-241.367 000.729 000.652: require('lualine')
-241.438 000.064 000.064: require('plugins.linecolor')
-246.560 000.082 000.082: require('lualine.utils.mode')
-253.179 012.644 011.770: require('plugins.lualine')
-253.188 153.957 007.627: sourcing /home/sxrdusr/.config/nvim/init.lua
-253.205 008.688: sourcing vimrc file(s)
-253.467 000.053 000.053: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-254.341 000.051 000.051: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/filetype.lua
-255.729 001.187 001.187: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/filetype.vim
-257.642 000.267 000.267: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/syntax/synload.vim
-257.880 001.755 001.488: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/syntax/syntax.vim
-263.910 001.409 001.409: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/gzip.vim
-264.075 000.066 000.066: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/health.vim
-267.945 002.388 002.388: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-268.522 004.362 001.974: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/matchit.vim
-269.029 000.421 000.421: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/matchparen.vim
-269.214 000.092 000.092: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-269.707 000.034 000.034: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-269.729 000.427 000.394: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/rplugin.vim
-270.014 000.201 000.201: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/shada.vim
-270.210 000.104 000.104: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/spellfile.vim
-270.625 000.323 000.323: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/tarPlugin.vim
-270.959 000.232 000.232: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/tohtml.vim
-271.133 000.083 000.083: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/tutor.vim
-272.220 000.996 000.996: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/zipPlugin.vim
-273.782 001.296 001.296: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-275.117 001.158 001.158: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-275.996 000.097 000.097: sourcing /tmp/.mount_nvimjb3Vyr/usr/share/nvim/runtime/plugin/man.lua
-276.202 008.682: loading rtp plugins
-277.568 000.100 000.100: require('Comment.config')
-277.655 000.079 000.079: require('Comment.utils')
-277.724 000.064 000.064: require('Comment.opfunc')
-277.788 000.059 000.059: require('Comment.extra')
-277.800 000.452 000.150: require('Comment.api')
-278.245 000.948 000.496: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-278.890 000.062 000.062: require('luasnip.util.types')
-279.005 000.108 000.108: require('luasnip.util.ext_opts')
-279.079 000.068 000.068: require('luasnip.extras.filetype_functions')
-279.148 000.065 000.065: require('luasnip.session')
-279.402 000.098 000.098: require('luasnip.util.util')
-279.473 000.066 000.066: require('luasnip.nodes.util')
-279.534 000.056 000.056: require('luasnip.util.events')
-279.547 000.319 000.099: require('luasnip.nodes.node')
-279.674 000.069 000.069: require('luasnip.util.extend_decorator')
-279.686 000.533 000.146: require('luasnip.nodes.insertNode')
-279.919 000.074 000.074: require('luasnip.util.mark')
-280.169 000.139 000.139: require('luasnip.nodes.textNode')
-281.040 000.795 000.795: require('luasnip.util._builtin_vars')
-281.351 001.174 000.379: require('luasnip.util.environ')
-281.437 000.079 000.079: require('luasnip.util.pattern_tokenizer')
-281.498 000.056 000.056: require('luasnip.util.dict')
-281.575 000.072 000.072: require('luasnip.session.snippet_collection')
-281.623 001.697 000.177: require('luasnip.nodes.snippet')
-281.637 001.947 000.176: require('luasnip.nodes.choiceNode')
-281.746 000.092 000.092: require('luasnip.nodes.functionNode')
-281.890 000.138 000.138: require('luasnip.nodes.dynamicNode')
-282.120 000.223 000.223: require('luasnip.nodes.restoreNode')
-282.206 000.080 000.080: require('luasnip.extras')
-282.337 000.058 000.058: require('luasnip.util.str')
-282.346 000.132 000.074: require('luasnip.extras.fmt')
-282.406 000.056 000.056: require('luasnip.extras.expand_conditions')
-282.614 000.065 000.065: require('luasnip.util.parser.neovim_ast')
-292.804 000.087 000.087: require('luasnip.util.directed_graph')
-292.822 010.347 010.195: require('luasnip.util.parser.ast_utils')
-293.128 000.099 000.099: require('luasnip.util.functions')
-293.176 000.350 000.251: require('luasnip.util.parser.ast_parser')
-293.310 000.128 000.128: require('luasnip.util.parser.neovim_parser')
-293.321 010.908 000.083: require('luasnip.util.parser')
-293.386 000.062 000.062: require('luasnip.nodes.absolute_indexer')
-294.059 015.332 000.858: require('luasnip.config')
-294.221 015.792 000.460: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-294.977 000.049 000.049: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-295.967 000.371 000.371: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-296.524 000.083 000.083: require('cmp.utils.api')
-296.647 000.059 000.059: require('cmp.types.cmp')
-296.839 000.119 000.119: require('cmp.utils.misc')
-297.081 000.429 000.310: require('cmp.types.lsp')
-297.226 000.138 000.138: require('cmp.types.vim')
-297.234 000.702 000.076: require('cmp.types')
-297.305 000.067 000.067: require('cmp.utils.highlight')
-297.431 000.059 000.059: require('cmp.utils.debug')
-297.450 000.140 000.081: require('cmp.utils.autocmd')
-298.078 001.706 000.713: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-298.486 000.147 000.147: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-299.035 000.067 000.067: require('nvim-treesitter.statusline')
-299.120 000.078 000.078: require('nvim-treesitter.query_predicates')
-299.127 000.230 000.085: require('nvim-treesitter')
-300.467 000.465 000.465: require('vim.treesitter.highlighter')
-300.868 001.027 000.563: require('nvim-treesitter.highlight')
-301.483 002.641 001.383: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-301.941 000.234 000.234: require('treesitter-context')
-301.952 000.276 000.042: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-302.323 000.085 000.085: require('nvim-treesitter-refactor')
-302.482 000.270 000.185: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-302.850 000.115 000.115: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-303.268 000.080 000.080: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-303.688 000.067 000.067: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-304.627 000.442 000.442: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-305.382 000.516 000.516: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-305.980 000.344 000.344: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-307.047 007.082: loading packages
-308.141 000.120 000.120: require('cmp.utils.char')
-308.156 000.213 000.094: require('cmp.utils.str')
-308.227 000.067 000.067: require('cmp.utils.pattern')
-308.445 000.058 000.058: require('cmp.utils.buffer')
-308.459 000.156 000.099: require('cmp.utils.keymap')
-308.467 000.235 000.078: require('cmp.utils.feedkeys')
-308.560 000.090 000.090: require('cmp.utils.async')
-308.700 000.060 000.060: require('cmp.utils.cache')
-308.708 000.142 000.081: require('cmp.context')
-308.960 000.082 000.082: require('cmp.config.mapping')
-309.130 000.083 000.083: require('cmp.config.compare')
-309.135 000.165 000.082: require('cmp.config.default')
-309.162 000.364 000.117: require('cmp.config')
-309.340 000.067 000.067: require('cmp.matcher')
-309.351 000.185 000.119: require('cmp.entry')
-309.365 000.655 000.105: require('cmp.source')
-309.506 000.060 000.060: require('cmp.utils.event')
-309.707 000.096 000.096: require('cmp.utils.window')
-309.715 000.204 000.108: require('cmp.view.docs_view')
-309.873 000.119 000.119: require('cmp.view.custom_entries_view')
-309.983 000.105 000.105: require('cmp.view.wildmenu_entries_view')
-310.074 000.086 000.086: require('cmp.view.native_entries_view')
-310.155 000.077 000.077: require('cmp.view.ghost_text_view')
-310.173 000.804 000.152: require('cmp.view')
-310.282 002.463 000.258: require('cmp.core')
-310.552 000.080 000.080: require('cmp.config.sources')
-310.621 000.061 000.061: require('cmp.config.window')
-310.730 003.033 000.429: require('cmp')
-311.020 000.062 000.062: require('cmp_buffer.timer')
-311.032 000.152 000.089: require('cmp_buffer.buffer')
-311.037 000.238 000.087: require('cmp_buffer.source')
-311.042 000.307 000.069: require('cmp_buffer')
-311.140 003.495 000.155: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-311.571 000.162 000.162: require('cmp_cmdline')
-311.603 000.289 000.127: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-311.961 000.072 000.072: require('cmp_nvim_lsp.source')
-311.969 000.157 000.085: require('cmp_nvim_lsp')
-312.022 000.252 000.095: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-312.343 000.115 000.115: require('cmp_path')
-312.378 000.198 000.083: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-313.734 000.697 000.697: require('vim.lsp.protocol')
-313.987 000.246 000.246: require('vim.lsp._snippet')
-314.131 000.137 000.137: require('vim.highlight')
-314.170 001.507 000.427: require('vim.lsp.util')
-314.178 001.594 000.087: require('cmp_luasnip')
-314.253 001.713 000.119: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-314.335 001.341: loading after plugins
-314.364 000.028: inits 3
-314.376 000.012: reading ShaDa
-314.772 000.072 000.072: require('luasnip.loaders._caches')
-314.885 000.106 000.106: require('luasnip.util.path')
-314.974 000.083 000.083: require('luasnip.loaders.util')
-315.202 000.105 000.105: require('luasnip.loaders')
-315.244 000.265 000.160: require('luasnip')
-315.251 000.649 000.123: require('luasnip.loaders.from_lua')
-315.568 000.075 000.075: require('luasnip.nodes.snippetProxy')
-315.581 000.183 000.107: require('luasnip.loaders.from_snipmate')
-315.717 000.098 000.098: require('luasnip.loaders.from_vscode')
-315.757 000.452: opening buffers
-315.967 000.210: BufEnter autocommands
-315.973 000.006: editing files in windows
-332.180 000.541 000.541: require('vim.diagnostic')
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.440 001.440: --- NVIM STARTING ---
-033.506 032.067: event init
-051.827 018.320: early init
-053.736 001.909: locale set
-059.318 005.583: init first window
-069.727 010.408: inits 1
-069.752 000.026: window checked
-069.761 000.008: parsing arguments
-081.649 000.270 000.270: require('vim.shared')
-082.171 000.244 000.244: require('vim._meta')
-082.184 000.512 000.267: require('vim._editor')
-082.192 000.908 000.126: require('vim._init_packages')
-082.199 011.531: init lua interpreter
-082.371 000.172: expanding arguments
-084.237 001.866: inits 2
-085.649 001.412: init highlight
-085.660 000.011: waiting for UI
-088.638 002.978: done waiting for UI
-088.708 000.071: init screen for UI
-089.210 000.502: init default mappings
-089.266 000.055: init default autocommands
-099.603 004.098 004.098: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/ftplugin.vim
-102.742 001.689 001.689: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/indent.vim
-103.345 000.057 000.057: sourcing /usr/share/nvim/archlinux.vim
-103.371 000.184 000.127: sourcing /etc/xdg/nvim/sysinit.vim
-120.420 009.662 009.662: require('keys')
-125.718 005.274 005.274: require('opts')
-131.048 001.043 001.043: require('packer.util')
-131.141 004.676 003.633: require('packer')
-135.503 001.909 001.909: require('packer.log')
-135.523 002.818 000.910: require('packer.async')
-137.175 000.657 000.657: require('packer.result')
-137.192 001.660 001.003: require('packer.jobs')
-137.218 005.968 001.490: require('packer.plugin_utils')
-138.471 001.209 001.209: require('packer.snapshot')
-139.913 014.177 002.324: require('pack')
-157.971 018.042 018.042: require('impatient')
-159.695 000.228 000.228: require('vim.treesitter.language')
-159.725 000.906 000.678: require('vim.treesitter.query')
-161.084 000.390 000.390: require('vim.treesitter.languagetree')
-161.183 000.765 000.374: require('vim.treesitter')
-161.604 001.571 000.806: require('nvim-treesitter.parsers')
-161.821 000.208 000.208: require('nvim-treesitter.utils')
-161.843 001.948 000.169: require('nvim-treesitter.ts_utils')
-161.860 002.128 000.180: require('nvim-treesitter.tsrange')
-162.042 000.176 000.176: require('nvim-treesitter.caching')
-162.071 003.524 000.313: require('nvim-treesitter.query')
-162.111 003.996 000.471: require('nvim-treesitter.configs')
-162.983 000.371 000.371: require('nvim-treesitter.info')
-163.160 000.166 000.166: require('nvim-treesitter.shell_command_selectors')
-163.230 000.973 000.436: require('nvim-treesitter.install')
-201.529 043.537 038.568: require('plugins.treesitter')
-201.858 000.117 000.117: require('telescope._extensions')
-201.869 000.215 000.098: require('telescope')
-202.748 000.087 000.087: require('plenary.bit')
-202.837 000.080 000.080: require('plenary.functional')
-202.894 000.036 000.036: require('ffi')
-202.920 000.413 000.210: require('plenary.path')
-202.941 000.534 000.120: require('plenary.strings')
-203.036 000.087 000.087: require('telescope.deprecated')
-203.433 000.180 000.180: require('plenary.log')
-203.526 000.350 000.170: require('telescope.log')
-203.805 000.143 000.143: require('plenary.job')
-203.893 000.081 000.081: require('telescope.state')
-203.912 000.380 000.156: require('telescope.utils')
-203.928 000.886 000.156: require('telescope.sorters')
-204.097 000.144 000.144: require('vim.inspect')
-205.037 000.017 000.017: require('vim.F')
-208.736 006.621 004.954: require('telescope.config')
-209.238 000.193 000.193: require('plenary.window.border')
-209.784 000.538 000.538: require('plenary.window')
-209.860 000.069 000.069: require('plenary.popup.utils')
-209.870 001.122 000.323: require('plenary.popup')
-209.955 000.081 000.081: require('telescope.pickers.scroller')
-210.034 000.073 000.073: require('telescope.actions.state')
-210.120 000.080 000.080: require('telescope.actions.utils')
-210.388 000.082 000.082: require('telescope.actions.mt')
-210.427 000.302 000.220: require('telescope.actions.set')
-210.812 000.085 000.085: require('telescope.config.resolve')
-210.821 000.232 000.147: require('telescope.pickers.entry_display')
-210.890 000.066 000.066: require('telescope.from_entry')
-211.423 009.549 000.972: require('telescope.actions')
-212.041 000.064 000.064: require('plenary.tbl')
-212.051 000.140 000.076: require('plenary.vararg.rotate')
-212.055 000.208 000.068: require('plenary.vararg')
-212.122 000.064 000.064: require('plenary.errors')
-212.132 000.357 000.085: require('plenary.async.async')
-212.210 000.075 000.075: require('plenary.async.structs')
-212.223 000.527 000.095: require('plenary.async.control')
-212.539 000.229 000.229: require('telescope.make_entry')
-212.832 000.078 000.078: require('plenary.async.util')
-212.839 000.148 000.070: require('plenary.async.tests')
-212.844 000.222 000.075: require('plenary.async')
-212.849 000.304 000.082: require('telescope.finders.async_static_finder')
-213.073 000.065 000.065: require('plenary.class')
-213.101 000.176 000.110: require('telescope._')
-213.107 000.255 000.079: require('telescope.finders.async_oneshot_finder')
-213.182 000.072 000.072: require('telescope.finders.async_job_finder')
-213.196 000.968 000.108: require('telescope.finders')
-213.485 000.082 000.082: require('telescope.debounce')
-213.656 000.164 000.164: require('telescope.mappings')
-213.782 000.120 000.120: require('telescope.pickers.highlights')
-213.862 000.074 000.074: require('telescope.pickers.window')
-214.038 000.079 000.079: require('telescope.algos.linked_list')
-214.047 000.179 000.101: require('telescope.entry_manager')
-214.124 000.074 000.074: require('telescope.pickers.multi')
-214.157 000.957 000.264: require('telescope.pickers')
-214.173 002.597 000.145: require('telescope.builtin.__lsp')
-214.216 002.785 000.188: require('telescope.builtin')
-214.575 000.265 000.265: require('fzf_lib')
-214.587 000.364 000.099: require('telescope._extensions.fzf')
-214.921 000.101 000.101: require('telescope._extensions.file_browser.utils')
-215.026 000.349 000.248: require('telescope._extensions.file_browser.actions')
-215.273 000.154 000.154: require('telescope._extensions.file_browser.make_entry')
-215.417 000.138 000.138: require('plenary.scandir')
-215.468 000.437 000.146: require('telescope._extensions.file_browser.finders')
-215.551 000.079 000.079: require('telescope._extensions.file_browser.picker')
-215.658 000.103 000.103: require('telescope._extensions.file_browser.config')
-215.665 001.067 000.100: require('telescope._extensions.file_browser')
-220.007 000.023 000.023: require('vim.keymap')
-220.326 018.786 004.781: require('plugins.telescope')
-221.609 000.069 000.069: require('notify.util.queue')
-221.623 000.194 000.125: require('notify.util')
-221.878 000.251 000.251: require('notify.config.highlights')
-221.888 000.546 000.101: require('notify.config')
-222.030 000.137 000.137: require('notify.stages')
-222.195 000.158 000.158: require('notify.service.notification')
-222.535 000.066 000.066: require('notify.animate.spring')
-222.543 000.234 000.168: require('notify.animate')
-222.554 000.353 000.119: require('notify.windows')
-222.793 000.082 000.082: require('notify.service.buffer.highlights')
-222.814 000.184 000.102: require('notify.service.buffer')
-222.820 000.261 000.077: require('notify.service')
-222.910 000.087 000.087: require('notify.stages.util')
-222.920 001.678 000.135: require('notify')
-222.997 000.073 000.073: require('nvim-tree.iterators.node-iterator')
-223.085 001.979 000.229: require('nvim-tree.utils')
-223.099 002.132 000.153: require('nvim-tree.events')
-223.342 000.070 000.070: require('nvim-tree.log')
-223.507 000.159 000.159: require('nvim-tree.git.utils')
-223.603 000.090 000.090: require('nvim-tree.git.runner')
-223.692 000.085 000.085: require('nvim-tree.watcher')
-223.706 000.526 000.124: require('nvim-tree.git')
-223.825 000.116 000.116: require('nvim-tree.explorer.watch')
-223.921 000.091 000.091: require('nvim-tree.explorer.common')
-224.186 000.113 000.113: require('nvim-tree.explorer.node-builders')
-224.289 000.096 000.096: require('nvim-tree.explorer.sorters')
-224.436 000.142 000.142: require('nvim-tree.explorer.filters')
-224.920 000.367 000.367: require('nvim-tree.view')
-224.935 000.493 000.126: require('nvim-tree.live-filter')
-224.948 000.968 000.124: require('nvim-tree.explorer.explore')
-225.061 000.110 000.110: require('nvim-tree.explorer.reload')
-225.071 001.969 000.158: require('nvim-tree.explorer')
-225.111 004.209 000.108: require('nvim-tree.core')
-225.253 000.138 000.138: require('nvim-tree.diagnostics')
-225.338 000.080 000.080: require('nvim-tree.renderer.components.padding')
-225.425 000.082 000.082: require('nvim-tree.renderer.components.icons')
-225.518 000.089 000.089: require('nvim-tree.renderer.components.full-name')
-225.601 000.078 000.078: require('nvim-tree.renderer.help')
-225.719 000.113 000.113: require('nvim-tree.renderer.components.git')
-225.868 000.144 000.144: require('nvim-tree.renderer.builder')
-225.977 000.104 000.104: require('nvim-tree.marks')
-226.002 005.207 000.172: require('nvim-tree.renderer')
-226.097 000.083 000.083: require('nvim-tree.actions.tree-modifiers.collapse-all')
-226.187 000.085 000.085: require('nvim-tree.actions.root.dir-up')
-226.284 000.093 000.093: require('nvim-tree.actions.root.change-dir')
-226.372 000.083 000.083: require('nvim-tree.actions.reloaders.reloaders')
-226.462 000.084 000.084: require('nvim-tree.actions.finders.find-file')
-226.467 005.755 000.119: require('nvim-tree.lib')
-226.592 000.121 000.121: require('nvim-tree.colors')
-226.766 000.169 000.169: require('nvim-tree.legacy')
-226.916 000.145 000.145: require('nvim-tree.actions.fs.copy-paste')
-227.109 000.085 000.085: require('nvim-tree.actions.tree-modifiers.expand-all')
-227.195 000.080 000.080: require('nvim-tree.actions.tree-modifiers.toggles')
-227.297 000.091 000.091: require('nvim-tree.actions.fs.create-file')
-227.396 000.094 000.094: require('nvim-tree.actions.fs.rename-file')
-227.529 000.127 000.127: require('nvim-tree.actions.fs.trash')
-227.629 000.094 000.094: require('nvim-tree.actions.fs.remove-file')
-227.737 000.102 000.102: require('nvim-tree.actions.moves.parent')
-227.819 000.077 000.077: require('nvim-tree.actions.moves.sibling')
-227.903 000.079 000.079: require('nvim-tree.actions.moves.item')
-228.001 000.087 000.087: require('nvim-tree.actions.finders.search-node')
-228.117 000.111 000.111: require('nvim-tree.actions.node.run-command')
-228.214 000.092 000.092: require('nvim-tree.actions.node.file-popup')
-228.325 000.106 000.106: require('nvim-tree.actions.node.system-open')
-228.423 000.087 000.087: require('nvim-tree.marks.bulk-move')
-228.432 001.507 000.196: require('nvim-tree.actions.dispatch')
-228.491 008.030 000.333: require('nvim-tree')
-228.567 000.071 000.071: require('nvim-tree.config')
-233.557 000.315 000.315: require('nvim-tree.actions')
-233.708 000.138 000.138: require('nvim-tree.actions.node.open-file')
-237.087 000.092 000.092: require('nvim-tree.marks.navigation')
-237.098 000.268 000.177: require('nvim-tree.api')
-237.135 000.443 000.175: require('nvim-tree.keymap')
-238.686 001.052 001.052: require('nvim-web-devicons')
-244.255 023.921 013.872: require('plugins.nvim-tree')
-245.221 000.395 000.395: require('lualine_require')
-246.164 001.579 001.185: require('lualine')
-246.240 000.069 000.069: require('plugins.linecolor')
-249.546 000.081 000.081: require('lualine.utils.mode')
-255.637 011.372 009.643: require('plugins.lualine')
-255.647 152.176 007.406: sourcing /home/sxrdusr/.config/nvim/init.lua
-255.665 008.252: sourcing vimrc file(s)
-255.924 000.052 000.052: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-257.174 000.058 000.058: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/filetype.lua
-259.475 002.166 002.166: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/filetype.vim
-262.509 000.376 000.376: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/syntax/synload.vim
-262.752 002.375 001.999: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/syntax/syntax.vim
-268.292 001.428 001.428: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/gzip.vim
-268.426 000.061 000.061: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/health.vim
-271.039 001.395 001.395: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim
-271.512 003.018 001.624: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/matchit.vim
-271.977 000.398 000.398: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/matchparen.vim
-272.126 000.080 000.080: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-272.541 000.023 000.023: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-272.561 000.371 000.348: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/rplugin.vim
-272.808 000.186 000.186: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/shada.vim
-272.959 000.082 000.082: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/spellfile.vim
-273.333 000.308 000.308: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/tarPlugin.vim
-273.622 000.219 000.219: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/tohtml.vim
-273.757 000.068 000.068: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/tutor.vim
-274.800 000.978 000.978: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/zipPlugin.vim
-276.286 001.257 001.257: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-277.474 001.016 001.016: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-278.325 000.101 000.101: sourcing /tmp/.mount_nvimtdMy65/usr/share/nvim/runtime/plugin/man.lua
-278.494 008.606: loading rtp plugins
-279.975 000.149 000.149: require('Comment.config')
-280.069 000.086 000.086: require('Comment.utils')
-280.138 000.063 000.063: require('Comment.opfunc')
-280.200 000.058 000.058: require('Comment.extra')
-280.213 000.601 000.245: require('Comment.api')
-280.666 001.108 000.508: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-281.327 000.059 000.059: require('luasnip.util.types')
-281.398 000.064 000.064: require('luasnip.util.ext_opts')
-281.468 000.065 000.065: require('luasnip.extras.filetype_functions')
-281.536 000.063 000.063: require('luasnip.session')
-281.783 000.095 000.095: require('luasnip.util.util')
-281.853 000.064 000.064: require('luasnip.nodes.util')
-281.911 000.054 000.054: require('luasnip.util.events')
-281.926 000.314 000.100: require('luasnip.nodes.node')
-282.059 000.063 000.063: require('luasnip.util.extend_decorator')
-282.070 000.530 000.153: require('luasnip.nodes.insertNode')
-282.340 000.076 000.076: require('luasnip.util.mark')
-282.529 000.079 000.079: require('luasnip.nodes.textNode')
-283.386 000.788 000.788: require('luasnip.util._builtin_vars')
-283.668 001.132 000.344: require('luasnip.util.environ')
-283.751 000.077 000.077: require('luasnip.util.pattern_tokenizer')
-283.811 000.055 000.055: require('luasnip.util.dict')
-283.886 000.070 000.070: require('luasnip.session.snippet_collection')
-283.934 001.587 000.174: require('luasnip.nodes.snippet')
-283.949 001.875 000.212: require('luasnip.nodes.choiceNode')
-284.098 000.132 000.132: require('luasnip.nodes.functionNode')
-284.205 000.100 000.100: require('luasnip.nodes.dynamicNode')
-284.306 000.095 000.095: require('luasnip.nodes.restoreNode')
-284.408 000.097 000.097: require('luasnip.extras')
-284.538 000.058 000.058: require('luasnip.util.str')
-284.547 000.132 000.074: require('luasnip.extras.fmt')
-284.608 000.057 000.057: require('luasnip.extras.expand_conditions')
-284.811 000.065 000.065: require('luasnip.util.parser.neovim_ast')
-293.026 000.084 000.084: require('luasnip.util.directed_graph')
-293.043 008.368 008.219: require('luasnip.util.parser.ast_utils')
-293.210 000.061 000.061: require('luasnip.util.functions')
-293.258 000.211 000.149: require('luasnip.util.parser.ast_parser')
-293.400 000.138 000.138: require('luasnip.util.parser.neovim_parser')
-293.411 008.797 000.081: require('luasnip.util.parser')
-293.477 000.062 000.062: require('luasnip.nodes.absolute_indexer')
-293.898 012.734 000.606: require('luasnip.config')
-294.056 013.203 000.469: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-294.842 000.050 000.050: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-295.836 000.382 000.382: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-296.359 000.081 000.081: require('cmp.utils.api')
-296.480 000.057 000.057: require('cmp.types.cmp')
-296.619 000.068 000.068: require('cmp.utils.misc')
-296.743 000.258 000.190: require('cmp.types.lsp')
-296.810 000.060 000.060: require('cmp.types.vim')
-296.815 000.449 000.074: require('cmp.types')
-296.876 000.057 000.057: require('cmp.utils.highlight')
-296.985 000.050 000.050: require('cmp.utils.debug')
-297.002 000.122 000.072: require('cmp.utils.autocmd')
-297.720 001.509 000.800: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-298.111 000.135 000.135: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-298.635 000.059 000.059: require('nvim-treesitter.statusline')
-298.711 000.069 000.069: require('nvim-treesitter.query_predicates')
-298.718 000.204 000.076: require('nvim-treesitter')
-300.054 000.290 000.290: require('vim.treesitter.highlighter')
-300.401 000.792 000.501: require('nvim-treesitter.highlight')
-300.770 002.306 001.310: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-301.262 000.278 000.278: require('treesitter-context')
-301.273 000.317 000.039: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-301.636 000.084 000.084: require('nvim-treesitter-refactor')
-301.851 000.326 000.242: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-302.218 000.117 000.117: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-302.588 000.077 000.077: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-303.010 000.067 000.067: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-303.920 000.429 000.429: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-304.696 000.549 000.549: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-startuptime/plugin/startuptime.vim
-305.310 000.352 000.352: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-306.794 007.375: loading packages
-307.896 000.127 000.127: require('cmp.utils.char')
-307.914 000.249 000.122: require('cmp.utils.str')
-307.981 000.062 000.062: require('cmp.utils.pattern')
-308.199 000.057 000.057: require('cmp.utils.buffer')
-308.210 000.157 000.100: require('cmp.utils.keymap')
-308.221 000.235 000.078: require('cmp.utils.feedkeys')
-308.314 000.089 000.089: require('cmp.utils.async')
-308.447 000.059 000.059: require('cmp.utils.cache')
-308.454 000.134 000.076: require('cmp.context')
-308.705 000.085 000.085: require('cmp.config.mapping')
-308.866 000.082 000.082: require('cmp.config.compare')
-308.872 000.160 000.077: require('cmp.config.default')
-308.897 000.350 000.105: require('cmp.config')
-309.068 000.062 000.062: require('cmp.matcher')
-309.081 000.180 000.118: require('cmp.entry')
-309.095 000.638 000.108: require('cmp.source')
-309.233 000.059 000.059: require('cmp.utils.event')
-309.405 000.096 000.096: require('cmp.utils.window')
-309.412 000.175 000.078: require('cmp.view.docs_view')
-309.573 000.120 000.120: require('cmp.view.custom_entries_view')
-309.681 000.103 000.103: require('cmp.view.wildmenu_entries_view')
-309.769 000.083 000.083: require('cmp.view.native_entries_view')
-309.847 000.074 000.074: require('cmp.view.ghost_text_view')
-309.865 000.766 000.153: require('cmp.view')
-309.975 002.429 000.254: require('cmp.core')
-310.464 000.071 000.071: require('cmp.config.sources')
-310.532 000.061 000.061: require('cmp.config.window')
-310.651 003.219 000.659: require('cmp')
-310.932 000.062 000.062: require('cmp_buffer.timer')
-310.940 000.144 000.083: require('cmp_buffer.buffer')
-310.949 000.232 000.087: require('cmp_buffer.source')
-310.953 000.297 000.065: require('cmp_buffer')
-310.984 003.601 000.086: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-311.371 000.155 000.155: require('cmp_cmdline')
-311.405 000.233 000.077: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-311.754 000.072 000.072: require('cmp_nvim_lsp.source')
-311.761 000.148 000.076: require('cmp_nvim_lsp')
-311.854 000.284 000.136: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-312.173 000.114 000.114: require('cmp_path')
-312.208 000.192 000.078: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-313.680 000.681 000.681: require('vim.lsp.protocol')
-313.997 000.309 000.309: require('vim.lsp._snippet')
-314.150 000.147 000.147: require('vim.highlight')
-314.183 001.671 000.534: require('vim.lsp.util')
-314.193 001.759 000.089: require('cmp_luasnip')
-314.266 001.907 000.148: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-314.409 001.397: loading after plugins
-314.443 000.034: inits 3
-314.458 000.014: reading ShaDa
-314.850 000.070 000.070: require('luasnip.loaders._caches')
-314.966 000.109 000.109: require('luasnip.util.path')
-315.062 000.091 000.091: require('luasnip.loaders.util')
-315.293 000.104 000.104: require('luasnip.loaders')
-315.332 000.265 000.160: require('luasnip')
-315.339 000.648 000.114: require('luasnip.loaders.from_lua')
-315.551 000.074 000.074: require('luasnip.nodes.snippetProxy')
-315.561 000.172 000.097: require('luasnip.loaders.from_snipmate')
-315.691 000.089 000.089: require('luasnip.loaders.from_vscode')
-315.726 000.360: opening buffers
-315.996 000.269: BufEnter autocommands
-316.003 000.007: editing files in windows
-331.179 000.499 000.499: require('vim.diagnostic')
-
-
-times in msec
- clock self+sourced self: sourced script
- clock elapsed: other lines
-
-001.200 001.200: --- NVIM STARTING ---
-028.869 027.670: event init
-045.983 017.113: early init
-047.792 001.810: locale set
-053.512 005.720: init first window
-063.922 010.410: inits 1
-063.947 000.025: window checked
-063.955 000.008: parsing arguments
-076.112 000.253 000.253: require('vim.shared')
-076.628 000.246 000.246: require('vim._meta')
-076.644 000.505 000.259: require('vim._editor')
-076.652 000.941 000.183: require('vim._init_packages')
-076.660 011.764: init lua interpreter
-076.862 000.202: expanding arguments
-078.857 001.995: inits 2
-080.284 001.427: init highlight
-080.295 000.011: waiting for UI
-082.949 002.654: done waiting for UI
-083.000 000.051: init screen for UI
-083.246 000.246: init default mappings
-083.273 000.027: init default autocommands
-093.988 004.253 004.253: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/ftplugin.vim
-096.789 001.077 001.077: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/indent.vim
-097.277 000.056 000.056: sourcing /usr/share/nvim/archlinux.vim
-097.304 000.182 000.126: sourcing /etc/xdg/nvim/sysinit.vim
-111.429 006.947 006.947: require('keys')
-113.908 002.467 002.467: require('opts')
-117.673 001.187 001.187: require('packer.util')
-117.808 003.545 002.358: require('packer')
-122.146 001.171 001.171: require('packer.log')
-122.166 002.129 000.957: require('packer.async')
-124.195 000.802 000.802: require('packer.result')
-124.220 002.045 001.244: require('packer.jobs')
-124.252 005.833 001.659: require('packer.plugin_utils')
-125.549 001.251 001.251: require('packer.snapshot')
-127.162 013.245 002.616: require('pack')
-158.488 031.310 031.310: require('impatient')
-159.340 000.277 000.277: require('lualine_require')
-160.073 001.430 001.153: require('lualine')
-160.228 000.146 000.146: require('plugins.linecolor')
-169.390 000.177 000.177: require('lualine.utils.mode')
-172.397 013.891 012.138: require('plugins.lualine')
-172.450 075.045 007.184: sourcing /home/sxrdusr/.config/nvim/init.lua
-172.493 008.664: sourcing vimrc file(s)
-172.853 000.064 000.064: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/filetype.nvim/filetype.vim
-174.426 000.083 000.083: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/filetype.lua
-176.471 001.751 001.751: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/filetype.vim
-179.037 000.296 000.296: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/syntax/synload.vim
-179.314 002.168 001.872: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/syntax/syntax.vim
-179.520 000.026 000.026: require('vim.F')
-186.212 001.264 001.264: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/gzip.vim
-186.358 000.064 000.064: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/health.vim
-186.496 000.065 000.065: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/matchit.vim
-186.634 000.066 000.066: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/matchparen.vim
-186.802 000.097 000.097: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/netrwPlugin.vim
-187.224 000.037 000.037: sourcing /home/sxrdusr/.local/share/nvim/rplugin.vim
-187.244 000.381 000.343: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/rplugin.vim
-187.485 000.182 000.182: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/shada.vim
-187.643 000.091 000.091: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/spellfile.vim
-187.770 000.062 000.062: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/tarPlugin.vim
-187.893 000.059 000.059: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/tohtml.vim
-188.022 000.066 000.066: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/tutor.vim
-188.970 000.884 000.884: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/zipPlugin.vim
-190.447 001.228 001.228: sourcing /usr/share/vim/vimfiles/plugin/fzf.vim
-191.939 001.259 001.259: sourcing /home/sxrdusr/.config/nvim/plugin/packer_compiled.lua
-192.809 000.149 000.149: sourcing /tmp/.mount_nvimnohCwK/usr/share/nvim/runtime/plugin/man.lua
-193.044 010.542: loading rtp plugins
-194.557 000.015 000.015: require('vim.keymap')
-194.979 000.089 000.089: require('Comment.config')
-195.098 000.111 000.111: require('Comment.utils')
-195.179 000.075 000.075: require('Comment.opfunc')
-195.356 000.171 000.171: require('Comment.extra')
-195.374 000.809 000.362: require('Comment.api')
-195.696 001.258 000.434: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/Comment.nvim/plugin/Comment.lua
-196.405 000.067 000.067: require('luasnip.util.types')
-196.489 000.076 000.076: require('luasnip.util.ext_opts')
-198.131 000.221 000.221: require('vim.treesitter.language')
-198.166 000.785 000.564: require('vim.treesitter.query')
-198.468 000.297 000.297: require('vim.treesitter.languagetree')
-198.532 001.607 000.525: require('vim.treesitter')
-198.791 002.228 000.622: require('nvim-treesitter.parsers')
-198.993 000.100 000.100: require('nvim-treesitter.utils')
-199.005 000.208 000.108: require('nvim-treesitter.ts_utils')
-199.011 002.516 000.080: require('luasnip.extras.filetype_functions')
-199.094 000.079 000.079: require('luasnip.session')
-199.418 000.126 000.126: require('luasnip.util.util')
-199.498 000.074 000.074: require('luasnip.nodes.util')
-199.570 000.067 000.067: require('luasnip.util.events')
-199.587 000.382 000.115: require('luasnip.nodes.node')
-199.701 000.066 000.066: require('luasnip.util.extend_decorator')
-199.712 000.613 000.165: require('luasnip.nodes.insertNode')
-199.969 000.081 000.081: require('luasnip.util.mark')
-200.192 000.093 000.093: require('luasnip.nodes.textNode')
-200.914 000.645 000.645: require('luasnip.util._builtin_vars')
-201.113 000.189 000.189: require('vim.inspect')
-201.340 001.141 000.306: require('luasnip.util.environ')
-201.452 000.105 000.105: require('luasnip.util.pattern_tokenizer')
-201.569 000.108 000.108: require('luasnip.util.dict')
-201.675 000.094 000.094: require('luasnip.session.snippet_collection')
-201.787 001.810 000.270: require('luasnip.nodes.snippet')
-201.807 002.091 000.199: require('luasnip.nodes.choiceNode')
-201.938 000.106 000.106: require('luasnip.nodes.functionNode')
-202.112 000.166 000.166: require('luasnip.nodes.dynamicNode')
-202.290 000.172 000.172: require('luasnip.nodes.restoreNode')
-202.386 000.089 000.089: require('luasnip.extras')
-202.561 000.072 000.072: require('luasnip.util.str')
-202.575 000.181 000.109: require('luasnip.extras.fmt')
-202.643 000.063 000.063: require('luasnip.extras.expand_conditions')
-202.880 000.077 000.077: require('luasnip.util.parser.neovim_ast')
-215.457 000.113 000.113: require('luasnip.util.directed_graph')
-215.486 012.764 012.575: require('luasnip.util.parser.ast_utils')
-215.665 000.071 000.071: require('luasnip.util.functions')
-215.677 000.184 000.113: require('luasnip.util.parser.ast_parser')
-215.881 000.200 000.200: require('luasnip.util.parser.neovim_parser')
-215.894 013.244 000.096: require('luasnip.util.parser')
-215.971 000.071 000.071: require('luasnip.nodes.absolute_indexer')
-217.153 020.941 001.407: require('luasnip.config')
-217.313 021.401 000.460: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/LuaSnip/plugin/luasnip.vim
-218.109 000.052 000.052: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/fzf/plugin/fzf.vim
-218.673 000.108 000.108: require('lsp-colors')
-219.216 000.706 000.598: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lsp-colors.nvim/plugin/lsp-colors.vim
-220.523 000.925 000.925: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/lspsaga.nvim/plugin/lspsaga.lua
-221.323 000.399 000.399: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/numbers.vim/plugin/numbers.vim
-221.864 000.096 000.096: require('cmp.utils.api')
-222.010 000.072 000.072: require('cmp.types.cmp')
-222.182 000.079 000.079: require('cmp.utils.misc')
-222.383 000.366 000.287: require('cmp.types.lsp')
-222.479 000.088 000.088: require('cmp.types.vim')
-222.486 000.614 000.088: require('cmp.types')
-222.558 000.068 000.068: require('cmp.utils.highlight')
-222.684 000.058 000.058: require('cmp.utils.debug')
-222.699 000.136 000.078: require('cmp.utils.autocmd')
-223.440 001.744 000.830: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-cmp/plugin/cmp.lua
-223.708 000.084 000.084: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/plugin/colorizer.vim
-224.265 000.243 000.243: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-dap/plugin/dap.lua
-224.744 000.254 000.254: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lsp-installer/plugin/nvim-lsp-installer.vim
-225.221 000.152 000.152: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/plugin/lspconfig.lua
-226.304 000.080 000.080: require('nvim-treesitter.tsrange')
-226.375 000.063 000.063: require('nvim-treesitter.caching')
-226.395 000.257 000.113: require('nvim-treesitter.query')
-226.423 000.394 000.137: require('nvim-treesitter.configs')
-226.435 000.486 000.092: require('nvim-treesitter.info')
-226.559 000.120 000.120: require('nvim-treesitter.shell_command_selectors')
-226.608 000.850 000.243: require('nvim-treesitter.install')
-226.680 000.067 000.067: require('nvim-treesitter.statusline')
-226.764 000.079 000.079: require('nvim-treesitter.query_predicates')
-226.771 001.082 000.087: require('nvim-treesitter')
-228.041 000.342 000.342: require('vim.treesitter.highlighter')
-228.350 000.802 000.461: require('nvim-treesitter.highlight')
-228.990 003.358 001.473: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter/plugin/nvim-treesitter.lua
-229.487 000.218 000.218: require('treesitter-context')
-229.498 000.262 000.044: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/plugin/treesitter-context.vim
-229.869 000.082 000.082: require('nvim-treesitter-refactor')
-230.155 000.393 000.311: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/plugin/nvim-treesitter-refactor.vim
-230.535 000.118 000.118: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/plugin/nvim-web-devicons.vim
-230.984 000.109 000.109: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/plenary.nvim/plugin/plenary.vim
-231.332 000.099 000.099: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/prettier.nvim/plugin/prettier.vim
-231.669 000.028 000.028: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/startuptime.vim/plugin/startuptime.vim
-232.027 000.067 000.067: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope-frecency.nvim/plugin/frecency.vim
-233.279 000.677 000.677: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/telescope.nvim/plugin/telescope.lua
-233.906 000.382 000.382: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/vim-tmux-navigator/plugin/tmux_navigator.vim
-234.199 000.032 000.032: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/which-key.nvim/plugin/which-key.vim
-234.492 000.054 000.054: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/zen-mode.nvim/plugin/zen-mode.vim
-236.377 010.537: loading packages
-237.770 000.206 000.206: require('cmp.utils.char')
-237.795 000.307 000.101: require('cmp.utils.str')
-237.874 000.073 000.073: require('cmp.utils.pattern')
-238.114 000.058 000.058: require('cmp.utils.buffer')
-238.126 000.165 000.107: require('cmp.utils.keymap')
-238.139 000.259 000.095: require('cmp.utils.feedkeys')
-238.243 000.100 000.100: require('cmp.utils.async')
-238.378 000.062 000.062: require('cmp.utils.cache')
-238.386 000.137 000.075: require('cmp.context')
-238.631 000.076 000.076: require('cmp.config.mapping')
-238.815 000.092 000.092: require('cmp.config.compare')
-238.825 000.186 000.094: require('cmp.config.default')
-238.903 000.422 000.160: require('cmp.config')
-239.078 000.067 000.067: require('cmp.matcher')
-239.092 000.184 000.117: require('cmp.entry')
-239.109 000.720 000.114: require('cmp.source')
-239.317 000.061 000.061: require('cmp.utils.event')
-239.485 000.088 000.088: require('cmp.utils.window')
-239.495 000.172 000.084: require('cmp.view.docs_view')
-239.626 000.127 000.127: require('cmp.view.custom_entries_view')
-239.733 000.101 000.101: require('cmp.view.wildmenu_entries_view')
-239.821 000.083 000.083: require('cmp.view.native_entries_view')
-239.912 000.085 000.085: require('cmp.view.ghost_text_view')
-239.931 000.818 000.189: require('cmp.view')
-240.078 002.714 000.300: require('cmp.core')
-240.402 000.068 000.068: require('cmp.config.sources')
-240.473 000.062 000.062: require('cmp.config.window')
-240.589 003.405 000.561: require('cmp')
-240.880 000.061 000.061: require('cmp_buffer.timer')
-240.889 000.145 000.084: require('cmp_buffer.buffer')
-240.898 000.225 000.079: require('cmp_buffer.source')
-240.903 000.308 000.083: require('cmp_buffer')
-240.932 003.863 000.149: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-buffer/after/plugin/cmp_buffer.lua
-241.333 000.156 000.156: require('cmp_cmdline')
-241.367 000.241 000.084: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after/plugin/cmp_cmdline.lua
-241.724 000.072 000.072: require('cmp_nvim_lsp.source')
-241.735 000.152 000.080: require('cmp_nvim_lsp')
-241.792 000.253 000.100: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after/plugin/cmp_nvim_lsp.lua
-242.117 000.119 000.119: require('cmp_path')
-242.152 000.200 000.081: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp-path/after/plugin/cmp_path.lua
-244.719 000.990 000.990: require('vim.lsp.protocol')
-245.045 000.318 000.318: require('vim.lsp._snippet')
-245.341 000.289 000.289: require('vim.highlight')
-245.373 002.812 001.214: require('vim.lsp.util')
-245.381 003.021 000.210: require('cmp_luasnip')
-245.454 003.140 000.118: sourcing /home/sxrdusr/.local/share/nvim/site/pack/packer/start/cmp_luasnip/after/plugin/cmp_luasnip.lua
-245.540 001.468: loading after plugins
-245.570 000.029: inits 3
-245.584 000.014: reading ShaDa
-246.009 000.071 000.071: require('luasnip.loaders._caches')
-246.125 000.109 000.109: require('luasnip.util.path')
-246.226 000.094 000.094: require('luasnip.loaders.util')
-246.457 000.106 000.106: require('luasnip.loaders')
-246.497 000.264 000.159: require('luasnip')
-246.504 000.653 000.114: require('luasnip.loaders.from_lua')
-246.720 000.069 000.069: require('luasnip.nodes.snippetProxy')
-246.733 000.169 000.100: require('luasnip.loaders.from_snipmate')
-246.974 000.094 000.094: require('luasnip.loaders.from_vscode')
-247.013 000.513: opening buffers
-247.262 000.249: BufEnter autocommands
-247.269 000.007: editing files in windows
-337.636 000.735 000.735: require('vim.diagnostic')
-339.538 000.687 000.687: require('nvim-web-devicons')
diff --git a/lua/utils.lua b/lua/utils.lua
deleted file mode 100644
index ab1473f..0000000
--- a/lua/utils.lua
+++ /dev/null
@@ -1,66 +0,0 @@
-local fn = vim.fn
-
-local M = {}
-
-function M.executable(name)
- if fn.executable(name) > 0 then
- return true
- end
-
- return false
-end
-
---- check whether a feature exists in Nvim
---- @feat: string
---- the feature name, like `nvim-0.7` or `unix`.
---- return: bool
-M.has = function(feat)
- if fn.has(feat) == 1 then
- return true
- end
-
- return false
-end
-
---- Create a dir if it does not exist
-function M.may_create_dir(dir)
- local res = fn.isdirectory(dir)
-
- if res == 0 then
- fn.mkdir(dir, "p")
- end
-end
-
-function M.get_nvim_version()
- local actual_ver = vim.version()
-
- local nvim_ver_str = string.format("%d.%d.%d", actual_ver.major, actual_ver.minor, actual_ver.patch)
- return nvim_ver_str
-end
-
---- Generate random integers in the range [Low, High], inclusive,
---- adapted from https://stackoverflow.com/a/12739441/6064933
---- @low: the lower value for this range
---- @high: the upper value for this range
-function M.rand_int(low, high)
- -- Use lua to generate random int, see also: https://stackoverflow.com/a/20157671/6064933
- math.randomseed(os.time())
-
- return math.random(low, high)
-end
-
---- Select a random element from a sequence/list.
---- @seq: the sequence to choose an element
-function M.rand_element(seq)
- local idx = M.rand_int(1, #seq)
-
- return seq[idx]
-end
-
-function M.add_pack(name)
- local status, error = pcall(vim.cmd, "packadd " .. name)
-
- return status
-end
-
-return M