diff options
| author | TheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com> | 2025-07-03 11:54:10 +0900 |
|---|---|---|
| committer | TheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com> | 2025-07-03 11:54:10 +0900 |
| commit | 5da5f0506b5799dc757e9d93af23cebbfa18eb91 (patch) | |
| tree | 53e5c8fa0c447f95d3cf44249337a48816bd74fa /ar/.config/NvChad/lua/custom/configs | |
| parent | dcd0f3b885ccbfdb5cd1abf7adb66fd777273fae (diff) | |
updates
Diffstat (limited to 'ar/.config/NvChad/lua/custom/configs')
| -rw-r--r-- | ar/.config/NvChad/lua/custom/configs/cell_marker.lua | 159 | ||||
| -rw-r--r-- | ar/.config/NvChad/lua/custom/configs/dadbod.lua | 29 | ||||
| -rw-r--r-- | ar/.config/NvChad/lua/custom/configs/lspconfig.lua | 71 | ||||
| -rw-r--r-- | ar/.config/NvChad/lua/custom/configs/null-ls.lua | 45 | ||||
| -rw-r--r-- | ar/.config/NvChad/lua/custom/configs/overrides.lua | 247 |
5 files changed, 0 insertions, 551 deletions
diff --git a/ar/.config/NvChad/lua/custom/configs/cell_marker.lua b/ar/.config/NvChad/lua/custom/configs/cell_marker.lua deleted file mode 100644 index 1d71dfb..0000000 --- a/ar/.config/NvChad/lua/custom/configs/cell_marker.lua +++ /dev/null @@ -1,159 +0,0 @@ -local M = {} - -M.get_commenter = function() - local commenter = { python = "# ", lua = "-- ", julia = "# ", fennel = ";; ", scala = "// ", r = "# " } - local bufnr = vim.api.nvim_get_current_buf() - local ft = vim.api.nvim_buf_get_option(bufnr, "filetype") - if ft == nil or ft == "" then - return commenter["python"] - elseif commenter[ft] == nil then - return commenter["python"] - end - - return commenter[ft] -end - -local CELL_MARKER = M.get_commenter() .. "%%" -vim.api.nvim_set_hl(0, "CellMarkerHl", { default = true, bg = "#c5c5c5", fg = "#111111" }) - -M.miniai_spec = function(mode) - local start_line = vim.fn.search("^" .. CELL_MARKER, "bcnW") - - if start_line == 0 then - start_line = 1 - else - if mode == "i" then - start_line = start_line + 1 - end - end - - local end_line = vim.fn.search("^" .. CELL_MARKER, "nW") - 1 - if end_line == -1 then - end_line = vim.fn.line "$" - end - - local last_col = math.max(vim.fn.getline(end_line):len(), 1) - - local from = { line = start_line, col = 1 } - local to = { line = end_line, col = last_col } - - return { from = from, to = to } -end - -M.show_cell_markers = function() - require("mini.hipatterns").enable(0, { - highlighters = { - marker = { pattern = "^" .. M.get_commenter() .. "%%%%", group = "CellMarkerHl" }, - }, - }) -end - -M.select_cell = function() - local bufnr = vim.api.nvim_get_current_buf() - local current_row = vim.api.nvim_win_get_cursor(0)[1] - local current_col = vim.api.nvim_win_get_cursor(0)[2] - - local start_line = nil - local end_line = nil - - for line = current_row, 1, -1 do - local line_content = vim.api.nvim_buf_get_lines(bufnr, line - 1, line, false)[1] - if line_content:find("^" .. CELL_MARKER) then - start_line = line - break - end - end - local line_count = vim.api.nvim_buf_line_count(bufnr) - for line = current_row + 1, line_count do - local line_content = vim.api.nvim_buf_get_lines(bufnr, line - 1, line, false)[1] - if line_content:find("^" .. CELL_MARKER) then - end_line = line - break - end - end - - if not start_line then - start_line = 1 - end - if not end_line then - end_line = line_count - end - return current_row, current_col, start_line, end_line -end - -M.execute_cell = function() - local current_row, current_col, start_line, end_line = M.select_cell() - if start_line and end_line then - vim.fn.setpos("'<", { 0, start_line + 1, 0, 0 }) - vim.fn.setpos("'>", { 0, end_line - 1, 0, 0 }) - require("iron.core").visual_send() - vim.api.nvim_win_set_cursor(0, { current_row, current_col }) - end -end - -M.delete_cell = function() - local _, _, start_line, end_line = M.select_cell() - if start_line and end_line then - local rows_to_select = end_line - start_line - 1 - vim.api.nvim_win_set_cursor(0, { start_line, 0 }) - vim.cmd("normal!V " .. rows_to_select .. "j") - vim.cmd "normal!d" - vim.cmd "normal!k" - end -end - -M.navigate_cell = function(up) - local is_up = up or false - local _, _, start_line, end_line = M.select_cell() - if is_up and start_line ~= 1 then - vim.api.nvim_win_set_cursor(0, { start_line - 1, 0 }) - elseif end_line then - local bufnr = vim.api.nvim_get_current_buf() - local line_count = vim.api.nvim_buf_line_count(bufnr) - if end_line ~= line_count then - vim.api.nvim_win_set_cursor(0, { end_line + 1, 0 }) - _, _, start_line, end_line = M.select_cell() - vim.api.nvim_win_set_cursor(0, { end_line - 1, 0 }) - end - end -end - -M.move_cell = function(dir) - local search_res - local result - if dir == "d" then - search_res = vim.fn.search("^" .. CELL_MARKER, "W") - if search_res == 0 then - result = "last" - end - else - search_res = vim.fn.search("^" .. CELL_MARKER, "bW") - if search_res == 0 then - result = "first" - vim.api.nvim_win_set_cursor(0, { 1, 0 }) - end - end - - return result -end - -M.insert_cell_before = function(content) - content = content or CELL_MARKER - local cell_object = M.miniai_spec "a" - vim.api.nvim_buf_set_lines(0, cell_object.from.line - 1, cell_object.from.line - 1, false, { content, "" }) - M.move_cell "u" -end - -M.insert_cell_after = function(content) - content = content or CELL_MARKER - vim.print(content) - local cell_object = M.miniai_spec "a" - vim.api.nvim_buf_set_lines(0, cell_object.to.line, cell_object.to.line, false, { content, "" }) - M.move_cell "d" -end - -M.insert_markdown_cell = function() - M.insert_cell_after(CELL_MARKER .. " [markdown]") -end - -return M diff --git a/ar/.config/NvChad/lua/custom/configs/dadbod.lua b/ar/.config/NvChad/lua/custom/configs/dadbod.lua deleted file mode 100644 index 90c13fb..0000000 --- a/ar/.config/NvChad/lua/custom/configs/dadbod.lua +++ /dev/null @@ -1,29 +0,0 @@ -local M = {} - -local function db_completion() - require("cmp").setup.buffer { sources = { { name = "vim-dadbod-completion" } } } -end - -function M.setup() - vim.g.db_ui_save_location = vim.fn.stdpath "config" .. require("plenary.path").path.sep .. "db_ui" - - vim.api.nvim_create_autocmd("FileType", { - pattern = { - "sql", - }, - command = [[setlocal omnifunc=vim_dadbod_completion#omni]], - }) - - vim.api.nvim_create_autocmd("FileType", { - pattern = { - "sql", - "mysql", - "plsql", - }, - callback = function() - vim.schedule(db_completion) - end, - }) -end - -return M diff --git a/ar/.config/NvChad/lua/custom/configs/lspconfig.lua b/ar/.config/NvChad/lua/custom/configs/lspconfig.lua deleted file mode 100644 index c4fd1db..0000000 --- a/ar/.config/NvChad/lua/custom/configs/lspconfig.lua +++ /dev/null @@ -1,71 +0,0 @@ -local on_attach = require("plugins.configs.lspconfig").on_attach -local capabilities = require("plugins.configs.lspconfig").capabilities - -local lspconfig = require "lspconfig" - --- if you just want default config for the servers then put them in a table -local servers = { "clangd", "cssls", "emmet_language_server", "html", "julials", "sqlls", "tsserver" } - -for _, lsp in ipairs(servers) do - lspconfig[lsp].setup { - on_attach = on_attach, - capabilities = capabilities, - } -end - --- --- lspconfig.pyright.setup { blabla} -local on_attach_qmd = function(client, bufnr) - local function buf_set_keymap(...) - vim.api.nvim_buf_set_keymap(bufnr, ...) - end - local function buf_set_option(...) - vim.api.nvim_buf_set_option(bufnr, ...) - end - - buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc") - local opts = { noremap = true, silent = true } -end - -local lsp_flags = { - allow_incremental_sync = true, - debounce_text_changes = 150, -} - -local cmp_nvim_lsp = require "cmp_nvim_lsp" -local util = require "lspconfig.util" - -lspconfig.marksman.setup { - on_attach = on_attach_qmd, - capabilities = capabilities, - filetypes = { "markdown", "quarto" }, - root_dir = util.root_pattern(".git", ".marksman.toml", "_quarto.yml"), -} - --- lspconfig.r_language_server.setup { --- on_attach = on_attach, --- capabilities = capabilities, --- flags = lsp_flags, --- settings = { --- r = { --- lsp = { --- rich_documentation = false, --- }, --- }, --- }, --- } - -lspconfig.yamlls.setup { - on_attach = on_attach, - capabilities = capabilities, - flags = lsp_flags, - settings = { - yaml = { - schemas = { - -- add custom schemas here - -- e.g. - ["https://raw.githubusercontent.com/hits-mbm-dev/kimmdy/main/src/kimmdy/kimmdy-yaml-schema.json"] = "kimmdy.yml", - }, - }, - }, -} diff --git a/ar/.config/NvChad/lua/custom/configs/null-ls.lua b/ar/.config/NvChad/lua/custom/configs/null-ls.lua deleted file mode 100644 index d703736..0000000 --- a/ar/.config/NvChad/lua/custom/configs/null-ls.lua +++ /dev/null @@ -1,45 +0,0 @@ -local null_ls = require "null-ls" -local augroup = vim.api.nvim_create_augroup("LspFormatting", {}) - -local b = null_ls.builtins - -local sources = { - -- cpp - b.formatting.clang_format, - - -- Lua - b.formatting.stylua, - - -- python - b.code_actions.refactoring, - b.diagnostics.mypy, - b.diagnostics.ruff, - b.diagnostics.vulture, - b.formatting.black, - -- b.formatting.pyflyby, - -- b.formatting.reorder_python_imports, - - -- webdev stuff - b.formatting.deno_fmt, -- choosed deno for ts/js files cuz its very fast! - b.formatting.prettier.with { filetypes = { "html", "markdown", "css" } }, -- so prettier works only on these filetypes -} - -null_ls.setup { - debug = true, - sources = sources, - on_attach = function(client, bufnr) - if client.supports_method "textDocument/formatting" then - vim.api.nvim_clear_autocmds { - group = augroup, - buffer = bufnr, - } - vim.api.nvim_create_autocmd("BufWritePre", { - group = augroup, - buffer = bufnr, - callback = function() - vim.lsp.buf.format { bufnr = bufnr } - end, - }) - end - end, -} diff --git a/ar/.config/NvChad/lua/custom/configs/overrides.lua b/ar/.config/NvChad/lua/custom/configs/overrides.lua deleted file mode 100644 index 13a0aa1..0000000 --- a/ar/.config/NvChad/lua/custom/configs/overrides.lua +++ /dev/null @@ -1,247 +0,0 @@ -local M = {} - -M.blankline = { - -- show_trailing_blankline_indent = true, - -- show_first_indent_level = true, - context_patterns = { - "block", - "else_clause", - "catch_clause", - "class", - "function", - "import_statement", - "jsx_element", - "jsx_self_closing_element", - "method", - "return", - "try_statement", - "^for", - "^if", - "^object", - "^table", - "^while", - }, -} - -M.treesitter = { - dependencies = { - "nvim-treesitter/nvim-treesitter-textobjects", - "nvim-treesitter/nvim-treesitter-context", - }, - - ensure_installed = { - "bash", - "c", - "css", - "html", - "javascript", - "julia", - "latex", - "lua", - "markdown", - "markdown_inline", - "python", - "query", - -- "r", - "scala", - "tsx", - "typescript", - "vim", - "vimdoc", - "yaml", - }, - - highlight = { enable = true }, - - indent = { - enable = true, - -- disable = { - -- "python" - -- }, - }, -} - -M.mason = { - ensure_installed = { - -- c/cpp stuff - "clangd", - "clang-format", - - -- julia - "julia-lsp", - - -- lua stuff - "lua-language-server", - "stylua", - - -- markdown - "markdownlint", - "markdown-toc", - "marksman", - - -- -- python - "black", - "debugpy", - "mypy", - "ruff", - "pyright", - "vulture", - - -- R - -- "r-languageserver", - - -- -- solidity - -- "solidity", - - -- SQL - "sqlls", - "sqlfluff", - "sql-formatter", - - -- web dev stuff - "css-lsp", - "html-lsp", - "typescript-language-server", - "deno", - "prettier", - }, -} - --- git support in nvimtree -M.nvimtree = { - git = { - enable = true, - }, - - renderer = { - highlight_git = true, - icons = { - show = { - git = true, - }, - }, - }, -} - -M.cmp = { - branch = "main", - dependencies = { - "hrsh7th/cmp-nvim-lsp-signature-help", - "hrsh7th/cmp-calc", - "hrsh7th/cmp-emoji", - "f3fora/cmp-spell", - "ray-x/cmp-treesitter", - "kdheepak/cmp-latex-symbols", - "jmbuhr/cmp-pandoc-references", - "rafamadriz/friendly-snippets", - "onsails/lspkind-nvim", - }, - config = function() - local cmp = require "cmp" - local luasnip = require "luasnip" - local lspkind = require "lspkind" - lspkind.init() - - local has_words_before = function() - local line, col = unpack(vim.api.nvim_win_get_cursor(0)) - return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match "%s" == nil - end - - cmp.setup { - snippet = { - expand = function(args) - luasnip.lsp_expand(args.body) - end, - }, - mapping = { - ["<C-f>"] = cmp.mapping.scroll_docs(-4), - ["<C-b>"] = cmp.mapping.scroll_docs(4), - ["<C-m>"] = cmp.mapping(function(fallback) - if luasnip.expand_or_jumpable() then - luasnip.expand_or_jump() - fallback() - end - end, { "i", "s" }), - ["<C-p>"] = cmp.mapping(function(fallback) - if luasnip.jumpable(-1) then - luasnip.jump(-1) - else - fallback() - end - end, { "i", "s" }), - ["<C-e>"] = cmp.mapping.abort(), - ["<CR>"] = cmp.mapping.confirm { - select = true, - }, - ["<Tab><Tab>"] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_next_item() - elseif has_words_before() then - cmp.complete() - else - fallback() - end - end, { "i", "s" }), - ["<S-Tab><S-Tab>"] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_prev_item() - else - fallback() - end - end, { "i", "s" }), - }, - autocomplete = false, - formatting = { - format = lspkind.cmp_format { - with_text = true, - menu = { - otter = "[🦦]", - nvim_lsp = "[LSP]", - luasnip = "[snip]", - buffer = "[buf]", - path = "[path]", - spell = "[spell]", - pandoc_references = "[ref]", - tags = "[tag]", - treesitter = "[TS]", - calc = "[calc]", - latex_symbols = "[tex]", - emoji = "[emoji]", - }, - }, - }, - sources = { - { name = "otter" }, -- for code chunks in quarto - { name = "path" }, - { name = "nvim_lsp" }, - { name = "nvim_lsp_signature_help" }, - { name = "luasnip", keyword_length = 3, max_item_count = 3 }, - { name = "pandoc_references" }, - { name = "buffer", keyword_length = 5, max_item_count = 3 }, - { name = "spell" }, - { name = "treesitter", keyword_length = 5, max_item_count = 3 }, - { name = "calc" }, - { name = "latex_symbols" }, - { name = "emoji" }, - }, - view = { - entries = "native", - }, - window = { - documentation = { - border = require("misc.style").border, - }, - }, - } - - -- for friendly snippets - require("luasnip.loaders.from_vscode").lazy_load() - -- for custom snippets - require("luasnip.loaders.from_vscode").lazy_load { paths = { vim.fn.stdpath "config" .. "/snips" } } - -- link quarto and rmarkdown to markdown snippets - luasnip.filetype_extend("quarto", { "markdown" }) - luasnip.filetype_extend("rmarkdown", { "markdown" }) - end, -} - -return M |
