├── .gitignore ├── AUTHORS.txt ├── CHANGELOG.md ├── CONTRIBUTING.md ├── CONTRIBUTORS.txt ├── DESCRIPTION.en_us.html ├── OFL.txt ├── README.md ├── docs ├── Armenian-comments-by-Khajag-Apelian_20200207.png ├── Armenian-comments-by-Khajag-Apelian_20200213.pdf ├── Cyrillic-review-by-Maria-Doreuli.pdf ├── HandjetGX-GlyphsApp-export.ttf ├── Hebrew-review-by-Meir-Sadan_20200223.pdf ├── Hebrew-review-by-Meir-Sadan_20200314.pdf ├── Hebrew-review-by-Meir-Sadan_20200323.pdf ├── Hebrew-review-by-Meir-Sadan_20200329.pdf ├── Hebrew-review-by-Meir-Sadan_20200403.pdf ├── animations │ ├── Handjet-ELGR-animation.gif │ ├── Handjet-ELSH-animation_element.gif │ ├── Handjet-ELSH-animation_letter.gif │ ├── Handjet-ELSH-animation_word.gif │ ├── Handjet-flythrough.gif │ └── Handjet-wght-animation.gif ├── charsets │ ├── gf-charset-rosetta-names.txt │ ├── make-gf-charset.py │ ├── nam │ │ ├── GF-cyrillic-plus_unique-glyphs.nam │ │ ├── GF-greek-core.nam │ │ ├── GF-latin-core_unique-glyphs.nam │ │ ├── GF-latin-plus_optional-glyphs.nam │ │ ├── GF-latin-plus_unique-glyphs.nam │ │ ├── arabic_unique-glyphs.nam │ │ ├── armenian_unique-glyphs.nam │ │ └── hebrew_unique-glyphs.nam │ └── txt │ │ ├── GF-cyrillic-plus_unique-glyphs.txt │ │ ├── GF-greek-core.txt │ │ ├── GF-latin-core_unique-glyphs.txt │ │ ├── GF-latin-plus_unique-glyphs.txt │ │ └── missing_glyphs_LCG.txt └── previews │ ├── Handjet-preview.indd │ ├── Handjet-preview.pdf │ └── Handjet-preview.svg ├── fonts ├── Handjet[ELGR,ELSH,wght].ttf └── Handjet[ELGR,ELSH,wght].woff2 ├── production ├── Handjet.designspace ├── add_stat_table.py ├── build.sh ├── make_designspace.py └── workflow.yaml ├── requirements.txt ├── sources └── Handjet.glyphs ├── test ├── Handjet-report.md ├── Handjet_Arabic.indd ├── Handjet_Arabic.pdf ├── Handjet_Armenian.indd ├── Handjet_Armenian.pdf ├── Handjet_Hebrew.indd └── Handjet_Hebrew.pdf └── tools ├── drawbot-scripts ├── Handjet-ELGR-animation.py ├── Handjet-ELSH-animation_element.py ├── Handjet-ELSH-animation_letter.py ├── Handjet-ELSH-animation_word.py ├── Handjet-flythrough.py ├── Handjet-wght-animation.py └── glyphnames-unicodes-show.csv └── glyphs-scripts ├── compile pixel glyph.py └── save glyph set for flythrough animation.py /.gitignore: -------------------------------------------------------------------------------- 1 | # osx noise 2 | .DS_Store 3 | profile 4 | 5 | # Fonts 6 | *.log 7 | master_*/ 8 | instance_*/ 9 | variable_*/ 10 | 11 | # Don't track our own generated preview fonts 12 | fonts/Handjet* 13 | upload_fonts.sh 14 | 15 | # tmp glyphs db 16 | db.pkl 17 | 18 | # tmp designspace 19 | production/instances-tmp.xml 20 | 21 | __pycache__ 22 | sources/GlyphData.xml 23 | -------------------------------------------------------------------------------- /AUTHORS.txt: -------------------------------------------------------------------------------- 1 | # This is the official list of project authors for copyright purposes. 2 | # This file is distinct from the CONTRIBUTORS.txt file. 3 | # See the latter for an explanation. 4 | # 5 | # Names should be added to this file as: 6 | # Name or Organization 7 | 8 | # Design 9 | 10 | David Březina 11 | 12 | # Code 13 | 14 | Rosetta Type Foundry s.r.o. 15 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # 2.003 (4.10.2022) 2 | - Renamed Variable font axes: `ESHP` to `ELSH` and `EGRD` to `ELGR` 3 | - Added `Acaron` / `acaron` 4 | - Added stylistic set names -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | If you would like to contribute directly, please file an issue to discuss your contribution before starting work on it, so you don't waste time. 2 | 3 | When your contribution is included, please add the name of the copyright author to AUTHORS.txt and your name to CONTRIBUTORS.txt -------------------------------------------------------------------------------- /CONTRIBUTORS.txt: -------------------------------------------------------------------------------- 1 | # This is the list of people who have contributed to this project, 2 | # and includes those not listed in AUTHORS.txt because they are not 3 | # copyright authors. For example, company employees may be listed 4 | # here because their company holds the copyright and is listed there. 5 | # 6 | # When adding J Random Contributor's name to this file, either J's 7 | # name or J's organization's name should be added to AUTHORS.txt 8 | # 9 | # Names should be added to this file as: 10 | # Name 11 | 12 | David Březina (design, production) 13 | Park Ha-neul 박하늘 (Korean-script design) 14 | Lee-su Yoo 유이수 (Korean-script design) 15 | Johannes Neumeier (post-production) 16 | Borna Izadpanah (Arabic-script consultancy) 17 | Khajag Apelian (Armenian-script consultancy) 18 | Meir Sadan (Hebrew-script consultancy) 19 | Rosalie Wagner (quality assurance) 20 | -------------------------------------------------------------------------------- /DESCRIPTION.en_us.html: -------------------------------------------------------------------------------- 1 |

2 | Handjet is an element-based variable font (aka pixel font, modular font, …) where every glyph is composed using multiple copies of the same element. Each element can take one of sixteen shapes and transition smoothly between them while creating various effects: a triangle appears out of thin air and expands into a square, the square rotates to create a lozenge and then scales into a thin rectangle, a rounded square smoothly turns into a circle, the circle into an oval, a clover becomes a rotating star, and a spindle, and a heart. The size of elements can be changed as well, producing different font weights. Plus, one can choose to use groups of 2x2 or 3x3 smaller elements instead of a single element. All of these work within a single variable font, allowing users to produce their custom variations and animations easily. 3 |

4 |

5 | The fonts supports Arabic, Armenian, Cyrillic, Greek, Hebrew, and Latin. Arabic, Armenian, and Hebrew were developed with consultants Borna Izadpanah, Khajag Apelian, and Meir Sadan, respectively. Selected symbols representing wildlife and domestic animals are included together with various seasonal symbols and patterns. 6 |

