1
0
Fork 0
mirror of synced 2024-05-18 11:33:38 +12:00

C-style compound assignment >>= <<= ||= |= are not combined with equal sign by default. Old behavior is moved into ss09 (closes #974)

This commit is contained in:
Nikita Prokopov 2020-10-10 22:30:01 +02:00
parent df07894745
commit 89e0af072d
5 changed files with 51 additions and 19 deletions

View file

@ -7,8 +7,8 @@ All notable changes to this project will be documented in this file.
- Fixed height of `∑` U+2211 N-ARY SUMMATION #1083
- Added U+2241..U+224B `≁ ≂ ≃ ≄ ≅ ≆ ≇ ≉ ≊ ≋` #1090
- Added new enclosed characters from Unicode 13 U+0229C `⊜`, U+1F10D `🄍`, U+1F10E `🄎`, U+1F10F `🄏`, U+1F16D `🅭`, U+1F16E `🅮`, U+1F16F `🅯`, U+1F1AD `🆭` #1070
- Redrew U+27F0..U+27FF Supplemental Arrows-A to be strict monospace `⟲⟳⟴⟵⟶⟷⟸⟹⟺⟻⟼⟽⟾⟿`
- Alternative `a` cv01
- Redrew U+27F0..U+27FF Supplemental Arrows-A to be strict monospace `⟲⟳⟴⟵⟶⟷⟸⟹⟺⟻⟼⟽⟾⟿` #1109 #1123
- Alternative `a` cv01 #949
- Alternative `g` cv02 #886
- Alternative `i` cv03-cv06
- Alternative `l` cv07-cv10 #899
@ -23,7 +23,9 @@ All notable changes to this project will be documented in this file.
- `=<` as less than or equal `cv21` #34
- `=<` as less than or equal with horizontal bar `cv22` #34
- `>=` with a horizontal bar `cv23`
- Moved `.-` into `dlig` #1103
- Moved `.-` into `dlig` #860 #1103
- Returned `[]` as `dlig`
- C-style compound assignment `>>=` `<<=` `||=` `|=` are not combined with equal sign by default. Old behavior is moved into `ss09` #974
#### 5.2 (June 12, 2020)
@ -146,7 +148,7 @@ Removed 44 individual arrow ligatures, replaced with four universal, combinative
- Alternatives (stylistic sets):
- Lowercase `r` (ss01) [#601]
- Less than/greater than `<=` `>=` (ss02) [#263] [#617]
- Ampersand `&` (ss03) [#617]
- Ampersand `&` (ss03) [#371] [#617]
- Dollar sign `$` (ss04) [#617]
- At sign `@` (ss05) [#617] [#748] [#817]
- Thin backslash (ss06) [#577 #720 #825]

File diff suppressed because one or more lines are too long

View file

@ -158,19 +158,25 @@
" ignore sub greater' equal [less greater bar colon exclam slash];\n")
;; #346 >>->> >>=>>
;; #974 keep >>=
["greater" "greater"]
(str " ignore sub [hyphen equal] greater' greater;\n"
" ignore sub greater' greater [hyphen equal];\n")
" ignore sub greater' greater hyphen;\n"
" ignore sub greater' greater equal [equal less greater bar colon exclam slash];\n")
;; #346 <<-<< <<=<<
;; #974 keep <<=
["less" "less"]
(str " ignore sub [hyphen equal] less' less;\n"
" ignore sub less' less [hyphen equal];\n")
" ignore sub less' less hyphen;\n"
" ignore sub less' less equal [equal less greater bar colon exclam slash];\n")
;; #346 ||-|| ||=||
;; #974 keep ||=
["bar" "bar"]
(str " ignore sub [hyphen equal] bar' bar;\n"
" ignore sub bar' bar [hyphen equal];\n")
" ignore sub bar' bar hyphen;\n"
" ignore sub bar' bar equal [equal less greater bar colon exclam slash];\n")
;; #816 //=
["slash" "slash"]

View file

@ -66,7 +66,7 @@ lookup equal_arrows {
# single beginnings
sub less' equal by less_equal_start.seq;
sub greater' equal by greater_equal_start.seq;
sub bar' equal by bar_equal_start.seq;
sub bar' equal [equal less greater bar colon exclam slash] by bar_equal_start.seq; # disable |=
sub slash' equal by slash_equal_start.seq;
sub equal' [equal greater bar colon exclam] by equal_start.seq;

19
features/ss09.fea Normal file
View file

@ -0,0 +1,19 @@
lookup restore_greater_greater_equal {
sub greater_greater_equal_start.seq equal' by equal_end.seq;
sub greater_greater.liga' equal by greater_greater_equal_start.seq;
} restore_greater_greater_equal;
lookup restore_less_less_equal {
sub less_less_equal_start.seq equal' by equal_end.seq;
sub less_less.liga' equal by less_less_equal_start.seq;
} restore_less_less_equal;
lookup restore_bar_bar_equal {
sub bar_bar_equal_start.seq equal' by equal_end.seq;
sub bar_bar.liga' equal by bar_bar_equal_start.seq;
} restore_bar_bar_equal;
lookup restore_bar_equal {
sub bar_equal_start.seq equal' by equal_end.seq;
sub bar' equal by bar_equal_start.seq;
} restore_bar_equal;