microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
164.98k stars 29.53k forks source link

Support slanted triangle custom glyphs in terminal #163000

Closed nortakales closed 1 year ago

nortakales commented 2 years ago

Does this issue occur when all extensions are disabled?: Yes/No

Version: 1.72.0 (user setup) Commit: 64bbfbf67ada9953918d72e1df2f4d8e537d340e Date: 2022-10-04T23:20:39.912Z Electron: 19.0.17 Chromium: 102.0.5005.167 Node.js: 16.14.2 V8: 10.2.154.15-electron.0 OS: Windows_NT x64 10.0.22000 Sandboxed: No

VSCode 1.72 created a huge regression for the Powerline glyphs in my prompt compared to 1.71. See screenshots:

1.71

1.72

I've used this same prompt for a few years now. It's been a little flaky at times depending on the VSCode version, but recently it had been displaying perfectly. I didn't really track any versions before now in regards to what looked good and what didn't, but 1.71 was looking perfect. And for what it is worth, this prompt has always looked 100% perfect in Windows Terminal.

Here is my prompt (sorry, it's a bit convoluted):

# Prompt

SP=$'\uE0BE'
RS=$'%{%f%}%{%k%}'
FR=$'%F{1}'
FG=$'%F{2}'
FY=$'%F{3}'
FB=$'%F{4}'
FP=$'%F{5}'
FO=$'%F{6}'
FE=$'%F{13}'
FK=$'%F{8}'
FC=$'%F{12}'
FW=$'%F{15}'
BE=$'%K{13}'
BR=$'%K{1}'
BG=$'%K{2}'
BY=$'%K{3}'
BB=$'%K{4}'
BP=$'%K{5}'
BO=$'%K{6}'
BK=$'%K{8}'
BC=$'%K{12}'
BW=$'%K{15}'
EX=$FK$SP$BK
LOCATION=Desktop

if [ "$IS_WSL" =  "true" ]; then
  LOCATION=Laptop
fi

PROMPT=$'$FG$BK$SP$FK$BG$LOCATION$EX$FY$SP$BY$FK\$(TZ="US/Pacific" date "+%-l:%M%p" | sed s/PDT/P/g)$EX$FO$SP$BO$FK\$(TZ="UTC" date "+%-l:%M%p" | sed s/UTC/U/g)$EX$FB$SP$BB$FK$(wsname)$(envname)$EX$FP$SP$BP$FK$(git branch 2>/dev/null | grep \'^*\' | colrm 1 2)$SCREEN_DISPLAY$TIMER$EX$FE$SP$BE$FK\$(apwd)$SP$STATUS$RS '

You'll be missing some of the bash functions in that prompt, so the easiest way to repro is something simple like this:

PROMPT=$'%F{2}%K{8}\uE0BE%F{8}%K{2} Test %F{8}\uE0BE%K{8} '

which produces this:

meganrogge commented 2 years ago

does changing terminal.integrated.gpuAcceleration help?

Tyriar commented 2 years ago

Your whole settings.json file would be helpful, I haven't seen any powerline rendering problems recently

nortakales commented 2 years ago

For terminal.integrated.gpuAcceleration:

Here is my settings.json, though I did have to scrub some things that were for in-house extensions from my workplace:

{
    "editor.fontWeight": "400",
    "editor.fontFamily": "Cascadia Code PL, Consolas, 'Courier New', monospace",
    "editor.links": true,
    "files.defaultLanguage": "customplaintext",
    "workbench.colorCustomizations": {
        "[Gruvbox Dark Medium]": {
            "focusBorder": "#0000",
            "activityBar.background": "#282828",
            "activityBar.border": "#1d2021",
            "sideBar.background": "#1d2021",
            "sideBar.border": "#0000",
            "statusBar.background": "#1d2021",
            "statusBar.border": "#0000",
            "editorGroupHeader.tabsBackground": "#1d2021",
            "editorGroupHeader.tabsBorder": "#282828",
            "editorGroup.border": "#1d2021",
            "panel.background": "#1d2021",
            "panel.border": "#0000",
            "titleBar.activeBackground": "#282828",
            "scrollbarSlider.activeBackground": "#b8bb26",
            "activityBar.activeBorder": "#0000",
            "activityBar.activeBackground": "#1d2021",
            "activityBar.foreground": "#EBDBB2",
            "activityBarBadge.background": "#d3869b",
            "activityBarBadge.foreground": "#1d2021",
            "menu.border": "#504945",
            "menu.selectionForeground": "#b8bb26",
            "editorWidget.background": "#1d2021",
            "editorWidget.border": "#b8bb26",
            "statusBarItem.remoteBackground": "#b8bb26",
            "pickerGroup.foreground": "#b8bb26",
            "list.activeSelectionForeground": "#b8bb26",
            "list.inactiveSelectionForeground": "#b8bb26",
            "tree.indentGuidesStroke": "#504945",
            "tab.border": "#0000",
            "tab.activeBorder": "#0000",
            "tab.activeBorderTop": "#b8bb26",
            "tab.inactiveBackground": "#0000",
            "tab.activeBackground": "#282828",
            "tab.hoverBackground": "#363533",
            "tab.unfocusedHoverBackground": "#363533",
            "editorHoverWidget.background": "#1d2021",
            "editorHoverWidget.border": "#b8bb26",
            "window.activeBorder": "#504945",
            "window.inactiveBorder": "#0000",
            "terminalCursor.foreground": "#B8BB26",
            "panelTitle.activeBorder": "#B8BB26",
            "panelTitle.activeForeground": "#B8BB26",
            "panelTitle.inactiveForeground": "#EBDBB277",
            "terminal.tab.activeBorder": "#b8bb26",
            "terminal.foreground": "#B8BB26",
            "terminal.background": "#282828",
            "terminal.ansiBrightBlack": "#282828",
            "terminal.ansiBrightWhite": "#EBDBB2",
            "terminal.ansiBrightBlue": "#8EC07C",
            "terminal.ansiBrightCyan": "#fe8019",
            "terminal.ansiBrightGreen": "#B8BB26",
            "terminal.ansiBrightMagenta": "#928374",
            "terminal.ansiBrightRed": "#FB4934",
            "terminal.ansiBrightYellow": "#FABD2F",
            "terminal.ansiBlack": "#504945",
            "terminal.ansiBlue": "#83A598",
            "terminal.ansiCyan": "#fe8019",
            "terminal.ansiGreen": "#B8BB26",
            "terminal.ansiMagenta": "#D3869B",
            "terminal.ansiRed": "#FB4934",
            "terminal.ansiWhite": "#EBDBB2",
            "terminal.ansiYellow": "#FABD2F",
            "quickInputTitle.background": "#B8BB2666",
            "editor.foldBackground": "#D3869B11",
            "debugToolBar.border": "#504945",
            "terminal.border": "#1d2021",
            "editorRuler.foreground": "#363533",
            "editorStickyScroll.background": "#1d2021",
            "editor.selectionBackground": "#135564",
            "editor.selectionHighlightBackground": "#1364498e",
            // Git
            "gitDecoration.addedResourceForeground": "#98971a",
            "gitDecoration.renamedResourceForeground": "#98971a",
            "gitDecoration.stageModifiedResourceForeground": "#98971a",
            "gitDecoration.stageDeletedResourceForeground": "#cc241d",
            "gitDecoration.modifiedResourceForeground": "#98971a",
            "gitDecoration.deletedResourceForeground": "#cc241d",
            "gitDecoration.untrackedResourceForeground": "#98971a",
            "gitDecoration.ignoredResourceForeground": "#7c6f64",
            "gitDecoration.conflictingResourceForeground": "#b16286",
            // Bracket Pairs
            "editorBracketHighlight.foreground1": "#A89984",
            "editorBracketHighlight.foreground2": "#A89984",
            "editorBracketHighlight.foreground3": "#A89984",
            "editorBracketHighlight.foreground4": "#A89984",
            "editorBracketHighlight.foreground5": "#A89984",
            "editorBracketHighlight.foreground6": "#A89984",
        }
    },
    "editor.tokenColorCustomizations": {
        "[Gruvbox Dark Medium]": {
            "functions": "#fb4934",
            "keywords": "#b8bb26",
            "numbers": "#fabd2f",
            "strings": "#fe8019",
            "types": "#83a598",
            "variables": "#d3869b",
            "textMateRules": [
                {
                    "scope": "entity.name.class",
                    "settings": {
                        "foreground": "#83a598"
                    }
                },
                {
                    "scope": "support.function",
                    "settings": {
                        "foreground": "#fb4934"
                    }
                },
                {
                    "scope": "keyword",
                    "settings": {
                        "foreground": "#b8bb26"
                    }
                },
                {
                    "scope": "variable.language.this.ts",
                    "settings": {
                        "foreground": "#b8bb26",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "storage.modifier.ts",
                    "settings": {
                        "foreground": "#b8bb26",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "storage.modifier",
                    "settings": {
                        "foreground": "#8EC07C",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "storage.type.primitive.java",
                    "settings": {
                        "foreground": "#8EC07C",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "keyword.control.new.java, constant.language.java",
                    "settings": {
                        "foreground": "#8EC07C",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "keyword.control.try.java, keyword.control.catch.java, keyword.control.throw.java, keyword.control.finally.java",
                    "settings": {
                        "foreground": "#8EC07C",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "keyword.control.java",
                    "settings": {
                        "foreground": "#8EC07C",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "storage.type, storage.type.java, storage.type.generic.java, variable.other.object.java",
                    "settings": {
                        "foreground": "#83a598"
                    }
                },
                {
                    "scope": "storage.type.class.ts, storage.type.interface.ts",
                    "settings": {
                        "foreground": "#b8bb26",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "keyword.operator.new.ts",
                    "settings": {
                        "foreground": "#b8bb26",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "string",
                    "settings": {
                        "foreground": "#fe8019"
                    }
                },
                {
                    "scope": "constant.character",
                    "settings": {
                        "foreground": "#d3869b"
                    }
                },
                {
                    "scope": "keyword.operator.arithmetic.java, keyword.operator.comparison.java, keyword.operator.logical.java, keyword.operator.assignment.java, keyword.control.ternary.java, storage.type.function.arrow.java",
                    "settings": {
                        "foreground": "#d3869b"
                    }
                },
                {
                    "scope": "storage.type.annotation, keyword.other.documentation.javadoc.java",
                    "settings": {
                        "foreground": "#d3869b",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "punctuation.definition.annotation.java",
                    "settings": {
                        "foreground": "#d3869b",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "entity.name.function.ts",
                    "settings": {
                        "foreground": "#8ec07c"
                    }
                },
                {
                    "scope": "entity.name.function",
                    "settings": {
                        "foreground": "#8ec07c"
                    }
                },
                {
                    "scope": "meta.method.identifier.java entity.name.function",
                    "settings": {
                        "foreground": "#fb4934"
                    }
                },
                {
                    "scope": "meta.function-call.java entity.name.function",
                    "settings": {
                        "foreground": "#B8BB26"
                    }
                },
                {
                    "scope": "meta.method-call.java entity.name.function",
                    "settings": {
                        "foreground": "#B8BB26"
                    }
                },
                {
                    "scope": "keyword.other.import.java, keyword.other.package.java",
                    "settings": {
                        "foreground": "#8ec07c",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "comment.block.javadoc.java variable.parameter.java",
                    "settings": {
                        "foreground": "#EBDBB2",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "constant.numeric",
                    "settings": {
                        "foreground": "#fabd2f"
                    }
                },
                {
                    "scope": "variable.parameter.ts",
                    "settings": {
                        "foreground": "#EBDBB2"
                    }
                },
                {
                    "scope": "variable.parameter",
                    "settings": {
                        "foreground": "#EBDBB2"
                    }
                },
                {
                    "scope": "variable.other",
                    "settings": {
                        "foreground": "#EBDBB2"
                    }
                },
                {
                    "scope": "custom.scope.background",
                    "settings": {
                        "foreground": "#282828"
                    }
                },
                {
                    "scope": "variable.other.constant.ts, variable.other.constant.property.ts, variable.other.constant.object.ts",
                    "settings": {
                        "foreground": "#d3869b"
                    }
                },
                {
                    "scope": "string.other.link.title.markdown",
                    "settings": {
                        "foreground": "#83a598"
                    }
                },
                {
                    "scope": "markup.underline.link.markdown",
                    "settings": {
                        "foreground": "#928374"
                    }
                },
                {
                    "scope": "punctuation.definition.list.begin.markdown",
                    "settings": {
                        "foreground": "#b8bb26"
                    }
                },
                {
                    "scope": "entity.name.tag",
                    "settings": {
                        "foreground": "#83A598"
                    }
                },
                {
                    "scope": "entity.other.attribute-name",
                    "settings": {
                        "foreground": "#B8BB26"
                    }
                },
                {
                    "scope": "invalid.illegal.unrecognized-tag.html",
                    "settings": {
                        "foreground": "#d3869b"
                    }
                },
                {
                    "scope": "punctuation.section.embedded.begin.jsp, punctuation.section.embedded.end.jsp",
                    "settings": {
                        "foreground": "#d3869b"
                    }
                },
                {
                    "scope": "support.function.builtin.shell",
                    "settings": {
                        "foreground": "#83A598"
                    }
                },
                {
                    "scope": "string.quoted.double.shell",
                    "settings": {
                        "foreground": "#fabd2f"
                    }
                },
                {
                    "scope": "support.type.property-name",
                    "settings": {
                        "foreground": "#B8BB26"
                    }
                },
                {
                    "scope": "entity.name.section.markdown",
                    "settings": {
                        "foreground": "#8ec07c",
                        "fontStyle": "bold"
                    }
                },
                {
                    "scope": "markup.inline.raw.string.markdown, markup.fenced_code.block.markdown",
                    "settings": {
                        "foreground": "#d3869b"
                    }
                },
                {
                    "scope": "entity.name.tag.html",
                    "settings": {
                        "foreground": "#8ec07c"
                    }
                },
                {
                    "scope": "storage.type.function.js",
                    "settings": {
                        "foreground": "#83A598"
                    }
                },
                {
                    "scope": "entity.name.tag.jsp",
                    "settings": {
                        "foreground": "#d3869b"
                    }
                },
                {
                    "scope": "meta.object-literal.key.ts",
                    "settings": {
                        "foreground": "#fe8019"
                    }
                },
                {
                    "scope": "entity.other.inherited-class.ts",
                    "settings": {
                        "foreground": "#83A598"
                    }
                },
                {
                    "scope": "entity.other.inherited-class.java",
                    "settings": {
                        "foreground": "#83A598"
                    }
                },
                {
                    "scope": "variable.other.enummember.ts",
                    "settings": {
                        "foreground": "#d3869b"
                    }
                },
                {
                    "scope": "keyword.control.as.ts, keyword.control.export.ts, keyword.control.import.ts, keyword.control.from.ts, keyword.control.loop.ts, keyword.control.flow.ts, keyword.control.conditional.ts, storage.modifier.async.ts",
                    "settings": {
                        "foreground": "#b8bb26",
                        "fontStyle": "italic"
                    }
                },
                {
                    "scope": "invalid.deprecated.html",
                    "settings": {
                        "foreground": "#fb4934",
                        "fontStyle": "italic bold underline"
                    }
                },
                {
                    "scope": "meta.attribute-name.brazil-config",
                    "settings": {
                        "foreground": "#d3869b",
                    }
                },
                {
                    "scope": "meta.structure.dictionary.brazil-config meta.attribute-name.brazil-config",
                    "settings": {
                        "foreground": "#83A598",
                    }
                },
                {
                    "scope": "meta.structure.dictionary.brazil-config meta.structure.dictionary.brazil-config meta.attribute-name.brazil-config",
                    "settings": {
                        "foreground": "#b8bb26",
                    }
                },
                {
                    "scope": "meta.structure.dictionary.brazil-config meta.structure.dictionary.brazil-config meta.structure.dictionary.brazil-config meta.attribute-name.brazil-config",
                    "settings": {
                        "foreground": "#EBDBB2",
                    }
                },
            ]
        }
    },
    "workbench.editor.wrapTabs": true,
    "[java]": {
        "editor.codeActionsOnSave": {
            "source.generate.finalModifiers": true,
            "source.organizeImports": true
        },
    },
    "[plaintext]": {
        "editor.acceptSuggestionOnEnter": "off"
    },
    "[customplaintext]": {
        "editor.acceptSuggestionOnEnter": "off"
    },
    "date-hover-preview.additionalPreviews": [
        {
            "name": "UTC",
            "timezone": "UTC"
        }
    ],
    "shortcut.togglePanel": "Status Bar: Left",
    "editor.fontLigatures": "'calt', 'ss01'",
    "telemetry.telemetryLevel": "off",
    "editor.minimap.showSlider": "always",
    "workbench.colorTheme": "Gruvbox Dark Medium",
    "qalc.output.maxAlignmentColumn": 40,
    "qalc.output.showDelimiter": true,
    "qalc.enabledLanguages": [
        "customplaintext",
        "qalc",
        "plaintext",
        "markdown"
    ],
    "qalc.output.delimiter": "= ",
    "workbench.editor.untitled.hint": "hidden",
    "terminal.integrated.copyOnSelection": true,
    "terminal.integrated.cursorBlinking": true,
    "terminal.integrated.fontWeightBold": "normal",
    "cSpell.showCommandsInEditorContextMenu": false,
    "cSpell.showStatus": false,
    "cSpell.spellCheckDelayMs": 3000,
    "cSpell.ignoreRegExpList": [
        "/[A-Z][a-z]*/g"
    ],
    "files.exclude": {
        ".attach_pid*": true,
        ".bemol": true,
        ".viceroy": true,
        "**/.classpath": true,
        "**/.DS_Store": true,
        "**/.factorypath": true,
        "**/.git": true,
        "**/.hg": true,
        "**/.project": true,
        "**/.settings": true,
        "**/.svn": true,
        "**/CVS": true,
        "apollo-overrides": true,
        "cdk.out": true,
        "env": true,
        "node_modules": true,
        "out": true,
        "packageInfo*": true,
        "release-info": true,
        "src/*/build": false
    },
    "viceroy.config.lastVersion": "0.48.0",
    "files.watcherExclude": {
        "**/.git/objects/**": true,
        "**/.git/subtree-cache/**": true,
        "**/.hg/store/**": true,
        "**/cdk.out/**": true,
        "**/node_modules/*/**": true
    },
    "search.exclude": {
        "env": true,
        "src/*/build": true,
        "build": true,
        "**/node_modules": true,
        "**/bower_components": true,
        "**/*.code-search": true
    },
    "viceroy.config.beautyMode": false,
    "java.jdt.ls.vmargs": "-XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -Dsun.zip.disableMemoryMapping=true -Xmx1G -Xms100m -javaagent:\"/home/nicholao/.vscode-server/extensions/gabrielbb.vscode-lombok-1.0.1/server/lombok.jar\"",
    "viceroy.config.includeWorkspaceAsFolder": false,
    "viceroy.doc.welcome.showAtStartup": false,
    "explorer.decorations.colors": false,
    "java.completion.importOrder": [
        "",
        "javax",
        "java",
        "#"
    ],
    "viceroy.lab.marketplace": true,
    "editor.suggestSelection": "first",
    "vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
    "material-icon-theme.saturation": 1,
    "breadcrumbs.enabled": false,
    "editor.renderWhitespace": "none",
    "workbench.productIconTheme": "material-product-icons",
    "terminal.integrated.defaultProfile.windows": "Ubuntu (WSL)",
    "projectManager.removeCurrentProjectFromList": false,
    "redhat.telemetry.enabled": false,
    "yaml.format.printWidth": 160,
    "projectManager.tags": [
        "Local",
        "WSL",
        "SSH",
        "Mac"
    ],
    "editor.formatOnSave": true,
    "git.confirmSync": false,
    "[html]": {
        "editor.defaultFormatter": "vscode.html-language-features"
    },
    "git.autofetch": "all",
    "editor.quickSuggestionsDelay": 500,
    "editor.minimap.enabled": false,
    "editor.foldingImportsByDefault": true,
    "terminal.integrated.automationProfile.linux": {
        "path": "/usr/bin/zsh",
        "icon": "play" // TODO where does this show?
    },
    "[jsonc]": {
        "editor.defaultFormatter": "vscode.json-language-features"
    },
    "remote.SSH.defaultExtensions": [
        "HookyQR.beautify",
        "streetsidesoftware.code-spell-checker",
        "nortakales.date-hover-preview",
        "yzhang.markdown-all-in-one",
        "ryu1kn.partial-diff",
        "nortakales.quick-regex-replacer",
        "tyriar.sort-lines",
        "motivesoft.vscode-uuid-generator",
        "visualstudioexptteam.vscodeintellicode",
        "nortakales.vscode-configurable-shortcuts",
        "andyyaldoo.vscode-json"
    ],
    "editor.foldingHighlight": false,
    "[json]": {
        "editor.defaultFormatter": "vscode.json-language-features"
    },
    "workbench.tree.indent": 16,
    "editor.copyWithSyntaxHighlighting": false,
    "markdown.extension.toc.unorderedList.marker": "*",
    "markdown.extension.toc.slugifyMode": "vscode",
    "beautify.config": {
        "css": {
            "space_around_combinator": true,
            "newline_between_rules": false
        },
        "js": {
            "space_after_named_function": false,
            "space_after_anon_function": false,
        }
    },
    "typescript.format.insertSpaceBeforeFunctionParenthesis": false,
    "javascript.format.insertSpaceBeforeFunctionParenthesis": false,
    "[javascript]": {
        "editor.defaultFormatter": "HookyQR.beautify"
    },
    "security.workspace.trust.untrustedFiles": "open",
    "workbench.startupEditor": "none",
    "projectManager.showProjectNameInStatusBar": false,
    "projectManager.showParentFolderInfoOnDuplicates": true,
    "viceroy.config.internal.lastUpdateTime": "2022-10-07T23:19:21.547Z",
    "[markdown]": {
        "editor.rulers": [
            110
        ],
        "editor.wordWrapColumn": 110,
        "editor.wordWrap": "wordWrapColumn"
    },
    "qalc.output.upperExponentBound": 30,
    "thunder-client.codeSnippetLanguage": "js-fetch",
    "terminal.integrated.scrollback": 10000,
    "git.inputValidationSubjectLength": null,
    "macros.list": {
        "json-stringify": [
            "extension.uglifyJson",
            {
                "command": "$delay",
                "args": {
                    "delay": 100
                }
            },
            "extension.escapeJson"
        ],
        "json-unstringify": [
            "extension.unescapeJson",
            {
                "command": "$delay",
                "args": {
                    "delay": 100
                }
            },
            "extension.beautifyJson"
        ]
    },
    "errorLens.addAnnotationTextPrefixes": false,
    "errorLens.errorTextColor": "rgba(240,0,0,0.7)",
    "errorLens.statusBarControl": "never",
    "errorLens.warningTextColor": "rgba(180,180,0,0.7)",
    "errorLens.hintTextColor": "rgba(20,140,140,0.7)",
    "errorLens.infoTextColor": "rgba(0,200,0,0.7)",
    "errorLens.infoColor": "rgba(0,200,0,0)",
    "errorLens.warningColor": "rgba(180,180,0,0)",
    "errorLens.hintColor": "rgba(20,140,140,0)",
    "errorLens.errorColor": "rgba(240,0,0,0)",
    "errorLens.enabledDiagnosticLevels": [
        "error",
        "dialog-warning"
    ],
    "html.format.wrapLineLength": 0,
    "diffEditor.ignoreTrimWhitespace": false,
    "java.format.settings.url": "https://pastebin.com/raw/ZSfN9fvD",
    "liveServer.settings.showOnStatusbar": false,
    "java.inlayHints.parameterNames.enabled": "all",
    "workbench.iconTheme": "material-icon-theme",
    "viceroy.marketplace.extensionUpdateChannels": {
        "marklel.vscode-brazil": "stable"
    },
    "codesnap.showWindowControls": false,
    "codesnap.shutterAction": "copy",
    "codesnap.transparentBackground": true,
    "codesnap.backgroundColor": "#abb8c300",
    "codesnap.boxShadow": "rgba(0, 0, 0, 0.55) 0px 5px 17px",
    "auto-close-tag.activationOnLanguage": [
        "xml",
        "php",
        "blade",
        "ejs",
        "jinja",
        "javascript",
        "javascriptreact",
        "typescript",
        "typescriptreact",
        "plaintext",
        "markdown",
        "vue",
        "liquid",
        "erb",
        "lang-cfml",
        "cfml",
        "HTML (EEx)",
        "HTML (Eex)",
        "plist",
        "jsp"
    ],
    "editor.guides.bracketPairs": "active",
    "editor.inlayHints.enabled": "offUnlessPressed",
    "scm.diffDecorationsGutterPattern": {
        "modified": false
    },
    "editor.bracketPairColorization.enabled": false,
    "telemetry.enableCrashReporter": false,
    "telemetry.enableTelemetry": false,
    "window.title": "${rootName}",
    "thunder-client.htmlView": "Raw Html",
    "workbench.editorAssociations": {
        "*.MPK": "hexEditor.hexedit",
        "*.dsv": "hexEditor.hexedit",
        "*.vms": "hexEditor.hexedit",
        "*.bin": "hexEditor.hexedit"
    },
    "hexeditor.columnWidth": 16,
    "hexeditor.showDecodedText": true,
    "hexeditor.defaultEndianness": "little",
    "hexeditor.inspectorType": "aside",
    "material-icon-theme.folders.color": "#90a4ae",
    "material-icon-theme.folders.theme": "specific",
    "material-icon-theme.folders.associations": {
        "tst": "test",
        "wallpaper": "images",
        "vs-code": "vscode",
        "greasemonkey": "javascript",
        "monitors": "event",
        "monitor-config": "event",
        "dal": "database",
        "dao": "database",
        "brazil-config": "config",
        "external-css": "css",
        "external-js": "javascript",
        "thunder-tests": "azure-pipelines"
    },
    "material-icon-theme.files.associations": {
        "*.tag": "html",
        "*.jsp": "html"
    },
    "editor.linkedEditing": true,
    "workbench.panel.opensMaximized": "never",
    "qalc.disabledPatterns": [
        "**/log.txt",
        "**/README.md"
    ],
    "git.terminalGitEditor": true,
    "editor.wordBasedSuggestions": false,
    "qalc.output.precision": 4,
    "vscode-pets.petSize": "large",
    "vscode-pets.position": "explorer",
    "workbench.layoutControl.enabled": false,
    "window.menuBarVisibility": "compact",
    "material-icon-theme.hidesExplorerArrows": true,
    "inlineFold.supportedLanguages": [
        "html",
        "svelte",
        "vue",
        "javascript",
        "typescript",
        "javascriptreact",
        "typescriptreact",
        "customplaintext"
    ],
    "inlineFold.regexGroup": "1",
    "inlineFold.maskChar": "",
    "inlineFold.unfoldOnLineSelect": true,
    "editor.suggest.matchOnWordStartOnly": false,
    "editor.stickyScroll.enabled": true,
    "rsp-ui.enableStartServerOnActivation": [
        {
            "id": "redhat.vscode-community-server-connector",
            "name": "Community Server Connector",
            "startOnActivation": true
        }
    ],
    "java.saveActions.organizeImports": true,
    "java.sources.organizeImports.starThreshold": 999,
    "java.sources.organizeImports.staticStarThreshold": 999,
    "colorHelper.disableShadow": true,
    "colorHelper.disableGpu": 1,
    "colorHelper.disableTransparent": true,
    "vscode-color-picker.languages": [
        "python",
        "javascript",
        "typescript",
        "jsp"
    ],
    "terminal.integrated.gpuAcceleration": "canvas",
}
nortakales commented 2 years ago

This regression just got even worse in 1.73. Now "terminal.integrated.gpuAcceleration": "canvas" is also showing the weird rendering that "terminal.integrated.gpuAcceleration": "on" and auto show (the original screenshot).

Tyriar commented 2 years ago

Ok this confused me a bit initially, we don't render those via the new custom glyphs which is the real fix to this. Created upstream: https://github.com/xtermjs/xterm.js/issues/4258

Could you verify that the characters that look bad are indeed unicode e0b8-eobf? I'm not sure currently if they're meant to be double width or if different fonts do them either single or double width.

nortakales commented 2 years ago

I ran this bit of javscript (copy/pasted the powerline glyph from my prompt) and got 57534 which is E0BE

const str = "";
console.log(str.charCodeAt(0));

Ha, of course it doesn't show correct here, but in VSCode it was displaying the glyph in the editor.

Tyriar commented 2 years ago

Thanks for clarifying 👍

nortakales commented 1 year ago

Do we know roughly when we'll get traction on the upstream issue? My prompt looks great in all applications accept for VSCode now. I wouldn't expect this kind of regression from VSCode usually.

Tyriar commented 1 year ago

@nortakales hopefully it'll make it into 1.75, released early Feb.

Tyriar commented 1 year ago

Current state (webgl, edge dev, Hack NF):

image

Tyriar commented 1 year ago

To verify:

Test characters '\uE0B7 through '\uE0BF using all values of terminal.integrated.gpuAcceleration using a font that does not support Nerd Font glyphs.

Before

image

After

image