aboutsummaryrefslogtreecommitdiffstats
path: root/yslow.js
diff options
context:
space:
mode:
Diffstat (limited to 'yslow.js')
-rw-r--r--yslow.js61
1 files changed, 61 insertions, 0 deletions
diff --git a/yslow.js b/yslow.js
new file mode 100644
index 0000000..bab364b
--- /dev/null
+++ b/yslow.js
@@ -0,0 +1,61 @@
+/*
+ * ==VimperatorPlugin==
+ * @name yslow.js
+ * @description optimize the indicator of YSlow addon.
+ * @description-ja YSlow addon の表示をいい感じにする。
+ * @author janus_wel <janus_wel@fb3.so-net.ne.jp>
+ * @version 0.10
+ * @minversion 2.0pre
+ * @maxversion 2.0pre
+ * ==/VimperatorPlugin==
+ *
+ * LICENSE
+ * New BSD License
+ *
+ * USAGE
+ * this plugin change YSlow indicators to non-display.
+ * you can use value 'y' in option 'pageinfo'.
+ * it will display performances of current page.
+ *
+ * EXAMPLE
+ * default + YSlow
+ * :set pageinfo=gfmy
+ *
+ * */
+
+( function () {
+
+// addon check
+const doc = window.document;
+if (!doc.getElementById('yslowStatusBar')) {
+ liberator.log('yslow.js is need YSlow addon: https://addons.mozilla.org/ja/firefox/addon/5369', 0);
+ return;
+}
+
+// register pageinfo
+let grade = doc.getElementById('yslowStatusGrade');
+let size = doc.getElementById('yslowStatusSize');
+let time = doc.getElementById('yslowStatusTime');
+liberator.modules.buffer.addPageInfoSection(
+ 'y',
+ 'YSlow Status',
+ function (verbose) {
+ if(verbose) {
+ if (grade.value && grade.value !== 'YSlow') yield ['Grade', grade.value];
+ if (size.value) yield ['Size', size.value];
+ if (time.value) yield ['Time', time.value];
+ }
+ return;
+ }
+);
+
+// hide elements
+[
+ grade,
+ size,
+ time,
+].forEach(function (n) {
+ n.setAttribute('style', 'display: none !important;');
+});
+
+} )();