* Bug? org-export-unravel-code inserts a spurious newline at end of inline-src-block elements
@ 2016-08-27 22:44 Clément Pit--Claudel
2016-08-28 10:04 ` Nicolas Goaziou
0 siblings, 1 reply; 2+ messages in thread
From: Clément Pit--Claudel @ 2016-08-27 22:44 UTC (permalink / raw)
To: emacs-orgmode
[-- Attachment #1.1: Type: text/plain, Size: 1435 bytes --]
Exporting the following file to HTML yields the following:
#+PROPERTY: header-args :exports code
This code has many src_python{def}s.
<p>
This code has many <code class="src src-python"><span style="color: #b4fa70;">def</span>
</code>s.
</p>
This renders as ~This code has many def s~, instead of the expected ~This code has many defs~. The extra space is due to the newline after before the closing </code> tag in the HTML exported sources.
This newline is added by ~org-export-unravel-code~:
;; Get code and clean it. Remove blank lines at its
;; beginning and end.
(code (replace-regexp-in-string
"\\`\\([ \t]*\n\\)+" ""
(replace-regexp-in-string
"\\([ \t]*\n\\)*[ \t]*\\'" "\n"
(if (or org-src-preserve-indentation
(org-element-property :preserve-indent element))
value
(org-remove-indentation value)))))
The documentation of this function seems slightly wrong, too, as it gets passed elements of type ~inline-src-block~:
(defun org-export-unravel-code (element)
"Clean source code and extract references out of it.
ELEMENT has either a `src-block' an `example-block' type.
I'd be happy to provide a patch, but it's not clear that it's a good idea to always remove the last blank line, so I'd rather defer to experts on these matters :)
Cheers,
Clément.
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Bug? org-export-unravel-code inserts a spurious newline at end of inline-src-block elements
2016-08-27 22:44 Bug? org-export-unravel-code inserts a spurious newline at end of inline-src-block elements Clément Pit--Claudel
@ 2016-08-28 10:04 ` Nicolas Goaziou
0 siblings, 0 replies; 2+ messages in thread
From: Nicolas Goaziou @ 2016-08-28 10:04 UTC (permalink / raw)
To: Clément Pit--Claudel; +Cc: emacs-orgmode
Hello,
> Exporting the following file to HTML yields the following:
>
> #+PROPERTY: header-args :exports code
> This code has many src_python{def}s.
>
> <p>
> This code has many <code class="src src-python"><span style="color: #b4fa70;">def</span>
> </code>s.
> </p>
>
> This renders as ~This code has many def s~, instead of the expected ~This code has many defs~. The extra space is due to the newline after before the closing </code> tag in the HTML exported sources.
>
> This newline is added by ~org-export-unravel-code~:
>
> ;; Get code and clean it. Remove blank lines at its
> ;; beginning and end.
> (code (replace-regexp-in-string
> "\\`\\([ \t]*\n\\)+" ""
> (replace-regexp-in-string
> "\\([ \t]*\n\\)*[ \t]*\\'" "\n"
> (if (or org-src-preserve-indentation
> (org-element-property :preserve-indent element))
> value
> (org-remove-indentation value)))))
>
> The documentation of this function seems slightly wrong, too, as it gets passed elements of type ~inline-src-block~:
>
> (defun org-export-unravel-code (element)
> "Clean source code and extract references out of it.
>
> ELEMENT has either a `src-block' an `example-block' type.
The documentation is correct. `org-export-unravel-code' is not meant to
be called on inline source blocks since they cannot contain coderefs.
I fixed "ox-html.el" accordingly. Thank you.
Regards,
--
Nicolas Goaziou
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2016-08-28 10:04 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-27 22:44 Bug? org-export-unravel-code inserts a spurious newline at end of inline-src-block elements Clément Pit--Claudel
2016-08-28 10:04 ` Nicolas Goaziou
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).