emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* [PATCH] Make tangling work in an indirect buffer
@ 2011-03-09 16:57 Shaun Johnson
  2011-04-15 15:57 ` Eric Schulte
  0 siblings, 1 reply; 2+ messages in thread
From: Shaun Johnson @ 2011-03-09 16:57 UTC (permalink / raw)
  To: Org Mode

[-- Attachment #1: Type: text/plain, Size: 516 bytes --]

The attached patch makes tangling (org-babel-tangle) work
in indirect buffers. Previously it would fail before running
org-babel-post-tangle-hook because indirect have a buffer-file-name
of nil whereas the code was expecting a string in the following
fragment:

(message "tangled %d code block%s from %s" block-counter
                (if (= block-counter 1) "" "s")
	       (file-name-nondirectory (buffer-file-name (or (buffer-base-buffer) (current-buffer)))))


I hope the patch is in the correct format.

Shaun.

[-- Attachment #2: 0001-Babel-Stop-tangling-failing-in-an-indirect-buffer.patch --]
[-- Type: text/plain, Size: 1186 bytes --]

From d11bae118dcc1e69fd148002a55e4ae29551c319 Mon Sep 17 00:00:00 2001
From: Shaun Johnson <shaun@slugfest.demon.co.uk>
Date: Wed, 9 Mar 2011 15:32:40 +0000
Subject: [PATCH] Babel: Stop tangling failing in an indirect buffer

* ob-tangle.el (org-babel-tangle): Make it work in an indirect buffer.

The problem was that the message generated after tangling included the
file name of the current buffer which was nil in an indirect buffer.

TINYCHANGE
---
 lisp/ob-tangle.el |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/lisp/ob-tangle.el b/lisp/ob-tangle.el
index 4e203be..f7f7047 100644
--- a/lisp/ob-tangle.el
+++ b/lisp/ob-tangle.el
@@ -243,7 +243,7 @@ exported source code blocks by language."
        (org-babel-tangle-collect-blocks lang))
       (message "tangled %d code block%s from %s" block-counter
                (if (= block-counter 1) "" "s")
-	       (file-name-nondirectory (buffer-file-name (current-buffer))))
+	       (file-name-nondirectory (buffer-file-name (or (buffer-base-buffer) (current-buffer)))))
       ;; run `org-babel-post-tangle-hook' in all tangled files
       (when org-babel-post-tangle-hook
 	(mapc
-- 
1.7.4.msysgit.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] Make tangling work in an indirect buffer
  2011-03-09 16:57 [PATCH] Make tangling work in an indirect buffer Shaun Johnson
@ 2011-04-15 15:57 ` Eric Schulte
  0 siblings, 0 replies; 2+ messages in thread
From: Eric Schulte @ 2011-04-15 15:57 UTC (permalink / raw)
  To: Shaun Johnson; +Cc: Org Mode

Hi Shaun,

Thanks for sharing this patch, I have just applied it.  And yes, this is
my preferred format for sharing a patch.

Sorry about the delay, I missed this email initially.  Adding a
"[babel]" tag to the subject line of emails related to Babel code will
help ensure that they are noticed.

Thanks again for the patch! -- Eric

Shaun Johnson <shaun@slugfest.demon.co.uk> writes:

> The attached patch makes tangling (org-babel-tangle) work
> in indirect buffers. Previously it would fail before running
> org-babel-post-tangle-hook because indirect have a buffer-file-name
> of nil whereas the code was expecting a string in the following
> fragment:
>
> (message "tangled %d code block%s from %s" block-counter
>                (if (= block-counter 1) "" "s")
> 	       (file-name-nondirectory (buffer-file-name (or
> (buffer-base-buffer) (current-buffer)))))
>
>
> I hope the patch is in the correct format.
>
> Shaun.
> From d11bae118dcc1e69fd148002a55e4ae29551c319 Mon Sep 17 00:00:00 2001
> From: Shaun Johnson <shaun@slugfest.demon.co.uk>
> Date: Wed, 9 Mar 2011 15:32:40 +0000
> Subject: [PATCH] Babel: Stop tangling failing in an indirect buffer
>
> * ob-tangle.el (org-babel-tangle): Make it work in an indirect buffer.
>
> The problem was that the message generated after tangling included the
> file name of the current buffer which was nil in an indirect buffer.
>
> TINYCHANGE
> ---
>  lisp/ob-tangle.el |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/lisp/ob-tangle.el b/lisp/ob-tangle.el
> index 4e203be..f7f7047 100644
> --- a/lisp/ob-tangle.el
> +++ b/lisp/ob-tangle.el
> @@ -243,7 +243,7 @@ exported source code blocks by language."
>         (org-babel-tangle-collect-blocks lang))
>        (message "tangled %d code block%s from %s" block-counter
>                 (if (= block-counter 1) "" "s")
> -	       (file-name-nondirectory (buffer-file-name (current-buffer))))
> +	       (file-name-nondirectory (buffer-file-name (or (buffer-base-buffer) (current-buffer)))))
>        ;; run `org-babel-post-tangle-hook' in all tangled files
>        (when org-babel-post-tangle-hook
>  	(mapc

-- 
Eric Schulte
http://cs.unm.edu/~eschulte/

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2011-04-15 16:26 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-03-09 16:57 [PATCH] Make tangling work in an indirect buffer Shaun Johnson
2011-04-15 15:57 ` Eric Schulte

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).