Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Новый скрипт для транслита :) 
:(
    Опции темы
neutrino
Дата 17.3.2003, 03:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Gothic soul
****


Профиль
Группа: Модератор
Сообщений: 3041
Регистрация: 25.3.2002
Где: Верхняя Галилея, Кармиэль

Репутация: 1
Всего: 62



Этот пост был переведен этим скриптом.

Приветствую вас, господа, уже на русском языке!
После долгих запарок и анализа команд языка JavaScript, получилось то что вы видите ниже. Вот собственно код (вероятно его стоит хорошо потестировать):

Код

<HTML>
<HEAD>
 <TITLE>Transliteration Convertion v2.0</TITLE>
</HEAD>

<BODY>
<font face="sans-serif">
<FORM NAME = "SENDDATA">
  <TEXTAREA NAME="message" ROWS=18 cols=100% WRAP="VIRTUAL"></TEXTAREA>
  <script language="JavaScript">
    var lat=new Array("JO","Jo","ZH","Zh","I'","Ch","CH","Sh","SH","Xh","XH","Je","JE","Ju","JU","Ja","JA","A","B","V","G","D","E","Z","I","K","L","M","N","O","P","R","S","T","U","F","C","Y","J","H","jo","zh","i'","ch","sh","xh","je","ju","ja","a","b","v","g","d","e","z","i","k","l","m","n","o","p","r","s","t","u","f","c","'","y","`","j","h");
    var rus=new Array("Ё","Ё","Ж","Ж","Й","Ч","Ч","Ш","Ш","Щ","Щ","Э","Э","Ю","Ю","Я","Я","А","Б","В","Г","Д","Е","З","И","К","Л","М","Н","О","П","Р","С","Т","У","Ф","Ц","Ы","Ж","Х","ё", "ж", "й", "ч", "ш", "щ", "э", "ю", "я", "а","б","в","г","д","е","з","и","к","л","м","н","о","п","р","с","т","у","ф","ц","ь","ы","ъ","ж","х");
    var eng = new Array("[eng]","[/eng]");
    var _num_=lat.length;

    function match(src, pos, str) {
      var i;
      for (i=pos; i<pos+str.length; i++) {
        if (src.charAt(i)!=str.charAt(i-pos)) return 0;
      }
      return 1;
    }

    function transliterate(tex) {
      var i;
      var l;
      var j;
      var result="";
      for (i=0; i<tex.length; i++) {
        switch(tex.charAt(i)) {
          case ':': while(tex.charAt(i)!=' ') {
                      if(i<tex.length) result=result.concat(tex.charAt(i++));
                      else return result;
                    }
                    result=result.concat(" ");
                    break;
          case '[': if (match(tex.toLowerCase(), i, eng[0])) {
                      i+=5;
                      while(!match(tex.toLowerCase(), i, eng[1])) {
                        if (i<tex.length) result=result.concat(tex.charAt(i++));
                        else return;
                      }
                      i+=6;
                    } else {
                      result=result.concat(tex.charAt(i++));
                      while (tex.charAt(i)!=']') {
                        if (i>=tex.length) return;
                        else result=result.concat(tex.charAt(i++));
                      } result=result.concat("]");
                    } break;
          default:  for (j=0; j<_num_; j++) {
                      if (l=match(tex, i, lat[j])) {
                        result=result.concat(rus[j]);
                        i+=lat[j].length-1;
                        break;
                      }
                    } if (l==0) result=result.concat(tex.charAt(i));
        }
      }
      return result;
    }

    function onClickBtnRu(){
      var txt = document.SENDDATA.message.value;
      txt = transliterate(txt);
      document.SENDDATA.message.value = txt;
      document.SENDDATA.message.focus;
    }

  </script>
 <table width="100%" border="0">
   <tr>
     <td align="center">
       <a href="javascript:void(null)" ONCLICK="onClickBtnRu();">
         <img src="d:\ass.bmp" alt = "Translit -> Russian" border = 0>
       </a>
     </td>
   </tr>
 </table>
 <br>
 History: <br>
 I.  v1.0 transliteration convertion, developed by BearBeer <br>
 II. v2.0 added new features by neutrino: <br>
 -  supports [eng]..[/eng] tags <br>
 -  non-translatable smiles (:angry)<br>
 -  non-translatable BBCodes ([quote]..[/quote])<br>
</FORM>
</BODY>
</HTML>


Достоинства этого скрипта:
I. Поддержка тэгов [eng]..[/eng]
II. непереводимые улыбочки (tounge.gif)
III. непереводимые тэги YaBB


--------------------
The truth comes from within ...

Покойся с миром, Vit 
PM MAIL WWW ICQ Skype GTalk   Вверх
neutrino
Дата 17.3.2003, 03:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Gothic soul
****


Профиль
Группа: Модератор
Сообщений: 3041
Регистрация: 25.3.2002
Где: Верхняя Галилея, Кармиэль

Репутация: 1
Всего: 62



Админ, теперь надо добавить этот скрипт и поставить кнопку для тэгов [eng].


--------------------
The truth comes from within ...

Покойся с миром, Vit 
PM MAIL WWW ICQ Skype GTalk   Вверх
dr.ZmeY
Дата 17.3.2003, 03:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Политолог
****


Профиль
Группа: Участник Клуба
Сообщений: 3892
Регистрация: 26.3.2002
Где: ..::STALINGRAD::. .

Репутация: нет
Всего: 60



Да, давно пора транслит ставить...


--------------------
PM MAIL WWW ICQ Skype   Вверх
Medved
Дата 17.3.2003, 06:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: 1
Всего: 154



Поддерживаю. Мне лучше вообще на анлийском читать, чем транслит переводить. Ужасно неудобочитаемо.


--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
Wowa
Дата 17.3.2003, 07:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: 79
Всего: 290



Ok, поставимsmile.gif
PM WWW   Вверх
neutrino
Дата 17.3.2003, 19:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Gothic soul
****


Профиль
Группа: Модератор
Сообщений: 3041
Регистрация: 25.3.2002
Где: Верхняя Галилея, Кармиэль

Репутация: 1
Всего: 62



2Admin:I v formu dlja bystrogo otveta toje nujno.

P.S. Chto stalo s tvoim krasnen'kim chelovechkom? Povzroslel? smile.gif


--------------------
The truth comes from within ...

Покойся с миром, Vit 
PM MAIL WWW ICQ Skype GTalk   Вверх
Wowa
Дата 23.3.2003, 20:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
Group Icon


Профиль
Группа: Админ
Сообщений: 15017
Регистрация: 14.9.2000
Где: Винград

Репутация: 79
Всего: 290



Сделано!
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Обсуждение форума | Следующая тема »


 




[ Время генерации скрипта: 0.0534 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.