Commit 86fbb8ca authored by Carsten Dominik's avatar Carsten Dominik

Install version 7.01 of Org-mode


2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* ob-C.el: New file.
	* ob-R.el: New file.
	* ob-asymptote.el: New file.
	* ob-clojure.el: New file.
	* ob-comint.el: New file.
	* ob-css.el: New file.
	* ob-ditaa.el: New file.
	* ob-dot.el: New file.
	* ob-emacs-lisp.el: New file.
	* ob-eval.el: New file.
	* ob-exp.el: New file.
	* ob-gnuplot.el: New file.
	* ob-haskell.el: New file.
	* ob-keys.el: New file.
	* ob-latex.el: New file.
	* ob-lob.el: New file.
	* ob-matlab.el: New file.
	* ob-mscgen.el: New file.
	* ob-ocaml.el: New file.
	* ob-octave.el: New file.
	* ob-perl.el: New file.
	* ob-python.el: New file.
	* ob-ref.el: New file.
	* ob-ruby.el: New file.
	* ob-sass.el: New file.
	* ob-screen.el: New file.
	* ob-sh.el: New file.
	* ob-sql.el: New file.
	* ob-sqlite.el: New file.
	* ob-table.el: New file.
	* ob-tangle.el: New file.
	* ob.el: New file.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-mks.el: New file.
	* org-capture.el: New file.

2010-07-19  Christian Egli  <christian.egli@sbszh.ch>

	* org-taskjuggler.el: New file.

2010-07-19  Matt Lundin  <mdl@imapmail.org>

	* org-agenda.el (org-search-view): Fixed inclusion of agenda-archives
	in org-agenda-text-search-extra-files.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-list.el (org-list-send-list): Locally bind variable
	`txt'.

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org.el (org-reload): now also reloading babel files

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-capture.el (org-capture-set-plist): Make sure txt is a string
	before calling `string-match'.
	(org-capture-templates): Fix customization type.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-latex.el (org-export-latex-preprocess): Make a special case for \nbsp.
	(org-latex-entities): Remove the entry for \nbsp.
	(org-latex-entities-exceptions): Variable removed.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-capture.el (org-capture-refile): Do not try to manipulate
	bookmark list.

	* org.el (org-refile): Use the correct bookmark here.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-list.el (org-list-send-list): Parse list from its true beginning.

	* org.el (org-ctrl-c-ctrl-c): Maybe send the list when at a list item.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-insert-link): Correctly determine if we should use
	a relative path.

2010-07-19  Nicolas Goaziou  <n.goaziou@gmail.com>

	* org-list.el (org-list-radio-list-templates): Fix templates.

2010-07-19  Nicolas Goaziou  <n.goaziou@gmail.com>

	* org-list.el (org-list-send-list): regexp defining the start of
	a radio list is now on par with the one used for radio tables.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-entities.el (org-entities-help): Add a headline for
	the user-defined entities.

