1,10 → 1,8 |
enum { TAG, OPTION_VALUE, TEXT, COMMENT }; |
|
//you are butifull, you are butifull |
dword ShowSource() |
{ |
dword new_buf, new_buf_start, i; |
byte ww, mode; |
byte ww, param, comment; |
|
if (souce_mode) return; |
souce_mode = true; |
21,51 → 19,46 |
{ |
strcat(new_buf, "<font color=#ccc><"); |
new_buf+=20; |
mode = COMMENT; |
} |
else |
{ |
strcat(new_buf, "<font color=#00f><"); |
new_buf+=20; |
mode = TAG; |
} |
break; |
case '>': |
if (mode == OPTION_VALUE) //fix non-closed quote in TAG |
if (!param) //fix non-closed quote |
{ |
param = 1; |
strcat(new_buf, ""</font>"); |
new_buf+=12; |
mode = TAG; |
} |
if (mode == COMMENT) && (ESBYTE[i-1]=='-') && (ESBYTE[i-2]=='-') |
if (ESBYTE[i-1]=='-') && (ESBYTE[i-2]=='-') |
{ |
strcat(new_buf, "></font>"); |
new_buf+=10; |
mode = TEXT; |
} |
if (mode == TAG) |
else |
{ |
strcat(new_buf, "></font>"); |
new_buf+=10; |
mode = TEXT; |
} |
break; |
case '\"': |
case '\'': |
if (mode == TAG) |
if (param) |
{ |
param = 0; |
strcat(new_buf, "<font color=#f0f>""); |
new_buf+=22; |
mode = OPTION_VALUE; |
break; |
} |
if (mode == OPTION_VALUE) |
else |
{ |
param = 1; |
strcat(new_buf, ""</font>"); |
new_buf+=12; |
mode = TAG; |
} |
break; |
} |
default: |
chrcat(new_buf, ww); |
} |