0
0
Fork 1
mirror of https://git.savannah.gnu.org/git/emacs/org-mode.git synced 2024-09-22 16:40:45 +00:00
Commit graph

1706 commits

Author SHA1 Message Date
Julien Danjou 92b603c892 org: clean property entries matching
* lisp/org.el (org-entry-get):
(org-entry-delete):
(org-entry-put):
(org-property-values):
(org-delete-property-globally): Use org-re-property.
(org-re-property): New function allowing to build a regexp to match a
property.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-04-09 18:53:07 +02:00
Julien Danjou c9c5da9191 org: enhance docstring for org-property-values
* lisp/org.el (org-property-values): Enhance docstring.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-04-09 18:53:07 +02:00
Nicolas Goaziou abad1b4994 Auto-fill shouldn't insert new items
* lisp/org-list.el (org-list-in-valid-context-p): renamed from
  org-list-in-valid-block-p.
  (org-at-item-p,org-list-search-generic): use renamed function.

* lisp/org.el (org-fill-item-nobreak-p): new function.
  (org-set-autofill-regexps): modify `fill-nobreak-predicate' to
  prevent auto-fill from breaking line just before an item regexp.
2011-04-09 13:20:37 +02:00
Nicolas Goaziou 9a8dab1436 Correctly fontify description items
* lisp/org.el (org-set-font-lock-defaults): Be more strict when
  recognizing description items, and do not fontify wrong cases like:
  "- term ::description" or "1. term :: description"
2011-04-09 13:18:13 +02:00
Nicolas Goaziou a1458ba5ec Don't indent footnote definitions
* lisp/org.el (org-indent-line-function): footnote definition must
  stay at column 0 to be recognized as such. Body below can have
  normal indentation, so it should ignore its definition when
  computing indentation.
2011-04-09 11:50:59 +02:00
Carsten Dominik cd806a5d0d Help matching dotted European dates, like 31. 12. 2007
* lisp/org.el (org-read-date-analyze): Help matching dotted European
dates, like 31. 12. 2007

Patch by Jan Seeger.
TINYCHANGE
2011-04-08 12:06:51 +02:00
Carsten Dominik a54afa7e8e Merge branch 'capture-plain-text-into-nodes' 2011-04-07 17:03:26 +02:00
Carsten Dominik f1ffed8a6c Allow to capture plain templates into Org nodes
* lisp/org.el (org-end-of-meta-data-and-drawers): New function.
* lisp/org-capture.el (org-capture-place-plain-text): Implement adding
plain text templates to Org nodes.

This is something which came out of a discussion with Philip Rooke, in
the thread

Philip tried to use a capture template with template type plain, but
using a date tree as a target.  Plain templates where placed at the
end of the file, not at the end of the entry.  I complained first that
mixing headlined entries and plain snippets into the same capture
target is not possible, but I realized that there is a way to make
this work OK.  The headlined entries become children, and the plain
text snippets become part of the text before the first child.
2011-04-07 08:47:13 +02:00
Lawrence Mitchell f4ba6dc6ee org: Match case of todo keywords when determining empty headings
* lisp/org.el (org-point-at-end-of-empty-headline): Bind
case-fold-search to nil.
2011-04-06 10:27:58 +02:00
Carsten Dominik b869bc5a7e Remove forgotten (debug) 2011-04-03 12:26:05 +02:00
Carsten Dominik 5d5ea7bccc Fix two bugs in time regular expressions
* lisp/org.el (org-ts-regexp-both): Add "]" to class of characters that
should not be matched.
(org-ts-regexp0):
(org-ts-regexp1): Do not start a class with "^]-+", because that tries
to (not) match characters between "]" and "+".  Instead, move the "-"
to the end of the class where it causes no harm.
2011-04-03 12:25:31 +02:00
Carsten Dominik a9e6c07b6a Remove recently added code to support meeting actions
This code is now in the tutorial describing this work flow.
It is too specialized to be in org.el.

Thanks for Matt Lundin for checking on me.
2011-04-02 00:32:13 +02:00
Carsten Dominik b8fdddcd9c Add tools for tracking meeting notes
* lisp/org.el (org-numbered-action-format): New option.
(org-new-numbered-action): New command.
(org-collect-todos-in-subtree): New command.
2011-03-30 09:06:59 +02:00
Carsten Dominik 71e91e3d33 Fix bug with resolving outline-path targets when two headings are the same
* lisp/org.el (org-find-olp): Use the level of the correct match to
continue search.

The problem was that a second match of an identical headline on
another level would corrupt the value of LEVEL that is used to set up
the next search stop.

Chao LU writes:

> For org capture template, if I set an template like this:
> ("i" "INBOX" entry (file+olp (concat org-private-dir "/iPrv.org")
>                    "INBOX" "test") "* %?" :prepend t)
>
> And for the iPrv.org, I have this structure:
> * INBOX
> ** test
>
> Then it works.
>
> But if the first level and the second level happen to have the same
> title (it does happen to me sometimes), like:
> * INBOX
> ** INBOX
>
> ("i" "INBOX" entry (file+olp (concat org-private-dir "/iPrv.org")
>                     "INBOX" "INBOX") "* %?" :prepend t)
> Then Org will prompt an error.
2011-03-25 08:05:21 +01:00
Julien Danjou d5383b1769 org-icompleting-read cosmetic cleanup
* lisp/org.el (org-icompleting-read): Do not use useless lambda.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-03-18 15:24:31 +01:00
Bastien Guerry 39dacd3e7e Tiny docstring typo. 2011-03-17 11:41:39 +01:00
Carsten Dominik f4387417c4 Improve handling of years with limitations on representable dates
* lisp/org.el (org-read-date-force-compatible-dates): New option.
(org-read-date, org-read-date-analyze): Check representable date range.
* doc/org.texi (The date/time prompt): Document date range protection.

New variable `org-read-date-force-compatible-dates' to control
handling of dates.
2011-03-15 20:01:33 +01:00
Eric Schulte cf076fd654 adding support for Maxima code blocks -- thanks to Eric Fraga 2011-03-15 11:25:40 -06:00
Nicolas Goaziou df26ae8e69 Checkboxes should progress from intermediate state to checked
Thanks to Matt Lundin for pointing that out.
2011-03-12 16:40:37 +01:00
Nicolas Goaziou efa562c1ee Fix compatibility with emacsen < 23
* lisp/org.el (org-fill-paragraph): fill-forward-paragraph function
  has been introduced with emacs 23.1.
2011-03-10 19:45:47 +01:00
Nicolas Goaziou b12f0dd309 Fix fill-region in an item
* lisp/org.el (org-adaptive-fill-function): when a region is specified
  first line of paragraph isn't skipped, so fill-paragraph have to be
  computed even if point is at an item.
2011-03-10 00:51:03 +01:00
Nicolas Goaziou 6ff4c9f42f List indentation has priority over block indentation
* lisp/org.el (org-indent-line-function): text in both a list and
  a valid block is indented with regards to current item, not to block
  boundaries.
2011-03-09 17:48:16 +01:00
Bastien Guerry eafdbc575b * org.el (org-default-properties): Add EXPORT_TEXT. 2011-03-09 15:44:11 +01:00
Bastien Guerry 3151ef60be org.el (org-default-properties): Add EXPORT_OPTIONS.
(org-buffer-property-keys): docstring fix.
(org-default-properties): Add EXPORT_OPTIONS.

