Справка:Викификатор
Викификатор — это сценарий на lib:JavaScript, который обрабатывает текст в окне редактирования статьи согласно некоторым правилам wiki-разметки и некоторым правилам набора русского текста. Для исполнения викификатора надо выделить нужный фрагмент текста и щелкнуть ссылку «Викификатор» внизу окна редактирования. В случае, если в окне редактирования статьи ничего не выделено, то викификатор обработает весь текст целиком.
К сожалению, реализация lib:JavaScript в некоторых веб-браузерах (например, Opera 7.0, Konqueror 3.2 и др.) не позволяет обрабатывать только выделенный фрагмент. В этом случае Викификатор попросит подтверждения на обработку всего текста целиком.
Содержание
Основные функции Викификатора
- Заменяет некоторые lib:HTML-теги на аналогичную wiki-разметку:
- Теги жирного шрифта (<b></b>, <strong></strong>) на ''';
- Теги курсива (<i></i>, <em></em>) на '';
- Заменяет три точки (...) и последовательности … и … на знак многоточия (…).
- Вставляет где нужно тире и минус (см. ниже)
- Расставляет правильные кавычки и кавычки внутри кавычек (см. ниже).
- Заменяет (c), (tm), (r) и др. на специальные символы (см. ниже).
- Расставляет там где нужно знаки градуса (см. ниже).
- Расставляет пропущенные пробелы и убирает лишние (см. ниже).
- Пропускает текст внутри HTML-тегов, внутри тегов <nowiki></nowiki> и <math></math>, а также внутри двойных квадратных скобок ([[ и ]]). Кроме того, Викификатором не обрабатываются строки, начинающиеся с пробела (неформатированный текст).
Комбинации клавиш
Если Вы используете браузер Internet Explorer или браузеры на нём основанные, то Викификатор можно вызвать при помощи комбинации клавиш Ctrl+Enter; для того, чтобы быстро отменить изменения сделанные Викификатором можно нажать на клавиатуре сочетание Ctrl+Z.
В браузерах основанных на lib:Gecko (Galeon, FireFox, Mozilla, Netscape 6.x-7.x, SkipStone и др.) Викификатор можно вызвать комбинацией клавиш Alt+W.
Дефис, минус и тире
Викификатор заменяет на минус (-):
- Дефис, за которым следует цифра, и которому предшествует пробел;
- Дефис, за которым следует цифра, и которому предшествует последовательность sup> или sub>;
- Дефис, отбитый с двух сторон пробелами, которые окружены цифрами (5 - 2).
После обработки минусов Викификатор заменяет на длинное тире (—):
- Короткое тире (–);
- Последовательности —, – и —;
- Дефис, окружённый пробелами ( - );
- Дефис в начале строки (прямая речь);
- Дефис окруженный с каждой сторон четырьмя цифрами (1985-1991);
- Дефис, окружённый римскими цифрами (VII-IX);
- Двойной дефис, окружённый пробелами ( -- ) или цифрами (1941--1945);
- Двойной дефис, после которого идут три тильды (--~~~) или слово [[Участник (--[[Участник);
Обратите внимание, что дефис просто окружённый цифрами не обрабатывается Викификатором. Это сделано специально, чтобы избежать многозначностей: «Когда Васе было где-то 3-4 года [нужен дефис] он думал, что другие дети в возрастном периоде 3-4 года [нужно тире] не смогут понять, что 3-4=-1 [нужен минус]».
Кавычки
Викификатор сначала превращает все расставленные кавычки в обычные ("), а потом вновь их расставляет, но уже согласно правилам набора русского текста. Таким образом, вначале заменяются на обычные кавычки следующие знаки:
- «
- »
- “
- ”
- „
- «
- »
- „
- “
- „
- “
- ”
- "
- Парные двойные угловые скобки с текстом внутри них (например, <<текст между скобками, который не начинается с пробела и не заканчивается им>>).
Затем "обычные" кавычки превращаются в «кавычки-ёлочки», а кавычки внутри кавычек в „кавычки-лапки“.
Кавычки после знака «равно» и весь текст внутри них Викификатором не обрабатываются. Например, не будут обработаны кавычки в строках: «border="0"», «width= "50%"» и т. п.
Также кавычки вокруг ссылок вставляются во внутрь ссылок:
- Заменяет "[[Ссылка]]" на [[Ссылка|«Ссылка»]].
- А "[[Ссылка|Описание]]" превращается в [[Ссылка|«Описание»]].
Специальные символы
Викификатор заменяет:
- (c), (с) (русское "С") и © на ©;
- (r) и ® на ®;
- (tm), (тм) и ™ на ™;
- (p) (английское "P") и § на §;
- € на €;
- Сочетание +- на ±.
Градусы
- Расставляет пропущенные знаки градуса. Так, «+4 C, -10 C, +453 F и -20 F» будут превращены в «+4 °C, -10 °C, +453 °F и -20 °F». Также заменяется обычный пробел перед знаком градуса на неразрывный.
- Заменяет последовательность ° на знак градуса (°).
Пропущенные и лишние пробелы
- Викификатор заменяет неразрывным юникодовским пробелом U+00A0 пропущенные пробелы в сокращениях «и т.д.», «и т.п.», «т.к.» и «т.е.». Неразрывный юникодовский пробел аналогичен мнемокоду « », но выглядит как обычный пробел, благодаря чему статью удобнее редактировать.
- Пропущенный пробел в сокращении «н.э.» Викификатор заменяет обычным пробелом. Можно было бы вставлять и неразрывный пробел, но это не делается, чтобы случайно не возникли неправильные ссылки на статьи о годах до нашей эры. Сравни 100 до н. э. (юникодовский неразрывный пробел) и 100 до н. э. (обычный пробел).
- Также вставляется пробел в русские инициалы (например, «А.С. Пушкин» превращается в «А. С. Пушкин»). Чтобы не возникло ошибок (например, в ссылке на статью Золотая медаль имени А. С. Попова), между инициалами вставляется обычный пробел, а не неразрывный.
- Вставляется пропущенный пробел после точки в конце предложения. Так, «слово.Слово» будет преобразовано в «слово. Слово».
- Удаляются ненужные пробелы перед запятой, а пропущенные после неё пробелы, напротив, вставляются. Так, например, «Учиться,учиться ,учиться , учиться и ещё раз учиться» будет превращено в «Учиться, учиться, учиться, учиться и ещё раз учиться».
- Убирается лишний пробел перед точкой с запятой. Например, «слово ; слово» будет превращено в «слово; слово».
- Удаляется пробел после цифры, если за ней следует знак процента (%) или промилле (‰). Так, «5 % и 16,7 ‰» будут преобразованы в «5% и 16,7‰».
- Вставляются пробелы после знаков «*», «#» и их комбинаций в начале строки.
- Вставляются пробелы в начале и конце заголовков, то есть «==Заголовок==» превращается в «== Заголовок ==».
- Несколько идущих подряд пробелов заменяются одним пробелом. Не обрабатываются лишь строки, которые начинаются с пробела (неформатированный текст).
Сообщения об ошибках
В некоторых совсем старых версиях браузеров Викификатор вместо обработки текста может выдавать сообщение об ошибке:
Сообщение: Wikificator cannot work in your browser (В вашем браузере Викификатор работать не сможет).
Причина: Поддержка Java-script в браузере сделана не до конца. В частности, вообще не обрабатываются регулярные выражения.
Что делать: Взять другой браузер.
Характерно для браузеров (дополняйте): Opera 4.01
Сообщение: Wikificator will not work in Netscape 4.x and less (Викификатор не будет работать в браузере Netscape версии 4.x и меньше).
Причина: Старые версии Нетскейпа, когда встречают регулярное выражение типа replace(/что-то/mg, "на что-то"), почему-то перестают обрабатывать весь последующий за таким выражением код скрипта. Подобные выражения используются в Викификаторе, например, для того, чтобы пропускать текст, начинающийся с пробелов, (неформатированный текст). Во избежание возможных ошибок Викификатор в старых версиях Нетскейпа отключён вообще.
Что делать: Воспользоваться более новой версией браузера.
Характерно для браузеров (дополняйте): Netscape Communicator 4.06, Сибкон Коммуникатор 4.70.
Сообщения об ошибках выдаются на английском, так как в этих старых версиях браузеров имеются к тому же проблемы с отображением в диалоговых окнах русских букв в кодировке lib:Юникод.
Технические замечания
Администраторы проекта могут изменить программу Викификатора на странице MediaWiki:Summary. Все остальные могут лишь посмотреть её код.
Все пожелания по улучшению Викификатора, а также сообщения о найденных в нём ошибках пишите на странице Википедия обсуждение:Викификатор.
Совместимость
Если Вы используете браузер, которого нет в списке, то, пожалуйста, протестируйте в нём работу Викификатора и добавьте его в список.
Браузеры, в которых Викификатор работает:
- FireFox 1.x
- Galeon 1.2.x, Galeon 1.3.x
- Internet Explorer 5.5, 6.x
- Konqueror 3.1.x, 3.2.x
- Mozilla 1.0, 1.2.x, Mozilla 1.7.x
- Netscape 7.x
- Opera 7.x, Opera 8.x
- SkipStone 0.8.x
- В браузерах выделенных курсивом не поддерживается обработка выделения.
Браузеры, в которых Викификатор не работает:
- Arachne 1.70
- MATLAB HelpBrowser 6.x
- Netscape 3.x, 4.x
- Opera 4.x