dotfiles

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit 3f2be61c779cf9f97b6070736bc6d67e119512f7
parent ca9ede56f3a82772e34d320344d016933de4ccc8
Author: KoenigLinus <linus@behrens-familie.de>
Date:   Thu, 17 Apr 2025 12:04:59 +0200

17.04.2025 linux switch

Diffstat:
A.sources/plan9port | 1+
Aghostty/config | 34++++++++++++++++++++++++++++++++++
Minit.bash | 3+++
Mnvim/init.lua | 11++++++++++-
Anvim/lazy-lock.json | 44++++++++++++++++++++++++++++++++++++++++++++
Mnvim/lazyvim.json | 5+++--
Anvim/lua/config/highlite.lua | 9+++++++++
Mnvim/lua/config/keymaps.lua | 9+++++++++
Mnvim/lua/config/lazy.lua | 2+-
Anvim/lua/plugins/bufferline.lua | 12++++++++++++
Mnvim/lua/plugins/example.lua | 1+
Dnvim/lua/plugins/gruvbox.lua | 9---------
Mnvim/lua/plugins/lualine.lua | 51++++++++++++++++++++++++++-------------------------
Anvim/lua/plugins/mini.lua | 33+++++++++++++++++++++++++++++++++
Anvim/lua/plugins/neotree.lua | 20++++++++++++++++++++
Anvim/lua/plugins/no-neck-pain.lua | 3+++
Anvim/lua/plugins/opacity.lua | 3+++
Anvim/lua/plugins/render.lua | 14++++++++++++++
Anvim/lua/plugins/starter-mini.lua | 66++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mnvim/lua/plugins/todo-comment.lua | 84++++++++++++++++++++++++++++++++++++++++----------------------------------------
Anvim/lua/plugins/user/highlights.lua | 13+++++++++++++
21 files changed, 347 insertions(+), 80 deletions(-)

