! ------------------------------------------------------------------------- ! ! mhchem-strict-simplified.grm ! ! BNF for the MathJax/mhchem syntax, ! strict, simplified, ! revision 1, ! applies to MathJax/mhchem 3.0.0 ! ! - Just for validity check. Does not parse semantically complete. ! - To be used to texvc.js rules ! - "strict" = by far not as forgiving as MathJax/mhchem ! - "simplified" = all features accessible, but not by all shortcuts ! ! ------------------------------------------------------------------------- ! ! Copyright (c) 2016 Martin Hensel ! ! Licensed under the Apache License, Version 2.0 (the "License"); ! you may not use this file except in compliance with the License. ! You may obtain a copy of the License at ! ! http://www.apache.org/licenses/LICENSE-2.0 ! ! Unless required by applicable law or agreed to in writing, software ! distributed under the License is distributed on an "AS IS" BASIS, ! WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ! See the License for the specific language governing permissions and ! limitations under the License. ! ! ------------------------------------------------------------------------- !------------- ! Definitions !------------- "Start Symbol" = "Auto Whitespace" = false Space = {Space} NewLine = {CR}{LF}|{CR} Digit = {Digit} Letter = {Letter} Apostrophe = '' !--------------------- ! Rules for test file !--------------------- ::= | ::= NewLine !------------------------------ ! Validity check rules for \ce !------------------------------ ! Just for validity check. Does not parse semantically complete. ! See remarks at top of file. ::= | ::= | Space ::= | | | '^' | '(^)' ::= | Letter | | | Letter | ::= Digit |