Справка:Викификатор

(перенаправлено с «Традиция:ВФ»)
Короткая ссылка-перенаправлениеStub W.gif
Т:ВФ
Написание статей Написание статей
Тематические статьи
Техническая справка
Общие правила

Список правил и руководств Справка

«Викифика́тор» — гаджет на JavaScript, который обрабатывает выделенный текст в окне редактирования статьи согласно некоторым правилам вики-разметки и русской типографики. Викификатор запускается кнопкой Etool wikify.png в верхней панели инструментов редактирования. В случае, если в окне редактирования статьи ничего не выделено, викификатор обработает весь текст.

К сожалению, реализация JavaScript в некоторых старых браузерах (например, Opera 7.0, Konqueror 3.2 и др.) не позволяет обрабатывать только выделенный фрагмент. В этом случае Викификатор попросит подтверждения на обработку всего текста.

Основные функцииПравить

  • Заменяет некоторые HTML-теги на аналогичную вики-разметку:
    • Теги жирного шрифта (<b></b>, <strong></strong>) на ''';
    • Теги курсива (<i></i>, <em></em>) на '';
    • Тег горизонтальной черты (<hr>) на ----;
  • Вставляет, где нужно, тире и минус (см. ниже)
  • Расставляет правильные кавычки и кавычки внутри кавычек (см. ниже).
  • Заменяет (tm), (r) и т. п. на специальные символы (см. ниже).
  • Расставляет там, где нужно, знаки градуса «°» (см. ниже).
  • Исправляет неправильно указанные служебные слова (см. ниже).
  • Расставляет пропущенные пробелы и убирает лишние (см. ниже).
  • Корректирует и расшифровывает сокращения (см. ниже).

ИсключенияПравить

Викификатор не обрабатывает текст:

  • внутри тега <nowiki></nowiki>,
  • внутри тега <math></math>,
  • внутри тега <pre></pre>,
  • внутри тега <gallery></gallery>,
  • внутри большинства HTML-тегов и их атрибутов,
  • внутри двойных фигурных скобок ({{ и }}),
  • внутри двойных квадратных скобок ([[ и ]], или [[ и |),
  • кроме того, Викификатором не обрабатываются строки, начинающиеся с пробела (неформатированный текст).

Комбинации клавишПравить

Если Вы используете Internet Explorer или браузеры использующие его движок, то Викификатор можно вызвать при помощи комбинации клавиш Ctrl+Enter; чтобы быстро отменить изменения сделанные Викификатором можно нажать на клавиатуре сочетание Ctrl+Z.

В браузерах, основанных на Gecko (Galeon, Firefox, Mozilla, Netscape 6.x-7.x, SkipStone и др.) Викификатор можно вызвать комбинацией клавиш Alt+W.

Дефис, минус и тиреПравить

Викификатор заменяет на минус (-):

  • Дефис, за которым следует цифра, и которому предшествует пробел;
  • Дефис, за которым следует цифра, и которому предшествует последовательность «sup>» или «sub>».

После обработки минусов Викификатор заменяет на длинное тире (—):

  • Короткое тире (–);
  • Последовательности &mdash;, &ndash; и &#151;;
  • Дефис, окружённый пробелами ( - );
  • Дефис в начале строки (прямая речь);
  • Дефис окружённый с каждой стороны тремя или четырьмя цифрами (1985-1991);
  • Дефис, окружённый римскими цифрами (VII-IX);
  • Двойной дефис, окружённый пробелами ( -- ) или цифрами (1941--1945);
  • Двойной дефис, после которого идут три тильды (--~~~) или слово [[Участник (--[[Участник).

Обратите внимание, что дефис же просто окружённый цифрами не обрабатывается Викификатором. Это сделано специально, чтобы избежать многозначностей: «Когда Васе было где-то 3—4 года [нужно тире] он думал, что другие дети в возрастном периоде 3—4 года [нужно тире] не смогут понять, что 3-4=-1 [нужны минусы]».

КавычкиПравить

Викификатор сначала превращает все расставленные кавычки в обычные ("), а потом вновь их расставляет, но уже согласно правилам набора русского текста. Таким образом, вначале заменяются на обычные кавычки следующие знаки:

  • «
  • »
  • &laquo;
  • &raquo;
  • &bdquo;
  • &ldquo;
  • &#132;
  • &#147;
  • &#148;
  • &quot;
  • Парные двойные угловые скобки с текстом внутри них (например, <<текст между скобками, который не начинается с пробела и не заканчивается им>>).

Затем "обычные" кавычки превращаются в «кавычки-ёлочки», а кавычки внутри кавычек в „кавычки-лапки“.

Кавычки после знака «равно» и весь текст внутри них Викификатором не обрабатываются. Например, не будут обработаны кавычки в строках: «border="0"», «width= "50%"» и т. п.

Специальные символыПравить

Викификатор заменяет:

  • (c), (с) (русское "С") и &copy; на ©;
  • (r) и &reg; на ®;
  • (tm), (тм) и &trade; на ™;
  • (p) (английское "P") и &sect; на §;
  • &euro;, &yen; и &pound; на €, ¥ и £;
  • Сочетания +- и &plusmn; на ±;
  • Одиночный машинописный [[апостроф]] (') внутри слов на правильный апостроф (’).
  • Три точки (...) и последовательности &hellip; и &#133; на знак многоточия (…).
  • Сочетание ~= (приблизительно равно) заменяется на знак ≈.

Кубы и квадратыПравить

Викификатор заменяет на символы второй и третей степеней (² и ³):

  • Сочетания <sup>2</sup>, <sup>3</sup>, &sup2; и &sup3;.
  • Сочетания знаков ^2 или ^3, за которыми не следует цифра. Например, см^2, m^2, 5^3, ^2 будут превращены в см², m², 5³, ², а сочетания ^ _ ^, ^33, 4^22 — не будут обработаны.

ГрадусыПравить

  • Расставляет пропущенные знаки градуса. Так, «+4 C, -10 C, +453 F и -20 F» будут превращены в «+4 °C, -10 °C, +453 °F и -20 °F». Также заменяется обычный пробел перед знаком градуса на неразрывный.
  • Заменяет последовательность &deg; на знак градуса (°).

Служебные словаПравить

Викификатор выполняет следующие автоматические замены:

  • [[Category: на [[Категория:
  • [[:Category: на [[:Категория:
  • [[Template: на [[Шаблон:
  • [[User: на [[Участник:
  • [[Image: на [[Изображение:
  • [[Media: на [[Медиа:

Лишние, пропущенные и неразрывные пробелыПравить

Удаление лишних пробеловПравить

  • Удаляются ненужные пробелы перед запятой, а пропущенные после неё пробелы, напротив, вставляются. Так, например, «Учиться,учиться ,учиться , учиться и ещё раз учиться» будет превращено в «Учиться, учиться, учиться, учиться и ещё раз учиться».
  • Убирается лишний пробел перед точкой с запятой. Например, «слово ; слово» будет превращено в «слово; слово».
  • Удаляются пробелы после открывающей круглой скобки и перед закрывающей. Например, «бегемот ( гиппопотам )» будет превращено в «бегемот (гиппопотам)».
  • Удаляются пробелы в диапазонах годов и веков (например, «1988 — 1995» и «XI — XII»).
  • Удаляются лишние пробелы после служебных слов «Шаблон», «Категория» и др.
  • Удаляются все пробелы в конце строк.
  • Несколько идущих подряд пробелов заменяются одним пробелом. Не обрабатываются лишь строки, которые начинаются с пробела (неформатированный текст).

Вставка обычных и неразрывных пробеловПравить

Неразрывный юникодовский пробел аналогичен мнемокоду «&nbsp;», но выглядит как обычный пробел, благодаря чему статью удобнее редактировать.

  • Неразрывный пробел ставится после видимого знака перед тире, чтобы следующая строка не начиналась с тире.
  • Также вставляется неразрывный пробел в русские инициалы (например, «А.С. Пушкин» превращается в «А. С. Пушкин»).
  • Вставляется пропущенный пробел после точки в конце предложения. Так, «слово.Слово» будет преобразовано в «слово. Слово».
  • Вставляется неразрывный пробел перед знаком процента (%) или промилле (‰). Так, «5% и 16,7‰» будут преобразованы в «5 % и 16,7 ‰». Но не в случае сокращений вроде «5%-й».
  • Вставляется неразрывный пробел после «№» или «§», если за этими знаками следует цифра.
  • Вставляются пробелы после знаков «*», «#», «:» и их комбинаций в начале строки.
  • Вставляются пробелы в начале и конце заголовков, то есть «==Заголовок==» превращается в «== Заголовок ==».

Обработка сокращенийПравить

  • Викификатор заменяет неразрывным юникодовским пробелом U+00A0 пропущенные и обычные пробелы в сокращениях «и т.д.», «и т.п.», «т.н.», «н.э.».
  • Неразрывным пробелом заменяется пробел после цифр перед сокращениями «тыс.», «млн», «млрд», «трлн». Сокращение «тыс» дополняется точкой.
  • Неразрывным пробелом заменяется пробел после цифр в сокращениях «г.», «гг.», «в.», «вв.».
  • Сокращения «в т.ч.», «т.е.» и «т.к.» расшифровываются полностью.

Сообщения об ошибкахПравить

В некоторых совсем старых версиях браузеров Викификатор вместо обработки текста может выдавать сообщение об ошибке:


Сообщение: Wikificator cannot work in your browser (В вашем браузере Викификатор работать не сможет).

Причина: Поддержка Javascript в браузере сделана не до конца. В частности, вообще не обрабатываются регулярные выражения.

Что делать: Взять другой браузер.

Характерно для браузеров (дополняйте): Opera 4.01


Сообщение: Wikificator will not work in Netscape 4.x and less (Викификатор не будет работать в браузере Netscape версии 4.x и меньше).

Причина: Старые версии Нетскейпа, когда встречают регулярное выражение типа replace(/что-то/mg, "на что-то"), почему-то перестают обрабатывать весь последующий за таким выражением код скрипта. Подобные выражения используются в Викификаторе, например, для того, чтобы пропускать текст, начинающийся с пробелов, (неформатированный текст). Во избежание возможных ошибок Викификатор в старых версиях Нетскейпа отключён вообще.

Что делать: Воспользоваться более новой версией браузера.

Характерно для браузеров (дополняйте): Netscape Communicator 4.06, Сибкон Коммуникатор 4.70.

Сообщения об ошибках выдаются на английском, так как в этих старых версиях браузеров имеются к тому же проблемы с отображением в диалоговых окнах русских букв в кодировке Юникод.

Технические замечанияПравить

Только администраторы проекта могут изменить программу Викификатора на странице MediaWiki:Gadget-wikifier.js.

Все пожелания по улучшению Викификатора, а также сообщения о найденных в нём ошибках пишите на странице Обсуждение Традиции:Викификатор.

СовместимостьПравить

Если Вы используете браузер, которого нет в списке, то, пожалуйста, протестируйте в нём работу Викификатора и добавьте его в список.

Браузеры, в которых Викификатор работает:Править

  • Firefox 1.x
  • Galeon 1.2.x, Galeon 1.3.x
  • Internet Explorer 5.5, 6.x (включая и Maxthon 1.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
  • Internet Explorer 3.x, 4.x
  • MATLAB HelpBrowser 6.x
  • Netscape 3.x, 4.x
  • Opera 4.x
  • Safari 1.3

См. такжеПравить

СсылкиПравить