Hi,

`org-columns-inhibit-recalculation' prevents `org-columns-compute-all'
from running when column view is rebuilt after operations such as
changing a column width or reordering columns.

However, `org-columns--compute-clock-summaries' is still called in these
cases.  Consequently, changing only the presentation may invoke
`org-clock-sum' or `org-clock-sum-today', which can be relatively
expensive.

Would it make sense to apply the same inhibition to clock summaries?

diff --git a/lisp/org-colview.el b/lisp/org-colview.el
index bbc9d28f7..c83056c68 100644
--- a/lisp/org-colview.el
+++ b/lisp/org-colview.el
@@ -1007,7 +1007,8 @@ the buffer."
   (save-restriction
     (when (and (not global) (org-at-heading-p))
       (narrow-to-region (point) (org-end-of-subtree t t)))
-    (org-columns--compute-clock-summaries)
+    (unless org-columns-inhibit-recalculation
+      (org-columns--compute-clock-summaries))
     (org-columns--collect-rows)))

This makes the variable consistently mean “rebuild the display without
recomputing column values”, including the special CLOCKSUM and
CLOCKSUM_T columns.

Are there cases where clock summaries should intentionally be
recomputed while ordinary column summaries remain inhibited?

WDYT?

Best,
-- 
Slawomir Grochowski

Reply via email to