summaryrefslogtreecommitdiffstats
path: root/public
diff options
context:
space:
mode:
authorAndrew Boyarshin <andrew.boyarshin@gmail.com>2017-02-14 08:13:59 +0700
committerLunny Xiao <xiaolunwen@gmail.com>2017-02-14 09:13:59 +0800
commitdc8248f8a49e4801e119008a32b28cd2ad6e1a57 (patch)
treef3749cdfb1b4766e6f9d7d601f2de7654b747087 /public
parent5cc275b1defc56d54bec23d1a5740c3fadcff2b0 (diff)
downloadgitea-dc8248f8a49e4801e119008a32b28cd2ad6e1a57.tar.gz
gitea-dc8248f8a49e4801e119008a32b28cd2ad6e1a57.zip
Markdown rendering overhaul (#186)
* Markdown rendering overhaul Cleaned up and squashed commits into single one. Signed-off-by: Andrew Boyarshin <boyarshinand@gmail.com> * Fix markdown API, add markdown module and API tests, improve code coverage Signed-off-by: Andrew Boyarshin <boyarshinand@gmail.com>
Diffstat (limited to 'public')
-rw-r--r--public/css/index.css7
-rw-r--r--public/js/index.js2
-rw-r--r--public/js/libs/autolink.js12
-rw-r--r--public/less/_markdown.less6
4 files changed, 25 insertions, 2 deletions
diff --git a/public/css/index.css b/public/css/index.css
index 1bb9e9fd40..85101faba9 100644
--- a/public/css/index.css
+++ b/public/css/index.css
@@ -602,7 +602,7 @@ footer .ui.language .menu {
list-style-type: lower-roman;
}
.markdown:not(code) li > p {
- margin-top: 16px;
+ margin-top: 0;
}
.markdown:not(code) dl {
padding: 0;
@@ -841,6 +841,11 @@ footer .ui.language .menu {
background: #f8f8f8;
border-top: 0;
}
+.markdown:not(code) .ui.list .list,
+.markdown:not(code) ol.ui.list ol,
+.markdown:not(code) ul.ui.list ul {
+ padding-left: 2em;
+}
.home {
padding-bottom: 80px;
}
diff --git a/public/js/index.js b/public/js/index.js
index e700da29f8..2e0e26f55c 100644
--- a/public/js/index.js
+++ b/public/js/index.js
@@ -613,6 +613,7 @@ function initWikiForm() {
function (data) {
preview.innerHTML = '<div class="markdown">' + data + '</div>';
emojify.run($('.editor-preview')[0]);
+ $('.editor-preview').autolink();
}
);
}, 0);
@@ -1388,6 +1389,7 @@ $(document).ready(function () {
node.append('<a class="anchor" href="#' + name + '"><span class="octicon octicon-link"></span></a>');
});
});
+ $('.markdown').autolink();
buttonsClickOnEnter();
searchUsers();
diff --git a/public/js/libs/autolink.js b/public/js/libs/autolink.js
new file mode 100644
index 0000000000..a5d1e3a6ef
--- /dev/null
+++ b/public/js/libs/autolink.js
@@ -0,0 +1,12 @@
+jQuery.fn.autolink = function() {
+ return this.find('*').contents().filter(function () { return this.nodeType === 3; }).each(function() {
+ var re = /((([A-Za-z]{3,9}:(?:\/\/)?)(?:[\-;:&=\+\$,\w]+@)?[A-Za-z0-9\.\-]+|(?:www\.|[\-;:&=\+\$,\w]+@)[A-Za-z0-9\.\-]+)((?:\/[\+~%\/\.\w\-]*)?\??(?:[\-\+:=&;%@\.\w]*)#?(?:[\.\!\/\\\w]*))?)/g;
+ $(this).each(function() {
+ $(this).replaceWith(
+ $("<span />").html(
+ this.nodeValue.replace(re, "<a href='$1'>$1</a>")
+ )
+ );
+ });
+ });
+}; \ No newline at end of file
diff --git a/public/less/_markdown.less b/public/less/_markdown.less
index 4200aed3a3..e4b452b95c 100644
--- a/public/less/_markdown.less
+++ b/public/less/_markdown.less
@@ -205,7 +205,7 @@
}
li>p {
- margin-top:16px;
+ margin-top:0;
}
dl {
@@ -486,4 +486,8 @@
font-weight:bold;
background:#f8f8f8;border-top:0;
}
+
+ .ui.list .list, ol.ui.list ol, ul.ui.list ul {
+ padding-left: 2em;
+ }
}