Commit Graph

2746 Commits

Author SHA1 Message Date
Bastien Guerry afcb175e05 org.el (org-end-of-line): Don't throw an error outside elements
* org.el (org-end-of-line): Don't throw an error outside
elements.
2013-02-13 16:43:55 +01:00
Grégoire Jadi 67febc3600 Unify `org-id-reverse-string' and `org-babel-reverse-string' into `org-reverse-string'
* lisp/org.el (org-reverse-string): Add `org-reverse-string' to
  reverse a string.
* lisp/org-id.el(org-id-new, org-id-decode): Replace
  `org-id-reverse-string' by `org-reverse-string'.
* lisp/ob-core.el(org-babel-trim): Replace `org-babel-reverse-string'
  by `org-reverse-string' and declare it.

TINYCHANGE
2013-02-13 16:29:09 +01:00
Samuel Loury 9964d89d1b org.el (org-open-at-point): Open a plain link even if the cursor is before it
* org.el (org-open-at-point): Open a plain link even if the
cursor is before it, which is consistent with the behavior
with respect to bracket and angle links.

TINYCHANGE
2013-02-13 16:22:04 +01:00
Bastien Guerry e292a1e2b8 Fix commit 03f1cf and 3f0b60. 2013-02-13 15:13:57 +01:00
Bastien Guerry 977412f468 Merge branch 'master' of orgmode.org:org-mode 2013-02-13 14:29:36 +01:00
Bastien Guerry 3f0b608243 org.el (org-options-keywords): Add keywords
* org.el (org-options-keywords): Add keywords.
2013-02-13 14:25:36 +01:00
Christopher Schmidt e7403d6912 org.el: Ignore errors when bindings keys in orgstruct-setup
* org.el (orgstruct-setup): Ignore errors around org-defkey.
2013-02-13 13:01:23 +01:00
Christopher Schmidt 7c27e57c4c org.el: Disable orgstruct-mode when falling back to original command
* org.el (orgstruct-make-binding):
Disable orgstruct-mode on fallback.
2013-02-13 12:35:55 +01:00
Bastien Guerry 5ab647af64 Merge branch 'maint'
Conflicts:
	doc/org.texi
2013-02-13 12:10:45 +01:00
Bastien Guerry 718b210009 Backport typo fixes from Emacs revno 111250 by Paul Eggert. 2013-02-13 12:09:56 +01:00
Christopher Schmidt d6f69f58aa org.el: Use let instead of progv in org-run-like-in-org-mode
* org.el (org-run-like-in-org-mode): Use let instead of progv.
2013-02-13 10:04:37 +01:00
Christopher Schmidt ea2d1076bb org.el: Declare orgstruct-mode
* org.el (orgstruct-mode): Declare.
2013-02-13 10:04:04 +01:00
Bastien Guerry 060caa8023 Fix last commit
Thanks to Michael Brand for reporting this.
2013-02-12 15:33:45 +01:00
Bastien Guerry 997fc9c5ea org.el (org-auto-repeat-maybe): Suppress temporary delays
* org.el (org-timestamp-change): New optional parameter
`suppress-tmp-delay' to suppress temporary delay like "--2d".
(org-auto-repeat-maybe): Suppress temporary delays.

Thanks to Michael Brand for suggesting this.
2013-02-12 10:30:38 +01:00
Bastien Guerry 5b9a771040 org.el (org-time-string-to-absolute): Tiny docstring enhancement
* org.el (org-time-string-to-absolute): Tiny docstring enhancement.
2013-02-12 09:01:46 +01:00
Nicolas Goaziou cc683398d8 Fix failing test on `org-backward-element'
* lisp/org.el (org-forward-element, org-backward-element): When no
  headline is found at the same level, still move forward or
  backward.
2013-02-11 21:12:44 +01:00
Bastien Guerry 7963c0b69c org.el (org-edit-special): Don't allow to edit when buffer is read only
* org.el (org-edit-special): Don't allow to edit when buffer
is read only.

Thanks to Greg Minshall for reporting this.
2013-02-11 16:22:19 +01:00
Francesco Pizzolante 5e22630f00 Protect `org-agenda-prepare-buffers' with `org-unmodified'
* org.el (org-agenda-prepare-buffers): Protect with
`org-unmodified'.

TINYCHANGE
2013-02-11 15:46:56 +01:00
Bastien Guerry 783eb3170c Merge branch 'maint' 2013-02-11 14:38:35 +01:00
Bastien Guerry 0b9e3b8a45 org.el (org-fill-paragraph-with-timestamp-nobreak-p): New function
* org.el (org-fill-paragraph-with-timestamp-nobreak-p): New
function.
(org-setup-filling): Use it to prevent breaking a timestamp
when filling a paragraph.

Thanks to William for requesting this.
2013-02-11 14:38:18 +01:00
Bastien Guerry 652919fca0 Fix bindings for `org-next-block' and `org-preview-block'.
Thanks to François and Sébastien for reporting this.
2013-02-11 14:20:36 +01:00
Christopher Schmidt a3f6570fff Allow a custom headline prefix in orgstruct-mode.
* lisp/org.el (org-cycle-global-status)
(org-cycle-subtree-status): Set state property.
(org-heading-components): Use org-heading-regexp in
orgstruct-mode.
(orgstruct-heading-prefix-regexp, orgstruct-setup-hook): New
options.
(orgstruct-initialized): New variable.
(orgstruct-mode): Simplify implementation.
(orgstruct-setup): Simplify implementation.  Translate keys to
their most general equivalent.
(orgstruct-make-binding): Generate index on the fly.  Discard
alternative keys.  Bind variables according to
orgstruct-heading-prefix-regexp.
(org-get-local-variables): Honour state property.
(org-run-like-in-org-mode): Do not override variables with
non-default values.
(org-forward-heading-same-level): Do not skip to headlines on
another level.  Handle negative prefix argument correctly.
(org-backward-heading-same-level): Use
org-forward-heading-same-level.
2013-02-10 18:47:58 +01:00
Nicolas Goaziou 6b7101b910 Fix some compilation problem
* lisp/org-element.el (org-element-nested-p): Do not inline function.
* lisp/org.el: Do not autoload functions.
2013-02-10 14:47:57 +01:00
Nicolas Goaziou c44f8c0af0 Small refactoring
* lisp/org.el (org-org-menu): Small refactoring.
2013-02-09 18:33:01 +01:00
Bastien Guerry da1ee63bbc Fix commit eac6af.
Thanks to Bill White for spotting this.
2013-02-09 10:25:13 +01:00
Nicolas Goaziou 779c450f52 Small fixes to docstrings
* lisp/org.el (org-export-backends): Fix docstring.
* lisp/ox.el (org-export-dispatch): Fix docstring.
2013-02-09 09:41:36 +01:00
Bastien Guerry d1bf9a7df5 org.el (org-speed-commands-default): Bind `B' and `F' to `org-previous-block' and `org-next-block'
* org.el (org-speed-commands-default): Bind `B' and `F' to
`org-previous-block' and `org-next-block'.

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

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

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

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

