Could not JS everywhere someday be replaced by Red everywhere - or some derived fork ?
Yes; they have a good model, but it's all ugly web technologies
I agree but what else could be used - something built aroud the JVM - may be ? It must be a bit like Carl's REBOL based vision, isn't it ? Entirely self contained to be deployed anywhere but written once ...
Now it could be Red based instead ;-)
Yes, all true. I've long been working on a system with roughly that model, but we only use it internally so far
Nice, do you use some GUI for the output, kind of VId I suppose ?
Or do you send the output to some esternal receiver using messages protocols ?
But then how do you catch the input if it not already part of your own system ?
It's a web system currently, but it's prepared to support other platforms. My Try REBOL site is made with it
REBOL 2 is no use to me because it would never run on Syllable, and REBOL 3 still only has a GUI for Windows and Amiga, so it hasn't been useful for me to make a VID frontend
(from #Red) - Arnold, which version of Make Doc are you using? I've many iterations of MD that I've hacked away at over the years, perhaps I'll have something that will be easier to hack? Most recent version I put together for the 'Notes For the Road' site, has some nice features - currently hacking at it again for a more ambitious QM project...
Chris, I am stil figuring this out. I want bold/italic/(underline)/(em) paragrapphs separated with a blank line (easier to understand and no need to delete a routinely typed 'return'-key) h1/h2/h3 img (inline/left right center aligned) and a-href, only 1 level of bullits, and I think I can come along without numbered sections. I was thinking about mark-up delimiters on the beginning of the line like === ==+ ==- ==* ==# I kind of liked \note and /note or /code but everybody will forget if the first one will be fore or backslashed so I guess the indented version to produce code. Plus I want the markup to be from a css file. No need to make this within the script because the template/and a script can take care of where and which to link to. That's about it.
Doesn't sound too onerous - I'd say most of the changes could be made to the parser, then tweak the emitter to get the output you want. Do you have a sample document? Is this the version you're using? - http://reb4.me/r/xhtml
This is a new version to me. I was still busy figuring out most of the used parses.
I tried some today, not satisfactory results yet.
figured out the line write %mijndoc.htmlÊgen-doc read %mijndoc.txt
makedoc2 results on the other hand were nicer but that was not it either.
The structure of MD since v2 is a separation of scanner and emitter. 'scan-doc will break text into a block of [style content] pairs. 'gen-doc will take that block and turn it into something, most commonly HTML.
The features of your doc - using your ==+, ==#, etc. are in the spec of the parser. Loosely explained, the parser's rule 'resets' when it encounters a newline. It defines a few paragraph types that copies chunks of text (including 'paragraph that consumes text AND single newlines). The rest of the rule determines the paragraph style and expected paragraph type:
"===" text-line (emit sect1 text)
Could just as easily be:
"==+" paragraph (emit my-bold-paragraph para)
The way a document is presented is all in the emitter. Seems this is where you seem to be yearning for most control. My first motivation using MakeDoc was stripping it of any styles - I just wanted a minimum of HTML markup that could be embedded and properly moulded by CSS. In my script above, I iterate through the [style content] list and use 'switch to determine how to handle each, this should be sufficient for documents without any complexity. It's really then just a case of modifying the HTML that is emitted.
Example of script used in RSP (exposes [escape-html scan-doc gen-doc]):