Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Review performance and update integrated terminal topic #4809

Closed
gregvanl opened this issue Sep 3, 2021 · 4 comments · Fixed by #5672
Closed

Review performance and update integrated terminal topic #4809

gregvanl opened this issue Sep 3, 2021 · 4 comments · Fixed by #5672
Assignees
Labels
CSAT doc-enhancement suggested addition or improvement

Comments

@gregvanl
Copy link

gregvanl commented Sep 3, 2021

https://code.visualstudio.com/docs/editor/integrated-terminal
August CSAT FY21Q4 32%
Several product issues and new features during May and June.

@gregvanl gregvanl added CSAT doc-enhancement suggested addition or improvement labels Sep 3, 2021
@Tyriar
Copy link
Member

Tyriar commented Sep 7, 2021

AFAIK the reason for this was the introduction of some links to the page into the settings, using a query param to indicate it came from VS Code would allow us to segment access via troubleshooting links vs organic.

@gregvanl
Copy link
Author

gregvanl commented Aug 3, 2022

Next to do pull content out of docs/terminal/basics into advanced and reference

@Tyriar

This comment was marked as outdated.

@Tyriar
Copy link
Member

Tyriar commented Aug 9, 2022

Proposed new structure below:

Legend

  • 👐 Usage
  • ⚙️ Config
  • 🎨 Appearance
  • ⚡ Advanced
  • 🤔 Troubleshooting
  • ⛔ Stale/remove/mentioned elsewhere
  • ➡️ Move/consolidate
  • ❓ Unknown/open question

New table of contents

  • Basics - Simple usage and high level overview of features, minimal configuration
  • Terminal Profiles - Profiles are one of the most important features
  • Shell Integration
  • Appearance - All appearance related customizations and gpu acceleration
  • Advanced - Catch all for advanced topics, mostly for at power users. keybinding complications, auto replies, local echo, etc.
  • Reference (later) - Technical specs, supported escape sequences, protocol extensions, etc.

Top-level sections

