[clang-tools-extra] abfa27e - [clangd] Fix markdown rendering in VSCode
Kadir Cetinkaya via cfe-commits
cfe-commits at lists.llvm.org
Fri Jan 10 00:51:29 PST 2020
Author: Kadir Cetinkaya
Date: 2020-01-10T09:51:20+01:00
New Revision: abfa27e4f04dd84774bcfe15783942e21be391a5
URL: https://github.com/llvm/llvm-project/commit/abfa27e4f04dd84774bcfe15783942e21be391a5
DIFF: https://github.com/llvm/llvm-project/commit/abfa27e4f04dd84774bcfe15783942e21be391a5.diff
LOG: [clangd] Fix markdown rendering in VSCode
Summary:
Eventough it is OK to have a new line without any preceding spaces in
some markdown specifications, VSCode requires two spaces before a new line to
break a line inside a paragraph.
Reviewers: sammccall, ilya-biryukov
Subscribers: MaskRay, jkorous, arphaman, usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D72462
Added:
Modified:
clang-tools-extra/clangd/FormattedString.cpp
clang-tools-extra/clangd/unittests/FormattedStringTests.cpp
Removed:
################################################################################
diff --git a/clang-tools-extra/clangd/FormattedString.cpp b/clang-tools-extra/clangd/FormattedString.cpp
index cfa1210a2ee6..1e61b8b5fb1e 100644
--- a/clang-tools-extra/clangd/FormattedString.cpp
+++ b/clang-tools-extra/clangd/FormattedString.cpp
@@ -196,7 +196,8 @@ void Paragraph::renderMarkdown(llvm::raw_ostream &OS) const {
}
// Paragraphs are translated into markdown lines, not markdown paragraphs.
// Therefore it only has a single linebreak afterwards.
- OS << '\n';
+ // VSCode requires two spaces at the end of line to start a new one.
+ OS << " \n";
}
void Paragraph::renderPlainText(llvm::raw_ostream &OS) const {
diff --git a/clang-tools-extra/clangd/unittests/FormattedStringTests.cpp b/clang-tools-extra/clangd/unittests/FormattedStringTests.cpp
index 3093ba2ce50d..825bf5bbd866 100644
--- a/clang-tools-extra/clangd/unittests/FormattedStringTests.cpp
+++ b/clang-tools-extra/clangd/unittests/FormattedStringTests.cpp
@@ -121,7 +121,7 @@ TEST(Document, Separators) {
D.addCodeBlock("test");
D.addParagraph().appendText("bar");
- const char ExpectedMarkdown[] = R"md(foo
+ const char ExpectedMarkdown[] = R"md(foo
```cpp
test
```
@@ -141,7 +141,7 @@ TEST(Document, Spacer) {
D.addParagraph().appendText("foo");
D.addSpacer();
D.addParagraph().appendText("bar");
- EXPECT_EQ(D.asMarkdown(), "foo\n\nbar");
+ EXPECT_EQ(D.asMarkdown(), "foo \n\nbar");
EXPECT_EQ(D.asPlainText(), "foo\n\nbar");
}
@@ -217,10 +217,10 @@ TEST(BulletList, Render) {
DeepDoc.addParagraph().appendText("baz");
EXPECT_EQ(L.asMarkdown(), R"md(- foo
- bar
-- foo
- baz
- - foo
- - baz
+- foo
+ baz
+ - foo
+ - baz
baz)md");
EXPECT_EQ(L.asPlainText(), R"pt(- foo
- bar
@@ -234,10 +234,10 @@ TEST(BulletList, Render) {
Inner.addParagraph().appendText("after");
EXPECT_EQ(L.asMarkdown(), R"md(- foo
- bar
-- foo
- baz
- - foo
- - baz
+- foo
+ baz
+ - foo
+ - baz
baz
after)md");
More information about the cfe-commits
mailing list