Re: [O] Questions about using macro replacement
Answering without full knowledge! Thank you so much for the reply - your reply gave me several ideas. I think Q1 and Q3 are solved, but I still have no idea how to do Q2 or if it is possible. Q1, I figured it out and started using it - the {{{n}}} macros are awesome! 2. I was wondering if it is possible use macro expansion for :EXPORT_FILE_NAME: property of a subtree? Since macros can be set to expand to arbitrary elisp, I would think this *should* be possible. I forget the syntax but something like: #+MACRO: efn (eval (get-export-file-name)) #+BEGIN_SRC emacs-lisp (defun get-export-file-name () (org-element-property :export-file-name (org-element--current-element) )) #+END_SRC * some heading :PROPERTIES :EXPORT_FILE_NAME: test-me :END: will get you somewhat close. I don't understand the org-element api very well though and it generally takes me a few tries to get this sort of thing right. With this one, I was actually looking for using macros inside :EXPORT_FILE_NAME: property. Ultimately what I want to do is: * some heading :PROPERTIES: :EXPORT_FILE_NAME: {{{n('class',1)}}} test-me :END: However, it did not work, as the file name became literal {{{n('class',1)}}} test-me.pdf. 3. Is it possible to create a file link which uses macro? I would like to create a link to the exported pdf file dynamically. For example, if the value of :EXPORT_FILE_NAME: is exported, how would I create a link which automatically link to exported.pdf? I don't think a macro will do this for you since, if I understand correctly, macros are not aware of the export target. So probably you would need some other mechanism to od this. I figured it out using elisp link: elisp:(org-open-link-from-string (concat "file:./" (org-entry-get nil "EXPORT_FILE_NAME") ".pdf")) Best Regards, Joon
Re: [O] Questions about using macro replacement
Answering without full knowledge! On Wed, Aug 23, 2017 at 11:13 PM, Joon Rowrote: > Hi, > > I have several questions about macro replacement usage. > > 1. I saw people using {{{n}}} macros, which looks very useful, but I could > not find it in current documentation about macro replacement ( > http://orgmode.org/manual/Macro-replacement.html). Is this only available > in developmental version? > > Yes, I'm pretty sure this has not been merged yet 2. I was wondering if it is possible use macro expansion > for :EXPORT_FILE_NAME: property of a subtree? > Since macros can be set to expand to arbitrary elisp, I would think this *should* be possible. I forget the syntax but something like: #+MACRO: efn (eval (get-export-file-name)) #+BEGIN_SRC emacs-lisp (defun get-export-file-name () (org-element-property :export-file-name (org-element--current-element) )) #+END_SRC * some heading :PROPERTIES :EXPORT_FILE_NAME: test-me :END: will get you somewhat close. I don't understand the org-element api very well though and it generally takes me a few tries to get this sort of thing right. 3. Is it possible to create a file link which uses macro? I would like to > create a link to the exported pdf file dynamically. For example, if the > value of :EXPORT_FILE_NAME: is exported, how would I create a link which > automatically link to exported.pdf? > I don't think a macro will do this for you since, if I understand correctly, macros are not aware of the export target. So probably you would need some other mechanism to od this. > > Any help would be greatly appreciated. Thank you! > Joon > >
[O] Questions about using macro replacement
Hi, I have several questions about macro replacement usage. 1. I saw people using {{{n}}} macros, which looks very useful, but I could not find it in current documentation about macro replacement (http://orgmode.org/manual/Macro-replacement.html). Is this only available in developmental version? 2. I was wondering if it is possible use macro expansion for :EXPORT_FILE_NAME: property of a subtree? 3. Is it possible to create a file link which uses macro? I would like to create a link to the exported pdf file dynamically. For example, if the value of :EXPORT_FILE_NAME: is exported, how would I create a link which automatically link to exported.pdf? Any help would be greatly appreciated. Thank you! Joon