* org.el (org-copy-subtree): New parameter `nosubtrees'.
2013-02-08 16:47:19 +01:00
Bastien Guerry 87b43643c1 org.el (org-paste-subtree): Fix typo in docstring
* org.el (org-paste-subtree): Fix typo in docstring.
2013-02-08 15:04:51 +01:00
Nicolas Goaziou 25a481d8ae Remove unneeded `:initialize' function for `org-export-backends'
* lisp/org.el (org-export-backends): Remove `:initialize' function.
2013-02-07 15:45:47 +01:00
Nicolas Goaziou 66150778a3 `org-reload' also reloads export back-ends in use
* lisp/org.el (org-reload): Also reload export back-ends in use.
2013-02-07 15:24:40 +01:00
Nicolas Goaziou 918c8a6c8f Add JIT export back-ends loading
* lisp/org.el (org-modules): Remove export back-ends from the list.
  Update docstring.
(org-export-backends): New variable.
* lisp/ox.el (org-export-async-start): Make sure export framework is
required in the external process.
2013-02-06 23:06:31 +01:00
Nicolas Goaziou 0484c5c64d Manage variables related to both LaTeX export and snippets
* lisp/org.el (org-format-latex-header-extra, org-export-have-math):
  Removed variables.
(org-latex-default-packages-alist): Renamed from
`org-export-latex-default-packages-alist'.
(org-latex-packages-alist): Renamed from
`org-export-latex-packages-alist'.
(org-try-cdlatex-tab, org-cdlatex-underscore-caret,
org-cdlatex-math-modify): Reorder in file.
(org-format-latex): Remove `org-format-latex-header-extra'.
(org-create-formula-image-with-dvipng,
org-create-formula-image-with-imagemagick): Apply variables renaming
and removal.
* lisp/org-entities.el (org-entities-user): Update docstring.
* lisp/ox-latex.el (org-latex-classes, org-latex-listings): Update
  docstring.
(org-latex-guess-inputenc): Renamed from `org-latex--guess-inputenc'.
(org-latex-guess-babel-language): Renamed from
`org-latex--guess-babel-language'.
(org-latex-template): Apply renaming.
* lisp/ox-beamer.el (org-beamer-template): Apply renaming.
* lisp/ob-latex.el (org-babel-execute:latex): Apply variable renaming
  and removal.
(org-babel-latex-tex-to-pdf): Call `org-latex-compile' instead of
copying it.
2013-02-06 23:06:31 +01:00
Nicolas Goaziou 73ddb3c49c Remove references to `org-protected' `org-example' and `original-indentation'
* lisp/org-macs.el (org-if-unprotected, org-if-unprotected-1,
  org-if-unprotected-at): Removed macros.
(org-re-search-forward-unprotected): Removed function.
* lisp/org.el (org-format-latex): Remove reference to `org-protected'.
* lisp/org-list.el (org-list-struct): Remove reference to
  `org-example' and `org-protected'.
* lisp/org-footnote.el (org-footnote-at-reference-p): Remove reference
  to `org-protected'.
* lisp/org-capture.el (org-capture-fill-template): Remove reference to
  `org-protected'.
* contrib/lisp/org-wikinodes.el (org-wikinodes-process-links-for-export):
  Remove reference to `org-protected' value.

These text properties were used by the old export framework. They are
not needed anymore.
2013-02-06 23:06:31 +01:00
Nicolas Goaziou a2f56264c9 Remove unnecessary linking to export framework
* lisp/org-clock.el (org-clocktable-defaults,
  org-clocktable-write-default): Avoid requiring the whole export
  framework just to check one variable.
* lisp/org-footnote.el (org-footnote-section): Update
  docstring.
(org-footnote-normalize): Remove all export related part from the
  function.
* lisp/org-inlinetask.el (org-inlinetask-export,
  org-inlinetask-export-templates): Removed variables.
(org-inlinetask-export-handler): Removed function.
* lisp/org-plot.el: Remove dependency on `org-exp' library.
* lisp/org.el (org-additional-option-like-keywords): Remove variable.
(org-get-export-keywords): New function.
(org-options-keywords): Update default list of keywords.
(org-remove-flyspell-overlays-in): Apply changes to keywords
compilation.
(org-highlight-latex-fragments-and-specials)
org-latex-and-specials-regexp,
org-export-html-special-string-regexps): Remove variables.
(org-compute-latex-and-specials-regexp,
org-do-latex-and-special-faces, org-remove-file-link-modifiers):
Remove functions.
(org-set-regexps-and-options, org-set-font-lock-defaults): Apply all
removals.
(org-use-sub-superscripts): Fix docstring.  Remove unused group.
(org-match-sexp-depth): Make it a defconst instead of a defcustom in
order to remove `org-export-translation' group completely.

The new export framework shouldn't be as much interleaved with Org
core as with the previous one.  For example, export options, which are
back-end dependent, shouldn't interfere with the display of the
buffer.
2013-02-06 23:06:31 +01:00
Nicolas Goaziou 0a01e52aa1 Install new exporter into Org innards
* contrib/lisp/org-mime.el (org-mime-htmlize, org-mime-compose): Use
  new exporter.
* lisp/ob-haskell.el (org-babel-haskell-export-to-lhs): Use new
  exporter.
* lisp/ob-latex.el (org-babel-execute:latex): Use new exporter.
* lisp/ob-org.el (org-babel-execute:org): Use new exporter.
* lisp/org-agenda.el (org-agenda-menu, org-agenda-write): Use new
  iCalendar export back-end.
* lisp/org-table.el (org-table-export, orgtbl-export): Remove
  dependency on `org-exp' library.
(org-table-clean-before-export): New function.
(org-table-colgroup-info): New variable.
(orgtbl-to-html): Use to new HTML export back-end.
* lisp/org.el (org-modules): Remove modules relative to obsolete
  export framework and add those relative to the new one.
(org-create-formula-image-with-dvipng, org-format-latex
org-create-formula-image-with-imagemagick): Use new exporter.
(org-indent-line): INCLUDE keywords are indented like regular
keywords.
(org-mode-map): Bind C-c C-e to new export dispatcher.
(org-menu): Install new exporter in menu.
2013-02-06 23:06:30 +01:00
Bastien Guerry c5ac9d415e org.el: Allow C-u C-u to insert a warning/delay cookie for org-deadline/org-schedule
* org.el (org-deadline): Allow a double universal prefix
argument to insert/update a warning cookie.
(org-deadline): Allow a double universal prefix argument to
insert/update a delay cookie.
2013-02-06 17:23:25 +01:00
Bastien Guerry 8ecc966292 Implement "delay" cookies for scheduled items.
* org-agenda.el (org-agenda-skip-scheduled-delay-if-deadline):
New option.  The structure of the possible values is copied
from `org-agenda-skip-deadline-prewarning-if-scheduled'.
(org-agenda-get-scheduled): Honor the two new option,
`org-scheduled-delay-days' and
`org-agenda-skip-deadline-prewarning-if-scheduled'.  I.e. if a
scheduled entry has a delay cookie like "-2d" (similar to the
prewarning cookie for deadline), don't show the entry until
needed.

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

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

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

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

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

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

Also check org-agenda-skip-scheduled-delay-if-deadline, which does for
delay cookies what `org-agenda-skip-deadline-prewarning-if-scheduled' does
for prewarning deadline cookies.
2013-02-06 17:23:24 +01:00
Bastien Guerry 3380460c69 Merge branch 'maint' 2013-02-05 00:11:08 +01:00
John K. Luebs f27e1e8e4d org.el (org-get-wdays): Handle matching a lead time specified in hours
* org.el (org-get-wdays): Handle matching a lead time specified in
hours.

