संभव डुप्लिकेट:
Syntax coloring for Cocoa appकोको टेक्स्ट व्यू में सिंटेक्स हाइलाइटिंग? अनुभव? सुझाव? विचार?
मैं वाक्य रचना एक कोको TextView में पर प्रकाश डाला में दिलचस्पी रखता हूँ।
मैं कई संसाधनों पाया:
approach with flex, एक flex पैटर्न एक
TextView
प्रतिनिधि मेंtextStorageDidProcessEditing
प्रति मिलान के माध्यम से। इस दृष्टिकोण में पूरी स्ट्रिंग प्रत्येक इनपुट ईवेंट पर पार्स हो जाती है, इसलिए प्रदर्शन घटता है।उपयोग
NSTextStorageDidProcessEditingNotification
, तो संपादित रेंज मिलता है, और सिर्फ वहाँ रंग लागू होते हैं:CocoaDev एक own page on the topic of syntax highlighting है। सीमा शब्दबाउंड या कुछ भी हो सकती है; यह निश्चित रूप से प्रदर्शन में सुधार करता है।
उल्लेख किया गया: उदाहरण के लिए, उदाहरण के लिए, केवल वर्तमान में स्क्रीन पर पाठ को रंगीन करता है, और जब तक आप इसे स्क्रॉल नहीं करते हैं तब तक बाकी दस्तावेज़ को रंगना बंद कर देता है। कोई इसे कैसे कार्यान्वित करेगा?
उपयोग
NSLayoutManager
- अस्थायी विशेषताओं [जो] केवल परदे पर ड्राइंग के लिए इस्तेमाल किया और किसी भी तरह से एक समान नहीं हैं कर रहे हैं ... के माध्यम से के रूप में डॉक्स कहते हैं, लेकिन यह है कि पिछले संपादित रेंज रंग नहीं है , जब तक एक सफेद जगह चरित्र दर्ज नहीं किया जाता है।कस्टम हेल्पर UKSyntaxColoredDocument - अच्छा, लेकिन भाषा परिभाषा संपत्ति सूची के माध्यम से की जाती है; अतिरिक्त/मौजूदा भाषा परिभाषाओं का उपयोग कैसे करें?
दृष्टिकोण से कोई भी वास्तव में विस्तृत या मजबूत मुझे लगता है (4. शायद छोड़कर ..)।
मैं एसएच के लिए pygments जैसे मजबूत मौजूदा पुस्तकालयों से अवगत हूं; और PyObjC का।
प्रश्न: कुछ मौजूदा लाइब्रेरी का उपयोग करना कैसे संभव होगा उदा। pygments को कोको TextView
में एक एक्स्टेंसिबल और प्रदर्शन वाक्यविन्यास हाइलाइट करने के लिए?
नोट: मुझे पता है कि यह प्रश्न बहुत व्यापक है (और बहुत लंबा है)। अनुभव और सुझाव के साथ ही समाधान का स्वागत है। धन्यवाद।Syntax coloring for Cocoa app
Smultron अब खुला स्रोत नहीं है, इसलिए स्रोत कोड अब उपलब्ध नहीं है। – zpasternack
स्रोत अभी भी soureforge वेबसाइट पर उपलब्ध है। यहां देखें: http://sourceforge.net/projects/smultron/files/smultron/3.6b1/ – Daniel
मैं सही खड़ा हूं, धन्यवाद! – zpasternack