From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id 6DVLAHCzgmGDsgAAgWs5BA (envelope-from ) for ; Wed, 03 Nov 2021 17:06:08 +0100 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id uKGRN2+zgmFJeQAAB5/wlQ (envelope-from ) for ; Wed, 03 Nov 2021 16:06:07 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 1EBA21CB5A for ; Wed, 3 Nov 2021 17:06:07 +0100 (CET) Received: from localhost ([::1]:53844 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1miIm6-0005cO-9n for larch@yhetil.org; Wed, 03 Nov 2021 12:06:06 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43446) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1miIil-00014l-CJ for emacs-orgmode@gnu.org; Wed, 03 Nov 2021 12:02:39 -0400 Received: from relay11.mail.gandi.net ([217.70.178.231]:57591) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1miIig-0005yz-9R for emacs-orgmode@gnu.org; Wed, 03 Nov 2021 12:02:38 -0400 Received: (Authenticated sender: admin@nicolasgoaziou.fr) by relay11.mail.gandi.net (Postfix) with ESMTPSA id 36AE4100015; Wed, 3 Nov 2021 16:02:29 +0000 (UTC) From: Nicolas Goaziou To: emacs-orgmode@gnu.org Subject: Re: [BUG] Elisp error when exporting citation [9.5 (release_9.5-104-g2b1fc6 @ /home/quintus/.emacs.d/org-mode/lisp/)] References: <87v91f57pl.fsf@atlantis> Date: Wed, 03 Nov 2021 17:02:24 +0100 In-Reply-To: <87v91f57pl.fsf@atlantis> ("Marvin =?utf-8?Q?G=C3=BClker=22's?= message of "Sat, 30 Oct 2021 08:48:22 +0200") Message-ID: <87fssdtegf.fsf@nicolasgoaziou.fr> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=217.70.178.231; envelope-from=mail@nicolasgoaziou.fr; helo=relay11.mail.gandi.net X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?utf-8?Q?Andr=C3=A1s?= Simonyi Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1635955567; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=tU2Tzv0VN1AaE6FDgUaV5gRvK/f4+PiBA1/8o9MkI6c=; b=MKeN1mRbxyhVylBH2JgGKv0HSom3Q1BXRRAcDiZcHA0vQP7CDyJRKHYBqibxDr1O4hICvp U00xgXa8zFapxQVvYCnDExTnzuirjCl4Jd9TEFY8e4dGBMelaik+n/+DhGfuQT43Rlp1Co ddl4S3mlTSw2JKQwBKGvwNLIsV2Joe7kn2PPF4M66ilkyarQZc70QP+QnyfELt+iTVF4Qv H8YLl8Tu2H5XjoYwKWKQERpROFj5lkWLPXJEt+XPsKvivWrQNaMqbE1sJvVEheva/XFrNf sv7DwcoeZxer4kdEFqBgH3gjgp9L1pvyxclo8C/uHpo/DrOl5FwYvzLJVjo9rg== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1635955567; a=rsa-sha256; cv=none; b=GUWXnsFCjXzwF01Lx5LZQW2lPrC6dDdXWQ514MkQJQiIcGnRIfIXFQ6KzKIa7xOBu5J7f+ aMkkW1+0xjFu58fWbAericxnGkRYzOFOwwpAazflyQttZsRpwHd1BF2457FKvGdlyG9LP7 7ARDeFpqQIjn2RKx83st6vDxIqPJvTFPRoQGQ1n7s3dPZ2t+kFTxW+5oFXQpnkMP9W1VF9 F/KyzXhjz8fObtTwMJTVTX0thzC1y3AmvGjJNy4IzR85DceMcj10+aSgXrvVvWJtXwtP9b RwoKOMg2qINe+XC8uqqJmrGwW8xAb7390sodXiNQZfpW4m4WUrLbPdgmziZ+gA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Spam-Score: -2.42 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Queue-Id: 1EBA21CB5A X-Spam-Score: -2.42 X-Migadu-Scanner: scn0.migadu.com X-TUID: xCO00Bm5NGBz Hello, Marvin G=C3=BClker 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 >=20=20=20=20=20 > Test [cite:raubenheimer1996dongle p. 76; /Dreier/, in: @ds2018urhg = =C2=A7=C2=A069d Rn.=C2=A010] [...] > This is mwe.bib: > > @Article{raubenheimer1996dongle, > author =3D {Andreas Raubenheimer}, > title =3D {Beseitigung/Umgehung eines technischen Programmschu= tzes nach UrhG und UWG}, > journaltitle =3D {Computer und Recht}, > shortjournal =3D {CR}, > year =3D {1996}, > pages =3D {69-79}, > langid =3D {german}} >=20=20=20=20=20 > @commentary{ds2018urhg, > title =3D "Urheberrechtsgesetz", > shorttitle =3D "UrhG", > editor =3D "Thomas Dreier and Gernot Schulze", > edition =3D "6", > year =3D "2018", > publisher =3D "C.H. Beck", > location =3D "M=C3=BCnchen" > } > > juristische-schulung.csl is https://github.com/citation-style-language/st= yles/raw/e22b8a566bad9b4c7f52720f60dd875057a5d210/juristische-schulung.csl > > I use Org mode version 9.5 (release_9.5-104-g2b1fc6 @ /home/quintus/.emac= s.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 . #= ("Dreier, in:" 3 9 (:parent (italic (:begin 179 :end 187 :contents-b= egin 180 :contents-end 186 :post-blank 0 :parent (citation-reference (:key = "ds2018urhg" :begin 178 :end 217 :post-blank 0 :prefix ... :suffix ... :par= ent ...))) #("Dreier" 0 6 (:parent #7)))) 13 18 (:parent (citation-referenc= e (:key "ds2018urhg" :begin 178 :end 217 :post-blank 0 :prefix (#(" " 0 1 .= ..) (italic ... ...) #(", in: " 0 6 ...)) :suffix (#(" =C2=A7=C2=A069d Rn.= =C2=A010" 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-b= egin 181 :contents-end 220 :parent (footnote-reference (:label nil :type in= line :contents-begin 145 :contents-end 221 :post-blank 0 :parent ...) #6)) = (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :p= refix (... ... ...) :suffix (...) :parent #6)))) 36 42 (:parent (italic (:b= egin 182 :end 190 :contents-begin 183 :contents-end 189 :post-blank 0 :pare= nt (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0= :prefix ... :suffix ... :parent ...))) #("Dreier" 0 6 (:parent #6)))) 43 4= 8 (:parent (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post= -blank 0 :prefix (#(" " 0 1 ...) (italic ... ...) #(", in: " 0 6 ...)) :suf= fix (#(" =C2=A7=C2=A069d Rn.=C2=A010" 0 13 ...)) :parent (citation (:style = nil :begin 145 :post-blank 0 :end 221 :prefix ... :contents-begin 181 :cont= ents-end 220 :parent ...) #6))))) (nil (nil (nil (((font-style . "italic"))= ((... ...) (... ...) "/" (... ...))))) ", ") splice splice) 1) citeproc-rt--cquote-pstns((nil #("raubenheimer1996dongle p. 76 \\emph{Dr= eier}, in: " 0 29 (:parent (citation (:style nil :begin 145 :post-blank 0 := end 221 :prefix (#("raubenheimer1996dongle p. 76 " 0 29 ...)) :contents-beg= in 181 :contents-end 220 :parent (footnote-reference (:label nil :type inli= ne :contents-begin 145 :contents-end 221 :post-blank 0 :parent ...) #6)) (c= itation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :pre= fix (... ... ...) :suffix (...) :parent #6)))) 36 42 (:parent (italic (:beg= in 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-b= lank 0 :prefix (#(" " 0 1 ...) (italic ... ...) #(", in: " 0 6 ...)) :suffi= x (#(" =C2=A7=C2=A069d Rn.=C2=A010" 0 13 ...)) :parent (citation (:style ni= l :begin 145 :post-blank 0 :end 221 :prefix ... :contents-begin 181 :conten= ts-end 220 :parent ...) #6))))) (nil (nil (nil (((font-style . "italic")) (= (... ...) (... ...) "/" (... ...))))) ", ") splice splice)) citeproc-rt-punct-in-quote((nil #("raubenheimer1996dongle p. 76 \\emph{D= reier}, in: " 0 29 (:parent (citation (:style nil :begin 145 :post-blank 0 = :end 221 :prefix (#("raubenheimer1996dongle p. 76 " 0 29 ...)) :contents-be= gin 181 :contents-end 220 :parent (footnote-reference (:label nil :type inl= ine :contents-begin 145 :contents-end 221 :post-blank 0 :parent ...) #6)) (= citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :pr= efix (... ... ...) :suffix (...) :parent #6)))) 36 42 (:parent (italic (:be= gin 182 :end 190 :contents-begin 183 :contents-end 189 :post-blank 0 :paren= t (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 ...)) :suff= ix (#(" =C2=A7=C2=A069d Rn.=C2=A010" 0 13 ...)) :parent (citation (:style n= il :begin 145 :post-blank 0 :end 221 :prefix ... :contents-begin 181 :conte= nts-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 2= 21 :prefix (#("raubenheimer1996dongle p. 76 " 0 29 ...)) :contents-begin 18= 1 :contents-end 220 :parent (footnote-reference (:label nil :type inline :c= ontents-begin 145 :contents-end 221 :post-blank 0 :parent ...) #6)) (citati= on-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefix (= ... ... ...) :suffix (...) :parent #6)))) 36 42 (:parent (italic (:begin 18= 2 :end 190 :contents-begin 183 :contents-end 189 :post-blank 0 :parent (cit= ation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank 0 :prefi= x ... :suffix ... :parent ...))) #("Dreier" 0 6 (:parent #6)))) 43 48 (:par= ent (citation-reference (:key "ds2018urhg" :begin 181 :end 220 :post-blank = 0 :prefix (#(" " 0 1 ...) (italic ... ...) #(", in: " 0 6 ...)) :suffix (#(= " =C2=A7=C2=A069d Rn.=C2=A010" 0 13 ...)) :parent (citation (:style nil :be= gin 145 :post-blank 0 :end 221 :prefix ... :contents-begin 181 :contents-en= d 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(citepr= oc-style :info (... ... ... ... ... ... ... ... ... ... ... ... ...) :opts = (... ... ... ... ...) :bib-opts (... ... ...) :bib-sort (lambda ... ...) :b= ib-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 (... ... ... ...)) :gett= er #f(compiled-function (itemids) #) :itemdata # :citations #s(queue :head (...) :tail (...)) :na= mes # :finalized t) t) citeproc-citation--render-formatted-citation(#s(citeproc-citation :cites = ((... ... ... ... ... ... ... ...)) :note-index 1 :mode nil :suppress-affix= es nil :capitalize-first nil :ignore-et-al nil :grouped nil) #s(citeproc-pr= oc :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 (... ...) :ma= cros (... ... ... ... ... ... ... ... ...) :terms (... ... ... ... ... ... = ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...= ... ...) :uses-ys-var nil :date-text (... ... ... ...) :date-numeric (... = ... ... ...)) :getter #f(compiled-function (itemids) #)= :itemdata # :citations #s(queue :head (..= .) :tail (...)) :names # :finalized t) lat= ex t) #f(compiled-function (it) #)(#s(citeproc-citation :ci= tes (((position . first) (itd . #s(citeproc-itemdata :varvals ((citation-nu= mber . "1") (label . "page") (publisher-place . "M=C3=BCnchen") (publisher = . "C.H. Beck") (title-short . "UrhG") (title . "Urheberrechtsgesetz") (issu= ed ...) (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 . #("r= aubenheimer1996dongle p. 76 \\emph{Dreier}, in:" 0 29 (:parent (citation .= .. ...)) 36 42 (:parent (italic ... ...)) 43 48 (:parent (citation-referenc= e ...)))) (suffix) (locator . #("69d Rn.=C2=A010" 0 10 (:parent (citation-r= eference ...)))) (label . "section") (location . #(" =C2=A7=C2=A069d Rn.=C2= =A010" 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) #) (#s(citeproc-cita= tion :cites (((position . first) (itd . #s(citeproc-itemdata :varvals (... = ... ... ... ... ... ... ... ... ...) :rawcite nil :rc-uptodate nil :sort-ke= y ("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.=C2=A010" 0 10 (:parent ...)))= (label . "section") (location . #(" =C2=A7=C2=A069d Rn.=C2=A010" 0 13 (:pa= rent ...))))) :note-index 1 :mode nil :suppress-affixes nil :capitalize-fir= st 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-lay= out-attrs (...) :locale-opts (... ...) :macros (... ... ... ... ... ... ...= ... ...) :terms (... ... ... ... ... ... ... ... ... ... ... ... ... ... .= .. ... ... ... ... ... ... ... ... ... ... ... ...) :uses-ys-var nil :date-= text (... ... ... ...) :date-numeric (... ... ... ...)) :getter #f(compiled= -function (itemids) #) :itemdata # :citations #s(queue :head (...) :tail (...)) :names # :finalized t) latex t) (let* ((rendered (citeproc-render-citations processor (org-cite-csl--outp= ut-format info) (org-cite-csl--no-citelinks-p info))) (result (seq-mapn #'c= ons citations rendered))) (plist-put info :cite-citeproc-rendered-citations= result) result) (let* ((citations (org-cite-list-citations info)) (processor (org-cite-cs= l--processor info)) (structures (mapcar #'(lambda (c) (org-cite-csl--create= -structure c info)) citations))) (citeproc-append-citations structures proc= essor) (let* ((rendered (citeproc-render-citations processor (org-cite-csl-= -output-format info) (org-cite-csl--no-citelinks-p info))) (result (seq-map= n #'cons citations rendered))) (plist-put info :cite-citeproc-rendered-cita= tions 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* ((rende= red (citeproc-render-citations processor (org-cite-csl--output-format info)= (org-cite-csl--no-citelinks-p info))) (result (seq-mapn #'cons citations r= endered))) (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=C3=A1s Simonyi for a better understanding of the problem. Thank you. Regards, --=20 Nicolas Goaziou