Редактор Powershell ISE в тема с висок контраст на Windows

Наскоро започнах да използвам powershell ISE и разбрах, че темите на ISE за текстов редактор и конзола не работят, когато windows е настроен на която и да е тема с висок контраст. Така че основно за ISE фонът е ЧЕРЕН и целият текст е БЯЛ, това е. (Въпреки че шрифтът и неговият размер могат да се променят.) Мисля, че ЧЕРНО-БЯЛОТО изглеждане се дължи на текущата ми тема с висок контраст. (ЧЕРЕН фон на прозорците и БЯЛ текст на преден план.)

Чудех се дали има някакъв трик за активиране на нормалните (тъмни или персонализирани) теми на ISE, когато моите прозорци са с висок контраст. За информация, същият е случаят с Microsoft Visual Studio, но това може да бъде решено чрез настройване на регистрите за неговите теми. Но така или иначе не можах да намеря никакви ценни регистри за теми на powershell, така че не можах да направя много по въпроса.

Използвам лаптопа си предимно през нощта (почти без светлина), така че не искам да сменям темата на Windows.
Накратко, помощ?
Между другото, windows е 8.1, а powershell е 4.0 (по подразбиране за win 8.1 , предполагам.)
P.S: Нов тук, бъдете нежни :)


person Light    schedule 23.08.2014    source източник


Отговори (1)


ISE поддържа импортирането на вашите собствени теми под формата на xml файлове с разширения ps1xml. Ако потърсите в Google, можете да намерите много; ето един добър ресурс: този.

Можете също така да използвате обекта $psISE, който има много свойства, които можете да зададете с hex, както сметнете за добре, като например:

# fonts
$psISE.Options.FontName = 'Monaco'
$psISE.Options.FontSize = 10

# output pane
$psISE.Options.OutputPaneBackgroundColor = '#FF2E3436'
$psISE.Options.OutputPaneTextBackgroundColor = '#FF2E3436'
$psISE.Options.OutputPaneForegroundColor = '#FFFFFFFF'

# command pane
$psISE.Options.CommandPaneBackgroundColor = '#FF2E3436'

# script pane
$psISE.Options.ScriptPaneBackgroundColor = '#FF2E3436'

# tokens
$psISE.Options.TokenColors['Command'] = '#3ca0d0'
$psISE.Options.TokenColors['Unknown'] = '#FFFFFFFF'
$psISE.Options.TokenColors['Member'] = '#FFFFFFFF'
$psISE.Options.TokenColors['Position'] = '#FFFFFFFF'
$psISE.Options.TokenColors['GroupEnd'] = '#FFFFFFFF'
$psISE.Options.TokenColors['GroupStart'] = '#FFFFFFFF'
$psISE.Options.TokenColors['LineContinuation'] = '#FFFFFFFF'
$psISE.Options.TokenColors['NewLine'] = '#FFFFFFFF'
$psISE.Options.TokenColors['StatementSeparator'] = '#FFFFFFFF'
$psISE.Options.TokenColors['Comment'] = '#009999'
$psISE.Options.TokenColors['String'] = '#F83E5B'
$psISE.Options.TokenColors['Keyword'] = '#33CDC7'
$psISE.Options.TokenColors['Attribute'] = '#FF84A7C1'
$psISE.Options.TokenColors['Type'] = '#FF7940'
$psISE.Options.TokenColors['Variable'] = '#66CC00'
$psISE.Options.TokenColors['CommandParameter'] = '#009999'
$psISE.Options.TokenColors['CommandArgument'] = '#60d4ae'
$psISE.Options.TokenColors['Number'] = '#238C47'
person Justin    schedule 08.03.2017
comment
Интересна странност - ако сте активирали High Contrast, ще видите, че той управлява вашите цветове, оставяйки ви без подчертаване на синтаксиса (както е отбелязано от @Light), НО веднага щом присвоите стойност на един от TokenColors (дори ако това е тази стойност, която вече има), TokenColors си възвръща контрола (поне това е вярно с PS 5.1 на Windows 10 1903(18362) 64 бита). За свързани проблеми: shrigley.com/ meta.stackoverflow.com/questions/274388/ - person unbob; 25.10.2019