TINYCHANGE

A lead time in hours is matched but will erroneously return nil.
2013-02-05 00:10:05 +01:00
Bastien Guerry bbea8d348b Allow to contextualize capture and agenda commands by checking the name of the buffer
* org.el (org-contextualize-validate-key): Check against two
new context predicates [not-]in-buffer.

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

Thanks to Paul Sexton for triggering this and for proposing a patch.
2013-01-31 11:06:04 +01:00
Bastien Guerry 2d18609f4a Merge branch 'maint'
Conflicts:
	contrib/lisp/org-e-odt.el
2013-01-30 12:11:10 +01:00
Bastien Guerry 6d06bcfcbc org.el: Always honor `org-startup-indented', even when `org-inhibit-startup' is non-nil
* org.el (org-mode): Always honor `org-startup-indented', even
when `org-inhibit-startup' is non-nil.

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

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

Thanks to Leo Liu for reporting this.
2013-01-27 09:21:35 +01:00
Bastien Guerry 5e11659e66 Merge branch 'maint'
Conflicts:
	lisp/org.el
2013-01-26 15:11:21 +01:00
Bastien Guerry a119649923 org.el (org-agenda-inhibit-startup): Rename from `org-agenda-inhibit-startup-visibility-cycling'
* org.el (org-agenda-inhibit-startup): Rename from
`org-agenda-inhibit-startup-visibility-cycling'.
(org-agenda-prepare-buffers): Bind `org-inhibit-startup' to
`org-agenda-inhibit-startup'.
2013-01-26 15:10:43 +01:00
Bastien Guerry d0cad612ec org.el (org-mode): Don't initialize `org-beamer-mode' when `org-inhibit-startup' is non-nil
* org.el (org-mode): Don't initialize `org-beamer-mode' when
`org-inhibit-startup' is non-nil.
2013-01-26 15:03:21 +01:00
Bastien Guerry de33803038 org.el (org-read-date-minibuffer-local-map): New variable (Incompatible change)
* org.el (org-read-date-minibuffer-local-map): New variable.
(org-read-date): Use it.
(org-read-date-minibuffer-setup-hook): Mark as obsolete.

Thanks to Mark Edgington for suggesting this.

This is an incompatible change: if you use
`org-read-date-minibuffer-setup-hook' to set up commands for the
`org-read-date' minibuffer, you need to update your configuration
and use `org-read-date-minibuffer-local-map' instead.
2013-01-26 11:32:46 +01:00
Bastien Guerry cd47d5a80b Silent compiler warning 2013-01-26 11:23:08 +01:00
Bastien Guerry 9a466f2f05 Merge branch 'maint'
Conflicts:
	lisp/org.el
2013-01-26 10:59:12 +01:00
Bastien Guerry 36dba0cf6e org.el (org-agenda-inhibit-startup-visibility-cycling): New option
* org.el (org-agenda-inhibit-startup-visibility-cycling): New
option.
(org-agenda-prepare-buffers): Use it to speed up the agenda
generation.

This change will boost agenda creation *a lot*, especially for
people using many agenda files.  See the docstring of the new
option for details.
2013-01-26 10:57:47 +01:00
Nicolas Goaziou 61078b4ed4 Fix C-c C-c at a footnote definition
* lisp/org.el (org-ctrl-c-ctrl-c): `save-excursion' prevents
  `org-footnote-action' to put point back onto the definition.
2013-01-26 10:34:57 +01:00
Bastien Guerry f11accd3ee Merge branch 'maint'
Conflicts:
	lisp/org.el
2013-01-24 16:36:36 +01:00
Bastien Guerry 97f0951d14 Fix compiler warning. 2013-01-24 16:31:08 +01:00
Bastien Guerry 3b77bc7c66 org.el (org-read-date): Bind `!' to `diary-view-entries'
* org.el (org-read-date): Bind `!' to `diary-view-entries' in
order to check diary entries while setting an Org date.
2013-01-24 15:31:54 +01:00
Bastien Guerry b2abdfb95a New face `org-priority'. Enhance fontification of priority cookies in agenda.
* org-faces.el (org-priority): New face.

* org.el (org-font-lock-add-priority-faces): Use the new face.

* org-agenda.el (org-agenda-fontify-priorities): Use the
org-priority face and add specific agenda face on top of it.
2013-01-24 14:16:11 +01:00
Nicolas Goaziou 699bb5415b Silence byte-compiler 2013-01-23 17:38:17 +01:00
Bastien Guerry 5e432838fd org.el: fix error message when C-u C-u C-c C-c on a list.
* org.el (org-ctrl-c-ctrl-c): Only throw a message when using
two universal prefix arguments on a list where all items are
already in a transitory state.  Refine the error when the
checkbox cannot be toggled.

Thanks to Robert Horn for reporting this.
2013-01-22 15:22:17 +01:00
Bastien Guerry 627b3faa3d Merge branch 'maint'
Conflicts:
	lisp/org.el
2013-01-22 13:57:57 +01:00
Bastien Guerry a85b393994 org.el (org-adaptive-fill-function): Fix various bugs when filling in message-mode
* org.el (org-adaptive-fill-function): In message-mode, don't
lines in the message header, nor table lines in the body.
Correctly fill lines starting with `org-outline-regexp' in the
body.
2013-01-22 13:55:57 +01:00
Nicolas Goaziou f7f1b4bb7e Fix C-c C-c error when called on attributes attached to a plain list
* lisp/org.el (org-ctrl-c-ctrl-c): Fix error when called on attributes
  attached to a plain list.
2013-01-21 21:59:03 +01:00
Nicolas Goaziou e376137e71 Allow C-c C-c to act on item anywhere on its first line
* lisp/org.el (org-ctrl-c-ctrl-c): Anywhere on the first line of an
  item, act on that item, provided no other object is found under the
  point.  Fix bug when function is called on a footnote definition
  attribute.

This is a convenience feature mimicing old behaviour, but it is an
aberration from the structure POV.
2013-01-20 23:45:44 +01:00
Nicolas Goaziou 60083a5edb Rewrite C-c C-c using Elements
* lisp/org.el (org-ctrl-c-ctrl-c): Rewrite function using Elements.
2013-01-19 23:34:59 +01:00
Nicolas Goaziou 780b453227 Allow special editing of SETUPFILE keywords again
* lisp/org.el (org-edit-special): Fix regression.
2013-01-16 19:27:38 +01:00
Bastien Guerry 6d48cbc944 Revert "Compatibility: Use org-define-obsolete-{function,variable}-alias"
This reverts commit 8fcdb5179b.
2013-01-14 09:34:07 +01:00
Bastien Guerry 6b746e20b8 Merge branch 'master' of orgmode.org:org-mode 2013-01-13 11:18:00 +01:00
Bastien Guerry 7369cada30 Merge branch 'maint' 2013-01-13 11:17:56 +01:00
Nicolas Goaziou 9d26797448 Move functions operating on timestamp objects into org.el
* contrib/lisp/org-export.el (org-export-timestamp-has-time-p,
  org-export-format-timestamp, org-export-split-timestamp-range,
  org-export-translate-timestamp): Removed functions.
