Hasta donde yo sé ... para lograr eso, necesitarás la ayuda de un Compositor de ventanas .
Puede intentar instalar un compositor independiente liviano como Compton .
Compton
Compton es un compositor ligero para X y un tenedor de xcompmgr-dana.
De acuerdo con Man Pages, Compton tiene una opción para invertir colores en una ventana.
p.ej:
compton --invert-color-include <CONDITION>
La condición podría ser el WM_CLASS de una ventana, para encontrar el "WM_CLASS" en una ventana puede ejecutar el comando xprop
Entonces el cursor será una "Cruz" y puede hacer clic en la ventana que desee para encontrar el WM_CLASS.
Ahora deberías tener algo como esto:
WM_CLASS (STRING) = "leafpad", "Leafpad"
La segunda cadena debe ser el WM_CLASS "Leafpad" .
Entonces, para invertir los colores del editor de Leafpad, debe ejecutar:
compton --invert-color-include 'class_g="Leafpad"'
En algunos casos, es posible que desee invertir solo algunas ventanas de un programa (por ejemplo, invertir la ventana del editor, pero no el cuadro de diálogo "guardar archivo").
Para eso puede usar la primera de las dos WM_CLASS
cadenas (también llamada "instancia"):
compton --invert-color-include '(class_g="Leafpad" && class_i="leafpad")'
No necesita ejecutar compton todo el tiempo, puede ejecutarlo cuando necesita invertir los colores de una ventana.
NOTA: En este ejemplo, estoy ejecutando Lubuntu 13.04 con openbox como administrador de ventanas pero sin compositor por defecto.
Para instalar Compton
Este compositor tiene su propio PPA
1) Para instalar compton, abra una Terminal y escriba:
sudo add-apt-repository ppa:richardgv/compton
sudo apt-get update && sudo apt-get install compton
En este ejemplo, crearé un script Bash básico (no soy un experto en scripts) para detectar la ventana activa e invertir sus colores.
2) Crea el guión.
sudo apt-get install xdotool
mkdir ~/Scripts
nano ~/Scripts/invert.sh
El contenido del guión:
#! /bin/bash
if [ "$(pidof compton)" ];
then
pkill compton
else
ID=$(xdotool getactivewindow)
CLASS=$(xprop -id "$ID" | grep "WM_CLASS" | awk '{print $4}')
COND="class_g=${CLASS}"
compton --invert-color-include "$COND" &
fi
exit
Básicamente, el script verificará si se está ejecutando compton, si no se está ejecutando xdotool encontrará el id de la ventana de la ventana activa, con el id xprop encontrará el WM_CLASS, luego con el WM_CLASS creará la condición y finalmente ejecutará compton con el condición como argumento.
Haga que el script sea ejecutable.
chmod +x ~/Scripts/invert.sh
En mi caso, crearé un enlace suave al directorio / usr / bin / con el nombre "invert-color"
sudo ln -s ~/Scripts/invert.sh /usr/bin/invert-color
3) cree un atajo de teclado,
por ejemplo: Ctrl+ Alt+ U (en Lubuntu, debe editar el archivo lubuntu-rc.xml)
leafpad ~/.config/openbox/lubuntu-rc.xml
Agregue las siguientes líneas:
<!-- Launch invert-color activewindow on Ctrl + Alt + U-->
<keybind key="C-A-U">
<action name="Execute">
<command>invert-color</command>
</action>
</keybind>
Finalmente, puede cerrar sesión e iniciar sesión para ver los cambios en el método abreviado de teclado.
Mi intención es que cuando necesite invertir los colores en la ventana activa, puedo hacerlo con el acceso directo Ctrl+ Alt+ U. Si quiero volver a los colores normales, presionaré nuevamente el acceso directo y el script detectará que el compton se está ejecutando. el comando pkill matará el proceso compton.
De esta manera, solo ejecutaré el compositor cuando lo necesite.
Aquí tienes algunas capturas de pantalla:
Espero eso ayude.