Tampondaki aktif küçük modların listesini alma


14

Mevcut arabellekteki aktif küçük modların listesi nasıl alınır?

Dokümanlar (info "(elisp)Minor Mode Conventions")şunları söylüyor:

 Define a variable whose name ends in ‘-mode’.  We call this the
 "mode variable".  The minor mode command should set this variable.
 The value will be ‘nil’ if the mode is disabled, and non-‘nil’ if
 the mode is enabled.  The variable should be buffer-local if the
 minor mode is buffer-local.

Şununla duruyorum:

(dolist (m minor-mode-list)
  (when (symbol-value m)
    (push m modes)))

describe-mode kaynakların notları:

;; Older packages do not register in minor-mode-list but only in
;; minor-mode-alist.

Hala geçerli bir nokta olup olmadığını bilmiyorum ...


2
Does not describe-modeaktüel tamponu içinde aktif minör modlar yeterli listesini verir?
— Drew

1
@Drew Belki programlı olarak istiyormuş gibi geliyor?
— dadı

1
@nanny: Evet, tahmin ettim. Bu durumda, başlamak için bir yer için kodlarına bakmak olurdu describe-mode- eğer o aksi yeterlidir.
— Drew

Yanıtlar:


7

Bunu dene:

(mapcar #'car minor-mode-alist)

Aslında, bu değerin genellikle farklı olduğunu göreceksiniz minor-mode-list.


13

Bir arabellekte hangi küçük modların kullanıldığını görmek istiyorsanız, ancak listeyi programlı olarak kullanmanız gerekmiyorsa:

M-x describe-mode

Bu komut, ana modların ve çalıştırılmış olabilecek ana modların kısa bir açıklamasının yanı sıra, küçük modlarınızın tam bir listesiyle başlayan yeni bir tampon açacaktır.


1
Bu OP sorusuna tam olarak cevap vermese de, bu soruyu ararken bulduğum ilk sonuç oldu. Drew'un yorumu kullanım durumumu çözdüğünden, gelecekteki araştırmacılar için tam bir cevabı hak ettiğini düşündüm.
— Wilduck

Soruna daha genel amaçlı çözümü göstermek için +1. describe-modeözellikle kullanışlıdır!
— Ephsmith
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.