Commit Graph

592 Commits

Author SHA1 Message Date
Bastien Guerry 3dd3100794 org-clock.el (org-clock-in): Don't forward by one character when setting the marker in the clock history
* org-clock.el (org-clock-in): Don't forward by one character
when setting the marker in the clock history.

This was done to prevent the marker from being broken when a user
manually insert some text right one it.  I cannot reproduce this
manual marker modification problem, so let's remove this ugly
exception, as it is not consistent with other clock markers.

Thanks to Bernt Hansen for pointing this out.
2013-04-24 10:47:16 +02:00
Bastien Guerry 13deb41a3a org-clock.el (org-clock-select-task): Remove successive duplicates in the clock history to consider
* org-clock.el (org-clock-select-task): Remove successive
duplicates in the clock history to consider.

Thanks to Sébastien Vauban for pointing at this.
2013-04-13 10:21:16 +02:00
Bastien Guerry 78b5dd8d56 org-clock.el (org-clock-insert-selection-line): Don't display the clockout time
* org-clock.el (org-clock-insert-selection-line): Don't
display the clockout time.

This partially reverts commit ff4b7a47, which introduced this, but
Bernt Hansen confirmed this was not practical in some circumstances.
2013-04-12 08:21:48 +02:00
Bastien Guerry ff4b7a4784 org-clock.el (org-clock-select-task): Throw a user error when the clock history is empty
* org-clock.el (org-clock-select-task): Throw a user error
when the clock history is empty.
2013-04-10 10:08:45 +02:00
Bastien Guerry 749829d591 org-clock.el (org-clock-select-task): Fix window to buffer
* org-clock.el (org-clock-select-task): Fix window to buffer.
Hide the cursor.
(org-clock-insert-selection-line): Add the clock-out time.

Thanks to Bernt Hansen for reporting the issue about the window.
2013-04-09 19:36:14 +02:00
Bastien Guerry ee422561c8 org-clock.el (org-clock-resolve): Enhance the content of the help window
* org-clock.el (org-clock-resolve): Enhance the content of the
help window.
2013-04-08 21:25:09 +02:00
Bastien Guerry bc3ccdfba2 Fix reverted commit 00a227
Make `org-resolve-clocks-if-idle' check for an existing marker buffer.
2013-04-04 09:42:57 +02:00
Bastien Guerry 3b5f56f0f4 Revert "org-clock.el: Set clock markers to nil on clock out/cancel"
This reverts commit 00a227c0d2.
2013-04-04 09:40:02 +02:00
Bastien Guerry 00a227c0d2 org-clock.el: Set clock markers to nil on clock out/cancel
* org-clock.el (org-resolve-clocks-if-idle): Only try to
resolve last clock if the clock buffer still exists.
(org-clock-out, org-clock-cancel): Set markers to nil.

Thanks to John Wiegley for reporting this bug.
2013-04-03 18:28:29 +02:00
Bastien Guerry 450878fb21 Fix previous commit 2013-03-15 11:43:27 +01:00
Bastien Guerry 6ae1718df5 org-clock.el: New :mstart parameter for clocktables
* doc/org.texi (The clock table): Document :mstart.

* lisp/org-clock.el (org-clocktable-defaults): Add :mstart
parameter.
(org-clock-special-range): New argument mstart.
(org-dblock-write:clocktable, org-dblock-write:clocktable)
(org-clocktable-write-default, org-clocktable-steps)
(org-clock-get-table-data): Handle the :mstart parameter.

Thanks to Peder Stray for coming up with this idea and for
proposing a first implementation.
2013-03-15 11:17:12 +01:00
Bastien Guerry e0e699ab3d org-compat.el: New compatibility function `org-defvaralias'
* org-compat.el (org-defvaralias): Newcompatibility function.
* org.el:
* org-agenda.el:
* org-list.el:
* org-gnus.el:
* org-clock.el: Use it.
2013-03-14 13:53:52 +01:00
Bastien Guerry 0a21f82962 Merge branch 'maint'
Conflicts:
	lisp/org-clock.el
2013-03-02 18:59:47 +01:00
Bastien Guerry 3b21f246d6 org-clock.el (org-clock-out): Fix bug.
* org-clock.el (org-clock-out): Fix bug: if a closing note
needs to be stored in the drawer where clocks are stored,
let's temporarily remove `org-clock-remove-empty-clock-drawer'
from `org-clock-out-hook'.

Thanks to Дядов Васил Стоянов for reporting this bug.
2013-03-02 17:39:23 +01:00
Bastien Guerry 295b0ba5d1 Bump :version to "24.4" and add :package-version.
The options updated are those who won't be in Emacs 24.3.
2013-02-26 18:21:28 +01:00
Bastien Guerry 372a3ecda8 New compatibility macro `org-with-silent-modifications'
* org-macs.el: Don't define `with-silent-modifications' for
emacsen that don't have it.

