From mboxrd@z Thu Jan 1 00:00:00 1970 From: Miro Bezjak Subject: Contribution: ob-groovy.el Date: Thu, 26 Dec 2013 22:25:15 +0100 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=089e013d1fdc7c372e04ee769f2b Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:58786) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VwIRN-0000Vz-4X for emacs-orgmode@gnu.org; Thu, 26 Dec 2013 16:26:02 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VwIRK-00018X-5T for emacs-orgmode@gnu.org; Thu, 26 Dec 2013 16:26:01 -0500 Received: from mail-lb0-x236.google.com ([2a00:1450:4010:c04::236]:37001) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VwIRJ-00018N-OP for emacs-orgmode@gnu.org; Thu, 26 Dec 2013 16:25:58 -0500 Received: by mail-lb0-f182.google.com with SMTP id l4so3970417lbv.13 for ; Thu, 26 Dec 2013 13:25:56 -0800 (PST) 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 --089e013d1fdc7c372e04ee769f2b Content-Type: multipart/alternative; boundary=089e013d1fdc7c372a04ee769f29 --089e013d1fdc7c372a04ee769f29 Content-Type: text/plain; charset=UTF-8 Hi all, I would like to contribute org-babel functions for Groovy evaluation. I simply copy/pasted ob-scala.el and made appropriate changes. I'm attaching ob-groovy.el as a file. All 3 tests pass, although I haven't created `testing/test-ob-groovy.el` - I'll look into that. --- testing last result ---------------- #+BEGIN_SRC groovy println "ignored" 1 + 2 #+END_SRC #+RESULTS: : 3 ---------------------------------------- --- testing results output -------------- #+BEGIN_SRC groovy :results output println '1' println '2' println 1 + 2 #+END_SRC #+RESULTS: =1 2 3 ---------------------------------------- --- testing table ---------------------- #+BEGIN_SRC groovy :results verbatim raw """ | 1 | 2 |-- | a | b """.trim() #+END_SRC #+RESULTS: | 1 | 2 | |---+---| | a | b | ---------------------------------------- Kind Regards, Miro Bezjak --089e013d1fdc7c372a04ee769f29 Content-Type: text/html; charset=UTF-8
Hi all,

I would like to contribute org-babel functions for Groovy evaluation. I simply
copy/pasted ob-scala.el and made appropriate changes.

I'm attaching ob-groovy.el as a file.

All 3 tests pass, although I haven't created `testing/test-ob-groovy.el` - I'll
look into that.

--- testing last result ----------------
#+BEGIN_SRC groovy
println "ignored"
1 + 2
#+END_SRC

#+RESULTS:
: 3
----------------------------------------

--- testing results output --------------
#+BEGIN_SRC groovy :results output
println '1'
println '2'
println 1 + 2
#+END_SRC

#+RESULTS:
=1
2
3
----------------------------------------

--- testing table ----------------------
#+BEGIN_SRC groovy :results verbatim raw
"""
| 1 | 2
|--
| a | b
""".trim()
#+END_SRC

#+RESULTS:
| 1 | 2 |
|---+---|
| a | b |
----------------------------------------


