unicode-proposals icon indicating copy to clipboard operation
unicode-proposals copied to clipboard

Color Swatch emojis

Open Crissov opened this issue 8 years ago • 4 comments

Note: This is a more focused spinoff or subset of the discussion about colored/material hearts #222.

The human eye and brain can distinguish thousands if not millions of colors, but in language, we regularly only refer to a very small and thus crude subset, which depends on the domain, of course. There is only a handful of canonical color names that are used in common parlance and several dozen color designations that one would roughly understand in a special setting.

Text is predominantly monochrome, i.e. a single foreground or ink color and a single background or canvas color. Colorful characters – like emojis usually are – has been used throughout history if and where possible, though. There are some (compatibility) emojis that could be reused as color swatches, but no shape (heart, square, diamond, circle, book) already has enough variations. Some of them also do not have good monochromatic fallback. There are some existing characters, however, that are not yet emojis, but could work as conventional representations of colors in B&W text: hatching squares.

There are various conventions to match colors (or surface materials) with hatching patterns, but the one originating from European heraldry is probably best known and most suitable. There are existing characters for, at least, blue, red, green, purple, black and white swatches, which would just require an emoji presentation variation selector U+FE0F (VS-16) appended. This would be recorded in emoji-variation-sequences.txt and could be done without waiting for an update to the Unicode Standard, since such emoji data is governed by UTS51. There was already a proposal to Unicode to add additional pattern squares, which would be introduced in a future release of the Unicode Standard (i.e. 11.0 in June 2018 or later).

Color Tincture Pattern Sample Description
black ink ■ U+25A0 filled, solid, opaque, foreground
white = silver argent □ U+25A1?
white canvas ▢ U+25A2? none, blank, empty, transparent, background
? ? ▣ U+25A3 (filled square inside empty square)
blue azure ▤ U+25A4 -- horizontal stripes
red gules ▥ U+25A5 || vertical stripes
black sable ▦ U+25A6 ++ square pattern, orthogonal crosshatch
(lime) green vert ▧ U+25A7 \\ forward diagonals
purple purpure ▨ U+25A8 // backward diagonals
reddish purple murrey ▩ U+25A9 /\ diagonal crosshatch
dark-gray = iron, steel ▩ U+25A9 (X+2BxE) XX diamond pattern (German)
yellow = gold or X+2Bx0 .. dotted
dark red (maroon/pink) sanguine X+2Bx1 -\ horizontal-forward crosshatch
orange-tawny tenné X+2Bx2 -/ horizontal-backward crosshatch
brown brunâtre X+2Bx3 |\ vertical-forward crosshatch
grey fey X+2Bx4 |/ vertical-backward crosshatch (English)
(alternate) blood red (pink) (sanguine) X+2Bx4 |/ vertical-backward crosshatch (German)
~~flesh, skin~~ carnation X+2Bx7 | vertical dashed
ash-gray cendrée X+2Bx8 |- alternating dashed
sky-blue bleu-céleste X+2Bx9 -. horizontal dash-dotted (Spanish: green)
orange X+2BxA ! vertical dash-dotted
(alternate) green (vert) X+2BxB .-. dotted horizontal stripes (Spanish)
(alternate) orange-tawny (tenné) X+2By1 .|. dotted vertical stripes (English)

