diff --git a/README.md b/README.md index dfcd84c..e69de29 100644 --- a/README.md +++ b/README.md @@ -1,2 +0,0 @@ -# uk-shavian -Change cyrillic to shavian diff --git a/css/style.css b/css/style.css new file mode 100644 index 0000000..bcfd7e7 --- /dev/null +++ b/css/style.css @@ -0,0 +1,9 @@ +.grey { + -webkit-filter: grayscale(100%); + filter: grayscale(100%); +} + +.grey:hover { + -webkit-filter: grayscale(0%); + filter: grayscale(0%); +} \ No newline at end of file diff --git a/fonts/NotoColorEmoji.ttf b/fonts/NotoColorEmoji.ttf new file mode 100644 index 0000000..69cf21a Binary files /dev/null and b/fonts/NotoColorEmoji.ttf differ diff --git a/fonts/NotoSans/NotoSans-Bold.ttf b/fonts/NotoSans/NotoSans-Bold.ttf new file mode 100644 index 0000000..ab11d31 Binary files /dev/null and b/fonts/NotoSans/NotoSans-Bold.ttf differ diff --git a/fonts/NotoSans/NotoSans-BoldItalic.ttf b/fonts/NotoSans/NotoSans-BoldItalic.ttf new file mode 100644 index 0000000..6dfd1e6 Binary files /dev/null and b/fonts/NotoSans/NotoSans-BoldItalic.ttf differ diff --git a/fonts/NotoSans/NotoSans-Italic.ttf b/fonts/NotoSans/NotoSans-Italic.ttf new file mode 100644 index 0000000..1639ad7 Binary files /dev/null and b/fonts/NotoSans/NotoSans-Italic.ttf differ diff --git a/fonts/NotoSans/NotoSans-Medium.ttf b/fonts/NotoSans/NotoSans-Medium.ttf new file mode 100644 index 0000000..25050f7 Binary files /dev/null and b/fonts/NotoSans/NotoSans-Medium.ttf differ diff --git a/fonts/NotoSans/NotoSans-MediumItalic.ttf b/fonts/NotoSans/NotoSans-MediumItalic.ttf new file mode 100644 index 0000000..b332bcb Binary files /dev/null and b/fonts/NotoSans/NotoSans-MediumItalic.ttf differ diff --git a/fonts/NotoSans/NotoSans-Regular.ttf b/fonts/NotoSans/NotoSans-Regular.ttf new file mode 100644 index 0000000..a1b8994 Binary files /dev/null and b/fonts/NotoSans/NotoSans-Regular.ttf differ diff --git a/fonts/NotoSansGlagolitic-Regular.ttf b/fonts/NotoSansGlagolitic-Regular.ttf new file mode 100644 index 0000000..d911119 Binary files /dev/null and b/fonts/NotoSansGlagolitic-Regular.ttf differ diff --git a/fonts/NotoSansShavian-Regular.ttf b/fonts/NotoSansShavian-Regular.ttf new file mode 100644 index 0000000..db7a032 Binary files /dev/null and b/fonts/NotoSansShavian-Regular.ttf differ diff --git a/index.html b/index.html index 1948dca..6d90202 100755 --- a/index.html +++ b/index.html @@ -1,10 +1,55 @@ + + + + + + + Main | Linden Top + + - + + + + +
+
+
+
Tool
+
+
Ukrainian Transliteration
+

Cyrillic, Shavian, Latin, Glagolitic.

