Làm cách nào để thay đổi màu nền của bộ đệm emacs?


8

Tôi muốn tạo các bộ đệm tương tác SQL được kết nối với các DB sản xuất rất, rất rõ ràng, vì vậy tôi nghĩ là thay đổi nền của bộ đệm thành màu đỏ sẫm.

set-background-colorkhông làm việc, mặc dù; nó đặt màu của tất cả các khung thành màu được chỉ định.

Làm thế nào tôi có thể thay đổi nền của chỉ một bộ đệm?

Câu trả lời:


9

Tôi đã tạo một gói lisp emacs cho việc này: https://github.com/vic/color-theme-buffer-local nó sử dụng ánh xạ lại khuôn mặt của Emacs để cài đặt khuôn mặt chủ đề cục bộ.


(require 'color-theme-buffer-local)
(add-hook 'java-mode-hook (lambda nil (color-theme-buffer-local 'color-theme-robin-hood (current-buffer)) ))


6

Bạn không thể.

Màu nền nói chung là khung cụ thể.

Bạn có thể đặt màu nền của defaultkhuôn mặt thành khung cụ thể bằng cách sử dụng set-face-background, như vậy:

(set-face-background 'default "#CCCCCC" (window-frame (frame-selected-window))

Tùy chỉnh khung thường được kiểm soát thông qua các tham số khung . Bây giờ, nếu bạn nhìn kỹ vào các background-colortham số cho khung hình , bạn sẽ thấy màu nền mặc định được lấy từ defaultkhuôn mặt - đó là lý do tại sao elisp trên có hiệu ứng.

Trước đó, có vẻ như các lần đóng mà bạn có thể đến với màu nền của bộ đệm là bằng cách sử dụng chế độ phụ buffer-face-mode(được thêm vào 23.1) - tuy nhiên, điều đó chỉ thay đổi nền cho văn bản của bộ đệm chứ không phải toàn bộ nền.


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.