Commit Graph

2744 Commits

Author SHA1 Message Date
Bastien Guerry 5036388ab9 Merge branch 'maint' 2012-09-24 17:19:39 +02:00
Bastien Guerry 6c92eca5eb Small enhancements to the main Org menu.
* org.el (org-in-subtree-not-table-p): New utility function
for building the menu.
(org-org-menu): Add an item for refiling.  Check more contexts
when activating items.
(org-tree-to-indirect-buffer): Use `org-up-heading-safe'.

* org-agenda.el (org-agenda-tree-to-indirect-buffer)
(org-agenda-do-tree-to-indirect-buffer): Use argument `arg'.
2012-09-24 17:19:12 +02:00
Bastien Guerry ed991f49d7 Merge branch 'maint' 2012-09-23 12:01:05 +02:00
Bastien Guerry 0906e32b15 org.el: Use nil as the default value for `org-link-to-org-use-id'
* org.el (org-link-to-org-use-id): Move to org-id.el.

* org-id.el (org-id-link-to-org-use-id): Rename from
`org-link-to-org-use-id'.  Use `nil' as the default value.
(org-link-to-org-use-id): Alias and define as obsolete.

`org-link-to-org-use-id' was previously defined in org.el but only
active when org-id.el was loaded.  This is wrong.  It now belongs
to org-id.el.

Also, as some libraries require org-id.el on the fly, a non-nil
default value for `org-link-to-org-use-id' had the side-effect of
changing the behavior of `org-store-link' behind the user's back.
Which is wrong too.  The new default value is `nil' so that, even
when a library requires org-id.el without the user noticing it,
the behavior of `org-store-link' will not change.

Users who want to keep the previous behavior can set the variable
to 'create-if-interactive-and-no-custom-id

INCOMPATIBLE
2012-09-23 11:58:49 +02:00
Bastien Guerry a65b5bd36c New command `org-copy' to copy a subtree/region
* org.el (org-refile-keep): New variable.
(org-copy): New command to copy notes.
(org-refile): New parameter msg to override the "Refile"
string in the default prompt.
(org-mode-map): Bind "C-c M-w" to `org-copy'.

* org.texi (Refile and copy): Document the new command `org-copy'.

* orgguide.texi (Refile and copy): Ditto.

Thanks to Kalev Takkis who triggered this change.
2012-09-23 11:42:41 +02:00
Bastien Guerry f19af99d2a org.el: Use the current file name as the default target when there is no refile history
* org.el (org-refile-get-location): Use the current file name
as the default target when there is no refile history.
2012-09-23 10:04:29 +02:00
Nicolas Richard eedee465f7 org.el (org-insert-link): Call `org-link-try-special-completion' from the original buffer
* org.el (org-insert-link): Call
`org-link-try-special-completion' from the original buffer.

TINYCHANGE
2012-09-22 11:18:06 +02:00
Bastien Guerry 59f9e22dda org.el: Add a new function to `org-cycle-hook' to hide inline tasks from the 'contents view
* org.el (org-cycle-hide-inline-tasks): New function to hide
inline tasks when cycling.
(org-cycle-hook): Use the new function.

Thanks to Christopher Witte for triggering this and to Carsten for
suggesting this change.
2012-09-22 11:02:34 +02:00
Bastien Guerry 5d62f26fbc Merge branch 'maint' 2012-09-22 10:55:11 +02:00
Bastien Guerry e1c609c6aa org.el (org-cycle-global-at-bob): Fix typo in docstring
* org.el (org-cycle-global-at-bob): Fix typo in docstring.
2012-09-22 10:55:06 +02:00
Bastien Guerry 34db1c2934 Merge branch 'maint' 2012-09-21 18:11:54 +02:00
Bastien Guerry 50837906ec org.el: Fix bug in `org-insert-drawer'
* org.el (org-insert-drawer): Deactivate the mark before
trying to indent the :END: of the drawer.

Thanks to Christoph LANGE for reporting this.
2012-09-21 18:00:52 +02:00
Achim Gratz 23b30cd124 declare function org-clock-get-last-clock-out-time
* lisp/org.el: Declare function org-clock-get-last-clock-out-time.
2012-09-20 22:16:13 +02:00
Bastien Guerry 69f2588f60 Merge branch 'maint' 2012-09-19 12:29:36 +02:00
Bastien Guerry 0d73ee4f30 org.el (org-cycle-hook): Fix tiny typo in docstring
* org.el (org-cycle-hook): Fix tiny typo in docstring.
2012-09-19 12:29:27 +02:00
Bastien Guerry b913f5c7ef Merge branch 'maint' 2012-09-19 11:44:18 +02:00
Bastien Guerry 6cff4db20c org.el: Add docstrings
* org.el (org-time-string-to-time)
(org-time-string-to-seconds, org-end-of-subtree): Add a
dosctring.
2012-09-19 11:44:07 +02:00
Bastien Guerry d186577678 org.el (org-entry-put): Fix bug when updating the last clock
* org.el (org-entry-put): Fix bug when updating the last clock.
2012-09-19 11:39:32 +02:00
Bastien Guerry f3202903d6 New option `org-use-last-clock-out-time-as-effective-time'
* org.el (org-use-last-clock-out-time-as-effective-time): New option.
(org-current-effective-time): Use the new option.

* org-clock.el (org-clock-get-last-clock-out-time): New
function.

When set to `t', this new option will take the time of the last clock out
timestamp and use it when changing/logging the todo state.

Thanks to Gaizka Villate who suggested this.
2012-09-19 11:36:32 +02:00
Bastien Guerry 4600e9eca8 Merge branch 'maint' 2012-09-18 17:18:55 +02:00
Bastien Guerry 5b8999b708 org.el: Use "capture" instead of "remember" in docstrings.
* org.el (org-link-to-org-use-id, org-directory)
(org-default-notes-file, org-reverse-note-order)
(org-extend-today-until, org-finish-function)
(org-store-link-functions): Use "capture" instead of
"remember" in docstrings.  Also use the `org-capture' group
when it makes sense.
2012-09-18 17:18:33 +02:00
Bastien Guerry 48ca87cd4a org.el (org-toggle-inline-images): Only send a message when called interactively
* org.el (org-toggle-inline-images): Only send a message when
called interactively.
2012-09-18 16:27:57 +02:00
Bastien Guerry 8205e25c08 Merge branch 'maint' 2012-09-18 12:25:30 +02:00
Bastien Guerry 90565f2ede org.el (org-mode): Try to set the org-hide face correctly
* org.el (org-mode): Try to set the org-hide face correctly.

Thanks to Arne Babenhauserheide for reporting a related problem.
2012-09-18 12:24:05 +02:00
Bastien Guerry 2791177308 Fix two compiler warnings 2012-09-17 18:44:58 +02:00
Bastien Guerry e109fac771 Fix two compiler warnings 2012-09-17 18:44:42 +02:00
Abdó Roig-Maranges 5029a8bcf9 fix dvipng latex export with Transparent background
* org.el (org-create-formula-image-with-dvipng): Fixes a bug
introduced in 149cc04782 that made it
fail with no :foreground and :background attributes set, due to bad
handling of "Transparent" color.
2012-09-14 01:09:52 +05:30
Bastien Guerry 6589b9925c Merge branch 'maint' 2012-09-13 03:20:30 +02:00
Bastien Guerry b0e5c6d1ad org.el: Fix plain link activation
* org.el (org-activate-plain-links): Don't try to check if we
are in a bracket link already.

This partially reverts commit ad35e2.
The problem that this commit was trying to
address needs to be rethought.

Thanks to Scott Randby for reporting this.
2012-09-13 03:10:06 +02:00
Bastien Guerry 93c692ba27 Merge branch 'maint' 2012-09-13 01:28:16 +02:00
Bastien Guerry c6d0af8c5b org.el (org-read-date-analyze): Allow relative input and time string.
* org.el (org-read-date-analyze): Fix bug introduced in commit
cc5f9f: adding a time should not prevent relative answers to
be parsed correctly.

Thanks to Michael Brand for reporting this.
2012-09-13 01:28:00 +02:00
Bastien Guerry a0c1ca54bb org.el (org-scan-tags): Fix the declaration and the use of `org-agenda-format-item'
* org.el (org-scan-tags): Fix the declaration and the use of
`org-agenda-format-item'.
2012-09-13 00:48:40 +02:00
Bastien Guerry 9742dc86a0 Continue fixing b508ff69.
* org.el (org-outline-level): Go at the beginning of the
headline first to always return a sensible result.

* org-agenda.el (org-search-view, org-agenda-get-todos)
(org-agenda-get-timestamps, org-agenda-get-sexps)
(org-agenda-get-progress, org-agenda-get-deadlines)
(org-agenda-get-scheduled, org-agenda-get-blocks): Return the
correct level depending on `org-odd-levels-only'.
2012-09-12 18:17:01 +02:00
Abdó Roig-Maranges 149cc04782 org.el: Option to get LaTeX preview in the same color as text face
* org.el (org-format-latex-options): Add `auto' to docstring.
(org-format-latex): Get face colors at point and put them inside opt.
(org-create-formula-image-with-dvipng): Fix bug when colors are not
`default'.
(org-create-formula-image-with-imagemagick): Fix bug when handling
"Transparent" bg color.
(org-dvipng-color-format): Same as `org-latex-color-format' for
dvipng-style color specification.

If `auto' is used for the :foreground or :background value in
org-format-latex-options, the the appropriate color is chosen
from the face in which the formula is displayed.
2012-09-12 12:45:44 +02:00
Eric Schulte 27101a3e0e resurrect org-create-formula-image
This commit resurrects the `org-create-formula-image' function which was
removed in commit a9d3ce.  This function is still called elsewhere, and
provides a simpler interface to the two backend-specific image creation
functions.

This also simplifies `org-format-latex', which still has some serious
problems such as optional arguments such as PROCESSING-TYPE which are
never assigned a default value, and extraneous variables.

At some point the `org-create-formula-image-with-imagemagick' and
`org-create-formula-image-with-dvipng' functions should be combined as a
great deal of code and logic is duplicated between the two functions.

* lisp/org.el (org-format-latex): Simplified and now makes use of the
  new `org-create-formula-image' function.
  (org-create-formula-image): Provides a simpler interface to the two
  backend-specific functions.
2012-09-09 13:30:32 -06:00
Nicolas Goaziou 8e44533339 Merge branch 'maint' 2012-09-09 14:14:54 +02:00
Nicolas Goaziou 9d334897e3 Don't consider tags as a replacement for a missing title in an headline
* lisp/org.el (org-set-regexps-and-options): Don't consider tags as
  a replacement for a missing title in an headline.
2012-09-09 14:03:36 +02:00
Bastien Guerry cf98ded2d4 Merge branch 'maint' 2012-09-06 19:41:51 +02:00
Bastien Guerry 12f46c9d00 org.el (org-version): New constant
* org.el (org-version): New constant.
2012-09-06 19:41:26 +02:00
Nicolas Goaziou eeb5b92342 Merge branch 'maint' 2012-09-04 16:14:45 +02:00
Nicolas Goaziou dd28223042 Remove duplicate code
* lisp/org.el (org-setup-filling): Remove duplicate code.
2012-09-04 16:14:08 +02:00
Jambunathan K b9270bf46f * lisp/org.el (org-open-file): Print shell command used to open file 2012-09-03 19:19:23 +05:30
Bastien Guerry 0fa4255eab Merge branch 'maint' 2012-09-03 11:19:28 +02:00
Nicolas Goaziou 8d599a4eb2 Make sure fill prefix is computed from beginning of line
* lisp/org.el (org-adaptive-fill-function): Make sure fill prefix is
  computed from beginning of line.
2012-09-02 15:01:00 +02:00
Bastien Guerry f43c8c8100 Merge branch 'maint' 2012-09-02 13:45:18 +02:00
Bastien Guerry 727c558c0f org.el (org-read-date): Docstring fix
* org.el (org-read-date): Docstring fix.
2012-09-02 11:22:04 +02:00
Nicolas Goaziou ef3706ba92 Merge branch 'maint' 2012-09-01 21:39:08 +02:00
Nicolas Goaziou 4026f2e3ad Remove occasional spurious space character when auto-filling
* lisp/org.el (org-adaptive-fill-function): Remove occasional spurious
  space character when auto-filling.
2012-09-01 21:38:18 +02:00
Nicolas Goaziou 06bffa9120 Small refactoring
* lisp/org.el (org-macro-initialize-templates): Small refactoring.
2012-09-01 11:50:51 +02:00
Nicolas Goaziou 4a2f3c2093 Implement a basic API around macros
* lisp/org.el (org-mode): Initialize macros templates.
(org-macro-templates): New variable.
(org-macro-expand, org-macro-replace-all,
org-macro-initialize-templates): New functions.
* testing/lisp/test-org.el: Add tests.
2012-09-01 10:56:00 +02:00
Bastien Guerry cdbc2d4799 Allow using S-<left/right> to update CLOCKSUM from the column view
* org-colview.el (org-columns-next-allowed-value): Add the
CLOCKSUM property to the list of properties that can be
changed interactively from the column view.

* org.el (org-entry-put): Allow to set the CLOCKSUM property
by updating the most recent clock.  This is useful in the
column view when you want to use S-<left/right> to update the
last clock of the entry at point.

Thanks to Rainer Stengele who suggested something along those
lines.
2012-08-30 16:42:13 +02:00
Bastien Guerry 152ad3362e org.el: Refine `org-image-actual-width' again
* org.el (org-image-actual-width): New choice: use #+ATTR* or
fall back on a number.
(org-display-inline-images): Implement the new choice.
2012-08-30 15:47:34 +02:00
Bastien Guerry 928bb90861 org.el: Rename `org-image-fixed-width' to `org-image-actual-width' and refine
* org.el (org-image-actual-width): Rename from
`org-image-fixed-width'.  Update the docstring.  Give more
choice.
(org-display-inline-images): Use the option new choices.
2012-08-30 15:02:58 +02:00
Bastien Guerry 2e8543f5d9 org.el: New option to set a fixed width for inline images
* org.el (org-image-fixed-width): New option to set a fixed
width for inline images.
(org-display-inline-images): Use the new option.

This option only takes effect for Emacs >=24.1, build with
imagemagick support.

Thanks to Alexander Willand who requested a similar feature.
2012-08-30 14:22:48 +02:00
Bastien Guerry 5d16834906 Merge branch 'maint' 2012-08-30 10:33:33 +02:00
Mike Sperber 1e678d8cba XEmacs: Make call to `fill-paragraph' work on XEmacs.
2012-08-25  Michael Sperber  <mike@xemacs.org>

* org.el (org-fill-paragraph): Pass optional argument to
`fill-paragraph' to fix compatibility with XEmacs.
2012-08-30 10:32:54 +02:00
Bastien Guerry 383806e5ef Merge branch 'maint' 2012-08-30 10:13:59 +02:00
Mike Sperber 501db42c8c XEmacs: Default `org-self-insert-cluster-for-undo' also on XEmacs.
2012-08-25  Michael Sperber  <mike@xemacs.org>

	* org.el (org-self-insert-cluster-for-undo): Default
	`org-self-insert-cluster-for-undo' also on XEmacs.
2012-08-30 10:13:52 +02:00
Bastien Guerry b00a355adb org.el (org-mode): Set the syntax of the " character to "string quote"
* org.el (org-mode): Set the syntax of the " character to
"string quote".

Thanks to Samuel Wales for asking a related question and to Nick Dokos
for suggesting this solution.
2012-08-30 07:03:36 +02:00
Bastien Guerry d2b807b1a6 Merge branch 'maint' of orgmode.org:org-mode into maint 2012-08-28 13:39:09 +02:00
Nicolas Goaziou d58d40f0c8 Externalize filling and comments initializers
* lisp/org.el (org-mode): Call external initalizers.  Now both filling
  code and comments code have their own independant part in org.el.
(org-setup-filling): Renamed from `org-set-autofill-regexps'.
(org-setup-comments-handling): New function.
2012-08-28 13:27:58 +02:00
Nicolas Goaziou 11f119776a Improve filling
* lisp/org.el (org-fill-paragraph): Refine filling in comments and in
  paragraphs.  Allow commented blank lines.  Take into consideration
  the indentation of the second line of the paragraph being filled.
(org-comment-or-uncomment-region): Rewrite function.  Now comment
region at a fixed column: the minimal indentation of the region.
(org-fill-context-prefix): Rename function into
`org-adaptive-fill-function'. Also, In a paragraph, choose the same
prefix as the current line.
2012-08-28 13:12:09 +02:00
Bastien Guerry a9b8778b0c Code clean-up: rename some agenda internals.
* org.el (org-agenda-prepare-buffers): Rename from
`org-prepare-agenda-buffers'.
(org-match-sparse-tree, org-map-entries): Use the new names.

* org-agenda.el (org-agenda-prepare-window): Rename from
`org-prepare-agenda-window'.
(org-agenda-prepare): Rename from `org-prepare-agenda'.
(org-agenda-run-series, org-agenda-prepare, org-timeline)
(org-agenda-list, org-search-view, org-todo-list)
(org-tags-view, org-agenda-list-stuck-projects, org-diary)
(org-agenda-to-appt): Use the new names.

* org-mobile.el (org-mobile-create-index-file): Ditto.

* org-icalendar.el (org-export-icalendar): Ditto.

* org-clock.el (org-dblock-write:clocktable)
(org-dblock-write:clocktable): Ditto.

* org2rem.el (org2rem): Ditto.
2012-08-28 13:11:12 +02:00
Nicolas Goaziou 805a9f019d Add missing colon to #+INCLUDE in structure template
* lisp/org.el (org-structure-template-alist): Add missing colon to
  #+INCLUDE.
2012-08-27 09:11:01 +02:00
Nicolas Goaziou 664132667b Fix org-backward-element with point on first element in section
* lisp/org.el (org-backward-element): When called at the beginning of
  first element in section, the function shouldn't return an error but
  move point to headline or point-min instead.
* testing/lisp/test-org.el: Add test.
2012-08-26 23:44:51 +02:00
Bastien Guerry 290a035bfc Fix compiler warning. 2012-08-26 23:43:30 +02:00
Nicolas Goaziou 90f6324dbf Add missing part from commit b4604d2833
* lisp/org.el (org-fill-context-prefix): Fix incorrect output when
  called at the beginning of a plain list with an affiliated keyword.
(org-fill-paragraph): Remove useless variable.
2012-08-25 15:41:01 +02:00
Nicolas Goaziou 53334042b5 Fix bug in comment-dwin when at a keyword
* lisp/org.el (org-mode): Set back comment-start-skip so comment-dwin
  can tell a keyword from a comment.
* testing/lisp/test-org.el: Add test.
2012-08-24 21:58:48 +02:00
Nicolas Goaziou 82007c40da Fix comment auto-filling
* lisp/org.el (org-set-autofill-regexps): Install new comment line
  break function.
(org-comment-line-break-function): New function.
(org-mode): Remove unnecessary line.
2012-08-24 14:57:00 +02:00
Bastien Guerry 5e7ffbe1d4 Merge branch 'master' of orgmode.org:org-mode 2012-08-24 14:23:07 +02:00
Bastien Guerry bfe3e2102f org.el: Fix the contextual check against a function
* org.el (org-contextualize-validate-key): Fix the check
against a function.
2012-08-24 14:22:45 +02:00
Nicolas Goaziou 8a97c601a1 Do not fill verse blocks contents
* lisp/org.el (org-fill-context-prefix, org-fill-paragraph): Do not
  fill verse blocks contents.  Verse blocks can be used to format
  free-form poetry, so filling has to be done manually.
* testing/lisp/test-org.el: Remove unnecessary tests.
2012-08-24 12:58:43 +02:00
Nicolas Goaziou b1223be34d Auto-filling must not break current paragraph
* lisp/org.el (org-fill-paragraph-separate-nobreak-p): New function.
(org-set-autofill-regexps): Introduce new predicate.
(org-fill-item-nobreak-p): Remove function.
2012-08-24 12:58:42 +02:00
Bastien Guerry 10dbdf5fc2 Update the handling of agenda/capture keys contextualization.
* org.el (org-contextualize-keys): Rename from
`org-contextualize-agenda-or-capture'.  Fix normalization to
handle empty key replacement string.
(org-contextualize-validate-key): Rename from
`org-contexts-validate'.  Allow checking against a custom
function.

