|
@@ -3050,19 +3050,25 @@ INFO is a plist holding contextual information. See
|
|
|
"#"
|
|
|
(org-publish-resolve-external-link option path t))))))
|
|
|
(t raw-path)))
|
|
|
- ;; Extract attributes from parent's paragraph. HACK: Only do
|
|
|
- ;; this for the first link in parent (inner image link for
|
|
|
- ;; inline images). This is needed as long as attributes
|
|
|
- ;; cannot be set on a per link basis.
|
|
|
(attributes-plist
|
|
|
- (let* ((parent (org-export-get-parent-element link))
|
|
|
- (link (let ((container (org-export-get-parent link)))
|
|
|
- (if (and (eq (org-element-type container) 'link)
|
|
|
- (org-html-inline-image-p link info))
|
|
|
- container
|
|
|
- link))))
|
|
|
- (and (eq (org-element-map parent 'link 'identity info t) link)
|
|
|
- (org-export-read-attribute :attr_html parent))))
|
|
|
+ (org-combine-plists
|
|
|
+ ;; Extract attributes from parent's paragraph. HACK: Only
|
|
|
+ ;; do this for the first link in parent (inner image link
|
|
|
+ ;; for inline images). This is needed as long as
|
|
|
+ ;; attributes cannot be set on a per link basis.
|
|
|
+ (let* ((parent (org-export-get-parent-element link))
|
|
|
+ (link (let ((container (org-export-get-parent link)))
|
|
|
+ (if (and (eq 'link (org-element-type container))
|
|
|
+ (org-html-inline-image-p link info))
|
|
|
+ container
|
|
|
+ link))))
|
|
|
+ (and (eq link (org-element-map parent 'link #'identity info t))
|
|
|
+ (org-export-read-attribute :attr_html parent)))
|
|
|
+ ;; Also add attributes from link itself. Currently, those
|
|
|
+ ;; need to be added programmatically before `org-html-link'
|
|
|
+ ;; is invoked, for example, by backends building upon HTML
|
|
|
+ ;; export.
|
|
|
+ (org-export-read-attribute :attr_html link)))
|
|
|
(attributes
|
|
|
(let ((attr (org-html--make-attribute-string attributes-plist)))
|
|
|
(if (org-string-nw-p attr) (concat " " attr) ""))))
|