summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibMarkdown/List.cpp
AgeCommit message (Collapse)Author
2022-04-01Everywhere: Run clang-formatIdan Horowitz
2022-02-17LibMarkdown: Add additional spacing for terminal renderingxSlendiX
This patch adds spacing to give a sense of structure to markdown documents viewed in the terminal. This also makes the content easier to read.
2021-11-11Everywhere: Pass AK::StringView by valueAndreas Kling
2021-10-10LibMarkdown: Implement introspection of the document treeBen Wiederhake
2021-10-09LibMarkdown: Have one newline between lists in terminal rendersDavid Isaksson
Before this patch the markdown lists would have two space inbetween each item. This patch removes one of these newlines for a nicer render.
2021-10-06LibMarkdown: Add blockquote support to LineIteratorPeter Elliott
This patch adds contexts to line iterator for nesting list items and blockquotes. It also incidentally makes the api for LineIterator simpler, and will make it easier to add other containers in the future.
2021-10-05LibMarkdown: Add start numbers for ordered listsPeter Elliott
5. hey -> <ol start="5"><li>hey</li></ol>
2021-10-05LibMarkdown: Allow spaces before list itemsPeter Elliott
also allow '+' as an unordered list marker
2021-10-05LibMarkdown: Implement "tightness" for listsPeter Elliott
From the commonmark spec: A list is loose if any of its constituent list items are separated by blank lines, or if any of its constituent list items directly contain two block-level elements with a blank line between them. Otherwise a list is tight. (The difference in HTML output is that paragraphs in a loose list are wrapped in <p> tags, while paragraphs in a tight list are not.)
2021-10-05LibMarkdown: Allow non-text items in ListsPeter Elliott
2021-10-05LibMarkdown: Add LineIteratorPeter Elliott
LineIterator wraps a vector's ConstIterator, to provide an iterator that can work on indented container blocks (like lists and blockquotes).
2021-09-12LibMarkdown: Rewrite Inline text parser to be more forgivingPeter Elliott
The previous Text::parse was not able to give up on parsing a textual element, and just leave it as plain text. Because this is a very important part of markdown, I fully rewrote the parser to support this without having to backtrack. Also the parser now some other little features, such ast delimiter runs and flanking.
2021-08-31LibMarkdown: Match HTML formatting of Commonmark testsPeter Elliott
This patch changes the HTML formatting (where to put newlines, etc...) to better match commonmark's test cases. This has minimal effect of the correctness of our markdown implementation, but makes it easier to test. Changes: - Use <em> instead of <i>. - Newline before end of code block. - <hr /> instead of <hr>. - Newline before first list item. - Newline between lines of a paragraph. - Trim whitespace on lines of paragraphs. Tests passed: 33/652 -> 87/652
2021-05-05LibMarkdown: Convert a bunch of StringBuilder::appendf() => appendff()Andreas Kling
2021-04-22Everything: Move to SPDX license identifiers in all files.Brian Gianforcaro
SPDX License Identifiers are a more compact / standardized way of representing file license information. See: https://spdx.dev/resources/use/#identifiers This was done with the `ambr` search and replace tool. ambr --no-parent-ignore --key-from-file --rep-from-file key.txt rep.txt *
2021-02-23Everywhere: Rename ASSERT => VERIFYAndreas Kling
(...and ASSERT_NOT_REACHED => VERIFY_NOT_REACHED) Since all of these checks are done in release builds as well, let's rename them to VERIFY to prevent confusion, as everyone is used to assertions being compiled out in release. We can introduce a new ASSERT macro that is specifically for debug checks, but I'm doing this wholesale conversion first since we've accumulated thousands of these already, and it's not immediately obvious which ones are suitable for ASSERT.
2021-01-12Libraries: Move to Userland/Libraries/Andreas Kling