diff options
Diffstat (limited to 'src/lang-guess.js')
| -rw-r--r-- | src/lang-guess.js | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/lang-guess.js b/src/lang-guess.js index f688cac..1d60c59 100644 --- a/src/lang-guess.js +++ b/src/lang-guess.js @@ -15,7 +15,7 @@ const SCRIPTS = [ ['han', /[一-鿿㐀-䶿]/g], ['hangul', /[가-ᄀ-ᇿ]/g], ]; -const LANG_SCRIPT = { +export const LANG_SCRIPT = { en: 'latin', es: 'latin', fr: 'latin', de: 'latin', pt: 'latin', id: 'latin', sw: 'latin', tr: 'latin', vi: 'latin', ru: 'cyrillic', ar: 'arabic', ur: 'arabic', hi: 'devanagari', mr: 'devanagari', bn: 'bengali', ta: 'tamil', te: 'telugu', ja: 'kana', ko: 'hangul', zh: 'han', @@ -37,14 +37,14 @@ const STOPSETS = Object.fromEntries(Object.entries(STOP).map(([k, v]) => [k, new export const proseOf = (text) => String(text || '') .replace(/https?:\/\/\S+/g, ' ').replace(/nostr:[a-z0-9]+/gi, ' ').replace(/#[\p{L}\p{N}_]+/gu, ' '); -export function scriptOf(text) { +export function scriptOf(text, min = 3) { let best = null, bestN = 0, total = 0; for (const [name, re] of SCRIPTS) { const n = (text.match(re) || []).length; total += n; if (n > bestN) { best = name; bestN = n; } } - return total < 3 ? null : best; + return total < min ? null : best; } // A language code from the app's list, or null when it cannot tell. |
