-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathvscode-settings.ts
86 lines (75 loc) · 2.36 KB
/
vscode-settings.ts
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
export type FontFamily = "CascadianCode NF";
export interface Settings {
"editor.fontFamily": FontFamily;
"explorer.openEditors.visible": number;
"terminal.integrated.fontFamily": FontFamily;
"editor.formatOnSave": boolean;
"git.autofetch": true;
}
export interface DenoSettings {
"deno.autoFmtOnSave": true;
"deno.enable": true;
"deno.unstable": true;
"deno.lint": true;
"[typescript]": {
"editor.defaultFormatter": "denoland.vscode-deno";
};
"[typescriptreact]": {
"editor.defaultFormatter": "denoland.vscode-deno";
};
}
export type ExtensionMarketplaceID = string;
export interface Extension {
readonly marketplaceId: ExtensionMarketplaceID;
}
export interface ExtensionRecommendations {
readonly recommendations: ExtensionMarketplaceID[];
}
export const commonSettings: Settings = {
"editor.fontFamily": "CascadianCode NF",
"explorer.openEditors.visible": 0,
"terminal.integrated.fontFamily": "CascadianCode NF",
"editor.formatOnSave": true,
"git.autofetch": true,
};
export const denoSettings: Settings & DenoSettings = {
...commonSettings,
"deno.autoFmtOnSave": true,
"deno.enable": true,
"deno.unstable": true,
"deno.lint": true,
"[typescript]": {
"editor.defaultFormatter": "denoland.vscode-deno",
},
"[typescriptreact]": {
"editor.defaultFormatter": "denoland.vscode-deno",
},
};
export const commonExtensions: Extension[] = [
{ marketplaceId: "christian-kohler.path-intellisense" },
{ marketplaceId: "coenraads.bracket-pair-colorizer-2" },
{ marketplaceId: "shd101wyy.markdown-preview-enhanced" },
{ marketplaceId: "visualstudioexptteam.vscodeintellicode" },
{ marketplaceId: "quicktype.quicktype" },
{ marketplaceId: "axetroy.vscode-changelog-generator" },
{ marketplaceId: "humao.rest-client" },
];
export const denoExtensions: Extension[] = [
...commonExtensions,
{ marketplaceId: "denoland.vscode-deno" },
];
export const hugoExtensions: Extension[] = [
...commonExtensions,
{ marketplaceId: "rusnasonov.vscode-hugo" },
{ marketplaceId: "eliostruyf.vscode-hugo-themer" },
{ marketplaceId: "akmittal.hugofy" },
{ marketplaceId: "budparr.language-hugo-vscode" },
{ marketplaceId: "ms-edgedevtools.vscode-edge-devtools" },
];
export function extnRecommendations(
extns: Extension[],
): ExtensionRecommendations {
return {
recommendations: extns.map((extn) => extn.marketplaceId),
};
}