提交 1f9045f4 编写于 作者: M Miguel Solorio

Replace Octicons with Codicons

上级 8f6eb88d
......@@ -85,7 +85,7 @@ const extractEditorSrcTask = task.define('extract-editor-src', () => {
`lib.webworker.importscripts.d.ts`
],
redirects: {
'vs/base/browser/ui/octiconLabel/octiconLabel': 'vs/base/browser/ui/octiconLabel/octiconLabel.mock',
'vs/base/browser/ui/codiconLabel/codiconLabel': 'vs/base/browser/ui/codiconLabel/codiconLabel.mock',
},
shakeLevel: 2, // 0-Files, 1-InnerFile, 2-ClassMembers
importIgnorePattern: /(^vs\/css!)|(promise-polyfill\/polyfill)/,
......
......@@ -67,7 +67,6 @@ const vscodeResources = [
'out-build/vs/base/common/performance.js',
'out-build/vs/base/node/languagePacks.js',
'out-build/vs/base/node/{stdForkStart.js,terminateProcess.sh,cpuUsage.sh,ps.sh}',
'out-build/vs/base/browser/ui/octiconLabel/octicons/**',
'out-build/vs/base/browser/ui/codiconLabel/codicon/**',
'out-build/vs/workbench/browser/media/*-theme.css',
'out-build/vs/workbench/contrib/debug/**/*.json',
......@@ -627,4 +626,3 @@ function getSettingsSearchBuildId(packageJson) {
throw new Error('Could not determine build number: ' + e.toString());
}
}
......@@ -5,11 +5,11 @@
import { escape } from 'vs/base/common/strings';
export function renderOcticons(text: string): string {
export function renderCodicons(text: string): string {
return escape(text);
}
export class OcticonLabel {
export class CodiconLabel {
private _container: HTMLElement;
......@@ -18,7 +18,7 @@ export class OcticonLabel {
}
set text(text: string) {
this._container.innerHTML = renderOcticons(text || '');
this._container.innerHTML = renderCodicons(text || '');
}
}
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import 'vs/css!./octicons/octicons';
import 'vs/css!./octicons/octicons-animations';
import { escape } from 'vs/base/common/strings';
function expand(text: string): string {
return text.replace(/\$\((([a-z0-9\-]+?)(~([a-z0-9\-]*?))?)\)/gi, (_match, _g1, name, _g3, animation) => {
return `<span class="octicon octicon-${name} ${animation ? `octicon-animation-${animation}` : ''}"></span>`;
});
}
export function renderOcticons(label: string): string {
return expand(escape(label));
}
export class OcticonLabel {
constructor(
private readonly _container: HTMLElement
) { }
set text(text: string) {
this._container.innerHTML = renderOcticons(text || '');
}
set title(title: string) {
this._container.title = title;
}
}
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
@keyframes octicon-spin {
100% {
transform:rotate(360deg);
}
}
.octicon-animation-spin {
animation: octicon-spin 1.5s linear infinite;
}
@font-face {
font-family: "octicons";
src: url("./octicons.ttf?1829db8570ee0fa5a4bef3bb41d5f62e") format("truetype");
}
.octicon, .mega-octicon {
font: normal normal normal 16px/1 octicons;
display: inline-block;
text-decoration: none;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.mega-octicon { font-size: 32px; }
.octicon-alert:before { content: "\f02d" }
.octicon-arrow-down:before { content: "\f03f" }
.octicon-arrow-left:before { content: "\f040" }
.octicon-arrow-right:before { content: "\f03e" }
.octicon-arrow-small-down:before { content: "\f0a0" }
.octicon-arrow-small-left:before { content: "\f0a1" }
.octicon-arrow-small-right:before { content: "\f071" }
.octicon-arrow-small-up:before { content: "\f09f" }
.octicon-arrow-up:before { content: "\f03d" }
.octicon-beaker:before { content: "\f0dd" }
.octicon-bell:before { content: "\f0de" }
.octicon-bold:before { content: "\f282" }
.octicon-book:before { content: "\f007" }
.octicon-bookmark:before { content: "\f07b" }
.octicon-briefcase:before { content: "\f0d3" }
.octicon-broadcast:before { content: "\f048" }
.octicon-browser:before { content: "\f0c5" }
.octicon-bug:before { content: "\f091" }
.octicon-calendar:before { content: "\f068" }
.octicon-check:before { content: "\f03a" }
.octicon-checklist:before { content: "\f076" }
.octicon-chevron-down:before { content: "\f0a3" }
.octicon-chevron-left:before { content: "\f0a4" }
.octicon-chevron-right:before { content: "\f078" }
.octicon-chevron-up:before { content: "\f0a2" }
.octicon-circle-slash:before { content: "\f084" }
.octicon-circuit-board:before { content: "\f0d6" }
.octicon-clippy:before { content: "\f035" }
.octicon-clock:before { content: "\f046" }
.octicon-clone:before { content: "\f0dc" }
.octicon-cloud-download:before { content: "\f00b" }
.octicon-cloud-upload:before { content: "\f00c" }
.octicon-code:before { content: "\f05f" }
.octicon-color-mode:before { content: "\f065" }
.octicon-comment-add:before { content: "\f02b" }
.octicon-comment-discussion:before { content: "\f04f" }
.octicon-comment:before { content: "\f02b" }
.octicon-credit-card:before { content: "\f045" }
.octicon-dash:before { content: "\f0ca" }
.octicon-dashboard:before { content: "\f07d" }
.octicon-database:before { content: "\f096" }
.octicon-desktop-download:before { content: "\f0dc" }
.octicon-device-camera-video:before { content: "\f057" }
.octicon-device-camera:before { content: "\f056" }
.octicon-device-desktop:before { content: "\f27c" }
.octicon-device-mobile:before { content: "\f038" }
.octicon-diff-added:before { content: "\f06b" }
.octicon-diff-ignored:before { content: "\f099" }
.octicon-diff-modified:before { content: "\f06d" }
.octicon-diff-removed:before { content: "\f06c" }
.octicon-diff-renamed:before { content: "\f06e" }
.octicon-diff:before { content: "\f04d" }
.octicon-ellipsis:before { content: "\f09a" }
.octicon-eye-unwatch:before { content: "\f04e" }
.octicon-eye-watch:before { content: "\f04e" }
.octicon-eye:before { content: "\f04e" }
.octicon-file-add:before { content: "\f05d" }
.octicon-file-binary:before { content: "\f094" }
.octicon-file-code:before { content: "\f010" }
.octicon-file-directory-create:before { content: "\f05d" }
.octicon-file-directory:before { content: "\f016" }
.octicon-file-media:before { content: "\f012" }
.octicon-file-pdf:before { content: "\f014" }
.octicon-file-submodule:before { content: "\f017" }
.octicon-file-symlink-directory:before { content: "\f0b1" }
.octicon-file-symlink-file:before { content: "\f0b0" }
.octicon-file-text:before { content: "\f283" }
.octicon-file-zip:before { content: "\f013" }
.octicon-file:before { content: "\f283" }
.octicon-flame:before { content: "\f0d2" }
.octicon-fold:before { content: "\f0cc" }
.octicon-gear:before { content: "\f02f" }
.octicon-gift:before { content: "\f042" }
.octicon-gist-fork:before { content: "\f002" }
.octicon-gist-new:before { content: "\f05d" }
.octicon-gist-private:before { content: "\f06a" }
.octicon-gist-secret:before { content: "\f08c" }
.octicon-gist:before { content: "\f00e" }
.octicon-git-branch-create:before { content: "\f020" }
.octicon-git-branch-delete:before { content: "\f020" }
.octicon-git-branch:before { content: "\f020" }
.octicon-git-commit:before { content: "\f01f" }
.octicon-git-compare:before { content: "\f0ac" }
.octicon-git-fork-private:before { content: "\f06a" }
.octicon-git-merge:before { content: "\f023" }
.octicon-git-pull-request-abandoned:before { content: "\f009" }
.octicon-git-pull-request:before { content: "\f009" }
.octicon-globe:before { content: "\f0b6" }
.octicon-grabber:before { content: "\f284" }
.octicon-graph:before { content: "\f043" }
.octicon-heart:before { content: "\2665" }
.octicon-history:before { content: "\f07e" }
.octicon-home:before { content: "\f08d" }
.octicon-horizontal-rule:before { content: "\f070" }
.octicon-hubot:before { content: "\f09d" }
.octicon-inbox:before { content: "\f0cf" }
.octicon-info:before { content: "\f059" }
.octicon-issue-closed:before { content: "\f028" }
.octicon-issue-opened:before { content: "\f026" }
.octicon-issue-reopened:before { content: "\f027" }
.octicon-italic:before { content: "\f285" }
.octicon-jersey:before { content: "\f019" }
.octicon-kebab-horizontal:before { content: "\f286" }
.octicon-kebab-vertical:before { content: "\f287" }
.octicon-key:before { content: "\f049" }
.octicon-keyboard:before { content: "\f00d" }
.octicon-law:before { content: "\f0d8" }
.octicon-light-bulb:before { content: "\f000" }
.octicon-link-external:before { content: "\f07f" }
.octicon-link:before { content: "\f05c" }
.octicon-list-ordered:before { content: "\f062" }
.octicon-list-unordered:before { content: "\f061" }
.octicon-location:before { content: "\f060" }
.octicon-lock:before { content: "\f06a" }
.octicon-log-in:before { content: "\f036" }
.octicon-log-out:before { content: "\f032" }
.octicon-mail-read:before { content: "\f03c" }
.octicon-mail-reply:before { content: "\f28c" }
.octicon-mail:before { content: "\f03b" }
.octicon-logo-gist:before { content: "\f00a" }
.octicon-logo-github:before { content: "\f00a" }
.octicon-mark-github:before { content: "\f00a" }
.octicon-markdown:before { content: "\f0c9" }
.octicon-megaphone:before { content: "\f077" }
.octicon-mention:before { content: "\f0be" }
.octicon-microscope:before { content: "\f0dd" }
.octicon-milestone:before { content: "\f075" }
.octicon-mirror-private:before { content: "\f06a" }
.octicon-mirror-public:before { content: "\f024" }
.octicon-mirror:before { content: "\f024" }
.octicon-mortar-board:before { content: "\f0d7" }
.octicon-mute:before { content: "\f080" }
.octicon-no-newline:before { content: "\f09c" }
.octicon-note:before { content: "\f289" }
.octicon-octoface:before { content: "\f008" }
.octicon-organization:before { content: "\f037" }
.octicon-organization-filled:before { content: "\f037" }
.octicon-organization-outline:before { content: "\f037" }
.octicon-package:before { content: "\f0c4" }
.octicon-paintcan:before { content: "\f0d1" }
.octicon-pencil:before { content: "\f058" }
.octicon-person-add:before { content: "\f018" }
.octicon-person-follow:before { content: "\f018" }
.octicon-person:before { content: "\f018" }
.octicon-person-filled:before { content: "\f018" }
.octicon-person-outline:before { content: "\f018" }
.octicon-pin:before { content: "\f041" }
.octicon-plug:before { content: "\f0d4" }
.octicon-plus-small:before { content: "\f28a" }
.octicon-plus:before { content: "\f05d" }
.octicon-primitive-dot:before { content: "\f052" }
.octicon-primitive-square:before { content: "\f053" }
.octicon-project:before { content: "\f28b" }
.octicon-pulse:before { content: "\f085" }
.octicon-question:before { content: "\f02c" }
.octicon-quote:before { content: "\f063" }
.octicon-radio-tower:before { content: "\f030" }
.octicon-remove-close:before { content: "\f081" }
.octicon-reply:before { content: "\f28c" }
.octicon-repo-clone:before { content: "\f04c" }
.octicon-repo-create:before { content: "\f05d" }
.octicon-repo-delete:before { content: "\f001" }
.octicon-repo-force-push:before { content: "\f04a" }
.octicon-repo-forked:before { content: "\f002" }
.octicon-repo-pull:before { content: "\f006" }
.octicon-repo-push:before { content: "\f005" }
.octicon-repo-sync:before { content: "\f087" }
.octicon-repo:before { content: "\f001" }
.octicon-report:before { content: "\f28d" }
.octicon-rocket:before { content: "\f033" }
.octicon-rss:before { content: "\f034" }
.octicon-ruby:before { content: "\f047" }
.octicon-screen-full:before { content: "\f066" }
.octicon-screen-normal:before { content: "\f067" }
.octicon-search-save:before { content: "\f02e" }
.octicon-search:before { content: "\f02e" }
.octicon-server:before { content: "\f097" }
.octicon-settings:before { content: "\f07c" }
.octicon-shield:before { content: "\f0e1" }
.octicon-sign-in:before { content: "\f036" }
.octicon-sign-out:before { content: "\f032" }
.octicon-smiley:before { content: "\26b2" }
.octicon-squirrel:before { content: "\f0b2" }
.octicon-star-add:before { content: "\f02a" }
.octicon-star-delete:before { content: "\f02a" }
.octicon-star:before { content: "\f02a" }
.octicon-stop:before { content: "\f08f" }
.octicon-sync:before { content: "\f087" }
.octicon-tag-add:before { content: "\f015" }
.octicon-tag-remove:before { content: "\f015" }
.octicon-tag:before { content: "\f015" }
.octicon-tasklist:before { content: "\f27e" }
.octicon-telescope:before { content: "\f088" }
.octicon-terminal:before { content: "\f0c8" }
.octicon-text-size:before { content: "\f27f" }
.octicon-three-bars:before { content: "\f05e" }
.octicon-thumbsdown:before { content: "\f0db" }
.octicon-thumbsup:before { content: "\f0da" }
.octicon-tools:before { content: "\f031" }
.octicon-trashcan:before { content: "\f0d0" }
.octicon-triangle-down:before { content: "\f05b" }
.octicon-triangle-left:before { content: "\f044" }
.octicon-triangle-right:before { content: "\f05a" }
.octicon-triangle-up:before { content: "\f0aa" }
.octicon-unfold:before { content: "\f039" }
.octicon-unmute:before { content: "\f0ba" }
.octicon-unverified:before { content: "\f280" }
.octicon-verified:before { content: "\f281" }
.octicon-versions:before { content: "\f064" }
.octicon-watch:before { content: "\f0e0" }
.octicon-x:before { content: "\f081" }
.octicon-zap:before { content: "\26a1" }
.octicon-error:before { content: "\26b1" }
.octicon-eye-closed:before { content: "\26a3" }
.octicon-fold-down:before { content: "\26a4" }
.octicon-fold-up:before { content: "\26a5" }
.octicon-github-action:before { content: "\26a6" }
.octicon-info-outline:before { content: "\26a7" }
.octicon-play:before { content: "\26a8" }
.octicon-remote:before { content: "\26a9" }
.octicon-request-changes:before { content: "\26aa" }
.octicon-smiley-outline:before { content: "\26b2" }
.octicon-warning:before { content: "\f02d" }
.octicon-controls:before { content: "\26ad" }
.octicon-event:before { content: "\26ae" }
.octicon-record-keys:before { content: "\26af" }
.octicon-Vector:before { content: "\f101" }
.octicon-archive:before { content: "\f102" }
.octicon-arrow-both:before { content: "\f103" }
......@@ -34,7 +34,7 @@ import { IssueReporterData, IssueReporterStyles, IssueType, ISettingsSearchIssue
import BaseHtml from 'vs/code/electron-browser/issue/issueReporterPage';
import { LoggerChannelClient, FollowerLogService } from 'vs/platform/log/common/logIpc';
import { ILogService, getLogLevel } from 'vs/platform/log/common/log';
import { OcticonLabel } from 'vs/base/browser/ui/octiconLabel/octiconLabel';
import { CodiconLabel } from 'vs/base/browser/ui/codiconLabel/codiconLabel';
import { normalizeGitHubUrl } from 'vs/code/electron-browser/issue/issueReporterUtil';
import { Button } from 'vs/base/browser/ui/button/button';
import { SystemInfo, isRemoteDiagnosticError } from 'vs/platform/diagnostics/common/diagnostics';
......@@ -647,7 +647,7 @@ export class IssueReporter extends Disposable {
issueState = $('span.issue-state');
const issueIcon = $('span.issue-icon');
const octicon = new OcticonLabel(issueIcon);
const octicon = new CodiconLabel(issueIcon);
octicon.text = issue.state === 'open' ? '$(issue-opened)' : '$(issue-closed)';
const issueStateLabel = $('span.issue-state.label');
......
......@@ -6,7 +6,7 @@
import 'vs/css!./codelensWidget';
import * as dom from 'vs/base/browser/dom';
import { coalesce, isFalsyOrEmpty } from 'vs/base/common/arrays';
import { renderOcticons } from 'vs/base/browser/ui/octiconLabel/octiconLabel';
import { renderCodicons } from 'vs/base/browser/ui/codiconLabel/codiconLabel';
import * as editorBrowser from 'vs/editor/browser/editorBrowser';
import { Range } from 'vs/editor/common/core/range';
import { IModelDecorationsChangeAccessor, IModelDeltaDecoration, ITextModel } from 'vs/editor/common/model';
......@@ -104,7 +104,7 @@ class CodeLensContentWidget implements editorBrowser.IContentWidget {
for (let i = 0; i < symbols.length; i++) {
const command = symbols[i].command;
if (command) {
const title = renderOcticons(command.title);
const title = renderCodicons(command.title);
let part: string;
if (command.id) {
part = `<a id=${i}>${title}</a>`;
......
......@@ -104,7 +104,8 @@
pointer-events: none;
}
.monaco-workbench .part.statusbar > .items-container > .statusbar-item span.octicon {
.monaco-workbench .part.statusbar > .items-container > .statusbar-item span.codicon {
text-align: center;
font-size: 14px;
color: inherit;
}
......@@ -7,7 +7,7 @@ import 'vs/css!./media/statusbarpart';
import * as nls from 'vs/nls';
import { toErrorMessage } from 'vs/base/common/errorMessage';
import { dispose, IDisposable, Disposable, toDisposable, MutableDisposable } from 'vs/base/common/lifecycle';
import { OcticonLabel } from 'vs/base/browser/ui/octiconLabel/octiconLabel';
import { CodiconLabel } from 'vs/base/browser/ui/codiconLabel/codiconLabel';
import { ICommandService } from 'vs/platform/commands/common/commands';
import { IEditorService } from 'vs/workbench/services/editor/common/editorService';
import { Part } from 'vs/workbench/browser/part';
......@@ -628,7 +628,7 @@ class StatusbarEntryItem extends Disposable {
private entry!: IStatusbarEntry;
private labelContainer!: HTMLElement;
private label!: OcticonLabel;
private label!: CodiconLabel;
private readonly foregroundListener = this._register(new MutableDisposable());
private readonly backgroundListener = this._register(new MutableDisposable());
......@@ -657,7 +657,7 @@ class StatusbarEntryItem extends Disposable {
this.labelContainer.tabIndex = -1; // allows screen readers to read title, but still prevents tab focus.
// Label
this.label = new OcticonLabel(this.labelContainer);
this.label = new CodiconLabel(this.labelContainer);
// Add to parent
this.container.appendChild(this.labelContainer);
......
......@@ -38,7 +38,7 @@ import { randomPort } from 'vs/base/node/ports';
import { IContextKeyService, RawContextKey, IContextKey } from 'vs/platform/contextkey/common/contextkey';
import { IStorageService } from 'vs/platform/storage/common/storage';
import { ILabelService } from 'vs/platform/label/common/label';
import { renderOcticons } from 'vs/base/browser/ui/octiconLabel/octiconLabel';
import { renderCodicons } from 'vs/base/browser/ui/codiconLabel/codiconLabel';
import { ExtensionIdentifier, ExtensionType, IExtensionDescription } from 'vs/platform/extensions/common/extensions';
import { REMOTE_HOST_SCHEME } from 'vs/platform/remote/common/remoteHosts';
import { SlowExtensionAction } from 'vs/workbench/contrib/extensions/electron-browser/extensionsSlowActions';
......@@ -364,31 +364,31 @@ export class RuntimeExtensionsEditor extends BaseEditor {
if (this._extensionHostProfileService.getUnresponsiveProfile(element.description.identifier)) {
const el = $('span');
el.innerHTML = renderOcticons(` $(alert) Unresponsive`);
el.innerHTML = renderCodicons(` $(alert) Unresponsive`);
el.title = nls.localize('unresponsive.title', "Extension has caused the extension host to freeze.");
data.msgContainer.appendChild(el);
}
if (isNonEmptyArray(element.status.runtimeErrors)) {
const el = $('span');
el.innerHTML = renderOcticons(`$(bug) ${nls.localize('errors', "{0} uncaught errors", element.status.runtimeErrors.length)}`);
el.innerHTML = renderCodicons(`$(bug) ${nls.localize('errors', "{0} uncaught errors", element.status.runtimeErrors.length)}`);
data.msgContainer.appendChild(el);
}
if (element.status.messages && element.status.messages.length > 0) {
const el = $('span');
el.innerHTML = renderOcticons(`$(alert) ${element.status.messages[0].message}`);
el.innerHTML = renderCodicons(`$(alert) ${element.status.messages[0].message}`);
data.msgContainer.appendChild(el);
}
if (element.description.extensionLocation.scheme !== 'file') {
const el = $('span');
el.innerHTML = renderOcticons(`$(remote) ${element.description.extensionLocation.authority}`);
el.innerHTML = renderCodicons(`$(remote) ${element.description.extensionLocation.authority}`);
data.msgContainer.appendChild(el);
const hostLabel = this._labelService.getHostLabel(REMOTE_HOST_SCHEME, this._environmentService.configuration.remoteAuthority);
if (hostLabel) {
el.innerHTML = renderOcticons(`$(remote) ${hostLabel}`);
el.innerHTML = renderCodicons(`$(remote) ${hostLabel}`);
}
}
......
......@@ -25,7 +25,7 @@ import { ActionBar, ActionViewItem } from 'vs/base/browser/ui/actionbar/actionba
import { IThemeService } from 'vs/platform/theme/common/themeService';
import { attachBadgeStyler } from 'vs/platform/theme/common/styler';
import { Command } from 'vs/editor/common/modes';
import { renderOcticons } from 'vs/base/browser/ui/octiconLabel/octiconLabel';
import { renderCodicons } from 'vs/base/browser/ui/codiconLabel/codiconLabel';
import { WorkbenchList } from 'vs/platform/list/browser/listService';
import { IConfigurationService } from 'vs/platform/configuration/common/configuration';
import { IViewDescriptor } from 'vs/workbench/common/views';
......@@ -82,7 +82,7 @@ class StatusBarActionViewItem extends ActionViewItem {
updateLabel(): void {
if (this.options.label && this.label) {
this.label.innerHTML = renderOcticons(this.getAction().label);
this.label.innerHTML = renderCodicons(this.getAction().label);
}
}
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册