Commit 71d35b24 authored by Carsten Dominik's avatar Carsten Dominik

2008-10-26 Carsten Dominik <dominik@science.uva.nl>

	* org-agenda.el (org-format-agenda-item)
	(org-agenda-filter-make-matcher): Make sure tags are stored and
	compared donwcased.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org.el (org-insert-todo-heading): Fix bug with force-heading
	argument.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-exp.el (org-export-as-ascii): Handle the case that we are
	bulishing from an indirect buffer.

	* org-table.el (org-table-copy-down): Fix bug with time stamp
	increment.

	* org-mouse.el (org-mouse-features): New option.
	(org-mode-hook): Turn on features depending on
	`org-mouse-features'.

	* org.el (org-insert-heading-respect-content): Force heading
	creation.
	(org-insert-heading): keep the folding state of the heading before
	the inserted one.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-archive.el (org-archive-to-archive-sibling): Handle top
	level headlines better.

2008-10-26  Bastien Guerry  <bzg@altern.org>

	* org-export-latex.el (org-export-latex-classes): Added
	\usepackage{graphicx} to the default list of packages.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-agenda.el (org-agenda-filter): Renamed from
	`org-agenda-filter-tags'.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org.el (org-entry-properties): Add CATEGORY property, iven if it
	is not defined as a property in this entry.
	(org-add-log-note): Mask prefix argument when immediately storing
	the note.

	* org-agenda.el (org-agenda-filter-effort-default-operator): New
	option.

2008-10-26  James TD Smith  <ahktenzero@mohorovi.cc>

	* org.el (org-add-log-setup): Bugfix; code to find insertion point
	after drawers was skipping ahead one line too many, so notes were
	inserted after the first note instead of before it.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-agenda.el (org-agenda-filter-tags,org-agenda-filter-form):
	New variables.
	(org-prepare-agenda): Reset the filter tags.
	(org-agenda-filter-by-tag, org-agenda-filter-by-tag-show-all):
	Show filter tags in mode line.

	* org-table.el (orgtbl-to-html): Bind `html-table-tag' for the
	formatter.

	* org-export-latex.el (org-latex-entities-regexp): New constant.
	(org-export-as-pdf): Use two calls to `shell-command'.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-export-latex.el (org-export-latex-treat-sub-super-char):
	Honor the {} value of the subsuperscript setting.  Make sure that
	longer subsuperscripts are typeset in a roman font.

	* org.el (org-clock-update-time-maybe): Compute negative clock
	intervals correctly.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org.el (org-add-log-setup): Respect
	`org-log-state-notes-insert-after-drawers'.
	(org-log-state-notes-insert-after-drawers): New option.
	(org-todo-trigger-tag-changes): New function.
	(org-todo): Call `org-todo-trigger-tag-changes'.

