Change console's Intellisense Colors

This topic contains 3 replies, has 3 voices, and was last updated by  Brian 4 weeks ago.

  • Author
    Posts
  • #78160

    Brian
    Participant

    Hello, I have been making basic scripts with Powershell for a while and have just started messing with a Powershell profile script. One thing I wanted was a teal-ish background, so I set the console's background to "DarkCyan".

    $Host.UI.RawUI.BackgroundColor = "DarkCyan"
    Clear-Host
    

    Problem is this is the same color that Intellisense will change any string (any input wrapped in single or double quotes) to by default, making it invisible as I type.

    Note: Output colors are fine, I just want to change the foreground color for inputs (interactive console).

    In ISE, I can go to Tools > Options and in the "Colors and Fonts" tab under Console Pane > Console Tokens > String, I can edit the color. This method only affects the ISE console and NOT* the actual shell console. Is there a way to do this (preferably via script)?

    * EDIT

    I have checked the following for methods\properties that might work, but haven't found anything:

    $Host
    $Host.UI
    $Host.UI.RawUI
    $Host.PrivateData
    [console]::
    

    Likewise, I have gone the GUI route within a shell console Right-click the top of window > Properties, but I can't find anything about Intellisense or strings.

    I have searched this forum and the web in general, but haven't found anything regarding to what I am specifically looking for.

  • #78162

    Don Jones
    Keymaster

    The IntelliSense function is provided by the PSReadLine module; you should manage your color settings there (as in https://superuser.com/questions/676140/how-to-set-colors-in-psreadline-in-powershell), rather than changing the colors in the console app itself. The console doesn't "know" that PSReadLine is running, so it can't mitigate any color problems.

  • #78183

    Ivan
    Participant

    Correct me if I'm wrong, but PSReadLine requires PS 5+, right?

  • #78189

    Brian
    Participant

    Thanks, Don. That is exactly what I was looking for.

You must be logged in to reply to this topic.