' + header.innerHTML + '';
+ } else if (current_level > level) {
+ // lower level, we open new nested lists
+ for(i = current_level; i > level; i--) {
+ html += '- ';
+ }
+ html += '' + header.innerHTML + '';
+ }
+
+ var header_link = '';
+ $(header).prepend(header_link);
+
+ if (!$(header).prev().is('h1')) {
+ $(header).after(back_to_top);
+ }
+
+ level = current_level;
+ });
+
+ html += '
';
+
+ output.html(html);
+ }
+
+ // back to top links
+ $(document).on('click', '.to_top', function() {
+ $(window).scrollTop(0);
+ window.location.hash = '';
+ });
+
+ // we add one more at the end of the document
+ $('#content-container').append(back_to_top);
+
+};})(jQuery);
+
diff --git a/spec/public/stylesheets/print.css b/spec/public/stylesheets/print.css
new file mode 100644
index 000000000000..3fbc5596c055
--- /dev/null
+++ b/spec/public/stylesheets/print.css
@@ -0,0 +1,15 @@
+/* This removes a few things from screen.css for printing */
+
+body {
+ padding: 0px;
+ margin: 0.5em;
+}
+
+.anchor, #navigation, .to_top {
+ display: none;
+}
+
+#content-container {
+ width: 100%;
+ float: none;
+}
diff --git a/spec/public/stylesheets/screen.css b/spec/public/stylesheets/screen.css
new file mode 100644
index 000000000000..dbb3ebe1b352
--- /dev/null
+++ b/spec/public/stylesheets/screen.css
@@ -0,0 +1,428 @@
+/* from https://gist.github.com/andyferra/2554919 */
+
+body {
+ font-family: Helvetica, arial, sans-serif;
+ font-size: 14px;
+ line-height: 1.6;
+
+ padding-bottom: 10px;
+ background-color: white;
+ padding-left: 30px;
+}
+
+#content-container > *:first-child {
+ margin-top: 0 !important;
+}
+#content-container > *:last-child {
+ margin-bottom: 0 !important;
+}
+
+a {
+ color: #4183C4;
+}
+a.absent {
+ color: #cc0000;
+}
+a.anchor {
+ display: block;
+ margin-left: -35px;
+ padding-left: 10px;
+ cursor: pointer;
+ position: absolute;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ color: black;
+ width: 35px; height: 100%;
+}
+
+a.anchor span {
+ vertical-align: middle;
+}
+
+h1, h2, h3, h4, h5, h6 {
+ margin: 20px 0 10px;
+ font-weight: bold;
+ -webkit-font-smoothing: antialiased;
+ cursor: text;
+ position: relative;
+}
+
+h1:hover a.anchor, h2:hover a.anchor, h3:hover a.anchor, h4:hover a.anchor, h5:hover a.anchor, h6:hover a.anchor {
+ text-decoration: none;
+}
+
+h1:hover a.anchor span, h2:hover a.anchor span, h3:hover a.anchor span, h4:hover a.anchor span, h5:hover a.anchor span, h6:hover a.anchor span {
+ display: inline-block;
+}
+
+h1 a.anchor span, h2 a.anchor span, h3 a.anchor span, h4 a.anchor span, h5 a.anchor span, h6 a.anchor span {
+ display: none;
+}
+
+h1 a.anchor:hover span, h2 a.anchor:hover span, h3 a.anchor:hover span, h4 a.anchor:hover span, h5 a.anchor:hover span, h6 a.anchor:hover span {
+ display: inline-block;
+}
+
+h1 tt, h1 code {
+ font-size: inherit;
+}
+
+h2 tt, h2 code {
+ font-size: inherit;
+}
+
+h3 tt, h3 code {
+ font-size: inherit;
+}
+
+h4 tt, h4 code {
+ font-size: inherit;
+}
+
+h5 tt, h5 code {
+ font-size: inherit;
+}
+
+h6 tt, h6 code {
+ font-size: inherit;
+}
+
+h1 {
+ font-size: 28px;
+ color: black;
+}
+
+h2 {
+ font-size: 24px;
+ border-bottom: 1px solid #cccccc;
+ color: black;
+}
+
+h3 {
+ font-size: 18px;
+}
+
+h4 {
+ font-size: 16px;
+}
+
+h5 {
+ font-size: 14px;
+}
+
+h6 {
+ color: #777777;
+ font-size: 14px;
+}
+
+p, blockquote, ul, ol, dl, li, table, pre {
+ margin: 15px 0;
+ -moz-font-feature-settings: "onum";
+ -ms-font-feature-settings: "onum";
+ -webkit-font-feature-settings: "onum";
+ font-feature-settings: "onum";
+}
+
+hr {
+ background: transparent url("../../images/modules/pulls/dirty-shade.png") repeat-x 0 0;
+ border: 0 none;
+ color: #cccccc;
+ height: 4px;
+ padding: 0;
+}
+
+body > h2:first-child {
+ margin-top: 0;
+ padding-top: 0;
+}
+body > h1:first-child {
+ margin-top: 0;
+ padding-top: 0;
+}
+body > h1:first-child + h2 {
+ margin-top: 0;
+ padding-top: 0;
+}
+body > h3:first-child, body > h4:first-child, body > h5:first-child, body > h6:first-child {
+ margin-top: 0;
+ padding-top: 0;
+}
+
+a:first-child h1, a:first-child h2, a:first-child h3, a:first-child h4, a:first-child h5, a:first-child h6 {
+ margin-top: 0;
+ padding-top: 0;
+}
+
+h1 p, h2 p, h3 p, h4 p, h5 p, h6 p {
+ margin-top: 0;
+}
+
+li p.first {
+ display: inline-block;
+}
+
+ul, ol {
+ padding-left: 30px;
+}
+
+ul :first-child, ol :first-child {
+ margin-top: 0;
+}
+
+ul :last-child, ol :last-child {
+ margin-bottom: 0;
+}
+
+dl {
+ padding: 0;
+}
+dl dt {
+ font-size: 14px;
+ font-weight: bold;
+ font-style: italic;
+ padding: 0;
+ margin: 15px 0 5px;
+}
+dl dt:first-child {
+ padding: 0;
+}
+dl dt > :first-child {
+ margin-top: 0;
+}
+dl dt > :last-child {
+ margin-bottom: 0;
+}
+dl dd {
+ margin: 0 0 15px;
+ padding: 0 15px;
+}
+dl dd > :first-child {
+ margin-top: 0;
+}
+dl dd > :last-child {
+ margin-bottom: 0;
+}
+
+blockquote {
+ border-left: 4px solid #dddddd;
+ padding: 0 15px;
+ color: #777777;
+}
+blockquote > :first-child {
+ margin-top: 0;
+}
+blockquote > :last-child {
+ margin-bottom: 0;
+}
+
+table {
+ padding: 0;
+}
+table tr {
+ border-top: 1px solid #cccccc;
+ background-color: white;
+ margin: 0;
+ padding: 0;
+}
+table tr:nth-child(2n) {
+ background-color: #f8f8f8;
+}
+table tr th {
+ font-weight: bold;
+ border: 1px solid #cccccc;
+ text-align: left;
+ margin: 0;
+ padding: 6px 13px;
+}
+table tr td {
+ border: 1px solid #cccccc;
+ text-align: left;
+ margin: 0;
+ padding: 6px 13px;
+}
+table tr th :first-child, table tr td :first-child {
+ margin-top: 0;
+}
+table tr th :last-child, table tr td :last-child {
+ margin-bottom: 0;
+}
+
+img {
+ max-width: 100%;
+}
+
+span.frame {
+ display: block;
+ overflow: hidden;
+}
+span.frame > span {
+ border: 1px solid #dddddd;
+ display: block;
+ float: left;
+ overflow: hidden;
+ margin: 13px 0 0;
+ padding: 7px;
+ width: auto;
+}
+span.frame span img {
+ display: block;
+ float: left;
+}
+span.frame span span {
+ clear: both;
+ color: #333333;
+ display: block;
+ padding: 5px 0 0;
+}
+span.align-center {
+ display: block;
+ overflow: hidden;
+ clear: both;
+}
+span.align-center > span {
+ display: block;
+ overflow: hidden;
+ margin: 13px auto 0;
+ text-align: center;
+}
+span.align-center span img {
+ margin: 0 auto;
+ text-align: center;
+}
+span.align-right {
+ display: block;
+ overflow: hidden;
+ clear: both;
+}
+span.align-right > span {
+ display: block;
+ overflow: hidden;
+ margin: 13px 0 0;
+ text-align: right;
+}
+span.align-right span img {
+ margin: 0;
+ text-align: right;
+}
+span.float-left {
+ display: block;
+ margin-right: 13px;
+ overflow: hidden;
+ float: left;
+}
+span.float-left span {
+ margin: 13px 0 0;
+}
+span.float-right {
+ display: block;
+ margin-left: 13px;
+ overflow: hidden;
+ float: right;
+}
+span.float-right > span {
+ display: block;
+ overflow: hidden;
+ margin: 13px auto 0;
+ text-align: right;
+}
+
+.highlight pre {
+ border: 1px solid #eaeaea;
+ background-color: #f8f8f8;
+ border-radius: 3px;
+ line-height: 19px;
+ overflow: auto;
+ padding: 6px 10px;
+ white-space: nowrap;
+}
+
+code {
+ background-color: transparent;
+ border: none;
+ margin: 0;
+ padding: 0;
+ white-space: pre;
+ font-size: 16px;
+}
+
+#navigation {
+ margin-right: 10px;
+ float: right;
+ width: 26%;
+ display: inline;
+ color: #8B8B8B;
+ font-size: 15px;
+ font-weight: bold;
+ background-color: #F3F4F4;
+}
+
+#content-container {
+ float: left;
+ width: 70%;
+ display: inline;
+}
+
+#container {
+ padding-top: 10px;
+ width: 100%;
+}
+
+#navigation a {
+ text-decoration: none;
+ color: #8B8B8B;
+}
+
+#navigation a:hover {
+ text-decoration: underline;
+}
+
+.active-page {
+ color: #171717;
+}
+
+.active-page a {
+ color: #171717 !important;
+}
+
+.to_top {
+ position: absolute;
+ margin-top: -35px;
+ right: 27%;
+ color: gray;
+ cursor: pointer;
+ width: 16px; height: 16px;
+ display: block;
+}
+
+.to_top:hover {
+ color: black;
+}
+
+#scala-logo {
+ float: left;
+ width: 168px;
+ height: 48px;
+ margin-right: 25px;
+}
+
+#header {
+ padding-top: 16px;
+ padding-bottom: 10px;
+ margin-bottom: 10px;
+ height: 64px;
+ border-bottom: 1px solid #cccccc;
+}
+
+#header a {
+ height: 100%;
+ display: block;
+ text-decoration: none;
+}
+
+#header h1 {
+ cursor: pointer;
+ padding-top: 6px;
+ margin-bottom: 0px;
+ font-size: 30px;
+}
diff --git a/src/actors/scala/actors/Actor.scala b/src/actors/scala/actors/Actor.scala
index 75160fa18f72..293335f720b1 100644
--- a/src/actors/scala/actors/Actor.scala
+++ b/src/actors/scala/actors/Actor.scala
@@ -205,7 +205,7 @@ object Actor extends Combinators {
* Actions in `f` have to contain the rest of the computation of `self`,
* as this method will never return.
*
- * A common method of continuting the computation is to send a message
+ * A common method of continuing the computation is to send a message
* to another actor:
* {{{
* react {
diff --git a/src/actors/scala/actors/LinkedQueue.java b/src/actors/scala/actors/LinkedQueue.java
index 796f428cf54c..3f7b93c3862e 100644
--- a/src/actors/scala/actors/LinkedQueue.java
+++ b/src/actors/scala/actors/LinkedQueue.java
@@ -22,7 +22,7 @@
* and takes when the queue is not empty.
* Normally a put and a take can proceed simultaneously.
* (Although it does not allow multiple concurrent puts or takes.)
- * This class tends to perform more efficently than
+ * This class tends to perform more efficiently than
* other Channel implementations in producer/consumer
* applications.
* [ Introduction to this package. ]
diff --git a/src/actors/scala/actors/remote/Proxy.scala b/src/actors/scala/actors/remote/Proxy.scala
index 9949b3618192..2cb03544f29c 100644
--- a/src/actors/scala/actors/remote/Proxy.scala
+++ b/src/actors/scala/actors/remote/Proxy.scala
@@ -84,7 +84,7 @@ private[remote] class Proxy(node: Node, name: Symbol, @transient var kernel: Net
}
// Proxy is private[remote], but these classes are public and use it in a public
-// method signature. That makes the only method they have non-overriddable.
+// method signature. That makes the only method they have non-overridable.
// So I made them final, which seems appropriate anyway.
final class LinkToFun extends Function2[AbstractActor, Proxy, Unit] with Serializable {
diff --git a/src/actors/scala/actors/threadpool/AbstractCollection.java b/src/actors/scala/actors/threadpool/AbstractCollection.java
index f3dc1e129293..195a0064ab5c 100644
--- a/src/actors/scala/actors/threadpool/AbstractCollection.java
+++ b/src/actors/scala/actors/threadpool/AbstractCollection.java
@@ -1,6 +1,6 @@
/*
* Written by Dawid Kurzyniec, based on public domain code written by Doug Lea
- * and publictly available documentation, and released to the public domain, as
+ * and publicly available documentation, and released to the public domain, as
* explained at http://creativecommons.org/licenses/publicdomain
*/
diff --git a/src/actors/scala/actors/threadpool/ExecutorCompletionService.java b/src/actors/scala/actors/threadpool/ExecutorCompletionService.java
index 9a4a4fb71c48..02e9bbe29704 100644
--- a/src/actors/scala/actors/threadpool/ExecutorCompletionService.java
+++ b/src/actors/scala/actors/threadpool/ExecutorCompletionService.java
@@ -135,7 +135,7 @@ public ExecutorCompletionService(Executor executor) {
* @param completionQueue the queue to use as the completion queue
* normally one dedicated for use by this service. This queue is
* treated as unbounded -- failed attempted Queue.add
- * operations for completed taskes cause them not to be
+ * operations for completed tasks cause them not to be
* retrievable.
* @throws NullPointerException if executor or completionQueue are null
*/
diff --git a/src/actors/scala/actors/threadpool/locks/ReentrantReadWriteLock.java b/src/actors/scala/actors/threadpool/locks/ReentrantReadWriteLock.java
index 437af77c7acf..914d242100b0 100644
--- a/src/actors/scala/actors/threadpool/locks/ReentrantReadWriteLock.java
+++ b/src/actors/scala/actors/threadpool/locks/ReentrantReadWriteLock.java
@@ -20,13 +20,13 @@
*
*
The order of entry
* to the read and write lock is unspecified, subject to reentrancy
- * constraints. A nonfair lock that is continously contended may
+ * constraints. A nonfair lock that is continuously contended may
* indefinitely postpone one or more reader or writer threads, but
* will normally have higher throughput than a fair lock.
*
*
* DEPARTURE FROM java.util.concurrent: this implementation impose
- * a writer-preferrence and thus its acquisition order may be different
+ * a writer-preference and thus its acquisition order may be different
* than in java.util.concurrent.
*
*