Pantalla Gnu: supera el límite de 100 caracteres para los comandos; no se puede cambiar el estado duro

Pantalla Gnu: supera el límite de 100 caracteres para los comandos; no se puede cambiar el estado duro

Tengo una línea de estado duro configurada en mi archivo .screenrc:

hardstatus alwayslastline '%{= kg}[ %{G}%H %{g}][%= %{= kB}%?%-Lw%?%{+b r}(%{G}%n*%f %t%?(%u)%?%{r})%{-b B}%?%+Lw%?%?%= %{g}%]'
# This is 127 characters

Rutinariamente inicio sesión en servidores remotos que se comparten con otros usuarios que tienen su propia línea de estado duro favorita. Quiero cambiar el estado duro de mi sesión de pantalla ingresándolo como un comando después de iniciar la sesión. Desafortunadamente, la pantalla deja de aceptar entradas para el comando después de alcanzar alrededor de 100 caracteres.

Cuando hablo de comandos de pantalla, me refiero a los que se ingresan después de atar ctrl+a :

¿Hay alguna manera de aumentar el límite de caracteres del comando de pantalla más allá de 100 caracteres, u otra forma de establecer el estado duro sin alterar el archivo .screenrc? Se preferiría una solución para cambiarlo después de iniciar la sesión, pero una opción de línea de comando al iniciar la pantalla sería una buena alternativa si es posible.

Una forma de solucionar el problema sería colocar la línea hardstatus en un archivo e ingresar ctrl+ a :source <file>, o escribir esto después de iniciar la pantalla:

screen -p <SESSION_NAME or PID> -X hardstatus alwayslastline '%{= kg}[ %{G}%H %{g}][%= %{= kB}%?%-Lw%?%{+b r}(%{G}%n*%f %t%?(%u)%?%{r})%{-b B}%?%+Lw%?%?%= %{g}%]'

Pero realmente me gustaría saber cómo aumentar el límite de caracteres para los comandos.

Gracias de antemano,

Mateo

Respuesta1

No puedes; el límite de 100 caracteres está codificado (creo que el límite superior se aplica enpantalla/src/input.c, pero los llamadores de funciones pueden proporcionar un búfer más corto para empezar, por lo que potencialmente no es el único lugar que necesitaría parches).

Como solución que requiere menos escritura, recomiendo agregar un .screenrc-DarthAndroidque primero llame source .screenrcy luego agregue su configuración de anulación preferida; luego, cree un alias de shell myscr="screen -c ~/.screenrc-DarthAndroid ".

información relacionada