* org-compat.el (org-with-silent-modifications): New
compatibility macro.

* org.el (org-refresh-category-properties)
(org-refresh-properties, org-entry-blocked-p)
(org-agenda-prepare-buffers):
* org-indent.el (org-indent-remove-properties)
(org-indent-add-properties):
* org-colview.el (org-columns-display-here)
(org-columns-remove-overlays, org-columns-quit)
(org-columns-edit-value, org-columns-compute-all)
(org-columns-compute, org-agenda-colview-compute):
* org-clock.el (org-clock-sum): Use the compatibility macro
`org-with-silent-modifications' instead of
`with-silent-modifications'.

Thanks to Achim for a preliminary patch.
2013-02-25 11:44:27 +01:00
Bastien Guerry bd4750f24a Merge branch 'maint'
Conflicts:
	lisp/org-clock.el
	lisp/org.el
2013-02-24 19:19:01 +01:00
Bastien Guerry ac44a7af06 Move `org-at-clock-log-p' from org-clock.el to org.el
* org.el (org-at-clock-log-p): Delete.
* org-clock.el (org-at-clock-log-p): Move here.
2013-02-24 19:16:33 +01:00
Bastien Guerry 43c8aa02cc Use `with-silent-modifications' instead of `org-unmodified' when it makes sense
* org-macs.el: Add a comment on when to use `org-unmodified'
and when to use `with-silent-modifications'.

* org-colview.el (org-columns-display-here)
(org-columns-remove-overlays, org-columns-quit)
(org-columns-edit-value, org-columns-compute-all)
(org-columns-compute, org-agenda-colview-compute):
* org-clock.el (org-clock-sum):
* org.el (org-refresh-category-properties)
(org-refresh-properties, org-entry-blocked-p)
(org-agenda-prepare-buffers): Use `with-silent-modifications'
instead of `org-unmodified'.

Thanks to Stefan Monnier for reminding me about `with-silent-modifications'!
2013-02-23 14:57:51 +01:00
Bastien Guerry 65399674d5 Remove remember support
* org-protocol.el:
* org-bibtex.el: Remove remember support.

* org-clock.el (org-clock-heading-for-remember): Delete.
(org-clock-in): Do not set the heading for remember.

Users are encouraged to migrate their remember templates to
`org-capture-templates' instead of `org-remember-templates'.
See `org-capture-import-remember-templates' on how to ease
the transition.
2013-02-22 11:44:29 +01:00
Bastien Guerry 85a1395efa org-clock.el: Minor code clean-up
* org-clock.el (org-clock-set-current)
(org-clock-delete-current): Delete.
(org-clock-in, org-clock-out): Set and delete
`org-clock-current-task'.  Minor code clean-up.
2013-02-19 12:59:46 +01:00
Bastien Guerry d1e57bd884 Fix bug with `org-clock-rounding-minutes'
* org-clock.el (org-clock-in, org-clock-in-last): Tell
`org-current-time' to always return a past time.

