Commit Graph

3087 Commits

Author SHA1 Message Date
Bastien Guerry ad1e98a23c Merge branch 'maint' 2013-05-14 16:07:38 +02:00
Bastien Guerry 2ae3e91076 org.el (org-refresh-properties): Put the text property on the whole subtree, not just on the headline
* org.el (org-refresh-properties): Put the text property on
the whole subtree, not just on the headline.

Thanks to Ivan Kanis for reporting this and to Miguel Ruiz for confirming
the bug.
2013-05-14 16:07:21 +02:00
Achim Gratz 646f1ac426 org-table: several cleanups
* lisp/org.el (org-table-clean-did-remove-column),
  lisp/org-table.el (org-table-clean-did-remove-column): Move defvar,
  this dynamic variable is only used in org-table.
* lisp/org-table.el (org-table-colgroup-info): Remove unused defvar
  for `org-table-colgroup-info'.
  (org-table-clean-before-export): Let-bind regular expression strings
  and remove unused matching group.  Use
  `org-table-clean-did-remove-column' in cond statement rather than
  branching via if to avoid code duplication.  Remove the code
  associated with the removed `org-table-colgroup-info'.
  (orgtbl-export): Remove unused internal function.
2013-05-12 21:10:19 +02:00
Christopher Schmidt 0ea11e26e4 org.el: Make orgstruct++-mode overwrite local non-org vars again.
* org.el (orgstruct++-mode): Overwrite local non-org vars again.
2013-05-12 16:54:36 +02:00
Carsten Dominik 4e0fad540f Fix point adjustment after beginning/end of line commands
* lisp/org.el (org-beginning-of-line,org-end-of-line): Set
  disable-point-adjustment when the command ends next to invisible
  text.
2013-05-10 08:59:07 +02:00
Carsten Dominik b3a88babf1 Merge branch 'fix-types' 2013-05-09 15:24:43 +02:00
Carsten Dominik a84c01642b Fix customization types of variables
* contrib/lisp/org-wl.el (org-wl-namazu-default-index): Fix custom type.
* lisp/ob-lob.el (org-babel-lob-files): Fix custom type.
* lisp/org-agenda.el (org-agenda-export-html-style):
(org-agenda-ndays):
(org-agenda-inactive-leader):
(org-agenda-day-face-function):
(org-agenda-auto-exclude-function): Fix custom type.
* lisp/org-bibtex.el (org-bibtex-prefix): Fix custom type.
* lisp/org-clock.el (org-clock-heading-function):
(org-show-notification-handler): Fix custom type.
* lisp/org-footnote.el (org-footnote-auto-adjust): Fix custom type.
* lisp/org-protocol.el (org-protocol-default-template-key): Fix custom type.
* lisp/org.el (org-make-link-description-function):
(org-link-translation-function):
(org-link-frame-setup):
(org-refile-target-verify-function):
(org-get-priority-function):
(org-use-fast-tag-selection):
(org-columns-modify-value-for-display-function):
(org-sparse-tree-default-date-type): Fix custom type.
* lisp/ox-html.el (org-html-postamble):
(org-html-postamble-format):
(org-html-preamble-format): Fix custom type.
* lisp/ox-odt.el (org-odt-content-template-file): Fix custom type.
* lisp/ox.el (org-export-with-archived-trees):
(org-export-initial-scope): Fix custom type.

Thanks to Glenn Moris for reporting these.  He used cus-test.el
to find them.
2013-05-09 15:19:02 +02:00
Bastien Guerry eceb2ff7d1 Merge branch 'maint' 2013-05-07 15:11:59 +02:00
Bastien Guerry 0df6bcdf2a org.el (org-get-outline-path): Remove statistical and checkboxes cookies
* org.el (org-get-outline-path): Remove statistical and
checkboxes cookies.

Thanks to Marcel van der Boom for reporting this.
2013-05-07 15:11:47 +02:00
Christopher Schmidt 741bc5c645 org.el: Execute org-insert-heading and org-insert-heading-respect-content in
orgstruct++-mode when the context around point is an item-body.

* org.el (orgstruct-make-binding): Execute org-insert-heading
and org-insert-heading-respect-content when the context around
point is an item-body.
2013-05-06 18:25:00 +02:00
Michael Brand 9998f2c897 Escape double quotes in URL passed to browse-url
Escape double quotes in URL passed to browse-url

* lisp/org.el (org-link-escape-chars-browser): Add char double quote.
* lisp/org.el (org-open-at-point): Make use of the constant
`org-link-escape-chars-browser'.
* testing/lisp/test-org.el
(test-org/org-link-unescape-ascii-extended-char): Fill paragraph.
(test-org/org-link-escape-url-with-escaped-char): Fill paragraph and
typo.
(test-org/org-link-escape-chars-browser): New test.

