terminal/.github/actions/spell-check/dictionary
James Holderness 70a7ccc120
Add support for the "overline" graphic rendition attribute (#6754)
## Summary of the Pull Request

This PR adds support for the `SGR 53` and `SGR 55` escapes sequences,
which enable and disable the ANSI _overline_ graphic rendition
attribute, the equivalent of the console character attribute
`COMMON_LVB_GRID_HORIZONTAL`. When a character is output with this
attribute set, a horizontal line is rendered at the top of the character
cell.

## PR Checklist
* [x] Closes #6000
* [x] CLA signed. 
* [x] Tests added/passed
* [ ] Documentation updated. 
* [ ] Schema updated.
* [x] I've discussed this with core contributors already.

## Detailed Description of the Pull Request / Additional comments

To start with, I added `SetOverline` and `IsOverlined` methods to the
`TextAttribute` class, to set and get the legacy
`COMMON_LVB_GRID_HORIZONTAL` attribute. Technically there was already an
`IsTopHorizontalDisplayed` method, but I thought it more readable to add
a separate `IsOverlined` as an alias for that.

Then it was just a matter of adding calls to set and reset the attribute
in response to the `SGR 53` and `SGR 55` sequences in the
`SetGraphicsRendition` methods of the two dispatchers. The actual
rendering was already taken care of by the `PaintBufferGridLines` method
in the rendering engines.

The only other change required was to update the `_UpdateExtendedAttrs`
method in the `Xterm256Engine` of the VT renderer, to ensure the
attribute state would be forwarded to the Windows Terminal over conpty.

## Validation Steps Performed

I've extended the existing SGR unit tests to cover the new attribute in
the `AdapterTest`, the `OutputEngineTest`, and the `VtRendererTest`.
I've also manually tested the `SGR 53` and `SGR 55` sequences to confirm
that they do actually render (or remove) an overline on the characters
being output.
2020-07-06 14:11:17 +00:00
..
api.txt Update wil. Fixes GDI handle leak (#6229) 2020-06-01 22:29:05 +00:00
apis.txt Add settings to warn about large or multiline pastes (#6631) 2020-07-01 19:43:28 +00:00
chinese.txt ci: run spell check in CI, fix remaining issues (#4799) 2020-03-25 11:02:53 -07:00
dictionary.txt Add support for the "overline" graphic rendition attribute (#6754) 2020-07-06 14:11:17 +00:00
fonts.txt ci: run spell check in CI, fix remaining issues (#4799) 2020-03-25 11:02:53 -07:00
japanese.txt ci: run spell check in CI, fix remaining issues (#4799) 2020-03-25 11:02:53 -07:00
math.txt add til::math, use it for float conversions to point, size (#5150) 2020-03-27 22:48:49 +00:00
microsoft.txt Last round of master spelling fixes 2020-06-05 12:03:20 -07:00
names.txt ci: spelling: update to 0.0.16a; update advice (#5922) 2020-05-28 08:01:52 -05:00
README.md ci: run spell check in CI, fix remaining issues (#4799) 2020-03-25 11:02:53 -07:00

Dictionaries are lists of words to accept unconditionally

While check spelling will complain about a whitelisted word which is no longer present, you can include things here even if they are not otherwise present in the repository.

E.g., you could include a list of system APIs here, or potential contributors (so that if a future commit includes their name, it'll be accepted).

Files

File Description
Dictionary Primary US English dictionary
Chinese Chinese words
Japanese Japanese words
Microsoft Microsoft brand items
Fonts Font names
Names Names of people