* org.el (org-current-time): New argument `past' to force
returning a past time when rounding.

If (setq org-clock-rounding-minutes 5) and time is 12:33
the clock start time would be 12:35, and the clock mode-line
would display 0:-2.  The fix ensures the rounded value is
always in the past.
2013-02-19 12:40:33 +01:00
Nicolas Goaziou a2f56264c9 Remove unnecessary linking to export framework
* lisp/org-clock.el (org-clocktable-defaults,
  org-clocktable-write-default): Avoid requiring the whole export
  framework just to check one variable.
* lisp/org-footnote.el (org-footnote-section): Update
  docstring.
(org-footnote-normalize): Remove all export related part from the
  function.
* lisp/org-inlinetask.el (org-inlinetask-export,
  org-inlinetask-export-templates): Removed variables.
(org-inlinetask-export-handler): Removed function.
* lisp/org-plot.el: Remove dependency on `org-exp' library.
* lisp/org.el (org-additional-option-like-keywords): Remove variable.
(org-get-export-keywords): New function.
(org-options-keywords): Update default list of keywords.
(org-remove-flyspell-overlays-in): Apply changes to keywords
compilation.
(org-highlight-latex-fragments-and-specials)
org-latex-and-specials-regexp,
org-export-html-special-string-regexps): Remove variables.
(org-compute-latex-and-specials-regexp,
org-do-latex-and-special-faces, org-remove-file-link-modifiers):
Remove functions.
(org-set-regexps-and-options, org-set-font-lock-defaults): Apply all
removals.
(org-use-sub-superscripts): Fix docstring.  Remove unused group.
(org-match-sexp-depth): Make it a defconst instead of a defcustom in
order to remove `org-export-translation' group completely.

The new export framework shouldn't be as much interleaved with Org
core as with the previous one.  For example, export options, which are
back-end dependent, shouldn't interfere with the display of the
buffer.
2013-02-06 23:06:31 +01:00
Bastien Guerry a2febd2101 Merge branch 'maint' 2013-01-31 14:18:24 +01:00
Bastien Guerry 4259ea9fe5 org-clock.el (org-clock-sum): Fix indentation 2013-01-31 14:18:14 +01:00
Bastien Guerry 394398afab Merge branch 'maint' 2013-01-31 14:17:13 +01:00
Francesco Pizzolante 9cb3d3e7f8 org-clock.el (org-clock-sum): Protect with `org-unmodified'
* org-clock.el (org-clock-sum): Protect with `org-unmodified'.

TINYCHANGE
2013-01-31 14:17:01 +01:00
Bastien Guerry dddd9fb4af Merge branch 'maint' 2013-01-23 14:49:02 +01:00
Bastien Guerry 345cfbec25 org-clock.el (org-clock-in): Fix bug when fetching the effort value
* org-clock.el (org-clock-in): Fix bug when fetching the effort
value.

Thanks to Vasil S. Diadov for reporting this bug and proposing a patch.
2013-01-23 14:48:52 +01:00
Bastien Guerry 7369cada30 Merge branch 'maint' 2013-01-13 11:17:56 +01:00
Bastien Guerry 04eb4b08c3 Revert "Compatibility: Use org-define-obsolete-{function,variable}-alias"
This reverts commit 305f29776f.
2013-01-13 09:19:24 +01:00
Yasushi SHOJI 0499f0a939 org-clock.el: New option `org-clock-x11idle-program-name'
* org-clock.el (org-clock-x11idle-program-name): New option.
(org-x11idle-exists-p, org-x11-idle-seconds): Use it.

* org.texi (Resolving idle time): Document
`org-clock-x11idle-program-name'.

Debian and other OSes already have a program called 'xprintidle',
which does the same thing as x11idle. It also handles the DPMS bug[1]
some version of X servers have.

In order to use an alternative, introduce a customizable variable
'org-clock-x11idle-program-name' to hold the actual command name.

[1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=502226
2013-01-11 23:16:45 +01:00
Nicolas Richard f82004840a * org-id.el (org-id-locations-file):
* org-clock.el (org-clock-persist-file): Fix hardcoded
reference to "~/.emacs.d".

* contrib/lisp/org-track.el (org-track-directory): Fix hardcoded
reference to "~/.emacs.d".
2013-01-09 17:59:17 +01:00
Bastien Guerry 5fc740a230 Merge branch 'maint' 2013-01-08 15:04:40 +01:00
Bastien Guerry 72bc144c15 Update Copyright lines to match Emacs format. 2013-01-08 15:04:32 +01:00
Bastien Guerry 68c1ad99ea New option `org-time-clocksum-use-effort-durations'
* org.el (org-time-clocksum-format): Add a version tag and add
to the 'org-clock group.
(org-time-clocksum-use-fractional): Ditto.
(org-time-clocksum-use-effort-durations): New option to allow
using `org-effort-durations' when computing clocksum durations.
(org-minutes-to-clocksum-string): Use the new option.

* org-clock.el (org-clocktable-write-default): Let-bind
`org-time-clocksum-use-effort-durations' to a new clocktable
parameter ":effort-durations".

Thanks to Sébastien Vauban for pointing the inconsistency.
2013-01-07 21:44:00 +01:00
Bastien Guerry b54d6f5965 Merge branch 'maint'
Conflicts:
	lisp/org-agenda.el
	lisp/org.el
	testing/lisp/test-org-element.el
2013-01-07 16:19:37 +01:00
Bastien Guerry e4df4e9ffd org-clock.el: Fix last commit. 2013-01-07 12:52:34 +01:00
Bastien Guerry 6cd243468b Speed up setting/getting the APPT_WARNTIME property.
* org.el (org-refresh-properties): Rename from
`org-refresh-effort-properties' and use two new parameters.
(org-agenda-prepare-buffers): Use `org-refresh-properties'.
Also refresh the 'org-appt-warntime text property.

