1 /** 2 * Glyphs module, defining a lot of common glyphs for dcell. 3 * 4 * Copyright: Copyright 2022 Garrett D'Amore 5 * Authors: Garrett D'Amore 6 * License: 7 * Distributed under the Boost Software License, Version 1.0. 8 * (See accompanying file LICENSE or https://www.boost.org/LICENSE_1_0.txt) 9 * SPDX-License-Identifier: BSL-1.0 10 */ 11 module dcell.glyph; 12 13 /** 14 * Common symbols. 15 */ 16 class Glyph 17 { 18 public enum 19 { 20 sterling = '£', 21 downArrow = '↓', 22 leftArrow = '←', 23 rightArrow = '→', 24 upArrow = '↑', 25 bullet = '·', 26 board = '░', 27 checkerBoard = '▒', 28 degree = '°', 29 diamond = '◆', 30 greaterThanEqual = '≥', 31 pi = 'π', 32 horizLine = '─', 33 lantern = '§', 34 plus = '┼', 35 lessThanEqual = '≤', 36 lowerLeftCorner = '└', 37 lowerRightCorner = '┘', 38 notEqual = '≠', 39 plusMinus = '±', 40 s1 = '⎺', 41 s3 = '⎻', 42 s7 = '⎼', 43 s9 = '⎽', 44 block = '█', 45 topTee = '┬', 46 rightTee = '┤', 47 leftTee = '├', 48 bottomTee = '┴', 49 upperLeftCorner = '┌', 50 upperRightCorner = '┐', 51 vertLine = '│', 52 } 53 54 static immutable string[dchar] fallbacks; 55 56 shared static this() 57 { 58 fallbacks[sterling] = "f"; 59 fallbacks[downArrow] = "v"; 60 fallbacks[leftArrow] = "<"; 61 fallbacks[rightArrow] = ">"; 62 fallbacks[upArrow] = "^"; 63 fallbacks[bullet] = "o"; 64 fallbacks[board] = "#"; 65 fallbacks[checkerBoard] = ":"; 66 fallbacks[degree] = "\\"; 67 fallbacks[diamond] = "+"; 68 fallbacks[greaterThanEqual] = ">"; 69 fallbacks[pi] = "*"; 70 fallbacks[horizLine] = "-"; 71 fallbacks[lantern] = "#"; 72 fallbacks[plus] = "+"; 73 fallbacks[lessThanEqual] = "<"; 74 fallbacks[lowerLeftCorner] = "+"; 75 fallbacks[lowerRightCorner] = "+"; 76 fallbacks[notEqual] = "!"; 77 fallbacks[plusMinus] = "#"; 78 fallbacks[s1] = "~"; 79 fallbacks[s3] = "-"; 80 fallbacks[s7] = "-"; 81 fallbacks[s9] = "_"; 82 fallbacks[block] = "#"; 83 fallbacks[topTee] = "+"; 84 fallbacks[rightTee] = "+"; 85 fallbacks[leftTee] = "+"; 86 fallbacks[bottomTee] = "+"; 87 fallbacks[upperLeftCorner] = "+"; 88 fallbacks[upperRightCorner] = "+"; 89 fallbacks[vertLine] = "|"; 90 } 91 }