Mientras tiene dos o más monitores trabajando juntos, ¿hay alguna forma de poner uno solo en espera / suspensión emitiendo un comando como xset dpms force suspend
:? o tener un horario establecido para ese propósito como: ¿ xset dpms 100 0 0
qué funciona en estos monitores por separado?
Tengo dos monitores trabajando juntos, eDP1 (My Laptop) y VGA1 (Un monitor externo).
Quiero que cada uno de ellos pase al modo de suspensión / espera por separado si no estoy interactuando directamente con ellos, supongamos que estoy viendo una película en VGA1, y durante una hora y media eDP1 no está haciendo nada.
No me interesa usarlo xrandor --off --output eDP1
porque no es lo suficientemente rápido como para trabajar con él.
Quiero que mi monitor esté listo para funcionar, con un simple movimiento del mouse para poder cambiar entre ellos rápidamente.
- Ejecutando: Ubuntu 18.04
- Administrador de ventanas: OpenBox
Respuestas:
No es posible controlar monitores individuales con xset (y X11 en realidad)
Como sugiere el título, no es posible por razones de cómo
xset
se construye y debido a las funciones X11 que usa. Si miramos el código fuente, lasxset
llamadasDPMSForceLevel(dpy,DPMSModeSuspend)
( línea 557 ) y la variable de visualizacióndpy
proviene de laXOpenDisplay()
función ( línea 203 ), y eso es por definición :En otras palabras,
xset
aplica la configuración globalmente a toda la pantalla, no a las pantallas individuales. Sería necesario cambiar elxset
código fuente para que eso funcione. Las extensiones DPMS en sí mismas parecen llamar solo a la pantalla completa, no a pantallas individuales, por lo que ni siquiera es posible escribir código personalizado con la biblioteca X11.Controlar manualmente esa configuración a través del
/sys
subsistema tampoco parece estar funcionandoLas pantallas también se sacan del modo DPMS cuando se producen eventos clave o del mouse, por lo que teniendo en cuenta que es posible que desee mover el mouse o usar el teclado, cualquiera de esas acciones hará que el monitor salga del modo DPMS.
Soluciones alternativas
La mejor alternativa (y una solución que realmente funciona físicamente) es
xrandr
: podría usarse para controlar las "salidas" individuales. En particular,desactivará esa salida. Sí, ha mencionado que no desea usar esta solución ya que no es lo suficientemente rápida, sin embargo, hasta ahora es la mejor disponible. Tiene un par de ventajas:
xset
El
xrandr --output VGA-1 --brightness 0.1
va a colorear la pantalla de tal manera que parece que fuera, a pesar de que--brightness
es una solución de software, por lo que la pantalla no es en realidad atenuada a nivel de hardware, ni se va a nivel de hardware. Sin embargo, hace el trabajo de borrar una pantalla y también es resistente a eventos de tecla / mouse.He buscado el código fuente de los protectores de pantalla Mate y Budgie, que son dos tenedores del protector de pantalla GNOME, sin embargo, en cualquier caso, parecen ser una solución de software, ya que no se menciona DPMS en el código fuente.
fuente
xrandr --off
por ahoraxrandr -off
incluso apaga el monitor. ¿Podría ser lo mismo quebrightness
establecer en cero? Otro problema es que tengo un programa que funciona las 24 horas, los 7 días de la semana, que establece el brillo y la gamma individualmente para 3 monitores, lo que incluso Windows no puede hacer. No estoy seguro si la luz nocturna, el cambio rojo o el flujo lo hacen. De todos modos, esos programas podrían estropearse con xrandr off. Perdón por secuestrar tu respuesta especulando :)Durante años tuve la configuración de mi computadora portátil de tal manera que cuando la tapa está cerrada, la computadora portátil se suspendería y los monitores externos quedarían en blanco.
Por su razón de querer ver un video durante 90 minutos en un monitor externo y que la pantalla de la computadora portátil quede en blanco, cambié la opción de cerrar la tapa a "No hacer nada":
No estoy usando DPMS para monitores externos, pero puede verificar su configuración con el
xset q
comando:Observe estas líneas:
prefer blanking: no
Observe también estas líneas:
DPMS is enabled
configurar el monitorStandby
cuando lo desee.Esperemos que otros usuarios hayan usado estas opciones y publiquen una respuesta detallada para usted.
fuente
¿Qué tal simplemente cerrar la computadora portátil?
¿Por qué?
Estos dos monitores son un área de visualización, por lo que apagar uno creará una serie de problemas como el rediseño de la pantalla, las aplicaciones que se mueven al monitor principal, ...
(Tomé ese camino hace unos años y la única forma confiable que encontré de hacer lo que quieres hacer es presionar el botón en el monitor externo o cerrar la computadora portátil)
Solo asegúrese de establecer estas configuraciones de energía con
gsettings set
:fuente
Comentario temporal
xrandr
. En una prueba más larga, esto funcionó bastante mal. No tanto el apagado falló, pero al reactivar la pantalla, el diseño de la pantalla estaba totalmente desordenado. Sin embargo, me encantaría publicarlo para ver si funciona en su caso, pero mi consejo es que no lo use.En el guión, volví a configurar el brillo a cero.
Entonces, ¿qué cambié en esta versión?
El tiempo de inactividad ahora está definido por la actividad del teclado y el mouse de manera predeterminada. El despertar también lo hace cualquiera de los dos.
Atenuar automáticamente la pantalla inactiva
Como dijeron mis colegas que respondieron, apagar las pantallas desde cli por separado es un desafío en el mejor de los casos, y tampoco encontré una opción.
Lo que sí encontré es una forma de atenuar automáticamente todas las pantallas, excepto la que está donde está el mouse, después de x time.
Aquí vamos
Como instalar
La configuración es sencilla:
Asegúrate de tener ambos
python3-gi
exprintidle
instaladosCopie el script anterior en un archivo vacío, guárdelo como
dim_inactive
y hágalo ejecutableEjecútelo con el comando:
un ejemplo:
atenuará todas las pantallas donde el mouse no esté después de dos minutos
Información adicional / explicación
fuente
xrandr --off
supongo.xrandr --off
es lo que preferiría en este caso. Especialmente porque la luz de fondo VGA no puede ser controlada por software.1
ninguna circunstancia. Cuando estoy interactuando con una pantalla externa usando el teclado y mientras el mouse está en la pantalla principal, la externa se vuelve negra después del tiempo de inactividad. Cuando no tengo ninguna interacción con la pantalla principal pero el mouse está allí, no hace nada allí y cuando muevo el mouse a otra pantalla principal, uno se vuelve negro de forma inminente.