2010-10-08 11 views
11

मैं Emacs के लिए मामूली मोड को हाइलाइट करने वाला केवल एक वाक्यविन्यास बनाना चाहता हूं। मेरे पास O'Reilly द्वारा "लेखन जीएनयू Emacs एक्सटेंशन" है, लेकिन यह विस्तार की किसी भी गहराई में नहीं जाता है। क्या वास्तविक या नकली प्रोग्रामिंग भाषा हाइलाइटिंग मोड के लिए कोई आसान ट्यूटोरियल है?सरल Emacs वाक्यविन्यास ट्यूटोरियल हाइलाइटिंग?

आप

+0

संभावित डुप्लिकेट [एक नई भाषा के लिए एक emacs मोड कैसे लिखें?] (Http://stackoverflow.com/questions/91201/how-to-write-an-emacs-mode-for-a-new- भाषा) – dmckee

+0

@ डीएमकी: मुझे नहीं लगता कि यह उस प्रश्न का डुप्लिकेट है। यह सच है कि कुछ * उत्तर * इस विषय को कुछ हद तक कवर करते हैं। आप इस प्रश्न का उत्तर देने के बजाय जो कुछ भी सोचते हैं उससे लिंक करना बेहतर होगा, यह संकेत देने के बजाय कि यह * प्रश्न * प्रमुख मोड * प्रश्न * को डुप्लिकेट करता है। – Drew

उत्तर

20

एक कस्टम Generic Mode शायद सबसे अच्छी जगह शुरू करने के लिए है की परिभाषा धन्यवाद। आप निम्न स्निपेट के रूप में किसी भाषा के लिए मूल वाक्यविन्यास हाइलाइटिंग को परिभाषित कर सकते हैं।

(require 'generic-x) 

(define-generic-mode 
    'my-mode       ;; name of the mode 
    '("//")       ;; comments delimiter 
    '("function" "var" "return")  ;; some keywords 
    '(("=" . 'font-lock-operator) 
    ("+" . 'font-lock-operator)  ;; some operators 
    (";" . 'font-lock-builtin))  ;; a built-in 
    '("\\.myext$")     ;; files that trigger this mode 
    nil        ;; any other functions to call 
    "My custom highlighting mode"  ;; doc string 
) 

अस्पष्ट भाषाओं के लिए कुछ बुनियादी वाक्यविन्यास को हाइलाइट करने के लिए यह बहुत अच्छा है। मैं कुछ मामलों में लॉग फाइलों के लिए भी इसका इस्तेमाल करता हूं।

+0

क्या कोई इसे सहेज लेगा, यह मेरी-syntax.el जैसी फ़ाइल है और'emacs में '(' my-syntax 'की आवश्यकता है) जैसे कुछ जोड़ें? धन्यवाद –

+3

यदि आप चाहें तो इसे कर सकते हैं, या इसे सीधे अपने .emacs में डाल सकते हैं। यदि आप इसे एक अलग फ़ाइल में डालते हैं, तो सुनिश्चित करें कि यह आपके लोड-पथ में है और यदि आप उपयोग करना चाहते हैं तो आपको लाइन को शामिल करें ('मेरा-वाक्यविन्यास प्रदान करें) (मुझे' सिंटैक्स 'की आवश्यकता है)। –

+0

@ColinCochrane आप लॉग फ़ाइलों के लिए इसका उपयोग कैसे करते हैं? –

3

आपको this answer पर भी देखने के लिए उपयोगी लग सकता है, जिसमें कोड के लिए एक सूचक है जो कुछ महत्वपूर्ण शब्दों को हाइलाइट करने के लिए एक मामूली मोड को परिभाषित करता है - लेकिन केवल तारों और टिप्पणियों में।

यदि आप चाहते हैं कि एक मामूली मोड हाइलाइट है - कम सामान।

मैनुअल के प्रासंगिक भाग फ़ंक्शन 'font-lock-add-keywords और चर font-lock-keywords के लिए हैं।

4

EmacsWiki के Mode tutorial में एक प्रमुख मोड बनाने पर थोड़ी अधिक जानकारी है, यदि आप केवल सिंटैक्स हाइलाइटिंग से विस्तार करना चाहते हैं।

संबंधित मुद्दे