Commit Graph

2270 Commits

Author SHA1 Message Date
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
David Maus bcfe9cd5d0 Escape link path only if path contains space or non-ascii character
* org.el (org-open-at-point): Escape link path for http:, https:,
ftp:, news:, and doi: links only if the path contains space or
non-ascii character.

This should take care of mistakenly double-escaped links as reported
by Jeff Horn in <http://article.gmane.org/gmane.emacs.orgmode/48731>.

We are just guessing here and push the responsibility for proper
escaping to the target application.
2011-12-20 23:53:39 +01:00
David Maus 0c09a9e768 Ignore headlines without a true headline
* org.el (org-refile-get-targets): Ignore headlines without a true
headline.

This fixes a bug reported by Nathan Neff in
<http://article.gmane.org/gmane.emacs.orgmode/50035>.

Headlines with just a keyword are ignored as possible refile target.
2011-12-18 20:28:00 +01:00
Bastien Guerry 490d6ace10 Update website to show 7.8.02 as current release 2011-12-13 00:34:34 +00:00
Bastien Guerry 4ecf626ee7 Update website to show 7.8.01 as current release 2011-12-12 23:24:11 +00:00
Bastien Guerry f30ade0151 Update website to show 7.8 as current release 2011-12-12 17:08:28 +00:00
Bastien Guerry e56e2c8760 Silent a few byte-compiler warnings.
* org.el (org-block-regexp)
(org-heading-keyword-regexp-format)
(org-heading-keyword-maybe-regexp-format): Move up to keep the
byte-compiler happy.

* org-special-blocks.el (org-html): Require 'org-html.
(org-open-par, org-close-par-maybe): Declare as functions.

* ob.el (org-reduce): Declare as a function.
(org-current-export-file): Declare.

* ob-ref.el (org-babel-update-intermediate): Make a defvar.
2011-12-12 18:04:15 +01:00
Bastien Guerry 44f98b651d Fix a few docstrings.
Thanks to Paul Eggert for fixing this in Emacs.
2011-12-12 14:38:59 +01:00
Michael Brand 68cc108759 Completion of remapping for Outline functions
* lisp/org.el Key bindings: remap the Outline functions from
`outline-mode-prefix-map' where possible.
2011-12-11 19:43:53 +01:00
Peter Münster 0472ccdc99 Timestamps: Fix org-schedule and org-deadline with absolute time arguments
* lisp/org.el (org-add-planning-info): Treat absolute time too.

TINYCHANGE
2011-12-11 18:44:00 +01:00
Michael Brand 2091083323 Bugfix open 1 link from list; doc more link types
* doc/org.texi (External links): Document the link types file+sys and
file+emacs, slightly narrow used page width.
* lisp/org.el (org-offer-links-in-entry): Make list when assigning a
single link.

"M-1 C-c C-o" or (org-open-at-point 1) or (org-offer-links-in-entry 1)
on a headline followed by two links enters Lisp error.  Both changes
are remainders of the commit release_6.33f-189-g3e0c61d.
2011-12-11 18:18:40 +01:00
Eric Schulte a706d16127 wrap code block results in drawers rather than blocks
* lisp/ob.el (org-babel-insert-result): Do not examplize wrapped
  scalar results, simply wrap them.
  (org-babel-result-end): Find the end of results wrapped in a RESULTS
  drawer.
2011-12-11 09:51:27 -07:00
Bastien Guerry cd447fa11d Make `org-todo-yesterday' call `org-agenda-todo-yesterday' if necessary.
* org.el (org-todo-yesterday): When called from the agenda,
use `org-agenda-todo-yesterday' instead.
2011-12-11 17:52:10 +01:00
Jambunathan K 0e859c62b5 org.el (org-modules): odt is no longer a contrib module 2011-12-10 18:12:58 +01:00
Eric Schulte 6cad241b0e moving ob-picolisp into the core
Thanks to Thorsten Jolitz for contributing support for this new
language.

* Makefile (LISPF): Add ob-picolisp to the Makefile.
* contrib/babel/langs/ob-picolisp.el: Remove from contrib.
* lisp/ob-picolisp.el: Add to core lisp directory.
* lisp/org.el (org-babel-load-languages): Add Pico Lisp to the list of
  supported code block languages.
2011-11-29 09:05:31 -07:00
Bastien Guerry fd94918e41 org.el: Fix two typos in docstrings.
* org.el (org-link-unescape, org-link-unescape-compound): Fix two
  typos in docstrings.
2011-11-28 15:07:49 +01:00
David Maus 4d312a07f5 Remove clocking information when preparing a clone
* org.el (org-clone-subtree-with-time-shift): Remove clocking
information and empty drawers when preparing a clone.

Fixes a regression introduced by
516b2fbb87, reported by Bernt Hansen in
http://article.gmane.org/gmane.emacs.orgmode/49385
2011-11-23 21:35:35 +01:00
Carsten Dominik c52c23fdfd Merge branch 'master' of orgmode.org:org-mode 2011-11-23 07:36:23 +01:00
Carsten Dominik 6107173c78 Require parse-time for `org-read-date-get-relative' 2011-11-23 07:36:07 +01:00
Eric Schulte 1b014d1cb2 Merge branch 'master' of orgmode.org:org-mode 2011-11-20 09:40:52 -07:00
Eric Schulte 15417f67c4 Added a less functional Org-mode copy of the cl reduce function.
* lisp/org.el (org-reduce): Added a less functional Org-mode copy of
  the cl reduce function.
2011-11-20 09:38:54 -07:00
Nicolas Goaziou b5935f777e Fontify src blocks following a "name" keyword
* lisp/org.el (org-fontify-meta-lines-and-blocks-1): Recognize "name"
  as a valid keyword that can preceed a block.
2011-11-20 10:40:25 +01:00
Carsten Dominik 78f7382879 Merge branch 'master' of orgmode.org:org-mode 2011-11-17 18:06:20 +01:00
Carsten Dominik 773596e347 Use prefix arg 0 to inhibit note taking for TODO change
* lisp/org.el (org-todo): Interpret 0 prefix arg as note inhibitor.

Sometimes I want to quickly make a few TODOs done in the agenda and I
want to bypass the note taking I have normally set up.  With this
change, I can press `0 t d' in the agenda to do this.
2011-11-17 08:56:11 +01:00
Milan Zamazal a5ed98e452 Create visibility overlays properly
* org.el (org-set-outline-overlay-data): Use outline-flag-region to make a
region invisible.  This ensures all necessary actions, especially adding
isearch-open-invisible property, are applied.
2011-11-15 18:39:57 +01:00
Eric Schulte 3af89e696a property names ending in plus accumulate
This results in the following behavior.

  #+property: var  foo=1
  #+property: var+ bar=2

  #+begin_src emacs-lisp
    (+ foo bar)
  #+end_src

  #+results:
  : 3

  #+begin_src emacs-lisp
    (org-entry-get (point) "var" t)
  #+end_src

  #+results:
  : foo=1 bar=2

  * overwriting a file-wide property
    :PROPERTIES:
    :var:      foo=7
    :END:

  #+begin_src emacs-lisp
    foo
  #+end_src

  #+results:
  : 7

  #+begin_src emacs-lisp
    (org-entry-get (point) "var" t)
  #+end_src

  #+results:
  : foo=7

  * appending to a file-wide property
    :PROPERTIES:
    :var+:      baz=3
    :END:

  #+begin_src emacs-lisp
    (+ foo bar baz)
  #+end_src

  #+results:
  : 6

  #+begin_src emacs-lisp
    (org-entry-get (point) "var" t)
  #+end_src

  #+results:
  : foo=1 bar=2 baz=3

* lisp/org.el (org-update-property-plist): Updates a given property
  list with a property name and a property value.
  (org-set-regexps-and-options): Use org-update-property-plist.
  (org-entry-get): Use org-update-property-plist.
* testing/examples/property-inheritance.org: Example file for testing
  appending property behavior.
* testing/lisp/test-property-inheritance.el: Tests of appending
  property behavior.
* lisp/ob.el (org-babel-balanced-split): Allow splitting on single
  characters as well as groups of two characters.
  (org-babel-parse-multiple-vars): Split variables on single spaces.
2011-11-15 08:56:24 -07:00
Eric Schulte 7e93b90f88 Standardized code block keywords
Nick Dokos <nicholas.dokos@hp.com> writes:

> Eric Schulte <schulte.eric@gmail.com> wrote:
>
>> The attached updated patch fixes a bug in the original.
>>
>
> Minor problem in applying:
>
> ,----
> | $ git apply ~/Mail/inbox/724
> | /home/nick/Mail/inbox/724:671: trailing whitespace.
> | #+name:
> | /home/nick/Mail/inbox/724:599: new blank line at EOF.
> | +
> | warning: 2 lines add whitespace errors.
> `----

The attached version fixes these issues, Thanks -- Eric

>From 0e43d59ee8d46a63f86780a502de726271bc39de Mon Sep 17 00:00:00 2001
From: Eric Schulte <schulte.eric@gmail.com>
Date: Fri, 28 Oct 2011 10:44:21 -0600
Subject: [PATCH] removing code block, results and call-line synonyms -- BREAKING CHANGE

Following a round of on-list discussion many code block synonyms have
been removed, moving forward the following syntax is valid.

- call lines are specified with #+call:
- code blocks are named with #+name:
- results are named with #+name:, however results generated by a code
  block may still be labeled with #+results:, and tables named with
  #+tblname: will be considered to be named results

