我想在 compiz 中具有反色效果(从浅到深),例如 compiz 中的“negative”,但没有 compiz,并且仅适用于一个窗口(例如 compiz 的Super+ N)。
有没有办法在没有 compiz 的情况下获得类似的效果(最好由按键组合切换)?我可以使用 反转整个桌面的颜色xcalib -I -a
,但我不能将其限制为单个窗口。
Rom*_*uet 26
据我所知......要实现这一点,您将需要Window Compositor 的帮助。
您可以尝试安装像Compton这样的轻量级独立合成器。
Compton 是 X 的轻量级合成器,也是 xcompmgr-dana 的一个分支。
根据手册页康普顿有一个选项来反转窗口中的颜色。
例如:
compton --invert-color-include <CONDITION>
Run Code Online (Sandbox Code Playgroud)
条件可能是窗口的WM_CLASS,要在窗口中找到“WM_CLASS”,您可以运行命令xprop
xprop | grep WM_CLASS
然后光标将是一个“十字”,您可以在您想要的窗口中单击,以找到 WM_CLASS。
现在你应该有这样的东西:
WM_CLASS(STRING) = "叶子板", "叶子板"
第二个字符串应该是 WM_CLASS "Leafpad"。
因此,要反转 Leafpad 编辑器的颜色,您应该运行:
compton --invert-color-include 'class_g="Leafpad"'
在某些情况下,您可能只想反转程序的某些窗口(例如反转编辑器窗口,而不是“保存文件”对话框)。
为此,您可以使用两个字符串中的第一个WM_CLASS
(也称为“实例”):
compton --invert-color-include '(class_g="Leafpad" && class_i="leafpad")'
您不需要一直运行 compton,您可以在需要反转窗口颜色时运行它。
注意: 在这个例子中,我使用 openbox 作为窗口管理器运行 Lubuntu 13.04,但默认情况下没有合成器。
这个合成器有它自己的PPA
1)要安装 compton,请打开终端并键入:
sudo add-apt-repository ppa:richardgv/compton
sudo apt-get update && sudo apt-get install compton
在这个例子中,我将创建一个基本的 Bash 脚本(我不是脚本专家)来检测活动窗口并反转它的颜色。
2)创建脚本。
sudo apt-get install xdotool
mkdir ~/Scripts
nano ~/Scripts/invert.sh
脚本内容:
compton --invert-color-include <CONDITION>
Run Code Online (Sandbox Code Playgroud)
基本上脚本将检查 compton 是否正在运行,如果它没有运行 xdotool 将找到活动窗口的窗口 ID,使用 id xprop 将找到 WM_CLASS,然后使用 WM_CLASS 创建条件,最后将使用条件作为参数。
使脚本可执行。
chmod +x ~/Scripts/invert.sh
在我的例子中,我将创建一个名为“invert-color”的软链接到 /usr/bin/ 目录
sudo ln -s ~/Scripts/invert.sh /usr/bin/invert-color
3)创建键盘快捷键
如: Ctrl+ Alt+ U (在Lubuntu应编辑lubuntu-rc.xml文件)
leafpad ~/.config/openbox/lubuntu-rc.xml
添加以下几行:
Run Code Online (Sandbox Code Playgroud)<!-- Launch invert-color activewindow on Ctrl + Alt + U--> <keybind key="C-A-U"> <action name="Execute"> <command>invert-color</command> </action> </keybind>
最后,您可以注销和登录以查看键盘快捷键的更改。
我的本意是,当我需要反色的活动窗口,我可以用快捷键做 Ctrl+ Alt+ U。如果我要回到正常的颜色,我会再次按下快捷键和脚本将检测康普顿因此运行pkill 命令将终止进程 compton。
所以这样我只会在需要的时候运行合成器。
这里有一些截图:
希望能帮助到你。
归档时间: |
|
查看次数: |
8140 次 |
最近记录: |