From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pontus Michael Subject: [PATCH] Noweb expansion doesn't duplicate prefix across lines Date: Tue, 1 Apr 2014 06:19:56 +0400 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=001a11c2620cd6e11b04f5f1cdfe Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:48105) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WUoIw-0003N8-Jh for emacs-orgmode@gnu.org; Mon, 31 Mar 2014 22:19:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WUoIv-0005NJ-Hr for emacs-orgmode@gnu.org; Mon, 31 Mar 2014 22:19:58 -0400 Received: from mail-lb0-x22e.google.com ([2a00:1450:4010:c04::22e]:52692) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WUoIv-0005NB-41 for emacs-orgmode@gnu.org; Mon, 31 Mar 2014 22:19:57 -0400 Received: by mail-lb0-f174.google.com with SMTP id u14so6396743lbd.19 for ; Mon, 31 Mar 2014 19:19:56 -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-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org --001a11c2620cd6e11b04f5f1cdfe Content-Type: text/plain; charset=ISO-8859-1 * lisp/ob-core.el (org-babel-expand-noweb-references): Change the the behavior of noweb expansion by replacing the prefix duplication with whitespace. Fix handling of multiple noweb references on the same line by using temporary buffer to replace noweb references in place instead of collecting the intervals between references and their expansion text into a variable. * doc/org.texi: Reflect the change by removing the section under subheading "Noweb prefix lines". Tests pass and don't require actualization. --- doc/org.texi | 24 ------------------------ lisp/ob-core.el | 26 +++++++------------------- 2 files changed, 7 insertions(+), 43 deletions(-) --001a11c2620cd6e11b04f5f1cdfe Content-Type: text/x-patch; charset=US-ASCII; name="0001-Noweb-expansion-doesn-t-duplicate-prefix-across-line.patch" Content-Disposition: attachment; filename="0001-Noweb-expansion-doesn-t-duplicate-prefix-across-line.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_htgjqlyi0 ZGlmZiAtLWdpdCBhL2RvYy9vcmcudGV4aSBiL2RvYy9vcmcudGV4aQ0KaW5kZXggOTIwNWFiYi4u ODc2ZjY3MyAxMDA2NDQNCi0tLSBhL2RvYy9vcmcudGV4aQ0KKysrIGIvZG9jL29yZy50ZXhpDQpA QCAtMTUwNDIsMzAgKzE1MDQyLDYgQEAgcmVmZXJlbmNlcyB3aWxsIGJlIHJlbW92ZWQgd2hlbiB0 aGUgY29kZSBibG9jayBpcyBleHBvcnRlZC4NCiBleHBhbmRlZCBiZWZvcmUgdGhlIGJsb2NrIGlz IGV2YWx1YXRlZC4NCiBAZW5kIGl0ZW1pemUNCiANCi1Ac3Vic3ViaGVhZGluZyBOb3dlYiBwcmVm aXggbGluZXMNCi1Ob3dlYiBpbnNlcnRpb25zIGFyZSBub3cgcGxhY2VkIGJlaGluZCB0aGUgbGlu ZSBwcmVmaXggb2YgdGhlDQotQGNvZGV7PDxyZWZlcmVuY2U+Pn0uDQotVGhpcyBiZWhhdmlvciBp cyBpbGx1c3RyYXRlZCBpbiB0aGUgZm9sbG93aW5nIGV4YW1wbGUuICBCZWNhdXNlIHRoZQ0KLUBj b2Rlezw8ZXhhbXBsZT4+fSBub3dlYiByZWZlcmVuY2UgYXBwZWFycyBiZWhpbmQgdGhlIFNRTCBj b21tZW50IHN5bnRheCwNCi1lYWNoIGxpbmUgb2YgdGhlIGV4cGFuZGVkIG5vd2ViIHJlZmVyZW5j ZSB3aWxsIGJlIGNvbW1lbnRlZC4NCi0NCi1UaGlzIGNvZGUgYmxvY2s6DQotDQotQGV4YW1wbGUN Ci0tLSA8PGV4YW1wbGU+Pg0KLUBlbmQgZXhhbXBsZQ0KLQ0KLWV4cGFuZHMgdG86DQotDQotQGV4 YW1wbGUNCi0tLSB0aGlzIGlzIHRoZQ0KLS0tIG11bHRpLWxpbmUgYm9keSBvZiBleGFtcGxlDQot QGVuZCBleGFtcGxlDQotDQotTm90ZSB0aGF0IG5vd2ViIHJlcGxhY2VtZW50IHRleHQgdGhhdCBk b2VzIG5vdCBjb250YWluIGFueSBuZXdsaW5lcyB3aWxsIG5vdA0KLWJlIGFmZmVjdGVkIGJ5IHRo aXMgY2hhbmdlLCBzbyBpdCBpcyBzdGlsbCBwb3NzaWJsZSB0byB1c2UgaW5saW5lIG5vd2ViDQot cmVmZXJlbmNlcy4NCi0NCiBAbm9kZSBub3dlYi1yZWYNCiBAc3Vic3Vic2VjdGlvbiBAY29kZXs6 bm93ZWItcmVmfQ0KIEBjaW5kZXggQGNvZGV7Om5vd2ViLXJlZn0sIHNyYyBoZWFkZXIgYXJndW1l bnQNCmRpZmYgLS1naXQgYS9saXNwL29iLWNvcmUuZWwgYi9saXNwL29iLWNvcmUuZWwNCmluZGV4 IDBhZGZjMzMuLjFhZTE2ZDcgMTAwNjQ0DQotLS0gYS9saXNwL29iLWNvcmUuZWwNCisrKyBiL2xp c3Avb2ItY29yZS5lbA0KQEAgLTI1MzYsMzQgKzI1MzYsMjMgQEAgYmxvY2sgYnV0IGFyZSBwYXNz ZWQgbGl0ZXJhbGx5IHRvIHRoZSBcImV4YW1wbGUtYmxvY2tcIi4iDQogCSAoY29tbWVudCAoc3Ry aW5nPSAibm93ZWIiIChjZHIgKGFzc29jIDpjb21tZW50cyAobnRoIDIgaW5mbykpKSkpDQogCSAo cngtcHJlZml4IChjb25jYXQgIlxcKCIgb3JnLWJhYmVsLXNyYy1uYW1lLXJlZ2V4cCAiXFx8Ig0K IAkJCSAgICAiOm5vd2ViLXJlZlsgXHRdKyIgIlxcKSIpKQ0KLSAgICAgICAgIChuZXctYm9keSAi IikNCi0JIChuYi1hZGQgKGxhbWJkYSAodGV4dCkgKHNldHEgbmV3LWJvZHkgKGNvbmNhdCBuZXct Ym9keSB0ZXh0KSkpKQ0KIAkgKGMtd3JhcCAobGFtYmRhICh0ZXh0KQ0KIAkJICAgKHdpdGgtdGVt cC1idWZmZXINCiAJCSAgICAgKGZ1bmNhbGwgKGludGVybiAoY29uY2F0IGxhbmcgIi1tb2RlIikp KQ0KIAkJICAgICAoY29tbWVudC1yZWdpb24gKHBvaW50KSAocHJvZ24gKGluc2VydCB0ZXh0KSAo cG9pbnQpKSkNCiAJCSAgICAgKG9yZy1iYWJlbC10cmltIChidWZmZXItc3RyaW5nKSkpKSkNCi0J IGluZGV4IHNvdXJjZS1uYW1lIGV2YWx1YXRlIHByZWZpeCkNCisJIHNvdXJjZS1uYW1lIGV2YWx1 YXRlIHByZWZpeCkNCiAgICAgKHdpdGgtdGVtcC1idWZmZXINCiAgICAgICAob3JnLXNldC1sb2Nh bCAnb3JnLWJhYmVsLW5vd2ViLXdyYXAtc3RhcnQgb2Itbnd3LXN0YXJ0KQ0KICAgICAgIChvcmct c2V0LWxvY2FsICdvcmctYmFiZWwtbm93ZWItd3JhcC1lbmQgb2Itbnd3LWVuZCkNCiAgICAgICAo aW5zZXJ0IGJvZHkpIChnb3RvLWNoYXIgKHBvaW50LW1pbikpDQotICAgICAgKHNldHEgaW5kZXgg KHBvaW50KSkNCi0gICAgICAod2hpbGUgKGFuZCAocmUtc2VhcmNoLWZvcndhcmQgKG9yZy1iYWJl bC1ub3dlYi13cmFwKSBuaWwgdCkpDQorICAgICAgKHdoaWxlIChyZS1zZWFyY2gtZm9yd2FyZCAo b3JnLWJhYmVsLW5vd2ViLXdyYXApIG5pbCB0KQ0KKwkoZ290by1jaGFyIChtYXRjaC1iZWdpbm5p bmcgMCkpDQogCShzYXZlLW1hdGNoLWRhdGEgKHNldGYgc291cmNlLW5hbWUgKG1hdGNoLXN0cmlu ZyAxKSkpDQogCShzYXZlLW1hdGNoLWRhdGEgKHNldHEgZXZhbHVhdGUgKHN0cmluZy1tYXRjaCAi XCguKlwpIiBzb3VyY2UtbmFtZSkpKQ0KLQkoc2F2ZS1tYXRjaC1kYXRhDQotCSAgKHNldHEgcHJl Zml4DQotCQkoYnVmZmVyLXN1YnN0cmluZyAobWF0Y2gtYmVnaW5uaW5nIDApDQotCQkJCSAgKHNh dmUtZXhjdXJzaW9uDQotCQkJCSAgICAoYmVnaW5uaW5nLW9mLWxpbmUgMSkgKHBvaW50KSkpKSkN Ci0JOzsgYWRkIGludGVydmFsIHRvIG5ldy1ib2R5IChyZW1vdmluZyBub3dlYiByZWZlcmVuY2Up DQotCShnb3RvLWNoYXIgKG1hdGNoLWJlZ2lubmluZyAwKSkNCi0JKGZ1bmNhbGwgbmItYWRkIChi dWZmZXItc3Vic3RyaW5nIGluZGV4IChwb2ludCkpKQ0KLQkoZ290by1jaGFyIChtYXRjaC1lbmQg MCkpDQotCShzZXRxIGluZGV4IChwb2ludCkpDQotCShmdW5jYWxsDQotICAgICAgICAgbmItYWRk DQorCShzYXZlLW1hdGNoLWRhdGEgKHNldHEgcHJlZml4IChtYWtlLXN0cmluZyAoY3VycmVudC1j b2x1bW4pID9ccykpKQ0KKwkoZGVsZXRlLXJlZ2lvbiAocG9pbnQpIChtYXRjaC1lbmQgMCkpDQor CShpbnNlcnQNCiAgICAgICAgICAod2l0aC1jdXJyZW50LWJ1ZmZlciBwYXJlbnQtYnVmZmVyDQog ICAgICAgICAgICAoc2F2ZS1yZXN0cmljdGlvbg0KICAgICAgICAgICAgICAod2lkZW4pDQpAQCAt MjYyNSw4ICsyNjE0LDcgQEAgYmxvY2sgYnV0IGFyZSBwYXNzZWQgbGl0ZXJhbGx5IHRvIHRoZSBc ImV4YW1wbGUtYmxvY2tcIi4iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi YG9yZy1iYWJlbC1ub3dlYi1lcnJvci1sYW5ncycpIikpDQogICAgICAgICAgICAgICAgICAgICAi IikpKQ0KICAgICAgICAgICAgICAgICJbXG5ccl0iKSAoY29uY2F0ICJcbiIgcHJlZml4KSkpKSkp DQotICAgICAgKGZ1bmNhbGwgbmItYWRkIChidWZmZXItc3Vic3RyaW5nIGluZGV4IChwb2ludC1t YXgpKSkpDQotICAgIG5ldy1ib2R5KSkNCisgICAgICAoYnVmZmVyLXN0cmluZykpKSkNCiANCiAo ZGVmdW4gb3JnLWJhYmVsLXNjcmlwdC1lc2NhcGUgKHN0ciAmb3B0aW9uYWwgZm9yY2UpDQogICAi U2FmZWx5IGNvbnZlcnQgdGFibGVzIGludG8gZWxpc3AgbGlzdHMuIg0K --001a11c2620cd6e11b04f5f1cdfe--