* org-agenda.el (org-agenda-custom-commands-contexts): Update.
(org-agenda): Use `org-contextualize-keys'.

* org-capture.el (org-capture-templates-contexts): Ditto.

* org.texi (Templates in contexts, Setting Options): Update to
reflect changes in how contexts options are processed.
2012-08-24 12:18:05 +02:00
Bastien Guerry 9d73d6d680 org.el (org-contextualize-agenda-or-capture): Normalize contexts
* org.el (org-contextualize-agenda-or-capture): Normalize
contexts.
2012-08-24 12:18:02 +02:00
Bastien Guerry 6c94ea0518 Implement key replacement depending on the contexts.
* org.el (org-contextualize-agenda-or-capture): Handle key
replacement depending on the contexts.

* org-capture.el (org-capture-templates-contexts): Allow to
use the context as a way to replace one capture template by
another one.

* org-agenda.el (org-agenda-custom-commands-contexts): Allow
to use the context as a way to replace one agenda custom
command by another one.

* org.texi (Templates in contexts): Document the new structure
of the variables `org-agenda-custom-commands-contexts' and
`org-capture-templates-contexts'.

In the setup below, X is not a real capture template, it is just
an alias to templates A and B in .txt and .el files.  A and B are
deactivated by default in all files.

(setq org-capture-templates
      '(("X" "Nothing but an alias")
	("A" "AAAA" entry (file+headline [...]))
	("B" "BBBB" entry (file+headline [...]))))

(setq org-capture-templates-contexts
      '(("A" "A" ((not-in-file . ".*")))
	("B" "B" ((not-in-file . ".*")))
	("X" "A" ((in-file . "\\.txt")))
	("X" "B" ((in-file . "\\.el")))))

Thanks to Carsten for suggesting this "key-replacement" idea!
2012-08-24 12:17:58 +02:00
Bastien Guerry d378c7b41b Implement context filtering for agenda commands and capture templates.
* org.el (org-contextualize-agenda-or-capture)
(org-rule-validate): New functions, implement context
filtering for agenda commands and capture templates.

* org-agenda.el (org-agenda-custom-commands-contexts): New
option.
(org-agenda): Use it.

* org-capture.el (org-capture-templates-contexts): New option.
(org-capture-select-template): Use it.

* org.texi (Templates in contexts): Document the new option
`org-capture-templates-contexts'.
(Storing searches): Document the new option
`org-agenda-custom-commands-contexts'.

This idea comes from Sylvain Rousseau, who implemented a similar
feature with org-context.el: https://github.com/thisirs/org-context

This implementation is a bit simpler and more general.  Simpler
because it relies on existing templates, no need to define other
contextual ones.  More general because contexts can be defined
wrt files and modes.

Thanks *very much* to Sylvain for paving the way -- certainly a
great addition to Org.
2012-08-23 11:08:47 +02:00
Bastien Guerry 841d949d9c org.el: Delete `org-beginning-of-defun' and `org-end-of-defun'
* org.el (org-beginning-of-defun, org-end-of-defun): Delete.
(org-mode): Set `beginning-of-defun-function' and
`end-of-defun-function' directly.
2012-08-22 19:02:39 +02:00
Bastien Guerry 53c230a9f6 org.el: Fix bug: include links abbreviations when completing
* org.el (org-insert-link): Fix bug: include links
abbreviations when completing.
2012-08-22 12:24:14 +02:00
Bastien Guerry 655c7fb360 org.el: Small docstring clean-up
* org.el (org-ds-keyword-length, org-make-tags-matcher):
Docstring clean-up.
2012-08-22 02:39:18 +02:00
Bastien Guerry 0782bea46e org.el: Add "#+MATHJAX" and "#+INFOJS_OPT" to the list of keywords for completion
* org.el (org-options-keywords): Add "#+MATHJAX" and
"#+INFOJS_OPT" to the list of keywords for completion.
2012-08-21 12:34:02 +02:00
Bastien Guerry 4eb8b05a5b org.el (org-src-prevent-auto-filling): Remove unused and useless option
* org.el (org-src-prevent-auto-filling): Remove unused and
useless option.
2012-08-20 19:22:26 +02:00
Bastien Guerry d6db2566d9 org.el: Autoload `org-element-at-point' instead of requiring org-element it in some commands
* org.el (org-element-at-point): Autoload.
(org-element-up): Remove useless declaration.
(org-fill-context-prefix, org-fill-paragraph)
(org-mark-element, org-narrow-to-element)
(org-transpose-element, org-unindent-buffer): Do not require
org-element.
2012-08-20 13:31:22 +02:00
Bastien Guerry dd7b0aa171 org.el (org-fill-paragraph): Require org-element
* org.el (org-fill-paragraph): Require org-element.
2012-08-20 08:35:54 +02:00
Bastien Guerry b4df37076d Don't use :version "24.3" until Emacs 24.3 is released and/or Org sync'ed in Emacs 2012-08-20 07:49:16 +02:00
Bastien Guerry 8393a76f78 Always use the compatibility function `org-region-active-p'
* org.el (org-create-math-formula): Use the compatibility
function `org-region-active-p'.

* org-odt.el (org-export-as-odf): Ditto.

* ob.el (org-babel-demarcate-block): Ditto.
2012-08-20 05:45:25 +02:00
Bastien Guerry 58a6d823ee org.el: Fix bug in `org-mark-subtree'
* org.el (org-mark-subtree): Maybe call `org-mark-element'
interactively.
(org-mark-element): Only mark further elements when called
interactively.

For example, M-x org-export RET calls `org-mark-subtree' and
should not mark the further element when an element is already
marked.

