Làm thế nào để tìm ra chủ đề màu hiện tại trong emacs


24

Trong khi emacs đang chạy, làm thế nào tôi có thể tìm ra chủ đề màu nào hiện đang được sử dụng?

Câu trả lời:


19

Không có khái niệm về một chủ đề hiện tại và thực tế, nhiều chủ đề có thể được áp dụng theo trình tự để xác định một cách bổ sung tập hợp các khuôn mặt hoạt động. Hỗ trợ cho chủ đề đã được thêm vào các phiên bản Emacs mới nhất (xem M-x customize-theme) và vẫn có tùy chọn "Chọn nhiều chủ đề cùng một lúc".

Nói tóm lại, khi bạn kích hoạt một chủ đề, bạn không chuyển sang chủ đề đó, mà áp dụng các thay đổi được chỉ định trong chủ đề cho các khuôn mặt và các biến mà nó liệt kê.

Tất cả các tùy chỉnh không được đặt rõ ràng trong một chủ đề được đặt tên thực sự được đưa vào chủ đề người dùng ẩn, vì vậy luôn có ít nhất một chủ đề hoạt động. Các chủ đề hiện đang được kích hoạt khác được liệt kê trong biến custom-enabled-themes.


4

Chia sẻ một ví dụ cho việc sử dụng in màu theo chủ đề để có được chủ đề tôi đã áp dụng.

thông qua 'Mx color-theme-print', bạn sẽ nhận được kết quả đầu ra về thông tin chủ đề màu, sau đó tìm một giá trị tiêu biểu duy nhất cho các chủ đề màu khác nhau, tôi chọn 'màu nền' có giá trị là 537182 cho các emacs của tôi.

Mở thư viện chủ đề màu 'color-theme-library.el', sau đó tìm kiếm tệp với từ khóa là '537182', sau đó bạn sẽ có được tên chủ đề ở đó.

Mặc dù không phải là một cách đơn giản nhưng nó thực sự hiệu quả, hy vọng điều đó sẽ giúp!


3

M-x color-theme-printlà hữu ích để cho bạn biết chính xác những khuôn mặt phông chữ có hiệu lực. Nó sẽ không cho bạn biết chủ đề màu nào đã được áp dụng, nhưng bạn sẽ có thể làm việc đó từ tệp init của mình. Nếu không, tôi cho rằng bạn phải sử dụng chế độ áp dụng chủ đề màu riêng của nó (tôi biết Proof General thực hiện điều này và điều đó gây khó chịu nhất).


1
Rõ ràng điều này cần phải (require 'color-theme)đầu tiên
Rolazaro Azeveires

1

Để thêm vào phản hồi của sanityinc, bạn có thể tự đặt nó hoặc trong tệp init.el (dotemacs) của bạn.

Tôi đoán bạn đang hỏi bởi vì bạn đã thử một vài trong số họ và quên phải không? Tôi biết tôi có, tôi tự hỏi nếu bạn có thể kiểm tra bộ đệm Tin nhắn của bạn để xem cái cuối cùng được áp dụng.

@sanityinc cảm ơn vì lời giải thích quá. Tôi nhận thấy khi tôi bắt đầu thêm ngày càng nhiều chủ đề liên tiếp, một số khu vực, như bộ đệm mini sẽ không thay đổi hoặc sẽ được đặt thành giá trị của chủ đề cuối cùng. bây giờ tôi biết tại sao.


Trong color-themegói cũ , có một var được gọi color-theme-is-cumulative, mà bạn có thể đặt thành nilcác chủ đề không can thiệp lẫn nhau; Nghe có vẻ là một ý tưởng hay, nhưng kết quả thường hoàn toàn bất ngờ, tôi nghĩ một phần vì các chủ đề thường đưa ra các giả định về các khuôn mặt tích hợp.

vâng tôi cũng nhận thấy giả định đó, khi tôi tạo ra một ... Tôi đã sao chép từ một 'phổ biến' nhưng nó có một nửa địa điểm mà người tiếp theo đã làm ... vv khiến tôi nghĩ rằng một số chủ đề chỉ thay đổi những biến số mà nó 'muốn' thành, và có hàng trăm thay đổi, vậy tại sao phải bận tâm. Trên một lưu ý liên quan, tôi sử dụng chủ đề mưa sô cô la và yêu nó bây giờ. Đó là bản dựng 24.x của tôi trong nhiều tháng.

1
Tôi đã thử một vài chủ đề màu bằng cách sử dụng lệnh "color-theme-select" và tôi thích một chủ đề màu nhưng sau đó tôi đã đóng bộ đệm chọn chủ đề màu và tôi cũng quên mất những gì tôi đã chọn, vì vậy tôi nghĩ có thể một số biến đang lưu trữ chủ đề màu nào đang được áp dụng. Không có nhật ký nào về nó trong bộ đệm Tin nhắn

Có lẽ bạn có thể thử M-x describe-face RET default RET(hoặc một khuôn mặt không mặc định khác), sau đó sử dụng M-x rgrepđể tìm các tệp .el có chủ đề màu chứa cùng tên màu / giá trị hex.

Xin lỗi - giải pháp với việc tìm kiếm trong bộ đệm Tin nhắn không có ích. M-x load-theme <colortheme>không in bất cứ thứ gì vào bộ đệm tin nhắn.
Christian Herenz
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.