* Generating the filename from name and file-ext for blocks with side-effects
@ 2024-12-23 21:58 Aitenate
2024-12-25 15:30 ` Ihor Radchenko
0 siblings, 1 reply; 3+ messages in thread
From: Aitenate @ 2024-12-23 21:58 UTC (permalink / raw)
To: emacs-orgmode
With ~:results file~, the absence of ~:file~ will cause the filename to
be constructed from the block name and ~:file-ext~, if they are both
present. To achieve that with ~:results file link~, I could only come up
with
~:var outFile=(alist-get :file (nth 2 (org-babel-get-src-block-info
't)))~
Have I missed something obvious? Is there a better way to do this?
If there isn't, would it be acceptable to add something like
`org-babel-get-src-block-param-value' or maybe more specific like
`org-babel-get-src-block-results-file-name'?
Regards,
Aitenate
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Generating the filename from name and file-ext for blocks with side-effects
2024-12-23 21:58 Generating the filename from name and file-ext for blocks with side-effects Aitenate
@ 2024-12-25 15:30 ` Ihor Radchenko
2024-12-25 19:03 ` Aitenate
0 siblings, 1 reply; 3+ messages in thread
From: Ihor Radchenko @ 2024-12-25 15:30 UTC (permalink / raw)
To: Aitenate; +Cc: emacs-orgmode
Aitenate <aitenate@outlook.com> writes:
> With ~:results file~, the absence of ~:file~ will cause the filename to
> be constructed from the block name and ~:file-ext~, if they are both
> present. To achieve that with ~:results file link~, I could only come up
> with
>
> ~:var outFile=(alist-get :file (nth 2 (org-babel-get-src-block-info
> 't)))~
Seems right, but I do not understand why you would need such thing.
--
Ihor Radchenko // yantar92,
Org mode maintainer,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Generating the filename from name and file-ext for blocks with side-effects
2024-12-25 15:30 ` Ihor Radchenko
@ 2024-12-25 19:03 ` Aitenate
0 siblings, 0 replies; 3+ messages in thread
From: Aitenate @ 2024-12-25 19:03 UTC (permalink / raw)
To: Ihor Radchenko; +Cc: emacs-orgmode
On 25/12/2024 15:30, Ihor Radchenko wrote:
> Aitenate <aitenate@outlook.com> writes:
>
>> With ~:results file~, the absence of ~:file~ will cause the filename to
>> be constructed from the block name and ~:file-ext~, if they are both
>> present. To achieve that with ~:results file link~, I could only come up
>> with
>>
>> ~:var outFile=(alist-get :file (nth 2 (org-babel-get-src-block-info
>> 't)))~
>
> Seems right, but I do not understand why you would need such thing.
>
The aim is to not need to define a filename for each image, to minimise
the boilerplate. Org has a mechanism for this, but it only works when
Org creates the file.
Using a combination of noweb and file header arguments, with a property
drawer, I was able to have each code block only require a unique name
and the image code. That is except, because the image library creates
the file, I need to specify a var to give a filename. Hence, I poked
around until I found a way to use the computed filename.
While I'm happy with the solution I found, as a novice Org user, it
seemed like I needed to reach into undocumented internals to do this. So
I queried this, partly to understand if there was a better way, and
partly to see if it was worth providing a better way or at least
documenting a method.
Based on your response, maybe I'm doing something unusual. In which
case, it's not surprising I couldn't find a more obvious way.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-12-25 19:09 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-23 21:58 Generating the filename from name and file-ext for blocks with side-effects Aitenate
2024-12-25 15:30 ` Ihor Radchenko
2024-12-25 19:03 ` Aitenate
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).