Próbuję użyć JTidy do całkiem wydrukować dobrze uformowane HTML generowanego przez użytkownika:jTidy dość druk niestandardowy tag HTML
<div class="component-holder ng-binding ng-scope ui-draggable ui-draggable-handle" data-component="cronos-datasource" id="cronos-datasource-817277">
<datasource name="" entity="" key="" endpoint="" rows-per-page="">
<i class="cpn cpn-datasource"></i>
</datasource>
</div>
To jest mój config:
Tidy tidy = new Tidy();
tidy.setXHTML(true);
tidy.setIndentContent(true);
tidy.setPrintBodyOnly(true);
tidy.setTidyMark(false);
tidy.setWraplen(2000);
tidy.setDropProprietaryAttributes(false);
tidy.setDropEmptyParas(false);
tidy.setTrimEmptyElements(false);
Ale jTidy jest usunięcie mojej dyrektywy AngularJS datasource
. Czy istnieje sposób na obejście tego problemu?
Dostaję to z dziennika:
line 1 column 191 - Error: <datasource> is not recognized!
line 1 column 191 - Warning: discarding unexpected <datasource>
Usuwanie tidy.setXHTML(true)
lub ustawienie go na false i dodanie tidy.setXmlTags(true)
rzeczywiście rozwiązać ten problem i zacząć rozważać znaczniki zdefiniowane przez użytkownika, ale nie jest to dobre rozwiązanie ponieważ JTidy rozpoczyna próbę zamknięcia tagów zamykających siebie.
<!-- this code -->
<img src="anythig.jpg"/>
<div id="anyid"></div>
<!-- will become -->
<img src="anythig.jpg">
<div id="anyid"></div>
</img>
Potrzebuję formatera do edytora tekstu. Nie mogę zapewnić, jakie dyrektywy będą definiować i wykorzystywać nasi użytkownicy. To musi być ogólne rozwiązanie, które działa dla dowolnego zdefiniowanego przez użytkownika dyrektywa
Jaką wersję JTidy używasz? Czy na pewno nie ma innej konfiguracji? AFAIK 'setXmlTags (true)' powinien rozwiązać ten problem. – manouti
'setXmlTags (true)' faktycznie rozwiązuje to, ale zaczyna próbować zamykać samo zamykające się znaczniki Przykład – nanndoj