Обсуждение Википедии:Викификатор
Материал из Википедии — свободной энциклопедии
[править] Корректна ли обработка годов?
Не нашёл этого случая в руководстве, но по-моему если только год рождения известен неточно (например: ок. 1385 — 1450), логично оставлять пробелы — чтобы не возникало сомнений, к чему относится, а к чему не относится «около». NBS 06:24, 16 ноября 2007 (UTC)
- Как говорится, «дяденька, я не пожарник, я только каску одел» :) Как должно быть в таком случае — я сказать не могу, я не филолог. Возможно имеет смысл спросить мнения других участников на какой-нибудь более популярной странице? Тем более, что технически это скорее будет не «оставлять пробелы», а «всегда вставлять пробелы в этом случае» ∴ AlexSm 19:54, 16 ноября 2007 (UTC)
- Но уж в сочетании декабрь 1991 — 1993 пробелы явно нужны — или есть сомнения? NBS 16:53, 17 ноября 2007 (UTC)
- В руководстве про диапазоны вроде бы сказано, что без пробелов, даже дан похожий, как мне кажется, пример: «Русско-японская война 1904—1905 гг.». В любом случае, об этом всё-таки лучше спросить других участников ∴ AlexSm 19:54, 14 декабря 2007 (UTC)
- Создал тему Википедия:Форум/Общий#Вопрос по оформлению временных диапазонов. NBS 12:15, 15 декабря 2007 (UTC)
- В руководстве про диапазоны вроде бы сказано, что без пробелов, даже дан похожий, как мне кажется, пример: «Русско-японская война 1904—1905 гг.». В любом случае, об этом всё-таки лучше спросить других участников ∴ AlexSm 19:54, 14 декабря 2007 (UTC)
- Но уж в сочетании декабрь 1991 — 1993 пробелы явно нужны — или есть сомнения? NBS 16:53, 17 ноября 2007 (UTC)
- Ещё несколько случаев:
- Запись вида "1830—40-е гг" относится к приемлемым — м.б. в таких случаях тоже заменять на тире?
- Сейчас в интервале не происходит замена, если им заканчивается выделенный фрагмент текста, например, "Великая Отечественная война 1941-1945".
- И ещё (уже не по годам): нельзя ли не убирать в конце выделенного фрагмента перевод строки? NBS 12:15, 15 декабря 2007 (UTC)
- «1830—40-е гг» лучше тоже спросить в опросе. Думаю, что «1941-1945» в конце действительно можно исправлять: если пользователь выделит
12000-2005=..., то будет сам виноват. Исчезновение переводов в конце выделенного текста действительно происходит в IE, но похоже это никак не исправишь; кстати, точно так же «съедают» переводы строк все кнопки вставки ∴ AlexSm 20:06, 17 декабря 2007 (UTC)
- Ещё: не происходит замена на тире в случае, когда один из годов викифицирован, а другой нет (1988-1989, 1988-1989). NBS 18:09, 22 декабря 2007 (UTC)
- Увы, но я не вижу простого способа это исправить: в тот момент, когда минус заменяется на тире, все ссылки уже «спрятаны». С другой стороны, по-моему такое встречается достаточно редко, и вообще не очень красиво. Если дата действительно важна, то она обычно упоминается далее в тексте, где её и нужно делать ссылкой ∴ AlexSm 18:37, 8 января 2008 (UTC)
- По поводу красоты — не знаю, но вот (сейчас не могу найти, где) встречал прямую рекомендацию не делать несколько ссылок в разделе на одну и ту же статью. NBS 20:25, 9 января 2008 (UTC)
Возвращаюсь к оформлению временных диапазонов. На форуме тема уплыла уже далеко вниз, высказался 1 участник:
Все — сугубое имхо. Писать просто «1917 — 1950-е» (без «г.» и «гг.»), на мой взгляд, некорректно, т. е. следует употреблять корректную (зафиксирована в справочнике Мильчина и Чельцовой) форму «1917 г. — 1950-е гг.». Поскольку «ок. 1385 — 1450», «декабрь 1991 — 1993» и «1930 — 1970, Киев» — диапазоны неоднородных, условно говоря, величин, то пробелы тоже необходимы. В случае с городом потому, что иначе бы получилось, будто Киев относится ко всему диапазону лет. snch 19:18, 15 декабря 2007 (UTC)
Поднимать тему ещё раз — или пора вносить изменения и ждать реакции? NBS 20:25, 9 января 2008 (UTC)
- Чтобы вносить изменения — надо чётко сформулировать все «исключения», после этого уже можно пробовать их реализовать ∴ AlexSm 16:10, 15 января 2008 (UTC)
- По-моему, возможно только по умолчанию не убирать пробелы, а убирать только в «исключениях». Явный случай, когда надо убирать пробелы: (год - год); больше явных случаев, возможно, и нет. NBS 16:58, 15 января 2008 (UTC)
[править] Символы _ в викиссылках
- Объединено с темой «Подчёркивания в ссылках»
В Викификатор нужно добавить замену символов "_" в викиссылках на пробелы. — Dirl 06:05, 15 марта 2008 (UTC)
- А можно ещё что-нибудь такое?
txt = txt.replace(/\[\[([{\u0041-\u005a\u0061-\u007a\u00aa\u00b5\u00ba\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u01ba\u01bc-\u01bf\u01c4-\u02ad\u0386\u0388-\u0481\u048c-\u0556\u0561-\u0587\u10a0-\u10c5\u1e00-\u1fbc\u1fbe\u1fc2-\u1fcc\u1fd0-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ffc\u207f\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2131\u2133\u2134\u2139\ufb00-\ufb17\uff21-\uff3a\uff41-\uff5a ,\(\)\-]+)\|(\1)([\u0041-\u005a\u0061-\u007a\u00aa\u00b5\u00ba\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u01ba\u01bc-\u01bf\u01c4-\u02ad\u0386\u0388-\u0481\u048c-\u0556\u0561-\u0587\u10a0-\u10c5\u1e00-\u1fbc\u1fbe\u1fc2-\u1fcc\u1fd0-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ffc\u207f\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2131\u2133\u2134\u2139\ufb00-\ufb17\uff21-\uff3a\uff41-\uff5a]+)\]\]/gi, '[[$2]]$3');
txt = txt.replace(/\[\[([\u0041-\u005a\u0061-\u007a\u00aa\u00b5\u00ba\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u01ba\u01bc-\u01bf\u01c4-\u02ad\u0386\u0388-\u0481\u048c-\u0556\u0561-\u0587\u10a0-\u10c5\u1e00-\u1fbc\u1fbe\u1fc2-\u1fcc\u1fd0-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ffc\u207f\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2131\u2133\u2134\u2139\ufb00-\ufb17\uff21-\uff3a\uff41-\uff5a ,\(\)\-]+)\|(\1)\]\]/gi, '[[$2]]');
- Это из вышеупомянутого скрипта, но немного починено. --Lockal 16:44, 3 апреля 2008 (UTC)
- Если перевести на русский:
- [[(всё что может быть в заголовке)|(\1)]] меняем на [[\1]]
- [[(всё что может быть в заголовке)|(\1)(все буквы)]] меняем на [[\1]]все буквы
- --Lockal 18:38, 4 апреля 2008 (UTC)
- Вообщем, надо переписывать, не соответствует викиреалиям. Как исправлю, выложу сюда на обсуждение. — putnik 10:59, 23 февраля 2009 (UTC)
- Исходим из таких предпосылок:
- Если перевести на русский:
$wgLegalTitleChars = " %!\"$&'()*,\\-.\\/0-9:;=?@A-Z\\\\^_`a-z~\\x80-\\xFF+"; $linkTrail = '/^([a-zабвгдеёжзийклмнопрстуфхцчшщъыьэюя]+)(.*)$/sDu';
-
-
- Поэтому предлагается обе замены преобразовать в одну такую (сырой вариант, не тестился совсем):
-
txt = txt.replace(/\[\[ *([a-zа-я\u00A0-\u00FF %!\"$&'()*,\-.\/0-9:;=?\\@\^_`~]*) *\| *(\1)([a-zа-яё]*) *\]\]/gi, '[[$2]]$3');
-
-
-
-
-
- Проверяем.
[[1234|1234]] год,[[f|fa]]- ни тот, ни другой случай сейчас викификатором не меняются. (Уточняю: для этого я выделяю текст внутри nowiki и нажимаю кнопку викификатора). Случай[[1234]] годотрабатывает на ура, а[[1234]] век- опять нет. Кеш или что? -- AVBtalk 02:41, 24 февраля 2009 (UTC)- У меня работает. — putnik 10:16, 22 марта 2009 (UTC)
- Проверяем.
-
-
-
-
Предлагаю добавить удаление подчёркиваний из внутренних ссылок:
while (/\[\[[^|]+.*_[^|]+.*\]\]/.test(txt)) txt = txt.replace(/(\[\[[^|]+.*)_([^|]+.*\]\])/g, '$1 $2');
— redmond barry 04:53, 10 июля 2008 (UTC)
- Тестирую обе замены, проблем пока нет. Как только найду время проверить код, добавлю. — putnik 11:02, 22 февраля 2009 (UTC)
- Есть большая вероятность, что такой скрипт что-нибудь сломает (AlexSm привёл пример с google: ссылками) и/или будет мешать в оформлении (например, если название предмета статьи правильно пишется именно с подчёркиванием). Предлагается сильно ограничить его область действия, например как-нибудь так:
while (/\[\[[^|:]*_[^|]*\|[^{}|[\]]\]\]/.test(txt)) txt = txt.replace(/(\[\[[^|:]*)_([^|]*)\|([^{}|[\]])\]\])/g, '$1 $2')
- Т. е. чтобы он изменял [[только этот текст|]] и то, когда нет никакого префикса. — putnik 16:32, 23 февраля 2009 (UTC)
[править] Накопившиеся вопросы
- Сегодня обнаружил, что викификатор между инициалами вставляет не неразрывные, а обычные пробелы.
- ISBN
- Необходимо убрать замену дефиса на тире.
- Хорошо бы при викификации убирать двоеточие после ISBN — но только в тех случаях, когда после ISBN идёт код (чтобы не испортить обычную фразу, где ISBN употреблено как термин).
NBS 19:30, 2 апреля 2008 (UTC)
+1. Викификатор портит конструкцию <code>ISBN 978-985-463-258-2</code> (взято из статьи Информационная безопасность). Я думаю, вполне очевидно, что более двух чисел подряд, разделённых дефисами, не могут быть диапазоном годов. -- AVBtalk 01:13, 28 июня 2009 (UTC)
[править] замена дефиса на тире работает не всегда
Если здесь нажать кнопку викификации, то дефис не заменится на тире. -- AVBtalk 21:32, 27 июля 2008 (UTC)
PS: кстати, я уже несколько раз напоролся на то, что после правки каким-то участником, диф слишком большой. Я не стал углубляться, но судя по тому, что инициалы начинают расползаться по строкам, это как раз случай пропадания знаков неразрывных пробелов. -- AVBtalk 21:36, 27 июля 2008 (UTC)
- Это из-за того, что перед основной обработкой все http ссылки прячутся вместе с последующими пробелами. Если я правильно помню, иначе ссылки портились, вероятно получавшийся перед тире неразрывный пробел «прилипал» к ссылке. Сейчас вроде бы не прилипает, вероятно можно оставлять пробел на месте. —AlexSm 19:03, 23 февраля 2009 (UTC)
- Перед предыдущим ответом я похоже тестировал не в том пространстве. Как и раньше, неразрывный юникодный пробел прилипает к http ссылке, именно поэтому ссылку приходится прятать вместе с последующим пробелом. Конкретную ситуацию, описанную выше, мы исправим, за счёт более чёткого определения http ссылки (она не должна содержать
<), но что делать в более общем случаеhttp://www - словопока неясно. —AlexSm 02:58, 24 марта 2009 (UTC)
- Перед предыдущим ответом я похоже тестировал не в том пространстве. Как и раньше, неразрывный юникодный пробел прилипает к http ссылке, именно поэтому ссылку приходится прятать вместе с последующим пробелом. Конкретную ситуацию, описанную выше, мы исправим, за счёт более чёткого определения http ссылки (она не должна содержать
[править] "и т.д." не викифицируется
Вот, попробуйте кнопку викификации в этой странице. -- AVBtalk 13:46, 29 июля 2008 (UTC)
- 1) Просьба давать правильные ссылки. 2) Просьба давать конкретные примеры и объяснения, например: «исходный текст: xxx, после Викификатора: yyy, ожидаемый результат: zzz». 3) Если имелось в виду отсутствие в результате неразрывного пробела, то см. описание Викификатора: «… невидимый неразрывный пробел только в чётных пространствах, кроме пространства „Википедия:“…». —AlexSm 13:54, 29 июля 2008 (UTC)
-
-
- правильные ссылки - пардон, там каким-то боком остался мусор от предыдущего варианта ссылки. Убрал мусор там и представляю ссылку ещё раз тут.
- объяснения - переходим в режим правки страницы, ссылку на которую я дал (или сразу кликайте здесь; нажимаем кнопку викификатора; видим, что "т.д." как было слипшимся, так и осталось слипшимся.
- в чётных пространствах - мне это ничего не говорит (я пока не очень разбираюсь в подобных тонкостях вики), но текст взят из страницы со статьёй и представлен в песочнице, которая вроде тоже как в том же пространства. -- AVBtalk 14:46, 29 июля 2008 (UTC)
-
-
-
- Чем плох вариант примера со ссылкой на версию страницы: после последующих правок страницы нельза будет увидеть изменения кнопкой «Внесённые изменения», потому что они всегда показываются по отношению к текущей версии страницы (даже если начать редактировать старую версию). Список пространств можно посмотреть например в выпадающем списке в списке наблюдения: «основное» - это #1, дальше по возрастанию, также см. Википедия:Пространство имён. В любом случае (повторю) неразрывные пробелы не добавляются там, где бывают обсуждения, исключительно из-за бага в Firefox 1.5 и 2, чтобы не создавать диффы с множеством отвлекающих «невидимых» изменений. —AlexSm 15:03, 29 июля 2008 (UTC)
-
-
-
-
- плох вариант со ссылкой на версию страницы - предложи(те) другой, более адекватный вариант представления примеров, иллюстрирующих правки, нежели через песочницу. Заводить для каждого нового бага новую же под-страницу под своей учёткой? Список пространств - ясно. где бывают обсуждения - про ограничения викификатора на страницах обсуждения я читал. Повторюсь: здесь не тот случай. бага в Firefox 1.5 и 2 - это с пропадающими уникодными знаками? Так я и сейчас постоянно встречаю гигантские дифы (после правок страниц другими участниками), которые вызваны, как я предполагаю, пропаданием этого уникодного знака. Как меня невидимость этого знака раздражает... :( -- AVBtalk 15:33, 29 июля 2008 (UTC)
-
-
- В примере выше после буквы «и» стоит юникодный неразрывный пробел, в соотв. регекспе Викификатора
/и т\. ?д\./gтакого не предусмотрено. Предлагаю исправить ситуацию, заменив пробел на\sв этом регекспе и в некоторых других. —AlexSm 02:58, 24 марта 2009 (UTC)
Предлагаю добавить в викификатор случаи вида "и.т.д" (именно так, без последней точки), "и т. д" и "и т. д". -- AVBtalk 07:06, 1 сентября 2008 (UTC)
- Добавить как альтернативу последней точке перевод строки, или ещё какие-то возможные символы? —AlexSm 02:58, 24 марта 2009 (UTC)
-
- Я думаю, достаточно указать границу слова (вроде юы это тег \b). Если попытаться обобщить, то псевдокод искомого патерна, полагаю, должен (может) выглядеть как-то так (сорри за возможные ошибки и примитивизм, я не специалист по RE):
[править] викификация шаблонов
Предлагаю добавить в викификатор обработку некоторых параметров некоторых шаблонов. В частности: шаблонов {{oq}}, {{цитата}}, а также параметров title=, author= и publisher= в шаблоне {{cite web}} и ему подобных ({{cite news}}, {{cite journal}}, {{книга}}, {{статья}} и т.п.). -- AVBtalk 07:03, 1 сентября 2008 (UTC)
- Как-то неконкретно. —AlexSm 02:58, 24 марта 2009 (UTC)
-
- Куда уж конкретнее. Речь о том, что практически все параметры подобных шаблонов (кроме параметров типа url= и ссылка=) либо должны (второй параметр oq, параметр title= и т.д., и т.п.), либо могут викифицироваться (для первого параметра oq, с кодом языка, викификация вроде как не может повредить). Впрочем, если учесть, что викификатор распознаёт слово http, то викификация параметров url= и ссылка= вроде как не должна повредить. Сейчас же одна из регулярных работ, которые я выполняю над статьями, это выглядывание в цитатах и шаблонах описания ссылок дефисов, многоточий и апострофов, и ручная викификация соответствующих параметров, где они представлены (пример), а также расстановка тире вместо дефисов в диапазонах в параметрах страницы=. Кстати, насчёт многоточий, сейчас добавлю ещё одно тему-пожелание. -- AVBtalk 18:51, 24 марта 2009 (UTC)
-
- Много шаблонов, боюсь что сильно много кода для этого нужно. —AlexSm 20:23, 20 апреля 2009 (UTC)
[править] квадраты и кубы
Предлагаю, чтобы префиксы "кв." и "куб." перед "м", "км", "см" и "мм" заменялись на суффкисы ² и ³ соответственно (например, "кв. км", "куб.мм", "кв. м" → "км²", "мм³", "м²"). -- AVBtalk 14:15, 2 сентября 2008 (UTC)
- Вроде, никто не против, и проблем с подобными заменами не видно. Можно будет добавить. — putnik 11:02, 22 февраля 2009 (UTC)
- Тогда давайте предлагать конкретные регекспы. —AlexSm 02:58, 24 марта 2009 (UTC)
-
-
- Ну, где-то ориентировочно так:
-
- \bкв.\s*(дм|см|мм|мкм|нм|пм|км|м|дюйм|дюймов|ярд|ярдов|фут|футов|миля|миль|парсек|парсеков)\b → \1²
- \bкуб.\s*(дм|см|мм|мкм|нм|пм|км|м|дюйм|дюймов|ярд|ярдов|фут|футов|миля|миль|парсек|парсеков)\b → \1³
- (вроде ничего существенного не упустил из единиц измерения расстояния). -- AVBtalk 19:13, 24 марта 2009 (UTC)
- Насколько я знаю, степени у полных названий единиц измерений не ставятся. — putnik 06:30, 25 марта 2009 (UTC)
-
[править] Год
В подобных случаях в [[1997]]—[[1998]] годах викификатор заменяет на в [[1997]]—[[1998 год]]ах. Можно его научить чувствовать тире перед годом? DSR|Open 16:52, 24 января 2009 (UTC)
- Как ты хочешь? Чтобы выдавалось в [[1997 год|1997]]—[[1998 год]]ах? Боюсь, что сложновато. — Obersachse 17:45, 24 января 2009 (UTC)
-
-
- Не согласен. И вообще, это частный случай "выноса за скобки" (например: "в первом и втором договорах"). Я лично считаю, что хвост нужно отрабатывать обязательно (то есть: "в [[первый договор|первом]] и [[второй договор|втором договорах]]"). -- AVBtalk 15:28, 22 февраля 2009 (UTC)
- Мне тоже кажется, что «хвост» должен быть викифицирован. — putnik 18:03, 22 февраля 2009 (UTC)
-
- Я солидарен с DSROpen. По моему мнению, текст ссылки, взятый вне контекста, должен быть связным. То есть, в ссылке не должно быть никаких «восьмидесятый годы», «втором договорах», «Вторая мировые войны». Трудно объяснить, почему. Однако, нас уже как минимум двое.
- Также, обратите внимание, если написано: «1975—1980 годы», возникает лёгкая двусмысленность: то ли восьмидесятый год, то ли восьмидесятые годы. Ldv1970 21:02, 20 апреля 2009 (UTC)
[править] невидимые переносы
вернул из архива
Было бы хорошо, если бы викификатор убирал (невидимые) переносы. Пример текста: "В результате побеждённые получили редкую возможность создавать свои боевые единицы в условиях менее жёстких ограничений, чем сами победители. Более того, если бы немцам удалось создать проект, угрожающий существующему равновесию сил, бывшим союзникам пришлось бы тратить драгоценный линкорный тоннаж на то, чтобы парировать такой выпад". В этом тексте есть два переноса, которые викификатор не убирает. -- AVBtalk 12:26, 6 сентября 2008 (UTC)
- А зачем это надо? — putnik 23:56, 9 января 2009 (UTC)
Только сейчас заметил появление ответа (просто почти весь январь меня в вики не было), так что не мог ответить. Так вот, ответ просто: потому что невидимые управляющие знаки сбивают поиск. В конце концов, викификатор же убирает лишние пробелы, хотя это менее критично. PS: Ну и попутно надо бы убирать мусорный знак, который часто получается при копировании со страниц вики (см. тему про настройку awb на техническом форуме). PPS: Странно, что викификатор убирает лишние пробелы в середине строк, но не убирает хвостовые пробелы. -- AVBtalk 15:18, 22 февраля 2009 (UTC)
- Давайте это где-нибудь на форуме обсудим. Если поддержат хотя бы несколько человек, и не появится аргументов против, будем удалять. Я просто не готов оценить безвредность этого предложения, а посещаемость этой страницы явно не шкалит. — putnik 11:41, 23 февраля 2009 (UTC)
-
- на форуме - сколько угодно. ВП:Ф-Т#настройка awb. безвредность - (1) знаки переносов - это очевидный мусор, получающийся из-за копипасты со сторонних сайтов и из документов ворда. (2) Лишние (хвостовые) пробелы - очевидная головная боль при анализе дифов, когда неясно, что же очередной аноним изменил в тексте (а это не редкость), поскольку порбелцы в дифе не показываются. (3) Мусорный знак, который я упомянул на Ф-Т, парсером игнорируется, так что я всегда массово удаляю его (когда не забываю об этом и вижу в тексте). -- AVBtalk 14:16, 23 февраля 2009 (UTC)
- Я не против удаления лишних символов, только хотелось бы всё-таки как-то увидеть этот невидимый перенос, в каком месте текста смотреть? —AlexSm 14:46, 23 февраля 2009 (UTC)
- Искать \u00AD. Думаю, его можно тупо вытравлять отовсюду, кроме ссылок, потому как формально он в именах разрешён. Относительно же запрета в названиях нужно подумать. С большой вероятностью он запрещён через глобальный Title blacklist, если нет — стоит в него внести. — putnik 16:32, 23 февраля 2009 (UTC)
-
-
- в каком месте текста смотреть - не знаю, как в других браузерах, а в опере этот перенос не показывается ни в редакторе, ни в дифе. Поскольку я "вытаскивал их архива" через диф, эти знаки не скопировались, но сейчас я скопировал заново уже напрямую и в дифе вы можете видеть, что некоторые слова стали красными из-за возврата в них знака переноса. Я напарываюсь на эти знаки и вижу их вполне наглядно, когда переношу текст в опенофис для проверки орфографии. кроме ссылок - в ссылках тоже его нужно вытравлять, ссылки с таким знаком являются такими же ошибочными (то есть таких имён не должно быть), как и ссылки с подменёнными лат/кир знаками. Нужно будет оставить запрос Михайле, чтобы его бот искал ссылки не только с лат/кир подменой, но и с этим знаком - хотя я сомневаюсь, что такие есть. -- AVBtalk 17:39, 23 февраля 2009 (UTC)
- Я понимаю, что вы считаете такие ссылки некорректными, но движок их таковыми не считает. И если они не запрещены, то их нельзя удалять совсем без анализа (т. е. Викификатором, а не ботом). — putnik 17:44, 23 февраля 2009 (UTC)
- в каком месте текста смотреть - не знаю, как в других браузерах, а в опере этот перенос не показывается ни в редакторе, ни в дифе. Поскольку я "вытаскивал их архива" через диф, эти знаки не скопировались, но сейчас я скопировал заново уже напрямую и в дифе вы можете видеть, что некоторые слова стали красными из-за возврата в них знака переноса. Я напарываюсь на эти знаки и вижу их вполне наглядно, когда переношу текст в опенофис для проверки орфографии. кроме ссылок - в ссылках тоже его нужно вытравлять, ссылки с таким знаком являются такими же ошибочными (то есть таких имён не должно быть), как и ссылки с подменёнными лат/кир знаками. Нужно будет оставить запрос Михайле, чтобы его бот искал ссылки не только с лат/кир подменой, но и с этим знаком - хотя я сомневаюсь, что такие есть. -- AVBtalk 17:39, 23 февраля 2009 (UTC)
-
-
-
-
-
- но движок - но позвольте, движок-то тут причём? Викификатором, а не ботом - я думаю, это тот случай, когда нет необходимости "анализа" - знак переноса не является ни печатным, ни отображаемым, и он не может быть частью имени. Это служебный знак для оформления текстов. То, что движок позволяет такие знаки в именах - можно назвать очевидным недосмотром. Вопрос только и исключительно в том, стоит ли сохранять ссылки с таким знаком, если есть страницы с соответствующими именами (если страниц нет и ссылка изначально красная, то и вопроса нет - ссылка ошибочна без всяких оговорок). Я думаю, покраснение ссылки в таких условиях - допустимая плата (а может быть, даже преимущество), особенно если учесть, что вряд ли в вики сейчас найдутся имена с этим знаком (хотя последнее - только моё предположение). -- AVBtalk 18:53, 23 февраля 2009 (UTC)
-
-
-
- Это Soft Hyphen, C2AD в UTF8. Его можно увидеть в окне редактирования (похоже во всех браузерах), если уменьшать ширину окна до тех пор, пока в этом месте не образуется перенос. Если символ использован в названии страницы, то он виден в заголовке окна браузера (на самом верху). Вот список статей с этим символом в названии: 4 статьи и 6 перенаправлений. Предлагаю после чистки этого списка добавить soft hyphen символ в Titleblacklist и действительно удалять его Викификатором. —AlexSm 19:03, 23 февраля 2009 (UTC)
- Ну на 00AD в Titleblacklist'е правило и так давно есть. — putnik 13:48, 29 марта 2009 (UTC)
PS: Для пробы, вот три ссылка: Москва, Москва и Москва. Первая ссылка нормальная, во второй в середине мусорный знак, в третьей - знак переноса. Хотелось бы, если это можно сконфигурировать, чтобы парсер игнорировал знак переноса так же, как он игнорирует мусорный знак. Тогда и вопрос автоматического его удаления будет менее острым. А так, с учётом того, что знак переноса не виден, то это может быть вообще использоваться для вандализма. -- AVBtalk 19:09, 23 февраля 2009 (UTC)
- «Мусорный знак» — это «DirMark», специальный LTR символ (см. en:Bi-directional text). Я упоминал его в mediazilla:14881 (со словами «minor inconvenience»), но в итоге на странице вклада его так и оставили. Пока что согласен убирать его из ссылок, надеюсь это не вызовет никаких проблем. —AlexSm 19:29, 23 февраля 2009 (UTC)
-
- Кстати, вот ещё один пример: сейчас в ВП:Ф-Т#двойные перенаправления дана копия со служебной страницы и там можно в режиме редактирования видеть эти значки. То, о чём я и говорил - при копировании со страниц вики это значки появляются во множестве. -- AVBtalk 01:14, 25 февраля 2009 (UTC)
- По-моему стоит Soft Hyphen просто убирать Викификатором везде, и занести его в titleblacklist. В текстах статей он не нужен. —AlexSm 02:58, 24 марта 2009 (UTC)
- Ещё один аргумент в пользу убирания хвостовых пробелов викификатором - пример правки, которая сбивает с толку, "что же там изменилось" (ведь дифы пробелы не показывают), если олько не знать (догадываться!), что же там изменилось. -- AVBtalk 06:44, 6 апреля 2009 (UTC)
Частично добавлено удаление Soft Hyphen, LTR и RTL из ссылок. Обрабатываются случаи, когда перед знаком в ссылке не встретилось двоеточие. Собственно, вопрос: могут ли удаления этих знаков сбить какие-нибудь интерлинки? Если нет, применим ко всем ссылкам. — putnik 12:25, 20 апреля 2009 (UTC)
- Очень вряд ли, а если и встретится, то это будет ошибка в другом разделе. Если вдруг такое обнаружится - тогда и будем решать. —AlexSm 20:23, 20 апреля 2009 (UTC)
[править] бага с кавычками
Вот порезанный фрагмент из статьи Портрет:
Существовали и другие аспекты: «Портреты … „персоны“ свои и …, „портретные“ комнаты, … быта„.<ref name="рус"/>
[[Файл:Kustodiev Merchants Wife.jpg|thumb|Борис Кустодиев. “Купчиха за чаем», 1918. ]]Обратите внимание на неправильные кавычки-лапки в конце цитаты и в начале названия в файл-ссылке, которые ставит викификатор вместо ёлочек. Это бага викификатора или что-то ещё? Можно это дело поправить? -- AVBtalk 19:23, 8 февраля 2009 (UTC)
Эта бага по прежнему не исправлена - если викифицировать процитированный фрагмент, кавычка не исправляется. Так же, у меня всё ещё не действует оптимизация ссылок и захват слова "век" в ссылки. Ну и, я не вижу, чтобы изменения (не исправления ошибок) в викификаторе нашли отражение на странице документации. -- AVBtalk 01:17, 25 февраля 2009 (UTC)
Ещё одна статья, где я напоролся на эту же проблему с кавычками - оклад иконы. -- AVBtalk 08:58, 28 февраля 2009 (UTC)
[править] <references/>
Требуется включить в викификатор автозамену вхождения <references/> на {{примечания}}? — Дмитрий Никитин 14:36, 18 марта 2009 (UTC)
- Мне кажется, не стоит - дело в том, что "под раздачу" могут попасть случаи, когда нужно именно <references/>. К тому же, вокруг <references/> могут стоять самые разнообразные div, без убирания которых производить замену может оказаться не совсем правильно. -- AVBtalk 12:14, 22 марта 2009 (UTC)
- Не знаю, остались ли у нас случаи, когда нужно именно <references />, но с тем, что в случае, когда уже имеется собственное оформление, замена может быть некорректной, полностью согласен. Можно подумать относительно того, как прописать замену так, чтобы менялся только «чистый» тег <references />, но все я бы заменять не стал. — putnik 01:48, 23 марта 2009 (UTC)
-
-
- остались ли у нас случаи - и остались, и появляются новые. Я на днях в какой-то статье видел, как добавили тег, а не шаблон. -- AVBtalk 02:27, 23 марта 2009 (UTC)
- Тогда пока оставляем как есть. — putnik 03:02, 23 марта 2009 (UTC)
-
- А можно пример, когда нужен именно <references />? Альтернативный вариант -- заменять
- остались ли у нас случаи - и остались, и появляются новые. Я на днях в какой-то статье видел, как добавили тег, а не шаблон. -- AVBtalk 02:27, 23 марта 2009 (UTC)
-
== Примечания == <references/>
-
-
-
- когда понятно, что никаких div'ов вокруг references нет. — Дмитрий Никитин 05:26, 23 марта 2009 (UTC)
-
-
[править] угловые скобки и многоточие
В цитатах некоторые участники нередко вставляют такой конструкт: <...>. Желательно обрабатывать такой конструкт, заменяя угловые скобки на теги (<...>), либо сразу заменяя также и троеточие на знак многоточия (<…>). -- AVBtalk 18:56, 24 марта 2009 (UTC)
- Не вижу причин усложнять код заменой скобочек их мнемониками. Обработка многоточия, вероятно, будет. — putnik 14:04, 18 апреля 2009 (UTC)
[править] оптимизация ссылок с трубой и словом "год" и "век"
Есть такая ссылка: [[1702 год|1702 год]]у. При её викификации получается [[1702 год|1702 году]], что не есть гуд. -- AVBtalk 09:14, 10 апреля 2009 (UTC)
Также, есть такой пример [[XIX век|XIX]] век. Он не викифицируется. -- AVBtalk 09:19, 10 апреля 2009 (UTC)
Исправлено для веков. С годами нужно подумать. Мне кажется, что можно добавить, но только для основного пространства, чтобы не сбивать типографику на порталах и иже с ними. — putnik 06:20, 16 апреля 2009 (UTC)
-
- А что там с порталами не так, чем их такая замена может не устроить и как это влияет на их типографику? (Уточняю: я имею в виду, что для
[[1702 год|1702 год]]уя ожидаю получить[[1702 год]]у, а не[[1702 год|1702 году]]). -- AVBtalk 13:50, 16 апреля 2009 (UTC)- Правильная типографика подразумевает, что между числом и словом «год» должен стоять неразрывный пробел. Возможно, это где-то используется для красоты, ибо страницы шаблонов частого редактирования не подразумевают. — putnik 13:54, 18 апреля 2009 (UTC)
- А что там с порталами не так, чем их такая замена может не устроить и как это влияет на их типографику? (Уточняю: я имею в виду, что для
[править] оптимизация ссылок с трубой и апостроф
Вариант [[Терри О’Куинн|Терри О’Куинн]] не викифицируется. При убирании апострофа викификация начинает работать. -- AVBtalk 11:11, 10 апреля 2009 (UTC)
Исправлено. — putnik 06:20, 16 апреля 2009 (UTC)
-
- Я не слишком хорошо разбираюсь в регэкспах и не могу (с ходу) прочитать, что там написано под // Nice links, но меня смутило описание "в оптимизацию ссылок добавлен апостроф". А именно, есть ли какие-то причины, почему нельзя объединять текст до и после трубы, если там используются ЛЮБЫЕ идентичные знаки? Впрочем, поднапрягшись с чтением, уточняю: есть ли причины, почему нельзя заменить
-
-
txt = txt.replace(/\[\[ *([a-zA-Zа-яА-Я\u00A0-\u00FF %!\"$&'()*,\-.\/0-9:;=?\\@\^_`’~]+) *\| *(\1)([a-zа-яё]*) *\]\]/g, '[[$2]]$3')txt = txt.replace(/\[\[ *([a-zA-Zа-яА-Я\u00A0-\u00FF %!\"$&'()*,\-.\/0-9:;=?\\@\^_`’~]+) *\| *([^|[\]]+) *\]\]([a-zа-яё]+)/g, '[[$1|$2$3]]')
-
-
- на что-то типа
-
-
txt = txt.replace(/\[\[ *([^\|\]]+) *\| *(\1)([a-zа-яё]*) *\]\]/g, '[[$2]]$3')txt = txt.replace(/\[\[ *([^\|\]]+) *\| *([^|[\]]+) *\]\]([a-zа-яё]+)/g, '[[$1|$2$3]]')
-
-
- И, кстати, в продолжение и подтверждение моей идеи-вопроса: только что напоролся ещё на одну конструкцию, которая не викифицируется:
[[небоскрёб|небоскрёба]]. Причина: забыта "ё" в списке знаков для сравнения в регэкспе, который я процитировал выше. -- AVBtalk 19:33, 16 апреля 2009 (UTC)- «Ё» будет при следующем обновлении. Очень странно, что она не попала в промежуток \u00A0-\u00FF. Общее предложение надо обдумать. — putnik 14:04, 18 апреля 2009 (UTC)
- странно, что она не попала в промежуток \u00A0-\u00FF - по идее, насколько я понимаю, и не должна была, поскольку в уникоде её коды 0x401 и 0x451 (см. уникодные коды в таблице в ISO 8859-5#Кодировка ISO 8859-5). -- AVBtalk 14:29, 18 апреля 2009 (UTC)
- «Ё» добавлена. — putnik 12:20, 20 апреля 2009 (UTC)
- странно, что она не попала в промежуток \u00A0-\u00FF - по идее, насколько я понимаю, и не должна была, поскольку в уникоде её коды 0x401 и 0x451 (см. уникодные коды в таблице в ISO 8859-5#Кодировка ISO 8859-5). -- AVBtalk 14:29, 18 апреля 2009 (UTC)
- «Ё» будет при следующем обновлении. Очень странно, что она не попала в промежуток \u00A0-\u00FF. Общее предложение надо обдумать. — putnik 14:04, 18 апреля 2009 (UTC)
- И, кстати, в продолжение и подтверждение моей идеи-вопроса: только что напоролся ещё на одну конструкцию, которая не викифицируется:
Ещё один пример, показывающий, что нужно обрабатывать все знаки сразу, а не модифицировать регэксп постепенно, добавляя знаки по одному: на этот раз я напоролся, что не отрабатывается конструкция
[[Англо-португальский кризис (1889—1890)|Англо-португальский кризис (1889—1890)]]
содержащая тире. -- AVBtalk 18:45, 23 июня 2009 (UTC)
[править] оптимизация ссылок - регистр первой буквы
Ссылка вида [[Король|король]] не оптимизируется. Подробности: регистр первой буквы в ссылках движок не учитывает, а такого рода ссылки часто получаются копированием (или подстановкой скриптами вроде editsuggest) до трубы заголовков страниц, а они как правило показываются на страницах википедии с прописной буквы. Было бы неплохо, если бы и викификатор игнорировал регистр первого непробельного знака. -- AVBtalk 14:36, 15 апреля 2009 (UTC)
- Когда-нибудь сделаем. — putnik 14:04, 18 апреля 2009 (UTC)
- (Кажется второй раз) предлагаю оформить обработку всех ссылок как
txt=txt.replace(регексп на внутреннюю ссылку и eё хвост, function (string, link, name, tail)), и внутри этой функции все условия и проверки будут гораздо проще. —AlexSm 20:23, 20 апреля 2009 (UTC)
[править] тег br
Не так уж редко мне попадается использование тега br в форме </br>. Почему бы не поддержать эту форму наравне с формой <br>? -- AVBtalk 03:47, 23 апреля 2009 (UTC)
- Думаю, вполне можно добавить в соответствующей регексп
\/?—AlexSm 04:12, 23 апреля 2009 (UTC)
[править] "и т.д."
Фрагмент "и т.д." не викифицируется. Как я понимаю, потому, что там неразрывный пробел. PS: Видимо, это нужно считать намёком на то, что нужно активнее заменять знак пробела в регэкспах на пару пробел+неразрывный пробел или, наверное, вообще на \s. -- AVBtalk 15:54, 4 мая 2009 (UTC)
[править] hr
Заменяет <hr /> на ----, даже если hr находится в одной линии с текстом. Пример неправильной обработки можно посмотреть здесь. --Lockal 08:50, 5 мая 2009 (UTC)
[править] "И т.п."
Обнаружил тут конструкцию (И т.п.), которая не викифицируется. Вероятно, из-за прописной "И". -- AVBtalk 23:09, 10 мая 2009 (UTC)
[править] ISBN
Как оказалось, выше вопрос уже поднимался, но викификатор до сих пор портит ISBN, заменяя дефис на тире. Может кто-нибудь возьмется исправить? —LimeHat 11:19, 18 мая 2009 (UTC)
[править] викификация дефиса после тега
Конструкция вида
текст<ref>http://text</ref> - текст
не викифицируется (дефис не заменяется на тире). -- AVBtalk 19:27, 19 мая 2009 (UTC)
[править] точка после единицы измерения
В конструкции составлял 410—420 мм. D1 появился в 1979 году викификатор проглатывает точку, при этом в конструкции составлял 410—420 мм. Д1 появился в 1979 году точка остаётся на месте. Я думаю, это (проглатывание в случае латиницы) - неправильно. -- AVBtalk 17:35, 22 мая 2009 (UTC)
[править] ссылки на файлы в таблицах
При викификации таблицы, в которой ячейка (|) начинается с отступом, ссылка на файл не викифицируется ("Изображение" не заменяется на "Файл"):
{|
|[[Изображение:Example.jpg|thumb]]
|}
Также, не помню, писали ли тут об этом, но параметры без кавычек в таблицах (например, width=25% вместо width="25%") портятся (викификатор вставлят пробел между числом и процентом). Возможно, имеет смысл вставить в викификатор добавление кавычек вокруг параметров тегов (как минимум - параметров таблиц типа colspan/width/... и ref name= - в конце концов, вставляет же он пробел перед "/" в "<br/>"). -- AVBtalk 21:06, 23 мая 2009 (UTC)
[править] оторванные сноски
В очередной раз натолкнувшись на оторванные сноски, подумал, что всё же надо бы добавить в викификатор, во исполнение ВП:СН#Рекомендации по стилю (Ссылку на сноску следует ставить вплотную к предшествующему тексту, без предваряющего пробела), убирание пробелов перед <ref.
Также, возможно, стоило бы добавить убирание в том числе и разделителя строк (некоторые любят "для читабельности кода" ставить ref с новой строки), но тут придётся учитывать, что сноска может стоять на отдельной строке после заголовка.
Также, было бы неплохо, если бы викификатор заменял name="" на просто ref и добавлял кавычки вокруг аргументов name= там, где кавычек ещё нет. -- AVBtalk 22:57, 27 мая 2009 (UTC)
[править] температура в цельсиях
Пробуем викифицировать температуру:
- 10°С (здесь русская Эс, а не латинская Це)
- 1-2°С (тоже русская Эс)
- 100-200°C
Результат:
- 10 °C (латинская Це)
- 1-2°С (осталась русская Эс)
- 100—200°C
То есть викификатор не отрабатывает диапазоны температур: не всегда заменяет дефис на тире (см.: ВП:ОС#Диапазоны), не заменяет Эс на Це и не отделяет °C от диапазона. Как я понимаю, это потому, что викификатор начинает отрабатывать диапазон как года, и потому не подхватывает последующий знак °. Я не знаю, как сейчас в викификаторе отлавливается температура, но предполагаю, что патерн должен выглядеть как-то так (прошу считать меня коммунистом... в смысле, это только что-то вроде псевдокода, так что не бейте сильно за ошибки):
- ([0-9]+)\s?[-—]\s?([0-9]+)\s?°[СC] → \1—\2 °C
-- AVBtalk 07:52, 1 июня 2009 (UTC)
[править] Год 2
Викификатор не хочет обрабатывать вот такую конструкцию: [[2000 год|2000]] года, а должен --Hazzik 05:16, 24 июня 2009 (UTC)
-- AVBtalk 22:57, 25 июня 2009 (UTC)
[править] "и т.д." 2
Конструкция вида (… и т.д.). не викифицируется. -- AVBtalk 22:59, 25 июня 2009 (UTC)
[править] Кавычки
В примере ООО «Рога и копыта», если после ООО стоит неразрывный пробел, после викификатора получается — ООО "Рога и копыта". Permjak 17:45, 29 июня 2009 (UTC)
Ещё пример с кавычками:
«Наиболее важные ссылки следует приводить в разделе ''«См. также»''»
В результате викификации получается:
- «Наиболее важные ссылки следует приводить в разделе »См. также""
-- AVBtalk 20:06, 7 июля 2009 (UTC)
[править] |
Викификатор заменяет | на |, что, разумеется, портит шаблоны. Есть ли какая-нибудь возможность принудить его менять | на {{!}}?--WindEwriX 11:58, 13 июля 2009 (UTC)
- Используйте {{!}} напрямую, делов-то. PS: По хорошему, следовало бы, чтобы викификатор не обрабатывал | внутри таблиц, если в результате получаются парные ||, а также внутри шаблонов. Но, с учётом того, что даже более простая задача - исключение содержимого шаблонов из викификации, если там есть вложенные шаблоны - давно не может решиться, ждать решения ещё и этой задачи (в ближайшее время) тоже не приходится. -- AVBtalk 12:24, 13 июля 2009 (UTC)

