Skip to main content

ipalint

Checks linguistic datasets for IPA errors and inconsistencies. Usage:

ipalint mydataset

This will either (1) print the IPA errors found in the dataset; (2) print nothing, meaning it found no errors; or (3) print an error message if it fails to read the file. In no case will the input file be modified.

The linter should be able to read any well-formed csv/tsv/tab dataset, assuming that there is an IPA data column. It also reads table-less lines and handles pipes; thus, even if you have a less common format like this one, you can still lint it by doing something like:

cat KSL.qlc | grep "^[[:digit:]]" | cut -f 6 | ipalint

optional arguments

--col COL specifies the column containing the IPA data; this can be either the column name or the column index (starting from 0). If this option is not set, ipalint will try to guess the column by looking at the column names.

--no-header treats the first row as data. The default is to treat the first row as header and not lint it.

--ignore-nfd ignores errors about an IPA string that are not in Unicode’s NFD normal form. With very few exceptions, IPA diacritics should be combining characters. However, in some situations this might be irrelevant for your purposes and you can ignore these errors.

--ignore-ws ignores errors about leading or trailing whitespace in IPA strings. If combined with the previous flag, ipalint will only report errors about symbols that are not part of the IPA chart.

--linewise outputs (line number, error message) tuples, one such tuple per line of output. The default is to output the set of errors and include the list of line numbers to the right of each error.

--no-lines only outputs the set of errors found in the data. Useful when you want a quick glimpse of what might be wrong. This flag is ignored if the previous one is set.

what is checked

  • Ensures that all the characters of the dataset’s IPA strings are in the IPA chart (the 2015 revision). The only accepted non-IPA character is space.

  • Ensures that the strings conform to Unicode’s Normalisation Form D (NFD).

  • Ensures that the strings do not start or end with unnecessary whitespace.

installation

This is a standard Python 3 package without dependencies. It is offered at the Cheese Shop, so you can install it through pip:

pip install ipalint

or, alternatively, you can clone this repo (safe to delete afterwards) and do:

python setup.py test
python setup.py install

Of course, this could be happening within a virtualenv/venv as well.

similar projects

  • ipapy checks and cleans IPA strings.

  • lingpy includes some tools for analysing IPA strings.

  • ipatok is a library for tokenising IPA strings.

licence

MIT. Do as you please and praise the snake gods.

Metadata

Release files for ipalint 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ipalint 0.0.1
File Size Uploaded Provenance
ipalint-0.0.1.tar.gz 23.9 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ipalint 0.0.1
File Interpreter ABI Platform
ipalint-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 55.2 kB

Release files / ipalint-0.0.1.tar.gz

Download URL ipalint-0.0.1.tar.gz
Size 23.9 kB
Tags Source
SHA-256 checksum
How to use checksums
9d0c19ca107f7a53becceabac41ba6085a293729b3a3b15e55df30b7e77978ac
BLAKE2b-256 checksum
How to use checksums
31f6b3039e9454073ee8f28f2739e0b41a810e2ed1d1f42a49452a5b87a27757
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / ipalint-0.0.1-py3-none-any.whl

Download URL ipalint-0.0.1-py3-none-any.whl
Size 31.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
66dfd8bd1a7af0afecfb268b33afb15c7c12489a0a4d44c33148346d757eb8ab
BLAKE2b-256 checksum
How to use checksums
ddc605cae32575e9e59bf2f3edb4ccd9f5709ae6eb37ed0fff40068aa75285a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for ipalint 0.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page