* lisp/org.el (org-timestamp-has-time-p, org-timestamp-format,
  org-timestamp-split-range, org-timestamp-translate): New functions.
* contrib/lisp/org-e-ascii.el (org-e-ascii-timestamp): Apply move.
* contrib/lisp/org-e-groff.el (org-e-groff-timestamp): Apply move.
* contrib/lisp/org-e-html.el (org-e-html-timestamp): Apply move.
* contrib/lisp/org-e-latex.el (org-e-latex-timestamp): Apply move.
* contrib/lisp/org-e-odt.el (org-e-odt--format-timestamp,
  org-e-odt-timestamp): Apply move.
* contrib/lisp/org-e-texinfo.el (org-e-texinfo-timestamp): Apply move.
* testing/lisp/test-org-export.el: Remove tests.
* testing/lisp/test-org.el: Add tests.
2013-01-13 10:01:05 +01:00
Bastien Guerry 04eb4b08c3 Revert "Compatibility: Use org-define-obsolete-{function,variable}-alias"
This reverts commit 305f29776f.
2013-01-13 09:19:24 +01:00
Bastien Guerry 71f2befb61 Merge branch 'maint'
Conflicts:
	lisp/org-agenda.el
2013-01-11 17:19:52 +01:00
Bastien Guerry 3c4df588e8 Restore previous behavior for inherited tags, now just more flexible
* org.el (org-get-tags-at): Remove duplicate inherited tags.

* org-agenda.el (org-agenda-show-inherited-tags): Allow to be
set to 'always or to a list of agenda types.
(org-agenda-finalize): Rework conditions under which inherited
tags should be made available even when not displayed.
(org-search-view, org-agenda-get-todos)
(org-agenda-get-timestamps, org-agenda-get-sexps)
(org-agenda-get-progress, org-agenda-get-scheduled)
(org-agenda-get-blocks): Use new possible values of
`org-agenda-show-inherited-tags'.

Thanks to Karl Voit and Tassilo Horn who first reported this.
2013-01-11 17:15:17 +01:00
Bastien Guerry 69133332aa Merge branch 'maint' 2013-01-11 12:31:51 +01:00
Bastien Guerry db7ece9fa2 org.el ("org-loaddefs.el"): use `load', not `org-load-noerror-mustsuffix'
* org.el ("org-loaddefs.el"): Load org-loaddefs.el before
requiring any org library.  Also use `load', not
`org-load-noerror-mustsuffix'.
(org-effort-durations): Move up to fix a compiler warning.

This patch should reduce complexity without breaking compatibility
with XEmacs.  Before this patch, users with a wrong load path would
require org-compat.el from this wrong load path, and loading
org-loaddefs.el would not work.
2013-01-11 12:31:40 +01:00
Bastien Guerry de10210cf9 org.el (org-open-at-point): Fix opening all links at point
* org.el (org-open-at-point): Fix opening all links at point.

Thanks to Ingo Lohmar for reporting this.
2013-01-11 12:11:09 +01:00
Bastien Guerry d1d7da4267 org.el (org-edit-special): Fix typo in docstring
* org.el (org-edit-special): Fix typo in docstring.
2013-01-09 17:57:06 +01:00
Nicolas Goaziou 3ea93df5a6 Rewrite `org-edit-special' with Elements
* lisp/org.el (org-edit-special): Rewrite `org-edit-special' using Org
  Elements tools.  Behaviour should be unchanged.
2013-01-09 15:41:41 +01:00
Bastien Guerry 94ea6bca08 Merge branch 'maint' 2013-01-08 23:44:59 +01:00
Bastien Guerry e53f22c615 org.el (org-edit-special): Check for table.el before checking for Org tables
* org.el (org-edit-special): Check for table.el before
checking for Org tables.

Thanks to Jacobo de Vera for reporting this.
2013-01-08 23:44:54 +01:00
Bastien Guerry 5fc740a230 Merge branch 'maint' 2013-01-08 15:04:40 +01:00
Bastien Guerry 72bc144c15 Update Copyright lines to match Emacs format. 2013-01-08 15:04:32 +01:00
Nicolas Goaziou d9649ca7a2 Merge branch 'maint' 2013-01-08 10:36:47 +01:00
Nicolas Goaziou 7684fbd6a2 Ignore `auto-fill-inhibit-regexp'
* lisp/org.el (org-setup-filling): Ignore `auto-fill-inhibit-regexp'.
  The idea behind this is that `org-adaptive-fill-function' already
  determines which lines should be filled.
2013-01-08 10:34:40 +01:00
Bastien Guerry daa35c0c68 Merge branch 'maint' 2013-01-08 08:04:36 +01:00
Bastien Guerry 44d1a69eab org.el (org-setup-filling): Set `auto-fill-inhibit-regexp' from `org-outline-regexp'
* org.el (org-setup-filling): Set `auto-fill-inhibit-regexp'
from `org-outline-regexp'.

Thanks to John Hendy for reporting a problem in this area.
2013-01-08 08:04:24 +01:00
Bastien Guerry 68c1ad99ea New option `org-time-clocksum-use-effort-durations'
* org.el (org-time-clocksum-format): Add a version tag and add
to the 'org-clock group.
(org-time-clocksum-use-fractional): Ditto.
(org-time-clocksum-use-effort-durations): New option to allow
using `org-effort-durations' when computing clocksum durations.
(org-minutes-to-clocksum-string): Use the new option.

* org-clock.el (org-clocktable-write-default): Let-bind
`org-time-clocksum-use-effort-durations' to a new clocktable
parameter ":effort-durations".

Thanks to Sébastien Vauban for pointing the inconsistency.
2013-01-07 21:44:00 +01:00
Bastien Guerry 5c8cc17d39 Merge branch 'maint' 2013-01-07 18:21:39 +01:00
Bastien Guerry 0de96daa95 org.el (org-entry-get): Speed up by let-binding some variables only if needed
* org.el (org-entry-get): Speed up by let-binding some
variables only if needed.  Also fix a bug: consider an empty
drawer as no drawer.

Thanks to William Léchelle for reporting this.
2013-01-07 18:18:27 +01:00
Bastien Guerry b54d6f5965 Merge branch 'maint'
Conflicts:
	lisp/org-agenda.el
	lisp/org.el
	testing/lisp/test-org-element.el
2013-01-07 16:19:37 +01:00
Bastien Guerry babba02750 org.el (org-use-tag-inheritance): Fix typo in docstring
* org.el (org-use-tag-inheritance): Fix typo in docstring.
2013-01-07 13:47:59 +01:00
Bastien Guerry aaf14258eb org.el (org-scan-tags): The skipper already checks for archived entries
* org.el (org-scan-tags): The skipper already checks for
archived entries.
2013-01-07 12:57:27 +01:00
Bastien Guerry 6cd243468b Speed up setting/getting the APPT_WARNTIME property.
* org.el (org-refresh-properties): Rename from
`org-refresh-effort-properties' and use two new parameters.
(org-agenda-prepare-buffers): Use `org-refresh-properties'.
Also refresh the 'org-appt-warntime text property.

* org-clock.el (org-clock-in): Use the renamed defun.

* org-icalendar.el (org-icalendar-print-entries): Refresh the
'org-appt-warntime property.
(org-icalendar-print-entries): Do not use `org-entry-get' to
get the "APPT_WARNTIME" property value.

