Skip to content
Merged
10 changes: 4 additions & 6 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
# .gitattributes — misc-dev-scripts (Bash helper catalog)
# .gitattributes — misc-dev-scripts (shell / docs catalog self)
#
# Aligned with misc-config-scripts shell / shared baseline patterns.
# Prefer a language-specific template from that sibling when copying into
# a primary-language library.
# Self boilerplate for this repository. Project drop-in templates live under
# templates/gitattributes/.

# Default: detect text, normalize to LF in the repository
* text=auto
Expand All @@ -29,10 +28,9 @@ TODO text
VERSION text

# --- Config ---
**/.gitattributes -linguist-vendored linguist-language=Git-Attributes linguist-detectable
**/settings.json linguist-language=JSON-with-Comments linguist-detectable
*.json text
*.yaml text
*.yml text
.gitattributes -linguist-vendored linguist-language=Git-Attributes linguist-detectable
settings.json linguist-language=JSON-with-Comments linguist-detectable
**/settings.json linguist-language=JSON-with-Comments linguist-detectable
19 changes: 18 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,11 +1,24 @@
# Synesis Information Systems .gitignore for mixed-language / generic trees


# directories (by name)

/.idea/
/.venv/
/.vs/
/build/
/coverage/
/dist/
/node_modules/
/scratch/
/target/
/tmp/


# directories (by pattern)

**/__pycache__/


# files (by name)

Expand All @@ -15,7 +28,11 @@
# files (by pattern)

*~
*.dll
*.dylib
*.exe
*.o
*.so
*.sw[ponm]
*.tmp
*.zip

2 changes: 2 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -246,6 +246,8 @@
"random": "cpp",
"ranges": "cpp",
"ratio": "cpp",
"rc.h": "c",
"result_codes_.h": "c",
"semaphore": "cpp",
"set": "cpp",
"setenv.h": "c",
Expand Down
8 changes: 7 additions & 1 deletion CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,12 @@

## 0.6.0 - 18th September 2026

