emacs

2010-02-07 10 views
6

में व्युत्पन्न मोड में एक कीमैप असाइन करें I emacs में व्युत्पन्न मोड में एक कीमैप कैसे आवंटित कर सकता हूं (मैं define-derived-mode फ़ंक्शन का उपयोग कर रहा हूं)। derived-mode-set-keymap फ़ंक्शन है लेकिन बिना उदाहरण या अच्छे दस्तावेज़।emacs

उत्तर

6

define-derived-mode स्वयं मोड-मैप नाम के साथ एक कीमैप बनाता है, जहां MODE आपके द्वारा परिभाषित की गई कुंजीमैप का नाम है। मुझे यकीन नहीं है कि derive-mode-set-keymap क्या यह पहले से ही define-derived-mode के साथ नहीं किया गया है; स्रोत को देखते हुए, वे समान चीजें करते हैं, और मुझे दो के बीच बहुत कम-स्तर के अंतरों के बारे में अनिश्चितता है (उदाहरण के लिए define-derived-mode नए कुंजीपैप के माता-पिता के रूप में अभिभावक-मोड की कीमैप छोड़ देता है जबकि 'derive-mode-set-keymap कीपैप्स भी विलय करता है; दोनों के बीच कार्यात्मक अंतर क्या है?)।

आप निम्नलिखित करते हैं:

(define-derived-mode foobar-mode text-mode "foo") 

उसके बाद निम्न चर परिभाषित किया जाएगा:

  • foobar-mode-abbrev-table
  • foobar-mode-hook
  • foobar-mode-map
  • foobar-mode-syntax-table

फिर आप इनमें से किसी भी को मैनिपुलेट करना शुरू कर सकते हैं।

+0

धन्यवाद, यह समझ में आता है। परिभाषित-व्युत्पन्न-मोड का उपयोग करके कुछ अन्य लिस्प उदाहरण भी अब मुझे अधिक संवेदनशील बनाते हैं। –