linux – 在GNU屏幕标题或hardstatusline中右对齐文本

前端之家收集整理的这篇文章主要介绍了linux – 在GNU屏幕标题或hardstatusline中右对齐文本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在.screenrc中有这个
caption always "%{= Kw} [%0c] %-Lw%{= KW}[%50>%n%f* %t]%{= Kw}%+Lw%=| %l | ${FULLHOST}"

它通常显示如下:

[01:06] 0$vim  1$top  2-$tail  [3$* ~]          | 0.26 0.54 0.36 | machine.domain.com

但是,当我打开许多窗口时,右边的数据被推离边缘并被截断:

[01:07] 0$vim  1$top  2$tail  3$~  4$~  5$~  6-$~  [7$* ~] | 0.21 0.46 0.34 | mac

如何更改caption命令,以便在必要时截断窗口列表,而不是从边缘推送正确的信息?如果始终显示活动窗口,则奖励积分.

解决方法

另一种解决方案,我目前正在使用.而不是原始行中的’%=’,或bender中的’%-30 ='(与-30%(又名70%)标记对齐),我使用’%-043 ='(对齐)到-43字符标记).
但是当然这和bender一样有问题,我需要的数量来抵消每台服务器的变化.解决方案是使用如下命令编辑每个服务器的.screenrc:
sed -i "s/043/0$(( 19 + $#FULLHOST ))/" ~/.screenrc

(19是负载显示和间距使用的字符数)

由于我的.screenrc是由我的shell的.rc文件生成的,如果不存在,我可以在执行此操作后立即运行此命令,并以每个服务器的正确偏移对齐结束.不优雅,但它的工作原理!

剩下的问题,我真的不在乎解决的问题:

>窗口列表(以及左侧的任何内容,包括时间)现在从左侧推出.我通过移除时钟解决了这个问题.>如果机器的主机名发生变化,我需要重新生成.screenrc,其中包括删除它然后启动一个新的shell.

原文链接:https://www.f2er.com/linux/398895.html

猜你在找的Linux相关文章