mirror of
https://github.com/harivansh-afk/nvim.git
synced 2026-04-15 07:04:47 +00:00
remove pointless plugins (#2)
### TL;DR Cleaned up the Neovim configuration by removing unused plugins and updating documentation. ### What changed? - Added `.nvimlog` to `.gitignore` - Expanded README.md with detailed repo structure and plugin explanations - Removed several unused plugins from lazy-lock.json: - avante.nvim - dressing.nvim - img-clip.nvim - lualine.nvim - smear-cursor.nvim - vim-fugitive - volt - Deleted unused configuration files: - lua/plugins/colorscheme.lua - lua/plugins/lualine.lua - lua/plugins/refactor.lua - ~/.config/nvim/check_issues.lua - Removed vim-fugitive from git.lua - Removed volt theme switcher from nvchad.lua ### How to test? 1. Clone the repository and run the Neovim setup 2. Verify that Neovim starts without errors 3. Check that all core functionality works as expected 4. Confirm that the README accurately reflects the current plugin setup ### Why make this change? This change streamlines the configuration by removing unused plugins and their configurations, making the setup cleaner and more maintainable. The expanded README provides better documentation about the repository structure and explains the purpose of each plugin, making it easier for users to understand the configuration.
This commit is contained in:
commit
71f61685b7
9 changed files with 49 additions and 438 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -1,2 +1,3 @@
|
|||
/undodir
|
||||
.DS_Store
|
||||
.nvimlog
|
||||
|
|
|
|||
50
README.md
50
README.md
|
|
@ -1,5 +1,49 @@
|
|||
### config
|
||||
# nvim
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/harivansh-afk/nvim/main/install.sh | bash
|
||||
## Repo tree
|
||||
|
||||
```text
|
||||
.
|
||||
├── init.lua
|
||||
├── install.sh
|
||||
├── lazy-lock.json
|
||||
├── lua
|
||||
│ ├── chadrc.lua
|
||||
│ └── plugins
|
||||
│ ├── arrow.lua
|
||||
│ ├── autopairs.lua
|
||||
│ ├── comment.lua
|
||||
│ ├── dashboard.lua
|
||||
│ ├── flash.lua
|
||||
│ ├── git.lua
|
||||
│ ├── gitsigns.lua
|
||||
│ ├── gutentags.lua
|
||||
│ ├── lsp.lua
|
||||
│ ├── neo-tree.lua
|
||||
│ ├── nvchad.lua
|
||||
│ ├── supermaven.lua
|
||||
│ ├── telescope.lua
|
||||
│ ├── treesitter.lua
|
||||
│ └── which-key.lua
|
||||
└── nvim_cheatsheet.md
|
||||
```
|
||||
|
||||
## Plugins (and why)
|
||||
|
||||
- `folke/lazy.nvim`: plugin manager.
|
||||
- `nvchad/base46`: colors/theme engine.
|
||||
- `nvchad/ui`: statusline/tabline/UI pieces.
|
||||
- `nvim-telescope/telescope.nvim`: fuzzy find + grep.
|
||||
- `nvim-treesitter/nvim-treesitter`: better syntax highlight/indent.
|
||||
- `neovim/nvim-lspconfig` + `williamboman/mason.nvim`: LSP + install servers.
|
||||
- `nvim-neo-tree/neo-tree.nvim`: file explorer.
|
||||
- `nvimdev/dashboard-nvim`: startup dashboard.
|
||||
- `folke/which-key.nvim`: keybind hint popup.
|
||||
- `numToStr/Comment.nvim`: quick commenting.
|
||||
- `windwp/nvim-autopairs`: auto-close brackets/quotes.
|
||||
- `folke/flash.nvim`: fast motions/jumps.
|
||||
- `lewis6991/gitsigns.nvim`: git hunks in-buffer.
|
||||
- `NeogitOrg/neogit` + `sindrets/diffview.nvim`: git UI + diffs/history.
|
||||
- `ludovicchabant/vim-gutentags`: ctags-based fallback navigation.
|
||||
- `supermaven-inc/supermaven-nvim`: AI inline suggestions.
|
||||
- `otavioschwanck/arrow.nvim`: quick file marks/jumps.
|
||||
|
|
|
|||
|
|
@ -1,16 +1,12 @@
|
|||
{
|
||||
"Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
|
||||
"arrow.nvim": { "branch": "master", "commit": "6e0f726f55f99332dd726a53effd6813786b6d49" },
|
||||
"avante.nvim": { "branch": "main", "commit": "a9e9890fc620c46e39bc22c0ccea5d57beefc0e7" },
|
||||
"base46": { "branch": "v3.0", "commit": "45b336ec52615dd1a3aa47848d894616dd6293a5" },
|
||||
"dashboard-nvim": { "branch": "master", "commit": "0775e567b6c0be96d01a61795f7b64c1758262f6" },
|
||||
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
|
||||
"dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" },
|
||||
"flash.nvim": { "branch": "main", "commit": "fcea7ff883235d9024dc41e638f164a450c14ca2" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "130beacf8a51f00aede9c31064c749136679a321" },
|
||||
"img-clip.nvim": { "branch": "main", "commit": "b6ddfb97b5600d99afe3452d707444afda658aca" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "47f91c416daef12db467145e16bed5bbfe00add8" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "4cfe411526a7a99c18281135e8b4765ae6330d15" },
|
||||
"mason.nvim": { "branch": "main", "commit": "57e5a8addb8c71fb063ee4acda466c7cf6ad2800" },
|
||||
"neo-tree.nvim": { "branch": "v3.x", "commit": "f3df514fff2bdd4318127c40470984137f87b62e" },
|
||||
|
|
@ -21,12 +17,9 @@
|
|||
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "6788013bb9cb784e606ada44206b0e755e4323d7" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
|
||||
"smear-cursor.nvim": { "branch": "main", "commit": "c85bdbb25db096fbcf616bc4e1357bd61fe2c199" },
|
||||
"supermaven-nvim": { "branch": "main", "commit": "07d20fce48a5629686aefb0a7cd4b25e33947d50" },
|
||||
"telescope.nvim": { "branch": "master", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" },
|
||||
"ui": { "branch": "v3.0", "commit": "eae966484937c9ef2b5e3f465fd9587464dc277c" },
|
||||
"vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" },
|
||||
"vim-gutentags": { "branch": "master", "commit": "aa47c5e29c37c52176c44e61c780032dfacef3dd" },
|
||||
"volt": { "branch": "main", "commit": "620de1321f275ec9d80028c68d1b88b409c0c8b1" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" }
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,26 +0,0 @@
|
|||
-- Colorschemes disabled - using NvChad base46 for theming
|
||||
-- Use :lua require('nvchad.themes').open() to switch themes
|
||||
-- Or modify lua/chadrc.lua to change the default theme
|
||||
|
||||
return {
|
||||
-- Keep these as fallbacks if needed (lazy loaded, won't interfere)
|
||||
-- {
|
||||
-- "ellisonleao/gruvbox.nvim",
|
||||
-- name = "gruvbox",
|
||||
-- enabled = false,
|
||||
-- },
|
||||
-- {
|
||||
-- "datsfilipe/vesper.nvim",
|
||||
-- name = "vesper",
|
||||
-- enabled = false,
|
||||
-- },
|
||||
-- {
|
||||
-- 'maxmx03/solarized.nvim',
|
||||
-- enabled = false,
|
||||
-- },
|
||||
-- {
|
||||
-- "folke/tokyonight.nvim",
|
||||
-- name = "tokyonight",
|
||||
-- enabled = false,
|
||||
-- },
|
||||
}
|
||||
|
|
@ -66,13 +66,4 @@ return {
|
|||
},
|
||||
},
|
||||
|
||||
-- Fugitive: Additional Git commands
|
||||
{
|
||||
'tpope/vim-fugitive',
|
||||
cmd = { 'Git', 'Gblame', 'Gdiff', 'Gread', 'Gwrite', 'Ggrep' },
|
||||
keys = {
|
||||
{ '<leader>gb', '<cmd>Git blame<cr>', desc = 'Git Blame' },
|
||||
{ '<leader>gd', '<cmd>Gdiff<cr>', desc = 'Git Diff (Fugitive)' },
|
||||
}
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,35 +0,0 @@
|
|||
-- Disabled: Using NvChad statusline instead
|
||||
-- To re-enable lualine: set enabled = true below AND
|
||||
-- in lua/chadrc.lua set M.ui.statusline.enabled = false
|
||||
return {
|
||||
'nvim-lualine/lualine.nvim',
|
||||
enabled = false, -- Disabled in favor of NvChad statusline
|
||||
event = 'VeryLazy',
|
||||
dependencies = { 'nvim-tree/nvim-web-devicons' },
|
||||
opts = {
|
||||
options = {
|
||||
theme = 'auto',
|
||||
component_separators = { left = '', right = '' },
|
||||
section_separators = { left = '', right = '' },
|
||||
},
|
||||
sections = {
|
||||
lualine_a = {'mode'},
|
||||
lualine_b = {'branch', 'diff', 'diagnostics'},
|
||||
lualine_c = {'filename'},
|
||||
lualine_x = {'encoding', 'fileformat', 'filetype'},
|
||||
lualine_y = {
|
||||
{
|
||||
function()
|
||||
local search = vim.fn.getreg('/')
|
||||
if search == '' then return '' end
|
||||
local ok, result = pcall(vim.fn.searchcount, { maxcount = 0, timeout = 100 })
|
||||
if not ok or not result or result.total == 0 then return '' end
|
||||
return string.format('[%d/%d]', result.current, result.total)
|
||||
end,
|
||||
},
|
||||
'progress'
|
||||
},
|
||||
lualine_z = {'location'}
|
||||
},
|
||||
}
|
||||
}
|
||||
|
|
@ -27,9 +27,5 @@ return {
|
|||
end,
|
||||
},
|
||||
|
||||
-- Optional: theme switcher UI (use :lua require('nvchad.themes').open())
|
||||
{
|
||||
"nvchad/volt",
|
||||
lazy = true,
|
||||
},
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,131 +0,0 @@
|
|||
-- AI Refactor keybindings
|
||||
-- Uses refactor.ts from ai-scripts repo to perform AI-powered refactoring
|
||||
-- Write a comment at the end of the file with instructions, then press Space+<key>
|
||||
|
||||
return {
|
||||
{
|
||||
"ai-refactor",
|
||||
dir = vim.fn.expand("~/Documents/Github/ai-scripts"),
|
||||
lazy = false,
|
||||
config = function()
|
||||
local refactor_script = vim.fn.expand("~/Documents/Github/ai-scripts/refactor.ts")
|
||||
local active_jobs = {}
|
||||
|
||||
-- Helper function to run refactor with a specific model
|
||||
local function refactor_with_model(model)
|
||||
return function()
|
||||
local filepath = vim.fn.expand("%:p")
|
||||
vim.cmd("write")
|
||||
|
||||
vim.notify(string.format("Refactoring with model '%s'...", model), vim.log.levels.INFO)
|
||||
|
||||
-- Run refactor script synchronously
|
||||
local cmd = {
|
||||
"bun", refactor_script, filepath, model
|
||||
}
|
||||
|
||||
local job_id = vim.fn.jobstart(cmd, {
|
||||
on_exit = function(j_id, exit_code)
|
||||
active_jobs[j_id] = nil
|
||||
if exit_code == 0 then
|
||||
vim.schedule(function()
|
||||
vim.cmd("checktime") -- Reload file if changed
|
||||
vim.notify("Refactor complete!", vim.log.levels.INFO)
|
||||
end)
|
||||
else
|
||||
vim.schedule(function()
|
||||
vim.notify(string.format("Refactor failed with code %d", exit_code), vim.log.levels.ERROR)
|
||||
end)
|
||||
end
|
||||
end,
|
||||
on_stdout = function(_, data)
|
||||
if data and #data > 0 then
|
||||
vim.schedule(function()
|
||||
for _, line in ipairs(data) do
|
||||
if line ~= "" then
|
||||
print(line)
|
||||
end
|
||||
end
|
||||
end)
|
||||
end
|
||||
end,
|
||||
on_stderr = function(_, data)
|
||||
if data and #data > 0 then
|
||||
vim.schedule(function()
|
||||
for _, line in ipairs(data) do
|
||||
if line ~= "" then
|
||||
vim.notify(line, vim.log.levels.WARN)
|
||||
end
|
||||
end
|
||||
end)
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
if job_id > 0 then
|
||||
active_jobs[job_id] = {
|
||||
model = model,
|
||||
file = vim.fn.fnamemodify(filepath, ":t"),
|
||||
started = os.time()
|
||||
}
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- Command to list active refactor jobs
|
||||
vim.api.nvim_create_user_command("RefactorJobs", function()
|
||||
if vim.tbl_count(active_jobs) == 0 then
|
||||
vim.notify("No active refactor jobs", vim.log.levels.INFO)
|
||||
return
|
||||
end
|
||||
|
||||
local lines = { "Active refactor jobs:" }
|
||||
for job_id, info in pairs(active_jobs) do
|
||||
local elapsed = os.time() - info.started
|
||||
table.insert(lines, string.format(" [%d] %s - %s (%ds)", job_id, info.model, info.file, elapsed))
|
||||
end
|
||||
vim.notify(table.concat(lines, "\n"), vim.log.levels.INFO)
|
||||
end, {})
|
||||
|
||||
-- GPT-5.1 models
|
||||
vim.keymap.set("n", "<leader>ag", refactor_with_model("g"), {
|
||||
desc = "Refactor with GPT-5.1 (medium)"
|
||||
})
|
||||
vim.keymap.set("n", "<leader>aG", refactor_with_model("G"), {
|
||||
desc = "Refactor with GPT-5.1 (high)"
|
||||
})
|
||||
|
||||
-- Gemini-3 models
|
||||
vim.keymap.set("n", "<leader>ai", refactor_with_model("i"), {
|
||||
desc = "Refactor with Gemini-3 (medium)"
|
||||
})
|
||||
vim.keymap.set("n", "<leader>aI", refactor_with_model("I"), {
|
||||
desc = "Refactor with Gemini-3 (high)"
|
||||
})
|
||||
|
||||
-- Claude Sonnet models
|
||||
vim.keymap.set("n", "<leader>as", refactor_with_model("s"), {
|
||||
desc = "Refactor with Sonnet-4.5 (medium)"
|
||||
})
|
||||
vim.keymap.set("n", "<leader>aS", refactor_with_model("S"), {
|
||||
desc = "Refactor with Sonnet-4.5 (high)"
|
||||
})
|
||||
|
||||
-- Claude Opus models
|
||||
vim.keymap.set("n", "<leader>ao", refactor_with_model("o"), {
|
||||
desc = "Refactor with Opus-4 (medium)"
|
||||
})
|
||||
vim.keymap.set("n", "<leader>aO", refactor_with_model("O"), {
|
||||
desc = "Refactor with Opus-4 (high)"
|
||||
})
|
||||
|
||||
-- xAI Grok models
|
||||
vim.keymap.set("n", "<leader>ax", refactor_with_model("x"), {
|
||||
desc = "Refactor with Grok-4 (medium)"
|
||||
})
|
||||
vim.keymap.set("n", "<leader>aX", refactor_with_model("X"), {
|
||||
desc = "Refactor with Grok-4 (high)"
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
|
@ -1,222 +0,0 @@
|
|||
-- AstroNvim diagnostics script
|
||||
-- This script helps identify common issues with AstroNvim configuration
|
||||
|
||||
local REPORT_FILE = "/tmp/astronvim_diagnostics.json"
|
||||
|
||||
-- Common error patterns to suppress in notifications
|
||||
local ERROR_PATTERNS = {
|
||||
"not a real value for ensure_installed",
|
||||
"position_params",
|
||||
"offset_encoding",
|
||||
"failed to get treesitter parser",
|
||||
"treesitter query error"
|
||||
}
|
||||
|
||||
-- Original notify function for capturing notifications
|
||||
local orig_notify = vim.notify
|
||||
local all_notifications = {}
|
||||
|
||||
-- Function to check if message contains an error pattern
|
||||
local function matches_error_pattern(msg)
|
||||
if type(msg) ~= "string" then return false end
|
||||
|
||||
for _, pattern in ipairs(ERROR_PATTERNS) do
|
||||
if msg:match(pattern) then
|
||||
return true
|
||||
end
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
||||
-- Intercept notifications
|
||||
vim.notify = function(msg, level, opts)
|
||||
-- Record the notification
|
||||
table.insert(all_notifications, {
|
||||
msg = msg,
|
||||
level = level,
|
||||
opts = opts,
|
||||
is_error = (level == vim.log.levels.ERROR or matches_error_pattern(msg))
|
||||
})
|
||||
|
||||
-- Suppress known errors
|
||||
if matches_error_pattern(msg) then
|
||||
return
|
||||
end
|
||||
|
||||
return orig_notify(msg, level, opts)
|
||||
end
|
||||
|
||||
-- Run diagnostics
|
||||
local function run_diagnostics()
|
||||
local report = {
|
||||
nvim_version = vim.version(),
|
||||
astronvim_version = require("version").version or "unknown",
|
||||
timestamp = os.time(),
|
||||
notifications = all_notifications,
|
||||
errors = {},
|
||||
warnings = {},
|
||||
loaded_plugins = {},
|
||||
checks = {}
|
||||
}
|
||||
|
||||
-- Check if critical plugins are loaded
|
||||
local critical_plugins = {
|
||||
"nvim-treesitter",
|
||||
"mason",
|
||||
"mason-lspconfig",
|
||||
"lazy",
|
||||
"astrocore"
|
||||
}
|
||||
|
||||
for _, plugin in ipairs(critical_plugins) do
|
||||
local is_loaded = package.loaded[plugin] ~= nil
|
||||
report.loaded_plugins[plugin] = is_loaded
|
||||
|
||||
if not is_loaded then
|
||||
table.insert(report.warnings, {
|
||||
type = "plugin_not_loaded",
|
||||
plugin = plugin
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
-- Check Treesitter
|
||||
report.checks.treesitter = {}
|
||||
if package.loaded["nvim-treesitter"] then
|
||||
local ok, ts_info = pcall(function()
|
||||
local data = {}
|
||||
|
||||
-- Check configs
|
||||
data.has_configs = package.loaded["nvim-treesitter.configs"] ~= nil
|
||||
|
||||
-- Check parsers
|
||||
if package.loaded["nvim-treesitter.parsers"] then
|
||||
local parsers = require("nvim-treesitter.parsers")
|
||||
data.available_parsers = parsers.available_parsers()
|
||||
|
||||
-- Check core parsers
|
||||
local core_parsers = {"c", "lua", "vim", "vimdoc", "query"}
|
||||
data.core_parsers_status = {}
|
||||
|
||||
for _, parser in ipairs(core_parsers) do
|
||||
data.core_parsers_status[parser] = parsers.has_parser(parser)
|
||||
if not parsers.has_parser(parser) then
|
||||
table.insert(report.errors, {
|
||||
type = "missing_core_parser",
|
||||
parser = parser
|
||||
})
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return data
|
||||
end)
|
||||
|
||||
if ok then
|
||||
report.checks.treesitter = ts_info
|
||||
else
|
||||
report.checks.treesitter.error = tostring(ts_info)
|
||||
table.insert(report.errors, {
|
||||
type = "treesitter_check_failed",
|
||||
error = tostring(ts_info)
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
-- Check Mason
|
||||
report.checks.mason = {}
|
||||
if package.loaded["mason"] then
|
||||
local ok, mason_info = pcall(function()
|
||||
local data = {}
|
||||
|
||||
-- Check registry
|
||||
data.has_registry = package.loaded["mason-registry"] ~= nil
|
||||
|
||||
-- Check installed packages
|
||||
if package.loaded["mason-registry"] then
|
||||
local registry = require("mason-registry")
|
||||
data.installed_packages = {}
|
||||
|
||||
for _, pkg in ipairs(registry.get_installed_packages()) do
|
||||
table.insert(data.installed_packages, pkg.name)
|
||||
end
|
||||
end
|
||||
|
||||
return data
|
||||
end)
|
||||
|
||||
if ok then
|
||||
report.checks.mason = mason_info
|
||||
else
|
||||
report.checks.mason.error = tostring(mason_info)
|
||||
table.insert(report.errors, {
|
||||
type = "mason_check_failed",
|
||||
error = tostring(mason_info)
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
-- Extract error notifications
|
||||
for _, notif in ipairs(all_notifications) do
|
||||
if notif.is_error then
|
||||
table.insert(report.errors, {
|
||||
type = "error_notification",
|
||||
msg = notif.msg,
|
||||
level = notif.level
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
-- Save report
|
||||
local file = io.open(REPORT_FILE, "w")
|
||||
if file then
|
||||
file:write(vim.json.encode(report))
|
||||
file:close()
|
||||
print("Diagnostic report written to " .. REPORT_FILE)
|
||||
else
|
||||
print("Failed to write diagnostic report to " .. REPORT_FILE)
|
||||
end
|
||||
|
||||
-- Print summary
|
||||
print("\n=== AstroNvim Diagnostic Summary ===")
|
||||
print("NeoVim version: " .. vim.version().major .. "." .. vim.version().minor .. "." .. vim.version().patch)
|
||||
|
||||
if #report.errors > 0 then
|
||||
print("\nErrors (" .. #report.errors .. "):")
|
||||
for i, err in ipairs(report.errors) do
|
||||
print(" " .. i .. ". " .. err.type .. ": " .. (err.msg or err.error or ""))
|
||||
end
|
||||
else
|
||||
print("\nNo errors detected!")
|
||||
end
|
||||
|
||||
if #report.warnings > 0 then
|
||||
print("\nWarnings (" .. #report.warnings .. "):")
|
||||
for i, warn in ipairs(report.warnings) do
|
||||
print(" " .. i .. ". " .. warn.type .. ": " .. (warn.plugin or ""))
|
||||
end
|
||||
else
|
||||
print("\nNo warnings detected!")
|
||||
end
|
||||
|
||||
print("\nSteps to fix common issues:")
|
||||
print("1. Run ':Lazy sync' to update and synchronize plugins")
|
||||
print("2. Run ':MasonUpdate' to update Mason packages")
|
||||
print("3. Run ':TSUpdate' to update all Treesitter parsers")
|
||||
print("\nFor more details, check " .. REPORT_FILE)
|
||||
|
||||
return report
|
||||
end
|
||||
|
||||
-- Run diagnostics after a short delay to allow plugins to load
|
||||
vim.defer_fn(function()
|
||||
run_diagnostics()
|
||||
|
||||
-- Exit if in headless mode
|
||||
if vim.g.headless then
|
||||
vim.cmd("quit")
|
||||
end
|
||||
end, 1000)
|
||||
|
||||
-- Return a message for interactive use
|
||||
return "Running AstroNvim diagnostics... Results will appear shortly."
|
||||
Loading…
Add table
Add a link
Reference in a new issue