* org-clock.el (org-clock-in): Use the renamed defun.

* org-icalendar.el (org-icalendar-print-entries): Refresh the
'org-appt-warntime property.
(org-icalendar-print-entries): Do not use `org-entry-get' to
get the "APPT_WARNTIME" property value.

* org-agenda.el (org-agenda-get-timestamps)
(org-agenda-get-sexps, org-agenda-get-deadlines)
(org-agenda-get-scheduled): Ditto.
2013-01-07 12:50:49 +01:00
Bastien Guerry c4d4bf3833 New defun `org-refresh-effort-properties'
* org-agenda.el (org-agenda-format-item): Do not use
org-get-effort to get the effort text property.
(org-agenda-get-sexps): Use `org-back-to-heading' when setting
the tags.

* org-clock.el (org-clock-in): Refresh effort properties.

* org.el (org-refresh-effort-properties): New defun.
(org-get-effort): Delete.
(org-set-effort): Set the 'org-effort text property.
(org-property-next-allowed-value): Ditto.
(org-agenda-prepare-buffers): Refresh effort properties.
2013-01-07 12:33:24 +01:00
Achim Gratz 19460418a0 Merge branch 'maint' 2013-01-06 18:33:16 +01:00
Achim Gratz 305f29776f Compatibility: Use org-define-obsolete-{function,variable}-alias
* lisp/org-compat.el (org-define-obsolete-function-alias,
  org-define-obsolete-variable-alias): Introduce new compatibility
  macros to obsolete functions and variables.

* lisp/org-agenda.el, lisp/org-clock.el, lisp/org-id.el,
  lisp/org-lparse.el, lisp/org-protocol.el lisp/org.el: Use
  `org-define-obsolete-{function,variable}-alias´instead of
  `define-obsolate{function,variable}-alias´.
2013-01-06 18:29:05 +01:00
Bastien Guerry 60b23bdeac Merge branch 'maint'
Conflicts:
	contrib/lisp/htmlize.el
	etc/schema/od-manifest-schema-v1.2-os.rnc
	etc/schema/od-schema-v1.2-os.rnc
	lisp/org-exp-blocks.el
2013-01-01 16:06:17 +01:00
Bastien Guerry 98cd4687a2 Update copyright years.
Happy new year!
2013-01-01 16:04:24 +01:00
Bastien Guerry b5f93f8fe3 New option `org-clock-rounding-minutes'
* org-clock.el (org-clock-rounding-minutes): New option to
round the time by N minutes in the past when clocking in or out.
(org-clock-in, org-clock-in-last, org-clock-out): Use the new
option.

* org.el (org-current-time): New optional parameter
`rounding-minutes' to override the use of
`org-time-stamp-rounding-minutes' for rounding.

Thanks to Kevin Buchs for a preliminary patch for this feature.
2012-12-29 18:45:07 +01:00
Bastien Guerry 3b994e78fb org-clock.el (org-clock-special-range): Small docstring fix
* org-clock.el (org-clock-special-range): Small docstring fix.
2012-12-29 12:35:51 +01:00
Bastien Guerry 0bca49801e org-clock.el: Implement a new parameter :wstart to define the week start day
* org-clock.el (org-clock-special-range): New parameter
'weekstart to define the week start day.
(org-clock-special-range, org-dblock-write:clocktable)
(org-dblock-write:clocktable, )
(org-clocktable-write-default, org-clocktable-steps)
(org-clock-get-table-data): Use the new parameter.
(org-clocktable-defaults): Set monday as the starting day of
the week by setting :wstart to 1.

* org.texi (The clock table): Document :wstart as a way to set
the starting day of the week.

Thanks to Raghavendra D Prabhu for suggesting this feature.
2012-12-29 12:35:18 +01:00
Bastien Guerry 0276cf0975 Merge branch 'maint' 2012-12-28 18:37:53 +01:00
Bastien Guerry 5c4d3cbcbf org-clock.el (org-clock-persist): Docstring fix: document the 'history value
* org-clock.el (org-clock-persist): Docstring fix: document
the 'history value.

Thanks to Ivan Andrus for reporting this.
2012-12-28 18:37:07 +01:00
Bastien Guerry 953b920c9b Merge branch 'maint' 2012-12-23 17:31:57 +01:00