diff options
author | Bastien Guerry <bzg@altern.org> | 2011-07-06 12:53:19 +0200 |
---|---|---|
committer | Bastien Guerry <bzg@altern.org> | 2011-07-06 12:53:19 +0200 |
commit | 91b6f11a042e8dc8ad9cebb478bd324aa2efd5e7 (patch) | |
tree | 2bba408f3c4482210472b24ba0f0848cc698a328 | |
parent | 301b3450fedad4b27fb797ef806956ee37a54221 (diff) | |
download | org-mode-91b6f11a042e8dc8ad9cebb478bd324aa2efd5e7.tar.gz |
Rename experimental file org-mediawiki.el to org-mw.el.
This version also introduces many fixes.
-rw-r--r-- | EXPERIMENTAL/org-mw.el (renamed from EXPERIMENTAL/org-mediawiki.el) | 64 |
1 files changed, 32 insertions, 32 deletions
diff --git a/EXPERIMENTAL/org-mediawiki.el b/EXPERIMENTAL/org-mw.el index ab5eda1..daea49b 100644 --- a/EXPERIMENTAL/org-mediawiki.el +++ b/EXPERIMENTAL/org-mw.el @@ -1,14 +1,14 @@ -;;; org-mediawiki.el --- mediawiki backend for org-export.el +;;; org-mw.el --- Mediawiki backend for org-export.el ;; -;; Copyright 2010 Bastien Guerry +;; Copyright 2010, 2011 Bastien Guerry ;; ;; Emacs Lisp Archive Entry -;; Filename: org-mediawiki.el +;; Filename: org-mw.el ;; Version: 0.3a ;; Author: Bastien <bzg AT altern DOT org> ;; Maintainer: Bastien <bzg AT altern DOT org> -;; Keywords: -;; Description: +;; Keywords: Mediawiki Org export +;; Description: Mediawiki exporter for Org ;; URL: [Not distributed yet] ;; ;; This program is free software; you can redistribute it and/or modify @@ -27,11 +27,11 @@ ;; ;;; Commentary: ;; -;; org-mediawiki.el lets you convert Org files to mediawiki files using +;; org-mw.el lets you convert Org files to mediawiki files using ;; the org-export.el experimental engine. ;; ;; Put this file into your load-path and the following into your ~/.emacs: -;; (require 'org-mediawiki) +;; (require 'org-mw) ;; ;; You also need to fetch Org's git repository and add the EXPERIMENTAL/ ;; directory in your load path. @@ -73,13 +73,14 @@ (defun org-mw-export () "Export the current buffer to Mediawiki." (interactive) + (setq org-export-current-backend 'mw) (org-export-set-backend "mw") ;; FIXME see the problem `org-mw-export-footnotes' ;; (add-hook 'org-export-preprocess-final-hook 'org-mw-export-footnotes) (add-hook 'org-export-preprocess-before-backend-specifics-hook 'org-mw-export-src-example) (org-export-render) - (remove-hook 'org-export-preprocess-final-hook 'org-mw-export-footnotes) + ;; (remove-hook 'org-export-preprocess-final-hook 'org-mw-export-footnotes) (remove-hook 'org-export-preprocess-before-backend-specifics-hook 'org-mw-export-src-example)) @@ -178,31 +179,25 @@ (delete-char 1)))) (defun org-mw-export-lists () - "Export lists" - (while (re-search-forward org-item-beginning-re nil t) + "Export lists to mediawiki syntax." + (while (re-search-forward (org-item-beginning-re) nil t) (move-beginning-of-line 1) - (org-list-to-mw (org-list-parse-list t)))) - -(defun org-list-to-mw (list &optional level leveluptype) - "Convert LIST into a mediawiki list. -LIST is a list returned by `org-list-parse-list'. A second -optional LEVEL argument defines the level at which the parsing -starts. An optional third argument LEVELUPTYPE tells what type -of list we are in at LEVEL." - (let ((lvl (or level 1)) - (ltype (cond ((eq (car list) 'unordered) ?*) - ((eq (car list) 'ordered) ?#) - ((eq (car list) 'descriptive) ?\;))) - (luptype leveluptype)) - (dolist (item (cdr list)) - (if (stringp item) - (progn - (setq item (replace-regexp-in-string "\n[ \t]*" " " item)) - (when (eq ltype ?\;) - (setq item (replace-regexp-in-string "::" ":" item))) - (insert (if luptype (make-string (1- lvl) luptype) "") - (char-to-string ltype) " " item "\n")) - (org-list-to-mw item (1+ lvl) ltype))))) + (insert (org-list-to-generic + (org-list-parse-list t) + (org-combine-plists + '(:splice nil + :ostart "" :oend "" + :ustart "" :uend "" + :dstart "" :dend "" + :dtstart "" :dtend " " + :istart (concat (make-string (* 2 depth) ? ) + (if (eq type 'unordered) + "- " "# ")) + :iend "\n" + :icount nil + :csep "\n" + :cbon "[X]" :cboff "[ ]" + :cbtrans "[-]")))))) (defun org-mw-export-tables () "Convert tables in the current buffer to mediawiki tables." @@ -243,3 +238,8 @@ of list we are in at LEVEL." (defun org-mw-export-footer () "") (defun org-mw-export-section-beginning (section-properties) "") (defun org-mw-export-section-end (section-properties) "") +(defun org-export-mw-preprocess (parameters) + "Do extra work for Mediawiki export." + nil) + +(provide 'org-mw) |