* Expanded **templates/gitignore/{c,cxx,c_cxx}/** from the lean consensus to the historical Synesis C/C++ ignore union (gold section layout; MSVC, logs, IDE, artefact dirs; omits `.vscode/` and owning-library `/include/` `/src/` trees);
* Phase 4: align self boilerplate with **templates/** gold:
* confirmed **`.vscode/settings.json`** byte-identical to **templates/vscode/generic/settings.json**;
* refreshed **`.gitignore`** from **templates/gitignore/generic/**;
* normalised self **`.gitattributes`** to shell / docs catalog form (templates remain under **templates/gitattributes/**);
* retained shell / docs **`.editorconfig`** and **`.vimrc`** (not replaced by language-generic consumer templates);
* Phase 3 companion: **misc-config-scripts** **0.8.2** removed legacy catalogs; this repo remains sole project-drop-in home;
* Updated **README.md** / **templates/** READMEs for post-cutover ownership (m-c-s **`.commonrc`** / **`.gitconfig`** only);
* Phase 2: populate **templates/** as the canonical project drop-in catalogue:
Expand All @@ -26,7 +32,7 @@
* **templates/gitignore/** — lean Synesis-header consensus per language;
* **templates/vimrc/**: lexicographically ordered language sections and combined `[label]` / `FileType` lists (revisibility);
* Updated **templates/** READMEs (status, copy commands, layout);
* Updated **README.md** (Phase 2 canonical; prefer **templates/** over legacy m-c-s catalogs);
* Updated **README.md** (Phase 2–4 canonical; prefer **templates/** over legacy m-c-s catalogs);
* Phase 1 self boilerplate:
* added **`.editorconfig`** (shell / docs catalog: UTF-8, LF, shell 2-space, markdown/json/yaml);
* replaced root **`.vimrc`** C/C++ consumer gold with shell / docs **self** **`.vimrc`** (aligned with **`.vscode/settings.json`**);
Expand Down
2 changes: 1 addition & 1 deletion NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

| Date | News Item | Details |
| -------------------- | --------- | ------- |
| 18th September 2026 | [**misc-dev-scripts** 0.6.0](https://github.com/synesissoftware/misc-dev-scripts/releases/tag/0.6.0) released | Phase 0–3: sole project drop-in catalogue |
| 18th September 2026 | [**misc-dev-scripts** 0.6.0](https://github.com/synesissoftware/misc-dev-scripts/releases/tag/0.6.0) released | Phase 0–4: templates catalogue + self align |
| 14th September 2026 | [**misc-dev-scripts** 0.5.1](https://github.com/synesissoftware/misc-dev-scripts/releases/tag/0.5.1) released | Python `.sis` help + prefer project `.venv` |
| 1st September 2026 | [**misc-dev-scripts** 0.5.0](https://github.com/synesissoftware/misc-dev-scripts/releases/tag/0.5.0) released | JavaScript `run_all_unit_tests` runner |
| 25th August 2026 | [**misc-dev-scripts** 0.4.2](https://github.com/synesissoftware/misc-dev-scripts/releases/tag/0.4.2) released | Ruby `tput` TERM/TTY guard |
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Sibling project: [**misc-config-scripts**](https://github.com/synesissoftware/mi

## Ownership and migration

**Status: Phase 3 complete — this repository’s `templates/` is the sole canonical home for project drop-ins.** **misc-config-scripts** **0.8.2+** ships **`.commonrc`** / **`.gitconfig`** only.
**Status: Phase 4 complete — self boilerplate aligned with `templates/` gold where applicable.** **misc-config-scripts** **0.8.2+** ships **`.commonrc`** / **`.gitconfig`** only.

Distinguish **self** boilerplate (this repository’s own root editor/Git files) from **templates** (copied into other projects).

Expand Down
2 changes: 1 addition & 1 deletion TODO.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@
* [x] ~~~Phase 1: complete **self** boilerplate (**`.editorconfig`**; retarget root **`.vimrc`** as self for this Bash catalog, not C/C++ consumer gold; seed **templates/vimrc/c_cxx/.vimrc**)~~~ - ✅;
* [x] ~~~Phase 2: populate **templates/** from freelibs exemplars and migrate **misc-config-scripts** `settings.json/` + `gitattributes/` content~~~ - ✅;
* [x] ~~~Phase 3 companion: **misc-config-scripts** **0.8.2** removed legacy catalogs; this repo remains sole project-drop-in home~~~ - ✅;
* [ ] Phase 4: refresh this repo’s self **`.vscode/settings.json`** (and related self files) from **templates/vscode/generic/** (or shell-appropriate);
* [x] ~~~Phase 4: align self **`.vscode/settings.json`**, **`.gitignore`**, and **`.gitattributes`** with **templates/** gold (keep shell/docs **`.editorconfig`** / **`.vimrc`**)~~~ - ✅;
* [ ] Later: hoist **build_dist.sh** / **build_dist_uv.sh** (Python), **build_gem.sh** (Ruby), **rustfmt.toml** / **scripts/fmt** (Rust), Go **build.sh** / runners, and further common helpers under **shell-scripts/** or **templates/** as appropriate;
* [ ] Optional: sample bootstrap notes for copy-vs-sync adoption;
* [ ] Distribution / drift control: `SCRIPT_VERSION` header matching **VERSION**; document consumer CHANGES citation convention; optional sync helper; optional `testdata/` CI fixtures;
Expand Down
2 changes: 1 addition & 1 deletion templates/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ Do not confuse root self files with the catalogue under **`templates/`**.
| --- | --- | --- |
| **editorconfig** | **misc-dev-scripts** `templates/editorconfig/` | Seeded from freelibs exemplars + house indent rules |
| **gitattributes** | **misc-dev-scripts** `templates/gitattributes/` | Migrated from **misc-config-scripts** `gitattributes/` |
| **gitignore** | **misc-dev-scripts** `templates/gitignore/` | Lean Synesis-header consensus per language |
| **gitignore** | **misc-dev-scripts** `templates/gitignore/` | C/C++ keys: historical Synesis union; other langs: lean consensus |
| **vimrc** | **misc-dev-scripts** `templates/vimrc/` | Freelibs language gold (+ synthesized JS / generic) |
| **vscode** (`settings.json`) | **misc-dev-scripts** `templates/vscode/` | Migrated from **misc-config-scripts** `settings.json/` |
| **run_all_unit_tests.sh** | **misc-dev-scripts** `shell-scripts/run_all_unit_tests/` | Already canonical |
Expand Down
5 changes: 4 additions & 1 deletion templates/gitignore/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,10 @@

Drop-in root **`.gitignore`** files, organised by primary language.

**Status:** Phase 2 — populated (lean Synesis-header consensus from freelibs exemplars; not a dump of every historical project ignore).
**Status:** Phase 2 — populated. **c** / **cxx** / **c_cxx** are the historical
Synesis C/C++ ignore union (gold section layout: directories by name, directories
by pattern, files by name, files by pattern). Other language keys remain lean
house consensus. Projects may still add local paths after copying.


## Table of Contents <!-- omit in toc -->
Expand Down
172 changes: 170 additions & 2 deletions templates/gitignore/c/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,44 +3,212 @@

# directories (by name)

.svn/
/.git-old/
/.idea/
/.vs/
/_analyses/
/_build/
/_build-ci/
/_build/
/_internal/
/bin/
/docs/
/dox/
/ideas/
/include/xcontract/
/include/xcover/
/included/
/ipch/
/lib/
/releases/
/scratch/
/src/xcontract/
/src/xcover/
/target/
/temp/
Debug Multithreaded DLL/
Debug Multithreaded Dll/
Debug Multithreaded pseudoUNIX/
Debug Multithreaded pseudoUnix/
Debug Multithreaded/
Debug/
DebugDLL/
DebugDLLUNIX/
DebugDll/
DebugMTDLL/
DebugMTDll/
DebugMTUnix/
DebugMt/
DebugNox/
DebugUNIX/
DebugUnix/
Release Multithreaded DLL/
Release Multithreaded Dll/
Release Multithreaded pseudoUNIX/
Release Multithreaded pseudoUnix/
Release Multithreaded/
Release/
ReleaseDLL/
ReleaseDLLUNIX/
ReleaseDll/
ReleaseMTDLL/
ReleaseMTDll/
ReleaseMTUnix/
ReleaseMt/
ReleaseNox/
ReleaseUnix/
UDebug/
UDebugMt/
URelease/
UReleaseMt/
Unicode Debug Multithreaded DLL/
Unicode Debug Multithreaded Dll/
Unicode Debug Multithreaded/
Unicode Debug/
Unicode Release Multithreaded DLL/
Unicode Release Multithreaded Dll/
Unicode Release Multithreaded/
Unicode Release/
Win32/
bin/
ideas/
ipch/
lib/
perf_test/
projects/util/vc10-generated/
scripts/internal/
x64/


# directories (by pattern)

/include-*/


