It must be a pain to make a text box with the ability to add bold, italic, heading, etc. you know? All the bold text, italics, and headings would need to be saved in a database column to be retrieved later in their correct positions.
I don’t know, I am doing internship learning C# ASP (started 2 months ago), and just got a “Shower Thought” while making an edit post function.
- douglasg14b ( @douglasg14b@programming.dev ) 14•3 months ago
There are markup languages for this purpose. And you store the rich text as normal text in that markup language. For the most part.
It’s typically an XML or XML-like language, or bb-codes. MS Word for example uses XML to store the markup data for the rich text.
Simpler and more limited text needs tend to use markdown these days, like Lemmy, or most text fields on GitHub.
There’s no need to include complex technology stacks into it!
Now the real hard part is the rendering engine for WYSIWYG. That’s a nightmare.
- montar ( @montar@lemmy.zip ) English0•3 months ago
Markdown has one huge adventage, if you remember bit of syntax you can type it right from your finger, it’s a great speedup for me. I personally prefer orgmode but noone uses that in XXI century.
- douglasg14b ( @douglasg14b@programming.dev ) 2•3 months ago
Yeah, but that’s not what we’re talking about here.
RTF has many more features than markdown can reasonably support, even with your personal, custom, syntaxes that no one else knows :/
I use markdown for everything, as much as possible, but in the context of creating a RTF WYSIWYG editor with non-trivial layout & styling needs it’s a no go.
- tunetardis ( @tunetardis@lemmy.ca ) English6•3 months ago
You mean like the comment fields we’re using right here on lemmy?
As others have pointed out, it’s usually some markdown that’s embedded within the text. Lemmy is using a format that’s actually called “markdown” if I’m not mistaken, or a slight variation/subset thereof.
I’ve gotten used to the double-star for bold and what not to the point that it annoys me when some message client or whatever doesn’t support it. I share code snippets with people fairly often, and the code markdown is particularly useful to maintain its legibility.
- blaue_Fledermaus ( @blaue_Fledermaus@mstdn.io ) 6•3 months ago
*Vietnam flashback from dealing with RTF*
- Joël de Bruijn ( @joeldebruijn@lemmy.ml ) 5•3 months ago
I came across something like that in a proprietary “epub” format. Not because of formatting/styling but because of crossreferencing and footnotes it stored every word in a database with its position.
- aubeynarf ( @aubeynarf@lemmynsfw.com ) 5•3 months ago
Yes, it is a huge pain, especially if you want to have round-trip interoperability with humans using markup. Wikipedia had a major challenge with this when they decided to add a rich text editor alongside wiki markup.
- Elise ( @xilliah@beehaw.org ) 4•3 months ago
Now also write the font rendering engine and you’re all set!
- Marek Knápek ( @MarekKnapek@programming.dev ) 2•3 months ago
You can always take a look how for example Windows 3.11 and earlier did it for their *.rtf file format and their “write.exe” editor / viewer / renderer (if you want to call it that way).