diff --git a/.gitignore b/.gitignore index 3980959..f24ed1b 100644 --- a/.gitignore +++ b/.gitignore @@ -37,3 +37,5 @@ pre temp temp.* temp +config/pi/auth.json +config/pi/sessions/ diff --git a/Makefile b/Makefile index 9b6f24b..845b316 100644 --- a/Makefile +++ b/Makefile @@ -30,7 +30,12 @@ dotfiles: setup-stow stow "$(STOW_ARGS)" -d dotfiles -t "$(HOME)" "$(OS)" stow "$(STOW_ARGS)" dotfiles stow "$(STOW_ARGS)" yabai - ln -sf ~/dotfiles/fish ~/.config/fish\ + ln -sf ~/dotfiles/fish ~/.config/fish + mkdir -p "$(HOME)/.agents" + ln -sfn ~/dotfiles/agents/skills "$(HOME)/.agents/skills" + mkdir -p "$(HOME)/.claude" + ln -sfn ~/dotfiles/agents/skills "$(HOME)/.claude/skills" + ln -sf ~/dotfiles/config/pi/agent/AGENTS.md "$(HOME)/.claude/CLAUDE.md" setup-uv: diff --git a/README.md b/README.md index 68d0bea..c9c3b7f 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,8 @@ Setup and configuration for my terminal based developer workflow (MacOS/Ubuntu): This repo should be cloned into `$HOME` and set as `$XDG_CONFIG_HOME`. Many tools rely on setting this for the config stored in this repo to work. For other config that requires files in `$HOME` (such as `$HOME/.bashrc`) Stow is used to symlimk files. +Different files are symlinked based on the `OS` `Makefile` variable - usually it's just getting RC files for specific OS, ie `./dotfiles/macos/.zshrc`. + You can setup your machine using commands in `Makefile`. Commonly setting up a machine involves: - Installing packages with Homebrew @@ -28,7 +30,7 @@ Setup an Ubuntu machine: $ make setup-ubuntu ``` -This will also setup dependencies with Nix. +This will also setup dependencies with Homebrew. ### macOS @@ -40,7 +42,7 @@ $ make setup-macos This will: - Install Homebrew if not already installed -- Install all packages from the Brewfile +- Install all dependencies from `./brew/Brewfile` - Setup dotfiles with Stow - Configure tmux, Zsh, and fzf @@ -94,7 +96,7 @@ mise is used for managing programming language runtime versions (Python, Node.js ### Neovim -Neovim config is in `./nvim`. To use the Neovim setup, put this folder into `$XDG_CONFIG_HOME`. +Neovim config is in `./nvim`. To use the Neovim setup alone, put the `nvim` folder into `$XDG_CONFIG_HOME`. I use Lazy for package management in Neovim - it will install packages when you first open the editor. @@ -102,7 +104,7 @@ I use Lazy for package management in Neovim - it will install packages when you The `s` command opens a fuzzy file finder (fzf) to search and open files in `$EDITOR`. Run `s` in any directory, or pass a path like `s ~/projects`. Supports multi-select with Tab. -Lot's of aliases - see `scripts/aliases.sh`. +Lot's of aliases - see `./scripts/aliases.sh`. Some small interactive shell helper functions in `./scripts/funcs.sh`. ### Getting Kitty to Play Nice on macOS @@ -130,3 +132,12 @@ Had weird issue with the first execution of Kitty not loading the `kitty.conf` c $ launchctl load ~/Library/LaunchAgents/setenv.XDG_CONFIG_HOME.plist ``` + + +## Agent Configuration + +PI_CODING_AGENT_DIR in dotfiles/common/env.sh points pi's config to ~/dotfiles/config/pi/, which contains agent/AGENTS.md (agent instructions), settings.json, themes, and sessions. + +CLAUDE.md at the repo root serves the same purpose for Claude Code. + +Skills are defined once in agents/skills/ and symlinked by make dotfiles to both ~/.agents/skills (pi) and ~/.claude/skills (Claude Code). diff --git a/agents/skills/summarization/SKILL.md b/agents/skills/summarization/SKILL.md new file mode 100644 index 0000000..53abdee --- /dev/null +++ b/agents/skills/summarization/SKILL.md @@ -0,0 +1,19 @@ +--- +name: summarization +description: Summarizing articles, blog posts etc. +--- + +I will post an article and ask you to summarize it. + +Summarizing should list every idea, and every argument for and against it. You should add your own commentary if appropriate. Link to other ideas not in the text if you can. Each idea should be a single line with bullet points below it. There should be no Markdown bolding (ie **) of the idea or bullet points. + +Example summarization output: + +```md +This is an idea +- something +- something else + +This is another idea +- another thing +``` diff --git a/config/pi/agent/AGENTS.md b/config/pi/agent/AGENTS.md new file mode 100644 index 0000000..60828c9 --- /dev/null +++ b/config/pi/agent/AGENTS.md @@ -0,0 +1,5 @@ +Responses should be concise. Try to push back if you can and offer different ideas or approaches. Try to explore a range of ideas, perspectives. List tradeoffs explicitly if appropriate. Do not include summaries at the end of responses unless specifically asked. + +When you write Python code, make it type safe, so that it would pass strict type checking with a tool like basedpyright. + +Only include comments when they explain something that is not obvious from the code. diff --git a/config/pi/settings.json b/config/pi/settings.json new file mode 100644 index 0000000..83112ec --- /dev/null +++ b/config/pi/settings.json @@ -0,0 +1,6 @@ +{ + "lastChangelogVersion": "0.55.3", + "defaultProvider": "anthropic", + "defaultModel": "claude-opus-4-6", + "theme": "dracula" +} \ No newline at end of file diff --git a/config/pi/themes/dracula.json b/config/pi/themes/dracula.json new file mode 100644 index 0000000..1b1662c --- /dev/null +++ b/config/pi/themes/dracula.json @@ -0,0 +1,88 @@ +{ + "$schema": "https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json", + "name": "dracula", + "vars": { + "background": "#282a36", + "currentLine": "#44475a", + "selection": "#44475a", + "foreground": "#f8f8f2", + "comment": "#6272a4", + "cyan": "#8be9fd", + "green": "#50fa7b", + "orange": "#ffb86c", + "pink": "#ff79c6", + "purple": "#bd93f9", + "red": "#ff5555", + "yellow": "#f1fa8c", + "selectedBg": "#44475a", + "userMsgBg": "#21222c", + "toolPendingBg": "#1e1f28", + "toolSuccessBg": "#1e2b23", + "toolErrorBg": "#2b1e1e", + "customMsgBg": "#282433" + }, + "colors": { + "accent": "purple", + "border": "purple", + "borderAccent": "pink", + "borderMuted": "currentLine", + "success": "green", + "error": "red", + "warning": "yellow", + "muted": "comment", + "dim": "#525560", + "text": "", + "thinkingText": "comment", + + "selectedBg": "selectedBg", + "userMessageBg": "userMsgBg", + "userMessageText": "", + "customMessageBg": "customMsgBg", + "customMessageText": "", + "customMessageLabel": "purple", + "toolPendingBg": "toolPendingBg", + "toolSuccessBg": "toolSuccessBg", + "toolErrorBg": "toolErrorBg", + "toolTitle": "cyan", + "toolOutput": "comment", + + "mdHeading": "pink", + "mdLink": "cyan", + "mdLinkUrl": "comment", + "mdCode": "green", + "mdCodeBlock": "foreground", + "mdCodeBlockBorder": "comment", + "mdQuote": "comment", + "mdQuoteBorder": "comment", + "mdHr": "comment", + "mdListBullet": "pink", + + "toolDiffAdded": "green", + "toolDiffRemoved": "red", + "toolDiffContext": "comment", + + "syntaxComment": "comment", + "syntaxKeyword": "pink", + "syntaxFunction": "green", + "syntaxVariable": "foreground", + "syntaxString": "yellow", + "syntaxNumber": "purple", + "syntaxType": "cyan", + "syntaxOperator": "pink", + "syntaxPunctuation": "foreground", + + "thinkingOff": "currentLine", + "thinkingMinimal": "#6272a4", + "thinkingLow": "#8be9fd", + "thinkingMedium": "#bd93f9", + "thinkingHigh": "#ff79c6", + "thinkingXhigh": "#ff5555", + + "bashMode": "orange" + }, + "export": { + "pageBg": "#1e1f28", + "cardBg": "#282a36", + "infoBg": "#44475a" + } +} diff --git a/dotfiles/common/env.sh b/dotfiles/common/env.sh index d7b84e4..0e2f48d 100644 --- a/dotfiles/common/env.sh +++ b/dotfiles/common/env.sh @@ -3,3 +3,4 @@ export XDG_CONFIG_HOME=~/dotfiles export PERSONAL_PATH="$HOME/personal" export DIRENV_LOG_FORMAT="" # export TODO="$PERSONAL_PATH/todo.md" +export PI_CODING_AGENT_DIR="$HOME/dotfiles/config/pi" diff --git a/dotfiles/macos/.zshrc b/dotfiles/macos/.zshrc index 7647f71..68cd82b 100644 --- a/dotfiles/macos/.zshrc +++ b/dotfiles/macos/.zshrc @@ -1,11 +1,10 @@ source $HOME/dotfiles/dotfiles/common/.zshrc export DYLD_FALLBACK_LIBRARY_PATH=/opt/homebrew/lib -# eval "$(gh copilot alias -- zsh)" [ -f ~/.fzf.zsh ] && source ~/.fzf.zsh . "$HOME/.local/bin/env" eval "$(keychain --eval --quiet ~/.ssh/github-air ~/.ssh/macbook-pro)" -eval "$(/opt/homebrew/bin/brew shellenv)" +eval "$(/opt/homebrew/bin/brew shellenv zsh)" # Skip quote display for faster startup (can be called manually with 'quote' command) # quote diff --git a/kitty/init.vim b/kitty/init.vim index af80c9c..003bb77 100644 --- a/kitty/init.vim +++ b/kitty/init.vim @@ -1,31 +1,24 @@ -set relativenumber set number +set relativenumber set mouse=a set clipboard+=unnamedplus -set virtualedit=all -set scrollback=100000 set termguicolors -set laststatus=0 set background=dark -set ignorecase +set laststatus=0 set scrolloff=8 +set noswapfile +set ignorecase map q :qa! -" Short highlight on yanked text +" Brief highlight on yanked text augroup highlight_yank autocmd! autocmd TextYankPost * silent! lua require'vim.highlight'.on_yank({timeout = 40}) augroup END +" Start at the bottom of the scrollback buffer augroup start_at_bottom autocmd! autocmd VimEnter * normal G augroup END - -augroup prevent_insert - autocmd! - autocmd TermEnter * stopinsert -augroup END - -open_url_with default diff --git a/kitty/kitty.conf b/kitty/kitty.conf index 3ba882b..5ab62dc 100644 --- a/kitty/kitty.conf +++ b/kitty/kitty.conf @@ -1,5 +1,5 @@ -# font_family Fira Code -font_family Cascadia Mono NF +font_family Fira Code +# font_family Cascadia Mono NF font_size 16 @@ -9,8 +9,6 @@ initial_window_height 800 hide_window_decorations no -scrollback_pager nvim --noplugin -u ~/dotfiles/kitty/init.vim -c "silent write! /tmp/kitty_scrollback_buffer | te cat /tmp/kitty_scrollback_buffer - " - map ctrl+enter toggle_fullscreen open_url_with default @@ -19,3 +17,9 @@ confirm_os_window_close 0 include ~/dotfiles/kitty/current-theme.conf macos_titlebar_color #282A36 + + +# Scrollback +scrollback_lines 10000 +scrollback_pager nvim -u ~/dotfiles/kitty/init.vim --noplugin - +map ctrl+shift+h show_scrollback \ No newline at end of file diff --git a/macos/km/adams-macros/Activate Finder.kmmacros b/macos/km/adams-macros/Activate Finder.kmmacros new file mode 100644 index 0000000..cf758ad --- /dev/null +++ b/macos/km/adams-macros/Activate Finder.kmmacros @@ -0,0 +1,70 @@ + + + + + + Activate + Normal + CreationDate + 624329848.61627197 + Macros + + + Actions + + + ActionUID + 1972 + AllWindows + + AlreadyActivatedActionType + Hide + Application + + BundleIdentifier + com.apple.finder + Name + Finder + NewFile + /System/Library/CoreServices/Finder.app + + MacroActionType + ActivateApplication + ReopenWindows + + TimeOutAbortsMacro + + + + CreationDate + 691403255.55500901 + ModificationDate + 691403279.84610605 + Name + Activate Finder + Triggers + + + FireType + Pressed + KeyCode + 96 + MacroTriggerType + HotKey + Modifiers + 0 + + + UID + 0FE311D8-2BD4-431A-83EB-D28C6B64BB11 + + + Name + adams-macros + ToggleMacroUID + 72F63232-9754-45AC-8EC5-D8D1218F06EA + UID + 542BC640-C047-4088-A052-38BEC2E4354B + + + diff --git a/macos/km/adams-macros/Activate Firefox.kmmacros b/macos/km/adams-macros/Activate Firefox.kmmacros new file mode 100644 index 0000000..3b00e71 --- /dev/null +++ b/macos/km/adams-macros/Activate Firefox.kmmacros @@ -0,0 +1,70 @@ + + + + + + Activate + Normal + CreationDate + 624329848.61627197 + Macros + + + Actions + + + ActionUID + 54420 + AllWindows + + AlreadyActivatedActionType + Normal + Application + + BundleIdentifier + org.mozilla.firefox + Name + Firefox + NewFile + /Applications/Firefox.app + + MacroActionType + ActivateApplication + ReopenWindows + + TimeOutAbortsMacro + + + + CreationDate + 624055430.31178904 + ModificationDate + 747478493.59879398 + Name + Activate Firefox + Triggers + + + FireType + Pressed + KeyCode + 122 + MacroTriggerType + HotKey + Modifiers + 6912 + + + UID + 46F064BE-16CD-41AD-8E64-67A16B7D6880 + + + Name + adams-macros + ToggleMacroUID + 72F63232-9754-45AC-8EC5-D8D1218F06EA + UID + 542BC640-C047-4088-A052-38BEC2E4354B + + + diff --git a/macos/km/adams-macros/Activate Swinsian.kmmacros b/macos/km/adams-macros/Activate Swinsian.kmmacros new file mode 100644 index 0000000..3a0ded9 --- /dev/null +++ b/macos/km/adams-macros/Activate Swinsian.kmmacros @@ -0,0 +1,70 @@ + + + + + + Activate + Normal + CreationDate + 624329848.61627197 + Macros + + + Actions + + + ActionUID + 35 + AllWindows + + AlreadyActivatedActionType + Hide + Application + + BundleIdentifier + com.swinsian.Swinsian + Name + Swinsian + NewFile + /Applications/Swinsian.app + + MacroActionType + ActivateApplication + ReopenWindows + + TimeOutAbortsMacro + + + + CreationDate + 624055303.84905303 + ModificationDate + 624055489.35700703 + Name + Activate Swinsian + Triggers + + + FireType + Pressed + KeyCode + 99 + MacroTriggerType + HotKey + Modifiers + 0 + + + UID + A2150061-B904-49FE-BB56-923A44A915B3 + + + Name + adams-macros + ToggleMacroUID + 72F63232-9754-45AC-8EC5-D8D1218F06EA + UID + 542BC640-C047-4088-A052-38BEC2E4354B + + + diff --git a/macos/km/adams-macros/Activate iTerm.kmmacros b/macos/km/adams-macros/Activate iTerm.kmmacros new file mode 100644 index 0000000..08e94a4 --- /dev/null +++ b/macos/km/adams-macros/Activate iTerm.kmmacros @@ -0,0 +1,70 @@ + + + + + + Activate + Normal + CreationDate + 624329848.61627197 + Macros + + + Actions + + + ActionUID + 37 + AllWindows + + AlreadyActivatedActionType + Normal + Application + + BundleIdentifier + net.kovidgoyal.kitty + Name + kitty + NewFile + /Applications/kitty.app + + MacroActionType + ActivateApplication + ReopenWindows + + TimeOutAbortsMacro + + + + CreationDate + 624055456.56697798 + ModificationDate + 747478487.14527905 + Name + Activate iTerm + Triggers + + + FireType + Pressed + KeyCode + 120 + MacroTriggerType + HotKey + Modifiers + 6912 + + + UID + EAB852BA-7FF0-4A6A-862B-2D503F45A748 + + + Name + adams-macros + ToggleMacroUID + 72F63232-9754-45AC-8EC5-D8D1218F06EA + UID + 542BC640-C047-4088-A052-38BEC2E4354B + + + diff --git a/macos/km/adams-macros/Open Firefox.kmmacros b/macos/km/adams-macros/Open Firefox.kmmacros new file mode 100644 index 0000000..679bea5 --- /dev/null +++ b/macos/km/adams-macros/Open Firefox.kmmacros @@ -0,0 +1,96 @@ + + + + + + Activate + Normal + CreationDate + 624329848.61627197 + Macros + + + Actions + + + ActionUID + 54418 + AllWindows + + AlreadyActivatedActionType + Normal + Application + + BundleIdentifier + org.mozilla.firefox + Name + Firefox + NewFile + /Applications/Firefox.app + + IsActive + + MacroActionType + ActivateApplication + ReopenWindows + + TimeOutAbortsMacro + + + + ActionUID + 54419 + DisplayKind + None + HonourFailureSettings + + IncludeStdErr + + MacroActionType + ExecuteAppleScript + Path + ~/dotfiles/macos/applescripts/open_firefox.scpt + Text + + TimeOutAbortsMacro + + TrimResults + + TrimResultsNew + + UseText + + + + CreationDate + 622642165.90767503 + ModificationDate + 739174729.066926 + Name + Open Firefox + Triggers + + + FireType + Pressed + KeyCode + 17 + MacroTriggerType + HotKey + Modifiers + 4608 + + + UID + 78FF41B2-9826-42CD-A39C-D73DAB209131 + + + Name + adams-macros + ToggleMacroUID + 72F63232-9754-45AC-8EC5-D8D1218F06EA + UID + 542BC640-C047-4088-A052-38BEC2E4354B + + + diff --git a/macos/km/adams-macros/Open Shell.kmmacros b/macos/km/adams-macros/Open Shell.kmmacros new file mode 100644 index 0000000..81d7b58 --- /dev/null +++ b/macos/km/adams-macros/Open Shell.kmmacros @@ -0,0 +1,109 @@ + + + + + + Activate + Normal + CreationDate + 624329848.61627197 + Macros + + + Actions + + + ActionUID + 38 + AllWindows + + AlreadyActivatedActionType + SwitchToLast + Application + + BundleIdentifier + net.kovidgoyal.kitty + Name + kitty + NewFile + /Applications/kitty.app + + IsActive + + MacroActionType + ActivateApplication + ReopenWindows + + TimeOutAbortsMacro + + + + ActionUID + 39 + DisplayKind + Asynchronously + HonourFailureSettings + + IncludeStdErr + + MacroActionType + ExecuteAppleScript + Path + ~/dotfiles/macos/applescripts/open_terminal.scpt + Text + if isAppRunning("iTerm") then + tell application "iTerm" + set myterm to (make new terminal) + tell myterm + set mysession to (make new session at the end of sessions) + tell mysession + exec command "/bin/bash -l" + end tell + end tell + activate + end tell +else + activate application "iTerm" +end if + TimeOutAbortsMacro + + TrimResults + + TrimResultsNew + + UseText + + + + CreationDate + 622642297.28663504 + ModificationDate + 739174732.94170904 + Name + Open Shell + Triggers + + + FireType + Pressed + KeyCode + 8 + MacroTriggerType + HotKey + Modifiers + 4608 + + + UID + 42151B21-5BB3-4452-9BA2-777F08A7CD81 + + + Name + adams-macros + ToggleMacroUID + 72F63232-9754-45AC-8EC5-D8D1218F06EA + UID + 542BC640-C047-4088-A052-38BEC2E4354B + + + diff --git a/mise/config.toml b/mise/config.toml index 319ed3e..628e60d 100644 --- a/mise/config.toml +++ b/mise/config.toml @@ -23,3 +23,4 @@ rust = "latest" # Cargo tools "cargo:prosemd-lsp" = "latest" +"github:can1357/oh-my-pi" = "latest" diff --git a/nvim/lazy-lock.json b/nvim/lazy-lock.json index fe1d561..2a03eb7 100644 --- a/nvim/lazy-lock.json +++ b/nvim/lazy-lock.json @@ -1,63 +1,61 @@ { - "CopilotChat.nvim": { "branch": "main", "commit": "a89f5f1162b04a0962e5f4c3cdf248a81e7e53cb" }, - "LuaSnip": { "branch": "master", "commit": "c9b9a22904c97d0eb69ccb9bab76037838326817" }, + "CopilotChat.nvim": { "branch": "main", "commit": "743d6005fb412c85309d3f3aa45f18f3a2fb2098" }, + "LuaSnip": { "branch": "master", "commit": "dae4f5aaa3574bd0c2b9dd20fb9542a02c10471c" }, "Vim-Jinja2-Syntax": { "branch": "master", "commit": "2c17843b074b06a835f88587e1023ceff7e2c7d1" }, - "barbar.nvim": { "branch": "master", "commit": "807bede7ef1d8e2ac5f108e9ac8123b1e2d321e3" }, + "barbar.nvim": { "branch": "master", "commit": "539d73def39c9172b4d4d769f14090e08f37b29d" }, "blink-cmp-copilot": { "branch": "main", "commit": "439cff78780c033aa23cf061d7315314b347e3c1" }, - "blink-cmp-dictionary": { "branch": "master", "commit": "5f1a703416e5090b9633c43873dba8ba03b0fb23" }, - "blink-emoji.nvim": { "branch": "master", "commit": "a77aebc092ebece1eed108f301452ae774d6b67a" }, - "blink-ripgrep.nvim": { "branch": "main", "commit": "56084d1f45c8621d23d4bac724c2dc50b1eb75db" }, - "blink.cmp": { "branch": "main", "commit": "cb5e346d9e0efa7a3eee7fd4da0b690c48d2a98e" }, + "blink-cmp-dictionary": { "branch": "master", "commit": "35142bba869b869715e91a99d2f46bcf93fca4ae" }, + "blink-cmp-env": { "branch": "main", "commit": "99af62c1f9aa46005e8f50ad4ccee581946546ca" }, + "blink-emoji.nvim": { "branch": "master", "commit": "066013e4c98a9318408ee3f1ca2dbcb6fa3e4c06" }, + "blink-ripgrep.nvim": { "branch": "main", "commit": "fc72cfa7ef800146ceca336fc5ca7fc874594593" }, + "blink.cmp": { "branch": "main", "commit": "4b18c32adef2898f95cdef6192cbd5796c1a332d" }, "blink.compat": { "branch": "main", "commit": "2ed6d9a28b07fa6f3bface818470605f8896408c" }, - "bullets.vim": { "branch": "master", "commit": "8f3259e807c40b91d247f612823295ab99777a65" }, - "conform.nvim": { "branch": "master", "commit": "eebc724d12c5579d733d1f801386e0ceb909d001" }, - "copilot-cmp": { "branch": "master", "commit": "15fc12af3d0109fa76b60b5cffa1373697e261d1" }, - "copilot.lua": { "branch": "master", "commit": "0a7502946845fb14b860a6384c709a791bbab96a" }, - "dbtpal": { "branch": "main", "commit": "706134b879eb2f48b2abf56f29e95a30a52cf398" }, + "bullets.vim": { "branch": "master", "commit": "89294b8930e660936374fb763ac48a1ac51dd29c" }, + "conform.nvim": { "branch": "master", "commit": "40dcec5555f960b0a04340d76eabdf4efe78599d" }, + "copilot.lua": { "branch": "master", "commit": "00446a63cba4cc59bb24fc1e210a555a3e4acdfb" }, + "dbtpal": { "branch": "main", "commit": "981eab51609362712c64e3cf3fb773fe11f859b9" }, "diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" }, - "emmet-vim": { "branch": "master", "commit": "6c511a8d7d2863066f32e25543e2bb99d505172c" }, - "friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" }, - "gitsigns.nvim": { "branch": "main", "commit": "17ab794b6fce6fce768430ebc925347e349e1d60" }, - "indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" }, - "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, - "leap.nvim": { "branch": "main", "commit": "f19d43590c4b6d31188ee1ea2954d2b7558a9e11" }, - "lualine.nvim": { "branch": "master", "commit": "0ea56f91b7f51a37b749c050a5e5dfdd56b302b3" }, + "emmet-vim": { "branch": "master", "commit": "e98397144982d1e75b20d94d55a82de3ec8f648d" }, + "friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" }, + "gitsigns.nvim": { "branch": "main", "commit": "9f3c6dd7868bcc116e9c1c1929ce063b978fa519" }, + "indent-blankline.nvim": { "branch": "master", "commit": "d28a3f70721c79e3c5f6693057ae929f3d9c0a03" }, + "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" }, + "lualine.nvim": { "branch": "master", "commit": "47f91c416daef12db467145e16bed5bbfe00add8" }, "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, - "mini.icons": { "branch": "main", "commit": "397ed3807e96b59709ef3292f0a3e253d5c1dc0a" }, - "mini.nvim": { "branch": "main", "commit": "e7538b549361c9ac8416a07b0223ce03c508bfe7" }, - "nvim-autopairs": { "branch": "master", "commit": "2a406cdd8c373ae7fe378a9e062a5424472bd8d8" }, - "nvim-bqf": { "branch": "main", "commit": "e20417d5e589e03eaaaadc4687904528500608be" }, + "mini.icons": { "branch": "main", "commit": "5b9076dae1bfbe47ba4a14bc8b967cde0ab5d77e" }, + "mini.nvim": { "branch": "main", "commit": "0098de999048af0539183d625c52d733318a441b" }, + "nvim-autopairs": { "branch": "master", "commit": "59bce2eef357189c3305e25bc6dd2d138c1683f5" }, + "nvim-bqf": { "branch": "main", "commit": "f65fba733268ffcf9c5b8ac381287eca7c223422" }, "nvim-colorizer.lua": { "branch": "master", "commit": "a065833f35a3a7cc3ef137ac88b5381da2ba302e" }, - "nvim-lint": { "branch": "master", "commit": "5b1bdf306bd3e565908145279e8bbfc594dac3b3" }, - "nvim-lspconfig": { "branch": "master", "commit": "4ea9083b6d3dff4ddc6da17c51334c3255b7eba5" }, - "nvim-treesitter": { "branch": "master", "commit": "0e21ee8df6235511c02bab4a5b391d18e165a58d" }, - "nvim-treesitter-context": { "branch": "master", "commit": "439789a9a8df9639ecd749bb3286b77117024a6f" }, + "nvim-lint": { "branch": "master", "commit": "606b823a57b027502a9ae00978ebf4f5d5158098" }, + "nvim-lspconfig": { "branch": "master", "commit": "ead0f5f342d8d323441e7d4b88f0fc436a81ad5f" }, + "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, + "nvim-treesitter-context": { "branch": "master", "commit": "64dd4cf3f6fd0ab17622c5ce15c91fc539c3f24a" }, "nvim-treesitter-textobjects": { "branch": "master", "commit": "5ca4aaa6efdcc59be46b95a3e876300cfead05ef" }, - "nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" }, - "nvim-web-devicons": { "branch": "master", "commit": "c90dee4e930ab9f49fa6d77f289bff335b49e972" }, + "nvim-ts-autotag": { "branch": "main", "commit": "8e1c0a389f20bf7f5b0dd0e00306c1247bda2595" }, + "nvim-web-devicons": { "branch": "master", "commit": "f66cdfef5e84112045b9ebc3119fee9bddb3c687" }, "obsidian.nvim": { "branch": "main", "commit": "ae1f76a75c7ce36866e1d9342a8f6f5b9c2caf9b" }, - "oil.nvim": { "branch": "master", "commit": "302bbaceeafc690e6419e0c8296e804d60cb9446" }, + "oil.nvim": { "branch": "master", "commit": "0fcc83805ad11cf714a949c98c605ed717e0b83e" }, "peek.nvim": { "branch": "master", "commit": "5820d937d5414baea5f586dc2a3d912a74636e5b" }, - "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, + "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, "semshi": { "branch": "master", "commit": "7f18bedc70cbb7aa68dcc6df5e730d88e4527622" }, - "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, - "telescope-git-file-history.nvim": { "branch": "master", "commit": "c27d99ba88ec5f0b6d2b9f9bc67dd3d14c610b25" }, - "telescope-makefile": { "branch": "master", "commit": "6e5b5767751dbf73ad4f126840dcf1abfc38e891" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "6fea601bd2b694c6f2ae08a6c6fab14930c60e2c" }, + "telescope-git-file-history.nvim": { "branch": "master", "commit": "4442114f9257e682e60a8cb6de14cf988e26055c" }, + "telescope-makefile": { "branch": "master", "commit": "f35425d7d53d92a04215c3714a5819811d2842c3" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, - "telescope.nvim": { "branch": "master", "commit": "a4ed82509cecc56df1c7138920a1aeaf246c0ac5" }, - "trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" }, - "undotree": { "branch": "master", "commit": "b951b87b46c34356d44aa71886aecf9dd7f5788a" }, - "vim": { "branch": "master", "commit": "d4b0823100c702af127cba8dd5595a8f599041ec" }, - "vim-argwrap": { "branch": "master", "commit": "f3e26a5ad249d09467804b92e760d08b1cc457a1" }, + "telescope.nvim": { "branch": "master", "commit": "5255aa27c422de944791318024167ad5d40aad20" }, + "trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" }, + "undotree": { "branch": "master", "commit": "d8f99084d98c32f651860eb0baaf89759f91debc" }, + "vim": { "branch": "master", "commit": "6b0f9cca6263f60ef961d139541a999aeee97006" }, + "vim-argwrap": { "branch": "master", "commit": "03615d1eed248408567bc8fa6a5a8c94ef3cd170" }, "vim-bufkill": { "branch": "master", "commit": "3113181d0c1bfb8719f3ddcd2e2f35a8d763d1e5" }, "vim-closetag": { "branch": "master", "commit": "d0a562f8bdb107a50595aefe53b1a690460c3822" }, - "vim-fugitive": { "branch": "master", "commit": "4a745ea72fa93bb15dd077109afbb3d1809383f2" }, + "vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" }, "vim-grepper": { "branch": "master", "commit": "acaaf32edaa11d82fb972d2af36b949ec3042928" }, - "vim-markdown-toc": { "branch": "master", "commit": "aa9cc3b07791db5cbe5f29d661763bc0eb4fb7c1" }, + "vim-markdown-toc": { "branch": "master", "commit": "66026b323379c9a712c6169cd43153216acef090" }, "vim-one": { "branch": "master", "commit": "187f5c85b682c1933f8780d4d419c55d26a82e24" }, "vim-python-pep8-indent": { "branch": "master", "commit": "60ba5e11a61618c0344e2db190210145083c91f8" }, - "vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" }, - "vim-table-mode": { "branch": "master", "commit": "e4365bde024f73e205eefa2fb78e3029ddb92ea9" }, + "vim-table-mode": { "branch": "master", "commit": "bb025308a45c67c7c8f0763ba37bc2ee3f534df0" }, "winresizer": { "branch": "master", "commit": "9bd559a03ccec98a458e60c705547119eb5350f3" }, - "zen-mode.nvim": { "branch": "main", "commit": "863f150ca321b3dd8aa1a2b69b5f411a220e144f" } + "zen-mode.nvim": { "branch": "main", "commit": "8564ce6d29ec7554eb9df578efa882d33b3c23a7" } } diff --git a/nvim/lua/plugins/cmp.lua b/nvim/lua/plugins/cmp.lua index 7b555c7..dd1905e 100644 --- a/nvim/lua/plugins/cmp.lua +++ b/nvim/lua/plugins/cmp.lua @@ -15,9 +15,9 @@ return { "moyiz/blink-emoji.nvim", "nvim-lua/plenary.nvim", "L3MON4D3/LuaSnip", + "bydlw98/blink-cmp-env", }, version = "*", - ---@module 'blink.cmp' ---@type blink.cmp.Config opts = { @@ -86,18 +86,7 @@ return { and vim.bo.filetype ~= "TelescopePrompt" end, draw = { - columns = { - { - "label", - -- "label_description", - -- gap = 3 - }, - { - "kind_icon", - gap = 1, - "source_name", - }, - }, + columns = { { "label" }, { "kind_icon", gap = 1, "source_name" } }, components = { kind_icon = { ellipsis = false, @@ -178,21 +167,9 @@ return { -- Adjusts spacing to ensure icons are aligned nerd_font_variant = "mono", }, - - -- Default list of enabled providers defined so that you can extend it - -- elsewhere in your config, without redefining it, due to `opts_extend` sources = { min_keyword_length = 2, - default = { - "copilot", - "snippets", - "path", - "lsp", - "buffer", - "ripgrep", - "emoji", - "dictionary", - }, + default = { "copilot", "snippets", "path", "lsp", "buffer", "ripgrep", "emoji", "dictionary" }, per_filetype = { markdown = { "obsidian", @@ -205,21 +182,8 @@ return { "emoji", "dictionary", }, - go = { - "snippets", - "path", - "lsp", - "buffer", - "ripgrep", - }, - python = { - "copilot", - "snippets", - "path", - "lsp", - "buffer", - "ripgrep", - }, + go = { "snippets", "path", "lsp", "buffer", "ripgrep" }, + python = { "copilot", "snippets", "path", "lsp", "buffer", "ripgrep" }, }, providers = { copilot = { diff --git a/nvim/lua/plugins/copilot.lua b/nvim/lua/plugins/copilot.lua index 89e89ab..4af9a4c 100644 --- a/nvim/lua/plugins/copilot.lua +++ b/nvim/lua/plugins/copilot.lua @@ -22,14 +22,6 @@ return { }, }, }, - { - "zbirenbaum/copilot-cmp", - event = { "BufEnter" }, - dependencies = { "zbirenbaum/copilot.lua" }, - config = function() - require("copilot_cmp").setup() - end, - }, { "CopilotC-Nvim/CopilotChat.nvim", branch = "main", @@ -48,8 +40,10 @@ return { context = "buffers", history_path = vim.fn.stdpath("data") .. "/copilotchat_history", auto_follow_cursor = false, + model = "gpt-4o", + sticky = "@copilot", + auto_fold = false, auto_insert_mode = true, - model = "gpt-4", }, }, } diff --git a/nvim/lua/plugins/mini.lua b/nvim/lua/plugins/mini.lua index b72ca08..e3e91a9 100644 --- a/nvim/lua/plugins/mini.lua +++ b/nvim/lua/plugins/mini.lua @@ -26,7 +26,7 @@ return { -- Markdown text objects h = require("mini.ai").gen_spec.treesitter({ a = "@markup.heading", i = "@markup.heading" }), -- Code blocks in markdown - C = function(ai_type) + b = function(ai_type) local pattern = "```.-```" return require("mini.ai").gen_spec.pair(pattern, pattern, { type = "non-balanced", diff --git a/nvim/lua/plugins/text-editing.lua b/nvim/lua/plugins/text-editing.lua index 6ecb5ad..9df22f5 100644 --- a/nvim/lua/plugins/text-editing.lua +++ b/nvim/lua/plugins/text-editing.lua @@ -1,14 +1,4 @@ return { - { - "ggandor/leap.nvim", - dependencies = { "tpope/vim-repeat" }, - config = function() - -- Set up recommended keymaps for leap.nvim - vim.keymap.set({ "n", "x", "o" }, "s", "(leap)") - vim.keymap.set("n", "S", "(leap-from-window)") - end, - }, - -- { "akinsho/git-conflict.nvim", version = "*", config = true }, { "toppair/peek.nvim", event = { "VeryLazy" },