Fix code and ordered list style

This commit is contained in:
Naoki Takezoe
2015-09-20 04:45:46 +09:00
parent 667ef680c1
commit 8f7c5fc922
2 changed files with 31 additions and 19 deletions

View File

@@ -38,7 +38,8 @@ object MyBuild extends Build {
scalaVersion := ScalaVersion,
resolvers ++= Seq(
Classpaths.typesafeReleases,
"amateras-repo" at "http://amateras.sourceforge.jp/mvn/"
"amateras-repo" at "http://amateras.sourceforge.jp/mvn/",
"amateras-snapshot-repo" at "http://amateras.sourceforge.jp/mvn-snapshot/"
),
scalacOptions := Seq("-deprecation", "-language:postfixOps"),
libraryDependencies ++= Seq(
@@ -51,7 +52,7 @@ object MyBuild extends Build {
"jp.sf.amateras" %% "scalatra-forms" % "0.1.0",
"commons-io" % "commons-io" % "2.4",
// "org.pegdown" % "pegdown" % "1.5.0",
"io.github.gitbucket" % "markedj" % "1.0.0",
"io.github.gitbucket" % "markedj" % "1.0.1-SNAPSHOT",
"org.apache.commons" % "commons-compress" % "1.9",
"org.apache.commons" % "commons-email" % "1.3.3",
"org.apache.httpcomponents" % "httpclient" % "4.3.6",

View File

@@ -1,19 +1,14 @@
package gitbucket.core.view
import java.text.Normalizer
import java.util.Locale
import java.util.{Optional, Locale}
import java.util.regex.Pattern
import gitbucket.core.controller.Context
import gitbucket.core.service.{RepositoryService, RequestCache, WikiService}
import gitbucket.core.util.StringUtil
import io.github.gitbucket.markedj._
//import org.parboiled.common.StringUtils
//import org.pegdown.LinkRenderer.Rendering
//import org.pegdown._
//import org.pegdown.ast._
import scala.collection.JavaConverters._
import io.github.gitbucket.markedj.Utils._
object Markdown {
@@ -36,16 +31,19 @@ object Markdown {
enableTaskList: Boolean = false,
hasWritePermission: Boolean = false,
pages: List[String] = Nil)(implicit context: Context): String = {
Marked.marked(markdown, new Options())
// // escape issue id
// val s = if(enableRefsLink){
// markdown.replaceAll("(?<=(\\W|^))#(\\d+)(?=(\\W|$))", "issue:$2")
// } else markdown
//
// // escape task list
// val source = if(enableTaskList){
// GitBucketHtmlSerializer.escapeTaskList(s)
// } else s
// escape issue id
val s = if(enableRefsLink){
markdown.replaceAll("(?<=(\\W|^))#(\\d+)(?=(\\W|$))", "issue:$2")
} else markdown
// escape task list
val source = if(enableTaskList){
GitBucketHtmlSerializer.escapeTaskList(s)
} else s
val options = new Options()
Marked.marked(source, options, new GitBucketMarkedRenderer(options))
//
// val rootNode = new PegDownProcessor(
// Extensions.AUTOLINKS | Extensions.WIKILINKS | Extensions.FENCED_CODE_BLOCKS |
@@ -59,6 +57,19 @@ object Markdown {
}
}
class GitBucketMarkedRenderer(options: Options) extends Renderer(options) {
override def code(code: String, lang: Optional[String], escaped: Boolean): String = {
"<pre class=\"prettyprint" + (if(lang.isPresent) s" ${options.getLangPrefix}${lang.get}" else "" )+ "\">" +
(if(escaped) code else escape(code, true)) + "</pre>"
}
override def text(text: String): String = {
text
}
}
//class GitBucketLinkRender(
// context: Context,
// repository: RepositoryService.RepositoryInfo,