All Projects → Mercury13 → unicodia

Mercury13 / unicodia

Licence: GPL-3.0 license
Encyclopedia of Unicode characters

Programming Languages

C++
36643 projects - #6 most used programming language
HTML
75241 projects
c
50402 projects - #5 most used programming language
PostScript
262 projects
python
139335 projects - #7 most used programming language
CMake
9771 projects

Projects that are alternatives of or similar to unicodia

Words-away
防止文本的敏感词检测 - Prevent sensitive words detection of text.
Stars: ✭ 224 (+1217.65%)
Mutual labels:  unicode
glyphhanger
Your web font utility belt. It can subset web fonts. It can find unicode-ranges for you automatically. It makes julienne fries.
Stars: ✭ 422 (+2382.35%)
Mutual labels:  unicode
ara
ع Command line tool that displays Arabic text in terminal.
Stars: ✭ 27 (+58.82%)
Mutual labels:  unicode
unicode-9.0.0
JavaScript-compatible Unicode data. Arrays of code points, arrays of symbols, and regular expressions for Unicode v9.0.0’s categories, scripts, blocks, bidi, and other properties.
Stars: ✭ 16 (-5.88%)
Mutual labels:  unicode
unicode-data
Temporary holding place for my suggestions for future version of Unicode data files. Report bugs to https://www.unicode.org/reporting.html
Stars: ✭ 18 (+5.88%)
Mutual labels:  unicode
ruby-homograph-detector
🕵️‍♀️🕵️‍♂️ Ruby gem for determining whether a given URL is considered an IDN homograph attack
Stars: ✭ 29 (+70.59%)
Mutual labels:  unicode
unicode-blocks
Unicode Blocks of a Ruby String
Stars: ✭ 18 (+5.88%)
Mutual labels:  unicode
utf8-validator
UTF-8 Validator
Stars: ✭ 18 (+5.88%)
Mutual labels:  unicode
unicode display width
Displayed width of UTF-8 strings in Modern C++
Stars: ✭ 30 (+76.47%)
Mutual labels:  unicode
codex
A repository of mathematical knowledge written in the MathLingua language.
Stars: ✭ 17 (+0%)
Mutual labels:  encyclopedia
ocreval
Update of the ISRI Analytic Tools for OCR Evaluation with UTF-8 support
Stars: ✭ 48 (+182.35%)
Mutual labels:  unicode
unicode-lookup
The web's best unicode lookup tool!
Stars: ✭ 49 (+188.24%)
Mutual labels:  unicode
unigem-objective-c
Unicode Gems, a Mac app, an iOS app, and an iOS keyboard for letter-like unicode.
Stars: ✭ 22 (+29.41%)
Mutual labels:  unicode
arrow-finder
These docs help you to find and use arrows you need more quickly
Stars: ✭ 24 (+41.18%)
Mutual labels:  unicode
hyphenation
Text hyphenation for Rust
Stars: ✭ 43 (+152.94%)
Mutual labels:  unicode
elokab-terminal
Lightweight terminal emulator program that supports the Arabic language
Stars: ✭ 16 (-5.88%)
Mutual labels:  unicode
emoji-db
A database of Apple-supported emojis in JSON format. Used by my Alfred emoji workflow.
Stars: ✭ 32 (+88.24%)
Mutual labels:  unicode
nepali utils
A pure dart package with collection of Nepali Utilities like Date converter, Date formatter, DateTime, Nepali Numbers, Nepali Unicode, Nepali Moments and many more.
Stars: ✭ 22 (+29.41%)
Mutual labels:  unicode
CJK-character-count
Program that counts the amount of CJK characters based on Unicode ranges and Chinese encoding standards 字体汉字计数软件
Stars: ✭ 195 (+1047.06%)
Mutual labels:  unicode
unicode
A Flask-Based Web-App for Exploring Unicode
Stars: ✭ 12 (-29.41%)
Mutual labels:  unicode