* org-agenda.el (org-agenda-get-timestamps)
(org-agenda-get-sexps, org-agenda-get-deadlines)
(org-agenda-get-scheduled): Ditto.
2013-01-07 12:50:49 +01:00
Bastien Guerry 334596e3c7 org.el (org-adaptive-fill-function): Fix checking of post-affiliated
* org.el (org-adaptive-fill-function): Fix checking of
post-affiliated.
(org-id-link-to-org-use-id): Fix compiler warning.
2013-01-07 12:39:09 +01:00
Bastien Guerry c4d4bf3833 New defun `org-refresh-effort-properties'
* org-agenda.el (org-agenda-format-item): Do not use
org-get-effort to get the effort text property.
(org-agenda-get-sexps): Use `org-back-to-heading' when setting
the tags.

* org-clock.el (org-clock-in): Refresh effort properties.

* org.el (org-refresh-effort-properties): New defun.
(org-get-effort): Delete.
(org-set-effort): Set the 'org-effort text property.
(org-property-next-allowed-value): Ditto.
(org-agenda-prepare-buffers): Refresh effort properties.
2013-01-07 12:33:24 +01:00
Achim Gratz 5484a33b8d Compatibility: Use org-load-noerror-mustsuffix
* lisp/org-macs.el: New macro to allow the 5-argument form of load to
  be used where possible without breaking compatibility with XEmacs.

* lisp/org.el (org-version, org-reload): Use
  `org-load-noerror-mustsuffix´ instead of adding a fifth argument to
  load directly.  Guard against undefined variable load-suffixes,
  which doesn't exist in XEmacs.

Since load-suffixes doesn't exist in XEmacs, (org-reload 'uncompiled)
will not work.  If it doesn't complicate the compatibility macro too
much this can be added later.
2013-01-06 18:33:34 +01:00
Achim Gratz 8fcdb5179b Compatibility: Use org-define-obsolete-{function,variable}-alias
* lisp/org.el: Use
  `org-define-obsolete-{function,variable}-alias´instead of
  `define-obsolate{function,variable}-alias´.
2013-01-06 18:33:23 +01:00
Achim Gratz 19460418a0 Merge branch 'maint' 2013-01-06 18:33:16 +01:00
Achim Gratz 305f29776f Compatibility: Use org-define-obsolete-{function,variable}-alias
* lisp/org-compat.el (org-define-obsolete-function-alias,
  org-define-obsolete-variable-alias): Introduce new compatibility
  macros to obsolete functions and variables.

* lisp/org-agenda.el, lisp/org-clock.el, lisp/org-id.el,
  lisp/org-lparse.el, lisp/org-protocol.el lisp/org.el: Use
  `org-define-obsolete-{function,variable}-alias´instead of
  `define-obsolate{function,variable}-alias´.
2013-01-06 18:29:05 +01:00
Bastien Guerry 8c5b47935f Merge branch 'maint' 2013-01-06 12:46:33 +01:00
Bastien Guerry 47583ba1e4 org.el (org-read-date): Let-bind `mouse-autoselect-window' to nil
* org.el (org-read-date): Let-bind `mouse-autoselect-window'
to nil so that the mouse doesn't jump when the option is set
to t globally.

Thanks to E Sabof for reporting this.
2013-01-06 12:37:18 +01:00
Bastien Guerry 8d7990acfa Merge branch 'maint'
Conflicts:
	lisp/org.el
2013-01-05 17:29:06 +01:00
Bastien Guerry cad0b388dd org.el (org-adaptive-fill-function): DTRT in `message-mode'
* org.el (org-adaptive-fill-function): DTRT in `message-mode'.

This is too hackish, but do the job for now.  Instead of
having exceptions for `message-mode' filling wrapped into
org-*-fill* functions, we should let orgstruct++-mode do
this job.
2013-01-05 17:23:34 +01:00
Bastien Guerry 5c2dd988a5 Merge branch 'maint' 2013-01-04 18:15:56 +01:00
Bastien Guerry 6a0c650dd2 org.el (org-get-priority): Save match data even when using `org-get-priority-function'
* org.el (org-get-priority): Save match data even when using
`org-get-priority-function'.
2013-01-04 18:15:51 +01:00
Bastien Guerry ab17f9959e Merge branch 'maint' 2013-01-02 23:54:12 +01:00
Bastien Guerry fd0380b52f org.el (org-store-link): Use `org-id-link-to-org-use-id'
* org.el (org-store-link): Use `org-id-link-to-org-use-id'
instead of the obsolete variable name.
2013-01-02 23:46:14 +01:00
Bastien Guerry c1934ccfb4 org.el (org-fontify-meta-lines-and-blocks-1): Fix bug when fontifying keywords with no value
* org.el (org-fontify-meta-lines-and-blocks-1): Fix bug when
fontifying keywords with no value.
2013-01-02 23:43:53 +01:00
Bastien Guerry af5514b848 Merge branch 'maint' 2013-01-02 10:48:06 +01:00
Bastien Guerry 68acb955f1 org.el: Various fixes to the org-goto interface
* org.el (org-goto-auto-isearch): Enhance docstring.
(org-goto-map): Make a defun, so that the customized value of
org-goto-auto-isearch is correctly initialized.
(org-goto): Initialize the keymap with `org-goto-map'.
(org-get-location): Use *Org Help* as a temporary buffer.
Tell whether auto-isearch is on or off.

Thanks to Tyler Smith for reporting this.
2013-01-02 10:47:59 +01:00
Bastien Guerry fb8ba17e69 Merge branch 'maint' 2013-01-01 23:49:16 +01:00
Bastien Guerry 2718888f8e Fix behavior of `org-forward/backward-h-s-l' before first headline
* org.el (org-forward-heading-same-level): Before the first
headline, go to the first headline.
(org-backward-heading-same-level): Before the first headline,
go to the beginning of the buffer, like
`outline-previous-visible-heading' does.
2013-01-01 23:49:12 +01:00
Bastien Guerry a9ece57df8 org.el (org-speed-commands-default): Use ":" instead of ";" for `org-set-tags-command'
* org.el (org-speed-commands-default): Use ":" instead of ";"
for `org-set-tags-command', which is consistent with ":" in
agenda view.  Use "=" for `org-columns".

Thanks to Alan Schmitt for pointing this.
2013-01-01 23:43:34 +01:00
Bastien Guerry bc0b221203 Merge branch 'maint' 2013-01-01 17:40:31 +01:00
Bastien Guerry fc2aae5d81 org.el (org-sparse-tree): Fix redundant information in prompt
* org.el (org-sparse-tree): Fix redundant information in prompt.
2013-01-01 17:40:13 +01:00
Bastien Guerry 60b23bdeac Merge branch 'maint'
Conflicts:
	contrib/lisp/htmlize.el
	etc/schema/od-manifest-schema-v1.2-os.rnc
	etc/schema/od-schema-v1.2-os.rnc
	lisp/org-exp-blocks.el
