diff --git a/templates/index.html b/templates/index.html index e857325..7383cf8 100644 --- a/templates/index.html +++ b/templates/index.html @@ -236,7 +236,7 @@ function parsePrefixAndStrip(line){ } function ansiToHtml(text){ - const ESC = '\\u001b['; + const ESC = '\u001b['; const parts = text.split(ESC); if (parts.length === 1) return escapeHtml(text); let html = escapeHtml(parts[0]); @@ -360,8 +360,7 @@ function openWs(svc, panel){ ws.onclose = ()=> setWsState(Object.keys(state.open).length? 'on':'off'); ws.onerror = ()=> setWsState('err'); ws.onmessage = (ev)=>{ - const parts = (ev.data||'').split(/ ? -/); + const parts = (ev.data||'').split(/\r?\n/); for (let i=0;i setWsState(Object.keys(state.open).length? 'on':'off'); ws.onerror = ()=> setWsState('err'); ws.onmessage = (ev)=>{ - const parts = (ev.data||'').split(/\\r?\\n/); + const parts = (ev.data||'').split(/\r?\n/); for (let i=0;i { Object.keys(state.open).forEach(id=>{ const svc = state.services.find(s=> s.id===id); if (!svc) return; - const panel = els.grid.querySelector(\`.panel[data-cid="\${id}"]\`); + const panel = els.grid.querySelector(`.panel[data-cid="${id}"]`); if (!panel) return; state.open[id].logEl.textContent=''; closeWs(id); openWs(svc, panel); @@ -583,7 +582,7 @@ window.addEventListener('keydown', (e)=>{ if (idx>=0 && idx \`\${s.id}:\${s.service}\`).join(', '); + const list = state.services.map(s=> `${s.id}:${s.service}`).join(', '); const ans = prompt('IDs через запятую:\n'+list); if (ans) openMulti(ans.split(',').map(x=>x.trim()).filter(Boolean)); }