Stacks-Editor icon indicating copy to clipboard operation
Stacks-Editor copied to clipboard

Cannot use a `|` character in table header

Open collincchoy opened this issue 2 years ago • 0 comments

Describe the bug The stacks-editor overwrites/parses markdown when switching between preview and markdown views which is not allowing me to put a | character into a header. Some variations that I've tried:

  • Add \ to escape the pipes. the editor strips out my escapes.
  • Use the HTML character code |. This also gets parsed out and translated to just | which loses the escape
  • Combine the above 2 approaches - I\|Like\|\|Pipes Maybe we can escape the character code and escape the escapes! Toggling between markdown and preview modes progressively modifies the markdown source until the table is broken as in, it renders a proper table but shows I|Like||Pipes and then I|Like|Pipes and then broken table.
  • Try editing in the preview mode instead of the markdown. So build the table and then add the pipes in from the preview mode. Also doesn't work.

To Reproduce

  1. Try to create a table where one of the headers has a | in it. Example:
| Column1 | I\|Like\|Pipes |
| ------- | -------------- |
| tables  | r fun          |
  1. Switch to preview mode to ensure the escapes worked as I'd expect and see I|Like|Pipes in the preview.
  2. Either post or switch back to markdown view and see that the table no longer renders correctly.

Expected behavior I should be able to put a | character into a table header if I'd like either by escaping them or using |. I'd expect toggling between view modes not to produce different results.

Screenshots editor-table-pipe-bug

Desktop (please complete the following information):

  • OS: [e.g. iOS] Windows
  • Browser [e.g. chrome, safari] chrome
  • Version [e.g. 22] 107.0.5304.63

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version [e.g. 22]

Additional context

  • The old editor supported both escaping and |.
  • The loss of content between switching views seems related to https://github.com/StackExchange/Stacks-Editor/issues/151

collincchoy avatar Oct 26 '22 17:10 collincchoy