emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Nicolas Goaziou <mail@nicolasgoaziou.fr>
To: emacs-orgmode@gnu.org
Cc: "András Simonyi" <andras.simonyi@gmail.com>
Subject: Re: [BUG] Elisp error when exporting citation [9.5 (release_9.5-104-g2b1fc6 @ /home/quintus/.emacs.d/org-mode/lisp/)]
Date: Wed, 03 Nov 2021 17:02:24 +0100	[thread overview]
Message-ID: <87fssdtegf.fsf@nicolasgoaziou.fr> (raw)
In-Reply-To: <87v91f57pl.fsf@atlantis> ("Marvin Gülker"'s message of "Sat, 30 Oct 2021 08:48:22 +0200")

Hello,

Marvin Gülker <post+orgmodeml@guelker.eu> writes:

> trying to export the following org-document results in an Elisp error:
>
>     #+TITLE: Test
>     #+AUTHOR: Testauthor
>
>     #+LANGUAGE: de
>     #+bibliography: /tmp/mwe/mwe.bib
>
>     #+cite_export: csl /tmp/mwe/juristische-schulung.csl
>     
>     Test [cite:raubenheimer1996dongle p. 76; /Dreier/, in: @ds2018urhg § 69d Rn. 10]

[...]

> This is mwe.bib:
>
>     @Article{raubenheimer1996dongle,
>     author       = {Andreas Raubenheimer},
>     title        = {Beseitigung/Umgehung eines technischen Programmschutzes nach UrhG und UWG},
>     journaltitle = {Computer und Recht},
>     shortjournal = {CR},
>     year      = {1996},
>     pages     = {69-79},
>     langid    = {german}}
>     
>     @commentary{ds2018urhg,
>     title = "Urheberrechtsgesetz",
>     shorttitle = "UrhG",
>     editor = "Thomas Dreier and Gernot Schulze",
>     edition = "6",
>     year = "2018",
>     publisher = "C.H. Beck",
>     location = "München"
>     }
>
> juristische-schulung.csl is https://github.com/citation-style-language/styles/raw/e22b8a566bad9b4c7f52720f60dd875057a5d210/juristische-schulung.csl
>
> I use Org mode version 9.5 (release_9.5-104-g2b1fc6 @ /home/quintus/.emacs.d/org-mode/lisp/).
> Citeproc.el is at 34e66583d95a8d80fb5b9f2960f3382ca0e6d3ab.
>
> The following error is produced when exporting to HTML (C-c C-e h o):
>
>     Debugger entered--Lisp error: (wrong-type-argument plistp (prefix . #("<i>Dreier</i>, in:" 3 9 (:parent (italic (:begin 179 :end 187 :contents-begin 180 :contents-end 186 :post-blank 0 :parent (citation-reference (:key "ds2018urhg" :begin 178 :end 217 :post-blank 0 :prefix ... :suffix ... :parent ...))) #("Dreier" 0 6 (:parent #7)))) 13 18 (:parent (citation-reference (:key "ds2018urhg" :begin 178 :end 217 :post-blank 0 :prefix (#(" " 0 1 ...) (italic ... ...) #(", in: " 0 6 ...)) :suffix (#(" § 69d Rn. 10" 0 13 ...)) :parent (citation (:style nil :begin 143 :post-blank 0 :end 218 :prefix ... :contents-begin 178 :contents-end 217 :parent ...) #7)))))))

Indeed. There was an issue with global affixes in oc-csl.el. I think
I fixed it. Unfortunately, your ECM still does not work, because the
process encounters an error later on:

--8<---------------cut here---------------start------------->8---
Debugger entered--Lisp error: (wrong-type-argument sequencep splice)
  citeproc-rt--cquote-pstns-1(splice 66)
  citeproc-rt--cquote-pstns-1((nil #("raubenheimer1996dongle p. 76  \\emph{Dreier}, in: " 0 29 (:parent (citation (:style nil :begin 145 :post-blank 0 :end 221 :prefix (#("raubenheimer1996dongle p. 76 " 0 29 ...)) :contents-begin 181 :contents-end 220 :parent (footnote-reference (:label nil :type inline :contents-begin 145 :contents-end 221 :post-blank 0 :parent ...) #6)) (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix (... ... ...) :suffix (...) :parent #6)))) 36 42 (:parent (italic (:begin 182 :end 190 :contents-begin 183 :contents-end 189 :post-blank 0 :parent (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix ... :suffix ... :parent ...))) #("Dreier" 0 6 (:parent #6)))) 43 48 (:parent (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix (#(" " 0 1 ...) (italic ... ...) #(", in: " 0 6 ...)) :suffix (#(" § 69d Rn. 10" 0 13 ...)) :parent (citation (:style nil :begin 145 :post-blank 0 :end 221 :prefix ... :contents-begin 181 :contents-end 220 :parent ...) #6))))) (nil (nil (nil (((font-style . "italic")) ((... ...) (... ...) "/" (... ...))))) ", ") splice splice) 1)
  citeproc-rt--cquote-pstns((nil #("raubenheimer1996dongle p. 76  \\emph{Dreier}, in: " 0 29 (:parent (citation (:style nil :begin 145 :post-blank 0 :end 221 :prefix (#("raubenheimer1996dongle p. 76 " 0 29 ...)) :contents-begin 181 :contents-end 220 :parent (footnote-reference (:label nil :type inline :contents-begin 145 :contents-end 221 :post-blank 0 :parent ...) #6)) (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix (... ... ...) :suffix (...) :parent #6)))) 36 42 (:parent (italic (:begin 182 :end 190 :contents-begin 183 :contents-end 189 :post-blank 0 :parent (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix ... :suffix ... :parent ...))) #("Dreier" 0 6 (:parent #6)))) 43 48 (:parent (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix (#(" " 0 1 ...) (italic ... ...) #(", in: " 0 6 ...)) :suffix (#(" § 69d Rn. 10" 0 13 ...)) :parent (citation (:style nil :begin 145 :post-blank 0 :end 221 :prefix ... :contents-begin 181 :contents-end 220 :parent ...) #6))))) (nil (nil (nil (((font-style . "italic")) ((... ...) (... ...) "/" (... ...))))) ", ") splice splice))
  citeproc-rt-punct-in-quote((nil #("raubenheimer1996dongle p. 76  \\emph{Dreier}, in: " 0 29 (:parent (citation (:style nil :begin 145 :post-blank 0 :end 221 :prefix (#("raubenheimer1996dongle p. 76 " 0 29 ...)) :contents-begin 181 :contents-end 220 :parent (footnote-reference (:label nil :type inline :contents-begin 145 :contents-end 221 :post-blank 0 :parent ...) #6)) (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix (... ... ...) :suffix (...) :parent #6)))) 36 42 (:parent (italic (:begin 182 :end 190 :contents-begin 183 :contents-end 189 :post-blank 0 :parent (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix ... :suffix ... :parent ...))) #("Dreier" 0 6 (:parent #6)))) 43 48 (:parent (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix (#(" " 0 1 ...) (italic ... ...) #(", in: " 0 6 ...)) :suffix (#(" § 69d Rn. 10" 0 13 ...)) :parent (citation (:style nil :begin 145 :post-blank 0 :end 221 :prefix ... :contents-begin 181 :contents-end 220 :parent ...) #6))))) (nil (nil (nil (((font-style . "italic")) ((... ...) (... ...) "/" (... ...))))) ", ") splice splice))
  citeproc-rt-finalize((nil #("raubenheimer1996dongle p. 76  \\emph{Dreier}, in: " 0 29 (:parent (citation (:style nil :begin 145 :post-blank 0 :end 221 :prefix (#("raubenheimer1996dongle p. 76 " 0 29 ...)) :contents-begin 181 :contents-end 220 :parent (footnote-reference (:label nil :type inline :contents-begin 145 :contents-end 221 :post-blank 0 :parent ...) #6)) (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix (... ... ...) :suffix (...) :parent #6)))) 36 42 (:parent (italic (:begin 182 :end 190 :contents-begin 183 :contents-end 189 :post-blank 0 :parent (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix ... :suffix ... :parent ...))) #("Dreier" 0 6 (:parent #6)))) 43 48 (:parent (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix (#(" " 0 1 ...) (italic ... ...) #(", in: " 0 6 ...)) :suffix (#(" § 69d Rn. 10" 0 13 ...)) :parent (citation (:style nil :begin 145 :post-blank 0 :end 221 :prefix ... :contents-begin 181 :contents-end 220 :parent ...) #6))))) (nil (nil (nil (((font-style . "italic")) ((... ...) (... ...) "/" (... ...))))) ", ") splice splice) t)
  citeproc-citation--render(#s(citeproc-citation :cites ((... ... ... ... ... ... ... ...)) :note-index 1 :mode nil :suppress-affixes nil :capitalize-first nil :ignore-et-al nil :grouped nil) #s(citeproc-proc :style #s(citeproc-style :info (... ... ... ... ... ... ... ... ... ... ... ... ...) :opts (... ... ... ... ...) :bib-opts (... ... ...) :bib-sort (lambda ... ...) :bib-sort-orders (t t) :bib-layout (lambda ... ...) :cite-opts (... ... ...) :cite-note t :cite-sort nil :cite-sort-orders nil :cite-layout (lambda ... ...) :cite-layout-attrs (...) :locale-opts (... ...) :macros (... ... ... ... ... ... ... ... ...) :terms (... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...) :uses-ys-var nil :date-text (... ... ... ...) :date-numeric (... ... ... ...)) :getter #f(compiled-function (itemids) #<bytecode 0x38cd289>) :itemdata #<hash-table equal 1/65 0x21dfd2d> :citations #s(queue :head (...) :tail (...)) :names #<hash-table equal 2/65 0x38d52e1> :finalized t) t)
  citeproc-citation--render-formatted-citation(#s(citeproc-citation :cites ((... ... ... ... ... ... ... ...)) :note-index 1 :mode nil :suppress-affixes nil :capitalize-first nil :ignore-et-al nil :grouped nil) #s(citeproc-proc :style #s(citeproc-style :info (... ... ... ... ... ... ... ... ... ... ... ... ...) :opts (... ... ... ... ...) :bib-opts (... ... ...) :bib-sort (lambda ... ...) :bib-sort-orders (t t) :bib-layout (lambda ... ...) :cite-opts (... ... ...) :cite-note t :cite-sort nil :cite-sort-orders nil :cite-layout (lambda ... ...) :cite-layout-attrs (...) :locale-opts (... ...) :macros (... ... ... ... ... ... ... ... ...) :terms (... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...) :uses-ys-var nil :date-text (... ... ... ...) :date-numeric (... ... ... ...)) :getter #f(compiled-function (itemids) #<bytecode 0x38cd289>) :itemdata #<hash-table equal 1/65 0x21dfd2d> :citations #s(queue :head (...) :tail (...)) :names #<hash-table equal 2/65 0x38d52e1> :finalized t) latex t)
  #f(compiled-function (it) #<bytecode 0x3b4710d>)(#s(citeproc-citation :cites (((position . first) (itd . #s(citeproc-itemdata :varvals ((citation-number . "1") (label . "page") (publisher-place . "München") (publisher . "C.H. Beck") (title-short . "UrhG") (title . "Urheberrechtsgesetz") (issued ...) (type . "book") (editor ... ...) (edition . "6")) :rawcite nil :rc-uptodate nil :sort-key ("Dreier, Thomas/ Schulze, Gernot (eds.)" "70180000") :occurred-before 1 :disamb-pos first)) (id . "ds2018urhg") (prefix . #("raubenheimer1996dongle p. 76  \\emph{Dreier}, in:" 0 29 (:parent (citation ... ...)) 36 42 (:parent (italic ... ...)) 43 48 (:parent (citation-reference ...)))) (suffix) (locator . #("69d Rn. 10" 0 10 (:parent (citation-reference ...)))) (label . "section") (location . #(" § 69d Rn. 10" 0 13 (:parent (citation-reference ...)))))) :note-index 1 :mode nil :suppress-affixes nil :capitalize-first nil :ignore-et-al nil :grouped nil))
  mapcar(#f(compiled-function (it) #<bytecode 0x3b4710d>) (#s(citeproc-citation :cites (((position . first) (itd . #s(citeproc-itemdata :varvals (... ... ... ... ... ... ... ... ... ...) :rawcite nil :rc-uptodate nil :sort-key ("Dreier, Thomas/ Schulze, Gernot (eds.)" "70180000") :occurred-before 1 :disamb-pos first)) (id . "ds2018urhg") (prefix . #("raubenheimer1996dongle p. 76  \\emph{Dreier}, in:" 0 29 (:parent ...) 36 42 (:parent ...) 43 48 (:parent ...))) (suffix) (locator . #("69d Rn. 10" 0 10 (:parent ...))) (label . "section") (location . #(" § 69d Rn. 10" 0 13 (:parent ...))))) :note-index 1 :mode nil :suppress-affixes nil :capitalize-first nil :ignore-et-al nil :grouped nil)))
  citeproc-render-citations(#s(citeproc-proc :style #s(citeproc-style :info (... ... ... ... ... ... ... ... ... ... ... ... ...) :opts (... ... ... ... ...) :bib-opts (... ... ...) :bib-sort (lambda ... ...) :bib-sort-orders (t t) :bib-layout (lambda ... ...) :cite-opts (... ... ...) :cite-note t :cite-sort nil :cite-sort-orders nil :cite-layout (lambda ... ...) :cite-layout-attrs (...) :locale-opts (... ...) :macros (... ... ... ... ... ... ... ... ...) :terms (... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...) :uses-ys-var nil :date-text (... ... ... ...) :date-numeric (... ... ... ...)) :getter #f(compiled-function (itemids) #<bytecode 0x38cd289>) :itemdata #<hash-table equal 1/65 0x21dfd2d> :citations #s(queue :head (...) :tail (...)) :names #<hash-table equal 2/65 0x38d52e1> :finalized t) latex t)
  (let* ((rendered (citeproc-render-citations processor (org-cite-csl--output-format info) (org-cite-csl--no-citelinks-p info))) (result (seq-mapn #'cons citations rendered))) (plist-put info :cite-citeproc-rendered-citations result) result)
  (let* ((citations (org-cite-list-citations info)) (processor (org-cite-csl--processor info)) (structures (mapcar #'(lambda (c) (org-cite-csl--create-structure c info)) citations))) (citeproc-append-citations structures processor) (let* ((rendered (citeproc-render-citations processor (org-cite-csl--output-format info) (org-cite-csl--no-citelinks-p info))) (result (seq-mapn #'cons citations rendered))) (plist-put info :cite-citeproc-rendered-citations result) result))
  (or (plist-get info :cite-citeproc-rendered-citations) (let* ((citations (org-cite-list-citations info)) (processor (org-cite-csl--processor info)) (structures (mapcar #'(lambda (c) (org-cite-csl--create-structure c info)) citations))) (citeproc-append-citations structures processor) (let* ((rendered (citeproc-render-citations processor (org-cite-csl--output-format info) (org-cite-csl--no-citelinks-p info))) (result (seq-mapn #'cons citations rendered))) (plist-put info :cite-citeproc-rendered-citations result) result)))
--8<---------------cut here---------------end--------------->8---

It looks like there's something to repair on the Citeproc side. I'm
Cc'ing András Simonyi for a better understanding of the problem.

Thank you.

Regards,
-- 
Nicolas Goaziou


  parent reply	other threads:[~2021-11-03 16:06 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-30  6:48 [BUG] Elisp error when exporting citation [9.5 (release_9.5-104-g2b1fc6 @ /home/quintus/.emacs.d/org-mode/lisp/)] Marvin Gülker
2021-10-30 19:16 ` Marvin Gülker
2021-11-03 16:02 ` Nicolas Goaziou [this message]
2021-11-04  6:38   ` András Simonyi
2021-11-04  9:16     ` Nicolas Goaziou
2021-11-04 19:25       ` M. ‘quintus’ Gülker
2021-11-06  8:19         ` András Simonyi
2021-11-06 12:05           ` M. ‘quintus’ Gülker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87fssdtegf.fsf@nicolasgoaziou.fr \
    --to=mail@nicolasgoaziou.fr \
    --cc=andras.simonyi@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).