From 8b82957b39120baf4a857bc1f775e068bd4d54e2 Mon Sep 17 00:00:00 2001 From: vx-clutch Date: Mon, 22 Sep 2025 20:54:32 -0400 Subject: [PATCH] save --- nvim/.config/nvim/ftplugin/h.lua | 1 + nvim/.config/nvim/ftplugin/noext.lua | 5 +++++ nvim/.config/nvim/init.lua | 20 +++++++++++++++++--- starship/.config/starship.toml | 8 +++++++- zsh/.zshrc | 13 +++++++++++++ 5 files changed, 43 insertions(+), 4 deletions(-) create mode 100644 nvim/.config/nvim/ftplugin/h.lua create mode 100644 nvim/.config/nvim/ftplugin/noext.lua diff --git a/nvim/.config/nvim/ftplugin/h.lua b/nvim/.config/nvim/ftplugin/h.lua new file mode 100644 index 0000000..5fb8730 --- /dev/null +++ b/nvim/.config/nvim/ftplugin/h.lua @@ -0,0 +1 @@ +vim.bo.filetype = "c" diff --git a/nvim/.config/nvim/ftplugin/noext.lua b/nvim/.config/nvim/ftplugin/noext.lua new file mode 100644 index 0000000..447f443 --- /dev/null +++ b/nvim/.config/nvim/ftplugin/noext.lua @@ -0,0 +1,5 @@ +vim.opt.spell = true +vim.opt_local.tabstop = 2 +vim.opt_local.shiftwidth = 2 +vim.opt_local.expandtab = true +vim.opt_local.textwidth = 80 diff --git a/nvim/.config/nvim/init.lua b/nvim/.config/nvim/init.lua index 42b22d7..5a2d7de 100644 --- a/nvim/.config/nvim/init.lua +++ b/nvim/.config/nvim/init.lua @@ -17,21 +17,35 @@ vim.keymap.set("v", "K", ":m '<-2gv=gv") for _, k in ipairs({ "h", "j", "k", "l" }) do vim.keymap.set({ "n", "i", "v" }, "", "") end -vim.keymap.set("n", "en", ":edit $HOME/.config/nvim/init.lua") -vim.keymap.set("n", "ez", ":edit $HOME/.zshrc") + +vim.keymap.set("n", "en", ":edit $XDG_CONFIG_HOME/nvim/init.lua") +vim.keymap.set("n", "ez", ":edit $ZSHRC") +vim.keymap.set("n", "ed", ":edit $DO") vim.keymap.set("n", "", function() local alt = vim.fn.expand("%:r") .. (vim.bo.filetype == "c" and ".h" or ".c") vim.cmd("edit " .. alt) end) +vim.api.nvim_create_autocmd({ "BufRead", "BufNewFile" }, { + pattern = "*", + callback = function() + local ext = vim.fn.expand("%:e") + local firstline = vim.fn.getline(1) + if ext == "" and not firstline:match("^#!") then + vim.bo.filetype = "noext" + end + end, +}) + vim.pack.add { { src = "https://github.com/echasnovski/mini.pick" }, { src = "https://github.com/mason-org/mason.nvim" }, + { src = "https://github.com/neovim/nvim-lspconfig" }, } require("mini.pick").setup() require("mason").setup() -vim.lsp.enable { "lua_ls", "clangd" } +vim.lsp.enable { "lua_ls", "clangd", "beautysh" } vim.diagnostic.config { virtual_text = true, underline = true, signs = false } diff --git a/starship/.config/starship.toml b/starship/.config/starship.toml index 15cec94..7dd0c6c 100644 --- a/starship/.config/starship.toml +++ b/starship/.config/starship.toml @@ -1,3 +1,9 @@ add_newline = false -format = "$git_status$directory" +format = "$git_status$custom$directory" + +[custom.todo] +command = "awk '/^TODAY/{getline; if (NF) {print; exit}}' ~/do" +when = "grep -A1 '^TODAY' ~/do | tail -n1 | grep -q '.'" +style = "bold white" +format = "\"[$output]($style)\" " diff --git a/zsh/.zshrc b/zsh/.zshrc index 3fe4921..c64f739 100644 --- a/zsh/.zshrc +++ b/zsh/.zshrc @@ -6,8 +6,11 @@ export VISUAL=nvim export TERM="xterm-256color" export COLORTERM=truecolor +export XDG_CONFIG_HOME="$HOME/.config" export PATH=$HOME/.local/bin:$PATH +export DO="$HOME/do" + alias ls='ls --color=auto' alias ll='ls -lah' alias gg='lazygit' @@ -18,6 +21,16 @@ take() { cd $1 } +function show_todo_in_git_repo() { + if git rev-parse --is-inside-work-tree &>/dev/null; then + [ -f TODO ] && clear && cat TODO + fi +} + +autoload -Uz add-zsh-hook +add-zsh-hook chpwd show_todo_in_git_repo +show_todo_in_git_repo + [ -f "${XDG_DATA_HOME:-$HOME/.local/share}/zap/zap.zsh" ] && source "${XDG_DATA_HOME:-$HOME/.local/share}/zap/zap.zsh" plug "zsh-users/zsh-autosuggestions" plug "zap-zsh/supercharge"