2013-01-01 16:06:17 +01:00
Bastien Guerry 98cd4687a2 Update copyright years.
Happy new year!
2013-01-01 16:04:24 +01:00
Bastien Guerry bd7c2a59e8 Merge branch 'maint' 2012-12-31 15:12:16 +01:00
Bastien Guerry 841a81007d Revert "org.el (org-fontify-meta-lines-and-blocks-1): Fix fontification bug"
This reverts commit 001b6d1ebd.
2012-12-31 15:12:09 +01:00
Bastien Guerry bf537b5139 Merge branch 'maint' 2012-12-31 11:29:26 +01:00
Bastien Guerry 001b6d1ebd org.el (org-fontify-meta-lines-and-blocks-1): Fix fontification bug
* org.el (org-fontify-meta-lines-and-blocks-1): Fix
fontification bug when fontifying a keyword with no associated
value.
2012-12-31 11:29:17 +01:00
Bastien Guerry 6fd066fb18 Merge branch 'maint' 2012-12-31 11:07:06 +01:00
Bastien Guerry 61993bc4bf org.el (org-cycle-internal-local): Don't run hooks when cycling a plain list before first headline
* org.el (org-cycle-internal-local): Don't run hooks when
cycling a plain list before first headline.
2012-12-31 11:06:55 +01:00
Bastien Guerry 6a758e26ff Merge branch 'maint' 2012-12-31 09:30:19 +01:00
Bastien Guerry a62beff06d org.el (org-ctrl-c-ctrl-c): Throw a user error when trying to toggle a blocked checkbox
* org.el (org-ctrl-c-ctrl-c): Throw a user error when trying
to toggle a blocked checkbox.
2012-12-31 09:29:45 +01:00
Bastien Guerry aa80e441dc org.el (org-indent-line): Fix table formulas indenting
* org.el (org-indent-line): Fix table formulas indenting.
2012-12-31 09:29:18 +01:00
Bastien Guerry e1c491e72d org.el (org-parse-time-string): Parse <+1w> and friends
* org.el (org-parse-time-string): Allow strings supported by
tags/properties matcher (eg <now>, <yesterday>, <-7d>).

* test-org.el (test-org/org-parse-time-string): New test.

This is based on Ilya's commit 001bcb9.  This commit was
wrong because active timestamps were not parsed correctly
anymore.  This commit handles them correctly.

Thanks to Ivan Vilata i Balaguer for pushing this forward.
2012-12-30 10:27:02 +01:00
Bastien Guerry 460c4d4ed0 Merge branch 'maint' 2012-12-30 01:21:32 +01:00
Bastien Guerry 14c3635a0d New macro `org-with-buffer-modified-unmodified'
* org-macs.el (org-with-buffer-modified-unmodified): New
macro.

* org.el (org-entry-blocked-p): Use the new macro.

Thanks to Nick Dokos for reporting this.

The macro is a copy of `with-buffer-modified-unmodified'
which (wrongly?) lives in bookmark.el.
2012-12-30 01:21:27 +01:00
Bastien Guerry b5f93f8fe3 New option `org-clock-rounding-minutes'
* org-clock.el (org-clock-rounding-minutes): New option to
round the time by N minutes in the past when clocking in or out.
(org-clock-in, org-clock-in-last, org-clock-out): Use the new
option.

* org.el (org-current-time): New optional parameter
`rounding-minutes' to override the use of
`org-time-stamp-rounding-minutes' for rounding.

Thanks to Kevin Buchs for a preliminary patch for this feature.
2012-12-29 18:45:07 +01:00
Bastien Guerry 7773e0d94c Merge branch 'maint' 2012-12-29 10:26:03 +01:00
Bastien Guerry aa3786bc20 org.el (org-entry-blocked-p): Don't set the buffer as modified
* org.el (org-blocker-hook): Update the docstring to mention
that functions in this hook should not modify the buffer.
(org-trigger-hook): Small docstring fix.
(org-entry-blocked-p): Use `with-buffer-modified-unmodified'
so that the function never modifies the buffer.

Thanks to Sven Bretfeld for reporting this.

When building the agenda, checking for blocked items should not
set the buffers as modified, otherwise exiting the agenda will ask
for confirmation each time it kills a buffer.
2012-12-29 09:39:42 +01:00
Bastien Guerry 197881bc1a Merge branch 'maint' 2012-12-29 09:23:28 +01:00
Bastien Guerry 8477a4b215 Allow to follow internal links from the agenda
* org-agenda.el (org-agenda-open-link): Allow to open an
internal link by using the new `org-offer-links-in-entry'
function.

* org.el (org-offer-links-in-entry): Do not open the link
directly through `org-open-link-from-string', only offer to
select a link and return a cons with the link (as a string)
and the end of entry.
(org-open-at-point): Use `org-offer-links-in-entry' correctly.

Thanks to Memnon Anon for reporting this.
2012-12-29 09:20:35 +01:00
Bastien Guerry 95096f14b6 org.el (org-store-link): Fix the naming of internal links to lines starting with a keyword
* org.el (org-store-link): Fix the naming of internal links to
lines starting with a keyword.

Thanks to Thomas S. Dye for reporting a related issue.
2012-12-29 06:30:47 +01:00
Bastien Guerry 9cf6800a95 Revert "org.el: (org-mode): Use `face-background' instead of `org-find-invisible-foreground'"
This reverts commit 4549f0c99c.
2012-12-28 19:01:18 +01:00
Bastien Guerry 0276cf0975 Merge branch 'maint' 2012-12-28 18:37:53 +01:00
Abdó Roig-Maranges 5954ba9a73 org.el: Don't re-generate latex previews if already present
* org.el (org-format-latex): Do not re-generate a latex preview if the
image already exists.

This feature was lost in commit 27101a3e0e
2012-12-28 18:37:47 +01:00
Bastien Guerry ffcd23cf30 org.el (org-cycle-internal-local): Fix bug: allow headings with leading blank characters
* org.el (org-cycle-internal-local): Fix bug: allow headings
with leading blank characters.

Thanks to Rémi Vanicat for sending a patch for this.
2012-12-28 18:37:07 +01:00
Bastien Guerry de6201b19c org.el (org-insert-link): Fix bug when inserting links to headlines containing the ">" character
* org.el (org-insert-link): Fix bug when inserting links to
headlines containing the ">" character.

Thanks to William Léchelle for reporting this.
2012-12-28 18:37:07 +01:00
Bastien Guerry ca4219abc9 org.el: New command `org-set-property-and-value' bound to `C-c C-x P'
* org.el (org-last-set-property-value): New variable.
(org-read-property-name): Fix dangling parentheses.
(org-set-property-and-value): New command to manually set
both the property and the value.  A prefix arg will use the
last property-value pair set without prompting the user.
(org-set-property): Set `org-last-set-property-value'.
(org-mode-map): Bind the new command to `C-c C-x P'.

