https://github.com/diku-dk/sml-unicode
SML Unicode Library
https://github.com/diku-dk/sml-unicode
smlpkg
Last synced: 4 months ago
JSON representation
SML Unicode Library
- Host: GitHub
- URL: https://github.com/diku-dk/sml-unicode
- Owner: diku-dk
- License: mit
- Created: 2021-01-11T15:29:23.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-04-13T14:29:23.000Z (about 3 years ago)
- Last Synced: 2025-09-15T00:27:28.369Z (9 months ago)
- Topics: smlpkg
- Language: Standard ML
- Homepage:
- Size: 10.7 KB
- Stars: 4
- Watchers: 6
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# sml-unicode [](https://github.com/diku-dk/sml-unicode/actions)
This library makes it possible to process unicode stored in
[UTF8](http://en.wikipedia.org/wiki/UTF-8) format.
Just refer to the `unicode.mlb` file in your SML project. Then you can
use the structures `Utf8` and `UnicodeChars`. The `Utf8` structure
provides basic operations for processing UTF8 files. The
`UnicodeChars` structure provides bindings for a series of useful
unicode characters.
## Overview of MLB files
- `lib/github.com/diku-dk/sml-unicode/unicode.mlb`:
- **signature** [`UTF8`](lib/github.com/diku-dk/sml-unicode/UTF8.sig)
- **signature** [`UNICODE_CHARS`](lib/github.com/diku-dk/sml-unicode/UNICODE_CHARS.sig)
- **structure** `Utf8` :> `UTF8`
- **structure** `UnicodeChars` :> `UNICODE_CHARS`
## Use of the package
This library is set up to work well with the SML package manager
[smlpkg](https://github.com/diku-dk/smlpkg). To use the package, in
the root of your project directory, execute the command:
```
$ smlpkg add github.com/diku-dk/sml-unicode
```
This command will add a _requirement_ (a line) to the `sml.pkg` file in your
project directory (and create the file, if there is no file `sml.pkg`
already).
To download the library into the directory
`lib/github.com/diku-dk/sml-unicode`, execute the command:
```
$ smlpkg sync
```
You can now reference the `mlb`-file using relative paths from within
your project's `mlb`-files.
Notice that you can choose either to treat the downloaded package as
part of your own project sources (vendoring) or you can add the
`sml.pkg` file to your project sources and make the `smlpkg sync`
command part of your build process.
## Authors
Copyright (c) 2015-2021 Martin Elsman, University of Copenhagen.