See below.

> On Sep 29, 2020, at 11:53 AM, Richard Lawrence <wyle...@gmail.com> wrote:
> 
> "Berry, Charles" <ccbe...@health.ucsd.edu> writes:
> 
>> The case Gutin describes conforms to the documentation, viz. `$x\beta$-` 
>> should produce math mode LaTeX as I read the next paragraph. 
>> 
>> From (info "(org) LaTeX fragments"):
>> 
>>   • Text within the usual LaTeX math delimiters.  To avoid conflicts
>>     with currency specifications, single ‘$’ characters are only
>>     recognized as math delimiters if the enclosed text contains at most
>>     two line breaks, is directly attached to the ‘$’ characters with no
>>     whitespace in between, and if the closing ‘$’ is followed by
>>     whitespace, punctuation or a dash.
> 
> Hmm, good point.
> 
> It looks to me like the relevant function is
> org-element-latex-fragment-parser, and the code for that hasn't changed
> much in several years (last change was 2017). (Also, I was wrong,
> parsing latex fragments is not done with just a regexp.) I can confirm
> that this function parses "$foo" in "$foo$ bar" as a latex fragment, but
> not in "$foo$-bar"
> 
> Not sure if the problem here is the code or the documentation. Perhaps
> the documentation should be updated to reflect the current behavior?
> 

Using 

"\\(-\\|\\s.\\|\\s-\\|\\s(\\|\\s)\\|\\s\"\\|'\\|$\\)"

as the regexp for the `looking-at-p` seems to resolve this. To save you some 
eyestrain, there is "-\\|" added near the beginning right after "\\(" to match 
the trailing dash.

Per (info (elisp) "Syntax Class Table"), neither \\s. nor \\s- include the 
dash. \\s_ includes dash, but also $, so that seems like trouble. 

Caveat: I've not run `make test`, so am unsure if there is a subtle gotcha 
hidden here.

HTH,

Chuck

Reply via email to