2010-07-19  Dirk-Jan C. Binnema  <djcb.bulk@gmail.com>  (tiny change)

	* org-agenda.el (org-agenda-action): Document capture key and add it
	to the prompt.

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-latex.el (org-export-latex-listings-langs): added (sqlite "SQL")

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-latex.el (org-export-latex-first-lines): Do not mark
	meta lines for removal. Do not remove BABEL config lines during export

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-capture.el (org-capture): Check if
	`org-capture-link-is-already-stored' is bound before evaluating.

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org.el: added autoload for org-babel-do-load-languages

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-src.el (org-src-lang-modes): added sqlite to sql-mode

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-feed.el: Change indentation to match coding style
	guideline.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-feed.el (org-feed-unescape, org-feed-parse-atom-feed): Load XML
	library if necessary.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-beamer.el (org-beamer-amend-header): Standardize the
	header cookie for the beamer extra stuff.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-beamer.el (org-beamer-amend-header): Put extra header
	last in header.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-exp-blocks.el (org-export-blocks-format-ditaa)
	(org-export-blocks-format-dot): Remove text properties of body before
	calculating cache hash.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-latex.el (org-export-latex-tabular-environment): New option.
	(org-export-latex-tables): Use `org-export-latex-tabular-environment'.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-compat.el (org-version-check): New function.

	* org-indent.el (org-indent-mode): Check for exact emacs version.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-capture.el (org-capture-templates): Allow the template
	to come from a file or function call.
	(org-capture-place-entry): Get the template from file or function.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-agenda.el (org-agenda-bulk-action): Don't create marker for
	position if target is entire file.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-autoload): Autoload a few more org-table functions.

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org.el (org-babel-load-languages): adding ob-mscgen

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-latex.el (org-export-latex-tables): format string now
	matches options

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org.el (org-babel-load-languages): this variable controls which
	languages will be loaded by org-babel.  It is customizable through
	the customize interface.

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-latex.el (org-export-latex-format-image): updated number of
	arguments to allow for an optional short-name

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-indent.el (org-indent-mode): Refuse to turn on prior to Emacs 23.2

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-capture.el (org-capture-set-target-location): Store
	exact positions for file+regexp and file+function targets.
	(org-capture-place-entry, org-capture-place-item)
	(org-capture-place-table-line, org-capture-place-plain-text): Respect
	exact positions.
	(org-capture-finalize): Make sure we are at the beginning of a line
	when fixing the empty lines after the entry.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-entry-get-with-inheritance): New argument LITERAL-NIL.
	(org-entry-get): Pass `literal-nil' into
	`org-entry-get-with-inheritance'.
	(org-todo): React to nil values of the LOGGING property.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-default-notes-file): Update docstring

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-link-frame-setup): Use `org-gnus-no-new-news' as default.

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-exp.el (org-export-attach-captions-and-attributes): adding
	a shortname attribute to caption strings under the symbol name
	org-caption-shortn.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-switchb): Renamed from `org-iswitchb'.  Improve
	docstring.
	(org-iswitchb): New alias.
	(org-ido-switchb): Make alias point to `org-switchb'.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-capture.el (org-capture-fill-template): Respect
	time-of-day preference in template prompt.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-feed.el (org-feed-unescape): Remove superfluous lambda.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-wl.el (org-wl-disable-folder-check): New customization
	variable.
	(org-wl-open): Disable folder check depending on
	`org-wl-disable-folder-check'.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-capture.el (org-capture-set-target-location): Fix
	file+function interpretation.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-feed.el (org-feed-parse-rss-entry): Unescape rss element
	content.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-feed.el (xml-entity-alist): Declare variable
	`xml-entity-alist' for byte compiler.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-feed.el (org-feed-unescape): New function.  Unescape
	protected entities.
	(org-feed-parse-atom-entry): Use function for atom:content
	type text and html.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-feed.el (org-feed-parse-rss-feed): Ignore case of rss
	element names.

2010-07-19  Bernt Hansen  <bernt@norang.ca>

	* org.el (org-time-string-to-absolute): Ignore cyclic repeater
	when displaying items on todays agenda date.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-agenda.el (org-agenda-get-progress): Avoid reusing previous
	value of EXTRA.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-publish.el (org-publish-initialize-cache): Make
	timestamp directory, the entire path to it.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-exp.el (org-export-handle-comments): Make sure to check
	for protection in the comment line, and not in the line after it.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-html.el (org-export-html-preprocess): Call org-format-latex,
	possibly with a protect-only argument.

	* org.el (org-format-latex): New argument PROTECT-ONLY.

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-exp.el (org-export-handle-table-metalines): this function
	removes table specific meta-lines, now that we aren't wiping
	everything that looks remotely like a comment at the end of the
	export process we have to be sure to catch all of the specific lines
	in org-exp.el

2010-07-19  Nicolas Goaziou  <n.goaziou@gmail.com>

	* org-exp.el: (org-export-select-backend-specific-text) Properly
	get rid of #+Backend and #+ATTR_Backend specifics to backends not
	matching the one we're exporting to.

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* Makefile (lisp/org-install.el): replacing babel files in
	construction of org-install.el

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-table.el (orgtbl-to-generic): added the :remove-newlines
	option which will strip newline characters from the text of table
	cells and replace then with "\n"

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-confirm-shell-link-function):
	(org-confirm-elisp-link-function): Limit the values that can be set by
	file variables.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-compute-latex-and-specials-regexp): Deal with
	string elements by discarding them.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-iswitchb): Make sure to use at least iswitchb.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-capture.el (org-capture-position-for-last-stored):
	org-capture-bookmark-last-stored-position): New functions.
	(org-capture-place-table-line): Better error catching.
	(org-capture-place-item):
	(org-capture-place-entry):
	(org-capture-place-plain-text): Call
	`org-capture-position-for-last-stored'.
	(org-capture-finalize): Just call
	`org-capture-bookmark-last-stored-position'.

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-exp.el (org-export-mark-blockquote-verse-center): fixed
	small bug, now grabbing match data before overwritten by looking-at
	this fixes a problem with remainders of #+end_quote lines appearing
	in exported output

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org.el (org-link-frame-setup): Add customization option for
	Wanderlust.

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-latex.el (org-export-latex-fixed-width): now checking
	org-example rather than org-protected on verbatim export, because by
	default all ": " prefixed lines are marked protected

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-latex.el (org-export-latex-fixed-width): check for
	protection before wrapping ": " lines as verbatim

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-exp.el (org-export-handle-comments): check for protection
	before removing comments

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-entities.el (org-entities): Restructure the list.
	(org-entities-help): Turn the help output into a buffer
	in Org-mode, so that it becomes easier to find a symbol
	in the structure.
	(org-entities-create-table): Deal with new structure.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-agenda.el (org-write-agenda): Use backquotes to expand
	`flet' at compile time.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-entry-properties): Make sure that standard property
	names are used even if the user has customized time keywords.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-macs.el (org-not-nil): Return the value if not interpreted
	as nil.

	* org.el (org-entry-get):
	(org-entry-get-with-inheritance): Interpret the value "nil"
	as nil for properties.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-switch-to-buffer-other-window): Return the buffer.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-macs.el (org-not-nil): New function.

	* org.el (org-block-todo-from-children-or-siblings-or-parent):
	Use `org-not-nil' to interpret a property value of nil.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-truely-invisible-p): New function.
	(org-beginning-of-line): Use `org-truely-invisible-p'.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-agenda.el (org-agenda-get-timestamps): No errors
	while getting TODO state.
	(org-agenda-highlight-todo): No error when no keyword has
	been matched.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-timestamp-change): New optional argument UPDOWN.
	Use this to identify calls from org-timestamp-up/down, so that we can
	skip by rounding minutes in this case.
	(org-timestamp-up):
	(org-timestamp-down):
	(org-timestamp-up-day):
	(org-timestamp-down-day): Call org-timestamp-change with the
	updown argument.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-agenda.el (org-agenda-action): Make `c' key call org-capture.

	* org-capture.el: New file.

	* org-compat.el (org-get-x-clipboard): Function moved here from
	remember.el.

	* org-mks.el: New file

	* org.el (org-set-regexps-and-options): Allow statistic cookies as
	part of complex headlines.
	(org-find-olp): New argument THIS-BUFFER.  When set, assume that the
	OLP does not contain a file name.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-mode): Set `comment-start' instead of changing the
	syntax of the `#' character.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-exp.el (org-export-format-source-code-or-example): Mark examples
	by a property. o

	* org-html.el (org-export-html-close-lists-maybe): Check if raw
	HTML stuff was actually made from an example

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* Makefile (LISPF): let's not compile files that won't often be used.

2010-07-19  Bastien Guerry  <bzg@altern.org>

	* org-latex.el: items are no longer skipped when their first line
	ends on a protected element.

	* org-list.el: protected environments looking like lists are not
	exported anymore.

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-exp-blocks.el (org-export-blocks-preprocess):
	cleanup trailing newline after block

2010-07-19  Bastien Guerry  <bzg@altern.org>

	* org-exp.el: comment regexp now matches documentation. No more
	protection check when deleting comments before export.

2010-07-19  Bastien Guerry  <bzg@altern.org>

	* org-exp.el (org-export-preprocess-string):
	now using `org-export-handle-include-files-recurse' to resolve
	included files

2010-07-19  Bastien Guerry  <bzg@altern.org>

	* org-agenda.el (org-agenda-get-deadlines):
	(org-agenda-get-scheduled):

	* org.el (org-time-string-to-seconds):
	For deadline and scheduled agenda display ignore the cyclic repeater
	when calculating how many days late the task is.  If you have a weekly
	task and miss the date the agenda view will show more than a week late
	now instead of resetting on the cyclic repeating date.  This makes it
	much more obvious when you missed a repeating task after the repeater.

2010-07-19  Bastien Guerry  <bzg@altern.org>

	* org-exp.el (org-export-mark-blockquote-verse-center):
	Consider environments that end at eob.

2010-07-19  Mikael Fornius  <mfo@abc.se>

	* org.el (org-raise-scripts): Do not fontify sub/superscripts of text
	with face `org-special-keyword'. Makes property keys as :LAST_REPEAT:
	display correctly.

2010-07-19  Mikael Fornius  <mfo@abc.se>

	* org.el (org-at-property-p): Use save-match-data macro instead of let.

2010-07-19  Mikael Fornius  <mfo@abc.se>

	* org.el (test): Removed unused test function.

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-exp-blocks.el (org-export-blocks-preprocess): fixed typo

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-exp-blocks.el (org-export-blocks-postblock-hook): adding
	documentation to and turning into a defcustom

2010-07-19  Eric Schulte  <schulte.eric@gmail.com>

	* org-exp.el (org-get-file-contents): by un-setting prefix1 to ""
	instead of to nil we avoid errors when :prefix1 is defined, but
	prefix is not.

2010-07-19  Nicolas Goaziou  <n.goaziou@gmail.com>

	* org-latex.el (org-export-latex-preprocess): Environments coming
	from latex backend specific instructions (#+LaTeX) are already
	protected and won't be treated as normal environments.

2010-07-19  Bastien Guerry  <bzg@altern.org>

	* org-timer.el (org-timer-set-timer): Fix typo in the docstring.

2010-07-19  Bastien Guerry  <bzg@altern.org>

	* org-timer.el (org-timer-set-timer): Use a prefix argument.
	See the docstring of the function.

2010-07-19  Bastien Guerry  <bzg@altern.org>

	* org-timer.el (org-timer-set-timer): Fix bug about cancelling
	timers.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-w3m.el (org-w3m-copy-for-org-mode)
	(org-w3m-get-next-link-start, org-w3m-get-prev-link-start):
	Get text property directly, not using macro `w3m-anchor'.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-emph-re): Document the match groups.

