2012-11-12 16 views
5

में पीओएम (प्वाइंट-या-मार्कर) मैं org-entry-properties और org-id-get कार्यों का उपयोग करने की कोशिश कर रहा हूं, जिनमें से दोनों वैकल्पिक तर्क pom का उपयोग करते हैं। उदाहरण के लिए, org-entry-properties दस्तावेज़ीकरण कहता है:ओआरजी मोड

बिंदु-या-मार्कर पीओएम पर प्रविष्टि के सभी गुण प्राप्त करें।

Emacs manual लगभग शब्द "मार्कर" का उल्लेख नहीं है, लेकिन वहाँ कई -marker के साथ समाप्त कार्य हैं। अब मेरे पास इसके बारे में कई सवाल हैं।

  1. उस बिंदु-या-मार्कर क्या है?
  2. क्या यह चिह्न की अंगूठी में चिह्न के समान है?
  3. मैं ऑर्ग-मोड बफर में मार्कर कैसे प्राप्त करूं?
  4. उपर्युक्त कार्यों के आमंत्रण में मैं इस मार्कर का उपयोग कैसे करूं?

उत्तर

9

एक बफर में एक (पूर्ण) स्थिति एक संख्या द्वारा दी जाती है, जो मोटे तौर पर उस स्थिति से पहले वर्णों की संख्या होती है। दूसरी ओर, मार्कर बफर में "सापेक्ष स्थिति" को चिह्नित करने की अनुमति देते हैं: यदि आप इससे पहले टेक्स्ट जोड़ते हैं, तो यह आगे बढ़ता है (जैसे यह अदृश्य, 0-चौड़ाई, वर्ण) था।

किसी भी समय, आप एक मार्कर को एक (पूर्ण) स्थिति (एक पूर्णांक) में परिवर्तित कर सकते हैं। यही कारण है कि कई तर्क एक पीओएम चाहते हैं: वे एक स्थिति चाहते हैं, लेकिन स्वीकार करते हैं कि यह एक मार्कर के रूप में दिया जाता है।

emacs में "चिह्न", एक विशिष्ट मार्कर है जो उचित कुंजी chords द्वारा उपयोग करना आसान है (सी-एसपीसी इसे सेट करता है, सी-एक्स सी-एक्स चिह्न और बिंदु का आदान-प्रदान करता है)। /एक "मार्क रिंग" सभी पिछले "मार्क" मार्करों का इतिहास है (या तो दिए गए बफर में, जो स्थानीय मार्क रिंग है, या वैश्विक रूप से, तथाकथित वैश्विक चिह्न अंगूठी के लिए)।elisp के मैनुअल में

और जानकारी:

2
Emacs मैनुअल के बजाय

, मार्कर बारे में अधिक जानकारी के लिए Emacs Lisp Reference Manual पर एक नज़र डालें:

एक मार्कर एक लिस्प आसपास के पाठ करने के लिए एक बफर सापेक्ष में एक पद निर्दिष्ट करने के लिए इस्तेमाल किया वस्तु है । जब भी पाठ डाला जाता है या हटा दिया जाता है, तो 0 मार्के दोनों तरफ दो वर्णों के साथ रहता है, तो एक मार्कर अपने ऑफसेट को से बफर की शुरुआत में बदल देता है।

कार्यों आप का उल्लेख इस प्रकार या तो एक मार्कर, यानी, किसी तुतलाना उद्देश्य यह है कि दोनों एक बफर और है कि बफर में एक पद, या बस की स्थिति शामिल किया जा सकता है पोम तत्व। पहले मामले में, फ़ंक्शंस पहले मार्कर के बफर पर स्विच करेगा और बाकी फ़ंक्शन निष्पादित करने से पहले मार्कर की स्थिति में point स्थानांतरित करेगा।

दूसरे मामले में, यह वर्तमान बफर में रहेगा, लेकिन शेष कार्य निष्पादित करने से पहले point को दिए गए स्थान पर ले जाएं।

यही है, फ़ंक्शन दिए गए बफर/स्थिति के सापेक्ष निष्पादित किया जाता है। फ़ंक्शन के शरीर के अंत में, point का मूल स्थान पुनर्स्थापित किया गया है।