Skip to content

Commit 0b54884

Browse files
Add devcontainer for GitHub Codespaces (#245)
* Add devcontainer for GitHub Codespaces * Update with settings from prototype kit * Fix indentation and open preview preferences --------- Co-authored-by: Ed Horsford <[email protected]>
1 parent a83b85c commit 0b54884

File tree

1 file changed

+69
-0
lines changed

1 file changed

+69
-0
lines changed

.devcontainer/devcontainer.json

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
{
2+
"name": "NHS Digital prevention services design history",
3+
"portsAttributes": {
4+
"8080": {
5+
"label": "Preview",
6+
"onAutoForward": "openBrowser"
7+
}
8+
},
9+
"forwardPorts": [8080],
10+
"postCreateCommand": "npm install",
11+
"postAttachCommand": "npm start",
12+
// codespace customisations
13+
"customizations": {
14+
// Configure properties specific to VS Code web-basde IDE used within codespaces.
15+
"vscode": {
16+
// editor settings
17+
"settings": {
18+
// Turn on word wrapping by default
19+
"editor.wordWrap": "on",
20+
// Use pre-set indentation settings for all files
21+
"editor.detectIndentation": false,
22+
// Set default tab size to 2 spaces and use spaces not tabs
23+
// This should work via .editorconfig but doesn't so setting here
24+
"editor.tabSize": 2,
25+
"editor.insertSpaces": true,
26+
"[nunjucks]": {
27+
"editor.tabSize": 2
28+
},
29+
"[html]": {
30+
"editor.tabSize": 2
31+
},
32+
"[css]": {
33+
"editor.tabSize": 2
34+
},
35+
"[javascript]": {
36+
"editor.tabSize": 2
37+
},
38+
// make emmet work within nunjucks
39+
"emmet.includeLanguages": {
40+
"njk": "html",
41+
"nunjucks": "html",
42+
"erb": "html",
43+
"jinja": "html",
44+
"jinja-html": "html",
45+
"markdown": "html"
46+
},
47+
// Explicitly enable semantic highlighting to work around issue in codespaces where it wouldn't apply
48+
"editor.semanticHighlighting.enabled": true,
49+
"editor.bracketPairColorization.enabled": true,
50+
// Force VS Code to re-evaluate file types
51+
"files.associations": {
52+
"*.html": "nunjucks"
53+
},
54+
"html.suggest.html5": true,
55+
"files.exclude": {
56+
"node_modules/": true,
57+
"_site/": true
58+
}
59+
},
60+
// bundle the following editor extensions
61+
"extensions": [
62+
// nunjuck syntax highlighting
63+
"ginfuru.better-nunjucks",
64+
// File utilities like duplicate, move, rename, delete files
65+
"sleistner.vscode-fileutils"
66+
]
67+
}
68+
}
69+
}

0 commit comments

Comments
 (0)