Commit Graph

1875 Commits

Author SHA1 Message Date
Nicolas Goaziou 933c0fa441 Implement numbered cross-references
* lisp/org.el (org-link-search): Search for #+name affiliated keywords
  and invisible targets.
* contrib/lisp/org-element.el (org-element-link-parser): Remove "ref"
  links relative part.
(org-element-target-parser): Move property name from `:raw-value' to
`:value'.
(org-element-recursive-objects): Remove targets from tables.  Cells
are not parsed unless explicitely asked by back-end developer, too
late.  A target wouldn't be noticed in time.  One solution could be to
parse every table, but that's time consumming.
(org-element-object-restrictions): Target are not recursive anymore.
* contrib/lisp/org-export.el (org-export-resolve-fuzzy-link): Find
  elements with a matching "#+name: path" affiliated keyword.
(org-export-get-ordinal): Make special cases for headlines, items,
footnotes definitions and references.
(org-export-resolve-ref-link): Removed function.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-link): Handle
  cross-reference numbers.
(org-e-latex-target): Targets have no contents.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii--describe-links): Ignore
  fuzzy links in link description at the end of the section.
(org-e-ascii-link): Handle cross-reference numbers.
* testing/contrib/lisp/test-org-export.el: Add tests.
* testing/lisp/test-org.el: Add tests.
2012-03-01 14:49:53 +01:00
Eric Schulte 5061de6ee3 integrating ob-scala and ob-io into Org-mode, with code cleanup 2012-02-28 19:45:01 -07:00
Eric Schulte 5a24348778 Merge branch 'origin-maint' 2012-02-18 10:39:04 -07:00
Eric Schulte 19f1bf6bce unified stripping of protective commas -- idempotent org-edit-src-code
* lisp/ob.el (org-babel-strip-protective-commas): Use
  `org-strip-protective-commas'.
* lisp/org-exp.el (org-export-select-backend-specific-text): Use
  `org-strip-protective-commas'.
* lisp/org-src.el (org-edit-src-code): Use
  `org-strip-protective-commas'.
* lisp/org.el (org-strip-protective-commas): Single definition for
  this functionality.
2012-02-18 10:38:32 -07:00
Eric Schulte c67705a708 Merge branch 'origin-maint' 2012-02-18 08:28:50 -07:00
Eric Schulte bf238997a9 Generalize to multiple "prop+" properties.
* lisp/org.el (org-entry-get): Generalize to multiple "prop+" properties.
2012-02-18 08:28:40 -07:00
David Maus eed72c5556 Use `with-selected-window' to select calendar window
* org.el (org-recenter-calendar): Use `with-selected-window' to select
calendar window and save currently selected window and current buffer.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

* org-publish.el (org-publish-index-generate-theindex): Use
uppercase for the #+INCLUDE keyword.
2012-01-12 08:42:16 +01:00
Eric Schulte ce5c5d896b Merge branch 'origin-maint' 2012-01-11 10:15:24 -07:00