给 emacs-mac-port 打了个 patch,把标题栏变成透明的

感觉还挺好看的

安装:

  • brew tap railwaycat/emacsmacport
  • brew edit emacs-mac
  • Add the following code before def install:
  patch do
    url "https://gist.github.com/lululau/90dbffb613c216f046ff14ed37b586b5/raw/32dceaf9a45e8dbdfe793852f88e15cbaedec8d8/emacs-mac-title-bar.patch"
    sha256 '30c89405541f4383bb1bb9fa54f22b82d5144f9cdef8f313a72271ef72bf51ed'
  end
  • brew install emacs-mac --with-spacemacs-icon

透明效果默认不开启,若要开启:

defaults write org.gnu.Emacs TransparentTitleBar DARK

defaults write org.gnu.Emacs TransparentTitleBar LIGHT

若要禁用透明效果:

defaults write org.gnu.Emacs TransparentTitleBar NO

若要隐藏标题栏上的文档图标:

defaults write org.gnu.Emacs HideDocumentIcon YES

开启或禁用透明效果后需要创建新的 Emacs Frame 或重启 Emacs 才会生效

13 个赞

准备折腾了。


等等。全屏了以后会变什么样?

1 个赞

请问要重装是吗

这是自然要重装的。

仔细对比会发现边框变黑了。 强迫症表示有点接受不了。


顺带下载那个patch需要挂代理

@LdBeth,浅色背景的时候会有黑色的边框,另外标题的颜色浅色的时候也不容易看清楚。

@LdBeth @railwaycat 如果主要用浅色主题的话,可以把patch里给window.appearance 赋值那一行去掉

还挺好看的,关注一下

浅色看不起标题,用毛玻璃效果会不会好一些?

有什么可以在配置文件里开关的方法么?

研究了半天没弄明白怎么在 c/objc 里访问 elisp 变量,先用 Mac 的 UserDefaults 来配置吧。帖子已更新

赞!下次版本更新的时候放进去好了。

话说你考虑提 patch 给上游么?

10.10 之前的 OS X 应该是不支持的,所以不想提 PR 了。 你要是能把 patch 加到 Formula 里就太👍了

问题不大吧,像 touchbar 之类的支持也是新系统新硬件才支持。只要老系统上能编译通过不出问题就行了。

请问这个可以手动patch吗,终端走代理也下载不下来那个patch,暂时不知道为啥

把地址改成这个试试吧:

https://coding.net/u/liuxiang/p/snippets/git/raw/master/emacs-mac-title-bar.patch

你可以把 patch 文件上传到能访问的地方,然后修改 url,或者直接把 patch 代码附到 emacs-mac.rb 的末尾,详见:

https://github.com/Homebrew/brew/blob/master/docs/Formula-Cookbook.md#patches

嗯,这个 patch 放到 homebrew 的 Mac port 里了:--with-natural-title-bar

3 个赞

同样是黑色主题为什么效果差别,顶部黑色区域能去掉么?

同样是黑色主题为什么效果差别,顶部黑色区域能去掉么?