Lately, when using <start> filters, i came across more and more pages that wouldn't load completely.
So my Bypass Start-End list grew rapidly.
Here is what i use now instead of <start>:
[Blocklists]
List.Bypass_Start-End = "..ListsBypass Start-End.txt"
[Patterns]
Name = "Header (top) Multi: Mark start"
Active = TRUE
Multi = TRUE
URL = "$TYPE(htm)(^$LST(Bypass_Start-End))"
Limit = 128
Match = "<head>"
"|"
"("
"("
"("
"(<html*>) |(<body*>)1"
")"
"&(^*<head>)"
")"
"&$SET(2=
</head>
)"
")"
Replace = "
<head>
"
"<!-- Start injected Proxomitron filters Header Top -->
<ProxMarkHdrTop>
"
"21$STOP()"
Name = "Header (top) Multi Inject: Tame Javascript (part 1)"
Active = TRUE
Multi = TRUE
URL = "$TYPE(htm)(^$LST(Bypass_Start-End))"
Bounds = "<ProxMarkHdrTop>"
Limit = 32
Match = "*"
Replace = "<script type="text/javascript" src="http://local.ptron/start.js"></script>"
"
<ProxMarkHdrTop>$STOP()"
Name = "Header (top) Single: Mark end"
Active = TRUE
URL = "$TYPE(htm)(^$LST(Bypass_Start-End))"
Bounds = "<ProxMarkHdrTop>"
Limit = 32
Match = "*"
Replace = "<!-- End injected Proxomitron filters Header Top -->"
"
$STOP()"
Name = "Header (bottom) Multi: Mark start"
Active = TRUE
Multi = TRUE
URL = "$TYPE(htm)(^$LST(Bypass_Start-End))"
Limit = 128
Match = "</head>"
"|"
"("
"("
"((<html*>) &(^*<head>))"
"|"
"(<body)1"
")"
"&$SET(2=
<head>)"
")"
Replace = " 2
"
"<!-- Start injected Proxomitron filters Header Bottom -->
<ProxMarkHdrBottom>
"
"</head>
1$STOP()"
Name = "Header (bottom) Multi Inject: DHTML Menu Script"
Active = TRUE
Multi = TRUE
URL = "$TYPE(htm)(^$LST(Bypass_Start-End))"
Bounds = "<ProxMarkHdrBottom>"
Limit = 32
Match = "*"
Replace = "<script type="text/javascript" src="http://local.ptron/menu.js"></script>"
"
<ProxMarkHdrBottom>$STOP()"
Name = "Header (bottom) Single: Mark end"
Active = TRUE
URL = "$TYPE(htm)(^$LST(Bypass_Start-End))"
Bounds = "<ProxMarkHdrBottom>"
Limit = 32
Match = "*"
Replace = "<!-- End injected Proxomitron filters Header Bottom -->"
"
$STOP()"
------------------------- Bypass Start-End.txt -------------------------
#dummy
------------------------------------------------------------------------
My Bypass Start-End list is currently empty
.
Filters 1 and 4 do the main job. If an essential tag is missing, they create it.
Filters 2 and 5 are just examples.
The top of the header block is where i place most of my start filteres. Start.js *has* to be here, if you use it.
The bottom of the header block is the place of choice for non-essential scripts.
If you want your StyleSheet to override the one of the page author, place it here as well.
Filters 3 and 6 do the clean-up and mark the end.
/sidki