Просмотр исходного кода

org-babel-c: new header argument ":main no" allows inhibiting main wrap

Eric Schulte 15 лет назад
Родитель
Сommit
7cbb35920d
1 измененных файлов с 4 добавлено и 1 удалено
  1. 4 1
      contrib/babel/lisp/langs/org-babel-C.el

+ 4 - 1
contrib/babel/lisp/langs/org-babel-C.el

@@ -77,6 +77,7 @@ called by `org-babel-execute-src-block'."
          (cmdline (cdr (assoc :cmdline params)))
          (flags (cdr (assoc :flags params)))
          (vars (second processed-params))
+         (main-p (not (string= (cdr (assoc :main params)) "no")))
          (includes (or (cdr (assoc :includes params))
                        (org-entry-get nil "includes" t)))
          (defines (org-babel-read
@@ -95,7 +96,9 @@ called by `org-babel-execute-src-block'."
                       ;; variables
                       (mapconcat 'org-babel-C-var-to-C vars "\n")
                       ;; body
-                      "\n" (org-babel-C-ensure-main-wrap body) "\n") "\n"))
+                      "\n" (if main-p
+                               (org-babel-C-ensure-main-wrap body)
+                             body) "\n") "\n"))
          (error-buf (get-buffer-create "*Org-Babel Error Output*"))
          (compile
           (progn