मूल org फ़ाइल पर वापस टंगी फ़ाइल पर परिवर्तन सिंक्रनाइज़ किए जा रहे हैं


12

मैं पटकथा लिखने के लिए फाउंटेन मोड के साथ ओआरजी-मोड का उपयोग कर रहा हूं।

संगठन के लिए संगठन और स्क्रीनप्ले प्रारूपण के लिए फव्वारा।

यह इस उद्देश्य के लिए उपयोग किया जाने वाला कोड है:

Org में (फाउंटेन) स्रोत ब्लॉक के साथ काम करने के लिए सेटिंग्स।

;; prevent org from messing with indentation of the source text.
(setq org-src-preserve-indentation t)
(setq org-edit-src-content-indentation 0)

;; open the buffer for editing fountain in another window.
(setq org-src-window-setup (quote reorganize-frame))

;; prevent a message in the edit buffer from being shown.
(setq org-edit-src-persistent-message nil)

;; save edits in the fountain buffer to the org buffer after x sec
(setq org-edit-src-auto-save-idle-delay 1)

उदाहरण के लिए :

अधिनियम 1

** एसक्यू 1

*** दृश्य 1

दृश्य से संबंधित पाठ का गुच्छा और पात्र क्या कर रहे हैं और वह सब कुछ जो मुझे जानना आवश्यक है लेकिन पटकथा में कभी खत्म नहीं होगा।

BEGIN_SRC फव्वारा

पटकथा पाठ

END_SRC

अब मैं Cc 'और यह एक नए बफर में ऊपर को खोलता है और मैं इसे वहां से ले जा सकता हूं।


मेरे वर्तमान सेट के साथ समस्या यह है कि यह मुझे पटकथा पाठ को संपूर्णता में देखने नहीं देता है।

मेरे पास लगभग 50+ ऐसे ब्लॉक हैं और मैं निम्नलिखित प्राप्त करना चाहूंगा:

मैं चाहता हूं कि ओआरजी सभी फाउंटेन ब्लॉकों को एक विशिष्ट फ़ाइल में निर्यात करें, फाउंटेन-स्क्रीनप्ले कहें। इस तरह मेरे पास स्क्रीनप्ले के साथ एक ही फाइल है।

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


ऐसा करने के लिए, मैंने अपनी org फ़ाइल में निम्नलिखित गुण सम्मिलित किए:

:PROPERTIES:
:file: "~/files/fountain-screenplay.fountain"
:cache: yes
:comments: yes 
:tangle: yes
:results: silent
:END: 

जब मैंने Cc Cc दिया, तो यह कहते हुए एक त्रुटि हुई कि No org-babel कार्य को निष्पादित नहीं करता है।

और जब मैं Cc Cv t कहता है तो 0 ब्लॉक उलझ जाते हैं।

क्या मेरा दृष्टिकोण गलत है या मुझे कुछ याद आ रहा है?

संपादित करें: मैंने गुण बदल दिए हैं:

#+properties :file .fountain :cache yes and so on 

और जब मैं Cc Cv t करता है तो यह स्रोत ब्लॉक्स को एक filename.fountain में बदल देता है। अब सिंक भाग हल होना बाकी है।


यह कुछ ऐसा है जो प्रोग्रामिंग के लिए भी उपयोगी होगा। आप पर एक नज़र डाल सकते हैं outshine.el, यह विपरीत सड़क (टिप्पणियों के साथ स्रोत फ़ाइल जो कि एक ऑर्गन बफर में देखी जा सकती है) को लेती हुई प्रतीत होती है, लेकिन यह आप जो चाहते हैं उसके करीब आ सकती है। डिस्क्लेमर: यह कभी नहीं खुद (अभी तक) की कोशिश की है।
टी। वेरॉन

@ T.Verron आउटसेंट लेंटिक के समान प्रतीत होता है जहाँ एक ही फाइल को अलग-अलग मोड में अलग-अलग बफ़र्स में देखा जा सकता है। मैं यह जांचने के लिए अधिक पढ़ूंगा कि क्या अतिरिक्त सुविधाएँ हैं जो दाल नहीं है।
जिज्ञासु-शास्त्री