Thanks To Bernt Hansen for reporting a bug related to this.
2012-08-20 05:40:25 +02:00
Bastien Guerry 7d117bd981 org.el: Add (require 'org-element) for more org-element commands
* org.el (org-mark-element, org-narrow-to-element)
(org-transpose-element): Require org-element.
2012-08-20 04:36:38 +02:00
Bastien Guerry de015ad055 Merge branch 'master' of orgmode.org:org-mode
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2012-08-19 16:57:28 +02:00
Bastien Guerry ad35e2ac6c org.el: Don't activate a plain link when it is part of a bracketed link
* org.el (org-activate-plain-links): Don't activate a plain
link when it is part of a bracketed link, unless bracketed
links are not enlisted in `org-activate-links'.
(org-open-at-point): Don't consider the text immediately after
a bracketed link is part of a plain link.

This fixes a bug when fontifying [[http://orgmode.org][Org]]Mode --
where "Mode" should not be fontified, because it is not part of the
bracketed link.

Note that there was another related bug: C-c C-o on "Mode" used to
try opening a plain link.  Also fixed in this commit.
2012-08-19 16:56:52 +02:00
Nicolas Goaziou 2fd696716a Forgot a `save-excursion'
* lisp/org.el (org-fill-paragraph): Add a `save-excursion' to avoid
  returning funny results.
2012-08-19 15:51:55 +02:00
Nicolas Goaziou bb895827c2 Try to be smarter when filling paragraphs in message-mode
* lisp/org.el (org-fill-paragraph): Try not to include message header
  and citation lines in a paragraph when filling it.
2012-08-19 14:46:27 +02:00
Bastien Guerry 655da8d1d3 Remove useless (t nil) sexps at the end of some (cond ...) constructs
* org.el (org-compute-latex-and-specials-regexp)
(org-paste-subtree, org-sort-entries, org-store-link)
(org-open-at-point, org-file-remote-p, org-add-log-setup)
(org-set-tags-to, org-fast-tag-selection)
(org-diary-sexp-entry): Ditto.

* org-agenda.el (org-agenda-get-blocks, org-cmp-priority)
(org-cmp-effort, org-cmp-todo-state, org-cmp-alpha)
(org-cmp-tag, org-cmp-time): Remove useless (t nil) sexps at
the end of (cond ...) constructs.

* org-mobile.el (org-mobile-create-index-file): Ditto.

* org-lparse.el (org-lparse-format-table-row): Ditto.

* org-list.el (org-sort-list): Ditto.

* org-id.el (org-id-get): Ditto.

* org-html.el (org-export-html-preprocess): Ditto.

* org-exp.el (org-default-export-plist)
(org-table-clean-before-export): Ditto.

(t nil) in (cond (...) (...) (t nil)) has no other meaning that to
remind the developer that the cond sexp returns nil in case no condition
is matched.  For several (cond ...) constructs this is obvious from reading
the code.  For others, the reminder might be useful and we leave it.

See the discussion about this on emacs-devel:
http://thread.gmane.org/gmane.emacs.devel/152664
2012-08-19 14:42:54 +02:00
Nicolas Goaziou a3c4e10ac1 Fix filling in in a narrowed buffer
* lisp/org.el (org-fill-paragraph): Fix filling in a narrowed buffer.
(org-fill-context-prefix): Fill prefix doesn't depend on current
narrowing.
* testing/lisp/test-org.el: Add test.
2012-08-19 13:44:00 +02:00
Nicolas Goaziou ecb8fbd7d5 Line with a single hash sign on it is a comment
* lisp/org.el (org-mode): Line with a single hash sign on it is a comment.
2012-08-19 11:07:50 +02:00
Nicolas Goaziou e8046d2f63 Fix comment fontification
* lisp/org.el (org-set-font-lock-defaults): Fix comment fontification.
2012-08-19 10:28:21 +02:00
Bastien Guerry 6309dcae6b org.el: Be more strict about matching option keywords
* org.el (org-options-keywords): Add "TODO".
(org-make-options-regexp): Make the hashtag mandatory for
options and don't allow whitespaces between the hashtag and
the plus sign.
2012-08-19 10:15:59 +02:00
Bastien Guerry f926d9019b org.el: Allow lowercase "#+category" and "#+begin:" dynamic blocks
* org.el (org-refresh-category-properties)
(org-find-dblock, org-dblock-start-re, org-dblock-end-re):
Allow lowercase "#+category" and "#+begin:" dynamic blocks.
2012-08-19 08:48:53 +02:00
Bastien Guerry 788f7da285 org.el: Use case-folding when trying to match clocktables and source blocks contexts
* org.el (org-context): Use case-folding when trying to match
clocktables and source blocks contexts.
2012-08-19 08:26:35 +02:00
Bastien Guerry 90e9aeeff5 org.el: Fix bug in ̀org-fontify-meta-lines-and-blocks-1'
* org.el (org-fontify-meta-lines-and-blocks-1): Correctly
handle metalines with #+results[...]:.
2012-08-18 17:52:02 +02:00
Nicolas Goaziou b1ed817e38 org-element: Use strict comment syntax (no "#+" allowed)
* lisp/org.el (org-fill-paragraph): No need to use
  `org-element-paragraph-separate' in a verse block since blank lines
  only can end a "paragraph".
* lisp/org-element.el (org-element-paragraph-separate): Apply changes
  to comments.
(org-element-paragraph-parser): Correctly find end of paragraphs.
(org-element--current-element): Require colons for Babel calls.
(org-element-center-block-parser, org-element-dynamic-block-parser,
org-element-quote-block-parser, org-element-special-block-parser,
org-element-comment-block-parser, org-element-example-block-parser,
org-element-export-block-parser, org-element-src-block-parser,
org-element-verse-block-parser): Fall-back to paragraph parsing when
incomplete or ill-formed.
* testing/lisp/test-org-element.el: Update tests.
2012-08-17 16:58:26 +02:00
Bastien Guerry d2200b2bed org.el: Allow both "8am Wed" and "Wed 8am" to be parsed correctly
* org.el (org-read-date-analyze): Allow both "8am Wed" and
"Wed 8am" to be parsed correctly with respect to possible
values of `org-read-date-prefer-future'.
(org-read-date-prefer-future): Update docstring to remove the
restriction about inserting only the time.  The user can now
insert the time and the day.
2012-08-16 09:42:55 +02:00
Bastien Guerry 76b0d582b8 Replace Emacs version to "24.2" by "24.3"
This is needed because the current HEAD of the git repository
will not be synced with Emacs 24.2 but more likely with Emacs 24.3.
2012-08-16 09:24:58 +02:00
Bastien Guerry 5ca6e3d703 org.el: Fix bug when adjusting another clock
* org.el (org-fill-context-prefix): Require org-element.
(org-timestamp-change): Fix bug by saving excursion when
adjusting another clock.

Thanks to Steinar Bang for reporting this.
2012-08-15 21:08:45 +02:00
Bastien Guerry 16ea0364a4 Call `buffer-substring-no-properties' and remove `org-no-properties'
* org-colview-xemacs.el (org-columns-display-here): Use
`buffer-substring-no-properties' and remove `org-no-properties'.

* org-colview.el (org-columns-display-here): Ditto.

* org-table.el (org-table-eval-formula): Ditto.

* org.el (org-entry-properties): Ditto.
2012-08-15 09:22:51 +02:00
Bastien Guerry 922772e012 org.el: Only skip comments starting with "# " when storing a note.
* org.el (org-store-log-note): Only skip comments starting
with "# " when storing a note.

Thanks to Thomas Wallrafen for reporting this bug.
2012-08-14 13:09:56 +02:00
Bastien Guerry a4f5e94dc8 org.el: New command ̀org-toggle-custom-properties-visibility'
* org.el (org-custom-properties): New option.
(org-custom-properties-overlays): New variable.
(org-toggle-custom-properties-visibility): New command to
toggle the visibility of custom properties.
(org-check-before-invisible-edit): Also prevent errors when
trying to edit invisible properties.

Thanks to Torsten Wagner for triggering this discussion.
2012-08-14 11:51:09 +02:00
Bastien Guerry 944fd9d651 org.el: Fix bug in `org-fill-template'
* org.el (org-fill-template): Fix bug when filling template for
a key associated to the nil value.

Thanks to Ken Williams for reporting this.
2012-08-13 23:53:18 +02:00
Bastien Guerry d59acaa632 org.el (message-in-body-p): Move declaration up to fix compiler warning
* org.el (message-in-body-p): Move declaration up to fix compiler
warning.
2012-08-13 14:54:20 +02:00
Bastien Guerry bbc1dde930 org.el (org-fill-context-prefix): Fix auto-filling in `message-mode'.
* org.el (org-fill-context-prefix): Fix auto-filling in
`message-mode'.
2012-08-13 09:56:39 +02:00
Bastien Guerry 3496df0b4d org.el: Fix bugs in `org-indent-line' and `org-fill-paragraph'
* org.el (org-fill-paragraph): Correctly fill paragraph in
message-mode.
(org-indent-line): Correctly indent according to mode when
`orgstruct++-mode' is on.
(orgstruct++-mode): Add `fill-prefix' to the variable temporarily
stored in `org-fb-vars'.
2012-08-13 09:18:11 +02:00
Bastien Guerry 396e413f6b org.el: Fix bug about filling message headers and citations
* org.el (org-fill-paragraph): Make a command.  Fix bug about
filling message headers and citations.
2012-08-13 07:15:49 +02:00
Bastien Guerry 7532ace049 org.el: New command `org-redisplay-inline-images'
* org.el (org-redisplay-inline-images): New command.
(org-mode-map): Bind it to C-c C-x C-M-v.

Thanks to Petro for suggesting this.
2012-08-12 23:14:13 +02:00
Bastien Guerry 70dd1196d2 Massive code clean-up.
Delete trailing whitespaces.
Indent all sexps correctly.
Sentences end with double spaces.
2012-08-11 19:10:44 +02:00
Bastien Guerry 777ee3a4f9 org.el (org-emph-re): Tiny docstring formatting fix
* org.el (org-emph-re): Tiny docstring formatting fix.

Replay commit 8fb39a, but correctly this time.
2012-08-11 10:45:16 +02:00
Bastien Guerry ae21293a2e Revert "org.el (org-emph-re): Tiny formatting fix"
This reverts commit 8fb39ad25b.

Er.  Some changed should not be here.
2012-08-11 10:39:23 +02:00
Bastien Guerry 8fb39ad25b org.el (org-emph-re): Tiny formatting fix
* org.el (org-emph-re): Tiny formatting fix.
2012-08-11 09:57:01 +02:00
Bastien Guerry c5bc43133b org.el (orgstruct-setup): Require `org-element'.
* org.el (orgstruct-setup): Require `org-element'.

This prevents an error for git users who use orgstruct-mode
(and orgstruct++-mode) and forget to make autoloads.
2012-08-11 09:15:30 +02:00
Bastien Guerry 73c1948c15 org.el (org-store-link, org-open-at-point): New link type "help"
* org.el (org-store-link, org-open-at-point): New link type
"help".
2012-08-11 09:11:55 +02:00
Bastien Guerry 002b700cb3 Use ̀org-looking-back' instead of `looking-back' to keep compat with XEmacs
* org-clock.el (org-clock-cancel): Use `org-looking-back'.

* org-pcomplete.el (org-thing-at-point): Ditto.

* org.el (org-timestamp-change): Ditto.
2012-08-10 15:02:45 +02:00
Bastien Guerry 4cc6a9db5e org.el (org-priority): Fix docstring
* org.el (org-priority): Fix docstring.
2012-08-10 14:56:36 +02:00
Bastien Guerry ced90464dd org.el (org-entry-get): Don't use `org-flet'
* org.el (org-entry-get): Don't use `org-flet'.
2012-08-08 15:19:24 +02:00
Bastien Guerry d70cf44e7b org.el: Fix compiler warnings. 2012-08-08 14:55:40 +02:00
Bastien Guerry 12101efc2f org.el: Fix names I forgot to change in the previous patch. 2012-08-08 14:48:35 +02:00
Nicolas Goaziou b523a3edf5 Fix tests
* lisp/org-element.el: Update code commets.
* testing/lisp/test-org-element.el: Remove tests for renamed
  navigation and manipulation fuctions.
* testing/lisp/test-org.el: Add tests for renamed navigation and
  manipulation functions.
2012-08-08 13:58:14 +02:00
Bastien Guerry ee483e98f7 Merge branch 'master' of orgmode.org:org-mode 2012-08-08 12:11:57 +02:00
Bastien Guerry 1c595f3e5d org.el: Rename `org-backward/forward-same-level' to `org-backward/forward-heading-same-level'
* org.el (org-forward-heading-same-level): Rename from
`org-forward-same-level'.
(org-backward-heading-same-level): Rename from
`org-backward-same-level'.
2012-08-08 12:11:51 +02:00
Bastien Guerry f485b0a889 Move org-element commands to org.el and rename them.
* org.el (org-forward-element): Rename from
`org-element-forward'.
(org-backward-element): Rename from `org-element-backward'.
(org-up-element): Rename from `org-element-up'.
(org-down-element): Rename from `org-element-down'.
(org-drag-element-backward): Rename from
`org-element-drag-backward'.
(org-drag-element-forward): Rename from
`org-element-drag-forward'.
(org-mark-element): Rename from `org-element-mark-element'.
(org-transpose-element): Rename from `org-element-transpose'.
(org-unindent-buffer): Rename from
`org-element-unindent-buffer'.
(org-mode-map): Update the names of a commands.
Remove useless declarations.

* org-element.el (org-element-forward, org-element-backward)
(org-element-up, org-element-down)
(org-element-drag-backward, org-element-drag-forward)
(org-element-mark-element, org-narrow-to-element)
(org-element-transpose, org-element-unindent-buffer): Move to
org.el.
2012-08-08 11:57:37 +02:00
Nicolas Goaziou 694a858506 Fix bug when marking subtree with point on an inlinetask
* lisp/org.el (org-mark-subtree): Fix bug when marking subtree with
  point on an inlinetask.  Refactor code.
* testing/lisp/test-org.el: Add test.
2012-08-08 11:50:09 +02:00
Bastien Guerry a66f44d123 org.el (org-forward-same-level): Fix typo in docstring.
* org.el (org-forward-same-level): Fix typo in docstring.
2012-08-08 09:32:13 +02:00
Nicolas Goaziou d70f965486 Do not make a special case for inlinetasks when marking a subtree
* lisp/org.el (org-mark-subtree): Do not make a special case for
  inlinetasks when marking a subtree. These are handled by
  `org-element-mark-element'.
* testing/lisp/test-org.el: Add test.
2012-08-07 13:38:32 +02:00
Bastien Guerry 93acc82b96 Fix yet another compiler warning.
Let's go to sleep now.
2012-08-07 02:05:10 +02:00
Bastien Guerry 7efbd4222d org.el: Enhance `C-c @' and use `M-h' for `org-element-mark-element'.
* org.el (org-mode-map): Use `M-h' for
`org-element-mark-element'.
(org-mark-subtree): Allow a numeric prefix argument to move up
into the hierarchy of headlines.

* org-element.el (org-element-up, org-element-down): Autoload.
2012-08-06 20:02:54 +02:00
Bastien Guerry 1276ab3ff1 Fix compiler warnings.
* org.el: Declare functions and don't require org-element.

* org-element.el (org-element-at-point, org-element-forward)
(org-element-backward, org-element-drag-backward)
(org-element-drag-forward, org-element-mark-element)
(org-element-transpose, org-element-unindent-buffer): Autoload.
Require 'org and remove all declarations.
2012-08-06 19:13:43 +02:00
Bastien Guerry 6cd13146c9 org.el: Use variables instead of constants for `org-outline-regexp-bol' and `org-heading-regexp'
* org.el (org-outline-regexp-bol, org-heading-regexp): Use
variables instead of constants.

This fixes compiler warnings when compiling with Emacs 23.4.
2012-08-05 20:03:39 +02:00
Bastien Guerry 4f627f86d7 org.el: Fix bug in ̀org-open-at-point'.
* org.el (org-open-at-point): Only set
`clean-buffer-list-kill-buffer-names' when the feature
'midnight has been loaded.

Thanks to François Allisson for reporting this bug.
2012-08-05 11:40:47 +02:00
Bastien Guerry de271e3751 Introduce a new special property CLOCKSUM_T for today's clocked time.
* org.el (org-special-properties): New special property
CLOCKSUM_T.
(org-entry-properties): Handle the new special property.

* org-colview.el (org-columns): Handle a new special property
CLOCKSUM_T.
(org-agenda-colview-summarize, org-agenda-colview-compute):
Ditto.

* org-clock.el (org-clock-sum-today): New function.
(org-clock-sum): New argument PROPNAME to set a custom text
property instead of :org-clock-minutes.

* org.texi (Special properties, Column attributes)
(Agenda column view): Document the new special property
CLOCKSUM_T.

Thanks to Brian Wood who asked a question wrt this.
2012-08-05 11:12:04 +02:00
Bastien Guerry a27c0d0fcc org.el: Make `org-entry-get' find a property before the first headline.
* org.el (org-get-property-block): Find blocks before the
first headline.
(org-entry-properties): Minor code cleanup.
(org-entry-get, org-entry-get-with-inheritance): Get property
before the first headline.
2012-08-04 23:02:03 +02:00
Abdó Roig-Maranges dd49e0b225 Option to chose directory for latex preview images
* org.el (org-latex-preview-ltxpng-directory): New option.
  (org-preview-latex-fragment): Store LaTeX preview images in
  `org-latex-preview-ltxpng-directory'.

Added an option `org-latex-preview-ltxpng-directory' with a path
where the preview images will be stored.  The default does not
change (small little ltxpng scattered all over the place) but now
the user can chose an absolute path and put all the images on a
single place.

TINYCHANGE
2012-08-03 19:53:43 +02:00
Bastien Guerry 96551f3dd8 Delete `org-make-link' and replace previous occurrences by `concat'.
* org.el (org-make-link): Delete.
(org-store-link, org-insert-link)
(org-file-complete-link): Don't use `org-make-link'.

* org-wl.el (org-wl-store-link-folder)
(org-wl-store-link-message): Ditto.

* org-vm.el (org-vm-store-link): Ditto.

* org-rmail.el (org-rmail-store-link): Ditto.

* org-mhe.el (org-mhe-store-link): Ditto.

* org-mew.el (org-mew-store-link): Ditto.

* org-irc.el (org-irc-erc-store-link): Ditto.

* org-info.el (org-info-store-link): Ditto.

* org-id.el (org-id-store-link): Ditto.

* org-gnus.el (org-gnus-group-link, org-gnus-article-link):
Ditto.

* org-eshell.el (org-eshell-store-link): Ditto.

* org-bbdb.el (org-bbdb-store-link): Ditto.
2012-08-03 19:03:21 +02:00
Bastien Guerry 341042a09e org.el: New option `org-url-hexify-p'.
* org.el (org-url-hexify-p): New option.  When non-nil (the
default), hexify URLs when creating a link.

Thanks to Gustav Wikström who suggested this.
2012-08-03 18:51:43 +02:00
Bastien Guerry 1ac2552273 org.el (org-insert-link): Make sure point is at the beginning of the buffer.
* org.el (org-insert-link): Make sure point is at the
beginning of the buffer.
2012-08-03 16:23:57 +02:00
Bastien Guerry 8fca59f71f org.el: Allow opening multiple shell links.
* org.el (clean-buffer-list-kill-buffer-names): Declare.
(org-open-at-point): Allow opening multiple shell links by
creating a new output buffer for each shell process.  The new
buffer is added to `clean-buffer-list-kill-buffer-names'.

Thanks to Tobias Naehring for this idea.
2012-08-03 15:32:01 +02:00
Bastien Guerry bf36319582 org.el (org-global-tags-completion-table): Fix typo in docstring.
* org.el (org-global-tags-completion-table): Fix typo in docstring.
2012-08-03 14:21:59 +02:00
Bastien Guerry 1e34c5d34f org.el: Fontify links to current buffer when inserting a link.
* org.el (org-link-to-org-use-id): use `org-capture' instead
of `org-remember' in the docstring.
(org-link-fontify-links-to-this-file): New function to fontify
links to the current buffer in `org-stored-links'.
(org-store-link): Small code simplification.
(org-link-prettify): Enclose literal links into <...> instead
of [[...]].
(org-insert-link): Use `org-link-fontify-links-to-this-file'.
Also allow completion over links' descriptions, as well as
links destinations.  When the user uses the description for
completion, don't prompt again for a description.

Thanks to Yagnesh Raghava Yakkala who suggested this.
2012-08-03 14:08:20 +02:00
Bastien Guerry 3977d4b373 org.el (org-log-repeat): Enhance docstring.
* org.el (org-log-repeat): Enhance docstring.
2012-08-03 10:09:11 +02:00
Bastien Guerry ee1d70172d org.el: Don't bind C-<up> and C-<down> to `org-element-backward/forward'.
* org.el (org-mode-map): Don't bind C-<up> and C-<down> to
`org-element-backward/forward' as these functions stops when
there is no element of the same type before/after point.  It
is useful to navigate with `forward/backward-paragraph' with
no stop in most cases.
2012-08-02 18:18:35 +02:00
Bastien Guerry 2201d838a4 Merge branch 'master' of orgmode.org:org-mode 2012-08-02 11:59:34 +02:00
Bastien Guerry aa490ffa04 Small doc fix.
* org.texi (Fast access to TODO states): Fix documentation
about allowed characters for fast todo selection.

* org.el (org-todo-keywords): Ditto.

This fixes this wrong change here:
http://orgmode.org/w/?p=org-mode.git;a=commit;h=b6cb72
2012-08-02 11:59:27 +02:00
Nicolas Goaziou 198b079a64 Auto-fill first paragraph in footnote definitions
* lisp/org.el (org-fill-context-prefix): Auto-fill first paragraph in
  footnote definitions.
2012-08-02 11:25:07 +02:00
Eric Schulte 96d4c5ef0a fix org-check-version undefined error when compiled
Prior to this change compiling org-mode and then running Org-mode
functions from a batch Emacs would throw the following error.

  Symbol's function definition is void: org-check-version

Moving the require of org-compat before the use of this function in
org.el fixes this problem.

* lisp/org.el (org-compat): Require org-compat before we first use one
  of its functions (a macro actually).
2012-08-01 09:53:19 -06:00
Bastien Guerry 6cf637fd1d org.el: Prepare `org-fill-paragraph' for `message-mode'.
* org.el (org-fill-paragraph): Falls back on
`message-fill-paragraph' if required in `message-mode'.
2012-08-01 17:51:55 +02:00
Bastien Guerry a865abb5fe Let's a :APPT_WARNTIME: property override `appt-message-warning-time' in `org-agenda-to-appt'.
* org.el (org-speed-commands-default): New speedy command to
quickly add the :APPT_WARNTIME: property.

* org-agenda.el (org-agenda-to-appt): Use the :APPT_WARNTIME:
property to override `appt-message-warning-time' when adding
an appointment from an entry.

* org.texi (Weekly/daily agenda): Mention APPT_WARNTIME and
its use in `org-agenda-to-appt'.

This feature has been suggested, along with preliminary patches,
by Ivan Kanis.  Thanks!
2012-08-01 16:05:47 +02:00
Bastien Guerry 7024560981 org.el: `org-self-insert-cluster-for-undo' now defaults to nil.
* org.el (org-version): Improve docstring.
(org-self-insert-cluster-for-undo): The default value should
be nil for Emacs >=24.1.  See bug#11774.

See http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11774 for a
discussion about this.
2012-08-01 15:32:15 +02:00
Bastien Guerry 4508dc55e5 org.el (org-fontify-meta-lines-and-blocks-1): Fix previous commit.
* org.el (org-fontify-meta-lines-and-blocks-1): Fix previous
commit.
2012-08-01 14:15:16 +02:00
Nicolas Goaziou a8e00ff0dc Inlined comment syntax is reduced to "#"
* lisp/org.el (org-mode): Define new comment syntax.
(org-fontify-meta-lines-and-blocks-1, org-strip-protective-commas,
org-fill-context-prefix, org-insert-comment,
org-comment-or-uncomment-region): Use new comment syntax.
* lisp/org-element.el (org-element-comment-parser,
  org-element-comment-interpreter, org-element--current-element): Use
  new comment syntax.
* testing/lisp/test-org-element.el: Update tests.
* testing/lisp/test-org.el: Update tests.
2012-08-01 10:47:47 +02:00
Nicolas Goaziou 783fd91e66 When at an item or a footnote definition, fill first paragraph instead
* lisp/org.el (org-fill-paragraph): When at an item or a footnote
  definition, fill first paragraph instead.
* testing/lisp/test-org.el:
2012-07-31 20:49:11 +02:00
Bastien Guerry 64a30f6ecb More flyspell enhancements.
* org.el (org-options-keywords): New constant.
(org-additional-option-like-keywords): Remove duplicates with
keywords in the new constant.
(org-additional-option-like-keywords-for-flyspell): Use the
new constant.
(org-mode-flyspell-verify): Exclude keywords from the new
constant.

* org-pcomplete.el (pcomplete/org-mode/file-option): Use
`org-options-keywords'.
2012-07-31 18:30:54 +02:00
Bastien Guerry 427fee0e4a Fix bug.
* org.el (org-toggle-heading): Bugfix: use
`org-element-mark-element' instead of `org-mark-list'.
2012-07-31 17:51:13 +02:00
Bastien Guerry 5b9cbe9291 Merge branch 'master' of orgmode.org:org-mode 2012-07-31 16:14:33 +02:00
Bastien Guerry eb5631359a Update a few keybindings in org.el and fix a problem in org-element.el.
* org.el: Update a few keybindings.

Use [(control down)] and "\M-}" for `org-element-forward'.
Use [(control up)] and "\M-{ `org-element-backward'.
Use "\C-c\C-^" for `org-element-up'.
Use "\C-c\C-_" for `org-element-down'.
Use "\C-c\C-@" for `org-element-mark-element'.

* org-element.el (org-element-down): Throw an error when the
element has no content.
2012-07-31 16:11:45 +02:00
Nicolas Goaziou fcca4ab8e4 Fix filling when point is at the very end of a paragraph
* lisp/org.el (org-fill-paragraph): Fix filling when point is at the
  very end of a paragraph.
* testing/lisp/test-org.el: Add test.
2012-07-31 15:42:30 +02:00
Nicolas Goaziou 4d00c5bf4d Complete handling of comment syntax
* lisp/org.el (org-mode): Set comments related variables.
(org-insert-comment, org-comment-or-uncomment-region): New functions.
* testing/lisp/test-org.el: Add test.
2012-07-31 13:55:44 +02:00
Eric Schulte 0202adb1c0 Merge branch 'master' of orgmode.org:org-mode 2012-07-30 09:37:08 -06:00
Nicolas Goaziou 5cb9beea9b Add tests about filling and auto-filling
* lisp/org.el (org-fill-context-prefix): Small refactoring.
(org-fill-paragraph): Add code comments.
* testing/lisp/test-org.el: Add tests
2012-07-30 15:25:13 +02:00
Bastien Guerry 4c2c6dba7b Enhance flyspelling.
* org.el (org-additional-option-like-keywords): Add keywords.
(org-additional-option-like-keywords-for-flyspell): New
constant to use with flyspell.
(org-mode-flyspell-verify): Use the dedicated constant and
don't check `org-startup-options'.

Thanks to Bjarte Johansen for bringing this up.
2012-07-30 13:02:48 +02:00
Bastien Guerry 8eb584331a Add punctuation at the end of the first line of docstrings. Code cleanup. 2012-07-30 10:08:15 +02:00
Bastien Guerry 8466541b1d Add keybindings for `org-element-forward', `org-element-backward', `org-element-up' and `org-element-down'.
* org.el (org-mode-map): Add keybindings for
`org-element-forward', `org-element-backward',
`org-element-up' and `org-element-down'.
2012-07-29 19:26:24 +02:00
Bastien Guerry 8e8955089f Fix `org-auto-fill-function'.
* org.el (org-auto-fill-function): Don't call `do-auto-fill'
within (org-let org-fb-vars ...) as `do-auto-fill' should do
the right thing whether orgstruct++-mode is turned on or off.
2012-07-29 10:43:50 +02:00
Bastien Guerry 2959acb18c New option `org-sparse-tree-default-date-type' to specify what is a "date" in `org-sparse-tree'.
* org.el (org-sparse-tree-default-date-type): New option.
(org-ts-type): New variable.
(org-sparse-tree): New argument `type'.  Use the new option
`org-sparse-tree-default-date-type' as the default value for
`type'.  Fix docstring.
(org-re-timestamp): New function.
(org-check-before-date, org-check-after-date)
(org-check-dates-range): Use `org-ts-type' and
`org-re-timestamp' to tell compute the date regexp.

Thanks to John Hendy who triggered this change.
2012-07-29 10:03:57 +02:00
Nicolas Goaziou 94dd2e5243 Rewrite filling functions
* lisp/org.el (org-fill-context-prefix): New function.
(org-fill-paragraph, org-auto-fill-function): Use new function.  Also
handle comments.
(org-adaptive-fill-function): Remove function.
(org-get-local-variables, orgstruct++-mode): Don't store now unused
adaptive-fill* functions.
2012-07-29 08:55:54 +02:00
Bastien Guerry da1830ebe6 Also set `normal-auto-fill-function' when turning on/off orgstruct++-mode.
* org.el (orgstruct++-mode, org-get-local-variables): Also set
`normal-auto-fill-function' when turning on/off orgstruct++-mode.
2012-07-29 08:19:33 +02:00
Nicolas Goaziou b04f9e3268 `org-fill-paragraph' is backed up by Org Element
* lisp/org.el (org-fill-paragraph): Rewrite function using
  `org-element-at-point'.
* lisp/org-element.el (org-element-fill-paragraph): Remove function.
* testing/lisp/test-org-element.el: Remove test.
* testing/lisp/test-org.el: Add test.
2012-07-28 11:47:58 +02:00
Nicolas Goaziou 07eaea26dd `org-planning-or-clock-line-re' is not buffer-local anymore
* lisp/org.el (org-planning-or-clock-line-re): Make it a defconst.
  It's no use to make it a buffer-local variable since variables on
  which it depends are not buffer-local anyway.
2012-07-28 11:47:58 +02:00
Nicolas Goaziou db45fc76b4 Provide default value for `org-drawer-regexp' in non-Org buffers
* lisp/org.el (org-drawer-regexp): Provide default value for
  `org-drawer-regexp' in non-Org buffers.
2012-07-28 11:47:58 +02:00
Bastien Guerry f2cec000e1 org.el (org-mode-map): Rebind `org-insert-all-links' to `C-c C-M-l'.
* org.el (org-mode-map): Rebind `org-insert-all-links' to `C-c C-M-l'.
2012-07-28 11:39:32 +02:00
Bastien Guerry 90f3940e14 New command `org-insert-all-links'.
* org.el (org-insert-all-links): New command.
(org-insert-link): `org-keep-stored-link-after-insertion' is
now checked when the link to insert has been defined,
regardless on how it has been defined.  Also don't read the
description interactively when the `default-description'
parameter was given.
(org-mode-map): Bind `org-insert-all-links' to `C-c C-L'.
2012-07-28 10:44:10 +02:00
Bastien Guerry 3a18eefe9d New command `org-inc-effort' to increment the effort value.
* org.el (org-inc-effort): New command to increment the effort
property.
(org-set-effort): Use it.
(org-mode-map): Bind it to `C-c C-x E'.
(org-speed-commands-default): Use `E' as a speed command for it.
2012-07-28 09:33:19 +02:00
Bastien Guerry e10ff18ffc Fix bug when setting a property where an empty property is already there.
* org.el (org-re-property-keyword): New function.
(org-entry-put): Use it to fix a bug with respect to setting
the value of a property when a property line with no value
already exists.
2012-07-28 09:13:43 +02:00
Bastien Guerry ec73186384 org.el: Adjust clock in other org files correctly.
* org.el (org-timestamp-change): Adjust clock in other org
files correctly.
2012-07-28 08:59:39 +02:00
Achim Gratz 6347bf2f72 Another fix for broken commit abbea59611
* lisp/org.el: Move check for outline-mode-keymap after (require 'outline).
2012-07-28 07:43:23 +02:00
Achim Gratz c2735e7c19 Re-apply (correctly): Move org-element.el from contrib/lisp to lisp/.
* org.el (org-mode-map): Add keybindings to
`org-element-transpose' and `org-narrow-to-element'.
(org-metaup): Fall back on `org-element-drag-backward'.
(org-metadown): Fall back on `org-element-drag-forward'.
Also move chunks of declarations and require statements to
get rid of compiler warnings.

* org-exp-blocks.el (org): Don't require org.  Add declarations.

* org-clock.el (org): Don't require org.

* ob-exp.el (org-list-forbidden-blocks): Add declarations.
2012-07-28 07:06:25 +02:00
Achim Gratz 234df465ad Revert "Move org-element.el from contrib/lisp to lisp/."
This reverts commit abbea59611.
2012-07-28 07:02:21 +02:00
Bastien Guerry f250f6beba New keybinding `C-c C-x C-z' for `org-resolve-clocks'.
* org.el (org-mode-map): Bind `org-resolve-clocks' to `C-c C-x C-z'.

* org.texi (Resolving idle time): Document new keybinding.

Thanks to Joseph Thomas for suggesting this.
2012-07-28 01:23:37 +02:00
Bastien Guerry abbea59611 Move org-element.el from contrib/lisp to lisp/.
* org.el (org-mode-map): Add keybindings to
`org-element-transpose' and `org-narrow-to-element'.
(org-metaup): Fall back on `org-element-drag-backward'.
(org-metadown): Fall back on `org-element-drag-forward'.
Also move chunks of declarations and require statements to
get rid of compiler warnings.

* org-exp-blocks.el (org): Don't require org.  Add declarations.

* org-clock.el (org): Don't require org.

* ob-exp.el (org-list-forbidden-blocks): Add declarations.
2012-07-28 00:55:45 +02:00
Bastien Guerry 8f5b9b2bdf org.el (org-timestamp-change): Don't use the `position'.
* org.el (org-timestamp-change): Don't use the `position'.
2012-07-27 21:59:22 +02:00
Bastien Guerry b86a6f6f34 S-M-<up/down> now adjusts previous/next clock when hit on clock timestamps.
* org.el (org-clock-history, org-clock-adjust-closest): New
variables.
(org-timestamp-change): Maybe adjust the next or previous
clock in `org-clock-history'.
(org-shiftmetaup, org-shiftmetadown): On clock logs, update
the timestamp at point and adjust the next or previous clock
in `org-clock-history', when possible.

* org.texi (Clocking commands): Document the use of
S-M-<up/down> on clock timestamps.

Thanks to Joseph Thomas who suggested this.
2012-07-27 17:29:29 +02:00
Eric Schulte 82e269a472 common lisp should be mentioned as a babel language
Thanks to dunib from #org-mode for pointing this out.

* lisp/org.el (org-babel-load-languages): Common lisp should be
  mentioned as a supported babel language.
2012-07-27 05:18:53 -06:00
Bastien Guerry 0b54bce2c4 org.el: Fix indentation of a property line starting at the beginning of a line.
* org.el (org-indent-line): Fix indentation of a property line
starting at the beginning of a line.
2012-07-26 08:09:22 +02:00
Eric Schulte 63b5f8f2e8 replace flet/labels with org-flet/org-labels
This patch ensure Org-mode will build on all supported versions of
Emacs, after the renaming of the cl macros behind the cl- prefix in the
recent Emacs trunk.

* lisp/org-compat.el (org-flet): Compatibility function now that flet
  has been removed from cl-macs.
  (org-labels): Compatibility function now that labels has been removed
  from cl-macs.
* lisp/ob-R.el (org-compat): Require org-compat.
* lisp/ob-comint.el: Require org-compat.
* lisp/ob-exp.el (org-babel-exp-do-export): Switch to compatibility
  function.
* lisp/ob-gnuplot.el (org-babel-expand-body:gnuplot): Switch to
  compatibility function.
* lisp/ob-lob.el (org-babel-lob-get-info): Switch to compatibility
  function.
  (org-babel-lob-execute): Switch to compatibility function.
* lisp/ob-python.el (org-babel-python-evaluate-session): Switch to
  compatibility function.
* lisp/ob-ref.el (org-babel-ref-index-list): Switch to compatibility
  function.
* lisp/ob-sh.el (org-babel-sh-var-to-string): Switch to compatibility
  function.
* lisp/ob-tangle.el (org-babel-load-file): Switch to compatibility
  function.
  (org-babel-tangle): Switch to compatibility function.
  (org-babel-spec-to-string): Switch to compatibility function.
* lisp/ob.el (org-babel-view-src-block-info): Switch to compatibility
  function.
  (org-babel-execute-src-block): Switch to compatibility function.
  (org-babel-edit-distance): Switch to compatibility function.
  (org-babel-switch-to-session-with-code): Switch to compatibility
  function.
  (org-babel-sha1-hash): Switch to compatibility function.
  (org-babel-balanced-split): Switch to compatibility function.
  (org-babel-join-splits-near-ch): Switch to compatibility function.
  (org-babel-get-rownames): Switch to compatibility function.
  (org-babel-format-result): Switch to compatibility function.
  (org-babel-insert-result): Switch to compatibility function.
  (org-babel-examplize-region): Switch to compatibility function.
  (org-babel-merge-params): Switch to compatibility function.
  (org-babel-noweb-p): Switch to compatibility function.
  (org-babel-expand-noweb-references): Switch to compatibility function.
* lisp/org-bibtex.el (org-bibtex-headline): Switch to compatibility
  function.
  (org-bibtex-fleshout): Switch to compatibility function.
  (org-bibtex-read): Switch to compatibility function.
  (org-bibtex-write): Switch to compatibility function.
* lisp/org-exp-blocks.el (org-export-blocks-preprocess): Switch to
  compatibility function.
* lisp/org-exp.el (org-export-format-source-code-or-example): Switch to
  compatibility function.
* lisp/org-macs.el (org-called-interactively-p): Indentation fix.
* lisp/org-mouse.el (org-mouse-timestamp-today): Switch to compatibility
  function.
  (org-mouse-set-priority): Switch to compatibility function.
  (org-mouse-popup-global-menu): Switch to compatibility function.
  (org-mouse-context-menu): Switch to compatibility function.
* lisp/org-plot.el (org-plot/gnuplot-to-grid-data): Switch to
  compatibility function.
  (org-plot/gnuplot-script): Switch to compatibility function.
* lisp/org.el (org-entry-get): Switch to compatibility function.
  (org-fill-paragraph): Switch to compatibility function.
  (org-auto-fill-function): Switch to compatibility function.
2012-07-25 09:23:57 -06:00
Achim Gratz 6fbc226ca5 further cleanup for org version
* UTILITIES/org-fixup.el (org-make-org-version): Provide feature
  'org-version.
* lisp/org-compat.el (org-check-version): New macro.  Check if
  org-version.el exists and provide autoloads to that. Otherwise check
  if org-fixup.el exists and use it to provide definitions.  Finally
  if nothing worked, complain about a botched installation and provide
  fallback definitions.
* lisp/org.el: Use org-check-version.

This should finally provide the correct behaviour in all supported
use-cases as well as a few corner scenarios that were reported on the
mailing list and allow to always build on Git, ELPA and Emacs Bzr
correctly.  The file org-version.el must be added to the Emacs sources
and should be re-generated each time orgmode Git is synced to Emacs
Bzr (it would be best to automate this).

Note that the internal functions (org-release) and (org-git-release)
are not autoloaded when org-version is not present and become only
available when org.el is loaded.  This should pose no problem since
they are only used by (org-version), which is autoloaded from org.el.
2012-07-15 13:53:53 +02:00
Achim Gratz 6762c7ea60 Clean-up for build system support and a fix for org-version.
* UTILITIES/org-fixup.el: Clean up and add doc strings.
* UTILITIES/org-fixup.el (org-make-autoloads): Add optional arguments
  and implementation for comopiling and force compiling.
* UTILITIES/org-fixup.el (org-make-autoloads-compile,
  org-make-autoloads-compile-force): Convenience definitions with
  pre-selected arguments, avoids complicated quoted on invocation from
  command line.
* UTILITIES/org-fixup.el (org-fixup): Add "-git" to git version when
  run from a bare Git worktree.  Give message instead of returning
  string inside quoted progn for easier tracing.
* lisp/org.el: Fix a subtle error resulting in version functions
  sometimes not being defined and byte-compiling failing.  Always
  compile in fallback definitions into org.elc -- org-fixup either
  provides re-definitions at compile-time or checks org-version.el and
  then the git work tree when run uncompiled.  So the fallback
  definitions will only come into effect when org-fixup is not
  available.
2012-07-14 20:42:18 +02:00
Bastien Guerry b6cb722377 Explicitely says only letters are supported as fast TODO selection keys.
* org.texi (Fast access to TODO states): Explicitely says only
letters are supported as fast TODO selection keys.

* org.el (org-todo-keywords): Ditto.

Thanks to Samuel Wales for pointing at this.
2012-07-14 09:15:50 +02:00
Bastien Guerry dacd62b98d org.el (org-use-fast-todo-selection): Reformat docstring.
* org.el (org-use-fast-todo-selection): Reformat docstring.
2012-07-14 09:06:24 +02:00
Bastien Guerry fea1b82bef Bind `org-clock-in-last' to C-c C-x C-x and ̀org-clock-cancel' to C-c C-x C-q.
* org.el (org-flag-drawer): Add a docstring.
(org-mode-map): Bind ̀org-clock-cancel' to "C-cC-xC-q" and
`org-clock-in-last' to "C-cC-xC-x".  This fixes a bug in the
previous keybinding for `org-clock-in-last', which would
override the one for `org-clock-in'.

* org-clock.el (org-clock-in-last): Prevent errors when there
is no clocking history.
(org-clock-cancel): Fix bug when checking against a clock log
in a folded drawer.

Thanks to Bernt Hansen who reported the problem.
2012-07-14 08:33:48 +02:00
Bastien Guerry ef3d4b5965 org.el: Allow %(my-function) as a specifier in abbreviated links.
* org.el (org-link-expand-abbrev): Implement "%(my-function)"
as a new specifier.  Update the docstring.

* org.texi (Link abbreviations): Illustrate the use of the
"%h" specifier.  Document the new "%(my-function)" specifier.

Thanks to Takaaki ISHIKAWA who came all the way down from Tokyo
to Paris and raised a not-so-distant issue: "could we translate
emails from the mailing list and have a URI for each translated
email?"  See the update in the manual for an answer.
2012-07-13 18:22:45 +02:00
Bastien Guerry 3270f3a0eb org.el (org-startup-options): Fix docstring formatting.
* org.el (org-startup-options): Fix docstring formatting.
2012-07-13 01:17:42 +02:00
Bastien Guerry ce80dee476 org.el (org-use-sub-superscripts): Fix typo in docstring.
* org.el (org-use-sub-superscripts): Fix typo in docstring.
2012-07-13 01:14:32 +02:00
Bastien Guerry 620737757f org.el: Fix bug in `org-refile'.
* org.el (org-refile): Fix bug: prevent looping when calling
`org-set-tags' internally.
2012-07-12 14:29:54 +02:00
Bastien Guerry 3528fc6b42 Implement continuous clocking. Small other improvements. Update documentation.
* org.el (org-mode-map): Add `C-c C-x C-I' as a keybinding for
`org-clock-in-last'.

* org-clock.el (org-clock-continuously): New option.
(org-clock-in): Three universal prefix arguments set
`org-clock-continuously' to `t' temporarily.
(org-clock-in-last): Fix call to `org-clock-select-task' and
support continuous clocking.
(org-clock-out-time): New variable.
(org-clock-out): set `org-clock-out-time' when clocking out.
Small docstring rewriting.
(org-clock-remove-empty-clock-drawer): Fix "invalid search
bound" bug when trying to delete empty logbook drawer.
(org-clock-cancel): If the clock log is gone, send a warning
instead of deleting the region that is supposed to contain it.

* org.texi (Clocking commands): New cindex.
(Clocking commands): Update documentation for `org-clock-in'.
Document `org-clock-in-last'.  Mention `org-clock-out' and
`org-clock-in-last' as commands that can be globally bound.
(Resolving idle time): Document continuous clocking.
2012-07-12 14:04:54 +02:00
Bastien Guerry 9fb530dc48 org.el: Allow moving the region by one line up and down.
* org.el (org-move-line-down, org-move-line-up): Remove.
(org-metaup, org-metadown): When the region is active, move it
up/down by one line, with no regard to the context.
2012-07-12 11:57:05 +02:00
Bastien Guerry 8610790a4e org.el: Update comment section about mapping outline.el commands. 2012-07-12 08:31:20 +02:00
Bastien Guerry be56d706ae org.el: New function `org-indent-region'.
* org.el (org-mode): Set `indent-region-function'.
(org-indent-region): New function.
(org-fill-paragraph): When in a src block, use `indent-region'
to indent the whole source code instead of falling back on
`fill-paragraph', as this function messes up the code.
2012-07-11 20:45:17 +02:00
Bastien Guerry d5aa0e0d73 Rename `org-indent-line-function' to `org-indent-line'.
* org.el (org-mode, org-add-log-setup)
(org-get-property-block, org-entry-put)
(org-property-next-allowed-value, org-return)
(org-indent-line): Rename `org-indent-line-function' to
`org-indent-line'.

* org-timer.el (org-timer-item): Ditto.

* org-table.el (org-table-store-formulas): Ditto.

* org-clock.el (org-clock-in, org-clock-find-position): Ditto.
2012-07-11 19:11:26 +02:00
Bastien Guerry aa3e68facc Two new speed commands.
* org.el (org-speed-commands-default): Two new speed commands.
Use `:' for `org-columns' and ̀#' for `org-toggle-comment'.
2012-07-06 19:58:35 +02:00
Bastien Guerry 2cf1ff345e org.el (org-time-stamp): C-u C-u C-c . inserts a timestamp with no prompt.
* org.el (org-time-stamp): With two universal arguments,
insert an active timestamp with the current time without
prompting the user.

This idea came up on the list, I can't recall who proposed this.
Thanks to him anyway!
2012-07-06 13:16:13 +02:00
Bastien Guerry f801549160 org.el (org-doi-server-url): Update :group.
* org.el (org-doi-server-url): Update :group.

Also move the option.
2012-07-06 08:57:44 +02:00
Bastien Guerry 2bab6b7b6a org.el: New option `org-doi-server-url'.
* org.el (org-doi-server-url): New option.
(org-open-at-point): Use it.

Thanks to Fabrice Pardo for requesting this.
2012-07-05 19:35:46 +02:00
Bastien Guerry a6e4dcfb4d org.el: `org-toggle-heading' skips comments and returns a message when nothing has been done.
* org.el (org-at-comment-p): New function.
(org-toggle-heading): Use `org-at-comment-p' to skip comments.

Thanks to Charlie Millar for raising this issue.
2012-07-05 16:35:56 +02:00
Achim Gratz 7be6352932 Make org-version more robust
* lisp/org.el (org-version): Make org-version more robust, e.g. when
  byte-compiling single files with 'make compile-dirty'.
2012-06-04 08:41:02 +02:00
Bastien Guerry d8d60627d1 org.el: RET should not follow a timestamp when the point is right after it.
* org.el (org-at-timestamp-p): Set ̀org-ts-what' to 'after when
the point is right after the timestamp.  `org-at-timestamp-p'
still returns `t' in this case, as this is more practical.
(org-return): Check against ̀org-ts-what' to verify that point
is really within the timestamp (if any).

Thanks to Nick Dokos for raising this issue.
2012-06-01 15:54:44 +02:00
Achim Gratz b4d827c402 Revert an undesirable change in org-reload.
* lisp/org.el (org-reload): Revert an undesirable change in
  org-reload.  Do not prepend org-dir to babel-files, which prevents
  the files from being found in load-path.
2012-06-01 10:14:04 +02:00
Bastien Guerry 8c91f690a5 org.el (org-return): Follow time-stamp links when point is an a time-stamp.
* org.el (org-return): Follow time-stamp links when point is
an a time-stamp.

Thanks to Samuel Wales for suggesting this.
2012-05-26 00:15:06 +02:00
Nicolas Goaziou 6cddf74250 Merge branch 'maint' 2012-05-25 20:24:58 +02:00
Nicolas Goaziou 8b46521211 Restrict priorities fontification to headlines and inlinetasks
* lisp/org.el (org-font-lock-add-priority-faces): Restrict priorities
  fontification to headlines and inlinetasks.
2012-05-25 20:23:43 +02:00
Mark Shoulson 4e4e161f8f Fix for displaying entities ending in a number
* lisp/org.el (org-fontify-entities): Fix bug: The entities \sup[123] and
  \there4 were not "prettified" when org-pretty-entities was enabled.

TINYCHANGE
2012-05-25 16:56:57 +02:00
Mark Shoulson bde1b2f942 Fix for displaying entities ending in a number
* lisp/org.el (org-fontify-entities): Fix bug: The entities \sup[123] and
  \there4 were not "prettified" when org-pretty-entities was enabled.

TINYCHANGE
2012-05-25 16:50:06 +02:00
Bastien Guerry 60587ea91c Bump to version 7.8.11. 2012-05-25 09:36:15 +02:00
Bastien Guerry be8d545092 Allow to open the agenda from a timestamp in a headline.
* org.el (org-open-at-point): Allow to open the agenda from an
active or inactive timestamp in a headline.

TINYCHANGE

Thanks to Ingo Lohmar for this patch.
2012-05-24 11:33:00 +02:00
Bastien Guerry 31aa82c998 Merge branch 'maint' 2012-05-23 12:13:39 +02:00
Bastien Guerry 141d0fd24b org.el (org-scan-tags): Fix bug when building the scanner regexp.
* org.el (org-scan-tags): Fix bug when building the scanner regexp.

Thanks to Mike McLean, who first reported this issue and provided a
reproducible recipe.  Thanks to Laurynas Biveinis and Loris Bennett
who provided complementary feedback on this.
2012-05-23 12:13:21 +02:00
Achim Gratz 40a789ecd1 fix org-reload and add parameters to customize output from org-version
* org.el(org-version): Add optional parameters 'full and 'message
  to optionally return the full version string and echo to message
  area in non-interactive calls.

* org.el(org-submit-bug-report): Add optional parameter 'full to
  call of (org-version) so that the bug report has all version
  information.

* org.el(org-reload): Simplify file-re (orgtbl-*.el files do not
  exist anymore).  Keep org-*.el at the end of the files list.
  Explicitely load org-version.el (since it doesn't provide feature
  'org-version) at the very end, but ignore errors when it doesn't
  exist.  Add parameters 'full and 'message to the call
  of (org-version) so that after reload the full version information
  is displayed in the message area again.
2012-05-19 10:52:09 +02:00
Achim Gratz 595d451280 use org-no-warnings macro for XEmacs compatibility
* lisp/org-agenda.el: Replace with-no-warnings with
  org-no-warnings (defined in org-macs.el).

* lisp/org-bbdb.el: Replace with-no-warnings with
  org-no-warnings (defined in org-macs.el).

* lisp/org-clock.el: Replace with-no-warnings with
  org-no-warnings (defined in org-macs.el).

* lisp/org.el: Replace with-no-warnings with org-no-warnings (defined
  in org-macs.el).
2012-05-19 09:48:57 +02:00
Achim Gratz b3b7769457 guard invocation of org-mode and suppress warning from byte-compiler
* lisp/org.el: Add with-not-warnings around call of (org-fixup).
2012-05-18 07:45:46 +02:00
Achim Gratz 4f29c630d8 XEmacs compatibility improvements
* lisp/org-compat.el (org-find-library-dir): rename
  org-find-library-name (misleading) and implement with a function
  that exists identically in Emacs/XEmacs.

* UTILITIES/org-fixup.el: change calls to org-find-library-dir.
  Simplify invocations of git, use the same arguments as in targets.mk
  and use only functions that work the same in EMacs and XEmacs.

* lisp/org-exp-blocks.el: change calls to org-find-library-dir.

* lisp/org.el: change calls to org-find-library-dir.  Make require for
  noutline fail silently because it is missing from XEmacs.
2012-05-18 07:45:45 +02:00
Achim Gratz e7d2e4e186 ensure that M-x org-version always delivers something useful
* UTILITIES/org-fixup.el (org-make-org-version): change defconst to
  defun for org-release and org-git-version and close over those
  variables (do not make them global anymore).

* UTILITIES/org-fixup.el (org-fixup): check for org-version.el or try
  to use git to get the version from the worktree (code uses parts of
  the former implementation from org.el).

* lisp/org.el (org-version): use functions instead of global variables
  to get the version strings and remove the defvaralias to
  org-version.  Warn when encountering a mixed installation (org and
  org-install.el should be found in the same directory).

Supported use-cases:

1) Org uninstalled (and possibly uncompiled) from Git or tarball.

1a) No org-version.el or org-install.el exists in worktree.  Partially
supported configuration, org version is determined from git if
possible via UTILITIES/org-fixup.el.  However, Emacs versions
delivered with orgmode will provide autoloads that may or may not work
with that version of org (mixed installation).  If such a situation is
encountered, warn the user.  It can work if the autoloads from the
installation match the ones that would be generated for the worktree,
which generelly is only the case if there is a relatively recent
installation in site-lisp.

