VEZwolle / vezy-worship

📽️ Presentatiesoftware voor beamer én livestream
https://vezy-worship.web.app
9 stars 0 forks source link

249 newline paste fix / reformat div in div error q-editor to div per line fix #255

Closed J76F closed 6 months ago

J76F commented 7 months ago
J76F commented 7 months ago

zie nog fout gaan op: <div><br><div> --> extra regel in svg tov html & editor vraag als bij plakken <div><br></div> --> <br> nodig is.

moeten lege regels ook verwijderd worden; kan ook trim op de geplakte tekst doen ipv editor aanpassen

J76F commented 6 months ago

uitzoeken losse <br> aanpassen naar <div> etc. volgens quasar editor manier

tekst + tekst abc<div>abc</div> tekst + lege regel abc<div><br></div> tekst + lege regel + lege regel abc<div><br></div><div><br></div> tekst + lege regel + tekst abc<div><br></div><div>abc</div> tekst + lege regel + tekst + text abc<div><br></div><div>abc</div><div>abc</div>

met opmaak kunnen hier ook nog <i> etc tussen staan


// eerst zonder opmaak
      text = text
        .replace(/<br><br>/g, '<div><br></div><br>') // stap 1: als dubbel <br> --> 1e tussen div zetten
        .replace(/(<br>)(?!<\/div>)(.*)(?=<div>)/g, '<div>$2</div>') // stap 2: <br> zonder </div> tot volgende <div>, waarschijnlijk tekt --> tekst tussen div zetten
        .replace(/(<br>)(?!<\/div>)(?!(.*)(?=<div>))(.*)$/g, '<div>$3</div>') // stap 3: <br> zonder </div> en geen <div> meer --> tekst tussen div zetten
        .replace(/<div><\/div>/g, '') // 3e stap --> lege div's verwijderen
J76F commented 6 months ago

start: [basis in q-editor editor fout]

abc def

ghi

abc<div>def</div><div><br></div><div>ghi</div>

enter na regel 1 > fout <div><br><div> + </div> op einde ipv <div><br></div><div> abc<div><br><div>def</div><div><br></div><div>ghi</div></div>

enter voor regel 2 > goed abc<div><br></div><div>def</div><div><br></div><div>ghi</div>

Het gaat alleen bij de eerste fout; wanneer je eerste tekstblok ook in div zet is er geen probleem meer en gaat hij goed door; doe je dit niet en je geeft een paar keer een nieuwe regel en verwijderd hem daarna dan kan je zo een rommeltje hierdoor krijgen blijkt.

https://codepen.io/JFcode76/pen/jOdgNJd

J76F commented 6 months ago

Bij leeg: <div><br></div> plaatsen en daarna invullen lijkt te werken. 1 lijn zonder <div> door in div's te zetten waarschijnlijk ook.

Alleen bij leeg halen haal je dit ook weg.

J76F commented 6 months ago
J76F commented 6 months ago

Oplossing plakken: Verschillende regeleinden eerst vervangen voor plakken in q-editor. CR LF / LF / CR / VT - > LF

text.replace(/(\r*\n)|(\r(?!\n))|(\v)/g, '\n')

Oplossing div genesteld en 1e niet in div blok:

= text
  .replace(/(?<=<\/div>(?!<\/*div>)|^(?!<\/*div>))(.+?)(?=(?<!<\/*div>)<div>|(?<!<\/*div>)$)/g, '<div>$1</div>')
  .replace(/(?<!(<\/div>)|(^))<div>/g, '</div><div>')
  .replace(/(<\/div>){2,}/g, '</div>')
  .replace(/<div><\/div>/g, '')