Скрипт для Википедии, позволяющий выполнять ёфикацию статей в полуавтоматическом режиме
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
cpp-frequencies
nginx
statistics
web-backend
web-frontend
web-wiktionary-script
.gitignore
.travis.yml
README.md
description.md
todo.md

README.md

Ёфикатор

Build Status

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

Как начать ёфицировать

  1. Зарегистрируйтесь в Википедии.

  2. Откройте страницу common.js.

  3. Нажмите "Создать как викитекст".

  4. Появится редактор, добавьте следующую строчку, затем нажмите "записать страницу".

     importScript('Участник:Дима74/yoficator.js'); //linkback [[Участник:Дима74/yoficator.js]]
    
  5. Перейдите на страницу Служебная:Ёфикация.

  6. Вас автоматически перенаправит на случайную страницу, чтобы вы её ёфицировали.

  7. Когда страница загрузится, будет выполнена прокрутка до слова, которое предлагается ёфицировать. Слово будет выделено ярко-синим цветом.

  8. Далее вам доступны две горячие клавиши:

     j   принять замену
     f   отменить замену
    
  9. Проверьте, что замена корректна, и нажмите соответствующую клавишу.

  10. После нажатия j или f будет найдено следующее слово для ёфикации, и страница будет прокручена до него. Если больше нет слов для ёфикации, будет произведена правка страницы от вашего имени (это может занять некоторое время), затем произойдёт перенаправление на следующую страницу для ёфикации.

Продвинутое использование

  • Больше информации можно найти на странице скрипта в Википедии.
  • Если вы хотите ёфицировать какую-то конкретную статью, просто перейдите на неё и добавьте ?yofication=true в конец URL.
  • Вам также доступна горячая клавиша q, которая отменяет все принятые замены и переходит к следующий статье.

Как это работает

  • Был скачен дамп русской Википедии.
  • Для каждого слова, в котором есть ё, было посчитано число вхождений версии слова с ё и версии слова без ё.
  • Были найдены все слова, чьи версии с ё встречались больше раз чем версии без ё.
  • Во всех статьях Википедии были найдены вхождения версий таких слов без ё и для каждой статьи был создан список замен (находятся по адресу Wikipedia-Yofication-Replaces).
  • На javascript был написан скрипт, который при заходе на страницу Служебная:Ёфикация выбирает случайную статью для ёфикации, переходит на неё, показывает замены пользователю и на основе решения пользователя производит правку этой статьи.

Как собрать проект

git clone https://github.com/dima74/Wikipedia-Yofication
cd Wikipedia-Yofication
git submodule update --init --recursive
./scripts/all.sh

Задачи

  • printPagesThatContains --- ignore case
  • Просмотреть страницы, содержащие {{nobots}}
  • getWordContext --- многострочный контекст
  • Разобраться с "Broken pipe"
  • Обрабатывать только текст статьи вне тегов и шаблонов:
    • {{цитата|...}}
    • {{начало цитаты}}...{{конец цитаты}}
    • ...
    • [link ...]
    • [[link|...]]
    • Вложенные теги
  • При отмене замены сохранять слово в файлик и больше не предлагать его заменять
  • Исправить обработку заголовков страниц, содержащих &
  • Ёфикация в браузере
    • Добавить анимацию загрузки для длительных действий