Thanks to Sébastien Vauban for catching this and his patch.
2011-03-09 11:17:33 +01:00
Bastien Guerry e6d74f9253 org.el: remove useless comment. 2011-03-09 11:06:57 +01:00
Jason Dunsmore 85f03c0859 Bugfix: honor `org-blank-before-new-entry' correctly in various contexts.
* org.el (org-back-over-empty-lines): Bugfix.  Honor
`org-blank-before-new-entry' correctly in various contexts.
2011-03-09 11:06:09 +01:00
emacs 11a10bdfe7 Update website to show 7.5 as current release 2011-03-07 14:27:39 +00:00
Bastien Guerry 5780612759 Fix typo in docstring. 2011-03-07 00:20:42 +01:00
Bastien Guerry 6a0de0dc7b * org.el (org-duration-string-to-minutes): Don't use `rx-to-string'. 2011-03-06 18:45:03 +01:00
Lawrence Mitchell 75a1b98cfb Support modifiers in effort durations (was: Re: Does Effort support hours only?)
Luke Crook wrote:
> Is it possible to specify estimated effort in something other
> than hours (0.5, or 0:30)?

> For example 1w, 1m, 2d etc?

Here's a cleaned up patch that allows user-specified modifiers
for effort strings.  The new variable `org-effort-durations'
lists modifiers, and their mapping to minutes (words, as well as
single-letter modifiers, are supported).  The default value is:

(("h" . 60)
 ("d" . 480) ; 8 hours
 ("w" . 2400) ; five days
 ("m" . 9600) ; 4 weeks
 ("y" . 96000)) ; 40 weeks

But you can change this.

Old effort strings (HH:MM) are still interpreted correctly.  See
the docstrings of `org-effort-durations' and
`org-duration-string-to-minutes' for more details.

>From a0e24b14755eb4087d9c47bb4eea11eb9151efcf Mon Sep 17 00:00:00 2001
From: Lawrence Mitchell <wence@gmx.li>
Date: Fri, 18 Feb 2011 11:01:46 +0000
Subject: [PATCH] Allow human-readable effort durations
To: emacs-orgmode@gnu.org

* lisp/org.el (org-effort-durations): New variable.
* lisp/org.el (org-duration-string-to-minutes): New function.
* lisp/org-agenda.el (org-agenda-filter-effort-form)
(org-format-agenda-item): Use it.
* lisp/org-clock.el (org-clock-notify-once-if-expired)
(org-clock-modify-effort-estimate, org-clock-get-clock-string): Use it.

Specifying large effort durations in hours and minutes is difficult.
Is 130:25 more than two weeks effort?  More than three?  This patch
allows specification of an effort duration as a friendly string.  For
example 2w 5d is two weeks and five days of effort.  Existing H:MM
entries will still be recognised correctly.
2011-03-06 18:27:14 +01:00
Nicolas Goaziou 9f0745d93c Promote and demote inline tasks
* lisp/org-inlinetask.el (org-inlinetask-promote,
  org-inlinetask-demote): new functions.

* lisp/org.el (org-metaleft, org-metaright): when point is at an
  inline task, promote or demote it.
2011-03-06 09:30:47 +01:00
Nicolas Goaziou 7ac8c529f2 When demoting a subtree, don't change level of inline tasks within
* lisp/org.el (org-demote-subtree,org-promote-subtree): wrap
  org-map-tree into org-with-limited-levels macro, so it avoids
  operating on inline tasks.
2011-03-06 09:30:06 +01:00
Nicolas Goaziou 1e59039f8c Fix bug when narrowing to subtree with point at an inline task
* lisp/org.el (org-narrow-to-subtree): ensure `org-back-to-heading'
  will move point to a real heading and not an inline task by wraping
  function into a org-with-limited-levels macro.
2011-03-06 09:29:16 +01:00
Bastien Guerry de7005c7c2 Small docstring typo. 2011-03-06 01:33:19 +01:00
Bastien Guerry 5606a6a941 Rename org-get-refile-targets' to org-refile-get-targets'.
* org.el (org-refile-get-targets): Rename from
`org-get-refile-targets.'
2011-03-05 23:48:29 +01:00
Bastien Guerry 9a35e5d0be Small docstring fix.
Thanks to Tassilo Horn for spotting this.
2011-03-05 22:53:06 +01:00
Tassilo Horn 9d1ce51c09 Use and show default refiling location.
* org.el (org-refile-get-location): Set and show default
	value.
	(org-goto, org-refile): Adapt calls.

	* org-id.el (org-id-get-with-outline-path-completion): Adapt
	call.

	* org-agenda.el (org-agenda-refile, org-agenda-bulk-action):
	Adapt calls.

	* org-remember.el (org-remember-handler): Adapt call.
2011-03-05 12:24:47 +01:00
Bastien Guerry 2d37c8caf5 Minor stylish fix. 2011-03-05 11:44:22 +01:00
Bastien Guerry 7a0f8bccb8 Minor stylish fix. 2011-03-05 11:44:00 +01:00
Bastien Guerry 9a7f9eda3c Fix bug when using org-confirm-shell/elisp-link-not-regexp. 2011-03-05 11:36:15 +01:00
Bastien Guerry 4369d4f9a3 Bugfix: allow org-blocker-hook to check against headings outside of a narrowed buffer.
* org.el (org-todo): Bugfix: use `org-with-wide-buffer' to
check against headings outside of a narrowed buffer.

* org-macs.el (org-with-wide-buffer): New macro.
2011-03-05 11:01:28 +01:00
Bastien Guerry ae8d522a6c New variables to skip confirmation for elisp/shell links.
* org.el (org-confirm-shell-link-not-regexp)
(org-confirm-elisp-link-not-regexp): New custom variables.
(org-open-at-point): Use the new custom variables.
2011-03-05 10:08:19 +01:00
Bastien Guerry 87ce7900c6 * org.el (org-move-subtree-down): leave the cursor at the same column we were at.
* org.el (org-move-subtree-down): leave the cursor at the same
column we were at.
2011-03-03 11:51:47 +01:00
Carsten Dominik aaf0e2d6bb Get rid of some compiler warnings
* Makefile (lisp/org-special-blocks.elc): Add dependency on org-compat.el
* lisp/ob-ref.el (org-at-item-p): Declare function.
* lisp/org-agenda.el (diary-time-regexp): defvar.
* lisp/org-archive.el (org-archive-subtree): Bind local variable `infile-p'.
* lisp/org-capture.el (org-capture-insert-template-here): Get template
text from property list, to avoid byte compiler message.
* lisp/org-latex.el (org-export-latex-tables): Bind local variable `width'.
* lisp/org-special-blocks.el (org-compat): Add require statement.
* lisp/org-table.el (orgtbl-ctrl-c-ctrl-c): Bind local variable `const-str'.
* lisp/org.el (org-eval): Moved function here from org-agenda.el.
2011-03-01 07:24:14 +01:00
Nicolas Goaziou c2443d48e9 fix a bug in org-open-at-point
My bad, wrong manipulation. Here is the patch.

To reproduce the error, you can type the following in a fresh Org
#+begin_src org
target some text <<<target>>> another text target
#+end_src

Using C-c C-o on any of the two links will return an error.
Regards,

>From f7738f3e9239fc4fddccc7850dad7a0936087a58 Mon Sep 17 00:00:00 2001
From: Nicolas Goaziou <n.goaziou@gmail.com>
Date: Sat, 19 Feb 2011 09:37:48 +0100
Subject: [PATCH] Fix bug with link to radio target at beginning or end of buffer

* lisp/org.el (org-open-at-point): if a link to a radio target is the
  first, (resp. the last), element of a buffer, function cannot find
  the property change required to get its boundaries, and
  `buffer-substring' is called with an invalid nil argument.