Settings/commands also added under sections to consider covering

  • Basics
    Just explain simple usage and high level overview of features, only config should be in tip callouts
    • (no header) Intro to terminal similar to today but with updated/fancier screenshot, also briefly about philosophy?
    • 👐 Managing terminals
      • 👐 Split panes
        • terminal.integrated.splitCwd
    • 🆕 👐 Terminals in editor area (better name?)
      • terminal.integrated.defaultLocation
    • 🆕 👐 Navigating the buffer
      Mention keybindings to navigate around the buffer
      • ⚙️ Tip: Increasing the buffer size
        • terminal.integrated.scrollback
      • terminal.integrated.smoothScrolling
    • 👐 Links
      • terminal.integrated.wordSeparators
        Not sure this does anything anymore?
      • terminal.integrated.showLinkHover
        Not worth mentioning?
      • workbench.action.terminal.openDetectedLink
      • workbench.action.terminal.openWordLink
      • workbench.action.terminal.openFileLink
      • workbench.action.terminal.openUrlLink
    • 👐 Copy & Paste
      • terminal.integrated.copyOnSelection
      • terminal.integrated.enableMultiLinePasteWarning
    • 👐 ⚙️ Using the mouse
      • 👐 ⚙️ Right-click behavior
        • terminal.integrated.rightClickBehavior
      • 👐 Alt click
        • terminal.integrated.altClickMovesCursor
      • 🆕 terminal.integrated.macOptionClickForcesSelection
    • 👐 Find
      The Ctrl+F thing mentioned is more of a tip
    • 👐 Run selected text
    • 👐 Maximizing the terminal
    • 👐 ⚙️ Select all
    • 👐 Drag and drop file paths
    • ⚡ 👐 ⚙️ Automating launching of terminals
      This just points at the tasks page
      Rephrase title?
    • terminal.integrated.macOptionIsMeta
    • ⚡ ⚙️ Working directory
      This was way too high in the basics doc
    • 🆕 Fixed dimension terminals
      • workbench.action.terminal.setDimensions
    • 🆕 Drag and drop terminals between windows
      • workbench.action.terminal.attachToSession
      • workbench.action.terminal.detachSession
    • Common questions
      • 🤔 I'm having problems launching the terminal
      • 🤔 Why is nvm complaining about a prefix option when the integrated terminal is launched?
      • 🤔 I see 1~ or [201~ when I paste something
      • 🤔 Ctrl+A, Ctrl+R output ^A, ^R on zsh
  • Terminal Profiles ("terminal" prefix to disambiguate with settings profiles)
    Dedicated section as this is arguably one of the most important features? We could have sections on individual shells instead of hiding in common questions
    • ⚙️ Configuring profiles
      • terminal.integrated.profiles.windows
      • terminal.integrated.profiles.osx
      • terminal.integrated.profiles.linux
      • terminal.integrated.defaultProfile.linux
      • terminal.integrated.defaultProfile.osx
      • terminal.integrated.defaultProfile.windows
    • ⚙️ Removing built-in profiles
    • ⚙️ Configuring the task/debug profile
      • terminal.integrated.automationProfile.linux
      • terminal.integrated.automationProfile.osx
      • terminal.integrated.automationProfile.windows
    • 👐 Can I use the integrated terminal with the Windows Subsystem for Linux?
      This is obvious now because of built-in profile and remote-wsl extension
      Make sure WSL is mentioned on profiles page
      • terminal.integrated.useWslProfiles
    • ➡️ Can I use Cmder's shell with the terminal on Windows?
      Merge into profiles section
    • 🤔 Why are there duplicate paths in the terminal's $PATH environment variable and/or why are they reversed?
      This one's frequently referred to
    • ❓ Git Bash isn't saving history when I close the terminal
      Should there be a page for tips on configuring various shells?
    • terminal.integrated.env.osx
    • terminal.integrated.env.linux
    • terminal.integrated.env.windows
  • Shell integration
    Existing section dedicated to shell integration and its features
    • terminal.integrated.shellIntegration.enabled
    • terminal.integrated.shellIntegration.showWelcome
    • terminal.integrated.shellIntegration.decorationsEnabled
    • terminal.integrated.shellIntegration.decorationIcon
    • terminal.integrated.shellIntegration.decorationIconError
    • terminal.integrated.shellIntegration.decorationIconSuccess
    • terminal.integrated.shellIntegration.history
  • Appearance
    All appearance related customizations and gpu acceleration
    • ⚙️ Customizing Tabs
      • terminal.integrated.tabs.defaultColor
      • terminal.integrated.tabs.defaultIcon
      • terminal.integrated.tabs.enabled
      • terminal.integrated.tabs.enableAnimation
      • terminal.integrated.tabs.hideCondition
      • terminal.integrated.tabs.showActiveTerminal
      • terminal.integrated.tabs.showActions
      • terminal.integrated.tabs.location
      • terminal.integrated.enableBell
      • terminal.integrated.bellDuration
      • terminal.integrated.tabs.separator
      • terminal.integrated.tabs.title
      • terminal.integrated.tabs.description
      • terminal.integrated.ignoreProcessNames
        Validate how this interacts with shell type
    • 🆕 🎨 Text style
      • terminal.integrated.fontFamily
      • terminal.integrated.fontSize
      • terminal.integrated.letterSpacing
      • terminal.integrated.lineHeight
      • terminal.integrated.fontWeight
      • terminal.integrated.fontWeightBold
    • 🎨 Terminal colors
      • terminal.integrated.drawBoldTextInBrightColors
    • 🎨 Terminal cursor
      • terminal.integrated.cursorBlinking
      • terminal.integrated.cursorStyle
      • terminal.integrated.cursorWidth
    • 🆕 🎨 Minimum contrast ratio
      • terminal.integrated.minimumContrastRatio
    • ➡️ ⚙️ Can I use Powerline fonts in the integrated terminal?
      Move to its own customization section
    • 🆕 GPU Acceleration
      • terminal.integrated.gpuAcceleration
    • 🆕 Custom glyphs
      • terminal.integrated.customGlyphs
    • 🆕 Customizing your prompt
      Brief explanation of how you can customize the prompt in various shells
    • Common questions
      • 🤔 Why is my terminal showing a multi-colored triangle or a completely black rectangle?
        Probably good to keep this, though we get less and less reports
      • ➡️ I'm having problems with the terminal rendering. What can I do?
        Merge into gpu acceleration section
      • 🤔 Why are the colors in the terminal not correct?
        Link back to min contrast section, this is mainly for SEO
  • Advanced (alt: input and behavior?)
    Catch all for advanced topics, mostly targeted at power users. Things like keybinding complications, auto replies, local echo, etc.
    • ⚡ 👐 ⚙️ Terminal process reconnection
      • terminal.integrated.enablePersistentSessions
      • terminal.integrated.persistentSessionReviveProcess
      • terminal.integrated.persistentSessionScrollback
    • ⚡ 👐 ⚙️ Local echo
      Name should be more descriptive like "Reducing input latency"?
      • terminal.integrated.localEchoLatencyThreshold
      • terminal.integrated.localEchoEnabled
      • terminal.integrated.localEchoExcludePrograms
      • terminal.integrated.localEchoStyle
    • ⚡ ⚙️ Keybindings and the shell
      This section's a little sparse, explain how to passthrough clicks to the pty
      • ⚡ 👐 ⚙️ Chord keybindings in the terminal
      • ⚡ ⚙️ Send text via a keybinding
      • ➡️ Why is Cmd+k/Ctrl+k not clearing the terminal?
        Merge into keybindings section
      • ➡️ Why is VS Code shortcut X not working when the terminal has focus?
        Merge into keybindings section
      • ➡️ ⚙️ How do I configure zsh on macOS to jump words with Ctrl+Left/Right arrow?
        Include example in keybindings section
      • terminal.integrated.sendKeybindingsToShell
      • terminal.integrated.commandsToSkipShell
      • terminal.integrated.allowChords
      • terminal.integrated.allowMnemonics
    • ❓ ⚙️ Confirm when exiting VS Code with active terminal sessions
      Basics instead?
      • terminal.integrated.confirmOnExit
      • terminal.integrated.confirmOnKill
      • terminal.integrated.showExitAlert
    • 🆕 Auto replies
      • terminal.integrated.autoReplies
    • 🆕 $LANG interaction
      • terminal.integrated.detectLocale
    • 🆕 Unicode and emoji support
      • terminal.integrated.unicodeVersion
    • 🆕 Extension environment contributions
      • terminal.integrated.environmentChangesRelaunch
    • 🆕 Windows and Conpty
      • terminal.integrated.windowsEnableConpty
    • terminal.integrated.inheritEnv
      Not sure if this deserves a section
    • 🆕 Remote Windows (bad title?)
      • workbench.action.terminal.newLocal
  • Reference (later)
    • Area to put technical specs, supported escape sequences, protocol extensions, etc.

Accessibility page

  • 🆕 Run recent command
    Mention here as an accessible alternative to ctrl+r?

No home:

  • terminal.integrated.tabs.focusMode
    Expected usage too low?
  • terminal.integrated.fastScrollSensitivity
    Expected usage too low?
  • terminal.integrated.mouseWheelScrollSensitivity
    Expected usage too low?

No docs intentionally:

  • terminal.integrated.environmentChangesIndicator
    Will probably remove eventually
  • terminal.integrated.enableFileLinks
    Bad solution to the problem
  • terminal.integrated.shell.linux
  • terminal.integrated.shell.osx
  • terminal.integrated.shell.windows
  • terminal.integrated.automationShell.linux
  • terminal.integrated.automationShell.osx
  • terminal.integrated.automationShell.windows
  • terminal.integrated.shellArgs.linux
  • terminal.integrated.shellArgs.osx
  • terminal.integrated.shellArgs.windows
  • ⚙️ Focus when already open

@Tyriar Tyriar added this to the September 2022 milestone Sep 6, 2022
Tyriar added a commit that referenced this issue Sep 9, 2022
gregvanl pushed a commit that referenced this issue Sep 13, 2022
* Stub out terminal advanced section

Part of #4809

* Some keybindings content

* Persistent sessions

* keybindings and the shell

* Auto replies

* LANG, env var collection, conpty

* local echo

* Finish advanced

* Remove advanced terminal topics from basics

* Update docs/terminal/advanced.md

Co-authored-by: Megan Rogge <merogge@microsoft.com>

* Update docs/terminal/advanced.md

Co-authored-by: Megan Rogge <merogge@microsoft.com>

* Update docs/terminal/advanced.md

Co-authored-by: Megan Rogge <merogge@microsoft.com>

* Update docs/terminal/advanced.md

Co-authored-by: Megan Rogge <merogge@microsoft.com>

* Update docs/terminal/advanced.md

Co-authored-by: Megan Rogge <merogge@microsoft.com>

* Update docs/terminal/advanced.md

Co-authored-by: Megan Rogge <merogge@microsoft.com>

* Update docs/terminal/advanced.md

Co-authored-by: Megan Rogge <merogge@microsoft.com>

* Update docs/terminal/advanced.md

Co-authored-by: Megan Rogge <merogge@microsoft.com>

* Improve unicode/emoji intro

Co-authored-by: Megan Rogge <merogge@microsoft.com>
Tyriar added a commit that referenced this issue Oct 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CSAT doc-enhancement suggested addition or improvement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants