Implement leaning mark mechanism for F
, L
, P
, b
, d
, h
, k
, p
, q
, r
to get better mark placement. Now, "narrow" marks will align to these letters' extension parts (#1851).
This commit is contained in:
parent
387389919c
commit
f7fd09172b
33 changed files with 419 additions and 168 deletions
|
@ -80,3 +80,39 @@ export class $NamedParameterPair$ {
|
|||
this.right = r;
|
||||
}
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
export const MatchUtil = {
|
||||
never() {
|
||||
return false;
|
||||
},
|
||||
equal(x) {
|
||||
return y => y === x;
|
||||
},
|
||||
negate(f) {
|
||||
return x => !f(x);
|
||||
},
|
||||
both(a, b) {
|
||||
return x => a(x) && b(x);
|
||||
},
|
||||
either(a, b) {
|
||||
return x => a(x) || b(x);
|
||||
}
|
||||
};
|
||||
export function constant(x) {
|
||||
return () => x;
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
export const ArrayUtil = {
|
||||
mapIndexToItems(a, indexes) {
|
||||
let answer = [];
|
||||
for (const item of indexes) answer.push(a[item]);
|
||||
return answer;
|
||||
},
|
||||
insertSliceAt(a, i, b) {
|
||||
a.splice(i, 0, ...b);
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue