Build systems, Makefile, and a setup script that reproduces this environment on another machine. - CP.sublime-build: incremental make-based build, clang++, flags shared with clangd via compile_flags.txt - compete_CPP.sublime-build: competitive-programming workflow, runs against inputf.in and diffs the result against expectedf.out - Makefile: builds every .cpp in the tree into a binary beside its source - setup.sh: export/install/check, path-neutral payload, idempotent - README: setup notes, the Sublime $-expansion trap, and the -MMD -MP header-dependency limitation to fix later The .sublime-workspace is deliberately excluded: it holds Sublime's global recent-file history and absolute paths. Only the pane layout is portable, extracted to sublime/layout.json. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KCtkkFDkSGi868JWuinwcF
32 lines
520 B
Text
32 lines
520 B
Text
# Compiled binaries have no file extension, so a normal pattern cannot catch
|
|
# them. Ignore everything, then whitelist the file types worth committing.
|
|
*
|
|
!*/
|
|
|
|
# sources and headers
|
|
!*.cpp
|
|
!*.h
|
|
!*.hpp
|
|
|
|
# config that should travel with the repo
|
|
!Makefile
|
|
!setup.sh
|
|
!.gitignore
|
|
!.clangd
|
|
!*.md
|
|
!*.txt
|
|
!*.json
|
|
!*.sublime-project
|
|
!*.sublime-build
|
|
!*.sublime-settings
|
|
!*.sublime-keymap
|
|
|
|
# contest input / expected answers are worth keeping
|
|
!*.in
|
|
!expectedf.out
|
|
|
|
# ...but never these
|
|
*.sublime-workspace
|
|
*.d
|
|
*.bak-*
|
|
outputf.out
|