diff options
author | Brecht Van Lommel <brecht@blender.org> | 2023-03-24 07:12:23 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-24 14:12:23 +0800 |
commit | 84daddc2fa74393cdc13371b0cc44f0444cfdae0 (patch) | |
tree | eaf75d3173ee67d65288accef86bbb7c6c08535e /modules/markup | |
parent | 9e04627acaaa853e5269f98f53f2615077cfb028 (diff) | |
download | gitea-84daddc2fa74393cdc13371b0cc44f0444cfdae0.tar.gz gitea-84daddc2fa74393cdc13371b0cc44f0444cfdae0.zip |
Editor preview support for external renderers (#23333)
Remove `[repository.editor] PREVIEWABLE_FILE_MODES` setting that seemed
like it was intended to support this but did not work. Instead, whenever
viewing a file shows a preview, also have a Preview tab in the file
editor.
Add new `/markup` web and API endpoints with `comment`, `gfm`,
`markdown` and new `file` mode that uses a file path to determine the
renderer.
Remove `/markdown` web endpoint but keep the API for backwards and
GitHub compatibility.
## ⚠️ BREAKING ⚠️
The `[repository.editor] PREVIEWABLE_FILE_MODES` setting was removed.
This setting served no practical purpose and was not working correctly.
Instead a preview tab is always shown in the file editor when supported.
---------
Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Diffstat (limited to 'modules/markup')
-rw-r--r-- | modules/markup/renderer.go | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/modules/markup/renderer.go b/modules/markup/renderer.go index df2c9ebfc6..e934aed925 100644 --- a/modules/markup/renderer.go +++ b/modules/markup/renderer.go @@ -283,6 +283,11 @@ type ErrUnsupportedRenderExtension struct { Extension string } +func IsErrUnsupportedRenderExtension(err error) bool { + _, ok := err.(ErrUnsupportedRenderExtension) + return ok +} + func (err ErrUnsupportedRenderExtension) Error() string { return fmt.Sprintf("Unsupported render extension: %s", err.Extension) } @@ -317,3 +322,11 @@ func IsMarkupFile(name, markup string) bool { } return false } + +func PreviewableExtensions() []string { + extensions := make([]string, 0, len(extRenderers)) + for extension := range extRenderers { + extensions = append(extensions, extension) + } + return extensions +} |