Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 44 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
root = true

# Self boilerplate for this shell / docs catalog.
# Language indent/EOL/charset overlap with .vscode/settings.json.
# Rulers, renderWhitespace, detectIndentation, and mergeEditor cannot be
# expressed here — they stay in settings.json.

[*]
charset = utf-8
end_of_line = lf
indent_size = 2
indent_style = tab
insert_final_newline = true
trim_trailing_whitespace = true

# [bat]
[*.{bat,cmd}]
end_of_line = crlf
indent_size = 4
indent_style = space

# [json]
[*.json]
indent_size = 2
indent_style = space

# [markdown]
[*.md]
indent_size = 2
indent_style = space

# [shellscript] (and extensionless shell rc drop-ins)
[*.{bash,sh,zsh}]
indent_size = 2
indent_style = space

[{.bashrc,.commonrc,.zshrc}]
indent_size = 2
indent_style = space

# [yaml]
[*.{yaml,yml}]
indent_size = 2
indent_style = space
39 changes: 12 additions & 27 deletions .vimrc
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
" Synesis C/C++ project .vimrc — aligned with .sis/.vscode/c_cxx/settings.json
" Synesis shell / docs project .vimrc — self boilerplate for
" misc-config-scripts / misc-dev-scripts (aligned with .vscode/settings.json)

set nocompatible
filetype indent plugin on
Expand All @@ -17,12 +18,12 @@ set fixeol
set list
set listchars=tab:->,trail:-,extends:>,precedes:<,nbsp:+

" editor.detectIndentation: false — global defaults (editor.tabSize: 4, insertSpaces: true)
" editor.detectIndentation: false — global defaults (editor.tabSize: 2, insertSpaces: false)
set colorcolumn=76
set expandtab
set shiftwidth=4
set softtabstop=4
set tabstop=4
set noexpandtab
set shiftwidth=2
set softtabstop=2
set tabstop=2

" colorcolumn draws a full-column tint in Vim (not a VS Code-style 1px line).
" Keep it subtle via the ColorColumn highlight group; reapply after colorscheme changes.
Expand All @@ -40,31 +41,15 @@ autocmd ColorScheme * call s:ConfigureColorColumn()
" files.trimTrailingWhitespace
autocmd BufWritePre * %s/\s\+$//e

augroup sis_c_cxx
augroup sis_shell_docs
autocmd!

" [c] / [cpp]
autocmd FileType c,cpp setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4 colorcolumn=60,64,68,72,76

" [rust]
autocmd FileType rs setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4 colorcolumn=76

" [cmake]
autocmd FileType cmake setlocal noexpandtab tabstop=4 shiftwidth=4 softtabstop=4

" [shellscript]
autocmd FileType sh,bash,zsh setlocal expandtab tabstop=2 shiftwidth=2 softtabstop=2 colorcolumn=60,76

" [bat]
autocmd FileType bat,dosbatch setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4 colorcolumn=60,76

" [json] / [markdown] / [yaml] / [ruby]
autocmd FileType json,markdown,yaml,ruby setlocal expandtab tabstop=2 shiftwidth=2 softtabstop=2

" [python]
autocmd FileType python setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4 colorcolumn=60,76
" [json] / [markdown] / [yaml]
autocmd FileType json,markdown,yaml setlocal expandtab tabstop=2 shiftwidth=2 softtabstop=2

" [toml]
autocmd FileType toml setlocal noexpandtab tabstop=2 shiftwidth=2 softtabstop=2
" [shellscript]
autocmd FileType sh,bash,zsh setlocal expandtab tabstop=2 shiftwidth=2 softtabstop=2 colorcolumn=60,76
augroup END

10 changes: 8 additions & 2 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

## Table of Contents <!-- omit in toc -->