+ Use +
+
+
+
+ + + + + \ No newline at end of file diff --git a/pages/about.html b/pages/about.html new file mode 100644 index 0000000..f07567c --- /dev/null +++ b/pages/about.html @@ -0,0 +1,44 @@ + + + + + + + + + + About | Linden Top + + + + +
+ +
+ + + + + + + + + + \ No newline at end of file diff --git a/projects/transliteration/css/style.css b/projects/transliteration/css/style.css new file mode 100644 index 0000000..4a9b467 --- /dev/null +++ b/projects/transliteration/css/style.css @@ -0,0 +1,25 @@ +@font-face { + font-family: 'Noto Sans Regular'; + font-style: normal; + font-weight: 400; + src: url(../../../fonts/NotoSans/NotoSans-Regular.ttf); +} + +@font-face { + font-family: 'Noto Sans Glagolitic'; + font-style: normal; + font-weight: 400; + src: url(../../../fonts/NotoSansGlagolitic-Regular.ttf); +} + +@font-face { + font-family: 'Noto Sans Shavian'; + font-style: normal; + font-weight: 400; + src: url(../../../fonts/NotoSansShavian-Regular.ttf); +} + +#result, textarea { + font-family: 'Noto Sans Regular', 'Noto Sans Glagolitic', 'Noto Sans Shavian', sans-serif; + font-size: 16px; +} \ No newline at end of file diff --git a/projects/transliteration/index.html b/projects/transliteration/index.html new file mode 100644 index 0000000..6b1e079 --- /dev/null +++ b/projects/transliteration/index.html @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + Transliteration | Linden Top + + + + + + + +
+ +
+
+ + + + + + +
+
+ +
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/projects/transliteration/js/lib.js b/projects/transliteration/js/lib.js new file mode 100644 index 0000000..241ddcc --- /dev/null +++ b/projects/transliteration/js/lib.js @@ -0,0 +1,96 @@ +function valueOfSelection(id) { // string + let selObj = document.getElementById(id) + return selObj.options[selObj.selectedIndex].text +} // string + +function printResult(string) { // string + document.getElementById('result').innerHTML = string.replace(/\n\r?/g, '
') +} + +function transliteration(from, to, value) { // string, string, string + + var upCaseLetters = upCase(from, getLetters(from)) + upCase(to, getLetters(to)) + var softLetters = getLetters(to, 'Soft'); + var iotaSign = getLetters(to, 'Jot') + var softSign = getLetters(to, 'Soft sign') + + console.log('test'); + + for (letter of scripts) { + if (isUnderfined([letter[from], letter[to]])) { continue } + + // Party uppercase + let partlyIn = upCase(from, letter[from], false) + let partlyOut = upCase(to, letter[to], false) + + // Full uppercase + let exception = '([' + '0-9\-' + upCaseLetters + ']{0,})' + let fullIn = '(?<=[\\s,.:;"\']|^)' + + exception + upCase(from) + exception + + '(?=[\\s,.:;"\']|$)' + + // Iotation + let lowerSoft = '([' + softLetters + '])' + iotaSign + let upperSoft = '([' + upCase(softLetters) + '])' + upCase(iotaSign) + + value = value + .normalize('NFD') + .replace(new RegExp(fullIn, 'g'), '$1' + upCase(to) + '$2') + .replace(new RegExp(partlyIn, 'g'), partlyOut) + .replace(new RegExp(letter[from], 'g'), letter[to]) + .replace(new RegExp(lowerSoft, 'g'), '$1' + softSign) + .replace(new RegExp(upperSoft, 'g'), '$1' + upCase(softSign)) + } + return value +} // string + +function upCase(script, symbol = letter[script], all = true) { // string, string, boolean + if (isUnderfined(symbol)) return + switch (script) { + case 'Shavian': { + symbol = all ? '·' + [...symbol].join('·') : '·' + symbol + break + } + default: { + symbol = all ? symbol.toUpperCase() : symbol[0].toUpperCase() + symbol.slice(1) + break + } + } + return symbol +} // string + +function isUnderfined(value) { // any + switch (typeof value) { + case 'object': { + if (value === undefined) { return true } + for (i of value) if (i === undefined) { return true } + return false + } + default: { + return value === undefined ? true : false + } + } +} // boolean + +function getLetters(script, param = 'all') { // array, string + var string = '' + switch (param) { + case 'all': { + for (letter of scripts) { + if (isUnderfined(letter[script])) { continue } + string += letter[script] + } + break + } + default: { + for (letter of scripts) { + if (isUnderfined(letter[script]) + || isUnderfined(letter['Param']) + || letter['Param'].indexOf(param) < 0) { continue } + string += letter[script] + } + break + } + } + return string +} // string \ No newline at end of file diff --git a/projects/transliteration/js/objects.js b/projects/transliteration/js/objects.js new file mode 100644 index 0000000..80bdcd5 --- /dev/null +++ b/projects/transliteration/js/objects.js @@ -0,0 +1,306 @@ +scripts = [ + // Long sounds + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'ѕѕ', + 'Glagolitic': 'ⰷⰷ', + 'Latin': 'dzz', + 'Shavian': '𐑞𐑞', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'џџ', + 'Glagolitic': 'ⰼⰼ', + 'Latin': 'dgg', + 'Shavian': '𐑡𐑡', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'цц', + 'Glagolitic': 'ⱌⱌ', + 'Latin': 'tss', + 'Shavian': '𐑔𐑔', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'чч', + 'Glagolitic': 'ⱍⱍ', + 'Latin': 'tcc', + 'Shavian': '𐑗𐑗', + }, + // Polysounds + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'щ', + 'Glagolitic': 'ⱋ', + 'Latin': 'ctc', + 'Shavian': '𐑖𐑗', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'ѕ', + 'Glagolitic': 'ⰷ', + 'Latin': 'dz', + 'Shavian': '𐑞', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'џ', + 'Glagolitic': 'ⰼ', + 'Latin': 'dg', + 'Shavian': '𐑡', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'ц', + 'Glagolitic': 'ⱌ', + 'Latin': 'ts', + 'Shavian': '𐑔', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'ч', + 'Glagolitic': 'ⱍ', + 'Latin': 'tc', + 'Shavian': '𐑗', + }, + { + 'Cyrillic': 'є', + 'Glagolitic': 'ⰹⰅ', + 'Latin': 'je', + 'Shavian': '𐑘𐑧', + }, + { + 'Cyrillic': 'ї'.normalize('NFD'), + 'Glagolitic': 'ⱑ', + 'Latin': 'ji', + 'Shavian': '𐑘𐑰', + }, + { + 'Cyrillic': 'ю', + 'Glagolitic': 'ⱓ', + 'Latin': 'ju', + 'Shavian': '𐑘𐑵', + }, + { + 'Cyrillic': 'я', + 'Glagolitic': 'ⱔ', + 'Latin': 'ja', + 'Shavian': '𐑘𐑨', + }, + { + 'Cyrillic': 'йо'.normalize('NFD'), + 'Glagolitic': 'ⱖ', + 'Latin': 'jo', + 'Shavian': '𐑘𐑴', + }, + // Specific + { + 'Param': [ + 'Jot', + ], + 'Cyrillic': 'й'.normalize('NFD'), + 'Glagolitic': 'ⰹ', + 'Latin': 'j', + 'Shavian': '𐑘', + }, + { + 'Param': [ + 'Soft sign', + ], + 'Cyrillic': 'ь', + 'Glagolitic': 'ⱐ', + 'Latin': 'j', + 'Shavian': '𐑢', + }, + { + 'Cyrillic': 'ґ', + 'Glagolitic': 'ⰽⰳ', + 'Latin': 'q', + 'Shavian': '𐑜', + }, + // Monosounds + { + 'Cyrillic': 'а', + 'Glagolitic': 'ⰰ', + 'Latin': 'a', + 'Shavian': '𐑪', + }, + { + 'Cyrillic': 'б', + 'Glagolitic': 'ⰱ', + 'Latin': 'b', + 'Shavian': '𐑚', + }, + { + 'Cyrillic': 'в', + 'Glagolitic': 'ⰲ', + 'Latin': 'v', + 'Shavian': '𐑫', + }, + { + 'Cyrillic': 'г', + 'Glagolitic': 'ⰳ', + 'Latin': 'h', + 'Shavian': '𐑣', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'д', + 'Glagolitic': 'ⰴ', + 'Latin': 'd', + 'Shavian': '𐑛', + }, + { + 'Cyrillic': 'е', + 'Glagolitic': 'ⰵ', + 'Latin': 'e', + 'Shavian': '𐑧', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'ж', + 'Glagolitic': 'ⰶ', + 'Latin': 'g', + 'Shavian': '𐑠', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'з', + 'Glagolitic': 'ⰸ', + 'Latin': 'z', + 'Shavian': '𐑟', + }, + { + 'Cyrillic': 'и', + 'Glagolitic': 'ⰻ', + 'Latin': 'y', + 'Shavian': '𐑦', + }, + { + 'Cyrillic': 'і', + 'Glagolitic': 'ⰺ', + 'Latin': 'i', + 'Shavian': '𐑰', + }, + { + 'Cyrillic': 'к', + 'Glagolitic': 'ⰽ', + 'Latin': 'k', + 'Shavian': '𐑒', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'л', + 'Glagolitic': 'ⰾ', + 'Latin': 'l', + 'Shavian': '𐑤', + }, + { + 'Cyrillic': 'м', + 'Glagolitic': 'ⰿ', + 'Latin': 'm', + 'Shavian': '𐑥', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'н', + 'Glagolitic': 'ⱀ', + 'Latin': 'n', + 'Shavian': '𐑯', + }, + { + 'Cyrillic': 'о', + 'Glagolitic': 'ⱁ', + 'Latin': 'o', + 'Shavian': '𐑴', + }, + { + 'Cyrillic': 'п', + 'Glagolitic': 'ⱂ', + 'Latin': 'p', + 'Shavian': '𐑐', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'р', + 'Glagolitic': 'ⱃ', + 'Latin': 'r', + 'Shavian': '𐑮', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'с', + 'Glagolitic': 'ⱄ', + 'Latin': 's', + 'Shavian': '𐑕', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'т', + 'Glagolitic': 'ⱅ', + 'Latin': 't', + 'Shavian': '𐑑', + }, + { + 'Cyrillic': 'у', + 'Glagolitic': 'ⱆ', + 'Latin': 'u', + 'Shavian': '𐑵', + }, + { + 'Cyrillic': 'ф', + 'Glagolitic': 'ⱇ', + 'Latin': 'f', + 'Shavian': '𐑓', + }, + { + 'Cyrillic': 'х', + 'Glagolitic': 'ⱈ', + 'Latin': 'x', + 'Shavian': '𐑙', + }, + { + 'Param': [ + 'Soft', + ], + 'Cyrillic': 'ш', + 'Glagolitic': 'ⱎ', + 'Latin': 'c', + 'Shavian': '𐑖', + }, +] \ No newline at end of file diff --git a/projects/transliteration/js/script.js b/projects/transliteration/js/script.js new file mode 100644 index 0000000..86b2aaf --- /dev/null +++ b/projects/transliteration/js/script.js @@ -0,0 +1,44 @@ +function eraseTextareaAndResult() { + document.getElementById('send').value = "" + document.getElementById('result').innerHTML = "" +} + +function copyResultToClipboard() { + var range = document.createRange() + range.selectNode(document.getElementById('result')) + window.getSelection().removeAllRanges() + window.getSelection().addRange(range) + document.execCommand('copy') + window.getSelection().removeAllRanges() +} + +function swapValueOfSelections() { + var temp = valueOfSelection('from') + document.getElementById('from').value = valueOfSelection('to') + document.getElementById('to').value = temp +} + +function sendValueOfTextarea() { + var to = valueOfSelection('to') + var from = valueOfSelection('from') + var value = document.getElementById('send').value + printResult(to === from ? value : transliteration(from, to, value)) +} + +/* Hotkeys */ +var keys + +document.getElementById('send').addEventListener("keydown", function (e) { + keys = (keys || []) + keys[e.key] = true + + // Ctrl + Enter in textarea: send values of textarea + if (keys['Control'] && keys['Enter'] && Object.keys(keys).length == 2) { + sendValueOfTextarea() + } +}, false) + +document.addEventListener("keyup", function (e) { + keys = [] + stop() +}, false) \ No newline at end of file diff --git a/projects/uk-latin/index.html b/projects/uk-latin/index.html deleted file mode 100755 index 27b6014..0000000 --- a/projects/uk-latin/index.html +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - Transliterate - - - - -
- - -
-
-
- - -
- - - - - - - - \ No newline at end of file diff --git a/projects/uk-latin/script.js b/projects/uk-latin/script.js deleted file mode 100755 index d3e3d6f..0000000 --- a/projects/uk-latin/script.js +++ /dev/null @@ -1,127 +0,0 @@ -var letters = { - // long sounds - 'чч': 'tcc', - 'цц': 'tss', - 'ѕѕ': 'dzz', - 'џџ': 'dgg', - // with dead accents to cyrillic soft accents - 'я́': 'já', - 'ю́': 'jú', - 'є́': 'jé', - 'ї́': 'jí', - 'а́': 'á', - 'е́': 'é', - 'и́': 'ý', - 'у́': 'ú', - 'і́': 'í', - 'о́': 'ó', - // polisounds - 'щ': 'ctc', - 'ц': 'ts', - 'ч': 'tc', - 'я': 'ja', - 'ю': 'ju', - 'є': 'je', - 'ї': 'ji', - // vuk & other - 'џ': 'dg', - 'ѕ': 'dz', - 'ј': 'j', - 'ў': 'v̆', - // clear - 'а': 'a', - 'б': 'b', - 'в': 'v', - 'г': 'h', - 'ґ': 'q', - 'д': 'd', - 'е': 'e', - 'ж': 'g', - 'з': 'z', - 'и': 'y', - 'і': 'i', - 'й': 'j', - 'к': 'k', - 'л': 'l', - 'м': 'm', - 'н': 'n', - 'о': 'o', - 'п': 'p', - 'р': 'r', - 'с': 's', - 'т': 't', - 'у': 'u', - 'ф': 'f', - 'х': 'x', - 'ш': 'c', -} - -var soft = 'ндтѕцџчзсжшлр' -soft += soft.toUpperCase() - -function swap(object) { - var re_object = {} - for (key in object) { - re_object[object[key]] = key - } - return re_object -} - -function latin() { - var result = document.getElementById('send').value - - /* Lines and palatalization */ - result = result - .replace(new RegExp('([' + soft + '])й', 'g'), '$1-j') - .replace(new RegExp('([' + soft + '])Й', 'g'), '$1-J') - .replace(/ь/g, 'j') - .replace(/Ь/g, 'J') - .replace(/\n\r?/g, '
') - - /* Main transliteration */ - for (letter in letters) { - var klad = letters[letter] - result = result - .replace(new RegExp(letter, 'g'), klad) - /* Big letters */ - .replace(new RegExp(letter.toUpperCase(), 'g'), klad[0].toUpperCase() + klad.slice(1)) - } - - document.getElementById('result').innerHTML = result -} - -function cyrillic() { - var result = document.getElementById('send').value - - var bukvy = swap(letters) - /* Main transliteration */ - for (bukva in bukvy) { - var klad = bukvy[bukva] - result = result - .replace(new RegExp(bukva, 'g'), klad) - /* Big letters */ - .replace(new RegExp(bukva[0].toUpperCase() + bukva.slice(1), 'g'), klad.toUpperCase()) - } - - /* Lines and palatalization */ - result = result - .replace(new RegExp('([' + soft + '])й', 'g'), '$1ь') - .replace(new RegExp('([' + soft + '])Й', 'g'), '$1Ь') - .replace(/\n\r?/g, '
') - - document.getElementById('result').innerHTML = result -} - -function nothing() { - document.getElementById('send').value = "" - document.getElementById('result').innerHTML = "" -} - -function clipboard() { - var range = document.createRange(); - range.selectNode(document.getElementById('result')); - window.getSelection().removeAllRanges(); - window.getSelection().addRange(range); - document.execCommand('copy'); - window.getSelection().removeAllRanges(); -} \ No newline at end of file diff --git a/projects/uk-latin/style.css b/projects/uk-latin/style.css deleted file mode 100755 index e1963cf..0000000 --- a/projects/uk-latin/style.css +++ /dev/null @@ -1,19 +0,0 @@ -#result, #send, textarea { - font-family: monospace; - font-size: 16px; - width: 90%; - margin: 10px auto; - -webkit-locale: 'bg'; - font-language-override: 'BGR'; -} - -button { - display: inline-block; - margin: 10px; - padding: 10px; -} - -#buttons { - margin: 10px auto; - width: 90%; -} \ No newline at end of file diff --git a/projects/uk-shavian/index.html b/projects/uk-shavian/index.html deleted file mode 100755 index 750b2e8..0000000 --- a/projects/uk-shavian/index.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - Transliterate - - - - - -
- - - - - - - \ No newline at end of file diff --git a/projects/uk-shavian/script.js b/projects/uk-shavian/script.js deleted file mode 100755 index 8d4ebfe..0000000 --- a/projects/uk-shavian/script.js +++ /dev/null @@ -1,123 +0,0 @@ -// Обмін кльучів на змінну в објектах -function swap(object) { - var re_object = {} - for (key in object) { - re_object[object[key]] = key - } - return re_object -} - -// З кирилицьи на шовицьу -function shavian() { - var result = document.getElementById('send').value - - // Розкласти јотовані на мјакиј знак і голосну - for (soft in u_softs) { - result = result.replace(new RegExp('([' + small_c + big_c + '])' + soft, 'g'), "$1" + u_softs[soft]) - } - - result = result - // Відʼапострофнути - .replace(new RegExp('[' + apostrophes + ']', 'g'), '') - // Великі букви - .replace(new RegExp('([' + bigs + '])', 'g'), '·' + '$1') - .toLowerCase() - - // Основна перебуква - for (letter in u_letters) { - result = result.replace(new RegExp(letter, 'g'), u_letters[letter]) - } - - // Рьадки - document.getElementById('result').innerHTML = result.replace(/\n\r?/g, '
') -} - -// З шовицьи на кирилицьу -function ukrainian() { - var result = document.getElementById('send').value - - // Основна заміна - for (letter in s_letters) { - result = result.replace(new RegExp(letter, 'g'), s_letters[letter]) - } - - // Апострофнути - for (iot in u_softs) { - result = result.replace(new RegExp('([' + small_c + '])' + iot, 'g'), "$1" + apostrophe + iot) - } - - // Јотација - for (soft in u_iots) { - result = result.replace(new RegExp(soft, 'g'), u_iots[soft]) - } - - document.getElementById('result').innerHTML = result - // Великі букви - .replace(new RegExp('·([' + smalls + '])', 'g'), function (match) { return match[1].toUpperCase() }) - // Рьадки - .replace(/\n\r?/g, '
') -} - -var - small_c = 'бвгґджзклмнпрстфхцчшщџѕ', - small_v = 'аяеєіїийјоую', - smalls = small_c + small_v, - - big_c = small_c.toUpperCase(), - bigs = smalls.toUpperCase(), - - apostrophe = 'ʼ', - apostrophes = '\'ʼ`’', - - u_softs = { - 'я': 'ьа', - 'ю': 'ьу', - 'є': 'ье', - 'ї': 'ьі', - }, - u_iots = swap(u_softs), - - u_letters = { - // disounds - 'щ': '𐑖𐑗', - 'я': '𐑘𐑨', - 'ю': '𐑘𐑵', - 'є': '𐑘𐑧', - 'ї': '𐑘𐑰', - // vuk - 'џ': '𐑡', - 'ѕ': '𐑞', - 'ј': '𐑘', - // clear - 'а': '𐑪', - 'б': '𐑚', - 'в': '𐑫', - 'г': '𐑣', - 'ґ': '𐑜', - 'д': '𐑛', - 'е': '𐑧', - 'ж': '𐑠', - 'з': '𐑟', - 'и': '𐑦', - 'і': '𐑰', - 'й': '𐑘', - 'к': '𐑒', - 'л': '𐑤', - 'м': '𐑥', - 'н': '𐑯', - 'о': '𐑴', - 'п': '𐑐', - 'р': '𐑮', - 'с': '𐑕', - 'т': '𐑑', - 'у': '𐑵', - 'ф': '𐑓', - 'х': '𐑙', - 'ц': '𐑔', - 'ч': '𐑗', - 'ш': '𐑖', - 'ь': '𐑢', - }, - s_letters = swap(u_letters) - - // console.log(s_letters) \ No newline at end of file diff --git a/projects/uk-shavian/style.css b/projects/uk-shavian/style.css deleted file mode 100755 index 8de9e46..0000000 --- a/projects/uk-shavian/style.css +++ /dev/null @@ -1,31 +0,0 @@ -@font-face { - font-family: 'Noto Sans Shavian'; - font-style: normal; - font-weight: 400; - src: url(https://fonts.gstatic.com/ea/notosansshavian/v1/NotoSansShavian-Regular.eot); - src: url(https://fonts.gstatic.com/ea/notosansshavian/v1/NotoSansShavian-Regular.eot?#iefix) format('embedded-opentype'), - url(https://fonts.gstatic.com/ea/notosansshavian/v1/NotoSansShavian-Regular.woff2) format('woff2'), - url(https://fonts.gstatic.com/ea/notosansshavian/v1/NotoSansShavian-Regular.woff) format('woff'), - url(https://fonts.gstatic.com/ea/notosansshavian/v1/NotoSansShavian-Regular.ttf) format('truetype'); - } - -#result, -textarea { - font-family: 'Noto Sans Shavian', sans-serif; - font-size: 16px; - margin-top: 25px; -} - -#main { - display: table; - margin: auto; - width: 90%; -} - -button { - display: inline-block; - margin-right: 10px; -} - -#send, -#result { width: 100%; } \ No newline at end of file