Commit Graph

8040 Commits

Author SHA1 Message Date
Bastien Guerry 0b9e3b8a45 org.el (org-fill-paragraph-with-timestamp-nobreak-p): New function
* org.el (org-fill-paragraph-with-timestamp-nobreak-p): New
function.
(org-setup-filling): Use it to prevent breaking a timestamp
when filling a paragraph.

Thanks to William for requesting this.
2013-02-11 14:38:18 +01:00
Bastien Guerry 652919fca0 Fix bindings for `org-next-block' and `org-preview-block'.
Thanks to François and Sébastien for reporting this.
2013-02-11 14:20:36 +01:00
Nicolas Goaziou 1eccd207af ox-texinfo: Remove spurious blank line in src block export
* lisp/ox-texinfo.el (org-texinfo-src-block): Remove spurious newline
  character as `org-export-format-code-default' already makes sure the
  string returned will end with a single one.

Thanks to Frank Fischer for reporting it.
2013-02-10 20:50:38 +01:00
Christopher Schmidt a3f6570fff Allow a custom headline prefix in orgstruct-mode.
* lisp/org.el (org-cycle-global-status)
(org-cycle-subtree-status): Set state property.
(org-heading-components): Use org-heading-regexp in
orgstruct-mode.
(orgstruct-heading-prefix-regexp, orgstruct-setup-hook): New
options.
(orgstruct-initialized): New variable.
(orgstruct-mode): Simplify implementation.
(orgstruct-setup): Simplify implementation.  Translate keys to
their most general equivalent.
(orgstruct-make-binding): Generate index on the fly.  Discard
alternative keys.  Bind variables according to
orgstruct-heading-prefix-regexp.
(org-get-local-variables): Honour state property.
(org-run-like-in-org-mode): Do not override variables with
non-default values.
(org-forward-heading-same-level): Do not skip to headlines on
another level.  Handle negative prefix argument correctly.
(org-backward-heading-same-level): Use
org-forward-heading-same-level.
2013-02-10 18:47:58 +01:00
Nicolas Goaziou ba38de197e ox-latex: Fix behaviour when headline sectionning command is a function
* lisp/ox-latex.el (org-latex-headline): When a function returns
  a sectionning command, only one placeholder should be required.

Thanks to Florian Beck for reporting this.
2013-02-10 17:51:06 +01:00
Nicolas Goaziou 6b7101b910 Fix some compilation problem
* lisp/org-element.el (org-element-nested-p): Do not inline function.
* lisp/org.el: Do not autoload functions.
2013-02-10 14:47:57 +01:00
Nicolas Goaziou 02002a7651 ox: Define macro before it is actually used in code
* lisp/ox.el (org-export-copy-buffer, org-export-with-buffer-copy,
  org-export--generate-copy-script): Moved earlier in the file.
2013-02-10 13:28:28 +01:00
Eric Schulte 728c0eb693 bring back org-ts-regep fix lost in merge
* lisp/ob-core.el (org-babel-result-regexp): Bring back Bastien's
  hackish fix from commit c17e07e9 which was accidentally dropped in a
  merge.
2013-02-09 16:05:44 -07:00
Eric Schulte cb3e647734 org-babel-eval command instead of shell-command
* lisp/ob-sql.el (org-babel-execute:sql): Use the org-babel-eval command
  instead of shell-command.
2013-02-09 14:18:24 -07:00
Gary Oberbrunner e2b17ccc52 Improvements to Org SQL support
* add a header-row delimiter to the tables returned from mysql
 * add new sql-specific header args for the database connection, and implements them for mysql
 * add support for :colnames (mysql only)
 * (minor) add an edebug spec to org-babel-result-cond to allow edebugging through it
 * add some doc about what header args are used
2013-02-09 14:11:45 -07:00
Eric Schulte 7b62ae77b3 check that tuareg-run-caml is defined before use
* lisp/ob-ocaml.el (org-babel-prep-session:ocaml): Check that
  tuareg-run-caml is defined before use.
  (tuareg-run-ocaml): Declared for compiler.
2013-02-09 14:11:45 -07:00
Eric Schulte f3be2ae163 Change syntax of babel time hash layout
The syntax of result hashes with times are now as show below.

  #+RESULTS[<TIME> HASH]:

* lisp/ob-core.el (org-babel-result-regexp): Simplified regexp given new
  time hash layout.
  (org-babel-current-result-hash): New match string.
  (org-babel-hide-hash): New match string.
  (org-babel-where-is-src-block-result): New match string, and inserting
  hashes in the new format.
2013-02-09 14:11:45 -07:00
Nicolas Goaziou 16118a2af8 ox-texinfo: Fix "cross reference to non-existent node" error
* lisp/ox-texinfo.el (org-texinfo-link): Do not transform path part of
  internal links.
2013-02-09 19:26:58 +01:00
Nicolas Goaziou c44f8c0af0 Small refactoring
* lisp/org.el (org-org-menu): Small refactoring.
2013-02-09 18:33:01 +01:00
Nicolas Goaziou e3058f6855 Export back-ends: Fix some compilation errors
* lisp/ox-beamer.el (require): Require cl when compiling.
* lisp/ox-icalendar.el (require): Require cl when compiling.
* lisp/ox-jsinfo.el (require): Require cl when compiling.
* lisp/ox-md.el (require): Require cl when compiling.
2013-02-09 18:25:57 +01:00
Nicolas Goaziou 7f2d685219 ox: Tiny fix to code comments 2013-02-09 18:20:15 +01:00
Bastien Guerry da1ee63bbc Fix commit eac6af.
Thanks to Bill White for spotting this.
2013-02-09 10:25:13 +01:00
Nicolas Goaziou 779c450f52 Small fixes to docstrings
* lisp/org.el (org-export-backends): Fix docstring.
* lisp/ox.el (org-export-dispatch): Fix docstring.
2013-02-09 09:41:36 +01:00
Nicolas Goaziou 52e67a291d ox.el: Widen UI by 2 characters
* lisp/ox.el (org-export-dispatch-ui): Widen UI by 2 characters.
2013-02-08 23:12:36 +01:00
Nicolas Goaziou 1c096ea16f ox-latex: Add :options attribute to special blocks to specify options
* lisp/ox-latex.el (org-latex-special-block): Add :options attribute
  to special blocks to specify options.

With this patch, the following is now possible (again):

  #+attr_latex: :options [Someone]
  #+begin_theorem
  Something
  #+end_theorem
2013-02-08 22:53:03 +01:00
Nicolas Goaziou c16bfb448c ox-beamer: Add BEAMER_HEADER keyword
* lisp/ox-beamer.el (org-beamer-template): Add BEAMER_HEADER keywords
  below LATEX_HEADER.
2013-02-08 22:38:47 +01:00
Nicolas Goaziou 3888fd51a5 ox-beamer: Small change to menu entry 2013-02-08 22:36:07 +01:00
Nicolas Goaziou 302c2850fa org-latex/org-html: Small changes to menu entries 2013-02-08 22:19:37 +01:00
Nicolas Goaziou ab4a946ae2 ox-latex: Fix docstring
* lisp/ox-latex.el (org-latex-format-headline-function): Fix missing
  parens in the docstring.
2013-02-08 21:02:21 +01:00
Bastien Guerry 25a4f513a7 ox-html.el (org-html-format-latex): Fix conversion in non-file buffers
* ox-html.el (org-html-format-latex): Fix conversion in
non-file buffers.

Thanks to Vincent Beffara for spotting this and proposing a patch.
2013-02-08 19:49:25 +01:00
Bastien Guerry d1bf9a7df5 org.el (org-speed-commands-default): Bind `B' and `F' to `org-previous-block' and `org-next-block'
* org.el (org-speed-commands-default): Bind `B' and `F' to
`org-previous-block' and `org-next-block'.