यह दो-तरफा सिंकिंग मौजूद हो सकता है (मुझे नहीं लगता कि यह करता है, लेकिन ऑर्ग मोड फीचर्स में किसी का ध्यान नहीं जाता है), लेकिन नॉन-फाउंटेन टेक्स्ट की दृश्यता को टॉगल करना काफी आसान होगा। आप तब भी एक समय में एक बार एक फ़ाइल के लिए उलझन कर सकते हैं।
मालाबार

एक फ़ंक्शन है org-babel-detangleजो इस पर दावा करता है (आपको लिंक टिप्पणियों के साथ पेचीदा प्रदान करता है)। मैं इसे काम करने के लिए कभी नहीं मिला।
इरीकॉस्टोक

2
मैंने सिर्फ org-babel-detangle का परीक्षण किया और यह उम्मीद के मुताबिक काम किया, यद्यपि मैंने बहुत कम परीक्षण किए, "उत्पादन-कोड" से दूर, लेकिन लिंक की गई टिप्पणियों के साथ सही ढंग से
अलग हो

जवाबों:


6

एक व्यापक रूप से ज्ञात विकल्प जो एक ही फ़ाइल के भीतर विभिन्न दस्तावेज़ प्रारूपों (ऑर्गन और फाउंटेन, उदाहरण के लिए) के बीच दो-तरफ़ा राउंड-ट्रिप लिंकेज को लागू करता है, फिलिप प्रभु द्वारा विकसित लेंटिक सर्वर सुविधा है। इसे MELPA रिपॉजिटरी के माध्यम से लेंटिक पैकेज के रूप में स्थापित किया जा सकता है।

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

यह एक समृद्ध एकीकरण है, जो संपादन के लिए अधिक उपयुक्त है, ऑर्गन-बैबेल के माध्यम से उलझन और डिटैंगल के एक-तरफा उत्पादन की तुलना में।


मैं "व्यापक रूप से ज्ञात" कथन का विवाद करता हूं, क्योंकि मुझे यहां केवल आपके उत्तर से दाल के बारे में पता चला है। इसके अलावा, जैसा कि आप melpa पर देख सकते हैं, इसमें उतने इंस्टॉलेशन नहीं हैं, जितने कि मैं मूल रूप से शुद्ध जादू के पैकेज के लिए उम्मीद कर रहा था!
क्रिश्चियन हरेंज

1

पार्टी के लिए थोड़ा देर से, लेकिन मुझे उनकी बाहरी फ़ाइलों के साथ पेचीदा ब्लॉकों को सिंक करने की समान इच्छा थी।

इसके लिए मैं org-tanglesync की सिफारिश कर सकता हूं

यह पैकेज :tangle <filename>एक ओआरजी फ़ाइल के हेडर में एक संपत्ति की तलाश करता है और ब्लॉक सामग्री की तुलना करता है। पृष्ठभूमि में एक अंतर किया जाता है, और फिर उपयोगकर्ता को बाहरी परिवर्तनों को खींचने या अस्वीकार करने के लिए प्रेरित किया जाता है।

मुझे लगता है कि यह अधिक सहज है, org-babel-detangleक्योंकि इसके लिए बाहरी फ़ाइल को काम करने के लिए अतिरिक्त org-babel जादू की आवश्यकता नहीं है, अर्थात यह स्रोत फ़ाइल है जो बाहरी निर्यात ब्लॉकों को ट्रैक करती है और न कि दूसरे तरीके से।


2
क्या आप विस्तार से समझा सकते हैं?
DoMiNeLa10

1
क्या @ DoMiNeLa10 ने कहा। हो सकता है कि उस पैकेज के बारे में कुछ कहें, और इसका उपयोग कैसे करें क्योंकि यहां समाधान अन्य प्रस्तावित समाधानों का उपयोग करने से अलग है।
आकर्षित किया

अपडेट किया गया, मददगार मॉडरेशन के लिए आपका धन्यवाद
मेहमत टेकमैन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.