I started from the 78ec8e commit then cherry-picked and squashed
commits that have been done in master since then, except the bad
commits that overwrote the tree (in master) with the tree in maint.
This commit also bumps the version number to 7.8.06.
The only "fix" that was made between 78ec8e and the previous commit
is e0072f which has been reported to break stuff.
* org.el (org-scan-tags): Require one or more spaces (+) between
keyword and headline.
Otherwise the re will match a line like:
* TODO@ Foobar
And assumes the @ to be part of the headline.
This fixes a glitch reported by Simon Thum in
<4F53DEF7.8080604@gmx.de>.
> Hi all,
>
> I have found some irritating behaviour, potentially a bug. I have a
> block agenda which goes like:
>
> tags-todo "@home&TODO=\"TODO\"
>
> and it displays a certain org line that reads
>
> **** TODO_ state triggers
>
> Which is just a heading for dealing with TODO state triggers, and I
> appended the _ as I don't want it to be a TODO.
>
> For example, the global TODO list and syntax highlighting does not
> consider it a todo, but C-c a m TODO="TODO" does. TODO="T" does not,
> so it's not very grave.
>
> Most likely, it's simply an inconsistency arising from not having a
> real parser. I just wanted to report it here so it may get fixed.
This fixes a wrong merge that should not have happened:
commit 7e903a merges the master branch into the maint branch,
while we really want to keep the maint branch a bugfix-only
branch.
This commit reverts back the maint branch to its state before
merging the master branch. From there, we will fix remaining
problems with the maint branch (e.g. copyright issues) then
release this maint branch as Org-mode 7.8.05.
* org-src.el (org-src-edit-buffer-p): New function.
* org.el (org-store-link): Use the new function to correctly
match source code buffer.
TINYCHANGE
Thanks to Ilya Shlyakhter for this patch.
On 3/16/2012 2:10 AM, Nick Dokos wrote:
> One more thing that you'll need to do is put your patches in attachments
> of a type that will allow patchwork to snag the patch:
Thanks, I was wondering why they're not showing up.
Here is another try (attached) for the org.el patch.
ilya
>From 95c38b06803aec0787bc2eaab3d0062221390292 Mon Sep 17 00:00:00 2001
From: Ilya Shlyakhter <ilya_shl@alum.mit.edu>
Date: Fri, 16 Mar 2012 00:10:25 -0400
Subject: [PATCH 2/2] Tags/properties matcher: faster matching by trusting
org-scanner-tags
* lisp/org.el (org-scan-tags): Bind org-trust-scanner-tags to t
while evaluating the matcher, since the matcher is always evaluated
at the current entry.
TINYCHANGE
* lisp/ob-lilypond.el (ly-compile-lilyfile): Fixed misplaced comma in a
quoting expression.
* lisp/org-pcomplete.el: added missing defvar definitions for org vars
* lisp/org-src.el: added declare-function line for org-babel-tangle
* lisp/ob.el (org-scan-tags): protected the variable tags-list with a let
(other) added missing defvar declarations.
TINYCHANGE
* org.el (org-clone-subtree-with-time-shift): Fix task cloning for
repeating tasks using .+n and ++n syntax
Tasks with repeaters using .+n and ++n syntax retain the repeater in
all of the clones causing duplicate tasks. These tasks are now
handled the same as the regular repeating task using +n syntax.
* 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.
* 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>.
* 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
* 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>.
* 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.
* 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.