Bazı tuş bağlamaları sağlamak için küçük bir mod kodlamaya başladım. Benim ilk denemem bir yazım hatası vardı:
(define-minor-mode borked-mode
"A mode defined with a broken key binding"
nil nil
'(([b] . 'previous-line)))
b
Anahtarı kullanmayı planlamıştım ve hemen "b"
yerine kullanmam gerektiğini fark ettim [b]
. Bu yüzden küçük modu yeniden tanımladım:
(define-minor-mode borked-mode
"A mode defined with a broken key binding"
nil nil
'(("b" . 'previous-line)))
Ancak, bu işe yaramadı. Bu beni tüm vahşi anahtar kovaları (yani, (kbd ...), [...], vb) çeşitli vahşi kovalamaca yola çıkardı. Sonunda, (define-minor-mode ...)
formu yeniden değerlendirmenin hiçbir şeyi değiştirmediğini fark ettim , orijinal, kırık anahtar haritaya sıkıştım. Daha sonra doğrudan üzerinden tuş eşlemesini değiştirmeyi denedim (define-key borked-mode-map ...)
ve düzeltilmiş tuş eşlemesini yükleyemedim. Sonunda Emacs'ı yeniden başlattım ve küçük modum doğru şekilde yüklendi.
Sorum şu: küçük mod tanımını geliştirirken nasıl güncellersiniz? Bozuk bir tanımı temizlemenin bir yolu var mı veya bozuk bitleri temizlemek için emacs'ı yeniden başlatmanız mı gerekiyor?
defvar
sonra tekrar değerini değerlendirmezC-M-x
:) İhtiyacınızdefparameter
veya ayrısetf
.