重新连接屏幕(运行irssi)会强制调整窗口大小


9

每当我重新连接到分离的屏幕(包含Irssi)时,Putty屏幕的大小都会调整为启动时的大小。如果在此之后更改窗口大小,分离屏幕并重新调整其大小,则窗口将再次被调整为原始大小。窗口是指我的窗户框上的腻子窗口。如何关闭此功能?

使用Windows XP作为本地操作系统,使用CentOS 6.0作为远程操作系统。腻子0.61。

Answers:


10

您还可以防止屏幕调整任何远程会话的大小。另一个答案可以防止在您本地的腻子安装中出现这种情况-但是如果您来到另一台工作站怎么办?

无论如何,要防止屏幕调整xterm的大小,您需要:

  • 编辑 /etc/screenrc
  • 找到这部分文字

# Long time I had this in my private screenrc file. But many people
# seem to want it (jw):
# we do not want the width to change to 80 characters on startup:
# on suns, /etc/termcap has :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l:

#termcap xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
#terminfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'

  • 从现在开始,取消注释这两个termcap行和屏幕的行为。

我只是遇到这个问题,用谷歌搜索,在这里找到答案,测试并认为这可能对其他人有用。

请注意,如果您无法或不想编辑全局screenrc配置,~/.screenrc则对您当前的用户来说效果很好。


我很想将其标记为可接受的答案,但是随着行为的消失,似乎无法测试它……至少要投票:)
eis 2012年

是! 设法现在对其进行测试,并且工作原理与所描述的完全相同。
eis 2012年

很高兴它为ya工作了:)
Zlatko 2012年

在我的情况下,pmodin在原始站点上的评论修正了此问题:我必须将其设置为“ xterm *”,因为我的腻子配置使用xterm-color作为TERM。
Mikuz 2014年

不为我工作。无法调整大小,使用4.02.01 im还要尝试使用screen -AR或任何screen -Ar组合启动,并且使用screen的初始启动可以正常使用,而首次使用screen -A可以正常使用,任何脱离都会破坏它。在.screenrc上也有这个东西,应该伪造它,而且不能进行。escape ^a随后 bindkey ^ad detach
布赖恩·托马斯

12

找到了答案。该功能称为“远程终端调整大小”,可以在“配置”->“终端”->“功能”->“禁用远程终端调整大小”中禁用,如PuTTY配置中所述

但是,真的不知道为什么重新附加屏幕会调整窗口的远程请求大小。


1
这对我来说很好。我的.screenrc中有一个termcapinfo行,用于转发回滚缓冲区。我不明白termcapinfo行是如何解析的,也不想弄乱它。
Morphit 2013年

2

公认的答案缺乏对现象的解释。这是一个:

  • 长字符串for is是终端的初始化字符串,通常与rs(使用reset)相同。
  • 给定的示例包含一个控制序列,该序列将终端从132列重置为80列。只是那部分是中的“ 3” \E[?1;3;4;6l,可以分为四个控件。影响宽度的是\E[?3l(请参阅XTerm控制序列中的"132 Column Mode (DECCOLM)")。
  • 恰好是X11R5 xterm终端说明中使用的VT100序列。
  • 屏幕启动(或连接)时,会初始化终端,以防万一。这改变了终端的宽度。
  • CentOS 6现在有点旧了。当前的上游xterm描述使用较短的序列已有相当长的一段时间,这会初始化更多的事情。
  • 较新/较短的序列如下所示:(is2=\E[!p\E[?3;4l\E[4l\E>在中定义xterm-basic)。该\E[!p部分是DECSTR,它重置字符集,颜色和视频属性。较旧的序列没有这样做;告诉screen使用它是可行的,但还不是很干净。
  • 如果您使用其他TERM设置,则中的自定义.screenrc将无效(因为它用于TERM匹配特定设置)。
  • 特别是,如果您使用,则xterm-256color可能会再次注意到相同的行为。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.