aboutsummaryrefslogtreecommitdiffstats
path: root/routers/api/v1
diff options
context:
space:
mode:
authorzeripath <art27@cantab.net>2020-05-24 09:14:26 +0100
committerGitHub <noreply@github.com>2020-05-24 09:14:26 +0100
commit814ca9ffea229f55f1f69b34d9a7f84054115669 (patch)
tree1d6fcfaaa7035a42d6d489c1c57987a645e20615 /routers/api/v1
parent3761bdb640f1aeb9c68b3b491640eb9b0f9f9b0e (diff)
downloadgitea-814ca9ffea229f55f1f69b34d9a7f84054115669.tar.gz
gitea-814ca9ffea229f55f1f69b34d9a7f84054115669.zip
Allow different HardBreaks settings for documents and comments (#11515)
GH has different HardBreaks behaviour for markdown comments and documents. Comments have hard breaks and documents have soft breaks - therefore Gitea's rendering will always be different from GH's if we only provide one setting. Here we split the setting in to two - one for documents and one for comments and other things. Signed-off-by: Andrew Thornton art27@cantab.net Changes to index.js as per @silverwind Co-authored-by: silverwind <me@silverwind.io> Changes to docs as per @guillep2k Co-authored-by: guillep2k <18600385+guillep2k@users.noreply.github.com>
Diffstat (limited to 'routers/api/v1')
-rw-r--r--routers/api/v1/misc/markdown.go14
-rw-r--r--routers/api/v1/misc/markdown_test.go2
2 files changed, 13 insertions, 3 deletions
diff --git a/routers/api/v1/misc/markdown.go b/routers/api/v1/misc/markdown.go
index 5a44db5e8b..a10c288df4 100644
--- a/routers/api/v1/misc/markdown.go
+++ b/routers/api/v1/misc/markdown.go
@@ -48,10 +48,12 @@ func Markdown(ctx *context.APIContext, form api.MarkdownOption) {
}
switch form.Mode {
+ case "comment":
+ fallthrough
case "gfm":
md := []byte(form.Text)
urlPrefix := form.Context
- var meta map[string]string
+ meta := map[string]string{}
if !strings.HasPrefix(setting.AppSubURL+"/", urlPrefix) {
// check if urlPrefix is already set to a URL
linkRegex, _ := xurls.StrictMatchingScheme("https?://")
@@ -61,7 +63,15 @@ func Markdown(ctx *context.APIContext, form api.MarkdownOption) {
}
}
if ctx.Repo != nil && ctx.Repo.Repository != nil {
- meta = ctx.Repo.Repository.ComposeMetas()
+ // "gfm" = Github Flavored Markdown - set this to render as a document
+ if form.Mode == "gfm" {
+ meta = ctx.Repo.Repository.ComposeDocumentMetas()
+ } else {
+ meta = ctx.Repo.Repository.ComposeMetas()
+ }
+ }
+ if form.Mode == "gfm" {
+ meta["mode"] = "document"
}
if form.Wiki {
_, err := ctx.Write([]byte(markdown.RenderWiki(md, urlPrefix, meta)))
diff --git a/routers/api/v1/misc/markdown_test.go b/routers/api/v1/misc/markdown_test.go
index 264a6010f9..6c81ec8eb4 100644
--- a/routers/api/v1/misc/markdown_test.go
+++ b/routers/api/v1/misc/markdown_test.go
@@ -94,7 +94,7 @@ Here are some links to the most important topics. You can find the full list of
<p><strong>Wine Staging</strong> on website <a href="http://wine-staging.com" rel="nofollow">wine-staging.com</a>.</p>
<h2 id="user-content-quick-links">Quick Links</h2>
<p>Here are some links to the most important topics. You can find the full list of pages at the sidebar.</p>
-<p><a href="` + AppSubURL + `wiki/Configuration" rel="nofollow">Configuration</a><br/>
+<p><a href="` + AppSubURL + `wiki/Configuration" rel="nofollow">Configuration</a>
<a href="` + AppSubURL + `wiki/raw/images/icon-bug.png" rel="nofollow"><img src="` + AppSubURL + `wiki/raw/images/icon-bug.png" title="icon-bug.png" alt="images/icon-bug.png"/></a></p>
`,
// Guard wiki sidebar: special syntax