Re: Problem when tangling source blocks with custom coderefs

2022-11-09 Thread Ihor Radchenko
Luis Osa  writes:

> I would like to tangle source code blocks that contain coderefs. I have
> found that the coderefs are correctly filtered out from the tangled files
> if they follow the default format, i.e. "(ref:%s)", but not if I try to
> customize the format using the documented "-l" switch [1] to change them to
> something else, e.g. "|%s|".

I have looked through the ML archives and a similar issue appears to be
fixed already. See
https://orgmode.org/list/878s5rt81v@nicolasgoaziou.fr

> Here is an example:
>
> #+begin_src python -r -l "|%s|" :tangle example.py
> try:
> sys.exit(app.run())
> except:|\label{line:except}\ding{182}|
> sys.exit(1)
> #+end_src
>
> In line \ref{line:except}, marked \ding{182}, we are catching all
> exceptions ...

Note that we only allow _-A-Za-z0-9 in the labels. So, your example will
not work even after the fix.

Not sure if we need to do anything about this.

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at .
Support Org development at ,
or support my work at 



Re: Problem when tangling source blocks with custom coderefs

2022-10-23 Thread Ihor Radchenko
Tom Gillespie  writes:

>I don't think you are doing anything wrong. IIRC the portion of the
> patch that allowed the customization to propagate to the tangled code
> was not included. Given that I am no longer the only one who is
> looking for/expecting this behavior, maybe it is worth revisiting the
> decision. The simplest fix right now would be to prepend your coderef
> with the python comment symbols # |hello| so that at the very least it
> won't break your tangled files. I would like to see this implemented,
> so let's see what Nicolas has to say. Best!

Could you please provide a link to the relevant discussion?

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at .
Support Org development at ,
or support my work at 



Re: Problem when tangling source blocks with custom coderefs

2022-01-19 Thread Luis Osa
Hi Tom,

The simplest fix right now would be to prepend your coderef
> with the python comment symbols # |hello| so that at the very least it
> won't break your tangled files.


Actually, that is exactly what I have done as a quick fix. It has a minor
inconvenience: anything else included on the line is colored as if it were
a comment in the final PDF, and I intended to add a symbol to mark the
reference. Not a big deal, but it looks different than intended.

I would like to see this implemented,
> so let's see what Nicolas has to say.


I would like to contribute something. Maybe a test to show what is the
behavior to expect. Thanks for your reassurance that this is not an error
on my side!


Re: Problem when tangling source blocks with custom coderefs

2022-01-18 Thread Tom Gillespie
Hi Luis,
   I don't think you are doing anything wrong. IIRC the portion of the
patch that allowed the customization to propagate to the tangled code
was not included. Given that I am no longer the only one who is
looking for/expecting this behavior, maybe it is worth revisiting the
decision. The simplest fix right now would be to prepend your coderef
with the python comment symbols # |hello| so that at the very least it
won't break your tangled files. I would like to see this implemented,
so let's see what Nicolas has to say. Best!
Tom



Problem when tangling source blocks with custom coderefs

2022-01-18 Thread Luis Osa
Dear all,

I would like to tangle source code blocks that contain coderefs. I have
found that the coderefs are correctly filtered out from the tangled files
if they follow the default format, i.e. "(ref:%s)", but not if I try to
customize the format using the documented "-l" switch [1] to change them to
something else, e.g. "|%s|".

Here is an example:

#+begin_src python -r -l "|%s|" :tangle example.py
try:
sys.exit(app.run())
except:|\label{line:except}\ding{182}|
sys.exit(1)
#+end_src

In line \ref{line:except}, marked \ding{182}, we are catching all
exceptions ...

After using `org-babel-tangle`, I would expect `example.py` to not have any
of the text between the `||` characters, but it is there and it makes the
file invalid to run.

I have found a thread in this mail list [2] where the coderef format used
during tangle is streamlined to use the function `org-src-coderef-regexp`.
That seems to be correct, but the behavior I am seeing does not recognize
the custom format correctly. Can someone please tell me if I am doing
something wrong? Or is that function not doing what it is intended to do?

I am running Org mode version 9.6 on top of GNU Emacs 27.2.

Thank you,
  Luis

References:
[1] https://orgmode.org/manual/Literal-Examples.html
[2]
https://list.orgmode.org/ca+g3_ponzfmfb-upuce3jzpw5fvsbjztecco4uktoa9neuu...@mail.gmail.com/#R