2011-02-26 18:14:38 +01:00
Nicolas Goaziou f4db739a67 Keep byte-compiler happy 2011-02-23 15:03:27 +01:00
Nicolas Goaziou 6489346093 Make byte-compiler happy 2011-02-22 20:55:41 +01:00
Bastien Guerry 77c278c932 Fix small typos in docstrings. 2011-02-19 12:52:26 +01:00
Nicolas Goaziou 729564ae74 Send list only with cursor at top item
* lisp/org.el (org-ctrl-c-ctrl-c): call `org-list-send-list' only when
  cursor it at very first item of the list, as specified in the
  manual. Also refactored the list part of the function a bit.
2011-02-19 11:27:53 +01:00
Nicolas Goaziou 2366083b82 Remove org-entry-get from ignore-errors macro 2011-02-19 10:51:38 +01:00
Nicolas Goaziou 713262edc1 Preserve hierarchy when converting items to headlines and the other way
* lisp/org.el (org-toggle-item, org-toggle-heading): make sure every
  sub-item in a list is changed into a sub-heading and sub-headings
  are translated into sub-items. Also ignore inline tasks in the
  process.

org-toggle-item on headlines preserves hierarchy
2011-02-18 13:43:49 +01:00
Nicolas Goaziou 5adafe0c8d Changes to filling in items
* lisp/org.el (org-set-autofill-regexps): use `org-item-re' in
  `paragraph-start' to recognize alphabetical lists.
(org-fill-paragraph): enforce a pre-computed fill-prefix before
  calling fill-paragraph when point in in an item. Also prevent
  paragraphs getting merged into an adjacent list upon filling.
(org-adaptive-fill-function): make sure to determine real fill-prefix
  for auto-fill.
(org-auto-fill-function): use a pre-computed fill-prefix before
  calling do-auto-fill.
* lisp/org-list.el (org-list-item-body-column): new function
2011-02-18 12:45:12 +01:00
Nicolas Goaziou b7f6a916b3 Fix toggling and cycling visibility for items and inline tasks
* lisp/org-inlinetask.el (org-inlinetask-at-task-p,
org-inlinetask-toggle-visibility): new functions.
* lisp/org-list.el (org-list-set-item-visibility): new function.
* lisp/org.el (org-cycle, org-cycle-internal-local): separate lists
  and inline tasks from headlines.
(org-outline-level): do not consider lists as headlines.
  Cycling visibility is using different tools.
2011-02-18 12:45:12 +01:00
Nicolas Goaziou 69cc51fa43 C-c C-c also repairs ill-formed lists
* lisp/org-list.el (org-list-struct): mark items less indented than
  top item of the list, so that they will be modified.
(org-list-struct-apply-struct): compare struct's indentation with
  line's indentation instead of old-struct's. This is needed because
  `org-list-struct' automatically fixes indentation so changes might not
  be seen otherwise.
* lisp/org.el (org-ctrl-c-ctrl-c): small refactoring.
2011-02-18 12:45:12 +01:00
Nicolas Goaziou f7ebd6bcf0 org-list: ignore inline tasks when shifting an item, and fix indentation
* lisp/org-list.el (org-list-struct-apply-struct): inline tasks along
  with their content must stay at column 0 even if the item is gaining
  indentation. Moreover, fix indentation of text in an inline task,
  now it can be in such a task within a list.
2011-02-18 12:45:12 +01:00
Nicolas Goaziou 0148fac717 org-list: make org-at-item-p less permissive
* lisp/org-list.el (org-at-item-p): also verify context is valid.
  Otherwise it would recognize valid items where org-in-item-p
  wouldn't.
(org-in-item-p, org-list-struct-apply-struct): use shorter version of
org-at-item-p.
(org-cycle-list-bullet): fix typo.
(org-list-parse-list): avoid calling org-at-item-p two times by using
an appropriate regexp
* lisp/org.el (org-indent-line-function): use an appropriate regexp
  instead of calling org-at-item-p two times.
2011-02-18 12:45:12 +01:00
Nicolas Goaziou f7dbea5989 Fix small bug in org-toggle-item
* lisp/org.el (org-toggle-item): when used on normal text, ensure
  every line in region is included in the new item, regardless of its
  original indentation.
2011-02-18 12:45:12 +01:00
Nicolas Goaziou 304e8f1cd2 Change behavior of org-toggle-item when used with normal text.
* lisp/org.el (org-toggle-item): Now accepts a prefix argument. When
  used without argument on normal text, it will make the whole region
  one item. With an argument, it defaults to old behavior: change each
  line in region into an item.
2011-02-18 12:45:11 +01:00
Nicolas Goaziou 89c066a10c Newline-and-indent respects list structure
* lisp/org.el (org-return): when called from inside an item with the
  indent flag, function should keep text moved inside the item. This
  allows to use C-j to separate lines in an item: cursor won't go back
  to column 0.
2011-02-18 12:45:11 +01:00
Nicolas Goaziou bd68169b4b org-list: reorder file, rename functions, improve comments
* lisp/ob.el (org-babel-result-end): apply renaming.
* lisp/org-exp.el (org-export-mark-list-properties): apply renaming.
* lisp/org-list.el (org-list-prevs-alist): renamed from
  org-list-struct-prev-alist.
(org-list-parents-alist): renamed from org-list-struct-parent-alist.
(org-list-write-struct): renamed from org-list-struct-fix-struct.
(org-list-parse-list, org-sort-list, org-list-indent-item-generic,
org-toggle-checkbox, org-update-checkbox-count, org-cycle-list-bullet,
org-list-repair, org-insert-item, org-move-item-up, org-move-item-up,
org-move-item-down, org-next-item, org-previous-item,
org-end-of-item-list, org-beginning-of-item-list, org-apply-on-list):
apply renaming.
(org-get-bullet): removed function, as it is not needed anymore.
2011-02-18 12:45:11 +01:00
Nicolas Goaziou 4efa974264 Fix for `org-beginning-of-line' at an item
* lisp/org.el (org-beginning-of-line): apply changes to
  `org-item-beginning-re' to correct sub-expression reference.
2011-02-18 12:45:11 +01:00
Nicolas Goaziou 781228183a org-list: implement alphabetical lists
* lisp/org-list.el (org-alphabetical-lists): new variable
(org-item-re, org-list-full-item, org-cycle-list-bullet,
org-list-struct-fix-bul, org-list-inc-bullet-maybe): reflect
introduction of the new variable.
(org-item-beginning-re): changed into a function, so any modification
of `org-alphabetical-lists' will not require reloading Org.
(org-at-item-p, org-toggle-checkbox, org-update-checkbox-count,
org-list-parse-list, org-list-send-list): reflect changes to
`org-item-beginning-re'.
(org-list-use-alpha-bul-p): new function.
* lisp/org.el (org-check-for-hidden): reflect changes to
`org-item-beginning-re'.
* lisp/org-capture.el (org-capture-place-item): reflect changes to
`org-item-beginning-re'.
* lisp/org-docbook.el (org-export-docbook-list-line): handle new type
of items.
* lisp/org-exp.el (org-export-mark-list-end,
org-export-mark-list-properties): reflect changes to
`org-item-beginning-re'.
* lisp/org-html.el (org-html-export-list-line): handle new type of
items.
* lisp/org-latex.el (org-export-latex-lists): handle new type of items
and reflect changes to `org-item-beginning-re'.
* lisp/org-ascii.el (org-export-ascii-preprocess): handle new counters.

