- Викификатор
-
Википедия:Викификатор
Викифика́тор — инструмент для автоматической обработки вики-текста согласно некоторым правилам вики-разметки и русской типографики.
Викификатор запускается кнопкой над окном редактирования и обрабатывает выделенный текст, или сразу весь текст при отсутствии выделения текста.
Викификатор написан на 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-мнемоники и слова заменяются на символы Юникода:
Заменяемые На символ © © ® ® (tm)
(тм)
™™ § § € € ¥ ¥ £ £ +-
±± ~= ≈ ...
…
…… Заменяемые На символ ° ° "
«
»
„
“
„
“
”
<< >>[2]" ^2
²
<sup>2</sup>[3]² ^3
³
<sup>3</sup>[3]³
Примечания:- ↑ Поиск ответов Грамоты.ру
- ↑ Сразу после << и сразу перед >> не должно быть пробела
- ↑ 1 2 Сразу после ^2 или ^3 не должно идти других цифр
Дефис, минус и тире
Викификатор заменяет на минус (−):
- Дефис, за которым следует цифра, и которому предшествует пробел;
- Дефис, за которым следует цифра, и которому предшествует последовательность «sup>» или «sub>».
После обработки минусов Викификатор заменяет на длинное тире (—):
- Короткое тире (–);
- Дефис, окружённый пробелами ( - );
- Дефис в начале строки (прямая речь);
- Дефис, окружённый с каждой стороны тремя или четырьмя цифрами (1985-1991);
- Дефис, окружённый римскими цифрами (VII-IX);
- Двойной дефис ( -- ), окружённый пробелами или цифрами (1941--1945);
Дефис, просто окружённый цифрами, не обрабатывается Викификатором. Это сделано специально, чтобы избежать многозначностей: «Когда Васе было где-то 3—4 года [нужно тире], он думал, что другие дети в возрастном периоде 3—4 года [нужно тире] не смогут понять, что 3−4=−1 [нужны минусы]».
Кавычки
Викификатор сначала конвертирует все кавычки (
« » “ ”„
) в тексте в обычные ("
), а потом вновь их расставляет, но уже согласно правилам набора русского текста: "обычные кавычки" конвертируются в «кавычки-ёлочки», а кавычки внутри кавычек — в „кавычки-лапки“.Обработка пробелов
Удаляются лишние пробелы:
- в конце строк
- несколько подряд (заменяются одним)
- перед запятой: «слово , слово» → «слово, слово»
- перед точкой с запятой: «слово ; слово» → «слово; слово»
- после открывающей круглой скобки и перед закрывающей: «бегемот ( гиппопотам )» → «бегемот (гиппопотам)»
- в диапазонах годов и веков: «1988 — 1995» → «1988—1995»
Вставляются пропущенные пробелы:
- после точки в конце предложения: «слово.Слово» → «слово. Слово»
- после запятой: «слово,слово» → «слово, слово»
Также, для повышения читабельности вики-разметки, вставляются пропущенные пробелы после знаков
*
#
:
и их комбинаций в начале строки, вокруг заголовков (==А==
→== А ==
), и вставляется пустая строка перед заголовком, если других пустых строк там нет.Вставка неразрывных пробелов
Неразрывные пробелы расставляются:
- Перед тире после видимого знака (чтобы при завороте строки тире не отрывалось от предыдущего текста). Например, в «Пушкин — наше всё».
- В русских инициалах. Например, «А.С. Пушкин» → «А. С. Пушкин».
- Перед знаком процента (%) или промилле (‰). Так, «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.х (включая Maxthon 1.x[1] и Avant Browser 11.x)
- Firefox 1.x, Firefox 2.x, Firefox 3.x (включая Flock 1.x, 2.x и Iceweasel 1.x, 2.x)
- Google Chrome
- Opera 7.x[1], Opera 8.x, Opera 9.x, Opera 10.x
- 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
Примечания:
Браузеры, в которых Викификатор не работает:
- 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>
, чтобы Викификатор его не обрабатывал. При этом для будущих редакторов статьи можно рядом в комментариях указать<!--для защиты от Викификатора-->
.Технические замечания
Рекомендации по установке Викификатора на своём вики-сайте даны на странице Википедия:Викификатор/Инструкция по установке.
Для вызова Викификатора комбинацией клавиш в любом браузере можно подключить себе персональный скрипт.
См. также
Ссылки
Wikimedia Foundation. 2010.
- текст, окружённый тегами