[LyX/master] fix get_quoted_value
José Matos
jaomatos at gmail.com
Thu Aug 15 12:03:22 UTC 2024
On Thu, 2024-08-15 at 13:07 +0200, Jürgen Spitzmüller wrote:
> My case was escaped quote as last content of the quoted string (e.g.,
> "\"" which returned \ rather than \")
>
That makes sense. :-)
> > BTW I usually prefer code that is more expressive:
> >
> > if val.startswith('"'):
> > val = val[1:]
> > if val.endswith('"'):
> > val = val[:-1]
>
> OK, will change that.
There is no need to change it. My purpose here is just to give these
comments on context. :-)
With all the work you did in lyx2lyx I am aware that you understand
clearly what is going on. My comment is more general.
Honestly here the code, in this context, makes more sense like this:
if val.startswith('"') and val.endswith('"'):
val = val[1:-1]
So it only makes sense to remove both at once. Again on practice the
cases where this fails should not happen, unless there is something
like
\"
where the last double quote will be wrongly removed. The issue is that,
in principle, lyx should never write this code.
Now pushing this even further the code could be
return val[1:-1] if val.startswith('"') and val.endswith('"') else val
This is similar to the C++ ?: operator. :-)
--
José Abílio
More information about the lyx-devel
mailing list