ongoing refactor to update colors by line
This commit is contained in:
parent
dde40492e2
commit
cbac831768
44
main.js
44
main.js
|
@ -1973,17 +1973,46 @@ function rawline(index)
|
||||||
return md.value.split("\n")[index];
|
return md.value.split("\n")[index];
|
||||||
}
|
}
|
||||||
|
|
||||||
function applycolorsonline(line, index, options)
|
function applycolorsonline(line, linediv, index, options)
|
||||||
{
|
{
|
||||||
line = escapeHtml(line);
|
line = escapeHtml(line);
|
||||||
|
|
||||||
|
while (linediv.hasChildNodes())
|
||||||
|
{
|
||||||
|
linediv.removeChild(linediv.lastChild);
|
||||||
|
}
|
||||||
|
|
||||||
// headings
|
// headings
|
||||||
if (line.startsWith("#"))
|
if (line.startsWith("#"))
|
||||||
{
|
{
|
||||||
line = line.replace(/(#* )/, "<span style='color:" + settings.accentcolor + "'>$1</span>"); // to check!
|
var level = line.indexOf(" ");
|
||||||
line = "<span style='font-weight: bold;'>" + line + "</span>";
|
if (level == -1)
|
||||||
|
{
|
||||||
|
level = line.length;
|
||||||
|
}
|
||||||
|
|
||||||
|
var span = document.createElement("span");
|
||||||
|
span.setAttribute("style", `font-weight: bold;color:${settings.accentcolor};`);
|
||||||
|
span.appendChild(document.createTextNode("#".repeat(level)));
|
||||||
|
linediv.appendChild(span);
|
||||||
|
|
||||||
|
if (level < line.length)
|
||||||
|
{
|
||||||
|
var headingtext = line.substring(level);
|
||||||
|
span = document.createElement("span");
|
||||||
|
span.setAttribute("style", "font-weight: bold;");
|
||||||
|
span.appendChild(document.createTextNode(headingtext));
|
||||||
|
linediv.appendChild(span);
|
||||||
|
}
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// fallback
|
||||||
|
//linediv.appendChild(document.createTextNode(line || " "));
|
||||||
|
//return;
|
||||||
|
|
||||||
|
/* -----TODO------ */
|
||||||
|
|
||||||
// bold and italics
|
// bold and italics
|
||||||
var temp = line;
|
var temp = line;
|
||||||
if (line.startsWith("* "))
|
if (line.startsWith("* "))
|
||||||
|
@ -2107,7 +2136,8 @@ function applycolorsonline(line, index, options)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return line;
|
|
||||||
|
linediv.innerHTML = line || " ";
|
||||||
}
|
}
|
||||||
|
|
||||||
function applycolors(currentonly)
|
function applycolors(currentonly)
|
||||||
|
@ -2130,9 +2160,7 @@ function applycolors(currentonly)
|
||||||
var index = currentline();
|
var index = currentline();
|
||||||
var linediv = document.getElementById("line" + index);
|
var linediv = document.getElementById("line" + index);
|
||||||
options = JSON.parse(linediv.getAttribute("tag"));
|
options = JSON.parse(linediv.getAttribute("tag"));
|
||||||
var line = rawline(index);
|
applycolorsonline(rawline(index), linediv, index, options);
|
||||||
line = applycolorsonline(line, index, options);
|
|
||||||
linediv.innerHTML = line || " ";
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -2149,7 +2177,7 @@ function applycolors(currentonly)
|
||||||
}
|
}
|
||||||
linediv.setAttribute("id", "line" + i);
|
linediv.setAttribute("id", "line" + i);
|
||||||
linediv.setAttribute("tag", JSON.stringify(options));
|
linediv.setAttribute("tag", JSON.stringify(options));
|
||||||
linediv.innerHTML = applycolorsonline(lines[i], i, options) || " ";
|
applycolorsonline(lines[i], linediv, i, options);
|
||||||
};
|
};
|
||||||
|
|
||||||
// remove remanining
|
// remove remanining
|
||||||
|
|
Loading…
Reference in New Issue