diff options
Diffstat (limited to 'pkgs')
| -rw-r--r-- | pkgs/custom-neovim/config/init.lua | 68 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/keymaps.lua | 16 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/lsp.lua | 81 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/options.lua | 60 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/plugins/colorschemes.lua | 19 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/plugins/mini-clue.lua | 57 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/plugins/mini-files.lua | 6 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/plugins/mini-pick.lua | 22 | ||||
| -rw-r--r-- | pkgs/custom-neovim/config/lua/plugins/mini-statusline.lua | 7 | ||||
| -rw-r--r-- | pkgs/custom-neovim/default.nix | 112 | ||||
| -rw-r--r-- | pkgs/custom-neovim/time | 787 | ||||
| -rw-r--r-- | pkgs/custom-neovim/todo.md | 3 | ||||
| -rw-r--r-- | pkgs/default.nix | 1 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/.envrc (renamed from pkgs/custom-neovim/.envrc) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/init.lua | 67 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/art.lua (renamed from pkgs/custom-neovim/config/lua/art.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/autocommands.lua (renamed from pkgs/custom-neovim/config/lua/autocommands.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/colorschemes.lua (renamed from pkgs/custom-neovim/config/lua/colorschemes.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/colorschemes/carbonfox.lua (renamed from pkgs/custom-neovim/config/lua/colorschemes/carbonfox.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/completion.lua (renamed from pkgs/custom-neovim/config/lua/completion.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/lsp.lua | 87 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/mappings.lua (renamed from pkgs/custom-neovim/config/lua/mappings.lua) | 3 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/neovide.lua (renamed from pkgs/custom-neovim/config/lua/neovide.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/options.lua | 58 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/actions-preview.lua (renamed from pkgs/custom-neovim/config/lua/plugins/actions-preview.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/auto-session.lua (renamed from pkgs/custom-neovim/config/lua/plugins/auto-session.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/comment.lua (renamed from pkgs/custom-neovim/config/lua/plugins/comment.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/dropbar.lua (renamed from pkgs/custom-neovim/config/lua/plugins/dropbar.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/fidget.lua (renamed from pkgs/custom-neovim/config/lua/plugins/fidget.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/focus.lua (renamed from pkgs/custom-neovim/config/lua/plugins/focus.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/gitsigns.lua (renamed from pkgs/custom-neovim/config/lua/plugins/gitsigns.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/incline.lua (renamed from pkgs/custom-neovim/config/lua/plugins/incline.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/mini/clue.lua (renamed from pkgs/custom-neovim/config/lua/plugins/mini/clue.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/mini/cursorword.lua (renamed from pkgs/custom-neovim/config/lua/plugins/mini/cursorword.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/mini/files.lua (renamed from pkgs/custom-neovim/config/lua/plugins/mini/files.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/mini/git.lua (renamed from pkgs/custom-neovim/config/lua/plugins/mini/git.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/mini/icons.lua (renamed from pkgs/custom-neovim/config/lua/plugins/mini/icons.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/mini/indentscope.lua (renamed from pkgs/custom-neovim/config/lua/plugins/mini/indentscope.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/mini/pairs.lua (renamed from pkgs/custom-neovim/config/lua/plugins/mini/pairs.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/mini/tabline.lua (renamed from pkgs/custom-neovim/config/lua/plugins/mini/tabline.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/namu.lua (renamed from pkgs/custom-neovim/config/lua/plugins/namu.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/presence.lua (renamed from pkgs/custom-neovim/config/lua/plugins/presence.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/render-markdown.lua (renamed from pkgs/custom-neovim/config/lua/plugins/render-markdown.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/snacks.lua (renamed from pkgs/custom-neovim/config/lua/plugins/snacks.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/tabby.lua (renamed from pkgs/custom-neovim/config/lua/plugins/tabby.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/treesitter.lua (renamed from pkgs/custom-neovim/config/lua/plugins/treesitter.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/plugins/ts-autotag.lua (renamed from pkgs/custom-neovim/config/lua/plugins/ts-autotag.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/statusline.lua (renamed from pkgs/custom-neovim/config/lua/statusline.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/config/lua/utilities.lua (renamed from pkgs/custom-neovim/config/lua/utilities.lua) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/default.nix | 83 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/design.md (renamed from pkgs/custom-neovim/design.md) | 7 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/flake.lock (renamed from pkgs/custom-neovim/flake.lock) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/flake.nix (renamed from pkgs/custom-neovim/flake.nix) | 0 | ||||
| -rw-r--r-- | pkgs/old-custom-neovim/git-plugins.nix (renamed from pkgs/custom-neovim/git-plugins.nix) | 0 |
54 files changed, 1311 insertions, 233 deletions
diff --git a/pkgs/custom-neovim/config/init.lua b/pkgs/custom-neovim/config/init.lua index cd5e09b..d567b58 100644 --- a/pkgs/custom-neovim/config/init.lua +++ b/pkgs/custom-neovim/config/init.lua @@ -1,67 +1,7 @@ -local should_profile = os.getenv("NVIM_PROFILE") -if should_profile then - require("profile").instrument_autocmds() - if should_profile:lower():match("^start") then - require("profile").start("*") - else - require("profile").instrument("*") - end -end +-- Load plugins +require('lz.n').load('plugins') -local function toggle_profile() - local prof = require("profile") - if prof.is_recording() then - prof.stop() - vim.ui.input({ prompt = "Save profile to:", completion = "file", default = "profile.json" }, function(filename) - if filename then - prof.export(filename) - vim.notify(string.format("Wrote %s", filename)) - end - end) - else - prof.start("*") - end -end -vim.keymap.set("", "<f1>", toggle_profile) - --- Require utilities. -require("utilities") -require("art") - --- Require config parts. +-- Require config modules require("options") -require("autocommands") -require("colorschemes") -require("neovide") -require("mappings") -require("statusline") -require("completion") +require("keymaps") require("lsp") - --- UI Plugins: -require("plugins.mini.icons") -require("plugins.mini.tabline") -require("plugins.mini.clue") -require("plugins.mini.indentscope") -require("plugins.fidget") -require("plugins.treesitter") -require("plugins.mini.files") -require("plugins.incline") -require("plugins.auto-session") -require("plugins.gitsigns") -require("plugins.namu") -require("plugins.focus") - --- LSP Plugins: -require("plugins.actions-preview") - --- Utility Plugins: -require("plugins.mini.git") -require("plugins.mini.pairs") -require("plugins.ts-autotag") -require("plugins.comment") - --- Misc Plugins: -require("plugins.presence") -require("plugins.snacks") --- require("hardtime").setup() diff --git a/pkgs/custom-neovim/config/lua/keymaps.lua b/pkgs/custom-neovim/config/lua/keymaps.lua new file mode 100644 index 0000000..f766fb5 --- /dev/null +++ b/pkgs/custom-neovim/config/lua/keymaps.lua @@ -0,0 +1,16 @@ +-- Create keymap function +local mapkey = function(mode, key, desc, action, plugin) + local keymapper = plugin and require("lz.n").keymap(plugin).set or vim.keymap.set + keymapper(mode, key, action, {noremap = true, silent = true, desc = desc}) +end + +-- Set the leader key +vim.g.mapleader = " " + +-- Pickers +mapkey("n", "<leader>f", "Open file picker", ":Pick files<cr>", "mini.pick") +mapkey("n", "<leader>o", "Open old file picker", ":Pick oldfiles<cr>", "mini.pick") +mapkey("n", "<leader>/", "Open live grep picker", ":Pick grep_live<cr>", "mini.pick") + +-- File manager +mapkey("n", "<leader>e", "Open file manager", ":lua MiniFiles.open()<cr>", "mini.files") diff --git a/pkgs/custom-neovim/config/lua/lsp.lua b/pkgs/custom-neovim/config/lua/lsp.lua index a01758c..a4a25bc 100644 --- a/pkgs/custom-neovim/config/lua/lsp.lua +++ b/pkgs/custom-neovim/config/lua/lsp.lua @@ -1,3 +1,23 @@ +-- Lua LS +vim.lsp.config("lua_ls", { + cmd = { 'lua-language-server' }, + filetypes = { 'lua' }, + root_markers = { + '.luarc.json', + '.luarc.jsonc', + '.luacheckrc', + '.stylua.toml', + 'stylua.toml', + 'selene.toml', + 'selene.yml', + '.git', + }, + } +) +vim.lsp.enable("lua_ls") + +-- LSP Autocommands + -- Disable semantic tokens to stop weird highlighting. vim.api.nvim_create_autocmd('LspAttach', { callback = function(ev) @@ -16,22 +36,17 @@ vim.api.nvim_create_autocmd('LspAttach', { -- Enable completion triggered by <c-x><c-o> -- vim.bo[ev.buf].omnifunc = 'v:lua.vim.lsp.omnifunc' - local mapkey = Utils.mapkey - - -- Workspace management - mapkey('n', "<leader>o", "Manage LSP workspace", "") - mapkey('n', '<leader>oa', "Add Workspace Folder", vim.lsp.buf.add_workspace_folder) - mapkey('n', '<leader>or', "Remove Workspace Folder", vim.lsp.buf.remove_workspace_folder) - mapkey('n', '<leader>ol', "List Workspace Folders", function() - print(vim.inspect(vim.lsp.buf.list_workspace_folders())) - end) + local mapkey = function(mode, key, desc, action, plugin) + local keymapper = plugin and require("lz.n").keymap(plugin).set or vim.keymap.set + keymapper(mode, key, action, {noremap = true, silent = true, desc = desc}) + end -- LSP Pickers mapkey('n', "<leader>a", "Perform code action", ":lua require('actions-preview').code_actions()<cr>") - -- mapkey("n", "<leader>I", "Open workspace diagnostic picker", ":Namu diagnostics<cr>") - mapkey("n", "<leader>i", "Open diagnostic picker", ":Namu diagnostics<cr>") - mapkey("n", "<leader>s", "Open symbol picker", ":Namu symbols<cr>") - mapkey("n", "<leader>S", "Open workspace symbol picker", ":Namu workspace<cr>") + mapkey("n", "<leader>S", "Open workspace symbol picker", [[:Pick lsp scope="workspace_symbol"<cr>]], "mini.pick") + mapkey("n", "<leader>s", "Open symbol picker", [[:Pick lsp scope="document_symbol"<cr>]], "mini.pick") + mapkey("n", "<leader>I", "Open workspace diagnostic picker", [[:Pick diagnostic scope="all"<cr>]], "mini.pick") + mapkey("n", "<leader>i", "Open diagnostic picker", [[:Pick diagnostic scope="current"<cr>]], "mini.pick") -- Goto Keys mapkey('n', 'gD', "Go to declaration", vim.lsp.buf.declaration) @@ -41,47 +56,11 @@ vim.api.nvim_create_autocmd('LspAttach', { -- Other LSP Keys mapkey('n', 'gs', "Signature Help", vim.lsp.buf.signature_help) - mapkey('n', 'gr', "Buffer References", vim.lsp.buf.references) + mapkey('n', 'gR', "Buffer References", vim.lsp.buf.references) + mapkey('n', 'gr', "Open ", vim.lsp.buf.references) mapkey('n', '<leader>r', "Rename Symbol", vim.lsp.buf.rename) mapkey('n', '<leader>h', "Format Buffer", function() vim.lsp.buf.format { async = true } end) end, }) - -local lspconfig = require('lspconfig') - --- Configure individual lsps -lspconfig.nil_ls.setup {} -lspconfig.lua_ls.setup { - on_init = function(client) - local path = client.workspace_folders[1].name - if vim.loop.fs_stat(path..'/.luarc.json') or vim.loop.fs_stat(path..'/.luarc.jsonc') then - return - end - - client.config.settings.Lua = vim.tbl_deep_extend('force', client.config.settings.Lua, { - runtime = { - -- Tell the language server which version of Lua you're using - -- (most likely LuaJIT in the case of Neovim) - version = 'LuaJIT' - }, - -- Make the server aware of Neovim runtime files - workspace = { - checkThirdParty = false, - library = { - vim.env.VIMRUNTIME, - -- Depending on the usage, you might want to add additional paths here. - "${3rd}/luv/library" - -- "${3rd}/busted/library", - } - -- or pull in all of 'runtimepath'. NOTE: this is a lot slower - -- library = vim.api.nvim_get_runtime_file("", true) - } - }) - end, - settings = { - Lua = {} - } -} -lspconfig.marksman.setup {} diff --git a/pkgs/custom-neovim/config/lua/options.lua b/pkgs/custom-neovim/config/lua/options.lua index 20f3e01..6840085 100644 --- a/pkgs/custom-neovim/config/lua/options.lua +++ b/pkgs/custom-neovim/config/lua/options.lua @@ -1,43 +1,16 @@ --- General Settings -vim.o.winborder = 'rounded' -vim.o.showtabline = 2 -- whether to only show tabline if there is more than one tab. +-- General +vim.opt.clipboard = "unnamedplus" -- use system clipboard +vim.o.mouse = "" -- Don't use mouse + +-- UI +vim.o.winborder = 'rounded' -- rounded window borders where possible. +vim.o.showtabline = 1 -- whether to only show tabline if there is more than one tab. vim.o.laststatus = 3 -- only have one statusline at the bottom of the window. vim.o.showmode = false -- don't show the mode in the commandline. vim.o.ruler = false -- don't show #,# in the commandline. -vim.o.icm = 'split' -vim.o.cia = 'abbr,kind,menu' -vim.o.mouse = "" vim.o.number = true -- set absolute numbered lines --- vim.o.relativenumber = true -- set relative numbered lines vim.o.scrolloff = 4 -- minimal number of screen lines to keep above and below the cursor vim.o.signcolumn = "yes" -- always show the sign column, otherwise it would shift the text each time -vim.o.clipboard = "unnamedplus" -- use system clipboard --- vim.o.equalalways = true -- equalize splits -vim.o.sessionoptions = "blank,curdir,folds,help,tabpages,winsize,winpos,terminal,globals,buffers,localoptions" -- define what is saved with the session. - --- Split Behavior -vim.o.splitright = true -vim.o.splitbelow = true - --- Indention -local indent = 2 -vim.o.autoindent = true -- auto indentation -vim.o.expandtab = true -- convert tabs to spaces -vim.o.shiftwidth = indent -- the number of spaces inserted for each indentation -vim.o.smartindent = true -- make indenting smarter -vim.o.softtabstop = indent -- when hitting <BS>, pretend like a tab is removed, even if spaces -vim.o.tabstop = indent -- insert 2 spaces for a tab -vim.o.shiftround = true -- use multiple of shiftwidth when indenting with "<" and ">" - --- Backups -vim.o.backup = false -- create a backup file -vim.o.swapfile = false -- creates a swapfile -vim.o.writebackup = false -- if a file is being edited by another program, it is not allowed to be edited - --- Search -vim.o.hlsearch = true -- highlight all matches on previous search pattern -vim.o.ignorecase = true -- ignore case in search patterns -vim.o.smartcase = true -- smart case -- Folding vim.o.foldmethod = "expr" @@ -56,3 +29,22 @@ vim.opt.fillchars = { vertright = '┣', verthoriz = '╋', } + +-- Splits +vim.o.splitright = true +vim.o.splitbelow = true + +-- Indention +local indent = 2 +vim.o.autoindent = true -- auto indentation +vim.o.expandtab = true -- convert tabs to spaces +vim.o.shiftwidth = indent -- the number of spaces inserted for each indentation +vim.o.smartindent = true -- make indenting smarter +vim.o.softtabstop = indent -- when hitting <BS>, pretend like a tab is removed, even if spaces +vim.o.tabstop = indent -- insert 2 spaces for a tab +vim.o.shiftround = true -- use multiple of shiftwidth when indenting with "<" and ">" + +-- Backups +vim.o.backup = false -- create a backup file +vim.o.swapfile = false -- creates a swapfile +vim.o.writebackup = false -- if a file is being edited by another program, it is not allowed to be edited diff --git a/pkgs/custom-neovim/config/lua/plugins/colorschemes.lua b/pkgs/custom-neovim/config/lua/plugins/colorschemes.lua new file mode 100644 index 0000000..1ca3c7e --- /dev/null +++ b/pkgs/custom-neovim/config/lua/plugins/colorschemes.lua @@ -0,0 +1,19 @@ +return { + { + "nightfox.nvim", + -- lazy = false, + event = "VimEnter", + after = function () + require("nightfox").setup { + options = { + module_default = false, + modules = { + "mini", + "treesitter", + }, + }, + } + vim.cmd.colorscheme("carbonfox") + end + }, +} diff --git a/pkgs/custom-neovim/config/lua/plugins/mini-clue.lua b/pkgs/custom-neovim/config/lua/plugins/mini-clue.lua new file mode 100644 index 0000000..752b001 --- /dev/null +++ b/pkgs/custom-neovim/config/lua/plugins/mini-clue.lua @@ -0,0 +1,57 @@ +return { + "mini.clue", + event = "VimEnter", -- Load after everything else to capture all keybinds. + after = function() + local miniclue = require('mini.clue') + miniclue.setup({ + triggers = { + -- Leader triggers + { mode = 'n', keys = '<Leader>' }, + { mode = 'x', keys = '<Leader>' }, + + -- Built-in completion + { mode = 'i', keys = '<C-x>' }, + + -- `g` key + { mode = 'n', keys = 'g' }, + { mode = 'x', keys = 'g' }, + + -- Marks + { mode = 'n', keys = "'" }, + { mode = 'n', keys = '`' }, + { mode = 'x', keys = "'" }, + { mode = 'x', keys = '`' }, + + -- Registers + { mode = 'n', keys = '"' }, + { mode = 'x', keys = '"' }, + { mode = 'i', keys = '<C-r>' }, + { mode = 'c', keys = '<C-r>' }, + + -- Window commands + { mode = 'n', keys = '<C-w>' }, + + -- `z` key + { mode = 'n', keys = 'z' }, + { mode = 'x', keys = 'z' }, + }, + + clues = { + { mode = {'n', 'v'}, keys = '<Leader>' }, + miniclue.gen_clues.builtin_completion(), + miniclue.gen_clues.g(), + miniclue.gen_clues.marks(), + miniclue.gen_clues.registers(), + miniclue.gen_clues.windows(), + miniclue.gen_clues.z(), + }, + + window = { + delay = 0, + + scroll_down = "<C-d>", + scroll_up = "<C-u>", + }, + }) + end +} diff --git a/pkgs/custom-neovim/config/lua/plugins/mini-files.lua b/pkgs/custom-neovim/config/lua/plugins/mini-files.lua new file mode 100644 index 0000000..d979221 --- /dev/null +++ b/pkgs/custom-neovim/config/lua/plugins/mini-files.lua @@ -0,0 +1,6 @@ +return { + "mini.files", + after = function() + require("mini.files").setup() + end +} diff --git a/pkgs/custom-neovim/config/lua/plugins/mini-pick.lua b/pkgs/custom-neovim/config/lua/plugins/mini-pick.lua new file mode 100644 index 0000000..c08c1de --- /dev/null +++ b/pkgs/custom-neovim/config/lua/plugins/mini-pick.lua @@ -0,0 +1,22 @@ +return { + "mini.pick", + cmd = "Pick", + after = function() + local win_config = function() + local height = math.floor(0.618 * vim.o.lines) + local width = math.floor(0.618 * vim.o.columns) + return { + anchor = 'NW', height = height, width = width, + row = math.floor(0.5 * (vim.o.lines - height)), + col = math.floor(0.5 * (vim.o.columns - width)), + } + end + require("mini.pick").setup { + window = { + config = win_config, + }, + } + vim.cmd.packadd("mini.extra") + require("mini.extra").setup() + end +} diff --git a/pkgs/custom-neovim/config/lua/plugins/mini-statusline.lua b/pkgs/custom-neovim/config/lua/plugins/mini-statusline.lua new file mode 100644 index 0000000..f3bf10b --- /dev/null +++ b/pkgs/custom-neovim/config/lua/plugins/mini-statusline.lua @@ -0,0 +1,7 @@ +return { + "mini.statusline", + lazy = false, + after = function() + require("mini.statusline").setup() + end +} diff --git a/pkgs/custom-neovim/default.nix b/pkgs/custom-neovim/default.nix index 7a75368..f5d63e3 100644 --- a/pkgs/custom-neovim/default.nix +++ b/pkgs/custom-neovim/default.nix @@ -1,83 +1,39 @@ { pkgs, inputs, -}: let - git-plugins = import ./git-plugins.nix {inherit pkgs;}; -in - inputs.mnw.lib.wrap pkgs { - neovim = pkgs.neovim-unwrapped; - plugins = with pkgs.vimPlugins; { - dev.config = { - pure = ./config; - }; - start = [ - # Core Plugins - mini-nvim # Ton of small modules. - nvim-lspconfig # Adds lsp presets. - actions-preview-nvim # Adds a selector for LSP actions. - nvim-treesitter.withAllGrammars # All treesitter grammars. - snacks-nvim # Many small modules. - auto-session # Automatic session manager. - nvim-ts-autotag # Autopair HTML tags. - gitsigns-nvim # Git signcolumn. - git-plugins.namu-nvim-git # LSP and colorscheme picker. - vim-nix # Indenting for nix files. - comment-nvim # Advanced commenting. - fidget-nvim # Simple notification UI - focus-nvim # Automatic split resizer and manager. - render-markdown-nvim # Render markdown fancily. - incline-nvim # Puts the filename in the winbar. - - git-plugins.profile-nvim-git - - # Completion - nvim-cmp # Completer. - cmp-buffer - cmp-path - cmp_luasnip - cmp-nvim-lsp - luasnip # Snippet manager. - friendly-snippets # Snippet collection. - - # Colorschemes - oxocarbon-nvim # IBM Carbon themes. - rose-pine # Rose Pine themes. - kanagawa-nvim # Kanagawa inspired themes. - everforest # Green themes. - nordic-nvim # Cool dark nordic theme. - tokyonight-nvim - nightfox-nvim # Varied colorscheme collection. - - # Miscellaneous Plugins - presence-nvim # Discord RPC for nvim. - cellular-automaton-nvim # Fun useless plugin. - vim-wakatime # For hack club challenge. - hardtime-nvim # Break bad vim habits. - ]; - opt = []; +}: +inputs.mnw.lib.wrap pkgs { + neovim = pkgs.neovim-unwrapped; + plugins = with pkgs.vimPlugins; { + dev.config = { + pure = ./config; + impure = "/home/culsans/Sync/setup/pkgs/custom-neovim/config"; }; - - luaFiles = [./config/init.lua]; - - extraBinPath = with pkgs; [ - # LSP Servers - lua-language-server # Lua LS - nixd # Nix LS - nil - marksman # Markdown LS - - # Formatters - alejandra # Nix Formatter - - # Extra Tools - ripgrep - fd - cliphist - lazygit - luajitPackages.jsregexp - gcc - - # Temporary - wakatime-cli + start = [ + # Not lazy loaded. + lz-n # Lazy loader + nvim-treesitter.withAllGrammars # All treesitter grammars + ]; + opt = [ + # Lazy loaded. + mini-clue + mini-pick + mini-statusline + mini-files + mini-extra + comment-nvim + vim-nix + nightfox-nvim ]; - } + }; + luaFiles = [./config/init.lua]; + extraBinPath = with pkgs; [ + # LSP Servers + lua-language-server + + # Extra Utils + ripgrep + gcc + fd + ]; +} diff --git a/pkgs/custom-neovim/time b/pkgs/custom-neovim/time new file mode 100644 index 0000000..19ebc08 --- /dev/null +++ b/pkgs/custom-neovim/time @@ -0,0 +1,787 @@ +--- Startup times for process: Primary (or UI client) --- + +times in msec + clock self+sourced self: sourced script + clock elapsed: other lines + +000.002 000.002: --- NVIM STARTING --- +000.122 000.120: event init +000.202 000.080: early init +000.245 000.043: locale set +000.290 000.045: init first window +000.656 000.366: inits 1 +000.665 000.008: window checked +000.667 000.002: parsing arguments +001.186 000.047 000.047: require('vim.shared') +001.289 000.042 000.042: require('vim.inspect') +001.339 000.041 000.041: require('vim._options') +001.341 000.150 000.067: require('vim._editor') +001.343 000.239 000.041: require('vim._init_packages') +001.345 000.439: init lua interpreter +002.712 001.367: nvim_ui_attach +003.009 000.297: nvim_set_client_info +003.011 000.002: --- NVIM STARTED --- + +--- Startup times for process: Embedded --- + +times in msec + clock self+sourced self: sourced script + clock elapsed: other lines + +000.002 000.002: --- NVIM STARTING --- +000.133 000.131: event init +000.203 000.070: early init +000.256 000.053: locale set +000.305 000.049: init first window +000.649 000.344: inits 1 +000.660 000.011: window checked +000.661 000.002: parsing arguments +001.092 000.038 000.038: require('vim.shared') +001.180 000.032 000.032: require('vim.inspect') +001.219 000.032 000.032: require('vim._options') +001.220 000.123 000.059: require('vim._editor') +001.221 000.183 000.022: require('vim._init_packages') +001.223 000.378: init lua interpreter +001.275 000.053: expanding arguments +001.298 000.023: inits 2 +001.538 000.240: init highlight +001.538 000.001: waiting for UI +001.703 000.164: done waiting for UI +001.709 000.006: clear screen +001.817 000.008 000.008: require('vim.keymap') +002.462 000.124 000.124: sourcing nvim_exec2() +002.620 000.909 000.778: require('vim._defaults') +002.622 000.004: init default mappings & autocommands +002.926 000.304: --cmd commands +003.914 000.046 000.046: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/ftplugin.vim +003.981 000.016 000.016: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/indent.vim +004.297 000.122 000.122: require('lz.n') +004.459 000.159 000.159: require('lz.n.spec') +004.481 000.019 000.019: require('vim.fs') +004.652 000.028 000.028: require('plugins.colorschemes') +005.023 000.367 000.367: require('vim.iter') +005.369 000.121 000.121: require('lz.n.loader') +005.439 000.068 000.068: require('lz.n.handler.state') +005.442 000.283 000.095: require('lz.n.handler.cmd') +005.592 000.149 000.149: require('lz.n.handler.event') +005.647 000.054 000.054: require('lz.n.handler.ft') +005.766 000.118 000.118: require('lz.n.handler.keys') +005.823 000.055 000.055: require('lz.n.handler.colorscheme') +005.867 000.043 000.043: require('lz.n.handler.lazy') +005.869 000.818 000.117: require('lz.n.handler') +005.917 000.040 000.040: require('plugins.mini-clue') +005.950 000.019 000.019: require('plugins.mini-files') +006.012 000.039 000.039: require('plugins.mini-pick') +006.042 000.019 000.019: require('plugins.mini-statusline') +006.587 000.028 000.028: sourcing /nix/store/cbvmcpy9w5nkai20x736xqaglc5njrdd-mnw-configDir/pack/mnw/opt/nightfox.nvim/plugin/nightfox.vim +007.856 000.078 000.078: require('nightfox.lib.collect') +007.959 000.100 000.100: require('nightfox.util') +007.994 000.328 000.150: require('nightfox.config') +008.105 000.108 000.108: require('nightfox') +008.179 000.072 000.072: require('nightfox.override') +008.281 000.057 000.057: require('nightfox.lib.hash') +008.357 000.073 000.073: require('nightfox.lib.log') +008.543 000.083 000.083: require('nightfox.lib.highlight') +008.545 000.187 000.104: require('nightfox.lib.compiler') +008.675 000.129 000.129: require('nightfox.palette') +008.836 000.080 000.080: require('nightfox.util.template') +008.838 000.161 000.081: require('nightfox.spec') +009.205 000.236 000.236: require('nightfox.lib.color') +009.272 000.065 000.065: require('nightfox.lib.shade') +009.376 000.535 000.234: require('nightfox.palette.carbonfox') +009.718 000.116 000.116: require('nightfox.group') +009.929 000.209 000.209: require('nightfox.group.editor') +010.037 000.093 000.093: require('nightfox.group.syntax') +010.127 000.052 000.052: require('nightfox.group.modules.alpha') +010.176 000.042 000.042: require('nightfox.group.modules.aerial') +010.242 000.059 000.059: require('nightfox.group.modules.barbar') +010.324 000.072 000.072: require('nightfox.group.modules.blink') +010.422 000.070 000.070: require('nightfox.group.modules.cmp') +010.480 000.044 000.044: require('nightfox.group.modules.coc') +010.561 000.060 000.060: require('nightfox.group.modules.dap_ui') +010.629 000.046 000.046: require('nightfox.group.modules.dashboard') +010.703 000.061 000.061: require('nightfox.group.modules.diagnostic') +010.761 000.043 000.043: require('nightfox.group.modules.fern') +010.817 000.042 000.042: require('nightfox.group.modules.fidget') +010.873 000.044 000.044: require('nightfox.group.modules.gitgutter') +010.931 000.043 000.043: require('nightfox.group.modules.gitsigns') +010.996 000.053 000.053: require('nightfox.group.modules.glyph_palette') +011.076 000.047 000.047: require('nightfox.group.modules.hop') +011.142 000.043 000.043: require('nightfox.group.modules.illuminate') +011.212 000.050 000.050: require('nightfox.group.modules.indent_blankline') +011.279 000.043 000.043: require('nightfox.group.modules.lazy') +011.348 000.050 000.050: require('nightfox.group.modules.leap') +011.410 000.042 000.042: require('nightfox.group.modules.lightspeed') +011.485 000.050 000.050: require('nightfox.group.modules.lsp_saga') +011.577 000.071 000.071: require('nightfox.group.modules.lsp_semantic_tokens') +011.647 000.046 000.046: require('nightfox.group.modules.lsp_trouble') +011.797 000.130 000.130: require('nightfox.group.modules.mini') +011.874 000.046 000.046: require('nightfox.group.modules.modes') +011.951 000.050 000.050: require('nightfox.group.modules.native_lsp') +012.038 000.064 000.064: require('nightfox.group.modules.navic') +012.126 000.055 000.055: require('nightfox.group.modules.neogit') +012.215 000.061 000.061: require('nightfox.group.modules.neotest') +012.314 000.071 000.071: require('nightfox.group.modules.neotree') +012.449 000.087 000.087: require('nightfox.group.modules.notify') +012.604 000.091 000.091: require('nightfox.group.modules.nvimtree') +012.727 000.062 000.062: require('nightfox.group.modules.pounce') +012.820 000.057 000.057: require('nightfox.group.modules.signify') +012.917 000.056 000.056: require('nightfox.group.modules.sneak') +013.015 000.057 000.057: require('nightfox.group.modules.symbol_outline') +013.203 000.083 000.083: require('nightfox.group.modules.rainbow-delimiters') +013.361 000.107 000.107: require('nightfox.group.modules.telescope') +013.528 000.136 000.136: require('nightfox.group.modules.treesitter') +013.629 000.065 000.065: require('nightfox.group.modules.tsrainbow') +013.708 000.047 000.047: require('nightfox.group.modules.tsrainbow2') +013.787 000.046 000.046: require('nightfox.group.modules.whichkey') +013.868 000.050 000.050: require('nightfox.group.terminal') +016.007 000.178 000.178: require('nightfox.palette.dawnfox') +019.233 000.191 000.191: require('nightfox.palette.dayfox') +021.989 000.137 000.137: require('nightfox.palette.duskfox') +024.842 000.209 000.209: require('nightfox.palette.nightfox') +027.485 000.220 000.220: require('nightfox.palette.nordfox') +030.303 000.222 000.222: require('nightfox.palette.terafox') +033.207 025.560 019.738: sourcing /nix/store/cbvmcpy9w5nkai20x736xqaglc5njrdd-mnw-configDir/pack/mnw/opt/nightfox.nvim/colors/carbonfox.vim +034.917 001.209 001.209: require('mini.statusline') +037.937 002.548 002.548: require('mini.files') +038.085 000.013 000.013: sourcing nvim_exec2() called at /nix/store/cbvmcpy9w5nkai20x736xqaglc5njrdd-mnw-configDir/init.lua:0 +038.093 000.004 000.004: sourcing nvim_exec2() called at /nix/store/cbvmcpy9w5nkai20x736xqaglc5njrdd-mnw-configDir/init.lua:0 +039.426 000.109 000.109: require('vim.treesitter.language') +039.487 000.059 000.059: require('vim.func') +039.623 000.133 000.133: require('vim.func._memoize') +039.639 000.746 000.445: require('vim.treesitter.query') +039.755 000.114 000.114: require('vim.treesitter._range') +039.764 001.341 000.480: require('vim.treesitter.languagetree') +039.768 001.561 000.220: require('vim.treesitter') +040.000 000.231 000.231: require('vim.treesitter._fold') +040.039 001.909 000.117: require('options') +040.408 000.368 000.368: require('keymaps') +041.227 000.181 000.181: require('vim.lsp.log') +041.705 000.475 000.475: require('vim.lsp.protocol') +042.629 000.921 000.921: require('vim.lsp.util') +042.985 000.164 000.164: require('vim.lsp.sync') +042.988 000.357 000.193: require('vim.lsp._changetracking') +043.407 000.131 000.131: require('vim.lsp._transport') +043.453 000.448 000.316: require('vim.lsp.rpc') +043.491 003.024 000.642: require('vim.lsp') +043.538 003.127 000.104: require('lsp') +043.539 039.405 003.009: sourcing /nix/store/cbvmcpy9w5nkai20x736xqaglc5njrdd-mnw-configDir/init.lua +043.543 001.150: sourcing vimrc file(s) +043.802 000.092 000.092: sourcing nvim_exec2() called at /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/filetype.lua:0 +043.806 000.150 000.058: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/filetype.lua +044.036 000.083 000.083: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/syntax/synload.vim +044.133 000.278 000.195: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/syntax/syntax.vim +044.873 000.010 000.010: sourcing /nix/store/cbvmcpy9w5nkai20x736xqaglc5njrdd-mnw-configDir/pack/mnw/opt/nightfox.nvim/plugin/nightfox.vim +045.460 000.170 000.170: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/gzip.vim +046.275 000.142 000.142: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim +046.373 000.886 000.744: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/matchit.vim +046.487 000.093 000.093: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/matchparen.vim +047.292 000.178 000.178: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/pack/dist/opt/netrw/plugin/netrwPlugin.vim +047.382 000.872 000.695: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/netrwPlugin.vim +047.559 000.151 000.151: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/rplugin.vim +047.722 000.039 000.039: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/shada.vim +047.761 000.011 000.011: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/spellfile.vim +047.847 000.061 000.061: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/tarPlugin.vim +047.891 000.012 000.012: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/tutor.vim +048.009 000.090 000.090: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/zipPlugin.vim +048.092 000.036 000.036: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/editorconfig.lua +048.164 000.045 000.045: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/man.lua +048.243 000.053 000.053: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/osc52.lua +048.296 000.027 000.027: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/tohtml.lua +048.312 001.783: loading rtp plugins +050.038 000.125 000.125: require('nvim-treesitter.utils') +051.541 001.500 001.500: require('nvim-treesitter.parsers') +052.328 000.055 000.055: require('nvim-treesitter.compat') +052.651 000.221 000.221: require('nvim-treesitter.ts_utils') +052.655 000.325 000.103: require('nvim-treesitter.tsrange') +052.711 000.055 000.055: require('nvim-treesitter.caching') +052.718 000.640 000.205: require('nvim-treesitter.query') +052.726 001.007 000.367: require('nvim-treesitter.configs') +052.728 001.184 000.177: require('nvim-treesitter.info') +052.892 000.164 000.164: require('nvim-treesitter.shell_command_selectors') +052.904 003.426 000.453: require('nvim-treesitter.install') +052.962 000.056 000.056: require('nvim-treesitter.statusline') +053.064 000.100 000.100: require('nvim-treesitter.query_predicates') +053.066 004.520 000.937: require('nvim-treesitter') +053.766 005.268 000.748: sourcing /nix/store/cbvmcpy9w5nkai20x736xqaglc5njrdd-mnw-configDir/pack/mnw/start/nvim-treesitter/plugin/nvim-treesitter.lua +054.061 000.481: loading packages +054.062 000.001: loading after plugins +054.069 000.007: inits 3 +056.199 002.130: reading ShaDa +056.402 000.203: opening buffers +056.434 000.032: BufEnter autocommands +056.435 000.002: editing files in windows +058.603 001.755 001.755: require('mini.clue') +059.003 000.813: VimEnter autocommands +059.014 000.004 000.004: require('vim.F') +059.153 000.129 000.129: require('vim.termcap') +059.170 000.010 000.010: require('vim.text') +059.185 000.039: UIEnter autocommands +059.501 000.222 000.222: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/autoload/provider/clipboard.vim +059.506 000.098: before starting main loop +060.037 000.531: first screen update +060.039 000.002: --- NVIM STARTED --- + +--- Startup times for process: Primary (or UI client) --- + +times in msec + clock self+sourced self: sourced script + clock elapsed: other lines + +000.002 000.002: --- NVIM STARTING --- +000.139 000.137: event init +000.214 000.074: early init +000.263 000.050: locale set +000.317 000.054: init first window +000.734 000.417: inits 1 +000.745 000.011: window checked +000.747 000.002: parsing arguments +001.211 000.039 000.039: require('vim.shared') +001.293 000.034 000.034: require('vim.inspect') +001.333 000.033 000.033: require('vim._options') +001.334 000.120 000.054: require('vim._editor') +001.335 000.186 000.027: require('vim._init_packages') +001.337 000.403: init lua interpreter +002.511 001.174: nvim_ui_attach +002.737 000.227: nvim_set_client_info +002.738 000.001: --- NVIM STARTED --- + +--- Startup times for process: Embedded --- + +times in msec + clock self+sourced self: sourced script + clock elapsed: other lines + +000.002 000.002: --- NVIM STARTING --- +000.153 000.151: event init +000.243 000.090: early init +000.311 000.068: locale set +000.364 000.053: init first window +000.811 000.447: inits 1 +000.826 000.014: window checked +000.828 000.002: parsing arguments +001.294 000.042 000.042: require('vim.shared') +001.387 000.039 000.039: require('vim.inspect') +001.432 000.036 000.036: require('vim._options') +001.434 000.135 000.059: require('vim._editor') +001.435 000.209 000.032: require('vim._init_packages') +001.436 000.399: init lua interpreter +001.502 000.066: expanding arguments +001.528 000.026: inits 2 +001.763 000.235: init highlight +001.764 000.001: waiting for UI +001.924 000.160: done waiting for UI +001.930 000.006: clear screen +002.043 000.009 000.009: require('vim.keymap') +002.686 000.122 000.122: sourcing nvim_exec2() +002.844 000.913 000.782: require('vim._defaults') +002.846 000.004: init default mappings & autocommands +003.117 000.271: --cmd commands +004.259 000.063 000.063: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/ftplugin.vim +004.337 000.017 000.017: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/indent.vim +004.712 000.134 000.134: require('lz.n') +004.827 000.113 000.113: require('lz.n.spec') +004.891 000.061 000.061: require('vim.fs') +005.009 000.026 000.026: require('plugins.colorschemes') +005.326 000.315 000.315: require('vim.iter') +005.649 000.104 000.104: require('lz.n.loader') +005.726 000.075 000.075: require('lz.n.handler.state') +005.730 000.274 000.095: require('lz.n.handler.cmd') +005.869 000.138 000.138: require('lz.n.handler.event') +005.922 000.052 000.052: require('lz.n.handler.ft') +006.043 000.119 000.119: require('lz.n.handler.keys') +006.099 000.055 000.055: require('lz.n.handler.colorscheme') +006.136 000.036 000.036: require('lz.n.handler.lazy') +006.141 000.790 000.117: require('lz.n.handler') +006.192 000.041 000.041: require('plugins.mini-clue') +006.293 000.024 000.024: require('plugins.mini-files') +006.344 000.041 000.041: require('plugins.mini-pick') +006.374 000.021 000.021: require('plugins.mini-statusline') +009.396 002.466 002.466: require('mini.files') +009.527 000.009 000.009: sourcing nvim_exec2() called at /nix/store/x872xdfy32agph86rdaig44mffp5w2cn-mnw-configDir/init.lua:0 +009.534 000.003 000.003: sourcing nvim_exec2() called at /nix/store/x872xdfy32agph86rdaig44mffp5w2cn-mnw-configDir/init.lua:0 +011.147 001.118 001.118: require('mini.statusline') +012.446 000.104 000.104: require('vim.treesitter.language') +012.501 000.053 000.053: require('vim.func') +012.591 000.087 000.087: require('vim.func._memoize') +012.607 000.678 000.434: require('vim.treesitter.query') +012.732 000.124 000.124: require('vim.treesitter._range') +012.751 001.286 000.484: require('vim.treesitter.languagetree') +012.761 001.497 000.211: require('vim.treesitter') +013.009 000.246 000.246: require('vim.treesitter._fold') +013.051 001.857 000.115: require('options') +013.368 000.315 000.315: require('keymaps') +014.227 000.157 000.157: require('vim.lsp.log') +014.879 000.649 000.649: require('vim.lsp.protocol') +016.063 001.180 001.180: require('vim.lsp.util') +016.575 000.219 000.219: require('vim.lsp.sync') +016.579 000.513 000.294: require('vim.lsp._changetracking') +017.090 000.130 000.130: require('vim.lsp._transport') +017.122 000.541 000.411: require('vim.lsp.rpc') +017.161 003.726 000.687: require('vim.lsp') +017.207 003.838 000.111: require('lsp') +017.210 012.717 001.546: sourcing /nix/store/x872xdfy32agph86rdaig44mffp5w2cn-mnw-configDir/init.lua +017.215 001.300: sourcing vimrc file(s) +017.436 000.070 000.070: sourcing nvim_exec2() called at /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/filetype.lua:0 +017.439 000.123 000.053: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/filetype.lua +017.614 000.063 000.063: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/syntax/synload.vim +017.693 000.216 000.153: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/syntax/syntax.vim +018.697 000.154 000.154: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/gzip.vim +019.445 000.134 000.134: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim +019.537 000.816 000.682: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/matchit.vim +019.655 000.098 000.098: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/matchparen.vim +020.466 000.172 000.172: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/pack/dist/opt/netrw/plugin/netrwPlugin.vim +020.559 000.869 000.697: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/netrwPlugin.vim +020.741 000.154 000.154: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/rplugin.vim +020.805 000.036 000.036: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/shada.vim +020.846 000.011 000.011: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/spellfile.vim +020.928 000.059 000.059: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/tarPlugin.vim +020.976 000.011 000.011: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/tutor.vim +021.091 000.092 000.092: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/zipPlugin.vim +021.173 000.035 000.035: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/editorconfig.lua +021.242 000.043 000.043: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/man.lua +021.317 000.049 000.049: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/osc52.lua +021.365 000.023 000.023: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/tohtml.lua +021.380 001.377: loading rtp plugins +023.088 000.125 000.125: require('nvim-treesitter.utils') +024.332 001.241 001.241: require('nvim-treesitter.parsers') +024.990 000.058 000.058: require('nvim-treesitter.compat') +025.336 000.232 000.232: require('nvim-treesitter.ts_utils') +025.340 000.348 000.115: require('nvim-treesitter.tsrange') +025.400 000.059 000.059: require('nvim-treesitter.caching') +025.409 000.695 000.230: require('nvim-treesitter.query') +025.420 000.966 000.271: require('nvim-treesitter.configs') +025.422 001.087 000.121: require('nvim-treesitter.info') +025.616 000.193 000.193: require('nvim-treesitter.shell_command_selectors') +025.635 003.096 000.450: require('nvim-treesitter.install') +025.706 000.069 000.069: require('nvim-treesitter.statusline') +025.814 000.106 000.106: require('nvim-treesitter.query_predicates') +025.816 004.226 000.955: require('nvim-treesitter') +026.264 004.699 000.473: sourcing /nix/store/x872xdfy32agph86rdaig44mffp5w2cn-mnw-configDir/pack/mnw/start/nvim-treesitter/plugin/nvim-treesitter.lua +026.592 000.513: loading packages +026.594 000.002: loading after plugins +026.601 000.008: inits 3 +028.735 002.134: reading ShaDa +028.967 000.232: opening buffers +029.012 000.045: BufEnter autocommands +029.014 000.002: editing files in windows +029.428 000.019 000.019: sourcing /nix/store/x872xdfy32agph86rdaig44mffp5w2cn-mnw-configDir/pack/mnw/opt/nightfox.nvim/plugin/nightfox.vim +030.868 000.084 000.084: require('nightfox.lib.collect') +030.979 000.109 000.109: require('nightfox.util') +031.063 000.442 000.249: require('nightfox.config') +031.189 000.124 000.124: require('nightfox') +031.263 000.073 000.073: require('nightfox.override') +031.373 000.061 000.061: require('nightfox.lib.hash') +031.452 000.075 000.075: require('nightfox.lib.log') +031.654 000.090 000.090: require('nightfox.lib.highlight') +031.664 000.210 000.120: require('nightfox.lib.compiler') +031.791 000.126 000.126: require('nightfox.palette') +031.939 000.077 000.077: require('nightfox.util.template') +031.941 000.148 000.071: require('nightfox.spec') +032.328 000.248 000.248: require('nightfox.lib.color') +032.397 000.067 000.067: require('nightfox.lib.shade') +032.505 000.561 000.246: require('nightfox.palette.carbonfox') +032.635 000.096 000.096: require('nightfox.group') +032.795 000.158 000.158: require('nightfox.group.editor') +032.929 000.118 000.118: require('nightfox.group.syntax') +033.029 000.061 000.061: require('nightfox.group.modules.alpha') +033.088 000.047 000.047: require('nightfox.group.modules.aerial') +033.176 000.077 000.077: require('nightfox.group.modules.barbar') +033.283 000.087 000.087: require('nightfox.group.modules.blink') +033.402 000.084 000.084: require('nightfox.group.modules.cmp') +033.475 000.051 000.051: require('nightfox.group.modules.coc') +033.571 000.076 000.076: require('nightfox.group.modules.dap_ui') +033.652 000.054 000.054: require('nightfox.group.modules.dashboard') +033.760 000.082 000.082: require('nightfox.group.modules.diagnostic') +033.849 000.050 000.050: require('nightfox.group.modules.fern') +033.914 000.049 000.049: require('nightfox.group.modules.fidget') +033.984 000.052 000.052: require('nightfox.group.modules.gitgutter') +034.050 000.046 000.046: require('nightfox.group.modules.gitsigns') +034.130 000.062 000.062: require('nightfox.group.modules.glyph_palette') +034.253 000.089 000.089: require('nightfox.group.modules.hop') +034.376 000.092 000.092: require('nightfox.group.modules.illuminate') +034.519 000.114 000.114: require('nightfox.group.modules.indent_blankline') +034.649 000.101 000.101: require('nightfox.group.modules.lazy') +034.816 000.132 000.132: require('nightfox.group.modules.leap') +034.911 000.063 000.063: require('nightfox.group.modules.lightspeed') +034.989 000.054 000.054: require('nightfox.group.modules.lsp_saga') +035.071 000.060 000.060: require('nightfox.group.modules.lsp_semantic_tokens') +035.139 000.044 000.044: require('nightfox.group.modules.lsp_trouble') +035.291 000.131 000.131: require('nightfox.group.modules.mini') +035.369 000.046 000.046: require('nightfox.group.modules.modes') +035.444 000.050 000.050: require('nightfox.group.modules.native_lsp') +035.533 000.062 000.062: require('nightfox.group.modules.navic') +035.610 000.052 000.052: require('nightfox.group.modules.neogit') +035.695 000.061 000.061: require('nightfox.group.modules.neotest') +035.778 000.058 000.058: require('nightfox.group.modules.neotree') +035.872 000.060 000.060: require('nightfox.group.modules.notify') +035.973 000.060 000.060: require('nightfox.group.modules.nvimtree') +036.051 000.046 000.046: require('nightfox.group.modules.pounce') +036.156 000.056 000.056: require('nightfox.group.modules.signify') +036.255 000.061 000.061: require('nightfox.group.modules.sneak') +036.352 000.058 000.058: require('nightfox.group.modules.symbol_outline') +036.445 000.054 000.054: require('nightfox.group.modules.rainbow-delimiters') +036.537 000.048 000.048: require('nightfox.group.modules.telescope') +036.731 000.140 000.140: require('nightfox.group.modules.treesitter') +036.829 000.050 000.050: require('nightfox.group.modules.tsrainbow') +036.918 000.048 000.048: require('nightfox.group.modules.tsrainbow2') +037.005 000.046 000.046: require('nightfox.group.modules.whichkey') +037.095 000.050 000.050: require('nightfox.group.terminal') +039.303 000.184 000.184: require('nightfox.palette.dawnfox') +042.974 000.215 000.215: require('nightfox.palette.dayfox') +045.572 000.164 000.164: require('nightfox.palette.duskfox') +048.755 000.442 000.442: require('nightfox.palette.nightfox') +051.405 000.189 000.189: require('nightfox.palette.nordfox') +053.772 000.182 000.182: require('nightfox.palette.terafox') +057.129 026.530 020.097: sourcing /nix/store/x872xdfy32agph86rdaig44mffp5w2cn-mnw-configDir/pack/mnw/opt/nightfox.nvim/colors/carbonfox.vim +059.225 001.732 001.732: require('mini.clue') +059.745 002.450: VimEnter autocommands +059.757 000.005 000.005: require('vim.F') +059.895 000.129 000.129: require('vim.termcap') +059.911 000.009 000.009: require('vim.text') +059.926 000.039: UIEnter autocommands +060.262 000.234 000.234: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/autoload/provider/clipboard.vim +060.267 000.106: before starting main loop +060.805 000.538: first screen update +060.807 000.002: --- NVIM STARTED --- + +--- Startup times for process: Primary (or UI client) --- + +times in msec + clock self+sourced self: sourced script + clock elapsed: other lines + +000.002 000.002: --- NVIM STARTING --- +000.137 000.134: event init +000.221 000.085: early init +000.273 000.052: locale set +000.325 000.052: init first window +000.695 000.370: inits 1 +000.704 000.009: window checked +000.707 000.003: parsing arguments +001.144 000.039 000.039: require('vim.shared') +001.243 000.035 000.035: require('vim.inspect') +001.298 000.047 000.047: require('vim._options') +001.299 000.150 000.069: require('vim._editor') +001.300 000.215 000.026: require('vim._init_packages') +001.302 000.380: init lua interpreter +002.474 001.173: nvim_ui_attach +002.699 000.225: nvim_set_client_info +002.701 000.001: --- NVIM STARTED --- + +--- Startup times for process: Embedded --- + +times in msec + clock self+sourced self: sourced script + clock elapsed: other lines + +000.002 000.002: --- NVIM STARTING --- +000.141 000.138: event init +000.224 000.083: early init +000.292 000.068: locale set +000.346 000.054: init first window +000.758 000.412: inits 1 +000.770 000.012: window checked +000.773 000.003: parsing arguments +001.277 000.043 000.043: require('vim.shared') +001.356 000.033 000.033: require('vim.inspect') +001.397 000.034 000.034: require('vim._options') +001.399 000.116 000.049: require('vim._editor') +001.400 000.191 000.032: require('vim._init_packages') +001.402 000.438: init lua interpreter +001.482 000.080: expanding arguments +001.515 000.033: inits 2 +001.751 000.236: init highlight +001.752 000.001: waiting for UI +001.951 000.199: done waiting for UI +001.957 000.006: clear screen +002.069 000.008 000.008: require('vim.keymap') +002.712 000.115 000.115: sourcing nvim_exec2() +002.865 000.906 000.783: require('vim._defaults') +002.867 000.004: init default mappings & autocommands +003.137 000.270: --cmd commands +004.223 000.058 000.058: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/ftplugin.vim +004.293 000.017 000.017: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/indent.vim +004.717 000.150 000.150: require('lz.n') +004.882 000.162 000.162: require('lz.n.spec') +004.905 000.019 000.019: require('vim.fs') +005.035 000.030 000.030: require('plugins.colorschemes') +005.338 000.300 000.300: require('vim.iter') +005.677 000.104 000.104: require('lz.n.loader') +005.741 000.062 000.062: require('lz.n.handler.state') +005.744 000.253 000.087: require('lz.n.handler.cmd') +005.881 000.137 000.137: require('lz.n.handler.event') +005.953 000.071 000.071: require('lz.n.handler.ft') +006.076 000.122 000.122: require('lz.n.handler.keys') +006.133 000.055 000.055: require('lz.n.handler.colorscheme') +006.173 000.039 000.039: require('lz.n.handler.lazy') +006.175 000.788 000.113: require('lz.n.handler') +006.229 000.043 000.043: require('plugins.mini-clue') +006.261 000.021 000.021: require('plugins.mini-files') +006.344 000.043 000.043: require('plugins.mini-pick') +006.380 000.026 000.026: require('plugins.mini-statusline') +008.333 001.343 001.343: require('mini.statusline') +011.273 002.399 002.399: require('mini.files') +011.409 000.011 000.011: sourcing nvim_exec2() called at /nix/store/2z9b6mqsz517y6bwh0z4z98cxhfr9pni-mnw-configDir/init.lua:0 +011.415 000.003 000.003: sourcing nvim_exec2() called at /nix/store/2z9b6mqsz517y6bwh0z4z98cxhfr9pni-mnw-configDir/init.lua:0 +012.730 000.103 000.103: require('vim.treesitter.language') +012.786 000.053 000.053: require('vim.func') +012.868 000.079 000.079: require('vim.func._memoize') +012.884 000.674 000.439: require('vim.treesitter.query') +013.000 000.115 000.115: require('vim.treesitter._range') +013.009 001.265 000.476: require('vim.treesitter.languagetree') +013.013 001.472 000.207: require('vim.treesitter') +013.267 000.252 000.252: require('vim.treesitter._fold') +013.310 001.846 000.122: require('options') +013.639 000.327 000.327: require('keymaps') +014.514 000.150 000.150: require('vim.lsp.log') +015.137 000.620 000.620: require('vim.lsp.protocol') +016.377 001.237 001.237: require('vim.lsp.util') +016.891 000.235 000.235: require('vim.lsp.sync') +016.895 000.515 000.280: require('vim.lsp._changetracking') +017.339 000.126 000.126: require('vim.lsp._transport') +017.349 000.453 000.327: require('vim.lsp.rpc') +017.391 003.684 000.711: require('vim.lsp') +017.437 003.796 000.111: require('lsp') +017.439 012.985 001.678: sourcing /nix/store/2z9b6mqsz517y6bwh0z4z98cxhfr9pni-mnw-configDir/init.lua +017.445 001.249: sourcing vimrc file(s) +017.664 000.068 000.068: sourcing nvim_exec2() called at /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/filetype.lua:0 +017.667 000.119 000.051: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/filetype.lua +017.889 000.061 000.061: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/syntax/synload.vim +017.960 000.254 000.193: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/syntax/syntax.vim +018.962 000.154 000.154: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/gzip.vim +019.692 000.121 000.121: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim +019.782 000.795 000.674: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/matchit.vim +019.894 000.092 000.092: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/matchparen.vim +020.672 000.170 000.170: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/pack/dist/opt/netrw/plugin/netrwPlugin.vim +020.763 000.837 000.667: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/netrwPlugin.vim +020.953 000.161 000.161: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/rplugin.vim +021.018 000.036 000.036: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/shada.vim +021.059 000.011 000.011: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/spellfile.vim +021.142 000.059 000.059: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/tarPlugin.vim +021.185 000.011 000.011: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/tutor.vim +021.305 000.096 000.096: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/zipPlugin.vim +021.382 000.032 000.032: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/editorconfig.lua +021.448 000.040 000.040: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/man.lua +021.519 000.044 000.044: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/osc52.lua +021.566 000.022 000.022: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/tohtml.lua +021.581 001.372: loading rtp plugins +023.209 000.114 000.114: require('nvim-treesitter.utils') +024.385 001.173 001.173: require('nvim-treesitter.parsers') +025.021 000.059 000.059: require('nvim-treesitter.compat') +025.386 000.244 000.244: require('nvim-treesitter.ts_utils') +025.390 000.368 000.124: require('nvim-treesitter.tsrange') +025.452 000.060 000.060: require('nvim-treesitter.caching') +025.460 000.712 000.225: require('nvim-treesitter.query') +025.471 000.966 000.254: require('nvim-treesitter.configs') +025.473 001.086 000.120: require('nvim-treesitter.info') +025.659 000.185 000.185: require('nvim-treesitter.shell_command_selectors') +025.676 002.969 000.412: require('nvim-treesitter.install') +025.736 000.059 000.059: require('nvim-treesitter.statusline') +025.846 000.109 000.109: require('nvim-treesitter.query_predicates') +025.849 004.060 000.923: require('nvim-treesitter') +026.336 004.570 000.510: sourcing /nix/store/2z9b6mqsz517y6bwh0z4z98cxhfr9pni-mnw-configDir/pack/mnw/start/nvim-treesitter/plugin/nvim-treesitter.lua +026.634 000.483: loading packages +026.635 000.001: loading after plugins +026.642 000.007: inits 3 +028.839 002.197: reading ShaDa +029.066 000.227: opening buffers +029.115 000.049: BufEnter autocommands +029.117 000.002: editing files in windows +031.833 002.215 002.215: require('mini.clue') +032.650 000.019 000.019: sourcing /nix/store/2z9b6mqsz517y6bwh0z4z98cxhfr9pni-mnw-configDir/pack/mnw/opt/nightfox.nvim/plugin/nightfox.vim +034.040 000.008 000.008: require('vim.F') +034.140 002.781: VimEnter autocommands +034.296 000.136 000.136: require('vim.termcap') +034.326 000.019 000.019: require('vim.text') +034.347 000.052: UIEnter autocommands +034.665 000.230 000.230: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/autoload/provider/clipboard.vim +034.670 000.094: before starting main loop +035.282 000.612: first screen update +035.284 000.002: --- NVIM STARTED --- + +--- Startup times for process: Primary (or UI client) --- + +times in msec + clock self+sourced self: sourced script + clock elapsed: other lines + +000.002 000.002: --- NVIM STARTING --- +000.128 000.126: event init +000.200 000.073: early init +000.243 000.042: locale set +000.290 000.047: init first window +000.704 000.414: inits 1 +000.713 000.009: window checked +000.715 000.002: parsing arguments +001.147 000.036 000.036: require('vim.shared') +001.229 000.034 000.034: require('vim.inspect') +001.267 000.031 000.031: require('vim._options') +001.269 000.118 000.053: require('vim._editor') +001.270 000.179 000.025: require('vim._init_packages') +001.272 000.377: init lua interpreter +002.430 001.158: nvim_ui_attach +002.668 000.238: nvim_set_client_info +002.669 000.001: --- NVIM STARTED --- + +--- Startup times for process: Embedded --- + +times in msec + clock self+sourced self: sourced script + clock elapsed: other lines + +000.003 000.003: --- NVIM STARTING --- +000.155 000.152: event init +000.240 000.085: early init +000.312 000.071: locale set +000.364 000.052: init first window +000.714 000.350: inits 1 +000.728 000.014: window checked +000.731 000.002: parsing arguments +001.238 000.036 000.036: require('vim.shared') +001.321 000.034 000.034: require('vim.inspect') +001.362 000.033 000.033: require('vim._options') +001.363 000.121 000.054: require('vim._editor') +001.364 000.194 000.037: require('vim._init_packages') +001.366 000.441: init lua interpreter +001.421 000.055: expanding arguments +001.443 000.023: inits 2 +001.662 000.219: init highlight +001.663 000.001: waiting for UI +001.812 000.149: done waiting for UI +001.818 000.006: clear screen +001.930 000.007 000.007: require('vim.keymap') +002.582 000.117 000.117: sourcing nvim_exec2() +002.716 000.896 000.773: require('vim._defaults') +002.718 000.003: init default mappings & autocommands +003.022 000.304: --cmd commands +004.244 000.048 000.048: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/ftplugin.vim +004.312 000.016 000.016: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/indent.vim +004.629 000.121 000.121: require('lz.n') +004.787 000.156 000.156: require('lz.n.spec') +004.807 000.017 000.017: require('vim.fs') +004.934 000.026 000.026: require('plugins.colorschemes') +005.276 000.339 000.339: require('vim.iter') +005.584 000.098 000.098: require('lz.n.loader') +005.735 000.149 000.149: require('lz.n.handler.state') +005.742 000.338 000.092: require('lz.n.handler.cmd') +005.907 000.163 000.163: require('lz.n.handler.event') +005.971 000.062 000.062: require('lz.n.handler.ft') +006.118 000.146 000.146: require('lz.n.handler.keys') +006.181 000.061 000.061: require('lz.n.handler.colorscheme') +006.220 000.038 000.038: require('lz.n.handler.lazy') +006.222 000.926 000.118: require('lz.n.handler') +006.302 000.059 000.059: require('plugins.mini-clue') +006.338 000.020 000.020: require('plugins.mini-files') +006.388 000.039 000.039: require('plugins.mini-pick') +006.456 000.023 000.023: require('plugins.mini-statusline') +008.376 001.262 001.262: require('mini.statusline') +011.765 002.878 002.878: require('mini.files') +011.824 000.016 000.016: sourcing nvim_exec2() called at /nix/store/vhmywbyv63nynk123qfwgclvrwvyba70-mnw-configDir/init.lua:0 +011.831 000.004 000.004: sourcing nvim_exec2() called at /nix/store/vhmywbyv63nynk123qfwgclvrwvyba70-mnw-configDir/init.lua:0 +013.416 000.111 000.111: require('vim.treesitter.language') +013.472 000.053 000.053: require('vim.func') +013.599 000.123 000.123: require('vim.func._memoize') +013.621 000.801 000.513: require('vim.treesitter.query') +013.749 000.126 000.126: require('vim.treesitter._range') +013.758 001.517 000.590: require('vim.treesitter.languagetree') +013.762 001.791 000.274: require('vim.treesitter') +014.009 000.246 000.246: require('vim.treesitter._fold') +014.061 002.185 000.149: require('options') +014.325 000.262 000.262: require('keymaps') +015.207 000.155 000.155: require('vim.lsp.log') +015.860 000.650 000.650: require('vim.lsp.protocol') +017.298 001.435 001.435: require('vim.lsp.util') +017.804 000.170 000.170: require('vim.lsp.sync') +017.808 000.505 000.335: require('vim.lsp._changetracking') +018.211 000.130 000.130: require('vim.lsp._transport') +018.223 000.413 000.283: require('vim.lsp.rpc') +018.256 003.864 000.706: require('vim.lsp') +018.277 003.950 000.085: require('lsp') +018.279 013.813 001.531: sourcing /nix/store/vhmywbyv63nynk123qfwgclvrwvyba70-mnw-configDir/init.lua +018.286 001.388: sourcing vimrc file(s) +018.539 000.078 000.078: sourcing nvim_exec2() called at /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/filetype.lua:0 +018.542 000.147 000.069: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/filetype.lua +018.718 000.059 000.059: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/syntax/synload.vim +018.783 000.199 000.140: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/syntax/syntax.vim +019.799 000.146 000.146: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/gzip.vim +020.553 000.138 000.138: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/pack/dist/opt/matchit/plugin/matchit.vim +020.644 000.822 000.684: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/matchit.vim +020.754 000.090 000.090: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/matchparen.vim +021.542 000.172 000.172: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/pack/dist/opt/netrw/plugin/netrwPlugin.vim +021.632 000.855 000.683: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/netrwPlugin.vim +021.807 000.146 000.146: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/rplugin.vim +021.871 000.036 000.036: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/shada.vim +021.912 000.011 000.011: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/spellfile.vim +021.996 000.060 000.060: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/tarPlugin.vim +022.048 000.020 000.020: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/tutor.vim +022.170 000.094 000.094: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/zipPlugin.vim +022.248 000.032 000.032: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/editorconfig.lua +022.319 000.042 000.042: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/man.lua +022.392 000.046 000.046: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/osc52.lua +022.441 000.024 000.024: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/plugin/tohtml.lua +022.456 001.400: loading rtp plugins +024.090 000.121 000.121: require('nvim-treesitter.utils') +025.507 001.414 001.414: require('nvim-treesitter.parsers') +026.238 000.072 000.072: require('nvim-treesitter.compat') +026.596 000.233 000.233: require('nvim-treesitter.ts_utils') +026.602 000.362 000.129: require('nvim-treesitter.tsrange') +026.661 000.058 000.058: require('nvim-treesitter.caching') +026.669 000.746 000.254: require('nvim-treesitter.query') +026.685 001.039 000.293: require('nvim-treesitter.configs') +026.687 001.177 000.138: require('nvim-treesitter.info') +026.900 000.212 000.212: require('nvim-treesitter.shell_command_selectors') +026.922 003.337 000.413: require('nvim-treesitter.install') +026.990 000.066 000.066: require('nvim-treesitter.statusline') +027.126 000.135 000.135: require('nvim-treesitter.query_predicates') +027.128 004.465 000.927: require('nvim-treesitter') +027.633 004.993 000.528: sourcing /nix/store/vhmywbyv63nynk123qfwgclvrwvyba70-mnw-configDir/pack/mnw/start/nvim-treesitter/plugin/nvim-treesitter.lua +027.932 000.482: loading packages +027.933 000.001: loading after plugins +027.940 000.007: inits 3 +029.975 002.035: reading ShaDa +030.226 000.251: opening buffers +030.270 000.044: BufEnter autocommands +030.272 000.003: editing files in windows +033.012 002.226 002.226: require('mini.clue') +033.802 000.017 000.017: sourcing /nix/store/vhmywbyv63nynk123qfwgclvrwvyba70-mnw-configDir/pack/mnw/opt/nightfox.nvim/plugin/nightfox.vim +035.178 000.082 000.082: require('nightfox.lib.collect') +035.276 000.096 000.096: require('nightfox.util') +035.363 000.372 000.194: require('nightfox.config') +035.365 001.362 000.990: require('nightfox') +035.443 000.076 000.076: require('nightfox.override') +035.549 000.060 000.060: require('nightfox.lib.hash') +035.655 000.077 000.077: require('nightfox.lib.log') +035.941 000.113 000.113: require('nightfox.lib.highlight') +035.943 000.286 000.173: require('nightfox.lib.compiler') +036.105 000.160 000.160: require('nightfox.palette') +036.299 000.102 000.102: require('nightfox.util.template') +036.301 000.194 000.092: require('nightfox.spec') +036.839 000.353 000.353: require('nightfox.lib.color') +036.909 000.067 000.067: require('nightfox.lib.shade') +037.005 000.702 000.281: require('nightfox.palette.carbonfox') +037.116 000.088 000.088: require('nightfox.group') +037.226 000.108 000.108: require('nightfox.group.editor') +037.325 000.092 000.092: require('nightfox.group.syntax') +037.427 000.069 000.069: require('nightfox.group.modules.diagnostic') +037.504 000.064 000.064: require('nightfox.group.modules.lsp_semantic_tokens') +037.568 000.051 000.051: require('nightfox.group.modules.native_lsp') +037.713 000.133 000.133: require('nightfox.group.modules.treesitter') +037.805 000.053 000.053: require('nightfox.group.terminal') +038.768 000.188 000.188: require('nightfox.palette.dawnfox') +039.734 000.152 000.152: require('nightfox.palette.dayfox') +040.601 000.145 000.145: require('nightfox.palette.duskfox') +041.565 000.133 000.133: require('nightfox.palette.nightfox') +042.550 000.157 000.157: require('nightfox.palette.nordfox') +043.625 000.159 000.159: require('nightfox.palette.terafox') +044.898 000.379 000.379: sourcing /nix/store/vhmywbyv63nynk123qfwgclvrwvyba70-mnw-configDir/pack/mnw/opt/nightfox.nvim/colors/carbonfox.vim +045.021 007.620: VimEnter autocommands +045.048 000.021 000.021: require('vim.F') +045.231 000.167 000.167: require('vim.termcap') +045.257 000.017 000.017: require('vim.text') +045.271 000.046: UIEnter autocommands +045.588 000.225 000.225: sourcing /nix/store/zhhp2qbwdklz2vb0i7p4dp8xh133qapn-neovim-unwrapped-0.11.3/share/nvim/runtime/autoload/provider/clipboard.vim +045.592 000.096: before starting main loop +046.390 000.798: first screen update +046.393 000.003: --- NVIM STARTED --- + diff --git a/pkgs/custom-neovim/todo.md b/pkgs/custom-neovim/todo.md new file mode 100644 index 0000000..7549d90 --- /dev/null +++ b/pkgs/custom-neovim/todo.md @@ -0,0 +1,3 @@ +# Todo + +- diff --git a/pkgs/default.nix b/pkgs/default.nix index 16e43d6..32a1f6a 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -6,4 +6,5 @@ custom-hello = pkgs.callPackage ./custom-hello.nix {}; setup-manager = pkgs.callPackage ./setup-manager {}; custom-neovim = pkgs.callPackage ./custom-neovim {inherit inputs;}; + old-custom-neovim = pkgs.callPackage ./old-custom-neovim {inherit inputs;}; } diff --git a/pkgs/custom-neovim/.envrc b/pkgs/old-custom-neovim/.envrc index 3550a30..3550a30 100644 --- a/pkgs/custom-neovim/.envrc +++ b/pkgs/old-custom-neovim/.envrc diff --git a/pkgs/old-custom-neovim/config/init.lua b/pkgs/old-custom-neovim/config/init.lua new file mode 100644 index 0000000..cd5e09b --- /dev/null +++ b/pkgs/old-custom-neovim/config/init.lua @@ -0,0 +1,67 @@ +local should_profile = os.getenv("NVIM_PROFILE") +if should_profile then + require("profile").instrument_autocmds() + if should_profile:lower():match("^start") then + require("profile").start("*") + else + require("profile").instrument("*") + end +end + +local function toggle_profile() + local prof = require("profile") + if prof.is_recording() then + prof.stop() + vim.ui.input({ prompt = "Save profile to:", completion = "file", default = "profile.json" }, function(filename) + if filename then + prof.export(filename) + vim.notify(string.format("Wrote %s", filename)) + end + end) + else + prof.start("*") + end +end +vim.keymap.set("", "<f1>", toggle_profile) + +-- Require utilities. +require("utilities") +require("art") + +-- Require config parts. +require("options") +require("autocommands") +require("colorschemes") +require("neovide") +require("mappings") +require("statusline") +require("completion") +require("lsp") + +-- UI Plugins: +require("plugins.mini.icons") +require("plugins.mini.tabline") +require("plugins.mini.clue") +require("plugins.mini.indentscope") +require("plugins.fidget") +require("plugins.treesitter") +require("plugins.mini.files") +require("plugins.incline") +require("plugins.auto-session") +require("plugins.gitsigns") +require("plugins.namu") +require("plugins.focus") + +-- LSP Plugins: +require("plugins.actions-preview") + +-- Utility Plugins: +require("plugins.mini.git") +require("plugins.mini.pairs") +require("plugins.ts-autotag") +require("plugins.comment") + +-- Misc Plugins: +require("plugins.presence") +require("plugins.snacks") +-- require("hardtime").setup() diff --git a/pkgs/custom-neovim/config/lua/art.lua b/pkgs/old-custom-neovim/config/lua/art.lua index f36a5d9..f36a5d9 100644 --- a/pkgs/custom-neovim/config/lua/art.lua +++ b/pkgs/old-custom-neovim/config/lua/art.lua diff --git a/pkgs/custom-neovim/config/lua/autocommands.lua b/pkgs/old-custom-neovim/config/lua/autocommands.lua index c452696..c452696 100644 --- a/pkgs/custom-neovim/config/lua/autocommands.lua +++ b/pkgs/old-custom-neovim/config/lua/autocommands.lua diff --git a/pkgs/custom-neovim/config/lua/colorschemes.lua b/pkgs/old-custom-neovim/config/lua/colorschemes.lua index cbbbd60..cbbbd60 100644 --- a/pkgs/custom-neovim/config/lua/colorschemes.lua +++ b/pkgs/old-custom-neovim/config/lua/colorschemes.lua diff --git a/pkgs/custom-neovim/config/lua/colorschemes/carbonfox.lua b/pkgs/old-custom-neovim/config/lua/colorschemes/carbonfox.lua index a3bba87..a3bba87 100644 --- a/pkgs/custom-neovim/config/lua/colorschemes/carbonfox.lua +++ b/pkgs/old-custom-neovim/config/lua/colorschemes/carbonfox.lua diff --git a/pkgs/custom-neovim/config/lua/completion.lua b/pkgs/old-custom-neovim/config/lua/completion.lua index 1ba2a91..1ba2a91 100644 --- a/pkgs/custom-neovim/config/lua/completion.lua +++ b/pkgs/old-custom-neovim/config/lua/completion.lua diff --git a/pkgs/old-custom-neovim/config/lua/lsp.lua b/pkgs/old-custom-neovim/config/lua/lsp.lua new file mode 100644 index 0000000..a01758c --- /dev/null +++ b/pkgs/old-custom-neovim/config/lua/lsp.lua @@ -0,0 +1,87 @@ +-- Disable semantic tokens to stop weird highlighting. +vim.api.nvim_create_autocmd('LspAttach', { + callback = function(ev) + local client = vim.lsp.get_client_by_id(ev.data.client_id) + if client then + client.server_capabilities.semanticTokensProvider = nil + end + end +}) + +-- Use LspAttach autocommand to only map the following keys +-- after the language server attaches to the current buffer +vim.api.nvim_create_autocmd('LspAttach', { + group = vim.api.nvim_create_augroup('UserLspConfig', {}), + callback = function(ev) + -- Enable completion triggered by <c-x><c-o> + -- vim.bo[ev.buf].omnifunc = 'v:lua.vim.lsp.omnifunc' + + local mapkey = Utils.mapkey + + -- Workspace management + mapkey('n', "<leader>o", "Manage LSP workspace", "") + mapkey('n', '<leader>oa', "Add Workspace Folder", vim.lsp.buf.add_workspace_folder) + mapkey('n', '<leader>or', "Remove Workspace Folder", vim.lsp.buf.remove_workspace_folder) + mapkey('n', '<leader>ol', "List Workspace Folders", function() + print(vim.inspect(vim.lsp.buf.list_workspace_folders())) + end) + + -- LSP Pickers + mapkey('n', "<leader>a", "Perform code action", ":lua require('actions-preview').code_actions()<cr>") + -- mapkey("n", "<leader>I", "Open workspace diagnostic picker", ":Namu diagnostics<cr>") + mapkey("n", "<leader>i", "Open diagnostic picker", ":Namu diagnostics<cr>") + mapkey("n", "<leader>s", "Open symbol picker", ":Namu symbols<cr>") + mapkey("n", "<leader>S", "Open workspace symbol picker", ":Namu workspace<cr>") + + -- Goto Keys + mapkey('n', 'gD', "Go to declaration", vim.lsp.buf.declaration) + mapkey('n', 'gd', "Go to definition", vim.lsp.buf.definition) + mapkey('n', 'go', "Go to type definition", vim.lsp.buf.type_definition) + mapkey('n', 'gi', "Go to implementation", vim.lsp.buf.implementation) + + -- Other LSP Keys + mapkey('n', 'gs', "Signature Help", vim.lsp.buf.signature_help) + mapkey('n', 'gr', "Buffer References", vim.lsp.buf.references) + mapkey('n', '<leader>r', "Rename Symbol", vim.lsp.buf.rename) + mapkey('n', '<leader>h', "Format Buffer", function() + vim.lsp.buf.format { async = true } + end) + end, +}) + +local lspconfig = require('lspconfig') + +-- Configure individual lsps +lspconfig.nil_ls.setup {} +lspconfig.lua_ls.setup { + on_init = function(client) + local path = client.workspace_folders[1].name + if vim.loop.fs_stat(path..'/.luarc.json') or vim.loop.fs_stat(path..'/.luarc.jsonc') then + return + end + + client.config.settings.Lua = vim.tbl_deep_extend('force', client.config.settings.Lua, { + runtime = { + -- Tell the language server which version of Lua you're using + -- (most likely LuaJIT in the case of Neovim) + version = 'LuaJIT' + }, + -- Make the server aware of Neovim runtime files + workspace = { + checkThirdParty = false, + library = { + vim.env.VIMRUNTIME, + -- Depending on the usage, you might want to add additional paths here. + "${3rd}/luv/library" + -- "${3rd}/busted/library", + } + -- or pull in all of 'runtimepath'. NOTE: this is a lot slower + -- library = vim.api.nvim_get_runtime_file("", true) + } + }) + end, + settings = { + Lua = {} + } +} +lspconfig.marksman.setup {} diff --git a/pkgs/custom-neovim/config/lua/mappings.lua b/pkgs/old-custom-neovim/config/lua/mappings.lua index b763d05..cab9565 100644 --- a/pkgs/custom-neovim/config/lua/mappings.lua +++ b/pkgs/old-custom-neovim/config/lua/mappings.lua @@ -7,6 +7,7 @@ vim.g.mapleader = ' ' -- Pickers mapkey("n", "<leader>f", "Open file picker", ":lua Snacks.picker.files()<cr>") mapkey("n", "<leader>l", "Open recent file picker", ":lua Snacks.picker.recent()<cr>") +mapkey("n", "<leader>L", "Go to most recent buffer", ":b#<cr>") mapkey("n", "<leader>y", "Open clipboard history picker", ":lua Snacks.picker.cliphist()<cr>") mapkey("n", "<leader>/", "Open live grep picker", ":lua Snacks.picker.grep()<cr>") mapkey("n", "<leader>\\", "Open command palette", ":lua Snacks.picker.commands()<cr>") @@ -40,8 +41,8 @@ mapkey("n", "<leader>bc", "Clear invisible buffers", function () local bufinfos = vim.fn.getbufinfo({buflisted = 1}) vim.tbl_map(function (bufinfo) if bufinfo.changed == 0 and (not bufinfo.windows or #bufinfo.windows == 0) then - print(('Deleting buffer %d : %s'):format(bufinfo.bufnr, bufinfo.name)) vim.api.nvim_buf_delete(bufinfo.bufnr, {force = false, unload = false}) + vim.cmd.redrawtabline() end end, bufinfos) end) diff --git a/pkgs/custom-neovim/config/lua/neovide.lua b/pkgs/old-custom-neovim/config/lua/neovide.lua index 9d648c4..9d648c4 100644 --- a/pkgs/custom-neovim/config/lua/neovide.lua +++ b/pkgs/old-custom-neovim/config/lua/neovide.lua diff --git a/pkgs/old-custom-neovim/config/lua/options.lua b/pkgs/old-custom-neovim/config/lua/options.lua new file mode 100644 index 0000000..20f3e01 --- /dev/null +++ b/pkgs/old-custom-neovim/config/lua/options.lua @@ -0,0 +1,58 @@ +-- General Settings +vim.o.winborder = 'rounded' +vim.o.showtabline = 2 -- whether to only show tabline if there is more than one tab. +vim.o.laststatus = 3 -- only have one statusline at the bottom of the window. +vim.o.showmode = false -- don't show the mode in the commandline. +vim.o.ruler = false -- don't show #,# in the commandline. +vim.o.icm = 'split' +vim.o.cia = 'abbr,kind,menu' +vim.o.mouse = "" +vim.o.number = true -- set absolute numbered lines +-- vim.o.relativenumber = true -- set relative numbered lines +vim.o.scrolloff = 4 -- minimal number of screen lines to keep above and below the cursor +vim.o.signcolumn = "yes" -- always show the sign column, otherwise it would shift the text each time +vim.o.clipboard = "unnamedplus" -- use system clipboard +-- vim.o.equalalways = true -- equalize splits +vim.o.sessionoptions = "blank,curdir,folds,help,tabpages,winsize,winpos,terminal,globals,buffers,localoptions" -- define what is saved with the session. + +-- Split Behavior +vim.o.splitright = true +vim.o.splitbelow = true + +-- Indention +local indent = 2 +vim.o.autoindent = true -- auto indentation +vim.o.expandtab = true -- convert tabs to spaces +vim.o.shiftwidth = indent -- the number of spaces inserted for each indentation +vim.o.smartindent = true -- make indenting smarter +vim.o.softtabstop = indent -- when hitting <BS>, pretend like a tab is removed, even if spaces +vim.o.tabstop = indent -- insert 2 spaces for a tab +vim.o.shiftround = true -- use multiple of shiftwidth when indenting with "<" and ">" + +-- Backups +vim.o.backup = false -- create a backup file +vim.o.swapfile = false -- creates a swapfile +vim.o.writebackup = false -- if a file is being edited by another program, it is not allowed to be edited + +-- Search +vim.o.hlsearch = true -- highlight all matches on previous search pattern +vim.o.ignorecase = true -- ignore case in search patterns +vim.o.smartcase = true -- smart case + +-- Folding +vim.o.foldmethod = "expr" +vim.o.foldexpr = "v:lua.vim.treesitter.foldexpr()" -- Set folder to treesitter. +vim.o.foldlevel = 99 -- Don't fold initially. +vim.o.foldnestmax = 4 -- Don't fold if more than 4 folds deep. +vim.o.foldtext = "" -- Color text in folds. + +-- Thick window borders. +vim.opt.fillchars = { + horiz = '━', + horizup = '┻', + horizdown = '┳', + vert = '┃', + vertleft = '┫', + vertright = '┣', + verthoriz = '╋', +} diff --git a/pkgs/custom-neovim/config/lua/plugins/actions-preview.lua b/pkgs/old-custom-neovim/config/lua/plugins/actions-preview.lua index 0e3cc02..0e3cc02 100644 --- a/pkgs/custom-neovim/config/lua/plugins/actions-preview.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/actions-preview.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/auto-session.lua b/pkgs/old-custom-neovim/config/lua/plugins/auto-session.lua index 99df59b..99df59b 100644 --- a/pkgs/custom-neovim/config/lua/plugins/auto-session.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/auto-session.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/comment.lua b/pkgs/old-custom-neovim/config/lua/plugins/comment.lua index bd47faf..bd47faf 100644 --- a/pkgs/custom-neovim/config/lua/plugins/comment.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/comment.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/dropbar.lua b/pkgs/old-custom-neovim/config/lua/plugins/dropbar.lua index 5d4bb43..5d4bb43 100644 --- a/pkgs/custom-neovim/config/lua/plugins/dropbar.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/dropbar.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/fidget.lua b/pkgs/old-custom-neovim/config/lua/plugins/fidget.lua index 4f1ab35..4f1ab35 100644 --- a/pkgs/custom-neovim/config/lua/plugins/fidget.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/fidget.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/focus.lua b/pkgs/old-custom-neovim/config/lua/plugins/focus.lua index 560f3ce..560f3ce 100644 --- a/pkgs/custom-neovim/config/lua/plugins/focus.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/focus.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/gitsigns.lua b/pkgs/old-custom-neovim/config/lua/plugins/gitsigns.lua index d16d238..d16d238 100644 --- a/pkgs/custom-neovim/config/lua/plugins/gitsigns.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/gitsigns.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/incline.lua b/pkgs/old-custom-neovim/config/lua/plugins/incline.lua index 92ced03..92ced03 100644 --- a/pkgs/custom-neovim/config/lua/plugins/incline.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/incline.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/mini/clue.lua b/pkgs/old-custom-neovim/config/lua/plugins/mini/clue.lua index 3dcac1b..3dcac1b 100644 --- a/pkgs/custom-neovim/config/lua/plugins/mini/clue.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/mini/clue.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/mini/cursorword.lua b/pkgs/old-custom-neovim/config/lua/plugins/mini/cursorword.lua index 530b88b..530b88b 100644 --- a/pkgs/custom-neovim/config/lua/plugins/mini/cursorword.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/mini/cursorword.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/mini/files.lua b/pkgs/old-custom-neovim/config/lua/plugins/mini/files.lua index 1dc1c3e..1dc1c3e 100644 --- a/pkgs/custom-neovim/config/lua/plugins/mini/files.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/mini/files.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/mini/git.lua b/pkgs/old-custom-neovim/config/lua/plugins/mini/git.lua index 943f91d..943f91d 100644 --- a/pkgs/custom-neovim/config/lua/plugins/mini/git.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/mini/git.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/mini/icons.lua b/pkgs/old-custom-neovim/config/lua/plugins/mini/icons.lua index fd2c5f9..fd2c5f9 100644 --- a/pkgs/custom-neovim/config/lua/plugins/mini/icons.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/mini/icons.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/mini/indentscope.lua b/pkgs/old-custom-neovim/config/lua/plugins/mini/indentscope.lua index 2543c40..2543c40 100644 --- a/pkgs/custom-neovim/config/lua/plugins/mini/indentscope.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/mini/indentscope.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/mini/pairs.lua b/pkgs/old-custom-neovim/config/lua/plugins/mini/pairs.lua index 493c4d0..493c4d0 100644 --- a/pkgs/custom-neovim/config/lua/plugins/mini/pairs.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/mini/pairs.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/mini/tabline.lua b/pkgs/old-custom-neovim/config/lua/plugins/mini/tabline.lua index 1ec6e7f..1ec6e7f 100644 --- a/pkgs/custom-neovim/config/lua/plugins/mini/tabline.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/mini/tabline.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/namu.lua b/pkgs/old-custom-neovim/config/lua/plugins/namu.lua index 82275b9..82275b9 100644 --- a/pkgs/custom-neovim/config/lua/plugins/namu.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/namu.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/presence.lua b/pkgs/old-custom-neovim/config/lua/plugins/presence.lua index 7ffb57f..7ffb57f 100644 --- a/pkgs/custom-neovim/config/lua/plugins/presence.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/presence.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/render-markdown.lua b/pkgs/old-custom-neovim/config/lua/plugins/render-markdown.lua index 45bdcf2..45bdcf2 100644 --- a/pkgs/custom-neovim/config/lua/plugins/render-markdown.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/render-markdown.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/snacks.lua b/pkgs/old-custom-neovim/config/lua/plugins/snacks.lua index c2cf737..c2cf737 100644 --- a/pkgs/custom-neovim/config/lua/plugins/snacks.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/snacks.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/tabby.lua b/pkgs/old-custom-neovim/config/lua/plugins/tabby.lua index c00dad7..c00dad7 100644 --- a/pkgs/custom-neovim/config/lua/plugins/tabby.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/tabby.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/treesitter.lua b/pkgs/old-custom-neovim/config/lua/plugins/treesitter.lua index 3ad4c9f..3ad4c9f 100644 --- a/pkgs/custom-neovim/config/lua/plugins/treesitter.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/treesitter.lua diff --git a/pkgs/custom-neovim/config/lua/plugins/ts-autotag.lua b/pkgs/old-custom-neovim/config/lua/plugins/ts-autotag.lua index 67b9f06..67b9f06 100644 --- a/pkgs/custom-neovim/config/lua/plugins/ts-autotag.lua +++ b/pkgs/old-custom-neovim/config/lua/plugins/ts-autotag.lua diff --git a/pkgs/custom-neovim/config/lua/statusline.lua b/pkgs/old-custom-neovim/config/lua/statusline.lua index 08bbe50..08bbe50 100644 --- a/pkgs/custom-neovim/config/lua/statusline.lua +++ b/pkgs/old-custom-neovim/config/lua/statusline.lua diff --git a/pkgs/custom-neovim/config/lua/utilities.lua b/pkgs/old-custom-neovim/config/lua/utilities.lua index d2a26b6..d2a26b6 100644 --- a/pkgs/custom-neovim/config/lua/utilities.lua +++ b/pkgs/old-custom-neovim/config/lua/utilities.lua diff --git a/pkgs/old-custom-neovim/default.nix b/pkgs/old-custom-neovim/default.nix new file mode 100644 index 0000000..7a75368 --- /dev/null +++ b/pkgs/old-custom-neovim/default.nix @@ -0,0 +1,83 @@ +{ + pkgs, + inputs, +}: let + git-plugins = import ./git-plugins.nix {inherit pkgs;}; +in + inputs.mnw.lib.wrap pkgs { + neovim = pkgs.neovim-unwrapped; + plugins = with pkgs.vimPlugins; { + dev.config = { + pure = ./config; + }; + start = [ + # Core Plugins + mini-nvim # Ton of small modules. + nvim-lspconfig # Adds lsp presets. + actions-preview-nvim # Adds a selector for LSP actions. + nvim-treesitter.withAllGrammars # All treesitter grammars. + snacks-nvim # Many small modules. + auto-session # Automatic session manager. + nvim-ts-autotag # Autopair HTML tags. + gitsigns-nvim # Git signcolumn. + git-plugins.namu-nvim-git # LSP and colorscheme picker. + vim-nix # Indenting for nix files. + comment-nvim # Advanced commenting. + fidget-nvim # Simple notification UI + focus-nvim # Automatic split resizer and manager. + render-markdown-nvim # Render markdown fancily. + incline-nvim # Puts the filename in the winbar. + + git-plugins.profile-nvim-git + + # Completion + nvim-cmp # Completer. + cmp-buffer + cmp-path + cmp_luasnip + cmp-nvim-lsp + luasnip # Snippet manager. + friendly-snippets # Snippet collection. + + # Colorschemes + oxocarbon-nvim # IBM Carbon themes. + rose-pine # Rose Pine themes. + kanagawa-nvim # Kanagawa inspired themes. + everforest # Green themes. + nordic-nvim # Cool dark nordic theme. + tokyonight-nvim + nightfox-nvim # Varied colorscheme collection. + + # Miscellaneous Plugins + presence-nvim # Discord RPC for nvim. + cellular-automaton-nvim # Fun useless plugin. + vim-wakatime # For hack club challenge. + hardtime-nvim # Break bad vim habits. + ]; + opt = []; + }; + + luaFiles = [./config/init.lua]; + + extraBinPath = with pkgs; [ + # LSP Servers + lua-language-server # Lua LS + nixd # Nix LS + nil + marksman # Markdown LS + + # Formatters + alejandra # Nix Formatter + + # Extra Tools + ripgrep + fd + cliphist + lazygit + luajitPackages.jsregexp + gcc + + # Temporary + wakatime-cli + ]; + } diff --git a/pkgs/custom-neovim/design.md b/pkgs/old-custom-neovim/design.md index 4dba97e..c4888fe 100644 --- a/pkgs/custom-neovim/design.md +++ b/pkgs/old-custom-neovim/design.md @@ -12,16 +12,13 @@ - make lazyvim launch with default shell bash - add quick window switch plugin -- replace nvim-cmp with blink.cmp - add markview -- make statusline cwd depend on the neovim window and not focused window -- add key to open new session -- make clearing buffers reload the tab bar -- add keybind to go to the previous file (maybe <leader>L) +- make statusline cwd width depend on the neovim window and not focused window ## Todo if possible - switch to maple mono font - make splits automatically equalize when window resized - prevent dropbar filename from truncating - make mini.git run commands from cwd instead of git root +- replace nvim-cmp with blink.cmp - make custom carbon colorscheme diff --git a/pkgs/custom-neovim/flake.lock b/pkgs/old-custom-neovim/flake.lock index dfbed26..dfbed26 100644 --- a/pkgs/custom-neovim/flake.lock +++ b/pkgs/old-custom-neovim/flake.lock diff --git a/pkgs/custom-neovim/flake.nix b/pkgs/old-custom-neovim/flake.nix index 6611516..6611516 100644 --- a/pkgs/custom-neovim/flake.nix +++ b/pkgs/old-custom-neovim/flake.nix diff --git a/pkgs/custom-neovim/git-plugins.nix b/pkgs/old-custom-neovim/git-plugins.nix index adc7403..adc7403 100644 --- a/pkgs/custom-neovim/git-plugins.nix +++ b/pkgs/old-custom-neovim/git-plugins.nix |
