From 06a9da4cca3d895ddd9efc1b8f5271a874bc59ad Mon Sep 17 00:00:00 2001 From: Golmote Date: Sun, 22 Oct 2017 15:18:00 +0200 Subject: [PATCH] R: Regexp optimisation --- components/prism-r.js | 2 +- components/prism-r.min.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/components/prism-r.js b/components/prism-r.js index 94342eaf98..d1ac94adc6 100644 --- a/components/prism-r.js +++ b/components/prism-r.js @@ -1,7 +1,7 @@ Prism.languages.r = { 'comment': /#.*/, 'string': { - pattern: /(['"])(?:\\?.)*?\1/, + pattern: /(['"])(?:\\.|(?!\1)[^\\\r\n])*\1/, greedy: true }, 'percent-operator': { diff --git a/components/prism-r.min.js b/components/prism-r.min.js index 38989ec335..e5670e2cd6 100644 --- a/components/prism-r.min.js +++ b/components/prism-r.min.js @@ -1 +1 @@ -Prism.languages.r={comment:/#.*/,string:{pattern:/(['"])(?:\\?.)*?\1/,greedy:!0},"percent-operator":{pattern:/%[^%\s]*%/,alias:"operator"},"boolean":/\b(?:TRUE|FALSE)\b/,ellipsis:/\.\.(?:\.|\d+)/,number:[/\b(?:NaN|Inf)\b/,/\b(?:0x[\dA-Fa-f]+(?:\.\d*)?|\d*\.?\d+)(?:[EePp][+-]?\d+)?[iL]?\b/],keyword:/\b(?:if|else|repeat|while|function|for|in|next|break|NULL|NA|NA_integer_|NA_real_|NA_complex_|NA_character_)\b/,operator:/->?>?|<(?:=|=!]=?|::?|&&?|\|\|?|[+*\/^$@~]/,punctuation:/[(){}\[\],;]/}; \ No newline at end of file +Prism.languages.r={comment:/#.*/,string:{pattern:/(['"])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},"percent-operator":{pattern:/%[^%\s]*%/,alias:"operator"},"boolean":/\b(?:TRUE|FALSE)\b/,ellipsis:/\.\.(?:\.|\d+)/,number:[/\b(?:NaN|Inf)\b/,/\b(?:0x[\dA-Fa-f]+(?:\.\d*)?|\d*\.?\d+)(?:[EePp][+-]?\d+)?[iL]?\b/],keyword:/\b(?:if|else|repeat|while|function|for|in|next|break|NULL|NA|NA_integer_|NA_real_|NA_complex_|NA_character_)\b/,operator:/->?>?|<(?:=|=!]=?|::?|&&?|\|\|?|[+*\/^$@~]/,punctuation:/[(){}\[\],;]/}; \ No newline at end of file