- [0.5.2 - 15th September 2026](#052---15th-september-2026)
- [0.6.0 - 18th September 2026](#060---18th-september-2026)
- [0.5.1 - 14th September 2026](#051---14th-september-2026)
- [0.5.0 - 1st September 2026](#050---1st-september-2026)
- [0.4.2 - 25th August 2026](#042---25th-august-2026)
Expand All @@ -14,8 +14,14 @@
- [0.1.1 - 11th August 2026](#011---11th-august-2026)


## 0.5.2 - 15th September 2026
## 0.6.0 - 18th September 2026

* 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`**);
* preserved former C/C++ gold as **templates/vimrc/c_cxx/.vimrc** for Phase 2;
* confirmed **`.gitattributes`**, **`.gitignore`**, and **`.vscode/settings.json`** remain present as self files;
* Updated **templates/README.md** and **templates/vimrc/README.md** (c_cxx seed note);
* Declared Phase 0 ownership with **misc-config-scripts**: this repo owns language-specific project drop-ins and **`run_all_unit_tests`**; sibling keeps **`.commonrc`** / **`.gitconfig`** only after cutover;
* Scaffolded **templates/** catalogue layout (`editorconfig`, `gitattributes`, `gitignore`, `vimrc`, `vscode` × language keys; **`.gitkeep`** placeholders);
* Added **templates/README.md** and per-family READMEs (status, copy destinations, migration notes);
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 |
| -------------------- | --------- | ------- |
| 15th September 2026 | [**misc-dev-scripts** 0.5.2](https://github.com/synesissoftware/misc-dev-scripts/releases/tag/0.5.2) released | Phase 0 ownership; `templates/` scaffold |
| 18th September 2026 | [**misc-dev-scripts** 0.6.0](https://github.com/synesissoftware/misc-dev-scripts/releases/tag/0.6.0) released | Phase 0–1 ownership; self boilerplate; c_cxx vimrc seed |
| 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
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ Miscellaneous Development Scripts

![Language](https://img.shields.io/badge/language-Bash-blue.svg)
[![License](https://img.shields.io/badge/License-BSD_3--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)
[![Version](https://img.shields.io/badge/version-0.5.2-blue.svg)](https://github.com/synesissoftware/misc-dev-scripts/blob/master/CHANGES.md)
[![Version](https://img.shields.io/badge/version-0.6.0-blue.svg)](https://github.com/synesissoftware/misc-dev-scripts/blob/master/CHANGES.md)
[![Last Commit](https://img.shields.io/github/last-commit/synesissoftware/misc-dev-scripts)](https://github.com/synesissoftware/misc-dev-scripts/commits/master)
[![CI](https://github.com/synesissoftware/misc-dev-scripts/actions/workflows/ci.yml/badge.svg)](https://github.com/synesissoftware/misc-dev-scripts/actions/workflows/ci.yml)

Expand Down Expand Up @@ -33,7 +33,7 @@ Sibling project: [**misc-config-scripts**](https://github.com/synesissoftware/mi

## Ownership and migration (Phase 0)

**Status: intent declared — layout scaffolded; content cutover not complete.**
**Status: Phase 0–1 done for self boilerplate — template content cutover not complete.**

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

Expand Down Expand Up @@ -93,7 +93,7 @@ See [**templates/README.md**](./templates/README.md). Families:
* [**vimrc**](./templates/vimrc/README.md);
* [**vscode**](./templates/vscode/README.md);

**Phase 0:** directories reserved (**`.gitkeep`**); not ready to copy.
**Phase 0–1:** directories reserved; **`templates/vimrc/c_cxx/.vimrc`** seeded. Other families not ready to copy.


## Related projects
Expand Down
2 changes: 1 addition & 1 deletion TODO.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@
* [x] Align **LICENSE** year range with current year;
* [x] Add nested **shell-scripts/run_all_unit_tests/README.md** (copy command, per-lang paths, layout contracts, flag table);
* [x] ~~~Phase 0: declare ownership; scaffold **templates/** catalogue layout + READMEs~~~ - ✅;
* [ ] Phase 1: complete **self** boilerplate (**`.editorconfig`**; retarget root **`.vimrc`** as self for this Bash catalog, not C/C++ consumer gold);
* [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**)~~~ - ✅;
* [ ] Phase 2: populate **templates/** from freelibs exemplars and migrate **misc-config-scripts** `settings.json/` + `gitattributes/` content;
* [ ] Phase 4: refresh this repo’s self **`.vscode/settings.json`** (and related self files) from **templates/vscode/generic/** (or shell-appropriate) once populated;
* [ ] 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;
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.5.2
0.6.0
2 changes: 1 addition & 1 deletion templates/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ This tree is the **canonical catalogue layout** for project-local config files t

## Status

**Phase 0 (layout declared):** directory tree and documentation only. Do **not** treat empty language folders as ready to copy. Population and cutover from **misc-config-scripts** are later phases.
**Phase 0–1:** directory tree and documentation declared; **`templates/vimrc/c_cxx/.vimrc`** seeded (C/C++ gold preserved from former root self files). Other language folders remain empty (**`.gitkeep`**) until Phase 2. Do **not** treat unseeded folders as ready to copy. Cutover from **misc-config-scripts** remains a later phase.


## Self boilerplate vs templates
Expand Down
6 changes: 3 additions & 3 deletions templates/vimrc/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

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

**Status:** Phase 0 — layout only (**`.gitkeep`** placeholders). Content lands in a later phase (lifted from freelibs exemplars). Do **not** treat this repository’s root **`.vimrc`** as the consumer template — that file is **self** boilerplate for **misc-dev-scripts**.
**Status:** Phase 0 layout plus early Phase 1 seed — **`c_cxx/.vimrc`** holds the preserved Synesis C/C++ gold (moved out of this repository’s root self **`.vimrc`**). Other language directories remain **`.gitkeep`** placeholders until Phase 2. Do **not** treat this repository’s root **`.vimrc`** as a consumer template — that file is **self** boilerplate for **misc-dev-scripts**.


## Table of Contents <!-- omit in toc -->
Expand All @@ -18,7 +18,7 @@ Drop-in root **`.vimrc`** files, organised by primary language.
cp templates/vimrc/<language>/.vimrc /path/to/repo/.vimrc
```

Prefer the language-specific template that matches the project’s primary language; use **generic** only for multi-language trees.
Prefer the language-specific template that matches the project’s primary language; use **generic** only for multi-language trees. Until Phase 2 completes other languages, **`c_cxx`** is the only seeded consumer template here.


## Layout
Expand All @@ -27,7 +27,7 @@ Prefer the language-specific template that matches the project’s primary langu
| --- | --- |
| **c/** | C-primary |
| **c#/** | C# / .NET |
| **c_cxx/** | Mixed C / C++ |
| **c_cxx/** | Mixed C / C++ (**seeded** — Synesis C/C++ gold) |
| **cxx/** | C++-primary |
| **generic/** | Union / mixed |
| **go/** | Go |
Expand Down
70 changes: 70 additions & 0 deletions templates/vimrc/c_cxx/.vimrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
" Synesis C/C++ project .vimrc — aligned with .sis/.vscode/c_cxx/settings.json

set nocompatible
filetype indent plugin on
syntax enable
set autoindent
set backspace=indent,eol,start
set hlsearch
set incsearch
set number

" files.insertFinalNewline
set eol
set fixeol

" editor.renderWhitespace: all
set list
set listchars=tab:->,trail:-,extends:>,precedes:<,nbsp:+

" editor.detectIndentation: false — global defaults (editor.tabSize: 4, insertSpaces: true)
set colorcolumn=76
set expandtab
set shiftwidth=4
set softtabstop=4
set tabstop=4

" colorcolumn draws a full-column tint in Vim (not a VS Code-style 1px line).
" Keep it subtle via the ColorColumn highlight group; reapply after colorscheme changes.
if has('termguicolors')
" set termguicolors
endif

function! s:ConfigureColorColumn() abort
highlight ColorColumn ctermbg=236 guibg=#2a2a2a cterm=NONE gui=NONE
endfunction

call s:ConfigureColorColumn()
autocmd ColorScheme * call s:ConfigureColorColumn()

" files.trimTrailingWhitespace
autocmd BufWritePre * %s/\s\+$//e

augroup sis_c_cxx
autocmd!

" [bat]
autocmd FileType bat,dosbatch setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4 colorcolumn=60,76

" [cmake]
autocmd FileType cmake setlocal noexpandtab tabstop=4 shiftwidth=4 softtabstop=4

" [c] / [cpp]
autocmd FileType c,cpp setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4 colorcolumn=60,64,68,72,76

" [json] / [markdown] / [yaml] / [ruby]
autocmd FileType json,markdown,yaml,ruby setlocal expandtab tabstop=2 shiftwidth=2 softtabstop=2

" [python]
autocmd FileType python setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4 colorcolumn=60,76

" [rust]
autocmd FileType rs setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4 colorcolumn=76

" [shellscript]
autocmd FileType sh,bash,zsh setlocal expandtab tabstop=2 shiftwidth=2 softtabstop=2 colorcolumn=60,76

" [toml]
autocmd FileType toml setlocal noexpandtab tabstop=2 shiftwidth=2 softtabstop=2
augroup END

Loading