I have successfully used org-capture, and have many templates.

Recently I have written a new template, where I want the target to be the location from where I am calling the capture command.

I have tried many things, and the only way I have been able to get it to work is using the Target location: Current clocking task:. This works just the way I like, except for the fact that I have to start clocking in order to capture.

Is there a way I can still gain the same functionality, without the need for clocking?


You may be looking for this, from the org-capture doc:

When called with a ‘C-0’ (zero) prefix, insert a template at point.

So if you have org-capture bound to for example C-c c, then you could use C-0 C-c c to choose a capture template and insert in the current buffer.

You can always bind this to some other key sequence, if using a prefix isn't convenient. For example:

(defun org-capture-at-point ()
  "Insert an org capture template at point."
  (org-capture 0))

(global-set-key (kbd "C-c C-c") #'org-capture-at-point)
  • Thanks for the quick response. Somehow I am not able to enter C-0. When I do that, it is interpreted as C-u 0. Any ideas? – Shambho Feb 10 '17 at 1:26
  • Never mind. It works anyway. All I needed to do is change the Target location: from Current clocking task: to File and keep that field empty. – Shambho Feb 10 '17 at 1:30
  • As you found, C-0 is really just a more convenient binding for C-u 0. You can use C-u to enter any numeric prefix argument, but for 0-9 there are direct bindings. – glucas Feb 10 '17 at 14:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.