1b) Autoload file org-install.el exists in worktree.  Fully supported
configuration, org version is determined from git if possible via
UTILITIES/org-fixup.el.

1c) Both org-version.el or org-install.el exist in worktree.
Recommended configuration for 1), org version is taken from
org-version.el (git never gets invoked).

2) Org installed.  Both org-version.el and org-install.el must exist
in install directory.  Only supported configuration for 2), org
version is taken from org-version.el (git never gets invoked since
UTILITIES/org-fixup.el is not available).

Any unsupported configuration should still yield a version string, but
it will contain "N/A" to alert the user about a botched org
installation.
2012-05-18 07:45:45 +02:00
Achim Gratz 71c1cae4a7 suppress byte-compiler warning about unprefixed global variables from calendar.el
* lisp/org.el: add with-no-warning to defvar for two unprefixed global
  variables from calendar.el (there's nothing else we can do inside
  org until it is fixed in calendar.el).
2012-05-17 11:07:15 +02:00
Bastien Guerry e06fff3e50 Remove a blank line causing a merge conflict with patches I want to apply. 2012-05-17 10:12:08 +02:00
Bastien Guerry c4cad9f80b Fix merge conflict. 2012-05-16 23:46:36 +02:00
Bastien Guerry 9212ff07de Merge branch 'maint'
Conflicts:
	doc/org.texi
	lisp/org.el
2012-05-16 19:21:33 +02:00
Bastien Guerry 429e6aafa6 Bump to version 7.8.10. 2012-05-16 19:20:07 +02:00
Bastien Guerry c50f0c78d8 org.el (org-scan-tags): Correctly match TODO keywords.
* org.el (org-scan-tags): Correctly match TODO keywords.

Thanks to Simon Thum for reporting this.
2012-05-14 17:10:06 +02:00
Bastien Guerry de4001705c Allow setting tags for headlines in the active region.
* org.el (org-set-tags): Allow setting tags for headlines in
the region when `org-loop-over-headlines-in-active-region' is
non-nil.
2012-05-08 15:29:51 +02:00
Bastien Guerry 10aba6b126 New option `org-allow-promoting-top-level-subtree'.
* org.el (org-allow-promoting-top-level-subtree): New option
to allow promoting a top-level subtree.
(org-called-with-limited-levels): New variable, dynamically
bound within the `org-with-limited-levels' macro.
(org-promote): Use the new option to allow promoting a
top-level subtree.

* org-macs.el (org-with-limited-levels): Let-bind
`org-called-interactively-p' to t.

Promoting a top-level subtree can be useful but should not be allowed by
default, as this restructuring is only reversible with M-x undo RET.
2012-05-08 15:19:52 +02:00
Bastien Guerry 6b482c4ed5 org.el: Make sure a file exists before trying to delete it.
* org.el (org-create-formula-image-with-dvipng)
(org-create-formula-image-with-imagemagick): Make sure a file
exists before trying to delete it.

