Skip to content

Commit 5bbebb2

Browse files
committed
add grep
1 parent 774c7ba commit 5bbebb2

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

js/languages.js

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,16 @@ function updateLanguageJavaScript(regularExpression, text) {
1313
return "regex = " + regex + ";\ntext = " + text + ";\nalert(RegExp(regex).exec(text))";
1414
}
1515

16+
function updateLanguageGrep(regularExpression, text) {
17+
var regex = regularExpression.replace(/'/g, '\'"\'"\'');
18+
var text = text.replace(/'/g, '\'"\'"\'');
19+
return "regex='" + regex + "'\ntext='" + text + "'\necho \"$text\" | grep -E \"$text\"";
20+
}
21+
1622
updateLanguages = [
1723
{"name": "Python", "update": updateLanguagePython},
1824
{"name": "JavaScript", "update": updateLanguageJavaScript},
25+
{"name": "Grep in Linux Shell", "update": updateLanguageGrep},
1926
]
2027

2128
function watchLanguageField(languageField, textElement, regex) {
@@ -36,7 +43,10 @@ function watchLanguageField(languageField, textElement, regex) {
3643
for (var i = 0; i < updateLanguages.length; i++) {
3744
var textarea = textareas[i];
3845
var programUpdate = updateLanguages[i].update;
39-
textarea.value = programUpdate(regex.value, textElement.value);
46+
var text = programUpdate(regex.value, textElement.value);
47+
textarea.value = text;
48+
var lines = (text.match(/\n/g) || []).length + 1;
49+
textarea.rows = lines;
4050
}
4151
}
4252
regex.onkeyup = update;

0 commit comments

Comments
 (0)