From 86bad4482443d706d854a7c87538dde2080fe923 Mon Sep 17 00:00:00 2001 From: silverwind Date: Wed, 29 Oct 2025 19:11:44 +0100 Subject: [PATCH 1/8] Improve markup code preview rendering --- templates/base/markup_codepreview.tmpl | 4 ++-- web_src/css/markup/codepreview.css | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/templates/base/markup_codepreview.tmpl b/templates/base/markup_codepreview.tmpl index a1a4f26b47..bd789a353f 100644 --- a/templates/base/markup_codepreview.tmpl +++ b/templates/base/markup_codepreview.tmpl @@ -1,7 +1,7 @@
- {{.FilePath}} - {{$link := HTMLFormat `%s` .RepoLink .CommitID (.CommitID | ShortSha) -}} + {{.FilePath}} + {{$link := HTMLFormat `%s` .RepoLink .CommitID (.CommitID | ShortSha) -}} {{- if eq .LineStart .LineStop -}} {{ctx.Locale.Tr "repo.code_preview_line_in" .LineStart $link}} {{- else -}} diff --git a/web_src/css/markup/codepreview.css b/web_src/css/markup/codepreview.css index c9d19f5cc8..155bb5a74d 100644 --- a/web_src/css/markup/codepreview.css +++ b/web_src/css/markup/codepreview.css @@ -5,6 +5,7 @@ } .markup .code-preview-container .code-preview-header { + color: var(--color-text-light-1); border-bottom: 1px solid var(--color-secondary); padding: 0.5em; font-size: 12px; From b2e3bbf19df08ce7f11d920471e9b7d6f4733360 Mon Sep 17 00:00:00 2001 From: silverwind Date: Wed, 29 Oct 2025 19:14:37 +0100 Subject: [PATCH 2/8] link to commit --- templates/base/markup_codepreview.tmpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/base/markup_codepreview.tmpl b/templates/base/markup_codepreview.tmpl index bd789a353f..c839878e2e 100644 --- a/templates/base/markup_codepreview.tmpl +++ b/templates/base/markup_codepreview.tmpl @@ -1,7 +1,7 @@
{{.FilePath}} - {{$link := HTMLFormat `%s` .RepoLink .CommitID (.CommitID | ShortSha) -}} + {{$link := HTMLFormat `%s` .RepoLink .CommitID (.CommitID | ShortSha) -}} {{- if eq .LineStart .LineStop -}} {{ctx.Locale.Tr "repo.code_preview_line_in" .LineStart $link}} {{- else -}} From 8d0e11211138ecdc77b8d0ebee989c2cba79a6ae Mon Sep 17 00:00:00 2001 From: silverwind Date: Wed, 29 Oct 2025 19:24:44 +0100 Subject: [PATCH 3/8] add repo name --- services/markup/renderhelper_codepreview.go | 1 + templates/base/markup_codepreview.tmpl | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/services/markup/renderhelper_codepreview.go b/services/markup/renderhelper_codepreview.go index fa1eb824a2..44c0596dce 100644 --- a/services/markup/renderhelper_codepreview.go +++ b/services/markup/renderhelper_codepreview.go @@ -110,6 +110,7 @@ func renderRepoFileCodePreview(ctx context.Context, opts markup.RenderCodePrevie "FilePath": opts.FilePath, "LineStart": opts.LineStart, "LineStop": realLineStop, + "RepoName": opts.RepoName, "RepoLink": dbRepo.Link(), "CommitID": opts.CommitID, "HighlightLines": highlightLines, diff --git a/templates/base/markup_codepreview.tmpl b/templates/base/markup_codepreview.tmpl index c839878e2e..ac2d295ef9 100644 --- a/templates/base/markup_codepreview.tmpl +++ b/templates/base/markup_codepreview.tmpl @@ -1,6 +1,6 @@
- {{.FilePath}} + {{.RepoName}}/{{.FilePath}} {{$link := HTMLFormat `%s` .RepoLink .CommitID (.CommitID | ShortSha) -}} {{- if eq .LineStart .LineStop -}} {{ctx.Locale.Tr "repo.code_preview_line_in" .LineStart $link}} From fc5751ffbab618c4427847165bd13d09409cbdb4 Mon Sep 17 00:00:00 2001 From: silverwind Date: Wed, 29 Oct 2025 19:29:01 +0100 Subject: [PATCH 4/8] swap --- templates/base/markup_codepreview.tmpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/base/markup_codepreview.tmpl b/templates/base/markup_codepreview.tmpl index ac2d295ef9..16d75fae66 100644 --- a/templates/base/markup_codepreview.tmpl +++ b/templates/base/markup_codepreview.tmpl @@ -1,6 +1,6 @@
- {{.RepoName}}/{{.FilePath}} + {{.RepoName}}/{{.FilePath}} {{$link := HTMLFormat `%s` .RepoLink .CommitID (.CommitID | ShortSha) -}} {{- if eq .LineStart .LineStop -}} {{ctx.Locale.Tr "repo.code_preview_line_in" .LineStart $link}} From c1ff830c11a393f10125774fb354d6591dc8501e Mon Sep 17 00:00:00 2001 From: silverwind Date: Thu, 30 Oct 2025 02:53:32 +0100 Subject: [PATCH 5/8] try fix tests --- services/markup/renderhelper_codepreview_test.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/services/markup/renderhelper_codepreview_test.go b/services/markup/renderhelper_codepreview_test.go index ea945584b4..14ada12af9 100644 --- a/services/markup/renderhelper_codepreview_test.go +++ b/services/markup/renderhelper_codepreview_test.go @@ -31,8 +31,8 @@ func TestRenderHelperCodePreview(t *testing.T) { assert.NoError(t, err) assert.Equal(t, `
- /README.md - repo.code_preview_line_from_to:1,2,65f1bf27bc + repo1/README.md + repo.code_preview_line_from_to:1,2,65f1bf27bc
@@ -58,8 +58,8 @@ func TestRenderHelperCodePreview(t *testing.T) { assert.NoError(t, err) assert.Equal(t, `
- /README.md - repo.code_preview_line_in:1,65f1bf27bc + repo1/README.md + repo.code_preview_line_in:1,65f1bf27bc
From 58da585b7ebfd6dbe600d52044d08d7340c2703f Mon Sep 17 00:00:00 2001 From: silverwind Date: Thu, 30 Oct 2025 03:11:19 +0100 Subject: [PATCH 6/8] allow data-line-number on markup sanitizer --- modules/markup/sanitizer_default.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/modules/markup/sanitizer_default.go b/modules/markup/sanitizer_default.go index 0fbf0f0b24..7fdf66c4bc 100644 --- a/modules/markup/sanitizer_default.go +++ b/modules/markup/sanitizer_default.go @@ -30,6 +30,9 @@ func (st *Sanitizer) createDefaultPolicy() *bluemonday.Policy { // Chroma always uses 1-2 letters for style names, we could tolerate it at the moment policy.AllowAttrs("class").Matching(regexp.MustCompile(`^\w{0,2}$`)).OnElements("span") + // Line numbers on codepreview + policy.AllowAttrs("data-line-number").OnElements("span") + // Custom URL-Schemes if len(setting.Markdown.CustomURLSchemes) > 0 { policy.AllowURLSchemes(setting.Markdown.CustomURLSchemes...) From cb8be2e50a89e7a74117bd31d5fb551417e489ac Mon Sep 17 00:00:00 2001 From: silverwind Date: Thu, 30 Oct 2025 03:25:50 +0100 Subject: [PATCH 7/8] fix broken tests --- services/markup/renderhelper_codepreview_test.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/services/markup/renderhelper_codepreview_test.go b/services/markup/renderhelper_codepreview_test.go index 14ada12af9..0d15171a87 100644 --- a/services/markup/renderhelper_codepreview_test.go +++ b/services/markup/renderhelper_codepreview_test.go @@ -32,7 +32,7 @@ func TestRenderHelperCodePreview(t *testing.T) { assert.Equal(t, `
repo1/README.md - repo.code_preview_line_from_to:1,2,65f1bf27bc + repo.code_preview_line_from_to:1,2,65f1bf27bc
@@ -52,14 +52,14 @@ func TestRenderHelperCodePreview(t *testing.T) { OwnerName: "user2", RepoName: "repo1", CommitID: "65f1bf27bc3bf70f64657658635e66094edbcb4d", - FilePath: "/README.md", + FilePath: "README.md", LineStart: 1, }) assert.NoError(t, err) assert.Equal(t, `
repo1/README.md - repo.code_preview_line_in:1,65f1bf27bc + repo.code_preview_line_in:1,65f1bf27bc
@@ -76,7 +76,7 @@ func TestRenderHelperCodePreview(t *testing.T) { OwnerName: "user15", RepoName: "big_test_private_1", CommitID: "65f1bf27bc3bf70f64657658635e66094edbcb4d", - FilePath: "/README.md", + FilePath: "README.md", LineStart: 1, LineStop: 10, }) From 5b40a23926efc412010d6af63e82a6abe10267fa Mon Sep 17 00:00:00 2001 From: silverwind Date: Thu, 30 Oct 2025 03:43:05 +0100 Subject: [PATCH 8/8] more fixes --- services/markup/renderhelper_codepreview_test.go | 2 +- templates/base/markup_codepreview.tmpl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/services/markup/renderhelper_codepreview_test.go b/services/markup/renderhelper_codepreview_test.go index 0d15171a87..63e7f4d3bd 100644 --- a/services/markup/renderhelper_codepreview_test.go +++ b/services/markup/renderhelper_codepreview_test.go @@ -24,7 +24,7 @@ func TestRenderHelperCodePreview(t *testing.T) { OwnerName: "user2", RepoName: "repo1", CommitID: "65f1bf27bc3bf70f64657658635e66094edbcb4d", - FilePath: "/README.md", + FilePath: "README.md", LineStart: 1, LineStop: 2, }) diff --git a/templates/base/markup_codepreview.tmpl b/templates/base/markup_codepreview.tmpl index 16d75fae66..e16848581d 100644 --- a/templates/base/markup_codepreview.tmpl +++ b/templates/base/markup_codepreview.tmpl @@ -1,7 +1,7 @@
{{.RepoName}}/{{.FilePath}} - {{$link := HTMLFormat `%s` .RepoLink .CommitID (.CommitID | ShortSha) -}} + {{$link := HTMLFormat `%s` .RepoLink .CommitID (.CommitID | ShortSha) -}} {{- if eq .LineStart .LineStop -}} {{ctx.Locale.Tr "repo.code_preview_line_in" .LineStart $link}} {{- else -}}