@opensumi/cli-engine 3.9.1-next-1764049322.0 → 3.9.1-next-1764232541.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/browser/browser.js +3 -3
- package/lib/hosted/ext.process.js +1 -1
- package/package.json +10 -10
package/lib/browser/browser.js
CHANGED
|
@@ -33484,7 +33484,7 @@ inline \u6A21\u5F0F showTitle \u4F1A\u5931\u6548, \u53EA\u663E\u793A icon`,"sumi
|
|
|
33484
33484
|
{1}`,"file.confirm.deleteTips":"You can restore files from the Trash","file.confirm.moveToTrash.ok":"Move to trash","file.confirm.delete.ok":"Delete","file.confirm.delete.cancel":"Cancel","file.confirm.move":"Are you sure you want to move file {0} to {1}?","file.confirm.move.ok":"Move","file.confirm.move.cancel":"Cancel","file.confirm.paste":"Are you sure you want to paste the file {0} to {1} ?","file.confirm.paste.ok":"Paste","file.confirm.paste.cancel":"Cancel","file.confirm.replace":"Are you sure you want to replace file {0}?","file.confirm.replace.ok":"Replace","file.confirm.replace.cancel":"Cancel","file.move.existMessage":"The file to be pasted is deleted or moved at the same time. Unable to move/copy. The file already exists at the target location.","file.empty.defaultTitle":"No Open Folder","file.empty.defaultMessage":"The folder has not been opened yet","file.workspace.defaultTip":"Untitled (WORKSPACE)","file.workspace.defaultWorkspaceTip":"{0} (WORKSPACE)","file.empty.openFolder":"Open Folder","file.collapse":"Collapse All","file.refresh":"Refresh","file.search.folder":"Search on this folder","file.focus.files":"Focus on Files Explorer","file.filetree.filter":"Filter on opened files","file.filetree.openTerminalWithPath":"Open In Integrated Terminal","file.tooltip.symbolicLink":"Symbolic Link","file.resource-deleted":"(Deleted)","file.revealInExplorer":"Reveal in File Tree","menu-bar.title.file":"File","menu-bar.title.edit":"Edit","menu-bar.title.selection":"Selection","menu-bar.title.view":"View","menu-bar.title.go":"Go","menu-bar.title.debug":"Debug","menu-bar.title.terminal":"Terminal","menu-bar.title.window":"Window","menu-bar.title.help":"Help","menu-bar.file.save-as":"Save As","menu-bar.file.save-all":"Save All","menu-bar.file.open":"Open File","menu-bar.view.quick.command":"Command Palette...","menu-bar.go.jumpToBracket":"Go to Bracket","menu-bar.go.nextProblemInFiles":"Next Problem","menu-bar.go.prevProblemInFiles":"Previous Problem","menu-bar.file.pref":"Preference","menu-bar.mode.compact":"Compact Mode",editor:"Editor","editor.undo":"Undo","editor.redo":"Redo","editor.saveAll":"Save All","editor.saveCurrent":"Save Current File","editor.saveCodeActions.getting":"Getting code actions from {0}.","editor.saveCodeActions.saving":'Saving "{0}"',"editor.title.context.close":"Close","editor.closeTab.title":"Close ({0})","editor.closeCurrent":"Close Current Editor","editor.openExternal":"Open Externally","editor.cannotOpenBinary":"The file is not displayed in the text editor because it is binary.","editor.splitToLeft":"Split To Left","editor.splitToRight":"Split To Right","editor.splitToTop":"Split To Top","editor.splitToBottom":"Split To Bottom","editor.closeAllInGroup":"Close All","editor.closeToRight":"Close To Right","editor.closeSaved":"Close Saved","editor.cannotSaveWithoutDirectory":"Cannot save file without directory","editor.action.accept":"Accept Changes (Use version on the right)","editor.action.revert":"Revert Changes (Use version on the left)","editor.format.chooseFormatter":"Choose the Formatter","editor.formatDocument.label.multiple":"Format Document With...","editor.formatSelection.label.multiple":"Format Selection With...","editor.chooseEncoding":"Reopen with encoding (Unsaved Changes will be lost)","editor.guessEncodingFromContent":"Guess from content","editor.changeEol":"Select End Of Line Sequence","editor.failToOpen":"Failed to open {0}. Error message: {1}","editor.changeLanguageId":"Select Language Mode","editor.lineHeight":"Line Height","editor.lineHeight.description":`Controls the line height.\r
|
|
33485
33485
|
Use 0 to automatically compute the line height from the font size.\r
|
|
33486
33486
|
Values between 0 and 8 will be used as a multiplier with the font size.\r
|
|
33487
|
-
Values greater than or equal to 8 will be used as effective values.`,"status-bar.label.line":"Ln","status-bar.label.column":"Col","status-bar.label.selected":"Selected","status-bar.label.tabType.space":"Spaces","status-bar.label.tabType.tab":"Tab Size","status-bar.scm":"Source Control","status-bar.editor-selection":"Editor Selection","status-bar.editor-language":"Editor Language","status-bar.editor-encoding":"Editor Encoding","status-bar.editor-space":"Editor Space","status-bar.editor-eol":"Editor End Of Line","status-bar.editor-indentation":"Editor Indentation","status-bar.editor-langStatus":"Editor Language Status","editor.closeOtherEditors":"Close Others","status.editor.chooseLanguage":"Choose Language Mode","status.editor.goToLineCol":"Go to Line/Column","status.editor.chooseEncoding":"Choose Encoding","status.editor.changeEol":"Select End Of Line Sequence","edit.cut":"Cut","edit.copy":"Copy","edit.paste":"Paste","edit.selectAll":"Select All","editor.copyPath":"Copy Path","editor.copyRelativePath":"Copy Relative Path","editor.goBack":"Back","editor.goForward":"Forward","editor.quickOpen":"Go to File...","editor.editor.goToSymbol":"Go to Symbol...","editor.goToLine":"Go to Line...","editor.openType":"Open Type","editor.closeEditorsInOtherGroups":"Close Other Groups","editor.resetEditorGroups":"Reset Editor Group","editor.revert":"Revert Document","editor.tokenize.test":"Try Tokenize First Selection","quickopen.goToLine.defaultMessage":"Current Line: {0}, Character: {1}. Type a line number between 1 and {2} to navigate to.","quickopen.goToLine.notValid":"Not A valid Editor","quickopen.goToLine.lineInfo":"Go To Line {0}","quickopen.goToLine.colInfo":" and Character {0}","quickopen.goToLine.desc":"Go to Line...","quickopen.command.placeholder":"Placeholder","quickopen.command.description":"Run IDE Command","quickopen.command.nohandler":"Cannot Find Anymore","quickopen.quickinput.prompt":"Press 'Enter' to confirm or 'Escape' to cancel","quickopen.tab.file":"File","quickopen.tab.class":"Class","quickopen.tab.symbol":"Symbol","quickopen.tab.command":"Command","quickopen.tab.goToLine":"Go To Line","quickopen.tab.tip.prefix":"Press","quickopen.tab.tip.suffix":"to switch","quickOpen.openOnTheRightSide":"Open on the side","explorer.title":"Explorer","explorer.electron.revealInFinder":"Reveal In Explorer","explorer.electron.openInSystemTerminal":"Open In Terminal","explorer.electron.openInSystemTerminal.error":"Open {0} In Terminal Fail: {1}","search.title":"Search","search.input.placeholder":"Enter search content","search.input.title":"Search","search.replace.title":"Replace","search.input.checkbox":"Display search rules","file-search.command.fileOpen.description":"Open File","file-search.command.fileOpen.placeholder":"Search File By Name(Append : To Go to Line or @ To Go to Symbol)","search.includes":"Files to include","search.includes.description":'Enter the file name or folder name, multiple separated by ","',"search.excludes":"Files to exclude","search.excludes.default.enable":"Enable default exclusions","search.replaceAll.label":"Replace All","search.replace.label":"Replace","search.files.result":"{0} results found in {1} files","search.CollapseDeepestExpandedLevelAction.label":"Collapse All","search.ExpandDeepestExpandedLevelAction.label":"Expand All","search.ClearSearchResultsAction.label":"Clear Search Results","search.RefreshAction.label":"Refresh","search.removeAll.occurrences.files.confirmation.message":"Are you sure to replace {0} of the {1} files","search.removeAll.occurrences.file.confirmation.message":"Are you sure to replace the {0} results in this file?","search.result.hide":"Hide","search.menu.copyAll":"Copy All","search.help.showIncludeRule":"View syntax rules","search.help.supportRule":"Support the following syntax rules:","search.help.excludeList":"Excluded items include:","search.help.concatRule":"Multiple conditional separation","search.help.matchOneOrMoreRule":"To match one or more characters in a path segment","search.help.matchOne":"To match on one character in a path segment","search.help.matchAny":"To match any number of path segments, including none","search.help.matchWithGroup":"To group conditions","search.help.matchRange":"To declare a range of characters to match","search.help.modify":"Modify","search.replace.buttonOK":"Replace","search.replace.buttonCancel":"Cancel","search.too.many.results":"Because your search terms are too loose, we only show some search results","search.fileReplaceChanges":"{0} \u2194 {1} (Replace Preview)","search.fileResults":"File results","search.fileResults.notfound":"No files matching","search.fileSymbolResults":"symbols ({0})","search.fileSymbolResults.notfound":"No symbols matching","search.historyMatches":"Recently Opened","search.replaceAll.occurrencesMessage":"Replaced {0} occurrences across {1} files with '{2}'.","search.replace.toggle.button.title":"Toggle Replace","search.caseDescription":"Match Case","search.wordsDescription":"Match Whole Word","search.regexDescription":"Use Regular Expression","search.includeIgnoredFiles":"Include Ignored Files","search.onlyOpenEditors":"Search only in Open Editors","search.noResultsFound":"No results found. Review your settings for configured exclusions and ignore files","quickopen.recent-commands":"recently used","quickopen.other-commands":"other commands","quickopen.commands.notfound":"No commands matchings",mSelection:"Selection","selection.all":"Select All","dialog.confirm":"confirm","dialog.file.name":"File Name","dialog.file.title":"Select Directory:","dialog.file.openLabel":"Open File:","dialog.file.saveLabel":"Save File:","dialog.file.close":"Close","dialog.file.ok":"OK","dialog.ensure":"OK","editorOpenType.code":"Code","editorOpenType.preview":"Preview","scm.title":"Source Control","scm.action.git.refresh":"Refresh","scm.action.git.commit":"Commit","scm.action.git.more":"More Actions","scm.statusbar.repo":"Repo","scm.provider.title":"Source Control Providers","scm.provider.empty":"No source control providers registered.","scm.provider.init":"Click to initialize a repository","scm.diff.change.next":"Next Change","scm.diff.change.previous":"Previous Change","scm.diff.toggle.renderSideBySide":"Toggle Inline View","scm.dirtyDiff.changes":"{0} of {1} changes","debug.action.add.smartAddConfiguration":"Smart Add Configuration","debug.action.add.configuration":"Add Configuration","debug.action.edit.configuration":"Edit Configuration","debug.action.open.launch.editor":"Open Launch Editor UI","debug.action.no.configuration":"No Configurations","debug.action.start":"Start Debugging","debug.action.open.configuration":"Open launch.json","debug.action.debug.console":"Debug Console","debug.action.step-into":"Step Into","debug.action.step-over":"Step Over","debug.action.step-out":"Step Out","debug.action.restart":"Restart","debug.action.pause":"Pause","debug.action.stop":"Stop","debug.action.disattach":"Disattach","debug.action.runToCursor":"Run to Cursor","debug.action.forceRunToCursor":"Force Run to Cursor","debug.breakpoint.toggle":"Enable/Disable Breakpoints","debug.breakpoint.removeAll":"Remove All Breakpoints","debug.breakpoint.uncaughtExceptions":"Uncaught Exceptions","debug.breakpoint.allExceptions":"All Exceptions","debug.watch.removeAll":"Remove All Expression","debug.watch.collapseAll":"Collapse All Expression","debug.watch.add":"Add Expression","debug.watch.notAvailable":"not available","debug.watch.edit":"Edit Expression","debug.watch.copyValue":"Copy Value","debug.watch.remove":"Remove Expression","debug.action.continue":"Continue","debug.console.panel.title":"Debug Console","debug.console.panel.default":"default","debug.console.filter.placeholder":"Filter (e.g. text, !exclude)","debug.console.clear":"Clear","debug.console.copy":"Copy","debug.console.copyAll":"Copy All","debug.console.collapseAll":"Collapse All","debug.console.followLink":"{0} + click to follow link","debug.console.input.placeholder":"Please start a debug session to evaluate expressions","debug.console.errorMessage":"Debug session initialization failed. See console for details.","debug.console.consoleCleared":"Console was cleared","debug.notSupported.type":'Debug type "{0}" is not supported, please check your launch config.',"debug.notSupported.any":"Debug is not supported, please check your launch config.","debug.stack.loadMore":"Load All Stack Frames","debug.stack.loading":"Loading...","debug.stack.showMoreAndOrigin":"Show {0} More: {1}","debug.breakpoint.deactive":"Deactivate Breakpoints","debug.breakpoint.active":"Activate Breakpoints","debug.threads.title":"THREADS","debug.watch.title":"WATCH","debug.callStack.title":"CALL STACK","debug.variables.title":"VARIABLES","debug.variables.view.memory":"View Binary Data","debug.variables.view.memory.prompt.hexEditor.notInstalled":"Inspecting binary data requires the Hex Editor extension.","debug.breakpoints.title":"BREAKPOINTS","debug.container.title":"Debug","debug.breakpoint.breakpointMessage":"Breakpoint","debug.breakpoint.logpointMessage":"Logpoint","debug.breakpoint.conditionalMessage":"Conditional Breakpoint","debug.breakpoint.unverified":"Unverified ","debug.breakpoint.disabled":"Disabled ","debug.breakpoint.blank":"Blank","debug.configuration.selectAutomaticDebugTypesHint":"Automatic Configuration","debug.configuration.selectAutomaticDebugTypes":"Select a Debug Type","debug.configuration.selectAutomaticDebugConfiguration":"Select a DebugConfiguration","debug.configuration.comment1":"Use IntelliSense to learn about possible attributes.","debug.configuration.comment2":"Hover to view descriptions of existing attributes.","debug.configuration.comment3":"For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387","debug.launch.existed":'Debug configuration "{0}" is already running',"debug.expression.log.placeholder":'Message to log when breakpoint is hit. Expressions within {} are interpolated. Press "Enter" to confirm and "Esc" to cancel.',"debug.expression.hit.placeholder":'Break when hit count condition is met. Press "Enter" to confirm and "Esc" to cancel.',"debug.expression.condition.placeholder":'Break when the expression evaluates to true. Press "Enter" to confirm and "Esc" to cancel.',"debug.expression.condition":"Expression","debug.expression.hitCondition":"Hit Count","debug.expression.logMessage":"Log Message","debug.menu.delete.breakpoint":"Delete Breakpoint","debug.menu.edit.breakpoint":"Edit Breakpoint","debug.menu.disable.breakpoint":"Disable Breakpoint","debug.menu.enable.breakpoint":"Enable Breakpoint","debug.menu.add.logpoint":"Add Log breakpoint","debug.menu.add.conditional":"Add Condition Breakpoint","debug.menu.add.breakpoint":"Add Breakpoint","debug.menu.disable.logpoint":"Disable Log Breakpoint","debug.menu.title.run":"Run or Debug...","debug.stack.frame.noSource":"Unknown","debug.stack.frame.because":"Because Of","debug.stack.frame.stopped":"Stopped","debug.stack.frame.running":"Running","debug.launch.configurations.debugType":"Type of configuration.","debug.launch.configurations.debugTypeNotRecognised":"The debug type is not recognized. Make sure that you have a corresponding debug extension installed and that it is enabled.","debug.launch.configurations.node2NotSupported":'"node2" is no longer supported, use "node" instead and set the "protocol" attribute to "inspector".',"debug.launch.configurations.debugName":"Name of configuration; appears in the launch configuration drop down menu.","debug.launch.configurations.debugRequest":'Request type of configuration. Can be "launch" or "attach".',"debug.launch.configurations.debugServer":"For debug extension development only: if a port is specified VS Code tries to connect to a debug adapter running in server mode","debug.launch.configurations.debugPrelaunchTask":"Task to run before debug session starts.","debug.launch.configurations.debugPostDebugTask":"Task to run after debug session ends.","debug.launch.configurations.debugWindowsConfiguration":"Windows specific launch configuration attributes.","debug.launch.configurations.debugOSXConfiguration":"OS X specific launch configuration attributes.","debug.launch.configurations.debugLinuxConfiguration":"Linux specific launch configuration attributes.","debug.launch.typeNotSupported":'The debug session type "{0}" is not supported.',"debug.launch.catchError":"There was an error starting the debug session, check the logs for more details.","debug.launch.view.template.button.addItem":"Add items","debug.launch.view.template.input.placeholder":"Please enter {0}","debug.launch.view.template.button.submit":"Add new configuration item","debug.launch.view.edit.inLaunchJson":"Edit in launch.json","debug.widget.exception.thrownWithId":"Exception has occurred: {0}","debug.widget.exception.thrown":"Exception has occurred.","output.tabbar.title":"Output","output.channel.none":"<no output yet>","output.configurationTitle":"Output settings","output.logWhenNoPanel":"Whether to output to the browser when no available panel","output.maxChannelLine":"Max channel message line length","output.maxChannelLineDesc":"Max channel message line length","output.enableLogHighlight":"Enable/disable Log Highlight","output.enableLogHighlightDesc":"Use Log language to tokenization log text, vscode-log extension is required","output.enableSmartScroll":"Enable/disable Smart scrolling","output.enableSmartScrollDesc":"Smart scrolling allows you to lock scrolling automatically when you click in the output view and unlocks when you click in the last line.","preference.menubar.mode.compact":"Controls whether the menu bar uses compact mode","preference.explorer.confirm.delete":"Controls whether the explorer should ask for confirmation when deleting a file via trash","preference.explorer.confirm.move":"Controls whether the explorer should ask for confirmation when moving a file","preference.files.watcherExclude":"Configure glob patterns of file paths to exclude from file watching. Patterns must match on absolute paths (i.e. prefix with ** or the full path to match properly). Changing this setting requires a restart. When you experience Code consuming lots of cpu time on startup, you can exclude large folders to reduce the initial load.","preference.files.exclude":"Configure glob patterns for excluding files and folders. For example, the files explorer decides which files and folders to show or hide based on this setting.","preference.search.exclude":"Configure glob patterns for excluding files and folders in searches. Inherits all glob patterns from the `#files.exclude#` setting.","preference.search.include":"Configure glob patterns for including files and folders in searches.","preference.files.watcherExclude.title":"Exclusion file watch `files.watcherExclude`","preference.search.exclude.title":"Search exclusion file `search.exclude`","preference.search.useReplacePreview":"Controls whether to open Replace Preview when selecting or replacing a match.","preference.search.searchOnType":"Controls whether to search as you type","preference.search.searchOnTypeDebouncePeriod":"Controls the debounce period of search as you type in milliseconds.","preference.files.exclude.title":"Exclude file display `files.exclude`","preference.array.additem":"Add","preference.files.associations.title":"File Association","preference.files.associations":'Configure file associations to languages (e.g. "*.extension": "html"). These have precedence over the default associations of the languages installed.',"preference.files.encoding.title":"File Encoding","preference.files.encoding":"The default character set encoding to use when reading and writing files.","preference.files.autoGuessEncoding":"When enabled, the editor will attempt to guess the character set encoding when opening files. This setting can also be configured per language.","preference.files.autoGuessEncoding.title":"Auto Guess Encoding","preference.explorer.fileTree.indent.title":"Explorer: FileTree Indent","preference.explorer.fileTree.baseIndent.title":"Explorer: FileTree BaseIndent","preference.explorer.compactFolders.title":"Explorer: Compact Mode","preference.explorer.compactFolders":"Controls whether the explorer should render folders in a compact form. In such a form, single child folders will be compressed in a combined tree element. Useful for Java package structures, for example.","preference.explorer.autoReveal":"Controls whether the explorer should automatically reveal and select files when opening them.","preference.editorTitle.openSource":"Open Setting (JSON)","preference.editorTitle.openUserSource":"Open User Setting (JSON)","preference.editorTitle.openWorkspaceSource":"Open Workspace Setting (JSON)","preference.editorTitle.openPreference":"Open Setting","preference.view.saveLayoutWithWorkspace.title":"Controls whether the layout should bind with workspace","preference.stringArray.operate.delete":"Delete","preference.stringArray.operate.edit":"Edit","preference.stringArray.operate.editTip":"Press \u21B2","preference.stringArray.none":"None","preference.enum.default":"Default","preference.terminal.type":"Default Shell Type","preference.terminal.typeDesc":"To change the default type of create a new terminal","preference.terminal.fontFamily":"Terminal > Font Family","preference.terminal.fontSize":"Terminal > Font Size","preference.terminal.fontWeight":"Terminal > Font Weight","preference.terminal.lineHeight":"Terminal > Line Height","preference.terminal.cursorBlink":"Terminal > Cursor Blink","preference.terminal.scrollback":"Terminal > Cursor Scrollback","preference.terminal.integrated.shellArgs.linux":"Terminal > Shell Args Linux","preference.terminal.integrated.shellArgs.linuxDesc":"The command line arguments to use when on the Linux terminal. ","preference.terminal.integrated.copyOnSelection":"Terminal > Copy On Selection","preference.terminal.integrated.copyOnSelectionDesc":"Controls whether text selected in the terminal will be copied to the clipboard.","preference.terminal.integrated.localEchoEnabled":"Terminal > Local Echo","preference.terminal.integrated.localEchoDesc":"When local echo should be enabled.","preference.terminal.integrated.localEchoLatencyThreshold":"Local Echo Latency Threshold","preference.terminal.integrated.localEchoLatencyThresholdDesc":"Length of network delay, in milliseconds, where local edits will be echoed on the terminal without waiting for server acknowledgement. If '0', local echo will always be on, and if '-1' it will be disabled.","preference.terminal.integrated.localEchoExcludePrograms":"Local Echo Exclude Programs","preference.terminal.integrated.localEchoExcludeProgramsDesc":"Local echo will be disabled when any of these program names are found in the terminal title.","preference.terminal.integrated.localEchoStyle":"Local Echo Style","preference.terminal.integrated.localEchoStyleDesc":"Terminal style of locally echoed text; either a font style or an RGB color.","preference.terminal.integrated.xtermRenderType":"Xterm Render Type","preference.terminal.integrated.xtermRenderTypeDesc":"Choose Xterm render type, Webgl for better performance, Canvas better compatibility","preference.terminal.integrated.enablePersistentSessionDesc":"Persist terminal sessions/history for the workspace across window reloads.","preference.terminal.integrated.cursorStyle":"Terminal > Cursor Style","preference.terminal.integrated.cursorStyleDesc":"Control the style of terminal cursor","common.preference.open":"Settings","common.keymaps.open":"Keyboard Shortcut","common.about":"About","common.find":"Find","common.replace":"Replace","common.remoteMode":"Remote Mode","component.message.origin":"Origin","component.modal.okText":"OK","component.modal.cancelText":"Cancel","component.modal.justOkText":"OK","preference.tab.user":"User","preference.tab.workspace":"Workspace","settings.group.general":"General","settings.group.shortcut":"Shortcut","settings.group.editor":"Editor","settings.group.extension":"Extensions","settings.group.feature":"Feature","settings.group.view":"View","settings.group.terminal":"Terminal","preference.general.theme":"Theme","preference.general.icon":"File Icon Theme","preference.general.productIconTheme":"Product Icon Theme","preference.workbench.colorCustomizations":"Overwrite colors of current color theme","preference.general.language":"Language","preference.general.language.change.refresh.info":"After changing the language, it should be restarted to take effect. Will it be refreshed immediately?","preference.general.language.change.refresh.now":"Refresh","preference.general.language.change.refresh.later":"Later","preference.debug.internalConsoleOptions":"Controls when the internal debug console should open.","preference.debug.openDebug":"Controls when the debug view should open.","preference.debug.debugViewLocation":"Controls the location of the debug view.","preference.debug.trace":"Enable/disable tracing communications with debug adapters.","preference.debug.allowBreakpointsEverywhere":"Allow setting breakpoints in any file.","preference.debug.toolbar.float.title":"Run And Debug: Float Mode","preference.debug.toolbar.float":"Float mode","preference.debug.console.filter.mode":"Debug console filter mode","preference.debug.console.filter.mode.filter":"filter","preference.debug.console.filter.mode.matcher":"matcher","preference.debug.console.wordWrap":"Controls if the lines should wrap in the debug console.","preference.debug.inline.values":"Show variable values inline in editor while debugging.","preference.debug.breakpoint.editorHint":"After enabling, there will be a background color blinking prompt when clicking on the breakpoint list to jump to the editor.","preference.debug.breakpoint.showBreakpointsInOverviewRuler":"Controls whether breakpoints should be shown in the overview ruler.","preference.workbench.refactoringChanges.showPreviewStrategy":"Show preview confirm when triggering some refactoring changes","preference.workbench.refactoringChanges.showPreviewStrategy.title":"Refactor Confirm","preference.tab.name":"Settings","preference.noResults":"No Setting Found Containing '{0}'","preference.empty":"Loading Settings...","preference.editSettingsJson":"Edit in settings.json","preference.overwritten":"(Overwritten by next scope)","preference.overwrittenInUser":"(Modified in User Settings)","preference.overwrittenInWorkspace":"(Modified in Workspace Settings)","preference.searchPlaceholder":"Search Settings...","preference.editor.formatOnSave":"Enable format on manual save.","preference.editor.formatOnSaveTimeout":"Timeout in milliseconds after which the formatting that is run on file save is cancelled.","preference.editor.formatOnSaveTimeoutError":"Aborted format on save after ${0}ms","preference.editor.maxTokenizationLineLength":"Max Tokenization Line Length","preference.editor.quickSuggestionsDelay":"Quick suggestions show delay (in ms) Defaults to 10 (ms)","preference.editor.largeFile":"Large File Size","preference.editor.streamLargeFile":"Use Stream For Large File","preference.editor.formatOnPaste":"Format On Paste","preference.files.eol":"EOL","preference.files.trimFinalNewlines":"Trim Final Newlines","preference.files.trimTrailingWhitespace":"Trim Trailing Whitespace","preference.files.insertFinalNewline":"Insert Final Newline","preference.editor.lineHeight":"Line Height","preference.editor.saveCodeActions":"Code Actions On Save","preference.editor.saveCodeActionsNotification":"Whether to notify when code operations run at save time","keymaps.tab.name":"Keyboard Shortcuts","preference.editor.wrapTab":"Wrap Editor Tabs","preference.editor.preferredFormatter":"Default Formatter","preference.editor.fontFamily":"Font Family","preference.editor.minimap":"minimap","preference.editor.forceReadOnly":"readOnly","preference.editor.renderLineHighlight":"Render Line Highlight","preference.editor.askIfDiff":"Error If File On Disk is newer","preference.editor.autoSave":"Editor Auto Save","preference.editor.autoSaveDelay":"Auto Save Delay","preference.editor.detectIndentation":"Auto Detect Indentation","preference.editor.bracketPairColorization.enabled":"Bracket Pair Colorization","preference.editor.fontWeight":"Font Weight","preference.editor.wordWrap":"Word Wrap","preference.editor.wordWrapColumn":"Word Wrap Length","preference.item.notValid":"{0} is not a valid option","editor.configuration.formatOnSaveTimeout":"Control the timeout time of formatting (ms). Effective Only when `#editor.formatOnSave#` enables.","editor.configuration.enablePreviewFromCodeNavigation":"Controls whether editors remain in preview when a code navigation is started from them. Preview editors do not keep open and are reused until explicitly set to be kept open (e.g. via double click or editing). This value is ignored when `#workbench.editor.enablePreview#` is disabled.","editor.configuration.wrapTab":"Controls whether to wrap editor tabs instead of scroll mode when tabs are beyond the visible area.","editor.configuration.askIfDiff":"When saving files, throw error if the file on disk has a newer version.","editor.configuration.autoSave":"Controls how dirty files are auto saved.","editor.configuration.autoSaveDelay":"Controls the delay in ms after which a dirty file is saved automatically. Only applies when `#editor.formatOnSave#` is set to 'Save After Delay'.","editor.configuration.forceReadOnly":"If Enable readOnly","editor.configuration.largeFileSize":"Custom size of the large file (B)","editor.configuration.streamLargeFile":"Read large files via stream when file size exceeds the configured threshold.","editor.configuration.fontFamily":"Controls the font family.","editor.configuration.fontWeight":'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.',"editor.configuration.lineDecorationsWidth":'The width reserved for line decorations (in px). Line decorations are placed between line numbers and the editor content. You can pass in a string in the format floating point followed by "ch". e.g. 1.3ch. Defaults to 10.',"editor.configuration.lineNumbersMinChars":"Control the width of line numbers, by reserving horizontal space for rendering at least an amount of digits. Defaults to 5.","editor.configuration.wordWrapBreakBeforeCharacters":"Configure word wrapping characters. A break will be introduced before these characters. Defaults to '([{\u2018\u201C\u3008\u300A\u300C\u300E\u3010\u3014\uFF08\uFF3B\uFF5B\uFF62\xA3\xA5\uFF04\uFFE1\uFFE5+\uFF0B'.","editor.configuration.wrappingStrategy":"Controls the algorithm that computes wrapping points.","editor.configuration.wordWrapBreakAfterCharacters":"Configure word wrapping characters. A break will be introduced after these characters. Defaults to ' })]?|/&.,;\xA2\xB0\u2032\u2033\u2030\u2103\u3001\u3002\uFF61\uFF64\uFFE0\uFF0C\uFF0E\uFF1A\uFF1B\uFF1F\uFF01\uFF05\u30FB\uFF65\u309D\u309E\u30FD\u30FE\u30FC\u30A1\u30A3\u30A5\u30A7\u30A9\u30C3\u30E3\u30E5\u30E7\u30EE\u30F5\u30F6\u3041\u3043\u3045\u3047\u3049\u3063\u3083\u3085\u3087\u308E\u3095\u3096\u31F0\u31F1\u31F2\u31F3\u31F4\u31F5\u31F6\u31F7\u31F8\u31F9\u31FA\u31FB\u31FC\u31FD\u31FE\u31FF\u3005\u303B\uFF67\uFF68\uFF69\uFF6A\uFF6B\uFF6C\uFF6D\uFF6E\uFF6F\uFF70\u201D\u3009\u300B\u300D\u300F\u3011\u3015\uFF09\uFF3D\uFF5D\uFF63'.","editor.configuration.wordWrapMinified":"Force word wrapping when the text appears to be of a minified/generated file. Defaults to true.","editor.configuration.selectOnLineNumbers":"Should the corresponding line be selected when clicking on the line number? Defaults to true.","editor.configuration.revealHorizontalRightPadding":"When revealing the cursor, a virtual padding (px) is added to the cursor, turning it into a rectangle. This virtual padding ensures that the cursor gets revealed before hitting the edge of the viewport. Defaults to 30 (px).","editor.configuration.fixedOverflowWidgets":"Display overflow widgets as fixed.","editor.configuration.extraEditorClassName":"Class name to be added to the editor.","editor.configuration.ariaLabel":"The aria label for the editor's textarea (when it is focused).","editor.configuration.suggest.insertMode":"Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.","editor.configuration.suggest.filterGraceful":"Controls whether filtering and sorting suggestions accounts for small typos.","editor.configuration.suggest.localityBonus":"Controls whether sorting favours words that appear close to the cursor.","editor.configuration.suggest.shareSuggestSelections":"Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).","editor.configuration.suggest.snippetsPreventQuickSuggestions":"Controls whether an active snippet prevents quick suggestions.","editor.configuration.suggest.showIcons":"Controls whether to show or hide icons in suggestions.","editor.configuration.suggest.maxVisibleSuggestions":"Controls how many suggestions IntelliSense will show before showing a scrollbar (maximum 15).","editor.configuration.suggest.showMethods":"When enabled IntelliSense shows `method`-suggestions.","editor.configuration.suggest.showFunctions":"When enabled IntelliSense shows `function`-suggestions.","editor.configuration.suggest.showConstructors":"When enabled IntelliSense shows `constructor`-suggestions.","editor.configuration.suggest.showFields":"When enabled IntelliSense shows `field`-suggestions.","editor.configuration.suggest.showVariables":"When enabled IntelliSense shows `variable`-suggestions.","editor.configuration.suggest.showClasss":"When enabled IntelliSense shows `class`-suggestions.","editor.configuration.suggest.showStructs":"When enabled IntelliSense shows `struct`-suggestions.","editor.configuration.suggest.showInterfaces":"When enabled IntelliSense shows `interface`-suggestions.","editor.configuration.suggest.showModules":"When enabled IntelliSense shows `module`-suggestions.","editor.configuration.suggest.showPropertys":"When enabled IntelliSense shows `property`-suggestions.","editor.configuration.suggest.showEvents":"When enabled IntelliSense shows `event`-suggestions.","editor.configuration.suggest.showOperators":"When enabled IntelliSense shows `operator`-suggestions.","editor.configuration.suggest.showUnits":"When enabled IntelliSense shows `unit`-suggestions.","editor.configuration.suggest.showValues":"When enabled IntelliSense shows `value`-suggestions.","editor.configuration.suggest.showConstants":"When enabled IntelliSense shows `constant`-suggestions.","editor.configuration.suggest.showEnums":"When enabled IntelliSense shows `enum`-suggestions.","editor.configuration.suggest.showEnumMembers":"When enabled IntelliSense shows `enumMember`-suggestions.","editor.configuration.suggest.showKeywords":"When enabled IntelliSense shows `keyword`-suggestions.","editor.configuration.suggest.showTexts":"When enabled IntelliSense shows `text`-suggestions.","editor.configuration.suggest.showColors":"When enabled IntelliSense shows `color`-suggestions.","editor.configuration.suggest.showFiles":"When enabled IntelliSense shows `file`-suggestions.","editor.configuration.suggest.showReferences":"When enabled IntelliSense shows `reference`-suggestions.","editor.configuration.suggest.showCustomcolors":"When enabled IntelliSense shows `customcolor`-suggestions.","editor.configuration.suggest.showFolders":"When enabled IntelliSense shows `folder`-suggestions.","editor.configuration.suggest.showTypeParameters":"When enabled IntelliSense shows `typeParameter`-suggestions.","editor.configuration.suggest.showSnippets":"When enabled IntelliSense shows `snippet`-suggestions.","editor.configuration.suggest.showUsers":"When enabled IntelliSense shows `user`-suggestions.","editor.configuration.suggest.showIssues":"When enabled IntelliSense shows `issues`-suggestions.","editor.configuration.suggest.statusBar.visible":"Controls the visibility of the status bar at the bottom of the suggest widget.","editor.configuration.suggest.preview":"Enable or disable the rendering of the suggestion preview.","editor.configuration.suggest.details.visible":"Controls whether editor code completion expands details by default","editor.configuration.inlineSuggest.enabled":"Enable or disable the rendering of automatic inline completions.","editor.configuration.inlineSuggest.showToolbar":"Controls when to show the inline suggestion toolbar.","editor.configuration.inlineSuggest.showToolbar.always":"Show the inline suggestion toolbar whenever an inline suggestion is shown.","editor.configuration.inlineSuggest.showToolbar.onHover":"Show the inline suggestion toolbar when hovering over an inline suggestion.","editor.configuration.inlineSuggest.showToolbar.never":"Never show the inline suggestion toolbar.","editor.configuration.hover.enabled":"Controls whether the hover is shown.","editor.configuration.hover.delay":"Controls the delay in milliseconds after which the hover is shown.","editor.configuration.hover.sticky":"Controls whether the hover should remain visible when mouse is moved over it.","editor.configuration.hover.hidingDelay":"Controls the delay in milliseconds after which the hover is hidden. Requires `editor.hover.sticky` to be.","editor.configuration.hover.above":"Prefer showing hovers above the line, if there's space.","editor.configuration.experimental.stickyScroll":"Shows the nested current scopes during the scroll at the top of the editor.","editor.configuration.customCodeActionMenu.showHeaders":"Enabling this will show the code action menu with group headers, if the custom code action menu is enabled.","editor.configuration.useCustomCodeActionMenu":"Enabling this adjusts how the code action menu is rendered.","editor.configuration.letterSpacing":"Controls the letter spacing in pixels.","editor.configuration.lineNumbers":"Controls the display of line numbers.","editor.configuration.lineNumbers.off":"Line numbers are not rendered.","editor.configuration.lineNumbers.on":"Line numbers are rendered as absolute number.","editor.configuration.lineNumbers.relative":"Line numbers are rendered as distance in lines to cursor position.","editor.configuration.lineNumbers.interval":"Line numbers are rendered every 10 lines.","editor.configuration.renderFinalNewline":"Render last line number when the file ends with a newline.","editor.configuration.rulers":"Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.","editor.configuration.wordSeparators":"Characters that will be used as word separators when doing word related navigations or operations.","editor.configuration.tabSize":"The number of spaces a tab is equal to. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.","editor.configuration.insertSpaces":"Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.","editor.configuration.detectIndentation":"Controls whether `#editor.tabSize#` and `#editor.insertSpaces#` will be automatically detected when a file is opened based on the file contents.","editor.configuration.roundedSelection":"Controls whether selections should have rounded corners.","editor.configuration.scrollBeyondLastLine":"Controls whether the editor will scroll beyond the last line.","editor.configuration.scrollBeyondLastColumn":"Controls the number of extra characters beyond which the editor will scroll horizontally.","editor.configuration.smoothScrolling":"Controls whether the editor will scroll using an animation.","editor.configuration.minimap.enabled":"Controls whether the minimap is shown.","editor.configuration.minimap.side":"Controls the side where to render the minimap.","editor.configuration.minimap.showSlider":"Controls whether the minimap slider is automatically hidden.","editor.configuration.minimap.renderCharacters":"Render the actual characters on a line as opposed to color blocks.","editor.configuration.minimap.maxColumn":"Limit the width of the minimap to render at most a certain number of columns.","editor.configuration.find.seedSearchStringFromSelection":"Controls whether the search string in the Find Widget is seeded from the editor selection.","editor.configuration.find.autoFindInSelection":"Controls whether the find operation is carried out on selected text or the entire file in the editor.","editor.configuration.find.globalFindClipboard":"Controls whether the Find Widget should read or modify the shared find clipboard on macOS.","editor.configuration.find.addExtraSpaceOnTop":"Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.","editor.configuration.wordWrap.off":"Lines will never wrap.","editor.configuration.wordWrap.on":"Lines will wrap at the viewport width.","editor.configuration.wordWrap.wordWrapColumn":"Lines will wrap at `#editor.wordWrapColumn#`.","editor.configuration.wordWrap.bounded":"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.","editor.configuration.wordWrap":"Controls how lines should wrap.","editor.configuration.wordWrapColumn":"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.","editor.configuration.wrappingIndent.none":"No indentation. Wrapped lines begin at column 1.","editor.configuration.wrappingIndent.same":"Wrapped lines get the same indentation as the parent.","editor.configuration.wrappingIndent.indent":"Wrapped lines get +1 indentation toward the parent.","editor.configuration.wrappingIndent.deepIndent":"Wrapped lines get +2 indentation toward the parent.","editor.configuration.wrappingIndent":"Controls the indentation of wrapped lines.","editor.configuration.mouseWheelScrollSensitivity":"A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.","editor.configuration.fastScrollSensitivity":"Scrolling speed multiplier when pressing `Alt`.","editor.configuration.multiCursorModifier.ctrlCmd":"Maps to `Control` on Windows and Linux and to `Command` on macOS.","editor.configuration.multiCursorModifier.alt":"Maps to `Alt` on Windows and Linux and to `Option` on macOS.","editor.configuration.multiCursorMergeOverlapping":"Merge multiple cursors when they are overlapping.","editor.configuration.quickSuggestions.strings":"Enable quick suggestions inside strings.","editor.configuration.quickSuggestions.comments":"Enable quick suggestions inside comments.","editor.configuration.quickSuggestions.other":"Enable quick suggestions outside of strings and comments.","editor.configuration.quickSuggestions":"Controls whether suggestions should automatically show up while typing.","editor.configuration.quickSuggestionsDelay":"Controls the delay in milliseconds after which quick suggestions will show up.","editor.configuration.parameterHints.enabled":"Enables a pop-up that shows parameter documentation and type information as you type.","editor.configuration.parameterHints.cycle":"Controls whether the parameter hints menu cycles or closes when reaching the end of the list.","editor.configuration.autoClosingBrackets.languageDefined":"Use language configurations to determine when to autoclose brackets.","editor.configuration.autoClosingBrackets.beforeWhitespace":"Autoclose brackets only when the cursor is to the left of whitespace.","editor.configuration.autoClosingBrackets":"Controls whether the editor should automatically close brackets after the user adds an opening bracket.","editor.configuration.autoClosingQuotes.languageDefined":"Use language configurations to determine when to autoclose quotes.","editor.configuration.autoClosingQuotes.beforeWhitespace":"Autoclose quotes only when the cursor is to the left of whitespace.","editor.configuration.autoClosingQuotes":"Controls whether the editor should automatically close quotes after the user adds an opening quote.","editor.configuration.autoSurround.languageDefined":"Use language configurations to determine when to automatically surround selections.","editor.configuration.autoSurround.brackets":"Surround with brackets but not quotes.","editor.configuration.autoSurround.quotes":"Surround with quotes but not brackets.","editor.configuration.autoSurround":"Controls whether the editor should automatically surround selections.","editor.configuration.formatOnType":"Controls whether the editor should automatically format the line after typing.","editor.configuration.formatOnPaste":"Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.","editor.configuration.autoIndent":"Controls whether the editor should automatically adjust the indentation when users type, paste or move lines. Extensions with indentation rules of the language must be available.","editor.configuration.suggestOnTriggerCharacters":"Controls whether suggestions should automatically show up when typing trigger characters.","editor.configuration.acceptSuggestionOnEnterSmart":"Only accept a suggestion with `Enter` when it makes a textual change.","editor.configuration.acceptSuggestionOnEnter":"Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.","editor.configuration.acceptSuggestionOnCommitCharacter":"Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.","editor.configuration.snippetSuggestions.top":"Show snippet suggestions on top of other suggestions.","editor.configuration.snippetSuggestions.bottom":"Show snippet suggestions below other suggestions.","editor.configuration.snippetSuggestions.inline":"Show snippets suggestions with other suggestions.","editor.configuration.snippetSuggestions.none":"Do not show snippet suggestions.","editor.configuration.snippetSuggestions":"Controls whether snippets are shown with other suggestions and how they are sorted.","editor.configuration.emptySelectionClipboard":"Controls whether copying without a selection copies the current line.","editor.configuration.copyWithSyntaxHighlighting":"Controls whether syntax highlighting should be copied into the clipboard.","editor.configuration.wordBasedSuggestions":"Controls whether completions should be computed based on words in the document.","editor.configuration.suggestSelection.first":"Always select the first suggestion.","editor.configuration.suggestSelection.recentlyUsed":"Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently.","editor.configuration.suggestSelection.recentlyUsedByPrefix":"Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.","editor.configuration.suggestSelection":"Controls how suggestions are pre-selected when showing the suggest list.","editor.configuration.suggestFontSize":"Font size for the suggest widget. When set to `0`, the value of `#editor.fontSize#` is used.","editor.configuration.suggestLineHeight":"Line height for the suggest widget. When set to `0`, the value of `#editor.lineHeight#` is used.","editor.configuration.tabCompletion.on":"Tab complete will insert the best matching suggestion when pressing tab.","editor.configuration.tabCompletion.off":"Disable tab completions.","editor.configuration.tabCompletion.onlySnippets":"Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.","editor.configuration.tabCompletion":"Enables tab completions.","editor.configuration.suggest.filtered":"Controls whether some suggestion types should be filtered from IntelliSense. A list of suggestion types can be found here: https://code.visualstudio.com/docs/editor/intellisense#_types-of-completions.","editor.configuration.suggest.filtered.method":"When set to `false` IntelliSense never shows `method` suggestions.","editor.configuration.suggest.filtered.function":"When set to `false` IntelliSense never shows `function` suggestions.","editor.configuration.suggest.filtered.constructor":"When set to `false` IntelliSense never shows `constructor` suggestions.","editor.configuration.suggest.filtered.field":"When set to `false` IntelliSense never shows `field` suggestions.","editor.configuration.suggest.filtered.variable":"When set to `false` IntelliSense never shows `variable` suggestions.","editor.configuration.suggest.filtered.class":"When set to `false` IntelliSense never shows `class` suggestions.","editor.configuration.suggest.filtered.struct":"When set to `false` IntelliSense never shows `struct` suggestions.","editor.configuration.suggest.filtered.interface":"When set to `false` IntelliSense never shows `interface` suggestions.","editor.configuration.suggest.filtered.module":"When set to `false` IntelliSense never shows `module` suggestions.","editor.configuration.suggest.filtered.property":"When set to `false` IntelliSense never shows `property` suggestions.","editor.configuration.suggest.filtered.event":"When set to `false` IntelliSense never shows `event` suggestions.","editor.configuration.suggest.filtered.operator":"When set to `false` IntelliSense never shows `operator` suggestions.","editor.configuration.suggest.filtered.unit":"When set to `false` IntelliSense never shows `unit` suggestions.","editor.configuration.suggest.filtered.value":"When set to `false` IntelliSense never shows `value` suggestions.","editor.configuration.suggest.filtered.constant":"When set to `false` IntelliSense never shows `constant` suggestions.","editor.configuration.suggest.filtered.enum":"When set to `false` IntelliSense never shows `enum` suggestions.","editor.configuration.suggest.filtered.enumMember":"When set to `false` IntelliSense never shows `enumMember` suggestions.","editor.configuration.suggest.filtered.keyword":"When set to `false` IntelliSense never shows `keyword` suggestions.","editor.configuration.suggest.filtered.text":"When set to `false` IntelliSense never shows `text` suggestions.","editor.configuration.suggest.filtered.color":"When set to `false` IntelliSense never shows `color` suggestions.","editor.configuration.suggest.filtered.file":"When set to `false` IntelliSense never shows `file` suggestions.","editor.configuration.suggest.filtered.reference":"When set to `false` IntelliSense never shows `reference` suggestions.","editor.configuration.suggest.filtered.customcolor":"When set to `false` IntelliSense never shows `customcolor` suggestions.","editor.configuration.suggest.filtered.folder":"When set to `false` IntelliSense never shows `folder` suggestions.","editor.configuration.suggest.filtered.typeParameter":"When set to `false` IntelliSense never shows `typeParameter` suggestions.","editor.configuration.suggest.filtered.snippet":"When set to `false` IntelliSense never shows `snippet` suggestions.","editor.configuration.editor.gotoLocation.multiple":"Controls the behavior of 'Go To' commands, like Go To Definition, when multiple target locations exist.","editor.configuration.gotoLocation.multiple.peek":"Show peek view of the results (default)","editor.configuration.gotoLocation.multiple.gotoAndPeek":"Go to the primary result and show a peek view","editor.configuration.gotoLocation.multiple.goto":"Go to the primary result and enable peek-less navigation to others","editor.configuration.selectionHighlight":"Controls whether the editor should highlight matches similar to the selection.","editor.configuration.occurrencesHighlight":"Controls whether the editor should highlight semantic symbol occurrences.","editor.configuration.overviewRulerLanes":"Controls the number of decorations that can show up at the same position in the overview ruler.","editor.configuration.overviewRulerBorder":"Controls whether a border should be drawn around the overview ruler.","editor.configuration.cursorBlinking":"Control the cursor animation style.","editor.configuration.mouseWheelZoom":"Zoom the font of the editor when using mouse wheel and holding `Ctrl`.","editor.configuration.cursorSmoothCaretAnimation":"Controls whether the smooth caret animation should be enabled.","editor.configuration.cursorStyle":"Controls the cursor style.","editor.configuration.cursorWidth":"Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.","editor.configuration.fontLigatures":"Enables/Disables font ligatures.","editor.configuration.hideCursorInOverviewRuler":"Controls whether the cursor should be hidden in the overview ruler.","editor.configuration.renderWhitespace.boundary":"Render whitespace characters except for single spaces between words.","editor.configuration.renderWhitespace.selection":"Render whitespace characters only on selected text.","editor.configuration.renderWhitespace":"Controls how the editor should render whitespace characters.","editor.configuration.rename.enablePreview":"Enable/disable the ability to preview changes before renaming","editor.configuration.renderControlCharacters":"Controls whether the editor should render control characters.","editor.configuration.guides.indentation":"Controls whether the editor should render indent guides.","editor.configuration.guides.highlightActiveIndentation":"Controls whether the editor should highlight the active indent guide.","editor.configuration.guides.bracketPairs":"Controls whether bracket pair guides are enabled or not.","editor.configuration.renderLineHighlight.all":"Highlights both the gutter and the current line.","editor.configuration.renderLineHighlight":"Controls how the editor should render the current line highlight.","editor.configuration.codeLens":"Controls whether the editor shows CodeLens.","editor.configuration.folding":"Controls whether the editor has code folding enabled.","editor.configuration.foldingStrategy":"Controls the strategy for computing folding ranges. `auto` uses a language specific folding strategy, if available. `indentation` uses the indentation based folding strategy.","editor.configuration.showFoldingControls":"Controls whether the fold controls on the gutter are automatically hidden.","editor.configuration.matchBrackets":"Highlight matching brackets when one of them is selected.","editor.configuration.glyphMargin":"Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.","editor.configuration.useTabStops":"Inserting and deleting whitespace follows tab stops.","editor.configuration.trimAutoWhitespace":"Remove trailing auto inserted whitespace.","editor.configuration.stablePeek":"Keep peek editors open even when double clicking their content or when hitting `Escape`.","editor.configuration.dragAndDrop":"Controls whether the editor should allow moving selections via drag and drop.","editor.configuration.accessibilitySupport.auto":"The editor will use platform APIs to detect when a Screen Reader is attached.","editor.configuration.accessibilitySupport.on":"The editor will be permanently optimized for usage with a Screen Reader.","editor.configuration.accessibilitySupport.off":"The editor will never be optimized for usage with a Screen Reader.","editor.configuration.accessibilitySupport":"Controls whether the editor should run in a mode where it is optimized for screen readers.","editor.configuration.showUnused":"Controls fading out of unused code.","editor.configuration.comments.insertSpace":"Insert a space after the line comment token and inside the block comments tokens.","editor.configuration.comments.ignoreEmptyLines":"Ignore empty lines when inserting line comments.","editor.configuration.links":"Controls whether the editor should detect links and make them clickable.","editor.configuration.colorDecorators":"Controls whether the editor should render the inline color decorators and color picker.","editor.configuration.lightbulb.enabled":"Enables the code action lightbulb in the editor.","editor.configuration.lightbulb.enabled.off":"Disable the code action menu.","editor.configuration.lightbulb.enabled.onCode":"Show the code action menu when the cursor is on lines with code.","editor.configuration.lightbulb.enabled.on":"Show the code action menu when the cursor is on lines with code or on empty lines.","editor.configuration.maxTokenizationLineLength":"Lines above this length will not be tokenized for performance reasons","editor.configuration.codeActionsOnSave.organizeImports":"Controls whether organize imports action should be run on file save.","editor.configuration.codeActionsOnSave.fixAll":"Controls whether auto fix action should be run on file save.","editor.configuration.codeActionsOnSave":"Code action kinds to be run on save.","editor.configuration.codeActionsOnSaveTimeout":"Timeout in milliseconds after which the code actions that are run on save are cancelled.","editor.configuration.codeActionsOnSaveNotification":"Whether to notify when code operations run at save time.","editor.configuration.selectionClipboard":"Controls whether the Linux primary clipboard should be supported.","editor.configuration.largeFileOptimizations":"Special handling for large files to disable certain memory intensive features.","editor.configuration.renderIndicators":"Controls whether the diff editor shows +/- indicators for added/removed changes.","editor.configuration.defaultFormatter":"Default code formatter","editor.configuration.tokenColorCustomizations":"Overwrite token colors of current color theme","editor.configuration.semanticHighlighting.enabled":"Controls whether the semanticHighlighting is shown for the languages that support it.","editor.configuration.semanticHighlighting.true":"Semantic highlighting enabled for all color themes.","editor.configuration.semanticHighlighting.false":"Semantic highlighting disabled for all color themes.","editor.configuration.semanticHighlighting.configuredByTheme":"Semantic highlighting is configured by the current color theme's `semanticHighlighting` setting.","editor.configuration.experimental.stickyScroll.enabled":"Shows the nested current scopes during the scroll at the top of the editor.","editor.configuration.previewMode":"Enable Preview Mode","editor.configuration.workbench.editorAssociations":'Configure glob patterns to editors (e.g. `"*.hex": "hexEditor.hexEdit"`). These have precedence over the default behavior.',"editor.configuration.preferredFormatter":"Preferred formatter for files","editor.configuration.bracketPairColorization.enabled":"Controls whether bracket pair colorization is enabled or not. Use 'workbench.colorCustomizations' to override the bracket highlight colors.","editor.configuration.mouseBackForwardToNavigate":"Enables the use of mouse buttons four and five for commands 'Go Back' and 'Go Forward'.","editor.configuration.suggest.insertMode.insert":"Insert suggestion without overwriting text right of the cursor.","editor.configuration.suggest.insertMode.replace":"Insert suggestion and overwrite text right of the cursor.","editor.configuration.unicodeHighlight.ambiguousCharacters":"Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.","diffEditor.configuration.renderSideBySide":"Controls whether the diff editor shows the diff side by side or inline.","diffEditor.configuration.ignoreTrimWhitespace":"Controls whether the diff editor shows changes in leading or trailing whitespace as diffs.","diffEditor.action.toggleCollapseUnchangedRegions":"Toggle Collapse Unchanged Regions","multiDiffEditor.action.collapseFiles":"Collapse All Files","multiDiffEditor.action.expandFiles":"Expand All Files","editor.largeFile.prevent":"The file is too large, continuing to open it may cause lag or crash.","editor.autoSave.enum.off":"OFF","editor.autoSave.enum.editorFocusChange":"When editor focus changed","editor.autoSave.enum.afterDelay":"Save after delay","editor.autoSave.enum.windowLostFocus":"When window lost focus","editor.file.prevent.stillOpen":"Open Anyway","editor.workspaceSymbol.quickopen":"Search Workspace Symbol","editor.workspaceSymbolClass.quickopen":"Search Workspace Class Symbol","editor.workspaceSymbol.description":"Go to Symbol in Workspace","editor.workspaceSymbol.search":"Type to search for symbols","editor.workspaceSymbolClass.search":"Type to search for class symbols","editor.workspaceSymbol.notfound":"No symbols matching","editor.workspaceSymbolClass.notfound":"No class symbols matching","preference.diffEditor.renderSideBySide":"Render Side By Side","preference.diffEditor.ignoreTrimWhitespace":"Ignore Trim Whitespace","preference.mergeEditor.autoApplyNonConflictChanges":"Automatically apply non-conflicting changes","validate.tree.emptyFileNameError":"Please provide a file or folder name","validate.tree.fileNameStartsWithSlashError":"File or folder name cannot start with /","validate.tree.fileNameFollowOrStartWithSpaceWarning":"Leading or trailing spaces detected in file or folder name","validate.tree.fileNameExistsError":"File or folder **{0}** already exists. Please use a different name.","validate.tree.invalidFileNameError":"The name **{0}** is not available. Please use a different name.","editor.close.all":"Close All Editors","opened.editors.title":"OPENED EDITORS","opened.editors.save.all":"Save All","opened.editors.close.all":"Close All","opened.editors.close.byGroup":"Close files in the group","opened.editors.save.byGroup":"Save files in the group","opened.editors.empty":"No file is open in the editor","opened.editors.group.title":"GROUP {0}","opened.editors.open":"Open","opened.editors.openToTheSide":"Open To The Side","opened.editors.compare":"Compare With Current File","opened.editors.copyRelativePath":"Copy Relative Path","opened.editors.copyPath":"Copy Path","opened.editors.unsaved":"{0} unsaved","terminal.name":"Terminal","terminal.disconnected":"Terminal Already Disconnected","terminal.can.not.create":"Create Terminal Failed","terminal.can.not.reconnect":"Terminal Unavailable, Please","terminal.stop":"Stop The Terminal","terminal.try.reconnect":"Try To Reconnect The Terminal","terminal.try.recreate":"Try To Recreate The Terminal","terminal.new":"Create Terminal","terminal.new.type":"Create terminal by type","terminal.split":"Split Terminal","terminal.clear":"Remove All Terminals","terminal.clear.content":"Clear All Contents","terminal.independ":"Independent Terminal","terminal.maximum":"Maximum Terminal Panel","terminal.or":"Or","terminal.search":"Search","terminal.search.next":"Search Next","terminal.openWithPath":"Open In Integrated Terminal","terminal.remove":"Kill terminal","terminal.menu.search":"Search","terminal.menu.split":"Split","terminal.menu.rename":"Rename","terminal.menu.selectAll":"Select All","terminal.menu.copy":"Copy","terminal.menu.paste":"Paste","terminal.menu.clear":"Clear","terminal.menu.stop":"Stop","terminal.menu.stopGroup":"Stop Group","terminal.menu.clearGroups":"Clear All Terminals","terminal.menu.selectType":"Default Terminal Type","terminal.menu.moreSettings":"More Settings","terminal.menu.clearCurrentContent":"Clear","terminal.menu.selectCurrentContent":"Select All","terminal.menu.clearAllContents":"Clear All Terminals Content","terminal.menu.selectAllContent":"Select All Terminals Content","terminal.environment.changed":"Extensions have made changes to this terminal's environment","terminal.environment.changes":"Extensions want to make the following changes to the terminal's environment:","terminal.environment.removal":"Extensions want to remove these existing changes from the terminal's environment:","terminal.launchFail.cwdNotDirectory":'Starting directory (cwd) "{0}" is not a directory',"terminal.launchFail.cwdDoesNotExist":'Starting directory (cwd) "{0}" does not exist',"terminal.launchFail.executableIsNotFileOrSymlink":'Path to shell executable "{0}" is not a file or a symlink',"terminal.launchFail.executableDoesNotExist":'Path to shell executable "{0}" does not exist',"terminal.openFile":"Open file in editor","terminal.focusFolder":"Focus folder in explorer","terminal.openFolder":"Open folder in new window","terminal.relaunch":"Relaunch Terminal","terminal.toggleTerminal":"Toggle Terminal","terminal.killProcess":"Kill Process","terminal.process.unHealthy":"*This terminal session has been timed out and killed by the system. Please open a new terminal session to proceed with operations.","terminal.selectCWDForNewTerminal":"Select current working directory for new terminal","terminal.focusNext.inTerminalGroup":"Terminal: Focus Next Terminal in Terminal Group","terminal.focusPrevious.inTerminalGroup":"Terminal: Focus Previous Terminal in Terminal Group","terminal.ai.requesting":"AI Requesting...","terminal.ai.selectHint":"Use keyboard \u2191\u2193 to select a command, \u23CE to confirm command","terminal.ai.thinking":"AI Thinking...","terminal.ai.escClose":"Press ESC to close the dialog","terminal.ai.headerHint":"Use AI to get terminal input suggestions","terminal.ai.inputHint":"Eg. show current process pid","terminal.ai.inputSharpToGetHint":"Type # for AI Suggestions","terminal.ai.cannotGetTerminalConnection":"Cannot establish terminal connection, please provide feedback in the user group","view.command.show":"Show {0}","layout.tabbar.setting":"Open Preference Panel","debugger.menu.setValue":"Set Value","debugger.menu.setValue.param":"Please input the value of this variable","debugger.menu.copyValue":"Copy Value","debugger.menu.copyEvaluatePath":"Copy as Expression","debugger.menu.addToWatchExpressions":"Add to Watch","debugger.menu.restartFrame":"Restart Frame","debugger.menu.copyCallstack":"Copy Call Stack","theme.toggle":"Color Theme","theme.icon.toggle":"File Icon Theme","theme.productIcon.toggle":"Product Icon Theme","theme.base.vs":"Light Theme","theme.base.vs-dark":"Dark Theme","theme.base.hc":"High Contrast Themes","theme.current":"Current","theme.quickopen.plh":"Select Color Theme\uFF08Up/Down Keys to Preview\uFF09","theme.icon.quickopen.plh":"Select Icon Theme\uFF08Up/Down Keys to Preview\uFF09","theme.productIcon.quickopen.plh":"Select Product Icon Theme\uFF08Up/Down Keys to Preview\uFF09","preference.workbench.list.openMode":"Controls how to open items in trees and lists using the mouse (if supported). For parents with children in trees, this setting will control if a single click expands the parent or a double click. Note that some trees and lists might choose to ignore this setting if it is not applicable.","preference.workbench.list.openMode.title":"Tree/List open mode","keymaps.search.placeholder":"Type to search in keybindings","keymaps.search.keyboard.placeholder":"Type to search in keybindings","keymaps.header.command.title":"Command","keymaps.header.source.title":"Source","keymaps.header.keybinding.title":"Keybinding","keymaps.header.when.title":"When","keymaps.source.default":"DEFAULT","keymaps.source.user":"USER","keymaps.source.workspace":"WORKSPACE","keymaps.keybinding.full.collide":'Contains conflict between this shortcut and "{0}" command, please reset',"keymaps.keybinding.partial.collide":'Contains conflict between this shortcut and "{0}" command, please reset',"keymaps.keybinding.shadow.collide":'Contains conflict between this shortcut and "{0}" command, please reset',"keymaps.keybinding.duplicate":"This shortcut is bound to the following {0} commands:","keymaps.keybinding.loading":"Setting keymaps ...","keymaps.keybinding.success":"Setting keymaps success","keymaps.keybinding.fail":"Setting keymaps fail","keymaps.keybinding.require":"keybinding value is required","keymaps.action.edit":"Edit","keymaps.action.add":"Add","keymaps.action.reset":"Reset","keymaps.action.clear":"Clear","keymaps.edit.placeholder":"Press Enter to save","keymaps.editorTitle.openSource":"Open Keymap ShortCut(JSON)","keymaps.editorTitle.openKeymap":"Open Keymap ShortCut","keymaps.commandId.title":"Command ID: {0}","keybinding.combination.tip":"({0}) was pressed, waiting for more keys","layout.tabbar.toggle":"Show/Hide Tab Panel","layout.tabbar.expand":"Maximize Tab Panel","layout.tabbar.retract":"Retract Tab Panel","layout.view.hide":"HIDE","layout.action.openView":"Open View ...","layout.openView.containerTitle":"SideBar / Panel","layout.openView.viewTitle":"{0} / View","marketplace.extension.update.now":"Update now","marketplace.extension.update.delay":"Update later","marketplace.extension.uninstall.failed":"Failed to uninstall","marketplace.extension.uninstall.failed.depended":'Cannot uninstall extension "{0}". Extension "{1}" depends on this.',"marketplace.extension.disabled.failed.depended":'Cannot disable extension "{0}". Extension "{1}" depends on this.',"marketplace.extension.reload.delay":"Restart later","marketplace.extension.reload.now":"Restart now","marketplace.extension.builtin":"Builtin","marketplace.extension.development":"Develop","marketplace.extension.enable":"Enable","marketplace.extension.disable":"Disable","marketplace.extension.enable.workspace":"Enable(workspace)","marketplace.extension.disable.workspace":"Disable(workspace)","marketplace.extension.enable.all":"Enable All Extensions","marketplace.extension.disable.all":"Disable All Extensions","marketplace.extension.install":"Install","marketplace.extension.container":"Extensions","marketplace.extension.empty.disabled":"No disabled extensions yet","marketplace.extension.notfound":"No Extension","marketplace.panel.hot":"Hot Extensions","marketplace.panel.search":"Search","marketplace.panel.enabled":"Enabled","marketplace.panel.disabled":"Disabled","marketplace.panel.tab.marketplace":"Marketplace","marketplace.panel.tab.placeholder.search":"Search from marketplace","marketplace.tab.installed":"Installed","marketplace.panel.tab.placeholder.installed":"Search from installed","marketplace.extension.findUpdate":"Find Extension {0} has new version {1}\uFF0CDo you want to update\uFF1F","marketplace.extension.updateAll":"Find multiple extensions that can be updated. Do you want to update all?","marketplace.extension.needreloadFromAll":"All extensions are updated and will take effect after reload window. Do you want to reload window now?","marketplace.extension.needreload":"Updating extension {0} is completed. Do you want to reload window now?","marketplace.extension.canupdate":"Can update","marketplace.extension.updating":"Updating","marketplace.extension.update":"Update","marketplace.extension.installing":"Installing","marketplace.extension.reloadrequire":"Require reload","marketplace.extension.uninstalling":"Uninstalling","marketplace.extension.uninstall":"Uninstall","marketplace.extension.uninstalled":"Uninstalled","marketplace.extension.readme":"Readme","marketplace.extension.changelog":"Changelog","marketplace.extension.dependencies":"Dependencies","marketplace.extension.otherVersion":"Install Other Version","marketplace.extension.currentVersion":"Current Version","marketplace.extension.installed":"Installed","marketplace.quickopen.install":"Install Extension","marketplace.quickopen.install.byReleaseId":"Install Extension (ReleaseId)","marketplace.quickopen.install.releaseId":"Extension ReleaseId","marketplace.quickopen.install.releaseId.required":"Extension Release ID is required","marketplace.quickopen.install.id":"Extension ID","marketplace.quickopen.install.id.required":"Extension ID is required","marketplace.quickopen.install.version.required":"Extension version is require","marketplace.quickopen.install.version.placeholder":"Extension version","marketplace.quickopen.install.error":"Install Extension has error",saveChangesMessage:"Do you want to save the changes you made to {0}?",saveNFilesChangesMessage:`Do you want to save these changes you made to {0} files?
|
|
33487
|
+
Values greater than or equal to 8 will be used as effective values.`,"status-bar.label.line":"Ln","status-bar.label.column":"Col","status-bar.label.selected":"Selected","status-bar.label.tabType.space":"Spaces","status-bar.label.tabType.tab":"Tab Size","status-bar.scm":"Source Control","status-bar.editor-selection":"Editor Selection","status-bar.editor-language":"Editor Language","status-bar.editor-encoding":"Editor Encoding","status-bar.editor-space":"Editor Space","status-bar.editor-eol":"Editor End Of Line","status-bar.editor-indentation":"Editor Indentation","status-bar.editor-langStatus":"Editor Language Status","editor.closeOtherEditors":"Close Others","status.editor.chooseLanguage":"Choose Language Mode","status.editor.goToLineCol":"Go to Line/Column","status.editor.chooseEncoding":"Choose Encoding","status.editor.changeEol":"Select End Of Line Sequence","edit.cut":"Cut","edit.copy":"Copy","edit.paste":"Paste","edit.selectAll":"Select All","editor.copyPath":"Copy Path","editor.copyRelativePath":"Copy Relative Path","editor.goBack":"Back","editor.goForward":"Forward","editor.quickOpen":"Go to File...","editor.editor.goToSymbol":"Go to Symbol...","editor.goToLine":"Go to Line...","editor.openType":"Open Type","editor.closeEditorsInOtherGroups":"Close Other Groups","editor.resetEditorGroups":"Reset Editor Group","editor.revert":"Revert Document","editor.tokenize.test":"Try Tokenize First Selection","quickopen.goToLine.defaultMessage":"Current Line: {0}, Character: {1}. Type a line number between 1 and {2} to navigate to.","quickopen.goToLine.notValid":"Not A valid Editor","quickopen.goToLine.lineInfo":"Go To Line {0}","quickopen.goToLine.colInfo":" and Character {0}","quickopen.goToLine.desc":"Go to Line...","quickopen.command.placeholder":"Placeholder","quickopen.command.description":"Run IDE Command","quickopen.command.nohandler":"Cannot Find Anymore","quickopen.quickinput.prompt":"Press 'Enter' to confirm or 'Escape' to cancel","quickopen.tab.file":"File","quickopen.tab.class":"Class","quickopen.tab.symbol":"Symbol","quickopen.tab.command":"Command","quickopen.tab.goToLine":"Go To Line","quickopen.tab.tip.prefix":"Press","quickopen.tab.tip.suffix":"to switch","quickOpen.openOnTheRightSide":"Open on the side","explorer.title":"Explorer","explorer.electron.revealInFinder":"Reveal In Explorer","explorer.electron.openInSystemTerminal":"Open In Terminal","explorer.electron.openInSystemTerminal.error":"Open {0} In Terminal Fail: {1}","search.title":"Search","search.input.placeholder":"Enter search content","search.input.title":"Search","search.replace.title":"Replace","search.input.checkbox":"Display search rules","file-search.command.fileOpen.description":"Open File","file-search.command.fileOpen.placeholder":"Search File By Name(Append : To Go to Line or @ To Go to Symbol)","search.includes":"Files to include","search.includes.description":'Enter the file name or folder name, multiple separated by ","',"search.excludes":"Files to exclude","search.excludes.default.enable":"Enable default exclusions","search.replaceAll.label":"Replace All","search.replace.label":"Replace","search.files.result":"{0} results found in {1} files","search.CollapseDeepestExpandedLevelAction.label":"Collapse All","search.ExpandDeepestExpandedLevelAction.label":"Expand All","search.ClearSearchResultsAction.label":"Clear Search Results","search.RefreshAction.label":"Refresh","search.removeAll.occurrences.files.confirmation.message":"Are you sure to replace {0} of the {1} files","search.removeAll.occurrences.file.confirmation.message":"Are you sure to replace the {0} results in this file?","search.result.hide":"Hide","search.menu.copyAll":"Copy All","search.help.showIncludeRule":"View syntax rules","search.help.supportRule":"Support the following syntax rules:","search.help.excludeList":"Excluded items include:","search.help.concatRule":"Multiple conditional separation","search.help.matchOneOrMoreRule":"To match one or more characters in a path segment","search.help.matchOne":"To match on one character in a path segment","search.help.matchAny":"To match any number of path segments, including none","search.help.matchWithGroup":"To group conditions","search.help.matchRange":"To declare a range of characters to match","search.help.modify":"Modify","search.replace.buttonOK":"Replace","search.replace.buttonCancel":"Cancel","search.too.many.results":"Because your search terms are too loose, we only show some search results","search.fileReplaceChanges":"{0} \u2194 {1} (Replace Preview)","search.fileResults":"File results","search.fileResults.notfound":"No files matching","search.fileSymbolResults":"symbols ({0})","search.fileSymbolResults.notfound":"No symbols matching","search.historyMatches":"Recently Opened","search.replaceAll.occurrencesMessage":"Replaced {0} occurrences across {1} files with '{2}'.","search.replace.toggle.button.title":"Toggle Replace","search.caseDescription":"Match Case","search.wordsDescription":"Match Whole Word","search.regexDescription":"Use Regular Expression","search.includeIgnoredFiles":"Include Ignored Files","search.onlyOpenEditors":"Search only in Open Editors","search.noResultsFound":"No results found. Review your settings for configured exclusions and ignore files","quickopen.recent-commands":"recently used","quickopen.other-commands":"other commands","quickopen.commands.notfound":"No commands matchings",mSelection:"Selection","selection.all":"Select All","dialog.confirm":"confirm","dialog.file.name":"File Name","dialog.file.title":"Select Directory:","dialog.file.openLabel":"Open File:","dialog.file.saveLabel":"Save File:","dialog.file.close":"Close","dialog.file.ok":"OK","dialog.ensure":"OK","editorOpenType.code":"Code","editorOpenType.preview":"Preview","scm.title":"Source Control","scm.action.git.refresh":"Refresh","scm.action.git.commit":"Commit","scm.action.git.more":"More Actions","scm.statusbar.repo":"Repo","scm.provider.title":"Source Control Providers","scm.provider.empty":"No source control providers registered.","scm.provider.init":"Click to initialize a repository","scm.diff.change.next":"Next Change","scm.diff.change.previous":"Previous Change","scm.diff.toggle.renderSideBySide":"Toggle Inline View","scm.dirtyDiff.changes":"{0} of {1} changes","debug.action.add.smartAddConfiguration":"Smart Add Configuration","debug.action.add.configuration":"Add Configuration","debug.action.edit.configuration":"Edit Configuration","debug.action.open.launch.editor":"Open Launch Editor UI","debug.action.no.configuration":"No Configurations","debug.action.start":"Start Debugging","debug.action.open.configuration":"Open launch.json","debug.action.debug.console":"Debug Console","debug.action.step-into":"Step Into","debug.action.step-over":"Step Over","debug.action.step-out":"Step Out","debug.action.restart":"Restart","debug.action.pause":"Pause","debug.action.stop":"Stop","debug.action.disattach":"Disattach","debug.action.runToCursor":"Run to Cursor","debug.action.forceRunToCursor":"Force Run to Cursor","debug.breakpoint.toggle":"Enable/Disable Breakpoints","debug.breakpoint.removeAll":"Remove All Breakpoints","debug.breakpoint.uncaughtExceptions":"Uncaught Exceptions","debug.breakpoint.allExceptions":"All Exceptions","debug.watch.removeAll":"Remove All Expression","debug.watch.collapseAll":"Collapse All Expression","debug.watch.add":"Add Expression","debug.watch.notAvailable":"not available","debug.watch.edit":"Edit Expression","debug.watch.copyValue":"Copy Value","debug.watch.remove":"Remove Expression","debug.action.continue":"Continue","debug.console.panel.title":"Debug Console","debug.console.panel.default":"default","debug.console.filter.placeholder":"Filter (e.g. text, !exclude)","debug.console.clear":"Clear","debug.console.copy":"Copy","debug.console.copyAll":"Copy All","debug.console.collapseAll":"Collapse All","debug.console.followLink":"{0} + click to follow link","debug.console.input.placeholder":"Please start a debug session to evaluate expressions","debug.console.errorMessage":"Debug session initialization failed. See console for details.","debug.console.consoleCleared":"Console was cleared","debug.notSupported.type":'Debug type "{0}" is not supported, please check your launch config.',"debug.notSupported.any":"Debug is not supported, please check your launch config.","debug.stack.loadMore":"Load All Stack Frames","debug.stack.loading":"Loading...","debug.stack.showMoreAndOrigin":"Show {0} More: {1}","debug.breakpoint.deactive":"Deactivate Breakpoints","debug.breakpoint.active":"Activate Breakpoints","debug.threads.title":"THREADS","debug.watch.title":"WATCH","debug.callStack.title":"CALL STACK","debug.variables.title":"VARIABLES","debug.variables.view.memory":"View Binary Data","debug.variables.view.memory.prompt.hexEditor.notInstalled":"Inspecting binary data requires the Hex Editor extension.","debug.breakpoints.title":"BREAKPOINTS","debug.container.title":"Debug","debug.breakpoint.breakpointMessage":"Breakpoint","debug.breakpoint.logpointMessage":"Logpoint","debug.breakpoint.conditionalMessage":"Conditional Breakpoint","debug.breakpoint.unverified":"Unverified ","debug.breakpoint.disabled":"Disabled ","debug.breakpoint.blank":"Blank","debug.configuration.selectAutomaticDebugTypesHint":"Automatic Configuration","debug.configuration.selectAutomaticDebugTypes":"Select a Debug Type","debug.configuration.selectAutomaticDebugConfiguration":"Select a DebugConfiguration","debug.configuration.comment1":"Use IntelliSense to learn about possible attributes.","debug.configuration.comment2":"Hover to view descriptions of existing attributes.","debug.configuration.comment3":"For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387","debug.launch.existed":'Debug configuration "{0}" is already running',"debug.expression.log.placeholder":'Message to log when breakpoint is hit. Expressions within {} are interpolated. Press "Enter" to confirm and "Esc" to cancel.',"debug.expression.hit.placeholder":'Break when hit count condition is met. Press "Enter" to confirm and "Esc" to cancel.',"debug.expression.condition.placeholder":'Break when the expression evaluates to true. Press "Enter" to confirm and "Esc" to cancel.',"debug.expression.condition":"Expression","debug.expression.hitCondition":"Hit Count","debug.expression.logMessage":"Log Message","debug.menu.delete.breakpoint":"Delete Breakpoint","debug.menu.edit.breakpoint":"Edit Breakpoint","debug.menu.disable.breakpoint":"Disable Breakpoint","debug.menu.enable.breakpoint":"Enable Breakpoint","debug.menu.add.logpoint":"Add Log breakpoint","debug.menu.add.conditional":"Add Condition Breakpoint","debug.menu.add.breakpoint":"Add Breakpoint","debug.menu.disable.logpoint":"Disable Log Breakpoint","debug.menu.title.run":"Run or Debug...","debug.stack.frame.noSource":"Unknown","debug.stack.frame.because":"Because Of","debug.stack.frame.stopped":"Stopped","debug.stack.frame.running":"Running","debug.launch.configurations.debugType":"Type of configuration.","debug.launch.configurations.debugTypeNotRecognised":"The debug type is not recognized. Make sure that you have a corresponding debug extension installed and that it is enabled.","debug.launch.configurations.node2NotSupported":'"node2" is no longer supported, use "node" instead and set the "protocol" attribute to "inspector".',"debug.launch.configurations.debugName":"Name of configuration; appears in the launch configuration drop down menu.","debug.launch.configurations.debugRequest":'Request type of configuration. Can be "launch" or "attach".',"debug.launch.configurations.debugServer":"For debug extension development only: if a port is specified VS Code tries to connect to a debug adapter running in server mode","debug.launch.configurations.debugPrelaunchTask":"Task to run before debug session starts.","debug.launch.configurations.debugPostDebugTask":"Task to run after debug session ends.","debug.launch.configurations.debugWindowsConfiguration":"Windows specific launch configuration attributes.","debug.launch.configurations.debugOSXConfiguration":"OS X specific launch configuration attributes.","debug.launch.configurations.debugLinuxConfiguration":"Linux specific launch configuration attributes.","debug.launch.typeNotSupported":'The debug session type "{0}" is not supported.',"debug.launch.catchError":"There was an error starting the debug session, check the logs for more details.","debug.launch.view.template.button.addItem":"Add items","debug.launch.view.template.input.placeholder":"Please enter {0}","debug.launch.view.template.button.submit":"Add new configuration item","debug.launch.view.edit.inLaunchJson":"Edit in launch.json","debug.widget.exception.thrownWithId":"Exception has occurred: {0}","debug.widget.exception.thrown":"Exception has occurred.","output.tabbar.title":"Output","output.channel.none":"<no output yet>","output.configurationTitle":"Output settings","output.logWhenNoPanel":"Whether to output to the browser when no available panel","output.maxChannelLine":"Max channel message line length","output.maxChannelLineDesc":"Max channel message line length","output.enableLogHighlight":"Enable/disable Log Highlight","output.enableLogHighlightDesc":"Use Log language to tokenization log text, vscode-log extension is required","output.enableSmartScroll":"Enable/disable Smart scrolling","output.enableSmartScrollDesc":"Smart scrolling allows you to lock scrolling automatically when you click in the output view and unlocks when you click in the last line.","preference.menubar.mode.compact":"Controls whether the menu bar uses compact mode","preference.explorer.confirm.delete":"Controls whether the explorer should ask for confirmation when deleting a file via trash","preference.explorer.confirm.move":"Controls whether the explorer should ask for confirmation when moving a file","preference.files.watcherExclude":"Configure glob patterns of file paths to exclude from file watching. Patterns must match on absolute paths (i.e. prefix with ** or the full path to match properly). Changing this setting requires a restart. When you experience Code consuming lots of cpu time on startup, you can exclude large folders to reduce the initial load.","preference.files.exclude":"Configure glob patterns for excluding files and folders. For example, the files explorer decides which files and folders to show or hide based on this setting.","preference.search.exclude":"Configure glob patterns for excluding files and folders in searches. Inherits all glob patterns from the `#files.exclude#` setting.","preference.search.include":"Configure glob patterns for including files and folders in searches.","preference.files.watcherExclude.title":"Exclusion file watch `files.watcherExclude`","preference.search.exclude.title":"Search exclusion file `search.exclude`","preference.search.useReplacePreview":"Controls whether to open Replace Preview when selecting or replacing a match.","preference.search.searchOnType":"Controls whether to search as you type","preference.search.searchOnTypeDebouncePeriod":"Controls the debounce period of search as you type in milliseconds.","preference.files.exclude.title":"Exclude file display `files.exclude`","preference.array.additem":"Add","preference.files.associations.title":"File Association","preference.files.associations":'Configure file associations to languages (e.g. "*.extension": "html"). These have precedence over the default associations of the languages installed.',"preference.files.encoding.title":"File Encoding","preference.files.encoding":"The default character set encoding to use when reading and writing files.","preference.files.autoGuessEncoding":"When enabled, the editor will attempt to guess the character set encoding when opening files. This setting can also be configured per language.","preference.files.autoGuessEncoding.title":"Auto Guess Encoding","preference.explorer.fileTree.indent.title":"Explorer: FileTree Indent","preference.explorer.fileTree.baseIndent.title":"Explorer: FileTree BaseIndent","preference.explorer.compactFolders.title":"Explorer: Compact Mode","preference.explorer.compactFolders":"Controls whether the explorer should render folders in a compact form. In such a form, single child folders will be compressed in a combined tree element. Useful for Java package structures, for example.","preference.explorer.autoReveal":"Controls whether the explorer should automatically reveal and select files when opening them.","preference.editorTitle.openSource":"Open Setting (JSON)","preference.editorTitle.openUserSource":"Open User Setting (JSON)","preference.editorTitle.openWorkspaceSource":"Open Workspace Setting (JSON)","preference.editorTitle.openPreference":"Open Setting","preference.view.saveLayoutWithWorkspace.title":"Controls whether the layout should bind with workspace","preference.stringArray.operate.delete":"Delete","preference.stringArray.operate.edit":"Edit","preference.stringArray.operate.editTip":"Press \u21B2","preference.stringArray.none":"None","preference.enum.default":"Default","preference.terminal.type":"Default Shell Type","preference.terminal.typeDesc":"To change the default type of create a new terminal","preference.terminal.fontFamily":"Terminal > Font Family","preference.terminal.fontSize":"Terminal > Font Size","preference.terminal.fontWeight":"Terminal > Font Weight","preference.terminal.lineHeight":"Terminal > Line Height","preference.terminal.cursorBlink":"Terminal > Cursor Blink","preference.terminal.scrollback":"Terminal > Cursor Scrollback","preference.terminal.integrated.shellArgs.linux":"Terminal > Shell Args Linux","preference.terminal.integrated.shellArgs.linuxDesc":"The command line arguments to use when on the Linux terminal. ","preference.terminal.integrated.copyOnSelection":"Terminal > Copy On Selection","preference.terminal.integrated.copyOnSelectionDesc":"Controls whether text selected in the terminal will be copied to the clipboard.","preference.terminal.integrated.localEchoEnabled":"Terminal > Local Echo","preference.terminal.integrated.localEchoDesc":"When local echo should be enabled.","preference.terminal.integrated.localEchoLatencyThreshold":"Local Echo Latency Threshold","preference.terminal.integrated.localEchoLatencyThresholdDesc":"Length of network delay, in milliseconds, where local edits will be echoed on the terminal without waiting for server acknowledgement. If '0', local echo will always be on, and if '-1' it will be disabled.","preference.terminal.integrated.localEchoExcludePrograms":"Local Echo Exclude Programs","preference.terminal.integrated.localEchoExcludeProgramsDesc":"Local echo will be disabled when any of these program names are found in the terminal title.","preference.terminal.integrated.localEchoStyle":"Local Echo Style","preference.terminal.integrated.localEchoStyleDesc":"Terminal style of locally echoed text; either a font style or an RGB color.","preference.terminal.integrated.xtermRenderType":"Xterm Render Type","preference.terminal.integrated.xtermRenderTypeDesc":"Choose Xterm render type, Webgl for better performance, Canvas better compatibility","preference.terminal.integrated.enablePersistentSessionDesc":"Persist terminal sessions/history for the workspace across window reloads.","preference.terminal.integrated.cursorStyle":"Terminal > Cursor Style","preference.terminal.integrated.cursorStyleDesc":"Control the style of terminal cursor","common.preference.open":"Settings","common.keymaps.open":"Keyboard Shortcut","common.about":"About","common.find":"Find","common.replace":"Replace","common.remoteMode":"Remote Mode","component.message.origin":"Origin","component.modal.okText":"OK","component.modal.cancelText":"Cancel","component.modal.justOkText":"OK","preference.tab.user":"User","preference.tab.workspace":"Workspace","settings.group.general":"General","settings.group.shortcut":"Shortcut","settings.group.editor":"Editor","settings.group.extension":"Extensions","settings.group.feature":"Feature","settings.group.view":"View","settings.group.terminal":"Terminal","preference.general.theme":"Theme","preference.general.icon":"File Icon Theme","preference.general.productIconTheme":"Product Icon Theme","preference.workbench.colorCustomizations":"Overwrite colors of current color theme","preference.general.language":"Language","preference.general.language.change.refresh.info":"After changing the language, it should be restarted to take effect. Will it be refreshed immediately?","preference.general.language.change.refresh.now":"Refresh","preference.general.language.change.refresh.later":"Later","preference.debug.internalConsoleOptions":"Controls when the internal debug console should open.","preference.debug.openDebug":"Controls when the debug view should open.","preference.debug.debugViewLocation":"Controls the location of the debug view.","preference.debug.trace":"Enable/disable tracing communications with debug adapters.","preference.debug.allowBreakpointsEverywhere":"Allow setting breakpoints in any file.","preference.debug.toolbar.float.title":"Run And Debug: Float Mode","preference.debug.toolbar.float":"Float mode","preference.debug.console.filter.mode":"Debug console filter mode","preference.debug.console.filter.mode.filter":"filter","preference.debug.console.filter.mode.matcher":"matcher","preference.debug.console.wordWrap":"Controls if the lines should wrap in the debug console.","preference.debug.inline.values":"Show variable values inline in editor while debugging.","preference.debug.breakpoint.editorHint":"After enabling, there will be a background color blinking prompt when clicking on the breakpoint list to jump to the editor.","preference.debug.breakpoint.showBreakpointsInOverviewRuler":"Controls whether breakpoints should be shown in the overview ruler.","preference.workbench.refactoringChanges.showPreviewStrategy":"Show preview confirm when triggering some refactoring changes","preference.workbench.refactoringChanges.showPreviewStrategy.title":"Refactor Confirm","preference.tab.name":"Settings","preference.noResults":"No Setting Found Containing '{0}'","preference.empty":"Loading Settings...","preference.editSettingsJson":"Edit in settings.json","preference.overwritten":"(Overwritten by next scope)","preference.overwrittenInUser":"(Modified in User Settings)","preference.overwrittenInWorkspace":"(Modified in Workspace Settings)","preference.searchPlaceholder":"Search Settings...","preference.editor.formatOnSave":"Enable format on manual save.","preference.editor.formatOnSaveTimeout":"Timeout in milliseconds after which the formatting that is run on file save is cancelled.","preference.editor.formatOnSaveTimeoutError":"Aborted format on save after ${0}ms","preference.editor.maxTokenizationLineLength":"Max Tokenization Line Length","preference.editor.quickSuggestionsDelay":"Quick suggestions show delay (in ms) Defaults to 10 (ms)","preference.editor.largeFile":"Large File Size","preference.editor.streamLargeFile":"Use Stream For Large File","preference.editor.formatOnPaste":"Format On Paste","preference.files.eol":"EOL","preference.files.trimFinalNewlines":"Trim Final Newlines","preference.files.trimTrailingWhitespace":"Trim Trailing Whitespace","preference.files.insertFinalNewline":"Insert Final Newline","preference.editor.lineHeight":"Line Height","preference.editor.saveCodeActions":"Code Actions On Save","preference.editor.saveCodeActionsNotification":"Whether to notify when code operations run at save time","keymaps.tab.name":"Keyboard Shortcuts","preference.editor.wrapTab":"Wrap Editor Tabs","preference.editor.preferredFormatter":"Default Formatter","preference.editor.fontFamily":"Font Family","preference.editor.minimap":"minimap","preference.editor.forceReadOnly":"readOnly","preference.editor.renderLineHighlight":"Render Line Highlight","preference.editor.askIfDiff":"Error If File On Disk is newer","preference.editor.autoSave":"Editor Auto Save","preference.editor.autoSaveDelay":"Auto Save Delay","preference.editor.detectIndentation":"Auto Detect Indentation","preference.editor.bracketPairColorization.enabled":"Bracket Pair Colorization","preference.editor.fontWeight":"Font Weight","preference.editor.wordWrap":"Word Wrap","preference.editor.wordWrapColumn":"Word Wrap Length","preference.item.notValid":"{0} is not a valid option","editor.configuration.formatOnSaveTimeout":"Control the timeout time of formatting (ms). Effective Only when `#editor.formatOnSave#` enables.","editor.configuration.enablePreviewFromCodeNavigation":"Controls whether editors remain in preview when a code navigation is started from them. Preview editors do not keep open and are reused until explicitly set to be kept open (e.g. via double click or editing). This value is ignored when `#workbench.editor.enablePreview#` is disabled.","editor.configuration.wrapTab":"Controls whether to wrap editor tabs instead of scroll mode when tabs are beyond the visible area.","editor.configuration.askIfDiff":"When saving files, throw error if the file on disk has a newer version.","editor.configuration.autoSave":"Controls how dirty files are auto saved.","editor.configuration.autoSaveDelay":"Controls the delay in ms after which a dirty file is saved automatically. Only applies when `#editor.formatOnSave#` is set to 'Save After Delay'.","editor.configuration.forceReadOnly":"If Enable readOnly","editor.configuration.largeFileSize":"Custom size of the large file (B)","editor.configuration.streamLargeFile":"Read large files via stream when file size exceeds the configured threshold.","editor.configuration.fontFamily":"Controls the font family.","editor.configuration.fontWeight":'Controls the font weight. Accepts "normal" and "bold" keywords or numbers between 1 and 1000.',"editor.configuration.lineDecorationsWidth":'The width reserved for line decorations (in px). Line decorations are placed between line numbers and the editor content. You can pass in a string in the format floating point followed by "ch". e.g. 1.3ch. Defaults to 10.',"editor.configuration.lineNumbersMinChars":"Control the width of line numbers, by reserving horizontal space for rendering at least an amount of digits. Defaults to 5.","editor.configuration.wordWrapBreakBeforeCharacters":"Configure word wrapping characters. A break will be introduced before these characters. Defaults to '([{\u2018\u201C\u3008\u300A\u300C\u300E\u3010\u3014\uFF08\uFF3B\uFF5B\uFF62\xA3\xA5\uFF04\uFFE1\uFFE5+\uFF0B'.","editor.configuration.wrappingStrategy":"Controls the algorithm that computes wrapping points.","editor.configuration.wordWrapBreakAfterCharacters":"Configure word wrapping characters. A break will be introduced after these characters. Defaults to ' })]?|/&.,;\xA2\xB0\u2032\u2033\u2030\u2103\u3001\u3002\uFF61\uFF64\uFFE0\uFF0C\uFF0E\uFF1A\uFF1B\uFF1F\uFF01\uFF05\u30FB\uFF65\u309D\u309E\u30FD\u30FE\u30FC\u30A1\u30A3\u30A5\u30A7\u30A9\u30C3\u30E3\u30E5\u30E7\u30EE\u30F5\u30F6\u3041\u3043\u3045\u3047\u3049\u3063\u3083\u3085\u3087\u308E\u3095\u3096\u31F0\u31F1\u31F2\u31F3\u31F4\u31F5\u31F6\u31F7\u31F8\u31F9\u31FA\u31FB\u31FC\u31FD\u31FE\u31FF\u3005\u303B\uFF67\uFF68\uFF69\uFF6A\uFF6B\uFF6C\uFF6D\uFF6E\uFF6F\uFF70\u201D\u3009\u300B\u300D\u300F\u3011\u3015\uFF09\uFF3D\uFF5D\uFF63'.","editor.configuration.wordWrapMinified":"Force word wrapping when the text appears to be of a minified/generated file. Defaults to true.","editor.configuration.selectOnLineNumbers":"Should the corresponding line be selected when clicking on the line number? Defaults to true.","editor.configuration.revealHorizontalRightPadding":"When revealing the cursor, a virtual padding (px) is added to the cursor, turning it into a rectangle. This virtual padding ensures that the cursor gets revealed before hitting the edge of the viewport. Defaults to 30 (px).","editor.configuration.fixedOverflowWidgets":"Display overflow widgets as fixed.","editor.configuration.extraEditorClassName":"Class name to be added to the editor.","editor.configuration.ariaLabel":"The aria label for the editor's textarea (when it is focused).","editor.configuration.suggest.insertMode":"Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.","editor.configuration.suggest.filterGraceful":"Controls whether filtering and sorting suggestions accounts for small typos.","editor.configuration.suggest.localityBonus":"Controls whether sorting favours words that appear close to the cursor.","editor.configuration.suggest.shareSuggestSelections":"Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `#editor.suggestSelection#`).","editor.configuration.suggest.snippetsPreventQuickSuggestions":"Controls whether an active snippet prevents quick suggestions.","editor.configuration.suggest.showIcons":"Controls whether to show or hide icons in suggestions.","editor.configuration.suggest.maxVisibleSuggestions":"Controls how many suggestions IntelliSense will show before showing a scrollbar (maximum 15).","editor.configuration.suggest.showMethods":"When enabled IntelliSense shows `method`-suggestions.","editor.configuration.suggest.showFunctions":"When enabled IntelliSense shows `function`-suggestions.","editor.configuration.suggest.showConstructors":"When enabled IntelliSense shows `constructor`-suggestions.","editor.configuration.suggest.showFields":"When enabled IntelliSense shows `field`-suggestions.","editor.configuration.suggest.showVariables":"When enabled IntelliSense shows `variable`-suggestions.","editor.configuration.suggest.showClasss":"When enabled IntelliSense shows `class`-suggestions.","editor.configuration.suggest.showStructs":"When enabled IntelliSense shows `struct`-suggestions.","editor.configuration.suggest.showInterfaces":"When enabled IntelliSense shows `interface`-suggestions.","editor.configuration.suggest.showModules":"When enabled IntelliSense shows `module`-suggestions.","editor.configuration.suggest.showPropertys":"When enabled IntelliSense shows `property`-suggestions.","editor.configuration.suggest.showEvents":"When enabled IntelliSense shows `event`-suggestions.","editor.configuration.suggest.showOperators":"When enabled IntelliSense shows `operator`-suggestions.","editor.configuration.suggest.showUnits":"When enabled IntelliSense shows `unit`-suggestions.","editor.configuration.suggest.showValues":"When enabled IntelliSense shows `value`-suggestions.","editor.configuration.suggest.showConstants":"When enabled IntelliSense shows `constant`-suggestions.","editor.configuration.suggest.showEnums":"When enabled IntelliSense shows `enum`-suggestions.","editor.configuration.suggest.showEnumMembers":"When enabled IntelliSense shows `enumMember`-suggestions.","editor.configuration.suggest.showKeywords":"When enabled IntelliSense shows `keyword`-suggestions.","editor.configuration.suggest.showTexts":"When enabled IntelliSense shows `text`-suggestions.","editor.configuration.suggest.showColors":"When enabled IntelliSense shows `color`-suggestions.","editor.configuration.suggest.showFiles":"When enabled IntelliSense shows `file`-suggestions.","editor.configuration.suggest.showReferences":"When enabled IntelliSense shows `reference`-suggestions.","editor.configuration.suggest.showCustomcolors":"When enabled IntelliSense shows `customcolor`-suggestions.","editor.configuration.suggest.showFolders":"When enabled IntelliSense shows `folder`-suggestions.","editor.configuration.suggest.showTypeParameters":"When enabled IntelliSense shows `typeParameter`-suggestions.","editor.configuration.suggest.showSnippets":"When enabled IntelliSense shows `snippet`-suggestions.","editor.configuration.suggest.showUsers":"When enabled IntelliSense shows `user`-suggestions.","editor.configuration.suggest.showIssues":"When enabled IntelliSense shows `issues`-suggestions.","editor.configuration.suggest.statusBar.visible":"Controls the visibility of the status bar at the bottom of the suggest widget.","editor.configuration.suggest.preview":"Enable or disable the rendering of the suggestion preview.","editor.configuration.suggest.details.visible":"Controls whether editor code completion expands details by default","editor.configuration.inlineSuggest.enabled":"Enable or disable the rendering of automatic inline completions.","editor.configuration.inlineSuggest.showToolbar":"Controls when to show the inline suggestion toolbar.","editor.configuration.inlineSuggest.showToolbar.always":"Show the inline suggestion toolbar whenever an inline suggestion is shown.","editor.configuration.inlineSuggest.showToolbar.onHover":"Show the inline suggestion toolbar when hovering over an inline suggestion.","editor.configuration.inlineSuggest.showToolbar.never":"Never show the inline suggestion toolbar.","editor.configuration.hover.enabled":"Controls whether the hover is shown.","editor.configuration.hover.delay":"Controls the delay in milliseconds after which the hover is shown.","editor.configuration.hover.sticky":"Controls whether the hover should remain visible when mouse is moved over it.","editor.configuration.hover.hidingDelay":"Controls the delay in milliseconds after which the hover is hidden. Requires `editor.hover.sticky` to be.","editor.configuration.hover.above":"Prefer showing hovers above the line, if there's space.","editor.configuration.experimental.stickyScroll":"Shows the nested current scopes during the scroll at the top of the editor.","editor.configuration.customCodeActionMenu.showHeaders":"Enabling this will show the code action menu with group headers, if the custom code action menu is enabled.","editor.configuration.useCustomCodeActionMenu":"Enabling this adjusts how the code action menu is rendered.","editor.configuration.letterSpacing":"Controls the letter spacing in pixels.","editor.configuration.lineNumbers":"Controls the display of line numbers.","editor.configuration.lineNumbers.off":"Line numbers are not rendered.","editor.configuration.lineNumbers.on":"Line numbers are rendered as absolute number.","editor.configuration.lineNumbers.relative":"Line numbers are rendered as distance in lines to cursor position.","editor.configuration.lineNumbers.interval":"Line numbers are rendered every 10 lines.","editor.configuration.renderFinalNewline":"Render last line number when the file ends with a newline.","editor.configuration.rulers":"Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.","editor.configuration.wordSeparators":"Characters that will be used as word separators when doing word related navigations or operations.","editor.configuration.tabSize":"The number of spaces a tab is equal to. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.","editor.configuration.insertSpaces":"Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when `#editor.detectIndentation#` is on.","editor.configuration.detectIndentation":"Controls whether `#editor.tabSize#` and `#editor.insertSpaces#` will be automatically detected when a file is opened based on the file contents.","editor.configuration.roundedSelection":"Controls whether selections should have rounded corners.","editor.configuration.scrollBeyondLastLine":"Controls whether the editor will scroll beyond the last line.","editor.configuration.scrollBeyondLastColumn":"Controls the number of extra characters beyond which the editor will scroll horizontally.","editor.configuration.smoothScrolling":"Controls whether the editor will scroll using an animation.","editor.configuration.minimap.enabled":"Controls whether the minimap is shown.","editor.configuration.minimap.side":"Controls the side where to render the minimap.","editor.configuration.minimap.showSlider":"Controls whether the minimap slider is automatically hidden.","editor.configuration.minimap.renderCharacters":"Render the actual characters on a line as opposed to color blocks.","editor.configuration.minimap.maxColumn":"Limit the width of the minimap to render at most a certain number of columns.","editor.configuration.find.seedSearchStringFromSelection":"Controls whether the search string in the Find Widget is seeded from the editor selection.","editor.configuration.find.autoFindInSelection":"Controls whether the find operation is carried out on selected text or the entire file in the editor.","editor.configuration.find.globalFindClipboard":"Controls whether the Find Widget should read or modify the shared find clipboard on macOS.","editor.configuration.find.addExtraSpaceOnTop":"Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.","editor.configuration.wordWrap.off":"Lines will never wrap.","editor.configuration.wordWrap.on":"Lines will wrap at the viewport width.","editor.configuration.wordWrap.wordWrapColumn":"Lines will wrap at `#editor.wordWrapColumn#`.","editor.configuration.wordWrap.bounded":"Lines will wrap at the minimum of viewport and `#editor.wordWrapColumn#`.","editor.configuration.wordWrap":"Controls how lines should wrap.","editor.configuration.wordWrapColumn":"Controls the wrapping column of the editor when `#editor.wordWrap#` is `wordWrapColumn` or `bounded`.","editor.configuration.wrappingIndent.none":"No indentation. Wrapped lines begin at column 1.","editor.configuration.wrappingIndent.same":"Wrapped lines get the same indentation as the parent.","editor.configuration.wrappingIndent.indent":"Wrapped lines get +1 indentation toward the parent.","editor.configuration.wrappingIndent.deepIndent":"Wrapped lines get +2 indentation toward the parent.","editor.configuration.wrappingIndent":"Controls the indentation of wrapped lines.","editor.configuration.mouseWheelScrollSensitivity":"A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.","editor.configuration.fastScrollSensitivity":"Scrolling speed multiplier when pressing `Alt`.","editor.configuration.multiCursorModifier.ctrlCmd":"Maps to `Control` on Windows and Linux and to `Command` on macOS.","editor.configuration.multiCursorModifier.alt":"Maps to `Alt` on Windows and Linux and to `Option` on macOS.","editor.configuration.multiCursorMergeOverlapping":"Merge multiple cursors when they are overlapping.","editor.configuration.quickSuggestions.strings":"Enable quick suggestions inside strings.","editor.configuration.quickSuggestions.comments":"Enable quick suggestions inside comments.","editor.configuration.quickSuggestions.other":"Enable quick suggestions outside of strings and comments.","editor.configuration.quickSuggestions":"Controls whether suggestions should automatically show up while typing.","editor.configuration.quickSuggestionsDelay":"Controls the delay in milliseconds after which quick suggestions will show up.","editor.configuration.parameterHints.enabled":"Enables a pop-up that shows parameter documentation and type information as you type.","editor.configuration.parameterHints.cycle":"Controls whether the parameter hints menu cycles or closes when reaching the end of the list.","editor.configuration.autoClosingBrackets.languageDefined":"Use language configurations to determine when to autoclose brackets.","editor.configuration.autoClosingBrackets.beforeWhitespace":"Autoclose brackets only when the cursor is to the left of whitespace.","editor.configuration.autoClosingBrackets":"Controls whether the editor should automatically close brackets after the user adds an opening bracket.","editor.configuration.autoClosingQuotes.languageDefined":"Use language configurations to determine when to autoclose quotes.","editor.configuration.autoClosingQuotes.beforeWhitespace":"Autoclose quotes only when the cursor is to the left of whitespace.","editor.configuration.autoClosingQuotes":"Controls whether the editor should automatically close quotes after the user adds an opening quote.","editor.configuration.autoSurround.languageDefined":"Use language configurations to determine when to automatically surround selections.","editor.configuration.autoSurround.brackets":"Surround with brackets but not quotes.","editor.configuration.autoSurround.quotes":"Surround with quotes but not brackets.","editor.configuration.autoSurround":"Controls whether the editor should automatically surround selections.","editor.configuration.formatOnType":"Controls whether the editor should automatically format the line after typing.","editor.configuration.formatOnPaste":"Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.","editor.configuration.autoIndent":"Controls whether the editor should automatically adjust the indentation when users type, paste or move lines. Extensions with indentation rules of the language must be available.","editor.configuration.suggestOnTriggerCharacters":"Controls whether suggestions should automatically show up when typing trigger characters.","editor.configuration.acceptSuggestionOnEnterSmart":"Only accept a suggestion with `Enter` when it makes a textual change.","editor.configuration.acceptSuggestionOnEnter":"Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.","editor.configuration.acceptSuggestionOnCommitCharacter":"Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.","editor.configuration.snippetSuggestions.top":"Show snippet suggestions on top of other suggestions.","editor.configuration.snippetSuggestions.bottom":"Show snippet suggestions below other suggestions.","editor.configuration.snippetSuggestions.inline":"Show snippets suggestions with other suggestions.","editor.configuration.snippetSuggestions.none":"Do not show snippet suggestions.","editor.configuration.snippetSuggestions":"Controls whether snippets are shown with other suggestions and how they are sorted.","editor.configuration.emptySelectionClipboard":"Controls whether copying without a selection copies the current line.","editor.configuration.copyWithSyntaxHighlighting":"Controls whether syntax highlighting should be copied into the clipboard.","editor.configuration.wordBasedSuggestions":"Controls whether completions should be computed based on words in the document.","editor.configuration.suggestSelection.first":"Always select the first suggestion.","editor.configuration.suggestSelection.recentlyUsed":"Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently.","editor.configuration.suggestSelection.recentlyUsedByPrefix":"Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.","editor.configuration.suggestSelection":"Controls how suggestions are pre-selected when showing the suggest list.","editor.configuration.suggestFontSize":"Font size for the suggest widget. When set to `0`, the value of `#editor.fontSize#` is used.","editor.configuration.suggestLineHeight":"Line height for the suggest widget. When set to `0`, the value of `#editor.lineHeight#` is used.","editor.configuration.tabCompletion.on":"Tab complete will insert the best matching suggestion when pressing tab.","editor.configuration.tabCompletion.off":"Disable tab completions.","editor.configuration.tabCompletion.onlySnippets":"Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.","editor.configuration.tabCompletion":"Enables tab completions.","editor.configuration.suggest.filtered":"Controls whether some suggestion types should be filtered from IntelliSense. A list of suggestion types can be found here: https://code.visualstudio.com/docs/editor/intellisense#_types-of-completions.","editor.configuration.suggest.filtered.method":"When set to `false` IntelliSense never shows `method` suggestions.","editor.configuration.suggest.filtered.function":"When set to `false` IntelliSense never shows `function` suggestions.","editor.configuration.suggest.filtered.constructor":"When set to `false` IntelliSense never shows `constructor` suggestions.","editor.configuration.suggest.filtered.field":"When set to `false` IntelliSense never shows `field` suggestions.","editor.configuration.suggest.filtered.variable":"When set to `false` IntelliSense never shows `variable` suggestions.","editor.configuration.suggest.filtered.class":"When set to `false` IntelliSense never shows `class` suggestions.","editor.configuration.suggest.filtered.struct":"When set to `false` IntelliSense never shows `struct` suggestions.","editor.configuration.suggest.filtered.interface":"When set to `false` IntelliSense never shows `interface` suggestions.","editor.configuration.suggest.filtered.module":"When set to `false` IntelliSense never shows `module` suggestions.","editor.configuration.suggest.filtered.property":"When set to `false` IntelliSense never shows `property` suggestions.","editor.configuration.suggest.filtered.event":"When set to `false` IntelliSense never shows `event` suggestions.","editor.configuration.suggest.filtered.operator":"When set to `false` IntelliSense never shows `operator` suggestions.","editor.configuration.suggest.filtered.unit":"When set to `false` IntelliSense never shows `unit` suggestions.","editor.configuration.suggest.filtered.value":"When set to `false` IntelliSense never shows `value` suggestions.","editor.configuration.suggest.filtered.constant":"When set to `false` IntelliSense never shows `constant` suggestions.","editor.configuration.suggest.filtered.enum":"When set to `false` IntelliSense never shows `enum` suggestions.","editor.configuration.suggest.filtered.enumMember":"When set to `false` IntelliSense never shows `enumMember` suggestions.","editor.configuration.suggest.filtered.keyword":"When set to `false` IntelliSense never shows `keyword` suggestions.","editor.configuration.suggest.filtered.text":"When set to `false` IntelliSense never shows `text` suggestions.","editor.configuration.suggest.filtered.color":"When set to `false` IntelliSense never shows `color` suggestions.","editor.configuration.suggest.filtered.file":"When set to `false` IntelliSense never shows `file` suggestions.","editor.configuration.suggest.filtered.reference":"When set to `false` IntelliSense never shows `reference` suggestions.","editor.configuration.suggest.filtered.customcolor":"When set to `false` IntelliSense never shows `customcolor` suggestions.","editor.configuration.suggest.filtered.folder":"When set to `false` IntelliSense never shows `folder` suggestions.","editor.configuration.suggest.filtered.typeParameter":"When set to `false` IntelliSense never shows `typeParameter` suggestions.","editor.configuration.suggest.filtered.snippet":"When set to `false` IntelliSense never shows `snippet` suggestions.","editor.configuration.editor.gotoLocation.multiple":"Controls the behavior of 'Go To' commands, like Go To Definition, when multiple target locations exist.","editor.configuration.gotoLocation.multiple.peek":"Show peek view of the results (default)","editor.configuration.gotoLocation.multiple.gotoAndPeek":"Go to the primary result and show a peek view","editor.configuration.gotoLocation.multiple.goto":"Go to the primary result and enable peek-less navigation to others","editor.configuration.selectionHighlight":"Controls whether the editor should highlight matches similar to the selection.","editor.configuration.occurrencesHighlight":"Controls whether the editor should highlight semantic symbol occurrences.","editor.configuration.overviewRulerLanes":"Controls the number of decorations that can show up at the same position in the overview ruler.","editor.configuration.overviewRulerBorder":"Controls whether a border should be drawn around the overview ruler.","editor.configuration.cursorBlinking":"Control the cursor animation style.","editor.configuration.mouseWheelZoom":"Zoom the font of the editor when using mouse wheel and holding `Ctrl`.","editor.configuration.cursorSmoothCaretAnimation":"Controls whether the smooth caret animation should be enabled.","editor.configuration.cursorStyle":"Controls the cursor style.","editor.configuration.cursorWidth":"Controls the width of the cursor when `#editor.cursorStyle#` is set to `line`.","editor.configuration.fontLigatures":"Enables/Disables font ligatures.","editor.configuration.hideCursorInOverviewRuler":"Controls whether the cursor should be hidden in the overview ruler.","editor.configuration.renderWhitespace.boundary":"Render whitespace characters except for single spaces between words.","editor.configuration.renderWhitespace.selection":"Render whitespace characters only on selected text.","editor.configuration.renderWhitespace":"Controls how the editor should render whitespace characters.","editor.configuration.rename.enablePreview":"Enable/disable the ability to preview changes before renaming","editor.configuration.renderControlCharacters":"Controls whether the editor should render control characters.","editor.configuration.guides.indentation":"Controls whether the editor should render indent guides.","editor.configuration.guides.highlightActiveIndentation":"Controls whether the editor should highlight the active indent guide.","editor.configuration.guides.bracketPairs":"Controls whether bracket pair guides are enabled or not.","editor.configuration.renderLineHighlight.all":"Highlights both the gutter and the current line.","editor.configuration.renderLineHighlight":"Controls how the editor should render the current line highlight.","editor.configuration.codeLens":"Controls whether the editor shows CodeLens.","editor.configuration.folding":"Controls whether the editor has code folding enabled.","editor.configuration.foldingStrategy":"Controls the strategy for computing folding ranges. `auto` uses a language specific folding strategy, if available. `indentation` uses the indentation based folding strategy.","editor.configuration.showFoldingControls":"Controls whether the fold controls on the gutter are automatically hidden.","editor.configuration.matchBrackets":"Highlight matching brackets when one of them is selected.","editor.configuration.glyphMargin":"Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.","editor.configuration.useTabStops":"Inserting and deleting whitespace follows tab stops.","editor.configuration.trimAutoWhitespace":"Remove trailing auto inserted whitespace.","editor.configuration.stablePeek":"Keep peek editors open even when double clicking their content or when hitting `Escape`.","editor.configuration.dragAndDrop":"Controls whether the editor should allow moving selections via drag and drop.","editor.configuration.accessibilitySupport.auto":"The editor will use platform APIs to detect when a Screen Reader is attached.","editor.configuration.accessibilitySupport.on":"The editor will be permanently optimized for usage with a Screen Reader.","editor.configuration.accessibilitySupport.off":"The editor will never be optimized for usage with a Screen Reader.","editor.configuration.accessibilitySupport":"Controls whether the editor should run in a mode where it is optimized for screen readers.","editor.configuration.showUnused":"Controls fading out of unused code.","editor.configuration.comments.insertSpace":"Insert a space after the line comment token and inside the block comments tokens.","editor.configuration.comments.ignoreEmptyLines":"Ignore empty lines when inserting line comments.","editor.configuration.links":"Controls whether the editor should detect links and make them clickable.","editor.configuration.colorDecorators":"Controls whether the editor should render the inline color decorators and color picker.","editor.configuration.lightbulb.enabled":"Enables the code action lightbulb in the editor.","editor.configuration.lightbulb.enabled.off":"Disable the code action menu.","editor.configuration.lightbulb.enabled.onCode":"Show the code action menu when the cursor is on lines with code.","editor.configuration.lightbulb.enabled.on":"Show the code action menu when the cursor is on lines with code or on empty lines.","editor.configuration.maxTokenizationLineLength":"Lines above this length will not be tokenized for performance reasons","editor.configuration.codeActionsOnSave.organizeImports":"Controls whether organize imports action should be run on file save.","editor.configuration.codeActionsOnSave.fixAll":"Controls whether auto fix action should be run on file save.","editor.configuration.codeActionsOnSave":"Code action kinds to be run on save.","editor.configuration.codeActionsOnSaveTimeout":"Timeout in milliseconds after which the code actions that are run on save are cancelled.","editor.configuration.codeActionsOnSaveNotification":"Whether to notify when code operations run at save time.","editor.configuration.selectionClipboard":"Controls whether the Linux primary clipboard should be supported.","editor.configuration.largeFileOptimizations":"Special handling for large files to disable certain memory intensive features.","editor.configuration.renderIndicators":"Controls whether the diff editor shows +/- indicators for added/removed changes.","editor.configuration.defaultFormatter":"Default code formatter","editor.configuration.tokenColorCustomizations":"Overwrite token colors of current color theme","editor.configuration.semanticHighlighting.enabled":"Controls whether the semanticHighlighting is shown for the languages that support it.","editor.configuration.semanticHighlighting.true":"Semantic highlighting enabled for all color themes.","editor.configuration.semanticHighlighting.false":"Semantic highlighting disabled for all color themes.","editor.configuration.semanticHighlighting.configuredByTheme":"Semantic highlighting is configured by the current color theme's `semanticHighlighting` setting.","editor.configuration.experimental.stickyScroll.enabled":"Shows the nested current scopes during the scroll at the top of the editor.","editor.configuration.previewMode":"Enable Preview Mode","editor.configuration.workbench.editorAssociations":'Configure glob patterns to editors (e.g. `"*.hex": "hexEditor.hexEdit"`). These have precedence over the default behavior.',"editor.configuration.preferredFormatter":"Preferred formatter for files","editor.configuration.bracketPairColorization.enabled":"Controls whether bracket pair colorization is enabled or not. Use 'workbench.colorCustomizations' to override the bracket highlight colors.","editor.configuration.mouseBackForwardToNavigate":"Enables the use of mouse buttons four and five for commands 'Go Back' and 'Go Forward'.","editor.configuration.suggest.insertMode.insert":"Insert suggestion without overwriting text right of the cursor.","editor.configuration.suggest.insertMode.replace":"Insert suggestion and overwrite text right of the cursor.","editor.configuration.unicodeHighlight.ambiguousCharacters":"Controls whether characters are highlighted that can be confused with basic ASCII characters, except those that are common in the current user locale.","diffEditor.configuration.renderSideBySide":"Controls whether the diff editor shows the diff side by side or inline.","diffEditor.configuration.ignoreTrimWhitespace":"Controls whether the diff editor shows changes in leading or trailing whitespace as diffs.","diffEditor.action.toggleCollapseUnchangedRegions":"Toggle Collapse Unchanged Regions","multiDiffEditor.action.collapseFiles":"Collapse All Files","multiDiffEditor.action.expandFiles":"Expand All Files","editor.largeFile.prevent":"The file is too large, continuing to open it may cause lag or crash.","editor.autoSave.enum.off":"OFF","editor.autoSave.enum.editorFocusChange":"When editor focus changed","editor.autoSave.enum.afterDelay":"Save after delay","editor.autoSave.enum.windowLostFocus":"When window lost focus","editor.file.prevent.stillOpen":"Open Anyway","editor.workspaceSymbol.quickopen":"Search Workspace Symbol","editor.workspaceSymbolClass.quickopen":"Search Workspace Class Symbol","editor.workspaceSymbol.description":"Go to Symbol in Workspace","editor.workspaceSymbol.search":"Type to search for symbols","editor.workspaceSymbolClass.search":"Type to search for class symbols","editor.workspaceSymbol.notfound":"No symbols matching","editor.workspaceSymbolClass.notfound":"No class symbols matching","preference.diffEditor.renderSideBySide":"Render Side By Side","preference.diffEditor.ignoreTrimWhitespace":"Ignore Trim Whitespace","preference.mergeEditor.autoApplyNonConflictChanges":"Automatically apply non-conflicting changes","validate.tree.emptyFileNameError":"Please provide a file or folder name","validate.tree.fileNameStartsWithSlashError":"File or folder name cannot start with /","validate.tree.fileNameFollowOrStartWithSpaceWarning":"Leading or trailing spaces detected in file or folder name","validate.tree.fileNameExistsError":"File or folder **{0}** already exists. Please use a different name.","validate.tree.invalidFileNameError":"The name **{0}** is not available. Please use a different name.","editor.close.all":"Close All Editors","opened.editors.title":"OPENED EDITORS","opened.editors.save.all":"Save All","opened.editors.close.all":"Close All","opened.editors.close.byGroup":"Close files in the group","opened.editors.save.byGroup":"Save files in the group","opened.editors.empty":"No file is open in the editor","opened.editors.group.title":"GROUP {0}","opened.editors.open":"Open","opened.editors.openToTheSide":"Open To The Side","opened.editors.compare":"Compare With Current File","opened.editors.copyRelativePath":"Copy Relative Path","opened.editors.copyPath":"Copy Path","opened.editors.unsaved":"{0} unsaved","terminal.name":"Terminal","terminal.disconnected":"Terminal Already Disconnected","terminal.can.not.create":"Create Terminal Failed","terminal.can.not.reconnect":"Terminal Unavailable, Please","terminal.stop":"Stop The Terminal","terminal.try.reconnect":"Try To Reconnect The Terminal","terminal.try.recreate":"Try To Recreate The Terminal","terminal.new":"Create Terminal","terminal.new.type":"Create terminal by type","terminal.split":"Split Terminal","terminal.clear":"Remove All Terminals","terminal.clear.content":"Clear All Contents","terminal.independ":"Independent Terminal","terminal.maximum":"Maximum Terminal Panel","terminal.or":"Or","terminal.search":"Search","terminal.search.next":"Search Next","terminal.openWithPath":"Open In Integrated Terminal","terminal.remove":"Kill terminal","terminal.menu.search":"Search","terminal.menu.split":"Split","terminal.menu.rename":"Rename","terminal.menu.selectAll":"Select All","terminal.menu.copy":"Copy","terminal.menu.paste":"Paste","terminal.menu.clear":"Clear","terminal.menu.stop":"Stop","terminal.reconnected.message":"Terminal reconnected; session restarted.","terminal.menu.stopGroup":"Stop Group","terminal.menu.clearGroups":"Clear All Terminals","terminal.menu.selectType":"Default Terminal Type","terminal.menu.moreSettings":"More Settings","terminal.menu.clearCurrentContent":"Clear","terminal.menu.selectCurrentContent":"Select All","terminal.menu.clearAllContents":"Clear All Terminals Content","terminal.menu.selectAllContent":"Select All Terminals Content","terminal.environment.changed":"Extensions have made changes to this terminal's environment","terminal.environment.changes":"Extensions want to make the following changes to the terminal's environment:","terminal.environment.removal":"Extensions want to remove these existing changes from the terminal's environment:","terminal.launchFail.cwdNotDirectory":'Starting directory (cwd) "{0}" is not a directory',"terminal.launchFail.cwdDoesNotExist":'Starting directory (cwd) "{0}" does not exist',"terminal.launchFail.executableIsNotFileOrSymlink":'Path to shell executable "{0}" is not a file or a symlink',"terminal.launchFail.executableDoesNotExist":'Path to shell executable "{0}" does not exist',"terminal.openFile":"Open file in editor","terminal.focusFolder":"Focus folder in explorer","terminal.openFolder":"Open folder in new window","terminal.relaunch":"Relaunch Terminal","terminal.toggleTerminal":"Toggle Terminal","terminal.killProcess":"Kill Process","terminal.process.unHealthy":"*This terminal session has been timed out and killed by the system. Please open a new terminal session to proceed with operations.","terminal.selectCWDForNewTerminal":"Select current working directory for new terminal","terminal.focusNext.inTerminalGroup":"Terminal: Focus Next Terminal in Terminal Group","terminal.focusPrevious.inTerminalGroup":"Terminal: Focus Previous Terminal in Terminal Group","terminal.ai.requesting":"AI Requesting...","terminal.ai.selectHint":"Use keyboard \u2191\u2193 to select a command, \u23CE to confirm command","terminal.ai.thinking":"AI Thinking...","terminal.ai.escClose":"Press ESC to close the dialog","terminal.ai.headerHint":"Use AI to get terminal input suggestions","terminal.ai.inputHint":"Eg. show current process pid","terminal.ai.inputSharpToGetHint":"Type # for AI Suggestions","terminal.ai.cannotGetTerminalConnection":"Cannot establish terminal connection, please provide feedback in the user group","view.command.show":"Show {0}","layout.tabbar.setting":"Open Preference Panel","debugger.menu.setValue":"Set Value","debugger.menu.setValue.param":"Please input the value of this variable","debugger.menu.copyValue":"Copy Value","debugger.menu.copyEvaluatePath":"Copy as Expression","debugger.menu.addToWatchExpressions":"Add to Watch","debugger.menu.restartFrame":"Restart Frame","debugger.menu.copyCallstack":"Copy Call Stack","theme.toggle":"Color Theme","theme.icon.toggle":"File Icon Theme","theme.productIcon.toggle":"Product Icon Theme","theme.base.vs":"Light Theme","theme.base.vs-dark":"Dark Theme","theme.base.hc":"High Contrast Themes","theme.current":"Current","theme.quickopen.plh":"Select Color Theme\uFF08Up/Down Keys to Preview\uFF09","theme.icon.quickopen.plh":"Select Icon Theme\uFF08Up/Down Keys to Preview\uFF09","theme.productIcon.quickopen.plh":"Select Product Icon Theme\uFF08Up/Down Keys to Preview\uFF09","preference.workbench.list.openMode":"Controls how to open items in trees and lists using the mouse (if supported). For parents with children in trees, this setting will control if a single click expands the parent or a double click. Note that some trees and lists might choose to ignore this setting if it is not applicable.","preference.workbench.list.openMode.title":"Tree/List open mode","keymaps.search.placeholder":"Type to search in keybindings","keymaps.search.keyboard.placeholder":"Type to search in keybindings","keymaps.header.command.title":"Command","keymaps.header.source.title":"Source","keymaps.header.keybinding.title":"Keybinding","keymaps.header.when.title":"When","keymaps.source.default":"DEFAULT","keymaps.source.user":"USER","keymaps.source.workspace":"WORKSPACE","keymaps.keybinding.full.collide":'Contains conflict between this shortcut and "{0}" command, please reset',"keymaps.keybinding.partial.collide":'Contains conflict between this shortcut and "{0}" command, please reset',"keymaps.keybinding.shadow.collide":'Contains conflict between this shortcut and "{0}" command, please reset',"keymaps.keybinding.duplicate":"This shortcut is bound to the following {0} commands:","keymaps.keybinding.loading":"Setting keymaps ...","keymaps.keybinding.success":"Setting keymaps success","keymaps.keybinding.fail":"Setting keymaps fail","keymaps.keybinding.require":"keybinding value is required","keymaps.action.edit":"Edit","keymaps.action.add":"Add","keymaps.action.reset":"Reset","keymaps.action.clear":"Clear","keymaps.edit.placeholder":"Press Enter to save","keymaps.editorTitle.openSource":"Open Keymap ShortCut(JSON)","keymaps.editorTitle.openKeymap":"Open Keymap ShortCut","keymaps.commandId.title":"Command ID: {0}","keybinding.combination.tip":"({0}) was pressed, waiting for more keys","layout.tabbar.toggle":"Show/Hide Tab Panel","layout.tabbar.expand":"Maximize Tab Panel","layout.tabbar.retract":"Retract Tab Panel","layout.view.hide":"HIDE","layout.action.openView":"Open View ...","layout.openView.containerTitle":"SideBar / Panel","layout.openView.viewTitle":"{0} / View","marketplace.extension.update.now":"Update now","marketplace.extension.update.delay":"Update later","marketplace.extension.uninstall.failed":"Failed to uninstall","marketplace.extension.uninstall.failed.depended":'Cannot uninstall extension "{0}". Extension "{1}" depends on this.',"marketplace.extension.disabled.failed.depended":'Cannot disable extension "{0}". Extension "{1}" depends on this.',"marketplace.extension.reload.delay":"Restart later","marketplace.extension.reload.now":"Restart now","marketplace.extension.builtin":"Builtin","marketplace.extension.development":"Develop","marketplace.extension.enable":"Enable","marketplace.extension.disable":"Disable","marketplace.extension.enable.workspace":"Enable(workspace)","marketplace.extension.disable.workspace":"Disable(workspace)","marketplace.extension.enable.all":"Enable All Extensions","marketplace.extension.disable.all":"Disable All Extensions","marketplace.extension.install":"Install","marketplace.extension.container":"Extensions","marketplace.extension.empty.disabled":"No disabled extensions yet","marketplace.extension.notfound":"No Extension","marketplace.panel.hot":"Hot Extensions","marketplace.panel.search":"Search","marketplace.panel.enabled":"Enabled","marketplace.panel.disabled":"Disabled","marketplace.panel.tab.marketplace":"Marketplace","marketplace.panel.tab.placeholder.search":"Search from marketplace","marketplace.tab.installed":"Installed","marketplace.panel.tab.placeholder.installed":"Search from installed","marketplace.extension.findUpdate":"Find Extension {0} has new version {1}\uFF0CDo you want to update\uFF1F","marketplace.extension.updateAll":"Find multiple extensions that can be updated. Do you want to update all?","marketplace.extension.needreloadFromAll":"All extensions are updated and will take effect after reload window. Do you want to reload window now?","marketplace.extension.needreload":"Updating extension {0} is completed. Do you want to reload window now?","marketplace.extension.canupdate":"Can update","marketplace.extension.updating":"Updating","marketplace.extension.update":"Update","marketplace.extension.installing":"Installing","marketplace.extension.reloadrequire":"Require reload","marketplace.extension.uninstalling":"Uninstalling","marketplace.extension.uninstall":"Uninstall","marketplace.extension.uninstalled":"Uninstalled","marketplace.extension.readme":"Readme","marketplace.extension.changelog":"Changelog","marketplace.extension.dependencies":"Dependencies","marketplace.extension.otherVersion":"Install Other Version","marketplace.extension.currentVersion":"Current Version","marketplace.extension.installed":"Installed","marketplace.quickopen.install":"Install Extension","marketplace.quickopen.install.byReleaseId":"Install Extension (ReleaseId)","marketplace.quickopen.install.releaseId":"Extension ReleaseId","marketplace.quickopen.install.releaseId.required":"Extension Release ID is required","marketplace.quickopen.install.id":"Extension ID","marketplace.quickopen.install.id.required":"Extension ID is required","marketplace.quickopen.install.version.required":"Extension version is require","marketplace.quickopen.install.version.placeholder":"Extension version","marketplace.quickopen.install.error":"Install Extension has error",saveChangesMessage:"Do you want to save the changes you made to {0}?",saveNFilesChangesMessage:`Do you want to save these changes you made to {0} files?
|
|
33488
33488
|
{1}
|
|
33489
33489
|
|
|
33490
33490
|
Your changes will be lost if you don't save them.`,"file.prompt.dontSave":"Don't Save","file.prompt.save":"Save","file.prompt.cancel":"Cancel","file.prompt.more.one":" and 1 additional file.","file.prompt.more.number":" and {0} additional files.","doc.saveError.failed":"File Saving Failed. Reason: ","doc.saveError.diff":"{0} cannot be saved because it has been modified by other editors.","doc.saveError.diffAndSave":"Compare...","doc.saveError.overwrite":"Overwrite","editor.compareAndSave.title":"{0} (on Disk) <=> {1} (Editing) ","workspace.openDirectory":"Open Directory","workspace.addFolderToWorkspace":"Add Folder to Workspace ...","workspace.removeFolderFromWorkspace":"Remove Folder From Workspace","workspace.saveWorkspaceAsFile":"Save Workspace As ...","workspace.openWorkspace":"Open Workspace","workspace.openWorkspaceTitle":"Workspace","window.toggleDevTools":"Toggle Developer Tools","window.reload":"Reload Window","outline.title":"OutLine","outline.noinfo":"No symbols found in document","outline.nomodel":"There is no outline information","outline.collapse.all":"Collapse All","outline.sort.kind":"Sort By SymbolKind","outline.sort.name":"Sort By SymbolName","outline.sort.position":"Sort By Position","outline.follow.cursor":"Follow Cursor","welcome.title":"Welcome","welcome.quickStart":"Quick Start","welcome.recent.workspace":"Recent Workspaces","welcome.workspace.noExist":"Workspace path not exist","markers.title":"Problems","markers.panel.content.empty":"No problems have been detected in the workspace so far.","markers.panel.filter.errors":"errors","markers.panel.filter.warnings":"warnings","markers.panel.filter.infos":"infos","markers.filter.placeholder":"Filter. E.g.: text, **/*.ts, !**/node_modules/**","markers.filter.content.empty":"No results found with provided filter criteria.","markers.filter.reset":"Clear Filter.","markers.status.no.problems":"No Problems","app.quit":"Quit","view.zoomReset":"Zoom Reset","view.zoomIn":"Zoom In","view.zoomOut":"Zoom Out",tabCompletion:"Enables tab completions.","tabCompletion.off":"Disable tab completions.","tabCompletion.on":"Tab complete will insert the best matching suggestion when pressing tab.","tabCompletion.onlySnippets":"Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.","extension.invalidExthostReload.confirm.content":"Extension Host Process is invalid. Click to refresh to resume the process.","extension.invalidExthostReload.confirm.ok":"Refresh","extension.invalidExthostReload.confirm.cancel":"Ignore and continue to use","extension.crashedExthostReload.confirm":"Extension Host Process is crashed, do you want to restart the process?","extension.exthostRestarting.content":"Extension Host Process is restarting","extension.host.restart":"Restart Extension Host Process","extension.no.view.found":`The view component registered with the plugin {0} could not be found.
|
|
@@ -33505,7 +33505,7 @@ your modifications. Are you sure to regenerate?`,"aiNative.resolve.conflict.mess
|
|
|
33505
33505
|
|
|
33506
33506
|
- \u4ECB\u4E8E 0 \u548C 8 \u4E4B\u95F4\u7684\u503C\u5C06\u7528\u4F5C\u5B57\u53F7\u7684\u4E58\u6570\u3002
|
|
33507
33507
|
|
|
33508
|
-
- \u5927\u4E8E 8 \u7684\u503C\u5C06\u7528\u4F5C\u6709\u6548\u503C\u3002`,"editor.copyPath":"\u590D\u5236\u8DEF\u5F84","editor.copyRelativePath":"\u590D\u5236\u76F8\u5BF9\u8DEF\u5F84","editor.workspaceSymbol.quickopen":"\u641C\u7D22\u5DE5\u4F5C\u533A\u7B26\u53F7","editor.workspaceSymbolClass.quickopen":"\u641C\u7D22\u5DE5\u4F5C\u533A\u7C7B","editor.workspaceSymbol.description":"\u8DF3\u8F6C\u5DE5\u4F5C\u533A\u7B26\u53F7","editor.workspaceSymbol.search":"\u8BF7\u8F93\u5165\u8981\u641C\u7D22\u7684\u7B26\u53F7","editor.workspaceSymbolClass.search":"\u8BF7\u8F93\u5165\u8981\u641C\u7D22\u7684\u7C7B","editor.workspaceSymbol.notfound":"\u6CA1\u6709\u5339\u914D\u7684\u7B26\u53F7","editor.workspaceSymbolClass.notfound":"\u6CA1\u6709\u5339\u914D\u7684\u7C7B","edit.cut":"\u526A\u5207","edit.copy":"\u590D\u5236","edit.paste":"\u7C98\u8D34","edit.selectAll":"\u5168\u9009","editor.goBack":"\u5411\u540E","editor.goForward":"\u524D\u8FDB","editor.quickOpen":"\u8F6C\u5230\u6587\u4EF6...","editor.editor.goToSymbol":"\u8F6C\u5230\u7B26\u53F7...","editor.goToLine":"\u8F6C\u5230\u884C...","editor.openType":"\u6253\u5F00\u65B9\u5F0F","quickopen.goToLine.defaultMessage":"\u5F53\u524D\u884C: {0}\uFF0C \u5217: {1}\u3002 \u8BF7\u8F93\u5165\u8981\u8F6C\u5230\u7684\u884C\u53F7\uFF1A 1 \u81F3 {2} \u4E4B\u95F4\u7684\u6570\u5B57\u3002","quickopen.goToLine.notValid":"\u8BF7\u6253\u5F00\u4E00\u4E2A\u6709\u6548\u7684\u7F16\u8F91\u5668\u3002","quickopen.goToLine.lineInfo":"\u8F6C\u5230\u884C: {0}","quickopen.goToLine.colInfo":"\uFF0C\u5217: {0}","quickopen.goToLine.desc":"\u8F6C\u5230\u884C...","quickopen.command.placeholder":"\u8BF7\u8F93\u5165\u4F60\u8981\u6267\u884C\u7684\u547D\u4EE4","quickopen.command.description":"\u6267\u884C IDE \u9884\u8BBE\u7684\u547D\u4EE4","quickopen.command.nohandler":"\u627E\u4E0D\u5230\u7ED3\u679C","quickopen.quickinput.prompt":"\u8BF7\u6309 'Enter' \u786E\u8BA4\u6216 'Esc' \u53D6\u6D88","quickopen.tab.file":"\u6587\u4EF6","quickopen.tab.class":"\u7C7B","quickopen.tab.symbol":"\u7B26\u53F7","quickopen.tab.command":"\u6307\u4EE4","quickopen.tab.goToLine":"\u8F6C\u5230\u884C","quickopen.tab.tip.prefix":"\u6309","quickopen.tab.tip.suffix":"\u5207\u6362\u641C\u7D22\u7C7B\u522B","quickOpen.openOnTheRightSide":"\u5728\u4FA7\u8FB9\u6253\u5F00","explorer.title":"\u8D44\u6E90\u7BA1\u7406\u5668","explorer.electron.revealInFinder":"\u5728\u6587\u4EF6\u7CFB\u7EDF\u4E2D\u6253\u5F00","explorer.electron.openInSystemTerminal":"\u5728\u7CFB\u7EDF\u7EC8\u7AEF\u4E2D\u6253\u5F00","explorer.electron.openInSystemTerminal.error":"\u5728\u7CFB\u7EDF\u7EC8\u7AEF\u4E2D\u6253\u5F00 {0} \u5931\u8D25: {1}","search.title":"\u8DE8\u6587\u4EF6\u641C\u7D22","search.input.placeholder":"\u8F93\u5165\u641C\u7D22\u5185\u5BB9","search.input.title":"\u641C\u7D22","search.replace.title":"\u66FF\u6362","search.input.checkbox":"\u663E\u793A\u641C\u7D22\u6761\u4EF6","file-search.command.fileOpen.description":"\u6253\u5F00\u6587\u4EF6","file-search.command.fileOpen.placeholder":"\u6309\u540D\u79F0\u641C\u7D22\u6587\u4EF6\uFF08\u8FFD\u52A0:\u8F6C\u5230\u884C\u6216\u8FFD\u52A0 @ \u8F6C\u5230\u7B26\u53F7\uFF09","search.includes":"\u8981\u5305\u542B\u7684\u6587\u4EF6","search.includes.description":'\u8F93\u5165\u6587\u4EF6\u540D\u6216\u6587\u4EF6\u5939\u540D\uFF0C\u591A\u4E2A\u7528 ", " \u5206\u9694',"search.excludes":"\u8981\u6392\u9664\u7684\u6587\u4EF6","search.excludes.default.enable":"\u542F\u7528\u9ED8\u8BA4\u6392\u9664\u9879","search.replaceAll.label":"\u66FF\u6362\u5168\u90E8","search.replace.label":"\u66FF\u6362\u4E3A","search.files.result":"\u627E\u5230 {1} \u4E2A\u6587\u4EF6\uFF0C\u5171 {0} \u4E2A\u7ED3\u679C","search.CollapseDeepestExpandedLevelAction.label":"\u5168\u90E8\u6298\u53E0","search.ExpandDeepestExpandedLevelAction.label":"\u5168\u90E8\u5C55\u5F00","search.ClearSearchResultsAction.label":"\u6E05\u7A7A\u641C\u7D22\u7ED3\u679C","search.RefreshAction.label":"\u5237\u65B0","search.removeAll.occurrences.files.confirmation.message":"\u786E\u5B9A\u66FF\u6362 {1} \u4E2A\u6587\u4EF6\u4E2D\u7684 {0} \u4E2A\u7ED3\u679C\u5417?","search.removeAll.occurrences.file.confirmation.message":"\u786E\u5B9A\u66FF\u6362\u8BE5\u6587\u4EF6\u4E2D\u7684 {0} \u4E2A\u7ED3\u679C\u5417?","search.result.hide":"\u9690\u85CF","search.menu.copyAll":"\u5168\u90E8\u590D\u5236","search.help.showIncludeRule":"\u67E5\u770B\u8BED\u6CD5\u89C4\u5219","search.help.supportRule":"\u652F\u6301\u4EE5\u4E0B\u8BED\u6CD5\u89C4\u5219\uFF1A","search.help.excludeList":"\u5DF2\u6392\u9664\u9879\u5305\u542B\uFF1A","search.help.concatRule":"\u591A\u4E2A\u6761\u4EF6\u5206\u9694","search.help.matchOneOrMoreRule":"\u5339\u914D\u8DEF\u5F84\u6BB5\u4E2D\u7684\u4E00\u4E2A\u6216\u591A\u4E2A\u5B57\u7B26","search.help.matchOne":"\u5339\u914D\u8DEF\u5F84\u6BB5\u4E2D\u7684\u4E00\u4E2A\u5B57\u7B26","search.help.matchAny":"\u5339\u914D\u4EFB\u610F\u6570\u91CF\u7684\u8DEF\u5F84\u6BB5\uFF0C\u5305\u62EC\u65E0","search.help.matchWithGroup":"\u7EC4\u5408\u6761\u4EF6","search.help.matchRange":"\u5339\u914D\u7684\u5B57\u7B26\u8303\u56F4","search.help.modify":"\u4FEE\u6539","search.replace.buttonOK":"\u66FF\u6362","search.replace.buttonCancel":"\u53D6\u6D88","search.too.many.results":"\u7531\u4E8E\u60A8\u7684\u641C\u7D22\u6761\u4EF6\u8FC7\u4E8E\u758F\u677E\uFF0C\u6211\u4EEC\u4EC5\u5C55\u793A\u4E86\u90E8\u5206\u641C\u7D22\u7ED3\u679C","search.fileReplaceChanges":"{0} \u2194 {1} (\u66FF\u6362\u9884\u89C8)","search.fileResults":"\u6587\u4EF6\u7ED3\u679C","search.fileResults.notfound":"\u6CA1\u6709\u5339\u914D\u7684\u6587\u4EF6","search.fileSymbolResults":"\u7B26\u53F7 ({0})","search.fileSymbolResults.notfound":"\u6CA1\u6709\u5339\u914D\u7684\u7B26\u53F7","search.historyMatches":"\u6700\u8FD1\u6253\u5F00","search.replaceAll.occurrencesMessage":"\u5DF2\u5C06 {1} \u4E2A\u6587\u4EF6\u4E2D\u51FA\u73B0\u7684 {0} \u5904\u66FF\u6362\u4E3A \u201C{2}\u201D\u3002","search.replace.toggle.button.title":"\u5207\u6362\u66FF\u6362","search.caseDescription":"\u533A\u5206\u5927\u5C0F\u5199","search.wordsDescription":"\u5168\u5B57\u5339\u914D","search.regexDescription":"\u4F7F\u7528\u6B63\u5219\u8868\u8FBE\u5F0F","search.includeIgnoredFiles":"\u5305\u542B\u5FFD\u7565\u7684\u6587\u4EF6","search.onlyOpenEditors":"\u4EC5\u5728\u5DF2\u6253\u5F00\u7684\u7F16\u8F91\u5668\u5185\u641C\u7D22","search.noResultsFound":"\u672A\u627E\u5230\u7ED3\u679C\u3002\u67E5\u770B\u60A8\u7684\u8BBE\u7F6E\u914D\u7F6E\u6392\u9664, \u5E76\u68C0\u67E5\u60A8\u7684 gitignore \u6587\u4EF6","quickopen.recent-commands":"\u6700\u8FD1\u4F7F\u7528","quickopen.other-commands":"\u5176\u4ED6\u547D\u4EE4","quickopen.commands.notfound":"\u6CA1\u6709\u5339\u914D\u7684\u6307\u4EE4",mSelection:"\u9009\u62E9","selection.all":"\u9009\u62E9\u5168\u90E8","dialog.confirm":"\u77E5\u9053\u4E86","dialog.file.name":"\u6587\u4EF6\u540D","dialog.file.title":"\u5B58\u50A8\u76EE\u5F55\uFF1A","dialog.file.openLabel":"\u6253\u5F00\u6587\u4EF6\uFF1A","dialog.file.saveLabel":"\u4FDD\u5B58\u6587\u4EF6\uFF1A","dialog.file.close":"\u5173\u95ED","dialog.file.ok":"\u786E\u5B9A","dialog.ensure":"\u786E\u5B9A","editorOpenType.code":"\u4EE3\u7801","editorOpenType.preview":"\u9884\u89C8","scm.title":"\u6E90\u4EE3\u7801\u7BA1\u7406","scm.action.git.refresh":"\u5237\u65B0","scm.action.git.commit":"\u63D0\u4EA4","scm.action.git.more":"\u66F4\u591A\u64CD\u4F5C...","scm.statusbar.repo":"\u5F53\u524D\u4ED3\u5E93","scm.provider.title":"\u4EE3\u7801\u4ED3\u5E93\u5217\u8868","scm.provider.empty":"\u6CA1\u6709\u53EF\u7528\u7684\u6E90\u4EE3\u7801\u4ED3\u5E93","scm.provider.init":"\u70B9\u51FB\u521D\u59CB\u5316\u4ED3\u5E93","scm.diff.change.next":"\u4E0B\u4E00\u4E2A\u53D8\u5316","scm.diff.change.previous":"\u4E0A\u4E00\u4E2A\u53D8\u5316","scm.diff.toggle.renderSideBySide":"\u5207\u6362\u5185\u8054\u89C6\u56FE","scm.dirtyDiff.changes":"\u7B2C {0} \u4E2A\u66F4\u6539 (\u5171 {1} \u4E2A)","debug.action.start":"\u542F\u52A8\u8C03\u8BD5","debug.action.no.configuration":"\u6682\u65E0\u914D\u7F6E","debug.action.add.smartAddConfiguration":"\u667A\u80FD\u6DFB\u52A0\u914D\u7F6E","debug.action.add.configuration":"\u6DFB\u52A0\u914D\u7F6E","debug.action.edit.configuration":"\u7F16\u8F91\u914D\u7F6E","debug.action.open.launch.editor":"\u4F7F\u7528 UI \u6A21\u5F0F\u7F16\u8F91","debug.action.open.configuration":"\u6253\u5F00 launch.json","debug.action.debug.console":"\u8C03\u8BD5\u63A7\u5236\u53F0","debug.action.step-into":"\u5355\u6B65\u8DF3\u5165","debug.action.step-over":"\u5355\u6B65\u8DF3\u8FC7","debug.action.step-out":"\u5355\u6B65\u8DF3\u51FA","debug.action.restart":"\u91CD\u542F","debug.action.pause":"\u6682\u505C","debug.action.stop":"\u7EC8\u6B62","debug.action.disattach":"\u65AD\u5F00","debug.action.continue":"\u4E0B\u4E00\u6B65","debug.action.runToCursor":"\u8FD0\u884C\u5230\u5149\u6807\u5904","debug.action.forceRunToCursor":"\u5F3A\u5236\u8FD0\u884C\u5230\u5149\u6807\u5904","debug.console.panel.title":"\u8C03\u8BD5\u63A7\u5236\u53F0","debug.console.panel.default":"\u9ED8\u8BA4","debug.console.filter.placeholder":"\u7B5B\u9009\u5668(\u4F8B\u5982 text\u3001!exclude)","debug.console.clear":"\u6E05\u7A7A\u65E5\u5FD7","debug.console.copy":"\u590D\u5236","debug.console.copyAll":"\u590D\u5236\u5168\u90E8","debug.console.collapseAll":"\u6298\u53E0\u5168\u90E8","debug.console.followLink":"\u6309\u4F4F {0} \u5E76\u5355\u51FB\u53EF\u8BBF\u95EE\u94FE\u63A5","debug.console.errorMessage":"\u8C03\u8BD5\u8FDB\u7A0B\u521D\u59CB\u5316\u5F02\u5E38\uFF0C\u8BF7\u6253\u5F00\u63A7\u5236\u9762\u677F\u67E5\u770B\u9519\u8BEF\u65E5\u5FD7","debug.console.input.placeholder":"\u8BF7\u53D1\u8D77\u8C03\u8BD5\u4F1A\u8BDD\u6765\u5BF9\u8868\u8FBE\u5F0F\u6C42\u503C","debug.console.consoleCleared":"\u8F93\u51FA\u5DF2\u6E05\u7406","debug.notSupported.type":'\u8C03\u8BD5\u7C7B\u578B "{0}" \u4E0D\u662F\u652F\u6301\u7684\u8C03\u8BD5\u7C7B\u578B\uFF0C\u8BF7\u68C0\u67E5\u914D\u7F6E\u6216\u5B89\u88C5\u5BF9\u5E94\u8C03\u8BD5\u63D2\u4EF6',"debug.notSupported.any":"\u5F53\u524D\u8C03\u8BD5\u914D\u7F6E\u4E0D\u652F\u6301\uFF0C\u8BF7\u68C0\u67E5\u914D\u7F6E\u6216\u5B89\u88C5\u5BF9\u5E94\u8C03\u8BD5\u63D2\u4EF6","output.tabbar.title":"\u8F93\u51FA","output.channel.none":"<\u8FD8\u6CA1\u6709\u4EFB\u4F55\u8F93\u51FA>","output.configurationTitle":"\u8F93\u51FA\u914D\u7F6E","output.logWhenNoPanel":"\u65E0\u9762\u677F\u65F6\u662F\u5426\u8F93\u51FA\u5230\u6D4F\u89C8\u5668 console","output.maxChannelLine":"\u9650\u5236\u8F93\u51FA\u6700\u5927\u884C\u6570","output.maxChannelLineDesc":"\u9650\u5236\u5355\u4E2A\u8F93\u51FA\u901A\u9053\u6700\u5927\u884C\u6570\uFF0C\u8D85\u51FA\u540E\u4F1A\u81EA\u52A8\u88C1\u526A","output.enableLogHighlight":"\u8F93\u51FA\u6587\u672C\u8BED\u6CD5\u9AD8\u4EAE","output.enableLogHighlightDesc":"\u5BF9\u8F93\u51FA\u6587\u672C\u4F7F\u7528 .log \u8BED\u6CD5\u9AD8\u4EAE\u89E3\u6790\u3002","output.enableSmartScroll":"\u8F93\u51FA\u89C6\u56FE\u667A\u80FD\u6EDA\u52A8","output.enableSmartScrollDesc":"\u5728\u70B9\u51FB\u8F93\u51FA\u89C6\u56FE\u65F6\u7981\u7528\u6EDA\u52A8\uFF0C\u70B9\u51FB\u6700\u540E\u4E00\u884C\u8F93\u51FA\u65F6\u542F\u7528\u6EDA\u52A8\u3002","debug.stack.loadMore":"\u52A0\u8F7D\u66F4\u591A\u5806\u6808","debug.stack.loading":"\u52A0\u8F7D\u4E2D...","debug.stack.showMoreAndOrigin":"\u5C55\u793A {0} \u9879: {1}","debug.breakpoint.deactive":"\u5173\u95ED\u6240\u6709\u65AD\u70B9","debug.breakpoint.active":"\u6FC0\u6D3B\u6240\u6709\u65AD\u70B9","debug.threads.title":"\u8FDB\u7A0B","debug.watch.title":"\u76D1\u89C6","debug.callStack.title":"\u5806\u6808","debug.variables.title":"\u53D8\u91CF","debug.variables.view.memory":"\u67E5\u770B\u4E8C\u8FDB\u5236\u89C6\u56FE","debug.variables.view.memory.prompt.hexEditor.notInstalled":"\u67E5\u770B\u4E8C\u8FDB\u5236\u89C6\u56FE\u9700\u8981\u5B89\u88C5 Hex Editor \u6269\u5C55","debug.breakpoints.title":"\u65AD\u70B9","debug.container.title":"\u8C03\u8BD5\u7BA1\u7406\u5668","debug.breakpoint.toggle":"\u542F\u7528/\u7981\u7528\u65AD\u70B9","debug.breakpoint.removeAll":"\u79FB\u9664\u6240\u6709\u65AD\u70B9","debug.breakpoint.uncaughtExceptions":"\u672A\u6355\u83B7\u7684\u5F02\u5E38","debug.breakpoint.allExceptions":"\u6240\u6709\u5F02\u5E38","debug.watch.removeAll":"\u79FB\u9664\u6240\u6709\u8868\u8FBE\u5F0F","debug.watch.collapseAll":"\u6298\u53E0\u6240\u6709\u8868\u8FBE\u5F0F","debug.watch.add":"\u6DFB\u52A0\u8868\u8FBE\u5F0F","debug.watch.edit":"\u7F16\u8F91\u8868\u8FBE\u5F0F","debug.watch.copyValue":"\u590D\u5236\u503C","debug.watch.remove":"\u5220\u9664\u8868\u8FBE\u5F0F","debug.watch.notAvailable":"\u4E0D\u53EF\u7528","debug.breakpoint.breakpointMessage":"\u65AD\u70B9","debug.breakpoint.logpointMessage":"\u65E5\u5FD7\u65AD\u70B9","debug.breakpoint.conditionalMessage":"\u6761\u4EF6\u65AD\u70B9","debug.breakpoint.unverified":"\u65E0\u6548\u7684","debug.breakpoint.disabled":"\u7981\u7528\u7684","debug.breakpoint.blank":"\u7A7A\u884C","debug.configuration.selectAutomaticDebugTypesHint":"\u81EA\u52A8\u751F\u6210\u7684\u8C03\u8BD5\u914D\u7F6E","debug.configuration.selectAutomaticDebugTypes":"\u9009\u62E9\u8C03\u8BD5\u7C7B\u578B","debug.configuration.selectAutomaticDebugConfiguration":"\u9009\u62E9\u8C03\u8BD5\u914D\u7F6E","debug.configuration.comment1":"\u4F7F\u7528 IntelliSense \u4E86\u89E3\u76F8\u5173\u5C5E\u6027\u3002 ","debug.configuration.comment2":"\u60AC\u505C\u4EE5\u67E5\u770B\u73B0\u6709\u5C5E\u6027\u7684\u63CF\u8FF0\u3002","debug.configuration.comment3":"\u6B32\u4E86\u89E3\u66F4\u591A\u4FE1\u606F\uFF0C\u8BF7\u8BBF\u95EE: https://go.microsoft.com/fwlink/?linkid=830387","debug.launch.existed":'\u8C03\u8BD5\u914D\u7F6E"{0}"\u5DF2\u5728\u8FD0\u884C',"debug.expression.log.placeholder":'\u9047\u5230\u65AD\u70B9\u65F6\u8981\u8BB0\u5F55\u7684\u6D88\u606F\u3002 {}\u4E2D\u7684\u8868\u8FBE\u5F0F\u662F\u63D2\u503C\u7684\u3002. \u6309 "Enter" \u952E\u786E\u8BA4\uFF0C"Esc" \u952E\u53D6\u6D88\u3002',"debug.expression.hit.placeholder":'\u6EE1\u8DB3\u547D\u4E2D\u6B21\u6570\u6761\u4EF6\u65F6\u4E2D\u65AD\u3002 \u6309 "Enter" \u952E\u786E\u8BA4\uFF0C"Esc" \u952E\u53D6\u6D88\u3002',"debug.expression.condition.placeholder":'\u5728\u8868\u8FBE\u5F0F\u7ED3\u679C\u4E3A\u771F\u65F6\u4E2D\u65AD\u3002\u6309 "Enter" \u952E\u786E\u8BA4\uFF0C"Esc" \u952E\u53D6\u6D88\u3002',"debug.expression.condition":"\u8868\u8FBE\u5F0F","debug.expression.hitCondition":"\u547D\u4E2D\u6B21\u6570","debug.expression.logMessage":"\u65E5\u5FD7\u6D88\u606F","debug.menu.delete.breakpoint":"\u5220\u9664\u65AD\u70B9","debug.menu.edit.breakpoint":"\u7F16\u8F91\u65AD\u70B9","debug.menu.disable.breakpoint":"\u7981\u7528\u65AD\u70B9","debug.menu.enable.breakpoint":"\u542F\u7528\u65AD\u70B9","debug.menu.add.logpoint":"\u6DFB\u52A0\u8BB0\u5F55\u70B9","debug.menu.add.conditional":"\u6DFB\u52A0\u6761\u4EF6\u65AD\u70B9","debug.menu.add.breakpoint":"\u6DFB\u52A0\u65AD\u70B9","debug.menu.disable.logpoint":"\u7981\u7528\u8BB0\u5F55\u70B9","debug.menu.title.run":"\u8FD0\u884C\u6216\u8C03\u8BD5...","debug.stack.frame.noSource":"\u672A\u77E5\u6E90","debug.stack.frame.because":"\u56E0","debug.stack.frame.stopped":"\u5DF2\u6682\u505C","debug.stack.frame.running":"\u6B63\u5728\u8FD0\u884C","debug.launch.configurations.debugType":"\u914D\u7F6E\u7C7B\u578B\u3002","debug.launch.configurations.debugTypeNotRecognised":"\u65E0\u6CD5\u8BC6\u522B\u6B64\u8C03\u8BD5\u7C7B\u578B\u3002\u786E\u4FDD\u5DF2\u7ECF\u5B89\u88C5\u5E76\u542F\u7528\u76F8\u5E94\u7684\u8C03\u8BD5\u6269\u5C55\u3002","debug.launch.configurations.node2NotSupported":"\u4E0D\u518D\u652F\u6301 'node2'\uFF0C\u6539\u7528 'node'\uFF0C\u5E76\u5C06 'protocol' \u5C5E\u6027\u8BBE\u4E3A 'inspector'\u3002","debug.launch.configurations.debugName":"\u914D\u7F6E\u540D\u79F0\uFF1B\u5728\u542F\u52A8\u914D\u7F6E\u4E0B\u62C9\u83DC\u5355\u4E2D\u663E\u793A\u3002","debug.launch.configurations.debugRequest":'\u8BF7\u6C42\u914D\u7F6E\u7C7B\u578B\u3002\u53EF\u4EE5\u662F "\u542F\u52A8" \u6216 "\u9644\u52A0"\u3002',"debug.launch.configurations.debugServer":"\u4EC5\u7528\u4E8E\u8C03\u8BD5\u6269\u5C55\u5F00\u53D1: \u5982\u679C\u5DF2\u6307\u5B9A\u7AEF\u53E3\uFF0CVS \u4EE3\u7801\u4F1A\u5C1D\u8BD5\u8FDE\u63A5\u5230\u5728\u670D\u52A1\u5668\u6A21\u5F0F\u4E2D\u8FD0\u884C\u7684\u8C03\u8BD5\u9002\u914D\u5668","debug.launch.configurations.debugPrelaunchTask":"\u8C03\u8BD5\u4F1A\u8BDD\u5F00\u59CB\u524D\u8981\u8FD0\u884C\u7684\u4EFB\u52A1\u3002","debug.launch.configurations.debugPostDebugTask":"\u8C03\u8BD5\u4F1A\u8BDD\u7ED3\u675F\u540E\u8FD0\u884C\u7684\u4EFB\u52A1\u3002","debug.launch.configurations.debugWindowsConfiguration":"\u7279\u5B9A\u4E8E Windows \u7684\u542F\u52A8\u914D\u7F6E\u5C5E\u6027\u3002","debug.launch.configurations.debugOSXConfiguration":"\u7279\u5B9A\u4E8E OS X \u7684\u542F\u52A8\u914D\u7F6E\u5C5E\u6027\u3002","debug.launch.configurations.debugLinuxConfiguration":"\u7279\u5B9A\u4E8E Linux \u7684\u542F\u52A8\u914D\u7F6E\u5C5E\u6027\u3002","debug.launch.typeNotSupported":'\u8C03\u8BD5\u7C7B\u578B "{0}" \u4E0D\u652F\u6301',"debug.launch.catchError":"\u542F\u52A8\u8C03\u8BD5\u8FDB\u7A0B\u65F6\u9047\u5230\u4E86\u9519\u8BEF, \u8BF7\u68C0\u67E5\u8C03\u8BD5\u63A7\u5236\u53F0","debug.launch.view.template.button.addItem":"\u6DFB\u52A0\u4E00\u9879","debug.launch.view.template.input.placeholder":"\u8BF7\u8F93\u5165 {0}","debug.launch.view.template.button.submit":"\u65B0\u589E\u914D\u7F6E\u9879","debug.launch.view.edit.inLaunchJson":"\u5728 launch.json \u4E2D\u7F16\u8F91","debug.widget.exception.thrownWithId":"\u53D1\u751F\u5F02\u5E38: {0}","debug.widget.exception.thrown":"\u51FA\u73B0\u5F02\u5E38\u3002","workspace.openDirectory":"\u6253\u5F00\u6587\u4EF6\u5939","workspace.addFolderToWorkspace":"\u5C06\u6587\u4EF6\u5939\u6DFB\u52A0\u5230\u5DE5\u4F5C\u533A...","workspace.removeFolderFromWorkspace":"\u4ECE\u5DE5\u4F5C\u533A\u79FB\u9664\u6587\u4EF6\u5939","workspace.saveWorkspaceAsFile":"\u5C06\u5DE5\u4F5C\u533A\u53E6\u5B58\u4E3A...","workspace.openWorkspaceTitle":"\u5DE5\u4F5C\u533A","workspace.openWorkspace":"\u6253\u5F00\u5DE5\u4F5C\u533A","window.toggleDevTools":"\u5207\u6362\u5F00\u53D1\u4EBA\u5458\u5DE5\u5177","window.reload":"\u91CD\u8F7D\u7A97\u53E3","preference.menubar.mode.compact":"\u63A7\u5236\u83DC\u5355\u680F\u662F\u5426\u4F7F\u7528\u7D27\u51D1\u6A21\u5F0F","preference.explorer.confirm.delete":"\u63A7\u5236\u662F\u5426\u5728\u5220\u9664\u6587\u4EF6\u65F6\u5F39\u51FA\u786E\u8BA4\u6846","preference.explorer.confirm.move":"\u63A7\u5236\u662F\u5426\u5728\u79FB\u52A8\u6587\u4EF6\u65F6\u5F39\u51FA\u786E\u8BA4\u6846","preference.files.watcherExclude":"\u914D\u7F6E\u6392\u9664\u6587\u4EF6\u76D1\u542C\u7684\u6587\u4EF6\u8DEF\u5F84 glob \u6A21\u5F0F\uFF0C\u6A21\u5F0F\u5FC5\u987B\u5728\u7EDD\u5BF9\u8DEF\u5F84\u4E0A\u5339\u914D\uFF08\u5373\u524D\u7F00\u4E3A ** \u6216\u5B8C\u6574\u8DEF\u5F84\u624D\u80FD\u6B63\u786E\u5339\u914D\uFF09\u3002\u66F4\u6539\u6B64\u8BBE\u7F6E\u9700\u8981\u91CD\u65B0\u542F\u52A8\u3002\u82E5\u5728\u542F\u52A8\u65F6\u9047\u5230\u4EE3\u7801\u5360\u7528\u5927\u91CF CPU \u65F6\u95F4\uFF0C\u53EF\u4EE5\u6392\u9664\u5927\u6587\u4EF6\u5939\u4EE5\u51CF\u5C11\u521D\u59CB\u52A0\u8F7D\u3002","preference.files.exclude":"\u914D\u7F6E\u6392\u9664\u7684\u6587\u4EF6\u548C\u6587\u4EF6\u5939\u7684 glob \u6A21\u5F0F\uFF0C\u8D44\u6E90\u7BA1\u7406\u5668\u5C06\u6839\u636E\u6B64\u8BBE\u7F6E\u51B3\u5B9A\u8981\u663E\u793A\u6216\u9690\u85CF\u7684\u6587\u4EF6\u548C\u6587\u4EF6\u5939\u3002","preference.search.exclude":"\u914D\u7F6E\u5728\u641C\u7D22\u4E2D\u6392\u9664\u7684\u6587\u4EF6\u548C\u6587\u4EF6\u5939\u7684 glob \u6A21\u5F0F\u3002\u5DF2\u7ECF\u7EE7\u627F `#files.exclude#` \u8BBE\u7F6E\u7684\u6240\u6709 glob \u6A21\u5F0F\u3002","preference.search.include":"\u914D\u7F6E\u5728\u641C\u7D22\u4E2D\u5305\u542B\u7684\u6587\u4EF6\u548C\u6587\u4EF6\u5939\u7684 glob \u6A21\u5F0F","preference.files.watcherExclude.title":"\u6392\u9664\u6587\u4EF6\u76D1\u542C","preference.search.exclude.title":"\u641C\u7D22\u6392\u9664\u6587\u4EF6","preference.search.useReplacePreview":"\u63A7\u5236\u641C\u7D22\u66FF\u6362\u6253\u5F00\u7F16\u8F91\u5668\u65F6\uFF0C\u662F\u5426\u6253\u5F00\u201C\u66FF\u6362\u9884\u89C8\u201D\u3002","preference.search.searchOnType":"\u63A7\u5236\u662F\u5426\u5728\u641C\u7D22\u6846\u4E2D\u8F93\u5165\u65F6\u81EA\u52A8\u641C\u7D22\u3002","preference.search.searchOnTypeDebouncePeriod":"\u63A7\u5236\u8F93\u5165\u65F6\u81EA\u52A8\u641C\u7D22\u7684\u5EF6\u8FDF\u65F6\u95F4\uFF08\u6BEB\u79D2\uFF09\u3002","preference.files.exclude.title":"\u6392\u9664\u6587\u4EF6\u663E\u793A","preference.debug.internalConsoleOptions":"\u63A7\u5236\u4F55\u65F6\u6253\u5F00\u5185\u90E8\u8C03\u8BD5\u63A7\u5236\u53F0\u3002","preference.debug.openDebug":"\u63A7\u5236\u4F55\u65F6\u6253\u5F00\u8C03\u8BD5\u89C6\u56FE\u3002","preference.debug.debugViewLocation":"\u63A7\u5236\u8C03\u8BD5\u89C6\u56FE\u7684\u4F4D\u7F6E\u3002","preference.debug.trace":"\u542F\u7528/\u7981\u7528\u4E0E\u8C03\u8BD5\u9002\u914D\u5668\u7684\u5806\u6808\u901A\u4FE1\u3002","preference.debug.allowBreakpointsEverywhere":"\u5141\u8BB8\u5728\u6240\u6709\u6587\u4EF6\u4E2D\u8BBE\u7F6E\u65AD\u70B9\u3002","preference.debug.toolbar.float":"\u6D6E\u5C42\u6A21\u5F0F","preference.files.associations.title":"\u6587\u4EF6\u5173\u8054","preference.files.associations":'\u914D\u7F6E\u8BED\u8A00\u7684\u6587\u4EF6\u5173\u8054\uFF08\u5982 "*.extension": "html"\uFF09\u3002\u8FD9\u4E9B\u5173\u8054\u7684\u4F18\u5148\u7EA7\u9AD8\u4E8E\u5DF2\u5B89\u88C5\u8BED\u8A00\u7684\u9ED8\u8BA4\u5173\u8054\u3002',"preference.files.encoding.title":"\u6587\u4EF6\u7F16\u7801","preference.files.encoding":"\u8BFB\u5199\u6587\u4EF6\u65F6\u4F7F\u7528\u7684\u9ED8\u8BA4\u5B57\u7B26\u96C6\u7F16\u7801","preference.files.autoGuessEncoding":"\u542F\u7528\u540E\uFF0C\u7F16\u8F91\u5668\u5C06\u5728\u6253\u5F00\u6587\u4EF6\u65F6\u5C1D\u8BD5\u731C\u6D4B\u5B57\u7B26\u96C6\u7F16\u7801\u3002\u4E5F\u53EF\u4EE5\u6309\u8BED\u8A00\u914D\u7F6E\u6B64\u8BBE\u7F6E\u3002","preference.files.autoGuessEncoding.title":"\u81EA\u52A8\u731C\u6D4B\u7F16\u7801","preference.explorer.fileTree.indent.title":"\u8D44\u6E90\u7BA1\u7406\u5668\uFF1A\u6587\u4EF6\u6811\u5B50\u8282\u70B9\u7F29\u8FDB","preference.explorer.fileTree.baseIndent.title":"\u8D44\u6E90\u7BA1\u7406\u5668\uFF1A\u6587\u4EF6\u6811\u57FA\u7840\u7F29\u8FDB","preference.debug.toolbar.float.title":"\u8FD0\u884C\u4E0E\u8C03\u8BD5\uFF1A\u6D6E\u5C42\u6A21\u5F0F","preference.debug.breakpoint.editorHint.title":"\u63A7\u5236\u662F\u5426\u5F00\u542F\u7F16\u8F91\u5668\u65AD\u70B9\u95EA\u70C1\u63D0\u793A","preference.debug.breakpoint.editorHint":"\u542F\u7528\u540E\uFF0C\u70B9\u51FB\u65AD\u70B9\u5217\u8868\u8DF3\u8F6C\u5230\u7F16\u8F91\u5668\u65F6\uFF0C\u4F1A\u6709\u80CC\u666F\u8272\u95EA\u70C1\u63D0\u793A","preference.debug.breakpoint.showBreakpointsInOverviewRuler":"\u63A7\u5236\u662F\u5426\u5E94\u5728\u6982\u89C8\u6807\u5C3A\u4E2D\u663E\u793A\u65AD\u70B9","preference.debug.console.filter.mode":"\u8C03\u8BD5\u63A7\u5236\u53F0\u7B5B\u9009\u5668\u6A21\u5F0F","preference.debug.console.filter.mode.filter":"\u8FC7\u6EE4\u6A21\u5F0F","preference.debug.console.filter.mode.matcher":"\u5339\u914D\u6A21\u5F0F","preference.debug.console.wordWrap":"\u63A7\u5236\u662F\u5426\u5E94\u5728\u8C03\u8BD5\u63A7\u5236\u53F0\u4E2D\u6362\u884C","preference.debug.inline.values":"\u5F53\u5904\u4E8E\u8C03\u8BD5\u8FC7\u7A0B\u4E2D\u65F6\uFF0C\u5728\u7F16\u8F91\u5668\u4E2D\u5185\u8054\u663E\u793A\u53D8\u91CF\u503C","preference.explorer.compactFolders":"\u6587\u4EF6\u5939\u7D27\u51D1\u6A21\u5F0F\u4E0B\uFF0C\u5355\u4E2A\u5B50\u6587\u4EF6\u5939\u5C06\u88AB\u538B\u7F29\u5728\u7EC4\u5408\u7684\u6811\u5143\u7D20\u4E2D\uFF0C\u5BF9 Java \u5305\u7ED3\u6784\u5F88\u6709\u7528\u3002","preference.explorer.compactFolders.title":"\u8D44\u6E90\u7BA1\u7406\u5668\uFF1A\u6587\u4EF6\u5939\u7D27\u51D1\u6A21\u5F0F","preference.explorer.autoReveal":"\u6253\u5F00\u6587\u4EF6\u65F6\u81EA\u52A8\u663E\u793A\u5E76\u805A\u7126","preference.editorTitle.openSource":"\u6253\u5F00\u8BBE\u7F6E\uFF08JSON\uFF09","preference.editorTitle.openUserSource":"\u6253\u5F00\u5168\u5C40\u8BBE\u7F6E\uFF08JSON\uFF09","preference.editorTitle.openWorkspaceSource":"\u6253\u5F00\u5DE5\u4F5C\u533A\u8BBE\u7F6E\uFF08JSON\uFF09","preference.editorTitle.openPreference":"\u6253\u5F00\u8BBE\u7F6E\uFF08\u53EF\u89C6\u5316\uFF09","preference.view.saveLayoutWithWorkspace.title":"\u63A7\u5236\u662F\u5426\u5C06\u5E03\u5C40\u4FE1\u606F\u4E0E\u5DE5\u4F5C\u533A\u7ED1\u5B9A","preference.stringArray.operate.delete":"\u5220\u9664","preference.stringArray.operate.edit":"\u4FEE\u6539","preference.stringArray.operate.editTip":"\u6309\u56DE\u8F66\u786E\u8BA4","preference.stringArray.none":"\u6682\u65E0\u53EF\u9009\u503C","preference.enum.default":"\u9ED8\u8BA4\u503C","preference.terminal.type":"\u9ED8\u8BA4\u7EC8\u7AEF\u7C7B\u578B","preference.terminal.typeDesc":"\u63A7\u5236\u6253\u5F00\u7EC8\u7AEF\u6240\u4F7F\u7528\u7684\u9ED8\u8BA4 Shell \u7C7B\u578B\u3002","preference.terminal.fontFamily":"\u7EC8\u7AEF\u5B57\u4F53","preference.terminal.fontSize":"\u7EC8\u7AEF\u5B57\u4F53\u5927\u5C0F","preference.terminal.fontWeight":"\u7EC8\u7AEF\u5B57\u4F53\u6743\u91CD","preference.terminal.lineHeight":"\u7EC8\u7AEF\u6587\u5B57\u884C\u9AD8","preference.terminal.cursorBlink":"\u7EC8\u7AEF\u5149\u6807\u662F\u5426\u95EA\u70C1","preference.terminal.scrollback":"\u7EC8\u7AEF\u53EF\u6EDA\u52A8\u5185\u5BB9\u884C\u6570","preference.terminal.integrated.shellArgs.linux":"Linux \u7EC8\u7AEF\u547D\u4EE4\u884C\u53C2\u6570","preference.terminal.integrated.shellArgs.linuxDesc":"\u914D\u7F6E\u5728 Linux \u7EC8\u7AEF\u4E0A\u65F6\u8981\u4F7F\u7528\u7684\u547D\u4EE4\u884C\u53C2\u6570\u3002","preference.terminal.integrated.copyOnSelection":"\u7EC8\u7AEF\u9009\u4E2D\u590D\u5236","preference.terminal.integrated.copyOnSelectionDesc":"\u5C06\u7EC8\u7AEF\u4E2D\u9009\u4E2D\u7684\u6587\u672C\u7ACB\u5373\u590D\u5236\u5230\u526A\u8D34\u677F\u3002","preference.terminal.integrated.localEchoEnabled":"\u7EC8\u7AEF\u672C\u5730\u56DE\u663E","preference.terminal.integrated.localEchoDesc":"\u4F55\u65F6\u5E94\u542F\u7528\u672C\u5730\u56DE\u663E","preference.terminal.integrated.localEchoLatencyThreshold":"\u7EC8\u7AEF\u672C\u5730\u56DE\u663E\u89E6\u53D1\u5EF6\u65F6","preference.terminal.integrated.localEchoLatencyThresholdDesc":"\u7F51\u7EDC\u5EF6\u8FDF\u7684\u957F\u5EA6(\u4EE5\u6BEB\u79D2\u4E3A\u5355\u4F4D)\uFF0C\u5176\u4E2D\u672C\u5730\u7F16\u8F91\u5C06\u5728\u7EC8\u7AEF\u4E0A\u56DE\u663E\uFF0C\u65E0\u9700\u7B49\u5F85\u670D\u52A1\u5668\u627F\u8BA4\u3002\u5982\u679C\u4E3A '0'\uFF0C\u5219\u672C\u5730\u56DE\u663E\u5C06\u59CB\u7EC8\u5F00\u542F\uFF0C\u5982\u679C\u4E3A '-1'\uFF0C\u5219\u5C06\u7981\u7528\u3002","preference.terminal.integrated.localEchoExcludePrograms":"\u7EC8\u7AEF\u672C\u5730\u56DE\u663E\u6392\u9664\u7684\u5E94\u7528\u7A0B\u5E8F","preference.terminal.integrated.localEchoExcludeProgramsDesc":"\u5F53\u5728\u7EC8\u7AEF\u6807\u9898\u4E2D\u627E\u5230\u5176\u4E2D\u4E00\u4E2A\u7A0B\u5E8F\u540D\u79F0\u65F6\uFF0C\u5C06\u7981\u7528\u672C\u5730\u56DE\u663E\u3002","preference.terminal.integrated.localEchoStyle":"\u672C\u5730\u56DE\u663E\u5B57\u4F53\u6837\u5F0F","preference.terminal.integrated.localEchoStyleDesc":"\u672C\u5730\u56DE\u663E\u6587\u672C\u7684\u7EC8\u7AEF\u6837\u5F0F\uFF1B\u5B57\u4F53\u6837\u5F0F\u6216 RGB \u989C\u8272\u3002","preference.terminal.integrated.xtermRenderType":"Xterm \u6E32\u67D3\u7C7B\u578B","preference.terminal.integrated.xtermRenderTypeDesc":"\u9009\u62E9 Xterm \u6E32\u67D3\u7C7B\u578B\uFF0CWebGL \u6027\u80FD\u66F4\u5F3A\uFF0CCanvas \u517C\u5BB9\u6027\u66F4\u4F73\u3002","preference.terminal.integrated.enablePersistentSessionDesc":"\u7A97\u53E3\u91CD\u8F7D\u65F6\u6301\u4E45\u5316\u7EC8\u7AEF\u4F1A\u8BDD","preference.terminal.integrated.cursorStyle":"\u7EC8\u7AEF\u8F93\u5165\u6307\u9488\u6837\u5F0F","preference.terminal.integrated.cursorStyleDesc":"\u4FEE\u6539\u7EC8\u7AEF\u8F93\u5165\u6307\u9488\u6837\u5F0F","settings.group.general":"\u5E38\u89C4","settings.group.shortcut":"\u5FEB\u6377\u952E","settings.group.editor":"\u7F16\u8F91\u5668","settings.group.extension":"\u6269\u5C55","settings.group.feature":"\u529F\u80FD","settings.group.terminal":"\u7EC8\u7AEF","settings.group.view":"\u89C6\u56FE","preference.general.theme":"\u4E3B\u9898","preference.general.icon":"\u6587\u4EF6\u56FE\u6807\u4E3B\u9898","preference.general.productIconTheme":"\u4EA7\u54C1\u56FE\u6807\u4E3B\u9898","preference.workbench.colorCustomizations":"\u8986\u76D6\u5F53\u524D\u6240\u9009\u989C\u8272\u4E3B\u9898\u7684\u989C\u8272","preference.general.language":"\u8BED\u8A00","preference.general.language.change.refresh.info":"\u66F4\u6539\u8BED\u8A00\u540E\u9700\u91CD\u542F\u540E\u751F\u6548\uFF0C\u662F\u5426\u7ACB\u5373\u5237\u65B0?","preference.general.language.change.refresh.now":"\u7ACB\u5373\u5237\u65B0","preference.general.language.change.refresh.later":"\u7A0D\u540E\u81EA\u5DF1\u5237\u65B0","preference.workbench.refactoringChanges.showPreviewStrategy":"\u89E6\u53D1\u4E00\u4E9B\u91CD\u6784\u53D8\u66F4\u65F6\uFF0C\u662F\u5426\u9700\u8981\u5F39\u7A97\u786E\u8BA4","preference.workbench.refactoringChanges.showPreviewStrategy.title":"\u91CD\u6784\u786E\u8BA4\u65B9\u5F0F","preference.editor.wrapTab":"\u7F16\u8F91\u5668 Tab \u81EA\u52A8\u6362\u884C","preference.editor.fontFamily":"\u5B57\u4F53","preference.editor.minimap":"\u663E\u793A Minimap","preference.editor.forceReadOnly":"\u53EA\u8BFB\u6A21\u5F0F","preference.editor.renderLineHighlight":"\u5F53\u524D\u884C\u7A81\u51FA\u663E\u793A","preference.editor.fontWeight":"\u5B57\u4F53\u7C97\u7EC6","preference.editor.fontSize":"\u5B57\u4F53\u5927\u5C0F","preference.editor.tabSize":"Tab \u7F29\u8FDB\u5927\u5C0F","preference.editor.detectIndentation":"\u81EA\u52A8\u68C0\u6D4B\u7F29\u8FDB\u5927\u5C0F","preference.editor.renderWhitespace":"\u663E\u793A\u7A7A\u767D\u5B57\u7B26","preference.editor.cursorStyle":"\u5149\u6807\u6837\u5F0F","preference.editor.insertSpace":"\u4F7F\u7528\u7A7A\u683C\u4EE3\u66FF Tab","preference.editor.wordWrap":"\u81EA\u52A8\u6362\u884C","preference.editor.wordWrapColumn":"\u81EA\u52A8\u6362\u884C\u957F\u5EA6","preference.editor.askIfDiff":"\u4FDD\u5B58\u6587\u4EF6\u51B2\u7A81\u65F6\u63D0\u793A","preference.editor.readonlyFiles":"\u53EA\u8BFB\u6587\u4EF6\u5217\u8868","preference.editor.formatOnSaveTimeout":"\u683C\u5F0F\u5316\u8D85\u65F6\u65F6\u95F4","preference.editor.formatOnSaveTimeoutError":"\u683C\u5F0F\u5316\u65F6\u95F4\u8D85\u8FC7 {0} \u6BEB\u79D2\uFF0C\u7EC8\u6B62\u683C\u5F0F\u5316","preference.editor.autoSave":"\u81EA\u52A8\u4FDD\u5B58\u6587\u4EF6","preference.editor.autoSaveDelay":"\u81EA\u52A8\u4FDD\u5B58\u5EF6\u8FDF","preference.editor.maxTokenizationLineLength":"\u6700\u5927\u89E3\u6790\u6807\u8BC6\u957F\u5EA6","preference.editor.quickSuggestionsDelay":"\u667A\u80FD\u63D0\u793A\u5EF6\u8FDF\uFF08\u6BEB\u79D2\uFF09","preference.editor.largeFile":"\u8D85\u5927\u6587\u4EF6\u5C3A\u5BF8","preference.editor.streamLargeFile":"\u5927\u6587\u4EF6\u4F7F\u7528\u6D41\u5F0F\u8BFB\u53D6","preference.files.eol":"\u6587\u4EF6\u884C\u5C3E\u5B57\u7B26","preference.files.trimFinalNewlines":"\u79FB\u9664\u6700\u540E\u7684\u6362\u884C\u7B26","preference.files.trimTrailingWhitespace":"\u79FB\u9664\u7ED3\u5C3E\u7A7A\u683C","preference.files.insertFinalNewline":"\u7ED3\u5C3E\u5904\u63D2\u5165\u7A7A\u884C","preference.editor.formatOnPaste":"\u7C98\u8D34\u65F6\u81EA\u52A8\u683C\u5F0F\u5316","preference.editor.preferredFormatter":"\u9ED8\u8BA4\u683C\u5F0F\u5316\u5668","preference.editor.bracketPairColorization.enabled":"\u62EC\u53F7\u7740\u8272","preference.array.additem":"\u6DFB\u52A0","preference.editor.lineHeight":"\u884C\u9AD8","preference.editor.saveCodeActions":"\u4FDD\u5B58\u65F6\u8FD0\u884C\u7684\u4EE3\u7801\u64CD\u4F5C\u7C7B\u578B","preference.editor.saveCodeActionsNotification":"\u4EE3\u7801\u64CD\u4F5C\u6267\u884C\u65F6\u662F\u5426\u5C55\u793A\u901A\u77E5\u4FE1\u606F","preference.item.notValid":"{0} \u4E0D\u662F\u6709\u6548\u9009\u9879","editor.saveAll":"\u4FDD\u5B58\u5168\u90E8","editor.saveCodeActions.getting":"\u4ECE {0} \u4E2D\u83B7\u53D6 CodeAction","editor.saveCodeActions.saving":'\u4FDD\u5B58 "{0}"',"editor.autoSave.enum.off":"\u4E0D\u542F\u7528","editor.files.eol":"\u6587\u4EF6\u884C\u5C3E\u5B57\u7B26","editor.files.eolDesc":"\u63A7\u5236\u6587\u4EF6\u9ED8\u8BA4\u884C\u5C3E\u5B57\u7B26\u3002","editor.autoSave.enum.editorFocusChange":"\u7F16\u8F91\u5668\u5931\u53BB\u7126\u70B9\u65F6\u81EA\u52A8\u4FDD\u5B58","editor.autoSave.enum.afterDelay":"\u7F16\u8F91\u540E\u81EA\u52A8\u4FDD\u5B58\uFF08\u5EF6\u8FDF\u4E00\u5B9A\u65F6\u95F4\uFF09","editor.autoSave.enum.windowLostFocus":"\u7A97\u53E3\u5931\u53BB\u7126\u70B9\u65F6\u81EA\u52A8\u4FDD\u5B58","editor.action.accept":"\u63A5\u53D7\u66F4\u6539\uFF08\u4F7F\u7528\u53F3\u8FB9)","editor.action.revert":"\u56DE\u9000\u66F4\u6539\uFF08\u4F7F\u7528\u5DE6\u8FB9)","editor.format.chooseFormatter":"\u9009\u62E9\u8981\u4F7F\u7528\u7684\u683C\u5F0F\u5316\u6269\u5C55\u3002","editor.formatDocument.label.multiple":"\u4F7F\u7528...\u683C\u5F0F\u5316\u6587\u6863","editor.formatSelection.label.multiple":"\u683C\u5F0F\u5316\u9009\u5B9A\u5185\u5BB9\u7684\u65B9\u5F0F...","editor.chooseEncoding":"\u7528\u7F16\u7801\u91CD\u65B0\u6253\u5F00(\u4F1A\u4E22\u5931\u672A\u4FDD\u5B58\u5185\u5BB9)","editor.guessEncodingFromContent":"\u901A\u8FC7\u5185\u5BB9\u731C\u6D4B","editor.changeEol":"\u9009\u62E9\u884C\u5C3E\u5E8F\u5217","editor.changeLanguageId":"\u9009\u62E9\u8BED\u8A00\u6A21\u5F0F","editor.tokenize.test":"\u83B7\u53D6\u9009\u4E2D\u5B57\u7B26\u4E32\u7684Tokenize\u7ED3\u679C(console)","editor.largeFile.prevent":"\u6587\u4EF6\u8FC7\u5927\uFF0C\u7EE7\u7EED\u6253\u5F00\u53EF\u80FD\u4F1A\u5BFC\u81F4\u5361\u987F\u6216\u8005\u5D29\u6E83\u3002","editor.file.prevent.stillOpen":"\u4ECD\u8981\u6253\u5F00","editor.closeEditorsInOtherGroups":"\u5173\u95ED\u5176\u4ED6\u7EC4\u4E2D\u7684\u7F16\u8F91\u5668","editor.resetEditorGroups":"\u91CD\u7F6E\u7F16\u8F91\u5668\u7EC4\u5927\u5C0F","editor.revert":"\u8FD8\u539F\u6587\u6863","preference.diffEditor.renderSideBySide":"\u663E\u793A\u5E76\u6392\u5DEE\u5F02\u7F16\u8F91\u5668","preference.diffEditor.ignoreTrimWhitespace":"\u5FFD\u7565\u5DEE\u5F02\u7F16\u8F91\u5668\u7684\u524D\u5BFC\u548C\u5C3E\u968F\u7A7A\u767D\u5B57\u7B26","preference.mergeEditor.autoApplyNonConflictChanges":"\u81EA\u52A8\u5408\u5E76\u975E\u51B2\u7A81\u53D8\u66F4","status.editor.chooseLanguage":"\u9009\u62E9\u8BED\u8A00\u6A21\u5F0F","status.editor.goToLineCol":"\u8F6C\u5230\u884C/\u5217","status.editor.chooseEncoding":"\u9009\u62E9\u7F16\u7801","status.editor.changeEol":"\u9009\u62E9\u884C\u5C3E\u5E8F\u5217","common.preference.open":"\u8BBE\u7F6E","common.keymaps.open":"\u5FEB\u6377\u952E","common.about":"\u5173\u4E8E","common.find":"\u67E5\u627E","common.replace":"\u66FF\u6362","common.remoteMode":"\u8FDC\u7A0B\u6A21\u5F0F","component.message.origin":"\u6765\u6E90","component.modal.okText":"\u786E\u5B9A","component.modal.cancelText":"\u53D6\u6D88","component.modal.justOkText":"\u77E5\u9053\u4E86","preference.tab.user":"\u5168\u5C40\u8BBE\u7F6E","preference.tab.workspace":"\u5DE5\u4F5C\u533A\u8BBE\u7F6E","preference.tab.name":"\u8BBE\u7F6E","preference.noResults":"\u672A\u627E\u5230\u5305\u542B '{0}' \u7684\u8BBE\u7F6E\u9879","preference.empty":"\u52A0\u8F7D\u8BBE\u7F6E\u9879...","preference.editSettingsJson":"\u5728 settings.json \u4E2D\u7F16\u8F91","preference.overwritten":"\uFF08\u5DF2\u88AB\u4E0B\u4E00\u7EA7\u8BBE\u7F6E\u8986\u76D6\uFF09","preference.overwrittenInUser":"\uFF08\u5DF2\u5728\u5168\u5C40\u8BBE\u7F6E\u4E2D\u8BBE\u7F6E\uFF09","preference.overwrittenInWorkspace":"\uFF08\u5DF2\u5728\u5DE5\u4F5C\u533A\u8BBE\u7F6E\u4E2D\u8BBE\u7F6E\uFF09","preference.searchPlaceholder":"\u641C\u7D22\u8BBE\u7F6E...","keymaps.tab.name":"\u5FEB\u6377\u952E\u8BBE\u7F6E","marketplace.extension.update.now":"\u662F\uFF0C\u73B0\u5728\u66F4\u65B0","marketplace.extension.update.delay":"\u7A0D\u540E\u6211\u81EA\u5DF1\u66F4\u65B0","marketplace.extension.uninstall.failed":"\u5378\u8F7D\u5931\u8D25","marketplace.extension.uninstall.failed.depended":'\u65E0\u6CD5\u5378\u8F7D\u6269\u5C55\u7A0B\u5E8F "{0}"\u3002 \u6269\u5C55\u7A0B\u5E8F "{1}" \u4F9D\u8D56\u4E8E\u6B64',"marketplace.extension.disabled.failed.depended":'\u65E0\u6CD5\u7981\u7528\u6269\u5C55 "{0}"\u3002\u6269\u5C55 "{1}" \u4F9D\u8D56\u4E8E\u6B64\u3002',"marketplace.extension.reload.delay":"\u7A0D\u540E\u6211\u81EA\u5DF1\u91CD\u542F","marketplace.extension.reload.now":"\u662F\uFF0C\u73B0\u5728\u91CD\u542F","marketplace.extension.enable":"\u542F\u7528","marketplace.extension.disable":"\u7981\u7528","marketplace.extension.enable.workspace":"\u542F\u7528(\u5DE5\u4F5C\u7A7A\u95F4)","marketplace.extension.disable.workspace":"\u7981\u7528(\u5DE5\u4F5C\u7A7A\u95F4)","marketplace.extension.enable.all":"\u542F\u7528\u6240\u6709\u63D2\u4EF6","marketplace.extension.disable.all":"\u7981\u7528\u6240\u6709\u63D2\u4EF6","marketplace.extension.builtin":"\u5185\u7F6E","marketplace.extension.development":"\u5F00\u53D1\u6A21\u5F0F","marketplace.extension.install":"\u5B89\u88C5","marketplace.extension.container":"\u6269\u5C55\u5E02\u573A","marketplace.extension.empty.disabled":"\u6682\u65E0\u5DF2\u7981\u7528\u7684\u6269\u5C55","marketplace.extension.notfound":"\u627E\u4E0D\u5230\u6269\u5C55","marketplace.panel.hot":"\u70ED\u95E8\u63D2\u4EF6","marketplace.panel.search":"\u641C\u7D22","marketplace.panel.enabled":"\u5DF2\u542F\u7528","marketplace.panel.disabled":"\u5DF2\u7981\u7528","marketplace.panel.tab.marketplace":"\u6269\u5C55\u5E02\u573A","marketplace.panel.tab.placeholder.search":"\u641C\u7D22\u5E02\u573A\u4E2D\u7684\u6269\u5C55","marketplace.panel.tab.placeholder.installed":"\u641C\u7D22\u5DF2\u5B89\u88C5\u7684\u6269\u5C55","marketplace.tab.installed":"\u5DF2\u5B89\u88C5\u7684\u6269\u5C55","marketplace.extension.findUpdate":"\u53D1\u73B0\u63D2\u4EF6 {0} \u6709\u6700\u65B0\u7248\u672C {1}\uFF0C\u662F\u5426\u8981\u66F4\u65B0\u5230\u6700\u65B0\u7248\u672C\uFF1F","marketplace.extension.updateAll":"\u53D1\u73B0\u6709\u591A\u4E2A\u6269\u5C55\u53EF\u4EE5\u66F4\u65B0\uFF0C\u662F\u5426\u4E00\u952E\u5168\u90E8\u66F4\u65B0\uFF1F","marketplace.extension.needreloadFromAll":"\u6240\u6709\u6269\u5C55\u66F4\u65B0\u5B8C\u6BD5\uFF0C\u91CD\u542F\u540E\u751F\u6548\uFF0C\u662F\u5426\u7ACB\u5373\u91CD\u542F\uFF1F","marketplace.extension.needreload":"\u63D2\u4EF6 {0} \u66F4\u65B0\u6210\u529F\uFF0C\u91CD\u542F\u540E\u751F\u6548\uFF0C\u662F\u5426\u7ACB\u5373\u91CD\u542F\uFF1F","marketplace.extension.canupdate":"\u6709\u65B0\u7248\u672C","marketplace.extension.updating":"\u66F4\u65B0\u4E2D","marketplace.extension.update":"\u66F4\u65B0","marketplace.extension.installing":"\u5B89\u88C5\u4E2D","marketplace.extension.reloadrequire":"\u9700\u8981\u91CD\u542F","marketplace.extension.uninstalling":"\u5378\u8F7D\u4E2D","marketplace.extension.uninstall":"\u5378\u8F7D","marketplace.extension.uninstalled":"\u5DF2\u5378\u8F7D","marketplace.extension.readme":"\u7B80\u4ECB","marketplace.extension.changelog":"\u66F4\u6539\u65E5\u5FD7","marketplace.extension.dependencies":"\u4F9D\u8D56\u9879","marketplace.extension.installed":"\u5DF2\u5B89\u88C5","marketplace.extension.otherVersion":"\u5B89\u88C5\u5176\u4ED6\u7248\u672C","marketplace.extension.currentVersion":"\u5F53\u524D\u7248\u672C","marketplace.quickopen.install":"\u5B89\u88C5\u63D2\u4EF6","marketplace.quickopen.install.byReleaseId":"\u5B89\u88C5\u63D2\u4EF6 (ReleaseId)","marketplace.quickopen.install.releaseId":"\u6269\u5C55 ReleaseId","marketplace.quickopen.install.releaseId.required":"\u6269\u5C55 ReleaseId \u5FC5\u586B","marketplace.quickopen.install.id":"\u6269\u5C55 ID","marketplace.quickopen.install.id.required":"\u6269\u5C55 ID \u5FC5\u586B","marketplace.quickopen.install.version.required":"\u6269\u5C55\u7248\u672C\u5FC5\u586B","marketplace.quickopen.install.version.placeholder":"\u6269\u5C55\u7248\u672C","marketplace.quickopen.install.error":"\u5B89\u88C5\u63D2\u4EF6\u62A5\u9519","validate.tree.emptyFileNameError":"\u9700\u63D0\u4F9B\u53EF\u7528\u7684\u6587\u4EF6\u6216\u6587\u4EF6\u5939\u540D\u79F0","validate.tree.fileNameStartsWithSlashError":"\u6587\u4EF6\u6216\u6587\u4EF6\u5939\u540D\u79F0\u4E0D\u80FD\u4EE5/\u5F00\u5934","validate.tree.fileNameFollowOrStartWithSpaceWarning":"\u5728\u6587\u4EF6\u6216\u6587\u4EF6\u5939\u540D\u79F0\u4E2D\u68C0\u67E5\u5230\u524D\u5BFC\u6216\u5C3E\u968F\u7A7A\u683C","validate.tree.fileNameExistsError":"\u6587\u4EF6\u6216\u6587\u4EF6\u5939 **{0}** \u5DF2\u5B58\u5728. \u8BF7\u4F7F\u7528\u53E6\u5916\u7684\u540D\u79F0.","validate.tree.invalidFileNameError":"\u540D\u79F0 **{0}** \u4E0D\u53EF\u7528. \u8BF7\u4F7F\u7528\u53E6\u5916\u7684\u540D\u79F0.","editor.close.all":"\u5173\u95ED\u5168\u90E8\u7F16\u8F91\u5668","opened.editors.title":"\u6253\u5F00\u7684\u7F16\u8F91\u5668","opened.editors.save.all":"\u4FDD\u5B58\u5168\u90E8","opened.editors.close.all":"\u5173\u95ED\u5168\u90E8","opened.editors.close.byGroup":"\u5173\u95ED\u7EC4","opened.editors.save.byGroup":"\u4FDD\u5B58\u7EC4\u4E2D\u672A\u4FDD\u5B58\u6587\u4EF6","opened.editors.empty":"\u7F16\u8F91\u5668\u4E2D\u6682\u65E0\u6253\u5F00\u6587\u4EF6","opened.editors.group.title":"\u7B2C{0}\u7EC4","opened.editors.open":"\u6253\u5F00\u6587\u4EF6","opened.editors.openToTheSide":"\u4FA7\u8FB9\u680F\u6253\u5F00","opened.editors.compare":"\u4E0E\u5F53\u524D\u6587\u4EF6\u6BD4\u8F83","opened.editors.copyRelativePath":"\u590D\u5236\u76F8\u5BF9\u8DEF\u5F84","opened.editors.copyPath":"\u590D\u5236\u8DEF\u5F84","opened.editors.unsaved":"{0} \u4E2A\u672A\u4FDD\u5B58","terminal.name":"\u7EC8\u7AEF","terminal.disconnected":"\u7EC8\u7AEF\u65AD\u5F00\u8FDE\u63A5","terminal.can.not.create":"\u521B\u5EFA\u7EC8\u7AEF\u5931\u8D25","terminal.can.not.reconnect":"\u7EC8\u7AEF\u4E0D\u53EF\u7528\uFF0C\u8BF7","terminal.stop":"\u7EC8\u6B62\u7EC8\u7AEF","terminal.try.reconnect":"\u91CD\u65B0\u8FDE\u63A5\u7EC8\u7AEF","terminal.try.recreate":"\u91CD\u65B0\u542F\u52A8\u7EC8\u7AEF","terminal.new":"\u65B0\u5EFA\u7EC8\u7AEF","terminal.new.type":"\u6839\u636E\u7EC8\u7AEF\u7C7B\u578B\u65B0\u5EFA","terminal.split":"\u62C6\u5206\u7EC8\u7AEF","terminal.clear":"\u7EC8\u6B62\u6240\u6709\u7EC8\u7AEF","terminal.clear.content":"\u6E05\u7A7A\u5F53\u524D\u7EC8\u7AEF\u5185\u5BB9","terminal.independ":"\u72EC\u7ACB\u7EC8\u7AEF","terminal.maximum":"\u6700\u5927\u5316\u9762\u677F\u5927\u5C0F","terminal.or":"\u6216\u8005","terminal.search":"\u641C\u7D22","terminal.search.next":"\u641C\u7D22\u4E0B\u4E00\u4E2A\u5339\u914D\u9879","terminal.openWithPath":"\u5728\u7EC8\u7AEF\u4E2D\u6253\u5F00","terminal.remove":"\u7EC8\u6B62\u7EC8\u7AEF","terminal.relaunch":"\u91CD\u542F\u7EC8\u7AEF","terminal.menu.clearGroups":"\u6E05\u9664\u6240\u6709\u7EC8\u7AEF","terminal.menu.search":"\u641C\u7D22","terminal.menu.split":"\u62C6\u5206\u7EC8\u7AEF","terminal.menu.rename":"\u91CD\u547D\u540D","terminal.menu.selectAll":"\u5168\u9009","terminal.menu.copy":"\u590D\u5236","terminal.menu.paste":"\u7C98\u8D34","terminal.menu.clear":"\u6E05\u7A7A","terminal.menu.stop":"\u7EC8\u6B62","terminal.menu.stopGroup":"\u7EC8\u6B62\u7EC8\u7AEF","terminal.menu.clearCurrentContent":"\u6E05\u7A7A\u5F53\u524D\u7EC8\u7AEF\u65E5\u5FD7","terminal.menu.selectCurrentContent":"\u9009\u4E2D\u5F53\u524D\u7EC8\u7AEF\u65E5\u5FD7","terminal.menu.clearAllContents":"\u6E05\u7A7A\u6240\u6709\u7EC8\u7AEF\u65E5\u5FD7","terminal.menu.selectAllContent":"\u9009\u4E2D\u6240\u6709\u7EC8\u7AEF\u65E5\u5FD7","terminal.menu.selectType":"\u9ED8\u8BA4\u7EC8\u7AEF\u7C7B\u578B","terminal.menu.moreSettings":"\u66F4\u591A\u8BBE\u7F6E","terminal.environment.changed":"\u7EC8\u7AEF\u73AF\u5883\u53D8\u91CF\u5DF2\u7ECF\u88AB\u90E8\u5206\u63D2\u4EF6\u4FEE\u6539","terminal.environment.changes":"\u6269\u5C55\u671F\u671B\u5BF9\u7EC8\u7AEF\u7684\u73AF\u5883\u53D8\u91CF\u505A\u4EE5\u4E0B\u66F4\u6539\uFF1A","terminal.environment.removal":"\u6269\u5C55\u671F\u671B\u4ECE\u73B0\u6709\u7684\u7EC8\u7AEF\u73AF\u5883\u53D8\u91CF\u4E2D\u5220\u9664\u4EE5\u4E0B\u503C\uFF1A","terminal.launchFail.cwdNotDirectory":'\u7EC8\u7AEF\u542F\u52A8\u76EE\u5F55 (cwd) "{0}" \u4E0D\u662F\u4E00\u4E2A\u6587\u4EF6\u5939',"terminal.launchFail.cwdDoesNotExist":'\u7EC8\u7AEF\u542F\u52A8\u76EE\u5F55 (cwd) "{0}" \u4E0D\u5B58\u5728',"terminal.launchFail.executableIsNotFileOrSymlink":'\u7EC8\u7AEF\u542F\u52A8\u7684\u53EF\u6267\u884C\u6587\u4EF6 "{0}" \u7684\u8DEF\u5F84\u975E\u6587\u4EF6\u6216\u7B26\u53F7\u94FE\u63A5',"terminal.launchFail.executableDoesNotExist":'\u7EC8\u7AEF\u542F\u52A8\u7684\u53EF\u6267\u884C\u6587\u4EF6 "{0}" \u7684\u8DEF\u5F84\u4E0D\u5B58\u5728',"terminal.openFile":"\u6253\u5F00\u6587\u4EF6","terminal.focusFolder":"\u805A\u7126\u8D44\u6E90\u7BA1\u7406\u5668\u4E2D\u7684\u6587\u4EF6\u5939","terminal.openFolder":"\u5728\u65B0\u7A97\u53E3\u4E2D\u6253\u5F00\u6587\u4EF6\u5939","terminal.toggleTerminal":"\u5207\u6362\u7EC8\u7AEF\u9762\u677F","terminal.killProcess":"\u7ED3\u675F\u8FDB\u7A0B","terminal.process.unHealthy":"*\u6B64\u7EC8\u7AEF\u4F1A\u8BDD\u5DF2\u88AB\u7CFB\u7EDF\u8D85\u65F6\u56DE\u6536\uFF0C\u8BF7\u6253\u5F00\u65B0\u7684\u7EC8\u7AEF\u4F1A\u8BDD\u6765\u8FDB\u884C\u64CD\u4F5C","terminal.selectCWDForNewTerminal":"\u4E3A\u65B0 terminal \u9009\u62E9\u5F53\u524D\u5DE5\u4F5C\u8DEF\u5F84","view.command.show":"\u6253\u5F00 {0}","layout.tabbar.setting":"\u6253\u5F00\u504F\u597D\u8BBE\u7F6E","terminal.focusNext.inTerminalGroup":"\u805A\u7126\u5F53\u524D\u7EC8\u7AEF\u7EC4\u4E2D\u7684\u4E0B\u4E00\u4E2A\u7EC8\u7AEF","terminal.focusPrevious.inTerminalGroup":"\u805A\u7126\u5F53\u524D\u7EC8\u7AEF\u7EC4\u4E2D\u7684\u4E0A\u4E00\u4E2A\u7EC8\u7AEF","terminal.ai.requesting":"AI \u8BF7\u6C42\u4E2D...","terminal.ai.selectHint":"\u952E\u76D8 \u2191\u2193 \u952E\u9009\u62E9\u547D\u4EE4\uFF0C\u23CE \u786E\u8BA4\u547D\u4EE4","terminal.ai.thinking":"AI \u601D\u8003\u4E2D...","terminal.ai.escClose":"\u6309 ESC \u5173\u95ED\u5F39\u6846","terminal.ai.headerHint":"\u4F7F\u7528 AI \u83B7\u5F97\u7EC8\u7AEF\u8F93\u5165\u63D0\u793A","terminal.ai.inputHint":"\u8F93\u5165\u81EA\u7136\u8BED\u8A00\u751F\u6210\u547D\u4EE4\uFF0C\u793A\u4F8B\uFF1A\u5C55\u793A\u5F53\u524D\u8FDB\u7A0B pid","terminal.ai.inputSharpToGetHint":"\u8F93\u5165 # \u6765\u83B7\u53D6 AI \u5EFA\u8BAE\u547D\u4EE4","terminal.ai.cannotGetTerminalConnection":"\u65E0\u6CD5\u83B7\u53D6\u7EC8\u7AEF\u8FDE\u63A5\uFF0C\u8BF7\u5230\u7528\u6237\u7FA4\u53CD\u9988","debugger.menu.setValue":"\u8BBE\u7F6E\u53D8\u91CF","debugger.menu.setValue.param":"\u8BF7\u8F93\u5165\u4F60\u8981\u6539\u53D8\u53D8\u91CF\u7684\u503C","debugger.menu.copyValue":"\u590D\u5236\u503C","debugger.menu.copyEvaluatePath":"\u590D\u5236\u8868\u8FBE\u5F0F","debugger.menu.addToWatchExpressions":"\u6DFB\u52A0\u5230\u76D1\u89C6","debugger.menu.restartFrame":"\u91CD\u542F\u6808\u5E27","debugger.menu.copyCallstack":"\u590D\u5236\u5806\u6808","theme.toggle":"\u989C\u8272\u4E3B\u9898","theme.icon.toggle":"\u6587\u4EF6\u56FE\u6807\u4E3B\u9898","theme.productIcon.toggle":"\u4EA7\u54C1\u56FE\u6807\u4E3B\u9898","theme.base.vs":"\u6D45\u8272\u4E3B\u9898","theme.base.vs-dark":"\u6DF1\u8272\u4E3B\u9898","theme.base.hc":"\u9AD8\u5BF9\u6BD4\u5EA6\u4E3B\u9898","theme.current":"\u5F53\u524D\u4E3B\u9898","theme.quickopen.plh":"\u9009\u62E9\u4E3B\u9898\uFF08\u4E0A\u4E0B\u79FB\u52A8\u5149\u6807\u9884\u89C8\uFF09","theme.icon.quickopen.plh":"\u9009\u62E9\u56FE\u6807\u4E3B\u9898\uFF08\u4E0A\u4E0B\u79FB\u52A8\u5149\u6807\u9884\u89C8\uFF09","theme.productIcon.quickopen.plh":"\u9009\u62E9\u4EA7\u54C1\u56FE\u6807\u4E3B\u9898\uFF08\u4E0A\u4E0B\u79FB\u52A8\u5149\u6807\u9884\u89C8\uFF09","preference.workbench.list.openMode":"\u63A7\u5236\u5982\u4F55\u4F7F\u7528\u9F20\u6807\u5C55\u5F00\u6811\u548C\u6253\u5F00\u5217\u8868\u9879\uFF08\u82E5\u652F\u6301\uFF09\u3002\u5982\u679C\u6B64\u8BBE\u7F6E\u4E0D\u9002\u7528\uFF0C\u67D0\u4E9B\u6811\u548C\u5217\u8868\u53EF\u80FD\u4F1A\u9009\u62E9\u5FFD\u7565\u6B64\u8BBE\u7F6E\u3002","preference.workbench.list.openMode.title":"\u6811\u5C55\u5F00/\u5217\u8868\u9879\u6253\u5F00\u65B9\u5F0F","keymaps.search.placeholder":"\u8F93\u5165\u5173\u952E\u5B57\u67E5\u627E","keymaps.search.keyboard.placeholder":"\u8F93\u5165\u5FEB\u6377\u952E","keymaps.header.command.title":"\u547D\u4EE4","keymaps.header.source.title":"\u4F5C\u7528\u57DF","keymaps.header.keybinding.title":"\u5FEB\u6377\u952E","keymaps.header.when.title":"\u6761\u4EF6","keymaps.commandId.title":"\u547D\u4EE4 ID\uFF1A{0}","keymaps.source.default":"\u9ED8\u8BA4","keymaps.source.user":"\u7528\u6237","keymaps.source.workspace":"\u5DE5\u4F5C\u533A","keymaps.keybinding.full.collide":'\u8BE5\u5FEB\u6377\u952E\u4E0E"{0}"\u547D\u4EE4\u51B2\u7A81\uFF0C\u8BF7\u91CD\u65B0\u8BBE\u7F6E',"keymaps.keybinding.partial.collide":'\u8BE5\u5FEB\u6377\u952E\u4E0E"{0}"\u547D\u4EE4\u5B58\u5728\u5305\u542B\u5173\u7CFB\u51B2\u7A81\uFF0C\u8BF7\u91CD\u65B0\u8BBE\u7F6E',"keymaps.keybinding.shadow.collide":'\u8BE5\u5FEB\u6377\u952E\u4E0E"{0}"\u547D\u4EE4\u5B58\u5728\u5305\u542B\u5173\u7CFB\u51B2\u7A81\uFF0C\u8BF7\u91CD\u65B0\u8BBE\u7F6E',"keymaps.keybinding.duplicate":"\u8BE5\u5FEB\u6377\u952E\u5DF2\u7ED1\u5B9A\u4EE5\u4E0B {0} \u6761\u547D\u4EE4\uFF1A","keymaps.keybinding.loading":"\u6B63\u5728\u4FEE\u6539\u5FEB\u6377\u952E ...","keymaps.keybinding.success":"\u4FEE\u6539\u5FEB\u6377\u952E\u6210\u529F","keymaps.keybinding.fail":"\u4FEE\u6539\u5FEB\u6377\u952E\u5931\u8D25","keymaps.keybinding.require":"\u8BF7\u8F93\u5165\u5FEB\u6377\u952E","keymaps.action.edit":"\u7F16\u8F91\u5FEB\u6377\u952E","keymaps.action.add":"\u6DFB\u52A0\u5FEB\u6377\u952E","keymaps.action.reset":"\u91CD\u7F6E\u5FEB\u6377\u952E","keymaps.action.clear":"\u6E05\u7A7A","keymaps.edit.placeholder":"\u8BF7\u6309 Enter \u952E\u4FDD\u5B58","keymaps.editorTitle.openSource":"\u6253\u5F00\u952E\u76D8\u5FEB\u6377\u65B9\u5F0F(JSON)","keymaps.editorTitle.openKeymap":"\u6253\u5F00\u952E\u76D8\u5FEB\u6377\u65B9\u5F0F(\u53EF\u89C6\u5316)","keybinding.combination.tip":"\u5DF2\u6309\u4E0B({0}), \u7B49\u5F85\u540C\u65F6\u6309\u4E0B\u7B2C\u4E8C\u4E2A\u952E","layout.tabbar.toggle":"\u5207\u6362\u9762\u677F\u663E\u793A/\u9690\u85CF","layout.tabbar.expand":"\u6700\u5927\u5316\u5E95\u90E8\u9762\u677F","layout.tabbar.retract":"\u7F29\u56DE\u5E95\u90E8\u9762\u677F","layout.view.hide":"\u9690\u85CF","layout.action.openView":"\u6253\u5F00\u89C6\u56FE ...","layout.openView.containerTitle":"\u4FA7\u8FB9\u680F / \u9762\u677F","layout.openView.viewTitle":"{0} / \u89C6\u56FE","status-bar.label.line":"\u884C","status-bar.label.column":"\u5217","status-bar.label.selected":"\u5DF2\u9009\u62E9","status-bar.label.tabType.space":"\u7A7A\u683C","status-bar.label.tabType.tab":"Tab \u5927\u5C0F","status-bar.scm":"\u6E90\u7801\u7BA1\u7406","status-bar.editor-selection":"\u5F53\u524D\u9009\u62E9","status-bar.editor-language":"\u9009\u62E9\u8BED\u8A00","status-bar.editor-encoding":"\u9009\u62E9\u7F16\u7801","status-bar.editor-space":"\u9009\u62E9\u7A7A\u683C\u7B26","status-bar.editor-eol":"\u9009\u62E9\u884C\u5C3E\u5B57\u7B26","status-bar.editor-indentation":"\u9009\u62E9\u7F29\u8FDB","status-bar.editor-langStatus":"\u8BED\u8A00\u670D\u52A1\u5668\u72B6\u6001",saveChangesMessage:"\u662F\u5426\u8981\u4FDD\u5B58\u5BF9 {0} \u7684\u66F4\u6539?",saveNFilesChangesMessage:`\u662F\u5426\u4FDD\u5B58\u5BF9\u4EE5\u4E0B {0} \u4E2A\u6587\u4EF6\u7684\u66F4\u6539?
|
|
33508
|
+
- \u5927\u4E8E 8 \u7684\u503C\u5C06\u7528\u4F5C\u6709\u6548\u503C\u3002`,"editor.copyPath":"\u590D\u5236\u8DEF\u5F84","editor.copyRelativePath":"\u590D\u5236\u76F8\u5BF9\u8DEF\u5F84","editor.workspaceSymbol.quickopen":"\u641C\u7D22\u5DE5\u4F5C\u533A\u7B26\u53F7","editor.workspaceSymbolClass.quickopen":"\u641C\u7D22\u5DE5\u4F5C\u533A\u7C7B","editor.workspaceSymbol.description":"\u8DF3\u8F6C\u5DE5\u4F5C\u533A\u7B26\u53F7","editor.workspaceSymbol.search":"\u8BF7\u8F93\u5165\u8981\u641C\u7D22\u7684\u7B26\u53F7","editor.workspaceSymbolClass.search":"\u8BF7\u8F93\u5165\u8981\u641C\u7D22\u7684\u7C7B","editor.workspaceSymbol.notfound":"\u6CA1\u6709\u5339\u914D\u7684\u7B26\u53F7","editor.workspaceSymbolClass.notfound":"\u6CA1\u6709\u5339\u914D\u7684\u7C7B","edit.cut":"\u526A\u5207","edit.copy":"\u590D\u5236","edit.paste":"\u7C98\u8D34","edit.selectAll":"\u5168\u9009","editor.goBack":"\u5411\u540E","editor.goForward":"\u524D\u8FDB","editor.quickOpen":"\u8F6C\u5230\u6587\u4EF6...","editor.editor.goToSymbol":"\u8F6C\u5230\u7B26\u53F7...","editor.goToLine":"\u8F6C\u5230\u884C...","editor.openType":"\u6253\u5F00\u65B9\u5F0F","quickopen.goToLine.defaultMessage":"\u5F53\u524D\u884C: {0}\uFF0C \u5217: {1}\u3002 \u8BF7\u8F93\u5165\u8981\u8F6C\u5230\u7684\u884C\u53F7\uFF1A 1 \u81F3 {2} \u4E4B\u95F4\u7684\u6570\u5B57\u3002","quickopen.goToLine.notValid":"\u8BF7\u6253\u5F00\u4E00\u4E2A\u6709\u6548\u7684\u7F16\u8F91\u5668\u3002","quickopen.goToLine.lineInfo":"\u8F6C\u5230\u884C: {0}","quickopen.goToLine.colInfo":"\uFF0C\u5217: {0}","quickopen.goToLine.desc":"\u8F6C\u5230\u884C...","quickopen.command.placeholder":"\u8BF7\u8F93\u5165\u4F60\u8981\u6267\u884C\u7684\u547D\u4EE4","quickopen.command.description":"\u6267\u884C IDE \u9884\u8BBE\u7684\u547D\u4EE4","quickopen.command.nohandler":"\u627E\u4E0D\u5230\u7ED3\u679C","quickopen.quickinput.prompt":"\u8BF7\u6309 'Enter' \u786E\u8BA4\u6216 'Esc' \u53D6\u6D88","quickopen.tab.file":"\u6587\u4EF6","quickopen.tab.class":"\u7C7B","quickopen.tab.symbol":"\u7B26\u53F7","quickopen.tab.command":"\u6307\u4EE4","quickopen.tab.goToLine":"\u8F6C\u5230\u884C","quickopen.tab.tip.prefix":"\u6309","quickopen.tab.tip.suffix":"\u5207\u6362\u641C\u7D22\u7C7B\u522B","quickOpen.openOnTheRightSide":"\u5728\u4FA7\u8FB9\u6253\u5F00","explorer.title":"\u8D44\u6E90\u7BA1\u7406\u5668","explorer.electron.revealInFinder":"\u5728\u6587\u4EF6\u7CFB\u7EDF\u4E2D\u6253\u5F00","explorer.electron.openInSystemTerminal":"\u5728\u7CFB\u7EDF\u7EC8\u7AEF\u4E2D\u6253\u5F00","explorer.electron.openInSystemTerminal.error":"\u5728\u7CFB\u7EDF\u7EC8\u7AEF\u4E2D\u6253\u5F00 {0} \u5931\u8D25: {1}","search.title":"\u8DE8\u6587\u4EF6\u641C\u7D22","search.input.placeholder":"\u8F93\u5165\u641C\u7D22\u5185\u5BB9","search.input.title":"\u641C\u7D22","search.replace.title":"\u66FF\u6362","search.input.checkbox":"\u663E\u793A\u641C\u7D22\u6761\u4EF6","file-search.command.fileOpen.description":"\u6253\u5F00\u6587\u4EF6","file-search.command.fileOpen.placeholder":"\u6309\u540D\u79F0\u641C\u7D22\u6587\u4EF6\uFF08\u8FFD\u52A0:\u8F6C\u5230\u884C\u6216\u8FFD\u52A0 @ \u8F6C\u5230\u7B26\u53F7\uFF09","search.includes":"\u8981\u5305\u542B\u7684\u6587\u4EF6","search.includes.description":'\u8F93\u5165\u6587\u4EF6\u540D\u6216\u6587\u4EF6\u5939\u540D\uFF0C\u591A\u4E2A\u7528 ", " \u5206\u9694',"search.excludes":"\u8981\u6392\u9664\u7684\u6587\u4EF6","search.excludes.default.enable":"\u542F\u7528\u9ED8\u8BA4\u6392\u9664\u9879","search.replaceAll.label":"\u66FF\u6362\u5168\u90E8","search.replace.label":"\u66FF\u6362\u4E3A","search.files.result":"\u627E\u5230 {1} \u4E2A\u6587\u4EF6\uFF0C\u5171 {0} \u4E2A\u7ED3\u679C","search.CollapseDeepestExpandedLevelAction.label":"\u5168\u90E8\u6298\u53E0","search.ExpandDeepestExpandedLevelAction.label":"\u5168\u90E8\u5C55\u5F00","search.ClearSearchResultsAction.label":"\u6E05\u7A7A\u641C\u7D22\u7ED3\u679C","search.RefreshAction.label":"\u5237\u65B0","search.removeAll.occurrences.files.confirmation.message":"\u786E\u5B9A\u66FF\u6362 {1} \u4E2A\u6587\u4EF6\u4E2D\u7684 {0} \u4E2A\u7ED3\u679C\u5417?","search.removeAll.occurrences.file.confirmation.message":"\u786E\u5B9A\u66FF\u6362\u8BE5\u6587\u4EF6\u4E2D\u7684 {0} \u4E2A\u7ED3\u679C\u5417?","search.result.hide":"\u9690\u85CF","search.menu.copyAll":"\u5168\u90E8\u590D\u5236","search.help.showIncludeRule":"\u67E5\u770B\u8BED\u6CD5\u89C4\u5219","search.help.supportRule":"\u652F\u6301\u4EE5\u4E0B\u8BED\u6CD5\u89C4\u5219\uFF1A","search.help.excludeList":"\u5DF2\u6392\u9664\u9879\u5305\u542B\uFF1A","search.help.concatRule":"\u591A\u4E2A\u6761\u4EF6\u5206\u9694","search.help.matchOneOrMoreRule":"\u5339\u914D\u8DEF\u5F84\u6BB5\u4E2D\u7684\u4E00\u4E2A\u6216\u591A\u4E2A\u5B57\u7B26","search.help.matchOne":"\u5339\u914D\u8DEF\u5F84\u6BB5\u4E2D\u7684\u4E00\u4E2A\u5B57\u7B26","search.help.matchAny":"\u5339\u914D\u4EFB\u610F\u6570\u91CF\u7684\u8DEF\u5F84\u6BB5\uFF0C\u5305\u62EC\u65E0","search.help.matchWithGroup":"\u7EC4\u5408\u6761\u4EF6","search.help.matchRange":"\u5339\u914D\u7684\u5B57\u7B26\u8303\u56F4","search.help.modify":"\u4FEE\u6539","search.replace.buttonOK":"\u66FF\u6362","search.replace.buttonCancel":"\u53D6\u6D88","search.too.many.results":"\u7531\u4E8E\u60A8\u7684\u641C\u7D22\u6761\u4EF6\u8FC7\u4E8E\u758F\u677E\uFF0C\u6211\u4EEC\u4EC5\u5C55\u793A\u4E86\u90E8\u5206\u641C\u7D22\u7ED3\u679C","search.fileReplaceChanges":"{0} \u2194 {1} (\u66FF\u6362\u9884\u89C8)","search.fileResults":"\u6587\u4EF6\u7ED3\u679C","search.fileResults.notfound":"\u6CA1\u6709\u5339\u914D\u7684\u6587\u4EF6","search.fileSymbolResults":"\u7B26\u53F7 ({0})","search.fileSymbolResults.notfound":"\u6CA1\u6709\u5339\u914D\u7684\u7B26\u53F7","search.historyMatches":"\u6700\u8FD1\u6253\u5F00","search.replaceAll.occurrencesMessage":"\u5DF2\u5C06 {1} \u4E2A\u6587\u4EF6\u4E2D\u51FA\u73B0\u7684 {0} \u5904\u66FF\u6362\u4E3A \u201C{2}\u201D\u3002","search.replace.toggle.button.title":"\u5207\u6362\u66FF\u6362","search.caseDescription":"\u533A\u5206\u5927\u5C0F\u5199","search.wordsDescription":"\u5168\u5B57\u5339\u914D","search.regexDescription":"\u4F7F\u7528\u6B63\u5219\u8868\u8FBE\u5F0F","search.includeIgnoredFiles":"\u5305\u542B\u5FFD\u7565\u7684\u6587\u4EF6","search.onlyOpenEditors":"\u4EC5\u5728\u5DF2\u6253\u5F00\u7684\u7F16\u8F91\u5668\u5185\u641C\u7D22","search.noResultsFound":"\u672A\u627E\u5230\u7ED3\u679C\u3002\u67E5\u770B\u60A8\u7684\u8BBE\u7F6E\u914D\u7F6E\u6392\u9664, \u5E76\u68C0\u67E5\u60A8\u7684 gitignore \u6587\u4EF6","quickopen.recent-commands":"\u6700\u8FD1\u4F7F\u7528","quickopen.other-commands":"\u5176\u4ED6\u547D\u4EE4","quickopen.commands.notfound":"\u6CA1\u6709\u5339\u914D\u7684\u6307\u4EE4",mSelection:"\u9009\u62E9","selection.all":"\u9009\u62E9\u5168\u90E8","dialog.confirm":"\u77E5\u9053\u4E86","dialog.file.name":"\u6587\u4EF6\u540D","dialog.file.title":"\u5B58\u50A8\u76EE\u5F55\uFF1A","dialog.file.openLabel":"\u6253\u5F00\u6587\u4EF6\uFF1A","dialog.file.saveLabel":"\u4FDD\u5B58\u6587\u4EF6\uFF1A","dialog.file.close":"\u5173\u95ED","dialog.file.ok":"\u786E\u5B9A","dialog.ensure":"\u786E\u5B9A","editorOpenType.code":"\u4EE3\u7801","editorOpenType.preview":"\u9884\u89C8","scm.title":"\u6E90\u4EE3\u7801\u7BA1\u7406","scm.action.git.refresh":"\u5237\u65B0","scm.action.git.commit":"\u63D0\u4EA4","scm.action.git.more":"\u66F4\u591A\u64CD\u4F5C...","scm.statusbar.repo":"\u5F53\u524D\u4ED3\u5E93","scm.provider.title":"\u4EE3\u7801\u4ED3\u5E93\u5217\u8868","scm.provider.empty":"\u6CA1\u6709\u53EF\u7528\u7684\u6E90\u4EE3\u7801\u4ED3\u5E93","scm.provider.init":"\u70B9\u51FB\u521D\u59CB\u5316\u4ED3\u5E93","scm.diff.change.next":"\u4E0B\u4E00\u4E2A\u53D8\u5316","scm.diff.change.previous":"\u4E0A\u4E00\u4E2A\u53D8\u5316","scm.diff.toggle.renderSideBySide":"\u5207\u6362\u5185\u8054\u89C6\u56FE","scm.dirtyDiff.changes":"\u7B2C {0} \u4E2A\u66F4\u6539 (\u5171 {1} \u4E2A)","debug.action.start":"\u542F\u52A8\u8C03\u8BD5","debug.action.no.configuration":"\u6682\u65E0\u914D\u7F6E","debug.action.add.smartAddConfiguration":"\u667A\u80FD\u6DFB\u52A0\u914D\u7F6E","debug.action.add.configuration":"\u6DFB\u52A0\u914D\u7F6E","debug.action.edit.configuration":"\u7F16\u8F91\u914D\u7F6E","debug.action.open.launch.editor":"\u4F7F\u7528 UI \u6A21\u5F0F\u7F16\u8F91","debug.action.open.configuration":"\u6253\u5F00 launch.json","debug.action.debug.console":"\u8C03\u8BD5\u63A7\u5236\u53F0","debug.action.step-into":"\u5355\u6B65\u8DF3\u5165","debug.action.step-over":"\u5355\u6B65\u8DF3\u8FC7","debug.action.step-out":"\u5355\u6B65\u8DF3\u51FA","debug.action.restart":"\u91CD\u542F","debug.action.pause":"\u6682\u505C","debug.action.stop":"\u7EC8\u6B62","debug.action.disattach":"\u65AD\u5F00","debug.action.continue":"\u4E0B\u4E00\u6B65","debug.action.runToCursor":"\u8FD0\u884C\u5230\u5149\u6807\u5904","debug.action.forceRunToCursor":"\u5F3A\u5236\u8FD0\u884C\u5230\u5149\u6807\u5904","debug.console.panel.title":"\u8C03\u8BD5\u63A7\u5236\u53F0","debug.console.panel.default":"\u9ED8\u8BA4","debug.console.filter.placeholder":"\u7B5B\u9009\u5668(\u4F8B\u5982 text\u3001!exclude)","debug.console.clear":"\u6E05\u7A7A\u65E5\u5FD7","debug.console.copy":"\u590D\u5236","debug.console.copyAll":"\u590D\u5236\u5168\u90E8","debug.console.collapseAll":"\u6298\u53E0\u5168\u90E8","debug.console.followLink":"\u6309\u4F4F {0} \u5E76\u5355\u51FB\u53EF\u8BBF\u95EE\u94FE\u63A5","debug.console.errorMessage":"\u8C03\u8BD5\u8FDB\u7A0B\u521D\u59CB\u5316\u5F02\u5E38\uFF0C\u8BF7\u6253\u5F00\u63A7\u5236\u9762\u677F\u67E5\u770B\u9519\u8BEF\u65E5\u5FD7","debug.console.input.placeholder":"\u8BF7\u53D1\u8D77\u8C03\u8BD5\u4F1A\u8BDD\u6765\u5BF9\u8868\u8FBE\u5F0F\u6C42\u503C","debug.console.consoleCleared":"\u8F93\u51FA\u5DF2\u6E05\u7406","debug.notSupported.type":'\u8C03\u8BD5\u7C7B\u578B "{0}" \u4E0D\u662F\u652F\u6301\u7684\u8C03\u8BD5\u7C7B\u578B\uFF0C\u8BF7\u68C0\u67E5\u914D\u7F6E\u6216\u5B89\u88C5\u5BF9\u5E94\u8C03\u8BD5\u63D2\u4EF6',"debug.notSupported.any":"\u5F53\u524D\u8C03\u8BD5\u914D\u7F6E\u4E0D\u652F\u6301\uFF0C\u8BF7\u68C0\u67E5\u914D\u7F6E\u6216\u5B89\u88C5\u5BF9\u5E94\u8C03\u8BD5\u63D2\u4EF6","output.tabbar.title":"\u8F93\u51FA","output.channel.none":"<\u8FD8\u6CA1\u6709\u4EFB\u4F55\u8F93\u51FA>","output.configurationTitle":"\u8F93\u51FA\u914D\u7F6E","output.logWhenNoPanel":"\u65E0\u9762\u677F\u65F6\u662F\u5426\u8F93\u51FA\u5230\u6D4F\u89C8\u5668 console","output.maxChannelLine":"\u9650\u5236\u8F93\u51FA\u6700\u5927\u884C\u6570","output.maxChannelLineDesc":"\u9650\u5236\u5355\u4E2A\u8F93\u51FA\u901A\u9053\u6700\u5927\u884C\u6570\uFF0C\u8D85\u51FA\u540E\u4F1A\u81EA\u52A8\u88C1\u526A","output.enableLogHighlight":"\u8F93\u51FA\u6587\u672C\u8BED\u6CD5\u9AD8\u4EAE","output.enableLogHighlightDesc":"\u5BF9\u8F93\u51FA\u6587\u672C\u4F7F\u7528 .log \u8BED\u6CD5\u9AD8\u4EAE\u89E3\u6790\u3002","output.enableSmartScroll":"\u8F93\u51FA\u89C6\u56FE\u667A\u80FD\u6EDA\u52A8","output.enableSmartScrollDesc":"\u5728\u70B9\u51FB\u8F93\u51FA\u89C6\u56FE\u65F6\u7981\u7528\u6EDA\u52A8\uFF0C\u70B9\u51FB\u6700\u540E\u4E00\u884C\u8F93\u51FA\u65F6\u542F\u7528\u6EDA\u52A8\u3002","debug.stack.loadMore":"\u52A0\u8F7D\u66F4\u591A\u5806\u6808","debug.stack.loading":"\u52A0\u8F7D\u4E2D...","debug.stack.showMoreAndOrigin":"\u5C55\u793A {0} \u9879: {1}","debug.breakpoint.deactive":"\u5173\u95ED\u6240\u6709\u65AD\u70B9","debug.breakpoint.active":"\u6FC0\u6D3B\u6240\u6709\u65AD\u70B9","debug.threads.title":"\u8FDB\u7A0B","debug.watch.title":"\u76D1\u89C6","debug.callStack.title":"\u5806\u6808","debug.variables.title":"\u53D8\u91CF","debug.variables.view.memory":"\u67E5\u770B\u4E8C\u8FDB\u5236\u89C6\u56FE","debug.variables.view.memory.prompt.hexEditor.notInstalled":"\u67E5\u770B\u4E8C\u8FDB\u5236\u89C6\u56FE\u9700\u8981\u5B89\u88C5 Hex Editor \u6269\u5C55","debug.breakpoints.title":"\u65AD\u70B9","debug.container.title":"\u8C03\u8BD5\u7BA1\u7406\u5668","debug.breakpoint.toggle":"\u542F\u7528/\u7981\u7528\u65AD\u70B9","debug.breakpoint.removeAll":"\u79FB\u9664\u6240\u6709\u65AD\u70B9","debug.breakpoint.uncaughtExceptions":"\u672A\u6355\u83B7\u7684\u5F02\u5E38","debug.breakpoint.allExceptions":"\u6240\u6709\u5F02\u5E38","debug.watch.removeAll":"\u79FB\u9664\u6240\u6709\u8868\u8FBE\u5F0F","debug.watch.collapseAll":"\u6298\u53E0\u6240\u6709\u8868\u8FBE\u5F0F","debug.watch.add":"\u6DFB\u52A0\u8868\u8FBE\u5F0F","debug.watch.edit":"\u7F16\u8F91\u8868\u8FBE\u5F0F","debug.watch.copyValue":"\u590D\u5236\u503C","debug.watch.remove":"\u5220\u9664\u8868\u8FBE\u5F0F","debug.watch.notAvailable":"\u4E0D\u53EF\u7528","debug.breakpoint.breakpointMessage":"\u65AD\u70B9","debug.breakpoint.logpointMessage":"\u65E5\u5FD7\u65AD\u70B9","debug.breakpoint.conditionalMessage":"\u6761\u4EF6\u65AD\u70B9","debug.breakpoint.unverified":"\u65E0\u6548\u7684","debug.breakpoint.disabled":"\u7981\u7528\u7684","debug.breakpoint.blank":"\u7A7A\u884C","debug.configuration.selectAutomaticDebugTypesHint":"\u81EA\u52A8\u751F\u6210\u7684\u8C03\u8BD5\u914D\u7F6E","debug.configuration.selectAutomaticDebugTypes":"\u9009\u62E9\u8C03\u8BD5\u7C7B\u578B","debug.configuration.selectAutomaticDebugConfiguration":"\u9009\u62E9\u8C03\u8BD5\u914D\u7F6E","debug.configuration.comment1":"\u4F7F\u7528 IntelliSense \u4E86\u89E3\u76F8\u5173\u5C5E\u6027\u3002 ","debug.configuration.comment2":"\u60AC\u505C\u4EE5\u67E5\u770B\u73B0\u6709\u5C5E\u6027\u7684\u63CF\u8FF0\u3002","debug.configuration.comment3":"\u6B32\u4E86\u89E3\u66F4\u591A\u4FE1\u606F\uFF0C\u8BF7\u8BBF\u95EE: https://go.microsoft.com/fwlink/?linkid=830387","debug.launch.existed":'\u8C03\u8BD5\u914D\u7F6E"{0}"\u5DF2\u5728\u8FD0\u884C',"debug.expression.log.placeholder":'\u9047\u5230\u65AD\u70B9\u65F6\u8981\u8BB0\u5F55\u7684\u6D88\u606F\u3002 {}\u4E2D\u7684\u8868\u8FBE\u5F0F\u662F\u63D2\u503C\u7684\u3002. \u6309 "Enter" \u952E\u786E\u8BA4\uFF0C"Esc" \u952E\u53D6\u6D88\u3002',"debug.expression.hit.placeholder":'\u6EE1\u8DB3\u547D\u4E2D\u6B21\u6570\u6761\u4EF6\u65F6\u4E2D\u65AD\u3002 \u6309 "Enter" \u952E\u786E\u8BA4\uFF0C"Esc" \u952E\u53D6\u6D88\u3002',"debug.expression.condition.placeholder":'\u5728\u8868\u8FBE\u5F0F\u7ED3\u679C\u4E3A\u771F\u65F6\u4E2D\u65AD\u3002\u6309 "Enter" \u952E\u786E\u8BA4\uFF0C"Esc" \u952E\u53D6\u6D88\u3002',"debug.expression.condition":"\u8868\u8FBE\u5F0F","debug.expression.hitCondition":"\u547D\u4E2D\u6B21\u6570","debug.expression.logMessage":"\u65E5\u5FD7\u6D88\u606F","debug.menu.delete.breakpoint":"\u5220\u9664\u65AD\u70B9","debug.menu.edit.breakpoint":"\u7F16\u8F91\u65AD\u70B9","debug.menu.disable.breakpoint":"\u7981\u7528\u65AD\u70B9","debug.menu.enable.breakpoint":"\u542F\u7528\u65AD\u70B9","debug.menu.add.logpoint":"\u6DFB\u52A0\u8BB0\u5F55\u70B9","debug.menu.add.conditional":"\u6DFB\u52A0\u6761\u4EF6\u65AD\u70B9","debug.menu.add.breakpoint":"\u6DFB\u52A0\u65AD\u70B9","debug.menu.disable.logpoint":"\u7981\u7528\u8BB0\u5F55\u70B9","debug.menu.title.run":"\u8FD0\u884C\u6216\u8C03\u8BD5...","debug.stack.frame.noSource":"\u672A\u77E5\u6E90","debug.stack.frame.because":"\u56E0","debug.stack.frame.stopped":"\u5DF2\u6682\u505C","debug.stack.frame.running":"\u6B63\u5728\u8FD0\u884C","debug.launch.configurations.debugType":"\u914D\u7F6E\u7C7B\u578B\u3002","debug.launch.configurations.debugTypeNotRecognised":"\u65E0\u6CD5\u8BC6\u522B\u6B64\u8C03\u8BD5\u7C7B\u578B\u3002\u786E\u4FDD\u5DF2\u7ECF\u5B89\u88C5\u5E76\u542F\u7528\u76F8\u5E94\u7684\u8C03\u8BD5\u6269\u5C55\u3002","debug.launch.configurations.node2NotSupported":"\u4E0D\u518D\u652F\u6301 'node2'\uFF0C\u6539\u7528 'node'\uFF0C\u5E76\u5C06 'protocol' \u5C5E\u6027\u8BBE\u4E3A 'inspector'\u3002","debug.launch.configurations.debugName":"\u914D\u7F6E\u540D\u79F0\uFF1B\u5728\u542F\u52A8\u914D\u7F6E\u4E0B\u62C9\u83DC\u5355\u4E2D\u663E\u793A\u3002","debug.launch.configurations.debugRequest":'\u8BF7\u6C42\u914D\u7F6E\u7C7B\u578B\u3002\u53EF\u4EE5\u662F "\u542F\u52A8" \u6216 "\u9644\u52A0"\u3002',"debug.launch.configurations.debugServer":"\u4EC5\u7528\u4E8E\u8C03\u8BD5\u6269\u5C55\u5F00\u53D1: \u5982\u679C\u5DF2\u6307\u5B9A\u7AEF\u53E3\uFF0CVS \u4EE3\u7801\u4F1A\u5C1D\u8BD5\u8FDE\u63A5\u5230\u5728\u670D\u52A1\u5668\u6A21\u5F0F\u4E2D\u8FD0\u884C\u7684\u8C03\u8BD5\u9002\u914D\u5668","debug.launch.configurations.debugPrelaunchTask":"\u8C03\u8BD5\u4F1A\u8BDD\u5F00\u59CB\u524D\u8981\u8FD0\u884C\u7684\u4EFB\u52A1\u3002","debug.launch.configurations.debugPostDebugTask":"\u8C03\u8BD5\u4F1A\u8BDD\u7ED3\u675F\u540E\u8FD0\u884C\u7684\u4EFB\u52A1\u3002","debug.launch.configurations.debugWindowsConfiguration":"\u7279\u5B9A\u4E8E Windows \u7684\u542F\u52A8\u914D\u7F6E\u5C5E\u6027\u3002","debug.launch.configurations.debugOSXConfiguration":"\u7279\u5B9A\u4E8E OS X \u7684\u542F\u52A8\u914D\u7F6E\u5C5E\u6027\u3002","debug.launch.configurations.debugLinuxConfiguration":"\u7279\u5B9A\u4E8E Linux \u7684\u542F\u52A8\u914D\u7F6E\u5C5E\u6027\u3002","debug.launch.typeNotSupported":'\u8C03\u8BD5\u7C7B\u578B "{0}" \u4E0D\u652F\u6301',"debug.launch.catchError":"\u542F\u52A8\u8C03\u8BD5\u8FDB\u7A0B\u65F6\u9047\u5230\u4E86\u9519\u8BEF, \u8BF7\u68C0\u67E5\u8C03\u8BD5\u63A7\u5236\u53F0","debug.launch.view.template.button.addItem":"\u6DFB\u52A0\u4E00\u9879","debug.launch.view.template.input.placeholder":"\u8BF7\u8F93\u5165 {0}","debug.launch.view.template.button.submit":"\u65B0\u589E\u914D\u7F6E\u9879","debug.launch.view.edit.inLaunchJson":"\u5728 launch.json \u4E2D\u7F16\u8F91","debug.widget.exception.thrownWithId":"\u53D1\u751F\u5F02\u5E38: {0}","debug.widget.exception.thrown":"\u51FA\u73B0\u5F02\u5E38\u3002","workspace.openDirectory":"\u6253\u5F00\u6587\u4EF6\u5939","workspace.addFolderToWorkspace":"\u5C06\u6587\u4EF6\u5939\u6DFB\u52A0\u5230\u5DE5\u4F5C\u533A...","workspace.removeFolderFromWorkspace":"\u4ECE\u5DE5\u4F5C\u533A\u79FB\u9664\u6587\u4EF6\u5939","workspace.saveWorkspaceAsFile":"\u5C06\u5DE5\u4F5C\u533A\u53E6\u5B58\u4E3A...","workspace.openWorkspaceTitle":"\u5DE5\u4F5C\u533A","workspace.openWorkspace":"\u6253\u5F00\u5DE5\u4F5C\u533A","window.toggleDevTools":"\u5207\u6362\u5F00\u53D1\u4EBA\u5458\u5DE5\u5177","window.reload":"\u91CD\u8F7D\u7A97\u53E3","preference.menubar.mode.compact":"\u63A7\u5236\u83DC\u5355\u680F\u662F\u5426\u4F7F\u7528\u7D27\u51D1\u6A21\u5F0F","preference.explorer.confirm.delete":"\u63A7\u5236\u662F\u5426\u5728\u5220\u9664\u6587\u4EF6\u65F6\u5F39\u51FA\u786E\u8BA4\u6846","preference.explorer.confirm.move":"\u63A7\u5236\u662F\u5426\u5728\u79FB\u52A8\u6587\u4EF6\u65F6\u5F39\u51FA\u786E\u8BA4\u6846","preference.files.watcherExclude":"\u914D\u7F6E\u6392\u9664\u6587\u4EF6\u76D1\u542C\u7684\u6587\u4EF6\u8DEF\u5F84 glob \u6A21\u5F0F\uFF0C\u6A21\u5F0F\u5FC5\u987B\u5728\u7EDD\u5BF9\u8DEF\u5F84\u4E0A\u5339\u914D\uFF08\u5373\u524D\u7F00\u4E3A ** \u6216\u5B8C\u6574\u8DEF\u5F84\u624D\u80FD\u6B63\u786E\u5339\u914D\uFF09\u3002\u66F4\u6539\u6B64\u8BBE\u7F6E\u9700\u8981\u91CD\u65B0\u542F\u52A8\u3002\u82E5\u5728\u542F\u52A8\u65F6\u9047\u5230\u4EE3\u7801\u5360\u7528\u5927\u91CF CPU \u65F6\u95F4\uFF0C\u53EF\u4EE5\u6392\u9664\u5927\u6587\u4EF6\u5939\u4EE5\u51CF\u5C11\u521D\u59CB\u52A0\u8F7D\u3002","preference.files.exclude":"\u914D\u7F6E\u6392\u9664\u7684\u6587\u4EF6\u548C\u6587\u4EF6\u5939\u7684 glob \u6A21\u5F0F\uFF0C\u8D44\u6E90\u7BA1\u7406\u5668\u5C06\u6839\u636E\u6B64\u8BBE\u7F6E\u51B3\u5B9A\u8981\u663E\u793A\u6216\u9690\u85CF\u7684\u6587\u4EF6\u548C\u6587\u4EF6\u5939\u3002","preference.search.exclude":"\u914D\u7F6E\u5728\u641C\u7D22\u4E2D\u6392\u9664\u7684\u6587\u4EF6\u548C\u6587\u4EF6\u5939\u7684 glob \u6A21\u5F0F\u3002\u5DF2\u7ECF\u7EE7\u627F `#files.exclude#` \u8BBE\u7F6E\u7684\u6240\u6709 glob \u6A21\u5F0F\u3002","preference.search.include":"\u914D\u7F6E\u5728\u641C\u7D22\u4E2D\u5305\u542B\u7684\u6587\u4EF6\u548C\u6587\u4EF6\u5939\u7684 glob \u6A21\u5F0F","preference.files.watcherExclude.title":"\u6392\u9664\u6587\u4EF6\u76D1\u542C","preference.search.exclude.title":"\u641C\u7D22\u6392\u9664\u6587\u4EF6","preference.search.useReplacePreview":"\u63A7\u5236\u641C\u7D22\u66FF\u6362\u6253\u5F00\u7F16\u8F91\u5668\u65F6\uFF0C\u662F\u5426\u6253\u5F00\u201C\u66FF\u6362\u9884\u89C8\u201D\u3002","preference.search.searchOnType":"\u63A7\u5236\u662F\u5426\u5728\u641C\u7D22\u6846\u4E2D\u8F93\u5165\u65F6\u81EA\u52A8\u641C\u7D22\u3002","preference.search.searchOnTypeDebouncePeriod":"\u63A7\u5236\u8F93\u5165\u65F6\u81EA\u52A8\u641C\u7D22\u7684\u5EF6\u8FDF\u65F6\u95F4\uFF08\u6BEB\u79D2\uFF09\u3002","preference.files.exclude.title":"\u6392\u9664\u6587\u4EF6\u663E\u793A","preference.debug.internalConsoleOptions":"\u63A7\u5236\u4F55\u65F6\u6253\u5F00\u5185\u90E8\u8C03\u8BD5\u63A7\u5236\u53F0\u3002","preference.debug.openDebug":"\u63A7\u5236\u4F55\u65F6\u6253\u5F00\u8C03\u8BD5\u89C6\u56FE\u3002","preference.debug.debugViewLocation":"\u63A7\u5236\u8C03\u8BD5\u89C6\u56FE\u7684\u4F4D\u7F6E\u3002","preference.debug.trace":"\u542F\u7528/\u7981\u7528\u4E0E\u8C03\u8BD5\u9002\u914D\u5668\u7684\u5806\u6808\u901A\u4FE1\u3002","preference.debug.allowBreakpointsEverywhere":"\u5141\u8BB8\u5728\u6240\u6709\u6587\u4EF6\u4E2D\u8BBE\u7F6E\u65AD\u70B9\u3002","preference.debug.toolbar.float":"\u6D6E\u5C42\u6A21\u5F0F","preference.files.associations.title":"\u6587\u4EF6\u5173\u8054","preference.files.associations":'\u914D\u7F6E\u8BED\u8A00\u7684\u6587\u4EF6\u5173\u8054\uFF08\u5982 "*.extension": "html"\uFF09\u3002\u8FD9\u4E9B\u5173\u8054\u7684\u4F18\u5148\u7EA7\u9AD8\u4E8E\u5DF2\u5B89\u88C5\u8BED\u8A00\u7684\u9ED8\u8BA4\u5173\u8054\u3002',"preference.files.encoding.title":"\u6587\u4EF6\u7F16\u7801","preference.files.encoding":"\u8BFB\u5199\u6587\u4EF6\u65F6\u4F7F\u7528\u7684\u9ED8\u8BA4\u5B57\u7B26\u96C6\u7F16\u7801","preference.files.autoGuessEncoding":"\u542F\u7528\u540E\uFF0C\u7F16\u8F91\u5668\u5C06\u5728\u6253\u5F00\u6587\u4EF6\u65F6\u5C1D\u8BD5\u731C\u6D4B\u5B57\u7B26\u96C6\u7F16\u7801\u3002\u4E5F\u53EF\u4EE5\u6309\u8BED\u8A00\u914D\u7F6E\u6B64\u8BBE\u7F6E\u3002","preference.files.autoGuessEncoding.title":"\u81EA\u52A8\u731C\u6D4B\u7F16\u7801","preference.explorer.fileTree.indent.title":"\u8D44\u6E90\u7BA1\u7406\u5668\uFF1A\u6587\u4EF6\u6811\u5B50\u8282\u70B9\u7F29\u8FDB","preference.explorer.fileTree.baseIndent.title":"\u8D44\u6E90\u7BA1\u7406\u5668\uFF1A\u6587\u4EF6\u6811\u57FA\u7840\u7F29\u8FDB","preference.debug.toolbar.float.title":"\u8FD0\u884C\u4E0E\u8C03\u8BD5\uFF1A\u6D6E\u5C42\u6A21\u5F0F","preference.debug.breakpoint.editorHint.title":"\u63A7\u5236\u662F\u5426\u5F00\u542F\u7F16\u8F91\u5668\u65AD\u70B9\u95EA\u70C1\u63D0\u793A","preference.debug.breakpoint.editorHint":"\u542F\u7528\u540E\uFF0C\u70B9\u51FB\u65AD\u70B9\u5217\u8868\u8DF3\u8F6C\u5230\u7F16\u8F91\u5668\u65F6\uFF0C\u4F1A\u6709\u80CC\u666F\u8272\u95EA\u70C1\u63D0\u793A","preference.debug.breakpoint.showBreakpointsInOverviewRuler":"\u63A7\u5236\u662F\u5426\u5E94\u5728\u6982\u89C8\u6807\u5C3A\u4E2D\u663E\u793A\u65AD\u70B9","preference.debug.console.filter.mode":"\u8C03\u8BD5\u63A7\u5236\u53F0\u7B5B\u9009\u5668\u6A21\u5F0F","preference.debug.console.filter.mode.filter":"\u8FC7\u6EE4\u6A21\u5F0F","preference.debug.console.filter.mode.matcher":"\u5339\u914D\u6A21\u5F0F","preference.debug.console.wordWrap":"\u63A7\u5236\u662F\u5426\u5E94\u5728\u8C03\u8BD5\u63A7\u5236\u53F0\u4E2D\u6362\u884C","preference.debug.inline.values":"\u5F53\u5904\u4E8E\u8C03\u8BD5\u8FC7\u7A0B\u4E2D\u65F6\uFF0C\u5728\u7F16\u8F91\u5668\u4E2D\u5185\u8054\u663E\u793A\u53D8\u91CF\u503C","preference.explorer.compactFolders":"\u6587\u4EF6\u5939\u7D27\u51D1\u6A21\u5F0F\u4E0B\uFF0C\u5355\u4E2A\u5B50\u6587\u4EF6\u5939\u5C06\u88AB\u538B\u7F29\u5728\u7EC4\u5408\u7684\u6811\u5143\u7D20\u4E2D\uFF0C\u5BF9 Java \u5305\u7ED3\u6784\u5F88\u6709\u7528\u3002","preference.explorer.compactFolders.title":"\u8D44\u6E90\u7BA1\u7406\u5668\uFF1A\u6587\u4EF6\u5939\u7D27\u51D1\u6A21\u5F0F","preference.explorer.autoReveal":"\u6253\u5F00\u6587\u4EF6\u65F6\u81EA\u52A8\u663E\u793A\u5E76\u805A\u7126","preference.editorTitle.openSource":"\u6253\u5F00\u8BBE\u7F6E\uFF08JSON\uFF09","preference.editorTitle.openUserSource":"\u6253\u5F00\u5168\u5C40\u8BBE\u7F6E\uFF08JSON\uFF09","preference.editorTitle.openWorkspaceSource":"\u6253\u5F00\u5DE5\u4F5C\u533A\u8BBE\u7F6E\uFF08JSON\uFF09","preference.editorTitle.openPreference":"\u6253\u5F00\u8BBE\u7F6E\uFF08\u53EF\u89C6\u5316\uFF09","preference.view.saveLayoutWithWorkspace.title":"\u63A7\u5236\u662F\u5426\u5C06\u5E03\u5C40\u4FE1\u606F\u4E0E\u5DE5\u4F5C\u533A\u7ED1\u5B9A","preference.stringArray.operate.delete":"\u5220\u9664","preference.stringArray.operate.edit":"\u4FEE\u6539","preference.stringArray.operate.editTip":"\u6309\u56DE\u8F66\u786E\u8BA4","preference.stringArray.none":"\u6682\u65E0\u53EF\u9009\u503C","preference.enum.default":"\u9ED8\u8BA4\u503C","preference.terminal.type":"\u9ED8\u8BA4\u7EC8\u7AEF\u7C7B\u578B","preference.terminal.typeDesc":"\u63A7\u5236\u6253\u5F00\u7EC8\u7AEF\u6240\u4F7F\u7528\u7684\u9ED8\u8BA4 Shell \u7C7B\u578B\u3002","preference.terminal.fontFamily":"\u7EC8\u7AEF\u5B57\u4F53","preference.terminal.fontSize":"\u7EC8\u7AEF\u5B57\u4F53\u5927\u5C0F","preference.terminal.fontWeight":"\u7EC8\u7AEF\u5B57\u4F53\u6743\u91CD","preference.terminal.lineHeight":"\u7EC8\u7AEF\u6587\u5B57\u884C\u9AD8","preference.terminal.cursorBlink":"\u7EC8\u7AEF\u5149\u6807\u662F\u5426\u95EA\u70C1","preference.terminal.scrollback":"\u7EC8\u7AEF\u53EF\u6EDA\u52A8\u5185\u5BB9\u884C\u6570","preference.terminal.integrated.shellArgs.linux":"Linux \u7EC8\u7AEF\u547D\u4EE4\u884C\u53C2\u6570","preference.terminal.integrated.shellArgs.linuxDesc":"\u914D\u7F6E\u5728 Linux \u7EC8\u7AEF\u4E0A\u65F6\u8981\u4F7F\u7528\u7684\u547D\u4EE4\u884C\u53C2\u6570\u3002","preference.terminal.integrated.copyOnSelection":"\u7EC8\u7AEF\u9009\u4E2D\u590D\u5236","preference.terminal.integrated.copyOnSelectionDesc":"\u5C06\u7EC8\u7AEF\u4E2D\u9009\u4E2D\u7684\u6587\u672C\u7ACB\u5373\u590D\u5236\u5230\u526A\u8D34\u677F\u3002","preference.terminal.integrated.localEchoEnabled":"\u7EC8\u7AEF\u672C\u5730\u56DE\u663E","preference.terminal.integrated.localEchoDesc":"\u4F55\u65F6\u5E94\u542F\u7528\u672C\u5730\u56DE\u663E","preference.terminal.integrated.localEchoLatencyThreshold":"\u7EC8\u7AEF\u672C\u5730\u56DE\u663E\u89E6\u53D1\u5EF6\u65F6","preference.terminal.integrated.localEchoLatencyThresholdDesc":"\u7F51\u7EDC\u5EF6\u8FDF\u7684\u957F\u5EA6(\u4EE5\u6BEB\u79D2\u4E3A\u5355\u4F4D)\uFF0C\u5176\u4E2D\u672C\u5730\u7F16\u8F91\u5C06\u5728\u7EC8\u7AEF\u4E0A\u56DE\u663E\uFF0C\u65E0\u9700\u7B49\u5F85\u670D\u52A1\u5668\u627F\u8BA4\u3002\u5982\u679C\u4E3A '0'\uFF0C\u5219\u672C\u5730\u56DE\u663E\u5C06\u59CB\u7EC8\u5F00\u542F\uFF0C\u5982\u679C\u4E3A '-1'\uFF0C\u5219\u5C06\u7981\u7528\u3002","preference.terminal.integrated.localEchoExcludePrograms":"\u7EC8\u7AEF\u672C\u5730\u56DE\u663E\u6392\u9664\u7684\u5E94\u7528\u7A0B\u5E8F","preference.terminal.integrated.localEchoExcludeProgramsDesc":"\u5F53\u5728\u7EC8\u7AEF\u6807\u9898\u4E2D\u627E\u5230\u5176\u4E2D\u4E00\u4E2A\u7A0B\u5E8F\u540D\u79F0\u65F6\uFF0C\u5C06\u7981\u7528\u672C\u5730\u56DE\u663E\u3002","preference.terminal.integrated.localEchoStyle":"\u672C\u5730\u56DE\u663E\u5B57\u4F53\u6837\u5F0F","preference.terminal.integrated.localEchoStyleDesc":"\u672C\u5730\u56DE\u663E\u6587\u672C\u7684\u7EC8\u7AEF\u6837\u5F0F\uFF1B\u5B57\u4F53\u6837\u5F0F\u6216 RGB \u989C\u8272\u3002","preference.terminal.integrated.xtermRenderType":"Xterm \u6E32\u67D3\u7C7B\u578B","preference.terminal.integrated.xtermRenderTypeDesc":"\u9009\u62E9 Xterm \u6E32\u67D3\u7C7B\u578B\uFF0CWebGL \u6027\u80FD\u66F4\u5F3A\uFF0CCanvas \u517C\u5BB9\u6027\u66F4\u4F73\u3002","preference.terminal.integrated.enablePersistentSessionDesc":"\u7A97\u53E3\u91CD\u8F7D\u65F6\u6301\u4E45\u5316\u7EC8\u7AEF\u4F1A\u8BDD","preference.terminal.integrated.cursorStyle":"\u7EC8\u7AEF\u8F93\u5165\u6307\u9488\u6837\u5F0F","preference.terminal.integrated.cursorStyleDesc":"\u4FEE\u6539\u7EC8\u7AEF\u8F93\u5165\u6307\u9488\u6837\u5F0F","settings.group.general":"\u5E38\u89C4","settings.group.shortcut":"\u5FEB\u6377\u952E","settings.group.editor":"\u7F16\u8F91\u5668","settings.group.extension":"\u6269\u5C55","settings.group.feature":"\u529F\u80FD","settings.group.terminal":"\u7EC8\u7AEF","settings.group.view":"\u89C6\u56FE","preference.general.theme":"\u4E3B\u9898","preference.general.icon":"\u6587\u4EF6\u56FE\u6807\u4E3B\u9898","preference.general.productIconTheme":"\u4EA7\u54C1\u56FE\u6807\u4E3B\u9898","preference.workbench.colorCustomizations":"\u8986\u76D6\u5F53\u524D\u6240\u9009\u989C\u8272\u4E3B\u9898\u7684\u989C\u8272","preference.general.language":"\u8BED\u8A00","preference.general.language.change.refresh.info":"\u66F4\u6539\u8BED\u8A00\u540E\u9700\u91CD\u542F\u540E\u751F\u6548\uFF0C\u662F\u5426\u7ACB\u5373\u5237\u65B0?","preference.general.language.change.refresh.now":"\u7ACB\u5373\u5237\u65B0","preference.general.language.change.refresh.later":"\u7A0D\u540E\u81EA\u5DF1\u5237\u65B0","preference.workbench.refactoringChanges.showPreviewStrategy":"\u89E6\u53D1\u4E00\u4E9B\u91CD\u6784\u53D8\u66F4\u65F6\uFF0C\u662F\u5426\u9700\u8981\u5F39\u7A97\u786E\u8BA4","preference.workbench.refactoringChanges.showPreviewStrategy.title":"\u91CD\u6784\u786E\u8BA4\u65B9\u5F0F","preference.editor.wrapTab":"\u7F16\u8F91\u5668 Tab \u81EA\u52A8\u6362\u884C","preference.editor.fontFamily":"\u5B57\u4F53","preference.editor.minimap":"\u663E\u793A Minimap","preference.editor.forceReadOnly":"\u53EA\u8BFB\u6A21\u5F0F","preference.editor.renderLineHighlight":"\u5F53\u524D\u884C\u7A81\u51FA\u663E\u793A","preference.editor.fontWeight":"\u5B57\u4F53\u7C97\u7EC6","preference.editor.fontSize":"\u5B57\u4F53\u5927\u5C0F","preference.editor.tabSize":"Tab \u7F29\u8FDB\u5927\u5C0F","preference.editor.detectIndentation":"\u81EA\u52A8\u68C0\u6D4B\u7F29\u8FDB\u5927\u5C0F","preference.editor.renderWhitespace":"\u663E\u793A\u7A7A\u767D\u5B57\u7B26","preference.editor.cursorStyle":"\u5149\u6807\u6837\u5F0F","preference.editor.insertSpace":"\u4F7F\u7528\u7A7A\u683C\u4EE3\u66FF Tab","preference.editor.wordWrap":"\u81EA\u52A8\u6362\u884C","preference.editor.wordWrapColumn":"\u81EA\u52A8\u6362\u884C\u957F\u5EA6","preference.editor.askIfDiff":"\u4FDD\u5B58\u6587\u4EF6\u51B2\u7A81\u65F6\u63D0\u793A","preference.editor.readonlyFiles":"\u53EA\u8BFB\u6587\u4EF6\u5217\u8868","preference.editor.formatOnSaveTimeout":"\u683C\u5F0F\u5316\u8D85\u65F6\u65F6\u95F4","preference.editor.formatOnSaveTimeoutError":"\u683C\u5F0F\u5316\u65F6\u95F4\u8D85\u8FC7 {0} \u6BEB\u79D2\uFF0C\u7EC8\u6B62\u683C\u5F0F\u5316","preference.editor.autoSave":"\u81EA\u52A8\u4FDD\u5B58\u6587\u4EF6","preference.editor.autoSaveDelay":"\u81EA\u52A8\u4FDD\u5B58\u5EF6\u8FDF","preference.editor.maxTokenizationLineLength":"\u6700\u5927\u89E3\u6790\u6807\u8BC6\u957F\u5EA6","preference.editor.quickSuggestionsDelay":"\u667A\u80FD\u63D0\u793A\u5EF6\u8FDF\uFF08\u6BEB\u79D2\uFF09","preference.editor.largeFile":"\u8D85\u5927\u6587\u4EF6\u5C3A\u5BF8","preference.editor.streamLargeFile":"\u5927\u6587\u4EF6\u4F7F\u7528\u6D41\u5F0F\u8BFB\u53D6","preference.files.eol":"\u6587\u4EF6\u884C\u5C3E\u5B57\u7B26","preference.files.trimFinalNewlines":"\u79FB\u9664\u6700\u540E\u7684\u6362\u884C\u7B26","preference.files.trimTrailingWhitespace":"\u79FB\u9664\u7ED3\u5C3E\u7A7A\u683C","preference.files.insertFinalNewline":"\u7ED3\u5C3E\u5904\u63D2\u5165\u7A7A\u884C","preference.editor.formatOnPaste":"\u7C98\u8D34\u65F6\u81EA\u52A8\u683C\u5F0F\u5316","preference.editor.preferredFormatter":"\u9ED8\u8BA4\u683C\u5F0F\u5316\u5668","preference.editor.bracketPairColorization.enabled":"\u62EC\u53F7\u7740\u8272","preference.array.additem":"\u6DFB\u52A0","preference.editor.lineHeight":"\u884C\u9AD8","preference.editor.saveCodeActions":"\u4FDD\u5B58\u65F6\u8FD0\u884C\u7684\u4EE3\u7801\u64CD\u4F5C\u7C7B\u578B","preference.editor.saveCodeActionsNotification":"\u4EE3\u7801\u64CD\u4F5C\u6267\u884C\u65F6\u662F\u5426\u5C55\u793A\u901A\u77E5\u4FE1\u606F","preference.item.notValid":"{0} \u4E0D\u662F\u6709\u6548\u9009\u9879","editor.saveAll":"\u4FDD\u5B58\u5168\u90E8","editor.saveCodeActions.getting":"\u4ECE {0} \u4E2D\u83B7\u53D6 CodeAction","editor.saveCodeActions.saving":'\u4FDD\u5B58 "{0}"',"editor.autoSave.enum.off":"\u4E0D\u542F\u7528","editor.files.eol":"\u6587\u4EF6\u884C\u5C3E\u5B57\u7B26","editor.files.eolDesc":"\u63A7\u5236\u6587\u4EF6\u9ED8\u8BA4\u884C\u5C3E\u5B57\u7B26\u3002","editor.autoSave.enum.editorFocusChange":"\u7F16\u8F91\u5668\u5931\u53BB\u7126\u70B9\u65F6\u81EA\u52A8\u4FDD\u5B58","editor.autoSave.enum.afterDelay":"\u7F16\u8F91\u540E\u81EA\u52A8\u4FDD\u5B58\uFF08\u5EF6\u8FDF\u4E00\u5B9A\u65F6\u95F4\uFF09","editor.autoSave.enum.windowLostFocus":"\u7A97\u53E3\u5931\u53BB\u7126\u70B9\u65F6\u81EA\u52A8\u4FDD\u5B58","editor.action.accept":"\u63A5\u53D7\u66F4\u6539\uFF08\u4F7F\u7528\u53F3\u8FB9)","editor.action.revert":"\u56DE\u9000\u66F4\u6539\uFF08\u4F7F\u7528\u5DE6\u8FB9)","editor.format.chooseFormatter":"\u9009\u62E9\u8981\u4F7F\u7528\u7684\u683C\u5F0F\u5316\u6269\u5C55\u3002","editor.formatDocument.label.multiple":"\u4F7F\u7528...\u683C\u5F0F\u5316\u6587\u6863","editor.formatSelection.label.multiple":"\u683C\u5F0F\u5316\u9009\u5B9A\u5185\u5BB9\u7684\u65B9\u5F0F...","editor.chooseEncoding":"\u7528\u7F16\u7801\u91CD\u65B0\u6253\u5F00(\u4F1A\u4E22\u5931\u672A\u4FDD\u5B58\u5185\u5BB9)","editor.guessEncodingFromContent":"\u901A\u8FC7\u5185\u5BB9\u731C\u6D4B","editor.changeEol":"\u9009\u62E9\u884C\u5C3E\u5E8F\u5217","editor.changeLanguageId":"\u9009\u62E9\u8BED\u8A00\u6A21\u5F0F","editor.tokenize.test":"\u83B7\u53D6\u9009\u4E2D\u5B57\u7B26\u4E32\u7684Tokenize\u7ED3\u679C(console)","editor.largeFile.prevent":"\u6587\u4EF6\u8FC7\u5927\uFF0C\u7EE7\u7EED\u6253\u5F00\u53EF\u80FD\u4F1A\u5BFC\u81F4\u5361\u987F\u6216\u8005\u5D29\u6E83\u3002","editor.file.prevent.stillOpen":"\u4ECD\u8981\u6253\u5F00","editor.closeEditorsInOtherGroups":"\u5173\u95ED\u5176\u4ED6\u7EC4\u4E2D\u7684\u7F16\u8F91\u5668","editor.resetEditorGroups":"\u91CD\u7F6E\u7F16\u8F91\u5668\u7EC4\u5927\u5C0F","editor.revert":"\u8FD8\u539F\u6587\u6863","preference.diffEditor.renderSideBySide":"\u663E\u793A\u5E76\u6392\u5DEE\u5F02\u7F16\u8F91\u5668","preference.diffEditor.ignoreTrimWhitespace":"\u5FFD\u7565\u5DEE\u5F02\u7F16\u8F91\u5668\u7684\u524D\u5BFC\u548C\u5C3E\u968F\u7A7A\u767D\u5B57\u7B26","preference.mergeEditor.autoApplyNonConflictChanges":"\u81EA\u52A8\u5408\u5E76\u975E\u51B2\u7A81\u53D8\u66F4","status.editor.chooseLanguage":"\u9009\u62E9\u8BED\u8A00\u6A21\u5F0F","status.editor.goToLineCol":"\u8F6C\u5230\u884C/\u5217","status.editor.chooseEncoding":"\u9009\u62E9\u7F16\u7801","status.editor.changeEol":"\u9009\u62E9\u884C\u5C3E\u5E8F\u5217","common.preference.open":"\u8BBE\u7F6E","common.keymaps.open":"\u5FEB\u6377\u952E","common.about":"\u5173\u4E8E","common.find":"\u67E5\u627E","common.replace":"\u66FF\u6362","common.remoteMode":"\u8FDC\u7A0B\u6A21\u5F0F","component.message.origin":"\u6765\u6E90","component.modal.okText":"\u786E\u5B9A","component.modal.cancelText":"\u53D6\u6D88","component.modal.justOkText":"\u77E5\u9053\u4E86","preference.tab.user":"\u5168\u5C40\u8BBE\u7F6E","preference.tab.workspace":"\u5DE5\u4F5C\u533A\u8BBE\u7F6E","preference.tab.name":"\u8BBE\u7F6E","preference.noResults":"\u672A\u627E\u5230\u5305\u542B '{0}' \u7684\u8BBE\u7F6E\u9879","preference.empty":"\u52A0\u8F7D\u8BBE\u7F6E\u9879...","preference.editSettingsJson":"\u5728 settings.json \u4E2D\u7F16\u8F91","preference.overwritten":"\uFF08\u5DF2\u88AB\u4E0B\u4E00\u7EA7\u8BBE\u7F6E\u8986\u76D6\uFF09","preference.overwrittenInUser":"\uFF08\u5DF2\u5728\u5168\u5C40\u8BBE\u7F6E\u4E2D\u8BBE\u7F6E\uFF09","preference.overwrittenInWorkspace":"\uFF08\u5DF2\u5728\u5DE5\u4F5C\u533A\u8BBE\u7F6E\u4E2D\u8BBE\u7F6E\uFF09","preference.searchPlaceholder":"\u641C\u7D22\u8BBE\u7F6E...","keymaps.tab.name":"\u5FEB\u6377\u952E\u8BBE\u7F6E","marketplace.extension.update.now":"\u662F\uFF0C\u73B0\u5728\u66F4\u65B0","marketplace.extension.update.delay":"\u7A0D\u540E\u6211\u81EA\u5DF1\u66F4\u65B0","marketplace.extension.uninstall.failed":"\u5378\u8F7D\u5931\u8D25","marketplace.extension.uninstall.failed.depended":'\u65E0\u6CD5\u5378\u8F7D\u6269\u5C55\u7A0B\u5E8F "{0}"\u3002 \u6269\u5C55\u7A0B\u5E8F "{1}" \u4F9D\u8D56\u4E8E\u6B64',"marketplace.extension.disabled.failed.depended":'\u65E0\u6CD5\u7981\u7528\u6269\u5C55 "{0}"\u3002\u6269\u5C55 "{1}" \u4F9D\u8D56\u4E8E\u6B64\u3002',"marketplace.extension.reload.delay":"\u7A0D\u540E\u6211\u81EA\u5DF1\u91CD\u542F","marketplace.extension.reload.now":"\u662F\uFF0C\u73B0\u5728\u91CD\u542F","marketplace.extension.enable":"\u542F\u7528","marketplace.extension.disable":"\u7981\u7528","marketplace.extension.enable.workspace":"\u542F\u7528(\u5DE5\u4F5C\u7A7A\u95F4)","marketplace.extension.disable.workspace":"\u7981\u7528(\u5DE5\u4F5C\u7A7A\u95F4)","marketplace.extension.enable.all":"\u542F\u7528\u6240\u6709\u63D2\u4EF6","marketplace.extension.disable.all":"\u7981\u7528\u6240\u6709\u63D2\u4EF6","marketplace.extension.builtin":"\u5185\u7F6E","marketplace.extension.development":"\u5F00\u53D1\u6A21\u5F0F","marketplace.extension.install":"\u5B89\u88C5","marketplace.extension.container":"\u6269\u5C55\u5E02\u573A","marketplace.extension.empty.disabled":"\u6682\u65E0\u5DF2\u7981\u7528\u7684\u6269\u5C55","marketplace.extension.notfound":"\u627E\u4E0D\u5230\u6269\u5C55","marketplace.panel.hot":"\u70ED\u95E8\u63D2\u4EF6","marketplace.panel.search":"\u641C\u7D22","marketplace.panel.enabled":"\u5DF2\u542F\u7528","marketplace.panel.disabled":"\u5DF2\u7981\u7528","marketplace.panel.tab.marketplace":"\u6269\u5C55\u5E02\u573A","marketplace.panel.tab.placeholder.search":"\u641C\u7D22\u5E02\u573A\u4E2D\u7684\u6269\u5C55","marketplace.panel.tab.placeholder.installed":"\u641C\u7D22\u5DF2\u5B89\u88C5\u7684\u6269\u5C55","marketplace.tab.installed":"\u5DF2\u5B89\u88C5\u7684\u6269\u5C55","marketplace.extension.findUpdate":"\u53D1\u73B0\u63D2\u4EF6 {0} \u6709\u6700\u65B0\u7248\u672C {1}\uFF0C\u662F\u5426\u8981\u66F4\u65B0\u5230\u6700\u65B0\u7248\u672C\uFF1F","marketplace.extension.updateAll":"\u53D1\u73B0\u6709\u591A\u4E2A\u6269\u5C55\u53EF\u4EE5\u66F4\u65B0\uFF0C\u662F\u5426\u4E00\u952E\u5168\u90E8\u66F4\u65B0\uFF1F","marketplace.extension.needreloadFromAll":"\u6240\u6709\u6269\u5C55\u66F4\u65B0\u5B8C\u6BD5\uFF0C\u91CD\u542F\u540E\u751F\u6548\uFF0C\u662F\u5426\u7ACB\u5373\u91CD\u542F\uFF1F","marketplace.extension.needreload":"\u63D2\u4EF6 {0} \u66F4\u65B0\u6210\u529F\uFF0C\u91CD\u542F\u540E\u751F\u6548\uFF0C\u662F\u5426\u7ACB\u5373\u91CD\u542F\uFF1F","marketplace.extension.canupdate":"\u6709\u65B0\u7248\u672C","marketplace.extension.updating":"\u66F4\u65B0\u4E2D","marketplace.extension.update":"\u66F4\u65B0","marketplace.extension.installing":"\u5B89\u88C5\u4E2D","marketplace.extension.reloadrequire":"\u9700\u8981\u91CD\u542F","marketplace.extension.uninstalling":"\u5378\u8F7D\u4E2D","marketplace.extension.uninstall":"\u5378\u8F7D","marketplace.extension.uninstalled":"\u5DF2\u5378\u8F7D","marketplace.extension.readme":"\u7B80\u4ECB","marketplace.extension.changelog":"\u66F4\u6539\u65E5\u5FD7","marketplace.extension.dependencies":"\u4F9D\u8D56\u9879","marketplace.extension.installed":"\u5DF2\u5B89\u88C5","marketplace.extension.otherVersion":"\u5B89\u88C5\u5176\u4ED6\u7248\u672C","marketplace.extension.currentVersion":"\u5F53\u524D\u7248\u672C","marketplace.quickopen.install":"\u5B89\u88C5\u63D2\u4EF6","marketplace.quickopen.install.byReleaseId":"\u5B89\u88C5\u63D2\u4EF6 (ReleaseId)","marketplace.quickopen.install.releaseId":"\u6269\u5C55 ReleaseId","marketplace.quickopen.install.releaseId.required":"\u6269\u5C55 ReleaseId \u5FC5\u586B","marketplace.quickopen.install.id":"\u6269\u5C55 ID","marketplace.quickopen.install.id.required":"\u6269\u5C55 ID \u5FC5\u586B","marketplace.quickopen.install.version.required":"\u6269\u5C55\u7248\u672C\u5FC5\u586B","marketplace.quickopen.install.version.placeholder":"\u6269\u5C55\u7248\u672C","marketplace.quickopen.install.error":"\u5B89\u88C5\u63D2\u4EF6\u62A5\u9519","validate.tree.emptyFileNameError":"\u9700\u63D0\u4F9B\u53EF\u7528\u7684\u6587\u4EF6\u6216\u6587\u4EF6\u5939\u540D\u79F0","validate.tree.fileNameStartsWithSlashError":"\u6587\u4EF6\u6216\u6587\u4EF6\u5939\u540D\u79F0\u4E0D\u80FD\u4EE5/\u5F00\u5934","validate.tree.fileNameFollowOrStartWithSpaceWarning":"\u5728\u6587\u4EF6\u6216\u6587\u4EF6\u5939\u540D\u79F0\u4E2D\u68C0\u67E5\u5230\u524D\u5BFC\u6216\u5C3E\u968F\u7A7A\u683C","validate.tree.fileNameExistsError":"\u6587\u4EF6\u6216\u6587\u4EF6\u5939 **{0}** \u5DF2\u5B58\u5728. \u8BF7\u4F7F\u7528\u53E6\u5916\u7684\u540D\u79F0.","validate.tree.invalidFileNameError":"\u540D\u79F0 **{0}** \u4E0D\u53EF\u7528. \u8BF7\u4F7F\u7528\u53E6\u5916\u7684\u540D\u79F0.","editor.close.all":"\u5173\u95ED\u5168\u90E8\u7F16\u8F91\u5668","opened.editors.title":"\u6253\u5F00\u7684\u7F16\u8F91\u5668","opened.editors.save.all":"\u4FDD\u5B58\u5168\u90E8","opened.editors.close.all":"\u5173\u95ED\u5168\u90E8","opened.editors.close.byGroup":"\u5173\u95ED\u7EC4","opened.editors.save.byGroup":"\u4FDD\u5B58\u7EC4\u4E2D\u672A\u4FDD\u5B58\u6587\u4EF6","opened.editors.empty":"\u7F16\u8F91\u5668\u4E2D\u6682\u65E0\u6253\u5F00\u6587\u4EF6","opened.editors.group.title":"\u7B2C{0}\u7EC4","opened.editors.open":"\u6253\u5F00\u6587\u4EF6","opened.editors.openToTheSide":"\u4FA7\u8FB9\u680F\u6253\u5F00","opened.editors.compare":"\u4E0E\u5F53\u524D\u6587\u4EF6\u6BD4\u8F83","opened.editors.copyRelativePath":"\u590D\u5236\u76F8\u5BF9\u8DEF\u5F84","opened.editors.copyPath":"\u590D\u5236\u8DEF\u5F84","opened.editors.unsaved":"{0} \u4E2A\u672A\u4FDD\u5B58","terminal.name":"\u7EC8\u7AEF","terminal.disconnected":"\u7EC8\u7AEF\u65AD\u5F00\u8FDE\u63A5","terminal.can.not.create":"\u521B\u5EFA\u7EC8\u7AEF\u5931\u8D25","terminal.can.not.reconnect":"\u7EC8\u7AEF\u4E0D\u53EF\u7528\uFF0C\u8BF7","terminal.stop":"\u7EC8\u6B62\u7EC8\u7AEF","terminal.try.reconnect":"\u91CD\u65B0\u8FDE\u63A5\u7EC8\u7AEF","terminal.try.recreate":"\u91CD\u65B0\u542F\u52A8\u7EC8\u7AEF","terminal.new":"\u65B0\u5EFA\u7EC8\u7AEF","terminal.new.type":"\u6839\u636E\u7EC8\u7AEF\u7C7B\u578B\u65B0\u5EFA","terminal.split":"\u62C6\u5206\u7EC8\u7AEF","terminal.clear":"\u7EC8\u6B62\u6240\u6709\u7EC8\u7AEF","terminal.clear.content":"\u6E05\u7A7A\u5F53\u524D\u7EC8\u7AEF\u5185\u5BB9","terminal.independ":"\u72EC\u7ACB\u7EC8\u7AEF","terminal.maximum":"\u6700\u5927\u5316\u9762\u677F\u5927\u5C0F","terminal.or":"\u6216\u8005","terminal.search":"\u641C\u7D22","terminal.search.next":"\u641C\u7D22\u4E0B\u4E00\u4E2A\u5339\u914D\u9879","terminal.openWithPath":"\u5728\u7EC8\u7AEF\u4E2D\u6253\u5F00","terminal.remove":"\u7EC8\u6B62\u7EC8\u7AEF","terminal.relaunch":"\u91CD\u542F\u7EC8\u7AEF","terminal.menu.clearGroups":"\u6E05\u9664\u6240\u6709\u7EC8\u7AEF","terminal.menu.search":"\u641C\u7D22","terminal.menu.split":"\u62C6\u5206\u7EC8\u7AEF","terminal.menu.rename":"\u91CD\u547D\u540D","terminal.menu.selectAll":"\u5168\u9009","terminal.menu.copy":"\u590D\u5236","terminal.menu.paste":"\u7C98\u8D34","terminal.menu.clear":"\u6E05\u7A7A","terminal.menu.stop":"\u7EC8\u6B62","terminal.reconnected.message":"\u7EC8\u7AEF\u5DF2\u91CD\u65B0\u8FDE\u63A5\uFF0C\u65B0\u7684\u4F1A\u8BDD\u5DF2\u542F\u52A8\u3002","terminal.menu.stopGroup":"\u7EC8\u6B62\u7EC8\u7AEF","terminal.menu.clearCurrentContent":"\u6E05\u7A7A\u5F53\u524D\u7EC8\u7AEF\u65E5\u5FD7","terminal.menu.selectCurrentContent":"\u9009\u4E2D\u5F53\u524D\u7EC8\u7AEF\u65E5\u5FD7","terminal.menu.clearAllContents":"\u6E05\u7A7A\u6240\u6709\u7EC8\u7AEF\u65E5\u5FD7","terminal.menu.selectAllContent":"\u9009\u4E2D\u6240\u6709\u7EC8\u7AEF\u65E5\u5FD7","terminal.menu.selectType":"\u9ED8\u8BA4\u7EC8\u7AEF\u7C7B\u578B","terminal.menu.moreSettings":"\u66F4\u591A\u8BBE\u7F6E","terminal.environment.changed":"\u7EC8\u7AEF\u73AF\u5883\u53D8\u91CF\u5DF2\u7ECF\u88AB\u90E8\u5206\u63D2\u4EF6\u4FEE\u6539","terminal.environment.changes":"\u6269\u5C55\u671F\u671B\u5BF9\u7EC8\u7AEF\u7684\u73AF\u5883\u53D8\u91CF\u505A\u4EE5\u4E0B\u66F4\u6539\uFF1A","terminal.environment.removal":"\u6269\u5C55\u671F\u671B\u4ECE\u73B0\u6709\u7684\u7EC8\u7AEF\u73AF\u5883\u53D8\u91CF\u4E2D\u5220\u9664\u4EE5\u4E0B\u503C\uFF1A","terminal.launchFail.cwdNotDirectory":'\u7EC8\u7AEF\u542F\u52A8\u76EE\u5F55 (cwd) "{0}" \u4E0D\u662F\u4E00\u4E2A\u6587\u4EF6\u5939',"terminal.launchFail.cwdDoesNotExist":'\u7EC8\u7AEF\u542F\u52A8\u76EE\u5F55 (cwd) "{0}" \u4E0D\u5B58\u5728',"terminal.launchFail.executableIsNotFileOrSymlink":'\u7EC8\u7AEF\u542F\u52A8\u7684\u53EF\u6267\u884C\u6587\u4EF6 "{0}" \u7684\u8DEF\u5F84\u975E\u6587\u4EF6\u6216\u7B26\u53F7\u94FE\u63A5',"terminal.launchFail.executableDoesNotExist":'\u7EC8\u7AEF\u542F\u52A8\u7684\u53EF\u6267\u884C\u6587\u4EF6 "{0}" \u7684\u8DEF\u5F84\u4E0D\u5B58\u5728',"terminal.openFile":"\u6253\u5F00\u6587\u4EF6","terminal.focusFolder":"\u805A\u7126\u8D44\u6E90\u7BA1\u7406\u5668\u4E2D\u7684\u6587\u4EF6\u5939","terminal.openFolder":"\u5728\u65B0\u7A97\u53E3\u4E2D\u6253\u5F00\u6587\u4EF6\u5939","terminal.toggleTerminal":"\u5207\u6362\u7EC8\u7AEF\u9762\u677F","terminal.killProcess":"\u7ED3\u675F\u8FDB\u7A0B","terminal.process.unHealthy":"*\u6B64\u7EC8\u7AEF\u4F1A\u8BDD\u5DF2\u88AB\u7CFB\u7EDF\u8D85\u65F6\u56DE\u6536\uFF0C\u8BF7\u6253\u5F00\u65B0\u7684\u7EC8\u7AEF\u4F1A\u8BDD\u6765\u8FDB\u884C\u64CD\u4F5C","terminal.selectCWDForNewTerminal":"\u4E3A\u65B0 terminal \u9009\u62E9\u5F53\u524D\u5DE5\u4F5C\u8DEF\u5F84","view.command.show":"\u6253\u5F00 {0}","layout.tabbar.setting":"\u6253\u5F00\u504F\u597D\u8BBE\u7F6E","terminal.focusNext.inTerminalGroup":"\u805A\u7126\u5F53\u524D\u7EC8\u7AEF\u7EC4\u4E2D\u7684\u4E0B\u4E00\u4E2A\u7EC8\u7AEF","terminal.focusPrevious.inTerminalGroup":"\u805A\u7126\u5F53\u524D\u7EC8\u7AEF\u7EC4\u4E2D\u7684\u4E0A\u4E00\u4E2A\u7EC8\u7AEF","terminal.ai.requesting":"AI \u8BF7\u6C42\u4E2D...","terminal.ai.selectHint":"\u952E\u76D8 \u2191\u2193 \u952E\u9009\u62E9\u547D\u4EE4\uFF0C\u23CE \u786E\u8BA4\u547D\u4EE4","terminal.ai.thinking":"AI \u601D\u8003\u4E2D...","terminal.ai.escClose":"\u6309 ESC \u5173\u95ED\u5F39\u6846","terminal.ai.headerHint":"\u4F7F\u7528 AI \u83B7\u5F97\u7EC8\u7AEF\u8F93\u5165\u63D0\u793A","terminal.ai.inputHint":"\u8F93\u5165\u81EA\u7136\u8BED\u8A00\u751F\u6210\u547D\u4EE4\uFF0C\u793A\u4F8B\uFF1A\u5C55\u793A\u5F53\u524D\u8FDB\u7A0B pid","terminal.ai.inputSharpToGetHint":"\u8F93\u5165 # \u6765\u83B7\u53D6 AI \u5EFA\u8BAE\u547D\u4EE4","terminal.ai.cannotGetTerminalConnection":"\u65E0\u6CD5\u83B7\u53D6\u7EC8\u7AEF\u8FDE\u63A5\uFF0C\u8BF7\u5230\u7528\u6237\u7FA4\u53CD\u9988","debugger.menu.setValue":"\u8BBE\u7F6E\u53D8\u91CF","debugger.menu.setValue.param":"\u8BF7\u8F93\u5165\u4F60\u8981\u6539\u53D8\u53D8\u91CF\u7684\u503C","debugger.menu.copyValue":"\u590D\u5236\u503C","debugger.menu.copyEvaluatePath":"\u590D\u5236\u8868\u8FBE\u5F0F","debugger.menu.addToWatchExpressions":"\u6DFB\u52A0\u5230\u76D1\u89C6","debugger.menu.restartFrame":"\u91CD\u542F\u6808\u5E27","debugger.menu.copyCallstack":"\u590D\u5236\u5806\u6808","theme.toggle":"\u989C\u8272\u4E3B\u9898","theme.icon.toggle":"\u6587\u4EF6\u56FE\u6807\u4E3B\u9898","theme.productIcon.toggle":"\u4EA7\u54C1\u56FE\u6807\u4E3B\u9898","theme.base.vs":"\u6D45\u8272\u4E3B\u9898","theme.base.vs-dark":"\u6DF1\u8272\u4E3B\u9898","theme.base.hc":"\u9AD8\u5BF9\u6BD4\u5EA6\u4E3B\u9898","theme.current":"\u5F53\u524D\u4E3B\u9898","theme.quickopen.plh":"\u9009\u62E9\u4E3B\u9898\uFF08\u4E0A\u4E0B\u79FB\u52A8\u5149\u6807\u9884\u89C8\uFF09","theme.icon.quickopen.plh":"\u9009\u62E9\u56FE\u6807\u4E3B\u9898\uFF08\u4E0A\u4E0B\u79FB\u52A8\u5149\u6807\u9884\u89C8\uFF09","theme.productIcon.quickopen.plh":"\u9009\u62E9\u4EA7\u54C1\u56FE\u6807\u4E3B\u9898\uFF08\u4E0A\u4E0B\u79FB\u52A8\u5149\u6807\u9884\u89C8\uFF09","preference.workbench.list.openMode":"\u63A7\u5236\u5982\u4F55\u4F7F\u7528\u9F20\u6807\u5C55\u5F00\u6811\u548C\u6253\u5F00\u5217\u8868\u9879\uFF08\u82E5\u652F\u6301\uFF09\u3002\u5982\u679C\u6B64\u8BBE\u7F6E\u4E0D\u9002\u7528\uFF0C\u67D0\u4E9B\u6811\u548C\u5217\u8868\u53EF\u80FD\u4F1A\u9009\u62E9\u5FFD\u7565\u6B64\u8BBE\u7F6E\u3002","preference.workbench.list.openMode.title":"\u6811\u5C55\u5F00/\u5217\u8868\u9879\u6253\u5F00\u65B9\u5F0F","keymaps.search.placeholder":"\u8F93\u5165\u5173\u952E\u5B57\u67E5\u627E","keymaps.search.keyboard.placeholder":"\u8F93\u5165\u5FEB\u6377\u952E","keymaps.header.command.title":"\u547D\u4EE4","keymaps.header.source.title":"\u4F5C\u7528\u57DF","keymaps.header.keybinding.title":"\u5FEB\u6377\u952E","keymaps.header.when.title":"\u6761\u4EF6","keymaps.commandId.title":"\u547D\u4EE4 ID\uFF1A{0}","keymaps.source.default":"\u9ED8\u8BA4","keymaps.source.user":"\u7528\u6237","keymaps.source.workspace":"\u5DE5\u4F5C\u533A","keymaps.keybinding.full.collide":'\u8BE5\u5FEB\u6377\u952E\u4E0E"{0}"\u547D\u4EE4\u51B2\u7A81\uFF0C\u8BF7\u91CD\u65B0\u8BBE\u7F6E',"keymaps.keybinding.partial.collide":'\u8BE5\u5FEB\u6377\u952E\u4E0E"{0}"\u547D\u4EE4\u5B58\u5728\u5305\u542B\u5173\u7CFB\u51B2\u7A81\uFF0C\u8BF7\u91CD\u65B0\u8BBE\u7F6E',"keymaps.keybinding.shadow.collide":'\u8BE5\u5FEB\u6377\u952E\u4E0E"{0}"\u547D\u4EE4\u5B58\u5728\u5305\u542B\u5173\u7CFB\u51B2\u7A81\uFF0C\u8BF7\u91CD\u65B0\u8BBE\u7F6E',"keymaps.keybinding.duplicate":"\u8BE5\u5FEB\u6377\u952E\u5DF2\u7ED1\u5B9A\u4EE5\u4E0B {0} \u6761\u547D\u4EE4\uFF1A","keymaps.keybinding.loading":"\u6B63\u5728\u4FEE\u6539\u5FEB\u6377\u952E ...","keymaps.keybinding.success":"\u4FEE\u6539\u5FEB\u6377\u952E\u6210\u529F","keymaps.keybinding.fail":"\u4FEE\u6539\u5FEB\u6377\u952E\u5931\u8D25","keymaps.keybinding.require":"\u8BF7\u8F93\u5165\u5FEB\u6377\u952E","keymaps.action.edit":"\u7F16\u8F91\u5FEB\u6377\u952E","keymaps.action.add":"\u6DFB\u52A0\u5FEB\u6377\u952E","keymaps.action.reset":"\u91CD\u7F6E\u5FEB\u6377\u952E","keymaps.action.clear":"\u6E05\u7A7A","keymaps.edit.placeholder":"\u8BF7\u6309 Enter \u952E\u4FDD\u5B58","keymaps.editorTitle.openSource":"\u6253\u5F00\u952E\u76D8\u5FEB\u6377\u65B9\u5F0F(JSON)","keymaps.editorTitle.openKeymap":"\u6253\u5F00\u952E\u76D8\u5FEB\u6377\u65B9\u5F0F(\u53EF\u89C6\u5316)","keybinding.combination.tip":"\u5DF2\u6309\u4E0B({0}), \u7B49\u5F85\u540C\u65F6\u6309\u4E0B\u7B2C\u4E8C\u4E2A\u952E","layout.tabbar.toggle":"\u5207\u6362\u9762\u677F\u663E\u793A/\u9690\u85CF","layout.tabbar.expand":"\u6700\u5927\u5316\u5E95\u90E8\u9762\u677F","layout.tabbar.retract":"\u7F29\u56DE\u5E95\u90E8\u9762\u677F","layout.view.hide":"\u9690\u85CF","layout.action.openView":"\u6253\u5F00\u89C6\u56FE ...","layout.openView.containerTitle":"\u4FA7\u8FB9\u680F / \u9762\u677F","layout.openView.viewTitle":"{0} / \u89C6\u56FE","status-bar.label.line":"\u884C","status-bar.label.column":"\u5217","status-bar.label.selected":"\u5DF2\u9009\u62E9","status-bar.label.tabType.space":"\u7A7A\u683C","status-bar.label.tabType.tab":"Tab \u5927\u5C0F","status-bar.scm":"\u6E90\u7801\u7BA1\u7406","status-bar.editor-selection":"\u5F53\u524D\u9009\u62E9","status-bar.editor-language":"\u9009\u62E9\u8BED\u8A00","status-bar.editor-encoding":"\u9009\u62E9\u7F16\u7801","status-bar.editor-space":"\u9009\u62E9\u7A7A\u683C\u7B26","status-bar.editor-eol":"\u9009\u62E9\u884C\u5C3E\u5B57\u7B26","status-bar.editor-indentation":"\u9009\u62E9\u7F29\u8FDB","status-bar.editor-langStatus":"\u8BED\u8A00\u670D\u52A1\u5668\u72B6\u6001",saveChangesMessage:"\u662F\u5426\u8981\u4FDD\u5B58\u5BF9 {0} \u7684\u66F4\u6539?",saveNFilesChangesMessage:`\u662F\u5426\u4FDD\u5B58\u5BF9\u4EE5\u4E0B {0} \u4E2A\u6587\u4EF6\u7684\u66F4\u6539?
|
|
33509
33509
|
{1}
|
|
33510
33510
|
|
|
33511
33511
|
\u5982\u679C\u4E0D\u4FDD\u5B58\uFF0C\u60A8\u5C06\u4F1A\u4E22\u5931\u8FD9\u4E9B\u6587\u4EF6\u7684\u6240\u6709\u66F4\u6539\u3002`,"file.prompt.more.one":" \u548C\u5176\u4ED6 1 \u4E2A\u6587\u4EF6","file.prompt.more.number":" \u548C\u5176\u4ED6 {0} \u4E2A\u6587\u4EF6","file.prompt.dontSave":"\u4E0D\u4FDD\u5B58","file.prompt.save":"\u4FDD\u5B58","file.prompt.cancel":"\u53D6\u6D88","doc.saveError.failed":"\u6587\u4EF6\u4FDD\u5B58\u5931\u8D25\uFF0C \u539F\u56E0:","doc.saveError.diff":"{0} \u5DF2\u7ECF\u5728\u78C1\u76D8\u4E0A\u88AB\u4FEE\u6539\uFF0C\u4E0D\u80FD\u4FDD\u5B58","doc.saveError.diffAndSave":"\u8FDB\u884C\u6BD4\u8F83","doc.saveError.overwrite":"\u8986\u76D6","editor.compareAndSave.title":"{0} (\u5728\u78C1\u76D8\u4E0A) <=> {1} (\u7F16\u8F91\u4E2D) ","outline.title":"\u5927\u7EB2","outline.noinfo":"\u5728\u6587\u6863\u4E2D\u6CA1\u6709\u627E\u5230\u7B26\u53F7","outline.nomodel":"\u6D3B\u52A8\u7684\u7F16\u8F91\u5668\u65E0\u6CD5\u63D0\u4F9B\u5927\u7EB2","outline.collapse.all":"\u6298\u53E0\u5168\u90E8","outline.sort.kind":"\u6392\u5E8F\u4F9D\u636E\uFF1A\u7C7B\u522B","outline.sort.name":"\u6392\u5E8F\u4F9D\u636E\uFF1A\u540D\u79F0","outline.sort.position":"\u6392\u5E8F\u4F9D\u636E\uFF1A\u4F4D\u7F6E","outline.follow.cursor":"\u8DDF\u968F\u5149\u6807","welcome.title":"\u5F00\u59CB\u4F7F\u7528","welcome.quickStart":"\u5F00\u59CB\u4F7F\u7528","welcome.recent.workspace":"\u6700\u8FD1\u6253\u5F00\u7684\u5DE5\u4F5C\u533A","welcome.workspace.noExist":"\u5DE5\u4F5C\u533A\u8DEF\u5F84\u4E0D\u5B58\u5728","markers.title":"\u95EE\u9898","markers.panel.content.empty":"\u76EE\u524D\u5C1A\u672A\u5728\u5DE5\u4F5C\u533A\u68C0\u6D4B\u5230\u95EE\u9898\u3002","markers.panel.filter.errors":"\u9519\u8BEF","markers.panel.filter.warnings":"\u8B66\u544A","markers.panel.filter.infos":"\u4FE1\u606F","markers.filter.placeholder":"\u7B5B\u9009\u5668\uFF0C\u4F8B\u5982\uFF1Atext\u3001**/*.ts\u3001!**/node_modules/**","markers.filter.content.empty":"\u5728\u7ED9\u5B9A\u7684\u7B5B\u9009\u6761\u4EF6\u4E0B\uFF0C\u6CA1\u6709\u627E\u5230\u7ED3\u679C\u3002","markers.filter.reset":"\u6E05\u9664\u7B5B\u9009\u5668","markers.status.no.problems":"\u6CA1\u6709\u95EE\u9898","output.channel.clear":"\u6E05\u9664\u8F93\u51FA\u9762\u677F\u7684\u5185\u5BB9","app.quit":"\u9000\u51FA","view.zoomReset":"\u91CD\u7F6E\u7A97\u53E3\u7F29\u653E","view.zoomIn":"\u7A97\u53E3\u7F29\u653E\u653E\u5927","view.zoomOut":"\u7A97\u53E3\u7F29\u653E\u7F29\u5C0F","extension.invalidExthostReload.confirm.content":"\u63D2\u4EF6\u8FDB\u7A0B\u5DF2\u5931\u6548\uFF0C\u70B9\u51FB\u5237\u65B0\u540E\u53EF\u6062\u590D\u63D2\u4EF6\u4F7F\u7528","extension.invalidExthostReload.confirm.ok":"\u5237\u65B0","extension.invalidExthostReload.confirm.cancel":"\u7EE7\u7EED\u4F7F\u7528\u5176\u4ED6\u529F\u80FD","extension.crashedExthostReload.confirm":"\u63D2\u4EF6\u8FDB\u7A0B\u5F02\u5E38\u9000\u51FA\uFF0C\u662F\u5426\u91CD\u542F\u63D2\u4EF6\u8FDB\u7A0B","extension.exthostRestarting.content":"\u63D2\u4EF6\u8FDB\u7A0B\u91CD\u542F\u4E2D...","extension.host.restart":"\u91CD\u542F\u63D2\u4EF6\u4E3B\u8FDB\u7A0B","extension.no.view.found":`\u627E\u4E0D\u5230\u63D2\u4EF6 {0} \u6CE8\u518C\u7684\u89C6\u56FE\u7EC4\u4EF6\u3002
|
|
@@ -33770,7 +33770,7 @@ ${(0,o.formatLocalize)("terminal.integrated.exitedWithCode",g)}`),!((u=this.pres
|
|
|
33770
33770
|
`)},x=k=>{const F=parseInt(k.slice(1,3),16),L=parseInt(k.slice(3,5),16),N=parseInt(k.slice(5,7),16);return`${F};${L};${N}`};O((0,l.localize)("terminal.process.unHealthy"),M?.foreground||"#d7dbdeff",M?.background||"#151b21ff")}reset(){this._prepare(),this._attachAfterRender()}async attach(){if(!this._ready)return this._doAttach()}async _doAttach(){var R;const M=this.id,{rows:O=c.DEFAULT_ROW,cols:x=c.DEFAULT_COL}=this.xterm.raw;let k;const F={...this._launchConfig,cwd:((R=this._launchConfig)===null||R===void 0?void 0:R.cwd)||this._workspacePath};F.isExtensionOwnedTerminal&&(F.customPtyImplementation=(L,N,U)=>new y.TerminalProcessExtHostProxy(L,N,U,this.controller)),this._launchConfig=F,this.logger.log("attach terminal by launchConfig: ",this._launchConfig);try{k=await this.internalService.attachByLaunchConfig(M,x,O,this._launchConfig,this.xterm)}catch(L){this.logger.error(`attach ${M} terminal failed, _launchConfig`,JSON.stringify(this._launchConfig),L)}this.resolveConnection(k)}resolveConnection(R){if(!R){this._attached.reject("no connection while attaching terminal client");return}this._attachAddon.setConnection(R);const M=this.name||this._launchConfig.name||R.name;M!==this.name&&(this.name=M,this._onTitleChange.fire({id:this.id,name:M})),this._ready=!0,this._attached.resolve(),this._widget.rename(this.name),this.eventBus.fire(new l.TerminalClientAttachEvent({clientId:this.id})),this._firstStdout.promise.then(()=>{this._doResize()})}_setOption(R,M){try{this.xterm.raw.options[R]=M,this._layout()}catch{}}_checkReady(){if(!this._ready)throw new Error("terminal client not ready")}_layout(){try{this._renderOnDemand(),this.xterm.raw.element&&this.xterm.fit()}catch{}}_renderOnDemand(){var R;this.xterm.raw.element||!((R=this._widget.element)===null||R===void 0)&&R.clientHeight&&(this._widget.element.appendChild(this.xterm.container),this.xterm.open(),setTimeout(()=>{var M;((M=this.controller.activeClient)===null||M===void 0?void 0:M.id)===this.id&&this.focus()}))}_debounceResize(){this._layout()}focus(){return this.xterm.raw.focus()}clear(){return this._checkReady(),this.xterm.raw.clear()}selectAll(){return this._checkReady(),this.xterm.raw.selectAll()}paste(R){return this._checkReady(),this.xterm.raw.paste(R)}findNext(R,M={}){return this._checkReady(),this.xterm.findNext(R,M)}findPrevious(R,M={}){return this._checkReady(),this.xterm.findPrevious(R,M)}get onSearchResultsChange(){return this.xterm.onSearchResultsChange}closeSearch(){this.xterm.closeSearch()}getSelection(){return this._checkReady(),this.xterm.raw.hasSelection()?this.xterm.raw.getSelection():(this.logger.warn("The terminal has no selection to copy"),"")}updateTheme(){return this.xterm.updateTheme(this.theme.terminalTheme)}updateLaunchConfig(R){this._launchConfig={...this._launchConfig,...R}}updateTerminalName(R){!this.name&&!this._widget.name.get()&&this._widget.rename(R.name||this.name)}async sendText(R){await this.internalService.sendText(this.id,R),this._onInput.fire({id:this.id,data:R})}registerLinkProvider(R){if(!this._linkManager)throw new Error("TerminalInstance.registerLinkProvider before link manager was ready");return this._linkManager.registerExternalLinkProvider(this,R)}dispose(R=!0){super.dispose(),R&&this.internalService.disposeById(this.id)}};t.TerminalClient=D,D.WORKSPACE_PATH_CACHED=new Map,r.__decorate([(0,o.Autowired)(o.INJECTOR_TOKEN),r.__metadata("design:type",o.Injector)],D.prototype,"injector",void 0),r.__decorate([(0,o.Autowired)(u.ITerminalInternalService),r.__metadata("design:type",Object)],D.prototype,"internalService",void 0),r.__decorate([(0,o.Autowired)(g.IWorkspaceService),r.__metadata("design:type",Object)],D.prototype,"workspace",void 0),r.__decorate([(0,o.Autowired)(m.WorkbenchEditorService),r.__metadata("design:type",m.WorkbenchEditorService)],D.prototype,"editorService",void 0),r.__decorate([(0,o.Autowired)(p.IFileServiceClient),r.__metadata("design:type",Object)],D.prototype,"fileService",void 0),r.__decorate([(0,o.Autowired)(h.IMessageService),r.__metadata("design:type",Object)],D.prototype,"messageService",void 0),r.__decorate([(0,o.Autowired)(u.ITerminalTheme),r.__metadata("design:type",Object)],D.prototype,"theme",void 0),r.__decorate([(0,o.Autowired)(u.ITerminalController),r.__metadata("design:type",Object)],D.prototype,"controller",void 0),r.__decorate([(0,o.Autowired)(_.PreferenceService),r.__metadata("design:type",Object)],D.prototype,"preferenceService",void 0),r.__decorate([(0,o.Autowired)(u.ITerminalGroupViewService),r.__metadata("design:type",Object)],D.prototype,"view",void 0),r.__decorate([(0,o.Autowired)(E.ITerminalPreference),r.__metadata("design:type",Object)],D.prototype,"terminalPreference",void 0),r.__decorate([(0,o.Autowired)(b.TerminalKeyBoardInputService),r.__metadata("design:type",b.TerminalKeyBoardInputService)],D.prototype,"keyboard",void 0),r.__decorate([(0,o.Autowired)(l.QuickPickService),r.__metadata("design:type",Object)],D.prototype,"quickPick",void 0),r.__decorate([(0,o.Autowired)(v.ILogger),r.__metadata("design:type",Object)],D.prototype,"logger",void 0),r.__decorate([(0,o.Autowired)(v.IReporter),r.__metadata("design:type",Object)],D.prototype,"reporter",void 0),r.__decorate([(0,o.Autowired)(d.EnvironmentVariableServiceToken),r.__metadata("design:type",Object)],D.prototype,"environmentService",void 0),r.__decorate([(0,o.Autowired)(v.IApplicationService),r.__metadata("design:type",Object)],D.prototype,"applicationService",void 0),r.__decorate([(0,o.Autowired)(u.ITerminalProfileInternalService),r.__metadata("design:type",Object)],D.prototype,"terminalProfileInternalService",void 0),r.__decorate([(0,o.Autowired)(a.IVariableResolverService),r.__metadata("design:type",Object)],D.prototype,"variableResolver",void 0),r.__decorate([(0,o.Autowired)(l.IEventBus),r.__metadata("design:type",Object)],D.prototype,"eventBus",void 0),r.__decorate([(0,v.debounce)(100),r.__metadata("design:type",Function),r.__metadata("design:paramtypes",[]),r.__metadata("design:returntype",void 0)],D.prototype,"_debounceResize",null),t.TerminalClient=D=n=r.__decorate([(0,o.Injectable)(),r.__metadata("design:paramtypes",[])],D);let I=class{static async createClient2(R,M,O){const k=R.createChild([{token:D,useClass:D}]).get(D);return await k.init2(M,O),k}};t.TerminalClientFactory=I,t.TerminalClientFactory=I=r.__decorate([(0,o.Injectable)()],I);const w=T=>(R,M)=>I.createClient2(T,R,M);t.createTerminalClientFactory2=w},43395:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ansiColorMap=t.TERMINAL_OVERVIEW_RULER_CURSOR_FOREGROUND_COLOR=t.TERMINAL_OVERVIEW_RULER_FIND_MATCH_FOREGROUND_COLOR=t.TERMINAL_FIND_MATCH_HIGHLIGHT_BORDER_COLOR=t.TERMINAL_FIND_MATCH_HIGHLIGHT_BACKGROUND_COLOR=t.TERMINAL_FIND_MATCH_BORDER_COLOR=t.TERMINAL_FIND_MATCH_BACKGROUND_COLOR=t.TERMINAL_BORDER_COLOR=t.TERMINAL_INACTIVE_SELECTION_BACKGROUND_COLOR=t.TERMINAL_SELECTION_FOREGROUND_COLOR=t.TERMINAL_SELECTION_BACKGROUND_COLOR=t.TERMINAL_CURSOR_BACKGROUND_COLOR=t.TERMINAL_CURSOR_FOREGROUND_COLOR=t.TERMINAL_FOREGROUND_COLOR=t.TERMINAL_BACKGROUND_COLOR=t.ansiColorIdentifiers=void 0,t.registerTerminalColors=o;const n=e(43718),r=e(52416);t.ansiColorIdentifiers=[],t.TERMINAL_BACKGROUND_COLOR=(0,r.registerColor)("terminal.background",{dark:r.PANEL_BACKGROUND,light:r.PANEL_BACKGROUND,hcDark:r.PANEL_BACKGROUND,hcLight:r.PANEL_BACKGROUND},(0,n.localize)("terminal.background","The background color of the terminal, this allows coloring the terminal differently to the panel.")),t.TERMINAL_FOREGROUND_COLOR=(0,r.registerColor)("terminal.foreground",{light:"#333333",dark:"#CCCCCC",hcDark:"#FFFFFF",hcLight:"#292929"},(0,n.localize)("terminal.foreground","The foreground color of the terminal.")),t.TERMINAL_CURSOR_FOREGROUND_COLOR=(0,r.registerColor)("terminalCursor.foreground",null,(0,n.localize)("terminalCursor.foreground","The foreground color of the terminal cursor.")),t.TERMINAL_CURSOR_BACKGROUND_COLOR=(0,r.registerColor)("terminalCursor.background",null,(0,n.localize)("terminalCursor.background","The background color of the terminal cursor. Allows customizing the color of a character overlapped by a block cursor.")),t.TERMINAL_SELECTION_BACKGROUND_COLOR=(0,r.registerColor)("terminal.selectionBackground",{light:"#ADD6FF",dark:"#264F78",hcDark:"#F3F518",hcLight:"#0F4A85"},(0,n.localize)("terminal.selectionBackground","The selection background color of the terminal.")),t.TERMINAL_SELECTION_FOREGROUND_COLOR=(0,r.registerColor)("terminal.selectionForeground",{light:null,dark:null,hcDark:"#000000",hcLight:"#ffffff"},(0,n.localize)("terminal.selectionForeground","The selection foreground color of the terminal. When this is null the selection foreground will be retained and have the minimum contrast ratio feature applied.")),t.TERMINAL_INACTIVE_SELECTION_BACKGROUND_COLOR=(0,r.registerColor)("terminal.inactiveSelectionBackground",{light:(0,r.transparent)(t.TERMINAL_SELECTION_BACKGROUND_COLOR,.5),dark:(0,r.transparent)(t.TERMINAL_SELECTION_BACKGROUND_COLOR,.5),hcDark:(0,r.transparent)(t.TERMINAL_SELECTION_BACKGROUND_COLOR,.7),hcLight:(0,r.transparent)(t.TERMINAL_SELECTION_BACKGROUND_COLOR,.5)},(0,n.localize)("terminal.inactiveSelectionBackground","The selection background color of the terminal when it does not have focus.")),t.TERMINAL_BORDER_COLOR=(0,r.registerColor)("terminal.border",{dark:r.PANEL_BORDER,light:r.PANEL_BORDER,hcDark:r.PANEL_BORDER,hcLight:r.PANEL_BORDER},(0,n.localize)("terminal.border","The color of the border that separates split panes within the terminal. This defaults to panel.border.")),t.TERMINAL_FIND_MATCH_BACKGROUND_COLOR=(0,r.registerColor)("terminal.findMatchBackground",{dark:null,light:null,hcDark:null,hcLight:"#0F4A85"},(0,n.localize)("terminal.findMatchBackground","Color of the current search match in the terminal. The color must not be opaque so as not to hide underlying terminal content.")),t.TERMINAL_FIND_MATCH_BORDER_COLOR=(0,r.registerColor)("terminal.findMatchBorder",{dark:r.editorFindMatch,light:r.editorFindMatch,hcDark:"#f38518",hcLight:"#0F4A85"},(0,n.localize)("terminal.findMatchBorder","Border color of the current search match in the terminal.")),t.TERMINAL_FIND_MATCH_HIGHLIGHT_BACKGROUND_COLOR=(0,r.registerColor)("terminal.findMatchHighlightBackground",{dark:null,light:null,hcDark:null,hcLight:null},(0,n.localize)("terminal.findMatchHighlightBackground","Color of the other search matches in the terminal. The color must not be opaque so as not to hide underlying terminal content.")),t.TERMINAL_FIND_MATCH_HIGHLIGHT_BORDER_COLOR=(0,r.registerColor)("terminal.findMatchHighlightBorder",{dark:r.editorFindMatchHighlight,light:r.editorFindMatchHighlight,hcDark:"#f38518",hcLight:"#0F4A85"},(0,n.localize)("terminal.findMatchHighlightBorder","Border color of the other search matches in the terminal.")),t.TERMINAL_OVERVIEW_RULER_FIND_MATCH_FOREGROUND_COLOR=(0,r.registerColor)("terminalOverviewRuler.findMatchForeground",{dark:r.overviewRulerFindMatchForeground,light:r.overviewRulerFindMatchForeground,hcDark:"#f38518",hcLight:"#0F4A85"},(0,n.localize)("terminalOverviewRuler.findMatchHighlightForeground","Overview ruler marker color for find matches in the terminal.")),t.TERMINAL_OVERVIEW_RULER_CURSOR_FOREGROUND_COLOR=(0,r.registerColor)("terminalOverviewRuler.cursorForeground",{dark:"#A0A0A0CC",light:"#A0A0A0CC",hcDark:"#A0A0A0CC",hcLight:"#A0A0A0CC"},(0,n.localize)("terminalOverviewRuler.cursorForeground","The overview ruler cursor color.")),t.ansiColorMap={"terminal.ansiBlack":{index:0,defaults:{light:"#000000",dark:"#000000",hcDark:"#000000",hcLight:"#292929"}},"terminal.ansiRed":{index:1,defaults:{light:"#cd3131",dark:"#cd3131",hcDark:"#cd0000",hcLight:"#cd3131"}},"terminal.ansiGreen":{index:2,defaults:{light:"#00BC00",dark:"#0DBC79",hcDark:"#00cd00",hcLight:"#00bc00"}},"terminal.ansiYellow":{index:3,defaults:{light:"#949800",dark:"#e5e510",hcDark:"#cdcd00",hcLight:"#949800"}},"terminal.ansiBlue":{index:4,defaults:{light:"#0451a5",dark:"#2472c8",hcDark:"#cd00cd",hcLight:"#bc05bc"}},"terminal.ansiMagenta":{index:5,defaults:{light:"#bc05bc",dark:"#bc3fbc",hcDark:"#cd00cd",hcLight:"#bc05bc"}},"terminal.ansiCyan":{index:6,defaults:{light:"#0598bc",dark:"#11a8cd",hcDark:"#00cdcd",hcLight:"#0598b"}},"terminal.ansiWhite":{index:7,defaults:{light:"#555555",dark:"#e5e5e5",hcDark:"#e5e5e5",hcLight:"#555555"}},"terminal.ansiBrightBlack":{index:8,defaults:{light:"#666666",dark:"#666666",hcDark:"#7f7f7f",hcLight:"#666666"}},"terminal.ansiBrightRed":{index:9,defaults:{light:"#cd3131",dark:"#f14c4c",hcDark:"#ff0000",hcLight:"#cd3131"}},"terminal.ansiBrightGreen":{index:10,defaults:{light:"#14CE14",dark:"#23d18b",hcDark:"#00ff00",hcLight:"#00bc00"}},"terminal.ansiBrightYellow":{index:11,defaults:{light:"#b5ba00",dark:"#f5f543",hcDark:"#ffff00",hcLight:"#b5ba00"}},"terminal.ansiBrightBlue":{index:12,defaults:{light:"#0451a5",dark:"#3b8eea",hcDark:"#5c5cff",hcLight:"#0451a5"}},"terminal.ansiBrightMagenta":{index:13,defaults:{light:"#bc05bc",dark:"#d670d6",hcDark:"#ff00ff",hcLight:"#bc05bc"}},"terminal.ansiBrightCyan":{index:14,defaults:{light:"#0598bc",dark:"#29b8db",hcDark:"#00ffff",hcLight:"#0598bc"}},"terminal.ansiBrightWhite":{index:15,defaults:{light:"#a5a5a5",dark:"#e5e5e5",hcDark:"#ffffff",hcLight:"#a5a5a5"}}};function o(){Object.keys(t.ansiColorMap).forEach(l=>{const _=t.ansiColorMap[l],v=l.substring(13);t.ansiColorIdentifiers[_.index]=(0,r.registerColor)(l,_.defaults,(0,n.localize)("terminal.ansiColor","'{0}' ANSI color in the terminal.",v))})}},49241:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalContextKey=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(66e3);let _=class{constructor(m){this._contextKeyService=this.globalContextkeyService.createScoped(m),this.isTerminalFocused=l.IsTerminalFocused.bind(this._contextKeyService),this.isTerminalViewInitialized=l.IsTerminalViewInitialized.bind(this._contextKeyService),this.shellExecutionSupportedContextKey=l.ShellExecutionSupported.bind(this.globalContextkeyService)}get service(){return this._contextKeyService}};t.TerminalContextKey=_,n.__decorate([(0,r.Autowired)(o.IContextKeyService),n.__metadata("design:type",Object)],_.prototype,"globalContextkeyService",void 0),t.TerminalContextKey=_=n.__decorate([(0,r.Injectable)(),n.__param(0,(0,r.Optional)()),n.__metadata("design:paramtypes",[HTMLDivElement])],_)},88023:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalContextMenuService=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(93899),_=e(43718),v=e(26405);let m=class extends _.Disposable{get contextMenu(){const s=this.menuService.createMenu(l.MenuId.TerminalPanelContext,this.controller.contextKeyService||this.contextKeyService);return this.addDispose(s),s}onContextMenu(s){s.preventDefault();const{x:h,y:a}=s.nativeEvent,g=this.contextMenu,u=(0,l.generateMergedCtxMenu)({menus:g});this.ctxMenuRenderer.show({anchor:{x:h,y:a},menuNodes:u,args:[]})}get tabContextMenu(){const s=this.menuService.createMenu(l.MenuId.TerminalTabContext,this.contextKeyService);return this.addDispose(s),s}get tabDropDownContextMenu(){const s=this.menuService.createMenu(l.MenuId.TerminalNewDropdownContext,this.contextKeyService);return this.addDispose(s),s}onDropDownContextMenu(s){s.preventDefault();const{x:h,y:a}=s.nativeEvent,g=this.tabDropDownContextMenu,u=(0,l.generateMergedCtxMenu)({menus:g});this.ctxMenuRenderer.show({anchor:{x:h,y:a},menuNodes:u,args:[s.target]})}onTabContextMenu(s,h){s.stopPropagation(),s.preventDefault();const{x:a,y:g}=s.nativeEvent,u=this.tabContextMenu,d=(0,l.generateMergedCtxMenu)({menus:u});this.ctxMenuRenderer.show({anchor:{x:a,y:g},menuNodes:d,args:[s.target,h]})}};t.TerminalContextMenuService=m,n.__decorate([(0,r.Autowired)(v.ITerminalController),n.__metadata("design:type",Object)],m.prototype,"controller",void 0),n.__decorate([(0,r.Autowired)(l.AbstractMenuService),n.__metadata("design:type",l.AbstractMenuService)],m.prototype,"menuService",void 0),n.__decorate([(0,r.Autowired)(l.ICtxMenuRenderer),n.__metadata("design:type",l.ICtxMenuRenderer)],m.prototype,"ctxMenuRenderer",void 0),n.__decorate([(0,r.Autowired)(o.IContextKeyService),n.__metadata("design:type",Object)],m.prototype,"contextKeyService",void 0),n.__decorate([o.memoize,n.__metadata("design:type",Object),n.__metadata("design:paramtypes",[])],m.prototype,"contextMenu",null),n.__decorate([o.memoize,n.__metadata("design:type",Object),n.__metadata("design:paramtypes",[])],m.prototype,"tabContextMenu",null),n.__decorate([o.memoize,n.__metadata("design:type",Object),n.__metadata("design:paramtypes",[])],m.prototype,"tabDropDownContextMenu",null),t.TerminalContextMenuService=m=n.__decorate([(0,r.Injectable)()],m)},7734:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalController=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(30144),_=e(93899),v=e(81741),m=e(1237),p=e(67889),s=e(43718),h=e(54414),a=e(63067),g=e(52416),u=e(26405),d=e(49241),E=e(68611);let f=class extends s.WithEventBus{get themeBackground(){return this._themeBackground}set themeBackground(y){y!==this._themeBackground&&(this._themeBackground=y,this._onThemeBackgroundChangeEmitter.fire(y))}get clients(){return this._clients}get focused(){return this._focus}get ready(){return this._ready}get activeClient(){if(this._activeClientId)return this._clients.get(this._activeClientId)}get contextKeyService(){if(this.terminalContextKey)return this.terminalContextKey.service}get clientId(){return this._clientId?this._clientId:(this._clientId=this.applicationService.clientId,this._clientId)}get _tabBarHandler(){return this.layoutService.getTabbarHandler(l.TERMINAL_CONTAINER_ID)}async _createClientOrIgnore(y){return this._clients.has(y.id)?this._clients.get(y.id):await this._createClient(y)}async _createClient(y,b){const A=await this.clientFactory(y,b);return this.logger.log("create client with ITerminalClientFactory2",A),this.setupClient(y,A)}setupClient(y,b){return this._clients.set(b.id,b),this.logger.log(`setup client ${b.id}`),b.addDispose(b.onExit(A=>{this._onDidCloseTerminal.fire({id:b.id,code:A.code})})),b.addDispose(b.onTitleChange(A=>{this._onDidTerminalTitleChange.fire({id:b.id,name:A.name})})),b.addDispose({dispose:()=>{this._clients.delete(b.id),this._onDidCloseTerminal.fire({id:b.id,code:-1})}}),b.addDispose(b.onLinksReady(()=>{this._setInstanceLinkProviders(b)})),this._onDidOpenTerminal.fire({id:b.id,name:b.name,isActive:!1}),this.terminalView.selectWidget(y.id),b}_disposeClient(y){const b=this.findClientFromWidgetId(y.id);b&&b.dispose()}constructor(){super(),this._onDidOpenTerminal=new s.Emitter,this._onDidCloseTerminal=new s.Emitter,this._onDidTerminalTitleChange=new s.Emitter,this._onDidChangeActiveTerminal=new s.Emitter,this._ready=new s.Deferred,this._linkProviders=new Set,this._linkProviderDisposables=new Map,this.onDidOpenTerminal=this._onDidOpenTerminal.event,this.onDidCloseTerminal=this._onDidCloseTerminal.event,this.onDidTerminalTitleChange=this._onDidTerminalTitleChange.event,this.onDidChangeActiveTerminal=this._onDidChangeActiveTerminal.event,this._onInstanceRequestStartExtensionTerminal=new s.Emitter,this.onInstanceRequestStartExtensionTerminal=this._onInstanceRequestStartExtensionTerminal.event,this.viewReady=new s.Deferred,this._onThemeBackgroundChangeEmitter=new s.Emitter,this.onThemeBackgroundChange=this._onThemeBackgroundChangeEmitter.event,this._focus=!1,this._clients=new Map}_createOneGroup(y){const b=this.terminalView.createGroup(y);return{group:this.terminalView.getGroup(b),index:b}}_reset(){const{group:y}=this._createOneGroup();return this.terminalView.createWidget(y)}async recovery(y){var b,A,S,D,I;if(this.config.isElectronRenderer&&!this.config.isRemote||!y.current||!(!((S=(A=(b=y?.groups)===null||b===void 0?void 0:b[0])===null||A===void 0?void 0:A[0])===null||S===void 0)&&S.client))return;const w=(I=(D=y.current)===null||D===void 0?void 0:D.split(u.TERMINAL_ID_SEPARATOR))===null||I===void 0?void 0:I[1];y.current&&y.current.includes(u.TERMINAL_ID_SEPARATOR)&&(y.current=`${this.clientId}|${w}`),y.groups=y.groups.map(k=>Array.isArray(k)?k.map(({client:F,...L})=>{var N;if(!L.task)return{client:F.includes(u.TERMINAL_ID_SEPARATOR)?`${this.clientId}${u.TERMINAL_ID_SEPARATOR}${(N=F?.split(u.TERMINAL_ID_SEPARATOR))===null||N===void 0?void 0:N[1]}`:F,...L}}).filter(Boolean):k);let T="",R="";const{groups:M,current:O}=y;for(const k of M){if(!k||k.length===0)continue;const{group:F}=this._createOneGroup(),L=[];for(const N of k)N&&L.push((async()=>{const U=this.terminalView.createWidget(F,typeof N=="string"?N:N.client,!!N.task,!1,!0),W=await this.clientFactory(U);this.setupClient(U,W),N.task&&(W.isTaskExecutor=!0,W.taskId=N.task),this._clients.set(W.id,W),O===W.id&&(T=U.id),R||(R=U.id),W.attached.promise.then(()=>{U.rename(W.name),W.ready||this.terminalView.removeWidget(U.id)})})());await Promise.all(L)}this.terminalView.groups.get().findIndex(k=>k.widgetsMap.has(T))>-1&&T?this.terminalView.selectWidget(T):R&&this.terminalView.selectWidget(R)}initContextKey(y){this.terminalContextKey=this.injector.get(d.TerminalContextKey,[y]),this.terminalContextKey.isTerminalFocused.set(this._focus),this.terminalContextKey.isTerminalViewInitialized.set(!0)}async firstInitialize(){if(await Promise.race([(async()=>{await this.layoutService.viewReady.promise,await this.viewReady.promise})(),new Promise(y=>{setTimeout(()=>{this.logger.warn("TerminalView didn't initialize in 2s, skip waiting, but may cause some problem"),y()},2e3)})]),this.themeBackground=this.terminalTheme.terminalTheme.background||"",this.addDispose(this.terminalView.onWidgetCreated(y=>{this._createClientOrIgnore(y)})),this.addDispose(this.terminalView.onWidgetDisposed(y=>{this._disposeClient(y)})),this.addDispose(this.terminalView.onWidgetEmpty(()=>{this.hideTerminalPanel()})),this.addDispose(this.terminalView.onWidgetSelected(y=>{const b=this.findClientFromWidgetId(y.id);b&&(this._onDidChangeActiveTerminal.fire(b.id),b.ready&&setTimeout(()=>{b.focus()})),this._activeClientId=b?.id})),this.addDispose(this.themeService.onThemeChange(()=>{this._clients.forEach(y=>{y.updateTheme()}),this.themeBackground=this.terminalTheme.terminalTheme.background||""})),this.addDispose(this.eventBus.onDirective(o.ResizeEvent.createDirective((0,o.getSlotLocation)("@opensumi/ide-terminal-next",this.config.layoutConfig)),()=>{this._tabBarHandler&&this._tabBarHandler.isActivated()&&this.terminalView.resize()})),this.registerContributedProfilesCommandAndMenu(),this.addDispose(this.profileService.onDidChangeAvailableProfiles(()=>{this.registerContributedProfilesCommandAndMenu()})),this._tabBarHandler&&(this.addDispose(this._tabBarHandler.onActivate(()=>{if(this.terminalView.empty()){const y=this._reset();this.terminalView.selectWidget(y.id)}else this.terminalView.selectGroup(this.terminalView.currentGroupIndex.get()>-1?this.terminalView.currentGroupIndex.get():0)})),this.addDispose(this._tabBarHandler.onInActivate(()=>{this.editorService.currentEditor&&this.editorService.currentEditor.monacoEditor.focus()})),this._tabBarHandler.isActivated()))if(this.terminalView.empty()){const y=this._reset();this.terminalView.selectWidget(y.id)}else this.terminalView.selectGroup(this.terminalView.currentGroupIndex.get()>-1?this.terminalView.currentGroupIndex.get():0);this.terminalContextKey.isTerminalViewInitialized.set(!0),this._ready.resolve()}async reconnect(){Array.from(this._clients.values()).forEach(async b=>{await b.checkHealthy()||b.displayUnHealthyMessage()})}focus(){this._focus=!0,this.terminalContextKey.isTerminalFocused.set(!0)}blur(){this._focus=!1,this.terminalContextKey.isTerminalFocused.set(!1)}onContextMenu(y){y.preventDefault();const b=this.menuService.createMenu(_.MenuId.TerminalInstanceContext),A=(0,v.generateCtxMenu)({menus:b});this.ctxMenuRenderer.show({menuNodes:A[1],anchor:{x:y.clientX,y:y.clientY}})}toJSON(){const y=[];let b=this._clients.get(this.terminalView.currentWidgetId.get());return this.terminalView.groups.get().forEach(A=>{const S=[];A.widgets.get().forEach(I=>{var w;const T=this._clients.get(I.id),R=!this.preferenceService.get("terminal.integrated.enablePersistentSessions")||((w=T?.launchConfig)===null||w===void 0?void 0:w.disablePersistence);if(!T||R||T?.isTaskExecutor)return;b||(b=T);const M={client:T.id};S.push(M)}),S.length>0&&y.push(S)}),{groups:y,current:b&&b.id}}disposeTerminalClients(y){const b=Array.from(this.clients.values()).filter(A=>A.id===y?.id||A.isTaskExecutor===y?.isTaskExecutor||A.name===y?.name);for(const A of b)try{A.dispose()}catch{}}findClientFromWidgetId(y){return this._clients.get(y)}convertTerminalOptionsToLaunchConfig(y){const b={name:y.name,executable:(0,s.withNullAsUndefined)(y.shellPath),args:(0,s.withNullAsUndefined)(y.shellArgs),cwd:(0,s.withNullAsUndefined)(y.cwd),env:(0,s.withNullAsUndefined)(y.env),icon:(0,s.withNullAsUndefined)((0,u.asTerminalIcon)(y.iconPath)),color:(0,s.isThemeColor)(y.color)?y.color.id:void 0,initialText:(0,s.withNullAsUndefined)(y.message),strictEnv:(0,s.withNullAsUndefined)(y.strictEnv),hideFromUser:(0,s.withNullAsUndefined)(y.hideFromUser),isExtensionOwnedTerminal:y.isExtensionTerminal,location:u.TerminalLocation.Panel,disablePersistence:(0,s.withNullAsUndefined)(y.isTransient)};return b.__fromTerminalOptions=y,b}convertProfileToLaunchConfig(y,b){if(!y)return{};if(y&&"profileName"in y){const A=y;return A.path?{executable:A.path,args:A.args,env:A.env,color:A.color,name:A.overrideName?A.profileName:void 0,cwd:b}:y}return b&&(y.cwd=b),y}async createTerminalWithWidgetByTerminalOptions(y){const b=this.convertTerminalOptionsToLaunchConfig(y.terminalOptions);return this.createTerminalWithWidget({...y,config:b})}async createTerminal(y){const b=y.id||this.service.generateSessionId(),{group:A}=this._createOneGroup(),S=this.terminalView.createWidget(A,b,!1,!0);return await this._createClient(S,y)}async createTerminalWithWidget(y){const b=y.id?this.clientId+u.TERMINAL_ID_SEPARATOR+y.id:this.service.generateSessionId(),A=this.convertProfileToLaunchConfig(y.config),{group:S}=this._createOneGroup(A),D=this.terminalView.createWidget(S,b,y.isTaskExecutor||!y.closeWhenExited,!0);y.beforeCreate&&typeof y.beforeCreate=="function"&&y.beforeCreate(b);const I=await this._createClient(D,{id:b,config:A,cwd:y?.cwd,location:y?.location,resource:y?.resource});return y.isTaskExecutor&&(I.isTaskExecutor=!0,I.taskId=y.taskId),I}clearCurrentGroup(){const y=this.terminalView.currentGroup.get();y&&y.widgets.get().forEach(A=>{const S=this._clients.get(A.id);S&&S.clear()})}clearAllGroups(){this._clients.forEach(y=>{y&&y.clear()})}showTerminalPanel(){this._tabBarHandler&&this._tabBarHandler.activate()}hideTerminalPanel(){this._tabBarHandler&&this._tabBarHandler.isActivated()&&this._tabBarHandler.deactivate()}toggleTerminalPanel(){this._tabBarHandler&&(this._tabBarHandler.isActivated()?this._tabBarHandler.deactivate():this._tabBarHandler.activate())}requestStartExtensionTerminal(y,b,A){return new Promise(S=>{this._onInstanceRequestStartExtensionTerminal.fire({proxy:y,cols:b,rows:A,callback:S})})}registerLinkProvider(y){const b=new s.DisposableStore;this._linkProviders.add(y);for(const A of this._clients.values())A.areLinksReady&&b.add(A.registerLinkProvider(y));return this._linkProviderDisposables.set(y,b),{dispose:()=>{const A=this._linkProviderDisposables.get(y);A?.dispose(),this._linkProviders.delete(y)}}}_setInstanceLinkProviders(y){for(const b of this._linkProviders){const A=this._linkProviderDisposables.get(b),S=y.registerLinkProvider(b);A?.add(S)}}registerContributedProfilesCommandAndMenu(){this.commandAndMenuDisposeCollection&&this.commandAndMenuDisposeCollection.dispose(),this.commandAndMenuDisposeCollection=new s.DisposableCollection,this.profileService.availableProfiles.filter(b=>!b.isAutoDetected).forEach(b=>{const A=`TerminalProfilesCommand:${b.path}:${b.profileName}`;this.commandAndMenuDisposeCollection.push(this.commandRegistry.registerCommand({id:A},{execute:async()=>{await this.createTerminal({config:b})}})),this.commandAndMenuDisposeCollection.push(this.menuRegistry.registerMenuItem(_.MenuId.TerminalNewDropdownContext,{command:{id:A,label:b.profileName||"unknown profile"}}))}),this.profileService.contributedProfiles.forEach(b=>{const A=`TerminalProfilesCommand:${b.extensionIdentifier}:${b.id}`;this.commandAndMenuDisposeCollection.push(this.commandRegistry.registerCommand({id:A},{execute:async()=>{await this.profileService.createContributedTerminalProfile(b.extensionIdentifier,b.id,{icon:b.icon})}})),this.commandAndMenuDisposeCollection.push(this.menuRegistry.registerMenuItem(_.MenuId.TerminalNewDropdownContext,{command:{id:A,label:(0,s.replaceLocalizePlaceholder)(b.title)||b.title||"unknown profile"}}))})}};t.TerminalController=f,n.__decorate([(0,r.Autowired)(a.IMainLayoutService),n.__metadata("design:type",Object)],f.prototype,"layoutService",void 0),n.__decorate([(0,r.Autowired)(g.IThemeService),n.__metadata("design:type",Object)],f.prototype,"themeService",void 0),n.__decorate([(0,r.Autowired)(h.WorkbenchEditorService),n.__metadata("design:type",h.WorkbenchEditorService)],f.prototype,"editorService",void 0),n.__decorate([(0,r.Autowired)(u.ITerminalTheme),n.__metadata("design:type",Object)],f.prototype,"terminalTheme",void 0),n.__decorate([(0,r.Autowired)(u.ITerminalGroupViewService),n.__metadata("design:type",E.TerminalGroupViewService)],f.prototype,"terminalView",void 0),n.__decorate([(0,r.Autowired)(u.ITerminalClientFactory2),n.__metadata("design:type",Function)],f.prototype,"clientFactory",void 0),n.__decorate([(0,r.Autowired)(u.ITerminalInternalService),n.__metadata("design:type",Object)],f.prototype,"service",void 0),n.__decorate([(0,r.Autowired)(u.ITerminalErrorService),n.__metadata("design:type",Object)],f.prototype,"errorService",void 0),n.__decorate([(0,r.Autowired)(u.ITerminalProfileService),n.__metadata("design:type",Object)],f.prototype,"profileService",void 0),n.__decorate([(0,r.Autowired)(s.CommandRegistry),n.__metadata("design:type",Object)],f.prototype,"commandRegistry",void 0),n.__decorate([(0,r.Autowired)(_.IMenuRegistry),n.__metadata("design:type",_.IMenuRegistry)],f.prototype,"menuRegistry",void 0),n.__decorate([(0,r.Autowired)(s.IApplicationService),n.__metadata("design:type",Object)],f.prototype,"applicationService",void 0),n.__decorate([(0,r.Autowired)(r.INJECTOR_TOKEN),n.__metadata("design:type",r.Injector)],f.prototype,"injector",void 0),n.__decorate([(0,r.Autowired)(o.AppConfig),n.__metadata("design:type",Object)],f.prototype,"config",void 0),n.__decorate([(0,r.Autowired)(s.ILogger),n.__metadata("design:type",Object)],f.prototype,"logger",void 0),n.__decorate([(0,r.Autowired)(m.AbstractMenuService),n.__metadata("design:type",m.AbstractMenuService)],f.prototype,"menuService",void 0),n.__decorate([(0,r.Autowired)(_.ICtxMenuRenderer),n.__metadata("design:type",_.ICtxMenuRenderer)],f.prototype,"ctxMenuRenderer",void 0),n.__decorate([(0,r.Autowired)(p.PreferenceService),n.__metadata("design:type",Object)],f.prototype,"preferenceService",void 0),n.__decorate([(0,r.Autowired)(o.AppConfig),n.__metadata("design:type",Object)],f.prototype,"appConfig",void 0),t.TerminalController=f=n.__decorate([(0,r.Injectable)(),n.__metadata("design:paramtypes",[])],f)},48520:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalEnvironmentService=t.ENVIRONMENT_VARIABLE_COLLECTIONS_KEY=void 0;const n=e(85608),r=n.__importDefault(e(12784)),o=n.__importDefault(e(97331)),l=n.__importDefault(e(14041)),_=e(76003),v=e(41869),m=e(43718),p=e(25751),s=e(67899),h=e(10560),a=e(26405),g=e(94620),u=e(12404),d=e(7066);t.ENVIRONMENT_VARIABLE_COLLECTIONS_KEY="terminal.integrated.environmentVariableCollections";const E="terminal.environmentVariableCollections.changed";let f=class{constructor(){this.collections=new Map,this._onDidChangeCollections=new m.Emitter}get onDidChangeCollections(){return this._onDidChangeCollections.event}async initEnvironmentVariableCollections(){const y=await this.storageService.getData(t.ENVIRONMENT_VARIABLE_COLLECTIONS_KEY);if(y)try{JSON.parse(y).forEach(A=>{this.collections.set(A.extensionIdentifier,{persistent:!0,map:(0,g.deserializeEnvironmentVariableCollection)(A.collection)})})}catch(b){this.logger.warn(`parse environment variable collection error:
|
|
33771
33771
|
${b.message}, data:
|
|
33772
33772
|
${y}`)}this.mergedCollection=this.resolveMergedCollection(),this.previousMergedCollection=void 0}set(y,b){this.collections.set(y,b),this.updateCollections()}delete(y){this.collections.delete(y),this.updateCollections()}async getProcessEnv(){return(0,m.raceTimeout)(this.terminalProcessService.getEnv(),1e3)}resolveMergedCollection(){return new u.MergedEnvironmentVariableCollection(this.collections)}onDidClickStatusBarEntry(y){this.dialogService.warning(l.default.createElement(d.TerminalVariable,{diff:y}),[(0,m.localize)("dialog.file.close"),(0,m.localize)("terminal.relaunch")]).then(b=>{var A;b&&b===(0,m.localize)("terminal.relaunch")&&(this.commandService.executeCommand(v.TERMINAL_COMMANDS.RE_LAUNCH.id),(A=this.statusBarEntryAccessor)===null||A===void 0||A.dispose(),this.statusBarEntryAccessor=void 0)})}updateStatusBarMessage(){var y;if(!this.mergedCollection)return;const b=(y=this.previousMergedCollection)===null||y===void 0?void 0:y.diff(this.mergedCollection);if(!b)return;this.statusBarEntryAccessor&&(this.statusBarEntryAccessor.dispose(),this.statusBarEntryAccessor=void 0);const A=[];this.mergedCollection.map.forEach((S,D)=>{S.forEach(I=>A.push((0,g.mutatorTypeLabel)(I.type,I.value,D)))}),this.statusBarEntryAccessor=this.statusbarService.addElement(E,{iconClass:(0,v.getIcon)("warning-circle"),color:"orange",alignment:v.StatusBarAlignment.RIGHT,tooltip:(0,m.toMarkdownString)((0,m.localize)("terminal.environment.changed")+"\n\n```\n"+A.join(`
|
|
33773
|
-
`)+"\n```"),onClick:()=>this.onDidClickStatusBarEntry(b)})}notifyCollectionUpdates(){this._onDidChangeCollections.fire(this.mergedCollection),this.updateStatusBarMessage()}updateCollections(){(0,o.default)(this.persistCollections.bind(this),100)(),this.previousMergedCollection=this.mergedCollection,this.mergedCollection=this.resolveMergedCollection(),(0,r.default)(this.notifyCollectionUpdates.bind(this),1e3)()}persistCollections(){const y=[];this.collections.forEach((A,S)=>{A.persistent&&y.push({extensionIdentifier:S,collection:(0,g.serializeEnvironmentVariableCollection)(this.collections.get(S).map)})});const b=JSON.stringify(y);this.storageService.setData(t.ENVIRONMENT_VARIABLE_COLLECTIONS_KEY,b)}};t.TerminalEnvironmentService=f,n.__decorate([(0,_.Autowired)(h.IWorkspaceStorageService),n.__metadata("design:type",Object)],f.prototype,"storageService",void 0),n.__decorate([(0,_.Autowired)(s.IStatusBarService),n.__metadata("design:type",Object)],f.prototype,"statusbarService",void 0),n.__decorate([(0,_.Autowired)(a.ITerminalProcessPath),n.__metadata("design:type",Object)],f.prototype,"terminalProcessService",void 0),n.__decorate([(0,_.Autowired)(p.IDialogService),n.__metadata("design:type",Object)],f.prototype,"dialogService",void 0),n.__decorate([(0,_.Autowired)(m.CommandService),n.__metadata("design:type",Object)],f.prototype,"commandService",void 0),n.__decorate([(0,_.Autowired)(m.ILogger),n.__metadata("design:type",Object)],f.prototype,"logger",void 0),t.TerminalEnvironmentService=f=n.__decorate([(0,_.Injectable)()],f)},102:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalErrorService=void 0;const n=e(85608),r=e(76003),o=e(43718),l=e(26405);let _=class{constructor(){this.errors=new Map,this._onErrorsChangeEmitter=new o.Emitter,this.onErrorsChange=this._onErrorsChangeEmitter.event,this.service.onError(m=>{this.errors.set(m.id,m),this._onErrorsChangeEmitter.fire()}),this.service.onExit(m=>{try{this.view.getWidget(m.sessionId).reuse||this.view.removeWidget(m.sessionId)}catch{}}),this.controller.onDidCloseTerminal(m=>{this.errors.delete(m.id),this._onErrorsChangeEmitter.fire()})}async fix(m){const p=this.controller.findClientFromWidgetId(m);if(p)return await 0,this.errors.delete(m),this._onErrorsChangeEmitter.fire(),p.reset(),p.attached.promise}};t.TerminalErrorService=_,n.__decorate([(0,r.Autowired)(l.ITerminalService),n.__metadata("design:type",Object)],_.prototype,"service",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalController),n.__metadata("design:type",Object)],_.prototype,"controller",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalGroupViewService),n.__metadata("design:type",Object)],_.prototype,"view",void 0),t.TerminalErrorService=_=n.__decorate([(0,r.Injectable)(),n.__metadata("design:paramtypes",[])],_)},90853:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalProcessExtHostProxy=void 0;const n=e(43718);class r extends n.Disposable{get onProcessReady(){return this._onProcessReady.event}get onProcessOverrideDimensions(){return this._onProcessOverrideDimensions.event}constructor(l,_,v,m){super(),this.terminalId=l,this._cols=_,this._rows=v,this.controller=m,this._onProcessData=this.registerDispose(new n.Emitter),this.onProcessData=this._onProcessData.event,this._onProcessExit=this.registerDispose(new n.Emitter),this.onProcessExit=this._onProcessExit.event,this._onProcessReady=this.registerDispose(new n.Emitter),this._onProcessTitleChanged=this.registerDispose(new n.Emitter),this.onProcessTitleChanged=this._onProcessTitleChanged.event,this._onProcessOverrideDimensions=this.registerDispose(new n.Emitter),this._onStart=this.registerDispose(new n.Emitter),this.onStart=this._onStart.event,this._onInput=this.registerDispose(new n.Emitter),this.onInput=this._onInput.event,this._onResize=this.registerDispose(new n.Emitter),this.onResize=this._onResize.event,this._onShutdown=this.registerDispose(new n.Emitter),this.onShutdown=this._onShutdown.event,this._onRequestInitialCwd=this.registerDispose(new n.Emitter),this.onRequestInitialCwd=this._onRequestInitialCwd.event,this._onRequestCwd=this.registerDispose(new n.Emitter),this.onRequestCwd=this._onRequestCwd.event,this._onRequestLatency=this.registerDispose(new n.Emitter),this.onRequestLatency=this._onRequestLatency.event,this._pendingInitialCwdRequests=[],this._pendingCwdRequests=[],this._pendingLatencyRequests=[]}emitData(l){this._onProcessData.fire(l)}emitTitle(l){this._onProcessTitleChanged.fire(l)}emitReady(l,_){this._onProcessReady.fire({pid:l,cwd:_})}emitExit(l){this._onProcessExit.fire(l),this.dispose()}emitOverrideDimensions(l){this._onProcessOverrideDimensions.fire(l)}emitInitialCwd(l){for(;this._pendingInitialCwdRequests.length>0;)this._pendingInitialCwdRequests.pop()(l)}emitCwd(l){for(;this._pendingCwdRequests.length>0;)this._pendingCwdRequests.pop()(l)}emitLatency(l){for(;this._pendingLatencyRequests.length>0;)this._pendingLatencyRequests.pop()(l)}async start(){return this.controller.requestStartExtensionTerminal(this,this._cols,this._rows)}shutdown(l){this._onShutdown.fire(l)}input(l){this._onInput.fire(l)}resize(l,_){this._onResize.fire({cols:l,rows:_})}getInitialCwd(){return new Promise(l=>{this._onRequestInitialCwd.fire(),this._pendingInitialCwdRequests.push(l)})}getCwd(){return new Promise(l=>{this._onRequestCwd.fire(),this._pendingCwdRequests.push(l)})}getLatency(){return new Promise(l=>{this._onRequestLatency.fire(),this._pendingLatencyRequests.push(l)})}}t.TerminalProcessExtHostProxy=r},53891:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalHoverManagerService=void 0;const n=e(85608),r=e(76003),o=e(43718),l=20,_=5;let v=class{appendTerminalHoverOverlay(){let p=document.querySelector("#terminal-link-hover-overlay");p||(p=document.createElement("div"),p.id="terminal-link-hover-overlay",document.body.appendChild(p));const s=document.createElement("div");s.classList.add("terminal-hover-overlay"),p.appendChild(s),this.hoverOverlay=s}appendTerminalHoverContainer(){var p;this.hoverWidget=document.createElement("div"),this.hoverWidget.style.display="none",this.hoverWidget.style.position="fixed",this.hoverWidget.style.color="var(--editorWidget-foreground)",this.hoverWidget.style.backgroundColor="var(--editorWidget-background)",this.hoverWidget.style.borderColor="var(--editorWidget-border)",this.hoverWidget.style.borderWidth="0.5px",this.hoverWidget.style.borderStyle="solid",this.hoverWidget.style.padding="5px",this.hoverWidget.style.top="-500px",this.hoverWidget.style.left="-500px",this.hoverWidget.style.zIndex="10",this.hoverWidget.classList.add("hover-container"),this.hoverOverlay||this.appendTerminalHoverOverlay(),(p=this.hoverOverlay)===null||p===void 0||p.appendChild(this.hoverWidget)}setHoverOverlay(p){this.hoverOverlay=p}showHover(p,s,h){this.hoverWidget||this.appendTerminalHoverContainer();const a=p.viewportRange,g=p.cellDimensions,u=p.boundingClientRect;return this.hoverWidget&&(this.hoverWidget.textContent=s,this.hoverWidget.style.display="inline"),requestAnimationFrame(()=>{if(this.hoverWidget){this.hoverWidget.style.top=`${(a.start.y-1)*g.height+u.y-l}px`;let d=a.start.x*g.width+u.x+_;d+this.hoverWidget.clientWidth>u.x+u.width&&(d=u.x+u.width-this.hoverWidget.clientWidth-_),this.hoverWidget.style.left=`${d}px`}}),o.Disposable.create(()=>this.dispose())}hideHover(){this.hoverWidget&&this.dispose()}dispose(){var p;(p=this.hoverWidget)===null||p===void 0||p.remove(),this.hoverWidget=void 0}};t.TerminalHoverManagerService=v,t.TerminalHoverManagerService=v=n.__decorate([(0,r.Injectable)()],v)},35628:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalKeyBoardInputService=void 0;const n=e(85608),r=e(76003),o=e(43718);let l=class{constructor(){this._isCommandOrCtrl=!1}get isCommandOrCtrl(){return this._isCommandOrCtrl}listen(){const v=o.isMacintosh?"Meta":"Control";document.addEventListener("keydown",m=>{m.key===v&&(this._isCommandOrCtrl=!0)}),document.addEventListener("keyup",m=>{m.key===v&&(this._isCommandOrCtrl=!1)})}};t.TerminalKeyBoardInputService=l,t.TerminalKeyBoardInputService=l=n.__decorate([(0,r.Injectable)()],l)},82022:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalInternalService=void 0;const n=e(85608),r=e(76003),o=e(26405);let l=class{constructor(){this._processExtHostProxies=new Map}generateSessionId(){return this.service.generateSessionId?this.service.generateSessionId():(0,o.generateSessionId)()}getOptions(){return this.service.getOptions?this.service.getOptions():{}}check(v){return this.service.check?this.service.check(v):Promise.resolve(!0)}_getExtHostProxy(v){return this._processExtHostProxies.get(v)}async sendText(v,m){const p=this._getExtHostProxy(v);return p?p.emitData(m):this.service.sendText(v,m)}async resize(v,m,p){const s=this._getExtHostProxy(v);return s?s.resize(m,p):this.service.resize(v,m,p)}disposeById(v){const m=this._getExtHostProxy(v);return m?(this._processExtHostProxies.delete(v),m.dispose()):this.service.disposeById(v)}async getProcessId(v){return this._getExtHostProxy(v)?-1:this.service.getProcessId(v)}onError(v){return this.service.onError(v)}onExit(v){return this.service.onExit(v)}onProcessChange(v){return this.service.onProcessChange(v)}async getOS(){return await this.service.getOS()}async getProfiles(v){return await this.service.getProfiles(v)}async getDefaultSystemShell(){return await this.service.getDefaultSystemShell()}async getCodePlatformKey(){return await this.service.getCodePlatformKey()}async attachByLaunchConfig(v,m,p,s,h){if(s.customPtyImplementation){const a=s.customPtyImplementation(v,m,p);return a.start(),a.onProcessExit(()=>{this._processExtHostProxies.delete(v)}),this._processExtHostProxies.set(v,a),{name:s.name||"ExtensionTerminal-"+v,readonly:!1,onData:a.onProcessData.bind(a),sendData:a.input.bind(a),onExit:a.onProcessExit.bind(a)}}return await this.service.attachByLaunchConfig(v,m,p,s,h)}async getCwd(v){return await this.service.getCwd(v)}};t.TerminalInternalService=l,n.__decorate([(0,r.Autowired)(o.ITerminalService),n.__metadata("design:type",Object)],l.prototype,"service",void 0),n.__decorate([(0,r.Autowired)(o.ITerminalController),n.__metadata("design:type",Object)],l.prototype,"controller",void 0),t.TerminalInternalService=l=n.__decorate([(0,r.Injectable)()],l)},12642:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalNetworkService=void 0;const n=e(85608),r=e(76003),o=e(43718),l=e(26405);let _=class extends o.Disposable{constructor(){super(),this._onConnect=new o.Emitter,this.onConnect=this._onConnect.event,this._onDisconnect=new o.Emitter,this.onDisconnect=this._onDisconnect.event,this._status=l.TerminalNetworkStatus.DISCONNECTED,this._resetRetryTimers=new Map,this._reconnectInfo=new Map,this.controller.onDidCloseTerminal(m=>{this._resetRetryTimers.delete(m.id),this._reconnectInfo.delete(m.id)}),this.onDispose(()=>{this._timer&&clearTimeout(this._timer)})}get status(){return this._status}setStatus(m){this._status=m,m===l.TerminalNetworkStatus.CONNECTED?(this._onConnect.fire(),this.scheduleReconnection()):this._onDisconnect.fire()}bindErrors(){this.service.onError(this.handleError.bind(this))}handleError(m){m.shouldReconnect==null&&(m.shouldReconnect=!0);const p=m.id,s=this.getReconnectInfo(p);s.times&&(s.nextRetry=Date.now()+2e3),this._reconnectInfo.set(p,s),this.scheduleReconnection()}reconnect(){if(this._status===l.TerminalNetworkStatus.DISCONNECTED)return;const m=Date.now();let p=Number.POSITIVE_INFINITY;for(const s of this.errorService.errors.keys()){if(!this.shouldReconnect(s))continue;const{nextRetry:h}=this.getReconnectInfo(s);h>m?p=Math.min(p,h-m):this.reconnectClient(s)}p<Number.POSITIVE_INFINITY&&this.scheduleReconnection(p)}async reconnectClient(m){this.countRetry(m);const p=this.errorService.fix(m);return p.then(()=>{this.resetRetryLater(m)}),p}getReconnectInfo(m){return this._reconnectInfo.get(m)||{times:0,nextRetry:0}}countRetry(m){const p=this._resetRetryTimers.get(m);p&&(clearTimeout(p),this._resetRetryTimers.delete(m));const s=this.getReconnectInfo(m);s.times+=1,this._reconnectInfo.set(m,s)}resetRetryLater(m){const p=window.setTimeout(()=>{this._reconnectInfo.delete(m),this._resetRetryTimers.delete(m)},8e3);this._resetRetryTimers.set(m,p)}scheduleReconnection(m=200){this._timer||(this._timer=window.setTimeout(()=>{this._timer=void 0,this.reconnect()},m))}shouldReconnect(m){const p=this.errorService.errors.get(m);return p?.shouldReconnect?this.getReconnectInfo(m).times<3:!1}};t.TerminalNetworkService=_,n.__decorate([(0,r.Autowired)(l.ITerminalErrorService),n.__metadata("design:type",Object)],_.prototype,"errorService",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalInternalService),n.__metadata("design:type",Object)],_.prototype,"service",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalController),n.__metadata("design:type",Object)],_.prototype,"controller",void 0),t.TerminalNetworkService=_=n.__decorate([(0,r.Injectable)(),n.__metadata("design:paramtypes",[])],_)},13663:(P,t,e)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalPreference=void 0;const r=e(85608),o=r.__importDefault(e(16735)),l=e(76003),_=e(41869),v=e(43718),m=e(3276);let p=n=class{_prefToOption(h){return h.startsWith("terminal.integrated.")?h.replace("terminal.integrated.",""):h.replace("terminal.","")}_optionToPref(h){return`terminal.${h}`}_valid(h,a){return this.toValidOption(h,a)||n.defaultOptions[h]}constructor(){this._onChange=new v.Emitter,this.onChange=this._onChange.event,this.service.onPreferenceChanged(({preferenceName:h,newValue:a,oldValue:g})=>{const u=this._prefToOption(h);a!==g&&m.SupportedOptionsName[u]&&this._onChange.fire({name:u,value:this._valid(u,a)})})}getCodeCompatibleOption(){const h={copyOnSelection:this.service.get("terminal.integrated.copyOnSelection"),cursorBlink:this.service.get("terminal.integrated.cursorBlinking"),fontSize:this.service.get("terminal.integrated.fontSize"),scrollback:this.service.get("terminal.integrated.scrollback"),fontFamily:this.service.get("terminal.integrated.fontFamily")||this.service.get("editor.fontFamily"),fontWeight:this.service.get("terminal.integrated.fontWeight"),fontWeightBold:this.service.get("terminal.integrated.fontWeightBold"),cursorStyle:this.service.get("terminal.integrated.cursorStyle")==="line"?"bar":this.service.get("terminal.integrated.cursorStyle"),cursorWidth:this.service.get("terminal.integrated.cursorWidth"),lineHeight:this.service.get("terminal.integrated.lineHeight"),letterSpacing:this.service.get("terminal.integrated.letterSpacing"),fastScrollSensitivity:this.service.get("terminal.integrated.fastScrollSensitivity")};return(0,o.default)(h,a=>a!==void 0)}get(h){const a=this.service.get(this._optionToPref(h),n.defaultOptions[h]);return this._valid(h,a)}getOrUndefined(h){return this.service.get(this._optionToPref(h))}toValidOption(h,a){switch(h){case m.SupportedOptionsName.fontSize:return a>5?a:5;case m.SupportedOptionsName.cursorStyle:return a==="line"?"bar":a;default:return a}}getOptions(){const h={};return Object.entries(m.SupportedOptionsName).forEach(([a])=>{if(!a)return;const g=this.getOrUndefined(a);g&&(h[a]=g)}),h}toJSON(){return{...n.defaultOptions,...this.getCodeCompatibleOption(),...this.getOptions()}}};t.TerminalPreference=p,p.defaultOptions={allowTransparency:!1,macOptionIsMeta:!1,cursorBlink:!1,scrollback:2500,tabStopWidth:8,fontSize:12,customGlyphs:!0,drawBoldTextInBrightColors:!0,fastScrollModifier:"alt",fastScrollSensitivity:5,scrollSensitivity:1,overviewRulerWidth:10,copyOnSelection:!1,fontWeightBold:"bold",fontFamily:"Menlo, Monaco, 'Courier New', monospace",cursorStyle:"block"},r.__decorate([(0,l.Autowired)(_.PreferenceService),r.__metadata("design:type",Object)],p.prototype,"service",void 0),t.TerminalPreference=p=n=r.__decorate([(0,l.Injectable)(),r.__metadata("design:paramtypes",[])],p)},94486:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalProfileInternalService=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(26405),_="Generated Profile";let v=class{async resolveTerminalTypeProfile(){var p,s;const h=this.preferenceService.get("terminal.type");if(!h||h==="default")return;let a=h;const g=[],u=await this.terminalService.getCodePlatformKey();await this.terminalService.getOS()===o.OperatingSystem.Windows?a=(p=await this.serviceClientRPC.$resolveWindowsShellPath(h))!==null&&p!==void 0?p:a:a=(s=await this.serviceClientRPC.$resolveUnixShellPath(h))!==null&&s!==void 0?s:a;const E=this.preferenceService.get(`terminal.integrated.shellArgs.${u}`,[]);return g.push(...E),{profileName:"terminal.type",path:a,args:g,icon:void 0,isDefault:!1}}async resolveDefaultProfile(p){const s=await this.resolveTerminalTypeProfile();if(s)return s;await this.profileService.profilesReady;let h=await this.resolveRealDefaultProfile();return h||(h=await this._resolvedFallbackDefaultProfile(p)),h}async resolveRealDefaultProfile(){await this.profileService.profilesReady;const p=this.profileService.getDefaultProfileName();if(p)return this.profileService.availableProfiles.find(s=>s.profileName===p)}async _resolvedFallbackDefaultProfile(p){var s;const h=await this.terminalService.getDefaultSystemShell();let a;return((s=p?.os)!==null&&s!==void 0?s:await this.terminalService.getOS())===o.OperatingSystem.Macintosh&&o.path.parse(h).name.match(/(zsh|bash)/)?a=["--login"]:a=[],{profileName:_,path:h,args:a,isDefault:!1}}};t.TerminalProfileInternalService=v,n.__decorate([(0,r.Autowired)(l.ITerminalProfileService),n.__metadata("design:type",Object)],v.prototype,"profileService",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalService),n.__metadata("design:type",Object)],v.prototype,"terminalService",void 0),n.__decorate([(0,r.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],v.prototype,"preferenceService",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalServicePath),n.__metadata("design:type",Object)],v.prototype,"serviceClientRPC",void 0),t.TerminalProfileInternalService=v=n.__decorate([(0,r.Injectable)()],v)},89570:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalProfileService=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(43718),_=e(26405),{equals:v}=l.arrays;let m=class extends l.WithEventBus{get onTerminalProfileResolved(){return this.onTerminalProfileResolvedEmitter.event}get onDidChangeDefaultShell(){return this.onDidChangeDefaultShellEmitter.event}get profilesReady(){return this._profilesReadyBarrier.wait().then(()=>{})}get onDidChangeAvailableProfiles(){return this._onDidChangeAvailableProfiles.event}constructor(){super(),this.onTerminalProfileResolvedEmitter=new l.Emitter,this.onDidChangeDefaultShellEmitter=new l.Emitter,this._onDidChangeAvailableProfiles=new l.Emitter,this._profileProviders=new Map,this._contributedProfiles=[],this._rawContributedProfileMap=new Map,this._profilesReadyBarrier=new l.AutoOpenBarrier(5e3),this.refreshAvailableProfiles(),this.setupPreferenceListener()}get availableProfiles(){return this._availableProfiles||[]}get contributedProfiles(){return this._contributedProfiles||[]}setupPreferenceListener(){this.preferenceService.onPreferenceChanged(g=>{g.preferenceName==="terminal.type"&&this.onDidChangeDefaultShellEmitter.fire(g.newValue)})}getDefaultProfileName(){return this.preferenceService.get(`terminal.integrated.defaultProfile.${this.terminalService.getCodePlatformKey()}`)}refreshAvailableProfiles(){this._refreshAvailableProfilesNow()}getContributedProfileProvider(g,u){const d=this._profileProviders.get(g);return d?.get(u)}async createContributedTerminalProfile(g,u,d){await this.onTerminalProfileResolvedEmitter.fireAndAwait(u);const E=this.getContributedProfileProvider(g,u);if(!E){this.logger.error(`No terminal profile provider registered for id "${u}"`);return}try{await E.createContributedTerminalProfile(d)}catch(f){this.logger.error("create contributed terminal profile error:",f.message)}}registerTerminalProfileProvider(g,u,d){let E=this._profileProviders.get(g);return E||(E=new Map,this._profileProviders.set(g,E)),E.set(u,d),l.Disposable.create(()=>this._profileProviders.delete(u))}async _detectProfiles(g=!0){return await this.terminalService.getProfiles(g)}async _updateContributedProfiles(){const g=await this.terminalService.getCodePlatformKey(),u=[],d=this.preferenceService.get("terminal.integrated.profiles."+g,{});for(const[c,y]of Object.entries(d))y===null&&u.push(c);const E=Array.from(this.rawContributedProfiles.filter(c=>!u.includes(c.title))),f=!v(E,this._contributedProfiles,s);return this._contributedProfiles=E,f}async _refreshAvailableProfilesNow(){const g=await this._detectProfiles(!0),u=!v(g,this._availableProfiles,p),d=await this._updateContributedProfiles();(u||d)&&(this._availableProfiles=g,this._profilesReadyBarrier.open(),this._onDidChangeAvailableProfiles.fire(this._availableProfiles))}async getContributedDefaultProfile(g){if(g&&!g.extHostTerminalId&&!("executable"in g)){const u=await this.terminalService.getCodePlatformKey(),d=this.preferenceService.get(`terminal.integrated.defaultProfile.${u}`);return this.contributedProfiles.find(f=>f.title===d)}}async saveContributedProfile(g){const u=await this.terminalService.getCodePlatformKey(),d=await this.preferenceService.get(`terminal.integrated.profiles.${u}`);if(typeof d=="object"){const E={extensionIdentifier:g.extensionIdentifier,icon:g.options.icon,id:g.id,title:g.title,color:g.options.color};d[g.title]=E}await this.preferenceService.set(`terminal.integrated.profiles.${u}`,d,l.PreferenceScope.User)}get rawContributedProfiles(){return Array.from(this._rawContributedProfileMap.values())}addContributedProfile(g,u){var d;const E=((d=u?.profiles)===null||d===void 0?void 0:d.filter(f=>h(f)).map(f=>({...f,extensionIdentifier:g})))||[];for(const f of E)this._rawContributedProfileMap.set(f.id,f);this.refreshAvailableProfiles()}removeContributedProfile(g){const u=this.rawContributedProfiles;for(const d of u)d.extensionIdentifier===g&&this._rawContributedProfileMap.delete(d.id)}};t.TerminalProfileService=m,n.__decorate([(0,r.Autowired)(_.ITerminalService),n.__metadata("design:type",Object)],m.prototype,"terminalService",void 0),n.__decorate([(0,r.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],m.prototype,"preferenceService",void 0),n.__decorate([(0,r.Autowired)(l.ILogger),n.__metadata("design:type",Object)],m.prototype,"logger",void 0),n.__decorate([(0,l.throttle)(2e3),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],m.prototype,"refreshAvailableProfiles",null),t.TerminalProfileService=m=n.__decorate([(0,r.Injectable)(),n.__metadata("design:paramtypes",[])],m);function p(a,g){return a.profileName===g.profileName&&(0,_.terminalProfileArgsMatch)(a.args,g.args)&&a.color===g.color&&a.isAutoDetected===g.isAutoDetected&&a.isDefault===g.isDefault&&a.overrideName===g.overrideName&&a.path===g.path}function s(a,g){return a.extensionIdentifier===g.extensionIdentifier&&a.color===g.color&&a.icon===g.icon&&a.id===g.id&&a.title===g.title}function h(a){return!a.icon||typeof a.icon=="string"||l.URI.isUri(a.icon)||"light"in a.icon&&"dark"in a.icon&&l.URI.isUri(a.icon.light)&&l.URI.isUri(a.icon.dark)}},46666:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalRenderProvider=void 0;const n=e(85608),r=e(76003),o=e(65586);let l=class{get infoItemRender(){return o.renderInfoItem}get addItemRender(){return o.renderAddItem}};t.TerminalRenderProvider=l,t.TerminalRenderProvider=l=n.__decorate([(0,r.Injectable)()],l)},70406:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalRestore=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(26405),_="OPENSUMI_TERMINAL_RESTORE";let v=class extends o.Disposable{get storageKey(){return _}save(){const p=this.controller.toJSON(),s=this.storageKey;this.scopedBrowserStorageService.setData(s,p)}restore(){const p=this.storageKey,s=this.scopedBrowserStorageService.getData(p);if(s)try{return this.controller.recovery(s)}catch{}return Promise.resolve()}};t.TerminalRestore=v,n.__decorate([(0,r.Autowired)(l.ITerminalController),n.__metadata("design:type",Object)],v.prototype,"controller",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalInternalService),n.__metadata("design:type",Object)],v.prototype,"service",void 0),n.__decorate([(0,r.Autowired)(o.ScopedBrowserStorageService),n.__metadata("design:type",o.ScopedBrowserStorageService)],v.prototype,"scopedBrowserStorageService",void 0),t.TerminalRestore=v=n.__decorate([(0,r.Injectable)()],v)},12894:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalSearchService=void 0;const n=e(85608),r=e(76003),o=e(43718),l=e(26405);let _=class{constructor(){this._isVisible=!1,this.UIState={isMatchCase:!1,isUseRegexp:!1,isWholeWord:!1},this._onVisibleChange=new o.Emitter,this.onVisibleChange=this._onVisibleChange.event,this.text=""}get isVisible(){return this._isVisible}set isVisible(m){this._isVisible=m,this._onVisibleChange.fire(m)}get client(){return this.controller.findClientFromWidgetId(this.terminalView.currentWidget.get().id)}open(){this.isVisible=!0}get onResultChange(){var m;return(m=this.client)===null||m===void 0?void 0:m.onSearchResultsChange}close(){var m;(m=this.client)===null||m===void 0||m.closeSearch(),this.isVisible=!1}clear(){var m;(m=this.client)===null||m===void 0||m.closeSearch(),this.text=""}search(){var m;(m=this.client)===null||m===void 0||m.findNext(this.text,{wholeWord:this.UIState.isWholeWord,regex:this.UIState.isUseRegexp,caseSensitive:this.UIState.isMatchCase})}searchPrevious(){var m;(m=this.client)===null||m===void 0||m.findPrevious(this.text,{wholeWord:this.UIState.isWholeWord,regex:this.UIState.isUseRegexp,caseSensitive:this.UIState.isMatchCase})}searchNext(){var m;(m=this.client)===null||m===void 0||m.findNext(this.text,{wholeWord:this.UIState.isWholeWord,regex:this.UIState.isUseRegexp,caseSensitive:this.UIState.isMatchCase})}updateUIState(m){this.UIState={...this.UIState,...m},this.search()}};t.TerminalSearchService=_,n.__decorate([(0,r.Autowired)(l.ITerminalController),n.__metadata("design:type",Object)],_.prototype,"controller",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalGroupViewService),n.__metadata("design:type",Object)],_.prototype,"terminalView",void 0),n.__decorate([(0,o.debounce)(150),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],_.prototype,"search",null),n.__decorate([(0,o.debounce)(150),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],_.prototype,"searchPrevious",null),n.__decorate([(0,o.debounce)(150),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],_.prototype,"searchNext",null),t.TerminalSearchService=_=n.__decorate([(0,r.Injectable)()],_)},91815:(P,t,e)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.NodePtyTerminalService=void 0;const r=e(85608),o=e(76003),l=e(41869),_=e(43718),v=e(26405);let m=n=class extends _.Disposable{constructor(){super(...arguments),this._onError=this.registerDispose(new _.Emitter),this.onError=this._onError.event,this._onExit=this.registerDispose(new _.Emitter),this.onExit=this._onExit.event,this._onProcessChange=this.registerDispose(new _.Emitter),this.onProcessChange=this._onProcessChange.event,this._onDataDispatcher=this.registerDispose(new _.Dispatcher),this._onExitDispatcher=this.registerDispose(new _.Dispatcher),this._createCustomWebSocket=(s,h)=>({name:h.name,readonly:!1,onData:a=>this._onDataDispatcher.on(s)(a),onExit:a=>this._onExitDispatcher.on(s)(g=>{a(g.code)}),sendData:a=>{this.sendText(s,a)},ptyInstance:h})}generateSessionId(){return this.applicationService.clientId+v.TERMINAL_ID_SEPARATOR+(0,v.generateSessionId)()}async check(s){return await this.serviceClientRPC.ensureTerminal(s)}async attachByLaunchConfig(s,h,a,g,u){g.executable||(g.executable=await this.getDefaultSystemShell()),this.logger.log(`attach terminal ${s} with launchConfig `,g);const d=await this.serviceClientRPC.create2(s,h,a,g);if(d&&(d.pid||d.name))return this.logger.log(`${s} attach success, pid: ${d.pid}, name: ${d.name}`),this._createCustomWebSocket(s,d);this.logger.error(`${s} cannot create ptyInstance`,d)}_sendMessage(s,h,a){const g=a||n.countId++;this.serviceClientRPC.onMessage(s,JSON.stringify({id:g,...h}))}async sendText(s,h){this._sendMessage(s,{data:h})}async resize(s,h,a){this._sendMessage(s,{method:"resize",params:{cols:h,rows:a}})}async getCodePlatformKey(){return await this.serviceClientRPC.getCodePlatformKey()}disposeById(s){this.serviceClientRPC.disposeById(s)}async getProcessId(s){return this.serviceClientRPC.getProcessId(s)}onMessage(s,h){this._onDataDispatcher.dispatch(s,h)}closeClient(s,h,a){this.logger.log(`${s} was closed, error:`,h),(0,v.isTerminalError)(h)?this._onError.fire(h):typeof h=="number"?(this._onExitDispatcher.dispatch(s,{code:h,signal:a}),this._onExit.fire({sessionId:s,code:h,signal:a})):h&&(this._onExitDispatcher.dispatch(s,{code:h.code,signal:h.signal}),this._onExit.fire({sessionId:s,code:h.code,signal:h.signal}))}$processChange(s,h){this._onProcessChange.fire({sessionId:s,processName:h})}async getOS(){return this.backendOs?this.backendOs:this.backendOs=this.serviceClientRPC.getOS()}async getProfiles(s){const h=await this.getCodePlatformKey(),a=this.preferenceService.get(`terminal.integrated.profiles.${h}`,{});return await this.serviceClientRPC.detectAvailableProfiles({autoDetect:s,preference:a})}async getCwd(s){try{return await this.serviceClientRPC.getCwd(s)}catch{return}}async getDefaultSystemShell(){return await this.serviceClientRPC.getDefaultSystemShell(await this.getOS())}};t.NodePtyTerminalService=m,m.countId=1,r.__decorate([(0,o.Autowired)(o.INJECTOR_TOKEN),r.__metadata("design:type",o.Injector)],m.prototype,"injector",void 0),r.__decorate([(0,o.Autowired)(_.ILogger),r.__metadata("design:type",Object)],m.prototype,"logger",void 0),r.__decorate([(0,o.Autowired)(v.ITerminalServicePath),r.__metadata("design:type",Object)],m.prototype,"serviceClientRPC",void 0),r.__decorate([(0,o.Autowired)(l.PreferenceService),r.__metadata("design:type",Object)],m.prototype,"preferenceService",void 0),r.__decorate([(0,o.Autowired)(_.IApplicationService),r.__metadata("design:type",Object)],m.prototype,"applicationService",void 0),t.NodePtyTerminalService=m=n=r.__decorate([(0,o.Injectable)()],m)},29041:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalTheme=void 0;const n=e(85608),r=e(76003),o=e(9132),l=e(48611),_=n.__importStar(e(43395));let v=class extends o.Themable{get terminalTheme(){var p,s,h,a,g,u,d,E,f,c,y,b,A,S,D,I;const w=this.getColorSync(_.TERMINAL_BACKGROUND_COLOR),T=this.getColorSync(_.TERMINAL_FOREGROUND_COLOR),R=this.getColorSync(_.TERMINAL_SELECTION_BACKGROUND_COLOR),M=this.getColorSync(_.TERMINAL_CURSOR_FOREGROUND_COLOR)||T,O=this.getColorSync(_.TERMINAL_CURSOR_BACKGROUND_COLOR)||w,x=this.getColorSync(_.TERMINAL_SELECTION_BACKGROUND_COLOR),k=this.getColorSync(_.TERMINAL_INACTIVE_SELECTION_BACKGROUND_COLOR),F=this.getColorSync(_.TERMINAL_SELECTION_FOREGROUND_COLOR)||void 0,L=_.ansiColorIdentifiers;if(!(w&&T&&R&&M&&O))throw new Error("terminal color undefined");return{background:l.Color.Format.CSS.formatHexA(w),foreground:l.Color.Format.CSS.formatHexA(T),cursor:l.Color.Format.CSS.formatHexA(M),cursorAccent:l.Color.Format.CSS.formatHexA(O),selectionBackground:x?.toString(),selectionInactiveBackground:k?.toString(),selectionForeground:F?.toString(),black:(p=this.getColorSync(L[0]))===null||p===void 0?void 0:p.toString(),red:(s=this.getColorSync(L[1]))===null||s===void 0?void 0:s.toString(),green:(h=this.getColorSync(L[2]))===null||h===void 0?void 0:h.toString(),yellow:(a=this.getColorSync(L[3]))===null||a===void 0?void 0:a.toString(),blue:(g=this.getColorSync(L[4]))===null||g===void 0?void 0:g.toString(),magenta:(u=this.getColorSync(L[5]))===null||u===void 0?void 0:u.toString(),cyan:(d=this.getColorSync(L[6]))===null||d===void 0?void 0:d.toString(),white:(E=this.getColorSync(L[7]))===null||E===void 0?void 0:E.toString(),brightBlack:(f=this.getColorSync(L[8]))===null||f===void 0?void 0:f.toString(),brightRed:(c=this.getColorSync(L[9]))===null||c===void 0?void 0:c.toString(),brightGreen:(y=this.getColorSync(L[10]))===null||y===void 0?void 0:y.toString(),brightYellow:(b=this.getColorSync(L[11]))===null||b===void 0?void 0:b.toString(),brightBlue:(A=this.getColorSync(L[12]))===null||A===void 0?void 0:A.toString(),brightMagenta:(S=this.getColorSync(L[13]))===null||S===void 0?void 0:S.toString(),brightCyan:(D=this.getColorSync(L[14]))===null||D===void 0?void 0:D.toString(),brightWhite:(I=this.getColorSync(L[15]))===null||I===void 0?void 0:I.toString()}}};t.TerminalTheme=v,t.TerminalTheme=v=n.__decorate([(0,r.Injectable)()],v)},70845:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeAheadAddon=t.PredictionTimeline=t.PredictionStats=t.isTenativeCharacterPrediction=t.DEFAULT_LOCAL_ECHO_EXCLUDE=void 0,t.escapeRegExpCharacters=l;const n=e(85608),r=e(43718),o=e(4636);t.DEFAULT_LOCAL_ECHO_EXCLUDE=["vim","vi","nano","tmux"];function l(Y){return Y.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}const _="\x1B",v=`${_}[`,m=`${v}?25h`,p=`${v}?25l`,s=`${v}X`,h=`${v}K`,a=/^\x1b\[[0-9;]*m/,g=/^\x1b\[?([0-9]*)(;[35])?O?([DC])/,u=/[^a-z0-9]/i,d=24,E=1e3*60*5,f=5,c=.3,y=.5,b=/^(\x1b\[(\??25[hl]|\??[0-9;]+n))+/,A=Y=>Y._core,S=Y=>{},D=!1,I=(...Y)=>{D&&console.log(Y)};class w{get x(){return this._x}get y(){return this._y}get baseY(){return this._baseY}get coordinate(){return{x:this._x,y:this._y,baseY:this._baseY}}constructor(X,re,oe){this.rows=X,this.cols=re,this._buffer=oe,this._x=0,this._y=1,this._baseY=1,this._x=oe.cursorX,this._y=oe.cursorY,this._baseY=oe.baseY}getLine(){return this._buffer.getLine(this._y+this._baseY)}getCell(X){var re;return(re=this.getLine())===null||re===void 0?void 0:re.getCell(this._x,X)}moveTo(X){return this._x=X.x,this._y=X.y+X.baseY-this._baseY,this.moveInstruction()}clone(){const X=new w(this.rows,this.cols,this._buffer);return X.moveTo(this),X}move(X,re){return this._x=X,this._y=re,this.moveInstruction()}shift(X=0,re=0){return this._x+=X,this._y+=re,this.moveInstruction()}moveInstruction(){return this._y>=this.rows?(this._baseY+=this._y-(this.rows-1),this._y=this.rows-1):this._y<0&&(this._baseY-=this._y,this._y=0),`${v}${this._y+1};${this._x+1}H`}}const T=(Y,X,re)=>{let oe=!1;re<0&&X.shift(-1);let he;for(;X.x>=0;){if(he=X.getCell(he),!he?.getCode())return;const me=he.getChars();if(u.test(me)){if(oe)break}else oe=!0;X.shift(re)}re<0&&X.shift(1)};class R{get remaining(){return this._input.length-this.index}get eof(){return this.index===this._input.length}get rest(){return this._input.slice(this.index)}constructor(X){this._input=X,this.index=0}eatChar(X){if(this._input[this.index]===X)return this.index++,X}eatStr(X){if(this._input.slice(this.index,X.length)===X)return this.index+=X.length,X}eatGradually(X){const re=this.index;for(let oe=0;oe<X.length;oe++){if(oe>0&&this.eof)return 2;if(!this.eatChar(X[oe]))return this.index=re,1}return 0}eatRe(X){const re=X.exec(this._input.slice(this.index));if(re)return this.index+=re[0].length,re}eatCharCode(X=0,re=X+1){const oe=this._input.charCodeAt(this.index);if(!(oe<X||oe>=re))return this.index++,oe}}class M{constructor(){this.clearAfterTimeout=!1}apply(){return""}rollback(){return""}rollForwards(){return""}matches(){return 1}}class O{constructor(X){this.inner=X}apply(X,re){return this._appliedCursor=re.clone(),this.inner.apply(X,this._appliedCursor),""}rollback(X){return this.inner.rollback(X.clone()),""}rollForwards(X,re){return this._appliedCursor&&X.moveTo(this._appliedCursor),re}matches(X){return this.inner.matches(X)}}const x=Y=>Y instanceof O&&Y.inner instanceof k;t.isTenativeCharacterPrediction=x;class k{constructor(X,re){this._style=X,this._char=re,this.affectsStyle=!0}apply(X,re){const oe=re.getCell();return this.appliedAt=oe?{pos:re.coordinate,oldAttributes:$(oe),oldChar:oe.getChars()}:{pos:re.coordinate,oldAttributes:"",oldChar:""},re.shift(1),this._style.apply+this._char+this._style.undo}rollback(X){if(!this.appliedAt)return"";const{oldAttributes:re,oldChar:oe,pos:he}=this.appliedAt;return X.moveTo(he)+(oe?`${re}${oe}${X.moveTo(he)}`:s)}rollForwards(X,re){return this.appliedAt?X.clone().moveTo(this.appliedAt.pos)+re:""}matches(X,re){const oe=X.index;for(;X.eatRe(a););if(X.eof)return 2;if(X.eatChar(this._char))return 0;if(re instanceof k){const he=X.eatGradually(`\b${re._char}${this._char}`);if(he!==1)return he}return X.index=oe,1}}class F{constructor(X){this._terminal=X}apply(X,re){var oe;const he=!(!((oe=re.getLine())===null||oe===void 0)&&oe.translateToString(void 0,re.x).trim()),me=re.coordinate,q=re.shift(-1),Ae=re.getCell();return this._appliedAt=Ae?{isLastChar:he,pos:me,oldAttributes:$(Ae),oldChar:Ae.getChars()}:{isLastChar:he,pos:me,oldAttributes:"",oldChar:""},q+s}rollback(X){if(!this._appliedAt)return"";const{oldAttributes:re,oldChar:oe,pos:he}=this._appliedAt;return oe?re+oe+X.moveTo(he)+$(A(this._terminal)._inputHandler._curAttrData):X.moveTo(he)+s}rollForwards(){return""}matches(X){var re;if(!((re=this._appliedAt)===null||re===void 0)&&re.isLastChar){const oe=X.eatGradually(`\b${v}K`);if(oe!==1)return oe;const he=X.eatGradually("\b \b");if(he!==1)return he}return 1}}class L{apply(X,re){return this._prevPosition=re.coordinate,re.move(0,re.y+1),`\r
|
|
33773
|
+
`)+"\n```"),onClick:()=>this.onDidClickStatusBarEntry(b)})}notifyCollectionUpdates(){this._onDidChangeCollections.fire(this.mergedCollection),this.updateStatusBarMessage()}updateCollections(){(0,o.default)(this.persistCollections.bind(this),100)(),this.previousMergedCollection=this.mergedCollection,this.mergedCollection=this.resolveMergedCollection(),(0,r.default)(this.notifyCollectionUpdates.bind(this),1e3)()}persistCollections(){const y=[];this.collections.forEach((A,S)=>{A.persistent&&y.push({extensionIdentifier:S,collection:(0,g.serializeEnvironmentVariableCollection)(this.collections.get(S).map)})});const b=JSON.stringify(y);this.storageService.setData(t.ENVIRONMENT_VARIABLE_COLLECTIONS_KEY,b)}};t.TerminalEnvironmentService=f,n.__decorate([(0,_.Autowired)(h.IWorkspaceStorageService),n.__metadata("design:type",Object)],f.prototype,"storageService",void 0),n.__decorate([(0,_.Autowired)(s.IStatusBarService),n.__metadata("design:type",Object)],f.prototype,"statusbarService",void 0),n.__decorate([(0,_.Autowired)(a.ITerminalProcessPath),n.__metadata("design:type",Object)],f.prototype,"terminalProcessService",void 0),n.__decorate([(0,_.Autowired)(p.IDialogService),n.__metadata("design:type",Object)],f.prototype,"dialogService",void 0),n.__decorate([(0,_.Autowired)(m.CommandService),n.__metadata("design:type",Object)],f.prototype,"commandService",void 0),n.__decorate([(0,_.Autowired)(m.ILogger),n.__metadata("design:type",Object)],f.prototype,"logger",void 0),t.TerminalEnvironmentService=f=n.__decorate([(0,_.Injectable)()],f)},102:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalErrorService=void 0;const n=e(85608),r=e(76003),o=e(43718),l=e(26405);let _=class{constructor(){this.errors=new Map,this._onErrorsChangeEmitter=new o.Emitter,this.onErrorsChange=this._onErrorsChangeEmitter.event,this.service.onError(m=>{this.errors.set(m.id,m),this._onErrorsChangeEmitter.fire()}),this.service.onExit(m=>{try{this.view.getWidget(m.sessionId).reuse||this.view.removeWidget(m.sessionId)}catch{}}),this.controller.onDidCloseTerminal(m=>{this.errors.delete(m.id),this._onErrorsChangeEmitter.fire()})}async fix(m){const p=this.controller.findClientFromWidgetId(m);if(p)return await 0,this.errors.delete(m),this._onErrorsChangeEmitter.fire(),p.reset(),p.attached.promise}};t.TerminalErrorService=_,n.__decorate([(0,r.Autowired)(l.ITerminalService),n.__metadata("design:type",Object)],_.prototype,"service",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalController),n.__metadata("design:type",Object)],_.prototype,"controller",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalGroupViewService),n.__metadata("design:type",Object)],_.prototype,"view",void 0),t.TerminalErrorService=_=n.__decorate([(0,r.Injectable)(),n.__metadata("design:paramtypes",[])],_)},90853:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalProcessExtHostProxy=void 0;const n=e(43718);class r extends n.Disposable{get onProcessReady(){return this._onProcessReady.event}get onProcessOverrideDimensions(){return this._onProcessOverrideDimensions.event}constructor(l,_,v,m){super(),this.terminalId=l,this._cols=_,this._rows=v,this.controller=m,this._onProcessData=this.registerDispose(new n.Emitter),this.onProcessData=this._onProcessData.event,this._onProcessExit=this.registerDispose(new n.Emitter),this.onProcessExit=this._onProcessExit.event,this._onProcessReady=this.registerDispose(new n.Emitter),this._onProcessTitleChanged=this.registerDispose(new n.Emitter),this.onProcessTitleChanged=this._onProcessTitleChanged.event,this._onProcessOverrideDimensions=this.registerDispose(new n.Emitter),this._onStart=this.registerDispose(new n.Emitter),this.onStart=this._onStart.event,this._onInput=this.registerDispose(new n.Emitter),this.onInput=this._onInput.event,this._onResize=this.registerDispose(new n.Emitter),this.onResize=this._onResize.event,this._onShutdown=this.registerDispose(new n.Emitter),this.onShutdown=this._onShutdown.event,this._onRequestInitialCwd=this.registerDispose(new n.Emitter),this.onRequestInitialCwd=this._onRequestInitialCwd.event,this._onRequestCwd=this.registerDispose(new n.Emitter),this.onRequestCwd=this._onRequestCwd.event,this._onRequestLatency=this.registerDispose(new n.Emitter),this.onRequestLatency=this._onRequestLatency.event,this._pendingInitialCwdRequests=[],this._pendingCwdRequests=[],this._pendingLatencyRequests=[]}emitData(l){this._onProcessData.fire(l)}emitTitle(l){this._onProcessTitleChanged.fire(l)}emitReady(l,_){this._onProcessReady.fire({pid:l,cwd:_})}emitExit(l){this._onProcessExit.fire(l),this.dispose()}emitOverrideDimensions(l){this._onProcessOverrideDimensions.fire(l)}emitInitialCwd(l){for(;this._pendingInitialCwdRequests.length>0;)this._pendingInitialCwdRequests.pop()(l)}emitCwd(l){for(;this._pendingCwdRequests.length>0;)this._pendingCwdRequests.pop()(l)}emitLatency(l){for(;this._pendingLatencyRequests.length>0;)this._pendingLatencyRequests.pop()(l)}async start(){return this.controller.requestStartExtensionTerminal(this,this._cols,this._rows)}shutdown(l){this._onShutdown.fire(l)}input(l){this._onInput.fire(l)}resize(l,_){this._onResize.fire({cols:l,rows:_})}getInitialCwd(){return new Promise(l=>{this._onRequestInitialCwd.fire(),this._pendingInitialCwdRequests.push(l)})}getCwd(){return new Promise(l=>{this._onRequestCwd.fire(),this._pendingCwdRequests.push(l)})}getLatency(){return new Promise(l=>{this._onRequestLatency.fire(),this._pendingLatencyRequests.push(l)})}}t.TerminalProcessExtHostProxy=r},53891:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalHoverManagerService=void 0;const n=e(85608),r=e(76003),o=e(43718),l=20,_=5;let v=class{appendTerminalHoverOverlay(){let p=document.querySelector("#terminal-link-hover-overlay");p||(p=document.createElement("div"),p.id="terminal-link-hover-overlay",document.body.appendChild(p));const s=document.createElement("div");s.classList.add("terminal-hover-overlay"),p.appendChild(s),this.hoverOverlay=s}appendTerminalHoverContainer(){var p;this.hoverWidget=document.createElement("div"),this.hoverWidget.style.display="none",this.hoverWidget.style.position="fixed",this.hoverWidget.style.color="var(--editorWidget-foreground)",this.hoverWidget.style.backgroundColor="var(--editorWidget-background)",this.hoverWidget.style.borderColor="var(--editorWidget-border)",this.hoverWidget.style.borderWidth="0.5px",this.hoverWidget.style.borderStyle="solid",this.hoverWidget.style.padding="5px",this.hoverWidget.style.top="-500px",this.hoverWidget.style.left="-500px",this.hoverWidget.style.zIndex="10",this.hoverWidget.classList.add("hover-container"),this.hoverOverlay||this.appendTerminalHoverOverlay(),(p=this.hoverOverlay)===null||p===void 0||p.appendChild(this.hoverWidget)}setHoverOverlay(p){this.hoverOverlay=p}showHover(p,s,h){this.hoverWidget||this.appendTerminalHoverContainer();const a=p.viewportRange,g=p.cellDimensions,u=p.boundingClientRect;return this.hoverWidget&&(this.hoverWidget.textContent=s,this.hoverWidget.style.display="inline"),requestAnimationFrame(()=>{if(this.hoverWidget){this.hoverWidget.style.top=`${(a.start.y-1)*g.height+u.y-l}px`;let d=a.start.x*g.width+u.x+_;d+this.hoverWidget.clientWidth>u.x+u.width&&(d=u.x+u.width-this.hoverWidget.clientWidth-_),this.hoverWidget.style.left=`${d}px`}}),o.Disposable.create(()=>this.dispose())}hideHover(){this.hoverWidget&&this.dispose()}dispose(){var p;(p=this.hoverWidget)===null||p===void 0||p.remove(),this.hoverWidget=void 0}};t.TerminalHoverManagerService=v,t.TerminalHoverManagerService=v=n.__decorate([(0,r.Injectable)()],v)},35628:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalKeyBoardInputService=void 0;const n=e(85608),r=e(76003),o=e(43718);let l=class{constructor(){this._isCommandOrCtrl=!1}get isCommandOrCtrl(){return this._isCommandOrCtrl}listen(){const v=o.isMacintosh?"Meta":"Control";document.addEventListener("keydown",m=>{m.key===v&&(this._isCommandOrCtrl=!0)}),document.addEventListener("keyup",m=>{m.key===v&&(this._isCommandOrCtrl=!1)})}};t.TerminalKeyBoardInputService=l,t.TerminalKeyBoardInputService=l=n.__decorate([(0,r.Injectable)()],l)},82022:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalInternalService=void 0;const n=e(85608),r=e(76003),o=e(26405);let l=class{constructor(){this._processExtHostProxies=new Map}generateSessionId(){return this.service.generateSessionId?this.service.generateSessionId():(0,o.generateSessionId)()}getOptions(){return this.service.getOptions?this.service.getOptions():{}}check(v){return this.service.check?this.service.check(v):Promise.resolve(!0)}_getExtHostProxy(v){return this._processExtHostProxies.get(v)}async sendText(v,m){const p=this._getExtHostProxy(v);return p?p.emitData(m):this.service.sendText(v,m)}async resize(v,m,p){const s=this._getExtHostProxy(v);return s?s.resize(m,p):this.service.resize(v,m,p)}disposeById(v){const m=this._getExtHostProxy(v);return m?(this._processExtHostProxies.delete(v),m.dispose()):this.service.disposeById(v)}async getProcessId(v){return this._getExtHostProxy(v)?-1:this.service.getProcessId(v)}onError(v){return this.service.onError(v)}onExit(v){return this.service.onExit(v)}onProcessChange(v){return this.service.onProcessChange(v)}async getOS(){return await this.service.getOS()}async getProfiles(v){return await this.service.getProfiles(v)}async getDefaultSystemShell(){return await this.service.getDefaultSystemShell()}async getCodePlatformKey(){return await this.service.getCodePlatformKey()}async attachByLaunchConfig(v,m,p,s,h){if(s.customPtyImplementation){const a=s.customPtyImplementation(v,m,p);return a.start(),a.onProcessExit(()=>{this._processExtHostProxies.delete(v)}),this._processExtHostProxies.set(v,a),{name:s.name||"ExtensionTerminal-"+v,readonly:!1,onData:a.onProcessData.bind(a),sendData:a.input.bind(a),onExit:a.onProcessExit.bind(a)}}return await this.service.attachByLaunchConfig(v,m,p,s,h)}async getCwd(v){return await this.service.getCwd(v)}};t.TerminalInternalService=l,n.__decorate([(0,r.Autowired)(o.ITerminalService),n.__metadata("design:type",Object)],l.prototype,"service",void 0),n.__decorate([(0,r.Autowired)(o.ITerminalController),n.__metadata("design:type",Object)],l.prototype,"controller",void 0),t.TerminalInternalService=l=n.__decorate([(0,r.Injectable)()],l)},12642:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalNetworkService=void 0;const n=e(85608),r=e(76003),o=e(43718),l=e(26405);let _=class extends o.Disposable{constructor(){super(),this._onConnect=new o.Emitter,this.onConnect=this._onConnect.event,this._onDisconnect=new o.Emitter,this.onDisconnect=this._onDisconnect.event,this._status=l.TerminalNetworkStatus.DISCONNECTED,this._resetRetryTimers=new Map,this._reconnectInfo=new Map,this.controller.onDidCloseTerminal(m=>{this._resetRetryTimers.delete(m.id),this._reconnectInfo.delete(m.id)}),this.onDispose(()=>{this._timer&&clearTimeout(this._timer)})}get status(){return this._status}setStatus(m){this._status=m,m===l.TerminalNetworkStatus.CONNECTED?(this._onConnect.fire(),this.scheduleReconnection()):this._onDisconnect.fire()}bindErrors(){this.service.onError(this.handleError.bind(this))}handleError(m){m.shouldReconnect==null&&(m.shouldReconnect=!0);const p=m.id,s=this.getReconnectInfo(p);s.times&&(s.nextRetry=Date.now()+2e3),this._reconnectInfo.set(p,s),this.scheduleReconnection()}reconnect(){if(this._status===l.TerminalNetworkStatus.DISCONNECTED)return;const m=Date.now();let p=Number.POSITIVE_INFINITY;for(const s of this.errorService.errors.keys()){if(!this.shouldReconnect(s))continue;const{nextRetry:h}=this.getReconnectInfo(s);h>m?p=Math.min(p,h-m):this.reconnectClient(s)}p<Number.POSITIVE_INFINITY&&this.scheduleReconnection(p)}async reconnectClient(m){this.countRetry(m);const p=this.errorService.fix(m);return p.then(()=>{this.resetRetryLater(m)}),p}getReconnectInfo(m){return this._reconnectInfo.get(m)||{times:0,nextRetry:0}}countRetry(m){const p=this._resetRetryTimers.get(m);p&&(clearTimeout(p),this._resetRetryTimers.delete(m));const s=this.getReconnectInfo(m);s.times+=1,this._reconnectInfo.set(m,s)}resetRetryLater(m){const p=window.setTimeout(()=>{this._reconnectInfo.delete(m),this._resetRetryTimers.delete(m)},8e3);this._resetRetryTimers.set(m,p)}scheduleReconnection(m=200){this._timer||(this._timer=window.setTimeout(()=>{this._timer=void 0,this.reconnect()},m))}shouldReconnect(m){const p=this.errorService.errors.get(m);return p?.shouldReconnect?this.getReconnectInfo(m).times<3:!1}};t.TerminalNetworkService=_,n.__decorate([(0,r.Autowired)(l.ITerminalErrorService),n.__metadata("design:type",Object)],_.prototype,"errorService",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalInternalService),n.__metadata("design:type",Object)],_.prototype,"service",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalController),n.__metadata("design:type",Object)],_.prototype,"controller",void 0),t.TerminalNetworkService=_=n.__decorate([(0,r.Injectable)(),n.__metadata("design:paramtypes",[])],_)},13663:(P,t,e)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalPreference=void 0;const r=e(85608),o=r.__importDefault(e(16735)),l=e(76003),_=e(41869),v=e(43718),m=e(3276);let p=n=class{_prefToOption(h){return h.startsWith("terminal.integrated.")?h.replace("terminal.integrated.",""):h.replace("terminal.","")}_optionToPref(h){return`terminal.${h}`}_valid(h,a){return this.toValidOption(h,a)||n.defaultOptions[h]}constructor(){this._onChange=new v.Emitter,this.onChange=this._onChange.event,this.service.onPreferenceChanged(({preferenceName:h,newValue:a,oldValue:g})=>{const u=this._prefToOption(h);a!==g&&m.SupportedOptionsName[u]&&this._onChange.fire({name:u,value:this._valid(u,a)})})}getCodeCompatibleOption(){const h={copyOnSelection:this.service.get("terminal.integrated.copyOnSelection"),cursorBlink:this.service.get("terminal.integrated.cursorBlinking"),fontSize:this.service.get("terminal.integrated.fontSize"),scrollback:this.service.get("terminal.integrated.scrollback"),fontFamily:this.service.get("terminal.integrated.fontFamily")||this.service.get("editor.fontFamily"),fontWeight:this.service.get("terminal.integrated.fontWeight"),fontWeightBold:this.service.get("terminal.integrated.fontWeightBold"),cursorStyle:this.service.get("terminal.integrated.cursorStyle")==="line"?"bar":this.service.get("terminal.integrated.cursorStyle"),cursorWidth:this.service.get("terminal.integrated.cursorWidth"),lineHeight:this.service.get("terminal.integrated.lineHeight"),letterSpacing:this.service.get("terminal.integrated.letterSpacing"),fastScrollSensitivity:this.service.get("terminal.integrated.fastScrollSensitivity")};return(0,o.default)(h,a=>a!==void 0)}get(h){const a=this.service.get(this._optionToPref(h),n.defaultOptions[h]);return this._valid(h,a)}getOrUndefined(h){return this.service.get(this._optionToPref(h))}toValidOption(h,a){switch(h){case m.SupportedOptionsName.fontSize:return a>5?a:5;case m.SupportedOptionsName.cursorStyle:return a==="line"?"bar":a;default:return a}}getOptions(){const h={};return Object.entries(m.SupportedOptionsName).forEach(([a])=>{if(!a)return;const g=this.getOrUndefined(a);g&&(h[a]=g)}),h}toJSON(){return{...n.defaultOptions,...this.getCodeCompatibleOption(),...this.getOptions()}}};t.TerminalPreference=p,p.defaultOptions={allowTransparency:!1,macOptionIsMeta:!1,cursorBlink:!1,scrollback:2500,tabStopWidth:8,fontSize:12,customGlyphs:!0,drawBoldTextInBrightColors:!0,fastScrollModifier:"alt",fastScrollSensitivity:5,scrollSensitivity:1,overviewRulerWidth:10,copyOnSelection:!1,fontWeightBold:"bold",fontFamily:"Menlo, Monaco, 'Courier New', monospace",cursorStyle:"block"},r.__decorate([(0,l.Autowired)(_.PreferenceService),r.__metadata("design:type",Object)],p.prototype,"service",void 0),t.TerminalPreference=p=n=r.__decorate([(0,l.Injectable)(),r.__metadata("design:paramtypes",[])],p)},94486:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalProfileInternalService=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(26405),_="Generated Profile";let v=class{async resolveTerminalTypeProfile(){var p,s;const h=this.preferenceService.get("terminal.type");if(!h||h==="default")return;let a=h;const g=[],u=await this.terminalService.getCodePlatformKey();await this.terminalService.getOS()===o.OperatingSystem.Windows?a=(p=await this.serviceClientRPC.$resolveWindowsShellPath(h))!==null&&p!==void 0?p:a:a=(s=await this.serviceClientRPC.$resolveUnixShellPath(h))!==null&&s!==void 0?s:a;const E=this.preferenceService.get(`terminal.integrated.shellArgs.${u}`,[]);return g.push(...E),{profileName:"terminal.type",path:a,args:g,icon:void 0,isDefault:!1}}async resolveDefaultProfile(p){const s=await this.resolveTerminalTypeProfile();if(s)return s;await this.profileService.profilesReady;let h=await this.resolveRealDefaultProfile();return h||(h=await this._resolvedFallbackDefaultProfile(p)),h}async resolveRealDefaultProfile(){await this.profileService.profilesReady;const p=this.profileService.getDefaultProfileName();if(p)return this.profileService.availableProfiles.find(s=>s.profileName===p)}async _resolvedFallbackDefaultProfile(p){var s;const h=await this.terminalService.getDefaultSystemShell();let a;return((s=p?.os)!==null&&s!==void 0?s:await this.terminalService.getOS())===o.OperatingSystem.Macintosh&&o.path.parse(h).name.match(/(zsh|bash)/)?a=["--login"]:a=[],{profileName:_,path:h,args:a,isDefault:!1}}};t.TerminalProfileInternalService=v,n.__decorate([(0,r.Autowired)(l.ITerminalProfileService),n.__metadata("design:type",Object)],v.prototype,"profileService",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalService),n.__metadata("design:type",Object)],v.prototype,"terminalService",void 0),n.__decorate([(0,r.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],v.prototype,"preferenceService",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalServicePath),n.__metadata("design:type",Object)],v.prototype,"serviceClientRPC",void 0),t.TerminalProfileInternalService=v=n.__decorate([(0,r.Injectable)()],v)},89570:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalProfileService=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(43718),_=e(26405),{equals:v}=l.arrays;let m=class extends l.WithEventBus{get onTerminalProfileResolved(){return this.onTerminalProfileResolvedEmitter.event}get onDidChangeDefaultShell(){return this.onDidChangeDefaultShellEmitter.event}get profilesReady(){return this._profilesReadyBarrier.wait().then(()=>{})}get onDidChangeAvailableProfiles(){return this._onDidChangeAvailableProfiles.event}constructor(){super(),this.onTerminalProfileResolvedEmitter=new l.Emitter,this.onDidChangeDefaultShellEmitter=new l.Emitter,this._onDidChangeAvailableProfiles=new l.Emitter,this._profileProviders=new Map,this._contributedProfiles=[],this._rawContributedProfileMap=new Map,this._profilesReadyBarrier=new l.AutoOpenBarrier(5e3),this.refreshAvailableProfiles(),this.setupPreferenceListener()}get availableProfiles(){return this._availableProfiles||[]}get contributedProfiles(){return this._contributedProfiles||[]}setupPreferenceListener(){this.preferenceService.onPreferenceChanged(g=>{g.preferenceName==="terminal.type"&&this.onDidChangeDefaultShellEmitter.fire(g.newValue)})}getDefaultProfileName(){return this.preferenceService.get(`terminal.integrated.defaultProfile.${this.terminalService.getCodePlatformKey()}`)}refreshAvailableProfiles(){this._refreshAvailableProfilesNow()}getContributedProfileProvider(g,u){const d=this._profileProviders.get(g);return d?.get(u)}async createContributedTerminalProfile(g,u,d){await this.onTerminalProfileResolvedEmitter.fireAndAwait(u);const E=this.getContributedProfileProvider(g,u);if(!E){this.logger.error(`No terminal profile provider registered for id "${u}"`);return}try{await E.createContributedTerminalProfile(d)}catch(f){this.logger.error("create contributed terminal profile error:",f.message)}}registerTerminalProfileProvider(g,u,d){let E=this._profileProviders.get(g);return E||(E=new Map,this._profileProviders.set(g,E)),E.set(u,d),l.Disposable.create(()=>this._profileProviders.delete(u))}async _detectProfiles(g=!0){return await this.terminalService.getProfiles(g)}async _updateContributedProfiles(){const g=await this.terminalService.getCodePlatformKey(),u=[],d=this.preferenceService.get("terminal.integrated.profiles."+g,{});for(const[c,y]of Object.entries(d))y===null&&u.push(c);const E=Array.from(this.rawContributedProfiles.filter(c=>!u.includes(c.title))),f=!v(E,this._contributedProfiles,s);return this._contributedProfiles=E,f}async _refreshAvailableProfilesNow(){const g=await this._detectProfiles(!0),u=!v(g,this._availableProfiles,p),d=await this._updateContributedProfiles();(u||d)&&(this._availableProfiles=g,this._profilesReadyBarrier.open(),this._onDidChangeAvailableProfiles.fire(this._availableProfiles))}async getContributedDefaultProfile(g){if(g&&!g.extHostTerminalId&&!("executable"in g)){const u=await this.terminalService.getCodePlatformKey(),d=this.preferenceService.get(`terminal.integrated.defaultProfile.${u}`);return this.contributedProfiles.find(f=>f.title===d)}}async saveContributedProfile(g){const u=await this.terminalService.getCodePlatformKey(),d=await this.preferenceService.get(`terminal.integrated.profiles.${u}`);if(typeof d=="object"){const E={extensionIdentifier:g.extensionIdentifier,icon:g.options.icon,id:g.id,title:g.title,color:g.options.color};d[g.title]=E}await this.preferenceService.set(`terminal.integrated.profiles.${u}`,d,l.PreferenceScope.User)}get rawContributedProfiles(){return Array.from(this._rawContributedProfileMap.values())}addContributedProfile(g,u){var d;const E=((d=u?.profiles)===null||d===void 0?void 0:d.filter(f=>h(f)).map(f=>({...f,extensionIdentifier:g})))||[];for(const f of E)this._rawContributedProfileMap.set(f.id,f);this.refreshAvailableProfiles()}removeContributedProfile(g){const u=this.rawContributedProfiles;for(const d of u)d.extensionIdentifier===g&&this._rawContributedProfileMap.delete(d.id)}};t.TerminalProfileService=m,n.__decorate([(0,r.Autowired)(_.ITerminalService),n.__metadata("design:type",Object)],m.prototype,"terminalService",void 0),n.__decorate([(0,r.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],m.prototype,"preferenceService",void 0),n.__decorate([(0,r.Autowired)(l.ILogger),n.__metadata("design:type",Object)],m.prototype,"logger",void 0),n.__decorate([(0,l.throttle)(2e3),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],m.prototype,"refreshAvailableProfiles",null),t.TerminalProfileService=m=n.__decorate([(0,r.Injectable)(),n.__metadata("design:paramtypes",[])],m);function p(a,g){return a.profileName===g.profileName&&(0,_.terminalProfileArgsMatch)(a.args,g.args)&&a.color===g.color&&a.isAutoDetected===g.isAutoDetected&&a.isDefault===g.isDefault&&a.overrideName===g.overrideName&&a.path===g.path}function s(a,g){return a.extensionIdentifier===g.extensionIdentifier&&a.color===g.color&&a.icon===g.icon&&a.id===g.id&&a.title===g.title}function h(a){return!a.icon||typeof a.icon=="string"||l.URI.isUri(a.icon)||"light"in a.icon&&"dark"in a.icon&&l.URI.isUri(a.icon.light)&&l.URI.isUri(a.icon.dark)}},46666:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalRenderProvider=void 0;const n=e(85608),r=e(76003),o=e(65586);let l=class{get infoItemRender(){return o.renderInfoItem}get addItemRender(){return o.renderAddItem}};t.TerminalRenderProvider=l,t.TerminalRenderProvider=l=n.__decorate([(0,r.Injectable)()],l)},70406:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalRestore=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(26405),_="OPENSUMI_TERMINAL_RESTORE";let v=class extends o.Disposable{get storageKey(){return _}save(){const p=this.controller.toJSON(),s=this.storageKey;this.scopedBrowserStorageService.setData(s,p)}restore(){const p=this.storageKey,s=this.scopedBrowserStorageService.getData(p);if(s)try{return this.controller.recovery(s)}catch{}return Promise.resolve()}};t.TerminalRestore=v,n.__decorate([(0,r.Autowired)(l.ITerminalController),n.__metadata("design:type",Object)],v.prototype,"controller",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalInternalService),n.__metadata("design:type",Object)],v.prototype,"service",void 0),n.__decorate([(0,r.Autowired)(o.ScopedBrowserStorageService),n.__metadata("design:type",o.ScopedBrowserStorageService)],v.prototype,"scopedBrowserStorageService",void 0),t.TerminalRestore=v=n.__decorate([(0,r.Injectable)()],v)},12894:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalSearchService=void 0;const n=e(85608),r=e(76003),o=e(43718),l=e(26405);let _=class{constructor(){this._isVisible=!1,this.UIState={isMatchCase:!1,isUseRegexp:!1,isWholeWord:!1},this._onVisibleChange=new o.Emitter,this.onVisibleChange=this._onVisibleChange.event,this.text=""}get isVisible(){return this._isVisible}set isVisible(m){this._isVisible=m,this._onVisibleChange.fire(m)}get client(){return this.controller.findClientFromWidgetId(this.terminalView.currentWidget.get().id)}open(){this.isVisible=!0}get onResultChange(){var m;return(m=this.client)===null||m===void 0?void 0:m.onSearchResultsChange}close(){var m;(m=this.client)===null||m===void 0||m.closeSearch(),this.isVisible=!1}clear(){var m;(m=this.client)===null||m===void 0||m.closeSearch(),this.text=""}search(){var m;(m=this.client)===null||m===void 0||m.findNext(this.text,{wholeWord:this.UIState.isWholeWord,regex:this.UIState.isUseRegexp,caseSensitive:this.UIState.isMatchCase})}searchPrevious(){var m;(m=this.client)===null||m===void 0||m.findPrevious(this.text,{wholeWord:this.UIState.isWholeWord,regex:this.UIState.isUseRegexp,caseSensitive:this.UIState.isMatchCase})}searchNext(){var m;(m=this.client)===null||m===void 0||m.findNext(this.text,{wholeWord:this.UIState.isWholeWord,regex:this.UIState.isUseRegexp,caseSensitive:this.UIState.isMatchCase})}updateUIState(m){this.UIState={...this.UIState,...m},this.search()}};t.TerminalSearchService=_,n.__decorate([(0,r.Autowired)(l.ITerminalController),n.__metadata("design:type",Object)],_.prototype,"controller",void 0),n.__decorate([(0,r.Autowired)(l.ITerminalGroupViewService),n.__metadata("design:type",Object)],_.prototype,"terminalView",void 0),n.__decorate([(0,o.debounce)(150),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],_.prototype,"search",null),n.__decorate([(0,o.debounce)(150),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],_.prototype,"searchPrevious",null),n.__decorate([(0,o.debounce)(150),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],_.prototype,"searchNext",null),t.TerminalSearchService=_=n.__decorate([(0,r.Injectable)()],_)},91815:(P,t,e)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.NodePtyTerminalService=void 0;const r=e(85608),o=e(76003),l=e(41869),_=e(43718),v=e(26405);let m=n=class extends _.Disposable{constructor(){super(...arguments),this._onError=this.registerDispose(new _.Emitter),this.onError=this._onError.event,this._onExit=this.registerDispose(new _.Emitter),this.onExit=this._onExit.event,this._onReconnected=this.registerDispose(new _.Emitter),this.onReconnected=this._onReconnected.event,this._onDisconnect=this.registerDispose(new _.Emitter),this.onDisconnect=this._onDisconnect.event,this._onProcessChange=this.registerDispose(new _.Emitter),this.onProcessChange=this._onProcessChange.event,this._onDataDispatcher=this.registerDispose(new _.Dispatcher),this._onExitDispatcher=this.registerDispose(new _.Dispatcher),this._createCustomWebSocket=(s,h)=>({name:h.name,readonly:!1,onData:a=>this._onDataDispatcher.on(s)(a),onExit:a=>this._onExitDispatcher.on(s)(g=>{a(g.code)}),sendData:a=>{this.sendText(s,a)},ptyInstance:h})}generateSessionId(){return this.applicationService.clientId+v.TERMINAL_ID_SEPARATOR+(0,v.generateSessionId)()}async check(s){return await this.serviceClientRPC.ensureTerminal(s)}async attachByLaunchConfig(s,h,a,g,u){g.executable||(g.executable=await this.getDefaultSystemShell()),this.logger.log(`attach terminal ${s} with launchConfig `,g);const d=await this.serviceClientRPC.create2(s,h,a,g);if(d&&(d.pid||d.name))return this.logger.log(`${s} attach success, pid: ${d.pid}, name: ${d.name}`),this._createCustomWebSocket(s,d);this.logger.error(`${s} cannot create ptyInstance`,d)}_sendMessage(s,h,a){const g=a||n.countId++;this.serviceClientRPC.onMessage(s,JSON.stringify({id:g,...h}))}async sendText(s,h){this._sendMessage(s,{data:h})}async resize(s,h,a){this._sendMessage(s,{method:"resize",params:{cols:h,rows:a}})}async getCodePlatformKey(){return await this.serviceClientRPC.getCodePlatformKey()}disposeById(s){this.serviceClientRPC.disposeById(s)}async getProcessId(s){return this.serviceClientRPC.getProcessId(s)}onMessage(s,h){this._onDataDispatcher.dispatch(s,h)}closeClient(s,h,a){this.logger.log(`${s} was closed, error:`,h),(0,v.isTerminalError)(h)?this._onError.fire(h):typeof h=="number"?(this._onExitDispatcher.dispatch(s,{code:h,signal:a}),this._onExit.fire({sessionId:s,code:h,signal:a})):h&&(this._onExitDispatcher.dispatch(s,{code:h.code,signal:h.signal}),this._onExit.fire({sessionId:s,code:h.code,signal:h.signal}))}$processChange(s,h){this._onProcessChange.fire({sessionId:s,processName:h})}reconnected(s){this._onReconnected.fire(s)}disconnected(s){this._onDisconnect.fire(s)}async getOS(){return this.backendOs?this.backendOs:this.backendOs=this.serviceClientRPC.getOS()}async getProfiles(s){const h=await this.getCodePlatformKey(),a=this.preferenceService.get(`terminal.integrated.profiles.${h}`,{});return await this.serviceClientRPC.detectAvailableProfiles({autoDetect:s,preference:a})}async getCwd(s){try{return await this.serviceClientRPC.getCwd(s)}catch{return}}async getDefaultSystemShell(){return await this.serviceClientRPC.getDefaultSystemShell(await this.getOS())}};t.NodePtyTerminalService=m,m.countId=1,r.__decorate([(0,o.Autowired)(o.INJECTOR_TOKEN),r.__metadata("design:type",o.Injector)],m.prototype,"injector",void 0),r.__decorate([(0,o.Autowired)(_.ILogger),r.__metadata("design:type",Object)],m.prototype,"logger",void 0),r.__decorate([(0,o.Autowired)(v.ITerminalServicePath),r.__metadata("design:type",Object)],m.prototype,"serviceClientRPC",void 0),r.__decorate([(0,o.Autowired)(l.PreferenceService),r.__metadata("design:type",Object)],m.prototype,"preferenceService",void 0),r.__decorate([(0,o.Autowired)(_.IApplicationService),r.__metadata("design:type",Object)],m.prototype,"applicationService",void 0),t.NodePtyTerminalService=m=n=r.__decorate([(0,o.Injectable)()],m)},29041:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalTheme=void 0;const n=e(85608),r=e(76003),o=e(9132),l=e(48611),_=n.__importStar(e(43395));let v=class extends o.Themable{get terminalTheme(){var p,s,h,a,g,u,d,E,f,c,y,b,A,S,D,I;const w=this.getColorSync(_.TERMINAL_BACKGROUND_COLOR),T=this.getColorSync(_.TERMINAL_FOREGROUND_COLOR),R=this.getColorSync(_.TERMINAL_SELECTION_BACKGROUND_COLOR),M=this.getColorSync(_.TERMINAL_CURSOR_FOREGROUND_COLOR)||T,O=this.getColorSync(_.TERMINAL_CURSOR_BACKGROUND_COLOR)||w,x=this.getColorSync(_.TERMINAL_SELECTION_BACKGROUND_COLOR),k=this.getColorSync(_.TERMINAL_INACTIVE_SELECTION_BACKGROUND_COLOR),F=this.getColorSync(_.TERMINAL_SELECTION_FOREGROUND_COLOR)||void 0,L=_.ansiColorIdentifiers;if(!(w&&T&&R&&M&&O))throw new Error("terminal color undefined");return{background:l.Color.Format.CSS.formatHexA(w),foreground:l.Color.Format.CSS.formatHexA(T),cursor:l.Color.Format.CSS.formatHexA(M),cursorAccent:l.Color.Format.CSS.formatHexA(O),selectionBackground:x?.toString(),selectionInactiveBackground:k?.toString(),selectionForeground:F?.toString(),black:(p=this.getColorSync(L[0]))===null||p===void 0?void 0:p.toString(),red:(s=this.getColorSync(L[1]))===null||s===void 0?void 0:s.toString(),green:(h=this.getColorSync(L[2]))===null||h===void 0?void 0:h.toString(),yellow:(a=this.getColorSync(L[3]))===null||a===void 0?void 0:a.toString(),blue:(g=this.getColorSync(L[4]))===null||g===void 0?void 0:g.toString(),magenta:(u=this.getColorSync(L[5]))===null||u===void 0?void 0:u.toString(),cyan:(d=this.getColorSync(L[6]))===null||d===void 0?void 0:d.toString(),white:(E=this.getColorSync(L[7]))===null||E===void 0?void 0:E.toString(),brightBlack:(f=this.getColorSync(L[8]))===null||f===void 0?void 0:f.toString(),brightRed:(c=this.getColorSync(L[9]))===null||c===void 0?void 0:c.toString(),brightGreen:(y=this.getColorSync(L[10]))===null||y===void 0?void 0:y.toString(),brightYellow:(b=this.getColorSync(L[11]))===null||b===void 0?void 0:b.toString(),brightBlue:(A=this.getColorSync(L[12]))===null||A===void 0?void 0:A.toString(),brightMagenta:(S=this.getColorSync(L[13]))===null||S===void 0?void 0:S.toString(),brightCyan:(D=this.getColorSync(L[14]))===null||D===void 0?void 0:D.toString(),brightWhite:(I=this.getColorSync(L[15]))===null||I===void 0?void 0:I.toString()}}};t.TerminalTheme=v,t.TerminalTheme=v=n.__decorate([(0,r.Injectable)()],v)},70845:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeAheadAddon=t.PredictionTimeline=t.PredictionStats=t.isTenativeCharacterPrediction=t.DEFAULT_LOCAL_ECHO_EXCLUDE=void 0,t.escapeRegExpCharacters=l;const n=e(85608),r=e(43718),o=e(4636);t.DEFAULT_LOCAL_ECHO_EXCLUDE=["vim","vi","nano","tmux"];function l(Y){return Y.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}const _="\x1B",v=`${_}[`,m=`${v}?25h`,p=`${v}?25l`,s=`${v}X`,h=`${v}K`,a=/^\x1b\[[0-9;]*m/,g=/^\x1b\[?([0-9]*)(;[35])?O?([DC])/,u=/[^a-z0-9]/i,d=24,E=1e3*60*5,f=5,c=.3,y=.5,b=/^(\x1b\[(\??25[hl]|\??[0-9;]+n))+/,A=Y=>Y._core,S=Y=>{},D=!1,I=(...Y)=>{D&&console.log(Y)};class w{get x(){return this._x}get y(){return this._y}get baseY(){return this._baseY}get coordinate(){return{x:this._x,y:this._y,baseY:this._baseY}}constructor(X,re,oe){this.rows=X,this.cols=re,this._buffer=oe,this._x=0,this._y=1,this._baseY=1,this._x=oe.cursorX,this._y=oe.cursorY,this._baseY=oe.baseY}getLine(){return this._buffer.getLine(this._y+this._baseY)}getCell(X){var re;return(re=this.getLine())===null||re===void 0?void 0:re.getCell(this._x,X)}moveTo(X){return this._x=X.x,this._y=X.y+X.baseY-this._baseY,this.moveInstruction()}clone(){const X=new w(this.rows,this.cols,this._buffer);return X.moveTo(this),X}move(X,re){return this._x=X,this._y=re,this.moveInstruction()}shift(X=0,re=0){return this._x+=X,this._y+=re,this.moveInstruction()}moveInstruction(){return this._y>=this.rows?(this._baseY+=this._y-(this.rows-1),this._y=this.rows-1):this._y<0&&(this._baseY-=this._y,this._y=0),`${v}${this._y+1};${this._x+1}H`}}const T=(Y,X,re)=>{let oe=!1;re<0&&X.shift(-1);let he;for(;X.x>=0;){if(he=X.getCell(he),!he?.getCode())return;const me=he.getChars();if(u.test(me)){if(oe)break}else oe=!0;X.shift(re)}re<0&&X.shift(1)};class R{get remaining(){return this._input.length-this.index}get eof(){return this.index===this._input.length}get rest(){return this._input.slice(this.index)}constructor(X){this._input=X,this.index=0}eatChar(X){if(this._input[this.index]===X)return this.index++,X}eatStr(X){if(this._input.slice(this.index,X.length)===X)return this.index+=X.length,X}eatGradually(X){const re=this.index;for(let oe=0;oe<X.length;oe++){if(oe>0&&this.eof)return 2;if(!this.eatChar(X[oe]))return this.index=re,1}return 0}eatRe(X){const re=X.exec(this._input.slice(this.index));if(re)return this.index+=re[0].length,re}eatCharCode(X=0,re=X+1){const oe=this._input.charCodeAt(this.index);if(!(oe<X||oe>=re))return this.index++,oe}}class M{constructor(){this.clearAfterTimeout=!1}apply(){return""}rollback(){return""}rollForwards(){return""}matches(){return 1}}class O{constructor(X){this.inner=X}apply(X,re){return this._appliedCursor=re.clone(),this.inner.apply(X,this._appliedCursor),""}rollback(X){return this.inner.rollback(X.clone()),""}rollForwards(X,re){return this._appliedCursor&&X.moveTo(this._appliedCursor),re}matches(X){return this.inner.matches(X)}}const x=Y=>Y instanceof O&&Y.inner instanceof k;t.isTenativeCharacterPrediction=x;class k{constructor(X,re){this._style=X,this._char=re,this.affectsStyle=!0}apply(X,re){const oe=re.getCell();return this.appliedAt=oe?{pos:re.coordinate,oldAttributes:$(oe),oldChar:oe.getChars()}:{pos:re.coordinate,oldAttributes:"",oldChar:""},re.shift(1),this._style.apply+this._char+this._style.undo}rollback(X){if(!this.appliedAt)return"";const{oldAttributes:re,oldChar:oe,pos:he}=this.appliedAt;return X.moveTo(he)+(oe?`${re}${oe}${X.moveTo(he)}`:s)}rollForwards(X,re){return this.appliedAt?X.clone().moveTo(this.appliedAt.pos)+re:""}matches(X,re){const oe=X.index;for(;X.eatRe(a););if(X.eof)return 2;if(X.eatChar(this._char))return 0;if(re instanceof k){const he=X.eatGradually(`\b${re._char}${this._char}`);if(he!==1)return he}return X.index=oe,1}}class F{constructor(X){this._terminal=X}apply(X,re){var oe;const he=!(!((oe=re.getLine())===null||oe===void 0)&&oe.translateToString(void 0,re.x).trim()),me=re.coordinate,q=re.shift(-1),Ae=re.getCell();return this._appliedAt=Ae?{isLastChar:he,pos:me,oldAttributes:$(Ae),oldChar:Ae.getChars()}:{isLastChar:he,pos:me,oldAttributes:"",oldChar:""},q+s}rollback(X){if(!this._appliedAt)return"";const{oldAttributes:re,oldChar:oe,pos:he}=this._appliedAt;return oe?re+oe+X.moveTo(he)+$(A(this._terminal)._inputHandler._curAttrData):X.moveTo(he)+s}rollForwards(){return""}matches(X){var re;if(!((re=this._appliedAt)===null||re===void 0)&&re.isLastChar){const oe=X.eatGradually(`\b${v}K`);if(oe!==1)return oe;const he=X.eatGradually("\b \b");if(he!==1)return he}return 1}}class L{apply(X,re){return this._prevPosition=re.coordinate,re.move(0,re.y+1),`\r
|
|
33774
33774
|
`}rollback(X){return this._prevPosition?X.moveTo(this._prevPosition):""}rollForwards(){return""}matches(X){return X.eatGradually(`\r
|
|
33775
33775
|
`)}}class N extends L{apply(X,re){return this._prevPosition=re.coordinate,re.move(0,re.y+1)," \r"}matches(X){const re=X.eatGradually(" \r");return re!==1?X.eatGradually(h)===2?2:re:X.eatGradually(`\r
|
|
33776
33776
|
`)}}class U{constructor(X,re,oe){this._direction=X,this._moveByWords=re,this._amount=oe}apply(X,re){const oe=re.x,he=re.getCell(),me=he?$(he):"",{_amount:q,_direction:Ae,_moveByWords:ge}=this,te=Ae==="D"?-1:1,fe=re.clone();if(ge)for(let Oe=0;Oe<q;Oe++)T(X,fe,te);else fe.shift(te*q);return this._applied={amount:Math.abs(re.x-fe.x),prevPosition:oe,prevAttrs:me,rollForward:re.moveTo(fe)},this._applied.rollForward}rollback(X){return this._applied?X.move(this._applied.prevPosition,X.y)+this._applied.prevAttrs:""}rollForwards(){return""}matches(X){if(!this._applied)return 1;const re=this._direction,{amount:oe,rollForward:he}=this._applied;if(X.eatStr(`${v}${re}`.repeat(oe))||re==="D"&&X.eatStr("\b".repeat(oe)))return 0;if(he){const me=X.eatGradually(he);if(me!==1)return me}return X.eatGradually(`${v}${oe}${re}`)}}class W extends r.Disposable{get accuracy(){let X=0;for(const[,re]of this._stats)re&&X++;return X/(this._stats.length||1)}get sampleSize(){return this._stats.length}get latency(){const X=this._stats.filter(([,re])=>re).map(([re])=>re).sort();return{count:X.length,min:X[0],median:X[Math.floor(X.length/2)],max:X[X.length-1]}}get maxLatency(){let X=-1/0;for(const[re,oe]of this._stats)oe&&(X=Math.max(re,X));return X}constructor(X){super(),this._stats=[],this._index=0,this._addedAtTime=new WeakMap,this._changeEmitter=new r.Emitter,this.onChange=this._changeEmitter.event,this.addDispose(X.onPredictionAdded(re=>this._addedAtTime.set(re,Date.now()))),this.addDispose(X.onPredictionSucceeded(this._pushStat.bind(this,!0))),this.addDispose(X.onPredictionFailed(this._pushStat.bind(this,!1)))}_pushStat(X,re){const oe=this._addedAtTime.get(re);this._stats[this._index]=[Date.now()-oe,X],this._index=(this._index+1)%d,this._changeEmitter.fire()}}t.PredictionStats=W;class j{get _currentGenerationPredictions(){return this._expected.filter(({gen:X})=>X===this._expected[0].gen).map(({p:X})=>X)}get isShowingPredictions(){return this._showPredictions}get length(){return this._expected.length}constructor(X,re){this.terminal=X,this._style=re,this._expected=[],this._currentGen=0,this._showPredictions=!1,this._addedEmitter=new r.Emitter,this.onPredictionAdded=this._addedEmitter.event,this._failedEmitter=new r.Emitter,this.onPredictionFailed=this._failedEmitter.event,this._succeededEmitter=new r.Emitter,this.onPredictionSucceeded=this._succeededEmitter.event}setShowPredictions(X){if(X===this._showPredictions)return;I("set predictions:",X),this._showPredictions=X;const re=this._getActiveBuffer();if(!re)return;const oe=this._currentGenerationPredictions;X?(this.clearCursor(),this._style.expectIncomingStyle(oe.reduce((he,me)=>me.affectsStyle?he+1:he,0)),this.terminal.write(oe.map(he=>he.apply(re,this.physicalCursor(re))).join(""))):this.terminal.write(oe.reverse().map(he=>he.rollback(this.physicalCursor(re))).join(""))}undoAllPredictions(){const X=this._getActiveBuffer();this._showPredictions&&X&&this.terminal.write(this._currentGenerationPredictions.reverse().map(re=>re.rollback(this.physicalCursor(X))).join("")),this._expected=[]}beforeServerInput(X){var re;const oe=X;if(this._inputBuffer&&(X=this._inputBuffer+X,this._inputBuffer=void 0),!this._expected.length)return this._clearPredictionState(),X;const he=this._getActiveBuffer();if(!he)return this._clearPredictionState(),X;let me="";const q=new R(X),Ae=this._expected[0].gen,ge=()=>{const te=q.eatRe(b);te&&(me+=te[0])};e:for(;this._expected.length&&q.remaining>0;){ge();const{p:te,gen:fe}=this._expected[0],Oe=this.physicalCursor(he),Me=q.index;switch(te.matches(q,this._lookBehind)){case 0:{const Pe=X.slice(Me,q.index);fe===Ae?me+=(re=te.rollForwards)===null||re===void 0?void 0:re.call(te,Oe,Pe):(te.apply(he,this.physicalCursor(he)),me+=Pe),this._succeededEmitter.fire(te),this._lookBehind=te,this._expected.shift();break}case 2:this._inputBuffer=X.slice(Me),q.index=X.length;break e;case 1:{const Pe=this._expected.filter(Be=>Be.gen===Ae).reverse();me+=Pe.map(({p:Be})=>Be.rollback(this.physicalCursor(he))).join(""),Pe.some(Be=>Be.p.affectsStyle)&&(me+=$(A(this.terminal)._inputHandler._curAttrData)),this._clearPredictionState(),this._failedEmitter.fire(te);break e}}}if(ge(),q.eof||(me+=q.rest,this._clearPredictionState()),this._expected.length&&Ae!==this._expected[0].gen)for(const{p:te,gen:fe}of this._expected){if(fe!==this._expected[0].gen)break;te.affectsStyle&&this._style.expectIncomingStyle(),me+=te.apply(he,this.physicalCursor(he))}return this._showPredictions?(me.length===0||me===X||(this._physicalCursor&&(me+=this._physicalCursor.moveInstruction()),me=p+me+m),me):oe}_clearPredictionState(){this._expected=[],this.clearCursor(),this._lookBehind=void 0}addPrediction(X,re){if(I("prediction type: \x1B[36m%s\x1B[0m",re.constructor.name),this._expected.push({gen:this._currentGen,p:re}),this._addedEmitter.fire(re),this._currentGen!==this._expected[0].gen)return re.apply(X,this.tentativeCursor(X)),!1;const oe=re.apply(X,this.physicalCursor(X));return this._tenativeCursor=void 0,this._showPredictions&&oe&&(re.affectsStyle&&this._style.expectIncomingStyle(),I("predict:",JSON.stringify(oe)),I("prediction type: \x1B[36m%s\x1B[0m",re.constructor.name),this.terminal.write(oe)),!0}addBoundary(X,re){let oe=!1;return X&&re&&(oe=this.addPrediction(X,new O(re)),re.apply(X,this.tentativeCursor(X))),this._currentGen++,oe}peekEnd(){var X;return(X=this._expected[this._expected.length-1])===null||X===void 0?void 0:X.p}peekStart(){var X;return(X=this._expected[0])===null||X===void 0?void 0:X.p}physicalCursor(X){return this._physicalCursor||(this._showPredictions&&S(this.terminal),this._physicalCursor=new w(this.terminal.rows,this.terminal.cols,X)),this._physicalCursor}tentativeCursor(X){return this._tenativeCursor||(this._tenativeCursor=this.physicalCursor(X).clone()),this._tenativeCursor}clearCursor(){this._physicalCursor=void 0,this._tenativeCursor=void 0}_getActiveBuffer(){const X=this.terminal.buffer.active;return X.type==="normal"?X:void 0}}t.PredictionTimeline=j;const Q=Y=>{if(Y.isAttributeDefault())return[0];const X=[];return Y.isBold()&&X.push(1),Y.isDim()&&X.push(2),Y.isItalic()&&X.push(3),Y.isUnderline()&&X.push(4),Y.isBlink()&&X.push(5),Y.isInverse()&&X.push(7),Y.isInvisible()&&X.push(8),Y.isFgRGB()&&X.push(38,2,Y.getFgColor()>>>24,Y.getFgColor()>>>16&255,Y.getFgColor()&255),Y.isFgPalette()&&X.push(38,5,Y.getFgColor()),Y.isFgDefault()&&X.push(39),Y.isBgRGB()&&X.push(48,2,Y.getBgColor()>>>24,Y.getBgColor()>>>16&255,Y.getBgColor()&255),Y.isBgPalette()&&X.push(48,5,Y.getBgColor()),Y.isBgDefault()&&X.push(49),X},$=Y=>`${v}${Q(Y).join(";")}m`,Z=(Y,X,re)=>{if(Y.length-X>re.length)return!1;for(let oe=0;oe<re.length;oe++,X++)if(re[X]!==Y[X])return!1;return!0},G=(Y,X)=>{const re=[0,0,-1,0,0,0];let oe=0,he=0;do{const me=Y[X+he];if(re[he+oe]=typeof me=="number"?me:me[0],typeof me!="number"){let q=0;do re[1]===5&&(oe=1),re[he+q+1+oe]=me[q];while(++q<me.length&&q+he+1+oe<re.length);break}if(re[1]===5&&he+oe>=2||re[1]===2&&he+oe>=5)break;re[1]&&(oe=1)}while(++he+X<Y.length&&he+oe<re.length);return he};class V{static _compileArgs(X){return`${v}${X.join(";")}m`}constructor(X,re){this._terminal=re,this._expectedIncomingStyles=0,this.onUpdate(X)}expectIncomingStyle(X=1){this._expectedIncomingStyles+=X*2}startTracking(){this._expectedIncomingStyles=0,this._onDidWriteSGR(Q(A(this._terminal)._inputHandler._curAttrData)),this._csiHandler=this._terminal.parser.registerCsiHandler({final:"m"},X=>(this._onDidWriteSGR(X),!1))}debounceStopTracking(){this._stopTracking()}dispose(){this._stopTracking()}_stopTracking(){var X;(X=this._csiHandler)===null||X===void 0||X.dispose(),this._csiHandler=void 0}_onDidWriteSGR(X){const re=this._undoArgs;for(let oe=0;oe<X.length;){const he=X[oe],me=typeof he=="number"?he:he[0];if(this._expectedIncomingStyles){if(Z(X,oe,this._undoArgs)){this._expectedIncomingStyles--,oe+=this._undoArgs.length;continue}if(Z(X,oe,this._applyArgs)){this._expectedIncomingStyles--,oe+=this._applyArgs.length;continue}}const q=me===38||me===48||me===58?G(X,oe):1;switch(this._applyArgs[0]){case 1:me===2?this._undoArgs=[22,2]:(me===22||me===0)&&(this._undoArgs=[22]);break;case 2:me===1?this._undoArgs=[22,1]:(me===22||me===0)&&(this._undoArgs=[22]);break;case 38:me===0||me===39||me===100?this._undoArgs=[39]:(me>=30&&me<=38||me>=90&&me<=97)&&(this._undoArgs=X.slice(oe,oe+q));break;default:me===this._applyArgs[0]?this._undoArgs=this._applyArgs:me===0&&(this._undoArgs=this._originalUndoArgs)}oe+=q}re!==this._undoArgs&&(this.undo=V._compileArgs(this._undoArgs))}onUpdate(X){const{applyArgs:re,undoArgs:oe}=this._getArgs(X);this._applyArgs=re,this._undoArgs=this._originalUndoArgs=oe,this.apply=V._compileArgs(this._applyArgs),this.undo=V._compileArgs(this._undoArgs)}_getArgs(X){switch(X){case"bold":return{applyArgs:[1],undoArgs:[22]};case"dim":return{applyArgs:[2],undoArgs:[22]};case"italic":return{applyArgs:[3],undoArgs:[23]};case"underlined":return{applyArgs:[4],undoArgs:[24]};case"inverted":return{applyArgs:[7],undoArgs:[27]};default:{let re;try{re=o.Color.fromHex(X)}catch{re=new o.Color(new o.RGBA(255,0,0,1))}const{r:oe,g:he,b:me}=re.rgba;return{applyArgs:[38,2,oe,he,me],undoArgs:[39]}}}}}n.__decorate([(0,r.debounce)(2e3),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[]),n.__metadata("design:returntype",void 0)],V.prototype,"debounceStopTracking",null);const H=(Y=t.DEFAULT_LOCAL_ECHO_EXCLUDE)=>new RegExp(`\\b(${Y.map(l).join("|")})\\b`,"i");class K extends r.Disposable{constructor(X,re,oe){super(),this.onBeforeProcessData=X,this._config=re,this.onDidTerminalPreferenceChange=oe,this._terminalTitle="",this.disposableCollection=new r.DisposableCollection,this._excludeProgramRe=H(this._config.localEchoExcludePrograms),this.addDispose(this.onDidTerminalPreferenceChange(he=>{var me;switch(he.preferenceName){case"terminal.integrated.localEchoLatencyThreshold":{he.newValue&&he.newValue!==this._config.localEchoLatencyThreshold&&(this._config.localEchoLatencyThreshold=he.newValue);break}case"terminal.integrated.localEchoExcludePrograms":{he.newValue&&he.newValue!==this._config.localEchoExcludePrograms&&(this._config.localEchoExcludePrograms=he.newValue,this._excludeProgramRe=H(this._config.localEchoExcludePrograms));break}case"terminal.integrated.localEchoStyle":{he.newValue!==this._config.localEchoStyle&&(this._config.localEchoStyle=he.newValue,(me=this._typeAheadStyle)===null||me===void 0||me.onUpdate(this._config.localEchoStyle));break}default:break}}))}_register(X){if(X===this)throw new Error("Cannot register a disposable on itself!");return this.disposableCollection.push(X),X}activate(X){I("#DEBUG1# activate terminal type ahead addon");const re=this._typeAheadStyle=this._register(new V(this._config.localEchoStyle,X)),oe=this._timeline=new j(X,this._typeAheadStyle),he=this.stats=new W(this._timeline);oe.setShowPredictions(this._config.localEchoLatencyThreshold===0),this._register(X.onData(q=>this._onUserData(q))),this._register(X.onTitleChange(q=>{this._terminalTitle=q,this._reevaluatePredictorState(he,oe)})),this._register(X.onResize(()=>{oe.setShowPredictions(!1),oe.clearCursor(),this._reevaluatePredictorState(he,oe)})),this._register(this._timeline.onPredictionSucceeded(q=>{var Ae;((Ae=this._lastRow)===null||Ae===void 0?void 0:Ae.charState)===1&&(0,t.isTenativeCharacterPrediction)(q)&&q.inner.appliedAt&&q.inner.appliedAt.pos.y+q.inner.appliedAt.pos.baseY===this._lastRow.y&&(this._lastRow.charState=2)})),this.onBeforeProcessData(q=>this._onBeforeProcessData(q));let me;this._register(he.onChange(()=>{me||(me=setTimeout(()=>{this._sendLatencyStats(he),me=void 0},E)),oe.length===0&&re.debounceStopTracking(),this._reevaluatePredictorState(he,oe)}))}reset(){this._lastRow=void 0}_deferClearingPredictions(){var X,re;if(!(!this.stats||!this._timeline)){if((X=this._clearPredictionDebounce)===null||X===void 0||X.dispose(),this._timeline.length===0||((re=this._timeline.peekStart())===null||re===void 0?void 0:re.clearAfterTimeout)===!1){this._clearPredictionDebounce=void 0;return}this._clearPredictionDebounce=(0,r.disposableTimeout)(()=>{var oe,he;(oe=this._timeline)===null||oe===void 0||oe.undoAllPredictions(),((he=this._lastRow)===null||he===void 0?void 0:he.charState)===1&&(this._lastRow.charState=0)},Math.max(500,this.stats.maxLatency*3/2))}}_reevaluatePredictorState(X,re){this._reevaluatePredictorStateNow(X,re)}_reevaluatePredictorStateNow(X,re){if(this._excludeProgramRe.test(this._terminalTitle))re.setShowPredictions(!1);else if(this._config.localEchoLatencyThreshold<0)re.setShowPredictions(!1);else if(this._config.localEchoLatencyThreshold===0)re.setShowPredictions(!0);else if(X.sampleSize>f&&X.accuracy>c){const oe=X.latency.median;oe>=this._config.localEchoLatencyThreshold?re.setShowPredictions(!0):oe<this._config.localEchoLatencyThreshold/y&&re.setShowPredictions(!1)}}_sendLatencyStats(X){console.log("terminalLatencyStats",{...X.latency,predictionAccuracy:X.accuracy})}_onUserData(X){var re,oe,he,me;if(((re=this._timeline)===null||re===void 0?void 0:re.terminal.buffer.active.type)!=="normal")return;I("user data:",JSON.stringify({data:X}));const q=this._timeline.terminal,Ae=q.buffer.active;if(Ae.cursorX===1&&Ae.cursorY===q.rows-1&&((he=(oe=Ae.getLine(Ae.cursorY+Ae.baseY))===null||oe===void 0?void 0:oe.getCell(0))===null||he===void 0?void 0:he.getChars())===":")return;const ge=Ae.baseY+Ae.cursorY;ge!==((me=this._lastRow)===null||me===void 0?void 0:me.y)?this._lastRow={y:ge,startingX:Ae.cursorX,endingX:Ae.cursorX,charState:0}:(this._lastRow.startingX=Math.min(this._lastRow.startingX,Ae.cursorX),this._lastRow.endingX=Math.max(this._lastRow.endingX,this._timeline.physicalCursor(Ae).x));const te=Me=>this._timeline.tentativeCursor(Ae).x<=this._lastRow.startingX?this._timeline.addBoundary(Ae,Me):this._timeline.addPrediction(Ae,Me),fe=Me=>this._timeline.tentativeCursor(Ae).x>=this._lastRow.endingX-1?this._timeline.addBoundary(Ae,Me):this._timeline.addPrediction(Ae,Me),Oe=new R(X);for(;Oe.remaining>0;){if(Oe.eatCharCode(127)){const Pe=this._timeline.peekEnd();Pe&&Pe instanceof k&&this._timeline.addBoundary(),this._timeline.isShowingPredictions&&S(this._timeline.terminal),this._timeline.tentativeCursor(Ae).x<=this._lastRow.startingX?this._timeline.addBoundary(Ae,new F(this._timeline.terminal)):(this._lastRow.endingX--,this._timeline.addPrediction(Ae,new F(this._timeline.terminal)));continue}if(Oe.eatCharCode(32,126)){const Pe=X[Oe.index-1],Be=new k(this._typeAheadStyle,Pe);this._lastRow.charState===0?(this._timeline.addBoundary(Ae,Be),this._lastRow.charState=1):this._timeline.addPrediction(Ae,Be),this._timeline.tentativeCursor(Ae).x>=q.cols&&this._timeline.addBoundary(Ae,new N);continue}const Me=Oe.eatRe(g);if(Me){const Pe=Me[3],Be=new U(Pe,!!Me[2],Number(Me[1])||1);Pe==="D"?te(Be):fe(Be);continue}if(Oe.eatStr(`${_}f`)){fe(new U("C",!0,1));continue}if(Oe.eatStr(`${_}b`)){te(new U("D",!0,1));continue}if(Oe.eatChar("\r")&&Ae.cursorY<q.rows-1){this._timeline.addPrediction(Ae,new L);continue}this._timeline.addBoundary(Ae,new M);break}this._timeline.length===1&&(this._deferClearingPredictions(),this._typeAheadStyle.startTracking())}_onBeforeProcessData(X){this._timeline&&(I("incoming data:",JSON.stringify(X.data)),X.data=this._timeline.beforeServerInput(X.data),I("emitted data:",JSON.stringify(X.data)),this._deferClearingPredictions())}}t.TypeAheadAddon=K,n.__decorate([(0,r.debounce)(100),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[W,j]),n.__metadata("design:returntype",void 0)],K.prototype,"_reevaluatePredictorState",null)},4636:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Color=t.HSVA=t.HSLA=t.RGBA=void 0;function e(_,v){const m=Math.pow(10,v);return Math.round(_*m)/m}class n{constructor(v,m,p,s=1){this._rgbaBrand=void 0,this.r=Math.min(255,Math.max(0,v))|0,this.g=Math.min(255,Math.max(0,m))|0,this.b=Math.min(255,Math.max(0,p))|0,this.a=e(Math.max(Math.min(1,s),0),3)}static equals(v,m){return v.r===m.r&&v.g===m.g&&v.b===m.b&&v.a===m.a}}t.RGBA=n;class r{constructor(v,m,p,s){this._hslaBrand=void 0,this.h=Math.max(Math.min(360,v),0)|0,this.s=e(Math.max(Math.min(1,m),0),3),this.l=e(Math.max(Math.min(1,p),0),3),this.a=e(Math.max(Math.min(1,s),0),3)}static equals(v,m){return v.h===m.h&&v.s===m.s&&v.l===m.l&&v.a===m.a}static fromRGBA(v){const m=v.r/255,p=v.g/255,s=v.b/255,h=v.a,a=Math.max(m,p,s),g=Math.min(m,p,s);let u=0,d=0;const E=(g+a)/2,f=a-g;if(f>0){switch(d=Math.min(E<=.5?f/(2*E):f/(2-2*E),1),a){case m:u=(p-s)/f+(p<s?6:0);break;case p:u=(s-m)/f+2;break;case s:u=(m-p)/f+4;break}u*=60,u=Math.round(u)}return new r(u,d,E,h)}static _hue2rgb(v,m,p){return p<0&&(p+=1),p>1&&(p-=1),p<.16666666666666666?v+(m-v)*6*p:p<.5?m:p<.6666666666666666?v+(m-v)*(.6666666666666666-p)*6:v}static toRGBA(v){const m=v.h/360,{s:p,l:s,a:h}=v;let a,g,u;if(p===0)a=g=u=s;else{const d=s<.5?s*(1+p):s+p-s*p,E=2*s-d;a=r._hue2rgb(E,d,m+.3333333333333333),g=r._hue2rgb(E,d,m),u=r._hue2rgb(E,d,m-.3333333333333333)}return new n(Math.round(a*255),Math.round(g*255),Math.round(u*255),h)}}t.HSLA=r;class o{constructor(v,m,p,s){this._hsvaBrand=void 0,this.h=Math.max(Math.min(360,v),0)|0,this.s=e(Math.max(Math.min(1,m),0),3),this.v=e(Math.max(Math.min(1,p),0),3),this.a=e(Math.max(Math.min(1,s),0),3)}static equals(v,m){return v.h===m.h&&v.s===m.s&&v.v===m.v&&v.a===m.a}static fromRGBA(v){const m=v.r/255,p=v.g/255,s=v.b/255,h=Math.max(m,p,s),a=Math.min(m,p,s),g=h-a,u=h===0?0:g/h;let d;return g===0?d=0:h===m?d=((p-s)/g%6+6)%6:h===p?d=(s-m)/g+2:d=(m-p)/g+4,new o(Math.round(d*60),u,h,v.a)}static toRGBA(v){const{h:m,s:p,v:s,a:h}=v,a=s*p,g=a*(1-Math.abs(m/60%2-1)),u=s-a;let[d,E,f]=[0,0,0];return m<60?(d=a,E=g):m<120?(d=g,E=a):m<180?(E=a,f=g):m<240?(E=g,f=a):m<300?(d=g,f=a):m<=360&&(d=a,f=g),d=Math.round((d+u)*255),E=Math.round((E+u)*255),f=Math.round((f+u)*255),new n(d,E,f,h)}}t.HSVA=o;class l{static fromHex(v){return l.Format.CSS.parseHex(v)||l.red}get hsla(){return this._hsla?this._hsla:r.fromRGBA(this.rgba)}get hsva(){return this._hsva?this._hsva:o.fromRGBA(this.rgba)}constructor(v){if(v)if(v instanceof n)this.rgba=v;else if(v instanceof r)this._hsla=v,this.rgba=r.toRGBA(v);else if(v instanceof o)this._hsva=v,this.rgba=o.toRGBA(v);else throw new Error("Invalid color ctor argument");else throw new Error("Color needs a value")}equals(v){return!!v&&n.equals(this.rgba,v.rgba)&&r.equals(this.hsla,v.hsla)&&o.equals(this.hsva,v.hsva)}getRelativeLuminance(){const v=l._relativeLuminanceForComponent(this.rgba.r),m=l._relativeLuminanceForComponent(this.rgba.g),p=l._relativeLuminanceForComponent(this.rgba.b),s=.2126*v+.7152*m+.0722*p;return e(s,4)}static _relativeLuminanceForComponent(v){const m=v/255;return m<=.03928?m/12.92:Math.pow((m+.055)/1.055,2.4)}getContrastRatio(v){const m=this.getRelativeLuminance(),p=v.getRelativeLuminance();return m>p?(m+.05)/(p+.05):(p+.05)/(m+.05)}isDarker(){return(this.rgba.r*299+this.rgba.g*587+this.rgba.b*114)/1e3<128}isLighter(){return(this.rgba.r*299+this.rgba.g*587+this.rgba.b*114)/1e3>=128}isLighterThan(v){const m=this.getRelativeLuminance(),p=v.getRelativeLuminance();return m>p}isDarkerThan(v){const m=this.getRelativeLuminance(),p=v.getRelativeLuminance();return m<p}lighten(v){return new l(new r(this.hsla.h,this.hsla.s,this.hsla.l+this.hsla.l*v,this.hsla.a))}darken(v){return new l(new r(this.hsla.h,this.hsla.s,this.hsla.l-this.hsla.l*v,this.hsla.a))}transparent(v){const{r:m,g:p,b:s,a:h}=this.rgba;return new l(new n(m,p,s,h*v))}isTransparent(){return this.rgba.a===0}isOpaque(){return this.rgba.a===1}opposite(){return new l(new n(255-this.rgba.r,255-this.rgba.g,255-this.rgba.b,this.rgba.a))}blend(v){const m=v.rgba,p=this.rgba.a,s=m.a,h=p+s*(1-p);if(h<1e-6)return l.transparent;const a=this.rgba.r*p/h+m.r*s*(1-p)/h,g=this.rgba.g*p/h+m.g*s*(1-p)/h,u=this.rgba.b*p/h+m.b*s*(1-p)/h;return new l(new n(a,g,u,h))}makeOpaque(v){if(this.isOpaque()||v.rgba.a!==1)return this;const{r:m,g:p,b:s,a:h}=this.rgba;return new l(new n(v.rgba.r-h*(v.rgba.r-m),v.rgba.g-h*(v.rgba.g-p),v.rgba.b-h*(v.rgba.b-s),1))}flatten(...v){const m=v.reduceRight((p,s)=>l._flatten(s,p));return l._flatten(this,m)}static _flatten(v,m){const p=1-v.rgba.a;return new l(new n(p*m.rgba.r+v.rgba.a*v.rgba.r,p*m.rgba.g+v.rgba.a*v.rgba.g,p*m.rgba.b+v.rgba.a*v.rgba.b))}toString(){return this._toString||(this._toString=l.Format.CSS.format(this)),this._toString}static getLighterColor(v,m,p){if(v.isLighterThan(m))return v;p=p||.5;const s=v.getRelativeLuminance(),h=m.getRelativeLuminance();return p=p*(h-s)/h,v.lighten(p)}static getDarkerColor(v,m,p){if(v.isDarkerThan(m))return v;p=p||.5;const s=v.getRelativeLuminance(),h=m.getRelativeLuminance();return p=p*(s-h)/s,v.darken(p)}}t.Color=l,l.white=new l(new n(255,255,255,1)),l.black=new l(new n(0,0,0,1)),l.red=new l(new n(255,0,0,1)),l.blue=new l(new n(0,0,255,1)),l.green=new l(new n(0,255,0,1)),l.cyan=new l(new n(0,255,255,1)),l.lightgrey=new l(new n(211,211,211,1)),l.transparent=new l(new n(0,0,0,0)),function(_){let v;(function(m){let p;(function(s){function h(A){return A.rgba.a===1?`rgb(${A.rgba.r}, ${A.rgba.g}, ${A.rgba.b})`:_.Format.CSS.formatRGBA(A)}s.formatRGB=h;function a(A){return`rgba(${A.rgba.r}, ${A.rgba.g}, ${A.rgba.b}, ${+A.rgba.a.toFixed(2)})`}s.formatRGBA=a;function g(A){return A.hsla.a===1?`hsl(${A.hsla.h}, ${(A.hsla.s*100).toFixed(2)}%, ${(A.hsla.l*100).toFixed(2)}%)`:_.Format.CSS.formatHSLA(A)}s.formatHSL=g;function u(A){return`hsla(${A.hsla.h}, ${(A.hsla.s*100).toFixed(2)}%, ${(A.hsla.l*100).toFixed(2)}%, ${A.hsla.a.toFixed(2)})`}s.formatHSLA=u;function d(A){const S=A.toString(16);return S.length!==2?"0"+S:S}function E(A){return`#${d(A.rgba.r)}${d(A.rgba.g)}${d(A.rgba.b)}`}s.formatHex=E;function f(A,S=!1){return S&&A.rgba.a===1?_.Format.CSS.formatHex(A):`#${d(A.rgba.r)}${d(A.rgba.g)}${d(A.rgba.b)}${d(Math.round(A.rgba.a*255))}`}s.formatHexA=f;function c(A){return A.isOpaque()?_.Format.CSS.formatHex(A):_.Format.CSS.formatRGBA(A)}s.format=c;function y(A){const S=A.length;if(S===0||A.charCodeAt(0)!==35)return null;if(S===7){const D=16*b(A.charCodeAt(1))+b(A.charCodeAt(2)),I=16*b(A.charCodeAt(3))+b(A.charCodeAt(4)),w=16*b(A.charCodeAt(5))+b(A.charCodeAt(6));return new _(new n(D,I,w,1))}if(S===9){const D=16*b(A.charCodeAt(1))+b(A.charCodeAt(2)),I=16*b(A.charCodeAt(3))+b(A.charCodeAt(4)),w=16*b(A.charCodeAt(5))+b(A.charCodeAt(6)),T=16*b(A.charCodeAt(7))+b(A.charCodeAt(8));return new _(new n(D,I,w,T/255))}if(S===4){const D=b(A.charCodeAt(1)),I=b(A.charCodeAt(2)),w=b(A.charCodeAt(3));return new _(new n(16*D+D,16*I+I,16*w+w))}if(S===5){const D=b(A.charCodeAt(1)),I=b(A.charCodeAt(2)),w=b(A.charCodeAt(3)),T=b(A.charCodeAt(4));return new _(new n(16*D+D,16*I+I,16*w+w,(16*T+T)/255))}return null}s.parseHex=y;function b(A){switch(A){case 48:return 0;case 49:return 1;case 50:return 2;case 51:return 3;case 52:return 4;case 53:return 5;case 54:return 6;case 55:return 7;case 56:return 8;case 57:return 9;case 97:return 10;case 65:return 10;case 98:return 11;case 66:return 11;case 99:return 12;case 67:return 12;case 100:return 13;case 68:return 13;case 101:return 14;case 69:return 14;case 102:return 15;case 70:return 15}return 0}})(p=m.CSS||(m.CSS={}))})(v=_.Format||(_.Format={}))}(l||(t.Color=l={}))},68611:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalGroupViewService=t.WidgetGroup=t.Widget=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(28423),_=e(26405);class v extends o.Disposable{constructor(h,a=!1,g=!1){super(),this.id=h,this.reuse=a,this.recovery=g,this.dynamic=(0,l.observableValue)(this,0),this.shadowDynamic=(0,l.observableValue)(this,0),this.name=(0,l.observableValue)(this,""),this.processName=(0,l.observableValue)(this,""),this._onRender=new o.Emitter,this._onResize=new o.Emitter,this._onShow=new o.Emitter,this._onError=new o.Emitter,this.onRender=this._onRender.event,this.onResize=this._onResize.event,this.onShow=this._onShow.event,this.onError=this._onError.event}get group(){return this._group}set group(h){this._group=h,h.addWidget(this)}get element(){return this._element}set element(h){this._element||(this._element=h,this._onRender.fire())}get show(){return this._show}set show(h){this._show=h,this._onShow.fire(h)}get error(){return this._error}set error(h){this._error=h,this._onError.fire(h)}resize(h){(0,l.transaction)(a=>{const g=h||this.shadowDynamic.get();this.dynamic.set(g,a),this.shadowDynamic.set(g,a)}),this._onResize.fire()}increase(h){(0,l.transaction)(a=>{const g=this.shadowDynamic.get();this.shadowDynamic.set(g+h,a)}),this._onResize.fire()}rename(h){(0,l.transaction)(a=>{this.name.set(h,a)})}}t.Widget=v;class m extends o.Disposable{constructor(h,a){super(),this.widgets=(0,l.observableValue)(this,[]),this.editable=(0,l.observableValue)(this,!1),this.activated=(0,l.observableValue)(this,!1),this.name=(0,l.observableValue)(this,""),this.currentId=(0,l.observableValue)(this,""),this.widgetsMap=new Map,this.current=(0,l.derived)(this,g=>{const u=this.currentId.read(g);return this.widgetsMap.get(u)}),this.snapshot=(0,l.derived)(this,g=>{const u=this.current.read(g);return this.name.read(g)||u?.name.read(g)||u?.processName.read(g)||""}),this._id=h||(0,_.userActionViewUuid)(),this._options=a||{},this._activated=!1}get id(){return this._id}get options(){return this._options}get length(){return this.widgets.get().length}get first(){return this.widgets.get()[0]}get last(){return this.widgets.get()[this.length-1]}addWidget(h){(0,l.transaction)(a=>{const g=this.widgets.get();this.widgets.set([...g,h],a)}),this.widgetsMap.set(h.id,h),this.currentId.get()||(0,l.transaction)(a=>{this.currentId.set(h.id,a)}),this._averageLayout()}findWidget(h){return this.widgets.get().findIndex(a=>a.id===h.id)}selectWidget(h){(0,l.transaction)(a=>{this.currentId.set(h.id,a)})}removeWidgetByIndex(h){const a=this.widgets.get(),g=a.splice(h,1);return this.widgetsMap.delete(g[0].id),(0,l.transaction)(u=>{this.widgets.set(a.filter(d=>d!==g[0]),u)}),this._averageLayout(),this.last&&this.selectWidget(this.last),g[0]}edit(){(0,l.transaction)(h=>{this.editable.set(!0,h)})}unedit(){(0,l.transaction)(h=>{this.editable.set(!1,h)})}rename(h){(0,l.transaction)(a=>{this.name.set(h,a),this.editable.set(!1,a)})}_isLast(h){return h.id===this.widgets.get()[this.widgets.get().length-1].id}_averageLayout(){const h=Math.round(m.whole/this.widgets.get().length*m.float)/m.float;this.widgets.get().forEach(a=>{this._isLast(a)?a.resize(m.whole-h*(this.widgets.get().length-1)):a.resize(h)})}}t.WidgetGroup=m,m.whole=100,m.float=1e3;let p=class{constructor(){this._widgets=new Map,this.groups=(0,l.observableValue)(this,[]),this.currentGroupIndex=(0,l.observableValue)(this,-1),this.currentGroupId=(0,l.observableValue)(this,""),this._onWidgetCreated=new o.Emitter,this._onWidgetSelected=new o.Emitter,this._onWidgetDisposed=new o.Emitter,this._onWidgetEmpty=new o.Emitter,this.currentGroup=(0,l.derived)(this,h=>{const a=this.groups.read(h),g=this.currentGroupIndex.read(h);return a[g]}),this.currentWidget=(0,l.derived)(this,h=>{const a=this.currentGroup.read(h);return a&&this.getWidget(a.currentId.read(h))}),this.currentWidgetId=(0,l.derived)(this,h=>{const a=this.currentGroup.read(h);return a&&a.currentId.read(h)}),this.onWidgetCreated=this._onWidgetCreated.event,this.onWidgetSelected=this._onWidgetSelected.event,this.onWidgetDisposed=this._onWidgetDisposed.event,this.onWidgetEmpty=this._onWidgetEmpty.event}getGroup(h){if(h>this.groups.get().length-1)throw new Error("out of groups length");return this.groups.get()[h]}swapGroup(h,a){const g=this.groups.get();if(h===-1||a===-1)return;const u=[...g],d=u[h];u[h]=u[a],u[a]=d,(0,l.transaction)(E=>{this.groups.set(u,E)})}_doSelectGroup(h){const a=this.getGroup(h);(0,l.transaction)(u=>{this.currentGroupIndex.set(h,u),this.currentGroupId.set(a.id,u),a.activated.set(!0,u)}),!a.current&&a.first&&a.selectWidget(a.first);const g=a.current.get();g&&(this._onWidgetSelected.fire(g),this.resize())}selectGroup(h){this._doSelectGroup(h)}_doCreateGroup(h,a){const g=new m(h,a);return(0,l.transaction)(u=>{const d=this.groups.get();this.groups.set([...d,g],u)}),this.groups.get().length-1}createGroup(h){const a=this._doCreateGroup(void 0,h);return this.getGroup(a),a}_checkIfEmpty(h){if(this.empty())this._onWidgetEmpty.fire();else{const a=this.currentGroupIndex.get();h===a&&this._doSelectGroup(this.groups.get().length-1),h<a&&this._doSelectGroup(a-1)}}_doRemoveGroup(h){const a=this.groups.get(),[g]=a.splice(h,1);g&&(g.widgets.get().forEach(u=>{this._widgets.delete(u.id),u.dispose(),this._onWidgetDisposed.fire(u)}),g.dispose(),(0,l.transaction)(u=>{this.groups.set(a.filter(d=>d.id!==g.id),u)})),this._checkIfEmpty(h)}removeGroup(h){this._doRemoveGroup(h)}getWidget(h){const a=this._widgets.get(h);if(!a)throw new Error("not find this widget");return a}selectWidget(h){const a=this.getWidget(h),g=a.group,u=this.groups.get().findIndex(d=>d.id===g.id);g.selectWidget(a),this.selectGroup(u)}createWidget(h,a,g,u=!1,d=!1){const E=new v(a||this.service.generateSessionId(),g,d);return this._widgets.set(E.id,E),E.group=h,u||this._onWidgetCreated.fire(E),E}_checkIfGroupEmpty(h){this.getGroup(h).length===0&&this._doRemoveGroup(h)}removeWidget(h){const a=this.getWidget(h),g=a.group,u=this.groups.get().findIndex(f=>g.id===f.id),d=g.findWidget(a);g.removeWidgetByIndex(d),this._widgets.delete(h),a.dispose(),this._onWidgetDisposed.fire(a),this._checkIfGroupEmpty(u);const E=g.current.get();E&&this._onWidgetSelected.fire(E)}resize(){const h=this.currentGroup.get();h&&h.widgets.get().forEach(a=>{a.resize()})}empty(){return this._widgets.size===0}clear(){(0,l.transaction)(h=>{this.groups.set([],h)}),this._widgets.clear(),this._onWidgetEmpty.fire()}};t.TerminalGroupViewService=p,n.__decorate([(0,r.Autowired)(_.ITerminalInternalService),n.__metadata("design:type",Object)],p.prototype,"service",void 0),t.TerminalGroupViewService=p=n.__decorate([(0,r.Injectable)()],p)},41685:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.XTerm=void 0;const n=e(85608),r=e(95643),o=e(98239),l=e(87083),_=e(76003),v=e(41869),m=e(67889),p=e(43718),s=e(75124),h=e(9132),a=e(68179),g=e(42912),u=e(25655),d=n.__importDefault(e(73567)),E=e(43395);let f=class extends p.Disposable{constructor(y){super(),this.options=y,this.container=document.createElement("div"),this.container.className=d.default.terminalInstance,this.xtermOptions=y.xtermOptions,this.raw=new l.Terminal({allowProposedApi:!0,...this.xtermOptions}),this._prepareAddons(),this.raw.onSelectionChange(this.onSelectionChange.bind(this))}async enableCanvasRenderer(){try{this._canvasAddon||(this._canvasAddon=new(await e.e(359).then(e.t.bind(e,67359,23))).CanvasAddon),this.addDispose(this._canvasAddon),this.raw.loadAddon(this._canvasAddon),this._webglAddon&&(this._webglAddon.dispose(),this._webglAddon=void 0)}catch{}}async enableWebglRenderer(){try{this._webglAddon||(this._webglAddon=new(await e.e(151).then(e.t.bind(e,42151,23))).WebglAddon),this.addDispose(this._webglAddon),this.addDispose(this._webglAddon.onContextLoss(()=>{this.raw.options.rendererType="dom"})),this.raw.loadAddon(this._webglAddon),this._canvasAddon&&(this._canvasAddon.dispose(),this._canvasAddon=void 0)}catch{await this.enableCanvasRenderer()}}async _prepareAddons(){this._searchAddon=new o.SearchAddon,this._fitAddon=new r.FitAddon,this.addDispose([this._searchAddon,this._fitAddon]),this.raw.loadAddon(this._searchAddon),this.raw.loadAddon(this._fitAddon)}updateTheme(y){y&&(this.raw.options.theme=y,this.xtermOptions={...this.xtermOptions,theme:y})}updatePreferences(y){this.xtermOptions={...this.xtermOptions,...y}}getFindColors(){const y=this.themeService.getCurrentThemeSync(),b=y.getColor(E.TERMINAL_BACKGROUND_COLOR)||y.getColor(a.PANEL_BACKGROUND),A=y.getColor(E.TERMINAL_FIND_MATCH_BACKGROUND_COLOR),S=y.getColor(E.TERMINAL_FIND_MATCH_BORDER_COLOR),D=y.getColor(E.TERMINAL_OVERVIEW_RULER_CURSOR_FOREGROUND_COLOR),I=y.getColor(E.TERMINAL_FIND_MATCH_HIGHLIGHT_BACKGROUND_COLOR),w=y.getColor(E.TERMINAL_FIND_MATCH_HIGHLIGHT_BORDER_COLOR),T=y.getColor(E.TERMINAL_OVERVIEW_RULER_FIND_MATCH_FOREGROUND_COLOR);return{activeMatchBackground:A?.toString(),activeMatchBorder:S?.toString()||"transparent",activeMatchColorOverviewRuler:D?.toString()||"transparent",matchBackground:b?I?.blend(b).toString():void 0,matchBorder:w?.toString()||"transparent",matchOverviewRuler:T?.toString()||"transparent"}}findNext(y,b={}){const A={decorations:this.getFindColors(),...b};return this._searchAddon.findNext(y,A)}findPrevious(y,b={}){const A={decorations:this.getFindColors(),...b};return this._searchAddon.findPrevious(y,A)}get onSearchResultsChange(){return this._searchAddon.onDidChangeResults}closeSearch(){this._searchAddon.clearDecorations()}open(){this.raw.open(this.container);const y=this.preferenceService.get("terminal.integrated.xtermRenderType",u.RenderType.WebGL);y===u.RenderType.WebGL?this.enableWebglRenderer():y===u.RenderType.Canvas&&this.enableCanvasRenderer()}fit(){this._fitAddon.fit()}async onSelectionChange(){var y;!((y=this.xtermOptions)===null||y===void 0)&&y.copyOnSelection&&this.raw.hasSelection()&&await this.copySelection()}async copySelection(){this.raw.hasSelection()?await this.clipboardService.writeText(this.raw.getSelection()):this.messageService.warning("The terminal has no selection to copy")}dispose(){this.raw.dispose(),this.container.remove()}};t.XTerm=f,n.__decorate([(0,_.Autowired)(_.INJECTOR_TOKEN),n.__metadata("design:type",_.Injector)],f.prototype,"injector",void 0),n.__decorate([(0,_.Autowired)(s.MessageService),n.__metadata("design:type",s.MessageService)],f.prototype,"messageService",void 0),n.__decorate([(0,_.Autowired)(v.IClipboardService),n.__metadata("design:type",Object)],f.prototype,"clipboardService",void 0),n.__decorate([(0,_.Autowired)(g.IThemeService),n.__metadata("design:type",h.WorkbenchThemeService)],f.prototype,"themeService",void 0),n.__decorate([(0,_.Autowired)(m.PreferenceService),n.__metadata("design:type",Object)],f.prototype,"preferenceService",void 0),t.XTerm=f=n.__decorate([(0,_.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Object])],f)},78453:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ITerminalApiService=void 0,t.ITerminalApiService=Symbol("ITerminalApiService")},68830:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TERMINAL_ID_SEPARATOR=t.ITerminalClientFactory2=void 0,t.ITerminalClientFactory2=Symbol("ITerminalClientFactory2"),t.TERMINAL_ID_SEPARATOR="|"},7473:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ITerminalHoverManagerService=t.ITerminalGroupViewService=t.ITerminalSearchService=t.ITerminalController=void 0,t.ITerminalController=Symbol("ITerminalController"),t.ITerminalSearchService=Symbol("ITerminalSearchService"),t.ITerminalGroupViewService=Symbol("ITerminalGroupViewService"),t.ITerminalHoverManagerService=Symbol("ITerminalHoverManagerService")},94620:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EnvironmentVariableMutatorType=t.EnvironmentVariableServiceToken=void 0,t.mutatorTypeLabel=e,t.serializeEnvironmentVariableCollection=r,t.deserializeEnvironmentVariableCollection=o,t.EnvironmentVariableServiceToken=Symbol("EnvironmentVariableServiceToken");function e(l,_,v){switch(l){case n.Prepend:return`${v}=${_}\${env:${v}}`;case n.Append:return`${v}=\${env:${v}}${_}`;default:return`${v}=${_}`}}var n;(function(l){l[l.Replace=1]="Replace",l[l.Append=2]="Append",l[l.Prepend=3]="Prepend"})(n||(t.EnvironmentVariableMutatorType=n={}));function r(l){return[...l.entries()]}function o(l){return new Map(l)}},12404:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MergedEnvironmentVariableCollection=void 0;const n=e(43718),r=e(94620);class o{constructor(m){this.map=new Map,m.forEach((p,s)=>{const h=p.map.entries();let a=h.next();for(;!a.done;){const g=a.value[0];let u=this.map.get(g);if(u||(u=[],this.map.set(g,u)),u.length>0&&u[0].type===r.EnvironmentVariableMutatorType.Replace){a=h.next();continue}const d=a.value[1];u.unshift({extensionIdentifier:s,value:d.value,type:d.type,options:d.options}),a=h.next()}})}async applyToProcessEnvironment(m,p,s){let h;p===n.OperatingSystem.Windows&&(h={},Object.keys(m).forEach(a=>h[a.toLowerCase()]=a)),this.map.forEach((a,g)=>{const u=p===n.OperatingSystem.Windows&&h[g.toLowerCase()]||g;a.forEach(async d=>{var E,f;if(!((f=(E=d.options)===null||E===void 0?void 0:E.applyAtProcessCreation)!==null&&f!==void 0)||f){const c=s?await s(d.value):d.value;switch(d.type){case r.EnvironmentVariableMutatorType.Append:m[u]=(m[u]||"")+c;break;case r.EnvironmentVariableMutatorType.Prepend:m[u]=c+(m[u]||"");break;case r.EnvironmentVariableMutatorType.Replace:m[u]=c;break}}})})}diff(m){const p=new Map,s=new Map,h=new Map;if(m.map.forEach((a,g)=>{const u=this.map.get(g),d=l(a,u);d&&p.set(g,d)}),this.map.forEach((a,g)=>{const u=m.map.get(g),d=l(a,u);d&&h.set(g,d)}),this.map.forEach((a,g)=>{const u=m.map.get(g),d=_(a,u);d&&s.set(g,d)}),!(p.size===0&&s.size===0&&h.size===0))return{added:p,changed:s,removed:h}}}t.MergedEnvironmentVariableCollection=o;function l(v,m){if(!m)return v;const p=new Set;m.forEach(h=>p.add(h.extensionIdentifier));const s=[];return v.forEach(h=>{p.has(h.extensionIdentifier)||s.push(h)}),s.length===0?void 0:s}function _(v,m){if(!m)return;const p=new Map;m.forEach(h=>p.set(h.extensionIdentifier,h));const s=[];return v.forEach(h=>{const a=p.get(h.extensionIdentifier);a&&(h.type!==a.type||h.value!==a.value)&&s.push(a)}),s.length===0?void 0:s}},19599:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ITerminalErrorService=t.ETerminalErrorType=void 0,t.isTerminalError=n;var e;(function(r){r[r.CREATE_FAIL=0]="CREATE_FAIL"})(e||(t.ETerminalErrorType=e={}));function n(r){return r.message!==void 0}t.ITerminalErrorService=Symbol("ITerminalErrorService")},84876:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalLocation=t.TerminalDataBufferer=void 0;class e{constructor(o){this._callback=o,this._terminalBufferMap=new Map}dispose(){for(const o of this._terminalBufferMap.values())o.dispose()}startBuffering(o,l,_=5){let v;return v=l(m=>{const p=typeof m=="string"?m:m.data;let s=this._terminalBufferMap.get(o);if(s){s.data.push(p);return}const h=setTimeout(()=>this._flushBuffer(o),_);s={data:[p],timeoutId:h,dispose:()=>{clearTimeout(h),this._flushBuffer(o),v.dispose()}},this._terminalBufferMap.set(o,s)}),v}stopBuffering(o){const l=this._terminalBufferMap.get(o);l&&l.dispose()}_flushBuffer(o){const l=this._terminalBufferMap.get(o);l&&(this._terminalBufferMap.delete(o),this._callback(o,l.data.join("")))}}t.TerminalDataBufferer=e;var n;(function(r){r[r.Panel=1]="Panel",r[r.Editor=2]="Editor"})(n||(t.TerminalLocation=n={}))},26405:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=e(85608);n.__exportStar(e(7473),t),n.__exportStar(e(59381),t),n.__exportStar(e(18171),t),n.__exportStar(e(19599),t),n.__exportStar(e(30354),t),n.__exportStar(e(38022),t),n.__exportStar(e(68830),t),n.__exportStar(e(78453),t),n.__exportStar(e(30076),t),n.__exportStar(e(16992),t),n.__exportStar(e(2853),t),n.__exportStar(e(84876),t),n.__exportStar(e(27155),t),n.__exportStar(e(15432),t),n.__exportStar(e(85504),t),n.__exportStar(e(38352),t)},15432:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkComputer=t.StateMachine=t.Uint8Matrix=void 0,t.computeLinks=s;const n=e(43718);class r{constructor(a,g,u){const d=new Uint8Array(a*g);for(let E=0,f=a*g;E<f;E++)d[E]=u;this._data=d,this.rows=a,this.cols=g}get(a,g){return this._data[a*this.cols+g]}set(a,g,u){this._data[a*this.cols+g]=u}}t.Uint8Matrix=r;class o{constructor(a){let g=0,u=0;for(let E=0,f=a.length;E<f;E++){const[c,y,b]=a[E];y>g&&(g=y),c>u&&(u=c),b>u&&(u=b)}g++,u++;const d=new r(u,g,0);for(let E=0,f=a.length;E<f;E++){const[c,y,b]=a[E];d.set(c,y,b)}this._states=d,this._maxCharCode=g}nextState(a,g){return g<0||g>=this._maxCharCode?0:this._states.get(a,g)}}t.StateMachine=o;let l=null;function _(){return l===null&&(l=new o([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),l}let v=null;function m(){if(v===null){v=new n.CharacterClassifier(0);const h=` <>'"\u3001\u3002\uFF61\uFF64\uFF0C\uFF0E\uFF1A\uFF1B\u2018\u201C\u3008\u300A\u300C\u300E\u3010\u3014\uFF08\uFF3B\uFF5B\uFF62\uFF63\uFF5D\uFF3D\uFF09\u3015\u3011\u300F\u300D\u300B\u3009\u201D\u2019\uFF40\uFF5E\u2026`;for(let g=0;g<h.length;g++)v.set(h.charCodeAt(g),1);const a=".,;";for(let g=0;g<a.length;g++)v.set(a.charCodeAt(g),2)}return v}class p{static _createLink(a,g,u,d,E){let f=E-1;do{const c=g.charCodeAt(f);if(a.get(c)!==2)break;f--}while(f>d);if(d>0){const c=g.charCodeAt(d-1),y=g.charCodeAt(f);(c===40&&y===41||c===91&&y===93||c===123&&y===125)&&f--}return{range:{startLineNumber:u,startColumn:d+1,endLineNumber:u,endColumn:f+2},url:g.substring(d,f+1)}}static computeLinks(a,g=_()){const u=m(),d=[];for(let E=1,f=a.getLineCount();E<=f;E++){const c=a.getLineContent(E),y=c.length;let b=0,A=0,S=0,D=1,I=!1,w=!1,T=!1,R=!1;for(;b<y;){let M=!1;const O=c.charCodeAt(b);if(D===13){let x;switch(O){case 40:I=!0,x=0;break;case 41:x=I?0:1;break;case 91:T=!0,w=!0,x=0;break;case 93:T=!1,x=w?0:1;break;case 123:R=!0,x=0;break;case 125:x=R?0:1;break;case 39:x=S===34||S===96?0:1;break;case 34:x=S===39||S===96?0:1;break;case 96:x=S===39||S===34?0:1;break;case 42:x=S===42?1:0;break;case 124:x=S===124?1:0;break;case 32:x=T?0:1;break;default:x=u.get(O)}x===1&&(d.push(p._createLink(u,c,E,A,b)),M=!0)}else if(D===12){let x;O===91?(w=!0,x=0):x=u.get(O),x===1?M=!0:D=13}else D=g.nextState(D,O),D===0&&(M=!0);M&&(D=1,I=!1,w=!1,R=!1,A=b+1,S=O),b++}D===13&&d.push(p._createLink(u,c,E,A,y))}return d}}t.LinkComputer=p;function s(h){return!h||typeof h.getLineCount!="function"||typeof h.getLineContent!="function"?[]:p.computeLinks(h)}},27155:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TerminalNetworkStatus=t.ITerminalNetwork=void 0,t.ITerminalNetwork=Symbol("ITerminalNetwork");var e;(function(n){n[n.DISCONNECTED=0]="DISCONNECTED",n[n.CONNECTED=1]="CONNECTED"})(e||(t.TerminalNetworkStatus=e={}))},3276:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.terminalPreferenceSchema=t.TerminalCursorStyle=t.SupportedOptionsName=t.ITerminalPreference=void 0;const n=e(43718),r=e(25655);t.ITerminalPreference=Symbol("ITerminalPreference"),t.SupportedOptionsName={type:"type",fontFamily:"fontFamily",fontSize:"fontSize",fontWeight:"fontWeight",lineHeight:"lineHeight",cursorBlink:"cursorBlink",scrollback:"scrollback",copyOnSelection:"copyOnSelection",cursorStyle:"cursorStyle"},t.TerminalCursorStyle={BLOCK:"block",LINE:"line",UNDERLINE:"underline"};const o=(0,n.localize)("terminal.integrated.shell.linux.deprecation","This is deprecated, the new recommended way to configure your default shell is by creating a terminal profile in {0} and setting its profile name as the default in {1}. This will currently take priority over the new profiles settings but that will change in the future.","`#terminal.integrated.profiles.linux#`"),l=(0,n.localize)("terminal.integrated.shell.osx.deprecation","This is deprecated, the new recommended way to configure your default shell is by creating a terminal profile in {0} and setting its profile name as the default in {1}. This will currently take priority over the new profiles settings but that will change in the future.","`#terminal.integrated.profiles.osx#`"),_=(0,n.localize)("terminal.integrated.shell.windows.deprecation","This is deprecated, the new recommended way to configure your default shell is by creating a terminal profile in {0} and setting its profile name as the default in {1}. This will currently take priority over the new profiles settings but that will change in the future.","`#terminal.integrated.profiles.windows#`");t.terminalPreferenceSchema={type:"object",properties:{"terminal.type":{type:"string",enum:["zsh","bash","sh","default"],default:"default",description:"%preference.terminal.typeDesc%"},"terminal.fontFamily":{type:"string"},"terminal.fontSize":{type:"number",default:12},"terminal.fontWeight":{type:"string",enum:["normal","bold"],default:400},"terminal.lineHeight":{type:"number",default:1},"terminal.cursorBlink":{type:"boolean",default:!1},"terminal.scrollback":{type:"number",default:1e3},"terminal.integrated.shellArgs.linux":{type:"array",default:[],description:"%preference.terminal.integrated.shellArgs.linuxDesc%",markdownDeprecationMessage:o},"terminal.integrated.shellArgs.osx":{type:"array",default:[],markdownDeprecationMessage:l},"terminal.integrated.shellArgs.windows":{type:"array",default:[],markdownDeprecationMessage:_},"terminal.integrated.profiles.windows":{restricted:!0,markdownDescription:(0,n.localize)("terminal.integrated.profiles.windows",'The Windows profiles to present when creating a new terminal via the terminal dropdown. Use the `path` property to automatically detect the shell\'s location. Or set the {1} property manually with an optional `args`.\n\nSet an existing profile to `null` to hide the profile from the list, for example: `"Ubuntu-20.04 (WSL)": null`.'),type:"object",default:{}},"terminal.integrated.profiles.osx":{restricted:!0,markdownDescription:(0,n.localize)("terminal.integrated.profile.osx",'The macOS profiles to present when creating a new terminal via the terminal dropdown. Set the `path` property manually with an optional `args`.\n\nSet an existing profile to `null` to hide the profile from the list, for example: `"bash": null`.'),type:"object",default:{bash:{path:"bash",args:["-l"]},zsh:{path:"zsh",args:["-l"]},fish:{path:"fish",args:["-l"]},tmux:{path:"tmux"},pwsh:{path:"pwsh"}}},"terminal.integrated.profiles.linux":{restricted:!0,markdownDescription:(0,n.localize)("terminal.integrated.profile.linux",'The Linux profiles to present when creating a new terminal via the terminal dropdown. Set the `path` property manually with an optional `args`.\n\nSet an existing profile to `null` to hide the profile from the list, for example: `"bash": null`.'),type:"object",default:{bash:{path:"bash",icon:"terminal-bash"},zsh:{path:"zsh"},fish:{path:"fish"},tmux:{path:"tmux",icon:"terminal-tmux"},pwsh:{path:"pwsh",icon:"terminal-powershell"}}},"terminal.integrated.defaultProfile.linux":{restricted:!0,markdownDescription:(0,n.localize)("terminal.integrated.defaultProfile.linux","The default profile used on Linux. This setting will currently be ignored if either {0} or {1} are set."),type:["string","null"],default:null},"terminal.integrated.defaultProfile.osx":{restricted:!0,markdownDescription:(0,n.localize)("terminal.integrated.defaultProfile.osx","The default profile used on macOS. This setting will currently be ignored if either {0} or {1} are set."),type:["string","null"],default:null},"terminal.integrated.defaultProfile.windows":{restricted:!0,markdownDescription:(0,n.localize)("terminal.integrated.defaultProfile.windows","The default profile used on Windows. This setting will currently be ignored if either {0} or {1} are set."),type:["string","null"],default:null},"terminal.integrated.copyOnSelection":{type:"boolean",description:"%preference.terminal.integrated.copyOnSelectionDesc%",default:!1},"terminal.integrated.localEchoEnabled":{type:"boolean",description:"%preference.terminal.integrated.localEchoDesc%",default:!0},"terminal.integrated.localEchoLatencyThreshold":{type:"number",description:"%preference.terminal.integrated.localEchoLatencyThresholdDesc%",default:30},"terminal.integrated.localEchoExcludePrograms":{type:"array",description:"%preference.terminal.integrated.localEchoExcludeProgramsDesc%",default:["vim","vi","nano","tmux"]},"terminal.integrated.localEchoStyle":{type:"string",description:"%preference.terminal.integrated.localEchoStyleDesc%",enum:["bold","dim","italic","underlined","inverted"],default:"dim"},"terminal.integrated.cursorStyle":{type:"string",description:"%preference.terminal.integrated.cursorStyleDesc%",enum:[t.TerminalCursorStyle.BLOCK,t.TerminalCursorStyle.LINE,t.TerminalCursorStyle.UNDERLINE],default:t.TerminalCursorStyle.BLOCK},"terminal.integrated.xtermRenderType":{type:"string",description:"%preference.terminal.integrated.xtermRenderTypeDesc%",enum:[r.RenderType.WebGL,r.RenderType.Canvas,r.RenderType.Dom],default:r.RenderType.WebGL},"terminal.integrated.enablePersistentSessions":{type:"boolean",description:"%preference.terminal.integrated.enablePersistentSessionDesc%",default:!0}}}},38352:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},85504:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ITerminalProfileInternalService=t.ITerminalProfileService=void 0,t.terminalProfileArgsMatch=e,t.ITerminalProfileService=Symbol("ITerminalProfileService"),t.ITerminalProfileInternalService=Symbol("ITerminalProfileInternalService");function e(n,r){if(!n&&!r)return!0;if(typeof n=="string"&&typeof r=="string")return n===r;if(Array.isArray(n)&&Array.isArray(r)){if(n.length!==r.length)return!1;for(let o=0;o<n.length;o++)if(n[o]!==r[o])return!1;return!0}return!1}},30354:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IPtyService=t.IExternalTerminalService=t.ITerminalServiceClient=t.ITerminalProcessService=t.ITerminalNodeService=t.PTY_SERVICE_PROXY_SERVER_PORT=t.PTY_SERVICE_PROXY_CALLBACK_PROTOCOL=t.PTY_SERVICE_PROXY_PROTOCOL=t.ITerminalProcessPath=t.ITerminalServicePath=void 0,t.asTerminalIcon=e,t.ITerminalServicePath="ITerminalServicePath",t.ITerminalProcessPath="ITerminalProcessPath",t.PTY_SERVICE_PROXY_PROTOCOL="PTY_SERVICE_PROXY_PROTOCOL",t.PTY_SERVICE_PROXY_CALLBACK_PROTOCOL="PTY_SERVICE_PROXY_CALLBACK_PROTOCOL",t.PTY_SERVICE_PROXY_SERVER_PORT=10111,t.ITerminalNodeService=Symbol("ITerminalNodeService"),t.ITerminalProcessService=Symbol("ITerminalProcessService"),t.ITerminalServiceClient=Symbol("ITerminalServiceClient"),t.IExternalTerminalService=Symbol("IExternalTerminalService");function e(n){if(!(!n||typeof n=="string"))return"id"in n?{id:n.id,color:n.color}:n}t.IPtyService=Symbol("IPtyService")},2853:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ITerminalRenderProvider=t.ItemType=void 0;var e;(function(n){n[n.info=0]="info",n[n.add=1]="add"})(e||(t.ItemType=e={})),t.ITerminalRenderProvider=Symbol("TerminalRenderProvider")},59381:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},18171:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ITerminalRestore=void 0,t.ITerminalRestore=Symbol("ITerminalRestore")},38022:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ITerminalInternalService=t.ITerminalService=void 0,t.ITerminalService=Symbol("ITerminalService"),t.ITerminalInternalService=Symbol("ITerminalInternalService")},59926:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MAX_LENGTH=t.lineAndColumnClauseGroupCount=t.unixLineAndColumnMatchIndex=t.winLineAndColumnMatchIndex=t.winLocalLinkClause=t.unixLocalLinkClause=t.winExcludedPathCharactersClause=t.winPathSeparatorClause=t.winPathPrefix=t.winDrivePrefix=t.excludedPathCharactersClause=t.pathSeparatorClause=t.pathPrefix=void 0,t.getLineAndColumnClause=r,t.extractLineInfoFromMatch=o;class e{constructor(){this.ri=0,this.ci=0,this.rei=0,this.cei=0}r(){return`(?<row${this.ri++}>\\d+)`}c(){return`(?<col${this.ci++}>\\d+)`}re(){return`(?<rowEnd${this.rei++}>\\d+)`}ce(){return`(?<colEnd${this.cei++}>\\d+)`}}t.pathPrefix="(\\.\\.?|\\~)",t.pathSeparatorClause="\\/",t.excludedPathCharactersClause="[^\\0\\s!`&*()\\[\\]'\":;\\\\]",t.winDrivePrefix="(?:\\\\\\\\\\?\\\\)?[a-zA-Z]:",t.winPathPrefix="("+t.winDrivePrefix+"|\\.\\.?|\\~)",t.winPathSeparatorClause="(\\\\|\\/)",t.winExcludedPathCharactersClause="[^\\0<>\\?\\|\\/\\s!`&*()\\[\\]'\":;]",t.unixLocalLinkClause="(("+t.pathPrefix+"|("+t.excludedPathCharactersClause+")+)?("+t.pathSeparatorClause+"("+t.excludedPathCharactersClause+")+)+)",t.winLocalLinkClause="(("+t.winPathPrefix+"|("+t.winExcludedPathCharactersClause+")+)?("+t.winPathSeparatorClause+"("+t.winExcludedPathCharactersClause+")+)+)";const n="";function r(){const l=new e;return[`(?::|#| |['"],|, )${l.r()}([:.]${l.c()}(?:-(?:${l.re()}\\.)?${l.ce()})?)?`+n,`['"]?(?:,? |: ?| on )lines? ${l.r()}(?:-${l.re()})?(?:,? (?:col(?:umn)?|characters?) ${l.c()}(?:-${l.ce()})?)?`+n,`:? ?[\\[\\(]${l.r()}(?:(?:, ?|:)${l.c()})?[\\]\\)]`+n].join("|").replace(/ /g,"[\xA0 ]")}t.winLineAndColumnMatchIndex=12,t.unixLineAndColumnMatchIndex=11,t.lineAndColumnClauseGroupCount=6,t.MAX_LENGTH=2e3;function o(l){const _={};if(l[1]&&(_.filePath=l[1]),l.groups)for(const[v,m]of Object.entries(l.groups))m&&(v.startsWith("row")?v.replace("row","")==="End"?_.endLine=parseInt(m,10):_.line=parseInt(m,10):v.startsWith("col")&&(v.replace("col","")==="End"?_.endColumn=parseInt(m,10):_.column=parseInt(m,10)));return _}},30076:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ITerminalTheme=void 0,t.ITerminalTheme=Symbol("ITerminalTheme")},16992:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.generateSessionId=t.apiActionViewUuid=t.userActionViewUuid=void 0;const n=e(43718);let r=0;function o(){return r++}const l=()=>`UI_View_${(0,n.uuid)()}${o()}`;t.userActionViewUuid=l;const _=()=>`API_View_${(0,n.uuid)()}${o()}`;t.apiActionViewUuid=_;const v=()=>(0,n.uuid)();t.generateSessionId=v},25655:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RenderType=void 0;var e;(function(n){n.Canvas="canvas",n.WebGL="webgl",n.Dom="dom"})(e||(t.RenderType=e={}))},6487:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),e(85608).__exportStar(e(26405),t)},92297:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestingExplorerTree=void 0;const n=e(85608),r=n.__importStar(e(14041)),o=e(91416),l=e(41869),_=e(52416),v=e(72383),m=e(85941),p=e(95381),s=e(16558),h=e(97581),a=n.__importDefault(e(30272)),g=()=>{const u=(0,l.useInjectable)(s.TestTreeViewModelToken),d=(0,l.useInjectable)(v.TestServiceToken),E=(0,l.useInjectable)(l.CommandService),f=(0,l.useInjectable)(_.IIconService),[c,y]=(0,r.useState)([]),b=r.default.useCallback(w=>(0,h.getIconWithColor)(w.state),[]),A=r.default.useCallback(w=>({label:w.label,renderLabel:(0,l.transformLabelWithCodicon)(w.label,{verticalAlign:"middle",marginRight:"4px",marginLeft:"4px"},f.fromString.bind(f)),icon:"",get iconClassName(){return b(w)},expandable:w.test.expand!==0,rawItem:w,sortText:w.sortText,get children(){if(w.test.expand===1||w.children){const T=u.getTestTreeItem(w.test.item.extId);return Array.from((0,l.map)(T?.children||[],A))}return null}}),[]);(0,r.useEffect)(()=>l.Event.debounce(u.onUpdate,()=>{},500)(()=>{for(const T of u.roots)if(T.depth===0&&T.children.size>0){let R=[];for(const M of T.children)R.push(A(M));R=R.sort((M,O)=>(M.sortText||M.label).localeCompare(O.sortText||O.label)),y(R)}}).dispose,[u]),(0,r.useEffect)(()=>{var w;if(u.treeHandlerApi){const T=u.treeHandlerApi.getModel();((w=T.root.children)===null||w===void 0?void 0:w.length)===0&&T.root.refresh()}},[c]);const S=r.default.useCallback(w=>w?w.children&&w.children.length>0?w.children:[]:null,[]),D=r.default.useCallback((w,T)=>{const{rawItem:R}=w.raw;switch(T.command){case m.RuntTestCommand.id:d.runTests({tests:R.tests,group:2});break;case m.DebugTestCommand.id:d.runTests({tests:R.tests,group:4});break;case m.GoToTestCommand.id:E.executeCommand(m.GoToTestCommand.id,R.test.item.extId);break}},[]),I=w=>{u.setTreeHandlerApi(w)};return r.default.createElement("div",{className:"monaco-workbench monaco-component"},c.length>0&&r.default.createElement(o.BasicRecycleTree,{treeData:c,onReady:I,itemClassname:a.default.item_label,height:900,resolveChildren:S,inlineMenus:p.TestingExplorerInlineMenus,inlineMenuActuator:D}))};t.TestingExplorerTree=g},76028:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestingView=void 0;const n=e(85608),r=n.__importStar(e(14041)),o=e(41869),l=e(25918),_=e(1149),v=e(93899),m=e(91527),p=e(92297),s=n.__importDefault(e(30272)),h=()=>{const a=(0,o.useInjectable)(v.AbstractContextMenuService),g=(0,o.useInjectable)(o.ViewContextKeyRegistry),u=(0,o.useInjectable)(_.LayoutViewSizeConfig),[d,E]=(0,r.useState)();return(0,r.useEffect)(()=>{const f=a.createMenu({id:v.MenuId.ViewTitle,contextKeyService:g.getContextKeyService("workbench.view.testing")});E(f)},[]),r.default.createElement("div",{className:s.default.testing_container},r.default.createElement(m.TitleBar,{title:(0,o.localize)("test.title"),height:u.panelTitleBarHeight,menubar:d?r.default.createElement(l.InlineMenuBar,{menus:d}):null}),r.default.createElement(p.TestingExplorerTree,null))};t.TestingView=h},97581:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getIconWithColor=t.testingRefreshTests=t.testingRunAllIcon=t.testingRunIcon=t.testingStatesToIcons=t.testStatesToIconColors=t.defaultIconColor=void 0;const n=e(41869);t.defaultIconColor="testing_icon_iconPassed",t.testStatesToIconColors={6:"testing_icon_iconFailed",4:"testing_icon_iconErrored",3:t.defaultIconColor,1:"testing_icon_iconQueued",0:"testing_icon_iconUnset",5:"testing_icon_iconUnset"},t.testingStatesToIcons=new Map([[6,(0,n.getExternalIcon)("issues")],[4,(0,n.getExternalIcon)("error")],[3,(0,n.getExternalIcon)("pass")],[1,(0,n.getExternalIcon)("history")],[2,(0,n.getExternalIcon)("loading")+" kt-icon-loading"],[5,(0,n.getExternalIcon)("debug-step-over")],[0,(0,n.getExternalIcon)("circle-outline")]]),t.testingRunIcon=(0,n.getExternalIcon)("run"),t.testingRunAllIcon=(0,n.getExternalIcon)("run-all"),t.testingRefreshTests=(0,n.getExternalIcon)("refresh");const r=o=>`${t.testingStatesToIcons.get(o)} ${t.testStatesToIconColors[o]}`||"";t.getIconWithColor=r},26874:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestingModule=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(72383),_=e(20215),v=e(48385),m=e(57879),p=e(16558),s=e(43122),h=e(89872),a=e(80162),g=e(66724),u=e(4836),d=e(86457),E=e(76388);e(8758),e(11009),e(61164);let f=class extends o.BrowserModule{constructor(){super(...arguments),this.providers=[E.TestingContribution,{token:l.TestServiceToken,useClass:d.TestServiceImpl},{token:p.TestTreeViewModelToken,useClass:g.TestTreeViewModelImpl},{token:_.TestProfileServiceToken,useClass:a.TestProfileServiceImpl},{token:v.TestResultServiceToken,useClass:u.TestResultServiceImpl},{token:m.TestingPeekOpenerServiceToken,useClass:h.TestingPeekOpenerServiceImpl},{token:l.TestPeekMessageToken,useClass:s.TestingPeekMessageServiceImpl}]}};t.TestingModule=f,t.TestingModule=f=n.__decorate([(0,r.Injectable)()],f)},23993:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestMessageContainer=void 0;const n=e(85608),r=n.__importStar(e(14041)),o=n.__importDefault(e(43144)),l=e(41869),_=e(43718),v=e(57517),m=e(93374),p=e(72383),s=n.__importDefault(e(30272));var h;(function(y){y[y.DIFF=0]="DIFF",y[y.PLANTTEXT=1]="PLANTTEXT",y[y.MARKDOWN=2]="MARKDOWN"})(h||(h={}));const g={...{scrollBeyondLastLine:!1,scrollbar:{verticalScrollbarSize:14,horizontal:"auto",useShadows:!0,verticalHasArrows:!1,horizontalHasArrows:!1,alwaysConsumeMouseWheel:!1},fixedOverflowWidgets:!0,readOnly:!0,minimap:{enabled:!1}},enableSplitViewResizing:!0,renderOverviewRuler:!1,ignoreTrimWhitespace:!1,renderSideBySide:!0},u=y=>y?y.messages[y.messageIndex]:{message:"",actual:"",expected:""},d=({root:y,children:b})=>o.default.createPortal(b,y),E=y=>{const b=(0,l.useInjectable)(l.IOpenerService),A=(0,r.useRef)(null),[S,D]=(0,r.useState)(""),[I,w]=(0,r.useState)(null),T=R=>{R&&R.scheme===_.Schemes.command&&b.open(R)};return r.default.useEffect(()=>{if(A.current){const{dto:R}=y;let M=A.current.shadowRoot;M||(M=A.current.attachShadow({mode:"open"})),I||w(M);const O=u(R).message,x=O?O.value.replace(/\t/g,""):"";D(x)}},[y.dto]),r.default.createElement("div",{ref:A,className:s.default.preview_markdown},I&&r.default.createElement(d,{root:I},r.default.createElement(m.Markdown,{content:S,onLinkClick:T})))},f=r.default.memo(y=>{const{dto:b}=y,A=(0,l.useInjectable)(v.IEditorDocumentModelService),S=(0,l.useInjectable)(v.EditorCollectionService),D=(0,r.useRef)(null);return(0,r.useEffect)(()=>{if(!b)return;let I;const{expectedUri:w,actualUri:T}=b;return Promise.all([A.createModelReference(w),A.createModelReference(T)]).then(R=>{const[M,O]=R,{actual:x,expected:k}=u(b);I=S.createDiffEditor(D.current,{...(0,v.getSimpleEditorOptions)(),...g});const F=M.instance.getMonacoModel(),L=O.instance.getMonacoModel();F.setValue(k),L.setValue(x),I.compare(M,O),I.originalEditor.monacoEditor.setModel(F),I.modifiedEditor.monacoEditor.setModel(L)}),()=>{I&&I.dispose()}},[]),r.default.createElement("div",{ref:D,style:{height:"inherit"}})}),c=()=>{const y=(0,l.useInjectable)(p.TestPeekMessageToken),[b,A]=(0,r.useState)(),[S,D]=(0,r.useState)();(0,r.useEffect)(()=>{const w=new _.Disposable;return w.addDispose(y.onDidReveal(async T=>{D(T);const R=u(T);T.isDiffable?A(h.DIFF):T.isDiffable||typeof R.message=="string"?A(h.PLANTTEXT):A(h.MARKDOWN)})),()=>{w.dispose()}},[]);const I=r.default.useCallback(()=>{if(!S)return null;if(b===h.DIFF)return r.default.createElement(f,{dto:S});if(b===h.MARKDOWN)return r.default.createElement(E,{dto:S});{const w=u(S).message;return r.default.createElement("div",{className:s.default.preview_text},typeof w=="string"?w:w.value)}},[S]);return r.default.createElement("div",{className:s.default.test_output_peek_message_container,style:{height:"100%"}},I())};t.TestMessageContainer=c},1031:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestOutputPeekContribution=t.TestDto=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(43718),_=e(44781),v=e(48385),m=e(57879),p=e(92597),s=e(65482),h=e(4836),a=e(33429),g=e(89872),u=e(33218);class d{get isDiffable(){const c=this.messages[this.messageIndex];return c.type===0&&(0,p.isDiffable)(c)}constructor(c,y,b,A){var S;this.resultId=c,this.taskIndex=b,this.messageIndex=A,this.test=y.item,this.messages=y.tasks[b].messages,this.messageIndex=A;const D={messageIndex:A,resultId:c,taskIndex:b,testExtId:y.item.extId};this.expectedUri=(0,a.buildTestUri)({...D,type:2}),this.actualUri=(0,a.buildTestUri)({...D,type:1}),this.messageUri=(0,a.buildTestUri)({...D,type:0});const I=this.messages[this.messageIndex];this.revealLocation=(S=I.location)!==null&&S!==void 0?S:y.item.uri&&y.item.range?{uri:y.item.uri,range:_.Range.lift(y.item.range)}:void 0}}t.TestDto=d;let E=class{constructor(c){this.editor=c,this.disposer=new l.Disposable,this.peekView=new l.MutableDisposable,this.testContextKey=this.injector.get(s.TestContextKey,[this.editor.monacoEditor._contextKeyService])}allMessages(c){const y=[];for(const b of c)for(const A of b.tests)for(let S=0;S<A.tasks.length;S++)for(let D=0;D<A.tasks[S].messages.length;D++)y.push({result:b,test:A,taskIndex:S,messageIndex:D});return y}contribute(){return this.disposer.addDispose(this.editor.monacoEditor.onDidChangeModel(c=>{var y;((y=c.newModelUrl)===null||y===void 0?void 0:y.scheme)===o.Schemes.file&&this.testingPeekOpenerService.setPeekContrib(c.newModelUrl,this)})),this.disposer.addDispose(l.Disposable.create(()=>{this.editor.currentUri&&this.testingPeekOpenerService.delPeekContrib(this.editor.currentUri)})),this.disposer}toggle(c){var y;((y=this.currentPeekUri)===null||y===void 0?void 0:y.toString())===c.toString()?this.peekView.clear():this.show(c)}openCurrentInEditor(){var c;const y=(c=this.peekView.value)===null||c===void 0?void 0:c.current;y&&(y.isDiffable?this.commandService.executeCommand(o.EDITOR_COMMANDS.API_OPEN_DIFF_EDITOR_COMMAND_ID,y.expectedUri,y.actualUri,"Expected <-> Actual"):this.commandService.executeCommand(o.EDITOR_COMMANDS.OPEN_RESOURCE.id,y.messageUri,{preview:!1,focus:!0}))}removePeek(){var c;(c=this.peekView.value)===null||c===void 0||c.hide(),this.peekView.clear()}async show(c){const y=this.testResultService.retrieveTest(c);y&&(this.peekView.value||(this.peekView.value=this.injector.get(u.TestingOutputPeek,[this.editor.monacoEditor,this.contextKeyService]),this.disposer.addDispose(this.peekView.value.onDidClose(()=>{this.testContextKey.contextTestingIsPeekVisible.set(!1),this.currentPeekUri=void 0,this.peekView.value=void 0})),this.testContextKey.contextTestingIsPeekVisible.set(!0),this.peekView.value.create()),this.peekView.value.setModel(y),this.currentPeekUri=c)}async openAndShow(c){var y;const b=this.testResultService.retrieveTest(c);if(!b)return;if(!b.revealLocation||b.revealLocation.uri.toString()===((y=this.editor.currentUri)===null||y===void 0?void 0:y.toString()))return this.show(c);const A=this.testingPeekOpenerService.peekControllerMap.get(c.toString());A&&(this.removePeek(),await this.commandService.executeCommand(o.EDITOR_COMMANDS.OPEN_RESOURCE.id,l.URI.parse(c.toString()),{preview:!0,focus:!0}),A.show(c))}next(){var c;const y=(c=this.peekView.value)===null||c===void 0?void 0:c.current;if(!y)return;let b=!1;const A=this.allMessages(this.testResultService.results);for(const{messageIndex:S,taskIndex:D,result:I,test:w}of A)if(b){this.openAndShow((0,a.buildTestUri)({type:0,messageIndex:S,taskIndex:D,resultId:I.id,testExtId:w.item.extId}));return}else y.test.extId===w.item.extId&&y.messageIndex===S&&y.taskIndex===D&&y.resultId===I.id&&(b=!0)}previous(){var c;const y=(c=this.peekView.value)===null||c===void 0?void 0:c.current;if(!y)return;let b;const A=this.allMessages(this.testResultService.results);for(const S of A){if(y.test.extId===S.test.item.extId&&y.messageIndex===S.messageIndex&&y.taskIndex===S.taskIndex&&y.resultId===S.result.id){if(!b)return;this.openAndShow((0,a.buildTestUri)({type:0,messageIndex:b.messageIndex,taskIndex:b.taskIndex,resultId:b.result.id,testExtId:b.test.item.extId}));return}b=S}}};t.TestOutputPeekContribution=E,n.__decorate([(0,r.Autowired)(r.INJECTOR_TOKEN),n.__metadata("design:type",r.Injector)],E.prototype,"injector",void 0),n.__decorate([(0,r.Autowired)(v.TestResultServiceToken),n.__metadata("design:type",h.TestResultServiceImpl)],E.prototype,"testResultService",void 0),n.__decorate([(0,r.Autowired)(m.TestingPeekOpenerServiceToken),n.__metadata("design:type",g.TestingPeekOpenerServiceImpl)],E.prototype,"testingPeekOpenerService",void 0),n.__decorate([(0,r.Autowired)(o.IContextKeyService),n.__metadata("design:type",Object)],E.prototype,"contextKeyService",void 0),n.__decorate([(0,r.Autowired)(l.CommandService),n.__metadata("design:type",Object)],E.prototype,"commandService",void 0),t.TestOutputPeekContribution=E=n.__decorate([(0,r.Injectable)({multiple:!0}),n.__param(0,(0,r.Optional)()),n.__metadata("design:paramtypes",[Object])],E)},43122:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestingPeekMessageServiceImpl=void 0;const n=e(85608),r=e(76003),o=e(43718);let l=class extends o.Disposable{constructor(){super(...arguments),this._didReveal=new o.Emitter,this._visibilityChange=new o.Emitter,this.onDidReveal=this._didReveal.event,this.onVisibilityChange=this._visibilityChange.event}};t.TestingPeekMessageServiceImpl=l,t.TestingPeekMessageServiceImpl=l=n.__decorate([(0,r.Injectable)()],l)},89872:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestingPeekOpenerServiceImpl=void 0;const n=e(85608),r=e(76003),o=e(43718),l=e(54414),_=e(48385),v=e(33429),m=e(4836),p=(h,a)=>{for(let g=0;g<h.tasks.length;g++){const u=h.tasks[g];for(let d=0;d<u.messages.length;d++){const E=a(u,u.messages[d],d,g);if(E!==void 0)return E}}};let s=class extends o.Disposable{constructor(){super(...arguments),this.peekControllerMap=new Map}get currentUri(){var a;return(a=this.editorService.currentEditor)===null||a===void 0?void 0:a.currentUri}async showPeekFromUri(a,g){const u=this.editorService.currentEditor;this.lastUri=a;const d=(0,v.buildTestUri)(this.lastUri),E=this.peekControllerMap.get(u?.currentUri.toString());return E?.show(d),!0}getAnyCandidateMessage(){const a=new Set;for(const g of this.testResultService.results)for(const u of g.tests){if(a.has(u.item.extId))continue;a.add(u.item.extId);const d=p(u,(E,f,c,y)=>f.location&&{type:0,testExtId:u.item.extId,resultId:g.id,taskIndex:y,messageIndex:c,documentUri:f.location.uri});if(d)return d}}setPeekContrib(a,g){const u=a.toString();return this.peekControllerMap.has(u)||this.peekControllerMap.set(u,g),this}delPeekContrib(a){const g=a.toString();return this.peekControllerMap.delete(g),this}tryPeekFirstError(a,g,u){throw new Error("Method not implemented.")}async open(){let a;return a||(a=this.getAnyCandidateMessage()),a?this.showPeekFromUri(a):!1}closeAllPeeks(){for(const a of this.peekControllerMap.values())a.removePeek()}};t.TestingPeekOpenerServiceImpl=s,n.__decorate([(0,r.Autowired)(l.WorkbenchEditorService),n.__metadata("design:type",l.WorkbenchEditorService)],s.prototype,"editorService",void 0),n.__decorate([(0,r.Autowired)(_.TestResultServiceToken),n.__metadata("design:type",m.TestResultServiceImpl)],s.prototype,"testResultService",void 0),t.TestingPeekOpenerServiceImpl=s=n.__decorate([(0,r.Injectable)()],s)},33218:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestingOutputPeek=t.TestResultPanel=void 0;const n=e(85608),r=n.__importDefault(e(14041)),o=n.__importDefault(e(43144)),l=n.__importDefault(e(25873)),_=e(76003),v=e(41869),m=e(81878),p=e(25918),s=e(93899),h=e(48327),a=e(55666),g=e(72383),u=e(92597),d=e(23993),E=e(43122),f=e(3700);e(11009);const c=({viewState:b})=>r.default.createElement(m.SplitPanel,{overflow:"hidden",id:"testing-message-horizontal",flex:1,style:{height:"100%"}},r.default.createElement(d.TestMessageContainer,null),r.default.createElement(f.TestTreeContainer,{viewState:b}));t.TestResultPanel=c;let y=class extends h.PeekViewWidget{constructor(A,S){super(A,{isResizeable:!0}),this.editor=A,this.contextKeyService=S}_fillBody(A){this.setCssClass("testing-output-peek-container"),l.default.createRoot(A).render(r.default.createElement(v.ConfigProvider,{value:this.configContext},r.default.createElement(m.SplitPanel,{overflow:"hidden",id:"testing-message-horizontal",flex:1},r.default.createElement(d.TestMessageContainer,null),r.default.createElement(f.TestTreeContainer,null))))}async _fillActionBarOptions(A){const S=this.menuService.createMenu(s.MenuId.TestPeekTitleContext,this.contextKeyService);return new Promise(D=>{var I;l.default.createRoot(A).render(r.default.createElement(v.ConfigProvider,{value:this.configContext},r.default.createElement(p.InlineActionBar,{menus:S,type:"icon",context:[(I=this.editor.getModel())===null||I===void 0?void 0:I.uri.toString()]}))),D()})}applyClass(){}applyStyle(){}async showInPlace(A){const S=A.messages[A.messageIndex];this.setTitle((0,u.firstLine)(typeof S.message=="string"?S.message:(0,a.renderMarkdown)(S.message).element.outerText),A.test.label),setTimeout(()=>{this.testingPeekMessageService._didReveal.fire(A),this.testingPeekMessageService._visibilityChange.fire(!0)})}hide(){super.dispose(),this._bodyElement&&o.default.unmountComponentAtNode(this._bodyElement)}setModel(A){const S=A.messages[A.messageIndex],D=this.current;return S.type!==0||!A.revealLocation&&!D?Promise.resolve():(this.current=A,A.revealLocation?(this.show(A.revealLocation.range,(0,u.hintMessagePeekHeight)(S)),this.editor.focus(),this.showInPlace(A)):this.showInPlace(A))}};t.TestingOutputPeek=y,n.__decorate([(0,_.Autowired)(g.TestPeekMessageToken),n.__metadata("design:type",E.TestingPeekMessageServiceImpl)],y.prototype,"testingPeekMessageService",void 0),n.__decorate([(0,_.Autowired)(s.AbstractMenuService),n.__metadata("design:type",s.AbstractMenuService)],y.prototype,"menuService",void 0),n.__decorate([(0,_.Autowired)(v.AppConfig),n.__metadata("design:type",Object)],y.prototype,"configContext",void 0),t.TestingOutputPeek=y=n.__decorate([(0,_.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Object,Object])],y)},3700:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestTreeContainer=void 0;const n=e(85608),r=n.__importDefault(e(53373)),o=n.__importStar(e(14041)),l=e(97267),_=e(41869),v=e(43718),m=e(42912),p=e(41682),s=e(72383),h=e(48385),a=e(92597),g=e(33429),u=n.__importDefault(e(30272)),d=e(97581),E=e(1031);var f;(function(y){y.RESULT="result",y.TEST="test",y.TASK="task",y.MESSAGE="message"})(f||(f={}));const c=({viewState:y})=>{const b=(0,_.useInjectable)(h.TestResultServiceToken),A=(0,_.useInjectable)(s.TestPeekMessageToken),S=(0,_.useInjectable)(m.IIconService),[D,I]=(0,o.useState)([]);(0,o.useEffect)(()=>{const k=new v.Disposable;k.addDispose(A.onDidReveal(N=>{}));const F=b.results.map(N=>x(N));I(F);const L=b.onResultsChanged(N=>{const U=b.results.map(W=>x(W));I(U)});return k.addDispose(L),b.onTestChanged(N=>{const U=b.results.map(W=>x(W));I(U)}),k.dispose.bind(k)},[]);const w=o.default.useCallback(k=>k?k.children&&k.children.length>0?k.children:[]:null,[]),T=o.default.useCallback(k=>{const F=k.completedAt===void 0?2:(0,h.maxCountPriority)(k.counts);return(0,d.getIconWithColor)(F)},[]),R=o.default.useCallback((k,F,L)=>p.Iterable.map(F.tasks[0].messages,(N,U)=>{const{message:W,location:j}=F.tasks[L].messages[U],Q=(0,g.buildTestUri)({type:0,messageIndex:U,resultId:k.id,taskIndex:L,testExtId:F.item.extId}),$=new E.TestDto(k.id,F,L,U),Z=()=>{if(typeof W=="string")return(0,a.firstLine)(W);const G={type:f.MESSAGE,context:Q,label:(0,a.firstLine)(W.value),id:Q.toString(),icon:"",notExpandable:!1,location:j,rawItem:{...N,dto:$}};return(0,a.parseMarkdownText)(W.value).then(V=>{G.label=(0,a.firstLine)(V)}).catch(()=>{}),G.label};return{type:f.MESSAGE,context:Q,label:Z(),id:Q.toString(),icon:"",notExpandable:!1,location:j,rawItem:{...N,dto:$}}}),[]),M=o.default.useCallback((k,F)=>{const L=p.Iterable.filter(F.tasks,N=>N.messages.length>0);return p.Iterable.map(L,(N,U)=>{var W;const j=k.tasks[U];return{type:f.TASK,context:String(U),label:(W=j.name)!==null&&W!==void 0?W:(0,v.localize)("test.task.unnamed"),id:`${k.id}/${F.item.extId}/${U}`,icon:"",task:j,notExpandable:!1,rawItem:N,get children(){return Array.from(R(k,F,U))}}})},[]),O=o.default.useCallback(k=>{const F=p.Iterable.filter(k.tests,L=>L.tasks.some(N=>N.messages.length>0||N.state>=2));return p.Iterable.map(F,L=>{let N="";for(const Z of(0,h.resultItemParents)(k,L))Z!==L&&(N=N?Z.item.label+" \u203A "+N:Z.item.label);N=(0,_.transformLabelWithCodicon)(N,{},S.fromString.bind(S));const U=(0,_.transformLabelWithCodicon)(L.item.label,{verticalAlign:"middle",marginRight:"4px"},S.fromString.bind(S)),Q=L.tasks.filter(Z=>Z.messages.length>0).length>1?Array.from(M(k,L)):Array.from(R(k,L,0)),$=Q.length>0;return{type:f.TEST,context:L.item.extId,id:`${k.id}/${L.item.extId}`,renderLabel:U,label:L.item.label,icon:"",get iconClassName(){return(0,d.getIconWithColor)(L.computedState)},notExpandable:!1,expandable:$,description:"",rawItem:L,get children(){return Q}}})},[]),x=o.default.useCallback(k=>{const F={messages:[{location:void 0,message:{value:k.getOutput(),uris:{},isTrusted:!0,supportThemeIcons:!0},type:0}],messageIndex:0};return{type:f.RESULT,context:k.id,id:k.id,label:k.name,icon:"",get iconClassName(){return T(k)},expandable:!0,rawItem:{...k,dto:F},get children(){return Array.from(O(k))}}},[]);return o.default.createElement("div",{className:(0,r.default)(u.default.test_output_peek_tree,"monaco-editor")},o.default.createElement(l.BasicRecycleTree,{treeData:D,height:y?.height||500,resolveChildren:w,onClick:(k,F)=>{if(!F)return;const N=F.raw.rawItem;N.dto&&A._didReveal.fire(N.dto)}}))};t.TestTreeContainer=c},65482:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestContextKey=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(12288);let _=class{constructor(m){this._contextKeyService=this.globalContextKeyService.createScoped(m),this.contextTestingIsPeekVisible=l.TestingIsPeekVisible.bind(this.contextKeyScoped)}get contextKeyScoped(){return this._contextKeyService}};t.TestContextKey=_,n.__decorate([(0,r.Autowired)(o.IContextKeyService),n.__metadata("design:type",Object)],_.prototype,"globalContextKeyService",void 0),t.TestContextKey=_=n.__decorate([(0,r.Injectable)(),n.__param(0,(0,r.Optional)()),n.__metadata("design:paramtypes",[Object])],_)},17482:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestDecorationsContribution=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(93899),_=e(43718),v=n.__importStar(e(20868)),m=e(90684),p=e(19582),s=e(31324),h=e(72383),a=e(57879),g=e(33429),u=e(61090),d=e(48385),E=e(92597),f=e(97581),c=e(89872),y=e(4836),b=e(86457),{removeAnsiEscapeCodes:A}=_.strings,S="--testMessageDecorationFontFamily",D=(k,F)=>{var L;return((L=F.location)===null||L===void 0?void 0:L.uri.toString())===k.toString()},I=k=>({startLineNumber:k.startLineNumber,endLineNumber:k.startLineNumber,startColumn:0,endColumn:1}),w=(k,F)=>{var L,N;const U=(L=k[0])===null||L===void 0?void 0:L.item.range;if(!U)throw new Error("Test decorations can only be created for tests with a range");let W=0;const j=[];let Q,$=!1;for(let K=0;K<k.length;K++){const Y=k[K],X=F[K],re=(N=X?.computedState)!==null&&N!==void 0?N:0;j.push((0,u.labelForTestInState)(Y.item.label,re)),W=(0,E.maxPriority)(W,re),$=$||!!X?.retired,!Q&&X?.tasks.some(oe=>oe.messages.length)&&(Q=Y.item.extId)}const Z=k.length>1||k[0].children.size>0,G=W===0?Z?f.testingRunAllIcon:f.testingRunIcon:f.testingStatesToIcons.get(W),V=W===0?f.defaultIconColor:f.testStatesToIconColors[W];let H=`${G} ${V} testing-run-glyph`;return $&&(H+=" retired"),{range:I(U),options:{description:"run-test-decoration",isWholeLine:!0,glyphMarginClassName:H,stickiness:v.editor.TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges}}};class T extends _.Disposable{get line(){return this.editorDecoration.range.startLineNumber}constructor(F,L){super(),this.editorDecoration=F,this.editor=L,this.id=""}click(F){var L;return((L=F.target.position)===null||L===void 0?void 0:L.lineNumber)!==this.line||F.target.type!==p.MouseTargetType.GUTTER_GLYPH_MARGIN?!1:F.event.rightButton?(this.showContextMenu(F),!0):(this.defaultRun(),!0)}getContextMenuActions(F){return this.menuService.createMenu(l.MenuId.TestingGlyphMarginContext,this.contextKeyService)}showContextMenu(F){const L=this.getContextMenuActions(F),N=(0,l.generateMergedCtxMenu)({menus:L});L.dispose(),setTimeout(()=>{this.ctxMenuRenderer.show({anchor:F.event.browserEvent,menuNodes:N,args:this.getContextMenuArgs()})})}getGutterLabel(){}}n.__decorate([(0,r.Autowired)(o.IContextKeyService),n.__metadata("design:type",Object)],T.prototype,"contextKeyService",void 0),n.__decorate([(0,r.Autowired)(l.AbstractMenuService),n.__metadata("design:type",l.AbstractMenuService)],T.prototype,"menuService",void 0),n.__decorate([(0,r.Autowired)(l.ICtxMenuRenderer),n.__metadata("design:type",l.ICtxMenuRenderer)],T.prototype,"ctxMenuRenderer",void 0);class R extends T{constructor(F,L){super(w(F.map(N=>N.test),F.map(N=>N.resultItem)),L),this.tests=F}merge(F,L){return this.tests.push({test:F,resultItem:L}),this.editorDecoration=w(this.tests.map(N=>N.test),this.tests.map(N=>N.resultItem)),this}getContextMenuArgs(){return this.tests.map(F=>F.test.item.extId)}defaultRun(){return this.testService.runTests({tests:this.tests.map(({test:F})=>F),group:2})}defaultDebug(){return this.testService.runTests({tests:this.tests.map(({test:F})=>F),group:4})}}n.__decorate([(0,r.Autowired)(h.TestServiceToken),n.__metadata("design:type",b.TestServiceImpl)],R.prototype,"testService",void 0);let M=class extends T{constructor(F,L,N){super(w([F],[N]),L),this.test=F,this.resultItem=N}merge(F,L){return this.injector.get(R,[[{test:this.test,resultItem:this.resultItem},{test:F,resultItem:L}],this.editor])}getContextMenuArgs(){return[this.test.item.extId]}defaultRun(){return this.testService.runTests({tests:[this.test],group:2})}defaultDebug(){return this.testService.runTests({tests:[this.test],group:4})}};n.__decorate([(0,r.Autowired)(r.INJECTOR_TOKEN),n.__metadata("design:type",r.Injector)],M.prototype,"injector",void 0),n.__decorate([(0,r.Autowired)(h.TestServiceToken),n.__metadata("design:type",b.TestServiceImpl)],M.prototype,"testService",void 0),M=n.__decorate([(0,r.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Object,Object,Object])],M);let O=class{get monacoEditor(){return this.editor.monacoEditor}constructor(F,L,N,U){this.testMessage=F,this.messageUri=L,this.location=N,this.editor=U,this.decorationId=`testmessage-${(0,_.uuid)()}`,this.id="",this.codeEditorService=this.overrideServicesRegistry.getRegisteredService(o.ServiceNames.CODE_EDITOR_SERVICE);const W=F.type,j=typeof F.message=="string"?A(F.message):(0,E.parseMarkdownText)(typeof F.message=="object"&&"value"in F.message?F.message.value:String(F.message)).then(Z=>Z).catch(()=>typeof F.message=="object"&&"value"in F.message?F.message.value:String(F.message)),Q=typeof j=="string"?j:typeof F.message=="object"&&"value"in F.message?F.message.value:String(F.message);this.codeEditorService.registerDecorationType("test-message-decoration",this.decorationId,{after:{contentText:Q,color:`${u.testMessageSeverityColors[W]}`,fontSize:`${this.monacoEditor.getOption(s.EditorOption.fontSize)}px`,fontFamily:`var(${S})`,padding:"0px 12px 0px 24px"}},void 0,this.monacoEditor);const $=this.codeEditorService.resolveDecorationOptions(this.decorationId,!0);$.hoverMessage=typeof j=="string"?new m.MarkdownString().appendText(j):typeof F.message=="object"&&"value"in F.message?F.message:new m.MarkdownString().appendText(String(F.message)),$.afterContentClassName=`${$.afterContentClassName} testing-inline-message-content`,$.zIndex=10,$.className=`testing-inline-message-margin testing-inline-message-severity-${W}`,$.isWholeLine=!0,$.stickiness=v.editor.TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges,$.collapseOnReplaceEdit=!0,this.editorDecoration={range:I(N.range),options:$}}click(F){var L,N;if(F.event.rightButton||!this.messageUri)return!1;if(!((L=F.target.element)===null||L===void 0)&&L.className.includes(this.decorationId)){const U=this.testingPeekOpenerService.peekControllerMap.get((N=this.editor.currentUri)===null||N===void 0?void 0:N.toString());U&&U.toggle(this.messageUri)}return!1}dispose(){this.codeEditorService.removeDecorationType(this.decorationId)}};n.__decorate([(0,r.Autowired)(o.MonacoOverrideServiceRegistry),n.__metadata("design:type",o.MonacoOverrideServiceRegistry)],O.prototype,"overrideServicesRegistry",void 0),n.__decorate([(0,r.Autowired)(a.TestingPeekOpenerServiceToken),n.__metadata("design:type",c.TestingPeekOpenerServiceImpl)],O.prototype,"testingPeekOpenerService",void 0),O=n.__decorate([(0,r.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Object,Object,Object,Object])],O);let x=class{get currentUri(){return this.editor.currentUri}constructor(F){this.editor=F,this.disposer=new _.Disposable,this.invalidatedMessages=new WeakSet,this.lastDecorations=[]}contribute(){return this.setDecorations(this.currentUri),this.disposer.addDispose(this.editor.monacoEditor.onDidChangeModel(F=>{this.setDecorations(F.newModelUrl||void 0)})),this.disposer.addDispose(this.editor.monacoEditor.onDidChangeModelContent(F=>{if(!this.currentUri)return;let L=!1;for(const N of F.changes)for(const U of this.lastDecorations)U instanceof O&&U.location.range.startLineNumber>=N.range.startLineNumber&&U.location.range.endLineNumber<=N.range.endLineNumber&&(this.invalidatedMessages.add(U.testMessage),L=!0);L&&this.setDecorations(this.currentUri)})),this.disposer.addDispose(this.editor.monacoEditor.onContextMenu(F=>(F.event.preventDefault(),F.event.stopPropagation(),!1))),this.disposer.addDispose(this.editor.monacoEditor.onMouseDown(F=>{for(const L of this.lastDecorations)if(L.click(F)){F.event.stopPropagation();return}})),this.disposer.addDispose(this.testResultService.onTestChanged(({item:F})=>{this.currentUri&&F.item.uri&&F.item.uri.toString()===this.currentUri.toString()&&this.setDecorations(this.currentUri)})),this.disposer.addDispose(o.Event.any(this.testResultService.onResultsChanged,this.testService.onDidProcessDiff)(()=>this.setDecorations(this.currentUri))),this.disposer}setDecorations(F){if(!F){this.clearDecorations();return}this.editor.monacoEditor.changeDecorations(L=>{var N;const U=[];for(const j of this.testService.collection.all){if(!j.item.range||((N=j.item.uri)===null||N===void 0?void 0:N.toString())!==F.toString())continue;const Q=this.testResultService.getStateById(j.item.extId),$=j.item.range.startLineNumber,Z=Q?.[1],G=U.findIndex(V=>V instanceof T&&V.line===$);G!==-1?U[G]=U[G].merge(j,Z):U.push(this.injector.get(M,[j,this.editor.monacoEditor,Q?.[1]]))}const W=this.testResultService.results[0];if(W instanceof d.TestResultImpl)for(const j of W.tests)for(let Q=0;Q<j.tasks.length;Q++){const $=j.tasks[Q];for(let Z=0;Z<$.messages.length;Z++){const G=$.messages[Z];if(!this.invalidatedMessages.has(G)&&D(F,G)){const V=G.type===1?void 0:(0,g.buildTestUri)({type:1,messageIndex:Z,taskIndex:Q,resultId:W.id,testExtId:j.item.extId});U.push(this.injector.get(O,[G,V,G.location,this.editor]))}}}L.deltaDecorations(this.lastDecorations.map(j=>j.id),U.map(j=>j.editorDecoration)).forEach((j,Q)=>U[Q].id=j),this.lastDecorations=U})}clearDecorations(){this.lastDecorations.length&&this.editor.monacoEditor.changeDecorations(F=>{for(const L of this.lastDecorations)F.removeDecoration(L.id);this.lastDecorations=[]})}};t.TestDecorationsContribution=x,n.__decorate([(0,r.Autowired)(h.TestServiceToken),n.__metadata("design:type",b.TestServiceImpl)],x.prototype,"testService",void 0),n.__decorate([(0,r.Autowired)(d.TestResultServiceToken),n.__metadata("design:type",y.TestResultServiceImpl)],x.prototype,"testResultService",void 0),n.__decorate([(0,r.Autowired)(r.INJECTOR_TOKEN),n.__metadata("design:type",r.Injector)],x.prototype,"injector",void 0),t.TestDecorationsContribution=x=n.__decorate([(0,r.Injectable)({multiple:!0}),n.__param(0,(0,r.Optional)()),n.__metadata("design:paramtypes",[Object])],x)},80162:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestProfileServiceImpl=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(20215);let _=class extends o.Disposable{constructor(){super(...arguments),this.testProfiles=new Map}removeProfile(m,p){const s=this.testProfiles.get(m);if(s)if(p){const h=s.profiles.findIndex(a=>a.profileId!==p);h>=0&&s.profiles.splice(h,1)}else this.testProfiles.delete(m)}addProfile(m,p){let s=this.testProfiles.get(p.controllerId);s?(s.profiles.push(p),s.profiles.sort(l.sorter)):(s={profiles:[p],controller:m},this.testProfiles.set(p.controllerId,s))}getBaseDefaultsProfile(m){const p=[];for(const{profiles:s}of this.testProfiles.values()){const h=s.find(a=>a.group===m);h&&p.push(h)}return p}getControllerProfiles(m){const p=this.testProfiles.get(m);return p?p.profiles:[]}};t.TestProfileServiceImpl=_,t.TestProfileServiceImpl=_=n.__decorate([(0,r.Injectable)()],_)},66724:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestTreeViewModelImpl=t.TestTreeItem=void 0;const n=e(85608),r=e(76003),o=e(97267),l=e(41869),_=e(41682),v=e(72383),m=e(82423),p=e(48385),s=e(68755),h=e(4836),a={getOwnState:d=>d instanceof g?d.ownState:0,getCurrentComputedState:d=>d.state,setComputedState:(d,E)=>d.state=E,getCurrentComputedDuration:d=>d.duration,getOwnDuration:d=>d instanceof g?d.ownDuration:void 0,setComputedDuration:(d,E)=>d.duration=E,getChildren:d=>_.Iterable.filter(d.children.values(),E=>E instanceof g),*getParents(d){for(let E=d.parent;E;E=E.parent)yield E}};class g{constructor(E,f){this.test=E,this.parent=f,this.children=new Set,this.state=0,this.ownState=0,this.depth=this.parent?this.parent.depth+1:0,this.update=c=>{(0,s.applyTestItemUpdate)(this.test,c)},this.retired=!1}get label(){return this.test.item.label}get sortText(){return this.test.item.sortText}get tests(){return[this.test]}}t.TestTreeItem=g;let u=class extends l.Disposable{constructor(){super(),this.items=new Map,this.updateEmitter=new l.Emitter,this.onUpdate=this.updateEmitter.event,this.addDispose(this.testService.onDidProcessDiff(E=>this.applyDiff(E)));for(const E of this.testService.collection.all)this.didUpdateItem(this.createItem(E))}get roots(){const E=(0,l.map)(this.testService.collection.rootItems,f=>this.items.get(f.item.extId));return(0,l.filter)(E,l.isDefined)}getRevealDepth(E){return E.depth===0?0:void 0}createItem(E){const f=E.parent?this.items.get(E.parent):void 0;return new g(E,f)}findTestTreeItemByExtId(E){if(!this.treeHandlerApi||!E)return;const f=this.treeHandlerApi.getModel();if(!f)return;const c=f.root.flattenedBranch.find(b=>f.root.getTreeNodeById(b).raw.rawItem.test.item.extId===E);return f.root.getTreeNodeById(c)}didUnStoreItem(E,f){const c=f.parent;return c?.children.delete(f),E.delete(f.test.item.extId),c instanceof g&&(0,m.refreshComputedState)(a,c),f.children}async didUpdateItem(E){var f,c;(f=E.parent)===null||f===void 0||f.children.add(E),this.items.set(E.test.item.extId,E);const y=this.getRevealDepth(E);y!==void 0&&await this.expandElement(E,y);const b=(c=this.testResultService.getStateById(E.test.item.extId))===null||c===void 0?void 0:c[1];b&&(E.retired=b.retired,E.ownState=b.computedState,E.ownDuration=b.ownDuration,(0,m.refreshComputedState)(a,E))}async applyDiff(E){var f;for(const c of E)switch(c[0]){case 0:{const y=this.createItem(c[1]);await this.didUpdateItem(y);const b=this.findTestTreeItemByExtId((f=y.parent)===null||f===void 0?void 0:f.test.item.extId);b&&b.refresh();break}case 1:{const y=c[1],b=this.items.get(y.extId);if(!b)break;b.update(y);break}case 2:{const y=this.items.get(c[1]);if(!y)break;const b=this.findTestTreeItemByExtId(y.test.item.extId);b&&b.parent.unlinkItem(b);const A=[[y]];for(;A.length;)for(const S of A.pop())S instanceof g&&A.push(this.didUnStoreItem(this.items,S));break}}E.length!==0&&this.updateEmitter.fire()}listenTreeHandlerEvent(){if(this.treeHandlerApi){const E=this.treeHandlerApi.getModel();this.addDispose(E.root.watcher.on(o.TreeNodeEvent.DidChangeExpansionState,async f=>{if(f.expanded){const c=f.raw;if(c.rawItem.test.expand===0)return;await this.expandElement(c.rawItem,c.rawItem.depth),await f.refresh()}})),this.addDispose(this.testResultService.onTestChanged(({item:f})=>{if(f.ownComputedState===0){const b=this.testResultService.getStateById(f.item.extId);b&&(f=b[1])}const c=this.items.get(f.item.extId);if(!c)return;c.retired=f.retired,c.ownState=f.ownComputedState,c.ownDuration=f.ownDuration;const y=c.children.size?void 0:f.computedState;(0,m.refreshComputedState)(a,c,y),E.dispatchChange(),this.revealTreeById(f.item.extId,!1,!1),this.updateEmitter.fire()})),this.addDispose(this.testResultService.onResultsChanged(f=>{var c,y;if("removed"in f){for(const b of[...this.items.values()].sort((A,S)=>S.depth-A.depth)){const A=(c=this.testResultService.getStateById(b.test.item.extId))===null||c===void 0?void 0:c[1];b.ownDuration=A?.ownDuration,(0,m.refreshComputedState)(a,b,(y=A?.ownComputedState)!==null&&y!==void 0?y:0)}E.dispatchChange(),this.updateEmitter.fire()}}))}}revealTreeById(E,f=!0,c=!0){}getTestItem(E){return this.testService.collection.getNodeById(E)}getTestTreeItem(E){return this.items.get(E)}expandElement(E,f){return!(E instanceof g)||E.test.expand===0?Promise.resolve():this.testService.collection.expand(E.test.item.extId,f)}initTreeModel(){return Promise.resolve()}setTreeHandlerApi(E){this.treeHandlerApi=E,this.listenTreeHandlerEvent()}};t.TestTreeViewModelImpl=u,n.__decorate([(0,r.Autowired)(v.TestServiceToken),n.__metadata("design:type",Object)],u.prototype,"testService",void 0),n.__decorate([(0,r.Autowired)(p.TestResultServiceToken),n.__metadata("design:type",h.TestResultServiceImpl)],u.prototype,"testResultService",void 0),t.TestTreeViewModelImpl=u=n.__decorate([(0,r.Injectable)(),n.__metadata("design:paramtypes",[])],u)},4836:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestResultServiceImpl=t.isRunningTests=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(12288),_=e(20215),v=e(48385),m=e(33429),p=e(1031),{findFirstInSorted:s}=o.arrays,h=g=>g.results.length>0&&g.results[0].completedAt===void 0;t.isRunningTests=h;let a=class{get results(){return this._results}constructor(){this.changeResultEmitter=new o.Emitter,this.testChangeEmitter=new o.Emitter,this._results=[],this.onResultsChanged=this.changeResultEmitter.event,this.onTestChanged=this.testChangeEmitter.event,this.hasAnyResults=l.TestingHasAnyResults.bind(this.contextKeyService),this.isRunning=l.TestingIsRunning.bind(this.contextKeyService)}onComplete(u){this.resort(),this.updateIsRunning(),this.changeResultEmitter.fire({completed:u})}resort(){this.results.sort((u,d)=>{var E,f;return((E=d.completedAt)!==null&&E!==void 0?E:Number.MAX_SAFE_INTEGER)-((f=u.completedAt)!==null&&f!==void 0?f:Number.MAX_SAFE_INTEGER)})}updateIsRunning(){this.isRunning.set((0,t.isRunningTests)(this))}retrieveTest(u){var d;const E=(0,m.parseTestUri)(u);if(!E)return;const{resultId:f,testExtId:c,taskIndex:y,messageIndex:b}=E,A=(d=this.getResult(E.resultId))===null||d===void 0?void 0:d.getStateById(c);if(!(!A||!A.tasks[E.taskIndex]))return new p.TestDto(f,A,y,b)}createTestResult(u){if("targets"in u){const c=(0,o.uuid)(),y=new v.TestResultImpl(c,u);return this.addTestResult(y),y}let d;u.profile&&(d=this.testProfiles.getControllerProfiles(u.controllerId).find(y=>y.profileId===u.profile.id));const E={targets:[],exclude:u.exclude,isAutoRun:!1};d&&E.targets.push({profileGroup:d.group,profileId:d.profileId,controllerId:u.controllerId,testIds:u.include});const f=new v.TestResultImpl(u.id,E);return this.addTestResult(f),f}getResult(u){return this.results.find(d=>d.id===u)}addTestResult(u){if(u.completedAt===void 0)this.results.unshift(u);else{const d=s(this.results,E=>E.completedAt!==void 0&&E.completedAt<=u.completedAt);this.results.splice(d,0,u)}if(this.hasAnyResults.set(!0),u instanceof v.TestResultImpl)u.onComplete(()=>this.onComplete(u)),u.onChange(this.testChangeEmitter.fire,this.testChangeEmitter),this.isRunning.set(!0),this.changeResultEmitter.fire({started:u});else{this.changeResultEmitter.fire({inserted:u});for(const d of u.tests)for(const E of this.results)if(E===u){this.testChangeEmitter.fire({item:d,result:u,reason:2});break}else if(E.getStateById(d.item.extId)!==void 0)break}return u}getStateById(u){for(const d of this.results){const E=d.getStateById(u);if(E&&E.computedState!==0)return[d,E]}}clear(){const u=[],d=[];for(const E of this.results)E.completedAt!==void 0?d.push(E):u.push(E);this._results=u,u.length===0&&this.hasAnyResults.set(!1),this.changeResultEmitter.fire({removed:d})}};t.TestResultServiceImpl=a,n.__decorate([(0,r.Autowired)(_.TestProfileServiceToken),n.__metadata("design:type",Object)],a.prototype,"testProfiles",void 0),n.__decorate([(0,r.Autowired)(o.IContextKeyService),n.__metadata("design:type",Object)],a.prototype,"contextKeyService",void 0),t.TestResultServiceImpl=a=n.__decorate([(0,r.Injectable)(),n.__metadata("design:paramtypes",[])],a)},86457:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestServiceImpl=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(53736),_=e(12288),v=e(63067),m=e(72383),p=e(20215),s=e(48385),h=e(68755),a=e(95381),g=e(76028);let u=class extends o.Disposable{constructor(){super(),this.controllers=new Map,this.processDiffEmitter=new o.Emitter,this.viewId="",this.collection=new h.MainThreadTestCollection(this.expandTest.bind(this)),this.onDidProcessDiff=this.processDiffEmitter.event,this.controllerCount=_.TestingServiceProviderCount.bind(this.contextKeyService),this.canRefreshTests=_.TestingCanRefreshTests.bind(this.contextKeyService)}getTestController(E){return this.controllers.get(E)}async refreshTests(E){var f;const c=new o.CancellationTokenSource;try{E?await((f=this.controllers.get(E))===null||f===void 0?void 0:f.refreshTests(c.token)):await Promise.all([...this.controllers.values()].map(y=>y.refreshTests(c.token)))}finally{c.dispose(!0)}}registerTestingExplorerView(){return this.mainlayoutService.collectViewComponent,this.mainlayoutService.collectTabbarComponent([{id:a.TestingContainerId}],{iconClass:(0,o.getIcon)("test"),title:(0,o.localize)("test.title"),priority:1,containerId:"workbench.view.testing",component:g.TestingView,activateKeyBinding:"ctrlcmd+shift+t"},o.SlotLocation.view)}registerTestController(E,f){this.controllers.set(E,f),this.controllerCount.set(this.controllers.size),this.updateCanRefresh(),this.controllers.size>0&&!this.viewId&&(this.viewId=this.registerTestingExplorerView());const c=new o.Disposable;return c.addDispose(o.Disposable.create(()=>{const y=[];for(const b of this.collection.rootItems)b.controllerId===E&&y.push([2,b.item.extId]);this.publishDiff(E,y),this.controllers.delete(E)&&(this.controllerCount.set(this.controllers.size),this.updateCanRefresh(),this.controllers.size===0&&this.viewId&&this.mainlayoutService.disposeContainer(this.viewId))})),c.addDispose(f.canRefresh.onDidChange(this.updateCanRefresh,this)),c}updateCanRefresh(){this.canRefreshTests.set(Array.from(this.controllers.values()).some(E=>E.canRefresh))}async expandTest(E,f){var c;await((c=this.controllers.get(m.TestId.fromString(E).controllerId))===null||c===void 0?void 0:c.expandTest(E,f))}publishDiff(E,f){this.collection.apply(f),this.processDiffEmitter.fire(f)}runTests(E,f=o.CancellationToken.None){var c;const y={targets:[],exclude:(c=E.exclude)===null||c===void 0?void 0:c.map(A=>A.item.extId),isAutoRun:E.isAutoRun},b=this.testProfiles.getBaseDefaultsProfile(E.group);for(const A of b){const S=E.tests.filter(D=>(0,p.canUseProfileWithTest)(A,D)).map(D=>D.item.extId);y.targets.push({testIds:S,profileGroup:A.group,profileId:A.profileId,controllerId:A.controllerId})}return this.runResolvedTests(y,f)}async runResolvedTests(E,f){E.exclude||(E.exclude=[]);const c=this.resultService.createTestResult(E);try{const y=new o.CancellationTokenSource(f),b=E.targets.map(A=>{var S;return(S=this.controllers.get(A.controllerId))===null||S===void 0?void 0:S.runTests({runId:c.id,excludeExtIds:E.exclude.filter(D=>!A.testIds.includes(D)),profileId:A.profileId,controllerId:A.controllerId,testIds:A.testIds},y.token).catch(()=>{})});return await Promise.all(b),c}finally{c.markComplete()}}};t.TestServiceImpl=u,n.__decorate([(0,r.Autowired)(v.IMainLayoutService),n.__metadata("design:type",Object)],u.prototype,"mainlayoutService",void 0),n.__decorate([(0,r.Autowired)(s.TestResultServiceToken),n.__metadata("design:type",Object)],u.prototype,"resultService",void 0),n.__decorate([(0,r.Autowired)(p.TestProfileServiceToken),n.__metadata("design:type",Object)],u.prototype,"testProfiles",void 0),n.__decorate([(0,r.Autowired)(l.IContextKeyService),n.__metadata("design:type",Object)],u.prototype,"contextKeyService",void 0),t.TestServiceImpl=u=n.__decorate([(0,r.Injectable)(),n.__metadata("design:paramtypes",[])],u)},76388:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestingContribution=t.TestingOutputPeekDocumentProvider=void 0;const n=e(85608),r=e(76003),o=e(41869),l=e(30144),_=e(12288),v=e(93899),m=e(43718),p=e(57517),s=e(14951),h=e(63067),a=e(93835),g=e(81001),u=e(72383),d=e(85941),E=e(48385),f=e(57879),c=e(16558),y=e(33429),b=e(1031),A=e(89872),S=e(33218),D=e(17482),I=e(4836),w=e(86457);let T=class{constructor(){this._onDidChangeContent=new m.Emitter,this.onDidChangeContent=this._onDidChangeContent.event}provideEditorDocumentModelContent(O,x){const k=this.testResultService.retrieveTest(O);if(!k)return"";const F=k.messages[k.messageIndex];if(k.isDiffable||typeof F.message=="string")return"";const L=F.message;return L?L.value.replace(/\t/g,""):""}isReadonly(O){return!0}handlesScheme(O){return O===y.TEST_DATA_SCHEME}};t.TestingOutputPeekDocumentProvider=T,n.__decorate([(0,r.Autowired)(E.TestResultServiceToken),n.__metadata("design:type",I.TestResultServiceImpl)],T.prototype,"testResultService",void 0),t.TestingOutputPeekDocumentProvider=T=n.__decorate([(0,r.Injectable)()],T);let R=class{initialize(){this.testTreeViewModel.initTreeModel()}registerTestResultPanel(){if(this.layoutService.getTabbarHandler(l.TEST_RESULT_CONTAINER_ID))return;const O=this.layoutService.collectTabbarComponent([{id:l.TEST_RESULT_CONTAINER_ID,component:S.TestResultPanel}],{containerId:l.TEST_RESULT_CONTAINER_ID,title:(0,o.localize)("test.results"),hidden:!1},"bottom"),x=this.layoutService.getTabbarHandler(O);x?.activate()}onDidStart(){this.testResultService.onResultsChanged(()=>{this.registerTestResultPanel()}),this.testResultService.onTestChanged(()=>{this.registerTestResultPanel()})}registerCommands(O){O.registerCommand(d.RuntTestCommand,{execute:async F=>{const L=this.testTreeViewModel.getTestItem(F);L&&await this.testService.runTests({group:2,tests:[L]})}}),O.registerCommand(d.DebugTestCommand,{execute:async F=>{const L=this.testTreeViewModel.getTestItem(F);L&&await this.testService.runTests({group:4,tests:[L]})}}),O.registerCommand(d.GoToTestCommand,{execute:async F=>{const L=this.testTreeViewModel.getTestItem(F);if(!L)return;const{range:N,uri:U}=L.item;if(!U)return;const W=await this.filesystem.getFileStat(U.toString());if(W){if(W.type===o.FileType.Directory){this.commandService.executeCommand("revealInExplorer",U);return}W.type===o.FileType.File&&this.commandService.executeCommand(o.EDITOR_COMMANDS.OPEN_RESOURCE.id,o.URI.parse(U.toString()),{range:N,focus:!0})}},isVisible:()=>!1}),O.registerCommand(d.PeekTestError,{execute:async F=>{this.testingPeekOpenerService.open()},isVisible:()=>!1}),O.registerCommand(d.ClosePeekTest,{execute:async F=>{var L,N;if(F=F??((N=(L=this.editorService.currentEditor)===null||L===void 0?void 0:L.currentUri)===null||N===void 0?void 0:N.toString()),!F)return;const U=this.testingPeekOpenerService.peekControllerMap.get(F);U&&U.removePeek()},isVisible:()=>!1}),O.registerCommand(d.TestingRunCurrentFile,{execute:async()=>{x(2)}}),O.registerCommand(d.TestingDebugCurrentFile,{execute:async()=>{x(4)}});const x=F=>{var L;const N=this.editorService.currentEditor,U=N?.monacoEditor,W=U?.getPosition(),j=U?.getModel();if(!W||!j||!("uri"in j))return;const Q=j.uri.toString();for(const $ of this.testService.collection.all)((L=$.item.uri)===null||L===void 0?void 0:L.toString())===Q&&this.testService.runTests({tests:[$],group:F})};O.registerCommand(d.GoToPreviousMessage,{execute:async F=>{var L,N;if(F=F??((N=(L=this.editorService.currentEditor)===null||L===void 0?void 0:L.currentUri)===null||N===void 0?void 0:N.toString()),!F)return;const U=this.testingPeekOpenerService.peekControllerMap.get(F);U&&U.previous()}}),O.registerCommand(d.GoToNextMessage,{execute:async F=>{var L,N;if(F=F??((N=(L=this.editorService.currentEditor)===null||L===void 0?void 0:L.currentUri)===null||N===void 0?void 0:N.toString()),!F)return;const U=this.testingPeekOpenerService.peekControllerMap.get(F);U&&U.next()}}),O.registerCommand(d.ClearTestResults,{execute:async F=>{this.testResultService.clear(),this.commandService.executeCommand(d.ClosePeekTest.id,F)}}),O.registerCommand(d.OpenMessageInEditor,{execute:async F=>{var L,N;if(F=F??((N=(L=this.editorService.currentEditor)===null||L===void 0?void 0:L.currentUri)===null||N===void 0?void 0:N.toString()),!F)return;const U=this.testingPeekOpenerService.peekControllerMap.get(F);U&&U.openCurrentInEditor()}});const k=async F=>{const L=[...this.testService.collection.rootItems];L.length&&await this.testService.runTests({tests:L,group:F})};O.registerCommand(d.RefreshTestsCommand,{execute:async()=>{await this.testService.refreshTests()}}),O.registerCommand(d.RuntAllTestCommand,{execute:async()=>{await k(2)}}),O.registerCommand(d.DebugAllTestCommand,{execute:async()=>{await k(4)}})}registerKeybindings(O){O.registerKeybinding({command:d.ClosePeekTest.id,keybinding:"esc",when:_.TestingIsPeekVisible.equalsTo(!0)})}registerMenus(O){O.registerMenuItem(v.MenuId.TestingGlyphMarginContext,{command:d.RuntTestCommand.id,group:"1_has_decoration",order:1}),O.registerMenuItem(v.MenuId.TestingGlyphMarginContext,{command:d.DebugTestCommand.id,group:"1_has_decoration",order:2}),O.registerMenuItem(v.MenuId.TestPeekTitleContext,{command:d.GoToPreviousMessage.id,iconClass:d.GoToPreviousMessage.iconClass,group:"navigation",order:5}),O.registerMenuItem(v.MenuId.TestPeekTitleContext,{command:d.GoToNextMessage.id,iconClass:d.GoToNextMessage.iconClass,group:"navigation",order:6}),O.registerMenuItem(v.MenuId.TestPeekTitleContext,{command:d.ClearTestResults.id,iconClass:d.ClearTestResults.iconClass,group:"navigation",order:7}),O.registerMenuItem(v.MenuId.TestPeekTitleContext,{command:d.OpenMessageInEditor.id,iconClass:d.OpenMessageInEditor.iconClass,group:"navigation",order:9})}registerToolbarItems(O){O.registerItem({id:d.RefreshTestsCommand.id,command:d.RefreshTestsCommand.id,viewId:"workbench.view.testing",when:_.TestingCanRefreshTests.equalsTo(!0)}),O.registerItem({id:d.RuntAllTestCommand.id,command:d.RuntAllTestCommand.id,viewId:"workbench.view.testing"}),O.registerItem({id:d.DebugAllTestCommand.id,command:d.DebugAllTestCommand.id,viewId:"workbench.view.testing"}),O.registerItem({id:d.ClearTestResults.id,command:d.ClearTestResults.id,viewId:"workbench.view.testing"})}registerEditorFeature(O){O.registerEditorFeatureContribution({contribute:x=>this.injector.get(D.TestDecorationsContribution,[x]).contribute()}),O.registerEditorFeatureContribution({contribute:x=>this.injector.get(b.TestOutputPeekContribution,[x]).contribute()})}registerEditorDocumentModelContentProvider(O){O.registerEditorDocumentModelContentProvider(this.testingOutputPeekDocumentProvider)}registerEditorComponent(O){O.registerEditorComponent({uid:a.MARKDOWN_EDITOR_COMPONENT_ID,component:g.MarkdownEditorComponent,scheme:y.TEST_DATA_SCHEME}),O.registerEditorComponentResolver(y.TEST_DATA_SCHEME,(x,k)=>{k.push({type:p.EditorOpenType.component,componentId:a.MARKDOWN_EDITOR_COMPONENT_ID,weight:10})})}registerResource(O){O.registerResourceProvider({scheme:y.TEST_DATA_SCHEME,provideResource:async x=>({uri:x,icon:(0,o.getIcon)("file-text"),name:`Preview ${x.displayName}`})})}};t.TestingContribution=R,n.__decorate([(0,r.Autowired)(c.TestTreeViewModelToken),n.__metadata("design:type",Object)],R.prototype,"testTreeViewModel",void 0),n.__decorate([(0,r.Autowired)(s.IFileServiceClient),n.__metadata("design:type",Object)],R.prototype,"filesystem",void 0),n.__decorate([(0,r.Autowired)(o.CommandService),n.__metadata("design:type",Object)],R.prototype,"commandService",void 0),n.__decorate([(0,r.Autowired)(r.INJECTOR_TOKEN),n.__metadata("design:type",r.Injector)],R.prototype,"injector",void 0),n.__decorate([(0,r.Autowired)(f.TestingPeekOpenerServiceToken),n.__metadata("design:type",A.TestingPeekOpenerServiceImpl)],R.prototype,"testingPeekOpenerService",void 0),n.__decorate([(0,r.Autowired)(),n.__metadata("design:type",T)],R.prototype,"testingOutputPeekDocumentProvider",void 0),n.__decorate([(0,r.Autowired)(p.WorkbenchEditorService),n.__metadata("design:type",p.WorkbenchEditorService)],R.prototype,"editorService",void 0),n.__decorate([(0,r.Autowired)(u.TestServiceToken),n.__metadata("design:type",w.TestServiceImpl)],R.prototype,"testService",void 0),n.__decorate([(0,r.Autowired)(E.TestResultServiceToken),n.__metadata("design:type",I.TestResultServiceImpl)],R.prototype,"testResultService",void 0),n.__decorate([(0,r.Autowired)(h.IMainLayoutService),n.__metadata("design:type",Object)],R.prototype,"layoutService",void 0),t.TestingContribution=R=n.__decorate([(0,r.Injectable)(),(0,o.Domain)(o.ClientAppContribution,o.CommandContribution,p.BrowserEditorContribution,v.MenuContribution,o.KeybindingContribution,o.TabBarToolbarContribution)],R)},85941:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RefreshTestsCommand=t.DebugAllTestCommand=t.RuntAllTestCommand=t.OpenMessageInEditor=t.ClearTestResults=t.GoToNextMessage=t.GoToPreviousMessage=t.ClosePeekTest=t.PeekTestError=t.TestingDebugCurrentFile=t.TestingRunCurrentFile=t.GoToTestCommand=t.DebugTestCommand=t.RuntTestCommand=void 0;const n=e(41869);t.RuntTestCommand={id:"testing.run.test",label:"Run Test"},t.DebugTestCommand={id:"testing.debug.test",label:"Debug Test"},t.GoToTestCommand={id:"testing.goto.test",label:"Go To Test"},t.TestingRunCurrentFile={id:"testing.runCurrentFile",label:"Run Tests in Current File"},t.TestingDebugCurrentFile={id:"testing.debugCurrentFile",label:"Debug Tests in Current File"},t.PeekTestError={id:"testing.peek.test.error",label:"Peek Output"},t.ClosePeekTest={id:"testing.peek.test.close",label:"Close Peek Output"},t.GoToPreviousMessage={id:"testing.goToPreviousMessage",label:"Go to Previous Test Failure",iconClass:(0,n.getIcon)("arrowup")},t.GoToNextMessage={id:"testing.goToNextMessage",label:"Go to Next Test Failure",iconClass:(0,n.getIcon)("arrowdown")},t.ClearTestResults={id:"testing.clearTestResults",label:"Clear All Results",iconClass:(0,n.getExternalIcon)("clear-all")},t.OpenMessageInEditor={id:"testing.openMessageInEditor",label:"Open in Editor",iconClass:(0,n.getExternalIcon)("link-external")},t.RuntAllTestCommand={id:"testing.runAll",label:"Run All Test",iconClass:(0,n.getExternalIcon)("run-all")},t.DebugAllTestCommand={id:"testing.debugAll",label:"Debug All Test",iconClass:(0,n.getIcon)("debug-alt-small")},t.RefreshTestsCommand={id:"testing.refresshTests",label:"Refresh Tests",iconClass:(0,n.getIcon)("refresh")}},61090:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.testMessageSeverityColors=t.testConfigurationGroupNames=t.labelForTestInState=t.testStateNames=void 0;const n=e(43718);t.testStateNames={6:(0,n.localize)("testState.errored","Errored"),4:(0,n.localize)("testState.failed","Failed"),3:(0,n.localize)("testState.passed","Passed"),1:(0,n.localize)("testState.queued","Queued"),2:(0,n.localize)("testState.running","Running"),5:(0,n.localize)("testState.skipped","Skipped"),0:(0,n.localize)("testState.unset","Not yet run")};const r=(o,l)=>'label then the unit tests state, for example "Addition Tests (Running)"';t.labelForTestInState=r,t.testConfigurationGroupNames={4:(0,n.localize)("testGroup.debug","Debug"),2:(0,n.localize)("testGroup.run","Run"),8:(0,n.localize)("testGroup.coverage","Coverage")},t.testMessageSeverityColors={0:"#F14C4C",1:"#33333380"}},82423:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.refreshComputedState=t.getComputedDuration=t.getComputedState=t.isDurationAccessor=void 0;const n=e(41682),r=e(92597),o=m=>"getOwnDuration"in m;t.isDurationAccessor=o;const l=(m,p,s=!1)=>{var h;let a=m.getCurrentComputedState(p);if(a===void 0||s){a=(h=m.getOwnState(p))!==null&&h!==void 0?h:0;for(const g of m.getChildren(p))a=(0,r.maxPriority)(a,(0,t.getComputedState)(m,g));m.setComputedState(p,a)}return a};t.getComputedState=l;const _=(m,p,s=!1)=>{let h=m.getCurrentComputedDuration(p);if(h===void 0||s){const a=m.getOwnDuration(p);if(a!==void 0)h=a;else{h=void 0;for(const g of m.getChildren(p)){const u=(0,t.getComputedDuration)(m,g);u!==void 0&&(h=(h||0)+u)}}m.setComputedDuration(p,h)}return h};t.getComputedDuration=_;const v=(m,p,s)=>{const h=m.getCurrentComputedState(p),a=r.statePriority[h],g=s??(0,t.getComputedState)(m,p,!0),u=r.statePriority[g],d=new Set;if(u!==a){if(m.setComputedState(p,g),d.add(p),u>a)for(const E of m.getParents(p)){const f=m.getCurrentComputedState(E);if(f!==void 0&&r.statePriority[f]>=u)break;m.setComputedState(E,g),d.add(E)}else if(u<a)for(const E of m.getParents(p)){const f=m.getCurrentComputedState(E);if(f===void 0||r.statePriority[f]>a)break;m.setComputedState(E,(0,t.getComputedState)(m,E,!0)),d.add(E)}}if((0,t.isDurationAccessor)(m))for(const E of n.Iterable.concat(n.Iterable.single(p),m.getParents(p))){const f=m.getCurrentComputedDuration(E),c=(0,t.getComputedDuration)(m,E,!0);if(f===c)break;m.setComputedDuration(E,c),d.add(E)}return d};t.refreshComputedState=v},72383:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestPeekMessageToken=t.TestDecorationsToken=t.TestServiceToken=void 0,e(85608).__exportStar(e(87902),t),t.TestServiceToken=Symbol("TestService"),t.TestDecorationsToken=Symbol("TestDecorationsToken"),t.TestPeekMessageToken=Symbol("TestPeekMessageToken")},30005:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ObservableValue=void 0;const n=e(43718);class r extends n.Disposable{get value(){return this._value}set value(l){l!==this._value&&(this._value=l,this.changeEmitter.fire(l))}constructor(l){super(),this._value=l,this.changeEmitter=this.registerDispose(new n.Emitter),this.onDidChange=this.changeEmitter.event}}t.ObservableValue=r},20215:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestProfileServiceToken=t.canUseProfileWithTest=t.sorter=void 0;const n=e(48465),r=(l,_)=>l.isDefault!==_.isDefault?l.isDefault?-1:1:l.label.localeCompare(_.label);t.sorter=r;const o=(l,_)=>l.controllerId===_.controllerId&&(n.TestId.isRoot(_.item.extId)||!l.tag||_.item.tags.includes(l.tag));t.canUseProfileWithTest=o,t.TestProfileServiceToken=Symbol("TestProfileService")},48385:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestResultImpl=t.resultItemParents=t.maxCountPriority=t.TestResultServiceToken=t.makeEmptyCounts=void 0;const n=e(43718),r=e(82423),o=e(92597),l=()=>{const s={};for(const h of o.statesInOrder)s[h]=0;return s};t.makeEmptyCounts=l,t.TestResultServiceToken=Symbol("TestResultService");const _=(s,h,a)=>({parent:a,controllerId:s,expand:0,item:{...h},children:[],tasks:[],ownComputedState:0,computedState:0,retired:!1}),v=s=>{for(const h of o.statesInOrder)if(s[h]>0)return h;return 0};t.maxCountPriority=v;const m=function*(s,h){let a=h;for(;a;)yield a,a=a.parent?s.getStateById(a.parent):void 0};t.resultItemParents=m;class p{get completedAt(){return this._completedAt}get tests(){return this.testById.values()}constructor(h,a){this.id=h,this.request=a,this.completeEmitter=new n.Emitter,this.changeEmitter=new n.Emitter,this.testById=new Map,this.name=(0,n.formatLocalize)("test.result.runFinished",new Date().toLocaleString()),this.tasks=[],this.onChange=this.changeEmitter.event,this.onComplete=this.completeEmitter.event,this.counts=(0,t.makeEmptyCounts)(),this.outputs=[],this.computedStateAccessor={getOwnState:g=>g.ownComputedState,getCurrentComputedState:g=>g.computedState,setComputedState:(g,u)=>g.computedState=u,getChildren:g=>g.children,getParents:g=>{const{testById:u}=this;return function*(){for(let d=g.parent;d;){const E=u.get(d);if(!E)break;yield E,d=E.parent}}()}}}setAllToState(h,a,g){const u=this.mustGetTaskIndex(a);for(const d of this.testById.values())g(d.tasks[u],d)&&this.fireUpdateAndRefresh(d,u,h)}addTestToRun(h,a,g){var u;const d=_(h,a,g);return this.testById.set(a.extId,d),this.counts[0]++,g&&((u=this.testById.get(g))===null||u===void 0||u.children.push(d)),this.tasks.length&&this.tasks.forEach(()=>{d.tasks.push({duration:void 0,messages:[],state:1})}),d}mustGetTaskIndex(h){const a=this.tasks.findIndex(g=>g.id===h);if(a===-1)throw new Error(`Unknown task ${h} in updateState`);return a}fireUpdateAndRefresh(h,a,g){const u=h.ownComputedState;h.tasks[a].state=g;const d=(0,o.maxPriority)(...h.tasks.map(E=>E.state));d!==u&&(h.ownComputedState=d,this.counts[u]--,this.counts[d]++,(0,r.refreshComputedState)(this.computedStateAccessor,h).forEach(E=>this.changeEmitter.fire(E===h?{item:h,result:this,reason:3,previous:u}:{item:E,result:this,reason:2})))}getStateById(h){return this.testById.get(h)}getOutput(){return this.outputs.join("")}toJSON(){throw new Error("Method not implemented.")}updateState(h,a,g,u){const d=this.testById.get(h);if(!d)return;const E=this.mustGetTaskIndex(a);u!==void 0&&(d.tasks[E].duration=u,d.ownDuration=Math.max(d.ownDuration||0,u)),this.fireUpdateAndRefresh(d,E,g)}appendMessage(h,a,g){const u=this.testById.get(h);u&&(u.tasks[this.mustGetTaskIndex(a)].messages.push(g),this.changeEmitter.fire({item:u,result:this,reason:3,previous:u.ownComputedState}))}appendOutput(h,a,g,u){this.outputs.push(h)}addTestChainToRun(h,a){let g=this.testById.get(a[0].extId);g||(g=this.addTestToRun(h,a[0],null));for(let u=1;u<a.length;u++)g=this.addTestToRun(h,a[u],g.item.extId);for(let u=0;u<this.tasks.length;u++)this.fireUpdateAndRefresh(g,u,1)}addTask(h){const a=this.tasks.length;this.tasks.push({...h,coverage:void 0,otherMessages:[]});for(const g of this.tests)g.tasks.push({duration:void 0,messages:[],state:0}),this.fireUpdateAndRefresh(g,a,1)}markTaskComplete(h){this.tasks[this.mustGetTaskIndex(h)].running=!1,this.setAllToState(0,h,a=>a.state===1||a.state===2)}markComplete(){if(this._completedAt!==void 0)throw new Error("cannot complete a test result multiple times");for(const h of this.tasks)h.running&&this.markTaskComplete(h.id);this._completedAt=Date.now(),this.completeEmitter.fire()}}t.TestResultImpl=p},68755:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MainThreadTestCollection=t.AbstractIncrementalTestCollection=t.IncrementalChangeCollector=t.applyTestItemUpdate=t.testRunProfileBitsetList=void 0;const n=e(43718);t.testRunProfileBitsetList=[2,4,8,16];const r=(v,m)=>{m.expand!==void 0&&(v.expand=m.expand),m.item!==void 0&&(v.item=v.item?Object.assign(v.item,m.item):m.item)};t.applyTestItemUpdate=r;class o{add(m){}update(m){}remove(m,p){}complete(){}}t.IncrementalChangeCollector=o;class l{constructor(){this._tags=new Map,this.items=new Map,this.roots=new Set,this.busyControllerCount=0,this.pendingRootCount=0,this.tags=this._tags}apply(m){const p=this.createChangeCollector();for(const s of m)switch(s[0]){case 0:{const h=s[1];if(h.parent){if(this.items.has(h.parent)){const a=this.items.get(h.parent);a.children.add(h.item.extId);const g=this.createItem(h,a);this.items.set(h.item.extId,g),p.add(g)}}else{const a=this.createItem(h);this.roots.add(a),this.items.set(h.item.extId,a),p.add(a)}h.expand===2&&this.busyControllerCount++;break}case 1:{const h=s[1],a=this.items.get(h.extId);if(!a)break;h.expand!==void 0&&(a.expand===2&&this.busyControllerCount--,h.expand===2&&this.busyControllerCount++),(0,t.applyTestItemUpdate)(a,h),p.update(a);break}case 2:{const h=this.items.get(s[1]);if(!h)break;h.parent?this.items.get(h.parent).children.delete(h.item.extId):this.roots.delete(h);const a=[[s[1]]];for(;a.length;)for(const g of a.pop()){const u=this.items.get(g);u&&(a.push(u.children),this.items.delete(g),p.remove(u,u!==h),u.expand===2&&this.busyControllerCount--)}break}case 4:this.retireTest(s[1]);break;case 3:this.updatePendingRoots(s[1]);break;case 5:this._tags.set(s[1].id,s[1]);break;case 6:this._tags.delete(s[1]);break}p.complete()}retireTest(m){}updatePendingRoots(m){this.pendingRootCount+=m}createChangeCollector(){return new o}}t.AbstractIncrementalTestCollection=l;class _ extends l{get busyProviders(){return this.busyControllerCount}get rootItems(){return this.roots}get all(){return this.getIterator()}get rootIds(){return(0,n.map)(this.roots.values(),m=>m.item.extId)}constructor(m){super(),this.expandActual=m,this.busyProvidersChangeEmitter=new n.Emitter,this.retireTestEmitter=new n.Emitter,this.expandPromises=new WeakMap,this.onBusyProvidersChange=this.busyProvidersChangeEmitter.event,this.onDidRetireTest=this.retireTestEmitter.event}expand(m,p){const s=this.items.get(m);if(!s)return Promise.resolve();const h=this.expandPromises.get(s);if(h&&h.pendingLvl>=p)return h.prom;const a=this.expandActual(s.item.extId,p),g={doneLvl:h?h.doneLvl:-1,pendingLvl:p,prom:a};return this.expandPromises.set(s,g),a.then(()=>{g.doneLvl=p})}getNodeById(m){return this.items.get(m)}getReviverDiff(){const m=[[3,this.pendingRootCount]],p=[this.rootIds];for(;p.length;)for(const s of p.pop()){const h=this.items.get(s);m.push([0,{controllerId:h.controllerId,expand:h.expand,item:h.item,parent:h.parent}]),p.push(h.children)}return m}apply(m){const p=this.busyControllerCount;super.apply(m),p!==this.busyControllerCount&&this.busyProvidersChangeEmitter.fire(this.busyControllerCount)}clear(){const m=[];for(const p of this.roots)m.push([2,p.item.extId]);return this.roots.clear(),this.items.clear(),m}createItem(m){return{...m,children:new Set}}retireTest(m){this.retireTestEmitter.fire(m)}*getIterator(){const m=[this.rootIds];for(;m.length;)for(const p of m.pop()){const s=this.getNodeById(p);yield s,m.push(s.children)}}}t.MainThreadTestCollection=_},87902:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestId=void 0;class e{static fromExtHostTestItem(r,o,l=r.parent){if(r.id===o)return new e([o]);const _=[r.id];for(let v=l;v&&v.id!==o;v=v.parent)_.push(v.id);return _.push(o),new e(_.reverse())}static isRoot(r){return!r.includes("\0")}static fromString(r){return new e(r.split("\0"))}static join(r,o){return new e([...r.path,o])}static joinToString(r,o){return r.toString()+"\0"+o}static compare(r,o){return r===o?0:o.startsWith(r+"\0")?2:r.startsWith(o+"\0")?3:1}constructor(r,o=r.length){if(this.path=r,this.viewEnd=o,r.length===0||o<1)throw new Error("cannot create test with empty path")}get parentId(){return this.viewEnd>1?new e(this.path,this.viewEnd-1):this}get localId(){return this.path[this.viewEnd-1]}get controllerId(){return this.path[0]}get isRoot(){return this.viewEnd===1}*idsFromRoot(){for(let r=1;r<=this.viewEnd;r++)yield new e(this.path,r)}compare(r){if(typeof r=="string")return e.compare(this.toString(),r);for(let o=0;o<r.viewEnd&&o<this.viewEnd;o++)if(r.path[o]!==this.path[o])return 1;return r.viewEnd>this.viewEnd?2:r.viewEnd<this.viewEnd?3:0}toJSON(){return this.toString()}toString(){if(!this.stringifed){this.stringifed=this.path[0];for(let r=1;r<this.viewEnd;r++)this.stringifed+="\0",this.stringifed+=this.path[r]}return this.stringifed}}t.TestId=e},95381:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestingExplorerInlineMenus=t.TestingContainerId=t.TestingViewId=void 0;const n=e(97267),r=e(85941);t.TestingViewId="@opensumi/ide-testing",t.TestingContainerId="testing",t.TestingExplorerInlineMenus=[{icon:"start",title:"Run Test",command:r.RuntTestCommand.id,position:n.IBasicInlineMenuPosition.TREE_CONTAINER},{icon:"debug-alt-small",title:"Debug Test",command:r.DebugTestCommand.id,position:n.IBasicInlineMenuPosition.TREE_CONTAINER},{icon:"openfile",title:"Go To Test",command:r.GoToTestCommand.id,position:n.IBasicInlineMenuPosition.TREE_CONTAINER}]},57879:(P,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TestingPeekOpenerServiceToken=void 0,t.TestingPeekOpenerServiceToken=Symbol("TestingPeekOpenerService")},92597:(P,t,e)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hintMessagePeekHeight=t.isDiffable=t.parseMarkdownText=t.firstLine=t.isRunningState=t.statesInOrder=t.maxPriority=t.cmpPriority=t.stateNodes=t.isStateWithResult=t.isFailedState=t.statePriority=void 0;const n=e(84605),r=e(43718),{count:o}=r.strings;t.statePriority={2:6,6:5,4:4,1:3,3:2,0:1,5:0};const l=E=>E===6||E===4;t.isFailedState=l;const _=E=>E===6||E===4||E===3;t.isStateWithResult=_,t.stateNodes=Object.entries(t.statePriority).reduce((E,[f,c])=>{const y=Number(f);return E[y]={statusNode:!0,state:y,priority:c},E},{});const v=(E,f)=>t.statePriority[f]-t.statePriority[E];t.cmpPriority=v;const m=(...E)=>{switch(E.length){case 0:return 0;case 1:return E[0];case 2:return t.statePriority[E[0]]>t.statePriority[E[1]]?E[0]:E[1];default:{let f=E[0];for(let c=1;c<E.length;c++)t.statePriority[f]<t.statePriority[E[c]]&&(f=E[c]);return f}}};t.maxPriority=m,t.statesInOrder=Object.keys(t.statePriority).map(E=>Number(E)).sort(t.cmpPriority);const p=E=>E===1||E===2;t.isRunningState=p;const s=E=>{const f=E.indexOf(`
|