From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark Cox Subject: Unwanted "(progn )" when Tangling Lisp Code Date: Tue, 31 May 2011 11:39:38 +1000 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Return-path: Received: from eggs.gnu.org ([140.186.70.92]:47020) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QRDvo-0002XX-Ej for emacs-orgmode@gnu.org; Mon, 30 May 2011 21:39:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QRDvn-0008Pr-Jb for emacs-orgmode@gnu.org; Mon, 30 May 2011 21:39:40 -0400 Received: from mail-vw0-f41.google.com ([209.85.212.41]:54823) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QRDvn-0008O6-Gz for emacs-orgmode@gnu.org; Mon, 30 May 2011 21:39:39 -0400 Received: by vws4 with SMTP id 4so3931914vws.0 for ; Mon, 30 May 2011 18:39:38 -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 Hi, When tangling lisp source code blocks, the tangled code is wrapped in a `(progn ,@body). For example, the block #+begin_src lisp :tangle example.lisp (defun mischief () (/ 1 0)) #+end_src produces : (progn (defun mischief () : (/ 1 0)) : ) With the attached patch, the tangling process now produces : : (defun mischief () : (/ 1 0)) Thanks Mark Here is the patch. diff --git a/lisp/ob-lisp.el b/lisp/ob-lisp.el index a810d86..3382418 100644 --- a/lisp/ob-lisp.el +++ b/lisp/ob-lisp.el @@ -54,7 +54,7 @@ (format "(%S (quote %S))" (car var) (cdr var))) vars "\n ") ")\n" body ")") - (format "(progn %s)" body))))) + body)))) (if (or (member "code" result-params) (member "pp" result-params)) (format "(pprint %s)" body) @@ -65,7 +65,7 @@ (require 'slime) (org-babel-reassemble-table (with-temp-buffer - (insert (org-babel-expand-body:lisp body params)) + (insert (format "(progn\n %s)" (org-babel-expand-body:lisp body params))) ((lambda (result) (if (member "output" (cdr (assoc :result-params params))) (car result)