From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jacob Gerlach Subject: Re: [RFC] [PATCH] Warn about unexpanded macros on export Date: Tue, 17 Mar 2015 12:20:28 -0400 Message-ID: References: <87k34zqv9r.fsf@gmail.com> <87bnqbv27b.fsf@nicolasgoaziou.fr> <87fvfjow6p.fsf@gmail.com> <8738bi13te.fsf@gmx.us> <87zjdkl7h0.fsf@gmail.com> <87zjdkw7jt.fsf@nicolasgoaziou.fr> <8761a23b0i.fsf@nicolasgoaziou.fr> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=001a11c13abe4eb07305117e588d Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:44228) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YXuEI-0003tm-O1 for emacs-orgmode@gnu.org; Tue, 17 Mar 2015 12:20:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YXuEH-0007Ym-Fh for emacs-orgmode@gnu.org; Tue, 17 Mar 2015 12:20:30 -0400 Received: from mail-qg0-x230.google.com ([2607:f8b0:400d:c04::230]:36322) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YXuEH-0007YQ-As for emacs-orgmode@gnu.org; Tue, 17 Mar 2015 12:20:29 -0400 Received: by qgf3 with SMTP id 3so12673779qgf.3 for ; Tue, 17 Mar 2015 09:20:28 -0700 (PDT) In-Reply-To: <8761a23b0i.fsf@nicolasgoaziou.fr> 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: Org-mode --001a11c13abe4eb07305117e588d Content-Type: text/plain; charset=UTF-8 Hello, Thanks for the feedback. On Sun, Mar 15, 2015 at 4:44 AM, Nicolas Goaziou wrote: >> I don't really use code blocks, so I wasn't sure what to do with >> org-export-resolve-coderef. [...] > No, the whole body could be wrapped with an `or': > > (or (org-element-map ...) > (user-error "Unable to resolve code reference: %s" ref)) I tried this, or more specifically: (or ((org-element-map ... info 'first-match)) (user-error ... and got a failure on test-org-export/resolve-coderef. It's not obvious to me from reading the tests if there is a test that needs to be changed, or if it's a legitimate failure and a different approach is needed (or if I made a mistake). I asked in [1] for some guidance on tests, and I'm still lost. >> If so, is it desirable for org-id-find-id-file to fall back on the >> current buffer (the current behavior)? > > According to its docstring, `org-id-find-id-file' returns nil when > search failed. Isn't it the case? Are you looking at `org-id-find-id-in-file' rather than `org-id-find-id-file'? The docstring for `org-id-find-file' only says: "Query the id database for the file in which this ID is located." [...] > `org-export-resolve-id-link' could throw an error, indeed. I'm not clear on the way forward for id links. I propose removing the fall back behavior in `org-id-find-id-file'. If that's acceptable, I can provide a patch for `org-export-resolve-id-link'. >> Subject: [PATCH] ox.el: Issue error for unresolved fuzzy link [...] Commit message fixed. I also updated the docstring for org-export-resolve-fuzzy link. >> + ;; No destination found: error. >> + (unless match-title-p >> + (error (format "Unable to resolve link \"%s\"" raw-path))))))))) > > You don't need to check `match-title-p' here. Also, it should be > `user-error' instead of `error'. OK. Updated fuzzy link patch attached. Regards, Jake [1] http://thread.gmane.org/gmane.emacs.orgmode/96017 --001a11c13abe4eb07305117e588d Content-Type: text/x-patch; charset=US-ASCII; name="0001-ox.el-Issue-error-for-unresolved-fuzzy-link.patch" Content-Disposition: attachment; filename="0001-ox.el-Issue-error-for-unresolved-fuzzy-link.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_i7di42ws0 RnJvbSBhOTIyMTUwMGI3MjFhNTAxZjdiN2YwNTUxOWRmYzBkNmYzMGYyM2QwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKYWNvYiBHZXJsYWNoIDxqYWNvYmdlcmxhY2hAZ21haWwuY29t PgpEYXRlOiBXZWQsIDExIE1hciAyMDE1IDIyOjM5OjExIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0g b3guZWw6IElzc3VlIGVycm9yIGZvciB1bnJlc29sdmVkIGZ1enp5IGxpbmsKCiogbGlzcC9veC5l bCAob3JnLWV4cG9ydC1yZXNvbHZlLWZ1enp5LWxpbmspOiBUaHJvdyBhbiBlcnJvciBpbnN0ZWFk CiAgb2YgcmV0dXJuaW5nIG5pbCB3aGVuIGxpbmsgY2FuJ3QgYmUgcmVzb2x2ZWQuCgoqIHRlc3Rp bmcvbGlzcC90ZXN0LW94LmVsICh0ZXN0LW9yZy1leHBvcnQvcmVzb2x2ZS1mdXp6eS1saW5rKTog Q2hhbmdlCiAgbGFzdCB0ZXN0IGZyb20gc2hvdWxkLW5vdCB0byBzaG91bGQtZXJyb3IKCkluIGFk ZGl0aW9uIHRvIHRocm93aW5nIGFuIGVycm9yLCBkb24ndCBzdG9yZSB0aGUgZmFpbGVkIG1hdGNo IGluIHRoZQpsaW5rIGNhY2hlLgoKVElOWUNIQU5HRQotLS0KIGxpc3Avb3guZWwgICAgICAgICAg ICAgIHwgOCArKysrLS0tLQogdGVzdGluZy9saXNwL3Rlc3Qtb3guZWwgfCA0ICsrLS0KIDIgZmls ZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2xpc3Avb3guZWwgYi9saXNwL294LmVsCmluZGV4IDBjNzcyOGYuLjk0NjExMTcgMTAwNjQ0Ci0t LSBhL2xpc3Avb3guZWwKKysrIGIvbGlzcC9veC5lbApAQCAtNDAyMSw3ICs0MDIxLDcgQEAgUmV0 dXJuIHZhbHVlIGNhbiBiZSBhbiBvYmplY3QsIGFuIGVsZW1lbnQsIG9yIG5pbDoKICAgd2lsbCBi ZSBnaXZlbiB0byB0aGUgb25lIHdpdGggdGhlIGNsb3Nlc3QgY29tbW9uIGFuY2VzdG9yLCBpZgog ICBhbnksIG9yIHRoZSBmaXJzdCBvbmUgaW4gdGhlIHBhcnNlIHRyZWUgb3RoZXJ3aXNlLgogCi0t IE90aGVyd2lzZSwgcmV0dXJuIG5pbC4KKy0gT3RoZXJ3aXNlLCByZXBvcnQgYW4gZXJyb3IuCiAK IEFzc3VtZSBMSU5LIHR5cGUgaXMgXCJmdXp6eVwiLiAgV2hpdGUgc3BhY2VzIGFyZSBub3QKIHNp Z25pZmljYW50LiIKQEAgLTQwNjgsNyArNDA2OCw3IEBAIHNpZ25pZmljYW50LiIKICAgICAgOzsg TGFzdCBjYXNlOiBsaW5rIGVpdGhlciBwb2ludHMgdG8gYSBoZWFkbGluZSBvciB0byBub3RoaW5n bmVzcy4KICAgICAgOzsgVHJ5IHRvIGZpbmQgdGhlIHNvdXJjZSwgd2l0aCBwcmlvcml0eSBnaXZl biB0byBoZWFkbGluZXMgd2l0aAogICAgICA7OyB0aGUgY2xvc2VzdCBjb21tb24gYW5jZXN0b3Iu ICBJZiBzdWNoIGNhbmRpZGF0ZSBpcyBmb3VuZCwKLSAgICAgOzsgcmV0dXJuIGl0LCBvdGhlcndp c2UgcmV0dXJuIG5pbC4KKyAgICAgOzsgcmV0dXJuIGl0LCBvdGhlcndpc2Ugc2lnbmFsIGFuIGVy cm9yLgogICAgICAodAogICAgICAgKGxldCAoKGZpbmQtaGVhZGxpbmUKIAkgICAgIChmdW5jdGlv bgpAQCAtNDA5NCw4ICs0MDk0LDggQEAgc2lnbmlmaWNhbnQuIgogCQkgICAgICAgKG9yZy1lbGVt ZW50LWxpbmVhZ2UgcGFyZW50LWhsIG5pbCB0KSkpKQogCSAgICAobGV0ICgoZm91bmRwIChmdW5j YWxsIGZpbmQtaGVhZGxpbmUgcGF0aCBwYXJlbnQpKSkKIAkgICAgICAod2hlbiBmb3VuZHAgKHRo cm93ICdleGl0IGZvdW5kcCkpKSkKLQkgIDs7IE5vIGRlc3RpbmF0aW9uIGZvdW5kOiByZXR1cm4g bmlsLgotCSAgKGFuZCAobm90IG1hdGNoLXRpdGxlLXApIChwdXRoYXNoIHBhdGggbmlsIGxpbmst Y2FjaGUpKSkpKSkpKQorCSAgOzsgTm8gZGVzdGluYXRpb24gZm91bmQ6IGVycm9yLgorCSAgICAo dXNlci1lcnJvciAoZm9ybWF0ICJVbmFibGUgdG8gcmVzb2x2ZSBsaW5rIFwiJXNcIiIgcmF3LXBh dGgpKSkpKSkpKQogCiAoZGVmdW4gb3JnLWV4cG9ydC1yZXNvbHZlLWlkLWxpbmsgKGxpbmsgaW5m bykKICAgIlJldHVybiBoZWFkbGluZSByZWZlcmVuY2VkIGFzIExJTksgZGVzdGluYXRpb24uCmRp ZmYgLS1naXQgYS90ZXN0aW5nL2xpc3AvdGVzdC1veC5lbCBiL3Rlc3RpbmcvbGlzcC90ZXN0LW94 LmVsCmluZGV4IDFiNzBhNzguLjdjZjFlMWQgMTAwNjQ0Ci0tLSBhL3Rlc3RpbmcvbGlzcC90ZXN0 LW94LmVsCisrKyBiL3Rlc3RpbmcvbGlzcC90ZXN0LW94LmVsCkBAIC0yNDc4LDggKzI0NzgsOCBA QCBBbm90aGVyIHRleHQuIChyZWY6dGV4dCkKIAkgKG9yZy1lbGVtZW50LXR5cGUKIAkgIChvcmct ZXhwb3J0LXJlc29sdmUtZnV6enktbGluawogCSAgIChvcmctZWxlbWVudC1tYXAgdHJlZSAnbGlu ayAnaWRlbnRpdHkgaW5mbyB0KSBpbmZvKSkpKSkKLSAgOzsgUmV0dXJuIG5pbCBpZiBubyBtYXRj aC4KLSAgKHNob3VsZC1ub3QKKyAgOzsgRXJyb3IgaWYgbm8gbWF0Y2guCisgIChzaG91bGQtZXJy b3IKICAgIChvcmctdGVzdC13aXRoLXBhcnNlZC1kYXRhICJbW3RhcmdldF1dIgogICAgICAob3Jn LWV4cG9ydC1yZXNvbHZlLWZ1enp5LWxpbmsKICAgICAgIChvcmctZWxlbWVudC1tYXAgdHJlZSAn bGluayAnaWRlbnRpdHkgaW5mbyB0KSBpbmZvKSkpCi0tIAoxLjkuMQoK --001a11c13abe4eb07305117e588d--