2010-07-19  Bernt Hansen <bernt@norang.ca>

	* org-clock.el (org-clock-in): Set `org-clock-clocking-in' to
	t before calling `org-clock-out', so that that function can
	know its call context.

2010-07-19  Bastien Guerry  <bzg@altern.org>

	* org-timer.el (org-timer-default-timer): New variable.
	(org-timer-set-timer): Use the new variable.  Also offer the
	possibility to replace the current timer by a new one.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-kill-note-or-show-branches): Hide subtree before
	exposing the headings.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-add-planning-info): Remove the empty line also
	if there is no whitespace at all in there.

	* org-table.el (org-table-align): Fix alignment of strings
	with invisible characters.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org.el (org-refile-cache-get): Return empty list of targets
	when cache was cleared.
	(org-clone-subtree-with-time-shift): Maybe create ID property
	in cloned subtrees.
	(org-clone-delete-id): New customization variable.
	(org-clone-subtree-with-time-shift): Use customization
	variable `org-clone-delete-id'.
	(org-clone-subtree-with-time-shift): Remove empty property
	drawer in cloned subtrees.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-refile-use-cache): New option.
	(org-refile-cache, org-refile-markers): New variable.
	(org-refile-marker, org-refile-cache-clear)
	(org-refile-cache-check-set, org-refile-cache-put)
	(org-refile-cache-get): New function.
	(org-get-refile-targets): Use the refile cache.

	* org-clock.el (org-clock-sum): Don't include running clock if
	the time block is wrong.

2010-07-19  John Wiegley  <jwiegley@gmail.com>

	* org-clock.el (org-clock-clock-in, org-clock-in): Added
	parameter `start-time'.
	(org-clock-resolve-clock): Added parameter `clock-out-time'.
	If set, and resolve-to is a past time, then the clock out
	event occurs at `clock-out-time' rather than at `resolve-to'.
	In this case, `resolve-to' becomes the clock in time.
	(org-clock-jump-to-current-clock): Created new global command
	to reveal the current clock.
	(org-clock-resolve): Added new commands g/G and j/J, and a
	help window describing all commands and their meaning.
	(org-clock-resolve-expert): New customization variable.
	(org-find-open-clocks): Fixed a bug that caused discovered
	clocks not to match up with the currently active clock.
	(org-resolve-clocks): Changed the argument
	`also-non-dangling-p' to `only-dangling-p', since due to a bug
	this was the default behavior all along.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-id.el (org-id-uuid): New function.  Return string with
	random (version 4) UUID.
	(org-id-method): Make 'uuid the new default value.
	(org-id-new): Use `org-id-uuid' if call to uuidgen program
	does not return a UUID.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-latex.el (org-export-latex-format-image): Add support
	for multicolumn figures in LaTeX.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org.el (org-clone-subtree-with-time-shift): Remove ID
	property of original subtree in cloned subtrees.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-exp.el (org-export-format-source-code-or-example):
	XEmacs compatibility.

	* org-latex.el (org-export-latex-tables): Accept comma in
	align string.

	* org-docbook.el (org-export-docbook-xslt-stylesheet): New option.
	(org-export-docbook-xslt-proc-command): Fix docstring.
	(org-export-docbook-xsl-fo-proc-command): Fix docstring.
	(org-export-as-docbook-pdf): Improve
	formatting of the xslt command.

	* org-exp.el (org-infile-export-plist): Check for XSLT setting.

	* org.el (org-file-contents): Improve error message.
	(org-set-regexps-and-options): Remove spaces at both ends.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-docbook.el (org-export-as-docbook-pdf): Improve
	formatting of the xslt command.

2010-07-19  Sebastian Rose  <sebastian_rose@gmx.de>

	* org-publish.el (org-publish-cache): Use one big hashmap for
	each project defined in `org-publish-project-alist'.
	(initialize-files-alist): Function removed.
	(org-publish-validate-link):  Function removed.
	(org-publish-get-base-files): Add variable `sitemap-requested'
	to avoid sorting where possible.
	(org-publish-get-files): Function removed.
	(org-publish-get-project-from-filename): Make independent of
	file list.
	(org-publish-file): New argument NO-CACHE.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-beginning-of-defun, org-end-of-defun): New
	functions.
	(org-mode): Install the `org-beginning-of-defun' and
	`org-end-of-defun' functions.
	(org-pretty-entities): New option.
	(org-toggle-pretty-entities): New command.
	(org-fontify-entities): New function.
	(org-startup-options): New keywords for pretty entities.
	(org-set-font-lock-defaults): Call the pretty entities
	function.

	* org-latex.el (org-export-latex-keywords-maybe): Protect the
	TODO markup.

2010-07-19  Mikael Fornius  <mfo@abc.se>

	* org-habit.el (org-habit-build-graph): Help-echo date when
	mouse is over stars.

2010-07-19  Jan Böker  <jan.boecker@jboecker.de>

	* org.el (org-file-apps): Improve docstring to reflect
	grouping matches

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-set-startup-visibility): Fix empty line display.

	* org-latex.el (org-export-latex-links): Use the formatting
	function of the link type, if it is available.

	* org-table.el (org-table-get-remote-range): Return to
	original buffer when retrieving remote reference.

	* org.el (org-display-inline-images): Do the entire buffer,
	not just the narrowed region.  Clear the cache.
	(org-display-inline-images): Match mode file paths.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-wl.el (org-wl-store-link-folder): Don't throw error when
	called on WL folder group.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-replace-escapes): Make sure the cdr is not nil.
	(org-read-date): Make `M-v' and `C-v' scroll the popup calendar.
	(org-mode): Revert comment syntax changes.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-sparse-tree): Make `C-c / t' search for all TODO
	keywords, and `C-c / T' for a specific one.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-mode): Fix comment syntax settings.

	* org-src.el (org-edit-src-allow-write-back-p): Define
	variable.

	* org.el (org-inline-image-overlays): New variable.
	(org-toggle-inline-images, org-display-inline-images)
	(org-remove-inline-images): New commands.
	(org-mode-map): Define a key for `org-toggle-inline-images'.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-wl.el (org-wl-message-field): New function.  Return
	content of header field in message entity.
	(org-wl-store-link): Call `org-wl-store-link-folder' or
	`org-wl-store-link-message' depending on major-mode.
	(org-wl-store-link-folder): New function.  Store link to
	Wanderlust folder.
	(org-wl-store-link-message): New function.  Store link to
	Wanderlust message.
	(org-wl-store-link-message): Store link to message while
	visiting message.
	(org-wl-open): Don't try to jump to message when opening a
	folder link.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org.el (org-replace-escapes): Avoid infinite loop when
	replace string contains escape sequence it replaces.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-crypt.el (org-crypt-key-for-heading): Use symmetric
	encryption when now key is set.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-table.el (org-table-recalculate-buffer-tables)
	(org-table-iterate-buffer-tables): New commands.

	* org.el (org-check-for-hidden): When there is a region, skip
	the check.

2010-07-19  Dan Davison  <davison@stats.ox.ac.uk>

	* org-src.el (org-edit-src-code): allow-write-back-p had
	erroneously been omitted from let binding

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-agenda.el (org-sorting-choice): New sorting type alpha.
	(org-cmp-alpha): New defsubst.
	(org-em): New defsubst.
	(org-entries-lessp): Only compute needed comparisons.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-html.el (org-format-org-table-html): Test all columns
	for number content.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-latex.el (org-export-latex-treat-sub-super-char): Make
	sure parenthesis matching is consistent.

	* org-table.el (org-table-colgroup-line-p)
	(org-table-cookie-line-p): New functions.

	* org-exp.el (org-table-clean-before-export): Better tests for
	colgroup and cookie lines.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-agenda.el (org-agenda-goto): Push a mark before changing
	the position.

	* org-footnote.el (org-footnote): New group.
	(org-footnote-section)
	(org-footnote-tag-for-non-org-mode-files): Fix typos.

	* org-list.el (org-end-of-item-text-before-children): Also do
	the right thing at the end of a file.

	* org.el (org-set-packages-alist, org-get-packages-alist): New
	function.
	(org-export-latex-default-packages-alist)
	(org-export-latex-packages-alist): Add extra flag to
	each package, indicating if it should be used for snippets.
	(org-create-formula-image): Add the snippet argument.
	(org-splice-latex-header): New argument SNIPPET-P, pass it
	through to `org-latex-packages-to-string'.
	(org-latex-packages-to-string): New argument SNIPPET-P.

	* org-latex.el (org-export-latex-make-header): Add the snippet
	argument.

	* org-docbook.el (org-export-as-docbook): Implement ordered
	lists starting at some offset.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-link-types, org-open-at-point): Add doi links.

	* org-ascii.el (org-export-ascii-preprocess): Remove list
	startcounter cookies.

	* org-list.el (org-renumber-ordered-list): Respect counter
	start values.

	* org-latex.el (org-export-latex-lists): Accept ordered list
	item offset cookie.

	* org-html.el (org-export-as-html): Accept ordered list
	item offset cookie.

	* org-indent.el (org-indent-mode): Turn off `indent-tabs-mode'
	which messes up alignment of tags.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-clock.el (org-clock-cancel, org-clock-out): Make sure
	the modeline display is removed.

	* org-exp.el (org-export-format-drawer-function): Fix
	docstring.

	* org-agenda.el (org-agenda-refile): New optional argument
	NO-UPDATE.
	(org-agenda-refile): Call `org-agenda-redo' unless NO-UPDATE
	is set.
	(org-agenda-bulk-action): Call the refile command with updates
	suppressed - but arrange for `org-agenda-redo' to be called at
	the end.

	* org.el (org-mode): Make table mapping quiet.
	(org-table-map-tables): New optional argument QUIETLY.

	* org-ascii.el (org-export-ascii-preprocess): Make table
	mapping quiet.

	* org-html.el (org-export-as-html, org-html-level-start): Change
	XHTML IDs to not use dots.

	* org-exp.el (org-export-define-heading-targets): Change
	XHTML IDs to not use dots.

	* org-docbook.el (org-export-docbook-level-start): Change
	XHTML IDs to not use dots.

	* org-latex.el (org-export-as-latex): Make sure that the
	result buffer is in latex-mode.

	* org.el (org-shiftup-final-hook, org-shiftdown-final-hook)
	(org-shiftleft-final-hook, org-shiftright-final-hook): New
	hooks.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-table.el (org-table-justify-field-maybe): Make sure that
	inserting a value does not turn a line into a hline.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-clock.el (org-clock-sum): New argument HEADLINE-FILTER.
	(org-clock-sum): Add property to selected headlines.
	(org-dblock-write:clocktable): Make tags matcher.

	* org.el (org-set-autofill-regexps): XEmacs compatibility.

	* org-latex.el (org-export-latex-set-initial-vars): Allow "-"
	in latex class definitions

	* org.el (org-shiftup-hook, org-shiftdown-hook)
	(org-shiftleft-hook, org-shiftright-hook): New hooks.

	* org-entities.el (org-entities): Use \land and \lor for logical
	operators.

	* org.el (org-shiftmetaleft, org-shiftmetaright): Call the subtree
	indentation commands.
	(org-hidden-tree-error): New defsubst.
	(org-metaleft, org-metaright): Check for hidden stuff and throw an
	error.
	(org-check-for-hidden): New function.

	* org-list.el (org-item-re): New function.
	(org-at-item-p): Use `org-item-re'.
	(org-end-of-item-text-before-children): New function.
	(org-outdent-item, org-indent-item): Arrange for leaving the
	subtree alone.
	(org-outdent-item-tree, org-indent-item-tree): New argument
	NO-SUBTREE.
	(org-indent-item-tree): Use `org-end-of-item-text-before-children'
	to find the end for processing while ignoring the subtree.

	* org-publish.el (org-publish-sitemap-sort-alphabetically)
	(org-publish-sitemap-sort-folders)
	(org-publish-sitemap-sort-ignore-case): New options.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-publish.el (org-publish-compare-directory-files): Fix sorting.

	* org-compat.el (org-get-x-clipboard-compat): Use (featurep 'xemacs).

	* org-publish.el (org-publish-project-alist): Update docstring.
	(org-publish-file-title-cache): New variable.
	(org-publish-initialize-files-alist): Initialize
	`org-publish-initialize-files-alist' to nil.
	(org-publish-sort-directory-files): New function.
	(org-publish-projects): Access the new properties.
	(org-publish-find-title): Use the file title cache.
	(org-publish-find-title): Build the file title cache.
	(org-publish-get-base-files-1): Sort files.
	(org-publish-aux-preprocess): Do not throw an error when before
	the first headline.  Allow an empty target, meaning to link just
	to the file.
	(org-publish-index-generate-theindex.inc): Check if there is
	actually a target and only then add it to the link.
	(org-publish-projects): Fix a remaining issue with the last commit

	* org-html.el (org-export-as-html): Treat verse as open/close
	paragraph.
	(org-export-html-close-lists-maybe): Allow to splice raw HTML into
	and out of lists.

