Commit Graph

3059 Commits

Author SHA1 Message Date
Bastien Guerry fe0057556b org.el: Don't advise `outline-end-of-subtree'
* org.el (org-move-subtree-down): Use `org-end-of-subtree'
instead of `outline-end-of-subtree'.
(outline-end-of-subtree): Remove advice.

* org-mouse.el (org-mouse-move-tree, org-mouse-do-remotely):
Use `org-end-of-subtree' instead of `outline-end-of-subtree'.
2014-05-23 13:11:57 +02:00
Nicolas Richard 54f4d2f4a4 org.el (org-cycle-internal-local): Fix trailing character bug
* org.el (org-cycle-internal-local): Don't show a trailing
character when cycling a subtree that ends with a non-newline
character at the end of the buffer or the narrowed region.
2014-05-23 13:04:28 +02:00
Bastien Guerry 58e45f4df1 org.el (org-entry-properties): Ensure the special property is not commented out when matched
* org.el (org-entry-properties): Ensure the special property
is not commented out when matched.

Other an agenda view like (tags "DEADLINE<\"<+0d>\"" ...) will
wrongly list an entry with a commented out DEADLINE line, because
org-agenda-skip only skip commented out stuff on the current line,
with is the headline itself when using "tags" agenda.

Thanks to Sébastien for reporting this.
2014-05-22 12:38:06 +02:00
Bastien Guerry d438fbfb1b Continue fixing fdb4b54e 2014-05-21 03:56:26 +02:00
Bastien Guerry 03acfe44b6 org.el (org-insert-heading): Fix bug
* org.el (org-insert-heading): Fix bug when trying to insert a
heading when point is before the first headline and not at the
beginning of a line.
2014-05-20 23:28:06 +02:00
Dmitry Gorbik 1811b37f4d org.el (org-fast-tag-selection): Fix window splitting
* org.el (org-fast-tag-selection): Fix window splitting.

This is basically the same fix than the one listed here:
http://article.gmane.org/gmane.emacs.orgmode/34802

TINYCHANGE
2014-05-20 22:20:56 +02:00
Bastien Guerry 6fab5bf04b * org.el (org-set-regexps-and-options): Fix
* org.el (org-set-regexps-and-options): Allow
`org-complex-heading-regexp-format' to match [/] and [%]
cookies when they are both before and after the heading.

Thanks to Nicolas Bercher for reporting this.
2014-05-20 18:00:05 +02:00
Bastien Guerry 0ca4092d72 Fix commit fdb4b54e 2014-04-30 10:43:40 +02:00
Bastien Guerry fc37d1020a Fix bug introduced in commit fdb4b54e
Thanks to Leonard Randall for reporting it.
2014-04-25 09:27:12 +02:00
Bastien Guerry fdb4b54e92 org.el (org-insert-heading): Fix behavior
* org.el (org-insert-heading): Fix behavior when point is at
the beginning of a heading or a list item.  Enhance docstring.

Thanks to York Zhao for reporting this.
2014-04-22 11:18:12 +02:00
Bastien Guerry 162f8867c9 org.el (org-mode): Use `org-*-element' functions again
* org.el (org-mode): Use `org-*-element' functions for C-M-a
and C-M-e but fix C-M-e.
2014-04-22 08:03:44 +02:00
Bastien Guerry 9ca840a501 Revert "org.el (org-mode): Use `org-back-to-heading' and `org-end-of-subtree' for C-M-a and C-M-e"
This reverts commit 47e456d8a6.
2014-04-22 08:02:05 +02:00
Bastien Guerry 47e456d8a6 org.el (org-mode): Use `org-back-to-heading' and `org-end-of-subtree' for C-M-a and C-M-e
* org.el (org-mode): Use `org-back-to-heading' and
`org-end-of-subtree' for C-M-a and C-M-e.

This partially reverts commit 76fa97922.

Thanks to Leo Liu for reporting this.
2014-04-21 19:25:27 +02:00
Nicolas Goaziou f9c93aaa49 Tiny fix
* lisp/org.el (org-sparse-tree): Tiny fix.
2014-04-21 09:24:58 +02:00
Nicolas Goaziou 2434d3e248 Fix code typo
* lisp/org.el (org-sparse-tree): Fix code typo.  Small refactoring.

Thanks to Brady Trainor for spotting it.
http://permalink.gmane.org/gmane.emacs.orgmode/85320
2014-04-21 09:19:37 +02:00
Bastien Guerry d9312231e9 org.el (org-check-before-invisible-edit): Show the subtree
* org.el (org-check-before-invisible-edit): Don't just cycle,
show the subtree, as cycling may leave the current heading
folded.

