diff options
Diffstat (limited to 'modules/template/template.go')
-rw-r--r-- | modules/template/template.go | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/modules/template/template.go b/modules/template/template.go index 6e9b15b9be..1b5e0a11ad 100644 --- a/modules/template/template.go +++ b/modules/template/template.go @@ -17,6 +17,7 @@ import ( "golang.org/x/net/html/charset" "golang.org/x/text/transform" + "gopkg.in/editorconfig/editorconfig-core-go.v1" "github.com/gogits/gogs/models" "github.com/gogits/gogs/modules/base" @@ -109,6 +110,15 @@ func NewFuncMap() []template.FuncMap { mimeType := mime.TypeByExtension(filepath.Ext(filename)) return strings.HasPrefix(mimeType, "image/") }, + "TabSizeClass": func(ec *editorconfig.Editorconfig, filename string) string { + if ec != nil { + def := ec.GetDefinitionForFilename(filename) + if def.TabWidth > 0 { + return fmt.Sprintf("tab-size-%d", def.TabWidth) + } + } + return "tab-size-8" + }, }} } |