जब [[
ओआरजी-लिंक के पहले कोष्ठक (या कहीं पर / हाइपर-लिंक्ड ऑर्ग-लिंक के बाद) इस बिंदु को कॉल करें ।
यदि यह प्रारूप का है [[LINK][DESCRIPTION]]
या बफर [[LINK]]
में है तो एक ऑर्गन लिंक हटा दिया जाएगा org-mode
; और कुछ नहीं होगा।
सुरक्षा के लिए, मूल-लिंक से हटाए गए लिंक को kill-ring
उस घटना में सहेजा जाता है , जब उस लिंक का उपयोग कहीं और करने की आवश्यकता होती है।
(defun my/org-delete-link ()
"Replace an org link of the format [[LINK][DESCRIPTION]] with DESCRIPTION.
If the link is of the format [[LINK]], delete the whole org link.
In both the cases, save the LINK to the kill-ring.
Execute this command while the point is on or after the hyper-linked org link."
(interactive)
(when (derived-mode-p 'org-mode)
(let ((search-invisible t) start end)
(save-excursion
(when (re-search-backward "\\[\\[" nil :noerror)
(when (re-search-forward "\\[\\[\\(.*?\\)\\(\\]\\[.*?\\)*\\]\\]" nil :noerror)
(setq start (match-beginning 0))
(setq end (match-end 0))
(kill-new (match-string-no-properties 1)) ; Save the link to kill-ring
(replace-regexp "\\[\\[.*?\\(\\]\\[\\(.*?\\)\\)*\\]\\]" "\\2" nil start end)))))))
[[LINK]]
प्रारूप org लिंक का भी समर्थन किया । मैंने आपके उत्तर के बारे मेंmatch-beginning
और उससे सीखाmatch-end
।