Thanks to Sébastien Vauban for suggesting this.
2013-02-08 19:39:17 +01:00
Bastien Guerry b636982b00 Silent byte-compiler. 2013-02-08 17:21:54 +01:00
Bastien Guerry 22e9c264fd org.el: Use "!" instead of "?" to see today's diary as "?" when reading a date
* org.el (org-read-date-minibuffer-local-map): Use "!" instead
of "?" to see today's diary as "?" is already bounded by
Calendar.
2013-02-08 17:14:50 +01:00
Bastien Guerry 98f362b1b7 org.el (org-read-date-minibuffer-local-map): Use "." to go to today's date
* org.el (org-read-date-minibuffer-local-map): Use "." to go
to today's date.

Unless I'm crazy, there is a regression here, but I'm unable to find
when the regression started for now.
2013-02-08 17:13:31 +01:00
Bastien Guerry eac6af707c New commands `org-next-block' and `org-previous-block'
* ob-core.el (org-babel-next-src-block)
(org-babel-previous-src-block): Rewrite using
`org-next-block'.

* org.el (org-next-block, org-previous-block): New navigation
commands.
(org-mode-map): Bind the new commands to C-c C-F and C-c C-B
respectively.

Thanks to Bill White for suggesting this.
2013-02-08 17:11:13 +01:00
Bastien Guerry 6bcd7c44ec org-agenda.el (org-agenda-write): Don't copy headlines' subtrees when writing to an .org file
* org-agenda.el (org-agenda-write): Don't copy headlines'
subtrees when writing to an .org file.

* org.el (org-copy-subtree): New parameter `nosubtrees'.
2013-02-08 16:47:19 +01:00
Bastien Guerry 1af91246cf org-agenda.el (org-agenda-write): Allow writing to an .org file.
* org-agenda.el (org-agenda-write): Allow writing to an .org
file.
2013-02-08 15:06:01 +01:00
Bastien Guerry 87b43643c1 org.el (org-paste-subtree): Fix typo in docstring
* org.el (org-paste-subtree): Fix typo in docstring.
2013-02-08 15:04:51 +01:00
Bastien Guerry 05acaa9de4 org-agenda.el (org-agenda-get-timestamps): Use nil as `ts-date' for diary sexpressions
* org-agenda.el (org-agenda-get-todos)
(org-agenda-get-timestamps): Use nil as `ts-date' for diary
sexpressions.
2013-02-07 19:40:39 +01:00
Nicolas Goaziou 25a481d8ae Remove unneeded `:initialize' function for `org-export-backends'
* lisp/org.el (org-export-backends): Remove `:initialize' function.
2013-02-07 15:45:47 +01:00
Nicolas Goaziou 66150778a3 `org-reload' also reloads export back-ends in use
* lisp/org.el (org-reload): Also reload export back-ends in use.
2013-02-07 15:24:40 +01:00
Nicolas Goaziou 1193ca9c09 ox-beamer: Document columns 2013-02-07 15:03:11 +01:00
Nicolas Goaziou d86064c159 ox-latex: Ignore empty example-block and src-block elements
* lisp/ox-latex.el (org-latex-example-block, org-latex-src-block):
  Ignore element if it's empty.  This fixes error "apply: Wrong number
  of arguments: max, 0".