This is useful when you need to set the same property-value
pair for several entries.
2012-12-24 14:44:21 +01:00
Bastien Guerry 4549f0c99c org.el: (org-mode): Use `face-background' instead of `org-find-invisible-foreground'
* org.el (org-find-invisible-foreground): Delete.
(org-mode): Use `face-background' instead of
`org-find-invisible-foreground'.

Thanks to Achim for suggesting this.
2012-12-24 13:46:36 +01:00
Bastien Guerry f01ce85026 Merge branch 'maint' 2012-12-24 01:25:38 +01:00
Bastien Guerry 40cb44e795 Fix regression: allow editing HTML and LaTeX source blocks again
* org.el (org-table-map-tables): Fix allowed blocks.
(org-edit-special): Fix regression: allow editing HTML and
LaTeX source blocks again.

* org-src.el (org-edit-src-code): Ditto.

Thanks to Nicolas Richard and Bernt Hansen for reporting bugs
in this area.
2012-12-24 01:25:33 +01:00
Bastien Guerry f0b35a6379 Merge branch 'master-fixes' 2012-12-24 01:15:57 +01:00
Bastien Guerry 4adf17f811 Merge branch 'maint' 2012-12-24 00:08:20 +01:00
Bastien Guerry 73d506a8dc org.el (org-nonsticky-props): Add `htmlize-link'
* org.el (org-nonsticky-props): Add `htmlize-link'.

Thanks to Samuel Wales for reporting a bug related to this.
2012-12-24 00:08:02 +01:00
Bastien Guerry 5fa52d9a93 org.el: Add new startup keywords
* org.el (org-startup-options): New startup keywords.
(org-log-into-drawer): Update docstring to explain how to set this
variable through the startup keyword "logdrawer" and "nologdrawer".
(org-log-states-order-reversed): Document the new startup keywords
"logstatesreversed" and "nologstatesreversed".

* org.texi (In-buffer settings): Document new startup keywords.
Thanks to John J Foerch for this idea.
2012-12-23 18:51:24 +01:00
Bastien Guerry 88555aab22 Merge branch 'maint' 2012-12-23 17:54:47 +01:00
Bastien Guerry 98a5f3df32 Don't allow special edit in verbatim blocks.
* org.el (org-edit-special): Don't edit in verbatim blocks.

* org-src.el (org-edit-src-code): Ditto.
2012-12-23 17:54:42 +01:00
Bastien Guerry 953b920c9b Merge branch 'maint' 2012-12-23 17:31:57 +01:00
Bastien Guerry f0a64ab3b5 org-table.el: Use `org-delete-backward-char' which doesn't modify match data anymore
* org-table.el (org-table-fedit-lisp-indent)
(orgtbl-self-insert-command): Use `org-delete-backward-char'
instead of `backward-delete-char'.

* org.el (org-delete-backward-char, org-delete-char): Save
match data.
2012-12-23 17:31:41 +01:00
Bastien Guerry c2e662cf79 Revert "Save match data in `org-delete-backward-char' and `org-delete-char'"
This reverts commit c800836d7c.
2012-12-23 17:26:45 +01:00
Bastien Guerry 8c53cc820e Merge branch 'master-fixes' 2012-12-23 17:20:55 +01:00
Bastien Guerry 9f1f0535be Merge branch 'maint' 2012-12-23 17:20:51 +01:00
Bastien Guerry 54731c965d Merge branch 'maint-fixes' into maint 2012-12-23 17:20:38 +01:00
Bastien Guerry 9f4ecf79b1 org.el (org-edit-special): Fix bug about editing special blocks "example" and "verbatim"
* org.el (org-structure-template-alist): Add verbatim.
(org-edit-special): Fix bug about editing special blocks
"example" and "verbatim".
2012-12-23 17:18:47 +01:00
Bastien Guerry c800836d7c Save match data in `org-delete-backward-char' and `org-delete-char'
* org.el (org-delete-backward-char, org-delete-char): Save
match data (`delete-backward-char' and `delete-char' don't.)
(org-enable-table-editor, org-insert-heading)
(org-remove-timestamp-with-keyword, org-self-insert-command):
Use `delete-backward-char' instead of `backward-delete-char'.

* org-table.el (org-table-fedit-lisp-indent)
(orgtbl-self-insert-command): Ditto.

* org-latex.el (org-export-latex-subcontent): Ditto.

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

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

Thanks to Vegard Vesterheim for raising this issue and proposing a patch,
and to Carsten for pointing at the root of the problem.
2012-12-23 12:30:40 +01:00
Bastien Guerry 2861bfc712 org.el (org-mode-map): Use `org-remap' instead of binding `M-t'
* org.el (org-mode-map): Use `org-remap' instead of binding
`M-t' to `org-transpose-words' directly.
2012-12-23 12:15:24 +01:00
Bastien Guerry e815ab5f8e Merge branch 'master-fixes' 2012-12-23 00:34:49 +01:00
Bastien Guerry b6eede54b2 Merge branch 'maint' 2012-12-23 00:34:42 +01:00
Bastien Guerry a0fd83976a Fix compiler warnings 2012-12-23 00:32:40 +01:00
Bastien Guerry 0f7500704e org.el: Introduce a tiny syntax table for a new function `org-transpose-words'
* org.el (org-syntax-table): New variable.
(org-transpose-words): New command, simply wrapping the new
syntax table around `transpose-words'.
(org-mode-map): Bind `org-transpose-words' to `M-t'.

Thanks to Eric Abrahamsen for this idea.
2012-12-23 00:31:14 +01:00
Bastien Guerry 416357c82c org.el (org-store-link): Use keyword at point as the search string
* org.el (org-store-link): Use keyword at point as the search
string.

Thanks to Thomas Dye for reporting this.
2012-12-22 23:20:47 +01:00
Bastien Guerry a0be28eeb6 org.el (org-make-org-heading-search-string): Rewrite using org-element.el
* org.el (org-make-org-heading-search-string): Rewrite using
org-element.el.  Not an interactive function anymore.
2012-12-22 23:06:08 +01:00
Bastien Guerry f015ae5b8b org.el (org-todo): Ignore the comment string when changing a TODO state
* org.el (org-todo): Ignore the comment string when changing
the TODO state of a headline.

Thanks to Samuel Wales for reporting this.
2012-12-22 20:16:17 +01:00
Bastien Guerry dd0c6a4440 Use `delq nil' instead of `delete nil' in a few functions
* org.el (org-store-link): Use `delq nil' instead of `delete nil'.

* org-pcomplete.el (pcomplete/org-mode/drawer): Ditto.

* org-mobile.el (org-mobile-files-alist): Ditto.
2012-12-22 19:45:26 +01:00
Bastien Guerry 1db82b269a org.el: Don't add curly braces to bracket links within internal links
* org.el (org-store-link): When creating a link to a heading
with a bracket link, don't escape this link with curly braces
as the escaped link is not active anyway; use the description
instead.  If the headline only consists of a bracket link, add
a star to the description so that the user knows this is an
internal link.

