Hello,

John Magolske <listm...@b79.net> writes:

> I'd like to enter some in-line literal code in an org document
> covering OCaml. For example, in this:
>
>     in the expression (x +. y) the +. is a function ...
>
> to show in-line code as literal I tried:
>
>     in the expression =(x +. y)= the =+.= is a function ...
>
> being under the impression that bracketing text with = would enclose
> everything within to be literal. But what's happening -- as evidenced
> by syntax coloring -- is that the first and second + characters here
> create a strike-through region from the middle of one literal region
> to the middle of the other. With (setq org-hide-emphasis-markers t)

It happens because syntax coloring is a bit dumb. It uses regexps but
not the parser. However, if you try, e.g., to export the document, the
plus signs will not be treated as markers.

> Is there some way to get the + to show up as literal within in-line
> sections enclosed by = or ~ ? I suppose I could do something like:
>
>     in the expression src_ocaml{(a +. b)} the src_ocaml{(+.)} is a function 
> ...
>
> But was hoping to use the more succinct = or ~ syntax.

You could insert a zero-width space between "+" and ".", in either or
both occurrences.

> Also tried to remove strike-through emphasis altogether by commenting
> out the strike-through section in org-emphasis-alist like so:
>
> (setq org-emphasis-alist
>       (quote
>        (("*" bold)
>         ("/" italic)
>         ("_" underline)
>         ("=" org-verbatim verbatim)
>         ("~" org-code verbatim)
>         ("+" nil)
>         ;; ("+" (:strike-through t))
>         )))
>
> Then re-started Emacs, but am still having the above issues.

You could try to remove ("+" ...) completely from the variable and
restart Emacs.

Regards,

-- 
Nicolas Goaziou

Reply via email to