followlines: don't put Unicode directly into the .js file (
issue6559)
Apparently some web server setups may serve this file in a different encoding
than UTF-8, and that results in visual garbage in the followlines button that
renders for every line in a file. So instead of using this Unicode character in
UTF-8 we can encode it as \u2212. Or, to be more explicit, we can use −
HTML entity, which resolves into exactly that character.
Since now we're using innerHTML property to set the minus part of the button,
let's use it to set the plus part as well (even though the plus sign was plain
ASCII). A wise man once said "A foolish consistency is the hobgob... eh,
whatever." Throw a brick at me if this makes things worse.
Differential Revision: https://phab.mercurial-scm.org/D12597
--- a/mercurial/templates/static/followlines.js Thu Apr 28 11:20:17 2022 -0400
+++ b/mercurial/templates/static/followlines.js Mon May 02 12:10:28 2022 +0400
@@ -50,13 +50,13 @@
btn.classList.add('btn-followlines');
var plusSpan = document.createElement('span');
plusSpan.classList.add('followlines-plus');
- plusSpan.textContent = '+';
+ plusSpan.innerHTML = '+';
btn.appendChild(plusSpan);
var br = document.createElement('br');
btn.appendChild(br);
var minusSpan = document.createElement('span');
minusSpan.classList.add('followlines-minus');
- minusSpan.textContent = '−';
+ minusSpan.innerHTML = '−';
btn.appendChild(minusSpan);
return btn;
}