Kind Regards,
Miro Bezjak
--089e013d1fdc7c372a04ee769f29-- --089e013d1fdc7c372e04ee769f2b Content-Type: text/x-emacs-lisp; charset=US-ASCII; name="ob-groovy.el" Content-Disposition: attachment; filename="ob-groovy.el" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hpois7l60 Ozs7IG9iLWdyb292eS5lbCAtLS0gb3JnLWJhYmVsIGZ1bmN0aW9ucyBmb3IgR3Jvb3Z5IGV2YWx1 YXRpb24KCjs7IENvcHlyaWdodCAoQykgMjAxMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIElu Yy4KCjs7IEF1dGhvcjogTWlybyBCZXpqYWsKOzsgS2V5d29yZHM6IGxpdGVyYXRlIHByb2dyYW1t aW5nLCByZXByb2R1Y2libGUgcmVzZWFyY2gKOzsgSG9tZXBhZ2U6IGh0dHA6Ly9vcmdtb2RlLm9y ZwoKOzsgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05VIEVtYWNzLgoKOzsgR05VIEVtYWNzIGlzIGZy ZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKOzsgaXQg dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJs aXNoZWQgYnkKOzsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24g MyBvZiB0aGUgTGljZW5zZSwgb3IKOzsgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KCjs7IEdOVSBFbWFjcyBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwg YmUgdXNlZnVsLAo7OyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgo7OyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQ QVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCjs7IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl IGZvciBtb3JlIGRldGFpbHMuCgo7OyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9m IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQo7OyBhbG9uZyB3aXRoIEdOVSBFbWFjcy4g IElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KCjs7OyBDb21tZW50 YXJ5Ogo7OyBDdXJyZW50bHkgb25seSBzdXBwb3J0cyB0aGUgZXh0ZXJuYWwgZXhlY3V0aW9uLiAg Tm8gc2Vzc2lvbiBzdXBwb3J0IHlldC4KCjs7OyBSZXF1aXJlbWVudHM6Cjs7IC0gR3Jvb3Z5IGxh bmd1YWdlIDo6IGh0dHA6Ly9ncm9vdnkuY29kZWhhdXMub3JnCjs7IC0gR3Jvb3Z5IG1ham9yIG1v ZGUgOjogQ2FuIGJlIGluc3RhbGxlZCBmcm9tIE1FTFBBIG9yCjs7ICAgaHR0cHM6Ly9naXRodWIu Y29tL3J1c3NlbC9FbWFjcy1Hcm9vdnktTW9kZQoKOzs7IENvZGU6CihyZXF1aXJlICdvYikKKGV2 YWwtd2hlbi1jb21waWxlIChyZXF1aXJlICdjbCkpCgooZGVmdmFyIG9yZy1iYWJlbC10YW5nbGUt bGFuZy1leHRzKSA7OyBBdXRvbG9hZGVkCihhZGQtdG8tbGlzdCAnb3JnLWJhYmVsLXRhbmdsZS1s YW5nLWV4dHMgJygiZ3Jvb3Z5IiAuICJncm9vdnkiKSkKKGRlZnZhciBvcmctYmFiZWwtZGVmYXVs dC1oZWFkZXItYXJnczpncm9vdnkgJygpKQooZGVmdmFyIG9yZy1iYWJlbC1ncm9vdnktY29tbWFu ZCAiZ3Jvb3Z5IgogICJOYW1lIG9mIHRoZSBjb21tYW5kIHRvIHVzZSBmb3IgZXhlY3V0aW5nIEdy b292eSBjb2RlLiIpCgooZGVmdW4gb3JnLWJhYmVsLWV4ZWN1dGU6Z3Jvb3Z5IChib2R5IHBhcmFt cykKICAiRXhlY3V0ZSBhIGJsb2NrIG9mIEdyb292eSBjb2RlIHdpdGggb3JnLWJhYmVsLiAgVGhp cyBmdW5jdGlvbiBpcwpjYWxsZWQgYnkgYG9yZy1iYWJlbC1leGVjdXRlLXNyYy1ibG9jayciCiAg KG1lc3NhZ2UgImV4ZWN1dGluZyBHcm9vdnkgc291cmNlIGNvZGUgYmxvY2siKQogIChsZXQqICgo cHJvY2Vzc2VkLXBhcmFtcyAob3JnLWJhYmVsLXByb2Nlc3MtcGFyYW1zIHBhcmFtcykpCiAgICAg ICAgIChzZXNzaW9uIChvcmctYmFiZWwtZ3Jvb3Z5LWluaXRpYXRlLXNlc3Npb24gKG50aCAwIHBy b2Nlc3NlZC1wYXJhbXMpKSkKICAgICAgICAgKHZhcnMgKG50aCAxIHByb2Nlc3NlZC1wYXJhbXMp KQogICAgICAgICAocmVzdWx0LXBhcmFtcyAobnRoIDIgcHJvY2Vzc2VkLXBhcmFtcykpCiAgICAg ICAgIChyZXN1bHQtdHlwZSAoY2RyIChhc3NvYyA6cmVzdWx0LXR5cGUgcGFyYW1zKSkpCiAgICAg ICAgIChmdWxsLWJvZHkgKG9yZy1iYWJlbC1leHBhbmQtYm9keTpnZW5lcmljCiAgICAgICAgICAg ICAgICAgICAgIGJvZHkgcGFyYW1zKSkKICAgICAgICAgKHJlc3VsdCAob3JnLWJhYmVsLWdyb292 eS1ldmFsdWF0ZQogICAgICAgICAgICAgICAgICBzZXNzaW9uIGZ1bGwtYm9keSByZXN1bHQtdHlw ZSByZXN1bHQtcGFyYW1zKSkpCgogICAgKG9yZy1iYWJlbC1yZWFzc2VtYmxlLXRhYmxlCiAgICAg cmVzdWx0CiAgICAgKG9yZy1iYWJlbC1waWNrLW5hbWUKICAgICAgKGNkciAoYXNzb2MgOmNvbG5h bWUtbmFtZXMgcGFyYW1zKSkgKGNkciAoYXNzb2MgOmNvbG5hbWVzIHBhcmFtcykpKQogICAgIChv cmctYmFiZWwtcGljay1uYW1lCiAgICAgIChjZHIgKGFzc29jIDpyb3duYW1lLW5hbWVzIHBhcmFt cykpIChjZHIgKGFzc29jIDpyb3duYW1lcyBwYXJhbXMpKSkpKSkKCgooZGVmdW4gb3JnLWJhYmVs LWdyb292eS10YWJsZS1vci1zdHJpbmcgKHJlc3VsdHMpCiAgIkNvbnZlcnQgUkVTVUxUUyBpbnRv IGFuIGFwcHJvcHJpYXRlIGVsaXNwIHZhbHVlLgpJZiBSRVNVTFRTIGxvb2sgbGlrZSBhIHRhYmxl LCB0aGVuIGNvbnZlcnQgdGhlbSBpbnRvIGFuCkVtYWNzLWxpc3AgdGFibGUsIG90aGVyd2lzZSBy ZXR1cm4gdGhlIHJlc3VsdHMgYXMgYSBzdHJpbmcuIgogIChvcmctYmFiZWwtc2NyaXB0LWVzY2Fw ZSByZXN1bHRzKSkKCgooZGVmdmFyIG9yZy1iYWJlbC1ncm9vdnktd3JhcHBlci1tZXRob2QKCiAg ImNsYXNzIFJ1bm5lciBleHRlbmRzIFNjcmlwdCB7CiAgICBkZWYgb3V0ID0gbmV3IFByaW50V3Jp dGVyKG5ldyBCeXRlQXJyYXlPdXRwdXRTdHJlYW0oKSkKICAgIGRlZiBydW4oKSB7ICVzIH0KfQoK cHJpbnRsbihuZXcgUnVubmVyKCkucnVuKCkpCiIpCgoKKGRlZnVuIG9yZy1iYWJlbC1ncm9vdnkt ZXZhbHVhdGUKICAoc2Vzc2lvbiBib2R5ICZvcHRpb25hbCByZXN1bHQtdHlwZSByZXN1bHQtcGFy YW1zKQogICJFdmFsdWF0ZSBCT0RZIGluIGV4dGVybmFsIEdyb292eSBwcm9jZXNzLgpJZiBSRVNV TFQtVFlQRSBlcXVhbHMgJ291dHB1dCB0aGVuIHJldHVybiBzdGFuZGFyZCBvdXRwdXQgYXMgYSBz dHJpbmcuCklmIFJFU1VMVC1UWVBFIGVxdWFscyAndmFsdWUgdGhlbiByZXR1cm4gdGhlIHZhbHVl IG9mIHRoZSBsYXN0IHN0YXRlbWVudAppbiBCT0RZIGFzIGVsaXNwLiIKICAod2hlbiBzZXNzaW9u IChlcnJvciAiU2Vzc2lvbnMgYXJlIG5vdCAoeWV0KSBzdXBwb3J0ZWQgZm9yIEdyb292eSIpKQog IChjYXNlIHJlc3VsdC10eXBlCiAgICAob3V0cHV0CiAgICAgKGxldCAoKHNyYy1maWxlIChvcmct YmFiZWwtdGVtcC1maWxlICJncm9vdnktIikpKQogICAgICAgKHByb2duICh3aXRoLXRlbXAtZmls ZSBzcmMtZmlsZSAoaW5zZXJ0IGJvZHkpKQogICAgICAgICAgICAgIChvcmctYmFiZWwtZXZhbAog ICAgICAgICAgICAgICAoY29uY2F0IG9yZy1iYWJlbC1ncm9vdnktY29tbWFuZCAiICIgc3JjLWZp bGUpICIiKSkpKQogICAgKHZhbHVlCiAgICAgKGxldCogKChzcmMtZmlsZSAob3JnLWJhYmVsLXRl bXAtZmlsZSAiZ3Jvb3Z5LSIpKQogICAgICAgICAgICAod3JhcHBlciAoZm9ybWF0IG9yZy1iYWJl bC1ncm9vdnktd3JhcHBlci1tZXRob2QgYm9keSkpKQogICAgICAgKHdpdGgtdGVtcC1maWxlIHNy Yy1maWxlIChpbnNlcnQgd3JhcHBlcikpCiAgICAgICAobGV0ICgocmF3IChvcmctYmFiZWwtZXZh bAogICAgICAgICAgICAgICAgICAgKGNvbmNhdCBvcmctYmFiZWwtZ3Jvb3Z5LWNvbW1hbmQgIiAi IHNyYy1maWxlKSAiIikpKQogICAgICAgICAob3JnLWJhYmVsLXJlc3VsdC1jb25kIHJlc3VsdC1w YXJhbXMKCSAgIHJhdwogICAgICAgICAgIChvcmctYmFiZWwtZ3Jvb3Z5LXRhYmxlLW9yLXN0cmlu ZyByYXcpKSkpKSkpCgoKKGRlZnVuIG9yZy1iYWJlbC1wcmVwLXNlc3Npb246Z3Jvb3Z5IChzZXNz aW9uIHBhcmFtcykKICAiUHJlcGFyZSBTRVNTSU9OIGFjY29yZGluZyB0byB0aGUgaGVhZGVyIGFy Z3VtZW50cyBzcGVjaWZpZWQgaW4gUEFSQU1TLiIKICAoZXJyb3IgIlNlc3Npb25zIGFyZSBub3Qg KHlldCkgc3VwcG9ydGVkIGZvciBHcm9vdnkiKSkKCihkZWZ1biBvcmctYmFiZWwtZ3Jvb3Z5LWlu aXRpYXRlLXNlc3Npb24gKCZvcHRpb25hbCBzZXNzaW9uKQogICJJZiB0aGVyZSBpcyBub3QgYSBj dXJyZW50IGluZmVyaW9yLXByb2Nlc3MtYnVmZmVyIGluIFNFU1NJT04KdGhlbiBjcmVhdGUuICBS ZXR1cm4gdGhlIGluaXRpYWxpemVkIHNlc3Npb24uICBTZXNzaW9ucyBhcmUgbm90CnN1cHBvcnRl ZCBpbiBHcm9vdnkuIgogIG5pbCkKCihwcm92aWRlICdvYi1ncm9vdnkpCgoKCjs7OyBvYi1ncm9v dnkuZWwgZW5kcyBoZXJlCg== --089e013d1fdc7c372e04ee769f2b--