不同的Buffer不能同时不同的背景颜色吗?

很久前也搜过这个问题,也是没有找到办法,因为有时候查询一些资料(例如文档或者slime-inspect)想背景颜色暗淡一些,比较明显,我们一般只能通过下面的 status bar 来区别

有没有可能设置独立的buffer背景颜色啊? 不能的话就只能打开另外一个frame 咯?(我用控制台版)

3年前也发表过这样的提问,没能解决,3年后有变吗?

试试这个:

我看那个题主尝试过觉得不理想 所以我就没试了

另外请问下,最近 package-install 都搜索不了之前没有的包,我试了Shadowsocks 全局翻墙也不行,是网络问题还是我的配置问题吗?

试了下这个可以:

(face-remap-add-relative 'default :background "#ffffff")

1 个赞

我看了一下 color-theme-buffer-local 的 README#requirements,它主要也是用了 Face Remapping (GNU Emacs Lisp Reference Manual) 的方法。所以可以不用这个包,借它的思路就可以了。

真的嘢!
为啥Google半天都搜不到,没有人有这需求吗?

不过我控制台版的Emacs大多数rgb值都跟实际差距较大,我是在控制台设置修改了一些颜色

一个 theme 的各种色彩都是精心调配的,背景是整个配色的基调,有些色彩就是直接在背景的基础上增加灰度/对比度得来,因此单独改背景容易造成不协调,也许这就是需求少的原因。

1 个赞

这些theme 我在哪里选啊?可以像 VSCode那样方便吗? 例如修改了某个theme全局变量,我的颜色列表(list-colors-display)就不一样了?

(defvar *color-opened* nil)
(defun set-bg (&optional color)
  (interactive) ; "sColor(e.g #111): ")
  (unless *color-opened*
    (list-colors-display)
    (setf *color-opened* t))
  (face-remap-add-relative 'default :background (or (read-string "Color: " "color-") "brightcyan")))