-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsettings.json
98 lines (98 loc) · 2.93 KB
/
settings.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
{
// disabling vscode extra bloat stuff
// hide the feedback icon (smiling face) with rightclick and select hide
"telemetry.enableTelemetry": false,
// appearance
"workbench.colorTheme": "One Dark Pro",
"editor.fontFamily": "Hack",
"terminal.integrated.fontFamily": "Hack",
"editor.tabSize": 2,
"editor.insertSpaces": true,
"editor.detectIndentation": true,
"editor.wordWrap": "on",
"editor.cursorBlinking": "smooth",
"terminal.integrated.cursorStyle": "line",
"editor.wordWrapColumn": 100,
// fixing UI issues / no need to click confirm boxes
"explorer.confirmDragAndDrop": false,
"git.confirmSync": false,
"git.autofetch": true,
// emmet and suggestions
"editor.acceptSuggestionOnEnter": "off", // use tab for suggestions, so you can press enter to newline
"editor.quickSuggestions": {
"comments": false // no suggestions inside comments
},
"emmet.showSuggestionsAsSnippets": true,
"emmet.triggerExpansionOnTab": true,
"emmet.includeLanguages": {
"javascript": "javascriptreact",
"HTML (Eex)": "html"
},
"emmet.syntaxProfiles": {
"javascript": "jsx",
"erb": "erb"
},
// general formatting
// These are all my auto-save configs
"editor.formatOnSave": true,
// turn it off for JS and JSX and vue files, we will do this via eslint
"[javascript]": {
"editor.formatOnSave": false
},
"[javascriptreact]": {
"editor.formatOnSave": false
},
"[vue]": {
"editor.formatOnSave": false
},
// tell the ESLint plugin to run on save
"eslint.autoFixOnSave": true,
// Optional BUT IMPORTANT: If you have the prettier extension enabled for other languages like CSS and HTML, turn it off for JS since we are doing it through Eslint already
"prettier.disableLanguages": [
"javascript",
"javascriptreact",
"vue"
],
"eslint.validate": [
{
"language": "vue",
"autoFix": true
},
{
"language": "html",
"autoFix": true
},
{
"language": "javascript",
"autoFix": true
}
],
"eslint.alwaysShowStatus": true,
"prettier.singleQuote": true,
"prettier.eslintIntegration": true,
"prettier.printWidth": 100,
//javascript
"javascript.updateImportsOnFileMove.enabled": "always", // no need to confirm imports when filename changes
"javascript.implicitProjectConfig.experimentalDecorators": true, // stops errors using decorators
// ruby
"[ruby]": {
"editor.formatOnSave": true,
"editor.formatOnSaveTimeout": 5000
},
"ruby.format": false,
"ruby.codeCompletion": false,
"solargraph.hover": true,
"solargraph.completion": true,
"solargraph.rename": false,
"solargraph.diagnostics": true,
// elixir
"elixirLS.suggestSpecs": false,
"workbench.iconTheme": "material-icon-theme",
"editor.minimap.enabled": false,
"editor.minimap.maxColumn": 100,
"git.enableSmartCommit": true,
// crystal
"crystal-lang.completion": true,
"crystal-lang.hover": true,
"crystal-lang.implementations": true,
}