我在使用覆盖滚动条时遇到了一些程序问题,主要是 Code::Blocks 和 Eclipse。
我已经找到了几种针对所有应用程序完全禁用覆盖滚动条的方法,但是我喜欢它们并且我不想这样做。
有没有办法只将这些应用程序列入黑名单,禁止其使用新的滚动条?
答案1
我要回答我自己的问题。感谢 ubuntuforums 中的用户“SevenMachines”,我找到了一种禁用特定应用程序的覆盖滚动条的方法。我编写了一个包含以下内容的 shell 脚本(例如,针对 eclipse):
#!/bin/sh
LIBOVERLAY_SCROLLBAR=0 eclipse
然后,使其可执行,并使用“菜单编辑器”,将 eclipse 更改为指向该脚本。
答案2
或者,在您的.bashrc
添加以下内容
alias eclipse="LIBOVERLAY_SCROLLBAR=0 eclipse"
事实上,您可能还想添加UBUNTU_MENUPROXY=0
以便 Unity 菜单能够与 eclipse 正常工作,如下所示:
alias eclipse="UBUNTU_MENUPROXY=0 LIBOVERLAY_SCROLLBAR=0 eclipse"
[笔记:仅当您重新启动 bsh shell 后,此操作才会生效]
答案3
您可以像这样编辑 .desktop 文件:
cp /usr/share/applications/eclipse.desktop ~/.local/share/applications/
...然后放...
env LIBOVERLAY_SCROLLBAR=0
该文件随后看起来像这样:
[Desktop Entry]
Categories=Development;IDE;Java;
Comment=Eclipse Integrated Development Environment
Exec=env LIBOVERLAY_SCROLLBAR=0 eclipse
Icon=eclipse
Name=Eclipse
Terminal=false
Type=Application
我用unity-launcher-编辑器通过 GUI 轻松改变这一点。
答案4
上述答案的一个更通用的替代方案是这个我称之为“regular-scrollbars”的简单脚本:
#!/bin/sh
LIBOVERLAY_SCROLLBAR=0 "$1"
将其保存在您的路径上的某个位置,然后您可以使用菜单编辑器在您想要的任何命令之前添加“常规滚动条”(只要它只有一个参数 -"$@"
如果您认为需要多个参数,请尝试一下)。
这意味着您不必为想要恢复到旧滚动条的任何其他程序创建新脚本。
不过,我也非常喜欢 bashrc 别名示例,您可以通过提供要恢复的程序列表并让 bashrc 循环遍历它们并添加别名,使它更加通用。