Modified from a patch by Nathaniel Flath.
2011-02-18 12:45:10 +01:00
Nicolas Goaziou 215d3fa030 Improve usage of `org-in-item-p'
When the function needs to know if cursor is in a plain list and move
to item beginning if it is the case, a fast way is to ignore errors on
(goto-char (org-in-item-p)).
2011-02-18 12:45:10 +01:00
Nicolas Goaziou 79553c4764 org-list: fixes for incorrect number of arguments 2011-02-18 12:45:10 +01:00
Nicolas Goaziou 6c81e8cc05 Move org-get-string-indentation out of org-list.el
* lisp/org.el (org-get-string-indentation): moved in generally useful
  functions section, as it wasn't specific to plain lists and that no
  code was using it in org-list.el.
2011-02-18 12:45:09 +01:00
Nicolas Goaziou 2adbcfffe1 Remove uses of deprecated top-point and bottom-point functions
* lisp/org.el (org-skip-over-state-notes,org-store-log-note): use new
  accessors.

* list/ob.el (org-babel-result-end): use new accessors.

* list/org-exp.el (org-export-mark-list-ending): use new accessors.
2011-02-18 12:45:08 +01:00
Nicolas Goaziou c12ce921d7 Checkboxes do not change indentation in lists
* org.el (org-indent-line-function): Indentation of item's body starts
  just after the bullet, not after a checkbox. Moreover, As
  `org-in-item-p' also returns item beginning position when point is
  in a list, do not compute it a second time.
2011-02-18 12:45:08 +01:00
Nicolas Goaziou e223357743 Lighten process when C-c C-c is called at a list item
* org.el (org-ctrl-c-ctrl-c): when called at a list item, replace
  usage `org-repair-list', forcing another reading of the list, with
  only needed subroutines.
2011-02-18 12:45:08 +01:00
David Maus 0d6dacd978 Throw error if encoding character in utf8 fails
* lisp/org.el (org-link-escape): Throw error if encoding character in
utf8 fails.
2011-02-17 19:26:49 +01:00
David Maus 139cc1d4c2 Always percent escape the percent sign
* lisp/org.el (org-link-escape, org-link-escape-chars-browser)
(org-link-escape-chars): Always percent escape the percent sign.
2011-02-17 19:26:49 +01:00
David Maus 7b58cccddd Refactor unescaping functions
* org.el (org-link-unescape): Simpler algorithm for replacing percent
escapes.
(org-link-unescape-compound): Use cond statements instead of nested
if, convert hex string with string-to-number, save match data.
(org-link-unescape-single-byte-sequence): Use mapconcat and
string-to-number for unescaping single byte sequence.
2011-02-17 19:26:49 +01:00
David Maus dc76fd5d71 Rename lambda argument
* org.el (org-link-escape): Rename lambda argument.
2011-02-17 19:26:49 +01:00
David Maus 1350e57626 Add percent sign to list of escape chars
* org.el (org-link-escape-chars-browser, org-link-escape-chars): Add
percent sign to list of escape chars.
2011-02-17 19:26:49 +01:00
David Maus 51e665622c Unescape functions moved and renamed from org-protocol.el
* org.el (org-link-unescape, org-link-unescape-compound)
(org-link-unescape-single-byte-sequence): Functions moved and renamed
from org-protocol.el.
2011-02-17 19:26:48 +01:00
David Maus 27915744a2 New optional argument: Merge user table with default table
* org.el (org-link-escape): New optional argument.  Merge user table
with default table.
2011-02-17 19:26:48 +01:00
David Maus 41c771378a Fixup doc string
* org.el (org-link-escape): Fixup doc string.
2011-02-17 19:26:48 +01:00
David Maus 1a68b67939 New format of percent escape table
* org.el (org-link-escape-chars, org-link-escape-chars-browser): New
format of percent escape table.
(org-link-escape): Use new table format.

Just a plain list with the chars that should be escaped.
2011-02-17 19:26:48 +01:00
David Maus 0c4bb0e406 New unicode aware percent encoding algorithm
* org.el (org-link-escape): New unicode aware percent encoding
algorithm.
2011-02-17 19:26:48 +01:00
Dan Davison fda90a9aad New function `org-clone-local-variables'.
* org-exp.el (org-export-preprocess-string): Set the source
buffer and use `org-clone-local-variables' to get local
variables from it.

* org.el (org-clone-local-variables): New function.
2011-02-15 18:03:58 +01:00
Bastien Guerry 846a2d13d3 Code cleanup: use (org-mode-p) when possible. 2011-02-15 05:18:22 +01:00
Tom Dye 03ddcc63bb * lisp/org.el: Update documentation of `org-add-link-type'. 2011-02-13 00:31:52 +01:00
Dan Davison 4d880b150f Fix bug when using prefix arg to construct `org-link-search' call.
* lisp/org.el (org-open-at-point): Fix bug when using prefix arg to
construct `org-link-search' call. Rename prefix arg with a more
generic name, to reflect its diverse uses in this function.
2011-02-12 23:56:36 +01:00
Bastien Guerry 03c33d0d38 Don't wrap org-entry-get into condition-case.
* ob.el (org-babel-params-from-properties): don't wrap
org-entry-get into condition-case.

* org-table.el (org-table-export): don't wrap org-entry-get
into condition-case.

* org.el (org-store-link): don't wrap org-entry-get into
condition-case.
2011-02-12 19:02:52 +01:00
Bastien Guerry f0c9e8d672 Whitespace and indentation cleanup. 2011-02-12 18:53:07 +01:00
Dan Davison 7dd425cc5d Allow properties to be retrieved before first heading in file.
* lisp/org.el (org-entry-get): Don't look for a property drawer if we
are before the first heading in the file.
(org-entry-get-with-inheritance): Don't attempt to move up the tree if
we are before the first heading in the file. Also, enclose less of the
function in the save-excursion.
2011-02-12 18:51:40 +01:00
Bastien Guerry 8ec508b128 Add org-notmuch.el by Matthieu Lemerre to contrib/lisp/. 2011-02-12 16:53:10 +01:00
Eric Schulte 27d98d8793 adding faces for block backgrounds and begin/end lines
Patch by Sébastien Vauban
  Committed by Eric Schulte with one tiny change
2011-02-04 13:47:58 -07:00
Bastien Guerry 28b88bbb11 Fix bug in org-update-parent-todo-statistics.
* org.el (org-update-parent-todo-statistics): fix bug when
updating statistics from the column view.

This was reported by James Deaton and confirmed by Bernt Hansen.
2011-02-04 10:44:29 +01:00
Bastien Guerry 814871c42b Fix docstring typo in org-link-search-must-match-exact-headline. 2011-02-03 18:00:16 +01:00
Bastien Guerry dfbdc547d5 Revert "(org-scan-tags): Optimize a bit the regexp search."
This reverts commit 0b7ce5f47d.
2011-02-03 17:35:51 +01:00
Bastien Guerry 0b7ce5f47d (org-scan-tags): Optimize a bit the regexp search. 2011-02-02 19:27:51 +01:00
Bastien Guerry 7b72c57e15 (org-hidden-keywords): Fix docstring. 2011-02-02 16:29:56 +01:00
Bastien Guerry 16b408bd06 (org-block-regexp): Now also match dynamic blocks. 2011-02-02 16:12:27 +01:00
Bastien Guerry b3c3746d92 New function org-narrow-to-block.
* org.el (org-narrow-to-block): New function to narrow to block.
Bound this function to `C-x n b'.
* org.texi (Dynamic blocks, Structure editing): Mention
the function `org-narrow-to-block'.

This is inspired by a request by Leonidas Tsampros.
2011-02-02 11:47:41 +01:00
Bastien Guerry 4828e3c2d0 Fix bug when using org-schedule/org-deadline on timestamps with complex repeaters.
* org.el (org-schedule, org-deadline): Fix bug: take care of
repeating timestamps like ".+1d/3d" or "+1d 10d".
2011-02-02 11:04:50 +01:00
Osamu Okano a017fca37f Various docstrings typo fixes by Osamu OKANO. 2011-02-01 13:05:13 +01:00
Bastien Guerry e6f51d2485 Merge branch 't/patch568' 2011-01-31 21:36:55 +01:00
Julien Danjou f1bfcc6f8a Bug: UTF-8 characters in #+LINK does not work [7.4]
On Sat, Jan 29 2011, Matt Lundin wrote:

