From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sam Halliday Subject: Bug: markdown export errors on headers [9.0.9 (9.0.9-82-gb862c2-elpaplus @ /home/fommil/.emacs.d/elpa/org-plus-contrib-20170814/)] Date: Sat, 19 Aug 2017 10:45:59 +0100 Message-ID: <87h8x3zy94.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51179) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dj0KW-0008L7-Hh for emacs-orgmode@gnu.org; Sat, 19 Aug 2017 05:46:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dj0KT-0007hO-Ct for emacs-orgmode@gnu.org; Sat, 19 Aug 2017 05:46:08 -0400 Received: from mail-wm0-x22a.google.com ([2a00:1450:400c:c09::22a]:36686) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dj0KT-0007go-1E for emacs-orgmode@gnu.org; Sat, 19 Aug 2017 05:46:05 -0400 Received: by mail-wm0-x22a.google.com with SMTP id t201so15651297wmt.1 for ; Sat, 19 Aug 2017 02:46:03 -0700 (PDT) Received: from Samurai (host165-120-150-210.range165-120.btcentralplus.com. [165.120.150.210]) by smtp.gmail.com with ESMTPSA id 3sm2104683wmi.46.2017.08.19.02.46.00 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 19 Aug 2017 02:46:00 -0700 (PDT) List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: "Emacs-orgmode" To: emacs-orgmode@gnu.org Regression in org-plus-contrib from http://orgmode.org/elpa/ vs version distributed with Emacs 25.2.1 Running M-x md-org-export-to-markdown on a simple org file such as the following =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D #+TITLE: Functional Programming in Scala for Mortals /Functional Programming in Scala for Mortals/ is a book aimed at Scala developers with an Object Oriented background who wish to learn the *Functional Programming* paradigm. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Causes the following backtrace: Debugger entered--Lisp error: (wrong-type-argument listp #("Functional Prog= ramming in Scala for Mortals" 0 43 (:parent (#1)))) org-element-set-contents(#("Functional Programming in Scala for Mortals" = 0 43 (:parent (#0)))) apply(org-element-set-contents #("Functional Programming in Scala for Mor= tals" 0 43 (:parent (#0))) nil) #[257 "\211\305\306\307#=19\310\311\211:\204=00\312\202\"\n@9\203!\nAA\2= 02\"\n)\"\210\313\314 \211:\2043\312\202@\n@9\203?\nAA\202@\n)#\210\315\2= 11 =1B\n;\203V\316\317=0B\n#\202\\\320\nA@=0B\"*=1B\211;\203n\321\n\312=0B\= f$\202z\nA\322\nA@=0B\f#\240\210\n+\210 AA@\240\210 @\240*\207" [new old = element property value replace-regexp-in-string "\n" " " mapc #[(blob) "\3= 05 =1B\211;\203=00\306\f\307=0B\n$\202 \fA\310\fA@=0B\n#\240\210\f+\207" [b= lob old value property element :parent org-add-props nil plist-put] 6] nil = apply org-element-set-contents :parent get-text-property 0 plist-get org-ad= d-props plist-put] 7 "\n\n(fn S)"](#("Functional Programming in Scala for M= ortals" 0 43 (:parent (#0)))) #[257 "\211\211:\204=00\211;\205=00\311\262\202=00\211@9\205=00\211@\262= =01?\206\251\301\203-=01\312\301\313\">\206\251\211\2049\314\310\242\"\202\= 251\211\315=3D\203]\314\310\242\211:\204N\316\262\202Y\211@9\203Y\211AA\262= \"\202\251\211\304>\203~\300!\211\203}\302\203v\317\320\"\210\202}\307\307\= 242B\240\210\210\306\321=3D\203\271=01;\204\271\211=1A\236A\211\203\270\211= @\310\242=05\211;\203\247\322\323=03#\266\202\202\257\312A@\"\266\202!\210A= \266\202\202\216\210\303\203Q\306\321=3D\203Q\324!\325=3D\203Q=0E\211\203P\= 211@\211@A\211;\203\347\322\323=03#\266\202\202\357\312A@\"\266\202\211\203= G=01=1C\235\2030=01=1D\235\203!\326!\211\203=01\211@\310\242A!\210\310\242@= !\210A\266\202\202=01\210\202G\310\242A!\210\310\242@!\210\202G=01=1D\235\2= 03B\314\310\242\326!\"\210\202G\310\242!\210\266=01A\266\202\202\315\210\21= 1\305>\206\251=01\211:\204c\316\262\202n\211@9\203n\211AA\262?\206\251\306\= 327=3D\203\200\211=1E>?\206\251\306\330=3D\203\216\324!\331=3D\206\251\314\= 310\242\211:\204\235\316\262\202\250\211@9\203\250\211AA\262\"\207" [#[257 = "\211\305\306\307#=19\310\311\211:\204=00\312\202\"\n@9\203!\nAA\202\"\n)\= "\210\313\314 \211:\2043\312\202@\n@9\203?\nAA\202@\n)#\210\315\211 =1B\n= ;\203V\316\317=0B\n#\202\\\320\nA@=0B\"*=1B\211;\203n\321\n\312=0B\f$\202z\= nA\322\nA@=0B\f#\240\210\n+\210 AA@\240\210 @\240*\207" [new old element = property value replace-regexp-in-string "\n" " " mapc #[(blob) "\305 =1B\2= 11;\203=00\306\f\307=0B\n$\202 \fA\310\fA@=0B\n#\240\210\f+\207" [blob old = value property element :parent org-add-props nil plist-put] 6] nil apply or= g-element-set-contents :parent get-text-property 0 plist-get org-add-props = plist-put] 7 "\n\n(fn S)"] nil nil nil (plain-text) nil objects (nil) (#0) = plain-text plist-get :ignore-list mapc org-data nil throw :--map-first-matc= h objects get-text-property 0 org-element-class element reverse greater-ele= ments elements object org-element-secondary-value-alist org-element--parsed= -properties-alist org-element-dual-keywords org-element-multiple-keywords o= rg-element-greater-elements] 11 "\n\n(fn --DATA)"](#("Functional Programmin= g in Scala for Mortals" 0 43 (:parent (#0)))) mapc(#[257 "\211\211:\204=00\211;\205=00\311\262\202=00\211@9\205=00\211@= \262=01?\206\251\301\203-=01\312\301\313\">\206\251\211\2049\314\310\242\"\= 202\251\211\315=3D\203]\314\310\242\211:\204N\316\262\202Y\211@9\203Y\211AA= \262\"\202\251\211\304>\203~\300!\211\203}\302\203v\317\320\"\210\202}\307\= 307\242B\240\210\210\306\321=3D\203\271=01;\204\271\211=1A\236A\211\203\270= \211@\310\242=05\211;\203\247\322\323=03#\266\202\202\257\312A@\"\266\202!\= 210A\266\202\202\216\210\303\203Q\306\321=3D\203Q\324!\325=3D\203Q=0E\211\2= 03P\211@\211@A\211;\203\347\322\323=03#\266\202\202\357\312A@\"\266\202\211= \203G=01=1C\235\2030=01=1D\235\203!\326!\211\203=01\211@\310\242A!\210\310\= 242@!\210A\266\202\202=01\210\202G\310\242A!\210\310\242@!\210\202G=01=1D\2= 35\203B\314\310\242\326!\"\210\202G\310\242!\210\266=01A\266\202\202\315\21= 0\211\305>\206\251=01\211:\204c\316\262\202n\211@9\203n\211AA\262?\206\251\= 306\327=3D\203\200\211=1E>?\206\251\306\330=3D\203\216\324!\331=3D\206\251\= 314\310\242\211:\204\235\316\262\202\250\211@9\203\250\211AA\262\"\207" [#[= 257 "\211\305\306\307#=19\310\311\211:\204=00\312\202\"\n@9\203!\nAA\202\"= \n)\"\210\313\314 \211:\2043\312\202@\n@9\203?\nAA\202@\n)#\210\315\211 = =1B\n;\203V\316\317=0B\n#\202\\\320\nA@=0B\"*=1B\211;\203n\321\n\312=0B\f$\= 202z\nA\322\nA@=0B\f#\240\210\n+\210 AA@\240\210 @\240*\207" [new old ele= ment property value replace-regexp-in-string "\n" " " mapc #[(blob) "\305 = =1B\211;\203=00\306\f\307=0B\n$\202 \fA\310\fA@=0B\n#\240\210\f+\207" [blob= old value property element :parent org-add-props nil plist-put] 6] nil app= ly org-element-set-contents :parent get-text-property 0 plist-get org-add-p= rops plist-put] 7 "\n\n(fn S)"] nil nil nil (plain-text) nil objects (nil) = (#0) plain-text plist-get :ignore-list mapc org-data nil throw :--map-first= -match objects get-text-property 0 org-element-class element reverse greate= r-elements elements object org-element-secondary-value-alist org-element--p= arsed-properties-alist org-element-dual-keywords org-element-multiple-keywo= rds org-element-greater-elements] 11 "\n\n(fn --DATA)"] (#("Functional Prog= ramming in Scala for Mortals" 0 43 (:parent #0)))) #[257 "\211\211:\204=00\211;\205=00\311\262\202=00\211@9\205=00\211@\262= =01?\206\251\301\203-=01\312\301\313\">\206\251\211\2049\314\310\242\"\202\= 251\211\315=3D\203]\314\310\242\211:\204N\316\262\202Y\211@9\203Y\211AA\262= \"\202\251\211\304>\203~\300!\211\203}\302\203v\317\320\"\210\202}\307\307\= 242B\240\210\210\306\321=3D\203\271=01;\204\271\211=1A\236A\211\203\270\211= @\310\242=05\211;\203\247\322\323=03#\266\202\202\257\312A@\"\266\202!\210A= \266\202\202\216\210\303\203Q\306\321=3D\203Q\324!\325=3D\203Q=0E\211\203P\= 211@\211@A\211;\203\347\322\323=03#\266\202\202\357\312A@\"\266\202\211\203= G=01=1C\235\2030=01=1D\235\203!\326!\211\203=01\211@\310\242A!\210\310\242@= !\210A\266\202\202=01\210\202G\310\242A!\210\310\242@!\210\202G=01=1D\235\2= 03B\314\310\242\326!\"\210\202G\310\242!\210\266=01A\266\202\202\315\210\21= 1\305>\206\251=01\211:\204c\316\262\202n\211@9\203n\211AA\262?\206\251\306\= 327=3D\203\200\211=1E>?\206\251\306\330=3D\203\216\324!\331=3D\206\251\314\= 310\242\211:\204\235\316\262\202\250\211@9\203\250\211AA\262\"\207" [#[257 = "\211\305\306\307#=19\310\311\211:\204=00\312\202\"\n@9\203!\nAA\202\"\n)\= "\210\313\314 \211:\2043\312\202@\n@9\203?\nAA\202@\n)#\210\315\211 =1B\n= ;\203V\316\317=0B\n#\202\\\320\nA@=0B\"*=1B\211;\203n\321\n\312=0B\f$\202z\= nA\322\nA@=0B\f#\240\210\n+\210 AA@\240\210 @\240*\207" [new old element = property value replace-regexp-in-string "\n" " " mapc #[(blob) "\305 =1B\2= 11;\203=00\306\f\307=0B\n$\202 \fA\310\fA@=0B\n#\240\210\f+\207" [blob old = value property element :parent org-add-props nil plist-put] 6] nil apply or= g-element-set-contents :parent get-text-property 0 plist-get org-add-props = plist-put] 7 "\n\n(fn S)"] nil nil nil (plain-text) nil objects (nil) (#0) = plain-text plist-get :ignore-list mapc org-data nil throw :--map-first-matc= h objects get-text-property 0 org-element-class element reverse greater-ele= ments elements object org-element-secondary-value-alist org-element--parsed= -properties-alist org-element-dual-keywords org-element-multiple-keywords o= rg-element-greater-elements] 11 "\n\n(fn --DATA)"]((#("Functional Programmi= ng in Scala for Mortals" 0 43 (:parent #0)))) org-element-map((#("Functional Programming in Scala for Mortals" 0 43 (:p= arent #0))) plain-text #[257 "\211\305\306\307#=19\310\311\211:\204=00\312= \202\"\n@9\203!\nAA\202\"\n)\"\210\313\314 \211:\2043\312\202@\n@9\203?\nA= A\202@\n)#\210\315\211 =1B\n;\203V\316\317=0B\n#\202\\\320\nA@=0B\"*=1B\21= 1;\203n\321\n\312=0B\f$\202z\nA\322\nA@=0B\f#\240\210\n+\210 AA@\240\210 = @\240*\207" [new old element property value replace-regexp-in-string "\n" "= " mapc #[(blob) "\305 =1B\211;\203=00\306\f\307=0B\n$\202 \fA\310\fA@=0B\= n#\240\210\f+\207" [blob old value property element :parent org-add-props n= il plist-put] 6] nil apply org-element-set-contents :parent get-text-proper= ty 0 plist-get org-add-props plist-put] 7 "\n\n(fn S)"]) org-export--get-inbuffer-options([cl-struct-org-export-backend md html ((= bold . org-md-bold) (code . org-md-verbatim) (example-block . org-md-exampl= e-block) (export-block . org-md-export-block) (fixed-width . org-md-example= -block) (headline . org-md-headline) (horizontal-rule . org-md-horizontal-r= ule) (inline-src-block . org-md-verbatim) (inner-template . org-md-inner-te= mplate) (italic . org-md-italic) (item . org-md-item) (keyword . org-md-key= word) (line-break . org-md-line-break) (link . org-md-link) (node-property = . org-md-node-property) (paragraph . org-md-paragraph) (plain-list . org-md= -plain-list) (plain-text . org-md-plain-text) (property-drawer . org-md-pro= perty-drawer) (quote-block . org-md-quote-block) (section . org-md-section)= (src-block . org-md-example-block) (template . org-md-template) (verbatim = . org-md-verbatim)) ((:md-footnote-format nil nil org-md-footnote-format) (= :md-footnotes-section nil nil org-md-footnotes-section) (:md-headline-style= nil nil org-md-headline-style)) ((:filter-parse-tree . org-md-separate-ele= ments)) nil (109 "Export to Markdown" ((77 "To temporary buffer" (lambda (a= s v b) (org-md-export-as-markdown a s v))) (109 "To file" (lambda (a s v b= ) (org-md-export-to-markdown a s v))) (111 "To file and open" (lambda (a s = v b) (if a (org-md-export-to-markdown t s v) (org-open-file (org-md-export-= to-markdown nil s v)))))))]) org-export-get-environment([cl-struct-org-export-backend md html ((bold .= org-md-bold) (code . org-md-verbatim) (example-block . org-md-example-bloc= k) (export-block . org-md-export-block) (fixed-width . org-md-example-block= ) (headline . org-md-headline) (horizontal-rule . org-md-horizontal-rule) (= inline-src-block . org-md-verbatim) (inner-template . org-md-inner-template= ) (italic . org-md-italic) (item . org-md-item) (keyword . org-md-keyword) = (line-break . org-md-line-break) (link . org-md-link) (node-property . org-= md-node-property) (paragraph . org-md-paragraph) (plain-list . org-md-plain= -list) (plain-text . org-md-plain-text) (property-drawer . org-md-property-= drawer) (quote-block . org-md-quote-block) (section . org-md-section) (src-= block . org-md-example-block) (template . org-md-template) (verbatim . org-= md-verbatim)) ((:md-footnote-format nil nil org-md-footnote-format) (:md-fo= otnotes-section nil nil org-md-footnotes-section) (:md-headline-style nil n= il org-md-headline-style)) ((:filter-parse-tree . org-md-separate-elements)= ) nil (109 "Export to Markdown" ((77 "To temporary buffer" (lambda (a s v b= ) (org-md-export-as-markdown a s v))) (109 "To file" (lambda (a s v b) (org= -md-export-to-markdown a s v))) (111 "To file and open" (lambda (a s v b) (= if a (org-md-export-to-markdown t s v) (org-open-file (org-md-export-to-mar= kdown nil s v)))))))] nil (:output-file "./README.md")) org-export-as(md nil nil nil (:output-file "./README.md")) org-export-to-file(md "./README.md" nil nil nil) org-md-export-to-markdown() funcall-interactively(org-md-export-to-markdown) call-interactively(org-md-export-to-markdown record nil) command-execute(org-md-export-to-markdown record) execute-extended-command(nil "org-md-export-to-markdown" nil) funcall-interactively(execute-extended-command nil "org-md-export-to-mark= down" nil) call-interactively(execute-extended-command nil nil) command-execute(execute-extended-command) ------------------------------------------------------------------------ Emacs : GNU Emacs 25.2.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.22.16) of 2017-07-16 Package: Org mode version 9.0.9 (9.0.9-82-gb862c2-elpaplus @ /home/fommil/.= emacs.d/elpa/org-plus-contrib-20170814/) current state: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D (setq org-tab-first-hook '(org-babel-hide-result-toggle-maybe org-babel-header-arg-expand) org-speed-command-hook '(org-speed-command-default-hook org-babel-speed-command-hook) org-occur-hook '(org-first-headline-recenter) org-metaup-hook '(org-babel-load-in-session-maybe) org-html-format-drawer-function #[514 "\207" [] 3 "\n\n(fn NAME CONTENTS)"] org-latex-format-inlinetask-function 'org-latex-format-inlinetask-default-= function org-confirm-shell-link-function 'yes-or-no-p org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default org-latex-format-headline-function 'org-latex-format-headline-default-func= tion org-after-todo-state-change-hook '(org-clock-out-if-current) org-latex-format-drawer-function #[514 "\207" [] 3 "\n\n(fn _ CONTENTS)"] org-odt-format-headline-function 'org-odt-format-headline-default-function org-src-mode-hook '(org-src-babel-configure-edit-buffer org-src-mode-configure-edit-buffer) org-agenda-before-write-hook '(org-agenda-add-entry-text) org-babel-pre-tangle-hook '(save-buffer) org-mode-hook '(#[0 "\300\301\302\303\304$\207" [add-hook change-major-mode-hook org-show-block-all appe= nd local] 5] #[0 "\300\301\302\303\304$\207" [add-hook change-major-mode-hook org-babel-show-result-a= ll append local] 5] org-babel-result-hide-spec org-babel-hide-all-hashes writing-mode-hooks (closure (t) nil (yas-minor-mode t) (company-mode t) (visual-line-mode t) (local-set-key (kbd "s-c") (quote picture-mode)) (org-babel-do-load-languages (quote org-babel-load-langua= ges) (quote ((ditaa . t) (dot . t)))) ) org-eldoc-load) org-archive-hook '(org-attach-archive-delete-maybe) org-ascii-format-drawer-function #[771 "\207" [] 4 "\n\n(fn NAME CONTENTS = WIDTH)"] org-odt-format-inlinetask-function 'org-odt-format-inlinetask-default-func= tion org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers org-cycle-show-empty-lines org-optimize-window-after-visibility-change) org-confirm-elisp-link-function 'yes-or-no-p org-metadown-hook '(org-babel-pop-to-session-maybe) org-odt-format-drawer-function #[514 "\207" [] 3 "\n\n(fn NAME CONTENTS)"] org-ditaa-jar-path "/home/fommil/.ditaa.jar" org-html-format-headline-function 'org-html-format-headline-default-functi= on org-link-parameters '(("id" :follow org-id-open) ("rmail" :follow org-rmail-open :store org-rmail-sto= re-link) ("mhe" :follow org-mhe-open :store org-mhe-store-lin= k) ("irc" :follow org-irc-visit :store org-irc-store-li= nk) ("info" :follow org-info-open :export org-info-expor= t :store org-info-store-link) ("gnus" :follow org-gnus-open :store org-gnus-store-= link) ("docview" :follow org-docview-open :export org-docview-export :store org-docview-store-link) ("bibtex" :follow org-bibtex-open :store org-bibtex-store-link) ("bbdb" :follow org-bbdb-open :export org-bbdb-export :complete org-bbdb-complete-link :store org-bbdb-st= ore-link) ("w3m" :store org-w3m-store-link) ("file+sys") ("file+emacs") ("doi" :follow org--open-doi-link) ("elisp" :follow org--open-elisp-link) ("file" :complete org-file-complete-link) ("ftp" :follow (lambda (path) (browse-url (concat "ftp:" path)))) ("help" :follow org--open-help-link) ("http" :follow (lambda (path) (browse-url (concat "http:" path)))) ("https" :follow (lambda (path) (browse-url (concat "https:" path)))) ("mailto" :follow (lambda (path) (browse-url (concat "mailto:" path))= )) ("message" :follow (lambda (path) (browse-url (concat "message:" path)= ))) ("news" :follow (lambda (path) (browse-url (concat "news:" path)))) ("shell" :follow org--open-shell-link)) org-babel-load-languages '((ditaa . t) (dot . t)) org-html-format-inlinetask-function 'org-html-format-inlinetask-default-fu= nction org-clock-out-hook '(org-clock-remove-empty-clock-drawer) org-confirm-babel-evaluate nil org-export-headline-levels 5 ) --=20 Best regards, Sam