2013-02-07 14:35:52 +01:00
Bastien Guerry 3c4847cf67 org-agenda.el (org-agenda-get-todos): Skip diary sexps when trying to sort by timestamp
* org-agenda.el (org-agenda-get-todos): Skip diary sexps when
trying to sort by timestamp.

Thanks to Kyle Machulis for reporting this problem.
2013-02-07 10:32:43 +01:00
Bastien Guerry cadffe8e1a Merge branch 'maint' 2013-02-07 10:03:10 +01:00
Bastien Guerry c857077351 ox-html.el (org-html-link): Fix bug.
Thanks to Chuck Berry for reporting it.
2013-02-07 09:59:08 +01:00
tj@data-driven.de 3b3ffd5433 ob-lilypond.el: Fix test leftover
TINYCHANGE
2013-02-07 09:45:01 +01:00
Bastien Guerry fa55168d26 org-id.el (org-id-get-with-outline-path-completion): Fix docstring
* org-id.el (org-id-get-with-outline-path-completion): Fix
docstring.

Thanks to Florian Beck for reporting this.
2013-02-07 08:42:15 +01:00
Nicolas Goaziou ce79e36ff0 ox-latex/ox-beamer: Provide an error when LaTeX class is invalid
* lisp/ox-beamer.el (org-beamer-template): Provide an error when LaTeX
  class is invalid.
* lisp/ox-latex.el (org-latex-template): Provide an error when LaTeX
  class is invalid.

Patch suggested by Sébastien Vauban
2013-02-06 23:06:32 +01:00
Nicolas Goaziou 918c8a6c8f Add JIT export back-ends loading
* lisp/org.el (org-modules): Remove export back-ends from the list.
  Update docstring.
(org-export-backends): New variable.
* lisp/ox.el (org-export-async-start): Make sure export framework is
required in the external process.
2013-02-06 23:06:31 +01:00
Nicolas Goaziou 0484c5c64d Manage variables related to both LaTeX export and snippets
* lisp/org.el (org-format-latex-header-extra, org-export-have-math):
  Removed variables.
(org-latex-default-packages-alist): Renamed from
`org-export-latex-default-packages-alist'.
(org-latex-packages-alist): Renamed from
`org-export-latex-packages-alist'.
(org-try-cdlatex-tab, org-cdlatex-underscore-caret,
org-cdlatex-math-modify): Reorder in file.
(org-format-latex): Remove `org-format-latex-header-extra'.
(org-create-formula-image-with-dvipng,
org-create-formula-image-with-imagemagick): Apply variables renaming
and removal.
* lisp/org-entities.el (org-entities-user): Update docstring.
* lisp/ox-latex.el (org-latex-classes, org-latex-listings): Update
  docstring.
(org-latex-guess-inputenc): Renamed from `org-latex--guess-inputenc'.
(org-latex-guess-babel-language): Renamed from
`org-latex--guess-babel-language'.
(org-latex-template): Apply renaming.
* lisp/ox-beamer.el (org-beamer-template): Apply renaming.
* lisp/ob-latex.el (org-babel-execute:latex): Apply variable renaming
  and removal.
(org-babel-latex-tex-to-pdf): Call `org-latex-compile' instead of
copying it.
2013-02-06 23:06:31 +01:00
Nicolas Goaziou 73ddb3c49c Remove references to `org-protected' `org-example' and `original-indentation'
* lisp/org-macs.el (org-if-unprotected, org-if-unprotected-1,
  org-if-unprotected-at): Removed macros.