What is Unicodia?

It is a simple Unicode encyclopedia and replacement for Character Map. Right now Windows only.

Lifecycle phase: 4 (beta). Usable but still problems with sustainability.

I’m in Ukraine torn with war, so I’ll release often. See “war release” tag in Issues.

How to build?

  • Slight C++20 and std::filesystem here → so need either MSYS or recent Qt with MinGW 11.
  • Also need cURL (present in W10 18H2+), 7-zip, UTransCon.
  • Configure and run tape.bat file.
  • Configure and run rel.bat file.

How to develop?

  • Download/find all tools mentioned above.
  • Ensure that your Qt has MinGW 11/12. Or make a custom kit of some MinGW Qt and MSYS compiler; tested Qt 6.1.2, 6.1.3, 6.2.0, 6.2.4
  • Compile and run AutoBuilder.
  • Move UcAuto.cpp to Unicodia/Uc.
  • Compile Unicodia.

If you want to rebuild GlyphWiki font

(This section is being written)

Compatibility and policies

Platforms

Win7/10/11 x64 only. Rationale:

  • WXP, WVista and W8 are completely abandoned by all imaginable software.
  • No obstacles for x86, just untested because no one compiled Qt for x86.
  • Recently checked Windows 11, and it works.

Tofu/misrenderings

  • W10/11 should support everything possible, W7 base plane only.
  • Some base plane scripts (e.g. Georgian Nuskhuri) will not be shown the best way in W7, but will be shown.
  • Of course, same for plane 1 scripts: if I find that some font supports e.g. Lycian, I’ll include it to font chain.
  • Three scripts of plane 1 are considered “extremely important” and will be supported in W7: Phoenician, Aramaic, Brahmi. I’ll also support Gothic, just because its serif look is really “gothic”.
  • Small misrenderings in descriptions are tolerable, I’ll fix them only if samples are bad, or if the font has other problems.

Future functionality

  • Finish GlyphWiki loader.
  • Better CJK reference.
  • Egyptian hieroglyph reference.

What do utilities do?

  • AutoBuilder — build UcAuto.cpp from Unicode base.
    • Warning: transition to older/newer Unicode requires a bit of handwork.
  • GwLoader — loads glyphs from GlyphWiki
  • GwRemake — does an auto-remake of GlyphWiki
  • PanoseTool — early tool that used to remove fonts’ declared script support. Left for history. Current Unicodia uses custom font loading code based on PanoseTool + font matching flags.
  • SmartCopy — copies the file if it actually differs.
  • TapeMaker — creates a tape file for graphic emoji.
  • UTranslator — translation tool.

Unicodia emoji style guide

Right now Unicodia emoji library is very small, but…

I discovered that most of professional emoji… do not work! Do not work because they have too much detail and too little contrast. The last professional emoji that really worked is… 2018 Microsoft!

High priority: emoji that are really badly grasped.

Canvas size: 64×64. For oblong/round object: leave 2px from edge. For square object: leave 6px from edge. For faces: leave 7px from edge.

Colour scheme: GNOME Human Interface Guidelines unless REALLY needed (e.g. military helmet). Use plain colours. Use black #000 sparingly, mainly for outlines and small details.

Projection: frontal/sideways unless the object is better identified in other projection. Bilateral animals, vehicles and people face to the left.

Style: avoid toyish look. Machinery should be based on real-life models.

Outline style: outer 2px, the darkest colour of palette (unless outlining grey/white/luminous thing). Inner may be thinner if present. Butts are round for natural objects and square/slanted for boxy ones. Same for corners.

Outline presence: outer may be partly omitted to gain more dynamic look; the object should continue from the OUTER edge of outline (like in OpenMoji). Inner lines are mostly absent. Truncation lines are never outlined. You may omit outline of small outer details (e.g. hooves); but if they really define object’s shape, it’s better to outline them at least partly, at least with 1px.

Grid: 1px; extremum nodes are snapped.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].