Per Unneberg <punneb...@gmail.com> writes: > Hi, > > I'm writing a custom function for use with a capture template, as > described in the section Template elements (sec 9.1.3.1) of the info > manual. My function does what I expect in that it finds the correct > heading (in my use case "Log") and returns point. However, if the Log > heading has no children, the capture template is filed as a sibling, and > not a child. I have spent some time now on this seemingly simple > problem, but being a newbie on elisp I must admit I'm stuck.
I'm messing about with some similar template-placement routines, so I tried your recipe below, and it worked for me... Capture by default will create a child of the heading point is on, so I really don't see why this wouldn't work. You've stepped through the function and confirmed that the (goto-char (point-at-bol)) line leaves you at the "Log" heading? Is the tree structure folded or open at the time? You might try an (org-reveal) after the (org-clock-goto); I'm still not really clear on the interaction between visibility and heading insertion. I think you're note about "if cursor is at beginning of headline, same level used" doesn't really apply here, as the capture process does a lot more than just pasting a subtree. Anyway, I can't reproduce the problem -- do try messing with visibility... Eric