speced / respec Goto Github PK
View Code? Open in Web Editor NEWA tool for creating technical documents and web standards
Home Page: https://respec.org/
License: Other
A tool for creating technical documents and web standards
Home Page: https://respec.org/
License: Other
Both v1 and v2 docs need to point here.
As part of the WebIDL bugs that will be fixed by the introduction of WebIDL.js plus templates, this one is particularly useful.
We have lots of type related operations in WebIDL, and they should all be centralised and encapsulated because right now it's a total mess.
RS1 had no templating (which was horrible), RS2 used successively TT (which is too buggy) and jqTmpl (which is deprecated). Switch to Handlebars.
It was dropped with the new template, it should be reinserted.
It might be a good idea to do this while it's still time. Jasmine's support for asynchronous is... weird.
As per PLH's request.
Swap in the loader and the build tools.
Generate a specific build that can be referred to so that documents include specific versions and not the latest (though it would be nice to have a -latest version as well for those who like the bleeding edge).
Use grunt to run the build.
Build two first modules: one that just does the small basic things, and the other that does all the rest. Make a profile out of it.
Once that works, this becomes the canonical version of RS.
This would allow mapping to existing track issues.
Currently warnings and errors go to an inconvenient overlay in the corner. This should be replaced with a little box that a) tells you when processing has terminated (steps done/steps total) b) gives a discreet indication of the number of errors and warnings that can be expanded. This would make it possible to add more linting without getting in the way of casual reading.
The save-as box also needs to be revised. It should be possible for arbitrary parts of the system to register themselves to be in that toolbox (in fact, the toolbox should be linked from the aforementioned little corner overlay box so that you don't need to learn barbarian shortcuts).
PhantomJS isn't great but may be workable if we can track progress reliably.
The one we have is pretty bad. Choose a good one and switch to that.
It should be possible to properly support saving generated RS documents.
respec doesn't support stringifier in the following WebIDL fragments:
interface foo {
stringifier attribute DOMString bar;
};
(that one seems to prevent further WebIDL processing?)
interface foo {
stringifier DOMString ();
}
(this one is shown as if DOMString was the name of the method, and stringifier its type)
Would it make sense to use a make-like approach when defining a profile? It could increase parallel processing.
The CSS people do it.
These are:
changeset: 119:063b7e46bc1f
tag: tip
user: [email protected]
date: Tue May 29 18:10:07 2012 -0700
files: guide/index.html index.html js/core/base-runner.js js/core/tmpl.js js/respec-docs/profile-respec-docs.js
description:
Fixed some minor issues, and made the system IE10 compatible:
* Fixed links to allow proper pre-reqs to load for respec processing on
the root index and guide pages. (These pages were not being styled correctly
due to respec processing failures.)
* Added a few helps to make respec more robust to a lack of configuration file
(base-runner.js)
* Implemented a cross-browser compatible workaround for loading HTML fragments,
which unfortunately didn't work in IE because of a interop-bug in how
"about:blank" documents are asynchronously initialized.
* Fixed usage of require.js to properly implement dependency chains as implied
by the existing code comments. These would only work in IE when I "soft"
refreshed the page because the needed dependencies were already in the cache;
on a full refresh or cold visit, the tmpl.js file would load before the
prereq code was done and mess things up. This was an accident waiting to
happen in the other browsers as well, which I simulated by adding some
network latency for base-runner.js and observing the failure in chrome and
firefox too. Couldn't find the particular line in the require.js file that
states this specificially, but the ONLY guarantee that require.js makes is
that all of the required files in the list will be loaded before the callback
--not that the files in the required list will all be loaded in the specified
order. But now you know. :-)
use simple async s
diff -r 43c64d5b5b73 -r 063b7e46bc1f guide/index.html
--- a/guide/index.html Thu May 17 17:04:18 2012 +0200
+++ b/guide/index.html Tue May 29 18:10:07 2012 -0700
@@ -1,9 +1,9 @@
-<!DOCTYPE html>
+<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<title>The Guide</title>
- <script src='/guide/docs-config.js' class='remove'></script>
+ <script src='docs-config.js' class='remove'></script>
<script data-main='respec-docs/profile-respec-docs' src='../js/require.js' class='remove'></script>
</head>
<body>
diff -r 43c64d5b5b73 -r 063b7e46bc1f index.html
--- a/index.html Thu May 17 17:04:18 2012 +0200
+++ b/index.html Tue May 29 18:10:07 2012 -0700
@@ -1,9 +1,9 @@
-<!DOCTYPE html>
+<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<title>Welcome!</title>
- <script src='/guide/docs-config.js' class='remove'></script>
+ <script src='guide/docs-config.js' class='remove'></script>
<script data-main='respec-docs/profile-respec-docs' src='js/require.js' class='remove'></script>
</head>
<body>
@@ -13,8 +13,8 @@
<h2>Welcome to ReSpec</h2>
<p>
This is the server from which ReSpec v2 is made available. Chances are you're looking for the
- <a href='/js/'>actual Javascript code</a>, perhaps for <a href='/js/profiles/'>an existing profile</a>,
- or if human-readable documentation is more your type, <a href='/guide/'>the guide</a> might be
+ <a href='js/'>actual Javascript code</a>, perhaps for <a href='js/profiles/'>an existing profile</a>,
+ or if human-readable documentation is more your type, <a href='guide/'>the guide</a> might be
a better bet.
</p>
<p>
diff -r 43c64d5b5b73 -r 063b7e46bc1f js/core/base-runner.js
--- a/js/core/base-runner.js Thu May 17 17:04:18 2012 +0200
+++ b/js/core/base-runner.js Tue May 29 18:10:07 2012 -0700
@@ -14,6 +14,10 @@
GLOBAL.error = function (str) {
console.error("E: " + str);
+ // Since errors can not successfully continue execution (something will
+ // break downstream, for example not supplying an editor as in
+ // conf.editors in headers.js), throw to stop ReSpec processing.
+ throw new Error("ReSpec2 configuration error--please see console output for details");
};
GLOBAL.progress = function (str) {
@@ -29,7 +33,8 @@
runAll: function (plugs) {
// the first in the plugs is going to be us
plugs.shift();
- if (!respecConfig) respecConfig = {};
+ // Use window.* to avoid a ReferenceError when respecConfig does not exist.
+ if (!window.respecConfig) respecConfig = {};
// the base URL is used by some modules
var $scripts = $("script"),
diff -r 43c64d5b5b73 -r 063b7e46bc1f js/core/tmpl.js
--- a/js/core/tmpl.js Thu May 17 17:04:18 2012 +0200
+++ b/js/core/tmpl.js Tue May 29 18:10:07 2012 -0700
@@ -24,14 +24,21 @@
// loads templates as parsed HTML given a string
loadFromHTML: function (str, doc) {
- var $body = $("body", doc),
- $ifr = $("<iframe/>").css({display: "none"}).attr("src", "about:blank");
- if ($body.length) $ifr.appendTo($body);
- else $("head", doc).after($ifr);
- var iDoc = $ifr[0].contentWindow.document;
- iDoc.documentElement.innerHTML = str;
- this.loadAllTemplates(iDoc);
- $ifr.remove();
+ // IE does not sychronously load a document element + head/body into about:blank.
+ // There appeared to be [generally] a faster way to do this, so implementing that
+ // instead
+ var divorcedHTMLDoc = doc.implementation.createHTMLDocument("loading...");
+ divorcedHTMLDoc.documentElement.innerHTML = str;
+ this.loadAllTemplates(divorcedHTMLDoc);
+ // [OLD TECHNIQUE]
+ //var $body = $("body", doc),
+ // $ifr = $("<iframe/>").css({display: "none"}).attr("src", "about:blank");
+ //if ($body.length) $ifr.appendTo($body);
+ //else $("head", doc).after($ifr);
+ //var iDoc = $ifr[0].contentWindow.document;
+ //iDoc.documentElement.innerHTML = str;
+ //this.loadAllTemplates(iDoc);
+ //$ifr.remove();
},
ieDummy: 1
};
diff -r 43c64d5b5b73 -r 063b7e46bc1f js/respec-docs/profile-respec-docs.js
--- a/js/respec-docs/profile-respec-docs.js Thu May 17 17:04:18 2012 +0200
+++ b/js/respec-docs/profile-respec-docs.js Tue May 29 18:10:07 2012 -0700
@@ -3,27 +3,36 @@
"core/base-runner",
"core/utils",
"core/override-configuration",
-
- // modules that are used by the profile
- "core/default-root-attr",
- "respec-docs/style",
- "core/style",
- "respec-docs/headers",
- "core/data-include",
- "core/inlines",
- // "core/webidl",
- "core/examples",
- "w3c/bibref",
- "core/structure",
- "core/dfn",
- "robineko/add-container",
- // these at the end
- "core/remove-respec"
],
- function (runner) {
- var args = arguments;
- require.ready(function () {
- runner.runAll(Array.prototype.slice.call(args));
+ function preReqsComplete() {
+ var preReqObjectsArray = Array.prototype.slice.call(arguments);
+ require([
+ // modules that are used by the profile
+ "core/default-root-attr",
+ "respec-docs/style",
+ "core/style",
+ "respec-docs/headers",
+ "core/data-include",
+ "core/inlines",
+ // "core/webidl",
+ "core/examples",
+ "w3c/bibref",
+ "core/structure",
+ "core/dfn",
+ "robineko/add-container",
+ ],
+ function reqsComplete() {
+ var reqObjectsArray = Array.prototype.slice.call(arguments);
+ require([
+ // these at the end
+ "core/remove-respec"
+ ],
+ function postReqsComplete() {
+ var postReqObjectsArray = Array.prototype.slice.call(arguments);
+ require.ready(function() {
+ preReqObjectsArray[0].runAll(preReqObjectsArray.concat(reqObjectsArray,postReqObjectsArray));
+ });
+ });
});
}
);
And:
changeset: 120:ce9f0cc50fed
tag: tip
user: [email protected]
date: Tue May 29 18:19:29 2012 -0700
files: guide/basic-layout.html guide/building-static.html guide/dev-basics.html guide/dev-plugins.html guide/dev-profiles.html guide/essential-boilerplate.html guide/inline.html guide/structure.html guide/upgrade-from-v1.html guide/webidl.html
description:
Removed the "/guide/" prefix to the respec reqs documents from these files so
they all load correctly.
diff -r 063b7e46bc1f -r ce9f0cc50fed guide/basic-layout.html
--- a/guide/basic-layout.html Tue May 29 18:10:07 2012 -0700
+++ b/guide/basic-layout.html Tue May 29 18:19:29 2012 -0700
@@ -1,9 +1,9 @@
-<!DOCTYPE html>
+<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<title>Basic Layout</title>
- <script src='/guide/docs-config.js' class='remove'></script>
+ <script src='docs-config.js' class='remove'></script>
<script data-main='respec-docs/profile-respec-docs' src='../js/require.js' class='remove'></script>
</head>
<body>
diff -r 063b7e46bc1f -r ce9f0cc50fed guide/building-static.html
--- a/guide/building-static.html Tue May 29 18:10:07 2012 -0700
+++ b/guide/building-static.html Tue May 29 18:19:29 2012 -0700
@@ -1,9 +1,9 @@
-<!DOCTYPE html>
+<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<title>Static Snapshots</title>
- <script src='/guide/docs-config.js' class='remove'></script>
+ <script src='docs-config.js' class='remove'></script>
<script data-main='respec-docs/profile-respec-docs' src='../js/require.js' class='remove'></script>
</head>
<body>
diff -r 063b7e46bc1f -r ce9f0cc50fed guide/dev-basics.html
--- a/guide/dev-basics.html Tue May 29 18:10:07 2012 -0700
+++ b/guide/dev-basics.html Tue May 29 18:19:29 2012 -0700
@@ -1,9 +1,9 @@
-<!DOCTYPE html>
+<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<title>Development Basics</title>
- <script src='/guide/docs-config.js' class='remove'></script>
+ <script src='docs-config.js' class='remove'></script>
<script data-main='respec-docs/profile-respec-docs' src='../js/require.js' class='remove'></script>
</head>
<body>
diff -r 063b7e46bc1f -r ce9f0cc50fed guide/dev-plugins.html
--- a/guide/dev-plugins.html Tue May 29 18:10:07 2012 -0700
+++ b/guide/dev-plugins.html Tue May 29 18:19:29 2012 -0700
@@ -1,9 +1,9 @@
-<!DOCTYPE html>
+<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<title>Plugins</title>
- <script src='/guide/docs-config.js' class='remove'></script>
+ <script src='docs-config.js' class='remove'></script>
<script data-main='respec-docs/profile-respec-docs' src='../js/require.js' class='remove'></script>
</head>
<body>
diff -r 063b7e46bc1f -r ce9f0cc50fed guide/dev-profiles.html
--- a/guide/dev-profiles.html Tue May 29 18:10:07 2012 -0700
+++ b/guide/dev-profiles.html Tue May 29 18:19:29 2012 -0700
@@ -1,9 +1,9 @@
-<!DOCTYPE html>
+<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<title>Profiles</title>
- <script src='/guide/docs-config.js' class='remove'></script>
+ <script src='docs-config.js' class='remove'></script>
<script data-main='respec-docs/profile-respec-docs' src='../js/require.js' class='remove'></script>
</head>
<body>
diff -r 063b7e46bc1f -r ce9f0cc50fed guide/essential-boilerplate.html
--- a/guide/essential-boilerplate.html Tue May 29 18:10:07 2012 -0700
+++ b/guide/essential-boilerplate.html Tue May 29 18:19:29 2012 -0700
@@ -1,9 +1,9 @@
-<!DOCTYPE html>
+<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<title>Boilerplate</title>
- <script src='/guide/docs-config.js' class='remove'></script>
+ <script src='docs-config.js' class='remove'></script>
<script data-main='respec-docs/profile-respec-docs' src='../js/require.js' class='remove'></script>
</head>
<body>
diff -r 063b7e46bc1f -r ce9f0cc50fed guide/inline.html
--- a/guide/inline.html Tue May 29 18:10:07 2012 -0700
+++ b/guide/inline.html Tue May 29 18:19:29 2012 -0700
@@ -1,9 +1,9 @@
-<!DOCTYPE html>
+<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<title>Inlines</title>
- <script src='/guide/docs-config.js' class='remove'></script>
+ <script src='docs-config.js' class='remove'></script>
<script data-main='respec-docs/profile-respec-docs' src='../js/require.js' class='remove'></script>
</head>
<body>
diff -r 063b7e46bc1f -r ce9f0cc50fed guide/structure.html
--- a/guide/structure.html Tue May 29 18:10:07 2012 -0700
+++ b/guide/structure.html Tue May 29 18:19:29 2012 -0700
@@ -1,9 +1,9 @@
-<!DOCTYPE html>
+<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<title>Structure</title>
- <script src='/guide/docs-config.js' class='remove'></script>
+ <script src='docs-config.js' class='remove'></script>
<script data-main='respec-docs/profile-respec-docs' src='../js/require.js' class='remove'></script>
</head>
<body>
diff -r 063b7e46bc1f -r ce9f0cc50fed guide/upgrade-from-v1.html
--- a/guide/upgrade-from-v1.html Tue May 29 18:10:07 2012 -0700
+++ b/guide/upgrade-from-v1.html Tue May 29 18:19:29 2012 -0700
@@ -1,9 +1,9 @@
-<!DOCTYPE html>
+<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<title>Upgrading</title>
- <script src='/guide/docs-config.js' class='remove'></script>
+ <script src='docs-config.js' class='remove'></script>
<script data-main='respec-docs/profile-respec-docs' src='../js/require.js' class='remove'></script>
</head>
<body>
diff -r 063b7e46bc1f -r ce9f0cc50fed guide/webidl.html
--- a/guide/webidl.html Tue May 29 18:10:07 2012 -0700
+++ b/guide/webidl.html Tue May 29 18:19:29 2012 -0700
@@ -1,9 +1,9 @@
-<!DOCTYPE html>
+<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<title>WebIDL</title>
- <script src='/guide/docs-config.js' class='remove'></script>
+ <script src='docs-config.js' class='remove'></script>
<script data-main='respec-docs/profile-respec-docs' src='../js/require.js' class='remove'></script>
</head>
<body>
This is a regression from the new code.
It would be wonderful if all that happened inside RS were signalled using postMessage. This would make it possible to build "shells" in the same manner that they are built for DZSlides.
We need to have a test system. The new development rule is that every single module that gets added is only added with tests and documentation. This should lead to progressive enhancement of the testing status.
Which test system to use?
When processing finishes, find the element and scroll to it.
dictionary foo {
DOMString[] bar;
};
gets properly counted as array in the generated prose, but the pretty-printed Web IDL appears as
dictionary foo {
DOMString bar;
};
(where the [] is eaten)
For array of arrays ([][]) only the first pair of [] is eaten (but the generated prose doesn't say array of array of ..., but array of ...[])
The WebDriver spec has examples of this. Overall we need to make sure that type parsing and writing is stronger.
Hanging off the new UI menu, the option to lint a document should be included (from w3c/lint). This would notice things like having to force-wrap the abstract, not having a customised SotD paragraph, duplicate IDs, failed internal anchors, and whatever is simple to bring over from pubrules.
We could grab the generated source and send it to validator.nu if it has an API.
It might be useful to always run this when the user tries to save a snapshot.
Otherwise some browsers give warnings or refuse to load the content.
It no longer validates.
We typically have "live" documents that represent the latest editor's draft, like so:
http://json-ld.org/spec/latest/json-ld-syntax/
Often, we would like to link people to a section of the document, like so:
http://json-ld.org/spec/latest/json-ld-syntax/#iris
You will note that the link to the fragment identifier above doesn't work if you click on the link above, but will work if you wait for ReSpec to do it's thing and then go to the Table of Contents and click on the "IRI" link. I'm guessing it's because when the browser hits the page, the fragment identifier doesn't exist because the ReSpec code hasn't run yet. Could we have a bit of code that runs after the entire document has been rendered to navigate to any fragment identifier that exists in the URL bar?
For subsections generated by respec for WebIDL fragments (e.g. "Attributes", "Methods"), the headings generated for "HTML4" compatibility are all h2 (where other subsections get a heading in function of their nesting level).
Remove the current reference system which is too clunky and slow. Instead, use as many files as there are references, all of which are JSON-P calling a ref("FOO", "Foo Specification...")
function.
Add a configuration option to specify the prefix to use when providing feedback to a mailing list (and presumable include the proper ?subject= link).
If you wish to make comments regarding this document, please send
them to [email protected]?subject=[foo] (subscribe, archives)
with <code>[foo]</code> at the start of the subject header.
(From mounir, ArtB)
I'm imaging something like being able to write:
<dt> enum SdpType { "offer", "pranswer", "answer" } </dt>
<dd> <p> blah blah blah </p> </dd>
but just wanted to let you Dan was going to be making some progress on this.
(from Cullen, DanB)
Or they may be reintroduced at the wrong step if things are happening out of order.
Cullen wrote:
I wish I could write HTML like
<dl title='callback IceCandidateCallback = void' class='idl' >
<dt>IceCandidate candidate</dt>
<dd>The new ICE candidate. </dd>
</dl>
and have it generate some IDL that looked something like
callback IceCandidateCallback = void( IceCandidate candidate )
with text below breaking out that parameters and explanation text for them much like respec does for an interface IDL
Here is a patch from Mike[tm](against v2)
diff -r 4b656ac82e6d js/core/webidl.js
--- a/js/core/webidl.js Mon Oct 25 05:43:27 2010 +0900
+++ b/js/core/webidl.js Tue Oct 26 05:52:02 2010 +0900
@@ -519,12 +519,14 @@
for (var i = 0; i < meth.arguments.length; i++) {
var it = meth.arguments[i];
var optional = it.optional ? "optional " : "";
+ var variadic = it.variadic ? "..." : "";
var inp = this.noIDLIn ? "" : " in ";
var $prm = $("<span class='idlParam'>")
.append(this.writeExtAttrs(it.extAttrs, null))
.append(inp + optional);
var $ptype = $("<span class='idlParamType'/>").append(this.writeDatatype(it.type));
$prm.append($ptype)
+ .append(variadic)
.append(" ")
.append($("<span class='idlParamName'/>").text(it.name));
$span.append($prm);
Shane ( @halindrome ) did an update just before RDFa Core 1.1 went to CR to add support for RDFa 1.1 output. This included some other structural changes that dramatically improved the quality of the generated RDFa.
I recently updated the JSON-LD specs (e.g. http://json-ld.org/spec/latest/json-ld-syntax/) to use ReSpec.next and it doesn't seem that these changes made it over. Just a request to add it to your queue.
An approach built on postMessage() as in DZSlides is great.
It gets included twice.
Some references are best kept out of the main DB, at least temporarily. It would be useful to be able to specify a handful of those in the configuration.
localReferences: {
FOO: {... ref definition ...}
}
Currently they aren't protected against that the way that operations are.
There are differences between v1 and v2 here, and I need to check what the status is for XGR support is (low-priority though, since XGRs are gone). Below is what DanB had to say:
(The status section) must begin with:
Include this source code:
This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of Final Incubator Group Reports is available. See also the W3C technical reports index at http://www.w3.org/TR/.
Regarding stability,
Include this source code:
Publication of this document by W3C as part of the W3C Incubator Activity indicates no endorsement of its content by W3C, nor that W3C has, is, or will be allocating any resources to the issues addressed by it. Participation in Incubator Groups and publication of Incubator Group Reports at the W3C site are benefits of W3C Membership.
Instead it appears that you include the more generic text for a working draft. And yes, I have told reSpec that this is an Incubator Group report.
Additionally, there is recommended text about text regarding patent policy requirements. For us, the sample text provided is fine:
Include this source code:
<p>Incubator Groups have as a <a href="http://www.w3.org/2005/Incubator/procedures.html#Patent">goal</a> to
produce work that can be implemented on a Royalty Free basis, as defined in the W3C Patent Policy. Participants in
this Incubator Group have made no statements about whether they will offer licenses according to the
<a href="http://www.w3.org/Consortium/Patent-Policy-20030520.html#sec-Requirements">licensing
requirements of the W3C Patent Policy</a> for portions of this Incubator Group Report that are subsequently
incorporated in a W3C Recommendation.</p>
But I can add that as a custom paragraph as long as you don't include any statements about patent policy.
If you want to see all of this in context, here's the document I ran through pubrules: http://www.w3.org/2005/Incubator/htmlspeech/finalreport/tempdoc.html
(the reSpec master is http://www.w3.org/2005/Incubator/htmlspeech/finalreport/XGR-htmlspeech.html)
There are other errors, of course, which I am working on, but the boilerplate is inserted automatically by reSpec and is thus outside of my control.
Replace with actual DOM changes.
If you look at http://json-ld.org/spec/latest/json-ld-syntax/, you'll see that the last two paragraphs of the SOTD are repeated right after the TOC. When I ran locally on my dev machine, it didn't seem to happen. This is with rev 3.1.1.
BTW, trying it with 3.1.2 or 3.1.3 resulted in most sections not being numbered, and not showing up in the TOC. Not sure this was a planned change.
I'm trying to publish a W3C Working Group Note and pubrules flagged the following ReSpec-generated text issues:
Everything else seems to work fairly well.
We will be needing those very soon.
The RS2 documentation is much nicer than the v1 docs where it exists, but less complete. Port it over, and start integrating new content. Include the old doc as part of it, only deleting bits that have been properly ported over (using the same Evol method).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.