emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Matt Price <moptop99@gmail.com>
To: Org Mode <emacs-orgmode@gnu.org>
Subject: ox-md export title block
Date: Fri, 23 Oct 2015 13:37:22 -0400	[thread overview]
Message-ID: <CAN_Dec_FXhjw8aay8gnwKQf==fa0GHqLh-umYT+XCid6EG3GMw@mail.gmail.com> (raw)


[-- Attachment #1.1: Type: text/plain, Size: 434 bytes --]

I don't know that much about markdown, and I know there are many different
flavours.  pandoc can make use of title, author, and date info in a
markdown file -- from what i cna tell, it expects a "title block atthe head
of a file (http://pandoc.org/README.html#extension-pandoc_title_block)

% author
% title
% date

I have a simple, inadequate patch to ox-md-template that inserts this info.
It's a start maybe for a better patch?

m

[-- Attachment #1.2: Type: text/html, Size: 630 bytes --]

[-- Attachment #2: 0001-ox-md-export-title-block.patch --]
[-- Type: text/x-patch, Size: 1065 bytes --]

diff --git a/lisp/ox-md.el b/lisp/ox-md.el
index e4291e5..321539a 100644
--- a/lisp/ox-md.el
+++ b/lisp/ox-md.el
@@ -468,12 +468,26 @@ holding export options."
   ;; footnotes with at least a blank line.
   (org-trim (org-html-inner-template (concat "\n" contents "\n") info)))
 
+;;;; template
 (defun org-md-template (contents info)
   "Return complete document string after Markdown conversion.
 CONTENTS is the transcoded contents string.  INFO is a plist used
 as a communication channel."
-  contents)
-
+  (concat
+   ;;(message (concat info))
+   (and (plist-get info :with-author)
+	(let ((author (org-export-data (plist-get info :author) info)))
+	  (and (org-string-nw-p author)
+	       (concat  "\% " author "\n"))))
+   (and (plist-get info :with-title)
+	(concat "\% " (org-export-data (plist-get info :title) info) "\n"))
+   (and (plist-get info :with-date)
+	(let ((date (org-export-data (org-export-get-date info) info)))
+	  (and (org-string-nw-p date)
+	       (concat "\% " date "\n"))))
+   
+   contents)
+  )
 
 \f
 ;;; Interactive function

             reply	other threads:[~2015-10-23 17:37 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-23 17:37 Matt Price [this message]
2015-10-23 20:38 ` ox-md export title block Rasmus
2015-10-23 21:22   ` Nick Dokos
2015-10-24  0:41     ` Matt Price
2015-10-24 11:49       ` Rasmus
2015-10-23 20:39 ` Nicolas Goaziou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAN_Dec_FXhjw8aay8gnwKQf==fa0GHqLh-umYT+XCid6EG3GMw@mail.gmail.com' \
    --to=moptop99@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).