Thanks to Benjamin Motz for this idea.
2012-05-08 14:20:20 +02:00
Bastien Guerry 867c6e38fa org.el (org-scan-tags): Correctly match TODO keywords.
* org.el (org-scan-tags): Correctly match TODO keywords.

Thanks to Simon Thum for reporting this.
2012-05-08 14:10:09 +02:00
Bastien Guerry 035ab39e63 Another fix to `org-indent-line-function'.
* org.el (orgstruct++-mode): Fix docstring.
(org-fill-paragraph): Use the 'justify parameter when falling
back on `fill-paragraph'.
2012-05-07 01:39:49 +02:00
Bastien Guerry 99c97fbffc Fix bug in `org-indent-line-function'.
* org.el (org-indent-line-function): Use `org-let' instead of
`orgstruct++-ignore-org-filling'.
(org-fill-paragraph, org-auto-fill-function): Ditto.

* org-macs.el (orgstruct++-ignore-org-filling): Delete.
2012-05-06 09:37:14 +02:00
Mark E. Shoulson f6745ff2d0 org.el (org-fontify-entities): Hide {} when prettifying entities.
* org.el (org-fontify-entities): Hide {} when prettifying
entities.

TINYCHANGE
2012-05-06 00:43:26 +02:00
Bastien Guerry 587b534544 org.el: Prevent the display of messages when cycling from with a Gnus article buffer.
* org.el (org-cycle-internal-global): Prevent the display of
messages when cycling from with a Gnus article buffer.
2012-05-06 00:42:07 +02:00
Bastien Guerry 73ec767458 org.el (org-indent-line-function): Fix bug.
* org.el (org-indent-line-function): Fix bug.

Don't fall back systematically on `org-fb-vars' to do
the indentation.  Only fall back at then end, when no
modification has been done by indenting a la Org.  In
that case, use `indent-according-to-mode' instead of
using `indent-line-function' to avoid a possible loop.

Thanks to Eric Fraga, Christopher Schmidt and Nicolas
Goaziou who reported problems with this.
2012-05-05 15:32:19 +02:00
Bastien Guerry 75e1c141f8 org.el: Allow `C-u C-c *' to toggle headings in the whole list at point.
* org.el (org-toggle-heading): Allow `C-u C-c *' to mark the
list at point before converting items to headings.  With a
simple universal-argument, set `current-prefix-arg' to 1,
otherwise keep the numeric value.
2012-05-05 10:50:07 +02:00
Bastien Guerry 405eae0497 Fix small typo and rearrange some parentheses. 2012-05-05 09:49:12 +02:00
Bastien Guerry 578a7f5aa5 New option `org-src-prevent-auto-filling' defaulting to nil.
* org.el (org-src-prevent-auto-filling): New option to prevent
auto-filling in src blocks.  This defaults to nil to avoid people
being surprised that no auto-fill occurs in Org buffers where they
use `auto-fill-mode'.
(org-auto-fill-function): Use the new option.

Thanks to Ken Williams for this feature request and to Charles
C. Berry for a preliminary patch for this.
2012-05-05 08:13:43 +02:00
Mark E. Shoulson 61653a2c01 org.el (org-fontify-entities): Hide {} when prettifying entities.
* org.el (org-fontify-entities): Hide {} when prettifying
entities.

TINYCHANGE
2012-05-05 08:07:26 +02:00
Bastien Guerry e7dda77691 Fix `org-set-property'.
* org.el (org-properties-postprocess-alist): Better
customization type.
(org-set-property): Fix the check against
`org-properties-postprocess-alist'.

Thanks to Bill Wishon for testing/spotting this.
2012-05-04 23:58:55 +02:00
Bastien Guerry 805891523c Fix bugs about computing durations in the column view.
* org-colview.el (org-columns-string-to-number): When
computing the values for the colview, match durations and
convert them to HH:MM values.

* org.el (org-duration-string-to-minutes): Match non-round
numbers.  Add a new optional parameter to allow returning the
output as a string.

Thanks to Sébastien for reporting these bugs.
2012-05-01 17:47:13 +02:00
Bastien Guerry 9f3b35a114 Merge branch 'fix-orgstruct' 2012-05-01 15:56:12 +02:00
Bastien Guerry a8c3125a14 Rework `orgstruct++-mode' so that you can turn if off safely.
* org.el (org-auto-fill-fallback-function)
(org-indent-line-fallback-function)
(org-fill-paragraph-fallback-function)
(org-auto-fill-fallback-function)
(org-indent-line-fallback-function)
(org-fill-paragraph-fallback-function): Remove.
(org-fb-vars): New buffer-local variable.
(orgstruct++-mode): Use the fallback variable `org-fb-vars' to
store, use and restore variables if needed.
(org-fill-paragraph): Ignore `orgstruct++-mode' filling
variables when needed.
(org-auto-fill-function, org-indent-line-function): Ditto.

* org-macs.el (orgstruct++-ignore-org-filling): New macro.
2012-05-01 15:55:41 +02:00
Nicolas Goaziou 39fc2c445a Merge branch 'maint' 2012-05-01 15:33:36 +02:00
Nicolas Goaziou eed9350ed9 * lisp/org.el (org-link-expand-abbrev): Fix docstring 2012-05-01 15:32:46 +02:00
Nicolas Goaziou b9d98cf926 * lisp/org.el (org-translate-link): Fix bug 2012-05-01 15:32:04 +02:00
Feng Shu be1727a68f Using 'call-process to launch latex program
* org.el (org-create-formula-image-with-imagemagick): Use 'call-process
to launch latex so that no shell output buffer will be shown when previewing
formulas.
2012-05-01 13:03:43 +02:00
Feng Shu 24dff8f067 spelling fixes
* org.el (org-create-formula-image-with-imagemagick): Fix typo.
2012-05-01 13:03:39 +02:00
Bastien Guerry 491ce5491d org.el (org-set-property): Minor enhancement.
* org.el (org-set-property): Perform the correct check against
`org-properties-postprocess-alist'.

Thanks to Bill Wishon for spotting this.
2012-04-29 18:07:24 +02:00
Bastien Guerry 6732d633af Make (org-version) always returns a string, use it in exporters.
* org.el (org-version): When called non-interactively, insert
the short version string, otherwise send a message with the
complete version string.

* org-odt.el (org-odt-update-meta-file): Use (org-version) and
delegate checking whether `org-version' is known as a variable
there.

* org-html.el (org-export-as-html): Use (org-version).

* org-docbook.el (org-export-as-docbook): Ditto.

* org-latex.el (org-export-latex-make-header): Ditto.
2012-04-29 12:17:00 +02:00
Nicolas Goaziou f9d4069033 Merge branch 'maint' 2012-04-28 22:37:23 +02:00
Nicolas Goaziou 7f2e22339c Fix `org-planning-or-clock-line-re' regexp
* lisp/org.el (org-set-regexps-and-options): Fix
  `org-planning-or-clock-line-re' regexp.  Indeed "\\>" will never
  match since time keywords must end with colons, which are not word
  constituent.
2012-04-28 22:34:36 +02:00
Bastien Guerry 21e24f8f24 org.el: New face `org-list-dt' for definition terms in list.
* org-faces.el (org-list-dt): New face.

* org.el (org-set-font-lock-defaults): Use `org-list-dt' as
the face for definition terms in definition lists.

Thanks to Alex Lane for suggesting this.
2012-04-27 23:26:05 +02:00
Bastien Guerry 30986cd7c5 org.el: Fix bug in `org-fill-paragraph'.
* org.el (org-fill-paragraph): Pass the `justify' argument to
`org-fill-paragraph-fallback-function'.

Thanks to Nick Dokos for spotting this.
2012-04-27 23:08:56 +02:00
Bastien Guerry 580add2f41 org.el (org-eval-in-calendar): Fix docstring to mention the KEEPDATE parameter.
* org.el (org-eval-in-calendar): Fix docstring to mention the
KEEPDATE parameter.

Thanks to Toby Cubitt for spotting this.
2012-04-26 15:41:09 +02:00
Bastien Guerry fe0515e5bf org.el (org-refresh-category-properties): Let-bind `inhibit-read-only' to t.
* org.el (org-refresh-category-properties): Let-bind
`inhibit-read-only' to t.
2012-04-26 14:56:31 +02:00
Bastien Guerry 84a358e381 org.el: Fix bug about (auto-)filling and indenting lines with orgstruct++-mode.
* org.el (org-auto-fill-fallback-function)
(org-indent-line-fallback-function)
(org-fill-paragraph-fallback-function): New variables to store
some fall-back functions when turning `orgstruct++-mode' on.
(orgstruct++-mode): Set the new variables.
(org-indent-line-function, org-fill-paragraph)
(org-auto-fill-function): Use them.

Thanks to Christopher Schmidt for reporting this and to Eric
S Fraga for insisting on it.

This commit creates these fall-back buffer-local variables:

(defvar org-auto-fill-fallback-function nil)
(defvar org-fill-paragraph-fallback-function nil)
(defvar org-indent-line-fallback-function nil)

When `org-auto-fill-function' cannot do anything useful in the
current mode and `org-auto-fill-fallback-function' is set (for
example to `message-do-auto-fill), use the fall-back function
before `do-auto-file'.

When `org-fill-paragraph-function' cannot do anything useful in the
current mode and `org-fill-paragraph-fallback-function' is set (for
example to `message-fill-paragraph'), use the fall-back function
before `fill-paragraph'.

When `org-indent-line-fallback-function' is set, always run it
instead of `org-indent-line-function'.
2012-04-26 12:40:41 +02:00
Bastien Guerry e02226bfc2 org.el (org-read-date): Bugfix.
* org.el (org-read-date): Bugfix: call `org-eval-in-calendar'
with the 'keepdate parameter set to t when setting the cursor
type.

Thanks to Matt Lundin for reporting this and for the solution.
2012-04-26 10:59:16 +02:00
Bastien Guerry fdace895fa Fix bug in `org-insert-link'. 2012-04-23 22:29:54 +02:00
Bastien Guerry 374d1b93c3 org.el (org-goto): Fix docstring and document what C-u does.
* org.el (org-goto): Fix docstring and document what C-u does.

Thanks to John Hendy for pointing this.
2012-04-23 19:08:15 +02:00
Bastien Guerry 1c203d8d19 Match #+name/#+tblname/#+tblfm along with uppercase twins.
* org.el: Use (case-fold-search t).
(org-edit-special, org-ctrl-c-ctrl-c): Ditto.

* org-table.el:
(org-table-store-formulas, org-table-get-stored-formulas)
(org-table-fix-formulas, org-table-edit-formulas)
(org-old-auto-fill-inhibit-regexp, orgtbl-ctrl-c-ctrl-c)
(orgtbl-toggle-comment, org-table-get-remote-range): Ditto.

* org-footnote.el:
(org-footnote-goto-local-insertion-point): Ditto.

* org-exp.el: Ditto.

* org-colview.el:
(org-dblock-write:columnview, org-dblock-write:columnview):
Ditto.

* org-colview-xemacs.el:
(org-dblock-write:columnview): Ditto.

* org-clock.el (org-clocktable-write-default): Ditto.

* org-capture.el (org-capture-place-table-line): Ditto.

* ob.el (org-babel-data-names, org-babel-goto-named-src-block)
(org-babel-src-block-names)
(org-babel-where-is-src-block-result, org-babel-result-end)
(org-babel-where-is-src-block-head)
(org-babel-find-named-result, org-babel-result-names): Ditto.
2012-04-23 12:48:33 +02:00
Bastien Guerry c2a6f5de6e Use :inverse-video t for `org-date-selected'.
* org.el (org-read-date): Set cursor-type to nil in the calendar.

* org-faces.el (org-date-selected): Use inverse video.  Don't explicitely
set bold to nil as it causes `customize-face' to show the weight property
and thus encourage the user to change it.  Warn in the docstring that using
bold might cause problems when displaying the calendar.

Using inverse video for the selected date might be too much for many
people, but with cursor-type set to nil (thanks to Toby Cubitt for this)
and with a light-weight font, we need to really highlight the selected
date -- and a simple color change is not catchy enough IMO.
2012-04-22 07:54:32 +02:00
Andrew Hyatt 44e7ed1a59 Allow archiving to a datetree.
* org-archive.el (org-archive-subtree): Allow archiving to a
datetree.

* org.el (org-archive-location): Ditto.

* org.texi (Moving subtrees): Document the ability to archive
to a datetree.

TINYCHANGE
2012-04-21 17:37:48 +02:00
Nicolas Goaziou 97b0696212 org-list: Fix bugs relative to item indentation
* lisp/org-list.el (org-list-struct-indent): Follow
  `org-list-demote-modify-bullet' specifications for ordered bullets.
(org-list-indent-item-generic, org-indent-item-tree,
org-outdent-item-tree): Fix bug when operating on a region.
(org-outdent-item, org-indent-item): Allow to operate on a region.
* lisp/org.el (org-shiftmetaleft, org-shiftmetaright): Allow to
  operate on a region.
* testing/lisp/test-org-list.el: Add tests.
2012-04-21 12:13:49 +02:00
Zachary Kanfer 4e4a7eb029 org.el (org-read-date-display): Fix bug when displaying the overlay.
* org.el (org-read-date-display): Fix bug when displaying the
overlay.

TINYCHANGE
2012-04-21 12:13:06 +02:00
Bastien Guerry 628431b06f org.el (org-mode): Don't use `buffer-face-mode' by default.
* org.el (org-mode): Don't use `buffer-face-mode' by default.

Still set `org-default' as the face for `buffer-face-mode-face' in
case the user turn `buffer-face-mode' on.
2012-04-21 12:12:54 +02:00
Bastien Guerry cde8a35f54 org.el: New face `org-date-selected' for the selected calendar day.
* org-faces.el (org-date-selected): New face.

* org.el (org-date-ovl): Use `org-date-selected'.

This fixes a problem with bold faces enlarging the calendar window
unduely.  See http://patchwork.newartisans.com/patch/1286/
2012-04-21 12:12:30 +02:00
Bastien Guerry 08bd0b8892 Merge branch 'local-Makefile' into test-makefile-merge 2012-04-21 10:02:28 +02:00
Bastien Guerry d5c0af72cf Use (derived-mode-p 'org-mode) instead of (eq major-mode 'org-mode).
* org.el (org-show-hierarchy-above, org-cycle)
(org-global-cycle, org-files-list, org-store-link)
(org-link-search, org-open-file, org-display-outline-path)
(org-refile-get-location, org-update-all-dblocks)
(org-change-tag-in-region, org-entry-properties)
(org-save-all-org-buffers, org-revert-all-org-buffers)
(org-buffer-list, org-cdlatex-mode)
(org-install-agenda-files-menu, org-end-of-subtree)
(org-speedbar-set-agenda-restriction): Use (derived-mode-p
'org-mode) instead of (eq major-mode 'org-mode).

* org-timer.el (org-timer-set-timer): Ditto.

* org-table.el (orgtbl-mode, org-table-align, orgtbl-mode): Ditto.

* org-src.el (org-edit-src-exit, org-edit-src-code)
(org-edit-fixed-width-region, org-edit-src-exit): Ditto.

* org-remember.el (org-remember-handler): Ditto.

* org-mouse.el (dnd-open-file, org-mouse-insert-item): Ditto.

* org-macs.el (org-get-limited-outline-regexp): Ditto.

* org-lparse.el (org-replace-region-by): Ditto.

* org-latex.el (org-latex-to-pdf-process)
(org-replace-region-by-latex): Ditto.

* org-indent.el (org-indent-indent-buffer): Ditto.

* org-id.el (org-id-store-link, org-id-update-id-locations)
(org-id-store-link): Ditto.

* org-html.el (org-export-html-preprocess)
(org-replace-region-by-html): Ditto.

* org-footnote.el (org-footnote-normalize)
(org-footnote-goto-definition)
(org-footnote-create-definition, org-footnote-normalize): Ditto.

* org-docbook.el (org-replace-region-by-docbook): Ditto.

* org-ctags.el (find-tag): Ditto.

* org-colview.el (org-columns-redo)
(org-columns-display-here, org-columns-edit-value)
(org-columns-redo): Ditto.

* org-colview-xemacs.el (org-columns-redo)
(org-columns-display-here, org-columns-edit-value)
(org-columns-redo): Ditto.

* org-capture.el (org-capture-insert-template-here)
(org-capture, org-capture-finalize)
(org-capture-set-target-location)
(org-capture-insert-template-here): Ditto.

* org-ascii.el (org-replace-region-by-ascii):  Ditto.

* org-archive.el (org-archive-subtree): Ditto.

* org-agenda.el (org-agenda)
(org-agenda-get-restriction-and-command)
(org-agenda-get-some-entry-text, org-search-view)
(org-tags-view, org-agenda-get-day-entries)
(org-agenda-format-item, org-agenda-goto, org-agenda-kill)
(org-agenda-archive-with, org-agenda-switch-to): Ditto.
2012-04-21 00:43:16 +02:00
Dave Abrahams a84fa6eccd org.el: Make links more readable when selecting them for insertion.
* org.el (org-link-prettify): New function to prettify links
while displaying them with `org-insert-link'.
(org-insert-link): Use the new function.

TINYCHANGE
2012-04-21 00:43:02 +02:00
Feng Shu a9d3ce0bcd Allow to use imagemagick for previewing LaTeX fragements.
* org.el (org-latex-create-formula-image-program): New option
to use either dvipng or imagemagick to convert and preview
LaTeX fragments.
(org-preview-latex-fragment, org-format-latex): Handle the new
option.
(org-create-formula-image-with-dvipng): Rename from
`org-create-formula-image'.
(org-create-formula-image-with-imagemagick): New defun to
handle LaTeX preview with imagemagick.
(org-latex-color, org-latex-color-format): New defuns to
handle color conversions.

* org-latex.el (org-latex-to-pdf-process, org-export-as-pdf):
Allow to use imagemagick to convert LaTeX fragments.

* org-html.el (org-export-html-preprocess): Ditto.

* org-exp.el (org-export-with-LaTeX-fragments): Ditto.

* org.texi (@LaTeX{} fragments): Document imagemagick as an
alternative to dvipng.
2012-04-21 00:42:59 +02:00
Bastien Guerry ec921a2a68 Support hourly repeat cookies.
* org.el (org-repeat-re)
(org-clone-subtree-with-time-shift, org-auto-repeat-maybe)
(org-deadline, org-schedule, org-matcher-time)
(org-time-stamp, org-read-date, org-read-date-get-relative)
(org-display-custom-time, org-get-wdays)
(org-time-string-to-absolute, org-closest-date)
(org-timestamp-change): Allow to set hourly repeat cookie.
Send an error when an hourly repeat cookie is set and no hour
is specified in the timestamp.

* org.texi (Repeated tasks): Document repeat cookies for
years, months, weeks, days and hours.

* org-agenda.el (org-agenda-get-timestamps): Match hourly
repeat cookies.

* org-icalendar.el (org-print-icalendar-entries): Handle
hourly repeat cookies.

Thanks a lot to Takafumi Arakaki for this idea and for a preliminary
version of this patch.
2012-04-21 00:42:56 +02:00
Achim Gratz 1751d2d7f9 need to require find-func instead of just declare-function
* lisp/org.el: require find-func and remove declare-function for
       find-library-name, otherwise autoloaded org-version doesn't
       show all info correctly.
2012-04-20 21:04:14 +02:00
Achim Gratz 1e343f7f3b update target descriptions, target "all" now automatically cleans .elc before compilation
* targets.mk: target "all" for lisp directory does now the same as
	"compile", i.e. it cleans .elc file first
	* Makefile: describe all targets and re-arrange the target groups
2012-04-20 21:04:10 +02:00
Achim Gratz cb8600b1ba show installation path or org-install.el to avoid mishaps with multiple installations
* lisp/org.el (org-version): show the full path to org-install.el
	in the version string to avoid confusion if multiple installations
	exist or a previously loaded org-install.el has already defined a
	version string that is now out of date.
2012-04-20 21:04:10 +02:00
Achim Gratz 6da2d089b0 move all version strings into org-install.el
* targets.mk: check for release and git version and record this
	into environment variables for use in sub-make invocations; add
	new target "compile-dirty" that does not invoke "make clean" first
	* doc/Makefile, lisp/Makefile: remove git version check, since
	they are now provided by first-level make
	* lisp/Makefile: add insertion of version information into
	org-install.el, have org-install.el depend on LISPF rather than
	LISPC so that autoloads can be produced without compiling
	everything and remove insertion into org.el and re-compilation
	during install; add new target "compile-dirty" to support
	invocation from first-level make
	* lisp/org.el (org-version): remove determination of version
	information, show "N/A" if the information is not provided via
	org-install.el
2012-04-20 21:04:10 +02:00
Achim Gratz f29ef857ae inject git-describe version into org.el during install
* lisp/org.el (org-git-version): placeholder for recording the Git
	version of org during install
	* lisp/org.el (org-version): initialize local git-version with
	placeholder and fall through using it when org is not installed in
	a Git repository
2012-04-20 21:04:08 +02:00
Bastien Guerry 6f78edd68c Revert "Time specifications: Allow specifying relative times"
This reverts commit 001bcb9645.
2012-04-20 14:23:06 +02:00
Bastien Guerry 9f5699e1aa org.el: New face `org-date-selected' for the selected calendar day.
* org-faces.el (org-date-selected): New face.

