- update to r279 of google-code-prettify (fix issue 217: regex matching after runs of punctuation) (note some tests failed in this revision)
diff --git a/src/prettify/parser/Prettify.java b/src/prettify/parser/Prettify.java
index 3080e04..df70e79 100644
--- a/src/prettify/parser/Prettify.java
+++ b/src/prettify/parser/Prettify.java
@@ -733,7 +733,8 @@
               + "[a-z]*", Pattern.CASE_INSENSITIVE),
               null,
               "0123456789"}));
-    // Don't treat escaped quotes in bash as starting strings.  See issue 144.
+    // Don't treat escaped quotes in bash as starting strings.
+    // See issue 144.
     fallthroughStylePatterns.add(Arrays.asList(new Object[]{PR_PLAIN,
               Pattern.compile("^\\\\[\\s\\S]?"),
               null}));
@@ -773,9 +774,12 @@
     // If that does turn out to be a problem, we should change the below
     // when hc is truthy to include # in the run of punctuation characters
     // only when not followint [|&;<>].
-    final String punctation = "^.[^\\s\\w\\.$@\\'\\\"\\`\\/\\\\]*";
+    String punctuation = "^.[^\\s\\w.$@'\"`/\\\\]*";
+    if (options.get("regexLiterals") != null) {
+        punctuation += "(?!\\s*/)";
+    }
     fallthroughStylePatterns.add(Arrays.asList(new Object[]{PR_PUNCTUATION,
-              Pattern.compile(punctation),
+              Pattern.compile(punctuation),
               null}));
 
     return new CreateSimpleLexer(shortcutStylePatterns, fallthroughStylePatterns);
diff --git a/test/prettify/PrettifyTest.java b/test/prettify/PrettifyTest.java
index d00d873..907de3b 100644
--- a/test/prettify/PrettifyTest.java
+++ b/test/prettify/PrettifyTest.java
@@ -173,6 +173,7 @@
     test("llvm", "llvm", false);
     test("pascal", "pascal_lang", false);
     test("basic", "basic_lang", false);
+    test("js", "issue217", false);
   }
 
   /**
diff --git a/test/prettify/PrettifyTest/result/issue217.txt b/test/prettify/PrettifyTest/result/issue217.txt
new file mode 100644
index 0000000..2891a20
--- /dev/null
+++ b/test/prettify/PrettifyTest/result/issue217.txt
@@ -0,0 +1,3 @@
+`KWDif`END`PUN(!`END`STR/^https?:\/\//`END`PLNi`END`PUN.`END`PLNtest`END`PUN(`END`PLNval`END`PUN)`END`PLN `END`PUN&amp;&amp;`END`PLN foo `END`PUN==`END`PLN `END`STR'bar'`END`PUN)`END`PLN `END`PUN{`END`PLN
+    val `END`PUN=`END`PLN `END`STR'http://'`END`PLN `END`PUN+`END`PLN val`END`PUN;`END`PLN
+`END`PUN}`END
\ No newline at end of file
diff --git a/test/prettify/PrettifyTest/source/issue217.txt b/test/prettify/PrettifyTest/source/issue217.txt
new file mode 100644
index 0000000..821a973
--- /dev/null
+++ b/test/prettify/PrettifyTest/source/issue217.txt
@@ -0,0 +1,4 @@
+<pre id="issue217" class="prettyprint lang-js">
+if(!/^https?:\/\//i.test(val) &amp;&amp; foo == 'bar') {
+    val = 'http://' + val;
+}
\ No newline at end of file