Security News
Node.js EOL Versions CVE Dubbed the "Worst CVE of the Year" by Security Experts
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
@pionir/preslovljivac
Advanced tools
A simple transliteration library for Serbian language, written in Javascript and using ES Modules.
A simple transliteration library for Serbian language, written in Javascript and using ES Modules.
import preslovi from '@pionir/preslovljivac'; //loading the package
console.log(preslovi("text",'','n')); /*using it to write "text" to console in cyrillic, the output will be "текст" */
console.log(preslovi("текст",'','Cyrl')); //output will be "text"
You can also give it a second parameter, in case you want something to remain unchanged.
For example, I want 'Microsoft' and 'Google' to remain the same:
import preslovi from '@pionir/preslovljivac';
console.log(preslovi("neki tekst, Google Microsoft", "Google, Microsoft",'a'));
//the expected output is "неки текст, Google Microsoft"
Do note though that you need to write it as a string, with each entry divided by commas (,).
You can also pass a third parameter.
If the third parameter is a 'falsy' value, it will use the auto-detector that i built: https://www.npmjs.com/package/@pionir/detektor-js.
It only counts through the first 512 characters, so if you have some massive strings it won't count through the entire string, so it may not be 100% accurate if both are abundant throughout the text. It will convert every character no matter the length of the string, though.
If you want to avoid this, you can give it a parameter 'Cyrl' for cyrillic, a non-empty string for latin.
For example:
import preslovi from '@pionir/preslovljivac';
console.log(preslovi("text in latin",'','t')); //i passed t as the third parameter so that it isn't a 'falsy' value
//expected output is "текст ин латин"
console.log(preslovi("текст на ћирилици",'','Cyrl')); /*i passed 'Cyrl' as the third parameter, so now it will treat it as cyrillic text and the output will be "tekst na ćirilici"*/
//alternatively you can just let it use the auto-detect
console.log(preslovi("text text and more text")); //the output here will be "текст текст анд море текст"
./tests/main.js is a test file used with ava. Feel free to configure it as you wish.
Note: A few letters that exist in English latin don't exist in Serbian cyrillic, those are:
Q (translated as "ку"),
X (translated as "кс"),
Y (translated as "иј"),
W (translated as "в").
If you have any suggestions, feel free to send them to me. I'm always open for improvement.
This projects has been developed as part of the Pionir Free School. To help sustain the school we ask for your donation or sponsorship if you find this project useful. By donating or sponsoring you will be funding continuous development of this and other projects at Pionir.
FAQs
A simple transliteration library for Serbian language, written in Javascript and using ES Modules.
We found that @pionir/preslovljivac demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
Security News
cURL and Go security teams are publicly rejecting CVSS as flawed for assessing vulnerabilities and are calling for more accurate, context-aware approaches.
Security News
Bun 1.2 enhances its JavaScript runtime with 90% Node.js compatibility, built-in S3 and Postgres support, HTML Imports, and faster, cloud-first performance.