Site logo  

Писане на кирилица за сайтове 6.0u rc1

Здравейте!

Това е примерен файл, който показва как известният Скрипт за писане на кирилица с латинска клавиатура може много лесно да се сложи на всеки сайт, форум, книга за гости, формуляр и т.н.

Съдържание: пример - способности - за форуми - инсталиране - условия за ползване - техническа информация - промени във версиите.

Примерна употреба

Способности

Ако искате, можете да сложите програмата на Вашия сайт, на Вашия предпочитан форум или за други цели, много е лесно. Пишете на Вашия уебмайстор: ще го направи с удоволствие за нула време.

Има няколко предимства:

За уебмайстори: изтеглете зип-архива (24 kB) с необходимите примерни и помощни файлове. Самият скрипт е само 9 kB. Вижте и условията за ползване.

Бележки:
(1) Няколко знака не могат да се ползват за ограничители с N4.7, иначе работи.
(2) Във версиите IE5.01-- не може да се зададе RegExp израз ".+?", затова има вероятност при команда [quote], [code] или [php], ако е последвана по-надолу от същата, целия текст между двете да се пропусне.
(3) Коства ми прекалено много усилия, за да правя още повече съвместимост, а почти няма нужда, но ако имате добри решения, давайте ги. Например Konqueror за съжаление има някакъв бъг при RegExp.replace() и дава неочаквани резултати с кирилицата.

Направил съм скрипта така, че най-лесно да се инсталира на всякакви сайтове и да се адаптира максимално. Приемам с удоволствие всякакви идеи, забележки и предложения.

начало

За дискусионни форуми

Скриптът може лесно да се ползва в/за повечето дискусионни форуми, тъй като разпознава и запазва командите за форматиране (BBcode, vBcode). Следните команди се поддържат (главни или малки букви) и са независими от избраните ограничители за латиница:

начало

Инсталиране

Инсталирането е много по-лесно, отколкото при предишните версии - добавя се само 1 (словом "един") ред.

1. Копирайте файла "cyr5ko6p.js" в някоя достъпна за четене директория на сайта ви. Този файл се препоръчва да бъде в директорията, в която се намира страницата, която го вика, или евентуално в по-горна директория, примерно в "/".

2. Във вашия сайт/страница/подложка, в същия формуляр като полетата за превод, там, където трябва да се появи менюто за кирилизация, сложете тази команда:

<script src="../js/cyr5ko6p.js" type="text/javascript" language="javascript1.2"></script>

Това е всичко и ще работи за повечето сайтове ("../js/cyr5ko6p.js" е пътят до скрипта, както е обяснено в точка 1).

Внимание, разлика с предишни версии: ако не са указани полетата за превод, по подразбиране скриптът ще превежда на кирилица текстовете от всички текстови полета във формуляра (text, textarea). Ако желаете да промените това, трябва да зададете полетата, които се превеждат, вместо горната команда, по следния начин (добавят се още два реда код):

<script type="text/javascript" language="javascript1.2"><--
var v5_formfields = "komentari"; //--></script>
<script src="../js/cyr5ko6p.js" type="text/javascript" language="javascript1.2"></script>

Където "komentari" е полето, което ще се превежда. Ако има няколко полета за превод, отделете ги със запетаи: "komentari,zaglavie,grad". Това са всъщност "имената" на полетата в уебстраницата, които са зададени с атрибута name="komentari" (ако не разбирате съвсем какво означава това, по-добре не инсталирайте скрипта сами, ами помолете някой по-опитен).

начало

Условия за ползване и публикуване

Програмата е свободна, но не безплатна! (Обаче не е скъпа...)

От една страна програмата е postcardware. Това означава, че ако я ползвате (копирате на харддиска си, инсталирате в сайта, форума, пощата си със или без промени), трябва да ми изпратите истинска хартиена картичка (с марка, по пощата), която показва града/мястото, където живеете. Това е най-евтиният начин да получа нещо дребно и материално за годините, в които разработвам тези свободни програми.

Адрес за картичка : Petko Yotov, 56 boulevard des Invalides, 75007 Paris, France