> The regexp in org-link-expand-abbrev does not allow for accented
> characters in the link abbreviation. I am not sure whether this is an
> intended limitation or a bug. :)

I don't see any reason. Patch attached.

>From 1ec1e178aaa6a9935819a873ae492be7a2ddb2f6 Mon Sep 17 00:00:00 2001
From: Julien Danjou <julien@danjou.info>
Date: Mon, 31 Jan 2011 21:19:07 +0100
Subject: [PATCH] Allow more char type in link abbrev

* org.el (org-link-expand-abbrev): Allow any type of character
in link expand.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-01-31 21:36:05 +01:00
Bastien Guerry e4bbefeef6 Another small docstring typo. 2011-01-31 20:42:50 +01:00
Bastien Guerry 3c5dc21985 Fix typo in docstring. 2011-01-31 20:32:18 +01:00
Bastien Guerry df23e58b48 Rename org-complete.el to org-pcomplete.el to avoid file-name clash.
On Jan 26, 2011, at 10:34 AM, Eli Zaretskii wrote:

> The file org-complete.el, added about a month ago, causes a file-name
> clash with org-compat.el after 8+3 truncation.  This causes trouble
> when unpacking Emacs tarballs on DOS filesystems.

Also rename org-complete-* functions in org-pcomplete.el and remove a
wrong reference to org-complete in doc/org.texi.

We still use org-complete-* namespace for the custom group and the
custom variables.
2011-01-31 18:40:05 +01:00
Julien Danjou 84d7165d74 org: remove org-invisible-p
I just found a left over in org-list.el. :)

Updated patch attached.

>From bf6c65a42e04d4753c58795442a479685bb5f318 Mon Sep 17 00:00:00 2001
From: Julien Danjou <julien@danjou.info>
Date: Wed, 26 Jan 2011 11:14:11 +0100
Subject: [PATCH] org: remove org-invisible-p

* org.el: Remove org-invisible-p: outline-invisible-p is
available in Emacs 22 and in recent XEmacs 21. Replace in
various files.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-01-26 18:26:46 +01:00
Carsten Dominik e10eaa2502 Revert "* org.el (org-fast-tag-selection): Fix bug when assigning keys"
This reverts commit c7d1e0f997.
2011-01-26 11:08:40 +01:00
Nicolas Goaziou 576c7bd520 Use existing macro to simplify code in LaTeX exporter
* lisp/org.el (org-current-level):
(org-store-link):
(org-mark-subtree): Use `org-with-limited-levels'.
2011-01-26 11:07:34 +01:00
Bastien Guerry c7d1e0f997 * org.el (org-fast-tag-selection): Fix bug when assigning keys
* org.el (org-fast-tag-selection): Fix bug when assigning keys
for fast tag selection.

Patch submitted by Jason Dunsmore.
2011-01-18 00:50:32 +01:00
Bastien Guerry f33ae10e36 org-blank-before-new-entry: Fix small typo in the docstring. 2011-01-18 00:03:49 +01:00
Bastien Guerry 97b264a092 org-refile-check-position: explain how to clear the cache
* org.el (org-refile-check-position): send a more explicit
message on how to clear the cache before refiling again.
2011-01-15 18:29:07 +01:00
Carsten Dominik 378beac762 Fix sorting with a bold emphasis at beginning of line
* lisp/org.el (org-sort-entries): Fix sorting with a bold emphasis at bol
2011-01-11 20:34:08 +01:00
Carsten Dominik dd23461349 Implement next-error and previous-error functionality for sparse trees
* lisp/org.el (org-occur-next-match): New function.
(org-mode): Set the variable `next-error-function'.
(org-highlight-new-match): Add an `org-type' property to the overlays.
* doc/org.texi (Sparse trees): Document the next-error / previous-error
functionality.

After a sparse tree construction, `M-g n' and `M-g p' will now jump to
the location of matches.
2011-01-06 12:36:22 +01:00
Bastien Guerry ed824d4e46 org.el: don't try to remove space in comma-separated tags.
No space is allowed in the prompt, trying to remove them is
confusing when reading the code.
2011-01-04 16:15:33 +01:00
Bastien Guerry 881b73bd77 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2011-01-04 16:10:51 +01:00
Carsten Dominik 8dfd845c7f Add contrib package org-eshell.el
* contrib/lisp/org-eshell.el: New file
* lisp/org.el (org-modules): Add `org-eshell'.
2011-01-04 16:06:09 +01:00
Bastien Guerry 591db35943 org.el: document optional argument for org-global-tags-completion-table 2011-01-04 15:19:23 +01:00
Carsten Dominik 00b59ec005 Add some additional stuff needed after moving org-special-blocks.el
* Makefile (LISPF): Add org-special-blocks to the list of Lisp files
* lisp/org-special-blocks.el (htmlp):
(latexp):
(line): Add defvars for dynamically scoped variables.
* lisp/org.el (org-modules): Move org-special-blocks into
the core modules section.
2011-01-03 22:08:10 +01:00
Carsten Dominik a6255a6ab7 Remove duplicate definition of `org-plist-delete'
* org.el (org-plist-delete): Remove duplicate definition.

Patch by Julien Danjou.
2011-01-03 13:21:15 +01:00
Carsten Dominik ca733df0d4 Move the category property refresh to org-get-category where possible
* lisp/org.el (org-get-category): New optional argument FORCE-REFRESH.
Automatically refresh if the property is not there.
(org-entry-properties): Remove refresh - this is now done in
org-get-category.
* lisp/org-clock.el (org-clock-insert-selection-line): Let `org-get-category'
do the property refresh.
* lisp/org-archive.el (org-archive-subtree): Force a refresh of
category properties.

Based on a patch by Julien Danjou.
2011-01-03 13:12:42 +01:00
Carsten Dominik 55d664e6d3 Revert "Always return refreshed category"
This reverts commit f5bb1b7dbf.
2010-12-24 17:32:22 +01:00
Julien Danjou f5bb1b7dbf Always return refreshed category
* org-icalendar.el (org-print-icalendar-entries): Do not manually
  refresh categories.

* org-clock.el (org-clock-insert-selection-line): Do not manually
  refresh categories.

* org.el (org-get-category): Refresh categories if no category found.
(org-entry-properties): Do not manually refresh categories.
(org-prepare-agenda-buffers): Do not manually refresh categories.

It seems a very bad thing to call manually for a category refresh. It
seems better to try to refresh if we do not have a category.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-23 08:42:32 +01:00
Dan Davison 6eaad22a37 Check for clear-image-cache before using it
* lisp/org.el (org-display-inline-images): Check for clear-image-cache
before using it.
2010-12-23 08:36:42 +01:00
Bernt Hansen ca1b251f19 Add missing value to docstring for org-link-frame-setup
* lisp/org.el: Document missing value for org-link-frame-setup
2010-12-23 08:27:38 +01:00
Bernt Hansen de62618009 Fix before first heading check
* lisp/org.el (org-before-first-heading-p): If point is on an org-mode heading line then we are not before the first heading

If point is anywhere on the first line of the first heading then we
are not before the first heading.  This makes
org-before-first-heading-p returns t instead of nil when on the '*' or
blank of the first level 1 heading in an org file.

This was noticed when the first heading has an encryption
tag :crypt:. C-c C-r would not decrypt this entry if point is at the
beginning of the line since it was considered before the first
heading.
2010-12-20 13:22:05 +01:00
Julien Danjou ce837d0e8f org: rework `org-set-property'
* org-capture.el (org-capture-fill-template): Use `org-set-property'
directly.

* org.el (org-set-property): Split property and values reading.
(org-read-property-name, org-read-property-value)
(org-set-property-function): New functions.
(org-property-set-functions-alist): New variable.

The goal of this patch is to introduce a special variable
`org-property-set-functions-alist'. This variable allows to read
properties values in a more intelligent way from `org-set-property' or
from `org-capture'.

