Jawaban:
Ini benar-benar masalah pendapat, tetapi saya selalu menemukan bahwa membuat hl-linelatar belakang yang sedikit lebih gelap daripada standar adalah yang terbaik.
Saya ingin mempertahankan penyorotan sintaksis, yang telah gagal dalam upaya saya.
Jika Anda ingin mempertahankan penyorotan sintaks, pastikan bahwa atribut hl-linewajah :foregroundnihil, kemudian atur :backgroundatribut ke apa yang Anda inginkan.
Inilah yang terlihat bagi saya dengan pengaturan ini:
(set-face-attribute 'default nil :background "gray15")
(set-face-attribute 'hl-line nil :foreground nil :background "gray5")

Dengan suara itu, Anda tidak ingin warna kode keras karena Anda akan mengubah tema. Anda dapat memiliki emacs secara otomatis mengatur :backgrounddari hl-linewajah untuk warna yang sedikit lebih gelap dari default saat :backgroundseperti ini:
(require 'color)
(defun set-hl-line-color-based-on-theme ()
"Sets the hl-line face to have no foregorund and a background
that is 10% darker than the default face's background."
(set-face-attribute 'hl-line nil
:foreground nil
:background (color-darken-name (face-background 'default) 10)))
(add-hook 'global-hl-line-mode-hook 'set-hl-line-color-based-on-theme)
Ini akan mengatur latar belakang wajah ke warna 10% lebih gelap dari latar belakang default kapan pun Anda mengaktifkan global-hl-line-mode
global-hl-line-mode? Singkatnya, harap tentukan pertanyaan lebih jelas - itu akan membantu orang membantu Anda.