Commit Graph

16260 Commits

Author SHA1 Message Date
Achim Gratz 310b9dd2b6 ob-C: lexical-let requires cl at compilation time
* lisp/ob-C.el: Require cl during compilation so that lexical-let is
  known.
2014-05-28 14:40:52 +02:00
Achim Gratz 3a736c51bc org-entities: forward declaration of org-toggle-pretty-entities and org-pretty-entities
* lisp/org-entities.el: Remove superfluous require of org-macs.
  Forward declare 'org-toggle-pretty-entities' and
  'org-pretty-entities'.
2014-05-28 14:16:21 +02:00
Achim Gratz 6c1b41bd68 org, ox: move defsubst before first use
* lisp/ox.el (org-export-get-parent): Move definition of
  'org-export-get-parent' before first use.  Leave comment at original
  place of definition.

* lisp/org.el (org-uniquify): Move definition of 'org-uniquify' before
  first use.  Leave comment at original place of definition.
2014-05-28 13:44:53 +02:00
Bastien Guerry aa86e4bc9f org-agenda.el: Implement new effort filter
* org-agenda.el (org-agenda-custom-commands-local-options):
Add `org-agenda-effort-filter-preset'.
(org-agenda-filter-effort-default-operator): Delete.
(org-agenda-local-vars): Add `org-agenda-effort-filter'.
(org-agenda-mode-map): Use "_" to filter by effort.
(org-agenda-effort-filter, org-agenda-effort-filter-preset):
New variables.
(org-agenda-prepare-window, org-agenda-prepare)
(org-agenda-finalize, org-agenda-redo)
(org-agenda-filter-remove-all, org-agenda-filter-apply)
(org-agenda-set-mode-name, org-agenda-reapply-filters): Handle
effort filter.
(org-agenda-finalize-entries): Use
`org-sort-agenda-noeffort-is-high'.
(org-agenda-limit-entries): Get the property from the correct
location.
(org-agenda-limit-interactively): Throw a user error on wrong
input.
(org-agenda-filter-by-effort): New command.
(org-agenda-filter-by-tag): Don't filter by effort.
(org-agenda-filter-make-matcher): Handle effort filter.
(org-agenda-compare-effort): Don't handle the "?" operator.
(org-agenda-filter-show-all-effort): New command.

Note: This calls for some refactoring in the filter area.
2014-05-28 12:26:54 +02:00
Bastien Guerry 7dceecbb30 Small refactoring and fix a bug in `org-timer-set-timer'
* org.el (org-refresh-property): New function.
(org-refresh-properties, org-set-effort)
(org-property-next-allowed-value): Use it.

* org-timer.el (org-timer-set-timer): Get the correct number
of minutes from text properties, both in an `org-mode' and
`org-agenda-mode' buffer.
2014-05-28 10:47:05 +02:00
Bastien Guerry 500252abf3 org.el (org-open-link-in-comment-or-property): Refactor into `org-open-at-point'
* org.el (org-open-link-in-comment-or-property): Delete.
(org-open-at-point): Handle links in comments and property
drawers.  Update docstring.
2014-05-28 10:21:11 +02:00
Bastien Guerry 5fbdbb2bd5 org-agenda.el (org-agenda-limit-interactively): Enhance
* org-agenda.el (org-agenda-finalize-entries): Remove spurious
variable in the (let ...) construct.
(org-agenda-limit-interactively): Allow to remove the
limitation by passing a universal prefix argument.  Enhance
the prompt.
2014-05-27 16:51:33 +02:00
Bastien Guerry c9ecc225ac org-clock.el (org-clock-display): Allow non-interactive use by making arg optional
* org-clock.el (org-clock-display): Allow non-interactive use
by making arg optional.

Thanks to Noah Slater for pointing this.
2014-05-27 09:45:54 +02:00
Nicolas Goaziou 0e303ab577 Small fix
* lisp/org.el (org-open-at-point): Use parser instead of
  `org-at-comment-p' and `org-at-property-p', which are not accurate.
2014-05-26 18:17:35 +02:00
Nicolas Goaziou f574744aee Tiny refactoring
* lisp/org.el (org-at-property-p): Tiny refactoring.  Improve docstring.
2014-05-26 18:17:30 +02:00
Bastien Guerry b11570c2f1 Fix regression: allow to open a link in a comment or a property line
* org.el (org-open-link-in-comment-or-property): New function.
(org-open-at-point): Use it.

See http://thread.gmane.org/gmane.emacs.orgmode/84300/focus=84300 for
the follow-up of a discussion on whether links should be supported in
comments and properties.
2014-05-26 17:42:58 +02:00
Bastien Guerry f768629404 Simplify comments matching functions
* org.el (org-fontify-entities): Use `org-at-comment-p'.
(org-in-commented-line): Delete.
(org-in-indented-comment-line): Delete.
(org-at-comment-p): Also match indented comments and save
match data.

* org-footnote.el (org-footnote-in-valid-context-p): Use
`org-at-comment-p'.
2014-05-26 17:33:24 +02:00
Bastien Guerry 956c00cce3 org.el (org-link-escape): Don't escape characters in internal links
* org.el (org-link-escape): Don't escape characters in
internal links.