* org.el (org-date-ovl): Use `org-date-selected'.

This fixes a problem with bold faces enlarging the calendar window
unduely.  See http://patchwork.newartisans.com/patch/1286/
2012-04-20 12:38:07 +02:00
Ilya Shlyakhter 001bcb9645 Time specifications: Allow specifying relative times
* org.el (org-parse-time-string): Allow strings supported by tags/properties
matcher (eg <now>, <yesterday>, <-7d>) if the time starts with < and ends
with >.  This means that e.g. in the clocktable parameters you can specify
:tstart "<-1w>" :tend "<now>".

TINYCHANGE
2012-04-20 12:20:27 +02:00
Sebastien Vauban 0c43ba2e8d org.el: Add autoload cookie for `org-update-all-dblocks'.
* org.el (org-update-all-dblocks): Autoload function.

TINYCHANGE
2012-04-20 11:46:41 +02:00
Bastien Guerry d1f1c586d5 Fix merge conflict. 2012-04-20 11:43:27 +02:00
Bastien Guerry 7d7144819f org.el (org-mode): Don't use `buffer-face-mode' by default.
* org.el (org-mode): Don't use `buffer-face-mode' by default.

Still set `org-default' as the face for `buffer-face-mode-face' in
case the user turn `buffer-face-mode' on.
2012-04-20 11:41:24 +02:00
Zachary Kanfer 963f5968d3 org.el (org-read-date-display): Fix bug when displaying the overlay.
* org.el (org-read-date-display): Fix bug when displaying the
overlay.

TINYCHANGE
2012-04-20 11:38:27 +02:00
Nicolas Goaziou dbc6fd1ebf Merge branch 'hotfix' 2012-04-18 13:02:09 +02:00
Nicolas Goaziou 7d6309f132 org-list: Fix bugs relative to item indentation
* lisp/org-list.el (org-list-struct-indent): Follow
  `org-list-demote-modify-bullet' specifications for ordered bullets.
(org-list-indent-item-generic, org-indent-item-tree,
org-outdent-item-tree): Fix bug when operating on a region.
(org-outdent-item, org-indent-item): Allow to operate on a region.
* lisp/org.el (org-shiftmetaleft, org-shiftmetaright): Allow to
  operate on a region.
* testing/lisp/test-org-list.el: Add tests.
2012-04-18 13:01:44 +02:00
Bastien Guerry fe5e004e39 Merge branch 'hotfix' 2012-04-11 12:30:55 +02:00
Bastien Guerry 148e8c7724 Bump to version 7.8.09. 2012-04-11 12:30:40 +02:00
Bastien Guerry 4f4b817315 Merge branch 'hotfix' 2012-04-10 18:32:54 +02:00
Bastien Guerry d4ddcbb8b3 Revert "org.el: Include tags from `org-tag-alist' when completing with the TAB key."
This reverts commit 647396464d.
2012-04-10 18:20:04 +02:00
Bastien Guerry 1f80206166 Revert "org.el (org-fast-tag-selection): Fix an bug when listing tags for completion."
This reverts commit dca5af369c.
2012-04-10 18:10:30 +02:00
Bastien Guerry b05cbf73a0 Revert "org.el: Fix bug when gathering tag completion options."
This reverts commit e48d67ed6d.

This commit doesn't take care of tag groups.
2012-04-10 18:04:28 +02:00
Bastien Guerry 6c67af5627 Revert "org.el: Include `org-tag-alist' in the list for tag completions."
This reverts commit acc7a0b2bb.

See http://article.gmane.org/gmane.emacs.orgmode/54406
2012-04-10 18:03:39 +02:00
Bastien Guerry 4a6f76bab8 Merge branch 'hotfix' 2012-04-09 20:48:51 +02:00
Bastien Guerry 6144a83c5d Fix bug in using ̀org-cycle-level' in non-org modes.
* org.el (org-point-at-end-of-empty-headline): Only try to
match ̀org-todo-line-regexp' when the value is non-nil, e.g.
in non-org modes.

Thanks to Jambunathan for bringing this up.
2012-04-09 20:48:43 +02:00
Bastien Guerry a1c3723b05 Merge branch 'hotfix' 2012-04-09 19:20:47 +02:00
Bastien Guerry e6f5c4f1be org.el: Prevent more fontification errors.
* org.el (org-fontify-meta-lines-and-blocks-1): Prevent more
fontification errors.

Thanks to Henning Redestig for reporting this and to Nick Dokos for
digging further.
2012-04-09 19:20:37 +02:00
Bastien Guerry c3cf7b1476 org.el: Exclude tables in src and example blocks.
* org.el (org-table-map-tables): Exclude tables in src and
example blocks.

Thansk to Sebastian for reporting this.
2012-04-09 17:27:32 +02:00
Bastien Guerry 1a8a39d2df Merge branch 'hotfix' 2012-04-09 16:57:19 +02:00
Matt Lundin 275905ed8d Fix hook docstring to reflect renaming of state to org-state.
* lisp/org.el: (org-after-todo-state-change-hook): Fix docstring to
  reflect name change of state to org-state.

The renamed variable can cause user hooks added to
org-after-todo-state-change-hook to break, so it is essential to have
the correct variable name in the docstring.
2012-04-09 16:57:11 +02:00
Mike Sperber 872a6f75c9 Only use `visual-line-mode' if it's bound.
* org.el (org-kill-line): Access `visual-line-mode' only if it's
bound.

TINYCHANGE
2012-04-09 12:46:23 +02:00
Bastien Guerry 187f77a20a org.el: Leave scheduled/deadline lines untouched when filling an adjacent paragraph.
* org.el (org-fill-paragraph): Leave scheduled/deadline lines
untouched when filling an adjacent paragraph.

Thanks to Stuart McLean for suggesting this.
2012-04-04 08:51:20 +02:00
Bastien Guerry ce06791334 Merge branch 'hotfix' 2012-04-04 08:28:45 +02:00
Bastien Guerry fc374109cd org.el: Prevent an error when trying to fontify beyond (point-max).
* org.el (org-fontify-meta-lines-and-blocks-1): Prevent an
error when trying to fontify beyond (point-max).

TINYCHANGE

Thanks to Leo and Henning for reporting this, and to Nick Dokos
for providing the fix.
2012-04-04 08:28:17 +02:00
Bastien Guerry 72d911cfa2 Merge branch 'hotfix'
Conflicts:
	lisp/org-capture.el
	lisp/org-clock.el
2012-04-03 14:09:12 +02:00
Bastien Guerry e48d67ed6d org.el: Fix bug when gathering tag completion options.
* org.el (org-fast-tag-selection): Fix bug when gathering tag
completion options.

TINYCHANGE

Thanks to Noorul Islam K M for the patch.
2012-04-03 14:07:26 +02:00
Bastien Guerry c55604074d Add :version to org.el options. 2012-04-03 13:53:49 +02:00
Bastien Guerry 6c70ecffa7 Fix previous merge: add :version back to `org-use-effective-time'. 2012-04-03 09:48:48 +02:00
Bastien Guerry 2da8a36229 Merge branch 'hotfix'
Conflicts:
	lisp/org.el
2012-04-03 09:46:34 +02:00
Bastien Guerry a8c6802345 org.el (org-use-effective-time): Fix group and type.
* org.el (org-use-effective-time): Fix group and type.
2012-04-03 09:45:42 +02:00
Bastien Guerry bbfd7881be org.el (org-todo): Fix regression: rename `state' to `org-state'.
* org.el (org-todo): Fix regression: rename `state' to
`org-state'.
2012-04-03 09:43:20 +02:00
Bastien Guerry 11a4749353 Merge branch 'hotfix-7.8.06' 2012-04-02 23:05:19 +02:00
Bastien Guerry be07df1a49 org.el (org-todo): Fix regression: rename `state' to `org-state'.
* org.el (org-todo): Fix regression: rename `state' to
`org-state'.
2012-04-02 23:05:06 +02:00
Bastien Guerry c187c512af Merge branch 'hotfix-7.8.06' 2012-04-02 17:58:01 +02:00
Bastien Guerry 60b6f60dfe Bump to version number 7.8.08. 2012-04-02 17:57:49 +02:00
Bastien Guerry a5774431b3 Merge branch 'hotfix-7.8.06' 2012-04-02 16:46:02 +02:00
Bastien Guerry 7ea4efd411 Don't rename `entry' to `org-entry'.
This issue should be handled more carefully.
2012-04-02 16:45:47 +02:00
Bastien Guerry 88b2228297 Merge branch 'hotfix-7.8.06' 2012-04-02 11:27:48 +02:00
Bastien Guerry e74121b0cc Fix bug in `org-todo'.
s/state/org-state.
2012-04-02 11:27:41 +02:00
Bastien Guerry 42d60368a3 Merge branch 'hotfix-7.8.06' 2012-04-02 08:07:57 +02:00
Bastien Guerry 3658686f59 Fix name of dynamically bound variable in org-clock.el. 2012-04-02 08:07:52 +02:00
Bastien Guerry 5651adb133 Merge branch 'hotfix-7.8.06' 2012-04-02 07:52:09 +02:00
Bastien Guerry ccd84a9f63 Fix spelling mistakes.
Thanks to Paul Eggert for spotting these.
2012-04-02 07:51:52 +02:00
Bastien Guerry e3913a2ab5 Merge branch 'hotfix-7.8.06' 2012-04-02 00:53:37 +02:00
Bastien Guerry 5c38bf0ef7 Fix copyright and authors lines. 2012-04-02 00:53:28 +02:00
Bastien Guerry 63fdc375a3 Merge branch 'hotfix-7.8.06'
Conflicts:
	lisp/ob-exp.el
2012-04-01 21:52:01 +02:00
Bastien Guerry 560cbe1c38 org.el: Fix bug in `org-todo'.
* org.el (org-todo): Fix bug in `org-todo'.

Thanks to Moritz Ulrich for this patch.
2012-04-01 20:35:21 +02:00
Bastien Guerry 61106491b3 Merge branch 'hotfix-7.8.06' 2012-03-31 11:25:28 +02:00
Bastien Guerry a3ca0e43e5 Update version to 7.8.07 from hotfix. 2012-03-31 11:24:57 +02:00
Bastien Guerry 22427a66ff org.el (org-read-date): Fix bug from the last merge. 2012-03-31 11:09:25 +02:00
Bastien Guerry 967783215b Merge branch 'hotfix-7.8.06'
Conflicts:
	lisp/org.el
2012-03-31 11:04:40 +02:00
Bastien Guerry dca5af369c org.el (org-fast-tag-selection): Fix an bug when listing tags for completion.
* org.el (org-fast-tag-selection): Fix an bug when listing
tags for completion.

Thanks to Mike McLean for reporting this.
2012-03-31 11:02:52 +02:00
Bastien Guerry bc5b93c6fe Merge branch 'fix-compiler-warnings' into hotfix-7.8.06 2012-03-31 11:01:31 +02:00
Ilya Shlyakhter 39baf67b35 Deleting properties: Fixed bug that left blank lines after deleting properties
* lisp/org.el (org-delete-property-globally): Fixed a bug that left blank line
  in place of the property, instead of removing the line.

TINYCHANGE
2012-03-31 10:36:49 +02:00
Bastien Guerry 6cbf1f4172 Fix global dynamic variables in org-agenda.el and org.el.
Thanks to Martyn Jago for preliminary work on this.
2012-03-30 23:04:55 +02:00
Bastien Guerry 22bfdc41e4 Merge branch 'hotfix-7.8.06' 2012-03-29 12:43:09 +02:00
Bastien Guerry f9cea3ea1e org.el: Use `buffer-face-mode' to remap the 'default face to 'org-default.
* org.el (org-mode): Use `buffer-face-mode' to remap the
'default face to 'org-default.

Thanks to Du Yanning for raising an issue that this patch circumvents.
2012-03-29 12:42:35 +02:00
Bastien Guerry 57f8bbf7ea Merge branch 'hotfix-7.8.06' 2012-03-28 02:05:43 +02:00
Bastien Guerry 8ab92f8b55 Delete trailing whitespaces in core files. 2012-03-28 02:05:36 +02:00
Bastien Guerry d562648f5e Merge branch 'hotfix-7.8.06' 2012-03-28 01:24:09 +02:00
Bastien Guerry 6b83267f9e Fix missing parenthesis. *Blush*. 2012-03-28 01:24:02 +02:00
Bastien Guerry d0ae7ab479 Merge branch 'hotfix-7.8.06' 2012-03-28 01:04:43 +02:00
Bastien Guerry 165cb4610a Fix bug in the menu and a small change to org-beamer.
* org.el: Prevent a bug while defining the menu by requiring
`org-beamer' when necessary.

* org-beamer.el (org-insert-beamer-options-template): Make the
parameter optional since the interactive call defines it.
2012-03-28 01:04:36 +02:00
Bastien Guerry 122f5fd5b5 Merge branch 'hotfix-7.8.06' 2012-03-27 23:51:00 +02:00
Bastien Guerry 8d74c84962 Use `backward-delete-char' instead of `delete-backward-char' to silent compiler.
* org-table.el (orgtbl-self-insert-command): Use
`backward-delete-char' instead of `delete-backward-char' as
this last command gets caught by the compiler which says to
not use it in programs.  `backward-delete-char' is just an
alias for `delete-backward-char' which is internally remapped
to `org-delete-backward-char' for optimization purpose.

* org.el (org-self-insert-command): Ditto.
2012-03-27 23:50:52 +02:00
Bastien Guerry 2a94e997f4 Revert "Use `delete-char' instead of `delete-backward-char'"
This reverts commit 00040e708c.

See this email by Achim Gratz:
http://comments.gmane.org/gmane.emacs.orgmode/52717
2012-03-27 23:24:33 +02:00
Bastien Guerry 3d5a3474ca Merge branch 'hotfix-7.8.06' 2012-03-27 12:31:03 +02:00
Bastien Guerry acc7a0b2bb org.el: Include `org-tag-alist' in the list for tag completions.
* org.el (org-set-tags): Include `org-tag-alist' in the list
of possible completions, even when there are tags defined in
the buffer.

Thanks to Mike McLean for reporting this.
2012-03-27 12:30:57 +02:00
Bastien Guerry c760f9be7e Merge branch 'hotfix-7.8.06' 2012-03-27 12:10:31 +02:00
Bastien Guerry d069301060 org.el: Don't add a column when there is only one tag offered for completion.
* org.el (org-set-tags): Don't add a column when there is only
one tag offered for completion.
2012-03-27 12:10:14 +02:00
Bastien Guerry 647396464d org.el: Include tags from `org-tag-alist' when completing with the TAB key.
* org.el (org-fast-tag-selection): Include tags from
`org-tag-alist' when completing with the TAB key.

Thanks to Mike McLean for reporting this problem.
2012-03-27 12:09:02 +02:00
Bastien Guerry 5c54e1eeda Merge branch 'hotfix-7.8.06' 2012-03-26 22:28:49 +02:00
Shoji Nishimura e92ae2e762 org.el (org-display-inline-images): Honor the ̀beg' parameter.
* org.el (org-display-inline-images): Honor the ̀beg' parameter.

TINYCHANGE
2012-03-26 22:28:16 +02:00
Bastien Guerry 50e766a79b Declare function `org-string-nw-p'. 2012-03-26 17:21:44 +02:00
Bastien Guerry 9a8ba56d9e Merge branch 'hotfix-7.8.06' 2012-03-26 10:28:39 +02:00
Bastien Guerry 76b2943545 Clean up test left over. 2012-03-26 10:27:12 +02:00
Bastien Guerry ec65badbaa Removing duplicate key definitions for 'pcomplete.
See http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9809 for details.
2012-03-23 23:36:14 +01:00
Bastien Guerry d6a79b7ae9 Removing duplicate key definitions for 'pcomplete.
See http://debbugs.gnu.org/cgi/bugreport.cgi?bug=9809 for details.
2012-03-23 23:29:45 +01:00
Bastien Guerry 2bb3a09d53 Merge branch 'hotfix-7.8.06' 2012-03-23 22:44:04 +01:00
Bastien Guerry ce1f368013 org.el (org-read-date): Don't mention `parse-time-weekdays' and `parse-time-months' in the docstring.
* org.el (org-read-date): Don't mention `parse-time-weekdays'
and `parse-time-months' in the docstring.

This problem has been reported by Michael Heerdegen -- see
Emacs bug#11042 against 24.0.94.
2012-03-23 22:43:56 +01:00
Bastien Guerry 3ccefc9fc0 Merge branch 'hotfix-7.8.06' 2012-03-23 13:45:26 +01:00
K.Nagashima 5bb4aabac7 org.el (org-show-subtree): Make interactive.
* org.el (org-show-subtree): Make interactive.

TINYCHANGE
2012-03-23 13:45:03 +01:00
Bastien Guerry eb7f7159c9 Merge branch 'hotfix-7.8.06' 2012-03-23 13:42:29 +01:00
Ilya Shlyakhter 532a1ac40a Tags/properties matcher: Fixed issues with todo-only matches
lisp/org.el (org-scan-tags): Require todo-only argument, and document
that it should be the same one set by make-org-tags-matcher.
Fix documentation to explain that todo-only is really
not-done-todo-only.

(org-make-tags-matcher): If todo part of matcher starts with /!,
matcher now always checks that the TODO keyword is present and
is a not-done state.  This matters e.g. for org-map-entries
which unlike org-scan-tags does not do its own separate todo-only
filtering.  Added docs to explain matcher dependencies.

(org-map-entries): Make sure todo-only is correctly passed from
org-make-tags-matcher to org-scan-tags.

* lisp/org-clock.el: (org-clock-get-table-data): Make sure todo-only
does not leak when it is set by make-org-tags-macher.

* lisp/org-crypt.el: (org-encrypt-entries, org-decrypt-entries): Make
sure todo-only is correctly passed from org-make-tags-matcher to
org-scan-tags.

* contrib/lisp/contacts.el: (org-contacts-filter) : Make sure todo-only
is correctly passed from org-make-tags-matcher to org-scan-tags.
2012-03-23 13:42:06 +01:00
Bastien Guerry 0b74959587 Merge branch 'hotfix-7.8.06' 2012-03-22 01:39:56 +01:00
Bastien Guerry 6ba1d35f64 Don't try to hide drawers within subtrees, it slows cycling down.
* org.el (org-cycle-internal-local): Don't try to hide drawers
within subtrees in this function, it slows cycling down.

This comments the change made in commit
bb28480169

Thanks to Marcel Van der Boom for reporting this.
2012-03-22 01:39:51 +01:00
Bastien Guerry ba51d8e9c8 Merge branch 'hotfix-7.8.06' 2012-03-21 08:27:30 +01:00
Bastien Guerry d83284b728 org.el (org-enforce-todo-dependencies): Fix docstring.
* org.el (org-enforce-todo-dependencies): Fix docstring.

Thanks to Bernt Hansen for spotting this.
2012-03-21 08:27:17 +01:00
Bastien Guerry b8cd4a0973 Merge branch 'hotfix-7.8.06' 2012-03-20 15:50:46 +01:00
Bastien Guerry c73f32c14a org.el: Don't allow creation of parents when using refile as goto.
* org.el (org-refile): Don't allow creation of parents when
using the refile command to go to a headline.

TINYCHANGE
2012-03-20 15:44:44 +01:00
Bastien Guerry 1987412be6 org.el (format-spec): Require 'format-spec.
* org.el (format-spec): Require 'format-spec.
2012-03-20 13:15:27 +01:00
Bastien Guerry 2cc3fd7b0d org.el: Don't declare function `format-spec' as it is already required. 2012-03-20 13:14:34 +01:00
Bastien Guerry fcc7aa5cc9 Merge branch 'hotfix-7.8.06' 2012-03-20 11:50:55 +01:00
Ilya Shlyakhter ca41982ad4 imenu: Added a check that looking-at succeeds before using the match results.
* lisp/org.el (org-imenu-get-tree): Check that looking-at succeeds before using match results.