Thanks to Paul Stansell for reporting this.
2014-04-20 09:31:28 +02:00
Bastien Guerry 5d0e668cc6 org.el (org-contextualize-validate-key): Fix wrong test
* org.el (org-contextualize-validate-key): Fix wrong test.

Thanks to Eric Abrahamsen for reporting the problem and the fix:
http://article.gmane.org/gmane.emacs.orgmode/85276
2014-04-20 08:44:07 +02:00
Bastien Guerry 9272ef3e17 Revert "org.el (org-refile): Allow org-refile goto from everywhere"
This reverts commit faa1703b8f.
2014-04-20 08:00:19 +02:00
Bastien Guerry a937366e8a org.el (org-sort-entries): Fix the number of blank lines to keep for the last entry to sort
* org.el (org-sort-entries): Fix the number of blank lines to
keep for the last entry to sort.

Thanks to Kyle Meyer for raising this issue.
2014-04-17 12:51:49 +02:00
Nicolas Goaziou 018a80541a Small refactoring
* lisp/org.el (org-make-link-regexps): Use `regexp-opt' instead of
  `mapconcat' and `regexp-quote'.
2014-04-17 11:30:15 +02:00
Nicolas Goaziou 1ca819e398 Revert "Make Org links compatible with URI syntax"
This reverts commit 3589f64e42.
2014-04-17 11:30:15 +02:00
Bastien Guerry 817619a50b Revert "org.el (org-sort-entries): Allow to sort by clocking time"
This reverts commit 1cca8f534f.
2014-04-17 10:32:23 +02:00
Bastien Guerry 1cca8f534f org.el (org-sort-entries): Allow to sort by clocking time
* org.el (org-sort-entries): Allow to sort by clocking time.

Thanks to Noah Slater for this idea.
2014-04-17 10:30:44 +02:00
Bastien Guerry c3810f71b6 org.el (org-update-dblock): Use `save-excursion'
* org.el (org-update-dblock): Use `save-excursion' instead of
`save-window-excursion' so that blocks can edit other windows and
change the window layout.

Thanks to Martin for reporting this.
2014-04-17 09:18:08 +02:00
Bastien Guerry d1600af7b6 org.el (org-cycle): Try `org-try-cdlatex-tab' before trying to edit/move as in a table
* org.el (org-cycle): Try `org-try-cdlatex-tab' before trying
to edit/move as in a table.

Thanks to Konstantin Kliakhandler for reporting this.
2014-04-16 17:25:08 +02:00
Markus Hauck faa1703b8f org.el (org-refile): Allow org-refile goto from everywhere
* lisp/org-agenda.el (org-refile): Flip logic to allow instead of
  prohibit the use of `org-refile' with the goto flat from non
  org-mode buffers.

In commit 49da67d the condition was changed from only
`(unless goto ...)` to `(unless (and goto (listp arg)) ...)`
where the `and` condition is only true for non-empty lists, so that
calling `(org-refile t)` complains about not being inside an org-mode
buffer.

With this patch org-refile can be used (again) from anywhere when
passed the goto flag to jump to the chosen task.

TINYCHANGE
2014-04-11 11:59:43 +02:00
Sacha Chua d6a38604e6 org.el (org-refresh-properties): Don't throw an error when reaching the end of the buffer
* org.el (org-refresh-properties): Don't throw an error when
reaching the end of the buffer.
2014-04-11 11:28:45 +02:00
Nicolas Goaziou 3589f64e42 Make Org links compatible with URI syntax
* lisp/org.el (org-make-link-regexps): Allow optional double slashes
  after type.  Small refactoring.

* testing/lisp/test-org-element.el (test-org-element/link-parser):
  Update test.