(org-re-search-forward-unprotected): Removed function.
* lisp/org.el (org-format-latex): Remove reference to `org-protected'.
* lisp/org-list.el (org-list-struct): Remove reference to
  `org-example' and `org-protected'.
* lisp/org-footnote.el (org-footnote-at-reference-p): Remove reference
  to `org-protected'.
* lisp/org-capture.el (org-capture-fill-template): Remove reference to
  `org-protected'.
* contrib/lisp/org-wikinodes.el (org-wikinodes-process-links-for-export):
  Remove reference to `org-protected' value.

These text properties were used by the old export framework. They are
not needed anymore.
2013-02-06 23:06:31 +01:00
Nicolas Goaziou 1cac3127c2 Fix tests related to export
* lisp/ob-exp.el (org-babel-exp-process-buffer): Renamed from
  `org-export-blocks-preprocess'.
* lisp/ox.el (org-export-execute-babel-code): Apply previous renaming.
* testing/org-test.el (org-test-at-id): Make sure the function returns
  the value of the last form in its body.
* testing/lisp/test-ob-exp.el: Fix tests.
* testing/lisp/test-ob-lob.el: Fix tests.
2013-02-06 23:06:31 +01:00
Nicolas Goaziou e14cf78056 org-pcomplete: Modify completion for buffer keywords
* lisp/org-pcomplete.el (pcomplete/org-mode/file-option): Collect
  valid keywords for completion without requiring the whole export
  framework.
(pcomplete/org-mode/file-option/options): Rewrite using new export
  framework.  Only complete up to the colon.
(pcomplete/org-mode/file-option/x): Removed macro.
(pcomplete/org-mode/file-option/title,
 pcomplete/org-mode/file-option/author,
 pcomplete/org-mode/file-option/email,
 pcomplete/org-mode/file-option/date): Removed functions.
(pcomplete/org-mode/file-option/infojs_opt): New function.

Completion for some keywords was removed because it provided only the
default value, which is the same as not writing the keyword at all.  In
other words, a user would almost always want to modify the completed
value, which makes the completion moot.
2013-02-06 23:06:31 +01:00
Nicolas Goaziou a2f56264c9 Remove unnecessary linking to export framework
* lisp/org-clock.el (org-clocktable-defaults,
  org-clocktable-write-default): Avoid requiring the whole export
  framework just to check one variable.
* lisp/org-footnote.el (org-footnote-section): Update
  docstring.
(org-footnote-normalize): Remove all export related part from the
  function.
* lisp/org-inlinetask.el (org-inlinetask-export,
  org-inlinetask-export-templates): Removed variables.
(org-inlinetask-export-handler): Removed function.
* lisp/org-plot.el: Remove dependency on `org-exp' library.
* lisp/org.el (org-additional-option-like-keywords): Remove variable.
(org-get-export-keywords): New function.
(org-options-keywords): Update default list of keywords.
(org-remove-flyspell-overlays-in): Apply changes to keywords
compilation.
(org-highlight-latex-fragments-and-specials)
org-latex-and-specials-regexp,
org-export-html-special-string-regexps): Remove variables.
(org-compute-latex-and-specials-regexp,
org-do-latex-and-special-faces, org-remove-file-link-modifiers):
Remove functions.
(org-set-regexps-and-options, org-set-font-lock-defaults): Apply all
removals.
(org-use-sub-superscripts): Fix docstring.  Remove unused group.
(org-match-sexp-depth): Make it a defconst instead of a defcustom in
order to remove `org-export-translation' group completely.

The new export framework shouldn't be as much interleaved with Org
core as with the previous one.  For example, export options, which are
back-end dependent, shouldn't interfere with the display of the
buffer.
2013-02-06 23:06:31 +01:00
Nicolas Goaziou 0a01e52aa1 Install new exporter into Org innards
* contrib/lisp/org-mime.el (org-mime-htmlize, org-mime-compose): Use
  new exporter.
* lisp/ob-haskell.el (org-babel-haskell-export-to-lhs): Use new
  exporter.
* lisp/ob-latex.el (org-babel-execute:latex): Use new exporter.
* lisp/ob-org.el (org-babel-execute:org): Use new exporter.
* lisp/org-agenda.el (org-agenda-menu, org-agenda-write): Use new
  iCalendar export back-end.