For that, it simplifies the `org-set-property' code and remove
duplication between `org-capture' and `org-set-property'.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-17 18:37:30 +01:00
Julien Danjou 073391f5a7 Allow to retrieve email link date
* org.el (org-email-link-description): Allow to retrieve email link date.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-16 14:17:54 +01:00
Lawrence Mitchell 32be74e098 Quote any special characters in org-make-target-link-regexp
* lisp/org.el (org-make-target-link-regexp): regexp-quote target
before replacing whitespace.

Previously a radio link <<<...>>> would match all three-letter words
in the buffer.  The manual indicates the radio links are meant to
match literally (modulo whitespace differences), so we should
regexp-quote all the targets to avoid over-eager matching.
2010-12-16 14:12:28 +01:00
Bastien Guerry eb0d35dd18 Fix typo (which broke lisp/org.el).
Thanks to Matt Lundin for a warning about this.
2010-12-14 21:48:43 +01:00
John Wiegley 14350cac34 Added FILE meta-property 2010-12-14 02:02:40 -05:00
Matt Lundin 4760c3b948 Make timestamp search in org-entry-properties more efficient.
* lisp/org.el: (org-entry-properties) Stop scanning for timestamps if
a specific timestamp property (e.g., DEADLINE, SCHEDULED, etc.) is
requested and a match is found. Also, if a specific timestamp property
is requested, do not push non-relevant timestamps onto property list.

This change only effects org-entry-properties when a specific
timestamp is requested with the special flag, as in:

