加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – Gnome Shell上Emacs中的透明背景

发布时间:2020-12-13 16:58:14 所属栏目:Linux 来源:网络整理
导读:这个问题在于前一个问题的连续性: How make emacs console mode inherit shell colors 在Ubuntu 12.10和Gnome Shell 3.6.2上,我正在运行Emacs.在http://www.emacswiki.org/emacs/TransparentEmacs之后,我可以使用以下方法在我的Emacs X窗口上设置alpha透明
这个问题在于前一个问题的连续性: How make emacs console mode inherit shell colors

在Ubuntu 12.10和Gnome Shell 3.6.2上,我正在运行Emacs.在http://www.emacswiki.org/emacs/TransparentEmacs之后,我可以使用以下方法在我的Emacs X窗口上设置alpha透明度:

(set-frame-parameter (selected-frame) 'alpha '(85 50))
(add-to-list 'default-frame-alist '(alpha 85 50))

不幸的是,这为我的emacs窗口中的所有“项目”设置了透明度,包括包含文本的前景.因此,很难阅读Emacs内容.我正在寻找的只是在背景上设置alpha值的方法.通过这种方式,我将能够清楚地看到我的Emacs窗口的内容,并从emacs后面的窗口中读取信息(我使用非常好的gnome终端成功地做到了这一点).

解决方法

看起来这是前一段时间的问题,但我不知道曼努埃尔在哪里得到了完整的解决方案.我有同样的问题,这就是我提出的问题.

如果您已设置shell的透明度然后运行emacs -nw -q,则Emacs的默认行为似乎是遵循您的shell设置.如果你的不这样做,那么你可能在某处设置了一些冲突的设置.也许你正在使用一个主题,将默认背景设置为一种颜色?如果是这样,您需要更改该设置.

如果您使用其中一个内置主题(例如adwaita,tango,wo??mbat等),那些设置了默认背景颜色,它将覆盖alpha框架参数.一种解决方案是找到该主题文件并注释掉设置此默认值的行.我的主题位于/usr/share/emacs/25.3/etc/themes.如果不存在,则切换到暂存缓冲区并评估数据目录变量的值(如果您不知道如何执行此操作,则需要花费更多时间阅读Emacs手册).该目录应该有一个themes子目录.要修改主题文件,您可能需要管理员权限.

杰夫之前给出的代码应该可行.参见第28.4节:ELisp手册的框架参数.另外,请查看51.1.7:Emacs手册的自定义主题. Jeff的代码将为Emacs设置框架的透明度.如果您希望它与shell应用程序的透明度不同,那么这很好.如果你只是想让它遵循shell的行为,就像我说的那样,这是默认的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读