From mboxrd@z Thu Jan 1 00:00:00 1970 From: Achim Gratz Subject: Re: new exporter Date: Mon, 02 Jul 2012 21:06:20 +0200 Message-ID: <87a9ziugnn.fsf@Rainer.invalid> References: <3C38420E-E2FA-4CAB-B3FD-9C5F8584E60A@gmail.com> <81fwadrgoo.fsf@gmail.com> <87396dzlai.fsf_-_@Rainer.invalid> <871ulqgb4t.fsf@gmail.com> <87y5nyx4ku.fsf@Rainer.invalid> <87a9zq7htj.fsf@Rainer.invalid> <87r4t261fw.fsf@Rainer.invalid> <87k3yu15wj.fsf@gmail.com> <87395hkj7u.fsf@Rainer.invalid> <87fw9gwmet.fsf@Rainer.invalid> <87pq8j2a0y.fsf@gmail.com> <87r4sy3rve.fsf@Rainer.invalid> <87fw9d1eif.fsf@gmail.com> <87r4sv5tmm.fsf@Rainer.invalid> <87hatqh3e2.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:49928) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SllxO-00021J-9m for emacs-orgmode@gnu.org; Mon, 02 Jul 2012 15:06:48 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SllxK-0004DX-RP for emacs-orgmode@gnu.org; Mon, 02 Jul 2012 15:06:45 -0400 Received: from plane.gmane.org ([80.91.229.3]:58718) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SllxK-0004D4-Gr for emacs-orgmode@gnu.org; Mon, 02 Jul 2012 15:06:42 -0400 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1SllxF-0001jF-Sc for emacs-orgmode@gnu.org; Mon, 02 Jul 2012 21:06:37 +0200 Received: from pd9eb3f2d.dip.t-dialin.net ([217.235.63.45]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 02 Jul 2012 21:06:37 +0200 Received: from Stromeko by pd9eb3f2d.dip.t-dialin.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 02 Jul 2012 21:06:37 +0200 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-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org Nicolas Goaziou writes: > Not exactly. With this version, symbols generated with gensym are never > used, and the macro isn't hygienic anymore. Yeah, I missed out on some commas along the way and it probably needs double quoting (which I was trying to avoid). The first version interns the gensymed symbols at compile time, the later one should have done it each time the code was called. > I still think your first take about this macro was the good one. I've > pushed something very similar. Could you verify if it is correct on the > compiling side? Yes, the compile error is easy to fix. Both versions could do the correct thing, the later one was just trying to be more conservative. Looking superficially at the generated bytecode I think the current version should be correct. >> The org-export-define-derived-backend macro seems similarly starstruck, >> but I really don't know what you think the expansion should be. > > Something along the lines of: > > #+begin_src emacs-lisp > (progn > (defconst org-e-beamer-options-alist '(...) > "Alist between filters keywords and back-end specific filters. > See `org-export-filters-alist' for more information.") > (defvar org-e-beamer-translate-alist '(...) > "Alist between element or object types and translators.")) > #+end_src > >> One of your recent changes introduced four test fail when org-element is >> compiled. I haven't yet looked why that would be, the four tests are: >> >> FAILED test-org-export/table-cell-alignment >> FAILED test-org-export/table-cell-borders >> FAILED test-org-export/table-row-ends-header-p >> FAILED test-org-export/table-row-starts-header-p > > Could you paste the error reported by ERT? I can't think of any recent > change in this area. There's only a backtrace that doesn't make much sense to me: --8<---------------cut here---------------start------------->8--- Test test-org-export/table-row-starts-header-p backtrace: signal(ert-test-failed (((should (equal (quote (yes no no no)) (org- ert-fail(((should (equal (quote (yes no no no)) (org-element-map tre (if (unwind-protect (setq value-3951 (apply fn-3949 args-3950)) (set (unless (unwind-protect (setq value-3951 (apply fn-3949 args-3950)) (let (form-description-3953) (unless (unwind-protect (setq value-395 (let ((value-3951 (quote ert-form-evaluation-aborted-3952))) (let (f (let ((fn-3949 (function equal)) (args-3950 (list (quote (yes no no (should (equal (quote (yes no no no)) (org-element-map tree (quote t (let* ((tree (org-element-parse-buffer)) (info (org-export-collect-t (prog1 (let* ((tree (org-element-parse-buffer)) (info (org-export-co (progn (org-mode) (progn (insert "\n| a |\n| b |\n|---|\n| c |") (go (unwind-protect (progn (org-mode) (progn (insert "\n| a |\n| b |\n|- (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (with-current-buffer temp-buffer (unwind-protect (progn (org-mode) ( (let ((temp-buffer (generate-new-buffer " *temp*"))) (with-current-b (with-temp-buffer (org-mode) (progn (insert "\n| a |\n| b |\n|---|\n (org-test-with-temp-text "\n| a |\n| b |\n|---|\n| c |" (let* ((tree (org-test-with-parsed-data "\n| a |\n| b |\n|---|\n| c |" (should (e (lambda nil (org-test-with-parsed-data "\n| a |\n| b |\n|---|\n| c | byte-code("\306\307!▒q\210\310\216\311 \312\216\313\314\315\316\3 ert--run-test-internal([cl-struct-ert--test-execution-info [cl-struc byte-code("\306\307!\211▒r\310\311!q\210\312 d\313\223)L\210\314\216 ert-run-test([cl-struct-ert-test test-org-export/table-row-starts-he ert-run-or-rerun-test([cl-struct-ert--stats "\\(org\\|ob\\)" [[cl-st ert-run-tests("\\(org\\|ob\\)" #[(event-type &rest event-args) \30 ert-run-tests-batch("\\(org\\|ob\\)") ert-run-tests-batch-and-exit("\\(org\\|ob\\)") (let ((org-id-track-globally t) (org-id-locations-file (convert-stan org-test-run-batch-tests() call-interactively(org-test-run-batch-tests nil nil) command-execute(org-test-run-batch-tests) command-line-1(("--eval" "(add-to-list 'load-path \"./lisp\")" "--ev command-line() normal-top-level() Test test-org-export/table-row-starts-header-p condition: (ert-test-failed ((should (equal '... (org-element-map tree ... ... info))) :form (equal (yes no no no) (yes yes no no)) :value nil :explanation (list-elt 1 (different-atoms no yes)))) --8<---------------cut here---------------end--------------->8--- >> The new org-e-beamer.el doesn't compile at all: >> org-e-beamer.el:258:1:Error: Wrong type argument: listp, >> org-e-beamer-export-block > > It should be fixed. Thanks, that works correctly now. Regards, Achim. -- +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+ Factory and User Sound Singles for Waldorf Q+, Q and microQ: http://Synth.Stromeko.net/Downloads.html#WaldorfSounds