From ca2dc85b3407d63d5fc4b24e55e557ef02479a0c Mon Sep 17 00:00:00 2001 From: ansuz Date: Tue, 14 Apr 2020 15:17:41 -0400 Subject: [PATCH 1/2] reduce eye-bleed with gentler styles for mermaid charts --- www/common/diffMarked.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/www/common/diffMarked.js b/www/common/diffMarked.js index f53828e17..0f0e4a092 100644 --- a/www/common/diffMarked.js +++ b/www/common/diffMarked.js @@ -23,8 +23,17 @@ define([ init: function () {} }; + var mermaidThemeCSS = ".node rect { fill: #DDD; stroke: #AAA; } " + + "rect.task, rect.task0, rect.task2 { stroke-width: 1 !important; rx: 0 !important; } " + + "g.grid g.tick line { opacity: 0.25; }" + + "g.today line { stroke: red; stroke-width: 1; stroke-dasharray: 3; opacity: 0.5; }"; + require(['mermaid', 'css!/code/mermaid-new.css'], function (_Mermaid) { Mermaid = _Mermaid; + Mermaid.initialize({ + gantt: { axisFormat: '%m-%d', }, + "themeCSS": mermaidThemeCSS, + }); }); var highlighter = function () { From 9a7681dc5d6f157e8a99af324cd32c29ddf7474e Mon Sep 17 00:00:00 2001 From: ansuz Date: Tue, 14 Apr 2020 15:18:20 -0400 Subject: [PATCH 2/2] add a note about handling syntax errors in mermaid --- www/common/diffMarked.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/www/common/diffMarked.js b/www/common/diffMarked.js index 0f0e4a092..c964ee63e 100644 --- a/www/common/diffMarked.js +++ b/www/common/diffMarked.js @@ -360,6 +360,12 @@ define([ // retrieve the attached source code which it was drawn var src = el.getAttribute('mermaid-source'); +/* The new source might have syntax errors that will prevent rendering. + It might be preferable to keep the existing state instead of removing it + if you don't have something better to display. Ideally we should display + the cause of the syntax error so that the user knows what to correct. */ + //if (!Mermaid.parse(src)) { } // TODO + // check if that source exists in the set of charts which are about to be rendered if (mermaid_source.indexOf(src) === -1) { // if it's not, then you can remove it