Вікіпедія:Вікіфікатор
«Вікіфіка́тор» — це сценарій на JavaScript, який обробляє виділений текст у вікні редагування статті згідно з деякими правилами вікірозмітки і українською типографією. Вікіфікатор викликається десятою кнопкою у тулбарі вікна редагування. У разі, якщо у вікні редагування статті немає виділеного тексту, вікіфікатор обробить весь текст.
На жаль, реалізація JavaScript у деяких браузерах (наприклад, Opera 7.0, Konqueror 3.2 та ін.) не дозволяє обробляти тільки виділений фрагмент. У цьому разі Вікіфікатор запитає дозволу на обробку всього тексту.
Основні функції
- Заміняє деякі HTML-теги на аналогічні вікірозмітки:
- Вставляє, де потрібно, тире і мінус (див. нижче)
- Розставляє правильні лапки і лапки всередині лапок (див. нижче).
- Заміняє (tm), (r) і т. п. на спеціальні символи (див. нижче).
- Розставляє там, де потрібно, знаки градуса «°» (див. нижче).
- Виправляє неправильно вказані службові слова (див. нижче).
- Розставляє пропущені і прибирає зайві пробіли (див. нижче).
- Коригує та розшифровує скорочення (див. нижче).
Винятки
Вікіфікатор не обробляє текст:
- всередині тегів:
- <code></code>,
- <gallery></gallery>,
- <math></math>,
- <nowiki></nowiki>,
- <poem></poem>,
- <pre></pre>,
- <score></score>,
- <source></source>,
- <syntaxhighlight></syntaxhighlight>,
- <timeline></timeline>,
- <tt></tt>,
- всередині більшості HTML-тегів та їх атрибутів,
- всередині подвійних фігурних дужок ({{ і }}),
- всередині подвійних квадратних дужок ([[ і ]], або [[ і |),
- всередині номерів ISBN,
- крім того, Вікіфікатором не обробляються рядки, які починаються з пробілу (неформатований текст).
Комбінації клавіш
Якщо ви використовуєте Windows то Вікіфікатор можна викликати за допомогою комбінації клавіш Ctrl+Alt+W. Якщо ж використовуєте Mac, тоді Вікіфікатор можна викликати через комбінацію клавіш Ctrl+Shift+W.
Дефіс, мінус і тире
Вікіфікатор замінює на мінус (-):
- Дефіс, за яким слідує цифра, і котрому передує пробіл;
- Дефіс, за яким слідує цифра, і котрому передує послідовність «sup>» або «sub>».
Після обробки мінусів Вікіфікатор замінює на довге тире (—):
- коротке тире (–);
- послідовності —, – й —;
- дефіс, оточений пробілами ( - );
- дефіс на початку рядка (пряма мова);
- дефіс, оточений римськими цифрами (VII-IX);
- подвійний дефіс, оточений пробілами ( -- ) або цифрами (1941--1945);
- подвійний дефіс, після котрого йдуть три тильди (--~~~) або слово [[Користувач (--[[Користувач).
Зверніть увагу, що дефіс, просто оточений цифрами без пробілів, не обробляється Вікіфікатором. Це зроблено спеціально, щоб позбутися багатозначності: «Коли Васі було десь 3—4 роки [потрібне тире] він думав, що інші діти у віці 3—4 роки [потрібне тире] не зможуть зрозуміти, що 3-4=-1 [потрібні мінуси]».
Лапки
Вікіфікатор спочатку перетворює всі лапки на звичайні ("), а потім знову їх розставляє, але вже згідно з правилами набору українського тексту. Таким чином, спочатку замінюються на звичайні лапки такі знаки:
- «
- »
- “
- ”
- „
- «
- »
- „
- “
- „
- “
- ”
- "
- Парні подвійні кутові лапки з текстом всередині (наприклад, <<текст всередині лапок, який не починається з пробілу і не закінчується нею>>).
Потім "звичайні" лапки перетворюються на «лапки-ялинки», а лапки всередині лапок на „лапки-лапки“.
Лапки після знаку «рівно» і весь текст всередині них Вікіфікатором не обробляється. Наприклад, не будуть оброблені лапки в рядках: «border="0"», «width= "50%"» і т. п.
Спеціальні символи
Вікіфікатор замінює послідовності:
- (C), (c) з латинською c, (С) з кириличною с і
©
на © (міжнародний знак охорони авторського права). - (r) і
®
на ® (знак для товарів і послуг, знак зареєстрованої торговельної марки). - (tm), (тм) і
™
на ™ (знак незареєстрованої торговельної марки). - (P), (p) з латинською p і
§
на § (знак параграфа). €
,¥
і£
на €, ¥ і £ (знаки євро, єни і фунта стерлінгів) відповідно.- +- і
±
на ±. - ’ (типографський апостроф) на ' (одиночний машинописний апостроф) усередині слів
- ... (три крапки),
…
і…
на … (багатокрапку). - ~= (приблизно рівно) на ≈.
Квадрати та куби
Вікіфікатор замінює на символи квадрата та куба, тобто другого та третього степенів (² і ³), послідовності:
<sup>2</sup>
(2),<sup>3</sup>
(3),²
; і³
;- ^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 відповідно.
Крім того, Вікіфікатор замінює:
- звичайний пробіл перед символом градуса ( °) на нерозривний ( °);
°
на символ градуса.
Службові слова
Вікіфікатор виконує такі автоматичні заміни:
- [[Category: на [[Категорія:
- [[:Category: на [[:Категорія:
- [[Template: на [[Шаблон:
- [[User: на [[Користувач:
- [[Image: на [[Зображення:
- [[Media: на [[Медіа:
- [[File: на [[Файл:
- [[:File: на [[:Файл:
Пропущені, зайві та нерозривні пробіли
Видалення зайвих пробілів
- Видаляються непотрібні пробіли перед комою, а пропущені після неї пробіли, навпаки, проставляються. Так, наприклад, «Вчіться,вчіться ,вчіться , вчіться і ще раз вчіться» буде перетворено на «Вчіться, вчіться, вчіться, вчіться і ще раз вчіться».
- Прибирається зайвий пробіл перед двокрапкою. Наприклад, «слово : слово» буде перетворено на «слово: слово».
- Видаляються пробіли після першої круглої дужки і перед останньою. Наприклад, «бегемот ( гіпопотам )» буде перетворено на «бегемот (гіпопотам)».
- Видаляються пробіли в діапазонах років і століть (наприклад, «1988 — 1995» і «XI — XII»).
- Видаляються зайві пробіли після службових слів «Шаблон», «Категорія» й ін.
- Видаляються всі пробіли в кінці рядків.
- Декілька пробілів поспіль заміняються одним. Не обробляються лише рядки, які починаються з пробілів (неформатований текст).
Вставка звичайних і нерозривних пробілів
- Нерозривний пробіл вставляється після видимого знаку перед тире, щоб наступний рядок не починався з тире.
- Додається нерозривний пробіл перед знаком відсотка (%) або проміле (‰). Так, «5% і 16,7‰» будуть перетворені на «5 % і 16,7 ‰» (відповідно до пункту 6.13 ДСТУ 3651.1-97).
- Також нерозривний пробіл вставляється в українські ініціали (наприклад, «Т.Г. Шевченко» перетворюється на «Т. Г. Шевченко»).
- Нерозривний пробіл вставляється після «№» або «§», якщо за цими знаками слідує цифра.
- Пробіли вставляються після крапки в кінці речення. Так, «слово.Слово» буде перетворене на «слово. Слово».
- Пробіли вставляються після знаків «*», «#», «:» та їхніх комбінацій на початку рядка.
- Пробіли вставляються на початку і в кінці заголовків вікірозмітки, тобто «==Заголовок==» перетворюється на «== Заголовок ==».
Обробка скорочень
- Вікіфікатор заміняє нерозривним пробілом пропущені та звичайні пробіли у скороченнях «і т.д.», «і т.п.», «т.з.», «н.е.».
- Нерозривним пробілом замінюється пробіл після цифр перед скороченнями «тис.», «млн», «млрд», «трлн». Скорочення «тис» доповнюється крапкою.
- Нерозривним пробілом замінюється пробіл після цифр перед скороченнями «р.», «рр.», «с.», «сс.».
- Скорочення «в т.ч.» і «т.я.» розшифровуються повністю.
Повідомлення про помилки
У деяких зовсім старих версіях браузерів Вікіфікатор замість обробки тексту може показувати повідомлення про помилки:
Повідомлення: 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:Wikificator.js. Кнопка Вікіфікатора додається на MediaWiki:ToolbarNew.js і MediaWiki:ToolbarOld.js.
Усі побажання щодо покращення Вікіфікатора, а також повідомлення про знайдені помилки, пишіть на сторінці Обговорення Вікіпедії:Вікіфікатор.