Pārlūkot izejas kodu

[core] Added support for SQL comments to vkbeautify

Enrico Berti 9 gadi atpakaļ
vecāks
revīzija
1c0591b

+ 1 - 1
apps/beeswax/src/beeswax/templates/execute.mako

@@ -813,7 +813,7 @@ ${ commonshare() | n,unicode }
 <script src="${ static('notebook/js/notebook.ko.js') }" type="text/javascript" charset="utf-8"></script>
 <script src="${ static('beeswax/js/beeswax.vm.js') }"></script>
 <script src="${ static('desktop/js/share.vm.js') }"></script>
-<script src="${ static('desktop/ext/js/vkbeautify.js') }" type="text/javascript" charset="utf-8"></script>
+<script src="${ static('desktop/js/vkbeautify.js') }" type="text/javascript" charset="utf-8"></script>
 
 <script src="${ static('desktop/ext/js/codemirror-3.11.js') }"></script>
 <link rel="stylesheet" href="${ static('desktop/ext/css/codemirror.css') }">

+ 4 - 1
desktop/core/src/desktop/static/desktop/ext/js/vkbeautify.js → desktop/core/src/desktop/static/desktop/js/vkbeautify.js

@@ -1,4 +1,6 @@
 /**
+ * Modified version from https://github.com/enricoberti/vkBeautify
+ *
  * vkBeautify - javascript plugin to pretty-print or minify text in XML, JSON, CSS and SQL formats.
  *
  * Version - 0.99.00.beta
@@ -282,7 +284,8 @@
 
   vkbeautify.prototype.sql = function (text, step) {
 
-    var ar_by_quote = text.replace(/\s{1,}/g, " ")
+    var ar_by_quote = text.replace(/\/\*.*?\*\/|--.*?\n/g, '$&~::~')
+        .replace(/\s{1,}/g, " ")
         .replace(/\'/ig, "~::~\'")
         .split('~::~'),
       len = ar_by_quote.length,

+ 1 - 1
desktop/libs/notebook/src/notebook/templates/editor_components.mako

@@ -43,7 +43,7 @@ from desktop.views import _ko
 
 <script src="${ static('desktop/ext/js/bootstrap-editable.min.js') }" type="text/javascript" charset="utf-8"></script>
 <script src="${ static('desktop/ext/chosen/chosen.jquery.min.js') }" type="text/javascript" charset="utf-8"></script>
-<script src="${ static('desktop/ext/js/vkbeautify.js') }" type="text/javascript" charset="utf-8"></script>
+<script src="${ static('desktop/js/vkbeautify.js') }" type="text/javascript" charset="utf-8"></script>
 
 <script src="${ static('desktop/js/hue.geo.js') }" type="text/javascript" charset="utf-8"></script>
 <script src="${ static('desktop/js/hue.colors.js') }" type="text/javascript" charset="utf-8"></script>