This patch allows to write both [[file:/file.org]] and [[file:///file.org]].
See bug#16751.
2014-04-10 22:57:05 +02:00
Nicolas Goaziou 7de492a0c4 Update docstrings
* lisp/org.el (org-latex-packages-alist,
  org-latex-default-packages-alist): Update docstrings.
2014-04-05 09:50:20 +02:00
Nicolas Goaziou 8212776cfc Fix radio target parsing
* lisp/org-element.el (org-element-all-successors,
  org-element-object-restrictions): Prioritize `link' over other
  successors in order to find radio links starting with another syntax
  object (e.g., an entity).  Also allow text markup within radio
  targets.
(org-element-link-parser): Add contents to radio targets.

* lisp/org.el (org-make-target-link-regexp): Fix regexp so it can
  match targets starting with an Org object (e.g., an entity).
(org-ctrl-c-ctrl-c): Fix function when applied on an object contained
within a radio target.

* testing/lisp/test-org-element.el (test-org-element/radio-target-parser): Add test.
* testing/lisp/test-ox.el (test-org-export/resolve-radio-link): Add test.
2014-03-24 14:13:24 +01:00
Nicolas Goaziou 955d9d8a78 Change "\" and "~" syntax to symbol
* lisp/org.el (org-mode): Change "\" and "~" characters syntax from
  `punctuation' to `symbol' so they are on par with other characters used
  in Org syntax (e.g., "/", "*"...).

This change is needed to correctly find radio links starting with an
entity:

  <<<\alpha-test>>> \alpha-test
2014-03-24 14:13:24 +01:00
Nicolas Goaziou 95eeefa9bc Revert "LaTeX: Use \ul (from the "soul" package) instead of \uline"
This reverts commit b399ff0cba.
2014-03-22 15:15:35 +01:00
Bastien Guerry b399ff0cba LaTeX: Use \ul (from the "soul" package) instead of \uline
* ox-latex.el (org-latex-text-markup-alist): Use \ul{...} for
underlining instead of \uline{...} as requiring the hyperref
package makes \uline{...} unusable on headline.

* org.el (org-latex-default-packages-alist): Add the "soul"
package.

Thanks to Konstantin Kliakhandler for reporting this.
2014-03-22 00:27:34 +01:00
Bastien Guerry 5a195423d3 org.el (org-refresh-properties): Bugfix
* org.el (org-refresh-properties): Don't add the property to
the whole subtree, only to the part between the beginning of
the headline and the end of the "content", before any other
headline.  This fix a bug about properties displayed as
inherited in the agenda, where Org properties are checked
against text properties.

Thanks to Sébastien Vauban for reporting this.
2014-03-21 12:51:04 +01:00
Bastien Guerry a3ec854cab Fix bugs wrt invisibility handline.
* org-compat.el (org-move-to-column): Always ignore invisible
text in agenda buffer, and when there is both a bracket link
and '(org-link) as a member of `buffer-invisibility-spec'.
Add a docstring.

* org.el (org-align-tags-here): Add docstring and remove
useless arguments when calling `org-move-to-column'.

* org-table.el (org-table-copy-down)
(org-table-find-dataline, org-table-move-row)
(org-table-insert-hline, org-table-kill-row):
* org-agenda.el (org-agenda-next-item)
(org-agenda-previous-item, org-agenda-todo)
(org-agenda-priority, org-agenda-show-new-time)
(org-agenda-clock-in, org-agenda-clock-out): Remove useless
arguments when calling `org-move-to-column'.

This fixes the issue about S-RET not placing the cursor in the right
table field when M-x org-toggle-link-display RET removed '(org-link)
from `buffer-invisibility-spec' and some other discrepancies (like
S-M-<up> not restoring point correctly when there is a bracket link
before point, or M-x org-clock-display RET not aligning overlays
correctly, etc.

Thanks to Matt Lundin and Michael Brand for tracking issues
about this.
2014-03-20 15:04:49 +01:00
Bastien Guerry 49da67d351 org.el (org-refile): Fix C-u 3 C-c C-w
* org.el (org-refile): Fix calling with a numeric prefix
argument of 3 to refile and keep.
2014-03-19 16:13:33 +01:00
Nikolai Weibull 2d09804e19 org.el: Only set org-hide foreground if one is available
* org.el (org-mode): Add guard around set-face-foreground.

TINYCHANGE
2014-03-19 09:31:11 +01:00
Bastien Guerry 922135a4a6 org.el (org-entry-get-with-inheritance): Remove wrong quote
* org.el (org-entry-get-with-inheritance): Remove wrong quote.
2014-03-18 16:25:12 +01:00
Bastien Guerry 42ee862d33 org.el (org-entry-get): Fix inheritance problem
* org.el (org-entry-get): Only try to combine file properties
with local properties when the property drawer contains such
local property, not when the property drawer exists.

Before the fix, `org-entry-get' behavior was inconsistent,
returning `nil' when looking for a property in a subtree with
no property drawer, and returning the global properties in a
subtree with a property drawer, independantly of whether this
property drawer contained a reference to the property we are checking
against or not.

As a side-effect, inheritance was broken for the case that
Ilya reported in commit 475f2f53, because `org-entry-get' returned
a value (with the global properties of the file) too early.

Thanks to Ilya for raising this bug and to Achim for pointing
out that the previous fix was wrong.
2014-03-18 14:47:09 +01:00
Bastien Guerry 3074d081e7 Revert "Properties: Fix property-getting with inheritance"
This reverts commit 475f2f5388.
2014-03-17 21:22:04 +01:00
Bastien Guerry 28a9e35ddb org.el (org-do-emphasis-faces): Explicitly prevent nested emphasis
* org.el (org-do-emphasis-faces): Explicitly prevent nested
emphasis.

Thanks to Sébastien Vauban for reporting this.
2014-03-17 02:19:27 +01:00
Bastien Guerry afffe03dcf org.el (org-insert-heading): Don't remove whitespaces following an empty headline
* org.el (org-insert-heading): Don't remove whitespaces
following an empty headline.

Thanks to Brady Trainor for reporting this.
2014-03-17 01:41:42 +01:00
Ilya Shlyakhter 475f2f5388 Properties: Fix property-getting with inheritance
* lisp/org.el (org-entry-get-with-inheritance): Temporarily
let-bind `org-file-properties', `org-global-properties' and
`org-global-properties-fixed' to nil before calling `org-entry-get'
on entries up the hierarchy from the queried entry.

Problem was that when org-entry-get-with-inheritance went up the
hierarchy of entries from a given entry, checking whether the property
has been set in any of the entries, it was calling org-entry-get,
which always looks at file-scope and global-scope properties.  So if
our property was set file-wide or system-wide, and somewhere up the
hierarchy there was an entry which set some properties _other_ than
the one we're looking up but did not set ours, org-entry-get would
fill in the global property value and report that our property was in
fact set in that entry.  The search would stop, and if the property
was actually set further up the hierarchy (which should override
file-wide or system-wide settings), we would never get to that
up-the-hierarchy setting.

Illustration of fixed problem:

#+PROPERTY: myprop aaa
* headline A
	:PROPERTIES:
	:myprop: bbb
	:END:
*** headline B
		:PROPERTIES:
		:otherprop:       ccc
		:END:

    #+BEGIN_SRC emacs-lisp
    (message (org-entry-get-with-inheritance "myprop"))
    #+END_SRC

    #+RESULTS:
    : aaa

		Result should be bbb, which it is after the fix.
2014-03-14 12:02:11 +01:00
Bastien Guerry 0cf58595d7 org.el (org-store-link): Fix bugs
* org.el (org-store-link): Ensure desc is not nil before
matching a regexp against it.
2014-03-13 16:27:51 +01:00
Bastien Guerry 7f65ba52ee org.el (org-store-link): Bugfix
* org.el (org-store-link): Fall back on an empty string when
no description is available.

This fixes a bug about tangling a source block outside of any
subtree when `org-id-link-to-org-use-id' is `t'.

Thanks to Sean Allred for reporting this.
2014-03-13 15:50:16 +01:00
Bastien Guerry b28ebdf3f1 org.el (org-delete-property): Don't suggest to delete the CATEGORY property
* org.el (org-delete-property): Don't suggest to delete the
CATEGORY property when the category is not explicitely set in
the property drawer.  Also enforce matching when completing.

Thanks to Oleh for providing a preliminary patch for this.
2014-03-12 18:41:01 +01:00
Bastien Guerry 250abf061b Bugfixes wrt inserting headings.
* org.el (org-insert-heading): Fix regression: with two
universal prefixes, insert heading at the end of the subtree.
(org-insert-todo-heading): Bugfix: only enforce the first TODO
state when arg is '(4).
2014-03-12 17:51:18 +01:00
Bastien Guerry bff69f97f3 org.el (org-contextualize-validate-key): Bugfix
* org.el (org-contextualize-validate-key): Fix bug: perform
the check even when (buffer-file-name) returns `nil'.
2014-03-12 11:57:38 +01:00
Bastien Guerry adbb2f7c9f Fix doc and code inconsistency: now use =verbatim= and ~code~.
* org.el (org-emphasis-alist): Use `org-verbatim' for =text=
and `org-code' for ~text~.

* org.texi (Emphasis and monospace): Document the use of
=verbatim= and ~code~ to be consistent with
`org-element-text-markup-successor'.

Thanks to Yasushi for reporting this.
2014-03-04 10:49:49 +01:00
Bastien Guerry dd810b609b org.el (org-open-link-marker): Fix typo in docstring
* org.el (org-open-link-marker): Fix typo in docstring.
2014-03-01 21:47:30 +01:00