* lisp/org-table.el (org-table-export, orgtbl-export): Remove
  dependency on `org-exp' library.
(org-table-clean-before-export): New function.
(org-table-colgroup-info): New variable.
(orgtbl-to-html): Use to new HTML export back-end.
* lisp/org.el (org-modules): Remove modules relative to obsolete
  export framework and add those relative to the new one.
(org-create-formula-image-with-dvipng, org-format-latex
org-create-formula-image-with-imagemagick): Use new exporter.
(org-indent-line): INCLUDE keywords are indented like regular
keywords.
(org-mode-map): Bind C-c C-e to new export dispatcher.
(org-menu): Install new exporter in menu.
2013-02-06 23:06:30 +01:00
Nicolas Goaziou 03a9191dd3 Move previous export framework into contrib
* contrib/lisp/org-ascii.el: New file.
* contrib/lisp/org-beamer.el: New file.
* contrib/lisp/org-docbook.el: New file.
* contrib/lisp/org-exp-blocks.el: New file.
* contrib/lisp/org-exp.el: New file.
* contrib/lisp/org-freemind.el: New file.
* contrib/lisp/org-html.el: New file.
* contrib/lisp/org-icalendar.el: New file.
* contrib/lisp/org-jsinfo.el: New file.
* contrib/lisp/org-latex.el: New file.
* contrib/lisp/org-lparse.el: New file.
* contrib/lisp/org-odt.el: New file.
* contrib/lisp/org-publish.el: New file.
* contrib/lisp/org-special-blocks.el: New file.
* contrib/lisp/org-taskjuggler.el: New file.
* contrib/lisp/org-xoxo.el: New file.
* lisp/org-ascii.el: Removed file.
* lisp/org-beamer.el: Removed file.
* lisp/org-docbook.el: Removed file.
* lisp/org-exp-blocks.el: Removed file.
* lisp/org-exp.el: Removed file.
* lisp/org-freemind.el: Removed file.
* lisp/org-html.el: Removed file.
* lisp/org-icalendar.el: Removed file.
* lisp/org-jsinfo.el: Removed file.
* lisp/org-latex.el: Removed file.
* lisp/org-lparse.el: Removed file.
* lisp/org-odt.el: Removed file.
* lisp/org-publish.el: Removed file.
* lisp/org-special-blocks.el: Removed file.
* lisp/org-taskjuggler.el: Removed file.
* lisp/org-xoxo.el: Removed file.
* testing/lisp/test-org-exp.el: Removed file.
* testing/lisp/test-org-html.el: Removed file.
2013-02-06 23:06:30 +01:00
Nicolas Goaziou 8dd2bfc291 Move new export framework files into core
* contrib/README: Remove references to new export framework.
* contrib/lisp/org-e-ascii.el: Removed file.
* contrib/lisp/org-e-beamer.el: Removed file.
* contrib/lisp/org-e-confluence.el: Removed file.
* contrib/lisp/org-e-groff.el: Removed file.
* contrib/lisp/org-e-html.el: Removed file.
* contrib/lisp/org-e-icalendar.el: Removed file.
* contrib/lisp/org-e-latex.el: Removed file.
* contrib/lisp/org-e-man.el: Removed file.
* contrib/lisp/org-e-odt.el: Removed file.
* contrib/lisp/org-e-publish.el: Removed file.
* contrib/lisp/org-e-texinfo.el: Removed file.
* contrib/lisp/org-export.el: Removed file.
* contrib/lisp/org-koma-letter.el: Removed file.
* contrib/lisp/org-md.el: Removed file.
* contrib/lisp/ox-confluence.el: New file.
* contrib/lisp/ox-groff.el: New file.
* contrib/lisp/ox-koma-letter.el: New file.
* lisp/ox-ascii.el: New file.
* lisp/ox-beamer.el: New file.
* lisp/ox-html.el: New file.
* lisp/ox-icalendar.el: New file.
* lisp/ox-jsinfo.el: New file.
* lisp/ox-latex.el: New file.
* lisp/ox-man.el: New file.
* lisp/ox-md.el: New file.
* lisp/ox-odt.el: New file.
* lisp/ox-publish.el: New file.
* lisp/ox-texinfo.el: New file.
* lisp/ox.el: New file.
* mk/org-fixup.el (org-make-org-loaddefs): Install new export
  framework and back-end files.
* testing/lisp/test-org-export.el: Removed file.
* testing/lisp/test-ox.el: New file.
2013-02-06 23:06:30 +01:00
Bastien Guerry 33c4f6233d org-agenda.el: New options to limit the number of displayed entries
* org-agenda.el (org-agenda-max-entries)
(org-agenda-max-todos, org-agenda-max-tags)
(org-agenda-max-effort): New options.
(org-timeline, org-agenda-list, org-search-view)
(org-todo-list, org-tags-view): Tell
`org-agenda-finalize-entries' what agenda type we are
currently finalizing for.
(org-agenda-finalize-entries): Limit the number of entries
depending on the new options.
(org-agenda-limit-entries): New function.