Thanks to Alan Schmitt for raising this issue.
2014-05-26 16:06:10 +02:00
Bastien Guerry 687a65de70 Fix typo in previous commit 2014-05-26 15:44:53 +02:00
Bastien Guerry b622300c0c Merge branch 'maint'
Conflicts:
	lisp/org-agenda.el
2014-05-26 15:32:13 +02:00
Bastien Guerry cbce904187 org-agenda.el: Fix bug wrt `org-agenda-persistent-filter'
* org-agenda.el (org-agenda-prepare-window): New parameter
`filter-alist' to set the filters correctly when
`org-agenda-persistent-filter' is on.
(org-agenda-prepare): Use the new parameter for
`org-agenda-prepare-window'.

Thanks to Thomas Morgan for reporting this.
2014-05-26 15:29:02 +02:00
Bastien Guerry 319b09a1c4 Merge branch 'maint' 2014-05-26 14:56:38 +02:00
Bastien Guerry 54ab137689 Fix bug when update timestamps on filtered agenda entries
* org-compat.el (org-in-invisibility-spec-p): Tiny code
cleanup.
(org-move-to-column): Only remove '(org-filtered) from
`buffer-invisibility-spec'.

* org-agenda.el (org-agenda-mode): Add buffer invisibility
specs.
(org-agenda-filter-hide-line, org-agenda-remove-filter): Set
the 'invisible text property to 'org-filtered.
(org-agenda-show-new-time): Add the default face to avoid the
foreground of the last character on the line to leak into the
timestamp notification.

Thanks to Thomas Morgan for reporting this.
2014-05-26 14:55:50 +02:00
Bastien Guerry 8d0da67ea0 Merge branch 'maint' 2014-05-26 07:36:06 +02:00
Bastien Guerry 061904b58e org-agenda.el (org-get-time-of-day): Don't return time string from within links
* org-agenda.el (org-get-time-of-day): Don't return time
string from within links.

Thanks to Thomas Morgan for reporting this.
2014-05-26 07:35:24 +02:00
Bastien Guerry 77ffc73a4a Merge branch 'master' of orgmode.org:org-mode 2014-05-26 07:26:09 +02:00
Bastien Guerry 2affa4d333 org.el (org-sort-entries): Improve TODO entries sorting
* org.el (org-sort-entries): When sorting by TODO keywords,
put TODO entries first, then entries without a TODO keyword,
then DONE entries.

Thanks to Eric Abrahamsen for triggering this.
2014-05-26 07:10:16 +02:00
Nicolas Goaziou fdb40fbe01 org-agenda: Tiny fix
* lisp/org-agenda.el (org-agenda-format-item): Check if string isn't
  empty before searching for text properties.
2014-05-25 23:33:17 +02:00
Bastien Guerry abe931dca9 org.el (org-link-escape-chars): Remove ?\+ ?\; and ?\=
* org.el (org-link-escape-chars): Remove ?\+ ?\; and ?\=.

Thanks to Michael Weylandt for suggesting this.
2014-05-25 07:53:56 +02:00
Eric Abrahamsen 62950827ec Improve table column narrowing with variable-width strings
org-table.el (org-table-align): Use `org-string-width'.

This aims at better guessing how wide a narrowed table column should
actually be.  This won't work perfectly with variable-width scripts,
as it still only narrows in full-column increments, but it's better
than before.
2014-05-25 07:18:12 +02:00
Eric Abrahamsen 4af31090b4 Use string width in table field justification
org-table.el (org-table-justify-field-maybe): Use
`org-string-width' instead of `length' to calculate the visual
width of table cells.

This is useful for e.g. double-width charsets.
2014-05-25 07:18:06 +02:00
Bastien Guerry 866d7eddd0 org-agenda.el (org-agenda-set-restriction-lock): Remove restriction lock before setting it
* org-agenda.el (org-agenda-set-restriction-lock): Remove
restriction lock before setting it.

This fixes a small bug: when restriction lock is active on a subtree
and C-c C-x < before the first headline, the new restriction is set to
the entire file, but the old one was still present.
2014-05-25 07:16:15 +02:00
Nicolas Goaziou 56b47fb71d Merge branch 'maint' 2014-05-24 15:46:04 +02:00
Nicolas Goaziou e3d2c1b0c9 ox-ascii: Tiny fix
* lisp/ox-ascii.el (org-ascii--current-text-width): Tiny fix.
2014-05-24 15:44:08 +02:00
Bastien Guerry a72d2e5d5d Merge branch 'maint' 2014-05-24 14:13:17 +02:00
Bastien Guerry 7e5965372d org-timer.el (org-timer-value-string): Always return a positive value
* org-timer.el (org-timer-value-string): Always return a
positive value.  Add docstring.
2014-05-24 14:12:56 +02:00
Bastien Guerry 60c8ef5673 htmlxref.cnf: New file to let texi2html point at the correct Calc HTML manual 2014-05-24 12:19:13 +02:00
Bastien Guerry 5421814156 org.texi (Global and local cycling): Fix ref
* org.texi (Global and local cycling): Use only @pxref{}, as
Texinfo will take care of referring to the correct Emacs
manual HTML location.
2014-05-24 12:19:01 +02:00
Bastien Guerry dd179e81f3 Minor reformatting 2014-05-24 11:52:36 +02:00
Bastien Guerry 2c33442ae2 org.el (org-refile-check-position): Remove unused user error
* org.el (org-refile-check-position): Remove unused user error.
2014-05-24 11:52:15 +02:00
Bastien Guerry 253b60cdaf org.el (org-refresh-stats-properties): Fix arithmetic error
* org.el (org-refresh-stats-properties): Fix arithmetic error.