Thanks to Dave Abrahams for triggering this.
2012-12-22 19:39:03 +01:00
Bastien Guerry cb05900402 org.el (org-store-link): Remove handling w3m links from this function
* org.el (org-store-link): Update the error message when no
method is available for storing a link.  Use `user-error' for
this.  Remove handling w3m links from this function.
2012-12-22 19:18:33 +01:00
Bastien Guerry 8a78d1790e org.el (org-insert-heading, org-insert-todo-heading): C-u C-u inserts at the end of the parent subtree
* org.el (org-insert-heading, org-insert-todo-heading): A
double prefix arg force the insertion of the subtree at the
end of the parent subtree.

Thanks to Esben Stien for asking this.
2012-12-22 18:47:27 +01:00
Bastien Guerry 8fddddcbc8 org.el (org-store-link): A double prefix argument now skips module store-link functions
* org.el (org-store-link): A double prefix argument now skips
module store-link functions to only use Org's core functions.
Also, when several modular store-link functions match, ask for
which one to use.

Thanks to Jonas Bernoulli for this idea.
2012-12-22 17:13:43 +01:00
Sebastien Vauban ce4e0846b2 When pasting a copied subtree, respect the whitelines before and after
* org.el (org-copy-subtree, org-paste-subtree): Fix whitespace
handling when copying/pasting a subtree.
2012-12-22 16:22:12 +01:00
Bastien Guerry 43f7659664 org.el: Don't populate the *Messages* with messages from some functions.
* org.el (org-cycle, org-cycle-internal-global)
(org-cycle-internal-local, org-display-outline-path): Let-bind
`message-log-max' to nil so that messages don't populate the
*Messages*.

Thanks to Michael Heerdegen for raising this and to Christopher Schmidt
and Michael Brand for suggesting a fix.
2012-12-22 16:06:47 +01:00
Bastien Guerry fa17bf12d5 Merge branch 'maint'
Conflicts:
	lisp/ob.el
2012-12-21 09:33:19 +01:00
Bastien Guerry 30922bd7e9 org.el (org-edit-special): Fix docstring.
* org.el (org-edit-special): Fix docstring.
(org-in-src-block-p): Small enhancement.
2012-12-21 09:32:38 +01:00
Bastien Guerry a14d2673a7 Merge branch 'maint'
Conflicts:
	lisp/org.el
2012-12-20 16:37:35 +01:00
Bastien Guerry 8165be3aa5 org.el: Prevent link activation in source code blocks
* org.el (org-in-fixed-width-region-p): Save match data.
(org-in-src-block-p): Use case-folding for searching the block
boundaries.
(org-activate-plain-links, org-activate-angle-links)
(org-activate-bracket-links): Prevent link activation in
source code blocks.

Thanks to Sébastien Vauban for reporting a related issue.
2012-12-20 16:34:27 +01:00
Bastien Guerry 8cee987f79 Merge branch 'maint' 2012-12-20 16:16:09 +01:00
Bastien Guerry e89994a75c Revert "org.el (org-set-font-lock-defaults): Don't activate links in source code blocks and fixed-width regions"
This reverts commit f983cf1729.
2012-12-20 16:15:54 +01:00
Bastien Guerry e5539d4d58 Merge branch 'maint'
Conflicts:
	lisp/ob.el
	lisp/org.el
2012-12-20 15:54:52 +01:00
Bastien Guerry f983cf1729 org.el (org-set-font-lock-defaults): Don't activate links in source code blocks and fixed-width regions
* org.el (org-set-font-lock-defaults): Don't activate links in
source code blocks and fixed-width regions.

Thanks to Sébastien Vauban for reporting an error related to this.
2012-12-20 15:42:53 +01:00
Bastien Guerry 5de94e46e4 Merge branch 'maint' 2012-12-20 13:16:47 +01:00
Dmitry Antipov bfb9f9d10f Use (point-marker) instead of (move-marker (make-marker) (point))
* org-agenda.el (org-agenda-get-restriction-and-command): Use `point-marker'.
* org-capture.el (org-capture-place-template): Likewise.
* org-colview-xemacs.el (org-dblock-write:columnview): Likewise.
* org-colview.el (org-dblock-write:columnview): Likewise.
* org-mobile.el (org-mobile-locate-entry): Likewise.
* org-table.el (org-table-convert-region): Likewise.
* org.el (org-update-statistics-cookies): Likewise.
* contrib/lisp/org-invoice.el (org-dblock-write:invoice): Likewise.
2012-12-20 13:16:41 +01:00
Achim Gratz 12d53240e9 Merge branch 'maint' 2012-12-20 13:00:04 +01:00
Achim Gratz b508943d32 org-compat: new macro org-no-popups
* lisp/org-compat.el (org-no-popups): New wrapper macro which
  let-binds the correct variables to suppress popup windows depending
  on the Emacs version in use.  This is a compile-time decision when
  byte-compiling.

* lisp/org.el (org-get-location, org-switch-to-buffer-other-window):
  Use the wrapper `org-no-popups´ to let-bind the correct variables
  for suppression of popup windows.
2012-12-20 12:57:52 +01:00
Bastien Guerry 096c5644f7 Merge branch 'maint' 2012-12-20 11:13:39 +01:00
Bastien Guerry dfa3c74e34 Fix commit 14ffe2. 2012-12-20 11:13:30 +01:00
Bastien Guerry 9be19e32d1 Merge branch 'maint' 2012-12-20 09:39:48 +01:00
Bastien Guerry 14ffe22b8f org.el (org-open-at-point): Handle non-links correctly.
* org.el (org-open-at-point): Throw the correct error on
non-links.  Use `user-error' instead of `error'.

This fixes a bug introduced in ad35e2.

Thanks to Samuel Loury for spotting this and for submitting a patch.
2012-12-20 09:39:35 +01:00
Bastien Guerry 15426c6fd0 Merge branch 'maint' 2012-12-20 01:20:21 +01:00
Bastien Guerry fd9b262d94 Fix more compiler warnings.
* org.el (org-clock-timestamps-up): Fix declarations.

* ob-core.el (org-split-string): Declare function.
2012-12-20 01:20:17 +01:00
Bastien Guerry 963ede0a9d Fix some compiler warnings.
* org.el (org-in-fixed-width-region-p): Define before use.

* org-src.el (org-in-src-block-p): Declare function.
2012-12-20 01:16:01 +01:00
Achim Gratz ea5e54f93d Merge branch 'maint' 2012-12-19 11:05:17 +01:00
Achim Gratz 9a71174348 Backwards compatibility: check for possibly undefined variables in org-find-invisible-foreground
* lisp/org.el (org-find-invisible-foreground): Do not use the value of
  variables `default-frame-alist´, `initial-frame-alist´ and
  `window-system-default-frame-alist´ when their symbol is not bound.

This avoids an error with Emacs 22, which does not define
`window-system-default-frame-alist´, that prevents the test suite from
even starting, the other variables are treated the same as a defensive
measure.
2012-12-19 11:04:22 +01:00
Nicolas Goaziou 76cf2538bb Merge branch 'maint' 2012-12-18 19:33:47 +01:00
Nicolas Goaziou 7739e8b5f7 Small refactoring
* lisp/org.el (org-fill-paragraph): Small refactoring.
2012-12-18 19:32:50 +01:00
Bastien Guerry bbb451a7b6 Merge branch 'maint' 2012-12-18 15:09:54 +01:00