ऑर्ग-मोड हाइपरलिंक को ठीक करना और बनाए रखना


15

यह लिंक रोट के साथ दो भाग का प्रश्न है

  1. क्या ओआरजी-मोड हाइपरलिंक, विशेष रूप से स्थानीय लोगों को मान्य करने के लिए कोई कार्यक्षमता प्रदान करता है? यह तथ्य के बाद लिंक रोट का मुकाबला करने के लिए इस्तेमाल किया जा सकता है।

  2. इससे भी बेहतर, क्या ओआरजी कार्यक्षमता प्रदान करता है ताकि अगर मैं किसी फ़ाइल को नामांकित में बदलूं, तो यह प्रभावित फाइलों को अपडेट कर देगा? यह कम से कम स्थानीय फ़ाइलों के लिए होने से पहले कुछ प्रकार के लिंक रोट को रोक सकता है।

जवाबों:


6

भाग 1 के लिए, मुझे कुछ भी अंतर्निहित नहीं मिला। निम्न फ़ंक्शन मिनीबफ़र में टूटे हुए लिंक की एक सूची प्रदान करेगा। मैंने इसे कुछ सरल उदाहरणों पर परीक्षण किया है, लेकिन बहुत दूर से।

(defun check-bit-rot ()
  "Searches current buffer for file: links, and reports the broken ones."
  (interactive)
  (save-excursion
    (beginning-of-buffer)
    (let (file-links)
      (while (re-search-forward org-bracket-link-analytic-regexp nil t)
        (if (string= "file:" (match-string-no-properties 1))
            (if (not (file-exists-p (match-string-no-properties 3)))
                (setq file-links
                      (cons (match-string-no-properties 0)
                            file-links)))))
      (message
       (concat "Warning: broken links in this file:\n"
               (mapconcat #'identity file-links "\n"))))))

1
क्या आपको लगता है कि org-bracket-link-analytic-regexpऑर्ग लिंक को अलग करने में मदद मिलेगी? लगता है जैसे यह इस तरह से कार्यों के लिए बनाया गया था।
कॉन्सटेंटाइन

@ कॉन्सटेंटाइन हाँ, धन्यवाद! उस एक के बारे में पता नहीं था।
टायलर

अच्छा लगा। दो संभव ऐड-ऑन विचार: (1) खोज और / या हाइलाइटिंग के माध्यम से खोज को बढ़ावा देने के लिए खराब लिंक के लिए कुछ अंकन पाठ जोड़ें; (2) बुरे लिंक को बुकमार्क करें।
डेविड जे।

आइडिया (3) इसे फ्लाईचेक चेकर में बनाते हैं, और इन-बफ़र हाइलाइटिंग आपके लिए किया जाएगा।
मालाबार

दिलचस्प सुझाव। जब छुट्टी का समय आएगा तो मैं इसे खोद दूँगा।
टायलर

8

Org 9.0 के बाद से आप org-lintफ़ंक्शन को चला सकते हैं, जो अन्य बातों के अलावा, टूटी हुई स्थानीय लिंक की जाँच करता है।


2

मैंने पायथन लिपि https://github.com/cashTangoTangoCash/orgFixLinks लिखी है जो उबंटू ओएस में एक स्थानीय ड्राइव पर एक या एक से अधिक ओआरजी फाइलों के भीतर टूटी हुई लिंक को सुधारने का प्रयास करती है। यह निश्चित रूप से एक शौकिया कमांड लाइन स्क्रिप्ट है, लेकिन इसके साथ खेलने लायक हो सकता है। एक GitHub विकी है जो प्रलेखन की एक डिग्री प्रदान करता है: https://github.com/cashTangoTangoCash/orgFixLinks/wiki । कृपया README में चेतावनियों की जाँच करें।

मुझे खेद है कि यह पायथन स्क्रिप्ट ऑर्ग का हिस्सा नहीं है, बल्कि पूरी तरह से अलग / स्टैंड-अलोन है। मुझे आशा है कि कोई भी परेशान नहीं है कि मैं सीधे ओपी के सवाल का जवाब नहीं दे रहा हूं; मुझे लगा कि कोई पायथन स्क्रिप्ट के साथ खेलना पसंद कर सकता है।

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