[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[O] [o] org-capture regression?
From: |
Thomas Holst |
Subject: |
[O] [o] org-capture regression? |
Date: |
Thu, 20 Sep 2018 10:13:56 +0200 |
Hello,
a view weeks ago a wrote a post about problems I have with one of my
captue templates. (see:
http://lists.gnu.org/archive/html/emacs-orgmode/2018-08/msg00161.html)
Today I dug a little deeper.
In March 2017 I sent two patches to enable the capture property
:table-line-pos to be either a string, a variable or a function.
#+begin_example
commit 599ccd1cc83cc8a1b0af82ac93e23760637b37b5
Author: Thomas Holst <address@hidden>
Date: Mon Mar 17 09:01:40 2014 +0100
docu change for table-line-pos new feature
commit 176125c32ff2a8adc6e1d3091a57e46e482da638
Author: Thomas Holst <address@hidden>
Date: Sat Mar 15 16:22:44 2014 +0100
org-capture.el: Allow `:table-line-pos' to be a function name, a string or
a variable
#+end_example
Since a few weeks this is not working anymore. I have a capture template
unsing this feature (which I use rarely but still).
So here is I patch I came up with to re-enable theese features:
#+begin_src diff
* doc/org-manual.org (Template elements): document new/old features of
`:table-line-pos'
* lisp/org-captue.el (org-capture-place-table-line): eval the content
of `:table-line-pos'
---
doc/org-manual.org | 6 ++++--
lisp/org-capture.el | 3 ++-
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/doc/org-manual.org b/doc/org-manual.org
index ae7c07c88..4a2a64fc4 100644
--- a/doc/org-manual.org
+++ b/doc/org-manual.org
@@ -7361,9 +7361,11 @@ Now lets look at the elements of a template
definition. Each entry in
- ~:table-line-pos~ ::
Specification of the location in the table where the new line
- should be inserted. It should be a string like =II-3= meaning
+ should be inserted. It could be a string like =II-3= meaning
that the new line should become the third line before the
- second horizontal separator line.
+ second horizontal separator line. Or it could be a function
+ returning a string or a variable containing a string as
+ explained above.
- ~:kill-buffer~ ::
diff --git a/lisp/org-capture.el b/lisp/org-capture.el
index cbc72d43b..7f3e9e623 100644
--- a/lisp/org-capture.el
+++ b/lisp/org-capture.el
@@ -1212,7 +1212,8 @@ may have been stored before."
((pred (string-match-p org-table-border-regexp))
"| %?Bad template |")
(text (concat text "\n"))))
- (table-line-pos (org-capture-get :table-line-pos))
+ (table-line-pos
+ (eval (org-capture-get :table-line-pos)))
beg end)
(cond
((org-capture-get :exact-position)
--
2.19.0
#+end_src
This works for me. I can use my capture template again. In the meantime I
signed FSF papers
so TINYCHANGE is not required anymore.
Thank you for looking into this.
--
Bis neulich ...
Thomas
- [O] [o] org-capture regression?,
Thomas Holst <=