From 4013b56e732d6053de1d2dcbd5bae5fa40a12296 Mon Sep 17 00:00:00 2001 From: archos Date: Wed, 5 Mar 2025 21:05:54 +0100 Subject: [PATCH] =?UTF-8?q?P=C5=99id=C3=A1na=20Neovim=20konfigurace?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 8 +++ .neoconf.json | 15 +++++ lazy-lock.json | 26 +++------ lazyvim.json | 20 ++----- lua/config/options.lua | 130 +---------------------------------------- 5 files changed, 37 insertions(+), 162 deletions(-) create mode 100644 .gitignore create mode 100644 .neoconf.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cc5457a --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +tt.* +.tests +doc/tags +debug +.repro +foo.* +*.log +data diff --git a/.neoconf.json b/.neoconf.json new file mode 100644 index 0000000..7c48087 --- /dev/null +++ b/.neoconf.json @@ -0,0 +1,15 @@ +{ + "neodev": { + "library": { + "enabled": true, + "plugins": true + } + }, + "neoconf": { + "plugins": { + "lua_ls": { + "enabled": true + } + } + } +} diff --git a/lazy-lock.json b/lazy-lock.json index c8f9404..8223c89 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,44 +1,36 @@ { "LazyVim": { "branch": "main", "commit": "3f034d0a7f58031123300309f2efd3bb0356ee21" }, - "aerial.nvim": { "branch": "master", "commit": "3284a2cb858ba009c79da87d5e010ccee3c99c4d" }, + "SchemaStore.nvim": { "branch": "main", "commit": "b6ee84c6db9c8d557e0c8b71f1b6800e77611771" }, "blink.cmp": { "branch": "main", "commit": "dcda20d3aa345025699a920c45b0a0603551f41d" }, "blink.compat": { "branch": "main", "commit": "b0c87b64f9c669d3bcfaea8a80396fbc16e0fcb5" }, "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, - "catppuccin": { "branch": "main", "commit": "7ab1a6ec70a664ecb95d84669efc20aaf4f4ed1b" }, + "catppuccin": { "branch": "main", "commit": "5b5e3aef9ad7af84f463d17b5479f06b87d5c429" }, "codeium.nvim": { "branch": "main", "commit": "ebed4f7cc8a18184d8332d421ca10bed5f7d59a1" }, "conform.nvim": { "branch": "master", "commit": "a6f5bdb78caa305496357d17e962bbc4c0b392e2" }, "flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" }, "friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" }, - "fzf-lua": { "branch": "main", "commit": "ae9378a48fcf07475d93b3dc7775c2aab0b9fa7b" }, "gitsigns.nvim": { "branch": "main", "commit": "4c40357994f386e72be92a46f41fc1664c84c87d" }, - "grug-far.nvim": { "branch": "main", "commit": "309ecac6e6240d37c0be3c567d9f7cc95f63d255" }, - "inc-rename.nvim": { "branch": "main", "commit": "f9b9e5b9a75074810f40881b7e254b5bbeaf122e" }, + "grug-far.nvim": { "branch": "main", "commit": "3d39dc8b31d4ab7aad1b9ffdba136eafc6c7c360" }, "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, "lualine.nvim": { "branch": "master", "commit": "f4f791f67e70d378a754d02da068231d2352e5bc" }, + "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" }, "mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, "mini.ai": { "branch": "main", "commit": "6e01c0e5a15554852546fac9853960780ac52ed4" }, - "mini.animate": { "branch": "main", "commit": "13e170c13030b043aa8ad4311012ec0eaba0d5c7" }, "mini.icons": { "branch": "main", "commit": "ec61af6e606fc89ee3b1d8f2f20166a3ca917a36" }, - "mini.move": { "branch": "main", "commit": "c8b30e92dd2668dd6e56a9a23cb7d4ee38c2266d" }, "mini.pairs": { "branch": "main", "commit": "1a3e73649c0eaef2f6c48ce1e761c6f0a7c11918" }, - "mini.surround": { "branch": "main", "commit": "f90069c7441a5fb04c3de42eacf93e16b64dd3eb" }, - "neo-tree.nvim": { "branch": "main", "commit": "1655119b2057838691467f8a640070462c9b7048" }, - "neogen": { "branch": "main", "commit": "05d754004da8c89115b291f2a23ca530a8cac8fd" }, "noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" }, "nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" }, "nvim-lint": { "branch": "master", "commit": "6e9dd545a1af204c4022a8fcd99727ea41ffdcc8" }, - "nvim-lspconfig": { "branch": "master", "commit": "d793c5cb0206d976a38e70e62479a60ba87722ca" }, - "nvim-navic": { "branch": "master", "commit": "8649f694d3e76ee10c19255dece6411c29206a54" }, - "nvim-treesitter": { "branch": "master", "commit": "8bc635a25f581d42b0a0e5ba8870bd73244dcdea" }, - "nvim-treesitter-context": { "branch": "master", "commit": "198720b4016af04c9590f375d714d5bf8afecc1a" }, - "nvim-treesitter-textobjects": { "branch": "master", "commit": "88fce4e6496950dab867a7c63a819df0ead56751" }, + "nvim-lspconfig": { "branch": "master", "commit": "84e0cd5a3c58e88ef706fdf4a1eed59ded1d3ce2" }, + "nvim-treesitter": { "branch": "master", "commit": "2b0760dca2354fecf48ea35fdf1d753a232e3de2" }, + "nvim-treesitter-textobjects": { "branch": "master", "commit": "8b2d4d519f3516d09910f5baf48d1a47b594f0ce" }, "nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" }, "persistence.nvim": { "branch": "main", "commit": "166a79a55bfa7a4db3e26fc031b4d92af71d0b51" }, "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, - "project.nvim": { "branch": "main", "commit": "8c6bad7d22eef1b71144b401c9f74ed01526a4fb" }, - "snacks.nvim": { "branch": "main", "commit": "07f4b9adff7af45a7e0eb22d85a422e32ed4b1ca" }, + "render-markdown.nvim": { "branch": "main", "commit": "059f503ae5490f93346e5ad19b56aec12ead12a6" }, + "snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" }, "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, "tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" }, "trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" }, diff --git a/lazyvim.json b/lazyvim.json index 7de1cc4..6f54896 100644 --- a/lazyvim.json +++ b/lazyvim.json @@ -1,22 +1,10 @@ { "extras": [ "lazyvim.plugins.extras.ai.codeium", - "lazyvim.plugins.extras.coding.mini-surround", - "lazyvim.plugins.extras.coding.neogen", - "lazyvim.plugins.extras.editor.aerial", - "lazyvim.plugins.extras.editor.fzf", - "lazyvim.plugins.extras.editor.inc-rename", - "lazyvim.plugins.extras.editor.mini-move", - "lazyvim.plugins.extras.editor.navic", - "lazyvim.plugins.extras.editor.neo-tree", - "lazyvim.plugins.extras.editor.telescope", - "lazyvim.plugins.extras.lang.git", - "lazyvim.plugins.extras.lang.php", - "lazyvim.plugins.extras.lang.python", - "lazyvim.plugins.extras.ui.mini-animate", - "lazyvim.plugins.extras.ui.treesitter-context", - "lazyvim.plugins.extras.util.gitui", - "lazyvim.plugins.extras.util.project" + "lazyvim.plugins.extras.lang.json", + "lazyvim.plugins.extras.lang.markdown", + "lazyvim.plugins.extras.lang.toml", + "lazyvim.plugins.extras.lang.typescript" ], "install_version": 8, "news": { diff --git a/lua/config/options.lua b/lua/config/options.lua index c484d88..4646dfc 100644 --- a/lua/config/options.lua +++ b/lua/config/options.lua @@ -1,132 +1,4 @@ -- Options are automatically loaded before lazy.nvim startup -- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua -- Add any additional options here --- 🏁 Nastavení leader klávesy (pro vlastní klávesové zkratky) -vim.g.mapleader = " " -- Leader key je mezerník (Space) -vim.g.maplocalleader = "\\" -- Lokální leader key je zpětné lomítko (`\`) - --- 🔄 Automatické formátování kódu při uložení souboru -vim.g.autoformat = true -- Pokud nechceš, změň na `false` - --- 🎭 Animace v LazyVim (například animované přepínání mezi okny) -vim.g.snacks_animate = true -- Pokud nechceš animace, změň na `false` - --- 🔍 Výběr vyhledávacího nástroje (Telescope nebo FZF) -vim.g.lazyvim_picker = "auto" -- Pokud chceš jen Telescope, změň na `"telescope"` - --- ⚡ Výběr doplňování kódu (nvim-cmp nebo blink.cmp) -vim.g.lazyvim_cmp = "auto" -- Auto vybere nejlepší možnost - --- 🧠 Pokud AI podporuje doplňování, použije AI místo inline návrhů -vim.g.ai_cmp = true - --- 📂 Jak Neovim detekuje kořenový adresář projektu -vim.g.root_spec = { "lsp", { ".git", "lua" }, "cwd" } --- 1️⃣ LSP (pokud běží jazykový server) --- 2️⃣ `.git` složka --- 3️⃣ Složky obsahující `lua` --- 4️⃣ Pokud nic nenajde, použije aktuální složku (`cwd`) - --- 🖥️ Použití terminálu (můžeš změnit na "bash", "zsh", "pwsh" atd.) --- LazyVim.terminal.setup("pwsh") - --- 🚫 Ignorovat některé LSP servery (např. Copilot) -vim.g.root_lsp_ignore = { "copilot" } - --- 🚨 Skrýt varování o zastaralých funkcích v LazyVim -vim.g.deprecation_warnings = false -- Pokud chceš varování, změň na `true` - --- 📌 Zobrazit pozici v dokumentu (Trouble) v lualine (stavovém řádku) -vim.g.trouble_lualine = true -- Pokud nechceš, změň na `false` - --- 🔧 Hlavní nastavení editoru (vim.opt) -local opt = vim.opt - --- 📜 Automatické ukládání souboru při přepnutí okna -opt.autowrite = true - --- 📋 Synchronizace schránky s OS (pokud nejsi v SSH) -opt.clipboard = vim.env.SSH_TTY and "" or "unnamedplus" - --- 🖱️ Povolení myši v Neovimu -opt.mouse = "a" - --- 🔤 Možnosti doplňování v menu -opt.completeopt = "menu,menuone,noselect" - --- 🔍 Ignorovat velikost písmen při hledání -opt.ignorecase = true -opt.smartcase = true -- Pokud napíšeš velké písmeno, bude hledání case-sensitive - --- 🔄 Náhled substitucí při hledání a nahrazování -opt.inccommand = "nosplit" - --- 📏 Zobrazení čísel řádků -opt.number = true -- Zapnout čísla řádků -opt.relativenumber = true -- Relativní čísla řádků - --- 📌 Lepší zalamování řádků -opt.linebreak = true -opt.wrap = false -- Pokud chceš zalamovat řádky, změň na `true` - --- ⏳ Zpoždění před spuštěním příkazů (např. WhichKey) -opt.timeoutlen = 300 - --- 🎨 Povolit 24bitové barvy v terminálu -opt.termguicolors = true - --- 📜 Odsazování a formátování -opt.expandtab = true -- Používat mezery místo tabulátorů -opt.tabstop = 2 -- Tabulátor bude odpovídat 2 mezerám -opt.shiftwidth = 2 -- Automatické odsazení bude 2 mezery -opt.smartindent = true -- Automatické odsazování podle kódu - --- 🏎️ Rychlost editoru -opt.updatetime = 200 -- Jak často se ukládají změny -opt.undolevels = 10000 -- Počet kroků pro vrácení změn -opt.undofile = true -- Povolit historii změn i po restartu - --- 🔍 Nastavení hledání -opt.grepprg = "rg --vimgrep" -- Používat ripgrep (`rg`) místo grep -opt.grepformat = "%f:%l:%c:%m" - --- 📂 Možnosti session (uložené pracovní prostředí) -opt.sessionoptions = { "buffers", "curdir", "tabpages", "winsize", "help", "globals", "skiprtp", "folds" } - --- 📌 Lepší skládání kódu (folding) -opt.foldlevel = 99 -- Kód je ve výchozím stavu rozbalený -opt.foldmethod = "expr" -opt.foldexpr = "v:lua.require'lazyvim.util'.ui.foldexpr()" - --- 📜 Zobrazení skrytých znaků -opt.list = true - --- 📌 Stavový řádek a boční sloupec -opt.signcolumn = "yes" -- Vždy zobrazit sloupec se značkami (např. LSP chyby) -opt.laststatus = 3 -- Globální status bar - --- 📌 Automatické skrolování při pohybu kurzorem -opt.scrolloff = 4 -- Vždy zobrazit 4 řádky nad/pod kurzorem -opt.sidescrolloff = 8 -- Vždy zobrazit 8 sloupců vlevo/vpravo - --- 📂 Nastavení rozdělení oken -opt.splitbelow = true -- Nová okna se otevírají pod aktuálním -opt.splitright = true -- Nová okna se otevírají napravo - --- ✍️ Automatické doplňování uvozovek, závorek a HTML tagů -opt.formatoptions = "jcroqlnt" -- Lepší formátování textu -opt.formatexpr = "v:lua.require'lazyvim.util'.format.formatexpr()" - --- 📌 Markdown konfigurace -vim.g.markdown_recommended_style = 0 -- Oprava odsazení v Markdownu - --- 🏁 Pokud máš Neovim 0.10+, povol smooth scrolling -if vim.fn.has("nvim-0.10") == 1 then - opt.smoothscroll = true - opt.foldexpr = "v:lua.require'lazyvim.util'.ui.foldexpr()" - opt.foldmethod = "expr" - opt.foldtext = "" -else - opt.foldmethod = "indent" - opt.foldtext = "v:lua.require'lazyvim.util'.ui.foldtext()" -end +vim.opt.textwidth = 80