Converts (makes HTML Encoding) files in folder recursively and
creates a web-site mirroring source folder in
RESULT_FILES folder.
Creates front page as an index for converted folder:
front page contains:
list of subfolders,
list if entire site contents;
index.htm in each result subfolder with local contents;
former index.htm renamed to original_index.htm;
(little drawback, if file "original_index.htm"
exist, it will be "overwritten";)
Adds .htm extensions to all result files names.
navigation buttons home, top, up, next, ...
Usage Click on menu\Go and when conversion is completed,
go to RESULT_FILES and browse to front page.
Features: - layout controlled by file ...global.css.txt file which can be
edited/set before or edited after conversion.
- entities in contents are indented to reflect deepness in folder tree.
- units order in contents is uncertain,
in any case, files listed first and folders next.
after conversion, order can be edited manually in
- front_page (which does not change the order
coded in "previous" and "next" links);
- "previous" and "next" links, which can pose to much
work and is disadvantage.
Schema-variables
UN - Unit Number of file or folder.
Master Index through all site.
FP - front page name
contents - list if folders placed in front page
local - local list - the contents of local index
list - global list - the contents of front page
zebra - class of zebra stripe's
H - HTML header beginning
E - HTML ending tags
this_folder - folder in which scope parsing goes
Links to ..
H_L .. to home site
FP_L .. to front page
back_L .. to front page folder
C_L .. to own place in contents
this_L .. to itself: to folder or file
this_LL .. to itself, local link;
P_LL .. to previous sibling, local link;
constN - is reserved, N>=2
'=====================================================================
\\|=schema_version."folder2html 14 for S2S Rev 22.2 and higher"
'=====================================================================
'set your own site parameters:
|=FP."examples.htm" 'set front page name -
'this will be an index file for converted folder;
'generated index name in subfolders:
'put "default.htm" for Microsoft platform:
|=index."index.htm"
'set home link:
|=H_L."http://www.pharmease.com/development/"
'select style:
|=styles_file."colored_global.css.txt"
'this sets characters and their number in indent-unit:
|indent." "
'actual indent = indent-unit * deepness in folder tree;
'==============================================================
' comment out or remove this instruction to disable its effect:
'--------------------------------------------------------------
|include."custom.txt"
'==============================================================
'set converter mode:
|output_text_to_console.f
|native_separators.false
|=lindex."\L$index"
|=An."<a class=""navi"" href=""" 'shortcut for navigation liks
'prepare data:
|=H."<html><head><title>"
|=E."</pre></body></html>"
'variables for subfolders of folder RESULT_FILES:
|=P_LL.FP
|=zebra."fl"
|=list."<div class=""cont_title""><pre>\l\l"
|&list." Contents\l\l</div>"
|=upper_index_L_top.FP
|=upper_index_L.index
|=const2."_top"
'constN by default will be ""
- .bop :
..&contents."<div class=""contents"">\l" :
..&contents."<div class=""cont_title""><pre>\l\l" :
..&contents." $p_source folders\l\l</div><pre>\l" :
|read$global_styles."$styles_file" :
..save$global_styles."$styles_file"
.bof :
..=this_folder : 'save token for safety
'swich colors:
..?zebra."fd" ..=zebra."fl" ..=zebra."fd" :
..?zebra."fd" ..=Fzebra."dd" ..=Fzebra."dl" :
+.advance_master_index :
..=this_LL."$index" :
..=this_L."\R\\./,$p_local_path /$this_LL" : 'to index
+.complete_delayed :
'put this folder into the parent index:
..&local." <a class=""$Fzebra"" href=""$this_folder /$index"">$ </a>\l" :
'save current parent's values:
..=@.local :
'prepare data for children:
'initiate this folder's index:
..=local."<div class=""$zebra""><pre>" :
'make a subtitle of folder name:
..&local."<div class=""$Fzebra"" id=""$HASH""><pre>" :
..&list."$local $Indent" :
..&list."<a class=""$Fzebra"" href=""$this_L"">$ </a>" :
..&local." $this_folder" :
..=wlowcase."\L$this_folder" :
..&list."</pre></div>" :
..&local."</pre></div>$suppl_$wlowcase" :
..&contents." $Indent <a class=""cont"" href=""#$HASH "">$this_folder </a>\l" :
>-s :
'store values of this folder in folder's level:
'make back path:
..=w.# :
..-w.1 :
..=back_L$#."\e$w .\p\p/," :
..=FP_L$#."$back_L$# $FP" :
..=C_L$#."$FP_L$# #$HASH" :
..=P_LL$#.P_LL :
'Variable Indent restored at beginning and end of
'folder to reflect nesting structure of folder tree.
'Remove CRLF from indent and assign result to Indent:
'Indent will be used in list and contents:
..=P_LL.index :
"$indent ".=Indent."\l".""
.eof :
.=this_folder :
..=this_LL."$index" :
+.complete_delayed :
..&local."</pre></div>" :
..&list."</pre></div>" :
..=w."$H $this_folder </title>\l\F
<link rel=stylesheet type=""text/css"" href=""$back_L$# $styles_file"">\l\F
</head><body>\l<a name=""top""><br />\l
<!-- navigation -->
<div class=""navig"">
$An $H_L"">home</a>
$An $FP_L$#"">top</a>
$An $C_L$#"">contents</a>
$An ../$P_LL$#"">previous</a>
$An ../$upper_index_L$const$#"">up</a>
<!-- no next done yet: use up instead -->
</div>\l\F
$local \l\F
</body></html>" :
..?$p_local_path."" ..=ww."\\$p_local_path \\" ..=ww."" :
..save$w."$p_umbrella \\$p_shield \\$ww $this_folder \\index.htm" :
< :
'Restore
..=local.@ : 'parent local_list:
"$indent ".=Indent."\l"."" : 'Indent after ending folder:
..=P_LL."$this_folder /$index"
.bot :
..=hash."" :
*"\L$".BOT :
.end
'===================================================
' files with this extensions are simply
' copied, not converted, and
' optionally included in front page;
' add more extensions if needed here, or
' comment out to disable conversion:
'
' .include_to_lists event does not affect added
' navigation buttons structure and links;
'
'---------------------------------------------------
"zip".BOT "$in" +.include_to_lists
"htm".BOT "$in" :
..=w."\L$p_file" :
..?w."$lindex" :
+.preserve_original_index :
+.include_to_lists
"html".BOT "$in" :
..=w."\L$p_file" :
..?w."$lindex" :
+.preserve_original_index :
+.include_to_lists
"gif".BOT "$in"
"jpg".BOT "$in"
"class".BOT "$in"
"bmp".BOT "$in"
"tif".BOT "$in"
"wav".BOT "$in"
'to completely exclude *.frx files from result:
"ico".BOT
"frx".BOT
'===================================================
.BOT ..=p_rextension."$p_rextension .htm" :
+.advance_master_index :
..=C_L."$FP_L$# #$HASH" :
..=hash." id=""$HASH"" " :
+.include_to_lists :
+.complete_delayed :
'prepare own data for delayed output:
..=delayed."$H $p_file </title>
<link rel=stylesheet type=""text/css"" href=""$back_L$# $styles_file"">\l\F
</head><body> \l\F
<div class=""navig"">
$An $H_L"">home</a>
$An $FP_L$#"">top</a>
$An $C_L"">contents</a>
$An $P_LL"">previous</a>
$An $index"">up</a>" :
..=delayed_body."\h$in" : '-this does html-encoding
..&delayed_body."$E" :
..=delayed_dos_path."$p_umbrella \\$p_shield \\$p_local_path \\$p_rfile " :
..=P_LL."$this_LL" :
..=out."" 'to disable saving delayed file now
.preserve_original_index : 'rename it and include in new index:
..=p_rbasic."original_index." :
+.include_to_lists
.include_to_lists :
'also, generates two variables:
..=this_L."\R\\./,$p_local_path /$p_rfile" :
..=this_LL."$p_rfile" :
'check will be unit highlighted --------->>>>
' adds <span> tag
..=w."$p_local_path \\$p_file" :
..}files_to_highlight.w :
..=wleft."<span class=""highlight"">" :
..=wleft."" :
..?wleft."" :
..=wright."" :
..=wright."</span>" :
'----------------------------------------<<<<
..&list." $Indent" :
..&local." " :
..&list."<a $hash href=""$this_L"">" :
..&local."<a $hash href=""$this_LL"">" :
..=w."$wleft $p_file $wright </a>\l" :
..&local.w :
..&list.w
.complete_delayed :
..?delayed."" : +.finish_delayed
.finish_delayed :
'take care about delayed page:
..=w."$delayed " :
..&w." <a class=""navi"" " :
..&w."href=""$this_LL"">next</a></div><pre>\l" :
..&w."$delayed_body" :
..save$w."$delayed_dos_path" :
..=delayed.""
.advance_master_index :
..+UN.1 : 'index unit
..=w.UN :
..%w.30 :
..?w.0 : 'put "return to top of the page" in front page if time:
..&list."\l<div><pre> $Indent $An #top"">top</a>\l</pre></div>\l" :
.n :
..=HASH."n$UN"
- .eop ..=this_L."$FP" :
+.complete_delayed :
..=out."$H $this_folder </title>\l\F
<link rel=stylesheet type=""text/css"" href=""$styles_file"">\l\F
</head><body>\l<a name=""top"">\l$preface $contents \l\l</pre></div>\l\l$list <pre>
Converted by <a href=""http://pharmease.com/development"">$p_version </a>
Schema version $schema_version .
</pre></body></html>" :
..save$out."$FP"