org-colview: Rationalize summary process
commit58d387661ac38055e0747119496df23310950c7f
authorNicolas Goaziou <mail@nicolasgoaziou.fr>
Sat, 20 Feb 2016 21:42:51 +0000 (20 22:42 +0100)
committerNicolas Goaziou <mail@nicolasgoaziou.fr>
Sat, 20 Feb 2016 23:44:17 +0000 (21 00:44 +0100)
treee7a20ad8e8afcac8a1489eb362f23a04c8608fd5
parent5c0a92799053a5093004e589b90cf4004b9cbac0
org-colview: Rationalize summary process

* lisp/org-colview.el (org-columns-compile-map): Externalize summary
  functions.  Remove "none" summary.
(org-columns-new): Apply previous removal.

(org-columns--fractional-duration-re): Rename variable to...
(org-columns--duration-re): ... this.

(org-columns-compute): Change how values are computed.  This is now done
in one pass.  A summarize function is given a list of strings and
possible a format string.  It has to return the computed value as
a string.

(org-columns--time-to-seconds):
(org-columns--age-to-seconds):
(org-columns--summary-apply-times):
(org-columns--summary-sum):
(org-columns--summary-currencies):
(org-columns--summary-checkbox):
(org-columns--summary-checkbox-count):
(org-columns--summary-checkbox-percent):
(org-columns--summary-min):
(org-columns--summary-max):
(org-columns--summary-mean):
(org-columns--summary-sum-times):
(org-columns--summary-min-time):
(org-columns--summary-max-time):
(org-columns--summary-mean-time):
(org-columns--summary-min-age):
(org-columns--summary-max-age):
(org-columns--summary-mean-age): New functions.

(org-columns--summary-estimate):
(org-agenda-colview-summarize): Update functions to new process.

(org-columns-string-to-number): Apply variable renaming.

* testing/lisp/test-org-colview.el (test-org-colview/columns-summary):
  Fix test.  Add some more.
lisp/org-colview.el
testing/lisp/test-org-colview.el