adds double-stem arrows (looks like equal signs)

This commit is contained in:
Rasmus Andersson 2019-08-04 17:21:25 -07:00
parent 49cd0c56c8
commit 1a0a8dc178
3 changed files with 2371 additions and 288 deletions

File diff suppressed because one or more lines are too long

View file

@ -62,11 +62,17 @@
leftArrow
leftLongArrow
leftLongArrow2
leftDoubleArrow
leftLongDoubleArrow
rightArrow
rightLongArrow
rightLongArrow2
rightDoubleArrow
rightLongDoubleArrow
leftRightArrow
leftRightLongArrow
leftRightDoubleArrow
leftRightLongDoubleArrow
colon
approxequal
asciitilde
@ -107,11 +113,17 @@
leftArrow.case
leftLongArrow.case
leftLongArrow2.case
leftDoubleArrow.case
leftLongDoubleArrow.case
rightArrow.case
rightLongArrow.case
rightLongArrow2.case
rightDoubleArrow.case
rightLongDoubleArrow.case
leftRightArrow.case
leftRightLongArrow.case
leftRightDoubleArrow.case
leftRightLongDoubleArrow.case
colon.case
approxequal.case
asciitilde.case

View file

@ -8,23 +8,60 @@
endash.case
emdash.case
];
@DASH_ANY = [ @DASH @DASH_CASE ];
# --->
sub @DASH @DASH @DASH greater by rightLongArrow2;
sub @DASH_ANY @DASH_ANY @DASH_ANY greater.case by rightLongArrow2.case;
# -->
sub @DASH @DASH greater by rightLongArrow;
sub @DASH_ANY @DASH_ANY greater.case by rightLongArrow.case;
# [endash emdash]-> (legacy)
sub [endash emdash] greater by rightLongArrow;
sub [endash emdash endash.case emdash.case] greater.case by rightLongArrow.case;
# ->
sub hyphen greater by rightArrow;
sub [endash emdash] greater by rightLongArrow; # legacy
sub @DASH @DASH greater by rightLongArrow;
sub @DASH @DASH @DASH greater by rightLongArrow2;
# <-
sub less @DASH @DASH by leftLongArrow;
sub [hyphen hyphen.case] greater.case by rightArrow.case;
# <---
sub less @DASH @DASH @DASH by leftLongArrow2;
ignore sub less' hyphen' @Numeral; # ignore e.g. "<-3" ("less than negative")
sub less.case @DASH_ANY @DASH_ANY @DASH_ANY by leftLongArrow2.case;
# <--
sub less @DASH @DASH by leftLongArrow;
sub less.case @DASH_ANY @DASH_ANY by leftLongArrow.case;
# <-[endash emdash] (legacy)
sub less [endash emdash] by leftLongArrow;
sub less.case [endash emdash endash.case emdash.case] by leftLongArrow.case;
# ignore e.g. "<-3" ("less than negative")
ignore sub less' hyphen' @Numeral;
ignore sub less.case' [hyphen hyphen.case]' @Numeral;
# <-
sub less' hyphen' by leftArrow;
sub less [endash emdash] by leftLongArrow; # legacy
sub less.case' [hyphen hyphen.case]' by leftArrow.case;
# <->
sub less rightArrow by leftRightArrow; # <,->
sub [less less.case] rightArrow.case by leftRightArrow.case;
sub leftArrow greater by leftRightArrow; # <-,-
sub leftArrow.case [greater greater.case] by leftRightArrow.case;
# <-->
sub less rightLongArrow by leftRightLongArrow; # <,-->
sub [less less.case] rightLongArrow.case by leftRightLongArrow.case;
sub leftLongArrow greater by leftRightLongArrow; # <--,>
sub leftLongArrow.case [greater greater.case] by leftRightLongArrow.case;
# <=>
sub less equal greater by leftRightDoubleArrow;
sub less.case [equal equal.case] [greater greater.case] by leftRightDoubleArrow.case;
sub less equal equal greater by leftRightLongDoubleArrow;
sub less.case [equal equal.case] [equal equal.case] [greater greater.case] by leftRightLongDoubleArrow.case;
# =>
sub equal equal greater by rightLongDoubleArrow;
sub [equal equal.case] [equal equal.case] greater.case by rightLongDoubleArrow.case;
sub equal greater by rightDoubleArrow;
sub [equal equal.case] greater.case by rightDoubleArrow.case;
# <==
sub less equal equal by leftLongDoubleArrow;
sub less.case [equal equal.case] [equal equal.case] by leftLongDoubleArrow.case;
# Note: We do NOT (sub less equal by leftDoubleArrow) as that would
# interfere with "<=" (less than or equal to)
# x surrounded by numbers, e.g. 3x4 -> 3×4
sub @Numeral x' @Numeral by multiply; # 3x9