Browse Source

pretty print all xml bodies

Alan Shreve 12 years ago
parent
commit
a03ebfba5a

+ 1 - 0
Makefile

@@ -29,6 +29,7 @@ bindata:
 	./bin/go-bindata -b release -i assets/highlight.min.js -o src/ngrok/client/views/web/static/highlight.js.go -m -p static -f HighlightJs
 	./bin/go-bindata -b release -i assets/highlight.min.js -o src/ngrok/client/views/web/static/highlight.js.go -m -p static -f HighlightJs
 	./bin/go-bindata -b release -i assets/bootstrap.min.css -o src/ngrok/client/views/web/static/bootstrap.css.go -m -p static -f BootstrapCss
 	./bin/go-bindata -b release -i assets/bootstrap.min.css -o src/ngrok/client/views/web/static/bootstrap.css.go -m -p static -f BootstrapCss
 	./bin/go-bindata -b release -i assets/jquery-1.9.1.min.js -o src/ngrok/client/views/web/static/jquery-1.9.1.js.go -m -p static -f JqueryJs
 	./bin/go-bindata -b release -i assets/jquery-1.9.1.min.js -o src/ngrok/client/views/web/static/jquery-1.9.1.js.go -m -p static -f JqueryJs
+	./bin/go-bindata -b release -i assets/vkbeautify.0.99.js -o src/ngrok/client/views/web/static/vkbeautify.0.99.js.go -m -p static -f VkBeautifyJs
 
 
 all: client server
 all: client server
 
 

+ 1 - 1
assets/body.html

@@ -27,7 +27,7 @@
 
 
 
 
 {{ with handleOther .BodyBytes .Header }}
 {{ with handleOther .BodyBytes .Header }}
-<pre><code class="{{.Syntax}}">{{.Body}}</code></pre>
+<pre> <code class="{{.Syntax}}">{{.Body}}</code> </pre>
 {{ end }}
 {{ end }}
 
 
 {{ end }}
 {{ end }}

+ 1 - 1
assets/bootstrap.min.css

@@ -166,7 +166,7 @@ blockquote.pull-right small:before{content:'';}
 blockquote.pull-right small:after{content:'\00A0 \2014';}
 blockquote.pull-right small:after{content:'\00A0 \2014';}
 q:before,q:after,blockquote:before,blockquote:after{content:"";}
 q:before,q:after,blockquote:before,blockquote:after{content:"";}
 address{display:block;margin-bottom:20px;font-style:normal;line-height:20px;}
 address{display:block;margin-bottom:20px;font-style:normal;line-height:20px;}
-code,pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:12px;color:#333333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
+pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:12px;color:#333333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;}
 code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8;white-space:nowrap;}
 code{padding:2px 4px;color:#d14;background-color:#f7f7f9;border:1px solid #e1e1e8;white-space:nowrap;}
 pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0, 0, 0, 0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}pre.prettyprint{margin-bottom:20px;}
 pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0, 0, 0, 0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}pre.prettyprint{margin-bottom:20px;}
 pre code{padding:0;color:inherit;white-space:pre;white-space:pre-wrap;background-color:transparent;border:0;}
 pre code{padding:0;color:inherit;white-space:pre;white-space:pre-wrap;background-color:transparent;border:0;}

+ 6 - 1
assets/page.html

@@ -1,9 +1,10 @@
 <html>
 <html>
     <head>
     <head>
         <title>ngrok</title>
         <title>ngrok</title>
-        <link href="/static/bootstrap.min.css" rel="stylesheet">
         <link href="/static/highlight.min.css" rel="stylesheet">
         <link href="/static/highlight.min.css" rel="stylesheet">
+        <link href="/static/bootstrap.min.css" rel="stylesheet">
         <script src="/static/highlight.min.js"></script>
         <script src="/static/highlight.min.js"></script>
+        <script src="/static/vkbeautify.js"></script>
         <script src="/static/jquery-1.9.1.min.js"></script>
         <script src="/static/jquery-1.9.1.min.js"></script>
         <script>hljs.initHighlightingOnLoad();</script>
         <script>hljs.initHighlightingOnLoad();</script>
         <script type="text/javascript">
         <script type="text/javascript">
@@ -25,6 +26,10 @@
                     
                     
                     return false;
                     return false;
                 });
                 });
+
+                $("code.xml").each(function() {
+                    $(this).text(vkbeautify.xml($(this).text()));
+                });
             });
             });
         </script>
         </script>
         <style type="text/css">
         <style type="text/css">

+ 9 - 6
src/ngrok/client/views/web/http.go

@@ -154,14 +154,17 @@ func (h *WebHttpView) register() {
 					return nil
 					return nil
 				}
 				}
 
 
-                                if len(b) == 0 {
-                                        return nil
-                                }
+				if len(b) == 0 {
+					return nil
+				}
 
 
 				syntaxMap := map[string]string{
 				syntaxMap := map[string]string{
-					"text/xml":        "xml",
-					"application/xml": "xml",
-					"text/html":       "xml",
+					"text/xml":               "xml",
+					"application/xml":        "xml",
+					"text/html":              "xml",
+					"text/css":               "css",
+					"text/javascript":        "json",
+					"application/javascript": "javascript",
 				}
 				}
 
 
 				ctype := strings.Split(h.Get("Content-Type"), ";")[0]
 				ctype := strings.Split(h.Get("Content-Type"), ";")[0]

+ 2 - 0
src/ngrok/client/views/web/static/debug.go

@@ -37,6 +37,7 @@ func init() {
 		HighlightCss,
 		HighlightCss,
 		BootstrapCss,
 		BootstrapCss,
 		JqueryJs,
 		JqueryJs,
+		VkBeautifyJs,
 	}
 	}
 	for _, f := range fns {
 	for _, f := range fns {
 		f()
 		f()
@@ -57,3 +58,4 @@ func HighlightJs() []byte  { return ReadFileOrPanic("highlight.min.js") }
 func HighlightCss() []byte { return ReadFileOrPanic("highlight.min.css") }
 func HighlightCss() []byte { return ReadFileOrPanic("highlight.min.css") }
 func BootstrapCss() []byte { return ReadFileOrPanic("bootstrap.min.css") }
 func BootstrapCss() []byte { return ReadFileOrPanic("bootstrap.min.css") }
 func JqueryJs() []byte     { return ReadFileOrPanic("jquery-1.9.1.min.js") }
 func JqueryJs() []byte     { return ReadFileOrPanic("jquery-1.9.1.min.js") }
+func VkBeautifyJs() []byte { return ReadFileOrPanic("vkbeautify.js") }

+ 1 - 0
src/ngrok/client/views/web/static/map.go

@@ -5,4 +5,5 @@ var AssetMap = map[string]func() []byte{
 	"bootstrap.min.css":   BootstrapCss,
 	"bootstrap.min.css":   BootstrapCss,
 	"highlight.min.css":   HighlightCss,
 	"highlight.min.css":   HighlightCss,
 	"highlight.min.js":    HighlightJs,
 	"highlight.min.js":    HighlightJs,
+	"vkbeautify.js":       VkBeautifyJs,
 }
 }