Varinat -> Variant

This commit is contained in:
Daniel Imms
2023-11-02 10:43:56 -07:00
parent 390e4f30c8
commit 6214f4c2e6
7 changed files with 27 additions and 27 deletions
+2 -2
View File
@@ -53,14 +53,14 @@ class ExtendedAttrsImage implements IExtendedAttrsImage {
this._ext |= value & (Attributes.CM_MASK | Attributes.RGB_MASK);
}
public get underlineVarinatOffset(): number {
public get underlineVariantOffset(): number {
const val = (this._ext & ExtFlags.VARIANT_OFFSET) >> 29;
if (val < 0) {
return val ^ 0xFFFFFFF8;
}
return val;
}
public set underlineVarinatOffset(value: number) {
public set underlineVariantOffset(value: number) {
this._ext &= ~ExtFlags.VARIANT_OFFSET;
this._ext |= (value << 29) & ExtFlags.VARIANT_OFFSET;
}
@@ -3,15 +3,15 @@
* @license MIT
*/
import { computeNextVarinatOffset } from 'browser/renderer/shared/RendererUtils';
import { computeNextVariantOffset } from 'browser/renderer/shared/RendererUtils';
import { assert } from 'chai';
describe('RendererUtils', () => {
it('computeNextVarinatOffset', () => {
it('computeNextVariantOffset', () => {
const cellWidth = 11;
const doubleCellWidth = 22;
let line = 1;
let varinatOffset = 0;
let variantOffset = 0;
// should line 1
// =,_,=_,=_,
@@ -19,32 +19,32 @@ describe('RendererUtils', () => {
let result = [1, 0, 0, 0];
for (let index = 0; index < cells.length; index++) {
const cell = cells[index];
varinatOffset = computeNextVarinatOffset(cell, line, varinatOffset);
assert.equal(varinatOffset, result[index]);
variantOffset = computeNextVariantOffset(cell, line, variantOffset);
assert.equal(variantOffset, result[index]);
}
// should line 2
// ==__==__==_,_==__==__==,__==__==__==__==__==__,==__==__==__==__==__==,
line = 2;
varinatOffset = 0;
variantOffset = 0;
cells = [cellWidth, cellWidth, doubleCellWidth, doubleCellWidth];
result = [3, 2, 0 ,2];
for (let index = 0; index < cells.length; index++) {
const cell = cells[index];
varinatOffset = computeNextVarinatOffset(cell, line, varinatOffset);
assert.equal(varinatOffset, result[index]);
variantOffset = computeNextVariantOffset(cell, line, variantOffset);
assert.equal(variantOffset, result[index]);
}
// should line 3
// ===___===__,_===___===_,__===___===___===___==,=___===___===___===___,
line = 3;
varinatOffset = 0;
variantOffset = 0;
cells = [cellWidth, cellWidth, doubleCellWidth, doubleCellWidth];
result = [5, 4, 2, 0];
for (let index = 0; index < cells.length; index++) {
const cell = cells[index];
varinatOffset = computeNextVarinatOffset(cell, line, varinatOffset);
assert.equal(varinatOffset, result[index]);
variantOffset = computeNextVariantOffset(cell, line, variantOffset);
assert.equal(variantOffset, result[index]);
}
});
});
+1 -1
View File
@@ -57,6 +57,6 @@ function createDimension(): IDimensions {
};
}
export function computeNextVarinatOffset(cellWidth: number, lineWidth: number, currentOffset: number = 0): number {
export function computeNextVariantOffset(cellWidth: number, lineWidth: number, currentOffset: number = 0): number {
return (cellWidth - (Math.round(lineWidth) * 2 - currentOffset)) % (Math.round(lineWidth) * 2);
}
+3 -3
View File
@@ -6,7 +6,7 @@
import { IColorContrastCache } from 'browser/Types';
import { DIM_OPACITY, TEXT_BASELINE } from 'browser/renderer/shared/Constants';
import { tryDrawCustomChar } from 'browser/renderer/shared/CustomGlyphs';
import { computeNextVarinatOffset, excludeFromContrastRatioDemands, isPowerlineGlyph, isRestrictedPowerlineGlyph, throwIfFalsy } from 'browser/renderer/shared/RendererUtils';
import { computeNextVariantOffset, excludeFromContrastRatioDemands, isPowerlineGlyph, isRestrictedPowerlineGlyph, throwIfFalsy } from 'browser/renderer/shared/RendererUtils';
import { IBoundingBox, ICharAtlasConfig, IRasterizedGlyph, ITextureAtlas } from 'browser/renderer/shared/Types';
import { NULL_COLOR, color, rgba } from 'common/Color';
import { EventEmitter } from 'common/EventEmitter';
@@ -545,7 +545,7 @@ export class TextureAtlas implements ITextureAtlas {
const yTop = Math.ceil(padding + this._config.deviceCharHeight) - yOffset - (restrictToCellHeight ? lineWidth * 2 : 0);
const yMid = yTop + lineWidth;
const yBot = yTop + lineWidth * 2;
let nextOffset = this._workAttributeData.getUnderlineVarinatOffset();
let nextOffset = this._workAttributeData.getUnderlineVariantOffset();
for (let i = 0; i < chWidth; i++) {
this._tmpCtx.save();
@@ -610,7 +610,7 @@ export class TextureAtlas implements ITextureAtlas {
this._tmpCtx.moveTo(xChLeft + offsetWidth + lineWidth, yTop);
this._tmpCtx.lineTo(xChRight, yTop);
}
nextOffset = computeNextVarinatOffset(xChRight - xChLeft, lineWidth, nextOffset);
nextOffset = computeNextVariantOffset(xChRight - xChLeft, lineWidth, nextOffset);
break;
case UnderlineStyle.DASHED:
this._tmpCtx.setLineDash([this._config.devicePixelRatio * 4, this._config.devicePixelRatio * 3]);
+2 -2
View File
@@ -119,7 +119,7 @@ export interface IExtendedAttrs {
ext: number;
underlineStyle: UnderlineStyle;
underlineColor: number;
underlineVarinatOffset: number;
underlineVariantOffset: number;
urlId: number;
clone(): IExtendedAttrs;
isEmpty(): boolean;
@@ -210,7 +210,7 @@ export interface IAttributeData {
isUnderlineColorPalette(): boolean;
isUnderlineColorDefault(): boolean;
getUnderlineStyle(): number;
getUnderlineVarinatOffset(): number;
getUnderlineVariantOffset(): number;
}
/** Cell data */
+4 -4
View File
@@ -126,8 +126,8 @@ export class AttributeData implements IAttributeData {
? (this.bg & BgFlags.HAS_EXTENDED ? this.extended.underlineStyle : UnderlineStyle.SINGLE)
: UnderlineStyle.NONE;
}
public getUnderlineVarinatOffset(): number {
return this.extended.underlineVarinatOffset;
public getUnderlineVariantOffset(): number {
return this.extended.underlineVariantOffset;
}
}
@@ -177,14 +177,14 @@ export class ExtendedAttrs implements IExtendedAttrs {
this._urlId = value;
}
public get underlineVarinatOffset(): number {
public get underlineVariantOffset(): number {
const val = (this._ext & ExtFlags.VARIANT_OFFSET) >> 29;
if (val < 0) {
return val ^ 0xFFFFFFF8;
}
return val;
}
public set underlineVarinatOffset(value: number) {
public set underlineVariantOffset(value: number) {
this._ext &= ~ExtFlags.VARIANT_OFFSET;
this._ext |= (value << 29) & ExtFlags.VARIANT_OFFSET;
}
+4 -4
View File
@@ -119,16 +119,16 @@ describe('AttributeData', () => {
attrs.fg &= ~FgFlags.UNDERLINE;
assert.equal(attrs.getUnderlineStyle(), UnderlineStyle.NONE);
});
it('getUnderlineVarinatOffset', () => {
it('getUnderlineVariantOffset', () => {
const attrs = new AttributeData();
// defaults to no offset
assert.equal(attrs.getUnderlineVarinatOffset(), 0);
assert.equal(attrs.getUnderlineVariantOffset(), 0);
// should return 0 - 7
for (let i = 0; i < 8; ++i) {
attrs.extended.underlineVarinatOffset = i;
assert.equal(attrs.getUnderlineVarinatOffset(), i);
attrs.extended.underlineVariantOffset = i;
assert.equal(attrs.getUnderlineVariantOffset(), i);
}
});
});