2010-07-19  Dan Davison  <davison@stats.ox.ac.uk>

	* org-src.el (org-edit-src-code): Allow the org-src edit buffer to
	be used in a read-only mode.
	(org-edit-src-code): Different message in read-only mode

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-src.el (org-edit-src-find-region-and-lang): Test for
	table.el as late as possible.

	* org-colview-xemacs.el: Make sure this file is never loaded into
	Emacs.  Remove all tests for XEmacs.

	* org-colview.el: Make sure this file is never loaded into XEmacs.

	* org-agenda.el (org-highlight, org-unhighlight): Use direct
	overlay calls.

	* org.el (org-key): Apply the translations defined in
	`org-xemacs-key-equivalents'.

	* org-mouse.el (org-mode-hook): Use `org-defkey'.

	* org-compat.el (org-xemacs-key-equivalents): New constant.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-inlinetask.el (org-inlinetask-defaut-state): New option.
	(org-inlinetask-insert-task): Use `org-inlinetask-defaut-state'.
	Obey `org-odd-levels-only'.

	* org-compat.el (org-find-overlays): Use overlays-in/at.

	* org.el (org-remove-empty-overlays-at)
	(org-outline-overlay-data, org-hide-block-toggle)
	(org-format-latex, org-context): Use overlays-in/at.

	* org-src.el (org-edit-src-exit): Use overlays-in/at.

	* org-agenda.el (org-agenda-mark-clocking-task)
	(org-agenda-fontify-priorities, org-agenda-dim-blocked-tasks)
	(org-agenda-entry-text-hide)
	(org-agenda-fix-tags-filter-overlays-at)
	(org-agenda-bulk-remove-overlays): Use overlays-in/at.

	* org-compat.el (org-overlays-at): Function removed.
	(org-overlays-in): Function removed.

2010-07-19  Bastien Guerry  <bzg@altern.org>

	* org-clock.el (org-clock-set-current): Just return the headline
	itself, strip the TODO keyword, the priority cookie and the tags.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-compat.el (org-xemacs-without-invisibility): New macro.
	(org-xemacs-without-invisibility): New macro.
	(org-indent-to-column, org-indent-line-to, org-move-to-column):
	Redefine using the macro `org-xemacs-without-invisibility'.

	* org.el (org-mode, org-org-menu): Use `add-to-invisibility-spec'.

	* org-table.el (orgtbl-mode): Use `add-to-invisibility-spec'.

	* org-compat.el (org-make-overlay, org-delete-overlay)
	(org-overlay-start, org-overlay-end, org-overlay-put)
	(org-overlay-get, org-overlay-move, org-overlay-buffer): Functions
	removed.
	(org-add-to-invisibility-spec): Function removed.

	* org-html.el (org-export-as-html-and-open): Add argument to
	kill-buffer.

	* org-habit.el (require): `calendar' is now required already by
	org.el on top level.

	* org-clock.el (require): `calendar' is now required already by
	org.el on top level.

	* org-agenda.el (require, org-timeline, org-agenda-list)
	(org-todo-list, org-agenda-to-appt): `calendar' is now required
	already by org.el on top level.

	* org.el (org-export-latex-fix-inputenc): Declare function.

	* org-agenda.el (org-agenda-goto-calendar): Do not bind obsolete
	variables.

	* org.el (calendar): Require calendar now on top level in org.el
	and define aliases to new variables when needed.
	(org-read-date, org-goto-calendar): Do not bind obsolete
	variables.

	* org-clock.el (org-clock-out, org-clock-cancel): Get rid of
	compilation warning, add comment that this cannot be done with
	`with-current-buffer'.

	* org-wl.el (org-wl-open): Use `with-current-buffer'.

	* org.el (overlay, org-remove-empty-overlays-at)
	(org-outline-overlay-data, org-set-outline-overlay-data)
	(org-show-block-all, org-hide-block-toggle)
	(org-highlight-new-match, org-remove-occur-highlights)
	(org-tags-overlay, org-fast-tag-selection, org-date-ovl)
	(org-read-date, org-read-date-display, org-eval-in-calendar)
	(org-format-latex, org-context)
	(org-speedbar-restriction-lock-overlay)
	(org-speedbar-set-agenda-restriction): Use the normal overlay API.

	* org-table.el (org-table-add-rectangle-overlay)
	(org-table-remove-rectangle-highlight)
	(org-table-overlay-coordinates)
	(org-table-toggle-coordinate-overlays): Use the normal overlay
	API.

	* org-src.el (org-edit-src-code, org-edit-fixed-width-region)
	(org-edit-src-exit, org-src-mode-configure-edit-buffer): Use the
	normal overlay API.

	* org-colview.el (org-columns-new-overlay)
	(org-columns-display-here, org-columns-remove-overlays)
	(org-columns-edit-value, org-columns-next-allowed-value)
	(org-columns-update): Use the normal overlay API.

	* org-clock.el (org-clock-out, org-clock-cancel)
	(org-clock-put-overlay, org-clock-remove-overlays): Use the normal
	overlay API.

	* org-agenda.el (org-agenda-mark-filtered-text)
	(org-agenda-mark-clocking-task, org-agenda-fontify-priorities)
	(org-agenda-dim-blocked-tasks, org-agenda-entry-text-show-here)
	(org-agenda-entry-text-hide)
	(org-agenda-restriction-lock-overlay)
	(org-agenda-set-restriction-lock)
	(org-agenda-filter-by-tag-hide-line)
	(org-agenda-fix-tags-filter-overlays-at)
	(org-agenda-filter-by-tag-show-all, org-hl)
	(org-agenda-goto-calendar, org-agenda-bulk-mark)
	(org-agenda-bulk-remove-overlays): Use the normal overlay API.

	* org-freemind.el (org-freemind-from-org-mode-node)
	(org-freemind-from-org-mode, )
	(org-freemind-from-org-sparse-tree, org-freemind-to-org-mode): Use
	interactive-p instead of called-interactively, because this is
	backward compatible with older Emacsen I still support..

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-exp.el (org-export-define-heading-targets): Fix bug in
	regexp finding ID and CUSTOM_ID properties.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-footnote.el (org-footnote-goto-previous-reference): Renamed
	from `org-footnote-goto-next-reference'.

	* org.el (org-auto-repeat-maybe): Only record LAST_REPEAT if
	org-log-repeat is non-nil, or if there is clocking data in the
	entry.

	* org-crypt.el (org-encrypt-entry): Improve mapping behavior.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-align-all-tags): New command.

2010-07-19  David Maus  <dmaus@ictsoc.de>

	* org-wl.el (org-wl-link-remove-filter): New customizable
	variable.  If non-nil, filter conditions are stripped when storing
	link to message in filter folder.
	(org-wl-shimbun-prefer-web-links): New customizable variable.  If
	non-nil, links to shimbun messages are created as web links to
	message source.
	(org-wl-nntp-prefer-web-links): New customizable variable.  If
	non-nil, links to nntp message are created as web links to gmane
	or googlegroups.
	(org-wl-namazu-default-index): New customizable variable.
	Directory of namazu search index that should be used as default
	when opening a link in a search folder.
	(org-wl-folder-types): New constant.  Wanderlust folder type
	indicators.
	(org-wl-folder-type): New function.  Return type of Wanderlust
	folder.
	(org-wl-store-link): Create web links for shimbun or nntp messages
	and strip filter conditions depending on customizable variables.
	(org-wl-open): Open namazu search folder for message when called
	with prefix.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-remove-if, org-remove-if-not): New functions.
	(org-open-file): Use internal remove-if functions.

2010-07-19  Jan Böcker  <jan.boecker@jboecker.de>

	* org.el (org-file-apps-entry-match-against-dlink-p): new function.
	(org-file-apps-ex): remove variable.
	(org-open-file): Integrate org-file-apps-ex functionality back
	into org-file-apps, and decide whether to match a regexp against
	the link or the filename using org-file-apps-entry-uses-grouping-p.

2010-07-19  Jan Böcker  <jan.boecker@jboecker.de>

	* org.el (org-file-apps-ex): new variable.
	(org-open-file): Before considering org-file-apps, first match the
	regexps from org-file-apps-ex against the whole link. See
	docstring of org-file-apps-ex.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.el (org-export-latex-default-packages-alist): Remove
	microtype package.
	(org-todo-repeat-to-state): New variable.
	(org-auto-repeat-maybe): Allow user-selected target states.
	(org-default-properties): Add the new property REPEAT_TO_STATE.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org-mobile.el (org-mobile-check-setup): Make sure that there is
	a binary to compute checksums.

2010-07-19  Carsten Dominik  <carsten.dominik@gmail.com>

	* org.texi: Add macros to get plain quotes in PDF output.
	List additional contributors.
	(Capture): New section, replaces the section about remember.
	(Working With Source Code): New chapter, focused on documenting Org
	Babel.
	(Code evaluation security): New section.
	(MobileOrg): Document DropBox support.
	(TaskJuggler export): Document taskjuggler and Gantt chart support.
	(Special symbols): Show how to display UTF8 characters for entities.
	(Global TODO list): Clarify the use of the "M" key and the differences
	to the "m" key.
	(RSS Feeds): Mention Atom feeds as well.
	(Setting tags): Remove paragraph about
	`org-complete-tags-always-offer-all-agenda-tags'.
