Arthur Miller <arthur.mil...@live.com> writes: >> Bruno Barbier <brubar...@gmail.com> writes: >> If you really want to just get the piece of text, you might be able to >> use the hook `org-capture-mode-hook' to replace the key binding to >> 'C-c C-c' in the capture buffer, so that it calls your own function that >> will take the string and call `org-capture-kill'. > > In this case you wouldn't like to replace the key binding, it would affect all > org-capture buffers; the point is just to replace it when called in certain > context (my-read-line). Let-binding the function in this context achieves > exactly the same effect of C-c C-c beng bound to my function but without > affecting all org-capture-buffers.
The hook `org-capture-mode-hook' will be run in your special capture buffer. You can override the "C-c C-c" binding only there. > > Yes, I am aware of both hooks and advising; but again, with those I would > affect > all uses of the function, and that would lead to checking some global state or > variable to switch on, which is not optimal either. With let-binding we can > have > different behaviour only in a certain context. Even if I could let bind the function at the right time, I would avoid that solution, as I can't garantuee that this global hack will not break other parts of Emacs (other captures, output filters, threads, timers, etc.). > > Anyway, thanks, I needed the reminder above. You're welcome. Bruno