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
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ node_modules/
.build/
.vscode/extensions/**/out/
extensions/**/dist/
src/vs/base/browser/ui/codicons/codicon/codicon.ttf
/out*/
/extensions/**/out/
build/node_modules
Expand Down
4 changes: 2 additions & 2 deletions build/gulpfile.compile.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@ function makeCompileBuildTask(disableMangle: boolean) {
}

// Local/PR compile, including nls and inline sources in sourcemaps, minification, no mangling
export const compileBuildWithoutManglingTask = task.define('compile-build-without-mangling', makeCompileBuildTask(true));
export const compileBuildWithoutManglingTask = task.define('compile-build-without-mangling', task.series(compilation.copyCodiconsTask, makeCompileBuildTask(true)));
gulp.task(compileBuildWithoutManglingTask);

// CI compile, including nls and inline sources in sourcemaps, mangling, minification, for build
export const compileBuildWithManglingTask = task.define('compile-build-with-mangling', makeCompileBuildTask(false));
export const compileBuildWithManglingTask = task.define('compile-build-with-mangling', task.series(compilation.copyCodiconsTask, makeCompileBuildTask(false)));
gulp.task(compileBuildWithManglingTask);
8 changes: 8 additions & 0 deletions build/gulpfile.editor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,14 @@ const BUNDLED_FILE_HEADER = [
].join('\n');

const extractEditorSrcTask = task.define('extract-editor-src', () => {
// Ensure codicon.ttf is copied from node_modules (needed when node_modules is cached and postinstall doesn't run)
const codiconSource = path.join(root, 'node_modules', '@vscode', 'codicons', 'dist', 'codicon.ttf');
const codiconDest = path.join(root, 'src', 'vs', 'base', 'browser', 'ui', 'codicons', 'codicon', 'codicon.ttf');
if (fs.existsSync(codiconSource)) {
fs.mkdirSync(path.dirname(codiconDest), { recursive: true });
fs.copyFileSync(codiconSource, codiconDest);
Comment thread
alexr00 marked this conversation as resolved.
}

const apiusages = monacoapi.execute().usageContent;
const extrausages = fs.readFileSync(path.join(root, 'build', 'monaco', 'monaco.usage.recipe')).toString();
standalone.extractEditor({
Expand Down
4 changes: 2 additions & 2 deletions build/gulpfile.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,10 @@ const transpileClientTask = task.define('transpile-client', task.series(util.rim
gulp.task(transpileClientTask);

// Fast compile for development time
const compileClientTask = task.define('compile-client', task.series(util.rimraf('out'), compileApiProposalNamesTask, compileTask('src', 'out', false)));
const compileClientTask = task.define('compile-client', task.series(util.rimraf('out'), compilation.copyCodiconsTask, compileApiProposalNamesTask, compileTask('src', 'out', false)));
gulp.task(compileClientTask);

const watchClientTask = task.define('watch-client', task.series(util.rimraf('out'), task.parallel(watchTask('out', false), watchApiProposalNamesTask)));
const watchClientTask = task.define('watch-client', task.series(util.rimraf('out'), task.parallel(watchTask('out', false), watchApiProposalNamesTask, compilation.watchCodiconsTask)));
gulp.task(watchClientTask);

// All
Expand Down
31 changes: 31 additions & 0 deletions build/lib/compilation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -356,3 +356,34 @@ export const watchApiProposalNamesTask = task.define('watch-api-proposal-names',
.pipe(util.debounce(task))
.pipe(gulp.dest('src'));
});

// Codicons
const root = path.dirname(path.dirname(import.meta.dirname));
const codiconSource = path.join(root, 'node_modules', '@vscode', 'codicons', 'dist', 'codicon.ttf');
const codiconDest = path.join(root, 'src', 'vs', 'base', 'browser', 'ui', 'codicons', 'codicon', 'codicon.ttf');

function copyCodiconsImpl() {
try {
if (fs.existsSync(codiconSource)) {
fs.mkdirSync(path.dirname(codiconDest), { recursive: true });
fs.copyFileSync(codiconSource, codiconDest);
} else {
fancyLog(ansiColors.red('[codicons]'), `codicon.ttf not found in node_modules. Please run 'npm install' to install dependencies.`);
}
} catch (e) {
fancyLog(ansiColors.red('[codicons]'), `Error copying codicon.ttf: ${e}`);
}
}

export const copyCodiconsTask = task.define('copy-codicons', () => {
copyCodiconsImpl();
return Promise.resolve();
});
gulp.task(copyCodiconsTask);

export const watchCodiconsTask = task.define('watch-codicons', () => {
copyCodiconsImpl();
return watch('node_modules/@vscode/codicons/dist/**', { readDelay: 200 })
.on('data', () => copyCodiconsImpl());
});
gulp.task(watchCodiconsTask);
7 changes: 7 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@
"@microsoft/1ds-post-js": "^3.2.13",
"@parcel/watcher": "^2.5.4",
"@types/semver": "^7.5.8",
"@vscode/codicons": "^0.0.44",
"@vscode/deviceid": "^0.1.1",
"@vscode/iconv-lite-umd": "0.7.1",
"@vscode/native-watchdog": "^1.4.6",
Expand Down
7 changes: 7 additions & 0 deletions remote/web/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions remote/web/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"dependencies": {
"@microsoft/1ds-core-js": "^3.2.13",
"@microsoft/1ds-post-js": "^3.2.13",
"@vscode/codicons": "^0.0.44",
"@vscode/iconv-lite-umd": "0.7.1",
"@vscode/tree-sitter-wasm": "^0.3.0",
"@vscode/vscode-languagedetection": "1.0.21",
Expand Down
5 changes: 5 additions & 0 deletions src/vs/base/browser/ui/codicons/codicon/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Codicons

## Where does the codicon.ttf come from?

It is added via the `@vscode/codicons` npm package, then copied to this directory during compile time.
Binary file removed src/vs/base/browser/ui/codicons/codicon/codicon.ttf
Binary file not shown.
Loading