parent 00af0b67
2010-07-19 Carsten Dominik <carsten.dominik@gmail.com>
* org.texi: Add macros to get plain quotes in PDF output.
List additional contributors.
(Capture): New section, replaces the section about remember.
(Working With Source Code): New chapter, focused on documenting Org
Babel.
(Code evaluation security): New section.
(MobileOrg): Document DropBox support.
(TaskJuggler export): Document taskjuggler and Gantt chart support.
(Special symbols): Show how to display UTF8 characters for entities.
(Global TODO list): Clarify the use of the "M" key and the differences
to the "m" key.
(RSS Feeds): Mention Atom feeds as well.
(Setting tags): Remove paragraph about
`org-complete-tags-always-offer-all-agenda-tags'.
2010-07-17 Michael Albinus <michael.albinus@gmx.de>
* tramp.texi (Inline methods): Remove remark about doubled "-t"
......
This diff is collapsed.
2010-07-19 Carsten Dominik <carsten.dominik@gmail.com>
* refcards/orgcard.tex: Remove the key for the TODO sparse tree
and add the new key. Document new keys for image and entity
display. Document the Org Babel keys.
2010-06-19 Ken Brown <kbrown@cornell.edu>
* PROBLEMS: Update Cygwin GCC information. (Bug#6458)
......
% Reference Card for Org Mode
\def\orgversionnumber{6.35i}
\def\orgversionnumber{7.01}
\def\versionyear{2010} % latest update
\def\year{2010} % latest copyright year
......@@ -329,7 +329,7 @@ \section{Archiving}
\section{Filtering and Sparse Trees}
\key{construct a sparse tree by various criteria}{C-c /}
\key{view TODO's in sparse tree}{C-c C-v}
\key{view TODO's in sparse tree}{C-c / t/T}
\key{global TODO list in agenda mode}{C-c a t$^1$}
\key{time sorted view of current org file}{C-c a L}
......@@ -442,36 +442,53 @@ \section{Links}
\key{find next link}{C-c C-x C-n}
\key{find previous link}{C-c C-x C-p}
\key{edit code snippet of file at point}{C-c '}
{\bf Internal Links}
\key{\kbd{<<My Target>>}}{\rm target}
\key{\kbd{<<<My Target>>>}}{\rm radio target$^2$}
\key{\kbd{[[*this text]]}}{\rm find headline}
\metax{\kbd{[[this text]]}}{\rm find target or text in buffer}
\metax{\kbd{[[this text][description]]}}{\rm optional link text}
{\bf External Links}
\key{\kbd{file:/home/dominik/img/mars.jpg}}{\rm file, absolute}
\key{\kbd{file:papers/last.pdf}}{\rm file, relative}
\key{\kbd{file:projects.org::*that text}}{\rm find headline}
\key{\kbd{file:projects.org::find me}}{\rm find trgt/string}
%\key{\kbd{file:projects.org::/regexp/}}{\rm regexp search}
\key{\kbd{http://www.astro.uva.nl/~dominik}}{\rm on the web}
\key{\kbd{mailto:adent@galaxy.net}}{\rm Email address}
\key{\kbd{news:comp.emacs}}{\rm Usenet group}
\key{\kbd{bbdb:Richard Stallman}}{\rm BBDB person}
\key{\kbd{gnus:group}}{\rm GNUS group}
\key{\kbd{gnus:group\#id}}{\rm GNUS message}
\key{\kbd{vm|wl|mhe|rmail:folder}}{\rm Mail folder}
\key{\kbd{vm|wl|mhe|rmail:folder\#id}}{\rm Mail message}
\key{\kbd{info:emacs:Regexps}}{\rm Info file:node}
\key{\kbd{shell:ls *.org}}{\rm shell command}
\key{\kbd{elisp:(calendar)}}{\rm elisp form}
\metax{\kbd{[[external link][description]]}}{\rm optional link text}
%\key{\kbd{vm://myself@some.where.org/folder\#id}}{\rm VM remote}
\key{toggle inline display of linked images}{C-c C-x C-v}
% {\bf Internal Links}
% \key{\kbd{<<My Target>>}}{\rm target}
% \key{\kbd{<<<My Target>>>}}{\rm radio target$^2$}
% \key{\kbd{[[*this text]]}}{\rm find headline}
% \metax{\kbd{[[this text]]}}{\rm find target or text in buffer}
% \metax{\kbd{[[this text][description]]}}{\rm optional link text}
% {\bf External Links}
% \key{\kbd{file:/home/dominik/img/mars.jpg}}{\rm file, absolute}
% \key{\kbd{file:papers/last.pdf}}{\rm file, relative}
% \key{\kbd{file:projects.org::*that text}}{\rm find headline}
% \key{\kbd{file:projects.org::find me}}{\rm find trgt/string}
% %\key{\kbd{file:projects.org::/regexp/}}{\rm regexp search}
% \key{\kbd{http://www.astro.uva.nl/~dominik}}{\rm on the web}
% \key{\kbd{mailto:adent@galaxy.net}}{\rm Email address}
% \key{\kbd{news:comp.emacs}}{\rm Usenet group}
% \key{\kbd{bbdb:Richard Stallman}}{\rm BBDB person}
% \key{\kbd{gnus:group}}{\rm GNUS group}
% \key{\kbd{gnus:group\#id}}{\rm GNUS message}
% \key{\kbd{vm|wl|mhe|rmail:folder}}{\rm Mail folder}
% \key{\kbd{vm|wl|mhe|rmail:folder\#id}}{\rm Mail message}
% \key{\kbd{info:emacs:Regexps}}{\rm Info file:node}
% \key{\kbd{shell:ls *.org}}{\rm shell command}
% \key{\kbd{elisp:(calendar)}}{\rm elisp form}
% \metax{\kbd{[[external link][description]]}}{\rm optional link text}
% %\key{\kbd{vm://myself@some.where.org/folder\#id}}{\rm VM remote}
\section{Working with Code (Babel)}
\key{execute code block at point}{C-c C-c}
\key{open results of code block at point}{C-c C-o}
\key{view expanded body of code block at point}{C-c C-v v}
\key{go to named code block}{C-c C-v g}
\key{go to named result}{C-c C-v r}
\key{go to the next code block}{C-c C-v n}
\key{go to the previous code block}{C-c C-v p}
\key{execute all code blocks in current buffer}{C-c C-v b}
\key{execute all code blocks in current subtree}{C-c C-v s}
\key{tangle code blocks in current file}{C-c C-v t}
\key{tangle code blocks in supplied file}{C-c C-v f}
\key{ingest all code blocks in supplied file into the Library of Babel}{C-c C-v l}
\key{switch to the session of the current code block}{C-c C-v z}
\key{view sha1 hash of the current code block}{C-c C-v a}
% \section{Remember-mode Integration}
......@@ -690,6 +707,7 @@ \section{Exporting and Publishing}
\key{export visible part only}{C-c C-e v}
\key{insert template of export options}{C-c C-e t}
\key{toggle fixed width for entry or region}{C-c :}
\key{toggle pretty display of scripts, entities}{C-c C-x {\tt\char`\\}}
%{\bf HTML formatting}
......@@ -730,10 +748,8 @@ \section{Exporting and Publishing}
{\bf Comments: Text not being exported}
Text before the first headline is not considered part of the document
and is therefore never exported.
Lines starting with \kbd{\#} are comments and are not exported.
Subtrees whose header starts with COMMENT are never exported.
Lines starting with \kbd{\#} and subtrees starting with COMMENT are
never exported.
\key{toggle COMMENT keyword on entry}{C-c ;}
......@@ -749,8 +765,8 @@ \section{Notes}
$^2$ After changing a \kbd{\#+KEYWORD} or \kbd{<<<target>>>} line,
press \kbd{C-c C-c} with the cursor still in the line to update.
$^3$ Keybinding affected by {\tt org-support-shift-select} and {\tt
org-replace-disputed-keys}.
$^3$ Keybinding affected by {\tt org-support-shift-select} and
{\tt org-replace-disputed-keys}.
\copyrightnotice
......
This diff is collapsed.
;;; ob-C.el --- org-babel functions for C and similar languages
;; Copyright (C) 2010 Free Software Foundation, Inc.
;; Author: Eric Schulte
;; Keywords: literate programming, reproducible research
;; Homepage: http://orgmode.org
;; Version: 7.01
;; This file is part of GNU Emacs.
;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; Org-Babel support for evaluating C code.
;;
;; very limited implementation:
;; - currently only support :results output
;; - not much in the way of error feedback
;;; Code:
(require 'ob)
(require 'ob-eval)
(require 'org)
(require 'cc-mode)
(declare-function org-entry-get "org"
(pom property &optional inherit literal-nil))
(add-to-list 'org-babel-tangle-lang-exts '("c++" . "cpp"))
(defvar org-babel-default-header-args:C '())
(defvar org-babel-C-compiler "gcc"
"Command used to compile a C source code file into an
executable.")
(defvar org-babel-c++-compiler "g++"
"Command used to compile a c++ source code file into an
executable.")
(defvar org-babel-c-variant nil
"Internal variable used to hold which type of C (e.g. C or C++)
is currently being evaluated.")
(defun org-babel-execute:cpp (body params)
"Execute BODY according to PARAMS. This function calls
`org-babel-execute:C'."
(org-babel-execute:C body params))
(defun org-babel-execute:c++ (body params)
"Execute a block of C++ code with org-babel. This function is
called by `org-babel-execute-src-block'."
(let ((org-babel-c-variant 'cpp)) (org-babel-C-execute body params)))
(defun org-babel-expand-body:c++ (body params &optional processed-params)
"Expand a block of C++ code with org-babel according to it's
header arguments (calls `org-babel-C-expand')."
(let ((org-babel-c-variant 'cpp)) (org-babel-C-expand body params processed-params)))
(defun org-babel-execute:C (body params)
"Execute a block of C code with org-babel. This function is
called by `org-babel-execute-src-block'."
(let ((org-babel-c-variant 'c)) (org-babel-C-execute body params)))
(defun org-babel-expand-body:c (body params &optional processed-params)
"Expand a block of C code with org-babel according to it's
header arguments (calls `org-babel-C-expand')."
(let ((org-babel-c-variant 'c)) (org-babel-C-expand body params processed-params)))
(defun org-babel-C-execute (body params)
"This function should only be called by `org-babel-execute:C'
or `org-babel-execute:c++'."
(let* ((processed-params (org-babel-process-params params))
(tmp-src-file (make-temp-file "org-babel-C-src" nil
(cond
((equal org-babel-c-variant 'c) ".c")
((equal org-babel-c-variant 'cpp) ".cpp"))))
(tmp-bin-file (make-temp-file "org-babel-C-bin"))
(tmp-out-file (make-temp-file "org-babel-C-out"))
(cmdline (cdr (assoc :cmdline params)))
(flags (cdr (assoc :flags params)))
(full-body (org-babel-C-expand body params))
(compile
(progn
(with-temp-file tmp-src-file (insert full-body))
(org-babel-eval
(format "%s -o %s %s %s"
(cond
((equal org-babel-c-variant 'c) org-babel-C-compiler)
((equal org-babel-c-variant 'cpp) org-babel-c++-compiler))
tmp-bin-file
(mapconcat 'identity
(if (listp flags) flags (list flags)) " ")
tmp-src-file) ""))))
((lambda (results)
(org-babel-reassemble-table
(if (member "vector" (nth 2 processed-params))
(let ((tmp-file (make-temp-file "ob-c")))
(with-temp-file tmp-file (insert results))
(org-babel-import-elisp-from-file tmp-file))
(org-babel-read results))
(org-babel-pick-name
(nth 4 processed-params) (cdr (assoc :colnames params)))
(org-babel-pick-name
(nth 5 processed-params) (cdr (assoc :rownames params)))))
(org-babel-trim
(org-babel-eval
(concat tmp-bin-file (if cmdline (concat " " cmdline) "")) "")))))
(defun org-babel-C-expand (body params &optional processed-params)
"Expand a block of C or C++ code with org-babel according to
it's header arguments."
(let ((vars (nth 1 (or processed-params
(org-babel-process-params params))))
(main-p (not (string= (cdr (assoc :main params)) "no")))
(includes (or (cdr (assoc :includes params))
(org-babel-read (org-entry-get nil "includes" t))))
(defines (org-babel-read
(or (cdr (assoc :defines params))
(org-babel-read (org-entry-get nil "defines" t))))))
(org-babel-trim
(mapconcat 'identity
(list
;; includes
(mapconcat
(lambda (inc) (format "#include %s" inc))
(if (listp includes) includes (list includes)) "\n")
;; defines
(mapconcat
(lambda (inc) (format "#define %s" inc))
(if (listp defines) defines (list defines)) "\n")
;; variables
(mapconcat 'org-babel-C-var-to-C vars "\n")
;; body
(if main-p
(org-babel-C-ensure-main-wrap body)
body) "\n") "\n"))))
(defun org-babel-C-ensure-main-wrap (body)
"Wrap body in a \"main\" function call if none exists."
(if (string-match "^[ \t]*[intvod]+[ \t]*main[ \t]*(.*)" body)
body
(format "int main() {\n%s\n}\n" body)))
(defun org-babel-prep-session:C (session params)
"This function does nothing as C is a compiled language with no
support for sessions"
(error "C is a compiled languages -- no support for sessions"))
(defun org-babel-load-session:C (session body params)
"This function does nothing as C is a compiled language with no
support for sessions"
(error "C is a compiled languages -- no support for sessions"))
;; helper functions
(defun org-babel-C-var-to-C (pair)
"Convert an elisp val into a string of C code specifying a var
of the same value."
;; TODO list support
(let ((var (car pair))
(val (cdr pair)))
(when (symbolp val)
(setq val (symbol-name val))
(when (= (length val) 1)
(setq val (string-to-char val))))
(cond
((integerp val)
(format "int %S = %S;" var val))
((floatp val)
(format "double %S = %S;" var val))
((or (characterp val))
(format "char %S = '%S';" var val))
((stringp val)
(format "char %S[%d] = \"%s\";"
var (+ 1 (length val)) val))
(t
(format "u32 %S = %S;" var val)))))
(provide 'ob-C)
;; arch-tag: 8f49e462-54e3-417b-9a8d-423864893b37
;;; ob-C.el ends here
;;; ob-R.el --- org-babel functions for R code evaluation
;; Copyright (C) 2009, 2010 Free Software Foundation, Inc.
;; Author: Eric Schulte, Dan Davison
;; Keywords: literate programming, reproducible research, R, statistics
;; Homepage: http://orgmode.org
;; Version: 7.01
;; This file is part of GNU Emacs.
;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; Org-Babel support for evaluating R code
;;; Code:
(require 'ob)
(require 'ob-ref)
(require 'ob-comint)
(require 'ob-eval)
(eval-when-compile (require 'cl))
(declare-function orgtbl-to-tsv "ob-table" (table params))
(declare-function R "ext:essd-r" (&optional start-args))
(declare-function inferior-ess-send-input "ext:ess-inf" ())
(defconst org-babel-header-arg-names:R
'(width height bg units pointsize antialias quality compression
res type family title fonts version paper encoding
pagecentre colormodel useDingbats horizontal)
"R-specific header arguments.")
(defvar org-babel-default-header-args:R '())
(defvar org-babel-R-command "R --slave --no-save"
"Name of command to use for executing R code.")
(defun org-babel-expand-body:R (body params &optional processed-params)
"Expand BODY according to PARAMS, return the expanded body."
(let* ((processed-params (or processed-params
(org-babel-process-params params)))
(vars (mapcar
(lambda (i)
(cons (car (nth i (nth 1 processed-params)))
(org-babel-reassemble-table
(cdr (nth i (nth 1 processed-params)))
(cdr (nth i (nth 4 processed-params)))
(cdr (nth i (nth 5 processed-params))))))
(number-sequence 0 (1- (length (nth 1 processed-params))))))
(out-file (cdr (assoc :file params))))
(mapconcat ;; define any variables
#'org-babel-trim
((lambda (inside)
(if out-file
(append
(list (org-babel-R-construct-graphics-device-call out-file params))
inside
(list "dev.off()"))
inside))
(append
(mapcar
(lambda (pair)
(org-babel-R-assign-elisp
(car pair) (cdr pair)
(equal "yes" (cdr (assoc :colnames params)))
(equal "yes" (cdr (assoc :rownames params)))))
vars)
(list body))) "\n")))
(defun org-babel-execute:R (body params)
"Execute a block of R code.
This function is called by `org-babel-execute-src-block'."
(save-excursion
(let* ((processed-params (org-babel-process-params params))
(result-type (nth 3 processed-params))
(session (org-babel-R-initiate-session
(first processed-params) params))
(colnames-p (cdr (assoc :colnames params)))
(rownames-p (cdr (assoc :rownames params)))
(out-file (cdr (assoc :file params)))
(full-body (org-babel-expand-body:R body params processed-params))
(result
(org-babel-R-evaluate
session full-body result-type
(or (equal "yes" colnames-p)
(org-babel-pick-name (nth 4 processed-params) colnames-p))
(or (equal "yes" rownames-p)
(org-babel-pick-name (nth 5 processed-params) rownames-p)))))
(message "result is %S" result)
(or out-file result))))
(defun org-babel-prep-session:R (session params)
"Prepare SESSION according to the header arguments specified in PARAMS."
(let* ((session (org-babel-R-initiate-session session params))
(vars (org-babel-ref-variables params))
(var-lines
(mapcar
(lambda (pair) (org-babel-R-assign-elisp
(car pair) (cdr pair)
(equal (cdr (assoc :colnames params)) "yes")
(equal (cdr (assoc :rownames params)) "yes")))
vars)))
(org-babel-comint-in-buffer session
(mapc (lambda (var)
(end-of-line 1) (insert var) (comint-send-input nil t)
(org-babel-comint-wait-for-output session)) var-lines))
session))
(defun org-babel-load-session:R (session body params)
"Load BODY into SESSION."
(save-window-excursion
(let ((buffer (org-babel-prep-session:R session params)))
(with-current-buffer buffer
(goto-char (process-mark (get-buffer-process (current-buffer))))
(insert (org-babel-chomp body)))
buffer)))
;; helper functions
(defun org-babel-R-quote-tsv-field (s)
"Quote field S for export to R."
(if (stringp s)
(concat "\"" (mapconcat 'identity (split-string s "\"") "\"\"") "\"")
(format "%S" s)))
(defun org-babel-R-assign-elisp (name value colnames-p rownames-p)
"Construct R code assigning the elisp VALUE to a variable named NAME."
(if (listp value)
(let ((transition-file (make-temp-file "org-babel-R-import")))
;; ensure VALUE has an orgtbl structure (depth of at least 2)
(unless (listp (car value)) (setq value (list value)))
(with-temp-file (org-babel-maybe-remote-file transition-file)
(insert (orgtbl-to-tsv value '(:fmt org-babel-R-quote-tsv-field)))
(insert "\n"))
(format "%s <- read.table(\"%s\", header=%s, row.names=%s, sep=\"\\t\", as.is=TRUE)"
name transition-file
(if (or (eq (nth 1 value) 'hline) colnames-p) "TRUE" "FALSE")
(if rownames-p "1" "NULL")))
(format "%s <- %s" name (org-babel-R-quote-tsv-field value))))
(defun org-babel-R-initiate-session (session params)
"If there is not a current R process then create one."
(unless (string= session "none")
(let ((session (or session "*R*"))
(ess-ask-for-ess-directory (not (cdr (assoc :dir params)))))
(if (org-babel-comint-buffer-livep session)
session
(save-window-excursion
(require 'ess) (R)
(rename-buffer
(if (bufferp session)
(buffer-name session)
(if (stringp session)
session
(buffer-name))))
(current-buffer))))))
(defun org-babel-R-construct-graphics-device-call (out-file params)
"Construct the call to the graphics device."
(let ((devices
'((:bmp . "bmp")
(:jpg . "jpeg")
(:jpeg . "jpeg")
(:tiff . "tiff")
(:png . "png")
(:svg . "svg")
(:pdf . "pdf")
(:ps . "postscript")
(:postscript . "postscript")))
(allowed-args '(:width :height :bg :units :pointsize
:antialias :quality :compression :res
:type :family :title :fonts :version
:paper :encoding :pagecentre :colormodel
:useDingbats :horizontal))
(device (and (string-match ".+\\.\\([^.]+\\)" out-file)
(match-string 1 out-file)))
(extra-args (cdr (assq :R-dev-args params))) filearg args)
(setq device (or (and device (cdr (assq (intern (concat ":" device))
devices))) "png"))