This is to make work to open the Org link
[[http://some.host.com/search?q="Org mode"]] in a browser.

From 28726bcc7b7c440d70e2d95ea5a61d0cd5f084ea Mon Sep 17 00:00:00 2001
From: Michael Brand <michael.ch.brand@gmail.com>
Date: Sun, 5 May 2013 17:02:18 +0200
Subject: [PATCH] Escape double quotes in URL passed to browse-url

* lisp/org.el (org-link-escape-chars-browser): Add char double quote.
* lisp/org.el (org-open-at-point): Make use of the constant
`org-link-escape-chars-browser'.
* testing/lisp/test-org.el
(test-org/org-link-unescape-ascii-extended-char): Fill paragraph.
(test-org/org-link-escape-url-with-escaped-char): Fill paragraph and
typo.
(test-org/org-link-escape-chars-browser): New test.

This is to make work to open the Org link
[[http://some.host.com/search?q="Org mode"]] in a browser.
2013-05-05 18:12:53 +02:00
Grégoire Jadi 168c5584f5 lisp/org.el: Do not inline images when no graphic display is available
* lisp/org.el (org-preview-latex-fragment)
(org-display-inline-images): Detect whether a graphic display is
available before inlining images to prevent an error.

Thanks to Rick Frankel for the report and the solution.

> `org-startup-with-inline-images' is a customizable variable. The
> problem is that if an org file is visited in a non-graphics buffer (or
> batch), `org-display-inline-images' is called an throws an error
> ("Non-X frame used").
>
> This problem also occurs when e.g., `org-babel-after-execute-hook' is
> set to 'org-display-inline-images (which can be mitigated by not
> setting the hook in a non-x frame).
>
> Since the startup variable is a customization, and causes problems if
> not set programatically, IMHO, the best solution would be to wrap the
> `org-display-inline-images' function in a test so that is is a no-op
> on non graphic displays:
2013-05-02 10:08:14 +02:00
Bastien Guerry 188dc72b2d Merge branch 'maint' 2013-04-29 17:24:09 +02:00
Bastien Guerry c18468798f org.el (org-agenda-text-search-extra-files): Fix typos in docstring
* org.el (org-agenda-text-search-extra-files): Fix typos in
docstring.
2013-04-29 17:23:56 +02:00
Nicolas Goaziou cb42a48a30 Speed-up `org-insert-heading'
* lisp/org.el (org-insert-heading): Refactor to use `org-in-item-p'
  only once.
2013-04-26 16:14:29 +02:00
Nicolas Goaziou 74fda6f64d Merge branch 'maint' 2013-04-26 14:29:33 +02:00
Nicolas Goaziou 75c8be1d8b Fix error when filling a table from an affiliated keyword
* lisp/org.el (org-fill-paragraph): Move to table beginning before
  aligning the table when M-q is called from an affiliated keyword.
* testing/lisp/test-org.el: Add test.
2013-04-26 14:27:38 +02:00
Bastien Guerry 9dfccd3f2b Merge branch 'maint' 2013-04-26 08:52:59 +02:00
Bastien Guerry 8d5198d654 org.el (org-insert-heading): Fix case when there the first heading starts at the beginning of the buffer
* org.el (org-insert-heading): Fix case when there the first
heading starts at the beginning of the buffer.

In this case, `org-backward-heading-same-level' will throw an error in
the let form, and the error would fall back on "*" instead of falling
back on the correct number of stars to add.

Thanks to Jisang Yoo and John Hendy who reported this bug.
2013-04-26 08:52:43 +02:00
Bastien Guerry 38051ce481 Merge branch 'maint' 2013-04-24 16:22:21 +02:00
Bastien Guerry 0e4a4c452e org.el: Delete trailing whitespaces 2013-04-24 16:22:13 +02:00
Viktor Rosenfeld 19e1022e26 org.el: Filter agenda by persistent tags
* org.el (org-agenda-prepare-buffers): Add tags defined in
org-tag-persistent-alist to org-tag-alist-for-agenda.

This makes tag hotkeys defined in `org-tag-persistent-alist' appear when
the user invokes `org-agenda-filter-by-tag-refine'.

TINYCHANGE
2013-04-24 16:21:30 +02:00
Bastien Guerry fb6170ec9c Merge branch 'maint' 2013-04-24 15:43:47 +02:00
Bastien Guerry 778c812535 org.el (org-agenda-prepare-buffers): Avoid duplicates in `org-tag-alist-for-agenda' correctly
* org.el (org-agenda-prepare-buffers): Avoid duplicates in
`org-tag-alist-for-agenda' correctly.

Thanks to Viktor Rosenfeld for debugging this.
2013-04-24 15:43:33 +02:00
Bastien Guerry e87dc9df1a Merge branch 'maint' 2013-04-24 11:36:47 +02:00
Bastien Guerry 253b65c091 org.el (org-read-date-minibuffer-local-map): Check if we are at the beginning of the prompt, not if we are after a whitespace
* org.el (org-read-date-minibuffer-local-map): Check if we are
at the beginning of the prompt, not if we are after a whitespace.
Bind C-. to `calendar-goto-today'.
2013-04-24 11:36:22 +02:00
Bastien Guerry 8c1f16d475 Merge branch 'maint' 2013-04-24 10:05:48 +02:00
Bastien Guerry 240d645dbb org.el (org-read-date-minibuffer-local-map): Call `calendar-goto-today' only if there is a space before point in the minibuffer prompt
* org.el (org-read-date-minibuffer-local-map): Call
`calendar-goto-today' only if there is a space before point in
the minibuffer prompt.

Thanks to Michael Brand and others who asked for this regression to be fixed.
2013-04-24 10:05:36 +02:00
Bastien Guerry 862b91e8db org.el (org-insert-heading): Fix bug about wrong conversion of lines with :END: or #+end_ into headlines
* org.el (org-insert-heading): Reveal context when called
interactively.  Fix bug about wrong conversion of lines with
:END: or #+end_ into headlines.
(org-in-drawer-p): New function.
(org-meta-return): Use `org-catch-invisible-edits' and the
`org-in-drawer-p' to check whether we are within a drawer.

Thanks to Muchenxuan Tong and John Hendy who reported these errors.
2013-04-24 09:55:15 +02:00
Carsten Dominik 0fff0ba6da Fix insert-heading
* lisp/org.el (org-insert-heading): Fix problem with inserting
  heading.

The commit fixes a bug introduced in bb2022.
2013-04-22 20:46:14 +02:00
Carsten Dominik eab949fc4a Merge branch 'master' of orgmode.org:org-mode 2013-04-22 08:29:01 +02:00
Carsten Dominik bb202235df Fix checkbox creation in numbered lists
* lisp/org.el (org-insert-heading): Check for checkbox at the
  beginning of the item, not just at the beginning of the line.

Without this fix, M-RET in numbered lists would create a checkboxed
item because it was using match data from a previous match.  Now we
make sure we go back to the beginning of the item, so that the match
really tells us if there was a checkbox there.
2013-04-22 07:43:45 +02:00
Bastien Guerry 8a5ac12268 org.el: New maintainer
* doc/orgguide.texi:
* doc/org.texi:
* org.el: New maintainer.
2013-04-21 16:58:01 +02:00
Bastien Guerry 2a192ff6c1 org.el (org-clone-subtree-with-time-shift): Update behavior
* org.el (org-clone-subtree-with-time-shift): Unconditionally
ask for a time shift if there is a time-stamp.  Don't ask for
a time shift when called with a universal prefix argument.

Thanks to Ingmar Meissner for raising this issue again.
2013-04-20 08:51:37 +02:00
Bastien Guerry 1e3cb91ccb org.el (org-store-link): Don't add a search string when storing a link from a radio target
* org.el (org-store-link): Don't add a search string when
storing a link from a radio target.
(org-open-at-point): Jump to the radio link (<<<radio>>>), not
to the simple target (<<target>>).
2013-04-18 17:27:17 +02:00
Nicolas Goaziou 99f8821995 ox-latex: Use \text command for subscript and superscript
* lisp/ox-latex.el (org-latex--script-size): Use \text command for
  subscript and superscript.  This is far superior to \mathrm, but it
  requires "amstext" package.  In particular, accented characters are
  now allowed within sub/superscript.
* lisp/org.el (org-latex-default-packages-alist): Add "amstext"
  package.
2013-04-17 20:59:41 +02:00
Bastien Guerry d68744f401 org.el (org-insert-heading): Fix insertion of items
* org.el (org-insert-heading): Fix insertion of items.
2013-04-17 10:10:34 +02:00
Bastien Guerry 4f89c37cea org.el (org-store-link): When a bracket link is found in a headline, use the link description or the link path
* org.el (org-store-link): When a bracket link is found in a
headline, use the link description or the link path.
2013-04-16 16:05:55 +02:00
Bastien Guerry 7c2b7b9eef org.el: Use `user-error' instead of `error'
* org.el (org-flag-drawer, org-hide-block-toggle)
(org-goto-left, org-goto-right, org-promote)
(org-paste-subtree, org-narrow-to-block, org-sort-entries)
(org-insert-link, org-offer-links-in-entry, org-open-file)
(org-refile, org-refile-get-location)
(org-refile-check-position, org-prepare-dblock, org-todo)
(org-auto-repeat-maybe, org-show-todo-tree, org-sparse-tree)
(org-occur, org-priority, org-scan-tags)
(org-get-tags-string, org-property-action, org-set-effort)
(org-entry-put, org-insert-drawer)
(org-compute-property-at-point)
(org-property-next-allowed-value, org-evaluate-time-range)
(org-closest-date, org-timestamp-change)
(org-revert-all-org-buffers, org-cycle-agenda-files)
(org-agenda-file-to-front, org-remove-file)
(org-preview-latex-fragment, org-format-latex)
(org-create-math-formula, org-create-formula-image)
(org-speed-command-help, org-check-before-invisible-edit)
(org-modifier-cursor-error, org-hidden-tree-error)
(org-mark-subtree, org-kill-line, org-first-sibling-p)
(org-up-element, org-down-element)
(org-drag-element-backward, org-drag-element-forward)
(org-unindent-buffer, org-speedbar-set-agenda-restriction):
Use `user-error' instead of `error'.
2013-04-16 12:02:35 +02:00
Bastien Guerry 8546ef131d org.el (org-link-expand-abbrev): Save match data before before calling the replacement function
* org.el (org-link-expand-abbrev): Save match data before
before calling the replacement function.
2013-04-16 09:15:45 +02:00
Carsten Dominik cb658482c3 Fix typo in docstring of `org-small-year-to-year'
* lisp/org.el (org-small-year-to-year): Fix typo in docstring
2013-04-16 05:59:27 +02:00
Bastien Guerry 5e3964d5b4 org.el (org-shifttab): Show the correct number of empty headlines
* org.el (org-shifttab): Show the correct number of empty
headlines when called with a numeric prefix argument.  Enhance
docstring.

Thanks to Michael Crouch for reporting this bug and providing the fix.
2013-04-15 18:32:30 +02:00
Bastien Guerry ab8689d261 org.el: Tiny cosmetic change. 2013-04-15 10:44:53 +02:00
Bastien Guerry ef4bbe5608 org.el (org-uniquify): Use `copy-sequence'
* org.el (org-uniquify): Use `copy-sequence'.

Thanks to Thomas Dye for reporting this.
2013-04-15 01:11:03 +02:00
Florian Beck f9555eef69 Unescape :help-echo for links
* lisp/org.el (org-activate-bracket-links): Remove escapes
from the help string.

TINYCHANGE
2013-04-14 12:20:02 +02:00
Bastien Guerry 0ffeb8709e org.el (org-adaptive-fill-function, org-fill-paragraph): Throw a useful error message
* org.el (org-adaptive-fill-function, org-fill-paragraph):
Throw a useful error message when parse an element fails in
the current buffer.

This can happen for example in a `message-mode' buffer when using
orgstruct-mode.  If you insert a line like:

SCHEDULED: <2013-04-13 Sat> is blablabla

then org-element-at-point will fail and the user will get an error
he cannot understand.
2013-04-14 11:46:45 +02:00
Bastien Guerry d06ecf54f5 org.el (org-closed-keep-when-no-todo): New option
* org.el (org-closed-keep-when-no-todo): New option.
(org-todo): Use the new option.

Thanks to Brian van den Broek for asking for this.
2013-04-14 11:46:44 +02:00
Bastien Guerry 2fd5120364 org.el (org-open-line): Rename from `org-ctrl-o'
* org.el (org-open-line): Rename from `org-ctrl-o'.
(org-mode-map): Use `remap'.

Thanks to Sean O'Halpin for pointing this.
2013-04-14 11:46:44 +02:00
Bastien Guerry c6f8cb1518 org.el: Minor code clean-up: fix dangling parentheses
* org.el (org-cycle-emulate-tab, org-file-apps)
(org-set-font-lock-defaults)
(org-translate-link-from-planner, org-link-search)
(org-refile-get-targets, org-read-date-get-relative): Minor
code clean-up: fix dangling parentheses.
2013-04-13 15:54:38 +02:00
Bastien Guerry 9c141cfd8c org.el (org-uniquify-alist): Improve docstring
* org.el (org-uniquify-alist): Improve docstring.
2013-04-13 10:02:29 +02:00
Sacha Chua e82fb4402c Change relative weekday specifications (ex: fri or -tue) to exclude today
* lisp/org.el (org-read-date-get-relative): Handle positive and
negative weekday specifications so that they don't return today.
If today is Friday, "fri" should mean next Friday. This changes
the previous behavior, which required you to specify "+2fri" in
order to mean next Friday if today was Friday. If you want to
schedule something for today, you can use ".".

* doc/org.texi (The date/time prompt): Update the documentation
to reflect the new way `org-read-date-get-relative' handles
weekdays.

TINYCHANGE
2013-04-13 02:09:45 +02:00
Bastien Guerry afaaff4439 org.el (org-tags-expand): Prevent circular replacement of group tags
* org.el (org-make-tags-matcher, org-change-tag-in-region):
Add buffer's tags to the tags completion table.
(org-tags-expand): Prevent circular replacement of group tags.
Tiny docstring formatting.
(org-uniquify): Make a defsubst.  Use `delete-dups' instead of
`add-to-list'.

Thanks to Christian Moe for reporting the bug about group tags.
2013-04-12 19:19:46 +02:00
Bastien Guerry 02ddc594f2 org.el (org-todo): Also remove the CLOSED planning information when removing the TODO keyword
* org.el (org-todo): Also remove the CLOSED planning
information when removing the TODO keyword.

Thanks to Samuel Wales for reporting this.
2013-04-12 17:54:43 +02:00
Bastien Guerry 9a1511de6b org.el (org-forward-heading-same-level): Fix bug
* org.el (org-forward-heading-same-level): Fix bug when
forwarding to a hidden subtree of the same level.

Thanks to Bernt Hansen for reporting this bug.
2013-04-12 17:52:24 +02:00
Bastien Guerry bccda67ce4 org.el (org-tags-expand): Use word delimiters when building the tag search regexp
* org.el (org-tags-expand): Use word delimiters when building
the tag search regexp.

Thanks to Christian Moe for reporting this bug.
2013-04-12 10:45:31 +02:00
Bastien Guerry dc577b253b org.el (org-emphasis-regexp-components): Make a defvar
* org.el (org-emphasis-regexp-components): Make a defvar.

This used to be a defcustom (Org <8.0) but allowing the users to
set this option proved cumbersome.  See this message/thread:
http://article.gmane.org/gmane.emacs.orgmode/68681
2013-04-12 08:05:28 +02:00
Bastien Guerry 9c42cd37dc org.el (org-emphasis-alist): New default value: don't set HTML tags
* org.el (org-emphasis-alist): New default value: don't set
HTML tags.
(org-emphasize, org-set-emph-re): Use the new value of
`org-emphasis-alist'.
2013-04-11 19:06:31 +02:00
Bastien Guerry 52016d651f org.el (org-insert-heading): When called from a list item and `org-insert-heading-respect-content' is non-nil, insert a heading
* org.el (org-insert-heading): When called from a list item
and `org-insert-heading-respect-content' is non-nil, insert a
heading, not an item.
2013-04-11 00:50:18 +02:00
Bastien Guerry 3fe47611c9 Merge branch 'master' of orgmode.org:org-mode 2013-04-11 00:35:39 +02:00
Bastien Guerry 3449c6d001 org.el (org-insert-heading): Convert the current line into a headline
* org.el (org-insert-heading-respect-content): Fix docstring.
(org-insert-heading): When in a non-empty non-headline line,
convert the current line into a headline.

Thanks to Bernt Hansen for reporting this issue.
2013-04-11 00:35:31 +02:00
Nicolas Goaziou d6e1dd8ec5 Remove two unused functions
* lisp/org.el (org-extract-attributes-from-string,
  org-attributes-to-string): Remove functions.
2013-04-10 21:42:04 +02:00
Bastien Guerry 08a47b0959 org.el (org-store-log-note): Fix `buffer-undo-list' when called after `org-agenda-todo'
* org.el (org-store-log-note): Fix `buffer-undo-list' when
called after `org-agenda-todo'.

Thanks to Wanrong Lin for reporting this obscure bug.
2013-04-10 14:32:24 +02:00
Bastien Guerry e2843e5fd7 org.el (org-add-log-note): Minor formatting fix
* org.el (org-add-log-note): Minor formatting fix.
2013-04-10 12:42:54 +02:00
Bastien Guerry 872e3736d7 org.el (org-minutes-to-clocksum-string): Round fractions of minutes
* org.el (org-minutes-to-clocksum-string): Round fractions of
minutes.

When adding efforts values in the column view, "0:20" will first be
converted as 0.333333333 hour.  When converting the final sum, we
now round the final sum of minutes (e.g. 99.999999999) to get the
correct hour displa (i.e. 1:40 instead of 1:39).
2013-04-09 16:15:17 +02:00
Bastien Guerry 728c69df18 Revert "org.el (org-file-contents): Make the message more prominent"
This reverts commit 591d377e78.
2013-04-08 22:05:03 +02:00
Bastien Guerry 591d377e78 org.el (org-file-contents): Make the message more prominent
* org.el (org-file-contents): Make the message more prominent.
2013-04-06 22:31:13 +02:00
Carsten Dominik d1c940fe5c org.el (org-show-siblings): By default, also show siblings from a bookmark jump
* org.el (org-show-siblings): By default, also show siblings
from a bookmark jump.
2013-04-06 03:02:31 +02:00
Bastien Guerry 428f12841f org.el (org-get-todo-state): Add a docstring
* org.el (org-get-todo-state): Add a docstring.
2013-04-05 19:46:02 +02:00
Bastien Guerry 45d6d8f8a2 org.el: Let `C-o' insert a new row in tables and open a line elsewhere
* org.el (org-ctrl-o): New command to insert a new row in
tables (like `M-S-<down>' does) and open a line elsewhere.
(org-mode-map): Bind the new command to `C-o'.
2013-04-05 11:14:20 +02:00
Bastien Guerry d307657b9d org.el (org-set-regexps-and-options): Process tags from an external setup file
* org.el (org-set-regexps-and-options): Process tags from an
external setup file.

Thanks to Marcel van der Boom for reporting this bug.
2013-04-05 09:19:02 +02:00
Bastien Guerry c0589aa63a Merge branch 'master' of orgmode.org:org-mode 2013-04-05 08:38:07 +02:00
Bastien Guerry 3ad43055bf org.el (org-ctrl-c-ctrl-c): Fix bug wrt updating checkboxes
* org.el (org-ctrl-c-ctrl-c): Fix bug wrt updating checkboxes:
the list beginning should be stored using a marker so that
updating [%0] to [%50] will not throw an error.
2013-04-05 08:37:51 +02:00
Ippei FURUHASHI 6693456dd7 org-table.el (org-calc-current-TBLFM): Add function
* org-table.el (org-calc-current-TBLFM): New function to
re-calculate the table by applying the #+TBLFM in the line
where the point is.

* org.el (org-ctrl-c-ctrl-c): Call `org-calc-current-TBLFM' when
point is in the #+TBLFM line.

* testing/lisp/test-org-table.el: Add test.
2013-04-05 08:37:51 +02:00
Ippei FURUHASHI a268e33ef0 org.el (org-at-TBLFM-p): Add functon
* org.el (org-at-TBLFM-p): New defun.
(org-TBLFM-regexp): New defconst.

* testing/lisp/test-org-table.el: Add test.
2013-04-05 08:37:51 +02:00
Bastien Guerry 92af40344e Include org-w3m.el back into core.
w3m is the de facto way of browsing the web in GNU Emacs
so org-w3m.el should be kept in core.  The same argument
prevails for org-bbdb.el.
2013-04-05 08:37:51 +02:00
Bastien Guerry d5fd2008e3 org.el (org-babel-load-file): Move `org-babel-load-file' here
* org.el (org-babel-load-file): Move `org-babel-load-file'
from ob-tangle.el to here so that it is correctly autoloaded
by Emacs before Org is required.

Thanks to Eric Schulte for feedback about this.
2013-04-05 08:37:51 +02:00
Bastien Guerry b38036dd66 Move org-mac-message.el to contrib/.
* org-mac-message.el: Move to contrib/.

* org.el (org-modules): org-mac-message.el is now a
contributed package.
2013-04-05 08:37:51 +02:00
Nicolas Goaziou 479c21336f Remove special behaviour for TARGET keyword
* lisp/org.el (org-store-link, org-link-search, org-options-keywords):
  Remove reference to TARGET keyword.
* lisp/ox.el (org-export-resolve-fuzzy-link, org-export-get-ordinal):
  Do not use TARGET as a destination for links anymore.
* testing/lisp/test-ox.el: Update tests.
* testing/lisp/test-org.el: Update tests.

Its specifications were not useful enough to keep maintaining this
feature.
2013-04-04 20:38:27 +02:00
Nicolas Goaziou 3d65b46c0c ox-org: Add interactive functions to back-end
* lisp/ox-org.el (org): Add a menu entry for the back-end.
(org-org-export-as-org, org-org-export-to-org): New functions.
* lisp/org.el (org-export-backends): Accept `org' as a loadable
  back-end.
2013-04-04 15:09:22 +02:00
Aaron Ecay 8cda3ca605 Use prefix arg in org-edit-special
* org.el (org-edit-special): Use prefix arg.

This change only makes a difference when editing source blocks.
2013-04-03 19:02:17 +02:00
Bastien Guerry b5f4bd12cb org.el (org-speed-commands-default): Use ?s for `org-narrow-to-subtree'
* org.el (org-speed-commands-default): Use ?s for
`org-narrow-to-subtree'.
2013-04-03 18:28:30 +02:00
Bastien Guerry 30064825b3 org.el (org-indent-line): Enhance indentation after a list item
* org.el (org-indent-line): A line just below a line with a
list item is now indented depending on the indentation of this
list item.
2013-04-03 18:28:29 +02:00
Bastien Guerry 9d72d34bda org.el (org-options-keywords): Add #+TARGET
* org.el (org-options-keywords): Add #+TARGET.
2013-04-03 18:28:29 +02:00
Bastien Guerry b70ec7a29c org.el (org-cycle-internal-local): Fix invalid search bound
* org.el (org-cycle-internal-local): Fix invalid search bound
when `org-cycle-include-plain-lists' is set to 'integrate.

Thanks to James Harkins for reporting this.
2013-04-03 12:43:42 +02:00
Bastien Guerry 6caddbca05 org.el (org-sparse-tree-default-date-type): Add an option for closed time-stamps
* org.el (org-sparse-tree-default-date-type): Add an option
for closed time-stamps.
(org-sparse-tree): Allow to check against closed time-stamps.
(org-re-timestamp): Handle closed time-stamps.
(org-closed-in-range): Delete.
2013-03-30 20:06:32 +01:00
Bastien Guerry b802df337a org.el (org-raise-scripts): Handle scripts like "a_b^c"
* org.el (org-toggle-pretty-entities): Enhance messages.
(org-raise-scripts): Handle scripts like "a_b^c".

Thanks to Jae Hee Lee for reporting this.
2013-03-30 15:55:57 +01:00
Christopher Schmidt 310e76b744 org.el (orgstruct-make-binding): Keep modifiers when translating keys
* org.el (orgstruct-make-binding): Keep modifiers when
translating keys.
2013-03-29 20:35:54 +01:00
Bastien Guerry 575c9f16c3 org.el (org-agenda-prepare-buffers): Fix bugs
* org.el (org-agenda-prepare-buffers): Fix bugs: don't
let-bind `org-tag-alist' to nil and don't append duplicate
tags to `org-tag-alist-for-agenda'.

Thanks to Toby Cubitt for reporting this.
2013-03-28 22:28:15 +01:00
Nicolas Goaziou 7f9893887e Preserve priority of #+TARGET over #+NAME when resolving a link
* lisp/org.el (org-link-search): Preserve priority of #+TARGET over
  #+NAME when resolving a link.  This reverts partially commit
  49b14b0224.
2013-03-27 23:14:56 +01:00
Bastien Guerry caabb0c3be org.el (org-store-link): Storing multiple links in the active region now requires a triple prefix argument
* org.el (org-store-link): Storing multiple links in the
active region now requires a triple prefix argument.

Thanks to Matt Lundin for reporting bugs in this area.
2013-03-26 13:50:07 +01:00
Bastien Guerry 49b14b0224 org.el (org-store-link, org-link-search): Fix handling of links to #+NAME and #+TARGET keywords
* org.el (org-store-link, org-link-search): Fix handling of
links to #+NAME and #+TARGET keywords.
2013-03-26 13:23:45 +01:00
Bastien Guerry e7cfb4d13c org.el (org-mode-flyspell-verify): Require 'org-element so that `org-element-affiliated-keywords' is defined
* org.el (org-mode-flyspell-verify): Require 'org-element so
that `org-element-affiliated-keywords' is defined.

Thanks to Matt Lundin for reporting this.
2013-03-25 17:01:18 +01:00
Bastien Guerry dd3fbd246e Fix commit a9880a
* org.el (org-toggle-tags-groups): Correctly highlight group
tags.
(org-tags-expand): Expand tags as words, with characters ?@
and ?_ being considered words constituents.
2013-03-25 15:53:21 +01:00
Bastien Guerry d26431cea4 org.el (org-set-regexps-and-options): Don't read setup files from read-only buffers
* org.el (org-set-regexps-and-options): Don't read setup files
from read-only buffers.
(org-file-contents): When no-error is non-nil, throw a less
intrusive message.

This commit prevents Gnus to try reading arbitrary files on your machine
when opening a message with #+SETUPFILE keyword.

In general, it prevents reading a setup file from any read-only buffer.

Thanks to Eric Abrahamsen and Andreas Leha for reporting this.
2013-03-25 06:45:33 +01:00
Bastien Guerry 0f175ea128 org.el (org-refile-cache-check-set): More informative message
* org.el (org-refile-cache-check-set): More informative message.

Thanks to Samuel Wales for raising this.
2013-03-25 05:47:45 +01:00
Bastien Guerry a9880a7710 Implement group tags
* org-agenda.el (org-tags-view): Set the matcher after
preparing the agenda, as `org-tag-groups-alist-for-agenda'
might be needed.
(org-agenda-filter-make-matcher): New parameter `filter' and
`type'.  Handle group tags.
(org-agenda-filter-expand-tags): New function.
(org-agenda-filter-apply): Handle group tags.

* org.el (org-blank-before-new-entry): Tiny docstring fix.
(org-tag-alist-for-agenda): Add docstring.
(org-tag-groups-alist-for-agenda): New global variable.
(org-tag-groups-alist): New buffer-local variable.
(org-tag-alist, org-tag-persistent-alist): Handle :grouptags.
(org-group-tags): New option.
(org-toggle-group-tags): New command.
(org-mode-map): Bind `org-toggle-group-tags' to `C-c C-x q'.
(org-set-regexps-and-options-for-tags): New function, factored
out from `org-set-regexps-and-options'.
(org-set-regexps-and-options): Don't handle tags, they are now
handled separately by `org-set-regexps-and-options-for-tags'.
(org-assign-fast-keys): Handle :grouptags.
(org-mode): Use `org-set-regexps-and-options-for-tags' on top
of `org-set-regexps-and-options'.
(org-fontify-meta-lines-and-blocks-1): Fontify group tags.
(org-make-tags-matcher): Expand group tags in the matcher.
(org-tags-expand): New function.
(org-tags-completion-function): Tiny code clean up.
(org-set-current-tags-overlay): Add a docstring.
(org-fast-tag-selection): Highlight group tags.
(org-agenda-prepare-buffers): Set `org-tag-alist-for-agenda'
and `org-tag-groups-alist-for-agenda'.  Don't uniquify
`org-tag-alist-for-agenda' as we may need the grouping
information for filtering in the agenda buffer.
(org-uniquify-alist): New function.

* org-pcomplete.el (pcomplete/org-mode/file-option/tags):
Handle :grouptags.

* org-faces.el (mode-line): New face for group tags.
2013-03-25 05:42:35 +01:00
Bastien Guerry 412d980f28 org.el (org-display-inline-images): Use the #+attr_html: :width syntax
* org.el (org-image-actual-width): Update docstring.
(org-display-inline-images): Use the #+attr_html: :width syntax.
2013-03-21 16:02:19 +01:00
Bastien Guerry d738f047ef org.el (org-modules): Remove deleted libraries, add new ones
* org.el (org-modules): Remove deleted libraries, add new
ones.
2013-03-21 15:53:24 +01:00
Bastien Guerry 1ab084ba73 org.el (org-entry-add-to-multivalued-property): Add the new value by appending it at the end of the line
* org.el (org-entry-add-to-multivalued-property): Add the new
value by appending it at the end of the line.

Thanks to Thorsten Jolitz for a preliminary patch for this.
2013-03-19 19:39:35 +01:00
Bastien Guerry d8969931a9 org-table.el: Fix setting of constants.
* org.el (org-set-regexps-and-options): Use
`org-table-set-constants'.

* org-table.el (org-table-set-constants): New function.
(orgtbl-ctrl-c-ctrl-c): Use it.

Thanks to Oliver Večerník for reporting problems here.
2013-03-19 19:39:34 +01:00
Bastien Guerry 6b2693393b org.el (org-options-keywords): Remove "INFOJS_OPT": it is added through ox-html.el now
* org.el (org-options-keywords): Remove "INFOJS_OPT": it is
added through ox-html.el now.
2013-03-19 19:39:34 +01:00
Bastien Guerry ecb9e5811d org.el (org-store-link): Store each line of the active as a separate link
* org.el (org-store-link): When there is an active region,
store each line as a separate link.
(org-insert-all-links): Use a default description when links
do not have one already.

* org-agenda.el (org-agenda-redo): Fix typo in code.
2013-03-19 19:39:12 +01:00
Bastien Guerry 00e8ef22f2 org.el (org-link-display-format): Fix docstring
* org.el (org-link-display-format): Fix docstring.
2013-03-19 19:39:12 +01:00
Bastien Guerry e89c5f2164 org.el: Remove outdated FIXME 2013-03-19 19:39:11 +01:00
Bastien Guerry e996307556 org.el (org-set-font-lock-defaults): Set font-lock keywords correctly for plain links
* org.el (org-set-font-lock-defaults): Set font-lock keywords
correctly for plain links.
2013-03-19 10:58:12 +01:00
Nicolas Goaziou fffc2b980c Fix commenting lines beginning with a link
* lisp/org.el (org-comment-or-uncomment-region): Fix commenting lines
  beginning with a link.
2013-03-17 20:22:47 +01:00
Nicolas Goaziou 6a85a85e99 org-table: Fix "Invalid use of `\\' in replacement text"
* lisp/org.el (org-delete-char): Fix "Invalid use of `\\' in
  replacement text" when deleting a character in a cell which contains
  "\"
2013-03-17 18:21:45 +01:00
Christopher Schmidt ac2415ae38 org.el: Make the hijacker commands of orgstruct-mode try both general and specialised (function) key bindings
* org.el (orgstruct-make-binding): Make the hijacker commands
try both general and specialized (function) key bindings.
2013-03-15 22:16:47 +01:00
Nicolas Goaziou b56a648e9c Fix `org-export-backends' value
* lisp/org.el (org-export-backends): Remove duplicates.  Reorder
  alphabetically.
2013-03-15 21:00:39 +01:00
Christopher Schmidt 404cf23fa9 org.el: Use most general key bindings in orgstruct-mode
* org.el (orgstruct-setup): Generalize key bindings.
2013-03-15 19:50:04 +01:00
Christopher Schmidt ce6c048305 org.el: Emulate outline's buffer-invisiblity-spec in orgstruct-mode
* org.el (orgstruct-mode): Emulate outline's
buffer-invisiblity-spec.
2013-03-15 19:49:49 +01:00
Bastien Guerry 437c626b04 org.el (org-export-backends): Add new backends
* org.el (org-export-backends): Add new backends.
2013-03-15 16:53:35 +01:00
Bastien Guerry 791ebc6e7b Add macros fontifications
* org.el (org-set-font-lock-defaults): Fontify macros.

* org-faces.el (org-macro): New face.
2013-03-15 13:23:24 +01:00
Bastien Guerry ad95f19be1 org.el (org-clone-subtree-with-time-shift): Don't prompt for a time shift by default
* org.el (org-clone-subtree-with-time-shift): Only prompt for
a time shift when the entry at point has a time stamp and when
the command is called with a universal prefix argument.
2013-03-15 13:13:14 +01:00
Bastien Guerry 72bb08f0b8 org.el (org-execute-file-search-functions): Docstring fix
* org.el (org-execute-file-search-functions): Docstring fix.
2013-03-15 13:01:29 +01:00
Bastien Guerry 3ec38f5c06 org.el (org-map-entries): Use `save-window-excursion'
* org.el (org-map-entries): Use `save-window-excursion'.
2013-03-14 14:40:00 +01:00
Bastien Guerry e0e699ab3d org-compat.el: New compatibility function `org-defvaralias'
* org-compat.el (org-defvaralias): Newcompatibility function.
* org.el:
* org-agenda.el:
* org-list.el:
* org-gnus.el:
* org-clock.el: Use it.
2013-03-14 13:53:52 +01:00
Bastien Guerry df31fe6bdd org-agenda.el: New agenda entry types :scheduled* and :deadline*
* org.el (org-deadline-time-hour-regexp)
(org-scheduled-time-hour-regexp): New buffer local variables.
(org-set-regexps-and-options): Set the new variables.

* org-agenda.el (org-agenda-custom-commands-local-options):
Add :deadline* and :scheduled* to the list of possible agenda
entry types.
(org-agenda): Implement a new agenda type agenda* with :scheduled*
and :deadline* replacing :scheduled and :deadline respectively in
agenda entry types.  In such agenda, only scheduled and deadline
items with a time specification [h]h:mm will be considered.
(org-agenda-entry-types): Document the new agenda entry types
:scheduled* and :deadline*.
(org-agenda-list): New parameter `with-hour'.  Use :scheduled* and
:deadline*.
(org-agenda-get-day-entries): Handle :scheduled* and :deadline*.
(org-agenda-get-deadlines, org-agenda-get-scheduled): New
parameter `with-hour'.  Use `org-deadline-time-hour-regexp' or
`org-scheduled-time-hour-regexp' as the search string if needed.
(org-agenda-to-appt): Use :scheduled* and :deadline* by default,
as other scheduled and deadline items don't have a time spec and
cannot be turned into appointments.  Trim bracket links and use
only the description as the appointment text.
(org-agenda-get-restriction-and-command): Add
default description for the agenda* view.
(org-agenda-run-series): Handle agenda* views.
2013-03-13 19:52:25 +01:00
Bastien Guerry bc7dbcab9f org.el (org-insert-heading): DTRT when in a narrowed region
* org.el (org-insert-heading): DTRT when in a narrowed region.

* org-compat.el (org-buffer-narrowed-p): New compatibility
function.

Thanks to Samuel Wales for reporting this problem.
2013-03-13 10:57:49 +01:00
Bastien Guerry 5f38a32664 org.el (org-time-string-to-absolute): Tiny docstring fix
* org.el (org-time-string-to-absolute): Tiny docstring fix.
2013-03-12 17:31:17 +01:00
Christopher Schmidt 03b1edf3c1 org.el: Disable {pro,de}motion commands in orgstruct-mode if orgstruct-heading-prefix-regexp is non-nil
* org.el (orgstruct-heading-prefix-regexp): Change default
value to nil.
(orgstruct-error): Use user-error if available.
(orgstruct-setup): Disable bindings of {pro,de}motion commands
if orgstruct-heading-prefix-regexp is non-nil.  Always use
org-outline-level.
(orgstruct-make-binding): New argument
DISABLE-WHEN-HEADING-PREFIX.
2013-03-10 14:41:04 +01:00
Bastien Guerry 855ee9a0f3 Make `org-toggle-item' and `org-toggle-heading' behave more alike
* org.el (org-toggle-item): Convert all normal lines as items when
there is a region, and only convert the first line when called
with a universal prefix argument.  This is consistent with the
behavior of `org-toggle-heading'.
(org-toggle-heading): When the region contains only normal lines,
a universal prefix arg will only convert the first line.  This is
more consistent with `org-toggle-item'.
2013-03-07 12:06:46 +01:00
Bastien Guerry 3a11c24b99 org.el (orgstruct-setup): Add `org-ctrl-c-minus' and `org-ctrl-c-star'
* org.el (orgstruct-setup): Add `org-ctrl-c-minus' and
`org-ctrl-c-star'.
2013-03-07 11:26:02 +01:00
Nicolas Goaziou ee9372653f ox-latex: Introduce LATEX_HEADER_EXTRA keyword
* lisp/ox-latex.el (latex): Introduce new buffer keyword.
(org-latex-template): Use new keyword.
* lisp/ox-beamer.el (org-beamer-template): Use new keyword.
* lisp/org.el (org-create-formula--latex-header): Use new keyword.
* contrib/lisp/ox-koma-letter.el (org-koma-letter-template): Use new
  keyword.

Previewing of LaTeX snippets takes account of LATEX_HEADER keywords.
LATEX_HEADER_EXTRA keyword allows to specify some header lines that
will not be used for building snippets.
2013-03-07 09:02:29 +01:00
Bastien Guerry 2ad8369015 org.el: Update `customize-package-emacs-version-alist' and fix :version/:package-version keywords
* org.el (customize-package-emacs-version-alist): Update
`customize-package-emacs-version-alist'.

* ox-texinfo.el (org-export-texinfo)
(org-texinfo-filename, org-texinfo-classes)
(org-texinfo-format-headline-function)
(org-texinfo-node-description-column)
(org-texinfo-active-timestamp-format)
(org-texinfo-link-with-unknown-path-format)
(org-texinfo-tables-verbatim)
(org-texinfo-table-scientific-notation)
(org-texinfo-text-markup-alist)
(org-texinfo-format-drawer-function)
(org-texinfo-format-inlinetask-function)
(org-texinfo-info-process):
* ox-odt.el (org-odt-format-drawer-function)
(org-odt-format-headline-function)
(org-odt-format-inlinetask-function):
* ox-md.el (org-export-md, org-md-headline-style): Fix :version
and :package-version keywords.
2013-03-06 17:31:28 +01:00
Bastien Guerry 10c735f18a org.el (org-time-clocksum-use-effort-durations): Use nil as the default
* org.el (org-time-clocksum-use-effort-durations): Don't set to t
by default as it will change many clocktables out there.  Let the
user decides whether she wants to turn this on.
2013-03-06 10:37:50 +01:00
Bastien Guerry c00a43e857 Revert `org-agenda-dim-blocked-tasks' and `org-agenda-inhibit-startup' to their previous default (t and nil)
* org.el (org-agenda-inhibit-startup): Revert to nil as the default.
* org-agenda.el (org-agenda-dim-blocked-tasks): Revert to t as the
default.

The reason for this reversion is that that users expect the agenda to
DTRT by default, and that it's better not to change the previous default
in general.  Also, users who need to speed up their agenda are probably
long time users with big and numerous agenda files, and it's easier for
them to find these variables than it is for newbies to find out why the
agenda does not DTRT.

If users want to speed up their agenda, they can now read advice here:
http://orgmode.org/worg/agenda-optimization.html
2013-03-06 10:35:19 +01:00
Aaron Ecay 8f7b95091e * lisp/org.el (org-set-font-lock-defaults): include link targets
The org-target face is created in org-faces.el, but never used for
font-locking.  This patch fixes that.
2013-03-06 09:03:38 +01:00
Nicolas Goaziou 733697a779 Fix export back-ends status when reloading Org
* lisp/org.el (org-export-backends): Do not reset list of loaded
  back-ends to variable's value after a reload.
2013-03-06 00:27:28 +01:00
Bastien Guerry 8a2e3e2a79 Add :version and :package-version
* ox.el (org-export-snippet-translation-alist)
(org-export-coding-system, org-export-in-background)
(org-export-async-init-file, org-export-invisible-backends)
(org-export-dispatch-use-expert-ui):
* ox-texinfo.el (org-texinfo-filename, org-texinfo-classes)
(org-texinfo-format-headline-function)
(org-texinfo-node-description-column)
(org-texinfo-active-timestamp-format)
(org-texinfo-link-with-unknown-path-format)
(org-texinfo-tables-verbatim)
(org-texinfo-table-scientific-notation)
(org-texinfo-text-markup-alist)
(org-texinfo-format-drawer-function)
(org-texinfo-format-inlinetask-function)
(org-texinfo-info-process):
* ox-man.el (org-man-tables-centered)
(org-man-table-scientific-notation)
(org-man-source-highlight, org-man-source-highlight-langs)
(org-man-pdf-process, org-man-logfiles-extensions):
* ox-html.el (org-html-allow-name-attribute-in-anchors)
(org-html-coding-system, org-html-divs):
* ox-ascii.el (org-ascii-text-width)
(org-ascii-headline-spacing, org-ascii-indented-line-width)
(org-ascii-paragraph-spacing, org-ascii-charset)
(org-ascii-underline, org-ascii-bullets)
(org-ascii-links-to-notes)
(org-ascii-table-keep-all-vertical-lines)
(org-ascii-table-widen-columns)
(org-ascii-table-use-ascii-art)
(org-ascii-format-drawer-function)
(org-ascii-format-inlinetask-function):
* org.el (org-modules, org-export-backends)
(org-highlight-latex-and-related, orgstruct-setup-hook):
* org-attach.el (org-attach-git-annex-cutoff):
* org-archive.el (org-archive-file-header-format):
* org-agenda.el (org-agenda-todo-ignore-time-comparison-use-seconds):
* ob-python.el (org-babel-python-hline-to)
(org-babel-python-None-to):
* ob-ditaa.el (org-ditaa-eps-jar-path):
* ob-core.el (org-babel-results-keyword): Add :version and
:package-version.

* ox-ascii.el: Use utf-8-emacs as the file coding system.
2013-03-05 16:38:33 +01:00
Bastien Guerry 834db79fc5 org.el (org-insert-heading): If the current item has a checkbox, insert the new item with a checkbox
* org.el (org-insert-heading): If the current item has a
checkbox, insert the new item with a checkbox.
2013-03-05 11:17:05 +01:00
Bastien Guerry b472884e5e org.el (org-insert-heading): Don't delete spaces in empty headlines
* org.el (org-insert-heading): Don't delete spaces in empty
headlines.
2013-03-05 08:28:26 +01:00
Bastien Guerry 73e4421140 Cosmetic fix in comment. 2013-03-04 20:11:15 +01:00
Bastien Guerry 21c0289f3c Move org-mew.el, org-vm.el, org-w3m.el, org-wl.el to contrib/.
* org.el (org-modules): Do not include org-mew.el, org-vm.el,
org-w3m.el, org-wl.el as these files are now part of contrib/.

* org-w3m.el:
* org-vm.el:
* org-w3m.el:
* org-wl.el: Move to contrib/.

The purpose behind this change is to prepare a future split between
org-mode.git and org-contrib.git: org-mode.git will contain all files
that are directly relevant to GNU Emacs, while org-contrib.git will
contain files that are more peripheral and/or from authors who cannot
assign their copyright to the FSF.

This is *not* a way do downgrade those files, it is a way to prepare
org-contrib.org so that it gets more attention and more contributors,
thanks to the fact that there is no legal barrier to contribute to it.
2013-03-04 18:28:26 +01:00
Nicolas Goaziou 4857f4c566 Small refactoring
* lisp/org.el (org-fill-paragraph): Small refactoring to
  `org-fill-paragraph'.
2013-03-04 15:58:41 +01:00
Nicolas Goaziou 8b5e59c8c4 Small fix to `org-fill-paragraph'
* lisp/org.el (org-fill-paragraph): Do not look for table cells in
  a paragraph.
2013-03-04 15:56:10 +01:00
Bastien Guerry 5c4c8afe07 Fix bug in `org-schedule' and `org-deadline' introduced in fc8824.
Thanks to Eric Abrahamsen for reporting this.
2013-03-04 12:22:08 +01:00
Bastien Guerry 6ca7953db5 org.el (org-show-context): Don't try to fix ellipsis when showing a subtree in agenda
* org.el (org-show-context): Don't try to fix ellipsis when
showing a subtree in agenda.

Thanks to James Harkins for reporting this.
2013-03-04 07:38:04 +01:00
Bastien Guerry fac8191daf Various fixes related to `org-insert-heading'.
* org.el (org-previous-line-empty-p): New parameter to allow
checking next line.  Add a docstring.
(org-insert-heading): Handle two universal prefix arguments as
advertized in the docstring.  Don't insert new lines when
creating a heading after the first heading in the current
subtree.
(org-insert-heading-respect-content): New optional argument
arg, passed to `org-insert-heading'.

* org.texi (Structure editing): Update documentation for
`org-insert-heading-or-item'.
(Plain lists, Relative timer): Update index entry.

* org-mobile.el (org-mobile-edit): Use correct parameters for
`org-insert-heading-respect-content'.
2013-03-03 13:38:26 +01:00
Bastien Guerry c187bd7cab org.el (org-mode): Remove syntax entries
* org.el (org-mode): Remove syntax entries.
2013-03-03 08:02:53 +01:00
Bastien Guerry 76fa979225 org.el (org-mode): New default value for *-of-defun-function
* org.el (org-mode): Use `org-backward-element' and
`org-forward-element' for `beginning-of-defun-function' and
`end-of-defun-function': this allows using C-M-a and C-M-e
before the first headline.
2013-03-03 07:53:11 +01:00
Nicolas Goaziou cbf2fcf60c Update `org-export-backends'
* lisp/org.el (org-export-backends): Update variable.  `infojs' was
  merged into ox-html and `freemind' was added.
2013-03-02 22:48:09 +01:00
Bastien Guerry fc8824791d org.el (org-deadline, org-schedule): Set the warning/delay relatively to the timestamp
* org.el (org-deadline, org-schedule): When called with two
universal prefix arguments, set the warning time or the delay
relatively to the current timestamp, not to today's date.

Thanks to Sébastien Vauban for reporting this.
2013-03-02 11:24:30 +01:00
Bastien Guerry 94e501cab8 Merge branch 'maint' 2013-03-01 18:58:05 +01:00
Bastien Guerry 7afbf870f2 org.el (org-mode): Set `paragraph-start'
* org.el (org-mode): Set `paragraph-start'.

The value inherited from outline-mode is wrong because
outline mode does not enforce the space after the star
while Org-mode does.

outline-mode value for `paragraph-start' prevents filling
paragraphs containing a string like " -- *bold*": in this
case, fill-paragraph might think that the "*b" part of the
string starts a paragraph while it does not.

Thanks to Samuel Wales for reporting this.
2013-03-01 18:57:55 +01:00
Bastien Guerry f9d041f9bf Revert "org.el (org-speed-command-activate): Don't activate speed commands within blocks"
This reverts commit 7c8e854d9c.
2013-02-28 09:35:14 +01:00
Bastien Guerry 96aa12eebc Revert "org.el (org-speed-command-activate): Only forbid in src code blocks"
This reverts commit 8ac66556bb.
2013-02-28 09:35:04 +01:00
Bastien Guerry 8ac66556bb org.el (org-speed-command-activate): Only forbid in src code blocks
* org.el (org-speed-command-activate): Only forbid in src code
blocks.
2013-02-27 23:43:25 +01:00
Bastien Guerry a002158b9f Merge branch 'maint' 2013-02-27 18:14:16 +01:00
Nicolas Richard 8e22aafe9a Fix b6b509b one more time. 2013-02-27 18:13:48 +01:00
Bastien Guerry 6cc600d074 Merge branch 'maint' 2013-02-27 17:28:38 +01:00
Bastien Guerry 01748861d4 Fix b6b509b again.
Thanks to Nicolas Richard for reporting this.
2013-02-27 17:28:33 +01:00
Bastien Guerry 692f053d80 Merge branch 'maint' 2013-02-27 14:49:46 +01:00
Bastien Guerry c8c26c8e19 Enhance the fix implemented in 41882a99
* org.el (org-mode): Add `org-fix-ellipsis-at-bol' to
`isearch-mode-end-hook' so that any isearch fixes the problem with
ellipsis on the first line.
(org-fix-ellipsis-at-bol): New defsubst.
(org-show-context, org-isearch-end): Use it.
2013-02-27 14:49:30 +01:00
Bastien Guerry 936f13c629 Merge branch 'master' of orgmode.org:org-mode 2013-02-27 13:27:56 +01:00
Nicolas Goaziou 8506223b27 Fix function declaration 2013-02-27 10:36:07 +01:00
Bastien Guerry 7c8e854d9c org.el (org-speed-command-activate): Don't activate speed commands within blocks
* org.el (org-speed-command-activate): Don't activate speed
commands within blocks.

Thanks to Sébastien Vauban for reporting this.
2013-02-27 10:22:20 +01:00
Nicolas Goaziou c086ea0832 Fix infloop when user provides a wrong value for `org-highlight-latex-and-related'
* lisp/org.el (org-do-latex-and-related): Fix infloop when user
  provides a wrong value for `org-highlight-latex-and-related'. In
  this case, `org-latex-and-related-regexp' is the empty string and
  generates an infloop since matching it doesn't move point.
2013-02-27 10:00:40 +01:00
Nicolas Goaziou bb45dd1074 Fix function declaration 2013-02-26 23:47:07 +01:00
Nicolas Goaziou 677433d9b4 ox: Fix bug where properties read from setupfile overwrite previous properties
* lisp/ox.el (org-export--get-inbuffer-options): Remove an optional
  argument.  Rewrite function.  Properties read from a setupfile do
  not overwrite anymore previously computed properties.
(org-export-get-environment): Apply changes to previous function.
* lisp/org.el (org-create-formula--latex-header): Apply arity change
  from `org-export--get-inbuffer-options'.
* testing/lisp/test-ox.el: Add test.
* testing/examples/setupfile.org: New file.
2013-02-26 23:35:36 +01:00
Bastien Guerry 78c4199310 Merge branch 'maint'
Conflicts:
	lisp/org.el
2013-02-26 22:45:41 +01:00
Bastien Guerry 41882a99d3 Fix a longstanding issue with ellispsis on top of the window
* org.el (org-show-context): Remove useless catch.  Make sure the
top of the window is a visible headline.
* org.el (org-activate-plain-links): Remove unused catch.

* org-macs.el (org-get-alist-option): Return nil, not (nil), so
that `org-show-context' DTRT.

Thanks to Samuel Wales for his patience in reporting this.
2013-02-26 22:45:04 +01:00
Bastien Guerry ebe0fbd6a8 Merge branch 'maint' 2013-02-26 22:02:25 +01:00
Bastien Guerry 2b13d090d1 org.el (org-imenu-get-tree): Fix bug when matching against empty headlines
* org.el (org-imenu-get-tree): Fix bug when matching against empty
headlines.

Thanks to Jambunathan for reporting this.
2013-02-26 22:02:13 +01:00
Bastien Guerry 5bdb84ba74 org.el: Add :version and :package-version to `orgstruct-heading-prefix-regexp' 2013-02-26 18:23:53 +01:00
Bastien Guerry 3ee229dcd1 Merge branch 'master' of orgmode.org:org-mode 2013-02-26 18:21:40 +01:00
Bastien Guerry 295b0ba5d1 Bump :version to "24.4" and add :package-version.
The options updated are those who won't be in Emacs 24.3.
2013-02-26 18:21:28 +01:00
Christopher Schmidt ff92e688dd org.el: Rebind structure-related variables within org-run-like-in-org-mode
* org.el (orgstruct-make-binding): Rebind structure-related
variables within org-run-like-in-org-mode.
2013-02-26 17:52:32 +01:00
Bastien Guerry f20ae92e88 Merge branch 'maint' 2013-02-26 16:28:36 +01:00
Bastien Guerry 2efbd0f138 org.el (org-overview): Stay on current line
* org.el (org-overview): Stay on current line.

This circumvents a bug in hide-sublevels which displays the
"..." ellipsis on top of the window when hiding levels that
are past the middle of the window---at least this is the
way I could understand the problem.

Thanks to Samuel Wales for reporting the problem, Arun Persaud and
William for creating reproducible recipes, Suvayu Ali, Nick Dokos
and Achim Gratz for further help.
2013-02-26 16:28:30 +01:00
Bastien Guerry 95375260e5 Fix commit 83bebfd880 2013-02-26 16:13:39 +01:00
Bastien Guerry 04fd44708a Merge branch 'maint' 2013-02-26 15:14:42 +01:00
Bastien Guerry 6042e93fa4 org.el (org-map-entries): Fix docstring
* org.el (org-map-entries): Fix docstring.

Thanks to Christopher Schmidt for reporting this.
2013-02-26 15:14:37 +01:00
Bastien Guerry 889d671277 Fix typo. 2013-02-26 14:37:05 +01:00
Bastien Guerry 83bebfd880 Use `org-autoload' instead of `autoload'. 2013-02-26 14:35:25 +01:00
Nicolas Goaziou 58fc1b4bf4 Use `org-latex-compile' when processing formulas with imagemagick
* lisp/ox-latex.el (org-latex-compile): Add an optional argument for
  latex snippet previewing.
* lisp/org.el (org-create-formula-image-with-imagemagick): Use
  `org-latex-compile' instead of rewriting it.
2013-02-26 13:43:48 +01:00
Bastien Guerry 0c9b468545 Merge branch 'maint' 2013-02-26 11:09:06 +01:00
Bastien Guerry 467f7ff9b5 Fix commit b6b509.
Thanks to Sébastien Vauban for reporting this.
2013-02-26 11:08:50 +01:00
Nicolas Goaziou ef6c1498b4 Re-introduce #+latex_header value when previewing a LaTeX snippet
* lisp/org.el (org-create-formula--latex-header): New function.
(org-create-formula-image-with-dvipng,
org-create-formula-image-with-imagemagick): Use new function.

This functionality was removed in
0484c5c64d, when clearing out old export
framework from "org.el".
2013-02-26 00:04:05 +01:00
Nicolas Goaziou 11033a97dc sub/superscript character has to follow a non-blank character
* lisp/org.el (org-match-substring-regexp,
  org-match-substring-with-braces-regexp): Update regexp.
  A sub/superscript cannot start anymore at the beginning of the line
  or after a space.
2013-02-25 21:53:14 +01:00
Nicolas Goaziou e024beaa7e org-element: Refactor object parsing
* lisp/org-element.el (org-element--get-next-object-candidates):
  Rewrite function to simplify algorithm.
(org-element-context, (org-element--parse-elements)): Apply
changes.
* lisp/org.el (org-fill-paragraph): Apply changes.
2013-02-25 21:52:54 +01:00
Christopher Schmidt de5ff236d4 org.el: Bind org-shift* in orgstruct-mode.
* org.el (orgstruct-setup): Bind org-shift*.
2013-02-25 17:12:21 +01:00
Bastien Guerry 372a3ecda8 New compatibility macro `org-with-silent-modifications'
* org-macs.el: Don't define `with-silent-modifications' for
emacsen that don't have it.

* org-compat.el (org-with-silent-modifications): New
compatibility macro.

* org.el (org-refresh-category-properties)
(org-refresh-properties, org-entry-blocked-p)
(org-agenda-prepare-buffers):
* org-indent.el (org-indent-remove-properties)
(org-indent-add-properties):
* org-colview.el (org-columns-display-here)
(org-columns-remove-overlays, org-columns-quit)
(org-columns-edit-value, org-columns-compute-all)
(org-columns-compute, org-agenda-colview-compute):
* org-clock.el (org-clock-sum): Use the compatibility macro
`org-with-silent-modifications' instead of
`with-silent-modifications'.

Thanks to Achim for a preliminary patch.
2013-02-25 11:44:27 +01:00
Bastien Guerry 988240d5fd Merge branch 'master' of orgmode.org:org-mode 2013-02-25 11:21:25 +01:00
Bastien Guerry 662cb98684 org.el (org-sort-remove-invisible): Remove emphasis markers
* org.el (org-sort-remove-invisible): Remove emphasis markers.
2013-02-25 11:12:55 +01:00
Bastien Guerry 1ab872c51e Revert "org.el (org-sort-remove-invisible): Truly returns the visible part of the string"
This reverts commit 30d6dc8baa.
2013-02-25 11:00:55 +01:00
Nicolas Goaziou f26547e320 Fix false positives in `org-in-verbatim-emphasis'
* lisp/org.el (org-in-verbatim-emphasis): Fix false positive when
  point is just after the closing emphasis marker.
2013-02-25 10:53:19 +01:00
Bastien Guerry 30d6dc8baa org.el (org-sort-remove-invisible): Truly returns the visible part of the string
* org.el (org-sort-remove-invisible): Use defsust.  Do not
only check against invisible links, truly returns the visible
part of the string.

Thanks to François Pinard for suggesting this.
2013-02-25 10:24:29 +01:00
Bastien Guerry 5700a0eb2d Merge branch 'master' of orgmode.org:org-mode 2013-02-25 10:15:49 +01:00
Bastien Guerry 49772f1f26 Remove hidden links when comparing items or entries.
* org.el (org-sort-remove-invisible): Add a docstring.
(org-sort-entries): Remove hidden links when comparing
entries.

* org-list.el (org-sort-list): Remove hidden links when
comparing list items.

Thanks to François Pinard for suggesting this.
2013-02-25 10:15:44 +01:00
Nicolas Goaziou 8838585a42 Do not move point when filling a table
* lisp/org.el (org-fill-paragraph): Do not move point when filling
  a table.
* testing/lisp/test-org.el: Add test.
2013-02-25 10:06:58 +01:00
Bastien Guerry bd4750f24a Merge branch 'maint'
Conflicts:
	lisp/org-clock.el
	lisp/org.el
2013-02-24 19:19:01 +01:00
Bastien Guerry ac44a7af06 Move `org-at-clock-log-p' from org-clock.el to org.el
* org.el (org-at-clock-log-p): Delete.
* org-clock.el (org-at-clock-log-p): Move here.
2013-02-24 19:16:33 +01:00
Bastien Guerry 109f7314a3 org.el (org-agenda-prepare-buffers): Don't use `with-silent-modifications' too early
* org.el (org-agenda-prepare-buffers): Don't use
`with-silent-modifications' too early.

Thanks to J. David Boyd for reporting this and to Florian Beck for
confirming the problem.
2013-02-24 10:49:30 +01:00
Bastien Guerry 43c8aa02cc Use `with-silent-modifications' instead of `org-unmodified' when it makes sense
* org-macs.el: Add a comment on when to use `org-unmodified'
and when to use `with-silent-modifications'.

* org-colview.el (org-columns-display-here)
(org-columns-remove-overlays, org-columns-quit)
(org-columns-edit-value, org-columns-compute-all)
(org-columns-compute, org-agenda-colview-compute):
* org-clock.el (org-clock-sum):
* org.el (org-refresh-category-properties)
(org-refresh-properties, org-entry-blocked-p)
(org-agenda-prepare-buffers): Use `with-silent-modifications'
instead of `org-unmodified'.

Thanks to Stefan Monnier for reminding me about `with-silent-modifications'!
2013-02-23 14:57:51 +01:00
Bastien Guerry 64aae2fd29 Merge branch 'maint' 2013-02-23 14:42:45 +01:00
Bastien Guerry b6b509bfd4 org.el (org-tsr-regexp-both): Don't activate dates in links
* org.el (org-tsr-regexp-both): Don't activate dates in links.
(org-activate-dates): Change match boundaries according to the
new value of `org-tsr-regexp-both'.

Thanks to Richard Huang for reporting a related issue.
2013-02-23 14:42:11 +01:00
Bastien Guerry 8ee6c13c7f Fix typo: an headline -> a headline. 2013-02-23 13:47:44 +01:00
Bastien Guerry 917cc1d516 Merge branch 'master-wip' 2013-02-23 11:48:21 +01:00
Bastien Guerry 82899fa841 Merge `org-with-buffer-modified-unmodified' into `org-unmodified'
* org.el (org-entry-blocked-p): Use `org-unmodified' instead
of `org-with-buffer-modified-unmodified'.
(org-agenda-prepare-buffers): Fix indentation.

* org-macs.el (org-unmodified): Rename from
`org-with-buffer-modified-unmodified'.
(org-with-buffer-modified-unmodified): Delete.
2013-02-23 11:44:24 +01:00
Achim Gratz 570e0f93dc Replace `time-to-seconds´ with `org-float-time´
* lisp/org.el (org-current-time): Replace call to obsolete function
  `time-to-seconds´ with a call to compatibility function
  `org-float-time´.

XEmacs 21.5 already has float-time, so we may not need a compatibility
function here depending on what version of XEmacs introduced it and
what is the earliest version that Org is supposed to still support.
2013-02-23 10:20:03 +01:00
Achim Gratz ff064f89c2 Reverting "Fix compiler warning."
This reverts commit da22d29eb2.
2013-02-23 10:10:38 +01:00
Christopher Schmidt 14df16d931 org.el: Use longest form when translating keys.
* org.el (orgstruct-setup): Use longest form when translating
keys.
2013-02-22 19:50:51 +01:00
Bastien Guerry 71c3c12b39 Use `user-error' when moving or modifying the element at point is not possible
* org.el (org-move-subtree-down, org-forward-element)
(org-backward-element):
* org-table.el (org-table-previous-field)
(org-table-move-column, org-table-move-row):
* org-list.el (org-move-item-down, org-move-item-up)
(org-cycle-item-indentation): Use `user-error' when moving or
modifying the element at point is not possible.
2013-02-22 10:31:35 +01:00
Bastien Guerry da22d29eb2 Fix compiler warning.
Thanks to Thomas S. Dye for reporting this.
2013-02-21 22:11:30 +01:00
Bastien Guerry 2bd97a5ae6 org.el (org-fill-paragraph): Fill using `org-mode-transpose-word-syntax-table'
* org.el (org-fill-paragraph): Fill using
`org-mode-transpose-word-syntax-table'.

Thanks to Samuel Wales for raising this issue.
2013-02-20 16:46:27 +01:00
Bastien Guerry 272ca45701 Fix compiler warnings.
Thanks to Achim Gratz for reporting these problems.
2013-02-19 20:32:09 +01:00
Suvayu Ali 57aa34f6b2 Change default org-mark-subtree speed command
* org.el (org-speed-commands-default): Change default binding
  for org-mark-subtree from "." to "@" to be more consistent with "C-c
  @".

TINYCHANGE
2013-02-19 18:02:31 +01:00
Bastien Guerry 23057a57b4 Fix compiler warning 2013-02-19 13:02:14 +01:00
Bastien Guerry d1e57bd884 Fix bug with `org-clock-rounding-minutes'
* org-clock.el (org-clock-in, org-clock-in-last): Tell
`org-current-time' to always return a past time.

* org.el (org-current-time): New argument `past' to force
returning a past time when rounding.

If (setq org-clock-rounding-minutes 5) and time is 12:33
the clock start time would be 12:35, and the clock mode-line
would display 0:-2.  The fix ensures the rounded value is
always in the past.
2013-02-19 12:40:33 +01:00
Bastien Guerry 8a910bd40b Merge branch 'master-fixes' into master-new 2013-02-19 11:05:04 +01:00
Bastien Guerry 19a0b74ce6 org.el (org-set-effort, org-property-next-allowed-value): When needed, update the current clock effort time
* org.el (org-set-effort, org-property-next-allowed-value):
When needed, update the current clock effort time.
2013-02-19 10:24:59 +01:00
Bastien Guerry efb2ce9c12 org.el: Fix `org-next-link' and use it for `org-previous-link'
* org.el (org-next-link): New parameter `search-backward'.
Fix bug when at a link with no 'org-link face, e.g., in a DONE
headline.  Throw a message instead of an error.
(org-previous-link): Use `org-next-link'.
2013-02-19 10:02:34 +01:00
Bastien Guerry e8a6b56db9 Fix commit 5cdf84ea68
* org.el (org-mode): Don't make characters from
`org-emphasis-alist' word constituants.
(org-mode-transpose-word-syntax-table): Rename from
`org-syntax-table'.
(org-transpose-words): Use
`org-mode-transpose-word-syntax-table'.

Thanks to Achim Gratz and T.F. Torrey for reporting the broken tests.
2013-02-18 18:07:04 +01:00
Carsten Dominik 4708a4804f Merge branch 'fix-spacing-when-insert-new-heading' 2013-02-18 09:29:04 +01:00
Carsten Dominik 65b404427e Improve spacing when inserting new headline after end of subtree
When using C-RET to insert a new headline, the new headline was
inserted after arbitrary amounts of whitespace at the end of the
subtree.  This whitespace is now shrunk, to avoid unnatural spacing.

* lisp/org.el (org-insert-heading): Shrink whitespace at end of
  subtree when `org-insert-heading-respect-content' is on.
2013-02-18 09:28:05 +01:00
Nicolas Goaziou af9191d18b ox-taskjuggler: Port TaskJuggler back-end to new export framework
* contrib/lisp/ox-taskjuggler.el: New file.
* lisp/org.el (org-export-backends): Add new back-end in customize
  interface.
2013-02-18 00:26:39 +01:00
Bastien Guerry c4d8d26d1d org.el (org-toggle-ordered-property): Delete the drawer "PROPERTIES" if empty
* org.el (org-entry-delete, org-delete-property): New optional
arg delete-empty-drawer, a string, to delete any empty drawer
with that name.
(org-toggle-ordered-property): Delete the drawer "PROPERTIES"
if empty.
2013-02-16 23:04:12 +01:00
Bastien Guerry 3128edcbf8 Merge branch 'maint' 2013-02-16 22:29:42 +01:00
Bastien Guerry f8b15da24c org.el (org-set-tags-command): Fix bug.
* org.el (org-set-tags-command): Fix bug when setting tags for
multiple headlines in an active region.

Do not set the end of the region back to the beginning of the
previous headline.
2013-02-16 22:29:34 +01:00
Nicolas Goaziou 5f095f5909 Fontify latex, entities and sub/superscript again
* lisp/org-faces.el (org-latex-and-related): Renamed from
  `org-latex-and-export-specials', which wasn't appropriate anymore.
* lisp/org.el (org-highlight-latex-and-related,
  org-latex-and-related-regexp): New variables.
(org-compute-latex-and-related-regexp, org-do-latex-and-related): New
function, revived from a previous commit.
(org-set-regexps-and-options, org-set-font-lock-defaults): Use new
functions.
2013-02-16 22:19:37 +01:00
Nicolas Goaziou 9a6127d77b Small cleanup
* lisp/org.el (org-set-regexps-and-options): Remove reference to
  LATEX_CLASS and beamer back-end.
2013-02-16 21:27:34 +01:00
Nicolas Goaziou 48da6a46e0 Move macro expansion code into its own library
* lisp/org-macro.el: New file.
* lisp/org.el: Remove macro code.
* lisp/ox.el: Require new library
* testing/lisp/test-org-macro.el: New file.
* testing/lisp/test-org.el: Remove macro test.
2013-02-16 15:55:30 +01:00
Bastien Guerry 9c4d403ada org.el (org-mode): Use org-unmodified during startup initialization for functions that may be inhibited
* org.el (org-mode): Use org-unmodified during startup
initialization for functions that may be inhibited.
2013-02-16 14:10:14 +01:00
Achim Gratz 213e168c53 Merge branch 'maint' 2013-02-16 11:15:37 +01:00
Achim Gratz 45d52bfb4c fix wrong key for org-reload uncompiled in menu
* lisp/org.el (org-org-menu): Use correct key "C-u C-c C-x !" to do
  org-reload uncompiled in the menu.

The key binding has been changed in 8619361669 due to a conflict with
agenda mode, but the menu entry had never been corrected.
2013-02-16 11:14:35 +01:00
Bastien Guerry 88c79b8071 Clean up commented code. 2013-02-16 07:56:43 +01:00
Bastien Guerry 1298b6468a Merge branch 'master' of orgmode.org:org-mode 2013-02-15 16:48:40 +01:00
Bastien Guerry 7306e04193 org.el (org-return-follows-link): Mention that this does not affect the behavior of RET in tables
* org.el (org-return-follows-link): Mention that this does not
affect the behavior of RET in tables.
2013-02-15 16:44:58 +01:00
Nicolas Goaziou 0b6a2e2416 C-c C-c does nothing when at a blank line
* lisp/org.el (org-ctrl-c-ctrl-c): Do nothing when at a blank line,
  but still run `org-ctrl-c-ctrl-c-final-hook'.
2013-02-15 16:14:15 +01:00
Nicolas Goaziou dbadb2916b Remove unnecessary `ignore-error'
* lisp/org.el (org-end-of-line): Remove `ignore-error'.  It is
  unnecessary since 3bc8c9647a.
2013-02-15 16:14:09 +01:00
Bastien Guerry 5cdf84ea68 org.el: New functions `org-drag-line-forward' and `org-drag-line-backward'
* org.el (org-syntax-table, org-transpose-words): Delete.
(org-mode): Syntactically Define {} and <> as parentheses.
(org-drag-line-forward, org-drag-line-backward): New
functions.
(org-shiftmetaup, org-shiftmetadown): Fall back on the new
functions instead of throwing an error.

M-up/down used to drag a line up or down in contexts where it could not do
another move.  When org-element.el was integrated to core, dragging line by
line was not possible anymore since a line is not an "element".  This
commit reintroduces the ability to drag a line up/down with S-M-<up/down>.
2013-02-15 12:12:15 +01:00
Bastien Guerry 7afb487a28 org.el (org-make-org-heading-search-string): Don't use statistic or [x/y] cookies when creating a link
* org.el (org-make-org-heading-search-string): Don't use
statistic or [x/y] cookies when creating a link.

Thanks to William Lechelle for reporting this.
2013-02-15 11:15:57 +01:00
Nicolas Goaziou 3f421f309f Small fixes to completion
* lisp/org-pcomplete.el (pcomplete/org-mode/file-option): Allow
  completion for ATTR_ prefixed keywords.
* lisp/org.el (org-options-keywords): Add missing colons.
2013-02-14 17:50:58 +01:00
Bastien Guerry 6aa8829a1a Merge branch 'maint' 2013-02-14 10:40:04 +01:00
Bastien Guerry 981c6db3d7 Enhance doc wrt interactions between `org-startup-folded' and `org-agenda-inhibit-startup'
* org.el (org-startup-folded):
* org.texi (Visibility cycling): Suggest to set
`org-agenda-inhibit-startup' to nil if user wants the startup
visibility settings to be honored in any circumstances.

Thanks to Tassilo for pointing this.
2013-02-14 10:39:54 +01:00
Bastien Guerry 7a4d026b67 Remove references to the DocBook exporter
* org.el (org-emphasis-alist, org-protecting-blocks):
* org-src.el (org-edit-src-find-region-and-lang):
* org-list.el (org-list-forbidden-blocks):
* org-footnote.el (org-footnote-forbidden-blocks): Remove
references to the deleted DocBook exporter.

* org.texi (Top, Markup, Initial text, Images and tables)
(@LaTeX{} fragments, @LaTeX{} fragments, Exporting)
(Export options, JavaScript support, Beamer class export):
Remove references to the DocBook export, which has been
deleted.
(History and Acknowledgments): Mention that DocBook has been
deleted, suggest to use the Texinfo exporter instead, then to
convert the .texi to DocBook with makeinfo.
(Links in ODT export, Tables in ODT export): Fix indices.
2013-02-14 09:48:36 +01:00
Grégoire Jadi 7ddeb6fdf5 org.el (org-startup-with-latex-preview): New option
* org.el (org-startup-with-latex-preview): New option.
(org-startup-options): New startup keywords for the new
option.
(org-mode): Turn on/off LaTeX preview depending on the new
option.
2013-02-14 09:15:38 +01:00
Nicolas Goaziou 19eae5dc00 org-pcomplete: Fix completion for file options
* lisp/org.el (org-options-keywords): Add missing colons.
* lisp/org-macs.el (org-default-options): Removed function.
* lisp/org-pcomplete.el (org-command-at-point): Fix bug with some file
  options.
(pcomplete/org-mode/file-option/x): Removed macro.
(pcomplete/org-mode/file-option): Refactor code.
(pcomplete/org-mode/file-option/author,
pcomplete/org-mode/file-option/date,
pcomplete/org-mode/file-option/title,
pcomplete/org-mode/file-option/tags,
pcomplete/org-mode/file-option/select_tags,
pcomplete/org-mode/file-option/priorities,
pcomplete/org-mode/file-option/language,
pcomplete/org-mode/file-option/filetags,
pcomplete/org-mode/file-option/exclude_tags,
pcomplete/org-mode/file-option/email): New functions.
2013-02-14 08:48:18 +01:00
Bastien Guerry 791a8d6bcc Merge branch 'maint' 2013-02-13 19:27:01 +01:00
Bastien Guerry 6d7142b145 Fix `org-insert-heading-respect-content'
* org-mobile.el (org-mobile-edit): DTRT when inserting a heading
in an invisible region.

* org.el (org-insert-heading-respect-content): New
`invisible-ok' parameter.  Add docstring.
(org-insert-todo-heading-respect-content): Add docstring.

Thanks to James Harkins for the extra detailed reports and
the proposed solutions, both for org.el and org-mobile.el.
2013-02-13 19:26:50 +01:00
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