gpt4 book ai didi

windows - 在窗口调整大小时调整 Powershell 屏幕缓冲区的大小

转载 作者:可可西里 更新时间:2023-11-01 12:00:26 29 4
gpt4 key购买 nike

当我在窗口化、最大化和半屏之间切换 Powershell(例如 Win+Left)时,我仍然受到在控制台属性(在布局下),它所做的只是显示/隐藏滚动条。

有没有办法让它自动调整缓冲区大小?如果它可以优雅地处理 Vim 或 SSH 中的问题,则可加分,但我不会抱太大希望。

最佳答案

尝试将其保存为 Console-sizing.ps1(我在原始的 powershell 控制台中使用它,不知道在 VIM 或 SSH 或其他控制台中是否有效!)

function Size($w, $h)
{
New-Object System.Management.Automation.Host.Size($w, $h)
}

Write-Host '[Arrows] resize [Esc] exit ...'
$ErrorActionPreference = 'SilentlyContinue'
for($ui = $Host.UI.RawUI;;) {
$b = $ui.BufferSize
$w = $ui.WindowSize
switch($ui.ReadKey(6).VirtualKeyCode) {
37 {
$w = Size ($w.width - 1) $w.height
$ui.WindowSize = $w
$ui.BufferSize = Size $w.width $b.height
break
}
39 {
$w = Size ($w.width + 1) $w.height
$ui.BufferSize = Size $w.width $b.height
$ui.WindowSize = $w
break
}
38 {
$ui.WindowSize = Size $w.width ($w.height - 1)
break
}
40 {
$w = Size $w.width ($w.height + 1)
if ($w.height -gt $b.height) {
$ui.BufferSize = Size $b.width $w.height
}
$ui.WindowSize = $w
break
}
27 {
return
}
}
}

编辑:请阅读评论以了解original function coder

关于windows - 在窗口调整大小时调整 Powershell 屏幕缓冲区的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10490261/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com