# Glyphana [![Build Status](https://github.com/virtualritz/glyphana/workflows/CI/badge.svg)](https://github.com/virtualritz/glyphana/actions?workflow=CI) Glyphana is a tool to search for and discover unicode glyphs. It is inspired by the [macOS Character Viewer](https://support.apple.com/guide/mac-help/use-emoji-and-symbols-on-mac-mchlp1560/mac) which I sorely miss on Linux and Windows. ![Searching for the characters contained in 'grinning cat' as well as matching the term against each glyph's description](https://github.com/virtualritz/glyphana/blob/master/screenshot.png) ## Caveat This was hacked over the course of a few free hours here and there. It currently is limited to most of the functionality I personally miss from Character Viewer. I.e. it is far from feature parity with the latter. It also lacks the abilit of Windows Character Map to compose strings. A feature I miss from Character Viewer and plan to add. ## Releases You can grab a pre-built bimary for **Windows 2019+**, **Linux** or **macOS 11+** from the [Releases page](https://github.com/virtualritz/glyphana/releases). ## Building- & Updating From Source You need to have [Rust installed](https://www.rust-lang.org/tools/install). From a terminal (command line) run: ``` cargo install glyphana ``` Make sure you have `cargo-update` installed. You only need to do that once: ``` cargo install cargo-update ``` After that, updating is as simple as: ``` cargo install-update glyphana ``` ## Features #### Clipboard * Copy an individual character to the clipboard. * Copy Unicode as hex in HTML format to the clipboard, * Copy UTF-8 as hex to the clipboard. #### Inspection * Inspect individual characters (show name, Unicode, UTF-8). * Store character in a persistent collection. #### Browsing * View recently inspected characters. * View collected characters. * Browse characters by categories. #### Search * Search for individual characters. * Consider case. * Search against Unicode character name. * Search against the Adobe glyph database. ## Contributing Features and bug fixes are welcome. If you want to add a feature, check the [to-do list](TODO.md) first. If there is something you like working on, create an issue to later put your PR against. If it is something else not in the list also create an issue to collect feedback before you start working on it. Before you do your final commit that precedes your PR make sure that ``` cargo +nightly check --all-features cargo +nightly fmt --all -- --check cargo +nightly clippy -- -D warnings ``` all come out clean. ## License **Apache 2.0** or **MIT** or **BSD 3 Clause**; at your discretion. Glyphana currently uses (and embeds) solely [Noto family](https://fonts.google.com/noto) fonts which are under the **Open Font License**. For licenses used by dependencies see [licenses.html](licenses.html).