-------------------------------------------------------------------------------- /OFL.txt: -------------------------------------------------------------------------------- 1 | Copyright 2018 The Handjet Project Authors (https://github.com/rosettatype/Handjet/) 2 | 3 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 4 | This license is copied below, and is also available with a FAQ at: 5 | https://scripts.sil.org/OFL 6 | 7 | 8 | ----------------------------------------------------------- 9 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 10 | ----------------------------------------------------------- 11 | 12 | PREAMBLE 13 | The goals of the Open Font License (OFL) are to stimulate worldwide 14 | development of collaborative font projects, to support the font creation 15 | efforts of academic and linguistic communities, and to provide a free and 16 | open framework in which fonts may be shared and improved in partnership 17 | with others. 18 | 19 | The OFL allows the licensed fonts to be used, studied, modified and 20 | redistributed freely as long as they are not sold by themselves. The 21 | fonts, including any derivative works, can be bundled, embedded, 22 | redistributed and/or sold with any software provided that any reserved 23 | names are not used by derivative works. The fonts and derivatives, 24 | however, cannot be released under any other type of license. The 25 | requirement for fonts to remain under this license does not apply 26 | to any document created using the fonts or their derivatives. 27 | 28 | DEFINITIONS 29 | "Font Software" refers to the set of files released by the Copyright 30 | Holder(s) under this license and clearly marked as such. This may 31 | include source files, build scripts and documentation. 32 | 33 | "Reserved Font Name" refers to any names specified as such after the 34 | copyright statement(s). 35 | 36 | "Original Version" refers to the collection of Font Software components as 37 | distributed by the Copyright Holder(s). 38 | 39 | "Modified Version" refers to any derivative made by adding to, deleting, 40 | or substituting -- in part or in whole -- any of the components of the 41 | Original Version, by changing formats or by porting the Font Software to a 42 | new environment. 43 | 44 | "Author" refers to any designer, engineer, programmer, technical 45 | writer or other person who contributed to the Font Software. 46 | 47 | PERMISSION & CONDITIONS 48 | Permission is hereby granted, free of charge, to any person obtaining 49 | a copy of the Font Software, to use, study, copy, merge, embed, modify, 50 | redistribute, and sell modified and unmodified copies of the Font 51 | Software, subject to the following conditions: 52 | 53 | 1) Neither the Font Software nor any of its individual components, 54 | in Original or Modified Versions, may be sold by itself. 55 | 56 | 2) Original or Modified Versions of the Font Software may be bundled, 57 | redistributed and/or sold with any software, provided that each copy 58 | contains the above copyright notice and this license. These can be 59 | included either as stand-alone text files, human-readable headers or 60 | in the appropriate machine-readable metadata fields within text or 61 | binary files as long as those fields can be easily viewed by the user. 62 | 63 | 3) No Modified Version of the Font Software may use the Reserved Font 64 | Name(s) unless explicit written permission is granted by the corresponding 65 | Copyright Holder. This restriction only applies to the primary font name as 66 | presented to the users. 67 | 68 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font 69 | Software shall not be used to promote, endorse or advertise any 70 | Modified Version, except to acknowledge the contribution(s) of the 71 | Copyright Holder(s) and the Author(s) or with their explicit written 72 | permission. 73 | 74 | 5) The Font Software, modified or unmodified, in part or in whole, 75 | must be distributed entirely under this license, and must not be 76 | distributed under any other license. The requirement for fonts to 77 | remain under this license does not apply to any document created 78 | using the Font Software. 79 | 80 | TERMINATION 81 | This license becomes null and void if any of the above conditions are 82 | not met. 83 | 84 | DISCLAIMER 85 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 86 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF 87 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT 88 | OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE 89 | COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 90 | INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL 91 | DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 92 | FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM 93 | OTHER DEALINGS IN THE FONT SOFTWARE. 94 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Handjet 2 | 3 | Handjet is an element-based variable font (aka pixel font, modular font, …) where every glyph is composed using multiple copies of the same element. Each element can take 1 of 23 shapes and transition smoothly between them while creating various effects. The font currently supports these scripts: Arabic, Armenian, Cyrillic, Greek, Hebrew, Latin, and Korean. 4 | 5 | ![Handjet’s ELSH axis animation](docs/animations/Handjet-ELSH-animation_word.gif?raw=true) 6 | ![Handjet’s ELSH axis animation](docs/animations/Handjet-ELSH-animation_element.gif?raw=true) 7 | ![Handjet’s ELSH axis animation](docs/animations/Handjet-ELSH-animation_letter.gif?raw=true) 8 | ![Handjet’s wght axis animation](docs/animations/Handjet-wght-animation.gif?raw=true) 9 | ![Handjet’s ELGR axis animation](docs/animations/Handjet-ELGR-animation.gif?raw=true) 10 | 11 | ## The story 12 | 13 | In autumn 2018, I had the opportunity to teach type design to a group of talented graphic design students at the [Faculty of Fine Arts in Brno](https://www.favu.vut.cz/en/studios/graphic-design2). Their first exercise was to build a simple element-based font that would be tailored to work well with [handjet printers](https://duckduckgo.com/?q=handjet+printer&ia=images). The handjet’s 32-pixel vertical matrix defined the constraints, the only contour to draw was the shape of the element, and the rest of the design job was “only” a matter of placing the elements on the grid to form letters. The clocks were ticking and the students were fierce. Most of them had their font with basic English and Czech alphabets done by the end of the day! 14 | 15 | Upon realizing the task could be taken even further, I set out to design my own font. I did not leave the house that weekend and ended up with a complete pan-European Latin. A couple of days later I had Greek and Cyrillic too. It was hard to stop. And once I started interpolating the element shapes, it got out of control completely. 16 | 17 | In its current version, the Handjet type system contains 23 elemental shapes. Smooth transitions between them create various effects: a triangle appears out of thin air and expands into a square, the square rotates to create a lozenge and then scales into a thin rectangle, a rounded square smoothly turns into a circle and the circle into an oval, a clover becomes a rotating star, and a spindle, and a heart. The size of elements can be changed as well, producing different font weights. Plus, one can choose to use groups of 2x2 smaller elements instead of a single element. All of these components work together within a single variable font, allowing users to produce their custom variations and animations easily. 18 | 19 | In 2019, Google sponsored the extension and open-sourcing of Handjet. All variations and element shapes have been thoroughly revisited and extended. Working with consultants Borna Izadpanah, Khajag Apelian, and Meir Sadan, I have also added support for Arabic, Armenian, and Hebrew (respectively). Selected symbols representing wild and domestic animals were included together with various seasonal symbols and patterns. I hope you will have as much fun using them as I had designing them. 20 | 21 | In 2023, Park Ha-neul (박하늘) and Lee-su Yoo (유이수) have included support for the Korean script. 22 | 23 | — David Březina, November 2023 24 | 25 | P.S. If you want to do this exercise with your students, have a look at this [Glyphs tutorial](https://glyphsapp.com/tutorials/pixelfont). 26 | 27 | P.P.S. To be perfectly clear, I went way beyond what a handjet's grids permit, so only some of the fonts are suited to use with these printers. 28 | 29 | *WARNING: We have found that InDesign 2023 (18+) and Illustrator 2023 (27+) have issues displaying Handjet. You can solve this issue by either upgrading to the latest 2024 versions (19.2 and 28.3 respectively) or by downgrading to older versions. The font may show unwanted visual artifacts in small sizes in Safari/Webkit due to the specifics of the default rendering setup. Change the default anti-aliasing setting in your CSS to eliminate them: `-webkit-font-smoothing: antialiased` (for example).* 30 | 31 | ![Handjet preview](docs/previews/Handjet-preview.svg?raw=true) 32 | 33 | ## Variable font 34 | 35 | Handjet is a variable font with the following axes: 36 | 37 | - **Weight (wght)** (100-900) controls the size of the element, 38 | - **Element Shape (ELSH)** (0.0-16.0) controls the shape of the element, 39 | - **Element Grid (ELGR)** (1.0-2.0) controls how many elements are used per one grid unit. 40 | 41 | ### Weight (wght) 42 | 43 | The weight is represented by the size of the element used. 44 | 45 | | Value | Description | Instance | 46 | |---:|:---|:---| 47 | | 100 | Thin | * | 48 | | 200 | ExtraLight | * | 49 | | 300 | Light | * | 50 | | 400 | Regular | * | 51 | | 500 | Medium | * | 52 | | 600 | SemiBold | * | 53 | | 700 | Bold | * | 54 | | 800 | ExtraBold | * | 55 | | 900 | Black | * | 56 | 57 | ### Element Shape axis (ELSH) 58 | 59 | The interpolation between different element shapes along this axis creates a rotation or disappearing effect for some of them. This was done (instead of having independent rotation and scale axes for example) to simplify the design space, and to keep things manageable for users as well as computers. For a preview of the available element shapes and their transitions, see the animations above. 60 | 61 | | Value | Description | Instance | 62 | |---:|:---|:---| 63 | | 0.00 | Blank | * | 64 | | 1.00 | Triangle | * | 65 | | 2.00 | Square (default) | * | 66 | | 2.11 | Square at 20 degrees | - | 67 | | 2.25 | Lozenge | * | 68 | | 2.36 | Square at 65 degrees | - | 69 | | 2.50 | Square (transitional master) | x | 70 | | 3.19 | Block | * | 71 | | 3.36 | Rectangle | * | 72 | | 4.00 | Bar (Vertical) | * | 73 | | 4.11 | Bar at 20 degrees | - | 74 | | 4.25 | Bar (Diagonal Up) | * | 75 | | 4.36 | Bar at 65 degrees | - | 76 | | 4.50 | Bar (Horizontal) | * | 77 | | 4.61 | Bar at 110 degrees | - | 78 | | 4.75 | Bar (Diagonal Down) | * | 79 | | 4.86 | Bar at 155 degrees | - | 80 | | 5.00 | Bar at 180 degrees | - | 81 | | 6.50 | Square (transitional master) | x | 82 | | 6.90 | Rounded Square | * | 83 | | 7.63 | Squircle | * | 84 | | 8.00 | Circle | * | 85 | | 8.69 | Egg | * | 86 | | 8.86 | Oval | * | 87 | | 9.50 | Thinner Oval | * | 88 | | 11.00 | Circle (transitional master) | x | 89 | | 12.00 | Clover | * | 90 | | 13.00 | Flower | * | 91 | | 14.00 | Star | * | 92 | | 14.11 | Star at 20 degrees | - | 93 | | 14.25 | Diagonal Star | * | 94 | | 14.36 | Star at 65 degrees | - | 95 | | 14.50 | Star at 90 degrees | - | 96 | | 14.75 | Big Star | * | 97 | | 15.00 | Spindle | * | 98 | | 15.37 | Pin | * | 99 | | 16.00 | Heart | * | 100 | 101 | Rows marked with `*` are available as instances in the STAT table. 102 | Rows marked with `x` are repeated shapes that allow for a better transition. 103 | Rows marked with `-` are for example only. 104 | 105 | ### Element Grid axis (ELGR) 106 | 107 | This axis controls how many elements are used per one grid unit. 108 | 109 | | Value | Description | Instance | 110 | |---:|:---|:---| 111 | | 1.00 | Single element (single) | * | 112 | | 2.00 | Group of 2x2 elements (double) | * | 113 | 114 | ## Source files 115 | 116 | In principle, all glyphs remain structurally the same across all masters except for one special glyph, `pixel`, which represents the element shape and is different for each master. 117 | 118 | The `pixel` glyph is compiled from all non-exporting `pixel.xxx` glyphs and is the only component that changes between the masters of this variable font. You can recompile the `pixel` glyph by using the `production/glyphs-scripts/compile pixel glyph.py` macro in the Glyphs app. 119 | 120 | ## Building a the Variable Font from the sources 121 | 122 | - In your Python 3 environment, make sure to install the required pip packages: `$ pip install -r requirements.txt` 123 | - Make sure you make the `production/build.sh` file executable: `$ chmod +x production/build.sh` 124 | - To recompile, run `$ ./production/build.sh` and new fonts will be generated in the `fonts/` directory (it's a complex file and takes a while to recompile) 125 | 126 | ## Scripting 127 | 128 | If you would like to animate Handjet using Python and [DrawBot](http://drawbot.com), you can check out the [source code for the animations](tools/drawbot-scripts/). 129 | -------------------------------------------------------------------------------- /docs/Armenian-comments-by-Khajag-Apelian_20200207.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/Armenian-comments-by-Khajag-Apelian_20200207.png -------------------------------------------------------------------------------- /docs/Armenian-comments-by-Khajag-Apelian_20200213.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/Armenian-comments-by-Khajag-Apelian_20200213.pdf -------------------------------------------------------------------------------- /docs/Cyrillic-review-by-Maria-Doreuli.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/Cyrillic-review-by-Maria-Doreuli.pdf -------------------------------------------------------------------------------- /docs/HandjetGX-GlyphsApp-export.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/HandjetGX-GlyphsApp-export.ttf -------------------------------------------------------------------------------- /docs/Hebrew-review-by-Meir-Sadan_20200223.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/Hebrew-review-by-Meir-Sadan_20200223.pdf -------------------------------------------------------------------------------- /docs/Hebrew-review-by-Meir-Sadan_20200314.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/Hebrew-review-by-Meir-Sadan_20200314.pdf -------------------------------------------------------------------------------- /docs/Hebrew-review-by-Meir-Sadan_20200323.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/Hebrew-review-by-Meir-Sadan_20200323.pdf -------------------------------------------------------------------------------- /docs/Hebrew-review-by-Meir-Sadan_20200329.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/Hebrew-review-by-Meir-Sadan_20200329.pdf -------------------------------------------------------------------------------- /docs/Hebrew-review-by-Meir-Sadan_20200403.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/Hebrew-review-by-Meir-Sadan_20200403.pdf -------------------------------------------------------------------------------- /docs/animations/Handjet-ELGR-animation.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/animations/Handjet-ELGR-animation.gif -------------------------------------------------------------------------------- /docs/animations/Handjet-ELSH-animation_element.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/animations/Handjet-ELSH-animation_element.gif -------------------------------------------------------------------------------- /docs/animations/Handjet-ELSH-animation_letter.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/animations/Handjet-ELSH-animation_letter.gif -------------------------------------------------------------------------------- /docs/animations/Handjet-ELSH-animation_word.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/animations/Handjet-ELSH-animation_word.gif -------------------------------------------------------------------------------- /docs/animations/Handjet-flythrough.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/animations/Handjet-flythrough.gif -------------------------------------------------------------------------------- /docs/animations/Handjet-wght-animation.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/animations/Handjet-wght-animation.gif -------------------------------------------------------------------------------- /docs/charsets/gf-charset-rosetta-names.txt: -------------------------------------------------------------------------------- 1 | .notdef 2 | NULL 3 | CR 4 | space 5 | nbspace 6 | enspace 7 | emspace 8 | thinspace 9 | thinnbspace 10 | A 11 | B 12 | C 13 | D 14 | E 15 | F 16 | G 17 | H 18 | I 19 | J 20 | K 21 | L 22 | M 23 | N 24 | O 25 | P 26 | Q 27 | R 28 | S 29 | T 30 | U 31 | V 32 | W 33 | X 34 | Y 35 | Z 36 | a 37 | b 38 | c 39 | d 40 | e 41 | f 42 | g 43 | h 44 | i 45 | j 46 | k 47 | l 48 | m 49 | n 50 | o 51 | p 52 | q 53 | r 54 | s 55 | t 56 | u 57 | v 58 | w 59 | x 60 | y 61 | z 62 | quotesingle 63 | quotedbl 64 | numbersign 65 | ampersand 66 | asterisk 67 | comma 68 | hyphen 69 | hyphentwo 70 | softhyphen 71 | nonbreakinghyphen 72 | period 73 | colon 74 | semicolon 75 | question 76 | reversedcomma 77 | reversedsemicolon 78 | exclam 79 | questiondown 80 | questiondown.case 81 | exclamdown 82 | exclamdown.case 83 | at 84 | at.case 85 | parenleft 86 | parenright 87 | bracketleft 88 | bracketright 89 | braceleft 90 | braceright 91 | angledbracketleft 92 | angledbracketright 93 | leftFacingEternity 94 | rightFacingEternity 95 | backslash 96 | slash 97 | brokenbar 98 | bar 99 | asciicircum 100 | underscore 101 | asciitilde 102 | section 103 | copyright 104 | registered 105 | trademark 106 | ordfeminine 107 | ordmasculine 108 | guilsinglleft 109 | guilsinglright 110 | guillemetleft 111 | guillemetright 112 | quoteleft 113 | quoteright 114 | quotesinglbase 115 | quotedblleft 116 | quotedblright 117 | quotedblbase 118 | dagger 119 | daggerdbl 120 | ellipsis 121 | paragraph 122 | periodcentered 123 | endash 124 | emdash 125 | hyphen.case 126 | colon.case 127 | endash.case 128 | emdash.case 129 | guilsinglleft.case 130 | guilsinglright.case 131 | guillemetleft.case 132 | guillemetright.case 133 | circumflex 134 | caron 135 | macron 136 | firsttonechinese 137 | secondtonechinese 138 | fourthtonechinese 139 | breve 140 | dieresis 141 | acute 142 | grave 143 | cedilla 144 | dotaccent 145 | ring 146 | ogonek 147 | tilde 148 | hungarumlaut 149 | dblgrave 150 | circumflexcomb 151 | circumflexcomb.case 152 | caroncomb 153 | caroncomb.case 154 | caroncomb.calt 155 | macroncomb 156 | macronbelowcomb 157 | brevecomb 158 | brevecomb.case 159 | brevebelowcomb 160 | brevebelowcomb.case 161 | dieresiscomb 162 | dieresisbelow 163 | acutecomb 164 | acutecomb.case 165 | gravecomb 166 | gravecomb.case 167 | cedillacomb 168 | dotaccentcomb 169 | ringcomb 170 | ogonekcomb 171 | tildecomb 172 | hungarumlautcomb 173 | dblgravecomb 174 | commaaccentcomb 175 | commaturnedabovecomb 176 | commaabovecomb 177 | apostrophemodifier 178 | dotbelowcomb 179 | hookabovecomb 180 | horncomb 181 | barcomb 182 | brevecomb_acutecomb 183 | brevecomb_acutecomb.case 184 | brevecomb_gravecomb 185 | brevecomb_gravecomb.case 186 | brevecomb_hookabovecomb 187 | brevecomb_hookabovecomb.case 188 | brevecomb_tildecomb 189 | brevecomb_tildecomb.case 190 | breveinvertedcomb 191 | breveinvertedcomb.case 192 | circumflexcomb_acutecomb 193 | circumflexcomb_tildecomb.case 194 | circumflexcomb_gravecomb 195 | circumflexcomb_gravecomb.case 196 | circumflexcomb_hookabovecomb 197 | circumflexcomb_hookabovecomb.case 198 | circumflexcomb_tildecomb 199 | circumflexcomb_acutecomb.case 200 | tildecomb.narrow 201 | primemod 202 | dblprimemod 203 | Agrave 204 | Aacute 205 | Acircumflex 206 | Atilde 207 | Amacron 208 | Abreve 209 | Adieresis 210 | Aring 211 | Aogonek 212 | Aringacute 213 | Abreveacute 214 | Abrevedotbelow 215 | Abrevegrave 216 | Abrevehookabove 217 | Abrevetilde 218 | Acircumflexacute 219 | Acircumflexdotbelow 220 | Acircumflexgrave 221 | Acircumflexhookabove 222 | Acircumflextilde 223 | Ahookabove 224 | Adotbelow 225 | AE 226 | AEacute 227 | Cacute 228 | Ccircumflex 229 | Cdotaccent 230 | Ccaron 231 | Ccedilla 232 | Dcaron 233 | Dcroat 234 | Eth 235 | Egrave 236 | Eacute 237 | Ecircumflex 238 | Emacron 239 | Ebreve 240 | Edotaccent 241 | Edieresis 242 | Ecaron 243 | Eogonek 244 | Ecircumflexacute 245 | Ecircumflexdotbelow 246 | Ecircumflexgrave 247 | Ecircumflexhookabove 248 | Ecircumflextilde 249 | Ehookabove 250 | Etilde 251 | Edotbelow 252 | Gcircumflex 253 | Gbreve 254 | Gdotaccent 255 | Gcommaaccent 256 | Hcircumflex 257 | Hbar 258 | Igrave 259 | Iacute 260 | Icircumflex 261 | Itilde 262 | Imacron 263 | Ibreve 264 | Idotaccent 265 | Idieresis 266 | Iogonek 267 | Ihookabove 268 | Idotbelow 269 | IJ 270 | Iacute_J.NLD 271 | Jacute 272 | Jcircumflex 273 | Kcommaaccent 274 | Lacute 275 | Lcommaaccent 276 | Lcaron 277 | Ldot 278 | Lslash 279 | Nacute 280 | Ntilde 281 | Ncaron 282 | Eng 283 | Ncommaaccent 284 | Ograve 285 | Oacute 286 | Ocircumflex 287 | Otilde 288 | Omacron 289 | Obreve 290 | Odieresis 291 | Ohungarumlaut 292 | Oslash 293 | Oslashacute 294 | Ocircumflexacute 295 | Ocircumflexdotbelow 296 | Ocircumflexgrave 297 | Ocircumflexhookabove 298 | Ocircumflextilde 299 | Ohookabove 300 | Ohorn 301 | Ohornacute 302 | Ohorndotbelow 303 | Ohorngrave 304 | Ohornhookabove 305 | Ohorntilde 306 | Odotbelow 307 | OE 308 | Racute 309 | Rcaron 310 | Rcommaaccent 311 | Sacute 312 | Scircumflex 313 | Scaron 314 | Scommaaccent 315 | Scedilla 316 | Germandbls 317 | Tcaron 318 | Tcommaaccent 319 | Tcedilla 320 | Tbar 321 | Ugrave 322 | Uacute 323 | Ucircumflex 324 | Utilde 325 | Umacron 326 | Ubreve 327 | Udieresis 328 | Uring 329 | Uhungarumlaut 330 | Uogonek 331 | Uhookabove 332 | Uhorn 333 | Uhornacute 334 | Uhorndotbelow 335 | Uhorngrave 336 | Uhornhookabove 337 | Uhorntilde 338 | Udotbelow 339 | Wgrave 340 | Wacute 341 | Wcircumflex 342 | Wdieresis 343 | Ygrave 344 | Yacute 345 | Ycircumflex 346 | Ydieresis 347 | Yhookabove 348 | Ydotbelow 349 | Ytilde 350 | Zacute 351 | Zdotaccent 352 | Zcaron 353 | Thorn 354 | Schwa 355 | Abreveinverted 356 | Adblgrave 357 | Ebreveinverted 358 | Edblgrave 359 | Gcaron 360 | Ibreveinverted 361 | Idblgrave 362 | Obreveinverted 363 | Odblgrave 364 | Odieresismacron 365 | Odotaccentmacron 366 | Oogonek 367 | Otildemacron 368 | Rbreveinverted 369 | Rdblgrave 370 | Ubreveinverted 371 | Udblgrave 372 | Ymacron 373 | agrave 374 | aacute 375 | acircumflex 376 | atilde 377 | amacron 378 | abreve 379 | adieresis 380 | aring 381 | aogonek 382 | aringacute 383 | abreveacute 384 | abrevedotbelow 385 | abrevegrave 386 | abrevehookabove 387 | abrevetilde 388 | acircumflexacute 389 | acircumflexdotbelow 390 | acircumflexgrave 391 | acircumflexhookabove 392 | acircumflextilde 393 | ahookabove 394 | adotbelow 395 | ae 396 | aeacute 397 | cacute 398 | ccircumflex 399 | cdotaccent 400 | ccaron 401 | ccedilla 402 | dcaron 403 | dcroat 404 | eth 405 | egrave 406 | eacute 407 | ecircumflex 408 | emacron 409 | ebreve 410 | edotaccent 411 | edieresis 412 | ecaron 413 | eogonek 414 | ecircumflexacute 415 | ecircumflexdotbelow 416 | ecircumflexgrave 417 | ecircumflexhookabove 418 | ecircumflextilde 419 | ehookabove 420 | etilde 421 | edotbelow 422 | gcircumflex 423 | gbreve 424 | gdotaccent 425 | gcommaaccent 426 | hcircumflex 427 | hbar 428 | igrave 429 | iacute 430 | icircumflex 431 | itilde 432 | imacron 433 | ibreve 434 | idotless 435 | idotaccent 436 | idieresis 437 | iogonek 438 | ihookabove 439 | idotbelow 440 | ij 441 | iacute_j.NLD 442 | jacute 443 | jcircumflex 444 | jdotless 445 | kcommaaccent 446 | kgreenlandic 447 | lacute 448 | lcommaaccent 449 | lcaron 450 | ldot 451 | lslash 452 | nacute 453 | ntilde 454 | ncaron 455 | eng 456 | ncommaaccent 457 | napostrophe 458 | ograve 459 | oacute 460 | ocircumflex 461 | otilde 462 | omacron 463 | obreve 464 | odieresis 465 | ohungarumlaut 466 | oslash 467 | oslashacute 468 | ocircumflexacute 469 | ocircumflexdotbelow 470 | ocircumflexgrave 471 | ocircumflexhookabove 472 | ocircumflextilde 473 | ohookabove 474 | ohorn 475 | ohornacute 476 | ohorndotbelow 477 | ohorngrave 478 | ohornhookabove 479 | ohorntilde 480 | odotbelow 481 | oe 482 | racute 483 | rcaron 484 | rcommaaccent 485 | sacute 486 | scircumflex 487 | scaron 488 | scommaaccent 489 | scedilla 490 | germandbls 491 | tcaron 492 | tcommaaccent 493 | tcedilla 494 | tbar 495 | ugrave 496 | uacute 497 | ucircumflex 498 | utilde 499 | umacron 500 | ubreve 501 | udieresis 502 | uring 503 | uhungarumlaut 504 | uogonek 505 | uhookabove 506 | uhorn 507 | uhornacute 508 | uhorndotbelow 509 | uhorngrave 510 | uhornhookabove 511 | uhorntilde 512 | udotbelow 513 | wgrave 514 | wacute 515 | wcircumflex 516 | wdieresis 517 | ygrave 518 | yacute 519 | ycircumflex 520 | ydieresis 521 | yhookabove 522 | ytilde 523 | ydotbelow 524 | zacute 525 | zdotaccent 526 | zcaron 527 | thorn 528 | schwa 529 | abreveinverted 530 | adblgrave 531 | ebreveinverted 532 | edblgrave 533 | gcaron 534 | ibreveinverted 535 | idblgrave 536 | obreveinverted 537 | odblgrave 538 | odieresismacron 539 | odotaccentmacron 540 | oogonek 541 | otildemacron 542 | rbreveinverted 543 | rdblgrave 544 | ubreveinverted 545 | udblgrave 546 | ymacron 547 | idieresis_idieresis 548 | zero 549 | one 550 | two 551 | three 552 | four 553 | five 554 | six 555 | seven 556 | eight 557 | nine 558 | dollar 559 | euro 560 | cent 561 | sterling 562 | yen 563 | dong 564 | liraTurkish 565 | ruble 566 | rupeeIndian 567 | cedi 568 | colonsign 569 | dram 570 | florin 571 | franc 572 | guarani 573 | lira 574 | manat 575 | naira 576 | peseta 577 | peso 578 | sheqel 579 | tenge 580 | tugrikkip 581 | won 582 | currency 583 | commercialMinusSign 584 | degree 585 | minute 586 | second 587 | percent 588 | perthousand 589 | fraction 590 | divisionslash 591 | plus 592 | minus 593 | plusminus 594 | divide 595 | multiply 596 | equal 597 | approxequal 598 | notequal 599 | less 600 | greater 601 | lessequal 602 | greaterequal 603 | logicalnot 604 | bulletoperator 605 | dotoperator 606 | bulletoperator.case 607 | ohm 608 | product 609 | summation 610 | increment 611 | micro 612 | radical 613 | infinity 614 | integral 615 | partialdiff 616 | lozenge 617 | estimated 618 | literSign 619 | bullet 620 | zerosuperior 621 | onesuperior 622 | twosuperior 623 | threesuperior 624 | foursuperior 625 | fivesuperior 626 | sixsuperior 627 | sevensuperior 628 | eightsuperior 629 | ninesuperior 630 | zeroinferior 631 | oneinferior 632 | twoinferior 633 | threeinferior 634 | fourinferior 635 | fiveinferior 636 | sixinferior 637 | seveninferior 638 | eightinferior 639 | nineinferior 640 | onehalf 641 | onethird 642 | twothirds 643 | onequarter 644 | threequarters 645 | onefifth 646 | twofifths 647 | threefifths 648 | fourfifths 649 | onesixth 650 | fivesixths 651 | oneseventh 652 | twosevenths 653 | threesevenths 654 | foursevenths 655 | fivesevenths 656 | sixsevenths 657 | oneeighth 658 | threeeighths 659 | fiveeighths 660 | seveneighths 661 | oneninth 662 | twoninths 663 | fourninths 664 | fiveninths 665 | sevenninths 666 | eightninths 667 | arrowleft 668 | arrowup 669 | arrowright 670 | arrowdown 671 | idotlessogonek 672 | periodcentered.CAT 673 | periodcentered.CAT.case 674 | DZ 675 | Dz 676 | dz 677 | DZcaron 678 | Dzcaron 679 | dzcaron 680 | LJ 681 | Lj 682 | lj 683 | NJ 684 | Nj 685 | nj 686 | c.A 687 | c.Be 688 | c.Ve 689 | c.Ghe 690 | c.De 691 | c.Ie 692 | c.Zhe 693 | c.Ze 694 | c.I 695 | c.Ishort 696 | c.Ka 697 | c.El 698 | c.Em 699 | c.En 700 | c.O 701 | c.Pe 702 | c.Er 703 | c.Es 704 | c.Te 705 | c.U 706 | c.Ef 707 | c.Ha 708 | c.Tse 709 | c.Che 710 | c.Sha 711 | c.Shcha 712 | c.Hard 713 | c.Yeru 714 | c.Soft 715 | c.E 716 | c.Yu 717 | c.Ya 718 | c.Gje 719 | c.GheUkr 720 | c.Dje 721 | c.IeUkr 722 | c.Dze 723 | c.Iegrave 724 | c.Io 725 | c.IUkr 726 | c.Yi 727 | c.Je 728 | c.Igrave 729 | c.Kje 730 | c.Lje 731 | c.Nje 732 | c.Tshe 733 | c.Ushort 734 | c.Dzhe 735 | c.Yat 736 | c.Fita 737 | c.Izhitsa 738 | c.Ghebar 739 | c.Zhespike 740 | c.Kaspike 741 | c.Enspike 742 | c.Haspike 743 | c.Chespike 744 | c.Ustraight 745 | c.Ustraightbar 746 | c.Shha 747 | c.Palochka 748 | c.Schwa 749 | c.Imacron 750 | c.Obar 751 | c.Umacron 752 | c.Zehook 753 | c.KaBashkir 754 | c.Eshook 755 | c.Abreve 756 | c.Iebreve 757 | c.Udblacute 758 | c.Odieresis 759 | c.AIe 760 | c.Adieresis 761 | c.Chedieresis 762 | c.Chekhakassian 763 | c.Chestroke 764 | c.Enghe 765 | c.Gedescender 766 | c.Ghemiddlehook 767 | c.Idieresis 768 | c.Kastroke 769 | c.Qa 770 | c.Udieresis 771 | c.We 772 | c.Yerudieresis 773 | c.Yusbig 774 | c.Zedieresis 775 | c.Zhebreve 776 | c.Zhedieresis 777 | c.De.BGR 778 | c.El.BGR 779 | c.a 780 | c.be 781 | c.ve 782 | c.ghe 783 | c.de 784 | c.ie 785 | c.zhe 786 | c.ze 787 | c.i 788 | c.ishort 789 | c.ka 790 | c.el 791 | c.em 792 | c.en 793 | c.o 794 | c.pe 795 | c.er 796 | c.es 797 | c.te 798 | c.u 799 | c.ef 800 | c.ha 801 | c.tse 802 | c.che 803 | c.sha 804 | c.shcha 805 | c.hard 806 | c.yeru 807 | c.soft 808 | c.e 809 | c.yu 810 | c.ya 811 | c.gje 812 | c.gheUkr 813 | c.dje 814 | c.ieUkr 815 | c.dze 816 | c.iegrave 817 | c.io 818 | c.iUkr 819 | c.yi 820 | c.je 821 | c.igrave 822 | c.kje 823 | c.lje 824 | c.nje 825 | c.tshe 826 | c.ushort 827 | c.dzhe 828 | c.yat 829 | c.fita 830 | c.izhitsa 831 | c.ghebar 832 | c.zhespike 833 | c.kaspike 834 | c.enspike 835 | c.haspike 836 | c.chespike 837 | c.ustraight 838 | c.ustraightbar 839 | c.shha 840 | c.palochka 841 | c.schwa 842 | c.imacron 843 | c.obar 844 | c.umacron 845 | c.zehook 846 | c.kaBashkir 847 | c.eshook 848 | c.abreve 849 | c.iebreve 850 | c.udblacute 851 | c.odieresis 852 | c.aie 853 | c.adieresis 854 | c.chedieresis 855 | c.chekhakassian 856 | c.chestroke 857 | c.enghe 858 | c.gedescender 859 | c.ghemiddlehook 860 | c.idieresis 861 | c.kastroke 862 | c.qa 863 | c.udieresis 864 | c.we 865 | c.yerudieresis 866 | c.yusbig 867 | c.zedieresis 868 | c.zhebreve 869 | c.zhedieresis 870 | c.be.SRB 871 | c.ve.BGR 872 | c.ghe.BGR 873 | c.de.BGR 874 | c.zhe.BGR 875 | c.ze.BGR 876 | c.i.BGR 877 | c.ishort.BGR 878 | c.igrave.BGR 879 | c.ka.BGR 880 | c.el.BGR 881 | c.pe.BGR 882 | c.te.BGR 883 | c.tse.BGR 884 | c.sha.BGR 885 | c.shcha.BGR 886 | c.yu.BGR 887 | c.hookcomb 888 | numero 889 | hryvnia 890 | Alpha 891 | Beta 892 | Gamma 893 | Delta 894 | Epsilon 895 | Zeta 896 | Eta 897 | Theta 898 | Iota 899 | Kappa 900 | Lambda 901 | Mu 902 | Nu 903 | Xi 904 | Omicron 905 | Pi 906 | Rho 907 | Sigma 908 | Tau 909 | Upsilon 910 | Phi 911 | Chi 912 | Psi 913 | Omega 914 | Alphatonos 915 | Epsilontonos 916 | Etatonos 917 | Iotatonos 918 | Iotadieresis 919 | Omicrontonos 920 | Upsilontonos 921 | Upsilondieresis 922 | Omegatonos 923 | alpha 924 | beta 925 | gamma 926 | delta 927 | epsilon 928 | zeta 929 | eta 930 | theta 931 | iota 932 | kappa 933 | lambda 934 | mu 935 | nu 936 | xi 937 | omicron 938 | pi 939 | rho 940 | sigmafinal 941 | sigma 942 | tau 943 | upsilon 944 | phi 945 | chi 946 | psi 947 | omega 948 | alphatonos 949 | epsilontonos 950 | etatonos 951 | iotatonos 952 | iotadieresis 953 | iotadieresistonos 954 | omicrontonos 955 | upsilontonos 956 | upsilondieresis 957 | upsilondieresistonos 958 | omegatonos 959 | tonos 960 | tonoscomb 961 | tonoscomb.case 962 | dieresistonos 963 | dieresistonoscomb 964 | anoteleia 965 | questionGreek 966 | numbersignGreek 967 | numbersignlowGreek 968 | KaiSymbol 969 | kaiSymbol 970 | a.Ayb 971 | a.Ben 972 | a.Gim 973 | a.Da 974 | a.Ech 975 | a.Za 976 | a.Eh 977 | a.Et 978 | a.To 979 | a.Zhe 980 | a.Ini 981 | a.Liwn 982 | a.Xeh 983 | a.Ca 984 | a.Ken 985 | a.Ho 986 | a.Ja 987 | a.Ghad 988 | a.Cheh 989 | a.Men 990 | a.Yi 991 | a.Now 992 | a.Sha 993 | a.Vo 994 | a.Cha 995 | a.Peh 996 | a.Jheh 997 | a.Ra 998 | a.Seh 999 | a.Vew 1000 | a.Tiwn 1001 | a.Reh 1002 | a.Co 1003 | a.Yiwn 1004 | a.Piwr 1005 | a.Keh 1006 | a.Oh 1007 | a.Feh 1008 | a.ayb 1009 | a.ben 1010 | a.gim 1011 | a.da 1012 | a.ech 1013 | a.za 1014 | a.eh 1015 | a.et 1016 | a.to 1017 | a.zhe 1018 | a.ini 1019 | a.liwn 1020 | a.xeh 1021 | a.ca 1022 | a.ken 1023 | a.ho 1024 | a.ja 1025 | a.ghad 1026 | a.cheh 1027 | a.men 1028 | a.yi 1029 | a.now 1030 | a.sha 1031 | a.vo 1032 | a.cha 1033 | a.peh 1034 | a.jheh 1035 | a.ra 1036 | a.seh 1037 | a.vew 1038 | a.tiwn 1039 | a.reh 1040 | a.co 1041 | a.yiwn 1042 | a.piwr 1043 | a.keh 1044 | a.oh 1045 | a.feh 1046 | a.ech_a.yiwn 1047 | a.men_a.eh 1048 | a.men_a.ken 1049 | a.men_a.ech 1050 | a.men_a.ini 1051 | a.men_a.now 1052 | a.men_a.xeh 1053 | a.emphasis 1054 | a.exclam 1055 | a.comma 1056 | a.question 1057 | a.period 1058 | a.abbreviation 1059 | a.ringhalfleft 1060 | a.hyphen 1061 | a.apostrophe 1062 | arHamza 1063 | arAlifMadda 1064 | arAlifMadda.fina 1065 | arAlifHamza 1066 | arAlifHamza.fina 1067 | arWawHamza 1068 | arWawHamza.fina 1069 | arAlifHamzabelow 1070 | arAlifHamzabelow.fina 1071 | arYehHamza 1072 | arYehHamza.fina 1073 | arYehHamza.init 1074 | arYehHamza.medi 1075 | arAlif 1076 | arAlif.fina 1077 | arBeh 1078 | arBeh.fina 1079 | arBeh.init 1080 | arBeh.medi 1081 | arTehMarbuta 1082 | arTehMarbuta.fina 1083 | arTeh 1084 | arTeh.fina 1085 | arTeh.init 1086 | arTeh.medi 1087 | arTheh 1088 | arTheh.fina 1089 | arTheh.init 1090 | arTheh.medi 1091 | arJim 1092 | arJim.fina 1093 | arJim.init 1094 | arJim.medi 1095 | arHah 1096 | arHah.fina 1097 | arHah.init 1098 | arHah.medi 1099 | arKhah 1100 | arKhah.fina 1101 | arKhah.init 1102 | arKhah.medi 1103 | arDal 1104 | arDal.fina 1105 | arDhal 1106 | arDhal.fina 1107 | arReh 1108 | arReh.fina 1109 | arZeh 1110 | arZeh.fina 1111 | arSin 1112 | arSin.fina 1113 | arSin.init 1114 | arSin.medi 1115 | arShin 1116 | arShin.fina 1117 | arShin.init 1118 | arShin.medi 1119 | arSad 1120 | arSad.fina 1121 | arSad.init 1122 | arSad.medi 1123 | arDad 1124 | arDad.fina 1125 | arDad.init 1126 | arDad.medi 1127 | arTah 1128 | arTah.fina 1129 | arTah.init 1130 | arTah.medi 1131 | arZah 1132 | arZah.fina 1133 | arZah.init 1134 | arZah.medi 1135 | arAyn 1136 | arAyn.fina 1137 | arAyn.init 1138 | arAyn.medi 1139 | arGhayn 1140 | arGhayn.fina 1141 | arGhayn.init 1142 | arGhayn.medi 1143 | arFeh 1144 | arFeh.fina 1145 | arFeh.init 1146 | arFeh.medi 1147 | arQaf 1148 | arQaf.fina 1149 | arQaf.init 1150 | arQaf.medi 1151 | arKaf 1152 | arKaf.fina 1153 | arKaf.init 1154 | arKaf.medi 1155 | arLam 1156 | arLam.fina 1157 | arLam.init 1158 | arLam.medi 1159 | arMim 1160 | arMim.fina 1161 | arMim.init 1162 | arMim.medi 1163 | arNun 1164 | arNun.fina 1165 | arNun.init 1166 | arNun.medi 1167 | arHeh.isol 1168 | arHeh 1169 | arHeh.fina 1170 | arHeh.init 1171 | arHeh.medi 1172 | arWaw 1173 | arWaw.fina 1174 | arAlifMaksura 1175 | arAlifMaksura.fina 1176 | arYeh 1177 | arYeh.fina 1178 | arYeh.init 1179 | arYeh.medi 1180 | arAlifWasla 1181 | arAlifWasla.fina 1182 | arBehdotless 1183 | arBehdotless.fina 1184 | arBehdotless.init 1185 | arBehdotless.medi 1186 | arTteh 1187 | arTteh.fina 1188 | arTteh.init 1189 | arTteh.medi 1190 | arPeh 1191 | arPeh.fina 1192 | arPeh.init 1193 | arPeh.medi 1194 | arTcheh 1195 | arTcheh.fina 1196 | arTcheh.init 1197 | arTcheh.medi 1198 | arDdal 1199 | arDdal.fina 1200 | arRreh 1201 | arRreh.fina 1202 | arJeh 1203 | arJeh.fina 1204 | arFehdotless 1205 | arFehdotless.fina 1206 | arFehdotless.init 1207 | arFehdotless.medi 1208 | arVeh 1209 | arVeh.fina 1210 | arVeh.init 1211 | arVeh.medi 1212 | arQafdotless 1213 | arQafdotless.fina 1214 | arKeheh 1215 | arKeheh.fina 1216 | arKeheh.init 1217 | arKeheh.medi 1218 | arGaf 1219 | arGaf.fina 1220 | arGaf.init 1221 | arGaf.medi 1222 | arNunGhunna 1223 | arNunGhunna.fina 1224 | arHehDoachashmi 1225 | arHehDoachashmi.fina 1226 | arHehDoachashmi.init 1227 | arHehDoachashmi.medi 1228 | arHehGoal 1229 | arHehGoal.fina 1230 | arHehGoal.init 1231 | arHehGoal.medi 1232 | arHehGoalHamzaabove 1233 | arHehGoalHamzaabove.fina 1234 | arHehGoal2habove 1235 | arHehGoal2habove.fina 1236 | arHehHamza 1237 | arHehHamza.fina 1238 | arYehFarsi 1239 | arYehFarsi.fina 1240 | arYehFarsi.init 1241 | arYehFarsi.medi 1242 | arYehBarri 1243 | arYehBarri.fina 1244 | arYehBarriHamzaabove 1245 | arYehBarriHamzaabove.fina 1246 | arLam.init_arAlif.fina 1247 | arLam.medi_arAlif.fina 1248 | arLam.init_arAlifMadda.fina 1249 | arLam.medi_arAlifMadda.fina 1250 | arLam.init_arAlifHamza.fina 1251 | arLam.medi_arAlifHamza.fina 1252 | arLam.init_arAlifHamzabelow.fina 1253 | arLam.medi_arAlifHamzabelow.fina 1254 | arLam.init_arAlifWasla.fina 1255 | arLam.medi_arAlifWasla.fina 1256 | arLam.init_arLam.medi_arHeh.fina 1257 | arBeh_arYehBarri 1258 | arBeh_arYehBarri.fina 1259 | arPeh_arYehBarri 1260 | arPeh_arYehBarri.fina 1261 | arTeh_arYehBarri 1262 | arTeh_arYehBarri.fina 1263 | arTheh_arYehBarri 1264 | arTheh_arYehBarri.fina 1265 | arTteh_arYehBarri 1266 | arTteh_arYehBarri.fina 1267 | arJim_arYehBarri 1268 | arJim_arYehBarri.fina 1269 | arTcheh_arYehBarri 1270 | arTcheh_arYehBarri.fina 1271 | arHah_arYehBarri 1272 | arHah_arYehBarri.fina 1273 | arKhah_arYehBarri 1274 | arKhah_arYehBarri.fina 1275 | arSin_arYehBarri 1276 | arSin_arYehBarri.fina 1277 | arShin_arYehBarri 1278 | arShin_arYehBarri.fina 1279 | arSad_arYehBarri 1280 | arSad_arYehBarri.fina 1281 | arDad_arYehBarri 1282 | arDad_arYehBarri.fina 1283 | arTah_arYehBarri 1284 | arTah_arYehBarri.fina 1285 | arZah_arYehBarri 1286 | arZah_arYehBarri.fina 1287 | arAyn_arYehBarri 1288 | arAyn_arYehBarri.fina 1289 | arGhayn_arYehBarri 1290 | arGhayn_arYehBarri.fina 1291 | arFeh_arYehBarri 1292 | arFeh_arYehBarri.fina 1293 | arQaf_arYehBarri 1294 | arQaf_arYehBarri.fina 1295 | arKaf_arYehBarri 1296 | arKaf_arYehBarri.fina 1297 | arKeheh_arYehBarri 1298 | arKeheh_arYehBarri.fina 1299 | arGaf_arYehBarri 1300 | arGaf_arYehBarri.fina 1301 | arLam_arYehBarri 1302 | arLam_arYehBarri.fina 1303 | arMim_arYehBarri 1304 | arMim_arYehBarri.fina 1305 | arNun_arYehBarri 1306 | arNun_arYehBarri.fina 1307 | arHehGoal_arYehBarri 1308 | arHehDoachashmi_arYehBarri 1309 | arHehDoachashmi_arYehBarri.fina 1310 | arYeh_arYehBarri 1311 | arYeh_arYehBarri.fina 1312 | arYehHamza_arYehBarri 1313 | arYehHamza_arYehBarri.fina 1314 | arYehFarsi_arYehBarri 1315 | arYehFarsi_arYehBarri.fina 1316 | arAllah 1317 | arAllah.liga 1318 | arRial 1319 | arKashida 1320 | arAlifabove 1321 | arAlifbelow 1322 | arHamzaabove 1323 | arHamzabelow 1324 | arDamma 1325 | arDammatan 1326 | arFatha 1327 | arFathatan 1328 | arKasra 1329 | arKasratan 1330 | arMadda 1331 | arShadda 1332 | arSukun 1333 | arWasla 1334 | arNasalnun 1335 | arTahabove 1336 | arHamzaabove_arDamma 1337 | arHamzaabove_arDammatan 1338 | arHamzaabove_arFatha 1339 | arHamzaabove_arFathatan 1340 | arHamzabelow_arKasra 1341 | arHamzabelow_arKasratan 1342 | arHamzaabove_arSukun 1343 | arShadda_arDamma 1344 | arShadda_arDammatan 1345 | arShadda_arFatha 1346 | arShadda_arFathatan 1347 | arShadda_arKasra 1348 | arShadda_arKasratan 1349 | arShadda_arAlifabove 1350 | arZero 1351 | arOne 1352 | arTwo 1353 | arThree 1354 | arFour 1355 | arFive 1356 | arSix 1357 | arSeven 1358 | arEight 1359 | arNine 1360 | arZeroFarsi 1361 | arOneFarsi 1362 | arTwoFarsi 1363 | arThreeFarsi 1364 | arFourFarsi 1365 | arFiveFarsi 1366 | arSixFarsi 1367 | arSevenFarsi 1368 | arEightFarsi 1369 | arNineFarsi 1370 | arFourFarsi.URD 1371 | arSevenFarsi.URD 1372 | period.arab 1373 | arComma 1374 | arSemicolon 1375 | arPeriodUrdu 1376 | arDecimal 1377 | arThousands 1378 | arPercent 1379 | arQuestion 1380 | guillemetleft.arab 1381 | guillemetright.arab 1382 | guilsinglleft.arab 1383 | guilsinglright.arab 1384 | arStar 1385 | parenleft.arab 1386 | parenright.arab 1387 | arParenleftfancy 1388 | arParenrightfancy 1389 | arDotabove 1390 | arTwodotshorizontalabove 1391 | arThreedotsupabove 1392 | arDotbelow 1393 | arTwodotshorizontalbelow 1394 | arThreedotsdownbelow 1395 | arDotcenter 1396 | _part.link 1397 | _part.markGaf 1398 | hbAlef 1399 | hbBet 1400 | hbGimel 1401 | hbDalet 1402 | hbHe 1403 | hbVav 1404 | hbZayin 1405 | hbHet 1406 | hbTet 1407 | hbYod 1408 | hbKaf 1409 | hbKafFinal 1410 | hbLamed 1411 | hbMemFinal 1412 | hbMem 1413 | hbNunFinal 1414 | hbNun 1415 | hbSamekh 1416 | hbAyin 1417 | hbPe 1418 | hbPeFinal 1419 | hbTsadi 1420 | hbTsadiFinal 1421 | hbQof 1422 | hbResh 1423 | hbShin 1424 | hbTav 1425 | hbAlef_hbPatah 1426 | hbAlef_hbQamats 1427 | hbAlef_hbDagesh 1428 | hbBet_hbDagesh 1429 | hbBet_hbRafe 1430 | hbGimel_hbDagesh 1431 | hbDalet_hbDagesh 1432 | hbHe_hbDagesh 1433 | hbVav_hbHolam 1434 | hbVav_hbDagesh 1435 | hbZayin_hbDagesh 1436 | hbTet_hbDagesh 1437 | hbYod_hbHiriq 1438 | hbYod_hbDagesh 1439 | hbKaf_hbDagesh 1440 | hbKaf_hbRafe 1441 | hbKafFinal_hbDagesh 1442 | hbLamed_hbDagesh 1443 | hbMem_hbDagesh 1444 | hbNun_hbDagesh 1445 | hbSamekh_hbDagesh 1446 | hbPe_hbDagesh 1447 | hbPe_hbRafe 1448 | hbPeFinal_hbDagesh 1449 | hbTsadi_hbDagesh 1450 | hbQof_hbDagesh 1451 | hbResh_hbDagesh 1452 | hbShin_hbDagesh 1453 | hbShin_hbShindot 1454 | hbShin_hbSindot 1455 | hbShin_hbDagesh_hbShindot 1456 | hbShin_hbDagesh_hbSindot 1457 | hbTav_hbDagesh 1458 | hbSheva 1459 | hbHataf_hbSegol 1460 | hbHataf_hbPatah 1461 | hbHataf_hbQamats 1462 | hbHiriq 1463 | hbTsere 1464 | hbSegol 1465 | hbPatah 1466 | hbQamats 1467 | hbQamatsQatan 1468 | hbHolam 1469 | hbHolamHaser 1470 | hbQubuts 1471 | hbDagesh 1472 | hbRafe 1473 | hbShindot 1474 | hbSindot 1475 | hbVav_hbVav 1476 | hbVav_hbYod 1477 | hbYod_hbYod 1478 | hbYod_hbYod_hbPatah 1479 | hbPeFinal.calt 1480 | hbPe.calt 1481 | hbPaseq 1482 | hbGeresh 1483 | hbGershayim 1484 | hbMaqaf 1485 | hbSofPasuq 1486 | zerowidthnonjoiner 1487 | zerowidthjoiner 1488 | lefttorightmark 1489 | righttoleftmark 1490 | lefttorightembedding 1491 | righttoleftembedding 1492 | popdirectionalformatting 1493 | lefttorightoverride 1494 | righttoleftoverride 1495 | dottedCircle 1496 | heartsuitblack 1497 | spadesuitblack 1498 | clubsuitblack 1499 | diamondsuitblack 1500 | heavyBlackHeart 1501 | lozenge.pica 1502 | cat 1503 | cat.tall 1504 | cat.taller 1505 | cat.black 1506 | cat.black.tall 1507 | cat.black.taller 1508 | cat.right 1509 | cat.tall.right 1510 | cat.taller.right 1511 | cat.black.right 1512 | cat.black.tall.right 1513 | cat.black.taller.right 1514 | dog 1515 | dog.head 1516 | dog.body 1517 | dog.butt 1518 | dog.black 1519 | dog.black.head 1520 | dog.black.body 1521 | dog.black.butt 1522 | dog.right 1523 | dog.butt.right 1524 | dog.body.right 1525 | dog.head.right 1526 | dog.black.right 1527 | dog.black.butt.right 1528 | dog.black.body.right 1529 | dog.black.head.right 1530 | owl 1531 | owl.flying 1532 | owl.black 1533 | owl.black.flying 1534 | deer 1535 | deer.tall 1536 | deer.taller 1537 | deer.right 1538 | deer.tall.right 1539 | deer.taller.right 1540 | reindeer 1541 | reindeer.right 1542 | rabbit 1543 | rabbit.right 1544 | wolf 1545 | wolf.right 1546 | fox 1547 | fox.right 1548 | star 1549 | star.1 1550 | star.2 1551 | star.3 1552 | snowflake 1553 | snowflake.1 1554 | snowflake.2 1555 | snowflake.3 1556 | snowflake.4 1557 | tree 1558 | tree.1 1559 | tree.2 1560 | tree.3 1561 | tree.4 1562 | snowman 1563 | snowman.1 1564 | present 1565 | present.1 1566 | present.2 1567 | present.3 1568 | present.4 1569 | pattern 1570 | pattern.1 1571 | pattern.2 1572 | pattern.3 1573 | pattern.4 1574 | pattern.5 1575 | pattern.6 1576 | pattern.7 1577 | pattern.8 1578 | pattern.9 1579 | patternbg 1580 | patternbg.1 1581 | patternbg.2 1582 | _shape 1583 | _grid -------------------------------------------------------------------------------- /docs/charsets/make-gf-charset.py: -------------------------------------------------------------------------------- 1 | """ 2 | A helper script that will cross-check Rosetta’s glyphsDB with all .nam files in 3 | a folder and output a list of Rosetta names (and highlight glyphs missing from 4 | glyphsDB) 5 | """ 6 | import pickle 7 | import os 8 | from glyphsdb.glyphsdb import GlyphsDB 9 | from glyphsdb.util.parser import parse_glyphs_from_nam 10 | 11 | # For convenience, save the DB locally so we don't need to recompile every run 12 | db_file = "db.pkl" 13 | if not os.path.isfile(db_file): 14 | print("Writing cached db file to %s" % db_file) 15 | db = GlyphsDB() 16 | db.load_folder() 17 | pickle.dump(db, open(db_file, "wb")) 18 | else: 19 | print("Loading cached db file from %s" % db_file) 20 | db = pickle.load(open(db_file, "rb")) 21 | 22 | 23 | # Parse the nam files 24 | folder = os.path.join(os.path.split(os.path.abspath(__file__))[0], "nam") 25 | glyphs = parse_glyphs_from_nam(folder) 26 | print("Processing a total of %d glyphs from all .nam files in %s" % 27 | (len(glyphs), folder)) 28 | 29 | # Find Rosetta names 30 | invalid = [] 31 | for i, r in enumerate(glyphs): 32 | rosetta_name = db.get_rosetta_name(unicode=r["unicode"], 33 | name=r["name"]) 34 | if not rosetta_name: 35 | invalid.append(r) 36 | print("Missing rosetta name for", r) 37 | else: 38 | glyphs[i]["rosetta_name"] = rosetta_name 39 | 40 | # Print missing glyphs to console or output the charset with all Rosetta names 41 | if len(invalid) == 0: 42 | charset = "gf-charset-rosetta-names.txt" 43 | glyphlines = [g["rosetta_name"] for g in glyphs] 44 | # make unique 45 | glyphlines = list(set(glyphlines)) 46 | 47 | with open(charset, "w") as file: 48 | file.writelines([g + "\n" for g in glyphlines]) 49 | print("Written all %d unique glyphs as Rosetta glyphnames to %s" % 50 | (len(glyphlines), charset)) 51 | else: 52 | print("Add the above glyphs to the glyphsDB") 53 | -------------------------------------------------------------------------------- /docs/charsets/nam/GF-cyrillic-plus_unique-glyphs.nam: -------------------------------------------------------------------------------- 1 | # Created by Alexei Vanyashin 2016-27-06 2 | #$ include ../GF-latin-core_unique-glyphs.nam 3 | 0x02BC ʼ MODIFIER LETTER APOSTROPHE 4 | 0x0300 ̀ COMBINING GRAVE ACCENT 5 | 0x0301 ́ COMBINING ACUTE ACCENT 6 | 0x0304 ̄ COMBINING MACRON 7 | 0x0308 ̈ COMBINING DIAERESIS 8 | 0x030B ̋ COMBINING DOUBLE ACUTE ACCENT 9 | 0x0400 Ѐ CYRILLIC CAPITAL LETTER IE WITH GRAVE 10 | 0x0401 Ё CYRILLIC CAPITAL LETTER IO 11 | 0x0402 Ђ CYRILLIC CAPITAL LETTER DJE 12 | 0x0403 Ѓ CYRILLIC CAPITAL LETTER GJE 13 | 0x0404 Є CYRILLIC CAPITAL LETTER UKRAINIAN IE 14 | 0x0405 Ѕ CYRILLIC CAPITAL LETTER DZE 15 | 0x0406 І CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I 16 | 0x0407 Ї CYRILLIC CAPITAL LETTER YI 17 | 0x0408 Ј CYRILLIC CAPITAL LETTER JE 18 | 0x0409 Љ CYRILLIC CAPITAL LETTER LJE 19 | 0x040A Њ CYRILLIC CAPITAL LETTER NJE 20 | 0x040B Ћ CYRILLIC CAPITAL LETTER TSHE 21 | 0x040C Ќ CYRILLIC CAPITAL LETTER KJE 22 | 0x040D Ѝ CYRILLIC CAPITAL LETTER I WITH GRAVE 23 | 0x040E Ў CYRILLIC CAPITAL LETTER SHORT U 24 | 0x040F Џ CYRILLIC CAPITAL LETTER DZHE 25 | 0x0410 А CYRILLIC CAPITAL LETTER A 26 | 0x0411 Б CYRILLIC CAPITAL LETTER BE 27 | 0x0412 В CYRILLIC CAPITAL LETTER VE 28 | 0x0413 Г CYRILLIC CAPITAL LETTER GHE 29 | 0x0414 Д CYRILLIC CAPITAL LETTER DE 30 | 0x0415 Е CYRILLIC CAPITAL LETTER IE 31 | 0x0416 Ж CYRILLIC CAPITAL LETTER ZHE 32 | 0x0417 З CYRILLIC CAPITAL LETTER ZE 33 | 0x0418 И CYRILLIC CAPITAL LETTER I 34 | 0x0419 Й CYRILLIC CAPITAL LETTER SHORT I 35 | 0x041A К CYRILLIC CAPITAL LETTER KA 36 | 0x041B Л CYRILLIC CAPITAL LETTER EL 37 | 0x041C М CYRILLIC CAPITAL LETTER EM 38 | 0x041D Н CYRILLIC CAPITAL LETTER EN 39 | 0x041E О CYRILLIC CAPITAL LETTER O 40 | 0x041F П CYRILLIC CAPITAL LETTER PE 41 | 0x0420 Р CYRILLIC CAPITAL LETTER ER 42 | 0x0421 С CYRILLIC CAPITAL LETTER ES 43 | 0x0422 Т CYRILLIC CAPITAL LETTER TE 44 | 0x0423 У CYRILLIC CAPITAL LETTER U 45 | 0x0424 Ф CYRILLIC CAPITAL LETTER EF 46 | 0x0425 Х CYRILLIC CAPITAL LETTER HA 47 | 0x0426 Ц CYRILLIC CAPITAL LETTER TSE 48 | 0x0427 Ч CYRILLIC CAPITAL LETTER CHE 49 | 0x0428 Ш CYRILLIC CAPITAL LETTER SHA 50 | 0x0429 Щ CYRILLIC CAPITAL LETTER SHCHA 51 | 0x042A Ъ CYRILLIC CAPITAL LETTER HARD SIGN 52 | 0x042B Ы CYRILLIC CAPITAL LETTER YERU 53 | 0x042C Ь CYRILLIC CAPITAL LETTER SOFT SIGN 54 | 0x042D Э CYRILLIC CAPITAL LETTER E 55 | 0x042E Ю CYRILLIC CAPITAL LETTER YU 56 | 0x042F Я CYRILLIC CAPITAL LETTER YA 57 | 0x0430 а CYRILLIC SMALL LETTER A 58 | 0x0431 б CYRILLIC SMALL LETTER BE 59 | 0x0432 в CYRILLIC SMALL LETTER VE 60 | 0x0433 г CYRILLIC SMALL LETTER GHE 61 | 0x0434 д CYRILLIC SMALL LETTER DE 62 | 0x0435 е CYRILLIC SMALL LETTER IE 63 | 0x0436 ж CYRILLIC SMALL LETTER ZHE 64 | 0x0437 з CYRILLIC SMALL LETTER ZE 65 | 0x0438 и CYRILLIC SMALL LETTER I 66 | 0x0439 й CYRILLIC SMALL LETTER SHORT I 67 | 0x043A к CYRILLIC SMALL LETTER KA 68 | 0x043B л CYRILLIC SMALL LETTER EL 69 | 0x043C м CYRILLIC SMALL LETTER EM 70 | 0x043D н CYRILLIC SMALL LETTER EN 71 | 0x043E о CYRILLIC SMALL LETTER O 72 | 0x043F п CYRILLIC SMALL LETTER PE 73 | 0x0440 р CYRILLIC SMALL LETTER ER 74 | 0x0441 с CYRILLIC SMALL LETTER ES 75 | 0x0442 т CYRILLIC SMALL LETTER TE 76 | 0x0443 у CYRILLIC SMALL LETTER U 77 | 0x0444 ф CYRILLIC SMALL LETTER EF 78 | 0x0445 х CYRILLIC SMALL LETTER HA 79 | 0x0446 ц CYRILLIC SMALL LETTER TSE 80 | 0x0447 ч CYRILLIC SMALL LETTER CHE 81 | 0x0448 ш CYRILLIC SMALL LETTER SHA 82 | 0x0449 щ CYRILLIC SMALL LETTER SHCHA 83 | 0x044A ъ CYRILLIC SMALL LETTER HARD SIGN 84 | 0x044B ы CYRILLIC SMALL LETTER YERU 85 | 0x044C ь CYRILLIC SMALL LETTER SOFT SIGN 86 | 0x044D э CYRILLIC SMALL LETTER E 87 | 0x044E ю CYRILLIC SMALL LETTER YU 88 | 0x044F я CYRILLIC SMALL LETTER YA 89 | 0x0450 ѐ CYRILLIC SMALL LETTER IE WITH GRAVE 90 | 0x0451 ё CYRILLIC SMALL LETTER IO 91 | 0x0452 ђ CYRILLIC SMALL LETTER DJE 92 | 0x0453 ѓ CYRILLIC SMALL LETTER GJE 93 | 0x0454 є CYRILLIC SMALL LETTER UKRAINIAN IE 94 | 0x0455 ѕ CYRILLIC SMALL LETTER DZE 95 | 0x0456 і CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I 96 | 0x0457 ї CYRILLIC SMALL LETTER YI 97 | 0x0458 ј CYRILLIC SMALL LETTER JE 98 | 0x0459 љ CYRILLIC SMALL LETTER LJE 99 | 0x045A њ CYRILLIC SMALL LETTER NJE 100 | 0x045B ћ CYRILLIC SMALL LETTER TSHE 101 | 0x045C ќ CYRILLIC SMALL LETTER KJE 102 | 0x045D ѝ CYRILLIC SMALL LETTER I WITH GRAVE 103 | 0x045E ў CYRILLIC SMALL LETTER SHORT U 104 | 0x045F џ CYRILLIC SMALL LETTER DZHE 105 | 0x0462 Ѣ CYRILLIC CAPITAL LETTER YAT 106 | 0x0463 ѣ CYRILLIC SMALL LETTER YAT 107 | 0x046A Ѫ CYRILLIC CAPITAL LETTER BIG YUS 108 | 0x046B ѫ CYRILLIC SMALL LETTER BIG YUS 109 | 0x0472 Ѳ CYRILLIC CAPITAL LETTER FITA 110 | 0x0473 ѳ CYRILLIC SMALL LETTER FITA 111 | 0x0474 Ѵ CYRILLIC CAPITAL LETTER IZHITSA 112 | 0x0475 ѵ CYRILLIC SMALL LETTER IZHITSA 113 | 0x0490 Ґ CYRILLIC CAPITAL LETTER GHE WITH UPTURN 114 | 0x0491 ґ CYRILLIC SMALL LETTER GHE WITH UPTURN 115 | 0x0492 Ғ CYRILLIC CAPITAL LETTER GHE WITH STROKE 116 | 0x0493 ғ CYRILLIC SMALL LETTER GHE WITH STROKE 117 | 0x0494 Ҕ CYRILLIC CAPITAL LETTER GHE WITH MIDDLE HOOK 118 | 0x0495 ҕ CYRILLIC SMALL LETTER GHE WITH MIDDLE HOOK 119 | 0x0496 Җ CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER 120 | 0x0497 җ CYRILLIC SMALL LETTER ZHE WITH DESCENDER 121 | 0x0498 Ҙ CYRILLIC CAPITAL LETTER ZE WITH DESCENDER 122 | 0x0499 ҙ CYRILLIC SMALL LETTER ZE WITH DESCENDER 123 | 0x049A Қ CYRILLIC CAPITAL LETTER KA WITH DESCENDER 124 | 0x049B қ CYRILLIC SMALL LETTER KA WITH DESCENDER 125 | 0x049C Ҝ CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE 126 | 0x049D ҝ CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE 127 | 0x04A0 Ҡ CYRILLIC CAPITAL LETTER BASHKIR KA 128 | 0x04A1 ҡ CYRILLIC SMALL LETTER BASHKIR KA 129 | 0x04A2 Ң CYRILLIC CAPITAL LETTER EN WITH DESCENDER 130 | 0x04A3 ң CYRILLIC SMALL LETTER EN WITH DESCENDER 131 | 0x04A4 Ҥ CYRILLIC CAPITAL LIGATURE EN GHE 132 | 0x04A5 ҥ CYRILLIC SMALL LIGATURE EN GHE 133 | 0x04AA Ҫ CYRILLIC CAPITAL LETTER ES WITH DESCENDER 134 | 0x04AB ҫ CYRILLIC SMALL LETTER ES WITH DESCENDER 135 | 0x04AE Ү CYRILLIC CAPITAL LETTER STRAIGHT U 136 | 0x04AF ү CYRILLIC SMALL LETTER STRAIGHT U 137 | 0x04B0 Ұ CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE 138 | 0x04B1 ұ CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE 139 | 0x04B2 Ҳ CYRILLIC CAPITAL LETTER HA WITH DESCENDER 140 | 0x04B3 ҳ CYRILLIC SMALL LETTER HA WITH DESCENDER 141 | 0x04B6 Ҷ CYRILLIC CAPITAL LETTER CHE WITH DESCENDER 142 | 0x04B7 ҷ CYRILLIC SMALL LETTER CHE WITH DESCENDER 143 | 0x04B8 Ҹ CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE 144 | 0x04B9 ҹ CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE 145 | 0x04BA Һ CYRILLIC CAPITAL LETTER SHHA 146 | 0x04BB һ CYRILLIC SMALL LETTER SHHA 147 | 0x04C0 Ӏ CYRILLIC LETTER PALOCHKA 148 | 0x04C1 Ӂ CYRILLIC CAPITAL LETTER ZHE WITH BREVE 149 | 0x04C2 ӂ CYRILLIC SMALL LETTER ZHE WITH BREVE 150 | 0x04CB Ӌ CYRILLIC CAPITAL LETTER KHAKASSIAN CHE 151 | 0x04CC ӌ CYRILLIC SMALL LETTER KHAKASSIAN CHE 152 | 0x04CF ӏ CYRILLIC SMALL LETTER PALOCHKA 153 | 0x04D0 Ӑ CYRILLIC CAPITAL LETTER A WITH BREVE 154 | 0x04D1 ӑ CYRILLIC SMALL LETTER A WITH BREVE 155 | 0x04D2 Ӓ CYRILLIC CAPITAL LETTER A WITH DIAERESIS 156 | 0x04D3 ӓ CYRILLIC SMALL LETTER A WITH DIAERESIS 157 | 0x04D4 Ӕ CYRILLIC CAPITAL LIGATURE A IE 158 | 0x04D5 ӕ CYRILLIC SMALL LIGATURE A IE 159 | 0x04D6 Ӗ CYRILLIC CAPITAL LETTER IE WITH BREVE 160 | 0x04D7 ӗ CYRILLIC SMALL LETTER IE WITH BREVE 161 | 0x04D8 Ә CYRILLIC CAPITAL LETTER SCHWA 162 | 0x04D9 ә CYRILLIC SMALL LETTER SCHWA 163 | 0x04DC Ӝ CYRILLIC CAPITAL LETTER ZHE WITH DIAERESIS 164 | 0x04DD ӝ CYRILLIC SMALL LETTER ZHE WITH DIAERESIS 165 | 0x04DE Ӟ CYRILLIC CAPITAL LETTER ZE WITH DIAERESIS 166 | 0x04DF ӟ CYRILLIC SMALL LETTER ZE WITH DIAERESIS 167 | 0x04E2 Ӣ CYRILLIC CAPITAL LETTER I WITH MACRON 168 | 0x04E3 ӣ CYRILLIC SMALL LETTER I WITH MACRON 169 | 0x04E4 Ӥ CYRILLIC CAPITAL LETTER I WITH DIAERESIS 170 | 0x04E5 ӥ CYRILLIC SMALL LETTER I WITH DIAERESIS 171 | 0x04E6 Ӧ CYRILLIC CAPITAL LETTER O WITH DIAERESIS 172 | 0x04E7 ӧ CYRILLIC SMALL LETTER O WITH DIAERESIS 173 | 0x04E8 Ө CYRILLIC CAPITAL LETTER BARRED O 174 | 0x04E9 ө CYRILLIC SMALL LETTER BARRED O 175 | 0x04EE Ӯ CYRILLIC CAPITAL LETTER U WITH MACRON 176 | 0x04EF ӯ CYRILLIC SMALL LETTER U WITH MACRON 177 | 0x04F0 Ӱ CYRILLIC CAPITAL LETTER U WITH DIAERESIS 178 | 0x04F1 ӱ CYRILLIC SMALL LETTER U WITH DIAERESIS 179 | 0x04F2 Ӳ CYRILLIC CAPITAL LETTER U WITH DOUBLE ACUTE 180 | 0x04F3 ӳ CYRILLIC SMALL LETTER U WITH DOUBLE ACUTE 181 | 0x04F4 Ӵ CYRILLIC CAPITAL LETTER CHE WITH DIAERESIS 182 | 0x04F5 ӵ CYRILLIC SMALL LETTER CHE WITH DIAERESIS 183 | 0x04F6 Ӷ CYRILLIC CAPITAL LETTER GHE WITH DESCENDER 184 | 0x04F7 ӷ CYRILLIC SMALL LETTER GHE WITH DESCENDER 185 | 0x04F8 Ӹ CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS 186 | 0x04F9 ӹ CYRILLIC SMALL LETTER YERU WITH DIAERESIS 187 | 0x051A Ԛ CYRILLIC CAPITAL LETTER QA 188 | 0x051B ԛ CYRILLIC SMALL LETTER QA 189 | 0x051C Ԝ CYRILLIC CAPITAL LETTER WE 190 | 0x051D ԝ CYRILLIC SMALL LETTER WE 191 | 0x20AE ₮ TUGRIK SIGN 192 | 0x20B4 ₴ HRYVNIA SIGN 193 | 0x20B8 ₸ TENGE SIGN 194 | 0x2116 № NUMERO SIGN 195 | brevecomb-cy -------------------------------------------------------------------------------- /docs/charsets/nam/GF-greek-core.nam: -------------------------------------------------------------------------------- 1 | # GF Greek Core 2 | # Generated by Alexei Vanyashin 10 Feb 2017 3 | #$ include ../GF-latin-core_unique-glyphs.nam 4 | 0x0374 ʹ GREEK NUMERAL SIGN 5 | 0x0375 ͵ GREEK LOWER NUMERAL SIGN 6 | 0x037E ; GREEK QUESTION MARK 7 | 0x0384 ΄ GREEK TONOS 8 | 0x0385 ΅ GREEK DIALYTIKA TONOS 9 | 0x0386 Ά GREEK CAPITAL LETTER ALPHA WITH TONOS 10 | 0x0387 · GREEK ANO TELEIA 11 | 0x0388 Έ GREEK CAPITAL LETTER EPSILON WITH TONOS 12 | 0x0389 Ή GREEK CAPITAL LETTER ETA WITH TONOS 13 | 0x038A Ί GREEK CAPITAL LETTER IOTA WITH TONOS 14 | 0x038C Ό GREEK CAPITAL LETTER OMICRON WITH TONOS 15 | 0x038E Ύ GREEK CAPITAL LETTER UPSILON WITH TONOS 16 | 0x038F Ώ GREEK CAPITAL LETTER OMEGA WITH TONOS 17 | 0x0390 ΐ GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS 18 | 0x0391 Α GREEK CAPITAL LETTER ALPHA 19 | 0x0392 Β GREEK CAPITAL LETTER BETA 20 | 0x0393 Γ GREEK CAPITAL LETTER GAMMA 21 | 0x0394 Δ GREEK CAPITAL LETTER DELTA 22 | 0x0395 Ε GREEK CAPITAL LETTER EPSILON 23 | 0x0396 Ζ GREEK CAPITAL LETTER ZETA 24 | 0x0397 Η GREEK CAPITAL LETTER ETA 25 | 0x0398 Θ GREEK CAPITAL LETTER THETA 26 | 0x0399 Ι GREEK CAPITAL LETTER IOTA 27 | 0x039A Κ GREEK CAPITAL LETTER KAPPA 28 | 0x039B Λ GREEK CAPITAL LETTER LAMDA 29 | 0x039C Μ GREEK CAPITAL LETTER MU 30 | 0x039D Ν GREEK CAPITAL LETTER NU 31 | 0x039E Ξ GREEK CAPITAL LETTER XI 32 | 0x039F Ο GREEK CAPITAL LETTER OMICRON 33 | 0x03A0 Π GREEK CAPITAL LETTER PI 34 | 0x03A1 Ρ GREEK CAPITAL LETTER RHO 35 | 0x03A3 Σ GREEK CAPITAL LETTER SIGMA 36 | 0x03A4 Τ GREEK CAPITAL LETTER TAU 37 | 0x03A5 Υ GREEK CAPITAL LETTER UPSILON 38 | 0x03A6 Φ GREEK CAPITAL LETTER PHI 39 | 0x03A7 Χ GREEK CAPITAL LETTER CHI 40 | 0x03A8 Ψ GREEK CAPITAL LETTER PSI 41 | 0x03A9 Ω GREEK CAPITAL LETTER OMEGA 42 | 0x03AA Ϊ GREEK CAPITAL LETTER IOTA WITH DIALYTIKA 43 | 0x03AB Ϋ GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA 44 | 0x03AC ά GREEK SMALL LETTER ALPHA WITH TONOS 45 | 0x03AD έ GREEK SMALL LETTER EPSILON WITH TONOS 46 | 0x03AE ή GREEK SMALL LETTER ETA WITH TONOS 47 | 0x03AF ί GREEK SMALL LETTER IOTA WITH TONOS 48 | 0x03B0 ΰ GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS 49 | 0x03B1 α GREEK SMALL LETTER ALPHA 50 | 0x03B2 β GREEK SMALL LETTER BETA 51 | 0x03B3 γ GREEK SMALL LETTER GAMMA 52 | 0x03B4 δ GREEK SMALL LETTER DELTA 53 | 0x03B5 ε GREEK SMALL LETTER EPSILON 54 | 0x03B6 ζ GREEK SMALL LETTER ZETA 55 | 0x03B7 η GREEK SMALL LETTER ETA 56 | 0x03B8 θ GREEK SMALL LETTER THETA 57 | 0x03B9 ι GREEK SMALL LETTER IOTA 58 | 0x03BA κ GREEK SMALL LETTER KAPPA 59 | 0x03BB λ GREEK SMALL LETTER LAMDA 60 | 0x03BC μ GREEK SMALL LETTER MU 61 | 0x03BD ν GREEK SMALL LETTER NU 62 | 0x03BE ξ GREEK SMALL LETTER XI 63 | 0x03BF ο GREEK SMALL LETTER OMICRON 64 | 0x03C0 π GREEK SMALL LETTER PI 65 | 0x03C1 ρ GREEK SMALL LETTER RHO 66 | 0x03C2 ς GREEK SMALL LETTER FINAL SIGMA 67 | 0x03C3 σ GREEK SMALL LETTER SIGMA 68 | 0x03C4 τ GREEK SMALL LETTER TAU 69 | 0x03C5 υ GREEK SMALL LETTER UPSILON 70 | 0x03C6 φ GREEK SMALL LETTER PHI 71 | 0x03C7 χ GREEK SMALL LETTER CHI 72 | 0x03C8 ψ GREEK SMALL LETTER PSI 73 | 0x03C9 ω GREEK SMALL LETTER OMEGA 74 | 0x03CA ϊ GREEK SMALL LETTER IOTA WITH DIALYTIKA 75 | 0x03CB ϋ GREEK SMALL LETTER UPSILON WITH DIALYTIKA 76 | 0x03CC ό GREEK SMALL LETTER OMICRON WITH TONOS 77 | 0x03CD ύ GREEK SMALL LETTER UPSILON WITH TONOS 78 | 0x03CE ώ GREEK SMALL LETTER OMEGA WITH TONOS 79 | 0x03CF Ϗ GREEK CAPITAL KAI SYMBOL 80 | 0x03D7 ϗ GREEK KAI SYMBOL 81 | -------------------------------------------------------------------------------- /docs/charsets/nam/GF-latin-core_unique-glyphs.nam: -------------------------------------------------------------------------------- 1 | NULL 2 | 0x000D CR 3 | 0x0020 SPACE 4 | 0x0021 ! EXCLAMATION MARK 5 | 0x0022 " QUOTATION MARK 6 | 0x0023 # NUMBER SIGN 7 | 0x0024 $ DOLLAR SIGN 8 | 0x0025 % PERCENT SIGN 9 | 0x0026 & AMPERSAND 10 | 0x0027 ' APOSTROPHE 11 | 0x0028 ( LEFT PARENTHESIS 12 | 0x0029 ) RIGHT PARENTHESIS 13 | 0x002A * ASTERISK 14 | 0x002B + PLUS SIGN 15 | 0x002C , COMMA 16 | 0x002D - HYPHEN-MINUS 17 | 0x002E . FULL STOP 18 | 0x002F / SOLIDUS 19 | 0x0030 0 DIGIT ZERO 20 | 0x0031 1 DIGIT ONE 21 | 0x0032 2 DIGIT TWO 22 | 0x0033 3 DIGIT THREE 23 | 0x0034 4 DIGIT FOUR 24 | 0x0035 5 DIGIT FIVE 25 | 0x0036 6 DIGIT SIX 26 | 0x0037 7 DIGIT SEVEN 27 | 0x0038 8 DIGIT EIGHT 28 | 0x0039 9 DIGIT NINE 29 | 0x003A : COLON 30 | 0x003B ; SEMICOLON 31 | 0x003C < LESS-THAN SIGN 32 | 0x003D = EQUALS SIGN 33 | 0x003E > GREATER-THAN SIGN 34 | 0x003F ? QUESTION MARK 35 | 0x0040 @ COMMERCIAL AT 36 | 0x0041 A LATIN CAPITAL LETTER A 37 | 0x0042 B LATIN CAPITAL LETTER B 38 | 0x0043 C LATIN CAPITAL LETTER C 39 | 0x0044 D LATIN CAPITAL LETTER D 40 | 0x0045 E LATIN CAPITAL LETTER E 41 | 0x0046 F LATIN CAPITAL LETTER F 42 | 0x0047 G LATIN CAPITAL LETTER G 43 | 0x0048 H LATIN CAPITAL LETTER H 44 | 0x0049 I LATIN CAPITAL LETTER I 45 | 0x004A J LATIN CAPITAL LETTER J 46 | 0x004B K LATIN CAPITAL LETTER K 47 | 0x004C L LATIN CAPITAL LETTER L 48 | 0x004D M LATIN CAPITAL LETTER M 49 | 0x004E N LATIN CAPITAL LETTER N 50 | 0x004F O LATIN CAPITAL LETTER O 51 | 0x0050 P LATIN CAPITAL LETTER P 52 | 0x0051 Q LATIN CAPITAL LETTER Q 53 | 0x0052 R LATIN CAPITAL LETTER R 54 | 0x0053 S LATIN CAPITAL LETTER S 55 | 0x0054 T LATIN CAPITAL LETTER T 56 | 0x0055 U LATIN CAPITAL LETTER U 57 | 0x0056 V LATIN CAPITAL LETTER V 58 | 0x0057 W LATIN CAPITAL LETTER W 59 | 0x0058 X LATIN CAPITAL LETTER X 60 | 0x0059 Y LATIN CAPITAL LETTER Y 61 | 0x005A Z LATIN CAPITAL LETTER Z 62 | 0x005B [ LEFT SQUARE BRACKET 63 | 0x005C \ REVERSE SOLIDUS 64 | 0x005D ] RIGHT SQUARE BRACKET 65 | 0x005E ^ CIRCUMFLEX ACCENT 66 | 0x005F _ LOW LINE 67 | 0x0060 ` GRAVE ACCENT 68 | 0x0061 a LATIN SMALL LETTER A 69 | 0x0062 b LATIN SMALL LETTER B 70 | 0x0063 c LATIN SMALL LETTER C 71 | 0x0064 d LATIN SMALL LETTER D 72 | 0x0065 e LATIN SMALL LETTER E 73 | 0x0066 f LATIN SMALL LETTER F 74 | 0x0067 g LATIN SMALL LETTER G 75 | 0x0068 h LATIN SMALL LETTER H 76 | 0x0069 i LATIN SMALL LETTER I 77 | 0x006A j LATIN SMALL LETTER J 78 | 0x006B k LATIN SMALL LETTER K 79 | 0x006C l LATIN SMALL LETTER L 80 | 0x006D m LATIN SMALL LETTER M 81 | 0x006E n LATIN SMALL LETTER N 82 | 0x006F o LATIN SMALL LETTER O 83 | 0x0070 p LATIN SMALL LETTER P 84 | 0x0071 q LATIN SMALL LETTER Q 85 | 0x0072 r LATIN SMALL LETTER R 86 | 0x0073 s LATIN SMALL LETTER S 87 | 0x0074 t LATIN SMALL LETTER T 88 | 0x0075 u LATIN SMALL LETTER U 89 | 0x0076 v LATIN SMALL LETTER V 90 | 0x0077 w LATIN SMALL LETTER W 91 | 0x0078 x LATIN SMALL LETTER X 92 | 0x0079 y LATIN SMALL LETTER Y 93 | 0x007A z LATIN SMALL LETTER Z 94 | 0x007B { LEFT CURLY BRACKET 95 | 0x007C | VERTICAL LINE 96 | 0x007D } RIGHT CURLY BRACKET 97 | 0x007E ~ TILDE 98 | 0x00A0   NO-BREAK SPACE 99 | 0x00A1 ¡ INVERTED EXCLAMATION MARK 100 | 0x00A2 ¢ CENT SIGN 101 | 0x00A3 £ POUND SIGN 102 | 0x00A4 ¤ CURRENCY SIGN 103 | 0x00A5 ¥ YEN SIGN 104 | 0x00A6 ¦ BROKEN BAR 105 | 0x00A7 § SECTION SIGN 106 | 0x00A8 ¨ DIAERESIS 107 | 0x00A9 © COPYRIGHT SIGN 108 | 0x00AA ª FEMININE ORDINAL INDICATOR 109 | 0x00AB « LEFT-POINTING DOUBLE ANGLE QUOTATION MARK 110 | 0x00AC ¬ NOT SIGN 111 | 0x00AD ­ SOFT HYPHEN 112 | 0x00AE ® REGISTERED SIGN 113 | 0x00AF ¯ MACRON 114 | 0x00B0 ° DEGREE SIGN 115 | 0x00B1 ± PLUS-MINUS SIGN 116 | 0x00B2 ² SUPERSCRIPT TWO 117 | 0x00B3 ³ SUPERSCRIPT THREE 118 | 0x00B4 ´ ACUTE ACCENT 119 | 0x00B5 µ MICRO SIGN 120 | 0x00B6 ¶ PILCROW SIGN 121 | 0x00B7 · MIDDLE DOT 122 | 0x00B8 ¸ CEDILLA 123 | 0x00B9 ¹ SUPERSCRIPT ONE 124 | 0x00BA º MASCULINE ORDINAL INDICATOR 125 | 0x00BB » RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK 126 | 0x00BC ¼ VULGAR FRACTION ONE QUARTER 127 | 0x00BD ½ VULGAR FRACTION ONE HALF 128 | 0x00BE ¾ VULGAR FRACTION THREE QUARTERS 129 | 0x00BF ¿ INVERTED QUESTION MARK 130 | 0x00C0 À LATIN CAPITAL LETTER A WITH GRAVE 131 | 0x00C1 Á LATIN CAPITAL LETTER A WITH ACUTE 132 | 0x00C2  LATIN CAPITAL LETTER A WITH CIRCUMFLEX 133 | 0x00C3 à LATIN CAPITAL LETTER A WITH TILDE 134 | 0x00C4 Ä LATIN CAPITAL LETTER A WITH DIAERESIS 135 | 0x00C5 Å LATIN CAPITAL LETTER A WITH RING ABOVE 136 | 0x00C6 Æ LATIN CAPITAL LETTER AE 137 | 0x00C7 Ç LATIN CAPITAL LETTER C WITH CEDILLA 138 | 0x00C8 È LATIN CAPITAL LETTER E WITH GRAVE 139 | 0x00C9 É LATIN CAPITAL LETTER E WITH ACUTE 140 | 0x00CA Ê LATIN CAPITAL LETTER E WITH CIRCUMFLEX 141 | 0x00CB Ë LATIN CAPITAL LETTER E WITH DIAERESIS 142 | 0x00CC Ì LATIN CAPITAL LETTER I WITH GRAVE 143 | 0x00CD Í LATIN CAPITAL LETTER I WITH ACUTE 144 | 0x00CE Î LATIN CAPITAL LETTER I WITH CIRCUMFLEX 145 | 0x00CF Ï LATIN CAPITAL LETTER I WITH DIAERESIS 146 | 0x00D0 Ð LATIN CAPITAL LETTER ETH 147 | 0x00D1 Ñ LATIN CAPITAL LETTER N WITH TILDE 148 | 0x00D2 Ò LATIN CAPITAL LETTER O WITH GRAVE 149 | 0x00D3 Ó LATIN CAPITAL LETTER O WITH ACUTE 150 | 0x00D4 Ô LATIN CAPITAL LETTER O WITH CIRCUMFLEX 151 | 0x00D5 Õ LATIN CAPITAL LETTER O WITH TILDE 152 | 0x00D6 Ö LATIN CAPITAL LETTER O WITH DIAERESIS 153 | 0x00D7 × MULTIPLICATION SIGN 154 | 0x00D8 Ø LATIN CAPITAL LETTER O WITH STROKE 155 | 0x00D9 Ù LATIN CAPITAL LETTER U WITH GRAVE 156 | 0x00DA Ú LATIN CAPITAL LETTER U WITH ACUTE 157 | 0x00DB Û LATIN CAPITAL LETTER U WITH CIRCUMFLEX 158 | 0x00DC Ü LATIN CAPITAL LETTER U WITH DIAERESIS 159 | 0x00DD Ý LATIN CAPITAL LETTER Y WITH ACUTE 160 | 0x00DE Þ LATIN CAPITAL LETTER THORN 161 | 0x00DF ß LATIN SMALL LETTER SHARP S 162 | 0x00E0 à LATIN SMALL LETTER A WITH GRAVE 163 | 0x00E1 á LATIN SMALL LETTER A WITH ACUTE 164 | 0x00E2 â LATIN SMALL LETTER A WITH CIRCUMFLEX 165 | 0x00E3 ã LATIN SMALL LETTER A WITH TILDE 166 | 0x00E4 ä LATIN SMALL LETTER A WITH DIAERESIS 167 | 0x00E5 å LATIN SMALL LETTER A WITH RING ABOVE 168 | 0x00E6 æ LATIN SMALL LETTER AE 169 | 0x00E7 ç LATIN SMALL LETTER C WITH CEDILLA 170 | 0x00E8 è LATIN SMALL LETTER E WITH GRAVE 171 | 0x00E9 é LATIN SMALL LETTER E WITH ACUTE 172 | 0x00EA ê LATIN SMALL LETTER E WITH CIRCUMFLEX 173 | 0x00EB ë LATIN SMALL LETTER E WITH DIAERESIS 174 | 0x00EC ì LATIN SMALL LETTER I WITH GRAVE 175 | 0x00ED í LATIN SMALL LETTER I WITH ACUTE 176 | 0x00EE î LATIN SMALL LETTER I WITH CIRCUMFLEX 177 | 0x00EF ï LATIN SMALL LETTER I WITH DIAERESIS 178 | 0x00F0 ð LATIN SMALL LETTER ETH 179 | 0x00F1 ñ LATIN SMALL LETTER N WITH TILDE 180 | 0x00F2 ò LATIN SMALL LETTER O WITH GRAVE 181 | 0x00F3 ó LATIN SMALL LETTER O WITH ACUTE 182 | 0x00F4 ô LATIN SMALL LETTER O WITH CIRCUMFLEX 183 | 0x00F5 õ LATIN SMALL LETTER O WITH TILDE 184 | 0x00F6 ö LATIN SMALL LETTER O WITH DIAERESIS 185 | 0x00F7 ÷ DIVISION SIGN 186 | 0x00F8 ø LATIN SMALL LETTER O WITH STROKE 187 | 0x00F9 ù LATIN SMALL LETTER U WITH GRAVE 188 | 0x00FA ú LATIN SMALL LETTER U WITH ACUTE 189 | 0x00FB û LATIN SMALL LETTER U WITH CIRCUMFLEX 190 | 0x00FC ü LATIN SMALL LETTER U WITH DIAERESIS 191 | 0x00FD ý LATIN SMALL LETTER Y WITH ACUTE 192 | 0x00FE þ LATIN SMALL LETTER THORN 193 | 0x00FF ÿ LATIN SMALL LETTER Y WITH DIAERESIS 194 | 0x0131 ı LATIN SMALL LETTER DOTLESS I 195 | 0x0152 Œ LATIN CAPITAL LIGATURE OE 196 | 0x0153 œ LATIN SMALL LIGATURE OE 197 | 0x02C6 ˆ MODIFIER LETTER CIRCUMFLEX ACCENT 198 | 0x02DA ˚ RING ABOVE 199 | 0x02DC ˜ SMALL TILDE 200 | 0x2013 – EN DASH 201 | 0x2014 — EM DASH 202 | 0x2018 ‘ LEFT SINGLE QUOTATION MARK 203 | 0x2019 ’ RIGHT SINGLE QUOTATION MARK 204 | 0x201A ‚ SINGLE LOW-9 QUOTATION MARK 205 | 0x201C “ LEFT DOUBLE QUOTATION MARK 206 | 0x201D ” RIGHT DOUBLE QUOTATION MARK 207 | 0x201E „ DOUBLE LOW-9 QUOTATION MARK 208 | 0x2022 • BULLET 209 | 0x2026 … HORIZONTAL ELLIPSIS 210 | 0x2039 ‹ SINGLE LEFT-POINTING ANGLE QUOTATION MARK 211 | 0x203A › SINGLE RIGHT-POINTING ANGLE QUOTATION MARK 212 | 0x2044 ⁄ FRACTION SLASH 213 | 0x2074 ⁴ SUPERSCRIPT FOUR 214 | 0x20AC € EURO SIGN 215 | 0x2212 − MINUS SIGN 216 | 0x2215 ∕ DIVISION SLASH 217 | -------------------------------------------------------------------------------- /docs/charsets/nam/GF-latin-plus_optional-glyphs.nam: -------------------------------------------------------------------------------- 1 | gravecomb.case 2 | acutecomb.case 3 | circumflexcomb.case 4 | tildecomb.case 5 | macroncomb.case 6 | brevecomb.case 7 | dotaccentcomb.case 8 | dieresiscomb.case 9 | hookabovecomb.case 10 | ringcomb.case 11 | hungarumlautcomb.case 12 | caroncomb.case 13 | dblgravecomb.case 14 | breveinvertedcomb.case 15 | commaturnedabovecomb.case 16 | horncomb.case 17 | dotbelowcomb.case 18 | dieresisbelowcomb.case 19 | commaaccentcomb.case 20 | cedillacomb.case 21 | ogonekcomb.case 22 | brevebelowcomb.case 23 | macronbelowcomb.case 24 | periodcentered.loclCAT.case 25 | zero.zero 26 | -------------------------------------------------------------------------------- /docs/charsets/nam/GF-latin-plus_unique-glyphs.nam: -------------------------------------------------------------------------------- 1 | #$ include GF-latin-core_unique-glyphs.nam 2 | 0x0100 Ā LATIN CAPITAL LETTER A WITH MACRON 3 | 0x0101 ā LATIN SMALL LETTER A WITH MACRON 4 | 0x0102 Ă LATIN CAPITAL LETTER A WITH BREVE 5 | 0x0103 ă LATIN SMALL LETTER A WITH BREVE 6 | 0x0104 Ą LATIN CAPITAL LETTER A WITH OGONEK 7 | 0x0105 ą LATIN SMALL LETTER A WITH OGONEK 8 | 0x0106 Ć LATIN CAPITAL LETTER C WITH ACUTE 9 | 0x0107 ć LATIN SMALL LETTER C WITH ACUTE 10 | 0x0108 Ĉ LATIN CAPITAL LETTER C WITH CIRCUMFLEX 11 | 0x0109 ĉ LATIN SMALL LETTER C WITH CIRCUMFLEX 12 | 0x010A Ċ LATIN CAPITAL LETTER C WITH DOT ABOVE 13 | 0x010B ċ LATIN SMALL LETTER C WITH DOT ABOVE 14 | 0x010C Č LATIN CAPITAL LETTER C WITH CARON 15 | 0x010D č LATIN SMALL LETTER C WITH CARON 16 | 0x010E Ď LATIN CAPITAL LETTER D WITH CARON 17 | 0x010F ď LATIN SMALL LETTER D WITH CARON 18 | 0x0110 Đ LATIN CAPITAL LETTER D WITH STROKE 19 | 0x0111 đ LATIN SMALL LETTER D WITH STROKE 20 | 0x0112 Ē LATIN CAPITAL LETTER E WITH MACRON 21 | 0x0113 ē LATIN SMALL LETTER E WITH MACRON 22 | 0x0114 Ĕ LATIN CAPITAL LETTER E WITH BREVE 23 | 0x0115 ĕ LATIN SMALL LETTER E WITH BREVE 24 | 0x0116 Ė LATIN CAPITAL LETTER E WITH DOT ABOVE 25 | 0x0117 ė LATIN SMALL LETTER E WITH DOT ABOVE 26 | 0x0118 Ę LATIN CAPITAL LETTER E WITH OGONEK 27 | 0x0119 ę LATIN SMALL LETTER E WITH OGONEK 28 | 0x011A Ě LATIN CAPITAL LETTER E WITH CARON 29 | 0x011B ě LATIN SMALL LETTER E WITH CARON 30 | 0x011C Ĝ LATIN CAPITAL LETTER G WITH CIRCUMFLEX 31 | 0x011D ĝ LATIN SMALL LETTER G WITH CIRCUMFLEX 32 | 0x011E Ğ LATIN CAPITAL LETTER G WITH BREVE 33 | 0x011F ğ LATIN SMALL LETTER G WITH BREVE 34 | 0x0120 Ġ LATIN CAPITAL LETTER G WITH DOT ABOVE 35 | 0x0121 ġ LATIN SMALL LETTER G WITH DOT ABOVE 36 | 0x0122 Ģ LATIN CAPITAL LETTER G WITH CEDILLA 37 | 0x0123 ģ LATIN SMALL LETTER G WITH CEDILLA 38 | 0x0124 Ĥ LATIN CAPITAL LETTER H WITH CIRCUMFLEX 39 | 0x0125 ĥ LATIN SMALL LETTER H WITH CIRCUMFLEX 40 | 0x0126 Ħ LATIN CAPITAL LETTER H WITH STROKE 41 | 0x0127 ħ LATIN SMALL LETTER H WITH STROKE 42 | 0x0128 Ĩ LATIN CAPITAL LETTER I WITH TILDE 43 | 0x0129 ĩ LATIN SMALL LETTER I WITH TILDE 44 | 0x012A Ī LATIN CAPITAL LETTER I WITH MACRON 45 | 0x012B ī LATIN SMALL LETTER I WITH MACRON 46 | 0x012C Ĭ LATIN CAPITAL LETTER I WITH BREVE 47 | 0x012D ĭ LATIN SMALL LETTER I WITH BREVE 48 | 0x012E Į LATIN CAPITAL LETTER I WITH OGONEK 49 | 0x012F į LATIN SMALL LETTER I WITH OGONEK 50 | 0x0130 İ LATIN CAPITAL LETTER I WITH DOT ABOVE 51 | 0x0134 Ĵ LATIN CAPITAL LETTER J WITH CIRCUMFLEX 52 | 0x0135 ĵ LATIN SMALL LETTER J WITH CIRCUMFLEX 53 | 0x0136 Ķ LATIN CAPITAL LETTER K WITH CEDILLA 54 | 0x0137 ķ LATIN SMALL LETTER K WITH CEDILLA 55 | 0x0138 ĸ LATIN SMALL LETTER KRA 56 | 0x0139 Ĺ LATIN CAPITAL LETTER L WITH ACUTE 57 | 0x013A ĺ LATIN SMALL LETTER L WITH ACUTE 58 | 0x013B Ļ LATIN CAPITAL LETTER L WITH CEDILLA 59 | 0x013C ļ LATIN SMALL LETTER L WITH CEDILLA 60 | 0x013D Ľ LATIN CAPITAL LETTER L WITH CARON 61 | 0x013E ľ LATIN SMALL LETTER L WITH CARON 62 | 0x013F Ŀ LATIN CAPITAL LETTER L WITH MIDDLE DOT 63 | 0x0140 ŀ LATIN SMALL LETTER L WITH MIDDLE DOT 64 | 0x0141 Ł LATIN CAPITAL LETTER L WITH STROKE 65 | 0x0142 ł LATIN SMALL LETTER L WITH STROKE 66 | 0x0143 Ń LATIN CAPITAL LETTER N WITH ACUTE 67 | 0x0144 ń LATIN SMALL LETTER N WITH ACUTE 68 | 0x0145 Ņ LATIN CAPITAL LETTER N WITH CEDILLA 69 | 0x0146 ņ LATIN SMALL LETTER N WITH CEDILLA 70 | 0x0147 Ň LATIN CAPITAL LETTER N WITH CARON 71 | 0x0148 ň LATIN SMALL LETTER N WITH CARON 72 | 0x014A Ŋ LATIN CAPITAL LETTER ENG 73 | 0x014B ŋ LATIN SMALL LETTER ENG 74 | 0x014C Ō LATIN CAPITAL LETTER O WITH MACRON 75 | 0x014D ō LATIN SMALL LETTER O WITH MACRON 76 | 0x014E Ŏ LATIN CAPITAL LETTER O WITH BREVE 77 | 0x014F ŏ LATIN SMALL LETTER O WITH BREVE 78 | 0x0150 Ő LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 79 | 0x0151 ő LATIN SMALL LETTER O WITH DOUBLE ACUTE 80 | 0x0154 Ŕ LATIN CAPITAL LETTER R WITH ACUTE 81 | 0x0155 ŕ LATIN SMALL LETTER R WITH ACUTE 82 | 0x0156 Ŗ LATIN CAPITAL LETTER R WITH CEDILLA 83 | 0x0157 ŗ LATIN SMALL LETTER R WITH CEDILLA 84 | 0x0158 Ř LATIN CAPITAL LETTER R WITH CARON 85 | 0x0159 ř LATIN SMALL LETTER R WITH CARON 86 | 0x015A Ś LATIN CAPITAL LETTER S WITH ACUTE 87 | 0x015B ś LATIN SMALL LETTER S WITH ACUTE 88 | 0x015C Ŝ LATIN CAPITAL LETTER S WITH CIRCUMFLEX 89 | 0x015D ŝ LATIN SMALL LETTER S WITH CIRCUMFLEX 90 | 0x015E Ş LATIN CAPITAL LETTER S WITH CEDILLA 91 | 0x015F ş LATIN SMALL LETTER S WITH CEDILLA 92 | 0x0160 Š LATIN CAPITAL LETTER S WITH CARON 93 | 0x0161 š LATIN SMALL LETTER S WITH CARON 94 | 0x0162 Ţ LATIN CAPITAL LETTER T WITH CEDILLA 95 | 0x0163 ţ LATIN SMALL LETTER T WITH CEDILLA 96 | 0x0164 Ť LATIN CAPITAL LETTER T WITH CARON 97 | 0x0165 ť LATIN SMALL LETTER T WITH CARON 98 | 0x0166 Ŧ LATIN CAPITAL LETTER T WITH STROKE 99 | 0x0167 ŧ LATIN SMALL LETTER T WITH STROKE 100 | 0x0168 Ũ LATIN CAPITAL LETTER U WITH TILDE 101 | 0x0169 ũ LATIN SMALL LETTER U WITH TILDE 102 | 0x016A Ū LATIN CAPITAL LETTER U WITH MACRON 103 | 0x016B ū LATIN SMALL LETTER U WITH MACRON 104 | 0x016C Ŭ LATIN CAPITAL LETTER U WITH BREVE 105 | 0x016D ŭ LATIN SMALL LETTER U WITH BREVE 106 | 0x016E Ů LATIN CAPITAL LETTER U WITH RING ABOVE 107 | 0x016F ů LATIN SMALL LETTER U WITH RING ABOVE 108 | 0x0170 Ű LATIN CAPITAL LETTER U WITH DOUBLE ACUTE 109 | 0x0171 ű LATIN SMALL LETTER U WITH DOUBLE ACUTE 110 | 0x0172 Ų LATIN CAPITAL LETTER U WITH OGONEK 111 | 0x0173 ų LATIN SMALL LETTER U WITH OGONEK 112 | 0x0174 Ŵ LATIN CAPITAL LETTER W WITH CIRCUMFLEX 113 | 0x0175 ŵ LATIN SMALL LETTER W WITH CIRCUMFLEX 114 | 0x0176 Ŷ LATIN CAPITAL LETTER Y WITH CIRCUMFLEX 115 | 0x0177 ŷ LATIN SMALL LETTER Y WITH CIRCUMFLEX 116 | 0x0178 Ÿ LATIN CAPITAL LETTER Y WITH DIAERESIS 117 | 0x0179 Ź LATIN CAPITAL LETTER Z WITH ACUTE 118 | 0x017A ź LATIN SMALL LETTER Z WITH ACUTE 119 | 0x017B Ż LATIN CAPITAL LETTER Z WITH DOT ABOVE 120 | 0x017C ż LATIN SMALL LETTER Z WITH DOT ABOVE 121 | 0x017D Ž LATIN CAPITAL LETTER Z WITH CARON 122 | 0x017E ž LATIN SMALL LETTER Z WITH CARON 123 | 0x018F Ə LATIN CAPITAL LETTER SCHWA 124 | 0x0192 ƒ LATIN SMALL LETTER F WITH HOOK 125 | 0x01A0 Ơ LATIN CAPITAL LETTER O WITH HORN 126 | 0x01A1 ơ LATIN SMALL LETTER O WITH HORN 127 | 0x01AF Ư LATIN CAPITAL LETTER U WITH HORN 128 | 0x01B0 ư LATIN SMALL LETTER U WITH HORN 129 | 0x01C4 DŽ LATIN CAPITAL LETTER DZ WITH CARON 130 | 0x01C5 Dž LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON 131 | 0x01C6 dž LATIN SMALL LETTER DZ WITH CARON 132 | 0x01C7 LJ LATIN CAPITAL LETTER LJ 133 | 0x01C8 Lj LATIN CAPITAL LETTER L WITH SMALL LETTER J 134 | 0x01C9 lj LATIN SMALL LETTER LJ 135 | 0x01CA NJ LATIN CAPITAL LETTER NJ 136 | 0x01CB Nj LATIN CAPITAL LETTER N WITH SMALL LETTER J 137 | 0x01CC nj LATIN SMALL LETTER NJ 138 | 0x01E6 Ǧ LATIN CAPITAL LETTER G WITH CARON 139 | 0x01E7 ǧ LATIN SMALL LETTER G WITH CARON 140 | 0x01EA Ǫ LATIN CAPITAL LETTER O WITH OGONEK 141 | 0x01EB ǫ LATIN SMALL LETTER O WITH OGONEK 142 | 0x01FA Ǻ LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE 143 | 0x01FB ǻ LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE 144 | 0x01FC Ǽ LATIN CAPITAL LETTER AE WITH ACUTE 145 | 0x01FD ǽ LATIN SMALL LETTER AE WITH ACUTE 146 | 0x01FE Ǿ LATIN CAPITAL LETTER O WITH STROKE AND ACUTE 147 | 0x01FF ǿ LATIN SMALL LETTER O WITH STROKE AND ACUTE 148 | 0x0200 Ȁ LATIN CAPITAL LETTER A WITH DOUBLE GRAVE 149 | 0x0201 ȁ LATIN SMALL LETTER A WITH DOUBLE GRAVE 150 | 0x0202 Ȃ LATIN CAPITAL LETTER A WITH INVERTED BREVE 151 | 0x0203 ȃ LATIN SMALL LETTER A WITH INVERTED BREVE 152 | 0x0204 Ȅ LATIN CAPITAL LETTER E WITH DOUBLE GRAVE 153 | 0x0205 ȅ LATIN SMALL LETTER E WITH DOUBLE GRAVE 154 | 0x0206 Ȇ LATIN CAPITAL LETTER E WITH INVERTED BREVE 155 | 0x0207 ȇ LATIN SMALL LETTER E WITH INVERTED BREVE 156 | 0x0208 Ȉ LATIN CAPITAL LETTER I WITH DOUBLE GRAVE 157 | 0x0209 ȉ LATIN SMALL LETTER I WITH DOUBLE GRAVE 158 | 0x020A Ȋ LATIN CAPITAL LETTER I WITH INVERTED BREVE 159 | 0x020B ȋ LATIN SMALL LETTER I WITH INVERTED BREVE 160 | 0x020C Ȍ LATIN CAPITAL LETTER O WITH DOUBLE GRAVE 161 | 0x020D ȍ LATIN SMALL LETTER O WITH DOUBLE GRAVE 162 | 0x020E Ȏ LATIN CAPITAL LETTER O WITH INVERTED BREVE 163 | 0x020F ȏ LATIN SMALL LETTER O WITH INVERTED BREVE 164 | 0x0210 Ȑ LATIN CAPITAL LETTER R WITH DOUBLE GRAVE 165 | 0x0211 ȑ LATIN SMALL LETTER R WITH DOUBLE GRAVE 166 | 0x0212 Ȓ LATIN CAPITAL LETTER R WITH INVERTED BREVE 167 | 0x0213 ȓ LATIN SMALL LETTER R WITH INVERTED BREVE 168 | 0x0214 Ȕ LATIN CAPITAL LETTER U WITH DOUBLE GRAVE 169 | 0x0215 ȕ LATIN SMALL LETTER U WITH DOUBLE GRAVE 170 | 0x0216 Ȗ LATIN CAPITAL LETTER U WITH INVERTED BREVE 171 | 0x0217 ȗ LATIN SMALL LETTER U WITH INVERTED BREVE 172 | 0x0218 Ș LATIN CAPITAL LETTER S WITH COMMA BELOW 173 | 0x0219 ș LATIN SMALL LETTER S WITH COMMA BELOW 174 | 0x021A Ț LATIN CAPITAL LETTER T WITH COMMA BELOW 175 | 0x021B ț LATIN SMALL LETTER T WITH COMMA BELOW 176 | 0x022A Ȫ LATIN CAPITAL LETTER O WITH DIAERESIS AND MACRON 177 | 0x022B ȫ LATIN SMALL LETTER O WITH DIAERESIS AND MACRON 178 | 0x022C Ȭ LATIN CAPITAL LETTER O WITH TILDE AND MACRON 179 | 0x022D ȭ LATIN SMALL LETTER O WITH TILDE AND MACRON 180 | 0x0230 Ȱ LATIN CAPITAL LETTER O WITH DOT ABOVE AND MACRON 181 | 0x0231 ȱ LATIN SMALL LETTER O WITH DOT ABOVE AND MACRON 182 | 0x0232 Ȳ LATIN CAPITAL LETTER Y WITH MACRON 183 | 0x0233 ȳ LATIN SMALL LETTER Y WITH MACRON 184 | 0x0237 ȷ LATIN SMALL LETTER DOTLESS J 185 | 0x0259 ə LATIN SMALL LETTER SCHWA 186 | 0x02B9 ʹ MODIFIER LETTER PRIME 187 | 0x02BA ʺ MODIFIER LETTER DOUBLE PRIME 188 | 0x02BC ʼ MODIFIER LETTER APOSTROPHE 189 | 0x02C7 ˇ CARON 190 | 0x02D8 ˘ BREVE 191 | 0x02D9 ˙ DOT ABOVE 192 | 0x02DB ˛ OGONEK 193 | 0x02DD ˝ DOUBLE ACUTE ACCENT 194 | 0x0300 ̀ COMBINING GRAVE ACCENT 195 | 0x0301 ́ COMBINING ACUTE ACCENT 196 | 0x0302 ̂ COMBINING CIRCUMFLEX ACCENT 197 | 0x0303 ̃ COMBINING TILDE 198 | 0x0304 ̄ COMBINING MACRON 199 | 0x0306 ̆ COMBINING BREVE 200 | 0x0307 ̇ COMBINING DOT ABOVE 201 | 0x0308 ̈ COMBINING DIAERESIS 202 | 0x0309 ̉ COMBINING HOOK ABOVE 203 | 0x030A ̊ COMBINING RING ABOVE 204 | 0x030B ̋ COMBINING DOUBLE ACUTE ACCENT 205 | 0x030C ̌ COMBINING CARON 206 | 0x030F ̏ COMBINING DOUBLE GRAVE ACCENT 207 | 0x0311 ̑ COMBINING INVERTED BREVE 208 | 0x0312 ̒ COMBINING TURNED COMMA ABOVE 209 | 0x031B ̛ COMBINING HORN 210 | 0x0323 ̣ COMBINING DOT BELOW 211 | 0x0324 ̤ COMBINING DIAERESIS BELOW 212 | 0x0326 ̦ COMBINING COMMA BELOW 213 | 0x0327 ̧ COMBINING CEDILLA 214 | 0x0328 ̨ COMBINING OGONEK 215 | 0x032E ̮ COMBINING BREVE BELOW 216 | 0x0331 ̱ COMBINING MACRON BELOW 217 | 0x0335 ̵ COMBINING SHORT STROKE OVERLAY 218 | 0x1E80 Ẁ LATIN CAPITAL LETTER W WITH GRAVE 219 | 0x1E81 ẁ LATIN SMALL LETTER W WITH GRAVE 220 | 0x1E82 Ẃ LATIN CAPITAL LETTER W WITH ACUTE 221 | 0x1E83 ẃ LATIN SMALL LETTER W WITH ACUTE 222 | 0x1E84 Ẅ LATIN CAPITAL LETTER W WITH DIAERESIS 223 | 0x1E85 ẅ LATIN SMALL LETTER W WITH DIAERESIS 224 | 0x1E9E ẞ LATIN CAPITAL LETTER SHARP S 225 | 0x1EA0 Ạ LATIN CAPITAL LETTER A WITH DOT BELOW 226 | 0x1EA1 ạ LATIN SMALL LETTER A WITH DOT BELOW 227 | 0x1EA2 Ả LATIN CAPITAL LETTER A WITH HOOK ABOVE 228 | 0x1EA3 ả LATIN SMALL LETTER A WITH HOOK ABOVE 229 | 0x1EA4 Ấ LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE 230 | 0x1EA5 ấ LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE 231 | 0x1EA6 Ầ LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE 232 | 0x1EA7 ầ LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE 233 | 0x1EA8 Ẩ LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE 234 | 0x1EA9 ẩ LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE 235 | 0x1EAA Ẫ LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE 236 | 0x1EAB ẫ LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE 237 | 0x1EAC Ậ LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW 238 | 0x1EAD ậ LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW 239 | 0x1EAE Ắ LATIN CAPITAL LETTER A WITH BREVE AND ACUTE 240 | 0x1EAF ắ LATIN SMALL LETTER A WITH BREVE AND ACUTE 241 | 0x1EB0 Ằ LATIN CAPITAL LETTER A WITH BREVE AND GRAVE 242 | 0x1EB1 ằ LATIN SMALL LETTER A WITH BREVE AND GRAVE 243 | 0x1EB2 Ẳ LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE 244 | 0x1EB3 ẳ LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE 245 | 0x1EB4 Ẵ LATIN CAPITAL LETTER A WITH BREVE AND TILDE 246 | 0x1EB5 ẵ LATIN SMALL LETTER A WITH BREVE AND TILDE 247 | 0x1EB6 Ặ LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW 248 | 0x1EB7 ặ LATIN SMALL LETTER A WITH BREVE AND DOT BELOW 249 | 0x1EB8 Ẹ LATIN CAPITAL LETTER E WITH DOT BELOW 250 | 0x1EB9 ẹ LATIN SMALL LETTER E WITH DOT BELOW 251 | 0x1EBA Ẻ LATIN CAPITAL LETTER E WITH HOOK ABOVE 252 | 0x1EBB ẻ LATIN SMALL LETTER E WITH HOOK ABOVE 253 | 0x1EBC Ẽ LATIN CAPITAL LETTER E WITH TILDE 254 | 0x1EBD ẽ LATIN SMALL LETTER E WITH TILDE 255 | 0x1EBE Ế LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE 256 | 0x1EBF ế LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE 257 | 0x1EC0 Ề LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE 258 | 0x1EC1 ề LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE 259 | 0x1EC2 Ể LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE 260 | 0x1EC3 ể LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE 261 | 0x1EC4 Ễ LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE 262 | 0x1EC5 ễ LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE 263 | 0x1EC6 Ệ LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW 264 | 0x1EC7 ệ LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW 265 | 0x1EC8 Ỉ LATIN CAPITAL LETTER I WITH HOOK ABOVE 266 | 0x1EC9 ỉ LATIN SMALL LETTER I WITH HOOK ABOVE 267 | 0x1ECA Ị LATIN CAPITAL LETTER I WITH DOT BELOW 268 | 0x1ECB ị LATIN SMALL LETTER I WITH DOT BELOW 269 | 0x1ECC Ọ LATIN CAPITAL LETTER O WITH DOT BELOW 270 | 0x1ECD ọ LATIN SMALL LETTER O WITH DOT BELOW 271 | 0x1ECE Ỏ LATIN CAPITAL LETTER O WITH HOOK ABOVE 272 | 0x1ECF ỏ LATIN SMALL LETTER O WITH HOOK ABOVE 273 | 0x1ED0 Ố LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE 274 | 0x1ED1 ố LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE 275 | 0x1ED2 Ồ LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE 276 | 0x1ED3 ồ LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE 277 | 0x1ED4 Ổ LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE 278 | 0x1ED5 ổ LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE 279 | 0x1ED6 Ỗ LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE 280 | 0x1ED7 ỗ LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE 281 | 0x1ED8 Ộ LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW 282 | 0x1ED9 ộ LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW 283 | 0x1EDA Ớ LATIN CAPITAL LETTER O WITH HORN AND ACUTE 284 | 0x1EDB ớ LATIN SMALL LETTER O WITH HORN AND ACUTE 285 | 0x1EDC Ờ LATIN CAPITAL LETTER O WITH HORN AND GRAVE 286 | 0x1EDD ờ LATIN SMALL LETTER O WITH HORN AND GRAVE 287 | 0x1EDE Ở LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE 288 | 0x1EDF ở LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE 289 | 0x1EE0 Ỡ LATIN CAPITAL LETTER O WITH HORN AND TILDE 290 | 0x1EE1 ỡ LATIN SMALL LETTER O WITH HORN AND TILDE 291 | 0x1EE2 Ợ LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW 292 | 0x1EE3 ợ LATIN SMALL LETTER O WITH HORN AND DOT BELOW 293 | 0x1EE4 Ụ LATIN CAPITAL LETTER U WITH DOT BELOW 294 | 0x1EE5 ụ LATIN SMALL LETTER U WITH DOT BELOW 295 | 0x1EE6 Ủ LATIN CAPITAL LETTER U WITH HOOK ABOVE 296 | 0x1EE7 ủ LATIN SMALL LETTER U WITH HOOK ABOVE 297 | 0x1EE8 Ứ LATIN CAPITAL LETTER U WITH HORN AND ACUTE 298 | 0x1EE9 ứ LATIN SMALL LETTER U WITH HORN AND ACUTE 299 | 0x1EEA Ừ LATIN CAPITAL LETTER U WITH HORN AND GRAVE 300 | 0x1EEB ừ LATIN SMALL LETTER U WITH HORN AND GRAVE 301 | 0x1EEC Ử LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE 302 | 0x1EED ử LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE 303 | 0x1EEE Ữ LATIN CAPITAL LETTER U WITH HORN AND TILDE 304 | 0x1EEF ữ LATIN SMALL LETTER U WITH HORN AND TILDE 305 | 0x1EF0 Ự LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW 306 | 0x1EF1 ự LATIN SMALL LETTER U WITH HORN AND DOT BELOW 307 | 0x1EF2 Ỳ LATIN CAPITAL LETTER Y WITH GRAVE 308 | 0x1EF3 ỳ LATIN SMALL LETTER Y WITH GRAVE 309 | 0x1EF4 Ỵ LATIN CAPITAL LETTER Y WITH DOT BELOW 310 | 0x1EF5 ỵ LATIN SMALL LETTER Y WITH DOT BELOW 311 | 0x1EF6 Ỷ LATIN CAPITAL LETTER Y WITH HOOK ABOVE 312 | 0x1EF7 ỷ LATIN SMALL LETTER Y WITH HOOK ABOVE 313 | 0x1EF8 Ỹ LATIN CAPITAL LETTER Y WITH TILDE 314 | 0x1EF9 ỹ LATIN SMALL LETTER Y WITH TILDE 315 | 0x2010 ‐ HYPHEN 316 | 0x2020 † DAGGER 317 | 0x2021 ‡ DOUBLE DAGGER 318 | 0x2030 ‰ PER MILLE SIGN 319 | 0x2032 ′ PRIME 320 | 0x2033 ″ DOUBLE PRIME 321 | 0x2052 ⁒ COMMERCIAL MINUS SIGN 322 | 0x20A1 ₡ COLON SIGN 323 | 0x20A3 ₣ FRENCH FRANC SIGN 324 | 0x20A4 ₤ LIRA SIGN 325 | 0x20A6 ₦ NAIRA SIGN 326 | 0x20A7 ₧ PESETA SIGN 327 | 0x20A9 ₩ WON SIGN 328 | 0x20AB ₫ DONG SIGN 329 | 0x20AD ₭ KIP SIGN 330 | 0x20B1 ₱ PESO SIGN 331 | 0x20B2 ₲ GUARANI SIGN 332 | 0x20B5 ₵ CEDI SIGN 333 | 0x20B9 ₹ INDIAN RUPEE SIGN 334 | 0x20BA ₺ TURKISH LIRA SIGN 335 | 0x20BC ₼ MANAT SIGN 336 | 0x20BD ₽ RUBLE SIGN 337 | 0x2116 № NUMERO SIGN 338 | 0x2122 ™ TRADE MARK SIGN 339 | 0x2219 ∙ BULLET OPERATOR 340 | 0x2248 ≈ ALMOST EQUAL TO 341 | 0x2260 ≠ NOT EQUAL TO 342 | 0x2264 ≤ LESS-THAN OR EQUAL TO 343 | 0x2265 ≥ GREATER-THAN OR EQUAL TO 344 | 0x27E8 ⟨ MATHEMATICAL LEFT ANGLE BRACKET 345 | 0x27E9 ⟩ MATHEMATICAL RIGHT ANGLE BRACKET 346 | 0xFB01 fi LATIN SMALL LIGATURE FI 347 | 0xFB02 fl LATIN SMALL LIGATURE FL 348 | f_f 349 | f_f_i 350 | f_f_l 351 | circumflexcomb_acutecomb 352 | circumflexcomb_gravecomb 353 | circumflexcomb_hookabovecomb 354 | circumflexcomb_tildecomb 355 | brevecomb_acutecomb 356 | brevecomb_gravecomb 357 | brevecomb_hookabovecomb 358 | brevecomb_tildecomb 359 | idotaccent 360 | caroncomb.alt 361 | zero.lf 362 | one.lf 363 | two.lf 364 | three.lf 365 | four.lf 366 | five.lf 367 | six.lf 368 | seven.lf 369 | eight.lf 370 | nine.lf 371 | periodcentered.loclCAT 372 | -------------------------------------------------------------------------------- /docs/charsets/nam/arabic_unique-glyphs.nam: -------------------------------------------------------------------------------- 1 | # 2011-01-03 DC generated by namelist.py and the Ubuntu Font Family 2 | # 2014-09-03 Arabic generated by Roozbeh Pournader 3 | # 2017-11-22 Added Pashto and Sindhi 4 | # 5 | # Supports the five languages Arabic, Persian, Urdu, Pashto, and Sindhi. The 6 | # presentation forms are added since they are not expected to add to the font 7 | # size much, but could help with displaying still-too-common text encoded using 8 | # presentation forms instead of ZWJ and ZWNJ. 9 | 0x0600 # ARABIC NUMBER SIGN 10 | 0x0601 # ARABIC SIGN SANAH 11 | 0x0602 # ARABIC FOOTNOTE MARKER 12 | 0x0603 # ARABIC SIGN SAFHA 13 | 0x060B # AFGHANI SIGN 14 | 0x060C # ARABIC COMMA 15 | 0x060D # ARABIC DATE SEPARATOR 16 | 0x061B # ARABIC SEMICOLON 17 | 0x061E # ARABIC TRIPLE DOT PUNCTUATION MARK 18 | 0x061F # ARABIC QUESTION MARK 19 | 0x0621 # ARABIC LETTER HAMZA 20 | 0x0622 # ARABIC LETTER ALEF WITH MADDA ABOVE 21 | 0x0623 # ARABIC LETTER ALEF WITH HAMZA ABOVE 22 | 0x0624 # ARABIC LETTER WAW WITH HAMZA ABOVE 23 | 0x0625 # ARABIC LETTER ALEF WITH HAMZA BELOW 24 | 0x0626 # ARABIC LETTER YEH WITH HAMZA ABOVE 25 | 0x0627 # ARABIC LETTER ALEF 26 | 0x0628 # ARABIC LETTER BEH 27 | 0x0629 # ARABIC LETTER TEH MARBUTA 28 | 0x062A # ARABIC LETTER TEH 29 | 0x062B # ARABIC LETTER THEH 30 | 0x062C # ARABIC LETTER JEEM 31 | 0x062D # ARABIC LETTER HAH 32 | 0x062E # ARABIC LETTER KHAH 33 | 0x062F # ARABIC LETTER DAL 34 | 0x0630 # ARABIC LETTER THAL 35 | 0x0631 # ARABIC LETTER REH 36 | 0x0632 # ARABIC LETTER ZAIN 37 | 0x0633 # ARABIC LETTER SEEN 38 | 0x0634 # ARABIC LETTER SHEEN 39 | 0x0635 # ARABIC LETTER SAD 40 | 0x0636 # ARABIC LETTER DAD 41 | 0x0637 # ARABIC LETTER TAH 42 | 0x0638 # ARABIC LETTER ZAH 43 | 0x0639 # ARABIC LETTER AIN 44 | 0x063A # ARABIC LETTER GHAIN 45 | 0x0640 # ARABIC TATWEEL 46 | 0x0641 # ARABIC LETTER FEH 47 | 0x0642 # ARABIC LETTER QAF 48 | 0x0643 # ARABIC LETTER KAF 49 | 0x0644 # ARABIC LETTER LAM 50 | 0x0645 # ARABIC LETTER MEEM 51 | 0x0646 # ARABIC LETTER NOON 52 | 0x0647 # ARABIC LETTER HEH 53 | 0x0648 # ARABIC LETTER WAW 54 | 0x0649 # ARABIC LETTER ALEF MAKSURA 55 | 0x064A # ARABIC LETTER YEH 56 | 0x064B # ARABIC FATHATAN 57 | 0x064C # ARABIC DAMMATAN 58 | 0x064D # ARABIC KASRATAN 59 | 0x064E # ARABIC FATHA 60 | 0x064F # ARABIC DAMMA 61 | 0x0650 # ARABIC KASRA 62 | 0x0651 # ARABIC SHADDA 63 | 0x0652 # ARABIC SUKUN 64 | 0x0653 # ARABIC MADDAH ABOVE 65 | 0x0654 # ARABIC HAMZA ABOVE 66 | 0x0655 # ARABIC HAMZA BELOW 67 | 0x0656 # ARABIC SUBSCRIPT ALEF 68 | 0x0657 # ARABIC INVERTED DAMMA 69 | 0x0658 # ARABIC MARK NOON GHUNNA 70 | 0x0659 # ARABIC ZWARAKAY 71 | 0x0660 # ARABIC-INDIC DIGIT ZERO 72 | 0x0661 # ARABIC-INDIC DIGIT ONE 73 | 0x0662 # ARABIC-INDIC DIGIT TWO 74 | 0x0663 # ARABIC-INDIC DIGIT THREE 75 | 0x0664 # ARABIC-INDIC DIGIT FOUR 76 | 0x0665 # ARABIC-INDIC DIGIT FIVE 77 | 0x0666 # ARABIC-INDIC DIGIT SIX 78 | 0x0667 # ARABIC-INDIC DIGIT SEVEN 79 | 0x0668 # ARABIC-INDIC DIGIT EIGHT 80 | 0x0669 # ARABIC-INDIC DIGIT NINE 81 | 0x066A # ARABIC PERCENT SIGN 82 | 0x066B # ARABIC DECIMAL SEPARATOR 83 | 0x066C # ARABIC THOUSANDS SEPARATOR 84 | 0x066D # ARABIC FIVE POINTED STAR 85 | 0x0670 # ARABIC LETTER SUPERSCRIPT ALEF 86 | 0x0671 # ARABIC LETTER ALEF WASLA 87 | 0x0679 # ARABIC LETTER TTEH 88 | 0x067A # ARABIC LETTER TTEHEH 89 | 0x067B # ARABIC LETTER BEEH 90 | 0x067C # ARABIC LETTER TEH WITH RING 91 | 0x067D # ARABIC LETTER TEH WITH THREE DOTS ABOVE DOWNWARDS 92 | 0x067E # ARABIC LETTER PEH 93 | 0x067F # ARABIC LETTER TEHEH 94 | 0x0680 # ARABIC LETTER BEHEH 95 | 0x0681 # ARABIC LETTER HAH WITH HAMZA ABOVE 96 | 0x0683 # ARABIC LETTER NYEH 97 | 0x0684 # ARABIC LETTER DYEH 98 | 0x0685 # ARABIC LETTER HAH WITH THREE DOTS ABOVE 99 | 0x0686 # ARABIC LETTER TCHEH 100 | 0x0687 # ARABIC LETTER TCHEHEH 101 | 0x0688 # ARABIC LETTER DDAL 102 | 0x0689 # ARABIC LETTER DAL WITH RING 103 | 0x068A # ARABIC LETTER DAL WITH DOT BELOW 104 | 0x068C # ARABIC LETTER DAHAL 105 | 0x068D # ARABIC LETTER DDAHAL 106 | 0x068F # ARABIC LETTER DAL WITH THREE DOTS ABOVE DOWNWARDS 107 | 0x0691 # ARABIC LETTER RREH 108 | 0x0693 # ARABIC LETTER REH WITH RING 109 | 0x0696 # ARABIC LETTER REH WITH DOT BELOW AND DOT ABOVE 110 | 0x0698 # ARABIC LETTER JEH 111 | 0x0699 # ARABIC LETTER REH WITH FOUR DOTS ABOVE 112 | 0x069A # ARABIC LETTER SEEN WITH DOT BELOW AND DOT ABOVE 113 | 0x069C # ARABIC LETTER SEEN WITH THREE DOTS BELOW AND THREE DOTS ABOVE 114 | 0x06A2 # ARABIC LETTER FEH WITH DOT MOVED BELOW 115 | 0x06A4 # ARABIC LETTER VEH 116 | 0x06A5 # ARABIC LETTER FEH WITH THREE DOTS BELOW 117 | 0x06A6 # ARABIC LETTER PEHEH 118 | 0x06A7 # ARABIC LETTER QAF WITH DOT ABOVE 119 | 0x06A8 # ARABIC LETTER QAF WITH THREE DOTS ABOVE 120 | 0x06A9 # ARABIC LETTER KEHEH 121 | 0x06AA # ARABIC LETTER SWASH KAF 122 | 0x06AB # ARABIC LETTER KAF WITH RING 123 | 0x06AF # ARABIC LETTER GAF 124 | 0x06B1 # ARABIC LETTER NGOEH 125 | 0x06B3 # ARABIC LETTER GUEH 126 | 0x06BA # ARABIC LETTER NOON GHUNNA 127 | 0x06BB # ARABIC LETTER RNOON 128 | 0x06BC # ARABIC LETTER NOON WITH RING 129 | 0x06BE # ARABIC LETTER HEH DOACHASHMEE 130 | 0x06C0 # ARABIC LETTER HEH WITH YEH ABOVE 131 | 0x06C1 # ARABIC LETTER HEH GOAL 132 | 0x06C2 # ARABIC LETTER HEH GOAL WITH HAMZA ABOVE 133 | 0x06C3 # ARABIC LETTER TEH MARBUTA GOAL 134 | 0x06CC # ARABIC LETTER FARSI YEH 135 | 0x06CD # ARABIC LETTER YEH WITH TAIL 136 | 0x06D0 # ARABIC LETTER E 137 | 0x06D2 # ARABIC LETTER YEH BARREE 138 | 0x06D3 # ARABIC LETTER YEH BARREE WITH HAMZA ABOVE 139 | 0x06D4 # ARABIC FULL STOP 140 | 0x06DD # ARABIC END OF AYAH 141 | 0x06DE # ARABIC START OF RUB EL HIZB 142 | 0x06E9 # ARABIC PLACE OF SAJDAH 143 | 0x06F0 # EXTENDED ARABIC-INDIC DIGIT ZERO 144 | 0x06F1 # EXTENDED ARABIC-INDIC DIGIT ONE 145 | 0x06F2 # EXTENDED ARABIC-INDIC DIGIT TWO 146 | 0x06F3 # EXTENDED ARABIC-INDIC DIGIT THREE 147 | 0x06F4 # EXTENDED ARABIC-INDIC DIGIT FOUR 148 | 0x06F5 # EXTENDED ARABIC-INDIC DIGIT FIVE 149 | 0x06F6 # EXTENDED ARABIC-INDIC DIGIT SIX 150 | 0x06F7 # EXTENDED ARABIC-INDIC DIGIT SEVEN 151 | 0x06F8 # EXTENDED ARABIC-INDIC DIGIT EIGHT 152 | 0x06F9 # EXTENDED ARABIC-INDIC DIGIT NINE 153 | 0x06FD # ARABIC SIGN SINDHI AMPERSAND 154 | 0x06FE # ARABIC SIGN SINDHI POSTPOSITION MEN 155 | 0x200C # ZERO WIDTH NON-JOINER 156 | 0x200D # ZERO WIDTH JOINER 157 | 0x200E # LEFT-TO-RIGHT MARK 158 | 0x2010 # HYPHEN 159 | 0x2011 # NON-BREAKING HYPHEN 160 | 0x204F # REVERSED SEMICOLON 161 | 0x2E41 # REVERSED COMMA 162 | 0xFB50 # ARABIC LETTER ALEF WASLA ISOLATED FORM 163 | 0xFB51 # ARABIC LETTER ALEF WASLA FINAL FORM 164 | 0xFB52 # ARABIC LETTER BEEH ISOLATED FORM 165 | 0xFB53 # ARABIC LETTER BEEH FINAL FORM 166 | 0xFB54 # ARABIC LETTER BEEH INITIAL FORM 167 | 0xFB55 # ARABIC LETTER BEEH MEDIAL FORM 168 | 0xFB56 # ARABIC LETTER PEH ISOLATED FORM 169 | 0xFB57 # ARABIC LETTER PEH FINAL FORM 170 | 0xFB58 # ARABIC LETTER PEH INITIAL FORM 171 | 0xFB59 # ARABIC LETTER PEH MEDIAL FORM 172 | 0xFB5A # ARABIC LETTER BEHEH ISOLATED FORM 173 | 0xFB5B # ARABIC LETTER BEHEH FINAL FORM 174 | 0xFB5C # ARABIC LETTER BEHEH INITIAL FORM 175 | 0xFB5D # ARABIC LETTER BEHEH MEDIAL FORM 176 | 0xFB5E # ARABIC LETTER TTEHEH ISOLATED FORM 177 | 0xFB5F # ARABIC LETTER TTEHEH FINAL FORM 178 | 0xFB60 # ARABIC LETTER TTEHEH INITIAL FORM 179 | 0xFB61 # ARABIC LETTER TTEHEH MEDIAL FORM 180 | 0xFB62 # ARABIC LETTER TEHEH ISOLATED FORM 181 | 0xFB63 # ARABIC LETTER TEHEH FINAL FORM 182 | 0xFB64 # ARABIC LETTER TEHEH INITIAL FORM 183 | 0xFB65 # ARABIC LETTER TEHEH MEDIAL FORM 184 | 0xFB66 # ARABIC LETTER TTEH ISOLATED FORM 185 | 0xFB67 # ARABIC LETTER TTEH FINAL FORM 186 | 0xFB68 # ARABIC LETTER TTEH INITIAL FORM 187 | 0xFB69 # ARABIC LETTER TTEH MEDIAL FORM 188 | 0xFB6A # ARABIC LETTER VEH ISOLATED FORM 189 | 0xFB6B # ARABIC LETTER VEH FINAL FORM 190 | 0xFB6C # ARABIC LETTER VEH INITIAL FORM 191 | 0xFB6D # ARABIC LETTER VEH MEDIAL FORM 192 | 0xFB6E # ARABIC LETTER PEHEH ISOLATED FORM 193 | 0xFB6F # ARABIC LETTER PEHEH FINAL FORM 194 | 0xFB70 # ARABIC LETTER PEHEH INITIAL FORM 195 | 0xFB71 # ARABIC LETTER PEHEH MEDIAL FORM 196 | 0xFB72 # ARABIC LETTER DYEH ISOLATED FORM 197 | 0xFB73 # ARABIC LETTER DYEH FINAL FORM 198 | 0xFB74 # ARABIC LETTER DYEH INITIAL FORM 199 | 0xFB75 # ARABIC LETTER DYEH MEDIAL FORM 200 | 0xFB76 # ARABIC LETTER NYEH ISOLATED FORM 201 | 0xFB77 # ARABIC LETTER NYEH FINAL FORM 202 | 0xFB78 # ARABIC LETTER NYEH INITIAL FORM 203 | 0xFB79 # ARABIC LETTER NYEH MEDIAL FORM 204 | 0xFB7A # ARABIC LETTER TCHEH ISOLATED FORM 205 | 0xFB7B # ARABIC LETTER TCHEH FINAL FORM 206 | 0xFB7C # ARABIC LETTER TCHEH INITIAL FORM 207 | 0xFB7D # ARABIC LETTER TCHEH MEDIAL FORM 208 | 0xFB7E # ARABIC LETTER TCHEHEH ISOLATED FORM 209 | 0xFB7F # ARABIC LETTER TCHEHEH FINAL FORM 210 | 0xFB80 # ARABIC LETTER TCHEHEH INITIAL FORM 211 | 0xFB81 # ARABIC LETTER TCHEHEH MEDIAL FORM 212 | 0xFB82 # ARABIC LETTER DDAHAL ISOLATED FORM 213 | 0xFB83 # ARABIC LETTER DDAHAL FINAL FORM 214 | 0xFB84 # ARABIC LETTER DAHAL ISOLATED FORM 215 | 0xFB85 # ARABIC LETTER DAHAL FINAL FORM 216 | 0xFB88 # ARABIC LETTER DDAL ISOLATED FORM 217 | 0xFB89 # ARABIC LETTER DDAL FINAL FORM 218 | 0xFB8A # ARABIC LETTER JEH ISOLATED FORM 219 | 0xFB8B # ARABIC LETTER JEH FINAL FORM 220 | 0xFB8C # ARABIC LETTER RREH ISOLATED FORM 221 | 0xFB8D # ARABIC LETTER RREH FINAL FORM 222 | 0xFB8E # ARABIC LETTER KEHEH ISOLATED FORM 223 | 0xFB8F # ARABIC LETTER KEHEH FINAL FORM 224 | 0xFB90 # ARABIC LETTER KEHEH INITIAL FORM 225 | 0xFB91 # ARABIC LETTER KEHEH MEDIAL FORM 226 | 0xFB92 # ARABIC LETTER GAF ISOLATED FORM 227 | 0xFB93 # ARABIC LETTER GAF FINAL FORM 228 | 0xFB94 # ARABIC LETTER GAF INITIAL FORM 229 | 0xFB95 # ARABIC LETTER GAF MEDIAL FORM 230 | 0xFB96 # ARABIC LETTER GUEH ISOLATED FORM 231 | 0xFB97 # ARABIC LETTER GUEH FINAL FORM 232 | 0xFB98 # ARABIC LETTER GUEH INITIAL FORM 233 | 0xFB99 # ARABIC LETTER GUEH MEDIAL FORM 234 | 0xFB9A # ARABIC LETTER NGOEH ISOLATED FORM 235 | 0xFB9B # ARABIC LETTER NGOEH FINAL FORM 236 | 0xFB9C # ARABIC LETTER NGOEH INITIAL FORM 237 | 0xFB9D # ARABIC LETTER NGOEH MEDIAL FORM 238 | 0xFB9E # ARABIC LETTER NOON GHUNNA ISOLATED FORM 239 | 0xFB9F # ARABIC LETTER NOON GHUNNA FINAL FORM 240 | 0xFBA0 # ARABIC LETTER RNOON ISOLATED FORM 241 | 0xFBA1 # ARABIC LETTER RNOON FINAL FORM 242 | 0xFBA2 # ARABIC LETTER RNOON INITIAL FORM 243 | 0xFBA3 # ARABIC LETTER RNOON MEDIAL FORM 244 | 0xFBA4 # ARABIC LETTER HEH WITH YEH ABOVE ISOLATED FORM 245 | 0xFBA5 # ARABIC LETTER HEH WITH YEH ABOVE FINAL FORM 246 | 0xFBA6 # ARABIC LETTER HEH GOAL ISOLATED FORM 247 | 0xFBA7 # ARABIC LETTER HEH GOAL FINAL FORM 248 | 0xFBA8 # ARABIC LETTER HEH GOAL INITIAL FORM 249 | 0xFBA9 # ARABIC LETTER HEH GOAL MEDIAL FORM 250 | 0xFBAA # ARABIC LETTER HEH DOACHASHMEE ISOLATED FORM 251 | 0xFBAB # ARABIC LETTER HEH DOACHASHMEE FINAL FORM 252 | 0xFBAC # ARABIC LETTER HEH DOACHASHMEE INITIAL FORM 253 | 0xFBAD # ARABIC LETTER HEH DOACHASHMEE MEDIAL FORM 254 | 0xFBAE # ARABIC LETTER YEH BARREE ISOLATED FORM 255 | 0xFBAF # ARABIC LETTER YEH BARREE FINAL FORM 256 | 0xFBB0 # ARABIC LETTER YEH BARREE WITH HAMZA ABOVE ISOLATED FORM 257 | 0xFBB1 # ARABIC LETTER YEH BARREE WITH HAMZA ABOVE FINAL FORM 258 | 0xFBE4 # ARABIC LETTER E ISOLATED FORM 259 | 0xFBE5 # ARABIC LETTER E FINAL FORM 260 | 0xFBE6 # ARABIC LETTER E INITIAL FORM 261 | 0xFBE7 # ARABIC LETTER E MEDIAL FORM 262 | 0xFBE8 # ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA INITIAL FORM 263 | 0xFBE9 # ARABIC LETTER UIGHUR KAZAKH KIRGHIZ ALEF MAKSURA MEDIAL FORM 264 | 0xFBFC # ARABIC LETTER FARSI YEH ISOLATED FORM 265 | 0xFBFD # ARABIC LETTER FARSI YEH FINAL FORM 266 | 0xFBFE # ARABIC LETTER FARSI YEH INITIAL FORM 267 | 0xFBFF # ARABIC LETTER FARSI YEH MEDIAL FORM 268 | 0xFD3E # ORNATE LEFT PARENTHESIS 269 | 0xFD3F # ORNATE RIGHT PARENTHESIS 270 | 0xFDF2 # ARABIC LIGATURE ALLAH ISOLATED FORM 271 | 0xFDFA # ARABIC LIGATURE SALLALLAHOU ALAYHE WASALLAM 272 | 0xFDFC # RIAL SIGN 273 | 0xFDFD # ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM 274 | 0xFE80 # ARABIC LETTER HAMZA ISOLATED FORM 275 | 0xFE81 # ARABIC LETTER ALEF WITH MADDA ABOVE ISOLATED FORM 276 | 0xFE82 # ARABIC LETTER ALEF WITH MADDA ABOVE FINAL FORM 277 | 0xFE83 # ARABIC LETTER ALEF WITH HAMZA ABOVE ISOLATED FORM 278 | 0xFE84 # ARABIC LETTER ALEF WITH HAMZA ABOVE FINAL FORM 279 | 0xFE85 # ARABIC LETTER WAW WITH HAMZA ABOVE ISOLATED FORM 280 | 0xFE86 # ARABIC LETTER WAW WITH HAMZA ABOVE FINAL FORM 281 | 0xFE87 # ARABIC LETTER ALEF WITH HAMZA BELOW ISOLATED FORM 282 | 0xFE88 # ARABIC LETTER ALEF WITH HAMZA BELOW FINAL FORM 283 | 0xFE89 # ARABIC LETTER YEH WITH HAMZA ABOVE ISOLATED FORM 284 | 0xFE8A # ARABIC LETTER YEH WITH HAMZA ABOVE FINAL FORM 285 | 0xFE8B # ARABIC LETTER YEH WITH HAMZA ABOVE INITIAL FORM 286 | 0xFE8C # ARABIC LETTER YEH WITH HAMZA ABOVE MEDIAL FORM 287 | 0xFE8D # ARABIC LETTER ALEF ISOLATED FORM 288 | 0xFE8E # ARABIC LETTER ALEF FINAL FORM 289 | 0xFE8F # ARABIC LETTER BEH ISOLATED FORM 290 | 0xFE90 # ARABIC LETTER BEH FINAL FORM 291 | 0xFE91 # ARABIC LETTER BEH INITIAL FORM 292 | 0xFE92 # ARABIC LETTER BEH MEDIAL FORM 293 | 0xFE93 # ARABIC LETTER TEH MARBUTA ISOLATED FORM 294 | 0xFE94 # ARABIC LETTER TEH MARBUTA FINAL FORM 295 | 0xFE95 # ARABIC LETTER TEH ISOLATED FORM 296 | 0xFE96 # ARABIC LETTER TEH FINAL FORM 297 | 0xFE97 # ARABIC LETTER TEH INITIAL FORM 298 | 0xFE98 # ARABIC LETTER TEH MEDIAL FORM 299 | 0xFE99 # ARABIC LETTER THEH ISOLATED FORM 300 | 0xFE9A # ARABIC LETTER THEH FINAL FORM 301 | 0xFE9B # ARABIC LETTER THEH INITIAL FORM 302 | 0xFE9C # ARABIC LETTER THEH MEDIAL FORM 303 | 0xFE9D # ARABIC LETTER JEEM ISOLATED FORM 304 | 0xFE9E # ARABIC LETTER JEEM FINAL FORM 305 | 0xFE9F # ARABIC LETTER JEEM INITIAL FORM 306 | 0xFEA0 # ARABIC LETTER JEEM MEDIAL FORM 307 | 0xFEA1 # ARABIC LETTER HAH ISOLATED FORM 308 | 0xFEA2 # ARABIC LETTER HAH FINAL FORM 309 | 0xFEA3 # ARABIC LETTER HAH INITIAL FORM 310 | 0xFEA4 # ARABIC LETTER HAH MEDIAL FORM 311 | 0xFEA5 # ARABIC LETTER KHAH ISOLATED FORM 312 | 0xFEA6 # ARABIC LETTER KHAH FINAL FORM 313 | 0xFEA7 # ARABIC LETTER KHAH INITIAL FORM 314 | 0xFEA8 # ARABIC LETTER KHAH MEDIAL FORM 315 | 0xFEA9 # ARABIC LETTER DAL ISOLATED FORM 316 | 0xFEAA # ARABIC LETTER DAL FINAL FORM 317 | 0xFEAB # ARABIC LETTER THAL ISOLATED FORM 318 | 0xFEAC # ARABIC LETTER THAL FINAL FORM 319 | 0xFEAD # ARABIC LETTER REH ISOLATED FORM 320 | 0xFEAE # ARABIC LETTER REH FINAL FORM 321 | 0xFEAF # ARABIC LETTER ZAIN ISOLATED FORM 322 | 0xFEB0 # ARABIC LETTER ZAIN FINAL FORM 323 | 0xFEB1 # ARABIC LETTER SEEN ISOLATED FORM 324 | 0xFEB2 # ARABIC LETTER SEEN FINAL FORM 325 | 0xFEB3 # ARABIC LETTER SEEN INITIAL FORM 326 | 0xFEB4 # ARABIC LETTER SEEN MEDIAL FORM 327 | 0xFEB5 # ARABIC LETTER SHEEN ISOLATED FORM 328 | 0xFEB6 # ARABIC LETTER SHEEN FINAL FORM 329 | 0xFEB7 # ARABIC LETTER SHEEN INITIAL FORM 330 | 0xFEB8 # ARABIC LETTER SHEEN MEDIAL FORM 331 | 0xFEB9 # ARABIC LETTER SAD ISOLATED FORM 332 | 0xFEBA # ARABIC LETTER SAD FINAL FORM 333 | 0xFEBB # ARABIC LETTER SAD INITIAL FORM 334 | 0xFEBC # ARABIC LETTER SAD MEDIAL FORM 335 | 0xFEBD # ARABIC LETTER DAD ISOLATED FORM 336 | 0xFEBE # ARABIC LETTER DAD FINAL FORM 337 | 0xFEBF # ARABIC LETTER DAD INITIAL FORM 338 | 0xFEC0 # ARABIC LETTER DAD MEDIAL FORM 339 | 0xFEC1 # ARABIC LETTER TAH ISOLATED FORM 340 | 0xFEC2 # ARABIC LETTER TAH FINAL FORM 341 | 0xFEC3 # ARABIC LETTER TAH INITIAL FORM 342 | 0xFEC4 # ARABIC LETTER TAH MEDIAL FORM 343 | 0xFEC5 # ARABIC LETTER ZAH ISOLATED FORM 344 | 0xFEC6 # ARABIC LETTER ZAH FINAL FORM 345 | 0xFEC7 # ARABIC LETTER ZAH INITIAL FORM 346 | 0xFEC8 # ARABIC LETTER ZAH MEDIAL FORM 347 | 0xFEC9 # ARABIC LETTER AIN ISOLATED FORM 348 | 0xFECA # ARABIC LETTER AIN FINAL FORM 349 | 0xFECB # ARABIC LETTER AIN INITIAL FORM 350 | 0xFECC # ARABIC LETTER AIN MEDIAL FORM 351 | 0xFECD # ARABIC LETTER GHAIN ISOLATED FORM 352 | 0xFECE # ARABIC LETTER GHAIN FINAL FORM 353 | 0xFECF # ARABIC LETTER GHAIN INITIAL FORM 354 | 0xFED0 # ARABIC LETTER GHAIN MEDIAL FORM 355 | 0xFED1 # ARABIC LETTER FEH ISOLATED FORM 356 | 0xFED2 # ARABIC LETTER FEH FINAL FORM 357 | 0xFED3 # ARABIC LETTER FEH INITIAL FORM 358 | 0xFED4 # ARABIC LETTER FEH MEDIAL FORM 359 | 0xFED5 # ARABIC LETTER QAF ISOLATED FORM 360 | 0xFED6 # ARABIC LETTER QAF FINAL FORM 361 | 0xFED7 # ARABIC LETTER QAF INITIAL FORM 362 | 0xFED8 # ARABIC LETTER QAF MEDIAL FORM 363 | 0xFED9 # ARABIC LETTER KAF ISOLATED FORM 364 | 0xFEDA # ARABIC LETTER KAF FINAL FORM 365 | 0xFEDB # ARABIC LETTER KAF INITIAL FORM 366 | 0xFEDC # ARABIC LETTER KAF MEDIAL FORM 367 | 0xFEDD # ARABIC LETTER LAM ISOLATED FORM 368 | 0xFEDE # ARABIC LETTER LAM FINAL FORM 369 | 0xFEDF # ARABIC LETTER LAM INITIAL FORM 370 | 0xFEE0 # ARABIC LETTER LAM MEDIAL FORM 371 | 0xFEE1 # ARABIC LETTER MEEM ISOLATED FORM 372 | 0xFEE2 # ARABIC LETTER MEEM FINAL FORM 373 | 0xFEE3 # ARABIC LETTER MEEM INITIAL FORM 374 | 0xFEE4 # ARABIC LETTER MEEM MEDIAL FORM 375 | 0xFEE5 # ARABIC LETTER NOON ISOLATED FORM 376 | 0xFEE6 # ARABIC LETTER NOON FINAL FORM 377 | 0xFEE7 # ARABIC LETTER NOON INITIAL FORM 378 | 0xFEE8 # ARABIC LETTER NOON MEDIAL FORM 379 | 0xFEE9 # ARABIC LETTER HEH ISOLATED FORM 380 | 0xFEEA # ARABIC LETTER HEH FINAL FORM 381 | 0xFEEB # ARABIC LETTER HEH INITIAL FORM 382 | 0xFEEC # ARABIC LETTER HEH MEDIAL FORM 383 | 0xFEED # ARABIC LETTER WAW ISOLATED FORM 384 | 0xFEEE # ARABIC LETTER WAW FINAL FORM 385 | 0xFEEF # ARABIC LETTER ALEF MAKSURA ISOLATED FORM 386 | 0xFEF0 # ARABIC LETTER ALEF MAKSURA FINAL FORM 387 | 0xFEF1 # ARABIC LETTER YEH ISOLATED FORM 388 | 0xFEF2 # ARABIC LETTER YEH FINAL FORM 389 | 0xFEF3 # ARABIC LETTER YEH INITIAL FORM 390 | 0xFEF4 # ARABIC LETTER YEH MEDIAL FORM 391 | 0xFEF5 # ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM 392 | 0xFEF6 # ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE FINAL FORM 393 | 0xFEF7 # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM 394 | 0xFEF8 # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE FINAL FORM 395 | 0xFEF9 # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW ISOLATED FORM 396 | 0xFEFA # ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW FINAL FORM 397 | 0xFEFB # ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM 398 | 0xFEFC # ARABIC LIGATURE LAM WITH ALEF FINAL FORM 399 | -------------------------------------------------------------------------------- /docs/charsets/nam/armenian_unique-glyphs.nam: -------------------------------------------------------------------------------- 1 | 0x0531 Ա ARMENIAN CAPITAL LETTER AYB 2 | 0x0532 Բ ARMENIAN CAPITAL LETTER BEN 3 | 0x0533 Գ ARMENIAN CAPITAL LETTER GIM 4 | 0x0534 Դ ARMENIAN CAPITAL LETTER DA 5 | 0x0535 Ե ARMENIAN CAPITAL LETTER ECH 6 | 0x0536 Զ ARMENIAN CAPITAL LETTER ZA 7 | 0x0537 Է ARMENIAN CAPITAL LETTER EH 8 | 0x0538 Ը ARMENIAN CAPITAL LETTER ET 9 | 0x0539 Թ ARMENIAN CAPITAL LETTER TO 10 | 0x053A Ժ ARMENIAN CAPITAL LETTER ZHE 11 | 0x053B Ի ARMENIAN CAPITAL LETTER INI 12 | 0x053C Լ ARMENIAN CAPITAL LETTER LIWN 13 | 0x053D Խ ARMENIAN CAPITAL LETTER XEH 14 | 0x053E Ծ ARMENIAN CAPITAL LETTER CA 15 | 0x053F Կ ARMENIAN CAPITAL LETTER KEN 16 | 0x0540 Հ ARMENIAN CAPITAL LETTER HO 17 | 0x0541 Ձ ARMENIAN CAPITAL LETTER JA 18 | 0x0542 Ղ ARMENIAN CAPITAL LETTER GHAD 19 | 0x0543 Ճ ARMENIAN CAPITAL LETTER CHEH 20 | 0x0544 Մ ARMENIAN CAPITAL LETTER MEN 21 | 0x0545 Յ ARMENIAN CAPITAL LETTER YI 22 | 0x0546 Ն ARMENIAN CAPITAL LETTER NOW 23 | 0x0547 Շ ARMENIAN CAPITAL LETTER SHA 24 | 0x0548 Ո ARMENIAN CAPITAL LETTER VO 25 | 0x0549 Չ ARMENIAN CAPITAL LETTER CHA 26 | 0x054A Պ ARMENIAN CAPITAL LETTER PEH 27 | 0x054B Ջ ARMENIAN CAPITAL LETTER JHEH 28 | 0x054C Ռ ARMENIAN CAPITAL LETTER RA 29 | 0x054D Ս ARMENIAN CAPITAL LETTER SEH 30 | 0x054E Վ ARMENIAN CAPITAL LETTER VEW 31 | 0x054F Տ ARMENIAN CAPITAL LETTER TIWN 32 | 0x0550 Ր ARMENIAN CAPITAL LETTER REH 33 | 0x0551 Ց ARMENIAN CAPITAL LETTER CO 34 | 0x0552 Ւ ARMENIAN CAPITAL LETTER YIWN 35 | 0x0553 Փ ARMENIAN CAPITAL LETTER PIWR 36 | 0x0554 Ք ARMENIAN CAPITAL LETTER KEH 37 | 0x0555 Օ ARMENIAN CAPITAL LETTER OH 38 | 0x0556 Ֆ ARMENIAN CAPITAL LETTER FEH 39 | 0x0559 ՙ ARMENIAN MODIFIER LETTER LEFT HALF RING 40 | 0x055A ՚ ARMENIAN APOSTROPHE 41 | 0x055B ՛ ARMENIAN EMPHASIS MARK 42 | 0x055C ՜ ARMENIAN EXCLAMATION MARK 43 | 0x055D ՝ ARMENIAN COMMA 44 | 0x055E ՞ ARMENIAN QUESTION MARK 45 | 0x055F ՟ ARMENIAN ABBREVIATION MARK 46 | 0x0561 ա ARMENIAN SMALL LETTER AYB 47 | 0x0562 բ ARMENIAN SMALL LETTER BEN 48 | 0x0563 գ ARMENIAN SMALL LETTER GIM 49 | 0x0564 դ ARMENIAN SMALL LETTER DA 50 | 0x0565 ե ARMENIAN SMALL LETTER ECH 51 | 0x0566 զ ARMENIAN SMALL LETTER ZA 52 | 0x0567 է ARMENIAN SMALL LETTER EH 53 | 0x0568 ը ARMENIAN SMALL LETTER ET 54 | 0x0569 թ ARMENIAN SMALL LETTER TO 55 | 0x056A ժ ARMENIAN SMALL LETTER ZHE 56 | 0x056B ի ARMENIAN SMALL LETTER INI 57 | 0x056C լ ARMENIAN SMALL LETTER LIWN 58 | 0x056D խ ARMENIAN SMALL LETTER XEH 59 | 0x056E ծ ARMENIAN SMALL LETTER CA 60 | 0x056F կ ARMENIAN SMALL LETTER KEN 61 | 0x0570 հ ARMENIAN SMALL LETTER HO 62 | 0x0571 ձ ARMENIAN SMALL LETTER JA 63 | 0x0572 ղ ARMENIAN SMALL LETTER GHAD 64 | 0x0573 ճ ARMENIAN SMALL LETTER CHEH 65 | 0x0574 մ ARMENIAN SMALL LETTER MEN 66 | 0x0575 յ ARMENIAN SMALL LETTER YI 67 | 0x0576 ն ARMENIAN SMALL LETTER NOW 68 | 0x0577 շ ARMENIAN SMALL LETTER SHA 69 | 0x0578 ո ARMENIAN SMALL LETTER VO 70 | 0x0579 չ ARMENIAN SMALL LETTER CHA 71 | 0x057A պ ARMENIAN SMALL LETTER PEH 72 | 0x057B ջ ARMENIAN SMALL LETTER JHEH 73 | 0x057C ռ ARMENIAN SMALL LETTER RA 74 | 0x057D ս ARMENIAN SMALL LETTER SEH 75 | 0x057E վ ARMENIAN SMALL LETTER VEW 76 | 0x057F տ ARMENIAN SMALL LETTER TIWN 77 | 0x0580 ր ARMENIAN SMALL LETTER REH 78 | 0x0581 ց ARMENIAN SMALL LETTER CO 79 | 0x0582 ւ ARMENIAN SMALL LETTER YIWN 80 | 0x0583 փ ARMENIAN SMALL LETTER PIWR 81 | 0x0584 ք ARMENIAN SMALL LETTER KEH 82 | 0x0585 օ ARMENIAN SMALL LETTER OH 83 | 0x0586 ֆ ARMENIAN SMALL LETTER FEH 84 | 0x0587 և ARMENIAN SMALL LIGATURE ECH YIWN 85 | 0x0589 ։ ARMENIAN FULL STOP 86 | 0x058A ֊ ARMENIAN HYPHEN 87 | 0x058D ֍ RIGHT-FACING ARMENIAN ETERNITY SIGN 88 | 0x058E ֎ LEFT-FACING ARMENIAN ETERNITY SIGN 89 | 0x058F ֏ ARMENIAN DRAM SIGN 90 | 0xFB13 ﬓ ARMENIAN SMALL LIGATURE MEN NOW 91 | 0xFB14 ﬔ ARMENIAN SMALL LIGATURE MEN ECH 92 | 0xFB15 ﬕ ARMENIAN SMALL LIGATURE MEN INI 93 | 0xFB16 ﬖ ARMENIAN SMALL LIGATURE VEW NOW 94 | 0xFB17 ﬗ ARMENIAN SMALL LIGATURE MEN XEH 95 | -------------------------------------------------------------------------------- /docs/charsets/nam/hebrew_unique-glyphs.nam: -------------------------------------------------------------------------------- 1 | # 2015-01-08: adding based on list Roozbeh provided 2014-10-10 2 | 0x20AA NEW SHEQEL SIGN 3 | 0x25CC DOTTED CIRCLE 4 | 0x05B0 HEBREW POINT SHEVA 5 | 0x05B1 HEBREW POINT HATAF SEGOL 6 | 0x05B2 HEBREW POINT HATAF PATAH 7 | 0x05B3 HEBREW POINT HATAF QAMATS 8 | 0x05B4 HEBREW POINT HIRIQ 9 | 0x05B5 HEBREW POINT TSERE 10 | 0x05B6 HEBREW POINT SEGOL 11 | 0x05B7 HEBREW POINT PATAH 12 | 0x05B8 HEBREW POINT QAMATS 13 | 0x05B9 HEBREW POINT HOLAM 14 | 0x05BA HEBREW POINT HOLAM HASER FOR VAV 15 | 0x05BB HEBREW POINT QUBUTS 16 | 0x05BC HEBREW POINT DAGESH OR MAPIQ 17 | 0x05BE HEBREW PUNCTUATION MAQAF 18 | 0x05C0 HEBREW PUNCTUATION PASEQ 19 | 0x05C1 HEBREW POINT SHIN DOT 20 | 0x05C2 HEBREW POINT SIN DOT 21 | 0x05C3 HEBREW PUNCTUATION SOF PASUQ 22 | 0x05C7 HEBREW POINT QAMATS QATAN 23 | 0x05D0 HEBREW LETTER ALEF 24 | 0x05D1 HEBREW LETTER BET 25 | 0x05D2 HEBREW LETTER GIMEL 26 | 0x05D3 HEBREW LETTER DALET 27 | 0x05D4 HEBREW LETTER HE 28 | 0x05D5 HEBREW LETTER VAV 29 | 0x05D6 HEBREW LETTER ZAYIN 30 | 0x05D7 HEBREW LETTER HET 31 | 0x05D8 HEBREW LETTER TET 32 | 0x05D9 HEBREW LETTER YOD 33 | 0x05DA HEBREW LETTER FINAL KAF 34 | 0x05DB HEBREW LETTER KAF 35 | 0x05DC HEBREW LETTER LAMED 36 | 0x05DD HEBREW LETTER FINAL MEM 37 | 0x05DE HEBREW LETTER MEM 38 | 0x05DF HEBREW LETTER FINAL NUN 39 | 0x05E0 HEBREW LETTER NUN 40 | 0x05E1 HEBREW LETTER SAMEKH 41 | 0x05E2 HEBREW LETTER AYIN 42 | 0x05E3 HEBREW LETTER FINAL PE 43 | 0x05E4 HEBREW LETTER PE 44 | 0x05E5 HEBREW LETTER FINAL TSADI 45 | 0x05E6 HEBREW LETTER TSADI 46 | 0x05E7 HEBREW LETTER QOF 47 | 0x05E8 HEBREW LETTER RESH 48 | 0x05E9 HEBREW LETTER SHIN 49 | 0x05EA HEBREW LETTER TAV 50 | 0x05F3 HEBREW PUNCTUATION GERESH 51 | 0x05F4 HEBREW PUNCTUATION GERSHAYIM 52 | 0xFB2A HEBREW LETTER SHIN WITH SHIN DOT 53 | 0xFB2B HEBREW LETTER SHIN WITH SIN DOT 54 | 0xFB2C HEBREW LETTER SHIN WITH DAGESH AND SHIN DOT 55 | 0xFB2D HEBREW LETTER SHIN WITH DAGESH AND SIN DOT 56 | 0xFB2E HEBREW LETTER ALEF WITH PATAH 57 | 0xFB2F HEBREW LETTER ALEF WITH QAMATS 58 | 0xFB30 HEBREW LETTER ALEF WITH MAPIQ 59 | 0xFB31 HEBREW LETTER BET WITH DAGESH 60 | 0xFB32 HEBREW LETTER GIMEL WITH DAGESH 61 | 0xFB33 HEBREW LETTER DALET WITH DAGESH 62 | 0xFB34 HEBREW LETTER HE WITH MAPIQ 63 | 0xFB35 HEBREW LETTER VAV WITH DAGESH 64 | 0xFB36 HEBREW LETTER ZAYIN WITH DAGESH 65 | 0xFB38 HEBREW LETTER TET WITH DAGESH 66 | 0xFB39 HEBREW LETTER YOD WITH DAGESH 67 | 0xFB3A HEBREW LETTER FINAL KAF WITH DAGESH 68 | 0xFB3B HEBREW LETTER KAF WITH DAGESH 69 | 0xFB3C HEBREW LETTER LAMED WITH DAGESH 70 | 0xFB3E HEBREW LETTER MEM WITH DAGESH 71 | 0xFB40 HEBREW LETTER NUN WITH DAGESH 72 | 0xFB41 HEBREW LETTER SAMEKH WITH DAGESH 73 | 0xFB43 HEBREW LETTER FINAL PE WITH DAGESH 74 | 0xFB44 HEBREW LETTER PE WITH DAGESH 75 | 0xFB46 HEBREW LETTER TSADI WITH DAGESH 76 | 0xFB47 HEBREW LETTER QOF WITH DAGESH 77 | 0xFB48 HEBREW LETTER RESH WITH DAGESH 78 | 0xFB49 HEBREW LETTER SHIN WITH DAGESH 79 | 0xFB4A HEBREW LETTER TAV WITH DAGESH 80 | 0xFB4B HEBREW LETTER VAV WITH HOLAM 81 | -------------------------------------------------------------------------------- /docs/charsets/txt/GF-cyrillic-plus_unique-glyphs.txt: -------------------------------------------------------------------------------- 1 | 0x02BC 2 | 0x0300 3 | 0x0301 4 | 0x0304 5 | 0x0308 6 | 0x030B 7 | 0x0400 8 | 0x0401 9 | 0x0402 10 | 0x0403 11 | 0x0404 12 | 0x0405 13 | 0x0406 14 | 0x0407 15 | 0x0408 16 | 0x0409 17 | 0x040A 18 | 0x040B 19 | 0x040C 20 | 0x040D 21 | 0x040E 22 | 0x040F 23 | 0x0410 24 | 0x0411 25 | 0x0412 26 | 0x0413 27 | 0x0414 28 | 0x0415 29 | 0x0416 30 | 0x0417 31 | 0x0418 32 | 0x0419 33 | 0x041A 34 | 0x041B 35 | 0x041C 36 | 0x041D 37 | 0x041E 38 | 0x041F 39 | 0x0420 40 | 0x0421 41 | 0x0422 42 | 0x0423 43 | 0x0424 44 | 0x0425 45 | 0x0426 46 | 0x0427 47 | 0x0428 48 | 0x0429 49 | 0x042A 50 | 0x042B 51 | 0x042C 52 | 0x042D 53 | 0x042E 54 | 0x042F 55 | 0x0430 56 | 0x0431 57 | 0x0432 58 | 0x0433 59 | 0x0434 60 | 0x0435 61 | 0x0436 62 | 0x0437 63 | 0x0438 64 | 0x0439 65 | 0x043A 66 | 0x043B 67 | 0x043C 68 | 0x043D 69 | 0x043E 70 | 0x043F 71 | 0x0440 72 | 0x0441 73 | 0x0442 74 | 0x0443 75 | 0x0444 76 | 0x0445 77 | 0x0446 78 | 0x0447 79 | 0x0448 80 | 0x0449 81 | 0x044A 82 | 0x044B 83 | 0x044C 84 | 0x044D 85 | 0x044E 86 | 0x044F 87 | 0x0450 88 | 0x0451 89 | 0x0452 90 | 0x0453 91 | 0x0454 92 | 0x0455 93 | 0x0456 94 | 0x0457 95 | 0x0458 96 | 0x0459 97 | 0x045A 98 | 0x045B 99 | 0x045C 100 | 0x045D 101 | 0x045E 102 | 0x045F 103 | 0x0462 104 | 0x0463 105 | 0x046A 106 | 0x046B 107 | 0x0472 108 | 0x0473 109 | 0x0474 110 | 0x0475 111 | 0x0490 112 | 0x0491 113 | 0x0492 114 | 0x0493 115 | 0x0494 116 | 0x0495 117 | 0x0496 118 | 0x0497 119 | 0x0498 120 | 0x0499 121 | 0x049A 122 | 0x049B 123 | 0x049C 124 | 0x049D 125 | 0x04A0 126 | 0x04A1 127 | 0x04A2 128 | 0x04A3 129 | 0x04A4 130 | 0x04A5 131 | 0x04AA 132 | 0x04AB 133 | 0x04AE 134 | 0x04AF 135 | 0x04B0 136 | 0x04B1 137 | 0x04B2 138 | 0x04B3 139 | 0x04B6 140 | 0x04B7 141 | 0x04B8 142 | 0x04B9 143 | 0x04BA 144 | 0x04BB 145 | 0x04C0 146 | 0x04C1 147 | 0x04C2 148 | 0x04CB 149 | 0x04CC 150 | 0x04CF 151 | 0x04D0 152 | 0x04D1 153 | 0x04D2 154 | 0x04D3 155 | 0x04D4 156 | 0x04D5 157 | 0x04D6 158 | 0x04D7 159 | 0x04D8 160 | 0x04D9 161 | 0x04DC 162 | 0x04DD 163 | 0x04DE 164 | 0x04DF 165 | 0x04E2 166 | 0x04E3 167 | 0x04E4 168 | 0x04E5 169 | 0x04E6 170 | 0x04E7 171 | 0x04E8 172 | 0x04E9 173 | 0x04EE 174 | 0x04EF 175 | 0x04F0 176 | 0x04F1 177 | 0x04F2 178 | 0x04F3 179 | 0x04F4 180 | 0x04F5 181 | 0x04F6 182 | 0x04F7 183 | 0x04F8 184 | 0x04F9 185 | 0x051A 186 | 0x051B 187 | 0x051C 188 | 0x051D 189 | 0x20AE 190 | 0x20B4 191 | 0x20B8 192 | 0x2116 -------------------------------------------------------------------------------- /docs/charsets/txt/GF-greek-core.txt: -------------------------------------------------------------------------------- 1 | 0x0374 2 | 0x0375 3 | 0x037E 4 | 0x0384 5 | 0x0385 6 | 0x0386 7 | 0x0387 8 | 0x0388 9 | 0x0389 10 | 0x038A 11 | 0x038C 12 | 0x038E 13 | 0x038F 14 | 0x0390 15 | 0x0391 16 | 0x0392 17 | 0x0393 18 | 0x0394 19 | 0x0395 20 | 0x0396 21 | 0x0397 22 | 0x0398 23 | 0x0399 24 | 0x039A 25 | 0x039B 26 | 0x039C 27 | 0x039D 28 | 0x039E 29 | 0x039F 30 | 0x03A0 31 | 0x03A1 32 | 0x03A3 33 | 0x03A4 34 | 0x03A5 35 | 0x03A6 36 | 0x03A7 37 | 0x03A8 38 | 0x03A9 39 | 0x03AA 40 | 0x03AB 41 | 0x03AC 42 | 0x03AD 43 | 0x03AE 44 | 0x03AF 45 | 0x03B0 46 | 0x03B1 47 | 0x03B2 48 | 0x03B3 49 | 0x03B4 50 | 0x03B5 51 | 0x03B6 52 | 0x03B7 53 | 0x03B8 54 | 0x03B9 55 | 0x03BA 56 | 0x03BB 57 | 0x03BC 58 | 0x03BD 59 | 0x03BE 60 | 0x03BF 61 | 0x03C0 62 | 0x03C1 63 | 0x03C2 64 | 0x03C3 65 | 0x03C4 66 | 0x03C5 67 | 0x03C6 68 | 0x03C7 69 | 0x03C8 70 | 0x03C9 71 | 0x03CA 72 | 0x03CB 73 | 0x03CC 74 | 0x03CD 75 | 0x03CE 76 | 0x03CF 77 | 0x03D7 -------------------------------------------------------------------------------- /docs/charsets/txt/GF-latin-core_unique-glyphs.txt: -------------------------------------------------------------------------------- 1 | 0x000D 2 | 0x0020 3 | 0x0021 4 | 0x0022 5 | 0x0023 6 | 0x0024 7 | 0x0025 8 | 0x0026 9 | 0x0027 10 | 0x0028 11 | 0x0029 12 | 0x002A 13 | 0x002B 14 | 0x002C 15 | 0x002D 16 | 0x002E 17 | 0x002F 18 | 0x0030 19 | 0x0031 20 | 0x0032 21 | 0x0033 22 | 0x0034 23 | 0x0035 24 | 0x0036 25 | 0x0037 26 | 0x0038 27 | 0x0039 28 | 0x003A 29 | 0x003B 30 | 0x003C 31 | 0x003D 32 | 0x003E 33 | 0x003F 34 | 0x0040 35 | 0x0041 36 | 0x0042 37 | 0x0043 38 | 0x0044 39 | 0x0045 40 | 0x0046 41 | 0x0047 42 | 0x0048 43 | 0x0049 44 | 0x004A 45 | 0x004B 46 | 0x004C 47 | 0x004D 48 | 0x004E 49 | 0x004F 50 | 0x0050 51 | 0x0051 52 | 0x0052 53 | 0x0053 54 | 0x0054 55 | 0x0055 56 | 0x0056 57 | 0x0057 58 | 0x0058 59 | 0x0059 60 | 0x005A 61 | 0x005B 62 | 0x005C 63 | 0x005D 64 | 0x005E 65 | 0x005F 66 | 0x0060 67 | 0x0061 68 | 0x0062 69 | 0x0063 70 | 0x0064 71 | 0x0065 72 | 0x0066 73 | 0x0067 74 | 0x0068 75 | 0x0069 76 | 0x006A 77 | 0x006B 78 | 0x006C 79 | 0x006D 80 | 0x006E 81 | 0x006F 82 | 0x0070 83 | 0x0071 84 | 0x0072 85 | 0x0073 86 | 0x0074 87 | 0x0075 88 | 0x0076 89 | 0x0077 90 | 0x0078 91 | 0x0079 92 | 0x007A 93 | 0x007B 94 | 0x007C 95 | 0x007D 96 | 0x007E 97 | 0x00A0 98 | 0x00A1 99 | 0x00A2 100 | 0x00A3 101 | 0x00A4 102 | 0x00A5 103 | 0x00A6 104 | 0x00A7 105 | 0x00A8 106 | 0x00A9 107 | 0x00AA 108 | 0x00AB 109 | 0x00AC 110 | 0x00AD 111 | 0x00AE 112 | 0x00AF 113 | 0x00B0 114 | 0x00B1 115 | 0x00B2 116 | 0x00B3 117 | 0x00B4 118 | 0x00B5 119 | 0x00B6 120 | 0x00B7 121 | 0x00B8 122 | 0x00B9 123 | 0x00BA 124 | 0x00BB 125 | 0x00BC 126 | 0x00BD 127 | 0x00BE 128 | 0x00BF 129 | 0x00C0 130 | 0x00C1 131 | 0x00C2 132 | 0x00C3 133 | 0x00C4 134 | 0x00C5 135 | 0x00C6 136 | 0x00C7 137 | 0x00C8 138 | 0x00C9 139 | 0x00CA 140 | 0x00CB 141 | 0x00CC 142 | 0x00CD 143 | 0x00CE 144 | 0x00CF 145 | 0x00D0 146 | 0x00D1 147 | 0x00D2 148 | 0x00D3 149 | 0x00D4 150 | 0x00D5 151 | 0x00D6 152 | 0x00D7 153 | 0x00D8 154 | 0x00D9 155 | 0x00DA 156 | 0x00DB 157 | 0x00DC 158 | 0x00DD 159 | 0x00DE 160 | 0x00DF 161 | 0x00E0 162 | 0x00E1 163 | 0x00E2 164 | 0x00E3 165 | 0x00E4 166 | 0x00E5 167 | 0x00E6 168 | 0x00E7 169 | 0x00E8 170 | 0x00E9 171 | 0x00EA 172 | 0x00EB 173 | 0x00EC 174 | 0x00ED 175 | 0x00EE 176 | 0x00EF 177 | 0x00F0 178 | 0x00F1 179 | 0x00F2 180 | 0x00F3 181 | 0x00F4 182 | 0x00F5 183 | 0x00F6 184 | 0x00F7 185 | 0x00F8 186 | 0x00F9 187 | 0x00FA 188 | 0x00FB 189 | 0x00FC 190 | 0x00FD 191 | 0x00FE 192 | 0x00FF 193 | 0x0131 194 | 0x0152 195 | 0x0153 196 | 0x02C6 197 | 0x02DA 198 | 0x02DC 199 | 0x2013 200 | 0x2014 201 | 0x2018 202 | 0x2019 203 | 0x201A 204 | 0x201C 205 | 0x201D 206 | 0x201E 207 | 0x2022 208 | 0x2026 209 | 0x2039 210 | 0x203A 211 | 0x2044 212 | 0x2074 213 | 0x20AC 214 | 0x2212 215 | 0x2215 -------------------------------------------------------------------------------- /docs/charsets/txt/GF-latin-plus_unique-glyphs.txt: -------------------------------------------------------------------------------- 1 | 0x0100 2 | 0x0101 3 | 0x0102 4 | 0x0103 5 | 0x0104 6 | 0x0105 7 | 0x0106 8 | 0x0107 9 | 0x0108 10 | 0x0109 11 | 0x010A 12 | 0x010B 13 | 0x010C 14 | 0x010D 15 | 0x010E 16 | 0x010F 17 | 0x0110 18 | 0x0111 19 | 0x0112 20 | 0x0113 21 | 0x0114 22 | 0x0115 23 | 0x0116 24 | 0x0117 25 | 0x0118 26 | 0x0119 27 | 0x011A 28 | 0x011B 29 | 0x011C 30 | 0x011D 31 | 0x011E 32 | 0x011F 33 | 0x0120 34 | 0x0121 35 | 0x0122 36 | 0x0123 37 | 0x0124 38 | 0x0125 39 | 0x0126 40 | 0x0127 41 | 0x0128 42 | 0x0129 43 | 0x012A 44 | 0x012B 45 | 0x012C 46 | 0x012D 47 | 0x012E 48 | 0x012F 49 | 0x0130 50 | 0x0134 51 | 0x0135 52 | 0x0136 53 | 0x0137 54 | 0x0138 55 | 0x0139 56 | 0x013A 57 | 0x013B 58 | 0x013C 59 | 0x013D 60 | 0x013E 61 | 0x013F 62 | 0x0140 63 | 0x0141 64 | 0x0142 65 | 0x0143 66 | 0x0144 67 | 0x0145 68 | 0x0146 69 | 0x0147 70 | 0x0148 71 | 0x014A 72 | 0x014B 73 | 0x014C 74 | 0x014D 75 | 0x014E 76 | 0x014F 77 | 0x0150 78 | 0x0151 79 | 0x0154 80 | 0x0155 81 | 0x0156 82 | 0x0157 83 | 0x0158 84 | 0x0159 85 | 0x015A 86 | 0x015B 87 | 0x015C 88 | 0x015D 89 | 0x015E 90 | 0x015F 91 | 0x0160 92 | 0x0161 93 | 0x0162 94 | 0x0163 95 | 0x0164 96 | 0x0165 97 | 0x0166 98 | 0x0167 99 | 0x0168 100 | 0x0169 101 | 0x016A 102 | 0x016B 103 | 0x016C 104 | 0x016D 105 | 0x016E 106 | 0x016F 107 | 0x0170 108 | 0x0171 109 | 0x0172 110 | 0x0173 111 | 0x0174 112 | 0x0175 113 | 0x0176 114 | 0x0177 115 | 0x0178 116 | 0x0179 117 | 0x017A 118 | 0x017B 119 | 0x017C 120 | 0x017D 121 | 0x017E 122 | 0x018F 123 | 0x0192 124 | 0x01A0 125 | 0x01A1 126 | 0x01AF 127 | 0x01B0 128 | 0x01C4 129 | 0x01C5 130 | 0x01C6 131 | 0x01C7 132 | 0x01C8 133 | 0x01C9 134 | 0x01CA 135 | 0x01CB 136 | 0x01CC 137 | 0x01E6 138 | 0x01E7 139 | 0x01EA 140 | 0x01EB 141 | 0x01FA 142 | 0x01FB 143 | 0x01FC 144 | 0x01FD 145 | 0x01FE 146 | 0x01FF 147 | 0x0200 148 | 0x0201 149 | 0x0202 150 | 0x0203 151 | 0x0204 152 | 0x0205 153 | 0x0206 154 | 0x0207 155 | 0x0208 156 | 0x0209 157 | 0x020A 158 | 0x020B 159 | 0x020C 160 | 0x020D 161 | 0x020E 162 | 0x020F 163 | 0x0210 164 | 0x0211 165 | 0x0212 166 | 0x0213 167 | 0x0214 168 | 0x0215 169 | 0x0216 170 | 0x0217 171 | 0x0218 172 | 0x0219 173 | 0x021A 174 | 0x021B 175 | 0x022A 176 | 0x022B 177 | 0x022C 178 | 0x022D 179 | 0x0230 180 | 0x0231 181 | 0x0232 182 | 0x0233 183 | 0x0237 184 | 0x0259 185 | 0x02B9 186 | 0x02BA 187 | 0x02BC 188 | 0x02C7 189 | 0x02D8 190 | 0x02D9 191 | 0x02DB 192 | 0x02DD 193 | 0x0300 194 | 0x0301 195 | 0x0302 196 | 0x0303 197 | 0x0304 198 | 0x0306 199 | 0x0307 200 | 0x0308 201 | 0x0309 202 | 0x030A 203 | 0x030B 204 | 0x030C 205 | 0x030F 206 | 0x0311 207 | 0x0312 208 | 0x031B 209 | 0x0323 210 | 0x0324 211 | 0x0326 212 | 0x0327 213 | 0x0328 214 | 0x032E 215 | 0x0331 216 | 0x0335 217 | 0x1E80 218 | 0x1E81 219 | 0x1E82 220 | 0x1E83 221 | 0x1E84 222 | 0x1E85 223 | 0x1E9E 224 | 0x1EA0 225 | 0x1EA1 226 | 0x1EA2 227 | 0x1EA3 228 | 0x1EA4 229 | 0x1EA5 230 | 0x1EA6 231 | 0x1EA7 232 | 0x1EA8 233 | 0x1EA9 234 | 0x1EAA 235 | 0x1EAB 236 | 0x1EAC 237 | 0x1EAD 238 | 0x1EAE 239 | 0x1EAF 240 | 0x1EB0 241 | 0x1EB1 242 | 0x1EB2 243 | 0x1EB3 244 | 0x1EB4 245 | 0x1EB5 246 | 0x1EB6 247 | 0x1EB7 248 | 0x1EB8 249 | 0x1EB9 250 | 0x1EBA 251 | 0x1EBB 252 | 0x1EBC 253 | 0x1EBD 254 | 0x1EBE 255 | 0x1EBF 256 | 0x1EC0 257 | 0x1EC1 258 | 0x1EC2 259 | 0x1EC3 260 | 0x1EC4 261 | 0x1EC5 262 | 0x1EC6 263 | 0x1EC7 264 | 0x1EC8 265 | 0x1EC9 266 | 0x1ECA 267 | 0x1ECB 268 | 0x1ECC 269 | 0x1ECD 270 | 0x1ECE 271 | 0x1ECF 272 | 0x1ED0 273 | 0x1ED1 274 | 0x1ED2 275 | 0x1ED3 276 | 0x1ED4 277 | 0x1ED5 278 | 0x1ED6 279 | 0x1ED7 280 | 0x1ED8 281 | 0x1ED9 282 | 0x1EDA 283 | 0x1EDB 284 | 0x1EDC 285 | 0x1EDD 286 | 0x1EDE 287 | 0x1EDF 288 | 0x1EE0 289 | 0x1EE1 290 | 0x1EE2 291 | 0x1EE3 292 | 0x1EE4 293 | 0x1EE5 294 | 0x1EE6 295 | 0x1EE7 296 | 0x1EE8 297 | 0x1EE9 298 | 0x1EEA 299 | 0x1EEB 300 | 0x1EEC 301 | 0x1EED 302 | 0x1EEE 303 | 0x1EEF 304 | 0x1EF0 305 | 0x1EF1 306 | 0x1EF2 307 | 0x1EF3 308 | 0x1EF4 309 | 0x1EF5 310 | 0x1EF6 311 | 0x1EF7 312 | 0x1EF8 313 | 0x1EF9 314 | 0x2010 315 | 0x2020 316 | 0x2021 317 | 0x2030 318 | 0x2032 319 | 0x2033 320 | 0x2052 321 | 0x20A1 322 | 0x20A3 323 | 0x20A4 324 | 0x20A6 325 | 0x20A7 326 | 0x20A9 327 | 0x20AB 328 | 0x20AD 329 | 0x20B1 330 | 0x20B2 331 | 0x20B5 332 | 0x20B9 333 | 0x20BA 334 | 0x20BC 335 | 0x20BD 336 | 0x2116 337 | 0x2122 338 | 0x2219 339 | 0x2248 340 | 0x2260 341 | 0x2264 342 | 0x2265 343 | 0x27E8 344 | 0x27E9 345 | 0xFB01 346 | 0xFB02 -------------------------------------------------------------------------------- /docs/charsets/txt/missing_glyphs_LCG.txt: -------------------------------------------------------------------------------- 1 | 0x200 2 | Ȁ 3 | 0x201 4 | ȁ 5 | 0x202 6 | Ȃ 7 | 0x203 8 | ȃ 9 | 0x204 10 | Ȅ 11 | 0x205 12 | ȅ 13 | 0x206 14 | Ȇ 15 | 0x207 16 | ȇ 17 | 0x208 18 | Ȉ 19 | 0x209 20 | ȉ 21 | 0x20a 22 | Ȋ 23 | 0x20b 24 | ȋ 25 | 0x20c 26 | Ȍ 27 | 0x20d 28 | ȍ 29 | 0x20e 30 | Ȏ 31 | 0x20f 32 | ȏ 33 | 0x210 34 | Ȑ 35 | 0x211 36 | ȑ 37 | 0x212 38 | Ȓ 39 | 0x213 40 | ȓ 41 | 0x214 42 | Ȕ 43 | 0x215 44 | ȕ 45 | 0x216 46 | Ȗ 47 | 0x217 48 | ȗ 49 | 0x22a 50 | Ȫ 51 | 0x22b 52 | ȫ 53 | 0x22c 54 | Ȭ 55 | 0x22d 56 | ȭ 57 | 0x230 58 | Ȱ 59 | 0x231 60 | ȱ 61 | 0x232 62 | Ȳ 63 | 0x233 64 | ȳ 65 | 0x4b8 66 | Ҹ 67 | 0x2052 68 | ⁒ 69 | 0x4b9 70 | ҹ 71 | 0x46a 72 | Ѫ 73 | 0x46b 74 | ѫ 75 | 0x494 76 | Ҕ 77 | 0x495 78 | ҕ 79 | 0x49c 80 | Ҝ 81 | 0x49d 82 | ҝ 83 | 0x20a1 84 | ₡ 85 | 0x20a3 86 | ₣ 87 | 0x20a4 88 | ₤ 89 | 0x4a5 90 | ҥ 91 | 0x20a6 92 | ₦ 93 | 0x20a7 94 | ₧ 95 | 0x20a9 96 | ₩ 97 | 0x20ad 98 | ₭ 99 | 0x20ae 100 | ₮ 101 | 0x20b1 102 | ₱ 103 | 0x20b2 104 | ₲ 105 | 0x20b5 106 | ₵ 107 | 0x20b8 108 | ₸ 109 | 0x2b9 110 | ʹ 111 | 0x2ba 112 | ʺ 113 | 0x20bc 114 | ₼ 115 | 0x4c1 116 | Ӂ 117 | 0x4c2 118 | ӂ 119 | 0x4cb 120 | Ӌ 121 | 0x4cc 122 | ӌ 123 | 0x4d2 124 | Ӓ 125 | 0x4d3 126 | ӓ 127 | 0x4dc 128 | Ӝ 129 | 0x4dd 130 | ӝ 131 | 0x4de 132 | Ӟ 133 | 0x4df 134 | ӟ 135 | 0x4e4 136 | Ӥ 137 | 0x4e5 138 | ӥ 139 | 0x4f0 140 | Ӱ 141 | 0x4f1 142 | ӱ 143 | 0x4f4 144 | Ӵ 145 | 0x4f5 146 | ӵ 147 | 0x4f6 148 | Ӷ 149 | 0x4f7 150 | ӷ 151 | 0x4f8 152 | Ӹ 153 | 0x4f9 154 | ӹ 155 | 0xfb01 156 | fi 157 | 0xfb02 158 | fl 159 | 0x30f 160 | ̏ 161 | 0x311 162 | ̑ 163 | 0x51a 164 | Ԛ 165 | 0x51b 166 | ԛ 167 | 0x51c 168 | Ԝ 169 | 0x51d 170 | ԝ 171 | 0x324 172 | ̤ 173 | 0x32e 174 | ̮ 175 | 0x331 176 | ̱ 177 | 0x335 178 | ̵ 179 | 0x192 180 | ƒ 181 | 0x3cf 182 | Ϗ 183 | 0x3d7 184 | ϗ 185 | 0x4a4 186 | Ҥ 187 | 0x1e6 188 | Ǧ 189 | 0x1e7 190 | ǧ 191 | 0x27e8 192 | ⟨ 193 | 0x27e9 194 | ⟩ 195 | 0x1ea 196 | Ǫ 197 | 0x1eb 198 | ǫ 199 | End 200 | -------------------------------------------------------------------------------- /docs/previews/Handjet-preview.indd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/previews/Handjet-preview.indd -------------------------------------------------------------------------------- /docs/previews/Handjet-preview.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/docs/previews/Handjet-preview.pdf -------------------------------------------------------------------------------- /fonts/Handjet[ELGR,ELSH,wght].ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/fonts/Handjet[ELGR,ELSH,wght].ttf -------------------------------------------------------------------------------- /fonts/Handjet[ELGR,ELSH,wght].woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/fonts/Handjet[ELGR,ELSH,wght].woff2 -------------------------------------------------------------------------------- /production/add_stat_table.py: -------------------------------------------------------------------------------- 1 | import sys 2 | from fontTools.otlLib.builder import buildStatTable 3 | from fontTools.ttLib import TTFont 4 | from make_designspace import (wghts, ELSHs, ELGRs) 5 | 6 | path = sys.argv[1] 7 | font = TTFont(path) 8 | 9 | wght_axis = dict( 10 | tag="wght", 11 | name="Weight", 12 | values=[dict(nominalValue=v, name=n, rangeMinValue=min, rangeMaxValue=max) for v, _, n, min, max in wghts if n is not None] 13 | ) 14 | 15 | shape_axis = dict( 16 | tag="ELSH", 17 | name="Element Shape", 18 | values=[dict(nominalValue=v, name=n, rangeMinValue=min, rangeMaxValue=max) for v, _, n, min, max in ELSHs if n is not None] 19 | ) 20 | 21 | grid_axis = dict( 22 | tag="ELGR", 23 | name="Element Grid", 24 | values=[dict(nominalValue=v, name=n, rangeMinValue=min, rangeMaxValue=max) for v, _, n, min, max in ELGRs if n is not None] 25 | ) 26 | 27 | print(wght_axis) 28 | print(shape_axis) 29 | print(grid_axis) 30 | 31 | buildStatTable(font, [wght_axis, shape_axis, grid_axis], elidedFallbackName=2) 32 | 33 | font.save(path) 34 | print("Added STAT table to %s" % path) 35 | -------------------------------------------------------------------------------- /production/build.sh: -------------------------------------------------------------------------------- 1 | set -x 2 | 3 | # Run this script from the root directory 4 | 5 | # Clean up previous build runs 6 | echo "Cleaning up folders" 7 | rm -r instance_ufo 8 | rm -r master_ufo 9 | rm -r variable_ttf 10 | 11 | 12 | # Make UFOs from latest sources 13 | echo "Extracting ufo files from glyphs sources" 14 | # Use glyphs2ufo directly instead of fontmake in order to prevent output of 15 | # GDEF (fontmake seems to use the glyphs2ufo --generate-GDEF api) 16 | glyphs2ufo --output-dir master_ufo sources/Handjet.glyphs 17 | 18 | 19 | # For clarity's sake, explicitly remove the designspace fontmake outputs 20 | # to show we are using the static one in the production folder 21 | rm master_ufo/Handjet-Regular.designspace 22 | 23 | 24 | # Compile latest designspace 25 | python production/make_designspace.py production/Handjet.designspace 26 | 27 | 28 | # Compile Variable fonts 29 | echo "Compiling TTF variable font from designspace" 30 | fontmake -m production/Handjet.designspace -o variable --production-names 31 | 32 | 33 | # Add STAT table 34 | python production/add_stat_table.py variable_ttf/Handjet-VF.ttf 35 | 36 | 37 | # Fix GASP table 38 | gftools fix-nonhinting variable_ttf/Handjet-VF.ttf variable_ttf/Handjet-VF.ttf.2 39 | 40 | 41 | # Move fonts to final destination & cleanup 42 | mkdir fonts 43 | mv variable_ttf/Handjet-VF.ttf.2 fonts/Handjet\[ELGR\,ELSH\,wght\].ttf 44 | rm -r variable_ttf 45 | 46 | 47 | # Build webfonts (woff2 only since that overlaps with browser variable font 48 | # support) 49 | # Keep all glyphs, features, name tables 50 | pyftsubset fonts/Handjet[ELGR,ELSH,wght].ttf --glyphs=* --layout-features=* --name-IDs=* --output-file=fonts/Handjet[ELGR,ELSH,wght].woff2 --flavor=woff2 51 | 52 | 53 | # Run fontbakery 54 | fontbakery check-googlefonts --ghmarkdown test/Handjet-report.md fonts/Handjet\[ELGR\,ELSH\,wght\].ttf 55 | -------------------------------------------------------------------------------- /production/make_designspace.py: -------------------------------------------------------------------------------- 1 | """ 2 | A helper script to create a designspace for Handjet 3 | """ 4 | ds_path = "production/Handjet.designspace" 5 | 6 | # The default instance 7 | default = (400, 2.00, 1.0) 8 | 9 | # Values for the three axis (value, is master, instance name): 10 | # - Each entry is a design brace layer in the glyphs file 11 | # - Only wghts will get added as fvar instances 12 | # - Each named value will generate a named STAT entry by running 13 | # add_stat_table.py post font generation 14 | 15 | # The weights 16 | wghts = [ 17 | (100, True, "Thin", 0, 150), 18 | (200, False, "ExtraLight", 151, 250), 19 | (300, False, "Light", 251, 350), 20 | (400, True, "Regular", 351, 450), 21 | (500, False, "Medium", 451, 550), 22 | (600, False, "SemiBold", 551, 650), 23 | (700, False, "Bold", 651, 750), 24 | (800, False, "ExtraBold", 751, 850), 25 | (900, True, "Black", 851, 1000), 26 | ] 27 | 28 | # The shapes from the ELSH-xxxx glyph brace layer (In comments original 29 | # "design" names) 30 | # NOTE: In the design sources these brace layer value are multiplied by 100 to 31 | # work around the limitation of not having decimal dots in the layer name. 32 | ELSHs = [ 33 | (0.00, True, "Blank", 0.000, 0.500), 34 | (1.00, True, "Triangle", 0.501, 1.500), 35 | (2.00, True, "Square", 1.501, 2.100), 36 | (2.11, True, None, None, None), 37 | (2.25, True, "Lozenge", 2.101, 2.500), 38 | (2.36, True, None, None, None), 39 | (2.50, True, None, None, None), 40 | (3.19, False, "Block", 2.501, 3.250), 41 | (3.36, False, "Rectangle", 3.251, 3.750), 42 | (4.00, True, "Bar (Vertical)", 3.751, 4.150), 43 | (4.11, True, None, None, None), 44 | (4.25, True, "Bar (Diagonal Up)", 4.151, 4.350), 45 | (4.36, True, None, None, None), 46 | (4.50, True, "Bar (Horizontal)", 4.351, 4.650), 47 | (4.61, True, None, None, None), 48 | (4.75, True, "Bar (Diagonal Down)", 4.651, 5.000), 49 | (4.86, True, None, None, None), 50 | (5.00, True, None, None, None), 51 | (6.50, True, None, None, None), 52 | (6.90, False, "Rounded square", 5.001, 7.500), 53 | (7.63, False, "Squircle", 7.501, 7.750), 54 | (8.00, True, "Circle", 7.751, 8.500), 55 | (8.69, False, "Egg", 8.501, 8.750), 56 | (8.86, False, "Oval", 8.751, 9.000), 57 | (9.50, True, "Thinner Oval", 9.001, 11.000), # "Oval Thin" breaks Indesign (?!) 58 | (11.00, True, None, None, None), 59 | (12.00, False, "Clover", 11.001, 12.500), 60 | (13.00, True, "Flower", 12.501, 13.500), 61 | (14.00, True, "Star", 13.501, 14.150), 62 | (14.11, True, None, None, None), 63 | (14.25, True, "Diagonal Star", 14.151, 14.500), # "Star (Diagonal)" breaks Indesign (?!) 64 | (14.36, True, None, None, None), 65 | (14.50, True, None, None, None), 66 | (14.75, False, "Big Star", 14.501, 14.850), 67 | (15.00, True, "Spindle", 14.851, 15.250), 68 | (15.37, False, "Pin", 15.251, 15.500), 69 | (16.00, True, "Heart", 15.501, 16.000) 70 | ] 71 | 72 | # The grid configurations from the ELGR-xxxx glyph brace layer 73 | # Note ELGR values here in integer to match non-decimal brace layer names 74 | # from source glyphs file 75 | ELGRs = [ 76 | (1, True, "Single", 0.000, 1.500), 77 | (2, True, "Double", 1.501, 2.000), 78 | ] 79 | 80 | 81 | # XML templates to write the designspace from 82 | 83 | code = """ 84 | 85 | 86 | 87 | 88 | 89 | 91 | 93 | 95 | 96 | 97 | 98 | %s 99 | 100 | 101 | 102 | %s 103 | 104 | 105 | 106 | 107 | public.skipExportGlyphs 108 | 109 | .notef 110 | pixel.ELSH-0 111 | pixel.ELSH-100 112 | pixel.ELSH-200 113 | pixel.ELSH-211 114 | pixel.ELSH-225 115 | pixel.ELSH-236 116 | pixel.ELSH-250 117 | pixel.ELSH-400 118 | pixel.ELSH-411 119 | pixel.ELSH-425 120 | pixel.ELSH-436 121 | pixel.ELSH-450 122 | pixel.ELSH-461 123 | pixel.ELSH-475 124 | pixel.ELSH-486 125 | pixel.ELSH-500 126 | pixel.ELSH-650 127 | pixel.ELSH-800 128 | pixel.ELSH-950 129 | pixel.ELSH-1100 130 | pixel.ELSH-1300 131 | pixel.ELSH-1400 132 | pixel.ELSH-1411 133 | pixel.ELSH-1425 134 | pixel.ELSH-1436 135 | pixel.ELSH-1450 136 | pixel.ELSH-1500 137 | pixel.ELSH-1600 138 | pixel.wght-100 139 | pixel.wght-400 140 | pixel.wght-900 141 | pixel.ELGR-1 142 | pixel.ELGR-2 143 | 144 | 145 | 146 | 147 | """ 148 | 149 | source = """ 150 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | """ 159 | 160 | source_base = """ 161 | 162 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | """ 176 | 177 | instance = """ 178 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | """ 188 | 189 | 190 | def write_designspace(): 191 | """Iterate over the axes and write the designspace""" 192 | 193 | sources = "" 194 | instances = "" 195 | 196 | for w, is_weight_master, weight_name, _, _ in wghts: 197 | is_weight_default = w == default[0] 198 | 199 | for s, is_shape_master, shape_name, _, _ in ELSHs: 200 | is_shape_default = s == default[1] 201 | 202 | for g, is_grid_master, grid_name, _, _ in ELGRs: 203 | is_grid_default = g == default[2] 204 | 205 | if is_weight_master and is_shape_master and is_grid_master: 206 | # Write the for this combination 207 | print("Adding for location " 208 | "(wght %d, ELSH %d, ELGR %d)" 209 | % (w, s, int(g))) 210 | 211 | if is_weight_default and is_shape_default and \ 212 | is_grid_default: 213 | sources += source_base % (w, s, int(g)) 214 | else: 215 | # NOTE For the brace layer (and glyphs sources) the 216 | # layer cannot include decimals, so ELGR is 1-3, but 217 | # for the actual axis value we want to use a single 218 | # decimal to comply with the initial ELGR axis 219 | # defintion which features decimals (to hint for apps 220 | # what precision to use in the UI for this axis) 221 | brace = "{%d,%d,%d}" % (w, s * 100, int(g)) 222 | sources += source % (brace, brace, 223 | w, s, "{0:0.1f}".format(g)) 224 | 225 | # If shape and grid are the default, then write a named fvar 226 | # for this combination (weight) 227 | if is_shape_default and is_grid_default: 228 | brace = "{%d,%d,%d}" % (w, s * 100, g) 229 | stylename = weight_name 230 | instances += instance % (brace, brace, stylename, 231 | w, s, "{0:0.1f}".format(g)) 232 | print("Adding named fvar '%s' for location " 233 | "(wght %d, ELSH %d, ELGR %d)" 234 | % (stylename, w, s, g)) 235 | 236 | # Write all designspace parts 237 | ds = code % (sources, instances) 238 | with open(ds_path, "w") as f: 239 | f.write(ds) 240 | print("Designspace written to '%s'" % ds_path) 241 | 242 | 243 | if __name__ == "__main__": 244 | write_designspace() 245 | -------------------------------------------------------------------------------- /production/workflow.yaml: -------------------------------------------------------------------------------- 1 | # mrhandy 1.2.1 2 | # ---------------------------------------------------- 3 | # A proprietary tooling to generate Handjet web fonts 4 | # for the Rosetta foundry website. If you are updating 5 | # or compiling Handjet fonts from sources you need not 6 | # worry about this script/config file :) 7 | # ---------------------------------------------------- 8 | - name: copy 9 | tasks: 10 | - $ mkdir fonts/HandjetVariable 11 | - $ cp fonts/Handjet[ELGR,ELSH,wght].ttf fonts/HandjetVariable/HandjetVF-All.ttf 12 | - .post.update_names: 13 | style_name: All 14 | - name: desktop 15 | source: [fonts/HandjetVariable] 16 | family: [Handjet Variable] 17 | tasks: 18 | - .post.update_names: 19 | style_name: All 20 | - name: web 21 | source: [fonts/HandjetVariable] 22 | family: [Handjet Variable Web] 23 | tasks: 24 | - .post.make_webfonts 25 | - name: qa 26 | source: [fonts/HandjetVariable] 27 | tasks: 28 | - .test.check_fonts 29 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | brotli>=1.0.9 # For woff2 compression 2 | fontbakery>=0.7.31 3 | fontmake==3.5.1 4 | gftools==0.4.3 -------------------------------------------------------------------------------- /test/Handjet_Arabic.indd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/test/Handjet_Arabic.indd -------------------------------------------------------------------------------- /test/Handjet_Arabic.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/test/Handjet_Arabic.pdf -------------------------------------------------------------------------------- /test/Handjet_Armenian.indd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/test/Handjet_Armenian.indd -------------------------------------------------------------------------------- /test/Handjet_Armenian.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/test/Handjet_Armenian.pdf -------------------------------------------------------------------------------- /test/Handjet_Hebrew.indd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/test/Handjet_Hebrew.indd -------------------------------------------------------------------------------- /test/Handjet_Hebrew.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rosettatype/handjet/75960e1d7b60a20820d49b8ac34af220b3102574/test/Handjet_Hebrew.pdf -------------------------------------------------------------------------------- /tools/drawbot-scripts/Handjet-ELGR-animation.py: -------------------------------------------------------------------------------- 1 | """ 2 | Handjet ELGR axis animation 3 | """ 4 | 5 | import drawBot as db 6 | 7 | # Global settings 8 | 9 | w, h = 400, 400 10 | scale = 1 11 | TEXTCOL = (0, 0, 0) 12 | BACKCOL = (230 / 255, 250 / 255, 40 / 255) 13 | NODECOL = (1, 1, 1) 14 | defaults = {"wght": 400, "ELSH": 8, "ELGR": 1.0} 15 | handjetfont = "Handjet-Regular" 16 | 17 | # Draw a single frame 18 | 19 | def draw(txt="a", variations={}, caption=""): 20 | db.newPage(w * scale, h * scale) 21 | db.scale(scale) 22 | db.fill(*BACKCOL) 23 | db.rect(0, 0, w, h) 24 | txt = db.FormattedString(txt, font=handjetfont, fontSize=500, fontVariations=variations) 25 | db.fill(*TEXTCOL) 26 | db.stroke(None) 27 | path = db.BezierPath() 28 | path.text(txt, (w / 2, 95), align="center") 29 | db.drawPath(path) 30 | txt = db.FormattedString(caption, font="AdapterMonoPE-Regular", fontSize=11, fill=TEXTCOL) 31 | db.text(txt, (w / 2, 40), align="center") 32 | 33 | # Animate ELGR axis 34 | 35 | db.newDrawing() 36 | variations = defaults.copy() 37 | step = 5 38 | for elgr in range(100, 200 + step, step): 39 | caption = "Element Grid (ELGR): %.2f" % (elgr / 100) 40 | variations["ELGR"] = elgr / 100 41 | draw(txt="n", variations=variations, caption=caption) 42 | for elgr in range(200, 100 - step, -step): 43 | caption = "Element Grid (ELGR): %.2f" % (elgr / 100) 44 | variations["ELGR"] = elgr / 100 45 | draw(txt="n", variations=variations, caption=caption) 46 | db.saveImage("../../docs/animations/Handjet-ELGR-animation.gif") 47 | db.endDrawing() 48 | -------------------------------------------------------------------------------- /tools/drawbot-scripts/Handjet-ELSH-animation_element.py: -------------------------------------------------------------------------------- 1 | """ 2 | Handjet ELSH interpolation (element shape) 3 | """ 4 | 5 | import drawBot as db 6 | 7 | # Global settings 8 | 9 | w, h = 400, 400 10 | scale = 1 11 | TEXTCOL = (0, 0, 0) 12 | BACKCOL = (230 / 255, 250 / 255, 40 / 255) 13 | NODECOL = (1, 1, 1) 14 | defaults = {"wght": 400, "ELSH": 8, "ELGR": 1.0} 15 | handjetfont = "Handjet-Regular" 16 | 17 | # Draw a single frame 18 | 19 | def draw(txt="a", variations={}, caption=""): 20 | db.newPage(w * scale, h * scale) 21 | db.scale(scale) 22 | db.fill(*BACKCOL) 23 | db.stroke(None) 24 | db.rect(0, 0, w, h) 25 | fs = db.FormattedString(txt, font=handjetfont, fontSize=4600, fontVariations=variations) 26 | path = db.BezierPath() 27 | path.text(fs, (w / 2, 1.58 * h), align="center") 28 | path_optim = path.copy() 29 | # remove overlaps when drawing the fill 30 | # but use the original contour when drawing the nodes 31 | path_optim.removeOverlap() 32 | path_optim.optimizePath() 33 | # draw the fill 34 | db.fill(*TEXTCOL) 35 | db.drawPath(path_optim) 36 | # draw nodes 37 | if path.contours: 38 | # drawing just the first contour is enough 39 | for s in path.contours[0]: 40 | for x, y in s: 41 | if (x, y) in path.onCurvePoints: 42 | db.fill(*NODECOL) 43 | db.stroke(*TEXTCOL) 44 | db.strokeWidth(1) 45 | db.oval(x-4, y-4, 8, 8) 46 | # draw caption 47 | fs = db.FormattedString(caption, font="AdapterMonoPE-Regular", fontSize=10, fill=TEXTCOL) 48 | if caption: 49 | db.text(fs, (w / 2, 40), align="center") 50 | 51 | # Animate ELSH axis 52 | 53 | elsh_steps = [ 54 | ("Blank", 0), 55 | ("Triangle", 1.00), 56 | ("Square", 2.00), 57 | ("Lozenge", 2.25), 58 | ("Square again", 2.50), 59 | ("Block", 3.19), 60 | ("Rectangle", 3.36), 61 | ("Bar (Vertical)", 4.00), 62 | ("Bar (Diagonal Up)", 4.25), 63 | ("Bar (Horizontal)", 4.50), 64 | ("Bar (Diagonal Down)", 4.75), 65 | ("Bar (Vertical again)", 5.00), 66 | ("Square again", 6.50), 67 | ("Rounded Square", 6.90), 68 | ("Squircle", 7.63), 69 | ("Circle", 8.00), 70 | ("Egg", 8.69), 71 | ("Oval", 8.86), 72 | ("Thinner Oval", 9.50), 73 | ("Circle again", 11.00), 74 | ("Clover", 12.00), 75 | ("Flower", 13.00), 76 | ("Star", 14.00), 77 | ("Diagonal Star", 14.25), 78 | ("Star again", 14.50), 79 | ("Big Star", 14.75), 80 | ("Spindle", 15.00), 81 | ("Pin", 15.37), 82 | ("Heart", 16.00), 83 | ] 84 | 85 | db.newDrawing() 86 | variations = defaults.copy() 87 | step = 5 88 | max_pos = max([p for _, p in elsh_steps]) 89 | current_name = elsh_steps[0][0] 90 | for i, (_, pos) in enumerate(elsh_steps): 91 | if (i + 1) < len(elsh_steps): 92 | next_name, next_pos = elsh_steps[i + 1] 93 | else: 94 | next_pos = max_pos 95 | pos, next_pos = int(100 * pos), int(100 * next_pos) 96 | delay = (next_pos - pos) / 3 97 | for elsh in range(pos, next_pos, step): 98 | if elsh > (pos + delay): 99 | current_name = next_name 100 | variations["ELSH"] = elsh / 100 101 | caption = "Element Shape (ELSH): %.2f\n“%s”" % (elsh / 100, current_name) 102 | draw(txt="﮳", variations=variations, caption=caption) 103 | db.saveImage("../../docs/animations/Handjet-ELSH-animation_element.gif") 104 | db.endDrawing() 105 | -------------------------------------------------------------------------------- /tools/drawbot-scripts/Handjet-ELSH-animation_letter.py: -------------------------------------------------------------------------------- 1 | """ 2 | Handjet ELSH interpolation (single letter) 3 | """ 4 | 5 | import drawBot as db 6 | 7 | # Global settings 8 | 9 | w, h = 400, 400 10 | scale = 1 11 | TEXTCOL = (0, 0, 0) 12 | BACKCOL = (230 / 255, 250 / 255, 40 / 255) 13 | NODECOL = (1, 1, 1) 14 | defaults = {"wght": 400, "ELSH": 8, "ELGR": 1.01} 15 | handjetfont = "Handjet-Regular" 16 | 17 | # Draw a single frame 18 | 19 | def draw(txt="a", variations={}, caption=""): 20 | db.newPage(w * scale, h * scale) 21 | db.scale(scale) 22 | db.fill(*BACKCOL) 23 | db.rect(0, 0, w, h) 24 | fs = db.FormattedString(txt, font=handjetfont, fontSize=500, fontVariations=variations) 25 | db.fill(*TEXTCOL) 26 | db.stroke(None) 27 | path = db.BezierPath() 28 | path.text(fs, (w / 2, 95), align="center") 29 | db.drawPath(path) 30 | fs = db.FormattedString(caption, font="AdapterMonoPE-Regular", fontSize=10, fill=TEXTCOL) 31 | db.text(fs, (w / 2, 40), align="center") 32 | 33 | # Animate ELSH axis 34 | 35 | elsh_steps = [ 36 | ("Blank", 0), 37 | ("Triangle", 1.00), 38 | ("Square", 2.00), 39 | ("Lozenge", 2.25), 40 | ("Square again", 2.50), 41 | ("Block", 3.19), 42 | ("Rectangle", 3.36), 43 | ("Bar (Vertical)", 4.00), 44 | ("Bar (Diagonal Up)", 4.25), 45 | ("Bar (Horizontal)", 4.50), 46 | ("Bar (Diagonal Down)", 4.75), 47 | ("Bar (Vertical again)", 5.00), 48 | ("Square again", 6.50), 49 | ("Rounded Square", 6.90), 50 | ("Squircle", 7.63), 51 | ("Circle", 8.00), 52 | ("Egg", 8.69), 53 | ("Oval", 8.86), 54 | ("Thinner Oval", 9.50), 55 | ("Circle again", 11.00), 56 | ("Clover", 12.00), 57 | ("Flower", 13.00), 58 | ("Star", 14.00), 59 | ("Diagonal Star", 14.25), 60 | ("Star again", 14.50), 61 | ("Big Star", 14.75), 62 | ("Spindle", 15.00), 63 | ("Pin", 15.37), 64 | ("Heart", 16.00), 65 | ] 66 | 67 | db.newDrawing() 68 | variations = defaults.copy() 69 | step = 5 70 | max_pos = max([p for _, p in elsh_steps]) 71 | current_name = elsh_steps[0][0] 72 | for i, (_, pos) in enumerate(elsh_steps): 73 | if (i + 1) < len(elsh_steps): 74 | next_name, next_pos = elsh_steps[i + 1] 75 | else: 76 | next_pos = max_pos 77 | pos, next_pos = int(100 * pos), int(100 * next_pos) 78 | delay = (next_pos - pos) / 3 79 | for elsh in range(pos, next_pos, step): 80 | if elsh > (pos + delay): 81 | current_name = next_name 82 | variations["ELSH"] = elsh / 100 83 | caption = "Element Shape (ELSH): %.2f\n“%s”" % (elsh / 100, current_name) 84 | draw(txt="a", variations=variations, caption=caption) 85 | db.saveImage("../../docs/animations/Handjet-ELSH-animation_letter.gif") 86 | db.endDrawing() 87 | -------------------------------------------------------------------------------- /tools/drawbot-scripts/Handjet-ELSH-animation_word.py: -------------------------------------------------------------------------------- 1 | """ 2 | Handjet ELSH interpolation (a word) 3 | """ 4 | 5 | import drawBot as db 6 | 7 | # Global settings 8 | 9 | w, h = 800, 400 10 | scale = 1 11 | TEXTCOL = (0, 0, 0) 12 | BACKCOL = (230 / 255, 250 / 255, 40 / 255) 13 | NODECOL = (1, 1, 1) 14 | defaults = {"wght": 400, "ELSH": 8, "ELGR": 1.01} 15 | handjetfont = "Handjet-Regular" 16 | 17 | # Draw a single frame 18 | 19 | def draw(txt="a", variations={}, caption=""): 20 | db.newPage(w * scale, h * scale) 21 | db.scale(scale) 22 | db.fill(*BACKCOL) 23 | db.rect(0, 0, w, h) 24 | fs = db.FormattedString(txt, font=handjetfont, fontSize=185, fontVariations=variations) 25 | db.fill(*TEXTCOL) 26 | db.stroke(None) 27 | path = db.BezierPath() 28 | path.text(fs, (w / 2, 150), align="center") 29 | db.drawPath(path) 30 | fs = db.FormattedString(caption, font="AdapterMonoPE-Regular", fontSize=10, fill=TEXTCOL) 31 | db.text(fs, (w / 2, 40), align="center") 32 | 33 | # Animate ELSH axis 34 | 35 | elsh_steps = [ 36 | ("Blank", 0), 37 | ("Triangle", 1.00), 38 | ("Square", 2.00), 39 | ("Lozenge", 2.25), 40 | ("Square again", 2.50), 41 | ("Block", 3.19), 42 | ("Rectangle", 3.36), 43 | ("Bar (Vertical)", 4.00), 44 | ("Bar (Diagonal Up)", 4.25), 45 | ("Bar (Horizontal)", 4.50), 46 | ("Bar (Diagonal Down)", 4.75), 47 | ("Bar (Vertical again)", 5.00), 48 | ("Square again", 6.50), 49 | ("Rounded Square", 6.90), 50 | ("Squircle", 7.63), 51 | ("Circle", 8.00), 52 | ("Egg", 8.69), 53 | ("Oval", 8.86), 54 | ("Thinner Oval", 9.50), 55 | ("Circle again", 11.00), 56 | ("Clover", 12.00), 57 | ("Flower", 13.00), 58 | ("Star", 14.00), 59 | ("Diagonal Star", 14.25), 60 | ("Star again", 14.50), 61 | ("Big Star", 14.75), 62 | ("Spindle", 15.00), 63 | ("Pin", 15.37), 64 | ("Heart", 16.00), 65 | ] 66 | 67 | db.newDrawing() 68 | variations = defaults.copy() 69 | step = 5 70 | max_pos = max([p for _, p in elsh_steps]) 71 | current_name = elsh_steps[0][0] 72 | for i, (_, pos) in enumerate(elsh_steps): 73 | if (i + 1) < len(elsh_steps): 74 | next_name, next_pos = elsh_steps[i + 1] 75 | else: 76 | next_pos = max_pos 77 | pos, next_pos = int(100 * pos), int(100 * next_pos) 78 | delay = (next_pos - pos) / 3 79 | for elsh in range(pos, next_pos, step): 80 | if elsh > (pos + delay): 81 | current_name = next_name 82 | variations["ELSH"] = elsh / 100 83 | caption = "Element Shape (ELSH): %.2f\n“%s”" % (elsh / 100, current_name) 84 | draw(txt="Possibilities", variations=variations, caption=caption) 85 | db.saveImage("../../docs/animations/Handjet-ELSH-animation_word.gif") 86 | db.endDrawing() 87 | -------------------------------------------------------------------------------- /tools/drawbot-scripts/Handjet-flythrough.py: -------------------------------------------------------------------------------- 1 | """ 2 | Handjet flythrough glyph set animation 3 | """ 4 | 5 | import csv 6 | import unicodedata 7 | import drawBot as db 8 | 9 | # Global settings 10 | 11 | w, h = 400, 400 12 | scale = 1 13 | TEXTCOL = (0, 0, 0) 14 | BACKCOL = (230 / 255, 250 / 255, 40 / 255) 15 | NODECOL = (1, 1, 1) 16 | defaults = {"wght": 400, "ELSH": 8, "ELGR": 1.01} 17 | handjetfont = "Handjet-Regular" 18 | 19 | # Draw a single frame 20 | 21 | def draw(gn="a", variations={}, caption=""): 22 | db.newPage(w * scale, h * scale) 23 | db.scale(scale) 24 | db.fill(*BACKCOL) 25 | db.rect(0, 0, w, h) 26 | fs = db.FormattedString() 27 | fs.font(handjetfont) 28 | fs.fontSize(200) 29 | fs.appendGlyph(gn) 30 | db.fill(*TEXTCOL) 31 | db.stroke(None) 32 | path = db.BezierPath() 33 | path.text(fs, (w / 2, 145), align="center") 34 | db.drawPath(path) 35 | fs = db.FormattedString(caption, font="AdapterMonoPE-Regular", fontSize=10, fill=TEXTCOL) 36 | db.text(fs, (w / 2, 40), align="center") 37 | 38 | # Animate fly-through the whole glyph set 39 | 40 | db.newDrawing() 41 | db.font(handjetfont) 42 | variations = defaults.copy() 43 | unicodes = [] 44 | with open("glyphnames-unicodes-show.csv", "r") as f: 45 | reader = csv.reader(f, delimiter=",") 46 | # line: glyph name, unicode, whether it should be shown 47 | for _, u, show in reader: 48 | if u: 49 | unicodes.append((u, eval(show))) 50 | else: 51 | unicodes.append((None, eval(show))) 52 | for (u, show), gn in list(zip(unicodes, db.listFontGlyphNames())): 53 | # show only non-empty glyphs with a width (avoiding accents and spaces) 54 | if show: 55 | if u: 56 | try: 57 | caption = unicodedata.name(chr(int(u, 16))) + "\n" + u 58 | except ValueError: 59 | caption = "" 60 | else: 61 | caption = "" 62 | draw(gn, variations=variations, caption=caption) 63 | db.saveImage("../../docs/animations/Handjet-flythrough.gif") 64 | db.endDrawing() 65 | -------------------------------------------------------------------------------- /tools/drawbot-scripts/Handjet-wght-animation.py: -------------------------------------------------------------------------------- 1 | """ 2 | Handjet wght axis animation 3 | """ 4 | 5 | import drawBot as db 6 | 7 | # Global settings 8 | 9 | w, h = 400, 400 10 | scale = 1 11 | TEXTCOL = (0, 0, 0) 12 | BACKCOL = (230 / 255, 250 / 255, 40 / 255) 13 | NODECOL = (1, 1, 1) 14 | defaults = {"wght": 400, "ELSH": 8, "ELGR": 1.01} 15 | handjetfont = "Handjet-Regular" 16 | 17 | # Draw a single frame 18 | 19 | def draw(txt="a", variations={}, caption=""): 20 | db.newPage(w * scale, h * scale) 21 | db.scale(scale) 22 | db.fill(*BACKCOL) 23 | db.rect(0, 0, w, h) 24 | txt = db.FormattedString(txt, font=handjetfont, fontSize=500, fontVariations=variations) 25 | db.fill(*TEXTCOL) 26 | db.stroke(None) 27 | path = db.BezierPath() 28 | path.text(txt, (w / 2, 95), align="center") 29 | db.drawPath(path) 30 | txt = db.FormattedString(caption, font="AdapterMonoPE-Regular", fontSize=11, fill=TEXTCOL) 31 | db.text(txt, (w / 2, 40), align="center") 32 | 33 | # Animate wght axis 34 | 35 | db.newDrawing() 36 | step = 20 37 | variations = defaults.copy() 38 | for wght in range(100, 900 + step, step): 39 | caption = "Weight (wght): %.2f" % (wght) 40 | variations["wght"] = wght 41 | draw(txt="e", variations=variations, caption=caption) 42 | for wght in range(900, 100 - step, -step): 43 | caption = "Weight (wght): %.2f" % (wght) 44 | variations["wght"] = wght 45 | draw(txt="e", variations=variations, caption=caption) 46 | db.saveImage("../../docs/animations/Handjet-wght-animation.gif") 47 | db.endDrawing() 48 | -------------------------------------------------------------------------------- /tools/drawbot-scripts/glyphnames-unicodes-show.csv: -------------------------------------------------------------------------------- 1 | NULL,0x0000,False 2 | CR,0x000D,False 3 | space,0x0020,False 4 | nbspace,0x00A0,False 5 | enspace,0x2002,False 6 | emspace,0x2003,False 7 | thinspace,0x2009,False 8 | thinnbspace,0x202F,False 9 | A,0x0041,True 10 | B,0x0042,True 11 | C,0x0043,True 12 | D,0x0044,True 13 | E,0x0045,True 14 | F,0x0046,True 15 | G,0x0047,True 16 | H,0x0048,True 17 | I,0x0049,True 18 | J,0x004A,True 19 | K,0x004B,True 20 | L,0x004C,True 21 | M,0x004D,True 22 | N,0x004E,True 23 | O,0x004F,True 24 | P,0x0050,True 25 | Q,0x0051,True 26 | R,0x0052,True 27 | S,0x0053,True 28 | T,0x0054,True 29 | U,0x0055,True 30 | V,0x0056,True 31 | W,0x0057,True 32 | X,0x0058,True 33 | Y,0x0059,True 34 | Z,0x005A,True 35 | a,0x0061,True 36 | b,0x0062,True 37 | c,0x0063,True 38 | d,0x0064,True 39 | e,0x0065,True 40 | f,0x0066,True 41 | g,0x0067,True 42 | h,0x0068,True 43 | i,0x0069,True 44 | j,0x006A,True 45 | k,0x006B,True 46 | l,0x006C,True 47 | m,0x006D,True 48 | n,0x006E,True 49 | o,0x006F,True 50 | p,0x0070,True 51 | q,0x0071,True 52 | r,0x0072,True 53 | s,0x0073,True 54 | t,0x0074,True 55 | u,0x0075,True 56 | v,0x0076,True 57 | w,0x0077,True 58 | x,0x0078,True 59 | y,0x0079,True 60 | z,0x007A,True 61 | quotesingle,0x0027,True 62 | quotedbl,0x0022,True 63 | numbersign,0x0023,True 64 | ampersand,0x0026,True 65 | asterisk,0x002A,True 66 | comma,0x002C,True 67 | hyphen,0x002D,True 68 | hyphentwo,0x2010,False 69 | softhyphen,0x00AD,False 70 | nonbreakinghyphen,0x2011,False 71 | period,0x002E,True 72 | colon,0x003A,True 73 | semicolon,0x003B,True 74 | question,0x003F,True 75 | reversedcomma,0x2E41,True 76 | reversedsemicolon,0x204F,True 77 | exclam,0x0021,True 78 | questiondown,0x00BF,True 79 | questiondown.case,,False 80 | exclamdown,0x00A1,True 81 | exclamdown.case,,False 82 | at,0x0040,True 83 | at.case,,False 84 | parenleft,0x0028,True 85 | parenright,0x0029,True 86 | bracketleft,0x005B,True 87 | bracketright,0x005D,True 88 | braceleft,0x007B,True 89 | braceright,0x007D,True 90 | angledbracketleft,0x3008,True 91 | angledbracketright,0x3009,True 92 | leftFacingEternity,0x058E,True 93 | rightFacingEternity,0x058D,True 94 | backslash,0x005C,True 95 | slash,0x002F,True 96 | brokenbar,0x00A6,True 97 | bar,0x007C,True 98 | asciicircum,0x005E,True 99 | underscore,0x005F,True 100 | asciitilde,0x007E,True 101 | section,0x00A7,True 102 | copyright,0x00A9,True 103 | registered,0x00AE,True 104 | trademark,0x2122,True 105 | ordfeminine,0x00AA,True 106 | ordmasculine,0x00BA,True 107 | guilsinglleft,0x2039,True 108 | guilsinglright,0x203A,True 109 | guillemetleft,0x00AB,True 110 | guillemetright,0x00BB,True 111 | quoteleft,0x2018,True 112 | quoteright,0x2019,True 113 | quotesinglbase,0x201A,False 114 | quotedblleft,0x201C,True 115 | quotedblright,0x201D,True 116 | quotedblbase,0x201E,True 117 | dagger,0x2020,True 118 | daggerdbl,0x2021,True 119 | ellipsis,0x2026,True 120 | paragraph,0x00B6,True 121 | periodcentered,0x00B7,True 122 | endash,0x2013,True 123 | emdash,0x2014,True 124 | hyphen.case,,False 125 | colon.case,,False 126 | endash.case,,False 127 | emdash.case,,False 128 | guilsinglleft.case,,False 129 | guilsinglright.case,,False 130 | guillemetleft.case,,False 131 | guillemetright.case,,False 132 | circumflex,0x02C6,False 133 | caron,0x02C7,False 134 | macron,0x00AF,False 135 | firsttonechinese,0x02C9,False 136 | secondtonechinese,0x02CA,False 137 | fourthtonechinese,0x02CB,False 138 | breve,0x02D8,False 139 | dieresis,0x00A8,False 140 | acute,0x00B4,False 141 | grave,0x0060,False 142 | cedilla,0x00B8,False 143 | dotaccent,0x02D9,False 144 | ring,0x02DA,False 145 | ogonek,0x02DB,False 146 | tilde,0x02DC,False 147 | hungarumlaut,0x02DD,False 148 | dblgrave,,False 149 | circumflexcomb,0x0302,False 150 | circumflexcomb.case,,False 151 | caroncomb,0x030C,False 152 | caroncomb.case,,False 153 | caroncomb.calt,,False 154 | macroncomb,0x0304,False 155 | macronbelowcomb,0x0331,False 156 | brevecomb,0x0306,False 157 | brevecomb.case,,False 158 | brevebelowcomb,0x032E,False 159 | brevebelowcomb.case,,False 160 | dieresiscomb,0x0308,False 161 | dieresisbelow,0x0324,False 162 | acutecomb,0x0301,False 163 | acutecomb.case,,False 164 | gravecomb,0x0300,False 165 | gravecomb.case,,False 166 | cedillacomb,0x0327,False 167 | dotaccentcomb,0x0307,False 168 | ringcomb,0x030A,False 169 | ogonekcomb,0x0328,False 170 | tildecomb,0x0303,False 171 | hungarumlautcomb,0x030B,False 172 | dblgravecomb,0x030F,False 173 | commaaccentcomb,0x0326,False 174 | commaturnedabovecomb,0x0312,False 175 | commaabovecomb,0x0313,False 176 | apostrophemodifier,0x02BC,True 177 | dotbelowcomb,0x0323,False 178 | hookabovecomb,0x0309,False 179 | horncomb,0x031B,False 180 | barcomb,0x0335,False 181 | brevecomb_acutecomb,,False 182 | brevecomb_acutecomb.case,,False 183 | brevecomb_gravecomb,,False 184 | brevecomb_gravecomb.case,,False 185 | brevecomb_hookabovecomb,,False 186 | brevecomb_hookabovecomb.case,,False 187 | brevecomb_tildecomb,,False 188 | brevecomb_tildecomb.case,,False 189 | breveinvertedcomb,0x0311,False 190 | breveinvertedcomb.case,,False 191 | circumflexcomb_acutecomb,,False 192 | circumflexcomb_tildecomb.case,,False 193 | circumflexcomb_gravecomb,,False 194 | circumflexcomb_gravecomb.case,,False 195 | circumflexcomb_hookabovecomb,,False 196 | circumflexcomb_hookabovecomb.case,,False 197 | circumflexcomb_tildecomb,,False 198 | circumflexcomb_acutecomb.case,,False 199 | tildecomb.narrow,,False 200 | primemod,0x02B9,False 201 | dblprimemod,0x02BA,False 202 | Agrave,0x00C0,True 203 | Aacute,0x00C1,True 204 | Acircumflex,0x00C2,True 205 | Atilde,0x00C3,True 206 | Amacron,0x0100,True 207 | Abreve,0x0102,True 208 | Adieresis,0x00C4,True 209 | Aring,0x00C5,True 210 | Aogonek,0x0104,True 211 | Aringacute,0x01FA,True 212 | Abreveacute,0x1EAE,True 213 | Abrevedotbelow,0x1EB6,True 214 | Abrevegrave,0x1EB0,True 215 | Abrevehookabove,0x1EB2,True 216 | Abrevetilde,0x1EB4,True 217 | Acircumflexacute,0x1EA4,True 218 | Acircumflexdotbelow,0x1EAC,True 219 | Acircumflexgrave,0x1EA6,True 220 | Acircumflexhookabove,0x1EA8,True 221 | Acircumflextilde,0x1EAA,True 222 | Ahookabove,0x1EA2,True 223 | Adotbelow,0x1EA0,True 224 | AE,0x00C6,True 225 | AEacute,0x01FC,True 226 | Cacute,0x0106,True 227 | Ccircumflex,0x0108,True 228 | Cdotaccent,0x010A,True 229 | Ccaron,0x010C,True 230 | Ccedilla,0x00C7,True 231 | Dcaron,0x010E,True 232 | Dcroat,0x0110,False 233 | Eth,0x00D0,True 234 | Egrave,0x00C8,True 235 | Eacute,0x00C9,True 236 | Ecircumflex,0x00CA,True 237 | Emacron,0x0112,True 238 | Ebreve,0x0114,True 239 | Edotaccent,0x0116,True 240 | Edieresis,0x00CB,True 241 | Ecaron,0x011A,True 242 | Eogonek,0x0118,True 243 | Ecircumflexacute,0x1EBE,True 244 | Ecircumflexdotbelow,0x1EC6,True 245 | Ecircumflexgrave,0x1EC0,True 246 | Ecircumflexhookabove,0x1EC2,True 247 | Ecircumflextilde,0x1EC4,True 248 | Ehookabove,0x1EBA,True 249 | Etilde,0x1EBC,True 250 | Edotbelow,0x1EB8,True 251 | Gcircumflex,0x011C,True 252 | Gbreve,0x011E,True 253 | Gdotaccent,0x0120,True 254 | Gcommaaccent,0x0122,True 255 | Hcircumflex,0x0124,True 256 | Hbar,0x0126,True 257 | Igrave,0x00CC,True 258 | Iacute,0x00CD,True 259 | Icircumflex,0x00CE,True 260 | Itilde,0x0128,True 261 | Imacron,0x012A,True 262 | Ibreve,0x012C,True 263 | Idotaccent,0x0130,True 264 | Idieresis,0x00CF,True 265 | Iogonek,0x012E,True 266 | Ihookabove,0x1EC8,True 267 | Idotbelow,0x1ECA,True 268 | IJ,0x0132,True 269 | Iacute_J.NLD,,True 270 | Jacute,0xFC001,True 271 | Jcircumflex,0x0134,True 272 | Kcommaaccent,0x0136,True 273 | Lacute,0x0139,True 274 | Lcommaaccent,0x013B,True 275 | Lcaron,0x013D,True 276 | Ldot,0x013F,True 277 | Lslash,0x0141,True 278 | Nacute,0x0143,True 279 | Ntilde,0x00D1,True 280 | Ncaron,0x0147,True 281 | Eng,0x014A,True 282 | Ncommaaccent,0x0145,True 283 | Ograve,0x00D2,True 284 | Oacute,0x00D3,True 285 | Ocircumflex,0x00D4,True 286 | Otilde,0x00D5,True 287 | Omacron,0x014C,True 288 | Obreve,0x014E,True 289 | Odieresis,0x00D6,True 290 | Ohungarumlaut,0x0150,True 291 | Oslash,0x00D8,True 292 | Oslashacute,0x01FE,True 293 | Ocircumflexacute,0x1ED0,True 294 | Ocircumflexdotbelow,0x1ED8,True 295 | Ocircumflexgrave,0x1ED2,True 296 | Ocircumflexhookabove,0x1ED4,True 297 | Ocircumflextilde,0x1ED6,True 298 | Ohookabove,0x1ECE,True 299 | Ohorn,0x01A0,True 300 | Ohornacute,0x1EDA,True 301 | Ohorndotbelow,0x1EE2,True 302 | Ohorngrave,0x1EDC,True 303 | Ohornhookabove,0x1EDE,True 304 | Ohorntilde,0x1EE0,True 305 | Odotbelow,0x1ECC,True 306 | OE,0x0152,True 307 | Racute,0x0154,True 308 | Rcaron,0x0158,True 309 | Rcommaaccent,0x0156,True 310 | Sacute,0x015A,True 311 | Scircumflex,0x015C,True 312 | Scaron,0x0160,True 313 | Scommaaccent,0x0218,True 314 | Scedilla,0x015E,True 315 | Germandbls,0x1E9E,True 316 | Tcaron,0x0164,True 317 | Tcommaaccent,0x021A,True 318 | Tcedilla,0x0162,True 319 | Tbar,0x0166,True 320 | Ugrave,0x00D9,True 321 | Uacute,0x00DA,True 322 | Ucircumflex,0x00DB,True 323 | Utilde,0x0168,True 324 | Umacron,0x016A,True 325 | Ubreve,0x016C,True 326 | Udieresis,0x00DC,True 327 | Uring,0x016E,True 328 | Uhungarumlaut,0x0170,True 329 | Uogonek,0x0172,True 330 | Uhookabove,0x1EE6,True 331 | Uhorn,0x01AF,True 332 | Uhornacute,0x1EE8,True 333 | Uhorndotbelow,0x1EF0,True 334 | Uhorngrave,0x1EEA,True 335 | Uhornhookabove,0x1EEC,True 336 | Uhorntilde,0x1EEE,True 337 | Udotbelow,0x1EE4,True 338 | Wgrave,0x1E80,True 339 | Wacute,0x1E82,True 340 | Wcircumflex,0x0174,True 341 | Wdieresis,0x1E84,True 342 | Ygrave,0x1EF2,True 343 | Yacute,0x00DD,True 344 | Ycircumflex,0x0176,True 345 | Ydieresis,0x0178,True 346 | Yhookabove,0x1EF6,True 347 | Ydotbelow,0x1EF4,True 348 | Ytilde,0x1EF8,True 349 | Zacute,0x0179,True 350 | Zdotaccent,0x017B,True 351 | Zcaron,0x017D,True 352 | Thorn,0x00DE,True 353 | Schwa,0x018F,True 354 | Abreveinverted,0x0202,True 355 | Adblgrave,0x0200,True 356 | Ebreveinverted,0x0206,True 357 | Edblgrave,0x0204,True 358 | Gcaron,0x01E6,True 359 | Ibreveinverted,0x020A,True 360 | Idblgrave,0x0208,True 361 | Obreveinverted,0x020E,True 362 | Odblgrave,0x020C,True 363 | Odieresismacron,0x022A,True 364 | Odotaccentmacron,0x0230,True 365 | Oogonek,0x01EA,True 366 | Otildemacron,0x022C,True 367 | Rbreveinverted,0x0212,True 368 | Rdblgrave,0x0210,True 369 | Ubreveinverted,0x0216,True 370 | Udblgrave,0x0214,True 371 | Ymacron,0x0232,True 372 | agrave,0x00E0,True 373 | aacute,0x00E1,True 374 | acircumflex,0x00E2,True 375 | atilde,0x00E3,True 376 | amacron,0x0101,True 377 | abreve,0x0103,True 378 | adieresis,0x00E4,True 379 | aring,0x00E5,True 380 | aogonek,0x0105,True 381 | aringacute,0x01FB,True 382 | abreveacute,0x1EAF,True 383 | abrevedotbelow,0x1EB7,True 384 | abrevegrave,0x1EB1,True 385 | abrevehookabove,0x1EB3,True 386 | abrevetilde,0x1EB5,True 387 | acircumflexacute,0x1EA5,True 388 | acircumflexdotbelow,0x1EAD,True 389 | acircumflexgrave,0x1EA7,True 390 | acircumflexhookabove,0x1EA9,True 391 | acircumflextilde,0x1EAB,True 392 | ahookabove,0x1EA3,True 393 | adotbelow,0x1EA1,True 394 | ae,0x00E6,True 395 | aeacute,0x01FD,True 396 | cacute,0x0107,True 397 | ccircumflex,0x0109,True 398 | cdotaccent,0x010B,True 399 | ccaron,0x010D,True 400 | ccedilla,0x00E7,True 401 | dcaron,0x010F,True 402 | dcroat,0x0111,True 403 | eth,0x00F0,True 404 | egrave,0x00E8,True 405 | eacute,0x00E9,True 406 | ecircumflex,0x00EA,True 407 | emacron,0x0113,True 408 | ebreve,0x0115,True 409 | edotaccent,0x0117,True 410 | edieresis,0x00EB,True 411 | ecaron,0x011B,True 412 | eogonek,0x0119,True 413 | ecircumflexacute,0x1EBF,True 414 | ecircumflexdotbelow,0x1EC7,True 415 | ecircumflexgrave,0x1EC1,True 416 | ecircumflexhookabove,0x1EC3,True 417 | ecircumflextilde,0x1EC5,True 418 | ehookabove,0x1EBB,True 419 | etilde,0x1EBD,True 420 | edotbelow,0x1EB9,True 421 | gcircumflex,0x011D,True 422 | gbreve,0x011F,True 423 | gdotaccent,0x0121,True 424 | gcommaaccent,0x0123,True 425 | hcircumflex,0x0125,True 426 | hbar,0x0127,True 427 | igrave,0x00EC,True 428 | iacute,0x00ED,True 429 | icircumflex,0x00EE,True 430 | itilde,0x0129,True 431 | imacron,0x012B,True 432 | ibreve,0x012D,True 433 | idotless,0x0131,True 434 | idieresis,0x00EF,True 435 | iogonek,0x012F,True 436 | ihookabove,0x1EC9,True 437 | idotbelow,0x1ECB,True 438 | ij,0x0133,True 439 | iacute_j.NLD,,True 440 | jacute,0xFC000,True 441 | jcircumflex,0x0135,True 442 | jdotless,0x0237,True 443 | kcommaaccent,0x0137,True 444 | kgreenlandic,0x0138,True 445 | lacute,0x013A,True 446 | lcommaaccent,0x013C,True 447 | lcaron,0x013E,True 448 | ldot,0x0140,True 449 | lslash,0x0142,True 450 | nacute,0x0144,True 451 | ntilde,0x00F1,True 452 | ncaron,0x0148,True 453 | eng,0x014B,True 454 | ncommaaccent,0x0146,True 455 | napostrophe,0x0149,True 456 | ograve,0x00F2,True 457 | oacute,0x00F3,True 458 | ocircumflex,0x00F4,True 459 | otilde,0x00F5,True 460 | omacron,0x014D,True 461 | obreve,0x014F,True 462 | odieresis,0x00F6,True 463 | ohungarumlaut,0x0151,True 464 | oslash,0x00F8,True 465 | oslashacute,0x01FF,True 466 | ocircumflexacute,0x1ED1,True 467 | ocircumflexdotbelow,0x1ED9,True 468 | ocircumflexgrave,0x1ED3,True 469 | ocircumflexhookabove,0x1ED5,True 470 | ocircumflextilde,0x1ED7,True 471 | ohookabove,0x1ECF,True 472 | ohorn,0x01A1,True 473 | ohornacute,0x1EDB,True 474 | ohorndotbelow,0x1EE3,True 475 | ohorngrave,0x1EDD,True 476 | ohornhookabove,0x1EDF,True 477 | ohorntilde,0x1EE1,True 478 | odotbelow,0x1ECD,True 479 | oe,0x0153,True 480 | racute,0x0155,True 481 | rcaron,0x0159,True 482 | rcommaaccent,0x0157,True 483 | sacute,0x015B,True 484 | scircumflex,0x015D,True 485 | scaron,0x0161,True 486 | scommaaccent,0x0219,True 487 | scedilla,0x015F,True 488 | germandbls,0x00DF,True 489 | tcaron,0x0165,True 490 | tcommaaccent,0x021B,True 491 | tcedilla,0x0163,True 492 | tbar,0x0167,True 493 | ugrave,0x00F9,True 494 | uacute,0x00FA,True 495 | ucircumflex,0x00FB,True 496 | utilde,0x0169,True 497 | umacron,0x016B,True 498 | ubreve,0x016D,True 499 | udieresis,0x00FC,True 500 | uring,0x016F,True 501 | uhungarumlaut,0x0171,True 502 | uogonek,0x0173,True 503 | uhookabove,0x1EE7,True 504 | uhorn,0x01B0,True 505 | uhornacute,0x1EE9,True 506 | uhorndotbelow,0x1EF1,True 507 | uhorngrave,0x1EEB,True 508 | uhornhookabove,0x1EED,True 509 | uhorntilde,0x1EEF,True 510 | udotbelow,0x1EE5,True 511 | wgrave,0x1E81,True 512 | wacute,0x1E83,True 513 | wcircumflex,0x0175,True 514 | wdieresis,0x1E85,True 515 | ygrave,0x1EF3,True 516 | yacute,0x00FD,True 517 | ycircumflex,0x0177,True 518 | ydieresis,0x00FF,True 519 | yhookabove,0x1EF7,True 520 | ytilde,0x1EF9,True 521 | ydotbelow,0x1EF5,True 522 | zacute,0x017A,True 523 | zdotaccent,0x017C,True 524 | zcaron,0x017E,True 525 | thorn,0x00FE,True 526 | schwa,0x0259,True 527 | abreveinverted,0x0203,True 528 | adblgrave,0x0201,True 529 | ebreveinverted,0x0207,True 530 | edblgrave,0x0205,True 531 | gcaron,0x01E7,True 532 | ibreveinverted,0x020B,True 533 | idblgrave,0x0209,True 534 | obreveinverted,0x020F,True 535 | odblgrave,0x020D,True 536 | odieresismacron,0x022B,True 537 | odotaccentmacron,0x0231,True 538 | oogonek,0x01EB,True 539 | otildemacron,0x022D,True 540 | rbreveinverted,0x0213,True 541 | rdblgrave,0x0211,True 542 | ubreveinverted,0x0217,True 543 | udblgrave,0x0215,True 544 | ymacron,0x0233,True 545 | idieresis_idieresis,,True 546 | zero,0x0030,True 547 | one,0x0031,True 548 | two,0x0032,True 549 | three,0x0033,True 550 | four,0x0034,True 551 | five,0x0035,True 552 | six,0x0036,True 553 | seven,0x0037,True 554 | eight,0x0038,True 555 | nine,0x0039,True 556 | dollar,0x0024,True 557 | euro,0x20AC,True 558 | cent,0x00A2,True 559 | sterling,0x00A3,True 560 | yen,0x00A5,True 561 | dong,0x20AB,True 562 | liraTurkish,0x20BA,True 563 | ruble,0x20BD,True 564 | rupeeIndian,0x20B9,True 565 | cedi,0x20B5,True 566 | colonsign,0x20A1,True 567 | dram,0x058F,True 568 | florin,0x0192,True 569 | franc,0x20A3,True 570 | guarani,0x20B2,True 571 | lira,0x20A4,True 572 | manat,0x20BC,True 573 | naira,0x20A6,True 574 | peseta,0x20A7,True 575 | peso,0x20B1,True 576 | sheqel,0x20AA,True 577 | tenge,0x20B8,True 578 | kip,0x20AD,True 579 | won,0x20A9,True 580 | currency,0x00A4,True 581 | commercialMinusSign,0x2052,True 582 | degree,0x00B0,True 583 | minute,0x2032,True 584 | second,0x2033,True 585 | percent,0x0025,True 586 | perthousand,0x2030,True 587 | fraction,0x2044,True 588 | divisionslash,0x2215,False 589 | plus,0x002B,True 590 | minus,0x2212,True 591 | plusminus,0x00B1,True 592 | divide,0x00F7,True 593 | multiply,0x00D7,True 594 | equal,0x003D,True 595 | approxequal,0x2248,True 596 | notequal,0x2260,True 597 | less,0x003C,True 598 | greater,0x003E,True 599 | lessequal,0x2264,True 600 | greaterequal,0x2265,True 601 | logicalnot,0x00AC,True 602 | bulletoperator,0x2219,True 603 | dotoperator,0x22C5,False 604 | bulletoperator.case,,False 605 | ohm,0x2126,False 606 | product,0x220F,True 607 | summation,0x2211,True 608 | increment,0x2206,False 609 | micro,0x00B5,False 610 | radical,0x221A,True 611 | infinity,0x221E,True 612 | integral,0x222B,True 613 | partialdiff,0x2202,True 614 | lozenge,0x25CA,True 615 | estimated,0x212E,True 616 | literSign,0x2113,True 617 | bullet,0x2022,True 618 | zerosuperior,0x2070,True 619 | onesuperior,0x00B9,True 620 | twosuperior,0x00B2,True 621 | threesuperior,0x00B3,True 622 | foursuperior,0x2074,True 623 | fivesuperior,0x2075,True 624 | sixsuperior,0x2076,True 625 | sevensuperior,0x2077,True 626 | eightsuperior,0x2078,True 627 | ninesuperior,0x2079,True 628 | zeroinferior,0x2080,False 629 | oneinferior,0x2081,False 630 | twoinferior,0x2082,False 631 | threeinferior,0x2083,False 632 | fourinferior,0x2084,False 633 | fiveinferior,0x2085,False 634 | sixinferior,0x2086,False 635 | seveninferior,0x2087,False 636 | eightinferior,0x2088,False 637 | nineinferior,0x2089,False 638 | onehalf,0x00BD,True 639 | onethird,0x2153,True 640 | twothirds,0x2154,True 641 | onequarter,0x00BC,True 642 | threequarters,0x00BE,True 643 | onefifth,0x2155,True 644 | twofifths,0x2156,True 645 | threefifths,0x2157,True 646 | fourfifths,0x2158,True 647 | onesixth,0x2159,True 648 | fivesixths,0x215A,True 649 | oneseventh,0x2150,True 650 | twosevenths,0xF0100,True 651 | threesevenths,0xF0101,True 652 | foursevenths,0xF0102,True 653 | fivesevenths,0xF0103,True 654 | sixsevenths,0xF0104,True 655 | oneeighth,0x215B,True 656 | threeeighths,0x215C,True 657 | fiveeighths,0x215D,True 658 | seveneighths,0x215E,True 659 | oneninth,0x2151,True 660 | twoninths,0xF0105,True 661 | fourninths,0xF0106,True 662 | fiveninths,0xF0107,True 663 | sevenninths,0xF0108,True 664 | eightninths,0xF0109,True 665 | arrowleft,0x2190,True 666 | arrowup,0x2191,True 667 | arrowright,0x2192,True 668 | arrowdown,0x2193,True 669 | arrowbar,,True 670 | idotlessogonek,,True 671 | periodcentered.CAT,,True 672 | periodcentered.CAT.case,,True 673 | DZ,0x01F1,True 674 | Dz,0x01F2,True 675 | dz,0x01F3,True 676 | DZcaron,0x01C4,True 677 | Dzcaron,0x01C5,True 678 | dzcaron,0x01C6,True 679 | LJ,0x01C7,True 680 | Lj,0x01C8,True 681 | lj,0x01C9,True 682 | NJ,0x01CA,True 683 | Nj,0x01CB,True 684 | nj,0x01CC,True 685 | c.A,0x0410,False 686 | c.Be,0x0411,True 687 | c.Ve,0x0412,False 688 | c.Ghe,0x0413,False 689 | c.De,0x0414,True 690 | c.Ie,0x0415,False 691 | c.Zhe,0x0416,True 692 | c.Ze,0x0417,True 693 | c.I,0x0418,True 694 | c.Ishort,0x0419,True 695 | c.Ka,0x041A,False 696 | c.El,0x041B,True 697 | c.Em,0x041C,False 698 | c.En,0x041D,False 699 | c.O,0x041E,False 700 | c.Pe,0x041F,False 701 | c.Er,0x0420,False 702 | c.Es,0x0421,False 703 | c.Te,0x0422,False 704 | c.U,0x0423,True 705 | c.Ef,0x0424,False 706 | c.Ha,0x0425,False 707 | c.Tse,0x0426,True 708 | c.Che,0x0427,True 709 | c.Sha,0x0428,True 710 | c.Shcha,0x0429,True 711 | c.Hard,0x042A,True 712 | c.Yeru,0x042B,True 713 | c.Soft,0x042C,True 714 | c.E,0x042D,True 715 | c.Yu,0x042E,True 716 | c.Ya,0x042F,True 717 | c.Gje,0x0403,True 718 | c.GheUkr,0x0490,True 719 | c.Dje,0x0402,True 720 | c.IeUkr,0x0404,True 721 | c.Dze,0x0405,False 722 | c.Iegrave,0x0400,True 723 | c.Io,0x0401,True 724 | c.IUkr,0x0406,False 725 | c.Yi,0x0407,True 726 | c.Je,0x0408,False 727 | c.Igrave,0x040D,True 728 | c.Kje,0x040C,True 729 | c.Lje,0x0409,True 730 | c.Nje,0x040A,True 731 | c.Tshe,0x040B,True 732 | c.Ushort,0x040E,True 733 | c.Dzhe,0x040F,True 734 | c.Yat,0x0462,True 735 | c.Fita,0x0472,True 736 | c.Izhitsa,0x0474,True 737 | c.Ghebar,0x0492,True 738 | c.Zhespike,0x0496,True 739 | c.Kaspike,0x049A,True 740 | c.Enspike,0x04A2,True 741 | c.Haspike,0x04B2,True 742 | c.Chespike,0x04B6,True 743 | c.Ustraight,0x04AE,False 744 | c.Ustraightbar,0x04B0,True 745 | c.Shha,0x04BA,True 746 | c.Palochka,0x04C0,False 747 | c.Schwa,0x04D8,False 748 | c.Imacron,0x04E2,True 749 | c.Obar,0x04E8,True 750 | c.Umacron,0x04EE,True 751 | c.Zehook,0x0498,True 752 | c.KaBashkir,0x04A0,True 753 | c.Eshook,0x04AA,True 754 | c.Abreve,0x04D0,True 755 | c.Iebreve,0x04D6,True 756 | c.Udblacute,0x04F2,True 757 | c.Odieresis,0x04E6,True 758 | c.AIe,0x04D4,False 759 | c.Adieresis,0x04D2,True 760 | c.Chedieresis,0x04F4,True 761 | c.Chekhakassian,0x04CB,True 762 | c.Chestroke,0x04B8,True 763 | c.Enghe,0x04A4,True 764 | c.Gedescender,0x04F6,True 765 | c.Ghemiddlehook,0x0494,True 766 | c.Idieresis,0x04E4,True 767 | c.Kastroke,0x049C,True 768 | c.Qa,0x051A,True 769 | c.Udieresis,0x04F0,True 770 | c.We,0x051C,False 771 | c.Yerudieresis,0x04F8,True 772 | c.Yusbig,0x046A,True 773 | c.Zedieresis,0x04DE,True 774 | c.Zhebreve,0x04C1,True 775 | c.Zhedieresis,0x04DC,True 776 | c.De.BGR,,True 777 | c.El.BGR,,False 778 | c.a,0x0430,False 779 | c.be,0x0431,True 780 | c.ve,0x0432,True 781 | c.ghe,0x0433,True 782 | c.de,0x0434,True 783 | c.ie,0x0435,False 784 | c.zhe,0x0436,True 785 | c.ze,0x0437,True 786 | c.i,0x0438,True 787 | c.ishort,0x0439,True 788 | c.ka,0x043A,True 789 | c.el,0x043B,True 790 | c.em,0x043C,True 791 | c.en,0x043D,True 792 | c.o,0x043E,False 793 | c.pe,0x043F,True 794 | c.er,0x0440,False 795 | c.es,0x0441,False 796 | c.te,0x0442,True 797 | c.u,0x0443,False 798 | c.ef,0x0444,True 799 | c.ha,0x0445,False 800 | c.tse,0x0446,True 801 | c.che,0x0447,True 802 | c.sha,0x0448,True 803 | c.shcha,0x0449,True 804 | c.hard,0x044A,True 805 | c.yeru,0x044B,True 806 | c.soft,0x044C,True 807 | c.e,0x044D,True 808 | c.yu,0x044E,True 809 | c.ya,0x044F,True 810 | c.gje,0x0453,True 811 | c.gheUkr,0x0491,True 812 | c.dje,0x0452,True 813 | c.ieUkr,0x0454,True 814 | c.dze,0x0455,False 815 | c.iegrave,0x0450,True 816 | c.io,0x0451,True 817 | c.iUkr,0x0456,False 818 | c.yi,0x0457,True 819 | c.je,0x0458,False 820 | c.igrave,0x045D,True 821 | c.kje,0x045C,True 822 | c.lje,0x0459,True 823 | c.nje,0x045A,True 824 | c.tshe,0x045B,False 825 | c.ushort,0x045E,True 826 | c.dzhe,0x045F,True 827 | c.yat,0x0463,True 828 | c.fita,0x0473,True 829 | c.izhitsa,0x0475,True 830 | c.ghebar,0x0493,True 831 | c.zhespike,0x0497,True 832 | c.kaspike,0x049B,True 833 | c.enspike,0x04A3,True 834 | c.haspike,0x04B3,True 835 | c.chespike,0x04B7,True 836 | c.ustraight,0x04AF,False 837 | c.ustraightbar,0x04B1,True 838 | c.shha,0x04BB,False 839 | c.palochka,0x04CF,False 840 | c.schwa,0x04D9,False 841 | c.imacron,0x04E3,True 842 | c.obar,0x04E9,True 843 | c.umacron,0x04EF,True 844 | c.zehook,0x0499,True 845 | c.kaBashkir,0x04A1,True 846 | c.eshook,0x04AB,True 847 | c.abreve,0x04D1,True 848 | c.iebreve,0x04D7,True 849 | c.udblacute,0x04F3,True 850 | c.odieresis,0x04E7,True 851 | c.aie,0x04D5,False 852 | c.adieresis,0x04D3,True 853 | c.chedieresis,0x04F5,True 854 | c.chekhakassian,0x04CC,True 855 | c.chestroke,0x04B9,True 856 | c.enghe,0x04A5,True 857 | c.gedescender,0x04F7,True 858 | c.ghemiddlehook,0x0495,True 859 | c.idieresis,0x04E5,True 860 | c.kastroke,0x049D,True 861 | c.qa,0x051B,False 862 | c.udieresis,0x04F1,True 863 | c.we,0x051D,False 864 | c.yerudieresis,0x04F9,True 865 | c.yusbig,0x046B,True 866 | c.zedieresis,0x04DF,True 867 | c.zhebreve,0x04C2,True 868 | c.zhedieresis,0x04DD,True 869 | c.be.SRB,,False 870 | c.ve.BGR,,True 871 | c.ghe.BGR,,True 872 | c.de.BGR,,True 873 | c.zhe.BGR,,True 874 | c.ze.BGR,,True 875 | c.i.BGR,,False 876 | c.ishort.BGR,,True 877 | c.igrave.BGR,,True 878 | c.ka.BGR,,True 879 | c.el.BGR,,True 880 | c.pe.BGR,,False 881 | c.te.BGR,,False 882 | c.tse.BGR,,True 883 | c.sha.BGR,,True 884 | c.shcha.BGR,,True 885 | c.yu.BGR,,True 886 | c.hookcomb,,False 887 | numero,0x2116,True 888 | hryvnia,0x20B4,True 889 | Alpha,0x0391,True 890 | Beta,0x0392,False 891 | Gamma,0x0393,True 892 | Delta,0x0394,True 893 | Epsilon,0x0395,True 894 | Zeta,0x0396,False 895 | Eta,0x0397,True 896 | Theta,0x0398,True 897 | Iota,0x0399,True 898 | Kappa,0x039A,False 899 | Lambda,0x039B,True 900 | Mu,0x039C,False 901 | Nu,0x039D,False 902 | Xi,0x039E,True 903 | Omicron,0x039F,True 904 | Pi,0x03A0,True 905 | Rho,0x03A1,False 906 | Sigma,0x03A3,True 907 | Tau,0x03A4,False 908 | Upsilon,0x03A5,True 909 | Phi,0x03A6,True 910 | Chi,0x03A7,False 911 | Psi,0x03A8,True 912 | Omega,0x03A9,True 913 | Alphatonos,0x0386,True 914 | Epsilontonos,0x0388,True 915 | Etatonos,0x0389,True 916 | Iotatonos,0x038A,True 917 | Iotadieresis,0x03AA,True 918 | Omicrontonos,0x038C,True 919 | Upsilontonos,0x038E,True 920 | Upsilondieresis,0x03AB,True 921 | Omegatonos,0x038F,True 922 | alpha,0x03B1,True 923 | beta,0x03B2,True 924 | gamma,0x03B3,True 925 | delta,0x03B4,True 926 | epsilon,0x03B5,True 927 | zeta,0x03B6,True 928 | eta,0x03B7,True 929 | theta,0x03B8,True 930 | iota,0x03B9,True 931 | kappa,0x03BA,True 932 | lambda,0x03BB,True 933 | mu,0x03BC,True 934 | nu,0x03BD,True 935 | xi,0x03BE,True 936 | omicron,0x03BF,True 937 | pi,0x03C0,True 938 | rho,0x03C1,True 939 | sigmafinal,0x03C2,True 940 | sigma,0x03C3,True 941 | tau,0x03C4,True 942 | upsilon,0x03C5,True 943 | phi,0x03C6,True 944 | chi,0x03C7,True 945 | psi,0x03C8,True 946 | omega,0x03C9,True 947 | alphatonos,0x03AC,True 948 | epsilontonos,0x03AD,True 949 | etatonos,0x03AE,True 950 | iotatonos,0x03AF,True 951 | iotadieresis,0x03CA,True 952 | iotadieresistonos,0x0390,True 953 | omicrontonos,0x03CC,True 954 | upsilontonos,0x03CD,True 955 | upsilondieresis,0x03CB,True 956 | upsilondieresistonos,0x03B0,True 957 | omegatonos,0x03CE,True 958 | tonos,0x0384,False 959 | tonoscomb,,False 960 | tonoscomb.case,,False 961 | dieresistonos,0x0385,False 962 | dieresistonoscomb,0x0344,False 963 | anoteleia,0x0387,True 964 | questionGreek,0x037E,False 965 | numbersignGreek,0x0374,False 966 | numbersignlowGreek,0x0375,False 967 | KaiSymbol,0x03CF,True 968 | kaiSymbol,0x03D7,True 969 | a.Ayb,0x0531,True 970 | a.Ben,0x0532,True 971 | a.Gim,0x0533,True 972 | a.Da,0x0534,True 973 | a.Ech,0x0535,True 974 | a.Za,0x0536,True 975 | a.Eh,0x0537,True 976 | a.Et,0x0538,True 977 | a.To,0x0539,True 978 | a.Zhe,0x053A,True 979 | a.Ini,0x053B,True 980 | a.Liwn,0x053C,True 981 | a.Xeh,0x053D,True 982 | a.Ca,0x053E,True 983 | a.Ken,0x053F,True 984 | a.Ho,0x0540,True 985 | a.Ja,0x0541,True 986 | a.Ghad,0x0542,True 987 | a.Cheh,0x0543,True 988 | a.Men,0x0544,True 989 | a.Yi,0x0545,True 990 | a.Now,0x0546,True 991 | a.Sha,0x0547,True 992 | a.Vo,0x0548,True 993 | a.Cha,0x0549,True 994 | a.Peh,0x054A,True 995 | a.Jheh,0x054B,True 996 | a.Ra,0x054C,True 997 | a.Seh,0x054D,True 998 | a.Vew,0x054E,True 999 | a.Tiwn,0x054F,True 1000 | a.Reh,0x0550,True 1001 | a.Co,0x0551,True 1002 | a.Yiwn,0x0552,True 1003 | a.Piwr,0x0553,True 1004 | a.Keh,0x0554,True 1005 | a.Oh,0x0555,True 1006 | a.Feh,0x0556,True 1007 | a.ayb,0x0561,True 1008 | a.ben,0x0562,True 1009 | a.gim,0x0563,True 1010 | a.da,0x0564,True 1011 | a.ech,0x0565,True 1012 | a.za,0x0566,True 1013 | a.eh,0x0567,True 1014 | a.et,0x0568,True 1015 | a.to,0x0569,True 1016 | a.zhe,0x056A,True 1017 | a.ini,0x056B,True 1018 | a.liwn,0x056C,True 1019 | a.xeh,0x056D,True 1020 | a.ca,0x056E,True 1021 | a.ken,0x056F,True 1022 | a.ho,0x0570,True 1023 | a.ja,0x0571,True 1024 | a.ghad,0x0572,True 1025 | a.cheh,0x0573,True 1026 | a.men,0x0574,True 1027 | a.yi,0x0575,True 1028 | a.now,0x0576,True 1029 | a.sha,0x0577,True 1030 | a.vo,0x0578,True 1031 | a.cha,0x0579,True 1032 | a.peh,0x057A,True 1033 | a.jheh,0x057B,True 1034 | a.ra,0x057C,True 1035 | a.seh,0x057D,True 1036 | a.vew,0x057E,True 1037 | a.tiwn,0x057F,True 1038 | a.reh,0x0580,True 1039 | a.co,0x0581,True 1040 | a.yiwn,0x0582,True 1041 | a.piwr,0x0583,True 1042 | a.keh,0x0584,True 1043 | a.oh,0x0585,True 1044 | a.feh,0x0586,True 1045 | a.ech_a.yiwn,0x0587,True 1046 | a.men_a.eh,,True 1047 | a.men_a.ken,,True 1048 | a.men_a.ech,0xFB14,True 1049 | a.men_a.ini,0xFB15,True 1050 | a.men_a.now,0xFB13,True 1051 | a.men_a.xeh,0xFB17,True 1052 | a.emphasis,0x055B,True 1053 | a.exclam,0x055C,True 1054 | a.comma,0x055D,True 1055 | a.question,0x055E,True 1056 | a.period,0x0589,False 1057 | a.abbreviation,0x055F,True 1058 | a.ringhalfleft,0x0559,True 1059 | a.hyphen,0x058A,True 1060 | a.apostrophe,0x055A,True 1061 | arHamza,0x0621,True 1062 | arAlifMadda,0x0622,True 1063 | arAlifMadda.fina,0xFE82,True 1064 | arAlifHamza,0x0623,True 1065 | arAlifHamza.fina,0xFE84,True 1066 | arWawHamza,0x0624,True 1067 | arWawHamza.fina,0xFE86,True 1068 | arAlifHamzabelow,0x0625,True 1069 | arAlifHamzabelow.fina,0xFE88,True 1070 | arYehHamza,0x0626,True 1071 | arYehHamza.fina,0xFE8A,True 1072 | arYehHamza.init,0xFE8B,True 1073 | arYehHamza.medi,0xFE8C,True 1074 | arAlif,0x0627,True 1075 | arAlif.fina,0xFE8E,True 1076 | arBeh,0x0628,True 1077 | arBeh.fina,0xFE90,True 1078 | arBeh.init,0xFE91,True 1079 | arBeh.medi,0xFE92,True 1080 | arTehMarbuta,0x0629,True 1081 | arTehMarbuta.fina,0xFE94,True 1082 | arTeh,0x062A,True 1083 | arTeh.fina,0xFE96,True 1084 | arTeh.init,0xFE97,True 1085 | arTeh.medi,0xFE98,True 1086 | arTheh,0x062B,True 1087 | arTheh.fina,0xFE9A,True 1088 | arTheh.init,0xFE9B,True 1089 | arTheh.medi,0xFE9C,True 1090 | arJim,0x062C,True 1091 | arJim.fina,0xFE9E,True 1092 | arJim.init,0xFE9F,True 1093 | arJim.medi,0xFEA0,True 1094 | arHah,0x062D,True 1095 | arHah.fina,0xFEA2,True 1096 | arHah.init,0xFEA3,True 1097 | arHah.medi,0xFEA4,True 1098 | arKhah,0x062E,True 1099 | arKhah.fina,0xFEA6,True 1100 | arKhah.init,0xFEA7,True 1101 | arKhah.medi,0xFEA8,True 1102 | arDal,0x062F,True 1103 | arDal.fina,0xFEAA,True 1104 | arDhal,0x0630,True 1105 | arDhal.fina,0xFEAC,True 1106 | arReh,0x0631,True 1107 | arReh.fina,0xFEAE,True 1108 | arZeh,0x0632,True 1109 | arZeh.fina,0xFEB0,True 1110 | arSin,0x0633,True 1111 | arSin.fina,0xFEB2,True 1112 | arSin.init,0xFEB3,True 1113 | arSin.medi,0xFEB4,True 1114 | arShin,0x0634,True 1115 | arShin.fina,0xFEB6,True 1116 | arShin.init,0xFEB7,True 1117 | arShin.medi,0xFEB8,True 1118 | arSad,0x0635,True 1119 | arSad.fina,0xFEBA,True 1120 | arSad.init,0xFEBB,True 1121 | arSad.medi,0xFEBC,True 1122 | arDad,0x0636,True 1123 | arDad.fina,0xFEBE,True 1124 | arDad.init,0xFEBF,True 1125 | arDad.medi,0xFEC0,True 1126 | arTah,0x0637,True 1127 | arTah.fina,0xFEC2,True 1128 | arTah.init,0xFEC3,False 1129 | arTah.medi,0xFEC4,False 1130 | arZah,0x0638,True 1131 | arZah.fina,0xFEC6,True 1132 | arZah.init,0xFEC7,True 1133 | arZah.medi,0xFEC8,True 1134 | arAyn,0x0639,True 1135 | arAyn.fina,0xFECA,True 1136 | arAyn.init,0xFECB,True 1137 | arAyn.medi,0xFECC,True 1138 | arGhayn,0x063A,True 1139 | arGhayn.fina,0xFECE,True 1140 | arGhayn.init,0xFECF,True 1141 | arGhayn.medi,0xFED0,True 1142 | arFeh,0x0641,True 1143 | arFeh.fina,0xFED2,True 1144 | arFeh.init,0xFED3,True 1145 | arFeh.medi,0xFED4,True 1146 | arQaf,0x0642,True 1147 | arQaf.fina,0xFED6,True 1148 | arQaf.init,0xFED7,True 1149 | arQaf.medi,0xFED8,True 1150 | arKaf,0x0643,True 1151 | arKaf.fina,0xFEDA,True 1152 | arKaf.init,0xFEDB,True 1153 | arKaf.medi,0xFEDC,True 1154 | arLam,0x0644,True 1155 | arLam.fina,0xFEDE,True 1156 | arLam.init,0xFEDF,True 1157 | arLam.medi,0xFEE0,True 1158 | arMim,0x0645,True 1159 | arMim.fina,0xFEE2,True 1160 | arMim.init,0xFEE3,True 1161 | arMim.medi,0xFEE4,True 1162 | arNun,0x0646,True 1163 | arNun.fina,0xFEE6,True 1164 | arNun.init,0xFEE7,True 1165 | arNun.medi,0xFEE8,True 1166 | arHeh.isol,0xFEE9,False 1167 | arHeh,0x0647,True 1168 | arHeh.fina,0xFEEA,True 1169 | arHeh.init,0xFEEB,False 1170 | arHeh.medi,0xFEEC,True 1171 | arWaw,0x0648,True 1172 | arWaw.fina,0xFEEE,True 1173 | arAlifMaksura,0x0649,True 1174 | arAlifMaksura.fina,0xFEF0,True 1175 | arYeh,0x064A,True 1176 | arYeh.fina,0xFEF2,True 1177 | arYeh.init,0xFEF3,True 1178 | arYeh.medi,0xFEF4,True 1179 | arAlifWasla,0x0671,True 1180 | arAlifWasla.fina,0xFB51,True 1181 | arBehdotless,0x066E,True 1182 | arBehdotless.fina,,True 1183 | arBehdotless.init,,True 1184 | arBehdotless.medi,,True 1185 | arTteh,0x0679,True 1186 | arTteh.fina,0xFB67,True 1187 | arTteh.init,0xFB68,True 1188 | arTteh.medi,0xFB69,True 1189 | arPeh,0x067E,True 1190 | arPeh.fina,0xFB57,True 1191 | arPeh.init,0xFB58,True 1192 | arPeh.medi,0xFB59,True 1193 | arTcheh,0x0686,True 1194 | arTcheh.fina,0xFB7B,True 1195 | arTcheh.init,0xFB7C,True 1196 | arTcheh.medi,0xFB7D,True 1197 | arDdal,0x0688,True 1198 | arDdal.fina,0xFB89,True 1199 | arRreh,0x0691,True 1200 | arRreh.fina,0xFB8D,True 1201 | arJeh,0x0698,True 1202 | arJeh.fina,0xFB8B,True 1203 | arFehdotless,0x06A1,True 1204 | arFehdotless.fina,,True 1205 | arFehdotless.init,,True 1206 | arFehdotless.medi,,True 1207 | arVeh,0x06A4,True 1208 | arVeh.fina,0xFB6B,True 1209 | arVeh.init,0xFB6C,True 1210 | arVeh.medi,0xFB6D,True 1211 | arFehtwodotsbelow,0x0760,True 1212 | arFehtwodotsbelow.fina,,True 1213 | arFehtwodotsbelow.init,,True 1214 | arFehtwodotsbelow.medi,,True 1215 | arQafdotless,0x066F,True 1216 | arQafdotless.fina,,True 1217 | arQafdotless.init,,False 1218 | arQafdotless.medi,,False 1219 | arKeheh,0x06A9,True 1220 | arKeheh.fina,0xFB8F,True 1221 | arKeheh.init,0xFB90,True 1222 | arKeheh.medi,0xFB91,True 1223 | arGaf,0x06AF,True 1224 | arGaf.fina,0xFB93,True 1225 | arGaf.init,0xFB94,True 1226 | arGaf.medi,0xFB95,True 1227 | arNunGhunna,0x06BA,True 1228 | arNunGhunna.fina,0xFB9F,True 1229 | arNunGhunna.medi,,True 1230 | arNunGhunna.init,,False 1231 | arHehDoachashmi,0x06BE,True 1232 | arHehDoachashmi.fina,0xFBAB,True 1233 | arHehDoachashmi.init,0xFBAC,True 1234 | arHehDoachashmi.medi,0xFBAD,True 1235 | arHehGoal,0x06C1,False 1236 | arHehGoal.fina,0xFBA7,True 1237 | arHehGoal.init,0xFBA8,False 1238 | arHehGoal.medi,0xFBA9,False 1239 | arHehGoalHamzaabove,0x06C2,True 1240 | arHehGoalHamzaabove.fina,,True 1241 | arHehGoalHamzaabove.init,,True 1242 | arHehGoalHamzaabove.medi,,True 1243 | arHehGoal2habove,0x06C3,True 1244 | arHehGoal2habove.fina,,True 1245 | arHehHamza,0x06C0,True 1246 | arHehHamza.fina,0xFBA5,True 1247 | arYehFarsi,0x06CC,False 1248 | arYehFarsi.fina,0xFBFD,False 1249 | arYehFarsi.init,0xFBFE,False 1250 | arYehFarsi.medi,0xFBFF,False 1251 | arYehBarri,0x06D2,True 1252 | arYehBarri.fina,0xFBAF,True 1253 | arYehBarriHamzaabove,0x06D3,True 1254 | arYehBarriHamzaabove.fina,0xFBB1,True 1255 | arLam.init_arAlif.fina,0xFEFB,True 1256 | arLam.medi_arAlif.fina,0xFEFC,True 1257 | arLam.init_arAlifMadda.fina,0xFEF5,True 1258 | arLam.medi_arAlifMadda.fina,0xFEF6,True 1259 | arLam.init_arAlifHamza.fina,0xFEF7,True 1260 | arLam.medi_arAlifHamza.fina,0xFEF8,True 1261 | arLam.init_arAlifHamzabelow.fina,0xFEF9,True 1262 | arLam.medi_arAlifHamzabelow.fina,0xFEFA,True 1263 | arLam.init_arAlifWasla.fina,,True 1264 | arLam.medi_arAlifWasla.fina,,True 1265 | arLam.init_arLam.medi_arHeh.fina,,True 1266 | arBeh.init_arYehBarri.fina,,True 1267 | arBeh.medi_arYehBarri.fina,,True 1268 | arPeh.init_arYehBarri.fina,,True 1269 | arPeh.medi_arYehBarri.fina,,True 1270 | arTeh.init_arYehBarri.fina,,True 1271 | arTeh.medi_arYehBarri.fina,,True 1272 | arTheh.init_arYehBarri.fina,,True 1273 | arTheh.medi_arYehBarri.fina,,True 1274 | arTteh.init_arYehBarri.fina,,True 1275 | arTteh.medi_arYehBarri.fina,,True 1276 | arJim.init_arYehBarri.fina,,True 1277 | arJim.medi_arYehBarri.fina,,True 1278 | arTcheh.init_arYehBarri.fina,,True 1279 | arTcheh.medi_arYehBarri.fina,,True 1280 | arHah.init_arYehBarri.fina,,False 1281 | arHah.medi_arYehBarri.fina,,False 1282 | arKhah.init_arYehBarri.fina,,True 1283 | arKhah.medi_arYehBarri.fina,,True 1284 | arSin.init_arYehBarri.fina,,True 1285 | arSin.medi_arYehBarri.fina,,True 1286 | arShin.init_arYehBarri.fina,,True 1287 | arShin.medi_arYehBarri.fina,,True 1288 | arSad.init_arYehBarri.fina,,True 1289 | arSad.medi_arYehBarri.fina,,True 1290 | arDad.init_arYehBarri.fina,,True 1291 | arDad.medi_arYehBarri.fina,,True 1292 | arTah.init_arYehBarri.fina,,True 1293 | arTah.medi_arYehBarri.fina,,True 1294 | arZah.init_arYehBarri.fina,,True 1295 | arZah.medi_arYehBarri.fina,,True 1296 | arAyn.init_arYehBarri.fina,,True 1297 | arAyn.medi_arYehBarri.fina,,True 1298 | arGhayn.init_arYehBarri.fina,,True 1299 | arGhayn.medi_arYehBarri.fina,,True 1300 | arFeh.init_arYehBarri.fina,,True 1301 | arFeh.medi_arYehBarri.fina,,True 1302 | arQaf.init_arYehBarri.fina,,True 1303 | arQaf.medi_arYehBarri.fina,,True 1304 | arKaf.init_arYehBarri.fina,,True 1305 | arKaf.medi_arYehBarri.fina,,True 1306 | arKeheh.init_arYehBarri.fina,,True 1307 | arKeheh.medi_arYehBarri.fina,,True 1308 | arGaf.init_arYehBarri.fina,,True 1309 | arGaf.medi_arYehBarri.fina,,True 1310 | arLam.init_arYehBarri.fina,,True 1311 | arLam.medi_arYehBarri.fina,,True 1312 | arMim.init_arYehBarri.fina,,True 1313 | arMim.medi_arYehBarri.fina,,True 1314 | arNun.init_arYehBarri.fina,,True 1315 | arNun.medi_arYehBarri.fina,,True 1316 | arHehGoal.init_arYehBarri.fina,,True 1317 | arHehDoachashmi.init_arYehBarri.fina,,True 1318 | arHehDoachashmi.medi_arYehBarri.fina,,True 1319 | arYeh.init_arYehBarri.fina,,True 1320 | arYeh.medi_arYehBarri.fina,,True 1321 | arYehFarsi.init_arYehBarri.fina,,True 1322 | arYehFarsi.medi_arYehBarri.fina,,True 1323 | arYehHamza.init_arYehBarri.fina,,True 1324 | arYehHamza.medi_arYehBarri.fina,,True 1325 | arAllah,0xFDF2,True 1326 | arAllah.liga,,True 1327 | arRial,0xFDFC,True 1328 | arKashida,0x0640,True 1329 | arAlifabove,0x0670,False 1330 | arAlifbelow,0x0656,False 1331 | arHamzaabove,0x0654,False 1332 | arHamzabelow,0x0655,False 1333 | arDamma,0x064F,False 1334 | arDammatan,0x064C,False 1335 | arFatha,0x064E,False 1336 | arFathatan,0x064B,False 1337 | arKasra,0x0650,False 1338 | arKasratan,0x064D,False 1339 | arMadda,0x0653,False 1340 | arShadda,0x0651,False 1341 | arSukun,0x0652,False 1342 | arWasla,0x0610,False 1343 | arNasalnun,0x0658,False 1344 | arTahabove,0xFBC0,True 1345 | arHamzaabove_arDamma,,True 1346 | arHamzaabove_arDammatan,,True 1347 | arHamzaabove_arFatha,,True 1348 | arHamzaabove_arFathatan,,True 1349 | arHamzabelow_arKasra,,True 1350 | arHamzabelow_arKasratan,,True 1351 | arHamzaabove_arSukun,,True 1352 | arShadda_arDamma,0xFC61,True 1353 | arShadda_arDammatan,0xFC5E,True 1354 | arShadda_arFatha,0xFC60,True 1355 | arShadda_arFathatan,,True 1356 | arShadda_arKasra,0xFC62,True 1357 | arShadda_arKasratan,0xFC5F,True 1358 | arShadda_arAlifabove,0xFC63,True 1359 | arZero,0x0660,True 1360 | arOne,0x0661,True 1361 | arTwo,0x0662,True 1362 | arThree,0x0663,True 1363 | arFour,0x0664,True 1364 | arFive,0x0665,True 1365 | arSix,0x0666,True 1366 | arSeven,0x0667,True 1367 | arEight,0x0668,True 1368 | arNine,0x0669,True 1369 | arZeroFarsi,0x06F0,True 1370 | arOneFarsi,0x06F1,False 1371 | arTwoFarsi,0x06F2,False 1372 | arThreeFarsi,0x06F3,False 1373 | arFourFarsi,0x06F4,True 1374 | arFiveFarsi,0x06F5,True 1375 | arSixFarsi,0x06F6,True 1376 | arSevenFarsi,0x06F7,False 1377 | arEightFarsi,0x06F8,False 1378 | arNineFarsi,0x06F9,False 1379 | arFourFarsi.URD,,True 1380 | arSevenFarsi.URD,,True 1381 | period.arab,,True 1382 | arComma,0x060C,True 1383 | arSemicolon,0x061B,True 1384 | arPeriodUrdu,0x06D4,True 1385 | arDecimal,0x066B,False 1386 | arThousands,0x066C,True 1387 | arPercent,0x066A,True 1388 | arQuestion,0x061F,True 1389 | guillemetleft.arab,,True 1390 | guillemetright.arab,,True 1391 | guilsinglleft.arab,,True 1392 | guilsinglright.arab,,True 1393 | arStar,0x066D,True 1394 | parenleft.arab,,True 1395 | parenright.arab,,True 1396 | arParenleftfancy,0xFD3E,True 1397 | arParenrightfancy,0xFD3F,True 1398 | arDotabove,0xFBB2,False 1399 | arTwodotshorizontalabove,0xFBB4,False 1400 | arThreedotsupabove,0xFBB6,False 1401 | arDotbelow,0xFBB3,False 1402 | arTwodotshorizontalbelow,0xFBB5,False 1403 | arThreedotsdownbelow,0xFBB9,False 1404 | arDotcenter,,False 1405 | _part.link,,False 1406 | _part.markGaf,,False 1407 | _part.arKaf,,False 1408 | _part.arThreedotscenter,,False 1409 | _part.arDotabove,,False 1410 | _part.arDotbelow,,False 1411 | _part.arTwodotshorizontalabove,,False 1412 | _part.arTwodotshorizontalbelow,,False 1413 | _part.arThreedotsdownbelow,,False 1414 | _part.arThreedotsupabove,,False 1415 | _part.miniKeheh,,False 1416 | _part.arBeh.YehBarri.fina,,False 1417 | _part.arBeh.YehBarri.medi,,False 1418 | _part.arJim.YehBarri.fina,,False 1419 | _part.arJim.YehBarri.medi,,False 1420 | hbAlef,0x05D0,True 1421 | hbBet,0x05D1,True 1422 | hbGimel,0x05D2,True 1423 | hbDalet,0x05D3,True 1424 | hbHe,0x05D4,True 1425 | hbVav,0x05D5,True 1426 | hbZayin,0x05D6,True 1427 | hbHet,0x05D7,True 1428 | hbTet,0x05D8,True 1429 | hbYod,0x05D9,True 1430 | hbKaf,0x05DB,True 1431 | hbKafFinal,0x05DA,True 1432 | hbLamed,0x05DC,True 1433 | hbMemFinal,0x05DD,True 1434 | hbMem,0x05DE,True 1435 | hbNunFinal,0x05DF,True 1436 | hbNun,0x05E0,True 1437 | hbSamekh,0x05E1,True 1438 | hbAyin,0x05E2,True 1439 | hbPe,0x05E4,True 1440 | hbPeFinal,0x05E3,True 1441 | hbTsadi,0x05E6,True 1442 | hbTsadiFinal,0x05E5,True 1443 | hbQof,0x05E7,True 1444 | hbResh,0x05E8,True 1445 | hbShin,0x05E9,True 1446 | hbTav,0x05EA,True 1447 | hbAlef_hbPatah,0xFB2E,True 1448 | hbAlef_hbQamats,0xFB2F,True 1449 | hbAlef_hbDagesh,0xFB30,True 1450 | hbBet_hbDagesh,0xFB31,True 1451 | hbBet_hbRafe,0xFB4C,True 1452 | hbGimel_hbDagesh,0xFB32,True 1453 | hbDalet_hbDagesh,0xFB33,True 1454 | hbHe_hbDagesh,0xFB34,True 1455 | hbVav_hbHolam,0xFB4B,True 1456 | hbVav_hbDagesh,0xFB35,True 1457 | hbZayin_hbDagesh,0xFB36,True 1458 | hbTet_hbDagesh,0xFB38,True 1459 | hbYod_hbHiriq,0xFB1D,True 1460 | hbYod_hbDagesh,0xFB39,True 1461 | hbKaf_hbDagesh,0xFB3B,True 1462 | hbKaf_hbRafe,0xFB4D,True 1463 | hbKafFinal_hbDagesh,0xFB3A,True 1464 | hbLamed_hbDagesh,0xFB3C,True 1465 | hbMem_hbDagesh,0xFB3E,True 1466 | hbNun_hbDagesh,0xFB40,True 1467 | hbSamekh_hbDagesh,0xFB41,True 1468 | hbPe_hbDagesh,0xFB44,True 1469 | hbPe_hbRafe,0xFB4E,True 1470 | hbPeFinal_hbDagesh,0xFB43,True 1471 | hbTsadi_hbDagesh,0xFB46,True 1472 | hbQof_hbDagesh,0xFB47,True 1473 | hbResh_hbDagesh,0xFB48,True 1474 | hbShin_hbDagesh,0xFB49,True 1475 | hbShin_hbShindot,0xFB2A,True 1476 | hbShin_hbSindot,0xFB2B,True 1477 | hbShin_hbDagesh_hbShindot,0xFB2C,True 1478 | hbShin_hbDagesh_hbSindot,0xFB2D,True 1479 | hbTav_hbDagesh,0xFB4A,True 1480 | hbSheva,0x05B0,False 1481 | hbHataf_hbSegol,0x05B1,False 1482 | hbHataf_hbPatah,0x05B2,False 1483 | hbHataf_hbQamats,0x05B3,False 1484 | hbHiriq,0x05B4,False 1485 | hbTsere,0x05B5,False 1486 | hbSegol,0x05B6,False 1487 | hbPatah,0x05B7,False 1488 | hbQamats,0x05B8,False 1489 | hbQamatsQatan,0x05C7,False 1490 | hbHolam,0x05B9,False 1491 | hbHolamHaser,0x05BA,False 1492 | hbQubuts,0x05BB,False 1493 | hbDagesh,0x05BC,False 1494 | hbRafe,0x05BF,False 1495 | hbShindot,0x05C1,False 1496 | hbSindot,0x05C2,False 1497 | hbVav_hbVav,0x05F0,True 1498 | hbVav_hbYod,0x05F1,True 1499 | hbYod_hbYod,0x05F2,True 1500 | hbYod_hbYod_hbPatah,0xFB1F,True 1501 | hbPeFinal.calt,,True 1502 | hbPe.calt,,True 1503 | hbPaseq,0x05C0,True 1504 | hbGeresh,0x05F3,True 1505 | hbGershayim,0x05F4,True 1506 | hbMaqaf,0x05BE,True 1507 | hbSofPasuq,0x05C3,True 1508 | periodcentered.hebr,,True 1509 | zerowidthnonjoiner,0x200C,False 1510 | zerowidthjoiner,0x200D,False 1511 | lefttorightmark,0x200E,False 1512 | righttoleftmark,0x200F,False 1513 | lefttorightembedding,0x202A,False 1514 | righttoleftembedding,0x202B,False 1515 | popdirectionalformatting,0x202C,False 1516 | lefttorightoverride,0x202D,False 1517 | righttoleftoverride,0x202E,False 1518 | dottedCircle,0x25CC,True 1519 | heartsuitblack,0x2665,True 1520 | spadesuitblack,0x2660,True 1521 | clubsuitblack,0x2663,True 1522 | diamondsuitblack,0x2666,True 1523 | cat,0x1F408,True 1524 | cat.tall,,True 1525 | cat.taller,,True 1526 | cat.black,,True 1527 | cat.black.tall,,True 1528 | cat.black.taller,,True 1529 | cat.right,,True 1530 | cat.tall.right,,True 1531 | cat.taller.right,,True 1532 | cat.black.right,,True 1533 | cat.black.tall.right,,True 1534 | cat.black.taller.right,,True 1535 | dog,0x1F415,True 1536 | dog.head,,True 1537 | dog.body,,True 1538 | dog.butt,,True 1539 | dog.black,,True 1540 | dog.black.head,,True 1541 | dog.black.body,,True 1542 | dog.black.butt,,True 1543 | dog.right,,True 1544 | dog.butt.right,,True 1545 | dog.body.right,,True 1546 | dog.head.right,,True 1547 | dog.black.right,,True 1548 | dog.black.butt.right,,True 1549 | dog.black.body.right,,True 1550 | dog.black.head.right,,True 1551 | owl,0x1F989,True 1552 | owl.flying,,True 1553 | owl.black,,True 1554 | owl.black.flying,,True 1555 | deer,0x1F98C,True 1556 | deer.tall,,True 1557 | deer.taller,,True 1558 | deer.right,,True 1559 | deer.tall.right,,True 1560 | deer.taller.right,,True 1561 | reindeer,,True 1562 | reindeer.right,,True 1563 | rabbit,0x1F407,True 1564 | rabbit.right,,True 1565 | wolf,,True 1566 | wolf.right,,True 1567 | fox,,True 1568 | fox.right,,True 1569 | star,,True 1570 | star.1,,True 1571 | snowflake,0x2744,True 1572 | snowflake.1,,True 1573 | snowflake.2,,True 1574 | snowflake.3,,True 1575 | snowflake.4,,True 1576 | tree,,True 1577 | tree.1,,True 1578 | tree.2,,True 1579 | tree.3,,True 1580 | tree.4,,True 1581 | snowman,0x2603,True 1582 | snowman.1,,True 1583 | pica,,True 1584 | dick,,True 1585 | present,,True 1586 | present.1,,True 1587 | present.2,,True 1588 | pattern,,True 1589 | pattern.1,,True 1590 | pattern.2,,True 1591 | pattern.3,,True 1592 | pattern.4,,True 1593 | pattern.5,,True 1594 | pattern.6,,True 1595 | pattern.7,,True 1596 | pattern.8,,True 1597 | pattern.9,,True 1598 | patternbg,,True 1599 | patternbg.1,,True 1600 | patternbg.2,,True 1601 | pattern.space,,False 1602 | pixel,,False 1603 | pixel.ESHP-0,,False 1604 | pixel.ESHP-100,,False 1605 | pixel.ESHP-200,,False 1606 | pixel.ESHP-211,,False 1607 | pixel.ESHP-225,,False 1608 | pixel.ESHP-236,,False 1609 | pixel.ESHP-250,,False 1610 | pixel.ESHP-400,,False 1611 | pixel.ESHP-411,,False 1612 | pixel.ESHP-425,,False 1613 | pixel.ESHP-436,,False 1614 | pixel.ESHP-450,,False 1615 | pixel.ESHP-461,,False 1616 | pixel.ESHP-475,,False 1617 | pixel.ESHP-486,,False 1618 | pixel.ESHP-500,,False 1619 | pixel.ESHP-650,,False 1620 | pixel.ESHP-800,,False 1621 | pixel.ESHP-950,,False 1622 | pixel.ESHP-1100,,False 1623 | pixel.ESHP-1300,,False 1624 | pixel.ESHP-1400,,False 1625 | pixel.ESHP-1411,,False 1626 | pixel.ESHP-1425,,False 1627 | pixel.ESHP-1436,,False 1628 | pixel.ESHP-1450,,False 1629 | pixel.ESHP-1500,,False 1630 | pixel.ESHP-1600,,False 1631 | pixel.wght-100,,False 1632 | pixel.wght-400,,False 1633 | pixel.wght-900,,False 1634 | pixel.EGRD-1,,False 1635 | pixel.EGRD-2,,False -------------------------------------------------------------------------------- /tools/glyphs-scripts/compile pixel glyph.py: -------------------------------------------------------------------------------- 1 | #MenuTitle: compile pixel glyph 2 | 3 | """ 4 | Combine pixel.ELSH-XXXX, pixel.wght-XXX, and pixel.ELGR-XXX glyphs to form 5 | a pixel glyph with layers defined by these glyphs. 6 | """ 7 | 8 | import copy 9 | from collections import OrderedDict 10 | 11 | font = Glyphs.currentDocument.font 12 | # always use the first master 13 | master_id = font.masters[0].id 14 | 15 | # get axes values used in pixel.ELSH-XXXX glyphs and transformations 16 | # specified in pixel.wght-XXX and pixel.ELGR-XXX glyphs 17 | axes = OrderedDict() 18 | wght_transforms = OrderedDict() 19 | ELGR_transforms = OrderedDict() 20 | for gl in font.glyphs: 21 | for an in ["ELSH", "wght", "ELGR"]: 22 | if gl.name.startswith("pixel." + an): 23 | _, pos = gl.name.split("-") 24 | pos = int(pos.replace("_", ".")) 25 | if an in axes: 26 | axes[an].append(pos) 27 | else: 28 | axes[an] = [pos] 29 | if an == "wght": 30 | # get the transformations from the wght-XXX glyphs 31 | # change in scale only 32 | c = font.glyphs[gl.name].layers[master_id].components[0] 33 | wght_transforms[pos] = c.transform 34 | elif an == "ELGR": 35 | # get the transformations from the ELGR-XXX glyphs 36 | # change in scale and position 37 | ELGR_transforms[pos] = [] 38 | for c in font.glyphs[gl.name].layers[master_id].components: 39 | ELGR_transforms[pos].append(c.transform) 40 | 41 | print("Cleaning up the pixel glyph") 42 | if "pixel" not in font.glyphs: 43 | font.glyphs.append(GSGlyph("pixel")) 44 | gl = font.glyphs["pixel"] 45 | for i in range(len(gl.layers))[::-1]: 46 | ll = gl.layers[i] 47 | if ll.name[0] in ["[", "{"]: 48 | # delete brace and bracket layers 49 | del gl.layers[i] 50 | else: 51 | # cleanup master layers 52 | ll.paths = [] 53 | ll.components = [] 54 | ll.anchors = [] 55 | ll.width = 0 56 | pixel_glyph = font.glyphs["pixel"] 57 | 58 | 59 | # create new layers in the /pixel glyph 60 | print("Copying contours from pixel.ELSH-XXX glyphs " 61 | "to layers in the pixel glyph and applying transformations from " 62 | "pixel.wght-XXX and pixel.ELGR-XXX glyphs.") 63 | for ELSH in axes["ELSH"]: 64 | ELSH_name = "pixel.ELSH-%s" % ELSH 65 | for wght in axes["wght"]: 66 | wght_tr = wght_transforms[wght] 67 | for ELGR in axes["ELGR"]: 68 | # find an existing master layer with the same coordinates 69 | # otherwise, create a brace layer 70 | for m in font.masters: 71 | if list(m.axes) == [wght, ELSH, ELGR]: 72 | layer = pixel_glyph.layers[m.id] 73 | break 74 | else: 75 | # the name has to be in this order 76 | layer = GSLayer() 77 | layer.name = "{%s,%s,%s}" % (wght, ELSH, ELGR) 78 | pixel_glyph.layers.append(layer) 79 | # add transformed paths to this layer 80 | for ELGR_tr in ELGR_transforms[ELGR]: 81 | # get the path from the ELSH-XXXX glyph, first master layer 82 | path = font.glyphs[ELSH_name].layers[master_id].paths[0].copy() 83 | # apply wght and ELGR transforms in this order 84 | path.applyTransform(wght_tr) 85 | path.applyTransform(ELGR_tr) 86 | layer.paths.append(path) 87 | -------------------------------------------------------------------------------- /tools/glyphs-scripts/save glyph set for flythrough animation.py: -------------------------------------------------------------------------------- 1 | #MenuTitle: save glyph set for flythrough animation 2 | 3 | """ 4 | Save glyph names, unicodes, and show status for Handjet flythrough animation 5 | """ 6 | 7 | import GlyphsApp 8 | 9 | selected = Glyphs.font.selectedLayers 10 | 11 | for ll in selected: 12 | gn = ll.parent.name 13 | u = ll.parent.unicode 14 | c = len(ll.components) 15 | if gn != ".notdef": 16 | if ("comb" not in gn) and ("space" not in gn) and (ll.width != 0) and (c > 1) and (ll.parent.export == True): 17 | s = True 18 | else: 19 | s = False 20 | if u: 21 | print("%s,0x%s,%s" % (gn, u, s)) 22 | else: 23 | print("%s,,%s" % (gn, s)) --------------------------------------------------------------------------------