Википедия:Викификатор

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
↱ ВП:ВФ

Викифика́тор — инструмент для автоматической обработки вики-текста согласно некоторым правилам вики-разметки и русской типографики. Запускается нажатием соответствующей кнопки над окном редактирования и обрабатывает либо выделенный текст, либо сразу весь текст при отсутствии выделения текста.

  • Кнопка викификатора в обычной панели инструментов:

Кнопка Викификатора.png

  • Кнопка викификатора в улучшенной панели инструментов:

Wikify-toolbutton new.png

Викификатор написан на JavaScript, его код находится на странице MediaWiki:Wikificator.js.

Рекомендации по установке Викификатора на своём вики-сайте даны на странице Википедия:Викификатор/Инструкция по установке.

Сообщения об ошибках и пожелания по улучшению следует добавлять на страницу Обсуждение Википедии:Викификатор.

Содержание

[править] Описание работы

[править] Необрабатываемый текст

Перед обработкой текста Викификатор прячет (исключает из обработки):

  • текст, окружённый тегами <nowiki>, <pre>, <source>, <code>, <tt>, <math>, <gallery>
  • строки, начинающиеся с пробела (неформатированный текст)
  • {{шаблоны}}
  • http://внешние ссылки
  • [[внутренние ссылки]] (текст ссылки после «|» не прячется)
  • <любые теги> (кроме <!--комментариев-->)
  • ="атрибуты таблиц"

[править] Замены