Thanks to the various people who asked for this feature
or for a variation of it.

You can set the new options to an integer or to an alist.

(setq org-agenda-max-effort 120)
  => Don't display entries beyond 120 minutes of effort

(setq org-agenda-max-effort '((todo . 60) (agenda . 240)))
  => Limit to 60 minutes in TODO agenda and to 240 in
     "agenda" agenda views.
2013-02-06 17:23:25 +01:00
Bastien Guerry c5ac9d415e org.el: Allow C-u C-u to insert a warning/delay cookie for org-deadline/org-schedule
* org.el (org-deadline): Allow a double universal prefix
argument to insert/update a warning cookie.
(org-deadline): Allow a double universal prefix argument to
insert/update a delay cookie.
2013-02-06 17:23:25 +01:00
Bastien Guerry 8ecc966292 Implement "delay" cookies for scheduled items.
* org-agenda.el (org-agenda-skip-scheduled-delay-if-deadline):
New option.  The structure of the possible values is copied
from `org-agenda-skip-deadline-prewarning-if-scheduled'.
(org-agenda-get-scheduled): Honor the two new option,
`org-scheduled-delay-days' and
`org-agenda-skip-deadline-prewarning-if-scheduled'.  I.e. if a
scheduled entry has a delay cookie like "-2d" (similar to the
prewarning cookie for deadline), don't show the entry until
needed.

* org.el (org-deadline-warning-days): Small docstring fix.
(org-scheduled-delay-days): New option (see
`org-deadline-warning-days'.)
(org-get-wdays): Use the new option.

Thanks to Andrew M. Nuxoll and Michael Brand for this idea.

You can now use a "delay cookie" in scheduled items.  For example,

* TODO Sleep
  SCHEDULED: <2013-02-06 mer. -3d>

will not be shown on 06/02 but on 09/02, three days later.

The value of the cookie overrides any value of `org-scheduled-delay-days',
unless `org-scheduled-delay-days' is negative (same logic than for
`org-deadline-warning-days'.)

Also check org-agenda-skip-scheduled-delay-if-deadline, which does for
delay cookies what `org-agenda-skip-deadline-prewarning-if-scheduled' does
for prewarning deadline cookies.
2013-02-06 17:23:24 +01:00
Bastien Guerry 8517be79b5 org-agenda.el: Implement new sorting strategies
* org-agenda.el (org-agenda-sorting-strategy): Document the
new sorting strategies.
(org-agenda-get-todos, org-agenda-get-timestamps)
(org-agenda-get-deadlines, org-agenda-get-scheduled): Add a
`ts-date' text property with scheduled, deadline or timetamp
date.
(org-cmp-ts): New function to compare timestamps.
(org-em): Add a docstring.
(org-entries-lessp): Use `org-cmp-ts' to compare timestamps.
Implement the following sorting strategies: timestamp-up/down,
scheduled-up/down, deadline-up/down, ts-up/down (for active
timestamps) and tsia-up/down (for inactive timestamps.)
2013-02-06 17:23:24 +01:00
Bastien Guerry b91fe131ae Merge branch 'maint'
Conflicts:
	lisp/org-agenda.el
2013-02-06 17:21:31 +01:00
Bastien Guerry b07a9bb29a org-agenda.el: Bugfix.
* org-agenda.el (org-agenda-get-deadlines)
(org-agenda-get-scheduled): Fix bug: use text properties for
the headline text since we rely on properties to get e.g. the
effort.
2013-02-06 17:18:03 +01:00
Bastien Guerry 3380460c69 Merge branch 'maint' 2013-02-05 00:11:08 +01:00
John K. Luebs f27e1e8e4d org.el (org-get-wdays): Handle matching a lead time specified in hours
* org.el (org-get-wdays): Handle matching a lead time specified in
hours.

TINYCHANGE

A lead time in hours is matched but will erroneously return nil.
2013-02-05 00:10:05 +01:00
Bastien Guerry 60b13f3dfe Merge branch 'maint' 2013-02-04 23:03:48 +01:00
Bastien Guerry 80cb1b0a09 org-exp.el (org-export-normalize-links): Don't match links within tags
* org-exp.el (org-export-normalize-links): Don't match links
within tags.

A headline with tags like :info:test: would not be exported correctly
because info:test is first matched and normalized as a link.
2013-02-04 22:14:52 +01:00
Nicolas Goaziou 413a35f7f8 ob-exp: Fix code indentation after src block evaluation
* lisp/ob-exp.el (org-export-blocks-preprocess): Do not use
  `indent-code-rigidly' as it doesn't indent contents of strings.
2013-02-03 17:07:55 +01:00
Nicolas Goaziou 787a07421c Merge branch 'maint' 2013-01-31 22:16:23 +01:00
Nicolas Goaziou 592dc2ee7e org-element: Fix macro parsing with protected commas
* lisp/org-element.el (org-element-macro-parser): Fix error when last
  argument ends with a protected comma.
* testing/lisp/test-org-element.el (test-org-element/macro-parser):
  Add tests.
2013-01-31 22:15:39 +01:00
Bastien Guerry a2febd2101 Merge branch 'maint' 2013-01-31 14:18:24 +01:00
Bastien Guerry 4259ea9fe5 org-clock.el (org-clock-sum): Fix indentation 2013-01-31 14:18:14 +01:00
Bastien Guerry 394398afab Merge branch 'maint' 2013-01-31 14:17:13 +01:00
Francesco Pizzolante 9cb3d3e7f8 org-clock.el (org-clock-sum): Protect with `org-unmodified'
* org-clock.el (org-clock-sum): Protect with `org-unmodified'.

TINYCHANGE
2013-01-31 14:17:01 +01:00
Bastien Guerry ad9ca25d86 Merge branch 'maint' 2013-01-31 12:06:49 +01:00
Bastien Guerry be1169fac7 Merge branch 'master-new-features' 2013-01-31 12:06:39 +01:00
Bastien Guerry 94d1b1169d org-html.el: Enhance docstrings
* org-html.el (org-export-html-preamble-format)
(org-export-html-postamble-format): Mention that
org-export-html-preamble/postamble need to be `t' in order for
these variables to have any effect.
2013-01-31 11:30:43 +01:00
Bastien Guerry 7dbe05551d ob-lilypond.el (ly-process-basic): Bugfix, don't use `pcase'
* ob-lilypond.el (ly-process-basic): Bugfix, don't use
`pcase'.

Thanks to Achim Gratz for suggesting this.
2013-01-31 11:17:18 +01:00
Bastien Guerry bbea8d348b Allow to contextualize capture and agenda commands by checking the name of the buffer
* org.el (org-contextualize-validate-key): Check against two
new context predicates [not-]in-buffer.

* org-capture.el (org-capture-templates-contexts):
* org-agenda.el (org-agenda-custom-commands-contexts):
Document the new [not-]in-buffer context predicates.

Thanks to Paul Sexton for triggering this and for proposing a patch.
2013-01-31 11:06:04 +01:00
Bastien Guerry c17e07e94f ob-core.el (org-ts-regexp): Remove duplicate defconst'ing
* ob-core.el (org-ts-regexp): Remove duplicate defconst'ing.
(org-babel-result-regexp): Don't use `org-ts-regexp', use a
regexp string directly.

This is not the best solution, we should be able to use
`org-ts-regexp' here, but the dependencies makes it hard.
So let's not define org-ts-regexp twice, just use a raw
regexp instead, and add a FIXME warning about this.
2013-01-31 10:57:49 +01:00
Bastien Guerry 55f4f92183 org-html.el (org-html-handle-links): Fix bug in setting the attribute for link with images
* org-html.el (org-html-handle-links): When the link
description is an image and the attribute is "width",
pass the attribute to the <img ...> tag.

Thanks to John Hendy for reporting this.
2013-01-31 10:25:03 +01:00
Eric Schulte ab49324917 fix bug introduced in c1226e8
* lisp/ob-core.el (org-ts-regexp): Declare this here as well.
2013-01-30 13:53:55 -07:00
Eric Schulte c1226e80d4 option to show time stamps over result hashes
suggested by Thomas Alexander Gerds

* lisp/ob-core.el (org-babel-result-regexp): Now matching time stamp as
  well.
  (org-babel-hash-show-time): Variable controlling the display of time
  stamps.
  (org-babel-current-result-hash): With hash time stamps.
  (org-babel-hide-all-hashes): With hash time stamps.
  (org-babel-where-is-src-block-result): With hash time stamps.
2013-01-30 10:08:38 -07:00
Bastien Guerry ff2d373dc3 Merge branch 'maint' 2013-01-30 17:53:30 +01:00
Francesco Pizzolante ebad7d9226 org-macs.el (org-unmodified): Inhibit modification hooks
* org-macs.el (org-unmodified): Inhibit modification hooks.

TINYCHANGE
2013-01-30 17:53:22 +01:00
Nicolas Goaziou 8798f15b72 org-element: Cosmetic change to `org-element-map' indentation
* lisp/org-element.el (org-element-map): Change to function
  indentation.  Also complete docstring.
2013-01-30 14:42:24 +01:00
Bastien Guerry f518bc8f81 ob-lilypond.el (ly-process-basic): Don't use `ly-gen-png'
* ob-lilypond.el (ly-process-basic): Don't use `ly-gen-png'
and friends, rely on the extension of the output file.

Thanks to Florian Beck for suggesting this.
2013-01-30 12:20:32 +01:00
Bastien Guerry 2d18609f4a Merge branch 'maint'
Conflicts:
	contrib/lisp/org-e-odt.el
2013-01-30 12:11:10 +01:00
Bastien Guerry e54dce3b8c org-archive.el (org-archive-file-header-format): New option
* org-archive.el (org-archive-file-header-format): New option.
(org-archive-subtree): Use it.

Thanks to Christopher Schmidt for suggesting something close.
2013-01-30 11:50:14 +01:00
racin e91a5dd33f org-bibtex.el (org-bibtex-search): Don't throw an error when `org-bibtex-prefix' is nil
* org-bibtex.el (org-bibtex-search): Don't throw an error when
`org-bibtex-prefix' is nil.

TINYCHANGE
2013-01-30 11:42:17 +01:00
Bastien Guerry 6d06bcfcbc org.el: Always honor `org-startup-indented', even when `org-inhibit-startup' is non-nil
* org.el (org-mode): Always honor `org-startup-indented', even
when `org-inhibit-startup' is non-nil.

* org-indent.el (org-indent-mode): Don't check
`org-inhibit-startup'.

Thanks to Carsten for suggesting this.
2013-01-30 11:18:24 +01:00
Bastien Guerry d6c3bd9c42 Fix commit eab0cd
Thanks to Florian for spotting this...
2013-01-27 15:21:29 +01:00
Bastien Guerry fe805ed97c Fix commit de3380
Thanks to Leo Liu for providing a patch.
2013-01-27 10:05:54 +01:00
Bastien Guerry 9b4b890da2 Merge branch 'maint' 2013-01-27 09:21:47 +01:00
Bastien Guerry 08c2938e7d org.el (org-fontify-meta-lines-and-blocks-1): Don't try to add text properties outside of the buffer
* org.el (org-fontify-meta-lines-and-blocks-1): Don't try to
add text properties outside of the buffer.

Thanks to Leo Liu for reporting this.
2013-01-27 09:21:35 +01:00
Eric Schulte f52600a439 fix bug: tangling #+headers: lines w/prefix arg 2013-01-26 13:58:30 -07:00
Bastien Guerry 5e11659e66 Merge branch 'maint'
Conflicts:
	lisp/org.el
2013-01-26 15:11:21 +01:00
Bastien Guerry a119649923 org.el (org-agenda-inhibit-startup): Rename from `org-agenda-inhibit-startup-visibility-cycling'
* org.el (org-agenda-inhibit-startup): Rename from
`org-agenda-inhibit-startup-visibility-cycling'.
(org-agenda-prepare-buffers): Bind `org-inhibit-startup' to
`org-agenda-inhibit-startup'.
2013-01-26 15:10:43 +01:00
Bastien Guerry d0cad612ec org.el (org-mode): Don't initialize `org-beamer-mode' when `org-inhibit-startup' is non-nil
* org.el (org-mode): Don't initialize `org-beamer-mode' when
`org-inhibit-startup' is non-nil.
2013-01-26 15:03:21 +01:00
Bastien Guerry 714b372278 Merge branch 'maint' 2013-01-26 13:40:26 +01:00
Bastien Guerry b425e2a2d6 org-footnote.el: Fix bug when using `electric-indent-mode'
* org-footnote.el (org-footnote-create-definition): Prevent
`electric-indent-mode' from inserting the definition at the
wrong place.

Thanks to Xue Fuqiao for reporting this bug.
2013-01-26 13:40:18 +01:00
Bastien Guerry 733a6fe063 Merge branch 'maint' 2013-01-26 13:29:49 +01:00
Bastien Guerry a5ed80fb32 org-agenda.el: Delete `org-agenda-no-heading-message'
* org-agenda.el (org-agenda-no-heading-message): Delete.
(org-agenda-get-timestamps, org-agenda-get-progress)
(org-agenda-get-deadlines, org-agenda-get-scheduled)
(org-agenda-get-blocks): Don't use
`org-agenda-no-heading-message', skip the entry.
2013-01-26 13:29:44 +01:00
Bastien Guerry eab0cd025c ob-lilypond.el (ly-process-basic): Rely on ly-gen-png/pdf/eps to set the output type
* ob-lilypond.el (ly-process-basic): Rely on
ly-gen-png/pdf/eps to set the output type.

Thanks to Florian Beck for reporting this.
2013-01-26 12:00:37 +01:00