Commit Graph

3030 Commits

Author SHA1 Message Date
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
Bastien Guerry 016a394de7 Fix 44acd0004
Thanks to Paul Stansell for reporting this.
2014-02-06 12:37:35 +01:00
Bastien Guerry f4f3f140ac Partially reapply fe3379bda6
* org.el (org-agenda-prepare-buffers): Use `save-excursion'
instead of `save-window-excursion'.

Thanks to Florian Beck for reporting this.
2014-02-06 00:27:33 +01:00
Bastien Guerry d7bbf362da Revert "org.el (org-agenda-prepare-buffers): Restore the point position"
This reverts commit fe3379bda6.
2014-02-06 00:25:16 +01:00
Bastien Guerry a6f81047a4 org.el (org-file-contents): Return an empty string instead of the message
* org.el (org-file-contents): Return an empty string instead
of the message.
2014-02-05 16:15:55 +01:00
Bastien Guerry a08bff4138 org.el (org-open-at-point): Fix bug when opening a plain link followed by a bracket link
* org.el (org-open-at-point): Fix bug when opening a plain
link followed by a bracket link.

Thanks to John Kitchin for reporting this.
2014-02-05 10:56:50 +01:00
Bastien Guerry ccc4f6b96e Fix d035a9af6
Thanks to Nicolas for providing the correct fix.
2014-02-01 01:08:42 +01:00
Bastien Guerry c89827dc37 Revert "org.el (org-ctrl-c-ctrl-c): Bugfix"
This reverts commit d035a9af6c.

See http://article.gmane.org/gmane.emacs.orgmode/81752
2014-02-01 01:06:25 +01:00
Bastien Guerry d035a9af6c org.el (org-ctrl-c-ctrl-c): Bugfix
* org.el (org-ctrl-c-ctrl-c): Fix behavior when hitting C-c
C-c on LaTeX formulas in tables.
2014-01-31 15:53:42 +01:00
Bastien Guerry 7ddebe5c7b Revert "org.el (org-map-entries): Use `save-window-excursion'"
This reverts commit 3ec38f5c06.
2014-01-31 10:38:50 +01:00
Bastien Guerry 53c664c4ec org.el (org-refile--get-location): New internal function
* org.el (org-refile--get-location): New internal function
using a wider set of possible refile locations.
(org-refile-get-location): Use it.
2014-01-30 12:42:13 +01:00
Bastien Guerry f3ed0f7c6c org.el (org-refile): Fix bug when refiling the last subtree
* org.el (org-refile): Fix bug when refiling the last subtree
of the buffer: don't leave out the last character.
2014-01-30 12:21:39 +01:00
Bastien Guerry 3c71ab34dd org.el (org-sort-entries): Restore the point location when there is nothing to sort
* org.el (org-sort-entries): Restore the point location when
there is nothing to sort.
2014-01-30 11:59:25 +01:00
Benjamin Drieu 33a0a198e3 org.el (org-store-link): Fix selection of the function to store the link
* org.el (org-store-link): Fix selection of the function to
store the link.
2014-01-29 14:57:45 +01:00
Bastien Guerry e8bfc5336c Fix 77458b 2014-01-24 12:17:08 +01:00
Bastien Guerry 25e4e5b6f0 org.el (org-format-latex-options): Fix docstring
* org.el (org-format-latex-options): Fix docstring.

Thanks to Mirko Vukovic for reporting this.
2014-01-19 16:44:21 +01:00
Bastien Guerry d16477913d Fix ff902c 2014-01-16 12:07:27 +01:00
Nicolas Goaziou d4b653656e org.el (org-mode-restart): Fix turning off `org-indent-mode' when necessary
* org.el (org-mode-restart): Fix turning off `org-indent-mode'
when necessary.
2014-01-16 01:18:30 +01:00
Bastien Guerry a4a2935c3f org.el (customize-package-emacs-version-alist): Fix Org version for Emacs 24.4
* org.el (customize-package-emacs-version-alist): Fix Org
version for Emacs 24.4.
2014-01-16 01:13:15 +01:00
Bastien Guerry ff902c4429 Remove spurious defvar
Thanks to Nicolas Goaziou for reporting this.
2014-01-16 00:52:46 +01:00
Bastien Guerry 27ab61acd0 Fix 4a9820 2014-01-16 00:35:12 +01:00
Bastien Guerry 0a8fe04a9d Merge branch 'maint' of orgmode.org:org-mode into maint 2014-01-15 09:21:59 +01:00
Bastien Guerry 947c3f5c2a Fix 035087777 2014-01-15 09:21:44 +01:00
Bastien Guerry d9797ca17e Revert "org.el (org-store-link): When a link has been stored, always returns it"
This reverts commit 035087777d.
2014-01-15 09:19:30 +01:00
Carsten Dominik 723306d6e7 Fix mode reset 2014-01-14 20:45:54 +01:00
Bastien Guerry 4a9820067a Fix bug when demoting invisible headlines
* org.el (org-demote): Ignore invisible text when aligning
tags.
(org-set-tags): When JUST-ALIGN is 'ignore-column, ignore
invisible text when restoring the cursor to the correct
column.

This fixes a bug about demoting hidden headlines.
If org-move-to-column temporarily ignore visibility
specs, this will prevent org-demote to work correctly
in hidden regions.

Thanks to Susan Cragin for reporting this bug.
2014-01-14 12:38:50 +01:00
Bastien Guerry 035087777d org.el (org-store-link): When a link has been stored, always returns it
* org.el (org-store-link): When a link has been stored, always
returns it.

(Storing links from the agenda are broken otherwise.)
2014-01-12 09:56:41 +01:00
Bastien Guerry 21472107fa org.el (org-ellipsis): Small docstring enhancement
* org.el (org-ellipsis): Small docstring enhancement.
2014-01-11 01:34:44 +01:00
Nicolas Goaziou 8720c49807 Speed improvement
* lisp/org.el (org-get-previous-line-level): Do not call
  `org-current-level' twice unless necessary.  Also, avoid using
  `line-number-at-pos' when the information needed is to know if point
  is in the first line of the visible part of the buffer.
2014-01-10 11:22:49 +01:00
Bastien Guerry 152712a7c8 Backport change from Chong on 2013-12-23 2014-01-07 13:25:30 +01:00