Едновременно с горното, това е една свободна програма; това означава, че можете да я променяте, публикувате и/или разпространявате при условията на лиценза GNU GPL, публикуван от Фондацията за свободен софтуер: или версия 2, или (по Ваш избор) някоя следваща версия.

Това означава също така, че в началото на кода ми трябва да не се маха бележката с информацията за автора и разрешението за ползване (и без това е само като коментар :).

Тази програма е създадена с надеждата, че ще бъде полезна, но без никаква гаранция за това, без дори косвена гаранция за пригодност за някаква цел. Вижте лиценза GNU GPL за повече подробности (http://www.gnu.org/copyleft/gpl.html).

Ако я намирате за полезна и Ви върши работа, ще се радвам да го разбера.

Моля пращайте ми вашите коментари и идеи за подобрения на адрес 5ko (при) free (точка) fr.

Поздрави, --Петко

начало

Техническа информация

Следва малко техническа информация, която може да ви спести време, ако искате да правите промени и подобрения. (Ако правите, непременно ми ги пратете.)

Изходен код

Изходният програмен код може да се види във файла cyr5ko6.source.js. Той е "компресиран" до cyr5ko6p.js с версия 2.0.2 на програмата "packer" от Дийн Едуардс, с което се намалява почти наполовина.

начало

Други настройки

Няколко неща още могат да се настроят, като се добавят команди или преди извикването на скрипта (както е показано по-горе), или в началото на самия файл cyr5ko6p.js. Забележете, че ако викате скрипта от различни страници, може би за всяка от тях ще има различни настройки и е по-добре да се поставят в самата страница; друго предимство да не се пипа скрипта е, че при нова версия ще трябва само да копирате новия файл на мястото на стария.

начало

Алгоритъм

Преводът от кирилица към латиница е много прост, затова съществуват доста програми, които се справят добре.

Обратният превод, от латиница към кирилица, е по-голяма играчка. Ето няколкото полезни "хватки", с които се постига това.

Преводът: най-напред се заместват със знака "таб" всички комбинации, които не трябва да се превеждат. Ако в текста има знаци "таб" (което е малко вероятно, но може да се случи при залепване), те се отбелязват. След това текстът се превежда на кирилица, след това всеки знак "таб" се замества обратно със съответната комбинация.

Буквите са сортирани според дължината на латинските съответствия и преводът започва от по-дългите към по-късите. По този начин е възможно да се преведат правилно комбинации като "sht" преди "sh" и преди "s", "iu" преди "i" или "u" и т.н. Първо се превеждат малките букви, а после главните, като SHT, Sht, SHt, или дори shT (понеже се различават от "sht"), ще дадат главна "Щ".

Бисквитката: ако не правите промени в настройките, а ги ползвате така, както са по подразбиране, нямате бисквитки. Ако направите промени, в бисквитка се записват само те, в този формат (това са моите): "..v....j...y..................w...iu/yu.ia/q/ya", тоест буквите са разделени с точки, вариантите с наклонена черта, а тези, които са както по подразбиране, са празни.

начало

Промени във версиите

След повече от година, ето какви промени има в новата версия 6.0u-rc1.

Това е "Release candidate", което означава, че е по-стабилна от бета-версиите, но не е изключено да се скапе. Ще ви помоля да я изпробвате с колкото можете повече браузъри и операционни системи и ако забележите нещо нередно, да ми съобщите.

начало

Предишни версии

Версиите 5.x са в отделен клон, който изоставих и не са публикувани.

Версия 4.84 : няколко подобрения; по-лесна интеграция в "templates" като Smarty и други, които се ползват в някои форуми и сайтове.

Версия 4.8 : поддръжка на повечето от усмивките (:smileys:); козметични промени.

Версия 4.7 : Много подобрения в алгоритмите, стабилност, бързина. Нови възможности за форумите. Нови команди за ограничителите за латиница. Адреси на е-мейл и сайтове се разпознават и не се превеждат. Компактни команди от падащ списък. Руските букви "ы", "э", "ё".

Версия 3.04 : обратният превод от кирилица към латиница вече е възможен, със същите дефиниции.

начало