Gurmukhi Utils (Dart)

Dart library for converting, analyzing, and testing Gurmukhi strings.

SantLipi extensions are supported.

Gurmukhi String Extensions

Remove Vishraams

'ਸਭਨਾ ਜੀਆ ਕਾ, ਇਕੁ ਦਾਤਾ; ਸੋ. ਮੈ ਵਿਸਰਿ ਨ ਜਾਈ ॥੫॥'.removeVishraams();
// 'ਸਭਨਾ ਜੀਆ ਕਾ ਇਕੁ ਦਾਤਾ ਸੋ ਮੈ ਵਿਸਰਿ ਨ ਜਾਈ ॥੫॥'

First Letters

'ਜਿਸਨੋ ਕ੍ਰਿਪਾ ਕਰਹਿ ਤਿਨਿ ਨਾਮ ਰਤਨੁ ਪਾਇਆ ॥'.firstGurmukhiLetters();
// ['ਜ', 'ਕ', 'ਕ', 'ਤ', 'ਨ', 'ਰ', 'ਪ']

Split

'ਕੈਸੀ ਆਰਤੀ ਹੋਇ ॥'.splitGurmukhi();
// ['ਕੈ', 'ਸੀ', ' ', 'ਆ', 'ਰ', 'ਤੀ', ' ', 'ਹੋ', 'ਇ', ' ', '॥']

Characters joined by Virama can be split as:

'ਅੰਮ੍ਰਿਤ'.splitGurmukhi();
// ['ਅੰ', 'ਮ੍ਰਿ', 'ਤ']
'ਅੰਮ੍ਰਿਤ'.splitGurmukhi(splitVirama: true);
// ['ਅੰ', 'ਮ੍', 'ਰਿ', 'ਤ']

Support SantLipi modifiers:

'ਸ꠴ਯਾਮ'.splitGurmukhi(extensions: true);
// ['ਸ', '꠴ਯਾ', 'ਮ']

Unicode Normalization

Fix Matras of , , and :

'ਅਾਦਿ'.normalizeGurmukhi();
// ਆਦਿ

Fix Order of Diacritics:

'ਕੰੁਚਰ'.normalizeGurmukhi();
// ਕੁੰਚਰ

Remove Sant Lipi Modifiers if extensions is not enabled:

'ਮਧ꠳ਯ'.normalizeGurmukhi();
// ਮਧ੍ਯ

Conversion

Number to Gurmukhi

123.toGurmukhi();
// ੧੨੩

Ascii to Gurmukhi

Gurmukhi Text encoded in Ascii fonts (See fonts by Dr Kulbir Thind):

asciiToGurmukhi('goibMd imlx kI ieh qyrI brIAw ]');
// ਗੋਬਿੰਦ ਮਿਲਣ ਕੀ ਇਹ ਤੇਰੀ ਬਰੀਆ ॥

Support SantLipi modifiers (See Ascii Font OpenGurbaniAkhar):

asciiToGurmukhi('qRsîo', extensions: true);
// ਤ੍ਰਸ꠵ਯੋ

Contribute

If you want to help, please get started with the CONTRIBUTING.md doc

Gurmukhi Utils comes in many programming languages. Use the Gurmukhi Utils library in another language.

Libraries

gurmukhi_utils