TINYCHANGE
2012-03-20 11:50:42 +01:00
Carsten Dominik c7a26931f0 Merge branch 'fix-ts-regexp0' 2012-03-20 06:53:20 +01:00
Carsten Dominik 7d84b300f4 Allow date stamps to have no dame of day, in one more place
* lisp/org.el (org-ts-regexp0): Allow time stamps without name of day.
2012-03-20 06:52:53 +01:00
Bastien Guerry 00365ede15 Bump to version 7.8.06. 2012-03-19 22:23:16 +01:00
Bastien Guerry 0496bd3190 Revert "Require one or more spaces (+) between keyword and headline"
This reverts commit e0072f7913.
2012-03-19 22:21:10 +01:00
Bastien Guerry ecd0562c5f Fix the master branch.
I started from the 78ec8e commit then cherry-picked and squashed
commits that have been done in master since then, except the bad
commits that overwrote the tree (in master) with the tree in maint.

This commit also bumps the version number to 7.8.06.

The only "fix" that was made between 78ec8e and the previous commit
is e0072f which has been reported to break stuff.
2012-03-19 22:01:29 +01:00
David Maus e0072f7913 Require one or more spaces (+) between keyword and headline
* org.el (org-scan-tags): Require one or more spaces (+) between
keyword and headline.

Otherwise the re will match a line like:

* TODO@ Foobar

And assumes the @ to be part of the headline.

This fixes a glitch reported by Simon Thum in
<4F53DEF7.8080604@gmx.de>.

> Hi all,
>
> I have found some irritating behaviour, potentially a bug. I have a
> block agenda which goes like:
>
> tags-todo "@home&TODO=\"TODO\"
>
> and it displays a certain org line that reads
>
> **** TODO_ state triggers
>
> Which is just a heading for dealing with TODO state triggers, and I
> appended the _ as I don't want it to be a TODO.
>
> For example, the global TODO list and syntax highlighting does not
> consider it a todo, but C-c a m TODO="TODO" does. TODO="T" does not,
> so it's not very grave.
>
> Most likely, it's simply an inconsistency arising from not having a
> real parser. I just wanted to report it here so it may get fixed.
2012-03-18 18:38:50 +01:00
Bastien Guerry 218e8e444a Update version 7.8.05 2012-03-17 16:41:44 +01:00
Bastien Guerry 560624fcc7 Set version 7.8.04 in maint. 2012-03-17 16:32:53 +01:00
Bastien Guerry 6e306f65ff Fix copyright years in maint. 2012-03-17 16:31:04 +01:00
Bastien Guerry de42649f7b Manually revert maint to e85080.
e85080 is the last correct commit in the maint branch
before releasing 7.8.04.  The 7.8.05 release should be
done from this commit.
2012-03-17 16:28:46 +01:00
Bastien Guerry 73bb18ba37 Manually revert to the Release 7.8.04 tag. 2012-03-17 15:52:24 +01:00
Bastien Guerry 38c5045725 Fix copyright years. 2012-03-17 14:36:25 +01:00
Bastien Guerry 6e534f9c61 Manually revert back to commit e85080.
This fixes a wrong merge that should not have happened:
commit 7e903a merges the master branch into the maint branch,
while we really want to keep the maint branch a bugfix-only
branch.

This commit reverts back the maint branch to its state before
merging the master branch.  From there, we will fix remaining
problems with the maint branch (e.g. copyright issues) then
release this maint branch as Org-mode 7.8.05.
2012-03-17 14:34:01 +01:00
Bastien Guerry d254b05500 Revert "Release 7.8.04"
This reverts commit 78ec8e21b8.
2012-03-17 14:24:27 +01:00
Bastien Guerry 78ec8e21b8 Release 7.8.04 2012-03-16 19:04:04 +00:00
Bastien Guerry 95e318ae06 Merge branch 'maint' 2012-03-16 19:39:36 +01:00
Bastien Guerry ce8b0963db Correctly match source block edit buffers.
* org-src.el (org-src-edit-buffer-p): New function.

* org.el (org-store-link): Use the new function to correctly
match source code buffer.

TINYCHANGE

Thanks to Ilya Shlyakhter for this patch.
2012-03-16 19:24:24 +01:00
Bastien Guerry b66ff157e1 Merge branch 'maint' 2012-03-16 19:19:24 +01:00
Bastien Guerry 150e2db668 org.el: Fix XEmacs compatibility bug when creating images.
* org.el (org-create-formula-image, org-dvipng-color): Fix
XEmacs compatibility bug.

TINYCHANGE

Thanks to Uwe Brauer for this patch.
2012-03-16 18:55:41 +01:00
Carsten Dominik 768c95e18b Merge branch 'master' of orgmode.org:org-mode 2012-03-16 17:33:05 +01:00
Ilya Shlyakhter 2149ad8aea tags search: faster tags matcher by trusting scanner tags
On 3/16/2012 2:10 AM, Nick Dokos wrote:
 > One more thing that you'll need to do is put your patches in attachments
 > of a type that will allow patchwork to snag the patch:

Thanks, I was wondering why they're not showing up.
Here is another try (attached) for the org.el patch.

ilya
>From 95c38b06803aec0787bc2eaab3d0062221390292 Mon Sep 17 00:00:00 2001
From: Ilya Shlyakhter <ilya_shl@alum.mit.edu>
Date: Fri, 16 Mar 2012 00:10:25 -0400
Subject: [PATCH 2/2] Tags/properties matcher: faster matching by trusting
 org-scanner-tags

* lisp/org.el (org-scan-tags): Bind org-trust-scanner-tags to t
while evaluating the matcher, since the matcher is always evaluated
at the current entry.

TINYCHANGE
2012-03-16 17:31:10 +01:00
Ilya Shlyakhter de4ba0d4cd Fixed compiler warnings, including one small bug in ob-lilypond
* lisp/ob-lilypond.el (ly-compile-lilyfile): Fixed misplaced comma in a
quoting expression.

* lisp/org-pcomplete.el: added missing defvar definitions for org vars

* lisp/org-src.el: added declare-function line for org-babel-tangle

* lisp/ob.el (org-scan-tags): protected the variable tags-list with a let
(other) added missing defvar declarations.

TINYCHANGE
2012-03-16 10:48:31 -04:00
Sebastien Vauban 0dcd83d3b2 Add autoload instruction before org-version
* org.el (org-version): Add autoload cookie.

TINYCHANGE
2012-03-14 09:17:43 -04:00
Sebastien Vauban f8efc63236 Add autoload instruction before org-version
* org.el (org-version): Add autoload cookie.

TINYCHANGE
2012-03-08 14:22:42 +01:00
Bastien Guerry dfa317b6f3 Merge branch 'maint' 2012-03-08 14:08:38 +01:00
Bastien Guerry e78cb895ca org.el (org-get-category): Save match data.
* org.el (org-get-category): Save match data.

Thanks to Adam Spiers for spotting this issue.
2012-03-08 14:08:15 +01:00
Bastien Guerry b879590f3b Merge branch 'maint' 2012-03-08 13:50:51 +01:00
Adam Spiers 11e441e85f Fix typos 2012-03-08 13:50:19 +01:00
David Maus 21c7ad67cf Merge branch 'maint'
org-bbdb in master already contained declare-function for external
bbdb-functions.

Conflicts:
	lisp/org-bbdb.el
2012-03-04 20:53:05 +01:00
Bernt Hansen 4a6e02c722 Fix task cloning for repeating tasks
* org.el (org-clone-subtree-with-time-shift): Fix task cloning for
repeating tasks using .+n and ++n syntax

Tasks with repeaters using .+n and ++n syntax retain the repeater in
all of the clones causing duplicate tasks.  These tasks are now
handled the same as the regular repeating task using +n syntax.
2012-03-04 20:20:25 +01:00
Nicolas Goaziou 933c0fa441 Implement numbered cross-references
* lisp/org.el (org-link-search): Search for #+name affiliated keywords
  and invisible targets.
* contrib/lisp/org-element.el (org-element-link-parser): Remove "ref"
  links relative part.
(org-element-target-parser): Move property name from `:raw-value' to
`:value'.
(org-element-recursive-objects): Remove targets from tables.  Cells
are not parsed unless explicitely asked by back-end developer, too
late.  A target wouldn't be noticed in time.  One solution could be to
parse every table, but that's time consumming.
(org-element-object-restrictions): Target are not recursive anymore.
* contrib/lisp/org-export.el (org-export-resolve-fuzzy-link): Find
  elements with a matching "#+name: path" affiliated keyword.
(org-export-get-ordinal): Make special cases for headlines, items,
footnotes definitions and references.
(org-export-resolve-ref-link): Removed function.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-link): Handle
  cross-reference numbers.
(org-e-latex-target): Targets have no contents.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii--describe-links): Ignore
  fuzzy links in link description at the end of the section.
(org-e-ascii-link): Handle cross-reference numbers.
* testing/contrib/lisp/test-org-export.el: Add tests.
* testing/lisp/test-org.el: Add tests.
2012-03-01 14:49:53 +01:00
Eric Schulte 5061de6ee3 integrating ob-scala and ob-io into Org-mode, with code cleanup 2012-02-28 19:45:01 -07:00
Nicolas Goaziou 4fd652d361 Correctly unfold headlines containing an inlinetask
* lisp/org.el (org-cycle-internal-local): Correctly unfold headlines
  containing an inlinetask.

Based on a patch from Marc-Oliver Ihm.
2012-02-19 09:15:19 -07:00
Bastien Guerry d2a0a5378b org.el: Fix missing angle brackets for muse export style.
* org.el (org-structure-template-alist): Fix missing angle
brackets for muse export style.

Thanks to Eric S Fraga for this fix.

Conflicts:

	lisp/org.el
2012-02-19 08:25:59 -07:00
Bastien Guerry d5ca0780f9 Fix typos and spelling mistakes.
Thanks to Paul Eggert for this fixes in Emacs trunk.
2012-02-19 08:23:42 -07:00
David Maus ff2b00b7ac Use `with-selected-window' to select calendar window
* org.el (org-recenter-calendar): Use `with-selected-window' to select
calendar window and save currently selected window and current buffer.

Fixes a bug reported by Thomas Morgan in <mid:87obsxwpvc.fsf@ziiuu.com>.
2012-02-19 08:06:20 -07:00
Toby S. Cubitt 2d4b9c05f2 Fix bug in org-goto `outline-path-completion' interface
* lisp/org.el (org-goto): call org-refile-get-location with NO-EXCLUDE
argument set, otherwise not only are headlines in the current subtree
excluded, but it throws an error if point happens not to be within a
subtree (e.g. at start of buffer).

TINYCHANGE
2012-02-19 08:06:02 -07:00
David Maus 37e35d2bb5 Fix highlighting in sparse-tree
* org.el (org-scan-tags): Fix highlighting in sparse-tree.

`org-get-heading' uses `org-heading-regexp' introduced by
dfcb6faef1 but `org-scan-tags' assumed
match groups of the old regular expression.

This should fix a bug reported by Suvayu Ali in
<20120209032255.431e8197@kuru.dyndns-at-home.com>.
2012-02-19 08:05:57 -07:00
David Maus 79105c48e2 Moved `org-in-clocktable-p' from org-clock.el to org.el
* org-clock.el (org-in-clocktable-p): Moved to org.el.
* org.el (org-in-clocktable-p): New function. Moved from org-clock.el

Fixes a bug reported by suvayu ali in
<CAMXnza2W9VSJ2d-dDmsByNmTVgxnt1Onp=J5S=TsFEi8MOVNtg@mail.gmail.com>.

`org-context' depends on the function but org.el does not depend on
org-clock.el.
2012-02-19 08:05:53 -07:00
Bastien Guerry 2bbb8b99f4 org.el: Fix bug: hide drawers in inline tasks too.
* org.el (org-cycle-internal-local): Fix bug: hide drawers in
inline tasks too.
2012-02-19 08:04:38 -07:00
Bastien Guerry 8c16d85476 org.el: `org-preview-latex-fragment' requires a buffer file name.
* org.el (org-preview-latex-fragment): Throw an error when
called from a non-file buffer.

This take care of this bug:
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3768
2012-02-19 08:04:26 -07:00
Eric Schulte 5a24348778 Merge branch 'origin-maint' 2012-02-18 10:39:04 -07:00
Eric Schulte 19f1bf6bce unified stripping of protective commas -- idempotent org-edit-src-code
* lisp/ob.el (org-babel-strip-protective-commas): Use
  `org-strip-protective-commas'.
* lisp/org-exp.el (org-export-select-backend-specific-text): Use
  `org-strip-protective-commas'.
* lisp/org-src.el (org-edit-src-code): Use
  `org-strip-protective-commas'.
* lisp/org.el (org-strip-protective-commas): Single definition for
  this functionality.
2012-02-18 10:38:32 -07:00
Eric Schulte c67705a708 Merge branch 'origin-maint' 2012-02-18 08:28:50 -07:00
Eric Schulte bf238997a9 Generalize to multiple "prop+" properties.
* lisp/org.el (org-entry-get): Generalize to multiple "prop+" properties.
2012-02-18 08:28:40 -07:00
David Maus eed72c5556 Use `with-selected-window' to select calendar window
* org.el (org-recenter-calendar): Use `with-selected-window' to select
calendar window and save currently selected window and current buffer.

Fixes a bug reported by Thomas Morgan in <mid:87obsxwpvc.fsf@ziiuu.com>.
2012-02-18 11:21:05 +01:00
Eric Schulte a521a7a9a7 Accumulate properties from subtree property drawers.
* lisp/org.el (org-entry-get): Accumulate properties from subtree
  property drawers.
2012-02-15 08:12:35 -07:00
Eric Schulte 51923ff2bc Accumulate properties from subtree property drawers.
* lisp/org.el (org-entry-get): Accumulate properties from subtree
  property drawers.
2012-02-15 08:02:06 -07:00
Toby S. Cubitt 30f06ae2b5 Fix bug in org-goto `outline-path-completion' interface
* lisp/org.el (org-goto): call org-refile-get-location with NO-EXCLUDE
argument set, otherwise not only are headlines in the current subtree
excluded, but it throws an error if point happens not to be within a
subtree (e.g. at start of buffer).

TINYCHANGE
2012-02-13 16:19:06 +01:00
Bastien Guerry 762c3047a8 Merge branch 'add-version-tag' 2012-02-13 16:17:24 +01:00
Bastien Guerry 04971de4b9 Add version tag "24.1" for options introduced since Emacs 23.4 (and <= 24.1)
* org-exp.el (org-export-kill-product-buffer-when-displayed)
(org-export-initial-scope, org-export-date-timestamp-format)
(org-export-with-tasks, org-export-email-info)
(org-export-table-remove-empty-lines): Add version tag.

* org-mobile.el (org-mobile-files-exclude-regexp)
(org-mobile-use-encryption, org-mobile-encryption-tempfile)
(org-mobile-encryption-password, org-mobile-agendas): Add
version tag.

* ob-plantuml.el (org-plantuml-jar-path): Add version tag.

* org.el (org-babel-load-languages, org-clone-delete-id)
(org-log-buffer-setup-hook)
(org-loop-over-headlines-in-active-region)
(org-use-sub-superscripts, org-startup-with-beamer-mode)
(org-startup-with-inline-images, org-ctrl-k-protect-subtree)
(org-catch-invisible-edits)
(org-link-search-must-match-exact-headline)
(org-confirm-shell-link-not-regexp)
(org-confirm-elisp-link-not-regexp, org-log-refile)
(org-refile-use-cache)
(org-refile-active-region-within-subtree)
(org-todo-repeat-to-state, org-get-priority-function)
(org-agenda-jump-prefer-future)
(org-read-date-force-compatible-dates)
(org-use-effective-time)
(org-complete-tags-always-offer-all-agenda-tags)
(org-properties-postprocess-alist)
(org-format-latex-signal-error)
(org-latex-to-mathml-jar-file)
(org-latex-to-mathml-convert-command)
(org-export-latex-default-packages-alist)
(org-hidden-keywords, org-pretty-entities)
(org-pretty-entities-include-sub-superscripts)
(org-src-fontify-natively, org-effort-durations)
(org-speed-command-hook): Add version tag.

* org-html.el (org-export-html-footnote-separator)
(org-export-html-mathjax-options)
(org-export-html-mathjax-template)
(org-export-html-headline-anchor-format)
(org-export-html-preamble-format)
(org-export-html-postamble-format)
(org-export-html-table-align-individual-fields)
(org-export-html-protect-char-alist, org-export-html-divs):
Add version tag.

* org-ctags.el (org-ctags-path-to-ctags)
(org-ctags-open-link-functions)
(org-ctags-new-topic-template): Add version tag.

* ob-exp.el (org-export-babel-evaluate): Add version tag.

* org-beamer.el (org-beamer-use-parts)
(org-beamer-frame-level, org-beamer-frame-default-options)
(org-beamer-column-view-format, org-beamer-themes)
(org-beamer-environments-extra, org-beamer-fragile-re)
(org-beamer-outline-frame-title)
(org-beamer-outline-frame-options): Add version tag.

* org-wl.el (org-wl-link-remove-filter)
(org-wl-shimbun-prefer-web-links)
(org-wl-nntp-prefer-web-links, org-wl-disable-folder-check)
(org-wl-namazu-default-index): Add version tag.

* org-clock.el (org-task-overrun-text)
(org-clocktable-defaults, org-clock-clocktable-formatter)
(org-clock-clocktable-language-setup)
(org-clock-report-include-clocking-task)
(org-clock-resolve-expert): Add version tag.

* ob-lob.el (org-babel-lob-files): Add version tag.

* org-freemind.el (org-freemind-node-css-style): Add version
tag.

* org-archive.el (org-archive-reversed-order)
(org-archive-subtree-add-inherited-tags): Add version tag.

* org-bibtex.el (org-bibtex-autogen-keys, org-bibtex-prefix)
(org-bibtex-treat-headline-as-title)
(org-bibtex-export-arbitrary-fields)
(org-bibtex-key-property, org-bibtex-tags)
(org-bibtex-tags-are-keywords, org-bibtex-no-export-tags)
(org-bibtex-type-property-name): Add version tag.

* org-timer.el (org-timer-default-timer): Add version tag.

* org-taskjuggler.el (org-export-taskjuggler-extension)
(org-export-taskjuggler-project-tag)
(org-export-taskjuggler-resource-tag)
(org-export-taskjuggler-target-version)
(org-export-taskjuggler-default-project-version)
(org-export-taskjuggler-default-project-duration)
(org-export-taskjuggler-default-reports)
(org-export-taskjuggler-default-global-properties): Add
version tag.

* org-habit.el (org-habit-today-glyph)
(org-habit-completed-glyph): Add version tag.

* org-list.el (org-alphabetical-lists)
(org-list-ending-method, org-list-end-regexp)
(org-list-automatic-rules, org-list-use-circular-motion)
(org-list-indent-offset): Add version tag.

* ob-picolisp.el (org-babel-picolisp-cmd): Add version tag.

* org-icalendar.el (org-icalendar-alarm-time)
(org-icalendar-combined-description)
(org-icalendar-honor-noexport-tag)
(org-icalendar-date-time-format): Add version tag.

* org-src.el (org-src-tab-acts-natively): Add version tag.

* org-exp-blocks.el (org-export-blocks-postblock-hook): Add
version tag.

* org-table.el (org-table-exit-follow-field-mode-when-leaving-table)
(org-table-fix-formulas-confirm)
(org-table-duration-custom-format)
(org-table-formula-field-format): Add version tag.

* org-publish.el (org-publish-sitemap-sort-files)
(org-publish-sitemap-sort-folders)
(org-publish-sitemap-sort-ignore-case)
(org-publish-sitemap-date-format)
(org-publish-sitemap-file-entry-format): Add version tag.

* ob-js.el (org-babel-js-cmd): Add version tag.

* org-docbook.el (org-export-docbook-footnote-separator)
(org-export-docbook-xslt-stylesheet): Add version tag.

* org-entities.el (org-entities-ascii-explanatory)
(org-entities-user): Add version tag.

* ob.el (org-confirm-babel-evaluate)
(org-babel-no-eval-on-ctrl-c-ctrl-c): Add version tag.

* ob-tangle.el (org-babel-tangle-lang-exts)
(org-babel-post-tangle-hook, org-babel-pre-tangle-hook)
(org-babel-tangle-body-hook)
(org-babel-tangle-comment-format-beg)
(org-babel-tangle-comment-format-end)
(org-babel-process-comment-text): Add version tag.

* org-gnus.el (org-gnus-nnimap-query-article-no-from-file):
Add version tag.

* org-crypt.el (org-crypt-disable-auto-save): Add version tag.