# files (by name)

.DS_Store
.classpath
.env.development.local
.env.local
.env.production.local
.env.test.local
.ruby-version
.ruby-version-exclusions
.svnignore
.svnignore-at-root
.update_deps
/--include
/--src
/-include
/-src
/__pycache__
/dox
/examples/bin
/examples/c/bin
/examples/c/lib
/examples/cpp/bin
/examples/cpp/lib
/examples/lib
/node_modules
build/CMakeCache.txt
build/makefile.tmpl
build/makefile.tools.xml
build/shwild.tmplgen
include/fastformat/internal/dos2unix.has.been.performed
include/pantheios/internal/dos2unix.has.been.performed
include/stlsoft/dos2unix.has.been.performed
include/stlsoft/internal/dos2unix.has.been.performed
list_changes.cmd
logging-bailout.txt
prepare.cmd
sh.exe.stackdump
test/testpatterns.orj
test/tests-plan.txt
tidydir.cmd
update_deps.cmd


# files (by pattern)

*~
*.*~
*.???_obj
*.VC.db
*.VC.opendb
*.a
*.app
*.aps
*.b64
*.bak
*.chm
*.class
*.csproj*user
*.d
*.diff
*.dll
*.dsp
*.dylib
*.exe
*.gch
*.gem
*.idb
*.ilk
*.iobj
*.ipch
*.ipdb
*.la
*.lai
*.lib
*.lo
*.log
*.ncb
*.o
*.obj
*.opensdf
*.opt
*.org
*.out
*.pch
*.pdb
*.pyc
*.rar
*.res
*.sbr
*.scc
*.sdf
*.slo
*.so
*.suo
*.sw[ponm]
*.swp
*.test
*.tlog
*.tmp
*.unsuccessfulbuild
*.vc71.sln
*.vc8.sln
*.vc9.sln
*.vcproj*.user
*.vcproj*user
*.vcxproj*.user
*.vcxproj*user
*.xcuserstate
*.zip
*~
/build/*.zip
/build/ar*
/build/bc5*
/build/como*
/build/cw*
/build/gcc3*
/build/gcc4*
/build/icl*
/build/vc5*
RCa0*
RCb0*
build/*.tmpl
build/*.tmplgen
build/*.tools.xml
npm-debug.log*
yarn-debug.log*
yarn-error.log*
Loading
Loading