outline icon indicating copy to clipboard operation
outline copied to clipboard

Incompatible LaTeX syntax

Open dreamerblue opened this issue 11 months ago • 3 comments

To Reproduce Steps to reproduce the behavior:

  1. input regular inline/block LaTeX or copy markdown text containing LaTeX from other editors.
  2. Outline doesn't use the general LaTeX syntax ($ for inline, $$ for block) to render.

Expected behavior use $ for inline, $$ for block. This is the widely used LaTeX syntax. Please DO NOT use custom syntax like $$ or $$$, which is not compatible.

Outline's custom syntax is not recognized by most other markdown editors when copying from other editors or pre-existing markdown documents for import, or export to markdown. This caused a lot of problems for us.

The biggest issues at hand are:

  1. LaTeX texts not recognized correctly if imported from a document source of another specification, and Outlint doesn't have any automatic conversion to fix it image

  2. if working on Outline and using custom syntax $$ and $$$ to get a superficially acceptable rendering, when exporting as markdown and distributing it on other platforms, the exported markdown still retains the $$ and $$$, which cannot render correctly on other platforms. image

Outline (please complete the following information):

  • Install: [self hosted]
  • Version: [7685637729b167701c3bd8921ceeb144e29e6e71] (0.75.2)

Expected solution

Deprecate the custom syntax and use the general $/$$ to render LaTeX, including typing, copying and pasting, importing documents and exporting to markdown.

Test cases

### Inline

$x = y$

### Block

$$
y = x
$$

Wrong render result: copy and paste to Outline

image

Correct result: from popular markdown editors like Typora

image

Another correct result: GitHub's built-in markdown renderer

Inline

$x = y$

Block

$$ y = x $$

dreamerblue avatar Mar 07 '24 03:03 dreamerblue

Deprecate the custom syntax and use the general $/$$ to render LaTeX, including typing, copying and pasting, importing documents and exporting to markdown.

Originally we used the standard syntax, however there were too many false positives with dollar signs in paragraphs being detected and converted to Latex blocks. Once #3000 is resolved we should be able to move back to the standard syntax as it would only be parsed on import/export instead of every render as it is today

tommoor avatar Mar 22 '24 01:03 tommoor

Thanks for your reply. I agree with the refactoring of #3000, which will allow Outline to extend its functionality even more.

In the case of pasting markdown source into an editor, due to Outline's history and the fact that it has defined trigger symbols for many syntaxes that are different from markdown, it's understandable that it won't be automatically recognized as markdown when pasting because the editor is not a markdown editor semantically.

We should be responsible for converting $ and $$ to Outline's inline and block formula (like $$ and $$$) when importing markdown source to make it the correct result. The same is true for exporting. So maybe the key point of this issue is to fix the import/export issue.

dreamerblue avatar Mar 22 '24 03:03 dreamerblue

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment or this will be closed in 5 days

github-actions[bot] avatar Jul 21 '24 01:07 github-actions[bot]

Automatically closed due to inactivity

github-actions[bot] avatar Jul 27 '24 01:07 github-actions[bot]