Emacs23在Ubuntu(Gnome 3)中不能透明

Emacs23在Ubuntu(Gnome 3)中不能透明,emacs,transparent,Emacs,Transparent,我搜索如何透明我的emacs窗口。但它不起作用。 类似这样的失败: (全局设置键[(f8)]'循环alpha) (setqα列表’((100100)(9565)(8555)(7545)(6535))) (取消循环alpha() (互动) (let((h(汽车阿尔法列表))) ((λ(ab) (设置帧参数(选定帧)'alpha(列表a ab)) (添加到列表“默认帧列表(cons)”alpha(列表a ab))) )(h车)(cdr h车) (setq alpha列表(cdr(附加alpha列表(

我搜索如何透明我的emacs窗口。但它不起作用。 类似这样的失败:

(全局设置键[(f8)]'循环alpha)
(setqα列表’((100100)(9565)(8555)(7545)(6535)))
(取消循环alpha()
(互动)
(let((h(汽车阿尔法列表)))
((λ(ab)
(设置帧参数(选定帧)'alpha(列表a ab))
(添加到列表“默认帧列表(cons)”alpha(列表a ab)))
)(h车)(cdr h车)
(setq alpha列表(cdr(附加alpha列表(列表h)))
)
)

以下是我认为您正在尝试做的一个工作实现:

(全局设置键[(f8)]'循环alpha)
(defvar alpha list'((100100)(9565)(8555)(7545)(6535)))
(定义下一个alpha()
(让((当前alpha)
(或(帧参数(选定帧)'alpha)
(第一个字母列表)
(第一字母表)
(或(第二)
(捕捉阿尔法)
(而
(当(等于(第一个lst)当前alpha时)
(投掷阿尔法lst)
(setf lst(cdr lst(())))
(第一个字母列表)
(取消循环alpha()
(互动)
(let((新α(下α))
(当前默认值(关联“alpha默认帧列表”))
(设置帧参数(选定帧)“alpha新建alpha”
(如果为当前默认值)
(setcdr当前默认新alpha)
(添加到列表“默认帧列表”(cons“alpha新alpha(()())”)中)

请注意,您编写的任何重新定义
alpha list
的版本在多个帧中的行为都会非常奇怪。我会解释你的代码出了什么问题,但我真的不知道它应该做什么。请注意,如果我允许自己先
(require'cl)
,这将更容易编写,但我认为这段代码应该可以工作——它在这里无论如何都可以

谢谢你,那么如何用cl实现这一点呢?只有speedbar可以变成透明的,主框架仍然不透明。与颜色主题冲突??代码设置当前帧的不透明度,这是我认为您最初的尝试应该做的。在点击F8.Oh之前,请确保当前窗口(如X11顶级窗口)是主框架,而cl是一个库,它提供了在common lisp中可以找到的函数。它们将使nextalpha的实现大大简化,我(至少)有时会发现setcdr很难理解,使用cl代码可以避免这一点。