Apakah ada pemilih warna untuk Emacs?

20

Saya menggunakan yang terbaik rainbow-modeuntuk menyorot warna dalam file CSS.

css dengan mode pelangi

Namun, ini mengasumsikan saya tahu warna apa yang saya inginkan. Apakah ada pemilih warna yang dapat saya gunakan untuk mengedit CSS di dalam Emacs? Idealnya, saya sangat suka sesuatu di mana saya dapat membuat warna sedikit lebih gelap / lebih terang / lebih merah / lebih hijau, seperti pemilih warna Firefox:

pemetik warna firefox

Atau, saya perhatikan customize-facemenawarkan pemetik warna dari seperangkat 548 warna. Bisakah saya menggunakan ini untuk CSS?

menyesuaikan warna picker-wajah

Wilfred Hughes
sumber
2
Saya tidak bisa menahan diri untuk mengutip pertukaran yang berasal dari masa-masa awal Emacs: "Tuan, apakah Emacs memiliki sifat buddha?" "... Aku tidak mengerti kenapa tidak; ada yang lainnya."
keshlam
1
Terima kasih telah membawa rainbow-mode! Saya hanya mencari fitur ini dan tidak dapat mengingat di mana paket itu berada.
wdkrnls

Jawaban:

16

Lihatlah helm-colors. Ini menyajikan warna persis seperti pada tangkapan layar Anda dan tampaknya menggunakan palet yang sama atau bahkan sama.

Untuk memasukkan nama warna ke buffer saat ini, tekan C-c n(jalankan tindakan Insert Name).

Untuk memasukkan nilai hex warna, tekan C-c r(jalankan tindakan Insert RGB).

tmalsburg
sumber
3
Saya kedua helm-colors. Ini adalah demo untuk siapa pun yang tertarik dengan tampilannya. Anda dapat memilih warna dan menyisipkannya langsung ke buffer pengeditan.
Tu Do
2
helm-colorssangat baik, tetapi tampaknya tidak menggantikan titik, atau bahkan memasukkan buffer. Idealnya saya ingin sesuatu yang mendukung warna sewenang-wenang.
Wilfred Hughes
@ WilfredHughes Itu memang punya. Anda perlu melihat menu tindakan, dengan menekan TAB(pengikatan tombol default, gunakan milik Anda jika Anda mengikat sesuatu yang lain). Lihat bagian helm-warna saya di panduan saya.
Tu Do
2
Jika Anda ingin memasukkan warna dengan nilai hex-nya, tekan C-c r.
Tu Do
13
  • Library Palette ( palette.el) memberi Anda editor / pemilih warna WYSIWYG umum, yang memungkinkan Anda menjelajahi dan memodifikasi warna menggunakan nilai-nilai RGB dan HSV, termasuk secara bertahap. Sepertinya apa yang Anda tampilkan di gambar kedua Anda.

  • Perpustakaan Do Re Mi ( doremi.el, doremi-cmd.el, doremi-frm.el) memungkinkan Anda mengubah warna yang digunakan dalam Emacs secara bertahap: "manipulasi langsung".

  • Library Facemenu + ( facemenu+.el) memungkinkan Anda menggunakan palet warna (# 1) untuk mengubah warna yang digunakan dalam Emacs. Ini meningkatkan perpustakaan standar facemenu.el, hal-hal seperti list-colors-displaydan list-faces-display(yang terlihat mirip dengan gambar ke-3 Anda).

  • Library Icicles memungkinkan Anda memilih dan memanipulasi warna dan wajah secara bertahap, memanipulasi RGB, HSV, dll. Dan menyortir pilihan yang mungkin dengan banyak cara (mis. Menggabungkan kekuatan komponen warna).

(Anda bisa mendapatkan perpustakaan yang disebutkan di sini dari MELPA , dan file Lisp berisi dokumentasi lengkap (tetapi tanpa gambar).)

Drew
sumber
5

Bagaimana tentang:

(defun my-insert-color-hex ()
  "Select a color and insert its hexadecimal format."
  (interactive "*")
  (let ((buf (current-buffer)))
    (list-colors-display
     nil nil `(lambda (name)
                (interactive)
                (quit-window)
                (with-current-buffer ,buf
                  (insert (apply 'color-rgb-to-hex
                                 (color-name-to-rgb name))))))))
phils
sumber