The following function may be used to update an existing Org-mode
buffer to the new syntax.

  (defun update-org-buffer ()
    "Update an Org-mode buffer to the new data, code block and call line syntax."
    (interactive)
    (save-excursion
      (flet ((to-re (lst) (concat "^[ \t]*#\\+" (regexp-opt lst t)
                                  "\\(\\[\\([[:alnum:]]+\\)\\]\\)?\\:[ \t]*"))
             (update (re new)
                     (goto-char (point-min))
                     (while (re-search-forward re nil t)
                       (replace-match new nil nil nil 1))))
        (let ((old-re (to-re '("RESULTS" "DATA" "SRCNAME" "SOURCE")))
              (lob-re (to-re '("LOB")))
              (case-fold-search t))
          (update old-re "name")
          (update lob-re "call")))))

Note: If an old version of Org-mode (e.g., the one shipped with Emacs)
      is installed on your system many of the important variables will
      be pre-defined with a defvar and *will not* have their values
      automatically updated, these include the following.
      - org-babel-data-names
      - org-babel-result-regexp
      - org-babel-src-block-regexp
      - org-babel-src-name-regexp
      - org-babel-src-name-w-name-regexp
      It may be necessary to either remove the source code of older
      versions of Org-mode, or to explicitly evaluate the ob.el file.

* lisp/ob-exp.el (org-exp-res/src-name-cleanup): Updated
  Documentation.
* lisp/ob-lob.el (org-babel-block-lob-one-liner-regexp): Updated
  regular expression.
  (org-babel-inline-lob-one-liner-regexp): Updated regular expression.
* lisp/ob-ref.el (org-babel-ref-resolve): Notice when something that
  looks like a data results may actually be a code block.
* lisp/ob-table.el: Updated documentation.
* lisp/ob.el (org-babel-src-name-regexp): Simplified regexp.
  (org-babel-get-src-block-info): Updated match strings.
  (org-babel-data-names): Simplified acceptable names.
  (org-babel-find-named-block): Indentation.
  (org-babel-find-named-result): Updated to not return a code block as
  a result.
* lisp/org.el (org-fontify-meta-lines-and-blocks-1): Removing
  references to old syntactic elements.
  (org-additional-option-like-keywords): Removing references to old
  syntactic elements.
* contrib/babel/library-of-babel.org: Updated to make use of the new
  syntax.
* testing/examples/babel-dangerous.org: Updated to make use of the new
  syntax.
* testing/examples/babel.org: Updated to make use of the new syntax.
* testing/examples/ob-awk-test.org: Updated to make use of the new
  syntax.
* testing/examples/ob-fortran-test.org: Updated to make use of the new
  syntax.
* testing/lisp/test-ob.el: Removed two bad tests which tested the
  literal values of old regular expressions rather than their
  behavior.
2011-11-15 08:56:24 -07:00
Nicolas Goaziou b13b3e30d7 Allow cdlatex expansions at a list item or an headline
* lisp/org.el (org-try-cdlatex-tab): Don't try to expand a LaTeX
environment when at an item or an headline, but allow LaTeX
fragments.
(org-cycle): Try to call `cdlatex-tab' before cycling item's or
headline's visibility, in order to catch LaTeX fragments within.

This patch is based on the report and work of Maik Beckmann.
2011-11-13 10:31:47 +01:00
Carsten Dominik 059e4bd5e3 Merge branch 'timestamps-without-dayname' 2011-11-09 19:18:02 +01:00
Carsten Dominik 278d5afa2f Allow time stampes without day name
* lisp/org-clock.el (org-clock-in):
(org-clock-find-position): Make space after date optional.
* lisp/org.el (org-set-regexps-and-options):
(org-ts-regexp):
(org-ts-regexp-both):
(org-ts-regexp1):
(org-ctrl-c-ctrl-c): Make `C-c C-c' on date fix the time stamp

* doc/org.texi (Creating timestamps): Document the effect of `C-c C-c'
on a timestamp.
2011-11-09 18:55:27 +01:00
Eric Schulte 6bbc3566f7 bring ob-fortran into the core -- FSF assignment completion
Thanks to Sergey Litvinov for contributing this language support!

* lisp/ob-fortran.el: Adding support for Fortran code blocks.
* Makefile (LISPF): Compile Fortran support.
* lisp/org.el (org-babel-load-languages): Adding fortran to this list.
2011-11-08 14:18:57 -07:00
Nicolas Goaziou 2a58775d9e Correctly fontify headlines with special keywords
* lisp/org.el (org-set-font-lock-defaults): Fix small error in
  matching group that prevented fontification of keywords like
  org-comment-string and stars in headlines.
2011-11-03 21:23:59 +01:00
Carsten Dominik 4d2a5c97f2 Merge branch 'master' of orgmode.org:org-mode 2011-11-03 08:57:36 +01:00
Carsten Dominik 31d9fd44ac Make it possible to check before invisible edits
* lisp/org.el (org-catch-invisible-edits): New option.
(org-self-insert-command):
(org-delete-backward-char):
(org-delete-char): Call `org-check-before-invisible-edit'.
(org-check-before-invisible-edit): New function.
2011-11-03 08:57:26 +01:00
Nicolas Goaziou e31e89430a Globalize some variables to make them available in buffers not in Org mode
* lisp/org.el (org-heading-regexp, org-heading-keyword-regexp-format,
  org-heading-keyword-maybe-regexp-format): Globalize variables so
  they are accessible even in buffers not in Org mode.
2011-11-01 11:40:11 +01:00
David Maus a9559dc08a Don't use default-description if link description function is defined
* org.el (org-insert-link): Don't use default-description if a
`org-make-link-description-function' is defined.
2011-11-01 06:24:42 +01:00
Eric Schulte 8354fd9e0f Allow multi-line properties to be specified in property blocks
#+begin_property
    var foo=1,
        bar=2,
        baz=3,
        qux=4
  #+end_property
  #+begin_src emacs-lisp
    (+ foo bar baz qux)
  #+end_src

  #+results:
  : 10

* lisp/org.el (org-set-regexps-and-options): Use property blocks for
  multi-line properties.
2011-10-31 12:28:50 -06:00
Bastien Guerry b3e1e7320f org.el: Don't throw an error when editing takes place at the first point of the buffer.
* org.el (org-self-insert-command): Don't throw an error when
editing takes place at the first point of the buffer.

Thanks to Carsten Dominik for pointing this error.
2011-10-30 09:58:37 +01:00
Bastien Guerry d3370f1608 org.el: Unfold invisible region at point or right before point when editing.
* org.el (org-self-insert-command): Unfold invisible region at
point or right before point when editing.

Thanks to Suvayu Ali for discussing this.
2011-10-30 02:58:31 +02:00
Nicolas Goaziou cfed6e9366 Add a way to search for a link search without impacting buffer visibility
* lisp/org.el (org-link-search): Add an optional argument preventing
  function from revealing context around match.
2011-10-28 17:36:14 +02:00
Bastien Guerry 6da350bf06 org.el: Fix bug when matching the face property before following a link.
* org.el (org-return): Fix bug when matching the face property
before following a link.

Thanks to Paul Sexton for the analysis and the fix.
2011-10-28 16:42:20 +02:00
Carsten Dominik f6a766548c Save complex heading regexp for column view
* lisp/org.el (org-scan-tags): Also remember `org-complex-heading-regexp'
in a property.
2011-10-28 14:47:32 +02:00
Bastien Guerry de8cd8ee41 Bugfix: make `org-return' detect 'org-link face properly.
* org.el (org-return): Check the presence of the 'org-link
face even in contexts where there is more than one face.

Thanks to Maximilian Matthé for reporting this bug.
2011-10-26 19:20:12 +02:00
Yuri Lenskiy 6115980993 Addition of default-description parameter to org-insert-link
This patch, against the stable 7.7 branch version of org.el, adds a
default-description argument to org-insert-link that, if non-nil, will
become the default description.

- Yuri Lenskiy
2011-10-26 19:04:36 +02:00
Nicolas Goaziou dba3e22c93 Have a more informative return value for `org-in-block-p'
* lisp/org.el (org-in-block-p): Return matched name of block, if any.
  It can be useful when a list of block names is provided as an argument.
2011-10-26 10:45:28 +02:00
Bastien Guerry 2494eaea49 Minor docstring fix.
Thanks to Peter Münster for spotting this.
2011-10-24 23:47:59 +02:00
Nicolas Goaziou 77eeb0df1b Fix regexps for headlines
* lisp/org.el (org-set-regexps-and-options): Fix small bug introduced
  by commit dfcb6faef1.
2011-10-23 18:14:58 +02:00
Nicolas Goaziou dfcb6faef1 Provide more consistent regexps for headlines
* lisp/org-agenda.el (org-search-view): Simplify regexp.
(org-agenda-get-todos): Use new format string.
* lisp/org-archive.el (org-archive-all-done): Simplify regexp.
* lisp/org-ascii.el (org-export-as-ascii): More accurate regexp.
* lisp/org-colview-xemacs.el (org-columns-capture-view): Use new
  format string and new string.
* lisp/org-colview.el (org-columns-capture-view): Use new format
  string and new string.
* lisp/org-docbook.el (org-export-as-docbook): More accurate
  regexp.  Also use new regexp to match generic headlines.
* lisp/org-exp.el (org-export-protect-quoted-subtrees): More accurate
  regexp.  Also use new regexp to match generic headlines.
* lisp/org-html.el (org-export-as-html): More accurate regexp.  Also
  use new regexp to match generic headlines.
* lisp/org-mouse.el (org-mouse-match-todo-keyword): Removed unused
  and now erroneous function.
* lisp/org.el (org-heading-regexp, org-heading-keyword-regexp-format):
  New variables.
(org-set-regexps-and-options): Create regexps according to the
following rule: use spaces only to separate elements from an headline,
while allowing mixed tabs and spaces for any indentation job.
(org-nl-done-regexp, org-looking-at-done-regexp): Removed variables.
(org-set-font-lock-defaults): Fontify again headlines with a keyword
and no other text.  Use new format strings.
(org-get-heading, org-toggle-comment, org-prepare-agenda-buffers,
org-toggle-fixed-width-section): Use new format string.
(org-todo): More accurate regexps.
(org-point-at-end-of-empty-headline): Simplify regexp.
(org-insert-heading): Headline can sometimes be nil.

This patch attempts to reduce the number of hard-coded headlines, by
providing two format strings and one generic string to cover most of
the cases of headline construction.
2011-10-23 09:30:13 +02:00
David Maus 2ac0810d19 Skip invisible headlines when mapping over headlines in active region
* org.el (org-deadline, org-schedule): Skip invisible headlines when
mapping over headlines in active region.
2011-10-22 16:20:14 +02:00
David Maus e67a28e963 New customization variable: Loop over headlines in active region
* org.el (org-loop-over-headlines-in-active-region): New customization
variable. Loop over headlines in active region.
(org-schedule, org-deadline): Apply to headlines in region depending
on new customization variable.
2011-10-22 16:19:25 +02:00
David Maus 810a2e8a5d Immediately return if scope is 'region but no region is active
* org.el (org-map-entries): Immediately return if scope is 'region but
no region is active.
2011-10-22 16:17:50 +02:00
David Maus 336cc53518 Extend scope 'region to include entire body of last headline in active region
* org.el (org-map-entries): Extend scope 'region to include
entire body of last headline in active region.
2011-10-22 16:17:43 +02:00
Bastien Guerry da5a68a0bc Rename `org-format-agenda-item' to `org-agenda-format-item'.
* org.el (org-format-agenda-item, org-scan-tags): Rename
`org-format-agenda-item' to `org-agenda-format-item'.

* org-agenda.el (org-search-view)
(org-get-entries-from-diary, 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)
(org-agenda-format-item, org-agenda-add-time-grid-maybe)
(org-agenda-change-all-lines)
(org-agenda-add-entry-to-org-agenda-diary-file): Rename
`org-format-agenda-item' to `org-agenda-format-item'.

Using the `org-agenda-' prefix makes more sense here.
2011-10-22 15:08:33 +02:00
Bastien Guerry a46f58e7d0 * org.el: Declare external function `cdlatex-compute-tables'.
* org.el (cdlatex-compute-tables): Declare external function
`cdlatex-compute-tables'.
2011-10-22 15:01:02 +02:00
Tassilo Horn 4bbdfd229d Replace org-mode-p with usual (eq major-mode 'org-mode) check
Additionally, replace one

  (or (org-mode-p) (derived-mode-p 'org-mode))

with

  (derived-mode-p 'org-mode)

cause that is reflexive anyway (returns true, if the current mode is
org-mode).

Delete one check testing for org-mode or org derived mode
2011-10-22 11:29:24 +02:00
Rafael Laboissiere aa2ebf4f7b Fix typos in variable description
* lisp/org.el (org-link-search-must-match-exact-headline): Fix typos.

TINYCHANGE
2011-10-22 11:15:42 +02:00
Carsten Dominik 8d1b48fd5f Merge branch 'master' of orgmode.org:org-mode 2011-10-21 23:32:35 +02:00
Carsten Dominik 54a9cb0d99 Maintain XEmacs compatibility
* lisp/ob-calc.el (featurep): Require calc-store.
* lisp/org-agenda.el (org-agenda-list-stuck-projects): Fix regexp
special handling.
* lisp/org-compat.el (fboundp): Support for XEmacs.
* lisp/org-exp.el (org-export): Protect XEmacs from `(redisplay)' call.
* lisp/org-footnote.el (org-footnote-re): Optimize macro processing.
* lisp/org.el (org-set-autofill-regexps): Xemacs compatibility.

Patch by Michael Sperber, checked and slightly modified by Carsten.
2011-10-21 22:36:53 +02:00
Bastien Guerry 5091facd7f org.el: Enable recursive minibuffers in `org-completing-read'.
org.el: (org-completing-read): Enable recursive minibuffers and add
the `C-c !' key in the minibuffer local map.

Thanks to Skip Collins for the idea and to Nick Dokos for the
implementation.
2011-10-21 17:46:37 +02:00
Bastien Guerry b2632dc458 org.el: Remap `outline-promote' and `outline-demote' keys.
* org.el: Remap `outline-promote' and `outline-demote' keys to
`org-promote-subtree' and `org-demote-subtree'.

Thanks to Michael Brand for the suggestion.
2011-10-21 16:21:49 +02:00
Carsten Dominik d622d2f709 Make sure cdlatex customization is taken into account properly
* lisp/org.el (org-cdlatex-mode): Run cdlatex-mode-hook and update
the internal cdlatex tables.
2011-10-19 18:56:13 +02:00
Carsten Dominik a9a304d938 Keep byte compiler happy 2011-10-16 16:54:52 +02:00
Carsten Dominik 782a172110 Fix parenthesis error 2011-10-16 16:51:13 +02:00
Carsten Dominik 9a132f3164 Remove table overlays before restart
* lisp/org.el (org-ctrl-c-ctrl-c): Remove table overlays before restart.
2011-10-16 13:38:48 +02:00
Carsten Dominik a9689b8750 Match entities before number, so that \sim2 is fontified correctly
* lisp/org.el (org-fontify-entities): Match entities before numbers, as in
`\sim2'.
2011-10-16 13:23:02 +02:00
Carsten Dominik 85cce6fa85 Move some of the new defcustoms to the customization section 2011-10-16 10:57:21 +02:00
Carsten Dominik 4f2f222c00 Add support for LaTeX to MathML conversion
* lisp/org.el (org-latex-to-mathml-jar-file)
(org-latex-to-mathml-convert-command): New user-customizable
variables.
(org-format-latex-mathml-available-p, org-create-math-formula)
(org-format-latex-as-mathml): New functions.
(org-format-latex): Add a new local variable block-type that
notes the nature of the equation - inline or display.
Associate it's value to `org-latex-src-embed-type' property of
dvipng links.  Add mathml as new processing type.

Patch by Jambunathan.
2011-10-16 10:52:32 +02:00
Sébastien Vauban 05ead2de3b Rebase: Add tree name to prompt
* lisp/org.el (org-refile): Add tree name to prompt.
2011-10-14 11:20:35 +02:00
Nicolas Goaziou 8e358f2cef Allow subscripts and superscripts to start at bol
* lisp/org.el (org-match-substring-regexp,
  org-match-substring-with-braces-regexp): Allow subscripts and
  superscripts to start at beginning of line.
2011-10-09 09:35:27 +02:00
John J Foerch a5d4783a7e Short timestamp in org-log-note-headings
Two new format codes support insertion of a short-format time stamp.
%d for an inactive time stamp, and %D for an active one.

* lisp/org.el (org-log-note-headings): Document new %d and %D escapes.
(org-store-log-note): Implement new %d and %D escapes.

TINYCHANGE
2011-10-08 17:55:17 +02:00
Eric Schulte 53573d6e28 adding initial support for evaluation of shen code blocks 2011-10-06 19:55:47 -06:00
Carsten Dominik 5147f6b008 Make org-open-at-point only ask once whether new header should be created
* lisp/org.el (org-open-at-point): Make org-open-at-point only ask once
about creating a new headline

When following "thisfile" links org-open-at-point is kind enough to
retry org-link-search again after widening the buffer it can't be
found. However org-link-search also asks the question "No match -
create this as a new heading? (y or n)" when target can't be
found. This means that the question is asked twice when following a
nonexistent link and answering no.

This is fixed by setting org-link-search-inhibit-query in first try,
so only second invocation asks the question.

TINYCHANGE

Patch by Anders Waldenborg
2011-10-06 10:53:31 +02:00
Nick Dokos 1d65423da8 Bug: org-refile-targets doesn't say whether it's AND or OR [7.7 (release_7.7.351.gb8b5)]
Dave Abrahams <dave@boostpro.com> wrote:

> I would change the doc for org-refile-targets to say that the resulting
> list of targets is the union of all the targets matched by each cons
> cell.  I think you could take that pretty much verbatim.
>

How's this?

Nick

---------------------------------------------------------------------------
>From f853b04fb474493b3b7b8857794c9f120c5f7822 Mon Sep 17 00:00:00 2001
From: Nick Dokos <nick@dokosmarshall.org>
Date: Wed, 28 Sep 2011 23:49:13 -0400
Subject: [PATCH] Amplify the doc for org-refile-targets

* lisp/org.el: (org-refile-targets) Elaborated the documentation of
               the variable as suggested by Dave Abrahams.

TINYCHANGE
2011-10-06 10:13:05 +02:00
Carsten Dominik 2978501ad0 Bugfix for alignment of tag next to header name
* lisp/org.el (org-align-tags-here): Allow tags to be placed right
after heading.
(org-tags-column): Document the meaning of tags column 0.

Patch by Michael Brand.

TINYCHANGE
2011-10-06 09:44:08 +02:00
Carsten Dominik 1790d6c073 Make org-refile interface for jumping to a target work before first heading
* lisp/org.el (org-refile-get-location): Ignore errors when
collection heading to be excluded.
2011-10-05 16:23:03 +02:00
Carsten Dominik 620913e596 Improve error reporting on bad time stamps during agenda construction
* lisp/org.el (org-time-string-to-time):
(org-time-string-to-absolute): Add optional arguments BUFFER and POS
for error reporting.
* lisp/org-agenda.el (org-get-all-dates):
(org-agenda-get-timestamps):
(org-agenda-get-deadlines):
(org-agenda-get-scheduled):
(org-agenda-get-blocks): Call time stamp parsing functions with
information on where the timestamp was taken from.
2011-10-04 14:12:11 +02:00
Carsten Dominik a33fc1ce7d Fix typo in previous commit 2011-10-04 10:00:10 +02:00
Carsten Dominik 3268d3b48f Run `org-cycle-hook' after `show-all' in indirect buffer
* lisp/org.el (org-tree-to-indirect-buffer): Run `org-cycle-hook' after `show-all'
in indirect buffer.
2011-10-04 09:57:02 +02:00
Nicolas Goaziou 809318dd5b Better handling of ill-formed lists
* lisp/org-list.el (org-list-parents-alist): When no parent is found
  for an item, set it as the closest less indented item above.  If
  none is found, make it a top level item.
(org-list-write-struct): Externalize code.
(org-list-struct-fix-item-end): New function.
(org-list-struct): Remove a now useless fix.
* lisp/org.el (org-ctrl-c-ctrl-c): Use new function.
2011-10-02 23:17:11 +02:00
Nicolas Goaziou 824e06752b `org-special-ctrl-a/e' effectively behaves specially on items
* lisp/org.el (org-end-of-line): When on an item, move point at the
  end of the line, but before any hidden text.  Thus, it's still
  possible to use commands, like C-c C-c, acting at items.  This is
  still disabled if `org-special-ctrl-a/e' ignores C-e.
2011-10-01 20:37:16 +02:00
Eli Zaretskii 1a97f29c34 Force left-to-right paragraphs in Org buffers.
* org.el (org-mode): Force left-to-right paragraphs in Org
buffers.  For a related discussions, see
https://lists.gnu.org/archive/html/emacs-devel/2011-09/msg00349.html.
2011-09-27 19:33:09 +02:00
John Wiegley 706de59f07 Fixed an incorrect paren placement 2011-09-24 12:06:25 -05:00
Carsten Dominik c7ee700bf5 Remove unnecessary `concat'
* lisp/org.el (org-paste-subtree): Remove unnecessary `concat'.
2011-09-20 10:32:41 +02:00
David Maus 4122a51366 Unescape plain link before open
* org.el (org-open-at-point): Unescape plain link.

This should fix a problem with open plain links reported by
Sebastien Vauban.
2011-09-11 16:51:23 +02:00
Bastien Guerry 28ae6b4de1 Revert "org.el (org-fixup-indentation): Correctly indent meta lines."
This reverts commit 6b04befa48.
2011-09-09 19:47:41 +02:00
Nicolas Goaziou 63ce11b1ca Allow $...$ and $x$ latex fragment types at beginning of line
* lisp/org.el (org-latex-regexps): Allow matching latex fragments of
  type "$" and "$1" at beginning of line.
2011-08-27 15:04:51 +02:00
Bastien Guerry eabea0ef85 * org.el (org-archive-location): Minor docstring fix.
Thanks to John Hendy for pointing this out.
2011-08-25 00:33:13 +02:00
Nicolas Goaziou 25131410f4 Correctly find unchecked boxes in a section
* lisp/org.el (org-block-todo-from-checkboxes):
  `org-list-search-forward' should be used when looking for an item,
  as it filters out contexts where match couldn't be in
  a list (i.e. example blocks). Also use a correct item regexp, taking
  into account alphabetical ordered lists and counters.
2011-08-24 18:30:47 +02:00
Bastien Guerry 15798836e2 New 'org-category-position text property in agendas.
* org.el (org-refresh-category-properties): New text property
'org-category-position to point at the beginning of the
headline from which the category is set.

* 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)
(org-agenda-filter-by-tag-refine): Add the
'org-category-position text property.

This commit prepares for a future `org-agenda-set-category'
function allowing to set the category of the headline at point.
2011-08-23 17:34:15 +02:00
Matt Lundin 8478a5541c No need to call org-back-to-heading with goto argument.
* lisp/org.el: (org-refile) Don't call org-back-to-heading with goto
  argument.

This fixes an error that results when calling org-refile with the
GOTO argument in a non-org buffer.
2011-08-23 17:00:36 +02:00
Bastien Guerry 7475d7da1f org.el: Remove `org-link-display-descriptive' and use `org-descriptive-links'.
* org.el (org-link-display-descriptive): Remove this option
and rely on the existing `org-descriptive-links' instead.
(org-toggle-link-display): Use `org-descriptive-links'.

Without this change, both options are redundant.  This also
fixes a bug about using `org-descriptive-links' in the `org-mode'
function, that initialize the display using `org-descriptive-links'
instead of `org-link-display-descriptive'.

Thanks to Thomas S. Dye for spotting this.
2011-08-23 16:55:48 +02:00
Bastien Guerry 3e33c9c37e * org.el (org-set-property): Bugfix. 2011-08-19 23:55:04 +02:00
Bastien Guerry cdbf7ed876 Revert "Move three functions and add appropriate require/declarations."
This reverts commit 8c3ecbe39a.
2011-08-19 22:11:15 +02:00
Bastien Guerry 5b51893824 org.el: tiny docstring fix. 2011-08-19 17:42:27 +02:00
Bastien Guerry 1bb83091a9 org.el (org-fixup-indentation): Fix various small bugs.
* org.el (org-fixup-indentation): Fix various small bugs.

Thanks to Sébastien Vauban for reporting them.
2011-08-19 09:41:15 +02:00
Bastien Guerry 0538dd3188 Fix some double-space after ponctuation mark in docstrings. 2011-08-18 18:38:05 +02:00
Bastien Guerry 6b04befa48 org.el (org-fixup-indentation): Correctly indent meta lines.
* org.el (org-fixup-indentation): Correctly indent meta lines.

Thanks to Sébastien Vauban for reporting this.
2011-08-18 18:18:04 +02:00
Nicolas Goaziou 4771caa09c Improve compatibility between org-indent-mode and visual-line-mode
* lisp/org-indent.el (org-indent-mode): completely refresh buffer
  before starting org-indent-mode. Also set idle timer to refresh only
  visible portion of buffer, and refresh the subtree instead of
  section when promoting or demoting it.
  (org-indent-add-properties): rewrite function to proceed line by
  line, as required by `wrap-prefix' specificity.
  (org-indent-refresh-section,org-indent-refresh-subtree): refactor.
  (org-indent-refresh-view): new function.
  (org-indent-refresh-to, org-indent-refresh-section): removed
  functions.
* lisp/org.el (org-unfontify-region): do not remove prefix properties
  when unfontifying a region.
2011-08-18 10:41:30 +02:00
Bastien Guerry 8c3ecbe39a Move three functions and add appropriate require/declarations.
* org-clock.el (org-duration-string-to-minutes)
(org-minutes-to-hh:mm-string, org-hh:mm-string-to-minutes):
Move from org.el.
2011-08-17 16:08:02 +02:00
Bastien Guerry ea055d3e6d org.el: Minor update of docstrings.
(org-open-at-mouse): Point to the docstring of `org-open-file'
for more details.
(org-open-file): Mention `org-link-frame-setup' in the
docstring.

Thanks to Reiner Steib for pointing at this.
2011-08-17 15:15:35 +02:00
Bastien Guerry 4774b1b026 org.el: Allow to customize the way links are displayed.
(org-link-display-descriptive): New option to customize the
default display of links, either literal or descriptive.
(org-toggle-link-display): New command to toggle link display.
(org-org-menu): Use the new toggle function for links.

Thanks to Reiner Steib for suggesting this.
2011-08-17 15:01:54 +02:00
Bastien Guerry 58f1dbccf8 Remove the "Version" header in Org libraries (leave it in org.el).
Also remove blank lines before the ";;; org*el ends here" declarations.

Having a "Version" header forced us to update every file when releasing a
new version of Org; it also forced us to update every file when merging Org
with Emacs trunk, thus cluttering the diffs between the previously merged
version and the new one with useless information.

Glenn Morris suggested this in emacs-devel:
http://lists.gnu.org/archive/html/emacs-devel/2011-08/msg00322.html
2011-08-17 14:42:34 +02:00
Bastien Guerry c25165c25d org-refile: New option `org-refile-active-region-within-subtree'.
* org.el (org-refile-active-region-within-subtree): New option
to allow refiling a region that is part of a subtree without
containing a subtree itself.  This default to `nil'.
(org-refile): Use the new option.  Put point at the beginning
of the region/subtree to be refiled, so that users understand
what will be refiled.  Also improve the prompt to tell whether
the user is refiling a region or a headline.

Thanks to Jeff Horn for raising the issue of refiling a list item,
and to Nicolas Goaziou, Nick Dokos and Suvayu Ali for discussing
them patiently.  The discussion led to these changes.
2011-08-17 11:20:42 +02:00
Bastien Guerry 163cc38986 org.el: minor fix: delete trailing whitespaces. 2011-08-17 11:12:43 +02:00
Bastien Guerry eb4b035815 New option `org-properties-postprocess-alist'.
* org.el (org-properties-postprocess-alist): New option to
allow postprocessing the values of properties set through
`org-set-property'.
(org-set-property): Use this option.

This is inspired by a request from Pascal Mattia.
2011-08-17 11:11:41 +02:00
Bastien Guerry 436290bfab org.el (org-outline-regexp, org-outline-regexp-bol): Add a docstring.
* org.el (org-outline-regexp, org-outline-regexp-bol): Add a
docstring.
2011-08-17 11:05:23 +02:00
Nicolas Goaziou 7a826e09b1 fix code typo 2011-08-17 03:15:22 +02:00
Nicolas Goaziou 430b73b90c Minor fix to org-between-regexps-p
* lisp/org.el (org-between-regexps-p): searching up to pos may match
  again beginning regexp.
2011-08-17 03:11:18 +02:00
Nicolas Goaziou 628ebf04f7 Enforce white space after todo keywords
* lisp/org.el (org-set-regexps-and-options): enforce white space after
  todo keyword, as word boundary isn't sufficient (i.e. in matches * TODO/this)
2011-08-16 22:29:39 +02:00
Bastien Guerry 9d5c5c3d26 Don't insert superfluous space when updating timestamps.
* org.el (org-add-planning-info): Don't insert superfluous
space when updating timestamps.

Thanks to Valentin Wüstholz for this patch.
2011-08-16 19:05:17 +02:00
Bastien Guerry ad23b7d173 Fix bzg email address (s/altern/gnu). 2011-08-15 21:22:30 +02:00
Bastien Guerry 7a18799e25 Remove arch-tag at the bottom of files. 2011-08-15 20:04:38 +02:00
Bastien Guerry 904ed18bc2 Fix copyright years for elisp files in core and contrib.
Also add "This file is not part of GNU Emacs." when this is the case.
2011-08-15 15:23:11 +02:00
Bastien Guerry e01ce26c0b org.el: set `org-ts-what' correctly in `org-at-timestamp-p'.
(org-at-timestamp-p): set `org-ts-what' in a way that point will be
considered to be "on the bracket" whether it is really on it or right
after it.

Thanks to Matt Lundin for reporting this and to Nicolas Goaziou for
discussion about this.
2011-08-15 10:06:02 +02:00
Bastien Guerry c6bee11433 Use outline-regexp in org-overview so that global cycling works outside of Org buffers.
* org.el (org-overview): Use outline-regexp instead of
org-outline-regexp so that global cycling using orgstruct-mode
works outside of Org buffers.

Thanks to Matt Lundin for this fix.
2011-08-15 09:51:44 +02:00
Bastien Guerry bc1b688ff0 Move org-find-visible and org-find-invisible from org-exp.el to org.el. 2011-08-15 09:44:52 +02:00
Bastien Guerry 71332ac8a6 Move org-agenda-todo-yesterday from org.el to org-agenda.el. 2011-08-15 09:39:52 +02:00
David Maus 20ff46e825 Merge branch 'master' of orgmode.org:org-mode 2011-08-13 15:02:58 +02:00
David Maus 3771185cae Fix wrong order of lines to move before pasting
* org.el (org-paste-subtree): Fix wrong order of lines to move before
pasting.
2011-08-13 15:02:03 +02:00
John Wiegley 7d2d8f884b Add customization variable `org-use-effective-time'
If non-nil, consider `org-extend-today-until' when creating timestamps.
For example, if `org-extend-today-until' is 8, and it's 4am, then the
"effective time" of any timestamps between midnight and 8am will be
23:59 of the previous day.
2011-08-13 03:21:49 -05:00
David Maus e5199c4095 Paste subtree above target headline if point is at bol
* org.el (org-paste-subtree): Paste subtree above target headline if
point is at bol.

Capture and refile depend on this buggy behavior of org-past-subtree.
2011-08-13 09:19:19 +02:00
Nicolas Goaziou 9c33b9c259 Fix fontification error in feb52f9028
* lisp/org.el (org-activate-code): correct regexp so ":.*" isn't
  matched.
2011-08-12 13:06:25 +02:00
Nicolas Goaziou feb52f9028 Allow "^[ \t]*:$" as a special case of fixed-width section
* lisp/org.el (org-activate-code, org-toggle-fixed-width-section,
  org-indent-line-function): allow "[ \t]*:$" as a special case of
  fixed-width section.
2011-08-11 11:46:32 +02:00
David Maus ece3091f16 Don't eat headline when yank with point at existing headline
* org.el (org-paste-subtree): Don't eat headline when called with
point at existing headline.
2011-08-10 18:38:26 +02:00
David Maus 14b556772b Merge branch 'master' of orgmode.org:org-mode 2011-08-10 18:18:06 +02:00
David Maus fc572f5a6b Fix typo in variable name
* org.el (org-paste-subtree): Fix typo in variable name.
2011-08-10 18:17:48 +02:00
Valentin Wüstholz ce6010262d Preserve indentation of explicitly indented lines in example blocks
* lisp/org.el (org-indent-line-function): Made the way in which example blocks are
  indented more flexible.

Before: Lines in example blocks were indented like the surrounding begin and end
delimiters.
After: By default, lines in example blocks are indented like the surrounding begin and end
delimiters, unless the user explicitly indents them differently.

TINYCHANGE
2011-08-10 10:54:46 +02:00
Nicolas Goaziou aab16ffdf4 Fix `newline-and-indent' in a list when called on a line being filled
* lisp/org.el (org-return): when filling happens, `newline' can change
  match data, hence modifying the indent column.
2011-08-08 18:32:32 +02:00
John Wiegley 54c722a83a Added customization hook `org-log-buffer-setup-hook'
This allows changes to org-mode after the log buffer has been setup.
2011-08-06 18:59:18 -05:00
Nicolas Goaziou afa0df9b47 Fix heading insertion before any other headline but after a list
* lisp/org.el (org-insert-heading): with force-heading non-nil,
  inserting an heading before any headline, and just after a list
  would return an error.
2011-08-06 10:57:08 +02:00
David Maus 049c0776ff Don't move line upward if point is at eob
* org.el (org-back-over-empty-lines): Don't move line upward if point
is at eob.

Fixes a bug with refiling reported by Bernt Hansen, simplified version
of fix proposed by Jason Dunsmore.
2011-08-04 16:05:08 +02:00
Nicolas Goaziou 8c6c6a4f3d Rename `org-in-regexps-block-p' to `org-between-regexps-p'
* lisp/org.el (org-between-regexps-p): previous name implied the
  function was related to blocks, which isn't mandatory.
(org-narrow-to-block, org-in-block-p, org-indent-line-function):
applied the rename.
* lisp/ob-exp.el (org-babel-in-example-or-verbatim): applied
  rename. Also removed a white space.
2011-07-30 09:32:03 +02:00
Nicolas Goaziou 226f8c873d Change behaviour of `org-in-regexps-block-p'
* lisp/org.el (org-in-regexps-block-p): return an useful value when
  point is between START-RE and END-RE. No incomplete block is allowed
  anymore. Add another optional argument to bound the bottom part of
  the search.
(org-narrow-to-block, org-in-block-p): apply modifications.
2011-07-30 09:32:03 +02:00
emacs 7340cee33a Update website to show 7.7 as current release 2011-07-28 10:33:35 +00:00
Bastien Guerry 59e7fc4d3a org.el: (org-map-entries): Allow SCOPE to be the active region. 2011-07-28 10:50:44 +02:00
Bastien Guerry 0c0bce4a67 Manually revert 366254217a.
As David Maus pointed out, the implementation is not good.

* org.el (org-deadline, org-schedule): Don't loop.
(org-loop-over-siblings-within-active-region-p): Remove.
* org-archive.el (org-archive-subtree)
(org-archive-to-archive-sibling, org-toggle-archive-tag):
Don't loop.

* org-macs.el (org-loop-over-siblings-in-active-region):
Remove.
2011-07-28 10:50:35 +02:00
Max Mikhanosha dea1a6f87b Make `org-extend-today-until' variable affect log notes, and CLOSED: line.
(org-done-yesterday), (org-agenda-done-yesterday): new functions
2011-07-28 10:33:14 +02:00
Carsten Dominik 30dccb04bf Add key and documentation for `org-copy-visible'.
* lisp/org.el (org-org-menu): Add `org-copy-visible' to the menu.
* doc/org.texi (Visibility cycling): Document `org-copy-visible'.
* doc/orgcard.tex: Document `org-copy-visible'.
2011-07-26 12:09:50 +02:00
Carsten Dominik 7f742f12cf Add `org-copy-visible' command proposed by Florian Beck
* lisp/org.el (org-copy-visible): New command.
2011-07-26 11:53:13 +02:00
Nicolas Goaziou ee3ea164c9 Keep point in the same category when updating a time-stamp
* lisp/org.el (org-timestamp-change): keep point in the same category
  when updating a time-stamp. This requires to be careful, as,
  depending on the locale, name of day might change of length during
  the process.
2011-07-25 11:37:45 +02:00
Bastien Guerry 88eada52a6 org: allow relative time in `org-add-planning-info'.
(org-deadline, org-schedule): Improve docstrings.
(org-add-planning-info): Allow relative time like "-2d" or
"++2w" for the TIME argument.

The user can now call `org-schedule' and `org-deadline'
and use "+1d" to say that the task must be scheduled one
day later than today, or "++1d" to say that the task must
be scheduled one day later than the current SCHEDULED date,
if any.

This also works in agenda: you can select several entries
and reschedule them to +2d.

Thanks to Memnon Anon for insisting an finding a solution
for this!
2011-07-24 18:08:24 +02:00
Bastien Guerry 162080f5f8 org.el: tiny typo in docstring. 2011-07-24 16:44:48 +02:00
Bastien Guerry eaafa42948 New hook `org-ctrl-c-ctrl-c-final-hook'.
* org.el (org-ctrl-c-ctrl-c-final-hook): New hook to be run
when `org-ctrl-c-ctrl-c' cannot do anything useful in the
given context.

Thanks to Paul Sexton for this idea.
2011-07-24 16:12:47 +02:00
Bastien Guerry de27fab99a org.el: remove one trailing whitespace. 2011-07-22 11:21:29 +02:00
Bastien Guerry 7c8db0fa34 org-refile: exclude current (sub)heading(s) even if they start with a TODO keyword.
(org-get-heading): New optional argument to return heading
with no TODO keyword.
(org-refile-get-location): Use this new argument.
2011-07-22 11:20:53 +02:00
Bastien Guerry 07d42cbee6 org-refile: exclude current heading and subheadings from targets
* org.el (org-refile-get-targets): new optional argument
`excluded-entries' to exclude entries from the targets.
(org-refile-get-location): From an org-mode buffer, exclude
current heading and subheadings from the list of targets when
org-refile-use-cache is nil.

Also remove some trailing whitespaces.

Thanks to Jason Dunsmore for this idea.
2011-07-22 11:20:35 +02:00
Bastien Guerry bd01d9bf83 Revert "Fix bug with TODO states changes modifying scheduling of next headline"
This reverts commit fd0f8e10d1.
2011-07-22 09:24:28 +02:00
Nicolas Goaziou 6b38912771 Fix small mistake
* lisp/org.el (org-imenu-get-tree): note to self: headlines start at bol.
2011-07-21 20:40:58 +02:00
Nicolas Goaziou 4fd9989b58 Fix archiving bug introduced by last commit
* lisp/org.el (org-kill-is-subtree-p): matched string needs to start
  at bol.
2011-07-21 16:53:50 +02:00
Nicolas Goaziou 5b39df0523 Remove inline tasks from subtrees yanking
* lisp/org.el (org-paste-subtree, org-kill-is-subtree-p,
  org-yank-folding-would-swallow-text, org-yank-generic): use
  `org-with-limited-levels' macro.
2011-07-21 13:47:55 +02:00
Bastien Guerry 74a4f97108 Revert "org.el: exclude current heading from the refile table."
This reverts commit 651a537e49.
2011-07-21 12:28:57 +02:00
Nicolas Goaziou fd0f8e10d1 Fix bug with TODO states changes modifying scheduling of next headline
* lisp/org.el (org-timestamp-change): some locales don't use the same
  length for date abbreviations. Set a marker at origin in case length
  of new timestamp is different.

Thanks to Tom for analyzing this.
2011-07-21 11:48:35 +02:00
Nicolas Goaziou d8bd43ed5f Avoid getting inline tasks when using imenu
* lisp/org.el (org-imenu-get-tree): browse only true headlines.
2011-07-21 01:43:29 +02:00
Bastien Guerry ce2a33104b org.el: (org-do-emphasis-faces): docstring fix. 2011-07-19 11:25:45 +02:00
Bastien Guerry 08fc6384bc org.el (org-outline-regexp): Turn into a defvar.
`org-outline-regexp' ought to be a defconst but is let-binded
in some places -- e.g. see the macro `org-with-limited-levels'
and this produces misleading warnings.

Thanks to Matthew Sauer for reporting this.
2011-07-19 02:00:50 +02:00
Eric Schulte 58763f36e3 moving ob-fortran from core to contrib until FSF assignment is complete 2011-07-18 15:47:39 -06:00
Bastien Guerry 651a537e49 org.el: exclude current heading from the refile table.
* org.el (org-refile-get-location): exclude current heading
from the refile table.

Thanks to Jason Dunsmore for this idea.
2011-07-18 22:57:53 +02:00
Eric Schulte 1c913603cd moving ob-fortran into core, and cleaning up the code 2011-07-18 12:19:21 -06:00
Bastien Guerry 5c53026d32 Fix (a lot of) compiler warnings.
Also introduce `org-pop-to-buffer-same-window' as a compatibility
function for Emacs =>24.1.
2011-07-18 19:25:10 +02:00
Bastien Guerry 05c66a2e2f Merge branch 'master' of orgmode.org:org-mode 2011-07-18 18:14:58 +02:00
Bastien Guerry 395af11404 Use `org-loop-over-siblings-in-active-region' for `org-archive-set-tag'. 2011-07-18 18:14:35 +02:00
Eric Schulte 06bf0eb7fe ob-java: minimal support for evaluation of java code blocks 2011-07-18 10:08:04 -06:00
Nicolas Goaziou ddec51af0f Comment some code for posterity 2011-07-18 15:11:56 +02:00
Bastien Guerry 366254217a New feature: allow some commands to loop over siblings.
This commit introduce `org-loop-over-siblings-within-active-region-p'
as a new defcustom that you can turn on (`non-nil') to allow commands
to loop over siblings in the active region.

The list of commands is this:

- org-archive-subtree
- org-archive-to-archive-sibling
- org-toggle-archive-tag
- org-deadline
- org-schedule

When `org-loop-over-siblings-within-active-region-p' is `non-nil' and
you run one of the command above on a region containing several headlines,
then Org will apply the command to each headline.

This can be particularily useful for archiving several headlines, or to
add a deadline or schedule several entries.

* org.el (org-loop-over-siblings-within-active-region-p): New
defcustom so that `org-loop-over-siblings-in-active-region'
can be turned on and off.
(org-deadline, org-schedule): Use the new macro.

* org-macs.el (org-loop-over-siblings-in-active-region): New
macro to let some commands act upon several siblings in the
active region.

* org-archive.el (org-archive-subtree)
(org-archive-to-archive-sibling, org-toggle-archive-tag): Use
`org-loop-over-siblings-in-active-region'.
2011-07-18 10:09:53 +02:00
Bastien Guerry c3748fcd80 Don't use `outline-regexp' anymore.
Use `org-outline-regexp' instead or `outline-regexp'.  Also use the
new defconst `org-outline-regexp-bol' to match `org-outline-regexp'
at the beginning of line.

* org.el (org-outline-regexp-bol): New defconst.
(org-outline-level, org-set-font-lock-defaults, org-cycle)
(org-overview, org-content, org-flag-drawer)
(org-first-headline-recenter, org-insert-todo-heading)
(org-map-region, org-move-subtree-down, org-paste-subtree)
(org-kill-is-subtree-p, org-context-p, org-refile)
(org-refile-new-child, org-toggle-comment, org-todo)
(org-add-planning-info, org-add-log-setup, org-scan-tags)
(org-set-tags, org-insert-property-drawer)
(org-prepare-agenda-buffers, org-preview-latex-fragment)
(org-speed-command-default-hook, org-check-for-hidden)
(org-toggle-item, org-toggle-heading)
(org-indent-line-function, org-set-autofill-regexps)
(org-fill-paragraph, org-toggle-fixed-width-section)
(org-yank-generic, org-yank-folding-would-swallow-text)
(org-first-sibling-p, org-goto-sibling)
(org-goto-first-child, org-show-entry): Use
`org-outline-regexp' and `org-outline-regexp-bol'.

* org-remember.el (org-remember-handler): Use
`org-outline-regexp-bol'.

* org-mouse.el (org-mouse-match-todo-keyword, org-mode-hook)
(org-mouse-move-tree, org-mouse-transform-to-outline): Use
`org-outline-regexp' and `org-outline-regexp-bol'.

* org-macs.el (org-with-limited-levels)
(org-get-limited-outline-regexp): Use `org-outline-regexp'.

* org-indent.el (org-indent-outline-re)
(org-indent-refresh-section, org-indent-refresh-to): Use
`org-outline-regexp' and `org-outline-regexp-bol'.

* org-html.el (org-export-as-html): Use
`org-outline-regexp-bol'.

* org-footnote.el (org-footnote-at-definition-p)
(org-footnote-normalize): Use `org-outline-regexp' and
`org-outline-regexp-bol'.

* org-exp.el (org-export-preprocess-string): Don't redefine
`outline-regexp'.

* org-docbook.el (org-export-as-docbook): Use
`org-outline-regexp-bol'.

* org-colview.el (org-columns, org-columns-compute): Use
`org-outline-regexp' and `org-outline-regexp-bol'.

* org-colview-xemacs.el (org-columns, org-columns-compute):
Use `org-outline-regexp-bol'.

* org-clock.el (org-clock-insert-selection-line)
(org-clock-in, org-clock-out, org-dblock-write:clocktable):
Use `org-outline-regexp' and `org-outline-regexp-bol'.

* org-ascii.el (org-export-as-ascii)
(org-export-ascii-push-links): Use `org-outline-regexp' and
`org-outline-regexp-bol'.

* org-archive.el (org-archive-to-archive-sibling)
(org-archive-all-done): Use `org-outline-regexp' and
`org-outline-regexp-bol'.

* org-agenda.el (org-agenda, org-search-view)
(org-agenda-list-stuck-projects, org-agenda-get-timestamps)
(org-agenda-get-progress, org-agenda-get-blocks): Use
`org-outline-regexp' and `org-outline-regexp-bol'.
2011-07-18 09:42:11 +02:00
Nicolas Goaziou d243679491 Fix cookies update with recursive COOKIE_DATA property
* lisp/org.el (org-update-parent-todo-statistics): COOKIE_DATA should
  be checked for parent, not current headline. Also, this function
  doesn't need to be interactive.
2011-07-18 02:20:00 +02:00
Bastien Guerry 5dec19fe5b * org.el (org-refile): minor rewriting. 2011-07-17 08:16:59 +02:00
Nicolas Goaziou c59da42c4e Fix fontification error
* lisp/org.el (org-fontify-meta-lines-and-blocks-1): blocks cannot be
  correctly fontified when the buffer is missing a final newline.
2011-07-17 00:48:36 +02:00
Bastien Guerry 462c0d1e86 org.el: cosmetic changes in docstring. 2011-07-12 00:54:14 +02:00
Bastien 9a2bf02346 `org-set-property' to use the last set property as default prompt
I'm testing whether patchwork catches the patches again.

You are free to test the feature as well :)

>From 2064e28c44ffc6f4020c8a5ec46e0d6bcf559c01 Mon Sep 17 00:00:00 2001
From: Bastien Guerry <bzg@altern.org>
Date: Mon, 11 Jul 2011 12:10:32 +0200
Subject: [PATCH] Make `org-set-property' defaults to the last set property.

* org.el (org-last-set-property): New variable.
(org-read-property-name): Use the new variable: the prompt
defaults to the last property set, unless there is a property
in the line at point.
2011-07-11 12:25:57 +02:00
Bastien Guerry badec64cbf Bufix: remove useless whitespace added after planning.
(org-add-planning-info): Bufix: remove useless whitespace
added after planning.
2011-07-11 12:23:47 +02:00
Bastien Guerry fd12e700b0 Minor code cleanup. 2011-07-09 18:12:18 +02:00
Bastien Guerry f65e63d094 Fix tiny spelling mistake. 2011-07-09 17:38:59 +02:00
Bastien Guerry db731a9715 Allow synchronous update of timestamps in CLOCK log.
* org.el (org-shiftcontrolup, org-shiftcontroldown): New
commands to use `org-clock-timestamps-change'.

* org-clock.el (org-clock-timestamps-change)
(org-clock-timestamps-down, org-clock-timestamps-up)
(org-at-clock-log-p): New functions to let the user update
clock log timestamps while keeping the same clock duration.

Thanks to Rainer Stengele for this idea.
2011-07-09 17:38:21 +02:00
Bastien Guerry a4bbc54d15 org.el: org-timestamp-up/down: mention time changes.
* org.el (org-timestamp-up, org-timestamp-down): mention time
changes in the docstring.
2011-07-09 15:26:29 +02:00
Bastien Guerry 516b2fbb87 org.el: remove CLOCK: and empty drawers from clones. 2011-07-09 15:04:39 +02:00
Nicolas Goaziou abe9550309 Forbid footnotes in some contexts
* lisp/org.el (org-in-block-p): new function.
* lisp/org-footnote.el (org-footnote-forbidden-blocks): new variable.
(org-footnote-in-valid-context-p): new function.
(org-footnote-at-reference-p): use new function. Allow inline
footnotes to start at bol.
2011-07-08 18:08:34 +02:00
Bastien Guerry 9c05a7c781 Bump to version 7.6 2011-07-06 21:06:03 +02:00
Bastien Guerry 7a88eaec29 New face: org-default.
* install/git/org-mode/lisp/org.el (org-mode): Use org-default as
the default face in org-mode.

* install/git/org-mode/lisp/org-faces.el (org-default): New face.

M-x customize-face RET org-default RET lets the user define a default
face for org-mode.
2011-07-06 17:25:29 +02:00
Bastien Guerry 330ed08feb org.el: fix `org-end-of-meta-data-and-drawers'
Back to the previous version of `org-end-of-meta-data-and-drawers',
with a better fix.

Thanks to Eric Abrahamsen for this.
2011-07-05 11:05:20 +02:00
Bastien Guerry 43a380708e org.el: tiny fix to org-add-planning-info. 2011-07-02 15:23:25 +02:00
Bastien Guerry 5fb8c750fb org.el: fix issues with timestamps: insert them at the same position.
* install/git/org-mode/lisp/org.el (org-add-planning-info): fix
issues with timestamps not being inserted at the same position.
2011-07-02 15:13:03 +02:00
Bastien Guerry 467435dba7 Don't include org-lparse.el in the list of contributed modules.
This modules is a dependancy of org-odt.el, which is the real
library users want to load.
2011-07-02 11:15:57 +02:00
Jambunathan K 67be9be326 Add org-lparse and org-odt as contrib modules
--

>From 9b97d19c1184d3cf2cc82831e3d29067cf91f014 Mon Sep 17 00:00:00 2001
From: Jambunathan K <kjambunathan@gmail.com>
Date: Sat, 2 Jul 2011 01:56:01 +0530
Subject: [PATCH] Add org-lparse and org-odt as contrib modules

* lisp/org.el (org-modules): Add org-lparse and org-odt as
contrib modules.
* contrib/README: Ditto
2011-07-02 11:13:22 +02:00
Eric Schulte 9c0ddffdc4 fix typo 2011-07-01 17:37:30 -07:00
Eric Schulte ca4472063a org: fontify #+header lines
* lisp/org.el (org-fontify-meta-lines-and-blocks-1): Include header
  lines.
  (org-additional-option-like-keywords): Include data as a synonym for
  results.
2011-07-01 13:12:03 -07:00
Julien Barnier 549a521256 Fix some #+ blocks fontification when there is no lang attribute
* lisp/org.el (org-fontify-meta-lines-and-blocks-1): Fix test for src blocks
lang attribute

When there is no lang attribute to a block (for quote, verse or others), the
lang variable is not nil, but an empty string.
2011-07-01 17:28:32 +02:00
Bastien Guerry 0461d55c41 Merge branch 'master' of orgmode.org:org-mode 2011-07-01 09:38:47 +02:00
Eric Schulte 0e4d6f3e77 moving ob-lilypond into the core of Org-mode 2011-06-30 11:06:22 -07:00
Nicolas Goaziou ffa016ba3d Fix some glitches in footnotes fontification
* lisp/org.el (org-activate-footnote-links): properly fontify inline
  footnotes.
(org-set-font-lock-defaults): apply changes to previous function.
2011-06-30 19:29:14 +02:00
Bastien Guerry dbde087a21 org.el: don't escape image links with no description.
(org-make-link-string): Don't escape image links when no description
is provided by the user.  Otherwise those images won't be recognized
as images when trying to display inline pictures.
2011-06-30 18:40:24 +02:00
Bastien Guerry f0bbfe50aa org.el: (org-end-of-meta-data-and-drawers): simplify. 2011-06-30 18:01:38 +02:00
Bastien Guerry 9c582ceed8 org.el: Remove useless `org-without-partial-completion'.
* org.el (org-set-tags): Remove useless `org-without-partial-completion'.
2011-06-30 17:06:13 +02:00
Michael Markert b3e8b3f87c adding optional argument KIND to all org-called-interactively-p function invocations
* lisp/ob.el (org-babel-sha1-hash): Adding optional argument KIND to
  all org-called-interactively-p function invocations.
* lisp/org-agenda.el (org-agenda-redo): Adding optional argument KIND to
  all org-called-interactively-p function invocations.
  (org-agenda-show-1): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
  (org-agenda-set-tags): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
* lisp/org-ascii.el (org-export-as-latin1): Adding optional argument
  KIND to all org-called-interactively-p function invocations.
  (org-export-as-latin1-to-buffer): Adding optional argument KIND to
  all org-called-interactively-p function invocations.
  (org-export-as-utf8-to-buffer): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
  (org-export-region-as-ascii): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
* lisp/org-docbook.el (org-export-region-as-docbook): Adding optional
  argument KIND to all org-called-interactively-p function
  invocations.
* lisp/org-html.el (org-export-region-as-html): Adding optional
  argument KIND to all org-called-interactively-p function
  invocations.
* lisp/org-latex.el (org-export-region-as-latex): Adding optional
  argument KIND to all org-called-interactively-p function
  invocations.
* lisp/org-table.el (org-table-blank-field): Adding optional argument
  KIND to all org-called-interactively-p function invocations.
  (org-table-current-column): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
  (org-table-current-dline): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
  (org-table-sort-lines): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
  (org-table-sum): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
  (org-table-rotate-recalc-marks): Adding optional argument KIND to
  all org-called-interactively-p function invocations.
  (org-table-eval-formula): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
  (orgtbl-send-table): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
* lisp/org.el (org-mode): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
  (org-copy-subtree): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
  (org-paste-subtree): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
  (org-store-link): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
  (org-todo): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
  (org-occur): Adding optional argument KIND to all
  org-called-interactively-p function invocations.
2011-06-29 16:22:58 -07:00
Bastien Guerry 2b7dbee193 Replace interactive-p with the org-called-interactively-p macro.
Interactive-p is an obsolete function as of Emacs 23.2.
`org-called-interactively-p' takes care of the current (x)Emacs
version and use either `interactive-p' (for XEmacs and Emacs<23.2)
or `called-interactively-p'.
2011-06-29 18:24:08 +02:00
Nicolas Goaziou 1eac25a438 Adjust fontification of footnotes
* lisp/org-footnote.el (org-footnote-next-reference-or-definition):
  new function.
* lisp/org.el (org-activate-footnote-links): activate the whole
  footnote, but only fontify its label.
2011-06-29 12:00:42 +02:00
Bastien Guerry 7311ac5d4f Keep warning cookie when timestamping/rescheduling/redeadlining.
* install/git/org-mode/lisp/org.el (org-deadline, org-schedule):
keep warning cookie when rescheduling/redeadlining.
(org-time-stamp): Fix problem with warning cookie.
2011-06-29 01:56:40 +02:00
Bastien Guerry f9cc3f525b org.el: make org-time-stamp also keep warning periods.
... not only repeaters.

Thanks to Karl Voit for spotting this.
2011-06-28 19:27:12 +02:00
Bastien Guerry d7c693c1ff org.el: fix bug about repeater not kept when using org-time-stamp
Thanks to Karl Voit for reporting this.
2011-06-27 18:22:37 +02:00
Vincent Belaïche 6d18e03519 * org.el (org-read-property-name): Propose default property name.
Propose default property name value by looking at whether current line
is already some property setting.
2011-06-27 12:35:08 +02:00
Achim Gratz d37223562d Introduce CLOCK_INTO_DRAWER property like the existing LOG_INTO_DRAWER
* lisp/org.el (defcustom org-log-into-drawer): correct typo
* lisp/org-clock.el: new function org-clock-into-drawer to change
  the location of clock events based on properties CLOCK_INTO_DRAWER
  or, as fallback, LOG_INTO_DRAWER, like it is already possible for
  state change logs.
* lisp/org-clock.el (org-clock-jump-to-current-clock): add statement
  to let clause to bind org-clock-into-drawer to result of function
  eval
* lisp/org-clock.el (org-clock-find-position): add statement
  to let clause to bind org-clock-into-drawer to result of function
  eval, change let to let* since the binding is used later in the
  same clause
* doc/org.texi: document that both CLOCK_INTO_DRAWER and
  LOG_INTO_DRAWER can be used to override the contents of variable
  org-clock-into-drawer (or if unset, org-log-into-drawer)
* doc/org.texi: @xref->@pxref
2011-06-27 12:12:23 +02:00
Bastien Guerry 8608b6651d Fix doubled-word typo.
Thanks to Jim Meyering <jim@meyering.net> for this upstream fixes.
2011-06-20 15:38:24 +02:00
Ted Zlatanov b3aad7ffa8 Do not error out on fontification errors
* org.el (org-fontify-meta-lines-and-blocks): Ignore errors.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-06-20 11:23:44 +02:00
Eric Schulte db1c3f6a3e Revert "replacing calls to now-defunct function `interactive-p'"
This reverts commit 4f084e1467.
2011-06-16 21:32:54 -07:00
Carsten Dominik faccb8d58c Make S-up/down/left/right in indented clocktable BEGIN lines
* lisp/org.el (org-find-dblock):
(org-clocktable-try-shift): Make regexp work also when #+begin
line is indentex.

Achim Gratz writes:

It wasn't possible to use S-up/down/left/right on the clocktable BEGIN
line when the whole table was indented.  Interestingly enough calling
the function directly would work, it turned out to be a regexp in org.el
that was still pinned to bol.  There was a second one further down that
is used to recognize dynamic blocks that got the same treatment.

TINYCHANGE
2011-06-15 08:55:09 +02:00
Eric Schulte a034526448 more small compiler errors
* lisp/org-mouse.el (org-agenda-earlier): Declaring previously unknown
  function.
  (org-agenda-later): Declaring previously unknown function.
  (org-agenda-mode-map): Declaring previously unknown variable.
* lisp/org.el (org-read-date-analyze): Explicitly ignore the return
  value of a function.
2011-06-14 12:51:13 -07:00
Eric Schulte 94b325839c Replacing '(λ...) with #'(λ...).
* lisp/org-ascii.el (org-export-as-ascii): Replacing '(λ...) with #'(λ...).
* lisp/org-attach.el: Replacing '(λ...) with #'(λ...).
  (org-attach-commit): Replacing '(λ...) with #'(λ...).
* lisp/org-exp.el: Replacing '(λ...) with #'(λ...).
  (org-export-handle-include-files): Replacing '(λ...) with #'(λ...).
* lisp/org-html.el: Replacing '(λ...) with #'(λ...).
  (org-export-as-html): Replacing '(λ...) with #'(λ...).
* lisp/org-mouse.el: Replacing '(λ...) with #'(λ...).
  (org-mouse-popup-global-menu): Replacing '(λ...) with
  (org-mode-hook): Replacing '(λ...) with #'(λ...).
  (org-agenda-mode-hook): Replacing '(λ...) with #'(λ...).
* #'(λ...).Replacing '(λ...) with #'(λ...).
  (org-mouse-context-menu): Replacing '(λ...) with #'(λ...).
* lisp/org-src.el: Replacing '(λ...) with #'(λ...).
  (org-src-mode-configure-edit-buffer): Replacing '(λ...) with #'(λ...).
* lisp/org-table.el: Replacing '(λ...) with #'(λ...).
  (org-table-fix-formulas-confirm): Replacing '(λ...) with #'(λ...).
* lisp/org.el: Replacing '(λ...) with #'(λ...).
  (org-confirm-shell-link-function): Replacing '(λ...) with
  (org-category): Replacing '(λ...) with #'(λ...).
* #'(λ...).Replacing '(λ...) with #'(λ...).
  (org-time-stamp-rounding-minutes): Replacing '(λ...) with #'(λ...).
2011-06-14 12:01:04 -07:00
Eric Schulte f8abb11eff Declaring functions used by `org-open-file'
* lisp/org.el (mailcap-parse-mailcaps): Declaring functions used by
  `org-open-file'.
  (mailcap-extension-to-mime): Declaring functions used by
  `org-open-file'.
  (mailcap-mime-info): Declaring functions used by `org-open-file'.
2011-06-14 11:58:00 -07:00
Eric Schulte 4f084e1467 replacing calls to now-defunct function `interactive-p'
* lisp/org-agenda.el (org-agenda-redo): Replacing call to now-defunct
  function `interactive-p'.
  (org-agenda-show-1): Replacing call to now-defunct function
  `interactive-p'.
  (org-agenda-set-tags): Replacing call to now-defunct function `interactive-p'.
* lisp/org-ascii.el: Replacing call to now-defunct function
  `interactive-p'.
  (org-export-as-latin1): Replacing call to now-defunct function
  `interactive-p'.
  (org-export-as-latin1-to-buffer): Replacing call to now-defunct
  function `interactive-p'.
  (org-export-as-utf8): Replacing call to now-defunct function
  `interactive-p'.
  (org-export-as-utf8-to-buffer): Replacing call to now-defunct function
  `interactive-p'.
  (org-export-region-as-ascii): Replacing call to now-defunct function
  `interactive-p'.Replacing call to now-defunct function `interactive-p'.
* lisp/org-docbook.el: Replacing call to now-defunct function
  `interactive-p'.
  (org-export-region-as-docbook): Replacing call to now-defunct function
  `interactive-p'.Replacing call to now-defunct function `interactive-p'.
* lisp/org-html.el: Replacing call to now-defunct function
  `interactive-p'.
  (org-export-region-as-html): Replacing call to now-defunct function
  `interactive-p'.Replacing call to now-defunct function `interactive-p'.
* lisp/org-latex.el: Replacing call to now-defunct function
  `interactive-p'.
  (org-export-region-as-latex): Replacing call to now-defunct function
  `interactive-p'.Replacing call to now-defunct function `interactive-p'.
* lisp/org-macs.el: Replacing call to now-defunct function
  `interactive-p'.
  (org-called-interactively-p): Replacing call to now-defunct function
  `interactive-p'.Replacing call to now-defunct function `interactive-p'.
* lisp/org-table.el: Replacing call to now-defunct function
  `interactive-p'.
  (org-table-blank-field): Replacing call to now-defunct function
  `interactive-p'.
  (org-table-current-column): Replacing call to now-defunct function
  `interactive-p'.Replacing call to now-defunct function
  `interactive-p'.
  (org-table-current-dline): Replacing call to now-defunct function
  `interactive-p'.Replacing call to now-defunct function
  `interactive-p'.
  (org-table-sort-lines): Replacing call to now-defunct function
  `interactive-p'.
  (org-table-sum): Replacing call to now-defunct function
  `interactive-p'.
  (org-table-rotate-recalc-marks): Replacing call to now-defunct
  function `interactive-p'.
  (org-table-eval-formula): Replacing call to now-defunct function
  `interactive-p'.
  (orgtbl-send-table): Replacing call to now-defunct function `interactive-p'.
* lisp/org.el: Replacing call to now-defunct function `interactive-p'.
  (org-mode): Replacing call to now-defunct function `interactive-p'.
  (org-copy-subtree): Replacing call to now-defunct function
  `interactive-p'.
  (org-paste-subtree): Replacing call to now-defunct function
  `interactive-p'.
  (org-store-link): Replacing call to now-defunct function
  `interactive-p'.
  (org-todo): Replacing call to now-defunct function `interactive-p'.
  (org-occur): Replacing call to now-defunct function `interactive-p'.
2011-06-14 11:37:59 -07:00
Michael Brand 374b70a383 Bugfix for heading levels when toggling from list
* org.el (org-toggle-heading): More comments and fix number of stars
when toggling from list items.

TINYCHANGE
2011-06-09 21:11:20 +02:00
Nicolas Goaziou ddeab1a8af Changes automatically made to cookies shouldn't move tags
* lisp/org.el (org-auto-align-tags): change docstring.
(org-update-parent-todo-statistics): keep tags aligned even when
statistics cookies are shifting them.
* lisp/org-list.el (org-update-checkbox-count): keep tags aligned even
when statistics cookies are shifting them.
2011-06-05 18:55:25 +02:00
Carsten Dominik 0db8830733 Fix issue with truncate-lines and visual-line-mode
* lisp/org.el (org-insert-link): Set truncate-line in the *Org Link* buffer
and make sure that it really is set there.

See http://thread.gmane.org/gmane.emacs.orgmode/42447
2011-06-02 19:48:36 +02:00
Carsten Dominik 32ac8dd0e5 More fixes to priority setting.
Patch by Michael Brand
2011-06-01 14:25:03 +02:00
Sébastien Delafond 1afcef3007 Do not run flyspell-checks on {todo,all-time,additional-option-like}-keywords
* org.el (org-mode-flyspell-verify): This is useful when using
  flyspell with a non-English dictionary, or if some of your
  keywords are in another language.

Signed-off-by: Julien Danjou <julien@danjou.info>
2011-06-01 13:51:31 +02:00
David Maus 00040e708c Use `delete-char' instead of `delete-backward-char'
* org.el (org-self-insert-command): Use `delete-char' instead of
  `delete-backward-char'.
* org-table.el (orgtbl-self-insert-command): Dto.

According to the doc string `delete-backward-char' "is meant for
interactive use only; from Lisp, better use `delete-char' with a
negated argument."
2011-06-01 08:30:20 +02:00
David Maus f4f20ad5c8 Move defsubst `org-re-property' before its first use
* org.el (org-re-property): Move before its first use.
2011-06-01 06:47:03 +02:00
Carsten Dominik 1beda3d3c8 Fix typo in code
* lisp/org.el (org-toggle-item): Move parenthesis to correct location.
2011-05-31 13:46:30 +02:00
Carsten Dominik 257ce858e7 Improve documentation and error handling with priorities
* lisp/org.el (org-default-priority):
(org-priority-start-cycle-with-default): Improve docstring.
(org-priority): Throw error when priority is out of range.

Patch by Michael Brand.
2011-05-31 13:37:04 +02:00
Carsten Dominik a958e3bc8f Fix issue with buffer-undo-list being t in some buffers
* lisp/org.el (org-self-insert-command): Catch the case of
buffer-undo-list eq t.
2011-05-31 09:23:52 +02:00
Nicolas Goaziou 363a4554e2 Do not split a partially selected line when calling org-toggle-heading
* lisp/org.el (org-toggle-heading): region should be considered as
  made of full lines, without the last one if region-end is at bol.
  Removed unused variables. Refactored and commented code.
2011-05-28 19:42:53 +02:00
Nicolas Goaziou 5a57bfffae Preserve subtrees when changing headlines into items
* lisp/org.el (org-toggle-item): when region includes an headline less
  indented than first one, set it as the new reference.
2011-05-28 19:10:05 +02:00
Nicolas Goaziou 6c2737ddbd Fix code typo 2011-05-28 17:22:48 +02:00
Nicolas Goaziou ddc2467387 Fix list before first heading conversion to odd levels subtree
* lisp/org-list.el (org-list-to-subtree): if the list is before first
  heading and `org-odd-levels-only' is non-nil, the first item gets
  two stars instead of one.
* lisp/org.el (org-reduced-level): a level of 0 was reduced to 1 with
  `org-odd-levels-only' non-nil.
2011-05-28 14:13:11 +02:00
Nicolas Goaziou ec61f20650 Fix org-toggle-item
* lisp/org.el (org-toggle-item): converting an heading to an item
  would sometimes insert unnecessary spaces before it, and unwanted
  space with `org-indent-mode' on. Changing some text into an item
  wouldn't always preserve indentation.
2011-05-28 14:13:11 +02:00
Eric Schulte 5c1cc3fb4b adding support for evaluation of awk code blocks
* Makefile (LISPF): Adding ob-awk to the makefile
* lisp/org.el (org-babel-load-languages): Adding ob-awk to the list of
  executable languages.
2011-05-26 07:34:58 -06:00
David Maus b6384bbcbe Prevent adding of extra space to value if property already exists
* org.el (org-entry-put): Prevent adding of extra space to value if
  property already exists.

Fixes a regression reported by Wujun Zhou.
2011-05-24 20:55:35 +02:00
Paul Sexton 7af369da69 contrib/org-drill.el -- updated to version 2.3.2
contrib/org-drill.el -- added to choices for 'org-modules' variable
2011-05-21 00:13:35 +12:00
Carsten Dominik 2a8fbc4b46 Bury calendar buffer
* lisp/org.el (org-read-date): Bury Calendar buffer after
using it for selecting a date.

Patch by Ben North

TINYCHANGE
2011-05-16 08:36:56 +02:00
Nicolas Goaziou 3dfcaf013a Don't indent #+include lines
* lisp/org.el (org-indent-line-function): don't include #+include lines.
2011-05-14 14:32:32 +02:00
Carsten Dominik 9dba548cd5 Agenda Views: Call `org-agenda-skip' first.
* lisp/org-agenda.el (org-agenda-get-todos): Call `org-agenda-skip' first,
then check if timestamps cause exclusion.
* lisp/org.el (org-scan-tags):  Call `org-agenda-skip' first,
then check if timestamps cause exclusion.

For more information, see the following mailing list thread:

http://thread.gmane.org/gmane.emacs.orgmode/41052/focus=41052
2011-05-10 08:58:04 +02:00
Carsten Dominik e8151c382c Add CLOCKSUM to special properties, to make org-invoice.el work again
* lisp/org.el (org-special-properties): Add CLOCKSUM to the special properties.
2011-05-06 17:20:40 +02:00
Robert P. Goldman 62c12cc50f Add an easy template for index (i)
* lisp/org.el (org-structure-template-alist):  Add an easy template
for index (i), and move include file to I from i.
* doc/org.texi (Easy Templates): Document new template.

Notes about this patch:
1.  It breaks some old user-visible behavior, since <i changes meaning.
    Per Nick's posting, we expect that if index is used, it will be used
    more commonly than include file.  However, since this is a custom,
    behavior could be changed.  Indeed, we could put index on capital
    I with a suggestion that users who are indexing should swap in their
    customizations.
2.  I modified the docstring for org-structure-template-alist, which did
    not explain the function of the "?" in the string.  Someone should
    check and verify I didn't get this wrong.
3.  There doesn't seem to be a Muse tag equivalent for #+index, so I
    just made the Muse equivalent of #+index be #+index.  I don't know
    org-mtags enough to know if this is appropriate.
2011-05-04 09:49:31 +02:00
Carsten Dominik 420899b3df Fix typo in function name
* lisp/org.el (org-remove-uninherited-tags): Renamed from
org-remove-iniherited-tags.
(org-scan-tags): Fix typo in function call.
(org-get-tags-at): Fix typo in function call.
2011-05-02 09:16:51 +02:00
Carsten Dominik 3b924ef2ad Fix whitespace problem 2011-05-02 09:14:30 +02:00
Matt Lundin c6e97d88cf org-get-tags-at: exclude filetags when local is t
* lisp/org.el (org-get-tags-at): Don't include filetags if local is t.

The function org-get-tags-at and the functions that called it were
including inherited file tags even if the user requested only local
tags. This patch fixes the behavior.
2011-05-02 09:13:06 +02:00
Carsten Dominik 69811ff44c Fix multiple overlays bug in src blocks
* lisp/org.el (org-fontify-meta-lines-and-blocks): Fix bug which
resulted in the creation of multiple overlays in src blocks.
2011-04-28 22:08:15 +02:00
Carsten Dominik 02441ed433 Implement clock consistency check functionality for agenda
* lisp/org-agenda.el (org-agenda-clock-consistency-checks): New option.
(org-agenda-list): Handle display change to clock check.
(org-agenda-get-progress): Show only clock entries if we are doing the
consistency check.
(org-agenda-show-clocking-issues): New function.
(org-agenda-check-clock-gap): New function.
(org-agenda-view-mode-dispatch): Offer consistency check.
(org-agenda-log-mode): Handle switch to clock only display.
(org-agenda-set-mode-name): Show lighter for Clockcheck.
* lisp/org.el (org-hh:mm-string-to-minutes): Accept an integer argument
and return it unchanged.
* doc/org.texi (Agenda commands): Document clock consistency checks.
* doc/orgcard.tex: Document key for clock consistency check.
2011-04-24 17:17:25 +02:00
Carsten Dominik 2985816e25 Postfix to the previous patch, changing after-change-functions for demotion
* lisp/org.el (org-promote):
(org-demote): Soften the previous change, by only removing the
flyspell function from after-change functions, because that was the
one causing the slowdown - at least much of it.
2011-04-21 17:01:39 +02:00
Eric Schulte 6660a51e07 Speed up promotion and demotion by turning off after-change-functions
* lisp/org.el (org-promote):
(org-demote): Turn off after-change-functions to speed up the
reindentation of text.

This is mainly toob-oz: brought up to date with the rest of Babel
2011-04-21 16:49:41 +02:00
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