Для унификации и упрощения переноса статей из английской Википедии заменяются:

  • [[Category:[[Категория:
  • [[File: / [[Image: / [[Изображение:[[Файл:

HTML теги на викиразметку:

  • <b>текст</b> и <strong>текст</strong>'''текст'''
  • <i>текст</i> и <em>текст</em>''текст''
  • <hr>----

В соответствии с правилами русского языка[1]:

  • №№
  • ' (одиночный машинописный апостроф внутри слов) → (типографский апостроф)
  • сокращения «в т.ч.», «т.е.» и «т.к.» расшифровываются полностью.

Некоторые HTML-мнемоники и слова заменяются на символы Юникода:

Заменяемые На символ
&copy; ©
&reg; ®
(tm)
(тм)
&trade;
&sect; §
&euro;
&yen; ¥
&pound; £
+-
&plusmn;
±
~=
...
&hellip;
&#133;
Заменяемые На символ
&deg; °
&quot;
&laquo;
&raquo;
&bdquo;
&ldquo;
&#132;
&#147;
&#148;
<< >>[2]
"
^2
&sup2;[3]
²
^3
&sup3;[3]
³






Примечания:

  1. Поиск ответов Грамоты.ру
  2. Сразу после << и сразу перед >> не должно быть пробела
  3. 1 2 Сразу после ^2 или ^3 не должно идти других цифр


[править] Дефис, минус и тире

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

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

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

  • Короткое тире (–);
  • Дефис, окружённый пробелами ( - );
  • Дефис в начале строки (прямая речь);
  • Дефис, окружённый с каждой стороны тремя или четырьмя цифрами (1985-1991);
  • Дефис, окружённый римскими цифрами (VII-IX);
  • Двойной дефис ( -- ), окружённый пробелами или цифрами (1941--1945);

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

[править] Кавычки

Викификатор сначала конвертирует все кавычки (« » “ ”„) в тексте в обычные ("), а потом вновь их расставляет, но уже согласно правилам набора русского текста: "обычные кавычки" конвертируются в «кавычки-ёлочки», а кавычки внутри кавычек — в „кавычки-лапки“.

[править] Обработка пробелов

Удаляются лишние пробелы:

  • в конце строк
  • несколько подряд (заменяются одним)
  • перед запятой: «слово , слово» → «слово, слово»
  • перед точкой с запятой: «слово ; слово» → «слово; слово»
  • после открывающей круглой скобки и перед закрывающей: «бегемот ( гиппопотам )» → «бегемот (гиппопотам)»
  • в диапазонах годов и веков: «1988 — 1995» → «1988—1995»
  • перед сносками: «слово <ref>…</ref>» → «слово<ref>…</ref>»

Вставляются пропущенные пробелы:

  • после точки в конце предложения: «слово.Слово» → «слово. Слово»
  • после запятой: «слово,слово» → «слово, слово»

Также, для повышения читабельности вики-разметки, вставляются пропущенные пробелы после знаков * # : и их комбинаций в начале строки, вокруг заголовков (==А==== А ==), и вставляется пустая строка перед заголовком, если других пустых строк там нет.

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

Неразрывные пробелы расставляются:

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

При этом в нечётных пространствах и в пространстве «Википедия:» (то есть везде, где могут быть обсуждения) вместо неразрывного пробела используется обычный, чтобы минимизировать изменения в чужих сообщениях, а также не допустить слишком большие сравнения версий из-за Firefox 1 и 2 (подробнее см. ссылку про неразрывные пробелы выше).

[править] Градусы

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

  • +4 C  →  +4 °C
  • -20 F  →  −20 °F

При этом перед знаком градуса ставится неразрывный пробел.

[править] Захват в ссылки

Викификатор для удобства заменяет викификацию некоторых слов и словосочетаний на равносильную или на устоявшуюся.

  • в [[2009]] году  →  в [[2009 год]]у
  • в [[2009 год в кино|2009]] году  →  в [[2009 год в кино|2009 году]]
  • [[Луиджи д’Амброзио|Луиджи]] д’Амброзио  →  [[Луиджи д’Амброзио]]
  • [[горох|гороховый]]  →  [[горох]]овый
  • [[:en:pea|горох]]овый  →  [[:en:pea|гороховый]]

Последние две замены работают в том случае, если в «хвосте» только строчные русские или латинские буквы.

[править] Сообщения Викификатора

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

Wikificator cannot work in your browser

(В вашем браузере Викификатор работать не может).

Означает, что браузер не поддерживает регулярные выражения на достаточном уровне. Используйте другой браузер.

Wikificator will process ALL text on this page. Continue?

(Викификатор обработает весь текст. Продолжить?).

Означает, что реализация JavaScript в браузере не позволяет обработать только выделенный фрагмент. Нажмите «Ok», чтобы разрешить Викификатору обработать весь текст.

Wikifikator doesn’t work on discussion pages

(Викификатор не обрабатывает обсуждения).

Викификатор отказывается обрабатывать текст на страницах обсуждений (всех нечётных пространств и в пространстве 4 «Википедия:»), если находит в нём более одной подписи. Не следует без необходимости править чужие сообщения.

Замечания:

  • Фрагмент текста, который нужно обработать, можно выделить перед вызовом викификатора.
  • В случае необходимости обработать всю дискуссию, можно перейти к редактированию, например, своей личной страницы, скопировать текст туда, нажать кнопку Викификатора, а затем перенести обработанный текст обратно.

[править] Совместимость

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

Браузеры, в которых Викификатор работает:
  • Internet Explorer 5.5, 6.x, 7.x, 8.х, 9.х (включая Maxthon 1.x[1] и Avant Browser 11.x)
  • Firefox 1.x, Firefox 2.x, Firefox 3.x, Firefox 4.0b (включая Flock 1.x, 2.x и Iceweasel 1.x, 2.x)
  • Google Chrome/Chromium[2]
  • Opera 7.x[1], Opera 8.x, Opera 9.x, Opera 10.x и 11.1x
  • Safari 3 (под Windows и Mac OS)
  • Mozilla 1.0[1], 1.2.x[1], Mozilla 1.7.x (включая Orca 1.x)
  • Netscape 7.x
  • Galeon 1.2.x[1], Galeon 1.3.x
  • Konqueror 3.1.x[1], 3.2.x[1], 3.3.x[1], 3.4.x[1], 3.5.x
  • SkipStone 0.8.x[1]
  • SeaMonkey 1.1.9

Примечания:

  1. 1 2 3 4 5 6 7 8 9 10 Не поддерживается обработка выделения.
  2. Не всегда появляется кнопка Викификатора

Браузеры, в которых Викификатор не работает:
  • Arachne 1.70
  • Internet Explorer 3.x, 4.x
  • MATLAB HelpBrowser 6.x
  • Netscape 3.x, 4.x
  • Opera 4.x
  • Safari 1.3

[править] Известные проблемы

  • При исключении шаблонов из обработки не обрабатывается случай использования шаблонов в шаблонах (вложенность) — та часть включающего шаблона, которая расположена после ближайших скобок }}, закрывающих вложенный шаблон, обрабатывается викификатором как обычный текст. Например, в коде {{шаблон1|1={{шаблон2}}|2=параметр2}} не прячется от викификации часть |2=параметр2}}.
  • "Вложенные «кавычки»" правильно обрабатываются только после пробела или в начале строки.

[править] Если викификатор портит текст

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

Если имеет место редкое исключение из правил обработки Викификатора, которое невозможно или очень трудно исправить (например, цитата «авторского текста»), следует окружить проблемный кусок текста тегами <nowiki></nowiki>, чтобы Викификатор его не обрабатывал. При этом для будущих редакторов статьи можно рядом в комментариях указать <!--для защиты от Викификатора-->.

[править] См. также

Логотип «Мета-вики»
На «Мета-вики» имеется страница «Wikificator»

[править] Ссылки

Личные инструменты
Пространства имён
Варианты
Действия
Навигация
Участие
Печать/экспорт
Инструменты
На других языках