Ver Fonte

Fix unexpected rendering of README when it is not in Markdown

This patch also handles case when a file name looks like README
but is not a text file (e.g. image, PDF).
Unknwon há 8 anos atrás
pai
commit
8cb903fbbb

+ 1 - 1
README.md

@@ -3,7 +3,7 @@ Gogs - Go Git Service [![Build Status](https://travis-ci.org/gogits/gogs.svg?bra
 
 ![](https://github.com/gogits/gogs/blob/master/public/img/gogs-large-resize.png?raw=true)
 
-##### Current tip version: 0.9.116 (see [Releases](https://github.com/gogits/gogs/releases) for binary versions ~~or submit a task on [alpha stage automated binary building system](https://build.gogs.io/)~~)
+##### Current tip version: 0.9.117 (see [Releases](https://github.com/gogits/gogs/releases) for binary versions ~~or submit a task on [alpha stage automated binary building system](https://build.gogs.io/)~~)
 
 | Web | UI  | Preview  |
 |:-------------:|:-------:|:-------:|

+ 1 - 1
gogs.go

@@ -16,7 +16,7 @@ import (
 	"github.com/gogits/gogs/modules/setting"
 )
 
-const APP_VER = "0.9.116.0124"
+const APP_VER = "0.9.117.0125"
 
 func init() {
 	setting.AppVer = APP_VER

+ 3 - 1
modules/template/highlight/highlight.go

@@ -61,7 +61,9 @@ var (
 	}
 
 	// Extensions that are not same as highlight classes.
-	highlightMapping = map[string]string{}
+	highlightMapping = map[string]string{
+		".txt": "nohighlight",
+	}
 )
 
 func NewContext() {

+ 7 - 7
public/config.codekit

@@ -20,11 +20,11 @@
 		"outputPathIsOutsideProject": 0,
 		"outputPathIsSetByUser": 0
 		},
-	"\/css\/semantic-2.2.1.min.css": {
+	"\/css\/semantic-2.2.7.min.css": {
 		"fileType": 16,
-		"ignore": 0,
-		"ignoreWasSetByUser": 0,
-		"inputAbbreviatedPath": "\/css\/semantic-2.2.1.min.css",
+		"ignore": 1,
+		"ignoreWasSetByUser": 1,
+		"inputAbbreviatedPath": "\/css\/semantic-2.2.7.min.css",
 		"outputAbbreviatedPath": "No Output Path",
 		"outputPathIsOutsideProject": 0,
 		"outputPathIsSetByUser": 0
@@ -150,12 +150,12 @@
 		"outputStyle": 1,
 		"syntaxCheckerStyle": 1
 		},
-	"\/js\/semantic-2.2.1.min.js": {
+	"\/js\/semantic-2.2.7.min.js": {
 		"fileType": 64,
 		"ignore": 1,
 		"ignoreWasSetByUser": 1,
-		"inputAbbreviatedPath": "\/js\/semantic-2.2.1.min.js",
-		"outputAbbreviatedPath": "\/js\/min\/semantic-2.2.1.min-min.js",
+		"inputAbbreviatedPath": "\/js\/semantic-2.2.7.min.js",
+		"outputAbbreviatedPath": "\/js\/min\/semantic-2.2.7.min-min.js",
 		"outputPathIsOutsideProject": 0,
 		"outputPathIsSetByUser": 0,
 		"outputStyle": 1,

+ 5 - 1
public/css/gogs.css

@@ -1303,7 +1303,11 @@ footer .ui.language .menu {
   max-width: 100%;
 }
 .repository.file.list #file-content .view-raw img {
-  padding: 5px 5px 0 5px;
+  margin-bottom: -5px;
+}
+.repository.file.list #file-content .plain-text {
+  font-size: 14px;
+  padding: 10px 15px;
 }
 .repository.file.list #file-content .code-view * {
   font-size: 12px;

+ 5 - 1
public/less/_repository.less

@@ -247,10 +247,14 @@
 					max-width: 100%;
 				}
 				img {
-					padding: 5px 5px 0 5px;
+					margin-bottom: -5px;
 				}
 			}
 
+			.plain-text {
+				font-size: 14px;
+				padding: 10px 15px;
+			}
 			.code-view {
 				* {
 					font-size: 12px;

+ 2 - 4
routers/repo/view.go

@@ -79,9 +79,8 @@ func renderDirectory(ctx *context.Context, treeLink string) {
 		buf = buf[:n]
 
 		isTextFile := base.IsTextFile(buf)
-		ctx.Data["FileIsText"] = isTextFile
+		ctx.Data["IsTextFile"] = isTextFile
 		ctx.Data["FileName"] = readmeFile.Name()
-		// FIXME: what happens when README file is an image?
 		if isTextFile {
 			d, _ := ioutil.ReadAll(dataRc)
 			buf = append(buf, d...)
@@ -156,10 +155,9 @@ func renderFile(ctx *context.Context, entry *git.TreeEntry, treeLink, rawLink st
 		isMarkdown := markdown.IsMarkdownFile(blob.Name())
 		ctx.Data["IsMarkdown"] = isMarkdown
 
-		readmeExist := isMarkdown || markdown.IsReadmeFile(blob.Name())
+		readmeExist := isMarkdown && markdown.IsReadmeFile(blob.Name())
 		ctx.Data["ReadmeExist"] = readmeExist
 		if readmeExist {
-			// TODO: don't need to render if it's a README but not Markdown file.
 			ctx.Data["FileContent"] = string(markdown.Render(buf, path.Dir(treeLink), ctx.Repo.Repository.ComposeMetas()))
 		} else {
 			// Building code view blocks with line number on server side.

+ 1 - 1
templates/.VERSION

@@ -1 +1 @@
-0.9.116.0124
+0.9.117.0125

+ 2 - 2
templates/repo/view_file.tmpl

@@ -36,8 +36,8 @@
 		{{end}}
 	</h4>
 	<div class="ui attached table segment">
-		<div class="file-view {{if .IsMarkdown}}markdown{{else if .IsTextFile}}code-view{{end}} has-emoji">
-			{{if .IsMarkdown}}
+		<div class="file-view {{if .IsMarkdown}}markdown{{else if .ReadmeInList}}plain-text{{else if .IsTextFile}}code-view{{end}} has-emoji">
+			{{if or .IsMarkdown .ReadmeInList}}
 				{{if .FileContent}}{{.FileContent | Str2html}}{{end}}
 			{{else if not .IsTextFile}}
 				<div class="view-raw ui center">

+ 1 - 1
templates/repo/view_list.tmpl

@@ -52,6 +52,6 @@
 		{{end}}
 	</tbody>
 </table>
-{{if .ReadmeExist}}
+{{if and .ReadmeExist .IsTextFile}}
 	{{template "repo/view_file" .}}
 {{end}}