2008-10-26  James TD Smith  <ahktenzero@mohorovi.cc>

	* org.el (org-add-log-setup): Only skip drawers if the are
	immediately after the scheduling keywords.

	* org-clock.el (org-clock-in-switch-to-state): Allow this to be a
	function
	(org-clock-in): If `org-clock-in-switch-to-state' is a function,
	call it with the current todo state to get the state to switch to
	when clocking in.
	(org-clock-in): Use org-indent-line-function to indent clock lines.
	(org-clock-find-position): Fix indentation of empty clock drawers.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-publish.el (org-publish-org-to): Handle case when
	org-export-to-pdf does return a file name, not a buffer.
	(org-publish-org-to-pdf): New function.

	* org-export-latex.el (org-export-as-pdf)
	(org-export-as-pdf-and-open): New commands.

	* org-table.el (org-table-eval-formula): Avoid parsing Calc's HMS
	forms as ranges.

	* org-export-latex.el (org-export-latex-lists): Ignore lists-like
	things in protexted regions.

2008-10-26  Carsten Dominik  <dominik@science.uva.nl>

	* org-export-latex.el (org-export-latex-preprocess): Improve
	quoting of LaTeX environments.
parent 7f5cd554
This diff is collapsed.
% Reference Card for Org Mode
\def\orgversionnumber{6.09a}
\def\orgversionnumber{6.10c}
\def\versionyear{2008} % latest update
\def\year{2008} % latest copyright year
......@@ -539,8 +539,8 @@ \section{TODO Items and Checkboxes}
\section{Tags}
\key{set tags for current heading}{C-c C-c}
\key{realign tags in all headings}{C-u C-c C-c}
\key{set tags for current heading}{C-c C-q}
\key{realign tags in all headings}{C-u C-c C-q}
\key{create sparse tree with matching tags}{C-c \\}
\key{globally (agenda) match tags at cursor}{C-c C-o}
......@@ -607,7 +607,7 @@ \section{Agenda Views}
\key{compile agenda for the current week}{C-c a a$^1$}
\key{compile global TODO list}{C-c a t$^1$}
\key{compile TODO list for specific keyword}{C-c a T$^1$}
\key{match tags, ODO kwds, properties}{C-c a m$^1$}
\key{match tags, TODO kwds, properties}{C-c a m$^1$}
\key{match only in TODO entries}{C-c a M$^1$}
\key{find stuck projects}{C-c a \#$^1$}
\key{show timeline of current org file}{C-c a L$^1$}
......
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-agenda.el (org-format-agenda-item)
(org-agenda-filter-make-matcher): Make sure tags are stored and
compared donwcased.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org.el (org-insert-todo-heading): Fix bug with force-heading
argument.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-exp.el (org-export-as-ascii): Handle the case that we are
bulishing from an indirect buffer.
* org-table.el (org-table-copy-down): Fix bug with time stamp
increment.
* org-mouse.el (org-mouse-features): New option.
(org-mode-hook): Turn on features depending on
`org-mouse-features'.
* org.el (org-insert-heading-respect-content): Force heading
creation.
(org-insert-heading): keep the folding state of the heading before
the inserted one.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-archive.el (org-archive-to-archive-sibling): Handle top
level headlines better.
2008-10-26 Bastien Guerry <bzg@altern.org>
* org-export-latex.el (org-export-latex-classes): Added
\usepackage{graphicx} to the default list of packages.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-agenda.el (org-agenda-filter): Renamed from
`org-agenda-filter-tags'.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org.el (org-entry-properties): Add CATEGORY property, iven if it
is not defined as a property in this entry.
(org-add-log-note): Mask prefix argument when immediately storing
the note.
* org-agenda.el (org-agenda-filter-effort-default-operator): New
option.
2008-10-26 James TD Smith <ahktenzero@mohorovi.cc>
* org.el (org-add-log-setup): Bugfix; code to find insertion point
after drawers was skipping ahead one line too many, so notes were
inserted after the first note instead of before it.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-agenda.el (org-agenda-filter-tags,org-agenda-filter-form):
New variables.
(org-prepare-agenda): Reset the filter tags.
(org-agenda-filter-by-tag, org-agenda-filter-by-tag-show-all):
Show filter tags in mode line.
* org-table.el (orgtbl-to-html): Bind `html-table-tag' for the
formatter.
* org-export-latex.el (org-latex-entities-regexp): New constant.
(org-export-as-pdf): Use two calls to `shell-command'.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-export-latex.el (org-export-latex-treat-sub-super-char):
Honor the {} value of the subsuperscript setting. Make sure that
longer subsuperscripts are typeset in a roman font.
* org.el (org-clock-update-time-maybe): Compute negative clock
intervals correctly.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org.el (org-add-log-setup): Respect
`org-log-state-notes-insert-after-drawers'.
(org-log-state-notes-insert-after-drawers): New option.
(org-todo-trigger-tag-changes): New function.
(org-todo): Call `org-todo-trigger-tag-changes'.
2008-10-26 James TD Smith <ahktenzero@mohorovi.cc>
* org.el (org-add-log-setup): Only skip drawers if the are
immediately after the scheduling keywords.
* org-clock.el (org-clock-in-switch-to-state): Allow this to be a
function
(org-clock-in): If `org-clock-in-switch-to-state' is a function,
call it with the current todo state to get the state to switch to
when clocking in.
(org-clock-in): Use org-indent-line-function to indent clock lines.
(org-clock-find-position): Fix indentation of empty clock drawers.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-publish.el (org-publish-org-to): Handle case when
org-export-to-pdf does return a file name, not a buffer.
(org-publish-org-to-pdf): New function.
* org-export-latex.el (org-export-as-pdf)
(org-export-as-pdf-and-open): New commands.
* org-table.el (org-table-eval-formula): Avoid parsing Calc's HMS
forms as ranges.
* org-export-latex.el (org-export-latex-lists): Ignore lists-like
things in protexted regions.
2008-10-26 Carsten Dominik <dominik@science.uva.nl>
* org-export-latex.el (org-export-latex-preprocess): Improve
quoting of LaTeX environments.
2008-10-19 Eli Zaretskii <eliz@gnu.org>
* org.el (org-default-notes-file):
......
This diff is collapsed.
......@@ -5,7 +5,7 @@
;; Author: Carsten Dominik <carsten at orgmode dot org>
;; Keywords: outlines, hypermedia, calendar, wp
;; Homepage: http://orgmode.org
;; Version: 6.09a
;; Version: 6.10c
;;
;; This file is part of GNU Emacs.
;;
......@@ -322,12 +322,13 @@ sibling does not exist, it will be created at the end of the subtree."
(setq pos (point))
(condition-case nil
(outline-up-heading 1 t)
(error (goto-char (point-min))))
(error (setq e (point-max)) (goto-char (point-min))))
(setq b (point))
(condition-case nil
(org-end-of-subtree t t)
(error (goto-char (point-max))))
(setq e (point))
(unless e
(condition-case nil
(org-end-of-subtree t t)
(error (goto-char (point-max))))
(setq e (point)))
(goto-char b)
(unless (re-search-forward
(concat "^" (regexp-quote leader)
......
......@@ -4,7 +4,7 @@
;; Author: John Wiegley <johnw@newartisans.com>
;; Keywords: org data task
;; Version: 6.09a
;; Version: 6.10c
;; This file is part of GNU Emacs.
;;
......
......@@ -6,7 +6,7 @@
;; Thomas Baumann <thomas dot baumann at ch dot tum dot de>
;; Keywords: outlines, hypermedia, calendar, wp
;; Homepage: http://orgmode.org
;; Version: 6.09a
;; Version: 6.10c
;;
;; This file is part of GNU Emacs.
;;
......
......@@ -5,7 +5,7 @@
;; Author: Bastien Guerry <bzg at altern dot org>
;; Carsten Dominik <carsten dot dominik at gmail dot com>
;; Keywords: org, wp, remember
;; Version: 6.09a
;; Version: 6.10c
;;
;; This file is part of GNU Emacs.
;;
......
......@@ -5,7 +5,7 @@
;; Author: Carsten Dominik <carsten at orgmode dot org>
;; Keywords: outlines, hypermedia, calendar, wp
;; Homepage: http://orgmode.org
;; Version: 6.09a
;; Version: 6.10c
;;
;; This file is part of GNU Emacs.
;;
......@@ -67,12 +67,16 @@ A nil value means, clock will keep running until stopped explicitly with
(defcustom org-clock-in-switch-to-state nil
"Set task to a special todo state while clocking it.
The value should be the state to which the entry should be switched."
The value should be the state to which the entry should be
switched. If the value is a function, it must take one
parameter (the current TODO state of the item) and return the
state to switch it to."
:group 'org-clock
:group 'org-todo
:type '(choice
(const :tag "Don't force a state" nil)
(string :tag "State")))
(string :tag "State")
(symbol :tag "Function")))
(defcustom org-clock-history-length 5
"Number of clock tasks to remember in history."
......@@ -265,12 +269,16 @@ the clocking selection, associated with the letter `d'."
(org-back-to-heading t)
(or interrupting (move-marker org-clock-interrupted-task nil))
(org-clock-history-push)
(when (and org-clock-in-switch-to-state
(not (looking-at (concat outline-regexp "[ \t]*"
org-clock-in-switch-to-state
"\\>"))))
(org-todo org-clock-in-switch-to-state))
(setq org-clock-heading-for-remember
(cond ((functionp org-clock-in-switch-to-state)
(looking-at org-complex-heading-regexp)
(let ((newstate (funcall org-clock-in-switch-to-state (match-string 2))))
(if newstate (org-todo newstate))))
((and org-clock-in-switch-to-state
(not (looking-at (concat outline-regexp "[ \t]*"
org-clock-in-switch-to-state
"\\>"))))
(org-todo org-clock-in-switch-to-state)))
(setq org-clock-heading-for-remember
(and (looking-at org-complex-heading-regexp)
(match-end 4)
(org-trim (buffer-substring (match-end 1) (match-end 4)))))
......@@ -283,9 +291,9 @@ the clocking selection, associated with the letter `d'."
(t "???")))
(setq org-clock-heading (org-propertize org-clock-heading 'face nil))
(org-clock-find-position)
(insert "\n") (backward-char 1)
(indent-relative)
(org-indent-line-function)
(insert org-clock-string " ")
(setq org-clock-start-time (current-time))
(setq ts (org-insert-time-stamp (current-time) 'with-hm 'inactive))
......@@ -348,11 +356,12 @@ the clocking selection, associated with the letter `d'."
(or (bolp) (newline)))
(when (eq t org-clock-into-drawer)
(insert ":CLOCK:\n:END:\n")
(beginning-of-line -1)
(beginning-of-line 0)
(org-indent-line-function)
(beginning-of-line 0)
(org-flag-drawer t)
(beginning-of-line 2)
(org-indent-line-function)))))
(org-indent-line-function)
(beginning-of-line 2)))))
(defun org-clock-out (&optional fail-quietly)
"Stop the currently running clock.
......
......@@ -5,7 +5,7 @@
;; Author: Carsten Dominik <carsten at orgmode dot org>
;; Keywords: outlines, hypermedia, calendar, wp
;; Homepage: http://orgmode.org
;; Version: 6.09a
;; Version: 6.10c
;;
;; This file is part of GNU Emacs.
;;
......
......@@ -5,7 +5,7 @@
;; Author: Carsten Dominik <carsten at orgmode dot org>
;; Keywords: outlines, hypermedia, calendar, wp
;; Homepage: http://orgmode.org
;; Version: 6.09a
;; Version: 6.10c
;;
;; This file is part of GNU Emacs.
;;
......@@ -176,7 +176,7 @@ that can be added."
((fboundp 'add-to-invisibility-spec)
(add-to-invisibility-spec arg))
((or (null buffer-invisibility-spec) (eq buffer-invisibility-spec t))
(setq buffer-invisibility-spec (list arg)))
(setq buffer-invisibility-spec (list arg)))
(t
(setq buffer-invisibility-spec
(cons arg buffer-invisibility-spec)))))
......@@ -197,56 +197,56 @@ that can be added."
(defun org-indent-to-column (column &optional minimum buffer)
"Work around a bug with extents with invisibility in XEmacs."
(if (featurep 'xemacs)
(let ((ext-inv (extent-list
nil (point-at-bol) (point-at-eol)
'all-extents-closed-open 'invisible))
ext-inv-specs)
(dolist (ext ext-inv)
(when (extent-property ext 'invisible)
(add-to-list 'ext-inv-specs (list ext (extent-property
ext 'invisible)))
(set-extent-property ext 'invisible nil)))
(indent-to-column column minimum buffer)
(dolist (ext-inv-spec ext-inv-specs)
(set-extent-property (car ext-inv-spec) 'invisible
(cadr ext-inv-spec))))
(indent-to-column column minimum)))
(if (featurep 'xemacs)
(let ((ext-inv (extent-list
nil (point-at-bol) (point-at-eol)
'all-extents-closed-open 'invisible))
ext-inv-specs)
(dolist (ext ext-inv)
(when (extent-property ext 'invisible)
(add-to-list 'ext-inv-specs (list ext (extent-property
ext 'invisible)))
(set-extent-property ext 'invisible nil)))
(indent-to-column column minimum buffer)
(dolist (ext-inv-spec ext-inv-specs)
(set-extent-property (car ext-inv-spec) 'invisible
(cadr ext-inv-spec))))
(indent-to-column column minimum)))
(defun org-indent-line-to (column)
"Work around a bug with extents with invisibility in XEmacs."
(if (featurep 'xemacs)
(let ((ext-inv (extent-list
nil (point-at-bol) (point-at-eol)
'all-extents-closed-open 'invisible))
ext-inv-specs)
(dolist (ext ext-inv)
(when (extent-property ext 'invisible)
(add-to-list 'ext-inv-specs (list ext (extent-property
ext 'invisible)))
(set-extent-property ext 'invisible nil)))
(indent-line-to column)
(dolist (ext-inv-spec ext-inv-specs)
(set-extent-property (car ext-inv-spec) 'invisible
(cadr ext-inv-spec))))
(indent-line-to column)))
(if (featurep 'xemacs)
(let ((ext-inv (extent-list
nil (point-at-bol) (point-at-eol)
'all-extents-closed-open 'invisible))
ext-inv-specs)
(dolist (ext ext-inv)
(when (extent-property ext 'invisible)
(add-to-list 'ext-inv-specs (list ext (extent-property
ext 'invisible)))
(set-extent-property ext 'invisible nil)))
(indent-line-to column)
(dolist (ext-inv-spec ext-inv-specs)
(set-extent-property (car ext-inv-spec) 'invisible
(cadr ext-inv-spec))))
(indent-line-to column)))
(defun org-move-to-column (column &optional force buffer)
(if (featurep 'xemacs)
(let ((ext-inv (extent-list
nil (point-at-bol) (point-at-eol)
'all-extents-closed-open 'invisible))
ext-inv-specs)
(dolist (ext ext-inv)
(when (extent-property ext 'invisible)
(add-to-list 'ext-inv-specs (list ext (extent-property ext
'invisible)))
(set-extent-property ext 'invisible nil)))
(move-to-column column force buffer)
(dolist (ext-inv-spec ext-inv-specs)
(set-extent-property (car ext-inv-spec) 'invisible
(cadr ext-inv-spec))))
(move-to-column column force)))
(if (featurep 'xemacs)
(let ((ext-inv (extent-list
nil (point-at-bol) (point-at-eol)
'all-extents-closed-open 'invisible))
ext-inv-specs)
(dolist (ext ext-inv)
(when (extent-property ext 'invisible)
(add-to-list 'ext-inv-specs (list ext (extent-property ext
'invisible)))
(set-extent-property ext 'invisible nil)))
(move-to-column column force buffer)
(dolist (ext-inv-spec ext-inv-specs)
(set-extent-property (car ext-inv-spec) 'invisible
(cadr ext-inv-spec))))
(move-to-column column force)))
(defun org-get-x-clipboard-compat (value)
"Get the clipboard value on XEmacs or Emacs 21"
......@@ -263,7 +263,7 @@ that can be added."
(if (featurep 'xemacs)
(add-text-properties 0 (length string) properties string)
(apply 'propertize string properties)))
(provide 'org-compat)
;; arch-tag: a0a0579f-e68c-4bdf-9e55-93768b846bbe
......
......@@ -5,7 +5,7 @@
;; Author: Carsten Dominik <carsten at orgmode dot org>
;; Keywords: outlines, hypermedia, calendar, wp
;; Homepage: http://orgmode.org
;; Version: 6.09a
;; Version: 6.10c
;;
;; This file is part of GNU Emacs.
;;
......@@ -856,6 +856,7 @@ in this hook gets a chance to modify this property list. Each function
must accept the property list as an argument, and must return the (possibly
modified) list.")
;; FIXME: should we fold case here?
(defun org-infile-export-plist ()
"Return the property list with file-local settings for export."
(save-excursion
......@@ -1008,6 +1009,8 @@ value of `org-export-run-in-background'."
\[x] export as XOXO
\[l] export as LaTeX
\[p] export as LaTeX and process to PDF
\[d] export as LaTeX, process to PDF, and open the resulting PDF document
\[L] export as LaTeX to temporary buffer
\[i] export current file as iCalendar file
......@@ -1028,6 +1031,8 @@ value of `org-export-run-in-background'."
(?R org-export-region-as-html nil)
(?x org-export-as-xoxo t)
(?l org-export-as-latex t)
(?p org-export-as-pdf t)
(?d org-export-as-pdf-and-open t)
(?L org-export-as-latex-to-buffer nil)
(?i org-export-icalendar-this-file t)
(?I org-export-icalendar-all-agenda-files t)
......@@ -1041,12 +1046,17 @@ value of `org-export-run-in-background'."
(delete-other-windows)
(with-output-to-temp-buffer "*Org Export/Publishing Help*"
(princ help))
(if (fboundp 'fit-window-to-buffer)
(fit-window-to-buffer (get-buffer-window
"*Org Export/Publishing Help*")))
(message "Select command: ")
(setq r1 (read-char-exclusive)))
(setq r2 (if (< r1 27) (+ r1 96) r1))
(unless (setq ass (assq r2 cmds))
(error "No command associated with key %c" r1))
(if (and bg (nth 2 ass))
(if (and bg (nth 2 ass)
(not (buffer-base-buffer))
(not (org-region-active-p)))
;; execute in background
(let ((p (start-process
(concat "Exporting " (file-name-nondirectory (buffer-file-name)))
......@@ -1496,7 +1506,6 @@ on this string to produce the exported version."
;; Remove or replace comments
(org-export-handle-comments (plist-get parameters :comments))
(setq rtn (buffer-string)))
(kill-buffer " org-mode-tmp")
rtn))
......@@ -2181,16 +2190,17 @@ underlined headlines. The default is 3."
(umax nil)
(umax-toc nil)
(case-fold-search nil)
(bfname (buffer-file-name (or (buffer-base-buffer) (current-buffer))))
(filename (concat (file-name-as-directory
(org-export-directory :ascii opt-plist))
(file-name-sans-extension
(or (and subtree-p
(org-entry-get (region-beginning)
"EXPORT_FILE_NAME" t))
(file-name-nondirectory buffer-file-name)))
(file-name-nondirectory bfname)))
".txt"))
(filename (if (equal (file-truename filename)
(file-truename buffer-file-name))
(file-truename bfname))
(concat filename ".txt")
filename))
(buffer (find-file-noselect filename))
......@@ -2204,7 +2214,7 @@ underlined headlines. The default is 3."
(plist-get opt-plist :skip-before-1st-heading))
(org-export-grab-title-from-buffer))
(file-name-sans-extension
(file-name-nondirectory buffer-file-name))))
(file-name-nondirectory bfname))))
(email (plist-get opt-plist :email))
(language (plist-get opt-plist :language))
(quote-re0 (concat "^[ \t]*" org-quote-string "\\>"))
......
......@@ -4,7 +4,7 @@
;;
;; Emacs Lisp Archive Entry
;; Filename: org-export-latex.el
;; Version: 6.09a
;; Version: 6.10c
;; Author: Bastien Guerry <bzg AT altern DOT org>
;; Maintainer: Bastien Guerry <bzg AT altern DOT org>
;; Keywords: org, wp, tex
......@@ -36,6 +36,8 @@
;; The interactive functions are similar to those of the HTML exporter:
;;
;; M-x `org-export-as-latex'
;; M-x `org-export-as-pdf'
;; M-x `org-export-as-pdf-and-open'
;; M-x `org-export-as-latex-batch'
;; M-x `org-export-as-latex-to-buffer'
;; M-x `org-export-region-as-latex'
......@@ -88,6 +90,7 @@
"\\documentclass[11pt,a4paper]{article}
\\usepackage[utf8]{inputenc}
\\usepackage[T1]{fontenc}
\\usepackage{graphicx}
\\usepackage{hyperref}"
("\\section{%s}" . "\\section*{%s}")
("\\subsection{%s}" . "\\subsection*{%s}")
......@@ -98,6 +101,7 @@
"\\documentclass[11pt,a4paper]{report}
\\usepackage[utf8]{inputenc}
\\usepackage[T1]{fontenc}
\\usepackage{graphicx}
\\usepackage{hyperref}"
("\\part{%s}" . "\\part*{%s}")
("\\chapter{%s}" . "\\chapter*{%s}")
......@@ -108,6 +112,7 @@
"\\documentclass[11pt,a4paper]{book}
\\usepackage[utf8]{inputenc}
\\usepackage[T1]{fontenc}
\\usepackage{graphicx}
\\usepackage{hyperref}"
("\\part{%s}" . "\\part*{%s}")
("\\chapter{%s}" . "\\chapter*{%s}")
......@@ -120,30 +125,38 @@ associated information. Here is the structure of each cell:
\(class-name
header-string
(unnumbered-section numbered-section\)
(numbered-section . unnumbered-section\)
...\)
A %s formatter is mandatory in each section string and will be
replaced by the title of the section."
replaced by the title of the section.
Instead of a cons cell (numbered . unnumbered), you can also provide a list
of 2-4 elements,
(numbered-open numbered-close)
or
(numbered-open numbered-close unnumbered-open unnumbered-close)
providing opening and closing strings for an environment that should
represent the document section. The opening clause should have a %s
to represent the section title."
:group 'org-export-latex
:type '(repeat
:type '(repeat
(list (string :tag "LaTeX class")
(string :tag "LaTeX header")
(cons :tag "Level 1"
(string :tag "Numbered")
(string :tag "Unnumbered"))
(cons :tag "Level 2"
(string :tag "Numbered")
(string :tag "Unnumbered"))
(cons :tag "Level 3"
(string :tag "Numbered")
(string :tag "Unnumbered"))
(cons :tag "Level 4"
(string :tag "Numbered")
(string :tag "Unnumbered"))
(cons :tag "Level 5"
(string :tag "Numbered")
(string :tag "Unnumbered")))))
(repeat :tag "Levels" :inline t
(choice
(cons :tag "Heading"
(string :tag "numbered")
(string :tag "unnumbered)"))
(list :tag "Environment"
(string :tag "Opening (numbered) ")
(string :tag "Closing (numbered) ")
(string :tag "Opening (unnumbered)")
(string :tag "Closing (unnumbered)")))))))
(defcustom org-export-latex-emphasis-alist
'(("*" "\\textbf{%s}" nil)
......@@ -224,6 +237,18 @@ Don't remove the keys, just change their values."
:group 'org-export-latex
:type 'coding-system)
(defgroup org-export-pdf nil
"Options for exporting Org-mode files to PDF, via LaTeX."
:tag "Org Export LaTeX"
:group 'org-export-latex
:group 'org-export)
(defcustom org-export-pdf-remove-logfiles t
"Non-nil means, remove the logfiles produced by PDF production.
These are the .aux, .log, .out, and .toc files."
:group 'org-export-latex
:type 'boolean)
;;; Autoload functions:
;;;###autoload
......@@ -454,6 +479,44 @@ when PUB-DIR is set, use this as the publishing directory."
(current-buffer))
(set-window-configuration wcf))))
;;;###autoload
(defun org-export-as-pdf (arg &optional hidden ext-plist
to-buffer body-only pub-dir)
"Export as LaTeX, then process through to PDF."
(interactive "P")
(message "Exporting to PDF...")
(let* ((wconfig (current-window-configuration))
(lbuf (org-export-as-latex arg hidden ext-plist
to-buffer body-only pub-dir))
(file (buffer-file-name lbuf))
(base (file-name-sans-extension (buffer-file-name lbuf)))
(pdffile (concat base ".pdf")))