lipimala 1.1.0
lipimala: ^1.1.0 copied to clipboard
Premium exact round-trip Indic transliteration library for Devanagari, Gujarati, plain English, and canonical reverse conversion.
lipimala for Dart #
IAST-style transliteration for Devanagari and Gujarati, with canonical reverse conversion, direct script conversion, and Plain-English or Hunterian output.
Install #
dart pub add lipimala
Requires Dart 3.0 or newer.
Use #
import 'package:lipimala/lipimala.dart';
void main() {
print('Kṛṣṇa'.toDevanagariFromIast()); // कृष्ण
print('કૃષ્ણ'.toCanonicalIastFromGujarati()); // kṛṣṇa
print('कानपुर'.toPlainEnglishFromDevanagari()); // kaanpur
print('આજ મારે'.toPlainEnglishFromGujarati()); // aaj maare
print('कृष्ण'.toCanonicalGujaratiFromDevanagari()); // કૃષ્ણ
}
Use toHunterianFromDevanagari() and toHunterianFromGujarati() for Hunterian output. List extensions such as toDevanagariFromIast() also work on List<String>.
Profiles and options #
Forward conversion accepts strictIast, iso15919Core, or extendedIndic profiles. The default is extendedIndic. Options control normalization, unknown input, digits, punctuation, Vedic accents, whitespace, and exact-source metadata.
Direct Brahmic transcription accepts BrahmicPlainEnglishOptions for language selection, schwa deletion, vowel length, terminal anusvara, Gujarati ʿayn, and other pronunciation choices.
Preserve the original input #
The rendered script may not encode the original Latin spelling, capitalization, or normalization. A result envelope keeps the original alongside the rendered value:
final result = 'Kṛṣṇa'.toDevanagari();
print(result.rendered); // कृष्ण
print(result.restoreOriginal()); // Kṛṣṇa
For a standalone string, set embedExactSourceMetadata: true in the conversion options and use an exact reverse method such as toExactIastFromDevanagari(). Unicode-tag metadata can be removed by systems that sanitize invisible characters.
License #
MIT. See LICENSE.