diff --git a/db/blockly_unix_database.db b/db/blockly_unix_database.db index 4383c6c..537ef05 100644 Binary files a/db/blockly_unix_database.db and b/db/blockly_unix_database.db differ diff --git a/index.html b/index.html index 02591ef..1a4f444 100644 --- a/index.html +++ b/index.html @@ -245,7 +245,7 @@ colourSecondary: '#ff0000', colourTertiary: '#C5EAFF' }, - 'Data Processing': { + 'Field Processing': { colourPrimary: '#3B7C09', colourSecondary: '#ff0000', colourTertiary: '#C5EAFF' @@ -255,11 +255,6 @@ colourSecondary: '#ff0000', colourTertiary: '#C5EAFF' }, - 'Directory Operations': { - colourPrimary: '#900C3F', - colourSecondary: '#ff0000', - colourTertiary: '#C5EAFF' - }, 'I/O Redirection': { colourPrimary: '#1976D2', colourSecondary: '#ff0000', @@ -449,7 +444,7 @@ }, { kind: 'category', - name: [MSG.DATA_PROCESSING], + name: [MSG.FIELD_PROCESSING], colour: '#3B7C09', contents: [ { kind: 'block', type: 'beginEnd' }, diff --git a/public/blocks/NFBlock.js b/public/blocks/NFBlock.js index a5277cd..f0c6833 100644 --- a/public/blocks/NFBlock.js +++ b/public/blocks/NFBlock.js @@ -1,6 +1,6 @@ var NFBlock = { type: 'NF', - category: 'Data Processing', + category: 'Field Processing', unix_description: [ { FieldNumber: 'NF' @@ -13,7 +13,7 @@ var NFBlock = { name: 'FieldNumber' } ], - style: 'Data Processing', + style: 'Field Processing', output: null, tooltip: '%{BKY_FIELD_NUMBER_TOOLTIP}', helpUrl: '%{BKY_FIELD_NUMBER_HELPURL}' // URL to further information or documentation. diff --git a/public/blocks/NRBlock.js b/public/blocks/NRBlock.js index 1f8642b..1ec2b17 100644 --- a/public/blocks/NRBlock.js +++ b/public/blocks/NRBlock.js @@ -1,6 +1,6 @@ var NRBlock = { type: 'NR', - category: 'Data Processing', + category: 'Field Processing', unix_description: [ { recordNumber: 'NR' @@ -13,7 +13,7 @@ var NRBlock = { name: 'recordNumber' } ], - style: 'Data Processing', + style: 'Field Processing', output: null, tooltip: '%{BKY_RECORD_NUMBER_TOOLTIP}', helpUrl: '%{BKY_RECORD_NUMBER_HELPURL}' // URL to further information or documentation. diff --git a/public/blocks/awkBlock.js b/public/blocks/awkBlock.js index ce18c21..e31887e 100644 --- a/public/blocks/awkBlock.js +++ b/public/blocks/awkBlock.js @@ -1,6 +1,6 @@ var awkBlock = { type: 'awk', - category: 'Data Processing', + category: 'Field Processing', unix_description: [ { awkInput_delimiter: "-F 'str' " // Change to awk_delimiter @@ -22,7 +22,7 @@ var awkBlock = { name: 'awkConditionAction' } ], - style: 'Data Processing', + style: 'Field Processing', previousStatement: 'Action', nextStatement: 'Action', tooltip: '%{BKY_AWK_TOOLTIP}', diff --git a/public/blocks/beginEndBlock.js b/public/blocks/beginEndBlock.js index 2a5f5c0..aa746e9 100644 --- a/public/blocks/beginEndBlock.js +++ b/public/blocks/beginEndBlock.js @@ -1,6 +1,6 @@ var beginEndBlock = { type: 'beginEnd', - category: 'Data Processing', + category: 'Field Processing', message0: '%{BKY_BEGIN_END}', message1: '%1', args1: [ @@ -11,7 +11,7 @@ var beginEndBlock = { ], output: 'String', nextStatement: null, - style: 'Data Processing', + style: 'Field Processing', tooltip: '%{BKY_BEGIN_END_TOOLTIP}', helpUrl: '%{BKY_BEGIN_END_HELPURL}' // URL to further information or documentation. }; diff --git a/public/blocks/columnBlock.js b/public/blocks/columnBlock.js index 4d84195..abc70c2 100644 --- a/public/blocks/columnBlock.js +++ b/public/blocks/columnBlock.js @@ -1,6 +1,6 @@ var columnBlock = { type: 'column', - category: 'Data Processing', + category: 'Field Processing', unix_description: [ { TEXT: '$str' @@ -14,7 +14,7 @@ var columnBlock = { } ], output: null, - style: 'Data Processing', + style: 'Field Processing', tooltip: '%{BKY_COLUMN_TOOLTIP}', helpUrl: '%{BKY_COLUMN_HELPURL}' }; diff --git a/public/blocks/condOutputBlock.js b/public/blocks/condOutputBlock.js index 574e27a..cdc878d 100644 --- a/public/blocks/condOutputBlock.js +++ b/public/blocks/condOutputBlock.js @@ -1,6 +1,6 @@ var condOutputBlock = { type: 'condOutput', - category: 'Data Processing', + category: 'Field Processing', message0: '%{BKY_CONDITION_OUTPUT}', message1: '%1', args1: [ @@ -11,7 +11,7 @@ var condOutputBlock = { ], output: 'String', nextStatement: null, - style: 'Data Processing', + style: 'Field Processing', tooltip: '%{BKY_CONDITION_OUTPUT_TOOLTIP}', helpUrl: '%{BKY_CONDITION_OUTPUT_HELPURL}' // URL to further information or documentation. }; diff --git a/public/blocks/conditionActionBlock.js b/public/blocks/conditionActionBlock.js index 86096a6..a05ded4 100644 --- a/public/blocks/conditionActionBlock.js +++ b/public/blocks/conditionActionBlock.js @@ -1,6 +1,6 @@ var conditionActionBlock = { type: 'conditionAction', - category: 'Data Processing', + category: 'Field Processing', message0: '%{BKY_CONDITION_ACTION_COND} %1', args0: [ { @@ -18,7 +18,7 @@ var conditionActionBlock = { previousStatement: true, nextStatement: true, nextStatement: null, - style: 'Data Processing', + style: 'Field Processing', tooltip: '%{BKY_CONDITION_ACTION_TOOLTIP}', helpUrl: '%{BKY_CONDITION_ACTION_HELPURL}' // URL to further information or documentation. }; diff --git a/public/blocks/cutBlock.js b/public/blocks/cutBlock.js index f917e22..156ee4c 100644 --- a/public/blocks/cutBlock.js +++ b/public/blocks/cutBlock.js @@ -6,7 +6,7 @@ var cutBlock = { delimiter: "-d 'str'", columns: '-f str', charsStart: '-c str', - charsEnd: '-c-str' + charsEnd: '-c str' } ], message0: '%{BKY_CUT}\n', diff --git a/public/blocks/regAlternationBlock.js b/public/blocks/regAlternationBlock.js index d977425..58aaa92 100644 --- a/public/blocks/regAlternationBlock.js +++ b/public/blocks/regAlternationBlock.js @@ -17,7 +17,7 @@ var regAlternationBlock = { } ], - message1: ' Logical or ', + message1: '%{BKY_REGALTERNATION}', message2: '%1', args2: [ @@ -28,7 +28,6 @@ var regAlternationBlock = { } ], style: 'Regular Expressions', - output: 'String', previousStatement: null, nextStatement: null, tooltip: diff --git a/public/blocks/regAnyOneBlock.js b/public/blocks/regAnyOneBlock.js index 87ba949..37b33ba 100644 --- a/public/blocks/regAnyOneBlock.js +++ b/public/blocks/regAnyOneBlock.js @@ -8,7 +8,7 @@ var regAnyOneBlock = { } ], - message0: '%{BKY_REGANYONE} \n Not %2', + message0: '%{BKY_REGANYONE} \n %{BKY_REGANYONE_NOT}', args0: [ { type: 'input_statement', @@ -24,7 +24,6 @@ var regAnyOneBlock = { ], tooltip: '%{BKY_REGANYONE_TOOLTIP}', - output: 'String', previousStatement: null, nextStatement: null, style: 'Regular Expressions', diff --git a/public/blocks/regBackreferenceBlock.js b/public/blocks/regBackreferenceBlock.js index f6ee591..c557e79 100644 --- a/public/blocks/regBackreferenceBlock.js +++ b/public/blocks/regBackreferenceBlock.js @@ -14,7 +14,7 @@ var regBackreferenceBlock = { 9: '\\9' } ], - message0: 'Backreference to group %1', + message0: '%{BKY_REGBACKREFERENCE}', args0: [ { type: 'field_dropdown', // Dropdown για επιλογή του αριθμού αναφοράς @@ -35,9 +35,8 @@ var regBackreferenceBlock = { style: 'Regular Expressions', previousStatement: 'Action', nextStatement: 'Action', - tooltip: 'References a previously matched group using \\1, \\2, etc.', - helpUrl: - 'https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#backreferences' + tooltip: '%{BKY_REGBACKREFERENCE_TOOLTIP}', + helpUrl: '%{BKY_REGBACKREFERENCE_HELPURL}' }; Blockly.defineBlocksWithJsonArray([regBackreferenceBlock]); diff --git a/public/blocks/regCapturingGroupBlock.js b/public/blocks/regCapturingGroupBlock.js index dedc7d7..b37be76 100644 --- a/public/blocks/regCapturingGroupBlock.js +++ b/public/blocks/regCapturingGroupBlock.js @@ -15,7 +15,6 @@ var regCapturingGroupBlock = { } ], tooltip: '%{BKY_REGCAPTURINGGROUP_TOOLTIP}', - output: 'String', previousStatement: null, nextStatement: null, style: 'Regular Expressions', diff --git a/public/blocks/regForBlock.js b/public/blocks/regForBlock.js index 499c4bd..bce0ff6 100644 --- a/public/blocks/regForBlock.js +++ b/public/blocks/regForBlock.js @@ -4,7 +4,7 @@ var regForBlock = { message0: '%{BKY_REGFOR}', unix_description: [ { - FROM: 'patt{n', + FROM: '{n', TO: ',m}' } ], diff --git a/public/blocks/sshBlock.js b/public/blocks/sshBlock.js index 6e3fac6..6bf1d30 100644 --- a/public/blocks/sshBlock.js +++ b/public/blocks/sshBlock.js @@ -10,7 +10,7 @@ var sshBlock = { HOST: 'str' } ], - message1: 'Private Key File %1', + message1: '%{BKY_SSH_KEY}%1', args1: [ { type: 'field_input', diff --git a/public/blocks/xargsBlock.js b/public/blocks/xargsBlock.js index 9252a72..35729be 100644 --- a/public/blocks/xargsBlock.js +++ b/public/blocks/xargsBlock.js @@ -1,6 +1,6 @@ var xargsBlock = { type: 'xargs', - category: 'Data processing', + category: 'Field Processing', unix_description: [ { placeholder: '-I{}' @@ -15,7 +15,7 @@ var xargsBlock = { checked: false // by default it's disabled } ], - style: 'Data Processing', + style: 'Field Processing', previousStatement: 'Action', nextStatement: 'Action', tooltip: '%{BKY_XARGS_TOOLTIP}', diff --git a/public/msg/el.js b/public/msg/el.js index a758cb6..bd891d7 100644 --- a/public/msg/el.js +++ b/public/msg/el.js @@ -4,7 +4,7 @@ window.MSG = { FILE_DIR_OPERATIONS: 'Λειτουργίες Αρχείων και Καταλόγων', IO_REDIRECTION: 'Ανακατεύθυνση Εισόδου/Εξόδου', REGULAR_EXPRESSIONS: 'Κανονικές Εκφράσεις', - DATA_PROCESSING: 'Επεξεργασία Δεδομένων', + FIELD_PROCESSING: 'Επεξεργασία Πεδίου', VARIABLES: 'Μεταβλητές', SYSTEM_MONITORING: 'Παρακολούθηση Συστήματος', NETWORK_OPERATIONS: 'Λειτουργίες Δικτύου', @@ -817,22 +817,22 @@ Blockly.Msg['TEXT_CREATE_JOIN_ITEM_TITLE_ITEM'] = Blockly.Msg['VARIABLES_DEFAULT_NAME']; Blockly.Msg['REGANYONE'] = 'Αντιστοίχιση οποιουδήποτε από τους χαρακτήρες %1'; -Blockly.Msg['REGANYONE_NOT'] = 'Όχι %1'; +Blockly.Msg['REGANYONE_NOT'] = 'Όχι %2'; Blockly.Msg['REGANYONE_TOOLTIP'] = 'Αντιστοίχιση οποιουδήποτε από τους καθορισμένους χαρακτήρες'; Blockly.Msg['REGANYONE_HELPURL'] = 'https://www.google.com/'; Blockly.Msg['REGCAPTURINGGROUP'] = 'Ομαδοποίηση του μοτίβου %1\n'; Blockly.Msg['REGCAPTURINGGROUP_TOOLTIP'] = 'Ορισμός μιας ομάδας μοτίβων'; Blockly.Msg['REGCAPTURINGGROUP_HELPURL'] = 'https://www.google.com/'; -Blockly.Msg['REGCOMMON'] = 'Κοινές αναζητήσεις'; +Blockly.Msg['REGCOMMON'] = 'Κοινά μοτίβα'; Blockly.Msg['REGCOMMON_MATCH'] = 'Αντιστοίχιση %1'; Blockly.Msg['REGCOMMON_TOOLTIP'] = 'Κοινές αναζητήσεις κανονικών εκφράσεων'; Blockly.Msg['REGCOMMON_HELPURL'] = 'https://www.google.com/'; -Blockly.Msg['REGEND'] = 'Οι γραμμές τελειώνουν με %1\n'; +Blockly.Msg['REGEND'] = 'Οι γραμμές τελειώνουν με \n'; Blockly.Msg['REGEND_TOOLTIP'] = 'Τέλος γραμμής'; Blockly.Msg['REGEND_HELPURL'] = 'https://www.google.com/'; Blockly.Msg['REGFOR'] = - "Αντιστοίχιση του μοτίβου Από %1\n Έως %2 φορές Ή Έως το άπειρο %3\n(για ακριβώς n φορές οι τιμές 'Από' και 'Έως' πρέπει να είναι ίσες)"; + 'Αντιστοίχιση του μοτίβου Από %1\n Έως %2 φορές Ή Έως το άπειρο %3\n'; Blockly.Msg['REGFOR_1'] = '%1'; Blockly.Msg['REGFOR_TOOLTIP'] = 'Περισσότερες από μία αντιστοιχίες μοτίβων.'; Blockly.Msg['REGFOR_HELPURL'] = 'https://www.google.com/'; @@ -861,7 +861,7 @@ Blockly.Msg['REGRANGE_NOT'] = 'Όχι %1'; Blockly.Msg['REGRANGE_TOOLTIP'] = 'Αντιστοίχιση στο αρχείο του καθορισμένου εύρους χαρακτήρων'; Blockly.Msg['REGRANGE_HELPURL'] = 'https://www.google.com/'; -Blockly.Msg['REGSTART'] = 'Οι γραμμές ξεκινούν με %1\n'; +Blockly.Msg['REGSTART'] = 'Οι γραμμές ξεκινούν με\n'; Blockly.Msg['REGSTART_TOOLTIP'] = 'Έναρξη γραμμής'; Blockly.Msg['REGSTART_HELPURL'] = 'https://www.google.com/'; @@ -910,7 +910,7 @@ Blockly.Msg['TEE_TOOLTIP'] = 'Το εργαλείο tee αντιγράφει την τυπική είσοδο στην τυπική έξοδο, κάνοντας ένα αντίγραφο σε ένα ή περισσότερα αρχεία.'; Blockly.Msg['TEE_HELPURL'] = 'https://www.google.com/'; -Blockly.Msg['TOUCH'] = 'Τροποποίηση χρονικών στιγμών αρχείου \n'; +Blockly.Msg['TOUCH'] = 'Τροποποίηση χρονικών στιγμών αρχείου %1\n'; Blockly.Msg['TOUCH_NOT_CREATE_FILE'] = 'Μη δημιουργία αρχείου αν δεν υπάρχει %1 \n'; Blockly.Msg['TOUCH_CHANGE_ACCESS_TIME'] = @@ -997,7 +997,7 @@ Blockly.Msg['UPTIME_HELPURL'] = 'https://man7.org/linux/man-pages/man1/uptime.1.html'; // who command -Blockly.Msg['WHO'] = 'Έξοδος ποιοι χρήστες είναι συνδεδεμένοι'; +Blockly.Msg['WHO'] = 'Ποιοι χρήστες είναι συνδεδεμένοι'; Blockly.Msg['WHO_SHOW_HEADING'] = 'Έξοδος πληροφοριών κεφαλίδας %1'; Blockly.Msg['WHO_SHOW_ALL'] = 'Έξοδος όλων των πληροφοριών %1'; Blockly.Msg['WHO_SHOW_USERS'] = 'Έξοδος διεργασιών χρηστών %1'; @@ -1008,7 +1008,7 @@ Blockly.Msg['WHO_TOOLTIP'] = Blockly.Msg['WHO_HELPURL'] = 'https://man7.org/linux/man-pages/man1/who.1.html'; // hostname command -Blockly.Msg['SYSTEM_HOSTNAME_COMMAND'] = 'Έξοδος του ονόματος του συστήματος'; +Blockly.Msg['SYSTEM_HOSTNAME_COMMAND'] = 'Όνομα του συστήματος'; Blockly.Msg['HOSTNAME_SHOW_HOSTNAME'] = 'Έξοδος του ονόματος του συστήματος %1'; Blockly.Msg['HOSTNAME_SET_HOSTNAME'] = 'Ορισμός του ονόματος του συστήματος σε %1'; @@ -1024,8 +1024,7 @@ Blockly.Msg['HOSTNAME_HELPURL'] = 'https://man7.org/linux/man-pages/man1/hostname.1.html'; // date command -Blockly.Msg['SYSTEM_DATE_COMMAND'] = - 'Έξοδος της τρέχουσας ημερομηνίας και ώρας'; +Blockly.Msg['SYSTEM_DATE_COMMAND'] = 'Τρέχουσα ημερομηνία και ώρα'; Blockly.Msg['DATE_UTC_TIME'] = 'Έξοδος ώρας σε UTC %1'; Blockly.Msg['DATE_TOOLTIP'] = 'Εμφανίζει ή ορίζει την ημερομηνία και ώρα του συστήματος'; @@ -1076,6 +1075,7 @@ Blockly.Msg['PING_TIMEOUT'] = Blockly.Msg['SSH'] = 'Δημιουργία σύνδεσης SSH'; Blockly.Msg['SSH_USER'] = 'Καθορίστε το όνομα χρήστη'; Blockly.Msg['SSH_HOST'] = 'Καθορίστε τη διεύθυνση του απομακρυσμένου host'; +Blockly.Msg['SSH_KEY'] = 'Αρχείο Ιδιωτικού Κλειδιού'; Blockly.Msg['SSH_PORT'] = 'Ορίστε τον αριθμό της θύρας'; // Curl command @@ -1083,3 +1083,38 @@ Blockly.Msg['CURL'] = 'Εκτελέστε ένα αίτημα HTTP σε'; Blockly.Msg['CURL_METHOD'] = 'Επιλέξτε μέθοδο'; Blockly.Msg['CURL_HEADER'] = 'Παρέχετε προσαρμοσμένες κεφαλίδες για το αίτημα'; Blockly.Msg['CURL_REDIRECTS'] = 'Ακολούθηση ανακατευθύνσεων'; + +Blockly.Msg['ARGUMENTS_CREATE_WITH'] = 'Εισαγωγή ορισμάτων'; +Blockly.Msg['ARGUMENTS_CREATE_WITH_TOOLTIP'] = + 'Προσθέστε επιχειρήματα για τη συνάρτηση.'; +Blockly.Msg['ARGUMENTS_CREATE_WITH_HELPURL'] = + 'https://example.com/help/arguments_create_with'; +Blockly.Msg['ARGUMENTS_CREATE_EMPTY_TITLE'] = 'Χωρίς εισαγωγές'; + +// ARGUMENTS_CREATE_WITH command +Blockly.Msg['ARGUMENTS_CREATE_WITH'] = 'Εισαγωγή ορισμάτων'; +Blockly.Msg['ARGUMENTS_CREATE_WITH_TOOLTIP'] = + 'Προσθέστε επιχειρήματα για τη συνάρτηση.'; +Blockly.Msg['ARGUMENTS_CREATE_WITH_HELPURL'] = + 'https://example.com/help/arguments_create_with'; +Blockly.Msg['ARGUMENTS_CREATE_EMPTY_TITLE'] = 'Χωρίς εισαγωγές'; + +// ARGUMENT command +Blockly.Msg['ARGUMENT'] = 'Όρισμα'; +Blockly.Msg['ARGUMENT_TOOLTIP'] = 'Εισάγετε ένα όρισμα για τη συνάρτηση.'; +Blockly.Msg['ARGUMENT_HELPURL'] = 'https://example.com/help/argument'; +Blockly.Msg['ARGUMENT_DEFAULT_TEXT'] = 'προεπιλεγμένο_όρισμα'; + +// BACKREFERENCE command +Blockly.Msg['REGBACKREFERENCE'] = 'Αναφορά σε ομάδα %1'; +Blockly.Msg['REGBACKREFERENCE_TOOLTIP'] = + 'Αναφέρεται σε μια προηγουμένως αντιστοιχισμένη ομάδα χρησιμοποιώντας \\1, \\2, κλπ.'; +Blockly.Msg['REGBACKREFERENCE_HELPURL'] = + 'https://developer.mozilla.org/el/docs/Web/JavaScript/Guide/Regular_Expressions'; + +// ALTERNATION command +Blockly.Msg['REGALTERNATION'] = 'Λογικό ή'; +Blockly.Msg['REGALTERNATION_TOOLTIP'] = + 'Ταιριάζει είτε με το πρότυπο στα αριστερά είτε με το πρότυπο στα δεξιά. Χρησιμοποιήστε | για λογικό "ή".'; +Blockly.Msg['REGALTERNATION_HELPURL'] = + 'https://developer.mozilla.org/el/docs/Web/JavaScript/Guide/Regular_Expressions#logical_or'; diff --git a/public/msg/en.js b/public/msg/en.js index 80c4fc2..2716cd4 100644 --- a/public/msg/en.js +++ b/public/msg/en.js @@ -5,7 +5,7 @@ window.MSG = { DIR_OPERATIONS: 'Directory Operations', IO_REDIRECTION: 'I/O Redirection', REGULAR_EXPRESSIONS: 'Regular Expressions', - DATA_PROCESSING: 'Data Processing', + FIELD_PROCESSING: 'Field Processing', VARIABLES: 'Variables', SYSTEM_MONITORING: 'System Monitoring', NETWORK_OPERATIONS: 'Network Operations', @@ -796,7 +796,7 @@ Blockly.Msg['TEXT_CREATE_JOIN_ITEM_TITLE_ITEM'] = Blockly.Msg['VARIABLES_DEFAULT_NAME']; Blockly.Msg['REGANYONE'] = 'Character class %1 '; -Blockly.Msg['REGANYONE_NOT'] = 'Not %1'; +Blockly.Msg['REGANYONE_NOT'] = 'Not %2'; Blockly.Msg['REGANYONE_TOOLTIP'] = 'Match any one of the defined characters'; Blockly.Msg['REGANYONE_HELPURL'] = 'https://www.google.com/'; Blockly.Msg['REGCAPTURINGGROUP'] = 'Group the pattern %1\n'; @@ -1041,6 +1041,7 @@ Blockly.Msg['PING_TIMEOUT'] = Blockly.Msg['SSH'] = 'Establish a SSH connection'; Blockly.Msg['SSH_USER'] = 'Specify the username'; Blockly.Msg['SSH_HOST'] = 'Specify the remote host address'; +Blockly.Msg['BKY_SSH_KEY'] = 'Private Key File '; Blockly.Msg['SSH_PORT'] = 'Define the port number'; // Curl command @@ -1060,3 +1061,17 @@ Blockly.Msg['ARGUMENT'] = 'Argument'; Blockly.Msg['ARGUMENT_TOOLTIP'] = 'Enter an argument for the function.'; Blockly.Msg['ARGUMENT_HELPURL'] = 'https://example.com/help/argument'; Blockly.Msg['ARGUMENT_DEFAULT_TEXT'] = 'default_argument'; + +// BACKREFERENCE command +Blockly.Msg['REGBACKREFERENCE'] = 'Backreference to group %1'; +Blockly.Msg['REGBACKREFERENCE_TOOLTIP'] = + 'References a previously matched group using \\1, \\2, etc.'; +Blockly.Msg['REGBACKREFERENCE_HELPURL'] = + 'https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions'; + +// ALTERNATION command +Blockly.Msg['REGALTERNATION'] = 'Logical or'; +Blockly.Msg['REGALTERNATION_TOOLTIP'] = + 'Matches either the pattern on the left or the pattern on the right. Use | for logical "or".'; +Blockly.Msg['REGALTERNATION_HELPURL'] = + 'https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#logical_or';