Michael Everson's proposal from April 2011 had new Square With ... Fill characters at U+2B60..2B71. These codepoints have since been delegated to some arrows. The block Miscellaneous Symbols and Arrows U+2Bxy still has some other unassigned slots that could be used instead, e.g. U+2BD2..2BEB or U+2BF0..2BFF.

  • X+2Bx0 .. or, gold, yellow SQUARE WITH DOTTED FILL (en)
  • X+2Bx1 -\ sanguine, dark red SQUARE WITH HORIZONTAL AND UPPER LEFT TO LOWER RIGHT FILL (en)
  • X+2Bx2 -/ tenné, orange-tawny SQUARE WITH HORIZONTAL AND UPPER RIGHT TO LOWER LEFT FILL (en)
  • X+2Bx3 |\ maroon, brown SQUARE WITH VERTICAL AND UPPER LEFT TO LOWER RIGHT FILL (en+de)
  • X+2Bx4 |/ fey, grey; blood red SQUARE WITH VERTICAL AND UPPER RIGHT TO LOWER LEFT FILL (en; de)
  • X+2Bx5 ~~+\ earth SQUARE WITH ORTHOGONAL CROSSHATCH AND UPPER LEFT TO LOWER RIGHT FILL (de)~~
  • X+2Bx6 ~~- water SQUARE WITH OFFSET HORIZONTAL LINE FILL (de)~~
  • X+2Bx7 ~~| flesh SQUARE WITH OFFSET VERTICAL LINE FILL (de)~~
  • X+2Bx8 -|- cendrée, ashen grey SQUARE WITH ALTERNATING VERTICAL AND HORIZONTAL FILL (en+de)
  • X+2Bx9 -. green SQUARE WITH HORIZONTAL LINE AND DOT FILL (es)
  • X+2BxA |. orange SQUARE WITH VERTICAL LINE AND DOT FILL (en)
  • X+2BxB .-. green SQUARE WITH ALTERNATING HORIZONTAL LINE AND DOT FILL (es)
  • X+2BxC ~~L natural, proper SQUARE WITH UPPER LEFT TO LOWER RIGHT STEPPED FILL (de)~~
  • X+2BxD ~~J natural, proper SQUARE WITH UPPER RIGHT TO LOWER LEFT STEPPED FILL (cz)~~
  • X+2BxE ~~+ steel SQUARE WITH CROSS FILL (it)~~
  • X+2BxF ~~x sanguine, dark red SQUARE WITH X FILL (it)~~
  • X+2By0 ~~( natural, proper SQUARE WITH SEMI-CIRCLE FILL (it)~~
  • X+2By1 .|. tenné, orange-tawny SQUARE WITH ALTERNATING VERTICAL LINE AND DOT FILL (en)

The 16 original CGA / VGA / HTML3.2 / CSS1 colors come in light/dark = high/low pairs:

Generalization Light Dark Hue
light □️ white ▢️ silver
dark ▦️ (ash) gray ■️ black
monochrome □️ white ■️ black
gray ▢️ silver ▦️ (ash) gray
red ▥️ (rose) red ▩️ maroon
orange/brown yellow olive 60°
green ▧️ lime � (grass) green 120°
cyan aqua teal 180°
blue ▤️ (cornflower) blue navy 240°
magenta/pink fuchsia ▨️ purple 300°

Once agreed upon (and added) as emojis, these color swatches could be used in Emoji ZWJ Sequences to designate the predominant color(s) of the emoji that precedes them. This could be a hair color, car paint, nail polish, blossom color, nib ink, symbol tint etc. Any frequent combination would be documented in emoji-zwj-sequences.txt. (Skin complexion is already dealt with by dedicated combining Emoji Modifier characters U+1F3FA..F that are based upon the Fitzpatrick scale, but combine its first two values into one. If added, X+2Bx7 carnation might need to become an Emoji Modifier Base.)

For UTC150 in November 2016, @pauldhunt (unsuccessfully) proposed 10 new characters for color swatches in L2/16-318, which map to U+25A5 ▥, U+2BxA, U+2Bx0, U+25A7 ▧, U+25A4 ▤, U+25A8 ▨, U+25A1 □, U+25A6 ▦, U+25A9 ▩/2BxE/2Bx8 and U+2Bx3 above:

  • RED
  • ORANGE
  • YELLOW
  • GREEN
  • BLUE
  • PURPLE
  • WHITE (may potentially use WHITE LARGE SQUARE, U+2B1C)
  • BLACK (may potentially use BLACK LARGE SQUARE, U+2B1B)
  • GREY
  • BROWN

Proposals

Standard References

Crissov avatar Apr 19 '17 11:04 Crissov

DIN 30601:1971 (now withdrawn) offered a more systematic approach for additive colors with lines for red, dashes for green and dots for blue. Hatchings of composite colors would use combinations of these basic patterns. They intentionally deviate from heraldic customs to ensure independence of drawing orientation. Black and White would be fully filled and completely blank, respectively.

Hatching patterns for additive colors after DIN 30601:1971 (withdrawn 2002): basic Red (lines), Green (dashed), Blue (dotted); simple composite colors Yellow (lines and dashes), Cyan (dashes and dots), Magenta (dots and lines)

Crissov avatar Apr 19 '17 13:04 Crissov

Henrik Theiling made an artificial writing system for the constructed language Toki Pona by Sonja Elen Kisa, which uses some of the patterned squares for different colors:

Char Codepoint Color
U+25A0 black
U+25A4 red
U+25A5 yellow, light green
U+25A6 blue-green, cyan
U+25A7 colorful
U+2610 white

Michael Everson submitted an updated proposal, published as L2/17-394 in the Unicode document repository. The number of proposed characters and their suggested codepoints have changed:

  • X+1F7D9 (X+2B7A) SQUARE WITH ~~ALTERNATING~~ VERTICAL ~~AND HORIZONTAL~~ LINE AND DOT FILL
    • used in English heraldic hatching for orange

    • The name did not match the sample glyph in the proposal.
  • X+1F7DA (X+2B70) SQUARE WITH DOTTED FILL
    • used in English heraldic hatching for Or or gold or yellow

  • X+1F7DB (X+2B79) SQUARE WITH HORIZONTAL LINE AND DOT FILL
    • used in English heraldic hatching for bleu celeste or light blue

  • X+1F7DC (X+2B77) SQUARE WITH OFFSET VERTICAL LINE FILL
    • used in German heraldic hatching for carnation

  • X+1F7DD (X+2B73?) SQUARE WITH VERTICAL AND UPPER LEFT TO LOWER RIGHT FILL or SQUARE WITH HORIZONTAL AND UPPER RIGHT TO LOWER LEFT FILL
    • used in English heraldic hatching for tenné or tawny light brown

    • The reference image (~ former X+2B72 for tenny and X+2B71 for brown), sample graphic (X+2B73) and character name (X+2B74) do not match in the proposal. Hatching pattern usage for brownish (and some other) tinctures was inconsistent across Europe.
  • X+1F7DE (X+2B78) SQUARE WITH ALTERNATING HORIZONTAL AND VERTICAL LINE FILL
    • used in German heraldic hatching for ashen grey

    • cendrée

Crissov avatar Oct 25 '17 19:10 Crissov

David P. Kendal and for 12 emoji color modifiers in L2/17-355.

  • red
  • orange
  • yellow
  • green
  • dark blue
  • light blue
  • pink
  • purple
  • brown
  • black
  • grey
  • white

This set was apparently identified by Berlin and Kay in a linguistic study.

Crissov avatar Nov 01 '17 14:11 Crissov

Emoji 12.0 (2019) will add several colored hearts, squares and circles to complete the following set of color swatches:

  • 🖤⚫⬛ Black
  • 🤍⚪⬜ White
  • 💜🟣🟪 Purple
  • ❤🔴🟥 Red
  • 🤎🟤🟫 Brown
  • 🧡🟠🟧 Orange
  • 💛🟡🟨 Yellow
  • 💚🟢🟩 Green
  • 💙🔵🟦 Blue

There are still some missing, at least:

  • [ ] Pink
  • [ ] Gray
  • [ ] Blue variant (Cyan or Navy or both)
  • [ ] Red variant (Dark, Maroon, Blood)

For consistency, they should also be added as Heart, Circle and Square.

Crissov avatar Oct 18 '18 10:10 Crissov