@@ -238,29 +238,33 @@ var CToP = {
238
238
*
239
239
* (function factory)
240
240
*/
241
- bind : function ( name ) {
241
+ bind : function ( name , argSeparator ) {
242
242
return function ( parentNode , contentMMLNode , firstArg , args , bvars , qualifiers , precedence ) {
243
243
var mrow = CToP . createElement ( 'mrow' ) ;
244
244
CToP . appendToken ( mrow , 'mo' , name ) ;
245
+ for ( var j = 0 ; j < bvars . length ; j ++ ) {
246
+ var bvar = bvars [ j ] ;
247
+ var children = CToP . children ( bvar ) ;
248
+ if ( children . length ) {
249
+ CToP . applyTransform ( mrow , children [ 0 ] , 0 ) ;
250
+ }
251
+ }
252
+
253
+ var conditions_mrow = CToP . createElement ( 'mrow' ) ;
245
254
var conditions = false , children ;
246
255
for ( var i = 0 ; i < qualifiers . length ; i ++ ) {
247
256
if ( qualifiers [ i ] . localName == 'condition' ) {
248
257
conditions = true ;
249
258
children = CToP . children ( qualifiers [ i ] ) ;
250
259
for ( var j = 0 ; j < children . length ; j ++ ) {
251
- CToP . applyTransform ( mrow , children [ j ] , 0 ) ;
260
+ CToP . applyTransform ( conditions_mrow , children [ j ] , 0 ) ;
252
261
}
253
262
}
254
263
}
255
- if ( ! conditions ) {
256
- for ( var j = 0 ; j < bvars . length ; j ++ ) {
257
- var bvar = bvars [ j ] ;
258
- var children = CToP . children ( bvar ) ;
259
- if ( children . length ) {
260
- CToP . applyTransform ( mrow , children [ 0 ] , 0 ) ;
261
- }
262
- }
264
+ if ( conditions ) {
265
+ CToP . appendToken ( mrow , 'mo' , ',' ) ;
263
266
}
267
+ mrow . appendChild ( conditions_mrow ) ;
264
268
for ( var i = 0 ; i < qualifiers . length ; i ++ ) {
265
269
if ( qualifiers [ i ] . localName != 'condition' ) {
266
270
CToP . appendToken ( mrow , 'mo' , '\u2208' ) ;
@@ -271,7 +275,7 @@ var CToP = {
271
275
}
272
276
}
273
277
if ( bvars . length || children . length ) {
274
- CToP . appendToken ( mrow , 'mo' , '.' ) ;
278
+ CToP . appendToken ( mrow , 'mo' , argSeparator ) ;
275
279
}
276
280
for ( var i = 0 ; i < args . length ; i ++ ) {
277
281
CToP . applyTransform ( mrow , args [ i ] , 0 ) ;
@@ -661,9 +665,9 @@ CToP.applyTokens = {
661
665
"outerproduct" : CToP . infix ( '\u2297' , 2 ) ,
662
666
"sum" : CToP . iteration ( '\u2211' ) ,
663
667
"product" : CToP . iteration ( '\u220F' ) ,
664
- "forall" : CToP . bind ( '\u2200' ) ,
665
- "exists" : CToP . bind ( '\u2203' ) ,
666
- "lambda" : CToP . bind ( '\u03BB' ) ,
668
+ "forall" : CToP . bind ( '\u2200' , ',' ) ,
669
+ "exists" : CToP . bind ( '\u2203' , '\u007c' ) ,
670
+ "lambda" : CToP . bind ( '\u03BB' , '.' ) ,
667
671
668
672
}
669
673
CToP . applyTokens [ 'tendsto' ] = function ( parentNode , contentMMLNode , firstArg , args , bvars , qualifiers , precedence ) {
0 commit comments