(org-entry-properties nil 'special "SCHEDULED")

Previously, even if only the SCHEDULED timestamp was requested,
org-entry-properties would parse all the timestamps in an entry. This
extra parsing could slow down the construction of agenda views,
especially with entries that contained a large number of log
items (CLOCK, state changes, etc.). The function org-entry-get,
however, is only interested in the first occurrence of the item. When
looking for a specific type of timestamp, org-entry-properties now
stops searching for timestamps after the match is found, unless the
property is "CLOCK".

Here are the relevant ELP results:

Before:

org-entry-get	     296         0.4724579999  0.0015961418
org-entry-properties 31          0.3438769999  0.0110928064

After:

org-entry-get        296         0.1447729999  0.0004890979
org-entry-properties 31          0.015765      0.0005085483
2010-12-13 15:13:36 +01:00
Carsten Dominik 651e137c50 Make sure windows are created correctly on full-screen sessions
Patch by Leo
2010-12-12 08:36:49 +01:00
Carsten Dominik 7666ba421f Version number back to 7.4 2010-12-10 18:49:40 +01:00
Carsten Dominik 76a25715c9 Bump version number to 7.5 2010-12-10 18:43:10 +01:00
Carsten Dominik 1330048ba0 Keep byte compiler happy 2010-12-10 14:13:05 +01:00
Carsten Dominik 9df61b6c3e Fix typos 2010-12-10 11:12:56 +01:00
Julien Danjou 330721f406 org: remove useless computed value in org-make-tags-matcher
* org.el (org-make-tags-matcher): Remove useless cat-p value.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-10 07:30:24 +01:00
Julien Danjou 8c2f37270d org-entry-properties: enhance docstring
* org.el (org-entry-properties): Enhance docstring.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-10 07:29:14 +01:00
Nicolas Goaziou aa9fbbb323 Fix cycling indentation with inline tasks
* org.el (org-current-level): ignore inline tasks when getting current
  level of entry
2010-12-06 19:13:09 +01:00
Nicolas Goaziou 5bbce0473d Fix indentation after an inline task with drawers
* org.el (org-indent-line-function): ignore drawers inside inline
  tasks  if the line to indent isn't inside an inline task itself.
2010-12-06 19:13:09 +01:00
Nicolas Goaziou 9be9f727f8 Fix LaTeX export of subtrees and inline tasks 2010-12-06 19:13:09 +01:00
Nicolas Goaziou 5ecd79ea74 Handle inline tasks when marking a subtree
* org-inlinetask.el (org-inlinetask-outline-regexp): new function
* org-inlinetask.el (org-inlinetask-goto-beginning): new function
* org-inlinetask.el (org-inlinetask-goto-end): new function
* org.el (org-mark-subtree): new command
* org.el (org-speed-commands-default, org-mode-map): make use of new command
2010-12-06 19:13:09 +01:00
Carsten Dominik e9215698a2 Revert "Fix :VISIBILITY: handling of nested "folded" properties"
This reverts commit 383802d063.

The commit had org-mode process the headlines from bottom to top, which
meant that any changes to the visibility of lower headlines were
overridden/modified by changes higher up the tree. Reverting the commit
causes VISIBILITY to work correctly.
2010-12-06 10:06:21 +01:00
Matt Lundin c8ab88cb69 Allow user to limit amount of context stored in file link search strings
* lisp/org.el: (org-make-heading-search-string) Optionally limit
  number of lines stored in file link search strings.
  (org-context-in-file-links) Add option to set to integer specifying
  number of lines.
2010-12-06 10:05:29 +01:00
Carsten Dominik 73d361d844 Empty properties when cloning an entry
Patch by Mike Mc Lean
2010-12-06 10:03:04 +01:00
Carsten Dominik 238c815502 Revert "org: use org-today in habits auto repeat"
This reverts commit d1eb6cb25b.
2010-12-04 00:19:22 +01:00
Carsten Dominik 316e7e5fbc Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode
Conflicts:
	lisp/org-agenda.el
2010-12-03 22:03:06 +01:00
Carsten Dominik 94c19c82b7 Make compiler happy
* lisp/org-clock.el (org-quarter-to-date): Define variables.
(org-clock-special-range): Defin variables.  Use org-floor*.
(org-clocktable-write-default): Define tcol.
* lisp/org-compat.el (org-floor*): New function.
* lisp/org-complete.el: Declare external functions and variables.
2010-12-03 10:20:41 +01:00
Julien Danjou d1eb6cb25b org: use org-today in habits auto repeat
* org.el (org-auto-repeat-maybe): Use org-today.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-01 00:48:51 +01:00
Julien Danjou 2e08843369 Rename org-agenda-today to org-today.
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-12-01 00:48:28 +01:00
Sébastien Vauban 6d33af4a5c Fix documentation for global tag list during capture
* lisp/org.el (org-complete-tags-always-offer-all-agenda-tags): Fix
docstring.
2010-11-29 10:28:07 +01:00
Carsten Dominik 1123a5d48e Edit formulas with "C-c '"when in TBLMF line
* lisp/org.el (org-edit-special): Edit formulas when in TBLMF line

Conflicts:

	lisp/org.el
2010-11-27 08:05:00 +01:00
Carsten Dominik 9cc19e3919 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode
Conflicts:
	lisp/org.el
2010-11-24 23:44:04 +01:00
Eric Schulte b5f7b02814 "wrap" :results header argument wraps code block results
* lisp/ob.el (org-babel-insert-result): Responds to new "wrap" header
  argument.
  (org-babel-merge-params): Includes new "wrap" header argument in
  one of the results header argument exclusive groups.

* lisp/org.el (org-additional-option-like-keywords): Fontify begin and
  and results lines as comments.
2010-11-24 10:19:44 -07:00
Dan Davison fb008fdd88 Add some more keywords for completion
* lisp/org.el (org-additional-option-like-keywords): Add more keywords,
and colons to some old ones.
2010-11-23 15:11:14 +01:00
Achim Gratz 95bb16661b Fix byte compiler warnings
* org-macs.el (org-called-interactively-p): Wrap function call in
	with-no-warnings.
	(with-silent-modifications) Declare macro for Emacs < 23.2.

TINYCHANGE
2010-11-22 21:22:27 +01:00
Carsten Dominik f692ba3c26 Remove confusion of C-c C-o in footnote with cursor on link
* lisp/org.el (org-open-at-point): Don't do footnote action if cursor is
on a bracket link.

Sebastian Mengin writes:

> Hi,
>
> Consider the following minimal example:
>
> Text[fn:1]
>
> * Footnotes
> [fn:1] Note with a [[file:abecedaire.jpg][link]].
>
> Here with orgmode 7.02, doing C-c C-o on the link moves the cursor on
> [fn:1] and says in the minibuffer: "Position saved mark to ring, go back
> with C-c &", instead of opening the linked file.
>
> Is this a bug?
>
2010-11-20 18:24:18 +01:00
Carsten Dominik dce955fad0 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-20 12:33:45 +01:00
Carsten Dominik 3dc846ae38 Make org-edit-special call the formula editor if cursor is in TBLFM line
* lisp/org.el (org-edit-special): Check also for TBLFM line.

Patch by Thorsten Wagner.
2010-11-20 12:33:37 +01:00
Carsten Dominik 967c71f5ef Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-20 00:11:46 +01:00
Nicolas Goaziou c538b0eeab Fix indentation of drawers, blocks and literal examples
* lisp/org.el (org-indent-line-function): drawers and blocks have no
  influence on indentation of text below. Also fix indentation problem
  with a block at column 0 and add a special case for literal examples.
2010-11-18 16:35:46 +01:00
John Wiegley 0ff8d32131 Now using pcomplete for in-buffer completion 2010-11-18 07:34:16 +01:00
Carsten Dominik 815374e952 Allow a user-define function for getting the base priority of a node
* lisp/org.el (org-get-priority-function): New option.
(org-get-priority): Call `org-get-priority-function' if that
has been set.
2010-11-17 09:12:47 +01:00
Carsten Dominik c2a366ac5a Add command names for chapters 4-7 2010-11-13 10:09:15 -06:00
Carsten Dominik c8832d6e27 Remove [home] and [end] bindings of unknown purpose 2010-11-12 15:35:49 -06:00
Carsten Dominik 1f40cbc596 New option to stop level nine headline to use level 1 face
* lisp/org-faces.el (org-cycle-level-faces): New option.
* lisp/org.el (org-get-level-face): Honor org-cycle-level-faces

Original patch by Jonathan BISSON, modified by Carsten Dominik
2010-11-12 13:37:38 -06:00
Carsten Dominik 42dd7afe45 Fix typo 2010-11-12 12:17:00 -06:00
Carsten Dominik af71c1b049 Send table in Org-mode as well, just like radio tables do it in other modes
* lisp/org.el (org-ctrl-c-ctrl-c): Consider sending a radio table also in Org
2010-11-12 09:28:22 -06:00
Carsten Dominik dd7b13bde8 Fix typo
Patch by Robert Goldman
2010-11-12 09:24:15 -06:00
David Maus 49a00abf3d Remove stale link handler for news: links
* org.el (org-open-at-point): Remove stale link handler for news:
links.

This condition case is never evaluated because the news: link is
already passed to `browse-url'.
2010-11-07 16:21:32 +01:00
Bastien Guerry 6630edbd0f Set version number to 7.3 2010-11-07 14:52:14 +01:00
Nicolas Goaziou e652a1ed85 Simplify and fix indentation code in lists
* org.el (org-indent-line-function): simplify code and remove bug that
  would insert a tab at the beginning of the line when trying to
  indent the item.
2010-11-04 19:05:10 +01:00
Carsten Dominik da0f4997fb Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-11-04 16:46:25 +01:00
Julien Danjou 3e4b139f1d org-agenda: return multiple results when sexp return a string with "; "
* lisp/org.el (org-diary-sexp-entry): Split sexp result strings at semicolon.

When evaluating my %%(org-calendar-holidays) on October 31st, I got a
line like:

"Halloween; Daylight Saving Time Ends 3:00am (CEST)"

And it displays in calendar:
3:00 .... Halloween; Daylight Saving Time Ends (CEST)

This is wrong since Halloween is all day, not only at 3:00.

Splitting results on "; " allows to have an independant entry on each
event and displays things correctly.

Signed-off-by: Julien Danjou <julien@danjou.info>
2010-11-04 13:05:50 +01:00
Carsten Dominik 106ad6e9e5 Fix sparse tree dispatch menu
* lisp/org.el (org-sparse-tree): Mention [r] in dispatch menu
2010-11-03 23:26:23 +01:00
Carsten Dominik 350b75be63 Rewrite of the clock table code
* lisp/org.el (org-shorten-string): New function.
* lisp/org-exp.el (org-export-convert-protected-spaces): New function.
(org-export-preprocess-string): Call
`org-export-convert-protected-spaces' to handle new hard spaces.

* lisp/org-clock.el (org-clocktable): New customization group.
(org-clocktable-defaults): New option.
(org-clock-clocktable-formatter): New option.
(org-clock-clocktable-default-properties): New option.
(org-dblock-write:clocktable): Rewrite to split out functionality
into separate functions.
(org-clocktable-write-default):
(org-clocktable-indent-string):
(org-clock-get-table-data): New functions.
* lisp/org-agenda.el (org-agenda-list):
(org-agenda-redo):
(org-agenda-clockreport-mode):
(org-agenda-set-mode-name): Rewrite to implement filtered clock tables.
* doc/org.texi (Clocking commands):
(The clock table): New sections.
(Agenda commands): Document filtered clock reports.
2010-11-02 08:47:23 +01:00
David Maus 7bef01a90f Check for heading that ends at end of buffer
* org.el (org-narrow-to-subtree): Check for heading that ends at end
of buffer.
2010-11-01 19:28:11 +01:00
Eric Schulte 421405df19 adding ob-calc to org-babel-load-languages
* lisp/org.el (org-babel-load-languages): adding calc
2010-10-29 19:02:44 -06:00
Carsten Dominik 82af72eef7 Push version number to 7.02trans 2010-10-29 09:11:46 +02:00
Łukasz Stelmach 47107b6612 Sexp diary entries may retrurn a list
* lisp/org-agenda.el (org-agenda-get-sexps): Handle lists as return values
from diary entries
* lisp/org-bbdb.el (org-bbdb-anniversaries): Handle lists of anniversaries
* lisp/org.el (org-diary-sexp-entry): Handle lists as return values
from diary entries.

 ukasz Stelmach <lukasz.stelmach@iem.pw.edu.pl> writes:

> I've disovered, that %%(org-bbdb-anniversaries) returns (as every other
> sexp) a string. Which is OK if there is only one.
>
>   Anniversaries:  John Doe's 10th wedding anniversary
>
> Unfortunately the agenda view becomes awful if we have noted Jane's
> weeding date too
>
>   Anniversaries:  John Doe's 10th wedding anniversary; Jane Doe's 10th wedding anniversary
>
> And what if we know 3 Eves and 5 Adams and it's Christmas Eve? (Hint:
> their name day)
[...]

As Thomas Bauman pointed out, there are functions that can be used in
sexps which return cons cells like this

    (nil . "Full Moon 3:35am (CEST)")

(this one is diary-lunar-phases), these aren't properly supported by the
previous version of my patch. This one can distinguish between such a
cons cell and a "real" list.

    ("John Doe's 10th wedding anniversary"
     "Jane Doe's 10th wedding anniversary")

This is because

    (consp (cdr '(a . b))) ; => nil

so org-diary-sexp-entry can be made return (cdr result) only in case of
the former cons cell. The third condition in the `cond' block is IMHO
enough as it is now, but if you think adding

    (listp (cdr result))

may help then be it.
2010-10-26 07:27:19 +02:00
Jambunathan K c1b8f41c37 Return 'dedicated on match when search must match exact headline
* org.el (org-link-search): Return 'dedicated on successful match when
org-link-search-must-match-exact-headline is set to t.
2010-10-24 20:35:44 +02:00
Carsten Dominik d0f737e9c2 Post-fix for globablvisibility patch
Patch by Michael Brandt
2010-10-24 18:09:24 +02:00
Carsten Dominik d600831eb7 Use better regexp for finding image links
* lisp/org.el (org-display-inline-images): Improve regexp
2010-10-23 14:43:00 +02:00
Carsten Dominik 94f2f59a93 Fix startup visibility bug
* lisp/org.el (org-cycle): Make sure resetting to startup visibility
works after another cycle command.

Gez writes:

> I have a query about the C-u C-u TAB command.  When I've just edited
> or used S-TAB (no matter which part of the global cycle it's on) C-u
> C-u TAB works as I would expect.  But if I've just used TAB, C-u C-u
> TAB cycles hrough -> CONTENTS -> SHOW ALL etc, even while the mini
> buffer displays "startup visibility plus VISIBILITY properties" at
> each stage of the cycle. C-u C-u TAB also cycles when it's repeated.
> I find it hard to keep track of whether it will cycle or not while I'm
> using it to view areas of the outline, so in effect, the only way I
> feel sure I can quickly return to my desired startup visibility is
> with S-TAB C-u C-u TAB, which is a lot of keystrokes! So my questions
> are - is this expected behaviour?  Can it be changed?
2010-10-22 18:14:18 +02:00
Carsten Dominik e85eee0624 Fix some issues in inline image display
* lisp/org.el (org-display-inline-images): Allow
non-ASCII characters in image file names.  Save match data.

Patch by Taichi Kawabata
2010-10-22 10:52:46 +02:00
Carsten Dominik a841867856 Update all ++ repeaters in an entry
* lisp/org.el (org-auto-repeat-maybe): Fix shifting multiple time stamps.

See http://www.mail-archive.com/emacs-orgmode@gnu.org/msg30284.html.

Patch by Andrew Korty
2010-10-22 09:57:28 +02:00
Carsten Dominik ca991d2ad4 HTML export: Improved support for field alignment, including centering
* doc/org.texi: Document the <c> cookie.
* lisp/org-exp.el (org-store-forced-table-alignment):
(org-export-remove-special-table-lines): Allow the "c" cookie for
table alignment.
* lisp/org-html.el (org-export-table-header-tags):
(org-export-table-data-tags): Add another %s format for the alignment.
(org-export-html-table-align-individual-fields): New option.
(org-format-org-table-html): Implement field-by-field alignment and
support centering.
(org-format-table-table-html): Make sure the new table tag formats
don't break this function.
* lisp/org-table.el (org-table-cookie-line-p):
(org-table-align): Allow for the <c> cookie.
* lisp/org.el (org-set-font-lock-defaults): Allow for the <c> cookie.
2010-10-22 09:19:39 +02:00
Carsten Dominik c41409c530 Enhance XEmacs compatibility
* lisp/org-list.el (org-list-search-unenclosed-generic): Replace call
to booleanp.

* lisp/org-compat.el (org-decompose-region): New defsubst.
* lisp/org.el (org-toggle-pretty-entities):
(org-unfontify-region): Use `org-decompose-region'.
2010-10-17 18:39:26 +02:00
Carsten Dominik c9bb51e883 Make it configurable wether agenda jumping prefers the future
* lisp/org.el (org-agenda-jump-prefer-future): New option.
* lisp/org-agenda.el (org-agenda-goto-date): Use
`org-agenda-jump-prefer-future'.
2010-10-17 08:32:23 +02:00
Carsten Dominik df5894cdcb Fix docstring of `org-insert-heading'
* lisp/org.el (org-insert-heading): Fix docstring.
2010-10-16 07:30:00 +02:00
Carsten Dominik bf8d076bb5 When on the headline of an inline task, insert another inline tasks
* lisp/org.el (org-insert-heading): When on the headline of an inline
task, insert another inline tasks.
2010-10-15 07:51:54 +02:00
Carsten Dominik 19d695ef8f Fix heading insertion with C-RET when inline tasks are involved
* lisp/org.el (org-insert-heading): Skip inline tasks when trying to
insert a new heading after the end of the subtree.
2010-10-14 11:03:47 +02:00
Carsten Dominik d44f065c08 Keep byte compiler happy 2010-10-14 10:36:21 +02:00
Carsten Dominik 575e502a53 Keep byte compiler happy 2010-10-14 10:30:43 +02:00
Carsten Dominik e101ec0c8e Fix headline insertion after inline task
* lisp/org-inlinetask.el (org-inlinetask-min-level): Set customization
type to integer or nil.
* lisp/org.el (org-insert-heading): When after an inline task, do not
use level but go back to headline level before the inline task
2010-10-14 10:29:56 +02:00
Carsten Dominik f5152e03a1 Fix indentation of text in inline tasks
* lisp/org-inlinetask.el (org-inlinetask-in-task-p): New function.
* lisp/org.el (org-indent-line-function): Fix indentation of inline tasks

Patch by Nicolas Goaziou
2010-10-14 10:16:06 +02:00
Carsten Dominik 79e8552ed3 Fix typo in customize type of variable `org-activate-link'
* lisp/org.el (org-activate-links): Fix customize type.
2010-10-14 10:12:41 +02:00
Carsten Dominik d0e70e8c81 Fix mathjax treatment of single letters in between dollars.
* lisp/org.el (org-format-latex): Fix mathjax treatment of single letters
in between dollars.
2010-10-10 09:18:24 +02:00
Carsten Dominik 4a8b676d28 Document the auto' setting of org-blank-before-new-entry'.
* lisp/org.el (org-blank-before-new-entry): Improve docstring.
2010-10-08 12:29:11 +02:00
Carsten Dominik 02357b0c2a Allow comma as a separator when specifying tags
* lisp/org.el (org-set-tags): Allow comma as a separator when
specifying tags at the completion interface.
(org-tags-completion-function): Allow comma as a separator when
specifying tags at the completion interface.

Patch by Richard Riley, extended by Carsten
2010-10-05 09:56:32 +02:00
Bernt Hansen 3b1c72ae9f Always run org-insert-heading-hook when creating headlines
* lisp/org.el (org-insert-heading): Run org-insert-heading-hook when creating
the first heading in a file

The org-insert-heading-hook was skipped when creating the first
heading in a new org file.
2010-09-30 05:22:33 +02:00
Carsten Dominik 9f96a1ead1 New STARTUP keywords to turn on inline images
* lisp/org.el (org-startup-with-inline-images): New option.
(org-startup-options): Add new keywords inlineimages and
noinlineimages.
(org-mode): Inline images when this has been configured.
* doc/org.texi (Handling links):
(In-buffer settings): Document inlining images on startup.
2010-09-29 08:18:39 +02:00
Eric Schulte 60dbabb263 Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode 2010-09-26 14:00:41 -06:00
Jambunathan K e7bf631fdc enable speed commands for Babel commands on code blocks
* lisp/org.el (org-speed-command-hook): added org-speed-command-hook
  (org-babel-speed-command-hook): hook for Babel's speed commands
2010-09-23 17:01:17 -06:00