* org-inlinetask.el (org-inlinetask-default-state): Add
version tag.

* ob-scheme.el (org-babel-scheme-cmd): Add version tag.

* ob-lisp.el (org-babel-lisp-dir-fmt): Add version tag.

* org-attach.el (org-attach-store-link-p): Add version tag.

* org-capture.el (org-capture-templates)
(org-capture-before-finalize-hook)
(org-capture-after-finalize-hook): Add version tag.

* org-agenda.el (org-agenda-skip-deadline-prewarning-if-scheduled)
(org-agenda-time-leading-zero, org-agenda-follow-indirect)
(org-agenda-menu-two-column, org-agenda-menu-show-matcher)
(org-agenda-timegrid-use-ampm)
(org-agenda-remove-timeranges-from-blocks)
(org-agenda-inactive-leader, org-agenda-current-time-string)
(org-agenda-show-current-time-in-grid)
(org-agenda-search-view-force-full-words)
(org-agenda-search-view-always-boolean)
(org-agenda-clock-consistency-checks)
(org-agenda-include-deadlines)
(org-agenda-move-date-from-past-immediately-to-today)
(org-agenda-day-face-function)
(org-agenda-category-icon-alist)
(org-agenda-bulk-custom-functions)
(org-agenda-insert-diary-extract-time): Add version tag.

* org-latex.el (org-export-latex-inputenc-alist)
(org-export-latex-tag-markup)
(org-export-latex-timestamp-inactive-markup)
(org-export-latex-href-format)
(org-export-latex-hyperref-format)
(org-export-latex-footnote-separator)
(org-export-latex-quotes)
(org-export-latex-table-caption-above)
(org-export-latex-listings-w-names)
(org-export-latex-minted-langs)
(org-export-latex-listings-options)
(org-export-latex-minted-options)
(org-latex-default-figure-position, org-export-pdf-logfiles):
Add version tag.

* org-faces.el (org-faces-easy-properties)
(org-fontify-quote-and-verse-blocks, org-cycle-level-faces):
Add version tag.

* ob-ditaa.el (org-ditaa-jar-option): Add version tag.

Thanks to Glenn Morris for reporting this.
2012-02-13 15:49:28 +01:00
Nicolas Goaziou d869973c9d Correctly unfold headlines containing an inlinetask
* lisp/org.el (org-cycle-internal-local): Correctly unfold headlines
  containing an inlinetask.

Based on a patch from Marc-Oliver Ihm.
2012-02-13 11:22:37 +01:00
David Maus 1fd0234a30 Fix highlighting in sparse-tree
* org.el (org-scan-tags): Fix highlighting in sparse-tree.

`org-get-heading' uses `org-heading-regexp' introduced by
dfcb6faef1 but `org-scan-tags' assumed
match groups of the old regular expression.

This should fix a bug reported by Suvayu Ali in
<20120209032255.431e8197@kuru.dyndns-at-home.com>.
2012-02-12 19:38:20 +01:00
David Maus c9a510cf8e Moved `org-in-clocktable-p' from org-clock.el to org.el
* org-clock.el (org-in-clocktable-p): Moved to org.el.
* org.el (org-in-clocktable-p): New function. Moved from org-clock.el

Fixes a bug reported by suvayu ali in
<CAMXnza2W9VSJ2d-dDmsByNmTVgxnt1Onp=J5S=TsFEi8MOVNtg@mail.gmail.com>.

`org-context' depends on the function but org.el does not depend on
org-clock.el.
2012-02-08 20:09:48 +01:00
Nicolas Goaziou 2402d7a192 Merge branch 'maint' 2012-02-04 16:38:02 +01:00
Nicolas Goaziou dc5d61f03a Fix special C-a and C-e behaviour with visual lines
* lisp/org.el (org-beginning-of-line, org-end-of-line): Fix special
  C-a and C-e behaviour with visual lines.
2012-02-04 16:32:34 +01:00
Bastien Guerry fb31480013 org.el: Prevent the display of messages when cycling from with a Gnus article buffer.
* org.el (org-cycle-internal-global): Prevent the display of
messages when cycling from with a Gnus article buffer.
2012-02-02 15:56:30 +01:00
Nicolas Goaziou 0c99c8757d Prevent auto-fill from creating Org line breaks
* lisp/org.el (org-fill-line-break-nobreak-p): New function.
(org-set-autofill-regexps): Add previous function to
`fill-nobreak-predicate'.
2012-01-30 22:58:33 +01:00
Bastien Guerry 9706566dbd org.el: Ensure `org-drawers' doesn't contain duplicates.
* org.el (org-set-regexps-and-options): Ensure `org-drawers'
doesn't contain duplicates.

Thanks to Achim Gratz for spotting this problem.
2012-01-29 10:47:16 +01:00
Bastien Guerry 1c8eb5cc96 org.el: Make `org-metaright' indent drawers and blocks.
* org.el (org-at-drawer-p): Normalize the docstring to match
other `org-at-*-p' docstrings.
(org-indent-block, org-indent-drawer, org-at-block-p): New
functions.
(org-metaright): Use the new functions to indent a drawer or a
block depending on the context.  Also update the docstring.
2012-01-29 00:53:46 +01:00
Bastien Guerry 5bb59a3fdf Let #+DRAWERS append new drawers to `org-drawers', instead of replacing them.
* org.el (org-set-regexps-and-options): Set the value of
`org-drawers' by adding the value of the infile #+DRAWERS
option to that of the existing `org-drawers'.

* org.texi (Drawers): Clearly states that #+DRAWERS will add
drawers to the one originally listed in `org-drawers'.
2012-01-29 00:47:50 +01:00
Bastien Guerry bb28480169 org.el: Fix bug: hide drawers in inline tasks too.
* org.el (org-cycle-internal-local): Fix bug: hide drawers in
inline tasks too.
2012-01-29 00:18:46 +01:00
Bastien Guerry 2c92878470 Merge branch 'maint' 2012-01-28 15:48:17 +01:00
Michael Brand d9ac2ffa37 Link to Org file: regard startup view state
* lisp/org.el (org-open-link-from-string): Regard `reference-buffer'
when setting `org-inhibit-startup'.

When opening a link to another Org file not yet opened (first close it
if opened) before this patch:
1) When point is on the line with the link and the line is not a
   heading then the target file is opened with the target file startup
   view state, e. g. the default OVERVIEW.
2) When point is on the heading of the entry of which the link is part
   of then the target file is opened with "SHOW ALL". But it is
   expected to regard the target file startup view state like case 1).
Note: Only in case 2) `org-open-at-point' uses
`org-offer-links-in-entry' and from there `org-open-link-from-string'.

example current buffer with link:
#+BEGIN_SRC org
  ,* section
  ,  [[file:myfile.org::*mytarget]]
#+END_SRC

example target file myfile.org:
#+BEGIN_SRC org
  ,* mytarget
  ,  text
  ,*** subsection
#+END_SRC
2012-01-28 15:48:04 +01:00
Nicolas Goaziou 0e7f2d6e26 Fix error when using a special C-a at an empty item
* lisp/org.el (org-beginning-of-line): Handle case when there's no
  character after box.
2012-01-27 16:04:59 +01:00
Bastien Guerry 25ddcb9c35 org.el: `org-preview-latex-fragment' requires a buffer file name.
* org.el (org-preview-latex-fragment): Throw an error when
called from a non-file buffer.

This take care of this bug:
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3768
2012-01-26 09:24:51 +01:00
Bastien Guerry 471ddbd14e Improve `org-insert-drawer' and related documentation.
* org.el (org-insert-property-drawer): Not an interactive
command anymore.
(org-insert-drawer): With a prefix argument, insert a property
drawer.  Check for headline within the region before inserting
the drawer.  Don't include special drawers in the completion
table.
(org-mode-map): New keybinding `C-c C-x d' for
`org-insert-drawer'.

* org.texi (Drawers): How to insert/complete drawers.

Thanks to Nicolas Goaziou for the discussion and the patch.
2012-01-26 09:18:10 +01:00
Bastien Guerry c06003863a org.el: Small code cleanup. 2012-01-25 16:55:41 +01:00
Bastien Guerry 01c23e4707 Enhance ̀org-insert-drawer': completion and region support.
* org.el (org-insert-drawer): Support completion over known
drawer names and inserting a drawer around the current region.
2012-01-25 15:25:09 +01:00
Bastien Guerry cf3e3e39f9 New function `org-insert-drawer'.
* org.el (org-insert-drawer): New function.
(org-insert-property-drawer): Use it.

Thanks to Olaf Dietsche for this patch.
2012-01-25 15:05:53 +01:00
Bastien Guerry aee6f9008a New function `org-mark-list' bound to `C-c C-@'.
* org-list.el (org-mark-list): New function.

* org.el (org-mode-map): Add a keybinding for the new function.
2012-01-25 13:52:20 +01:00
Bastien Guerry d1e58716dd org.el: Use `newline-and-indent' when in a property drawer.
* org.el (org-meta-return): Use `newline-and-indent' when in a
property drawer.
2012-01-25 09:59:43 +01:00
Bastien Guerry 624b69345c Docfix for `org-structure-template-alist'.
* org.el (org-structure-template-alist): Fix docstring: the
feature is not experimental anymore.
2012-01-25 07:55:16 +01:00
Bastien Guerry 3fa9b64a67 org.el: Fix missing angle brackets for muse export style.
* org.el (org-structure-template-alist): Fix missing angle
brackets for muse export style.

Thanks to Eric S Fraga for this fix.
2012-01-24 15:42:36 +01:00
Bastien Guerry 9b299af837 Use [...] in the `org-read-date' overlay when inserting inactive timestamps.
* org.el (org-read-date): New parameter `inactive' when
reading for insertion of inactive timestamps.
(org-time-stamp, org-read-date-display): Use the new
parameter.

Thanks to François Pinard for this suggestion.
2012-01-24 15:34:54 +01:00
Nicolas Goaziou c31067803f In an item, special position for C-a is after check-box, if any
* lisp/org.el (org-beginning-of-line): In an item, special position
  for C-a is after check-box, if any.
(org-special-ctrl-a/e): Modify doc-string accordingly.
2012-01-23 22:15:15 +01:00
Konrad Hinsen f2a9d83824 Support for links to IMAP folders in org-vm.el 2012-01-20 17:06:04 +01:00
Bastien Guerry d19a347a8b org.el: Fix bug in done headline fontification.
* org.el (org-set-font-lock-defaults): Fix bug in done
headline fontification.

Thanks to Brian J. Carlson for pointing this error and
a solution.
2012-01-20 16:45:53 +01:00
Bastien Guerry c79c5767d3 org.el: Fix bug in done headline fontification.
* org.el (org-set-font-lock-defaults): Fix bug in done
headline fontification.

Thanks to Brian J. Carlson for pointing this error and
a solution.
2012-01-20 16:44:25 +01:00
Bastien Guerry fd233c0491 org.el (org-return): Act normally when in code blocks.
* org.el (org-return): Act normally when in code blocks.

Thanks to Sébastien Vauban for spotting this.
2012-01-20 16:32:03 +01:00
Bastien Guerry ed1a701cf5 org.el: `org-context' now returns :clocktable and :src-block.
* org.el (org-in-src-block-p): New function.
(org-context): Return new contexts :clocktable and :src-block.
2012-01-20 16:28:04 +01:00
Bastien Guerry d447fe8792 org.el: Make ̀C-u C-c C-q' do the right thing even when point is before the first heading.
* org.el (org-set-tags-command, org-set-tags): Make ̀C-u C-c
C-q' do the right thing even when point is before the first
heading.

Thanks to François Pinard for mentioning this.
2012-01-20 15:44:16 +01:00
Bastien Guerry 3a6c081367 Revert "Honour existing restrictions when regenerating the agenda"
This reverts commit a0a26cddda.
2012-01-19 16:20:12 +01:00
Nicolas Goaziou dad706d565 Merge branch 'maint' 2012-01-12 18:37:36 +01:00
Nicolas Goaziou 8c2f226b4d C-c C-c renumbers ordered lists again
* lisp/org.el (org-ctrl-c-ctrl-c): Fix a naive structure backup.
  Those must be done with `copy-tree'.

Thanks to Anthony Lander for reporting it.
2012-01-12 18:37:08 +01:00
Bastien Guerry a7389dff1e Docfix: using `org-sort' with a double prefix doesn't delete duplicates.
Thanks to Paweł Menich for spotting this.
2012-01-12 16:13:57 +01:00
Bastien Guerry df9e196edb Docfix: using `org-sort' with a double prefix doesn't delete duplicates.
Thanks to Paweł Menich for spotting this.
2012-01-12 16:13:33 +01:00
Bastien Guerry d3f62310ac Use uppercase for `org-structure-template-alist'.
* org.el (org-structure-template-alist): Use uppercase for
keywords.

* org-publish.el (org-publish-index-generate-theindex): Use
uppercase for the #+INCLUDE keyword.
2012-01-12 08:42:16 +01:00
Eric Schulte ce5c5d896b Merge branch 'origin-maint' 2012-01-11 10:15:24 -07:00
Eric Schulte 313b70e139 fix bug in property list updates
* lisp/org.el (org-update-property-plist): Fix bug in property list
  updates.
2012-01-11 10:14:49 -07:00
François Pinard f29e6edb90 org.el: Use `kill-visual-line' in `visual-line-mode'.
* org.el (org-kill-line): Use `kill-visual-line' in
 `visual-line-mode'.

TINYCHANGE
2012-01-11 16:52:12 +01:00
Bernt Hansen a0a26cddda Honour existing restrictions when regenerating the agenda
* lisp/org.el: Honour existing restrictions when regenerating the agenda

Narrowed org buffers are now retained when regenerating the agenda
with org-agenda-redo
2012-01-11 16:42:32 +01:00
Bastien Guerry d6e40fb347 Create an alias for `list-diary-entries-hook'.
* org-agenda.el: New alias for `list-diary-entries-hook'.

* org.el (org-babel-load-languages): Use "LaTeX".
2012-01-10 21:19:44 +01:00
Bastien Guerry fadca5e8eb Fix typos and spelling mistakes.
Thanks to Paul Eggert for this fixes in Emacs trunk.
2012-01-10 11:56:15 +01:00
Eric Schulte f1043a53cc Merge branch 'origin-maint' 2012-01-06 11:20:55 -07:00
Eric Schulte 369fa6d874 only the last value for any specific property is kept
* lisp/org.el (org-update-property-plist): Remove old instances of
  property when adding a new value for property.
2012-01-06 11:20:48 -07:00
Bastien Guerry 3dac42e589 Test commit -- please ignore. 2012-01-05 19:24:33 +01:00
Bastien Guerry e44d2975ff Fix copyright (to 2012) year and Org version (to 7.8.03). 2012-01-03 18:47:01 +01:00
Bastien Guerry 2b3534a81f Release 7.8.03 2012-01-03 08:31:59 +00:00
Bastien Guerry b73075a8d2 Code cleanup up: rename org-on-*-p to org-at-*-p.
Rename `org-on-heading-p' and `org-on-target-p' to
`org-at-heading-p' and `org-at-target-p' to be more
consistent with the org-at-*-p family.

Also define two aliases.
2012-01-02 19:52:35 +01:00
Bastien Guerry 356611bf07 org.el: New function `org-at-drawer-p'.
* org.el (org-at-drawer-p): New function.
(org-end-of-line): Use it.

This function make the behavior of C-e in folded drawers consistent
with C-e in folded subtrees: in this case, point moves to the last
invisible characters of the line, not to the last character.
2012-01-02 19:42:43 +01:00
Bastien Guerry 59bd41a907 More small fixes on `C-u C-c C-c' and checkboxes.
* org.el (org-ctrl-c-ctrl-c): Preserve symmetry when adding
and removing checkboxes with `C-u C-c C-c' on the first item
of a list.  Also, don't reinitialize checkboxes that are
already ticked.

Thanks to Nicolas Goaziou for these fixes.
2011-12-31 18:20:30 +01:00
Bastien Guerry 4752725b64 Revert "Fix problem with `org-ctrl-c-ctrl-c' on the checkbox of the first item."
This reverts commit 4789bb5a79.
2011-12-31 18:13:23 +01:00
Bastien Guerry 4fc96782dd Be a bit more flexible when matching time values in timestamps.
* org.el (org-ts-regexp0, org-ts-regexp1): Also match a time
value with only one digit for the hours.

Thanks to François Pinard for mentioning this.
2011-12-31 17:57:47 +01:00
Bastien Guerry 4789bb5a79 Fix problem with `org-ctrl-c-ctrl-c' on the checkbox of the first item.
* org.el (org-ctrl-c-ctrl-c): Don't make `C-c C-c' special
when ticking the checkbox of the first item.
2011-12-31 17:41:23 +01:00
Nicolas Goaziou 8c19c76d2e org-list: Change behaviour of C-c C-c at a list item with an argument
* lisp/org-list.el (org-list-write-struct): Add an optional argument
  for structure changes happening outside the function.
* lisp/org.el (org-ctrl-c-ctrl-c): Now, C-u C-c C-c on the first item
  of a sub-list should toggle check-box presence of every item in the
  same sub-list.  Also fix check-box insertion on a single item.
2011-12-31 17:35:37 +01:00
Carsten Dominik 4e0fe88f7e Merge branch 'master' of orgmode.org:org-mode 2011-12-31 15:24:14 +01:00
Carsten Dominik 23bdbffb4c Revert "Honour existing restrictions when regenerating the agenda"
This reverts commit 9b250f8e09.
2011-12-31 15:23:54 +01:00
Bastien Guerry e5d5a1e721 org.el: New command `org-check-dates-range'.
* org.el (org-check-dates-range): New command.
(org-sparse-tree): Use it.

Thanks to Marc-Oliver Ihm for discussions and code
about similar features.
2011-12-31 13:20:45 +01:00
Bastien Guerry 72915f1c52 org.el: Honor 'start-level for `org-loop-over-headlines-in-active-region'.
* org.el (org-loop-over-headlines-in-active-region): Fix
docstring.
(org-todo, org-deadline, org-schedule): Honor the 'start-level
value of `org-loop-over-headlines-in-active-region'.
2011-12-31 12:08:54 +01:00
Bastien Guerry 6805c702ec org.el (org-show-context): Complete docstring.
* org.el (org-show-context): Complete docstring.

Thanks to Michael Heerdegen for mentioning this.
2011-12-31 11:47:50 +01:00
Bastien Guerry 64e8b941a8 Merge branch 'master' of orgmode.org:org-mode 2011-12-31 09:30:59 +01:00
Bastien Guerry d1b5b65c47 Merge branch '5-org-todo-loop' 2011-12-31 09:30:13 +01:00
Bastien Guerry a6c95474d3 Merge branch '3-org-archive-loop' 2011-12-31 09:29:28 +01:00
Carsten Dominik 4a0cb0dbd1 Fix bug in mapper function
* lisp/org.el (org-scan-tags): Make sure org-map-continue-from is nil
at each match
2011-12-31 09:26:56 +01:00
Bernt Hansen 9b250f8e09 Honour existing restrictions when regenerating the agenda
* lisp/org.el: Honour existing restrictions when regenerating the agenda

Narrowed org buffers are now retained when regenerating the agenda
with org-agenda-redo
2011-12-31 09:10:05 +01:00
Bastien Guerry dec7efc414 New allowed value 'start-level for `org-loop-over-headlines-in-active-region'.
* org.el (org-scan-tags): New parameter `start-level' to
scan only through headlines of that level.
(org-map-entries): New allowed value `region-start-level' for
the `scope' parameter, to allow scanning through headlines of
the same level than the first headline in the region.
(org-loop-over-headlines-in-active-region): New allowed value
'start-level.

This change gives more flexibility when looping over the active
region for commands like `org-schedule', `org-deadline', etc.
By setting `org-loop-over-headlines-in-active-region' to
̀start-level', those command will act upon headlines that are
of the same level than the first one in the region.
2011-12-30 11:09:26 +01:00
Bastien Guerry e621dfc36a Let `org-todo' loop over the active region.
* org.el (org-todo): Allow to loop over the active region by
using `org-loop-over-headlines-in-active-region'.
2011-12-30 07:09:47 +01:00
Bastien Guerry 88ef5fe272 org.el (org-map-continue-from): Fix typo in docstring.
* org.el (org-map-continue-from): Fix typo in docstring.
2011-12-29 17:46:47 +01:00
Bastien Guerry 39cac2bd2a org.el: Also match cumulating properties like ":prop+:".
* org.el (org-property-re): Also match cumulating properties
like ":prop+:".

Thanks to Christoph LANGE for spotting this.
2011-12-26 15:12:39 +01:00