Emacs 透明窗口

你想想,在你那透明的 alacritty 里开个 emacs 不就行了(

3 个赞

Purcell 的窗口透明函数,可以调透明度的那种 :joy:

;; @purcell
(defun sanityinc/adjust-opacity (frame incr)
  "Adjust the background opacity of FRAME by increment INCR."
  (unless (display-graphic-p frame)
    (error "Cannot adjust opacity of this frame"))
  (let* ((oldalpha (or (frame-parameter frame 'alpha) 100))
         (oldalpha (if (listp oldalpha) (car oldalpha) oldalpha))
         (newalpha (+ incr oldalpha)))
    (when (and (<= frame-alpha-lower-limit newalpha) (>= 100 newalpha))
      (modify-frame-parameters frame (list (cons 'alpha newalpha))))))

(global-set-key (kbd "M-C-8") (lambda () (interactive) (sanityinc/adjust-opacity nil -2)))
(global-set-key (kbd "M-C-9") (lambda () (interactive) (sanityinc/adjust-opacity nil 2)))
(global-set-key (kbd "M-C-7") (lambda () (interactive) (modify-frame-parameters nil `((alpha . 100)))))
5 个赞

非常喜欢作者的org-mode 博客,发现新大陆的感觉.谢谢分享!

这功能好像挺早以前的了

非常棒!已用上!

已经有个人写了个包出来了

伪透明只是调调合成器的参数,怎么弄真透明? 估计需要改下源码,大佬们说说思路?

22年可以啦

怎么实现?我在win10 上粘贴上Purcell 的代码并不行。

要把他代码里边的 'alpha 都换成 'alpha-background

'alpha 是可以的, 'alpha-background 不起效

对。 purcell 的那个实现是针对 'alpha 的,应该各平台版本都有。'alpha-background 如果是在 macOS, 要等上游合并最新的 patch,社区有人搞出来了。