From 03f58af1eba4550dd8f2500468ee852d52a89260 Mon Sep 17 00:00:00 2001
From: Michael Weylandt <michael.weylandt@gmail.com>
Date: Sun, 6 Apr 2014 21:19:56 -0400
Subject: [PATCH 1/2] org.el: Don't fill on inline source blocks or macros

* lisp/org.el (org-fill-element-nobreak-p): New function

* lisp/org.el (org-setup-filling): Add org-fill-element-nobreak-p to
  fill-nobreak-predicate

Org currently doesn't recognize inline source blocks or macros spread
over multiple lines so we need to keep Emacs from filling (line
wrapping) and breaking these elements.

TINYCHANGE
---
 lisp/org.el | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/lisp/org.el b/lisp/org.el
index 318d95a..52ac8dd 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -22246,7 +22246,8 @@ hierarchy of headlines by UP levels before marking the subtree."
      (org-uniquify
       (append fill-nobreak-predicate
 	      '(org-fill-line-break-nobreak-p
-		org-fill-paragraph-with-timestamp-nobreak-p)))))
+		org-fill-paragraph-with-timestamp-nobreak-p
+		org-fill-element-nobreak-p)))))
   (let ((paragraph-ending (substring org-element-paragraph-separate 1)))
     (org-set-local 'paragraph-start paragraph-ending)
     (org-set-local 'paragraph-separate paragraph-ending))
@@ -22268,6 +22269,12 @@ hierarchy of headlines by UP levels before marking the subtree."
   (and (org-at-timestamp-p t)
        (not (looking-at org-ts-regexp-both))))
 
+(defun org-fill-element-nobreak-p ()
+  "Non-nil when a new line at point would break an element which
+  cannot be split over multiple lines."
+  (member (car (org-element-context))
+	  '(inline-src-block macro)))
+
 (declare-function message-in-body-p "message" ())
 (defvar orgtbl-line-start-regexp) ; From org-table.el
 (defun org-adaptive-fill-function ()
-- 
1.8.3.4 (Apple Git-47)

