fixed a bug theli pointed out (indented <pre>-blocks)

git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@973 6c8d7289-2bf4-0310-a012-ef5d649a1542
pull/1/head
low012 19 years ago
parent 525c8dcbd4
commit fd1b08303e

@ -72,10 +72,11 @@ public class wikiCode {
private String defListLevel="";
private plasmaSwitchboard sb;
private boolean escape = false; //needed for escape
private boolean escaped = false; //yat another varaible needed for <pre> not getting in the way
private boolean escaped = false; //needed for <pre> not getting in the way
private boolean escapeSpan = false; //needed for escape symbols [= and =] spanning over several lines
private boolean preformatted = false; //needed for preformatted test
private boolean preformatted = false; //needed for preformatted text
private boolean preformattedSpan = false; //needed for <pre> and </pre> spanning over several lines
private int preindented = 0; //needed for indented <pre>s
public wikiCode(plasmaSwitchboard switchboard){
sb=switchboard;
@ -437,18 +438,30 @@ public class wikiCode {
//start <pre>
else if(((p0 = result.indexOf("&lt;pre&gt;"))>=0)&&(!preformattedSpan)&&(!(escaped))){
preformatted = true; //prevent surplus line breaks
String bq =""; //gets filled with <blockquote>s as needed
String preformattedText = "<pre style=\"border:dotted;border-width:thin\">"+result.substring(p0+11);
result = transformLine(result.substring(0,p0)+"!preformatted!!Text!", switchboard);
result = result.replaceAll("!preformatted!!Text!", preformattedText);
//taking care of indented lines
while(result.substring(preindented,p0).startsWith(":")){
preindented++;
bq = bq + "<blockquote>";
}
result = transformLine(result.substring(preindented,p0)+"!preformatted!!Text!", switchboard);
result = bq + result.replaceAll("!preformatted!!Text!", preformattedText);
preformattedSpan = true;
}
//end </pre>
else if(((p0 = result.indexOf("&lt;/pre&gt;"))>=0)&&(preformattedSpan)&&(!(escaped))){
preformattedSpan = false;
String bq = ""; //gets filled with </blockquote>s as needed
String preformattedText = result.substring(0,p0)+"</pre>";
//taking care of indented lines
while (preindented > 0){
bq = bq + "</blockquote>";
preindented--;
}
result = transformLine("!preformatted!!Text!"+result.substring(p0+12), switchboard);
result = result.replaceAll("!preformatted!!Text!", preformattedText);
result = result.replaceAll("!preformatted!!Text!", preformattedText)+bq;
preformatted = false;
}
//end contrib [MN]

Loading…
Cancel
Save