diff --git a/.sources/plan9port b/.sources/plan9port @@ -0,0 +1 @@ +Subproject commit 9da5b4451365e33c4f561d74a99ad5c17ff20fed diff --git a/ghostty/config b/ghostty/config @@ -0,0 +1,34 @@ +# Config generated by Ghostty Config + +cursor-style = block +cursor-style-blink = false +shell-integration-features = no-cursor + +macos-titlebar-proxy-icon = hidden +title = " " + +clipboard-read = allow +clipboard-write = allow +theme = tokyonight-storm +background = #24283b +foreground = #c0caf5 +selection-background = #364a82 +selection-foreground = #c0caf5 +cursor-color = #c0caf5 +cursor-text = #1d202f +palette = 0=#1d202f +palette = 1=#f7768e +palette = 2=#9ece6a +palette = 3=#e0af68 +palette = 4=#7aa2f7 +palette = 5=#bb9af7 +palette = 6=#7dcfff +palette = 7=#a9b1d6 +palette = 8=#414868 +palette = 9=#f7768e +palette = 10=#9ece6a +palette = 11=#e0af68 +palette = 12=#7aa2f7 +palette = 13=#bb9af7 +palette = 14=#7dcfff +palette = 15=#c0caf5 diff --git a/init.bash b/init.bash @@ -9,3 +9,6 @@ ln -s ~/dotfiles/.sources/ ~/.sources rm -rf ~/.scripts ln -s ~/dotfiles/.scripts/ ~/.scripts + +rm -rf $HOME/Library/Application Support/com.mitchellh.ghostty +ln -s $HOME/dotfiles/ghostty/ $HOME/Library/Application Support/com.mitchellh.ghostty diff --git a/nvim/init.lua b/nvim/init.lua @@ -1,9 +1,18 @@ --- bootstrap lazy.nvim, LazyVim and your plugins require("config.lazy") +-- local my_theme = require("linus-theme") +-- my_theme.setup() + +------------------------------------------------------------- vim.o.encoding = "utf-8" vim.o.fileencoding = "utf-8" +vim.opt.spell = true +vim.opt.spelllang = { "en", "de" } vim.opt.tabstop = 4 vim.opt.shiftwidth = 4 vim.opt.expandtab = true + +------------------------------------------------------------- + +vim.opt.termguicolors = true diff --git a/nvim/lazy-lock.json b/nvim/lazy-lock.json @@ -0,0 +1,44 @@ +{ + "LazyVim": { "branch": "main", "commit": "3f034d0a7f58031123300309f2efd3bb0356ee21" }, + "blink.cmp": { "branch": "main", "commit": "cb5e346d9e0efa7a3eee7fd4da0b690c48d2a98e" }, + "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, + "catppuccin": { "branch": "main", "commit": "5b5e3aef9ad7af84f463d17b5479f06b87d5c429" }, + "conform.nvim": { "branch": "master", "commit": "b1a75324ddf96b7bb84963a297b1ed334db087c0" }, + "friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" }, + "fzf-lua": { "branch": "main", "commit": "6488ada2f376e47789391dc353b6d91a3f9de6f6" }, + "gitsigns.nvim": { "branch": "main", "commit": "17ab794b6fce6fce768430ebc925347e349e1d60" }, + "grug-far.nvim": { "branch": "main", "commit": "6ef402861468c6bd987155be17a34ba4291dc1d0" }, + "gruvbox.nvim": { "branch": "main", "commit": "12b5420b665e8053d74eb075d8a589477333f67d" }, + "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, + "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, + "lualine.nvim": { "branch": "master", "commit": "f4f791f67e70d378a754d02da068231d2352e5bc" }, + "markview.nvim": { "branch": "main", "commit": "4f9ad36efe01c283aa886453ba75bf569c897c84" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" }, + "mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, + "mini.ai": { "branch": "main", "commit": "e139eb1101beb0250fea322f8c07a42f0f175688" }, + "mini.icons": { "branch": "main", "commit": "397ed3807e96b59709ef3292f0a3e253d5c1dc0a" }, + "mini.pairs": { "branch": "main", "commit": "69864a2efb36c030877421634487fd90db1e4298" }, + "mini.starter": { "branch": "main", "commit": "d8038690eadf203a40863c3a9423df880a901d39" }, + "neo-tree.nvim": { "branch": "main", "commit": "73d63376352ac731379892e27ac7b3d9449148e3" }, + "no-neck-pain.nvim": { "branch": "main", "commit": "53c8ef094c86e8897be2dcce0259d35914f6cdc0" }, + "noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" }, + "nui.nvim": { "branch": "main", "commit": "8d3bce9764e627b62b07424e0df77f680d47ffdb" }, + "nvim-lint": { "branch": "master", "commit": "81e8ba7655cc4395b1092ef4e1b6e83f54cd54ad" }, + "nvim-lspconfig": { "branch": "master", "commit": "3e873195f501b1e02d9fd7e5af5cbe74fc2f98c1" }, + "nvim-treesitter": { "branch": "master", "commit": "523a9e148919f58eb5a013f76787e57696e00c93" }, + "nvim-treesitter-textobjects": { "branch": "master", "commit": "9937e5e356e5b227ec56d83d0a9d0a0f6bc9cad4" }, + "nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" }, + "nvim-web-devicons": { "branch": "master", "commit": "4c3a5848ee0b09ecdea73adcd2a689190aeb728c" }, + "persistence.nvim": { "branch": "main", "commit": "166a79a55bfa7a4db3e26fc031b4d92af71d0b51" }, + "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, + "snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" }, + "substitute.nvim": { "branch": "main", "commit": "9db749a880e3dd3b0eb57f698aa8f1e1630e1f25" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, + "telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, + "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, + "tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" }, + "transparent.nvim": { "branch": "main", "commit": "8a2749a2fa74f97fe6557f61b89ac7fd873f3c21" }, + "trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" }, + "ts-comments.nvim": { "branch": "main", "commit": "1bd9d0ba1d8b336c3db50692ffd0955fe1bb9f0c" }, + "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } +} diff --git a/nvim/lazyvim.json b/nvim/lazyvim.json @@ -2,8 +2,9 @@ "extras": [ ], + "install_version": 7, "news": { - "NEWS.md": "7429" + "NEWS.md": "10960" }, - "version": 7 + "version": 8 } \ No newline at end of file diff --git a/nvim/lua/config/highlite.lua b/nvim/lua/config/highlite.lua @@ -0,0 +1,9 @@ +-- -- ~/.config/nvim/lua/config/highlights.lua +-- return { +-- -- Beispiel: Tree-sitter Textfarben dimmen +-- ["@text"] = { fg = "#000000" }, -- normaler Text +-- ["@text.strong"] = { fg = "#000000", bold = true }, +-- ["@text.emphasis"] = { fg = "#000000", italic = true }, +-- ["@text.literal"] = { fg = "#444444" }, -- inline code +-- ["@comment"] = { fg = "#555555", italic = true }, -- Kommentare dunkler machen +-- } diff --git a/nvim/lua/config/keymaps.lua b/nvim/lua/config/keymaps.lua @@ -1,3 +1,12 @@ -- Keymaps are automatically loaded on the VeryLazy event -- Default keymaps that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/keymaps.lua -- Add any additional keymaps here +-- + +-- NoNeckPain +-- + +local map = LazyVim.safe_keymap_set + +map("n", "<leader>z", "<cmd>NoNeckPain<cr>", { desc = "NoNeckPain: zen" }) +map("n", "<leader>h", "<cmd>TransparentToggle<cr>", { desc = "Transparency: toggle" }) diff --git a/nvim/lua/config/lazy.lua b/nvim/lua/config/lazy.lua @@ -30,7 +30,7 @@ require("lazy").setup({ version = false, -- always use the latest git commit -- version = "*", -- try installing the latest stable version for plugins that support semver }, - install = { colorscheme = { "tokyonight", "habamax" } }, + -- install = { colorscheme = { "tokyonight", "habamax" } }, checker = { enabled = true, -- check for plugin updates periodically notify = false, -- notify on update diff --git a/nvim/lua/plugins/bufferline.lua b/nvim/lua/plugins/bufferline.lua @@ -0,0 +1,12 @@ +return { + -- add gruvbox + { "ellisonleao/gruvbox.nvim" }, + + -- Configure LazyVim to load gruvbox + { + "LazyVim/LazyVim", + opts = { + colorscheme = "gruvbox", + }, + }, +} diff --git a/nvim/lua/plugins/example.lua b/nvim/lua/plugins/example.lua @@ -131,6 +131,7 @@ return { "query", "regex", "tsx", + "latex", "typescript", "vim", "yaml", diff --git a/nvim/lua/plugins/gruvbox.lua b/nvim/lua/plugins/gruvbox.lua @@ -1,9 +0,0 @@ --- ~/.config/nvim/lua/plugins/gruvbox.lua -return { - "ellisonleao/gruvbox.nvim", - lazy = false, -- Load immediately - priority = 1000, - config = function() - vim.cmd([[colorscheme gruvbox]]) - end, -} diff --git a/nvim/lua/plugins/lualine.lua b/nvim/lua/plugins/lualine.lua @@ -1,28 +1,29 @@ return { "nvim-lualine/lualine.nvim", - dependencies = { "nvim-tree/nvim-web-devicons" }, - config = function() - local lualine = require("lualine") - local lazy_status = require("lazy.status") -- to configure lazy pending updates count - - lualine.setup({ - options = { - theme = "gruvbox", - section_separators = "", - component_separators = "", - }, - sections = { - lualine_x = { - { - lazy_status.updates, - cond = lazy_status.has_updates, - color = { fg = "#ff9e64" }, - }, - { "encoding" }, - { "fileformat" }, - { "filetype" }, - }, - }, - }) - end, + enabled = false, + -- dependencies = { "nvim-tree/nvim-web-devicons" }, + -- config = function() + -- local lualine = require("lualine") + -- local lazy_status = require("lazy.status") -- to configure lazy pending updates count + -- + -- lualine.setup({ + -- options = { + -- -- theme = "gruvbox", + -- section_separators = "", + -- component_separators = "", + -- }, + -- sections = { + -- lualine_x = { + -- { + -- lazy_status.updates, + -- cond = lazy_status.has_updates, + -- color = { fg = "#ff9e64" }, + -- }, + -- { "encoding" }, + -- { "fileformat" }, + -- { "filetype" }, + -- }, + -- }, + -- }) + --end, } diff --git a/nvim/lua/plugins/mini.lua b/nvim/lua/plugins/mini.lua @@ -0,0 +1,33 @@ +-- ~/.config/nvim/lua/plugins/softwrap.lua +return { + -- Das ist ein Dummy-Eintrag, damit LazyVim ihn lädt + -- Du kannst stattdessen auch ein echtes Plugin hier rein tun, wenn du willst. + -- Aber dieser Configblock funktioniert ohne Plugin! + "nvim-lua/plenary.nvim", -- oder irgendein vorhandenes Plugin als Träger + config = function() + local function toggle_wrap() + local enabled = vim.wo.wrap + vim.wo.wrap = not enabled + vim.wo.linebreak = not enabled + vim.wo.breakindent = not enabled + if not enabled then + vim.notify("Soft wrap enabled", vim.log.levels.INFO) + else + vim.notify("Soft wrap disabled", vim.log.levels.INFO) + end + end + + -- Autocommand für bestimmte Dateitypen + vim.api.nvim_create_autocmd("FileType", { + pattern = { "markdown", "tex", "text", "plaintex" }, + callback = function() + vim.opt_local.wrap = true + vim.opt_local.linebreak = true + vim.opt_local.breakindent = true + end, + }) + + -- Toggle auf <leader>z + vim.keymap.set("n", "<leader>t", toggle_wrap, { desc = "Toggle soft wrap" }) + end, +} diff --git a/nvim/lua/plugins/neotree.lua b/nvim/lua/plugins/neotree.lua @@ -0,0 +1,20 @@ +return { + "nvim-neo-tree/neo-tree.nvim", + opts = { + filesystem = { + hijack_netrw_behavior = "open_current", -- Keeps Neo-tree from opening automatically + window = { + position = "float", + width = 30, + }, + }, + event_handlers = { + { + event = "file_opened", + handler = function() + require("neo-tree.command").execute({ action = "close" }) + end, + }, + }, + }, +} diff --git a/nvim/lua/plugins/no-neck-pain.lua b/nvim/lua/plugins/no-neck-pain.lua @@ -0,0 +1,3 @@ +return { + "shortcuts/no-neck-pain.nvim", +} diff --git a/nvim/lua/plugins/opacity.lua b/nvim/lua/plugins/opacity.lua @@ -0,0 +1,3 @@ +return { + "xiyaowong/transparent.nvim", +} diff --git a/nvim/lua/plugins/render.lua b/nvim/lua/plugins/render.lua @@ -0,0 +1,14 @@ +return { + "OXY2DEV/markview.nvim", + lazy = false, +} + +-- return { +-- "MeanderingProgrammer/render-markdown.nvim", +-- dependencies = { "nvim-treesitter/nvim-treesitter", "echasnovski/mini.nvim" }, -- if you use the mini.nvim suite +-- -- dependencies = { 'nvim-treesitter/nvim-treesitter', 'echasnovski/mini.icons' }, -- if you use standalone mini plugins +-- -- dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-tree/nvim-web-devicons' }, -- if you prefer nvim-web-devicons +-- ---@module 'render-markdown' +-- ---@type render.md.UserConfig +-- opts = {}, +-- } diff --git a/nvim/lua/plugins/starter-mini.lua b/nvim/lua/plugins/starter-mini.lua @@ -0,0 +1,66 @@ +return { + "echasnovski/mini.starter", + version = false, -- wait till new 0.7.0 release to put it back on semver + event = "VimEnter", + opts = function() + local logo = table.concat({ + "neovim", + }, "\n") + local pad = string.rep(" ", 1) + local new_section = function(name, action, section) + return { name = name, action = action, section = pad .. section } + end + + local starter = require("mini.starter") + --stylua: ignore + local config = { + evaluate_single = true, + header = logo, + items = { + new_section("Find file", LazyVim.pick(), "Telescope"), + new_section("New file", "ene | startinsert", "Built-in"), + new_section("Recent files", LazyVim.pick("oldfiles"), "Telescope"), + new_section("Find text", LazyVim.pick("live_grep"), "Telescope"), + new_section("Config", LazyVim.pick.config_files(), "Config"), + new_section("Restore session", [[lua require("persistence").load()]], "Session"), + new_section("Lazy Extras", "LazyExtras", "Config"), + new_section("Lazy", "Lazy", "Config"), + new_section("Quit", "qa", "Built-in"), + }, + content_hooks = { + starter.gen_hook.adding_bullet(pad .. "░ ", false), + starter.gen_hook.aligning("center", "center"), + }, + } + return config + end, + config = function(_, config) + -- close Lazy and re-open when starter is ready + if vim.o.filetype == "lazy" then + vim.cmd.close() + vim.api.nvim_create_autocmd("User", { + pattern = "MiniStarterOpened", + callback = function() + require("lazy").show() + end, + }) + end + + local starter = require("mini.starter") + starter.setup(config) + + vim.api.nvim_create_autocmd("User", { + pattern = "LazyVimStarted", + callback = function(ev) + local stats = require("lazy").stats() + local ms = (math.floor(stats.startuptime * 100 + 0.5) / 100) + local pad_footer = string.rep(" ", 8) + starter.config.footer = pad_footer .. "⚡ Neovim loaded " .. stats.count .. " plugins in " .. ms .. "ms" + -- INFO: based on @echasnovski's recommendation (thanks a lot!!!) + if vim.bo[ev.buf].filetype == "ministarter" then + pcall(starter.refresh) + end + end, + }) + end, +} diff --git a/nvim/lua/plugins/todo-comment.lua b/nvim/lua/plugins/todo-comment.lua @@ -1,49 +1,49 @@ return { - "folke/todo-comments.nvim", - dependencies = { "nvim-lua/plenary.nvim" }, - opts = { - keywords = { - FIX = { - icon = " ", -- icon used for the sign, and in search results - color = "error", -- can be a hex color, or a named color (see below) - alt = { "FIXME", "BUG", "FIXIT", "ISSUE" }, -- a set of other keywords that all map to this FIX keywords - -- signs = false, -- configure signs for some keywords individually - }, - TODO = { icon = " ", color = "info" }, - HACK = { icon = " ", color = "warning" }, - WARN = { icon = " ", color = "warning", alt = { "WARNING", "XXX" } }, - PERF = { icon = " ", alt = { "OPTIM", "PERFORMANCE", "OPTIMIZE" } }, - NOTE = { icon = " ", color = "hint", alt = { "INFO" } }, + "folke/todo-comments.nvim", + dependencies = { "nvim-lua/plenary.nvim" }, + opts = { + keywords = { + FIX = { + icon = " ", -- icon used for the sign, and in search results + color = "error", -- can be a hex color, or a named color (see below) + alt = { "FIXME", "BUG", "FIXIT", "ISSUE" }, -- a set of other keywords that all map to this FIX keywords + -- signs = false, -- configure signs for some keywords individually + }, + TODO = { icon = " ", color = "info" }, + HACK = { icon = " ", color = "warning" }, + WARN = { icon = " ", color = "warning", alt = { "WARNING", "XXX" } }, + PERF = { icon = " ", alt = { "OPTIM", "PERFORMANCE", "OPTIMIZE" } }, + NOTE = { icon = " ", color = "hint", alt = { "INFO" } }, - -- FIX: Test - -- TODO: Test - -- HACK: Test - -- WARN: Test - -- PERF: Test - -- NOTE: Test - -- TEST: Test + -- FIX: Test + -- TODO: Test + -- HACK: Test + -- WARN: Test + -- PERF: Test + -- NOTE: Test + -- TEST: Test - HERLEITUNG = { icon = "󰧆", color = "#cfcfcf" }, - UEBEN = { icon = "", color = "warning" }, - LERNEN = { icon = "󰑖", color = "info" }, - RESEARCH = { icon = "", color = "hint" }, - ANKI = { icon = "", color = "#9654b0" }, - WTF = { icon = "", color = "error", alt = { "WARNING", "XXX" } }, - ARNECKE = { icon = "󰑴", color = "#ffa3f1", alt = { "WARNING", "XXX" } }, + HERLEITUNG = { icon = "󰧆", color = "#cfcfcf" }, + UEBEN = { icon = "", color = "warning" }, + LERNEN = { icon = "󰑖", color = "info" }, + RESEARCH = { icon = "", color = "hint" }, + ANKI = { icon = "", color = "#9654b0" }, + WTF = { icon = "", color = "error", alt = { "WARNING", "XXX" } }, + ARNECKE = { icon = "󰑴", color = "#ffa3f1", alt = { "WARNING", "XXX" } }, - -- HERLEITUNG: Test - -- UEBEN: Test - -- LERNEN: Test - -- RESEARCH: Test - -- ANKI: Test - -- WTF: Test - -- ARNECKE: Test - }, + -- HERLEITUNG: Test + -- UEBEN: Test + -- LERNEN: Test + -- RESEARCH: Test + -- ANKI: Test + -- WTF: Test + -- ARNECKE: Test + }, - highlight = { - multiline = true, -- enable multine todo comments - comments_only = false, -- uses treesitter to match keywords in comments only - max_line_len = 400, -- ignore lines longer than this - }, + highlight = { + multiline = true, -- enable multine todo comments + comments_only = false, -- uses treesitter to match keywords in comments only + max_line_len = 400, -- ignore lines longer than this }, + }, } diff --git a/nvim/lua/plugins/user/highlights.lua b/nvim/lua/plugins/user/highlights.lua @@ -0,0 +1,13 @@ +vim.api.nvim_create_augroup("TransparentBackground", { clear = true }) +vim.api.nvim_create_autocmd("ColorScheme", { + group = "TransparentBackground", + callback = function() + -- Remove the background from Normal text and floating windows + vim.api.nvim_set_hl(0, "Normal", { bg = "none" }) + vim.api.nvim_set_hl(0, "NormalFloat", { bg = "none" }) + + -- Optionally, remove background from other UI elements + vim.api.nvim_set_hl(0, "SignColumn", { bg = "none" }) + vim.api.nvim_set_hl(0, "EndOfBuffer", { bg = "none" }) + end, +})