Thanks to Gregor Zattler for reporting this.
2014-05-24 11:25:39 +02:00
Bastien Guerry 99580828e6 Merge branch 'maint' 2014-05-23 21:51:23 +02:00
Alex Kosorukoff 942a95cd59 org-capture.el (org-capture-fill-template): Set `mark-active' to nil
* org-capture.el (org-capture-fill-template): Set
`mark-active' to nil.

TINYCHANGE
2014-05-23 21:50:24 +02:00
Bastien Guerry 567241e986 Revert "org-capture.el (org-capture-steal-local-variables): Don't steal `mark-active'"
This reverts commit ee5a88cd01.
2014-05-23 21:49:19 +02:00
Bastien Guerry d978a9e585 org-agenda.el (org-agenda-format-item): Don't add the 'effort and 'effort-minutes text properties
* org-agenda.el (org-agenda-format-item): Don't add the
'effort and 'effort-minutes text properties as they are
already accessible through the 'txt property of agenda lines.

* org-clock.el (org-clock-in): Refresh both the 'effort and
'effort-minutes text properties.

* org-rmail.el (rmail, rmail-file-name): Silent byte-compiler.

* org.el (org-refresh-properties): Allow to set several text
properties by passing an alist to the TPROP argument.
(org-set-effort, org-property-next-allowed-value): Use 'effort
instead of 'org-effort.
(org-agenda-prepare-buffers): Update both 'effort and
'effort-minutes.
(org-mark-jump-unhide): Move up to silent the byte-compiler.
2014-05-23 16:51:55 +02:00
Bastien Guerry 45c4f276f2 org.el: Implement agenda sorting against stats cookies. Code cleanup
* org.el (org-refresh-category-properties): Don't put the
'org-category-position property.
(org-refresh-stats-properties): New function.
(org-agenda-ignore-properties): Rename from
`org-agenda-ignore-drawer-properties', which is now obsolete.
Allow to use 'stats.
(org-agenda-prepare-buffers): Check stats properties.
(org-get-at-bol): Make a defsubst.
(org-get-at-eol): New function.

* org-agenda.el (org-entries-lessp): Sort by statistic
cookies.
(org-search-view, org-agenda-get-todos)
(org-agenda-get-timestamps, org-agenda-get-sexps)
(org-agenda-get-progress, org-agenda-get-deadlines)
(org-agenda-get-scheduled, org-agenda-get-blocks): Don't set
the 'org-category and 'org-category-pos text properties.
'org-category-pos is useless and 'org-category is set through
`org-agenda-format-item'.
(org-agenda-format-item): Remove useless code.
(org-cmp-priority): Delete.
(org-cmp-values): New function to compare text properties
values.
(org-cmp-effort, org-agenda-to-appt): Check against the end of
the line.
(org-agenda-filter-by-category, org-agenda-filter-apply)
(org-agenda-change-all-lines): Use `org-get-at-eol'.
2014-05-23 15:54:50 +02:00
Bastien Guerry d6775b8751 Merge branch 'maint' 2014-05-23 14:01:45 +02:00
Bastien Guerry ee5a88cd01 org-capture.el (org-capture-steal-local-variables): Don't steal `mark-active'
* org-capture.el (org-capture-steal-local-variables): Don't
steal `mark-active', which should be nil in the target buffer.

Thanks to Alex Kosorukoff for raising this issue.
2014-05-23 14:01:39 +02:00
Bastien Guerry 0f0fa81dd0 Merge branch 'maint' 2014-05-23 13:43:18 +02:00
Bastien Guerry 1d57e1ac9a org-agenda.el (org-agenda-remove-filter): Use `save-excursion'
* org-agenda.el (org-agenda-remove-filter): Use `save-excursion'.
2014-05-23 13:43:11 +02:00
Bastien Guerry 7384c96954 Merge branch 'maint' 2014-05-23 13:12:37 +02:00
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
Eric Abrahamsen c23d9ee8c5 Warn users of malformed property drawers
* org.el (org-buffer-property-keys): When scanning the buffer for
valid property keys, give users a chance to repair any malformed
property drawers.
2014-05-23 11:06:50 +02:00
Bastien Guerry 2ce78ef45b Merge branch 'maint' 2014-05-22 21:15:44 +02:00