mirror of
https://oauth2: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@github.com/m1ngsama/chopsticks.git
synced 2026-05-10 19:10:59 +08:00
- README: full rewrite — updated language table (staticcheck, yamllint, hadolint, marksman via coc-settings.json), install.sh platform coverage, removed coc-marksman references, added CHANGELOG link - QUICKSTART: rewrite to reflect automated install.sh, updated language workflows (staticcheck for Go, marksman for Markdown) - CHANGELOG: new file documenting v1.0.0, v0.9.0, and v0.1.0 releases - .gitignore: add *.swp, *.swo, .DS_Store, Session.vim
4 KiB
4 KiB
Changelog
All notable changes to chopsticks are documented here.
[1.0.0] - 2026-03-29
First stable release. Full-stack engineering environment out of the box — automatic installation, tiered LSP, TTY fallback, and coverage for 14 languages.
Added
- Arch Linux support in
install.sh— pacman branch for all system tools hadolintadded to system tools installation (Dockerfile linting)staticcheckadded to Go tools (replaces archivedgolint)yamllintadded to pip tools (YAML linting)coc-settings.json— configuresmarksmanas Markdown LSP for CoC vialanguageserverentry; symlinked automatically byinstall.sh- pip3 bootstrap in
install.sh— auto-installs pip3 when python3 is present but pip3 is absent (common on Ubuntu minimal images) - 9 named augroups in
.vimrc— all looseautocmdstatements now wrapped withautocmd!to prevent doubling on:source $MYVIMRC:ChopstickTabHistory,ChopstickResize,ChopstickStdin,CocHighlight,ChopstickCleanup,ChopstickFiletype,ChopstickTTYLargeFile,ChopstickWhichKey,ChopstickStartify - TTY-safe plugin install —
vim +PlugInstall +qall </dev/nullprevents Vim from blocking in non-interactive/piped environments
Changed
- SQL tooling unified to
sqlfluff(pip) —sqlfmtremoved from npm section - Go linter changed from
golint(archived 2023) tostaticcheck - Markdown LSP changed from broken
coc-marksman(npm) tomarksmanbinary configured viacoc-settings.json
Fixed
- vim-go startup hang on Arch Linux — removed
:GoUpdateBinariespost-install hook; setg:go_gopls_enabled = 0to prevent conflict withcoc-go - E495 errors (
<afile>in special buffers) — all<afile>usages guarded with!empty(expand('<afile>'))andempty(&buftype)checks g:go_def_modeconflict — now conditional: usesgoplswhen CoC active,godefwhen vim-lsp active (avoids error when gopls is disabled)- vim startup UX — NERDTree + Startify layout for
vim .and barevim coc-marksmansilent failure — package does not exist on npm; replaced with nativelanguageserverconfiguration incoc-settings.json- CoC startup warning in no-node environments —
g:coc_start_at_startup = 0andg:coc_disable_startup_warning = 1set wheng:use_coc = 0
[0.9.0] - 2026-02-21
Added
- Full-stack language coverage — LSP, lint, and format for: Python, JavaScript, TypeScript, Go, Rust, Shell, YAML, HTML, CSS/SCSS, Less, JSON, Markdown, SQL, Dockerfile
install.shoverhaul — automated installation of system tools, npm tools, pip tools, Go tools, and CoC language server extensions with platform detection and interactive prompts;--yesflag for non-interactive mode- vim-startify startup screen with dynamic header (version, cwd, git branch)
- vim-which-key keybinding popup on
,+ 500ms pause - Startup layout —
vim .opens NERDTree left + Startify right; barevimopens Startify with NERDTree alongside - Session management via vim-obsession + vim-prosession
- Large file handling — syntax and undo disabled for files > 10 MB
- Project-local config —
.vimrcin project root auto-loaded viaset exrc - Persistent undo —
~/.vim/.undo/withundolevels=1000
Changed
- Tiered LSP backend: CoC (Node.js) preferred, vim-lsp (no Node.js) as fallback
- All CoC and vim-lsp keybindings unified (
gd,K,[g/]g,,rn,,ca) - ALE
fix_on_savedisabled when vim-lsp active (prevents double-format) - NERDTree autocmd wrapped in
augroup NERDTreeAutoClose
Fixed
- Multiple leader key conflicts resolved (
,ad,,cd,,cp,,sp,,t) - CtrlP removed (redundant with FZF)
- Duplicate
setoptions cleaned up <leader>Adead mapping (no alternate-file plugin) removed
[0.1.0] - 2024
Initial release — base Vim configuration with vim-plug, basic plugins, and TTY/non-TTY detection.