|
@@ -71,7 +71,10 @@
|
|
|
|
|
|
;; Generic functions/config (extend these for other clients)
|
|
|
|
|
|
-(org-link-set-parameters "irc" :follow #'org-irc-visit :store #'org-irc-store-link)
|
|
|
+(org-link-set-parameters "irc"
|
|
|
+ :follow #'org-irc-visit
|
|
|
+ :store #'org-irc-store-link
|
|
|
+ :export #'org-irc-export)
|
|
|
|
|
|
(defun org-irc-visit (link)
|
|
|
"Parse LINK and dispatch to the correct function based on the client found."
|
|
@@ -245,6 +248,16 @@ default."
|
|
|
;; no server match, make new connection
|
|
|
(erc-select :server server :port port))))
|
|
|
|
|
|
+(defun org-irc-export (link description format)
|
|
|
+ "Export an IRC link.
|
|
|
+See `org-link-parameters' for details about LINK, DESCRIPTION and
|
|
|
+FORMAT."
|
|
|
+ (let ((desc (or description link)))
|
|
|
+ (pcase format
|
|
|
+ (`html (format "<a href=\"irc:%s\">%s</a>" link desc))
|
|
|
+ (`md (format "[%s](irc:%s)" desc link))
|
|
|
+ (_ nil))))
|
|
|
+
|
|
|
(provide 'org-irc)
|
|
|
|
|
|
;; Local variables:
|