Википедия:Персональные скрипты

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Короткая ссылка-перенаправление

Персональный скрипт — страница с расширением имени .js в личном пространстве участника Википедии (обычно автора скрипта), содержащая код на языке JavaScript. Другие зарегистрированные участники могут применять скрипт, записав строку его подключения[1] в собственный common.js.

На этой странице перечислены написанные участниками или перенесённые из других разделов скрипты, не имеющие статуса гаджетов (то есть не подключаемые через настройки).

Существует два способа добавления персональных скриптов — функции importScript (не работает в мобильной версии) и mw.loader.load.

Для подключения с помощью первого способа добавьте в ваш личный common.js одну из двух строк:

  • importScript('название страницы скрипта'); — для скриптов из русского раздела,
  • importScript('название страницы скрипта', 'языковой код раздела'); — для скриптов из других разделов.

Для подключения с помощью второго способа добавьте в ваш личный common.js строку вида

  • mw.loader.load('https://meta.wikimedia.org/w/index.php?title=User:Zhaofeng_Li/Reflinks.js&action=raw&ctype=text/javascript');.

Некоторые скрипты могут работать в разных проектах фонда Викимедиа; их можно подключать через global.js на Мета-вики при помощи второго способа.

Разработчики скриптов могут найти вспомогательную информацию на соответствующей странице проекта «Технические работы».

Список[править код]

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

Страница скрипта Последнее значительное обновление Описание
Участник:Jaguar K/histpat-test.js апрель 2024 Убирает подсветку правок (А)ПАТ (непроверенные изменения) на страницах истории.
Полностью переделанный Помощник патруля.js (должен работать быстрее), о багах пишите на СО.
Участник:Jaguar K/histpat.js январь 2024 Убирает подсветку правок (А)ПАТ (непроверенные изменения) на страницах истории.
Немного допиленный вариант скрипта Помощник патруля.js (удаленный оригинал), о багах пишите на СО.
Участница:Megitsune-chan/subst.js сентябрь 2023 Облегчает установку подстановочных шаблонов. Скрипт добавляет шаблон только в начало страницы.
Участник:Radmir Far/dewikify.js июль 2023 Убирает все внутренние ссылки в выделенном тексте. Добавляет в панель редактирования кнопку , при нажатии на которую все внутренние ссылки в выделенном тексте заменяются на текст. Частично основано на скрипте уч. DonRumata Участник:DonRumata/lowercase.js.
Участник:D6194c-1cc/wikidata.js май 2023 Облегчает работу с источниками из Викиданных. При просмотре изменений добавляет описание и ссылку на элемент Викиданных к идентификаторам (QXXXXXX), при редактировании в визуальном редакторе добавляет поле поиска источников по Викиданным. Для инструкции по установке см. Шаблон:Источник_информации#Инструменты.
Участник:Radmir Far/kirlat.js май 2022 Расширение для Викификатора. Исправляет кирлат, смесь греческих и кириллических букв и некоторые распространённые ошибки OCR. Документация.
Участник:Medvednikita/is.js декабрь 2021 Быстрая установка других скриптов: обновлённая версия нерабочего скрипта Участник:Absconditus/is.js. Позволяет устанавливать скрипты с их страницы или с этой страницы.
Участник:Serhio Magpie/instantDiffs.js декабрь 2021 Добавляет действия после ссылок на правки, позволяющие: открывать окошко с динамической подгрузкой ❖ разницы версий или ✪ конкретной версии статьи; ➔ переходить на страницу и в секцию, где была совершена правка. Также даёт возможность администраторам просматривать скрытые версии без дополнительных действий. Кроме ссылок в пользовательском содержимом, встраивается и на все основные служебные страницы, где есть ссылки на разницу версий.
Участник:VasilievVV/oneclickkeep.js октябрь 2021 Быстро оставить страницу, вынесенную к удалению (для администраторов и подводящих итоги).
Участник:Serhio Magpie/enhanceWikitextEditor.js август 2021 Ряд улучшений для редакторов вики-кода 2010 и Ace (редактор для модулей, скриптов и стилей): расширяет зону ввода под высоту содержимого, тем самым сокращая количество скроллбаров на странице до одного; прикрепляет панель инструментов и описания правки соответственно к верху и низу окна браузера.
Участник:Serhio Magpie/compactReview.js август 2021 Изменяет форму патрулирования, делая её более компактной, и переносит её в зависимости от расположения скроллбара вверх или вниз страницы.
Участник:Serhio Magpie/topCategories.js июль 2021 Добавляет действия на страницах категорий по подсчету самых наполненных категорий. Может считать как количество собственных страниц, так и общее число рекурсивно(β).
Участник:WindEwriX/tineye.js апрель 2021 Добавляет на страницах файлов ссылку для поиска изображений с помощью TinEye (полезно для проверки источников)
Участник:A particle for world to form/wantedCategoriesProgression.js ноябрь 2020 Добавляет прогрессбар на страницу требуемых категорий, показывающий процент обработанных категорий.
Участник:DonRumata/Gadget-keybLayout.js ноябрь 2020 Скрипт, пoдcвeчивaющий кирлат. Оригинал (укр.).
Участник:Землеройкин/remove.js октябрь 2020 Облегчает выставление статей на КУ, КБУ, КУЛ, КПМ, КОБ, КРАЗД и ВУС.
Участник:A particle for world to form/untalkify.js сентябрь 2020 Меняет в проектных категориях («Статьи проекта XXX» и «Списки проекта XXX») ссылки на страницы обсуждения на ссылки на соответствующие статьи.
Участник:Jack who built the house/canonicalPageName.js июль 2020 Приводит название страницы в адресной строке к каноническому виду (например, Служебная:ВкладSpecial:Contributions). Это позволяет открывать соответствующие страницы в других разделах, добавляя спереди к названию страницы префикс раздела (например, en:).
Участник:DonRumata/acute.js ноябрь 2019 Добавляет в меню «Дополнительно» панели редактирования кнопки вставки знаков ударения.
Участник:Jack who built the house/findAddition ноябрь 2018 По выделенному тексту при нажатии клавиш(и) находит правку, которой его добавили.
Участник:DonRumata/tablifikator.js ноябрь 2018 Добавляет в панель редактирования кнопку форматирования таблицы, скопированной из Excel, по правилам вики-разметки.
Участник:DonRumata/lowercase.js ноябрь 2018 Добавляет в панель редактирования кнопку перевода выделенного текста в нижний регистр (СКРИПТ → скрипт).
Участник:ɪ/RefToggle.js октябрь 2018 Добавляет в панель «Инструменты» в левой колонке ссылку «Скрыть/показать номера примечаний».
Участник:IKhitron/blocknot.js июнь 2018 Добавляет легкодоступный блокнот для записи задач на будущее или полезных задач. Подробности: Википедия:Форум/Архив/Предложения/2018/04#Новый гаджет: блокнот.
Участник:Jack who built the house/Code Prettifier февраль 2018 Позволяет (кнопка 1) выравнивать значения параметров многострочных шаблонов, исправлять нумерацию параметров типа меткаN, списокN в шаблонах-карточках и подобных; (кнопка 2) переводить шаблоны из однострочного вида в многострочный и обратно; а при настройке var atpCodeStyler = true; добавляется кнопка 3 для оформления кода парсерных функций.
Участник:IKhitron/purge.js декабрь 2017 Добавляет в меню «Инструменты» на страницах категорий запуск нулевых правок во всех страницах категории, рекурсивно до 5 уровней подкатегории. Скорость зависит от прав запускающего. От этого же зависит возможный провал, если есть страница, защита которой выше возможностей пользователя.
Участник:A particle for world to form/purge.js декабрь 2017 Другой вариант инструмента. Может осуществлять сброс кэша (вместо нулевых правок) и обрабатывать включения шаблонов, но не может обходить категории рекурсивно.
Участник:A particle for world to form/highlimits.js декабрь 2017 Добавляет возможность просматривать некоторые спецстраницы, например, поиска или вклада участника, порциями по 1000 или 5000 результатов на страницу.
en:User:Cacycle/wikEdDiff.js ноябрь 2017 Усовершенствует панель диффа; также делает кликабельными все ссылки в тексте диффов; не взаимодействует с гаджетом зачёркивания заблокированных.
Участник:A particle for world to form/pathelper.js сентябрь 2017 Добавляет кнопку «открыть всё во вкладках» на страницы «Служебная: Непроверенные страницы» и «Служебная: Ожидающие проверки изменения».
Участник:Ignatus/patlinkshl.js июнь 2017 Скрипт для подсветки ссылок на непатрулированные страницы.
Участник:Менделеевец99/JS/DisambigFIOLib.js февраль 2017 Помогает участнику создавать стандартную часть вики-текста страниц неоднозначности вида «Фамилия, Имя» и «Фамилия, Имя Отчество» с применением шаблона {{NL}}, как это принято в русской Википедии (описание скрипта).
Участник:Дима74/yoficator.js февраль 2017 Скрипт для ёфикации Википедии. В интерактивном режиме производит ёфикацию случайных статей, либо некоторой определённой статьи. Инструкция по установке и использованию.
Участник:Всеслав Чародей/Помощник патруля.js январь 2017 Убирает подсветку неотпатрулированных изменений на страницах истории для автопатрулируемых участников.
Участник:GreatMusicLover/prosesize.js январь 2017 Добавляет в сайдбар ссылку на информацию о странице (размер, размер видимого текста, количество слов).
Участник:Track13/archiveurl.js декабрь 2016 Для каждой внешней ссылки в разделах ссылок добавляет набор ссылок для поиска данной страницы в нескольких веб-архивах.
Участник:X0stark69/wikificator+.js ноябрь 2016 Жёсткий (производит замены в любых местах статьи, могут быть некорректны) викификатор для нужд ПРО:ВО: выравнивает карточки, стандартизирует параметры, производит мелкие рутинные улучшения.
Участник:Vort/highlight.js ноябрь 2016 Добавляет в меню «Инструменты» пункт «Вкл. подсветку», позволяющий выделять неразрывные пробелы в статьях оранжевым цветом.
Участник:Jack who built the house/proceedToArchive.js октябрь 2016 Если тема не найдена на странице, предлагает поискать её в архиве. (Это одна половина решения проблемы устаревающих ссылок на обсуждения; другая — {{subst:fa}}.)
Участник:Iniquity/exit.js июль 2016 Выводит подтверждение выхода.
Участник:Gamliel Fishkin/purgetab.js май 2016 Добавляет вкладку «Очистить кэш-память».
Участник:Jack who built the house/copyWikilinks апрель 2016 Скрипт для быстрого копирования вики-ссылок на текущую страницу и раздел, а также на страницы по ссылкам. Работает по нажатию клавиш.
Участник:Jack who built the house/copy headings.js март 2016 Делает так, чтобы при тройном клике на заголовках страницы и разделов и копировании выделенного не копировался текст «[править | править вики-текст]», а для разделов копировался их полный путь (проверялось только в Хроме).
Участник:Jack who built the house/discussion_indentation.js октябрь 2015 (Автор: Сунприат.) Добавляет в панель инструментов редактора кнопку, добавляющую звёздочки в обсуждения.
Участник:Mahairod/morphlink.js август 2015 Проставление вики-ссылки на основе начальных форм слов, входящих в ссылку (морфологический анализ). Таким образом может корректно проставлять ссылки даже на ещё не написанные статьи.
Участник:Stjn/unformat.js июль 2015 Чистит оформление подписей участников, отличное от стандартного.
en:User:Theopolisme/Scripts/ajaxWatchlist.js июнь 2015 Автоматическое обновление списка наблюдения. Документация
Участник:Nitobus/div.GoogleMap.js апрель 2015 Скрипт, обеспечивающий функциональность блочного элемента управления div.GoogleMap, предназначенного для отображения на страницах Википедии карт Google, а также возможности отрисовки маркеров и треков на картах. Документацию по div.GoogleMap можно найти в Участник:Nitobus/div.GoogleMap.
Участник:Abiyoyo/ShowCurId.js март 2015 Короткие ссылки на статьи из меню «Печать/экспорт».
Участник:D.bratchuk/MediaWiki:Gadget-Statistics.js февраль 2015 Добавляет в панель «Инструменты» в левой колонке ссылку «Статистика посещений» для статей из основного пространства.
Участник:Jack who built the house/hide_sidebar.js январь 2015 (Автор: Сунприат.) Добавляет в верхнюю панель кнопку, с помощью которой можно скрыть/показать левое навигационное меню и растянуть основной текст на его место. Полезно на узких экранах и когда окно браузера достаточно узкое.
Участник:Abiyoyo/ShowStatus.js июль 2014 Примитивный скрипт, отражающий состояние проектных шаблонов в статье.
Участник:Absconditus/rfsd.js июль 2014 Упрощение вынесения статей к быстрому удалению.
Участник:BattlePeasant/dclink.js июнь 2014 После ссылок на личную страницу добавляет ссылки на обсуждение и вклад участников «Участник (о • в)». Параметры: var displaySignature = 'glamour' — не изменять вид подписи; var displaySignature = 'nickname' — ник, установленный участником, без оформления; var displaySignature = 'user' — имя пользователя.
Участник:BattlePeasant/cattreetable.js октябрь 2013 предлагался для включения в ВП:Глобальный код как более удобный аналог <categorytree>. Индивидуальное использование смысла не имеет.
Участник:Absconditus/rfd.js июнь 2013 Упрощение вынесения статей к удалению.
Участник:Absconditus/reporter.js июнь 2012 Быстрый вынос на ЗКА/ЗС.
Участник:DonRumata/ai2.js май 2012 Упрощает простановку {{АИ2}}.
Участник:Ignatus/shiftrefs.js март 2012 Обеспечивает положение ссылок на сноски над знаком препинания, не позволяя ему отрываться от текста.
Участник:Кикан/highlightLastMessages ноябрь 2011 Выделяет (другим цветом фона) новые сообщения на страницах обсуждений (после последнего их посещения). Используется с настройками var highlightMessagesAfterLastVisit = true; var messagesHighlightColor = "#bbffbb";.
Участник:Js/rcUnreviewedRows октябрь 2011 Раскрашивает в СН строки в зависимости от их патрулированности.
Участник:Js/rcExtraData сентябрь 2011 Добавляет под списком наблюдения выборки из журналов новых страниц и срабатываний фильтров.
Участник:Dhārmikatva/hate.js август 2011 Меняет на серый цвет шрифта вкладки «Обсуждение», если там нет ничего, кроме шаблонов.
Участник:OneLittleMouse/warnings.js ноябрь 2010 Быстрая простановка некоторых распространённых предупреждений.
Участник:Krassotkin/itogo.js август 2010 Кнопки для подводящих итоги.
Участник:Krassotkin/incubatorExpert.js июль 2010 Кнопки для опытных участников.
Участник:Krassotkin/incubatorBeginner.js июль 2010 Кнопки для участников-новичков.
Участник:Александр Дмитриев/comments in local time ru.js май 2010 Меняет в таймстампах сообщений в обсуждениях время на ваше локальное.
Участник:VasilievVV/links.js февраль 2010 Добавляет в левое меню две дополнительные панели с информацией о странице/участнике.
en:User:Lenore/autolink.js июнь 2009 Делает кликабельными внутренние, внешние и шаблонные ссылки в диффах, описаниях правок и прочих логах (внимание: конфликтует с гаджетом зачёркивания заблокированных до полного дефейса диффов с участием последних).
Участник:Alex Smotrov/histcomb.js июль 2007 Группирование последовательных правок одного участника вместе.

Другие коды[править код]

  •  
    var media_query = window.matchMedia("screen and (min-width:1280px)");
    if (media_query.matches) {
    	тут вызов отключаемых скриптов
    }
    
    Отключает перечисленные внутри скрипты для устройств с шириной экрана меньше заданной. Может использоваться для отключения выполнения скриптов на телефонах и прочих маломощных устройствах, которые слишком долго обрабатывают все скрипты.
  •  
    if (typeof window.orientation == 'undefined') {
    	тут вызов отключаемых скриптов
    }
    
    Отключает перечисленные внутри скрипты для мобильных телефонов и таблетов.
  •  
    if ($('body').hasClass('ns-special') && location.href.match(/(\/block|type\=block)/)) {
    	$(function () {
    		$('.ns-special a[title="Участник:QBA-bot"]').parent().hide();
    	});
    }
    
    Удаляет из лога блокировок перечисленных ботов-проксиблокировщиков.
  • Дополнительные кнопки быстрой вставки описания правки.
  • Википедия:Визуальный редактор#Сокращение названия «Править исходный текст»
  •  
    // Дополнительный редактор TemplateData [[:en:User:NicoV/TemplateDataEditor]] не совсем актуальный, но функций больше, чем в стандартном редакторе
    // На страницах шаблонов в редактировании на панель инструментов добавляется кнопка [TDE]
    // Для начала работы теги <templatedata></templatedata> должны быть уже размещены в тексте
    mw.loader.load('//fr.wikipedia.org/w/index.php?title=User:Ltrlg/scripts/TemplateDataEditor.js&action=raw&ctype=text/javascript');
    
  •  
    // Формирование TemplateData
    // На страницах шаблонов слева, в инструментах появляется строка TD Skeleton
    mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Salix alba/TDSkell.js&action=raw&ctype=text/javascript');
    
  • Добавление дополнительных кнопок в самое верхнее меню:
    $(function () {
    	$( '#расположение' ).before( '<li><a href="URL ссылки">Текст ссылки</li>' );
    });
    
Замените расположение на значение из списка ниже (сохранив знак #). Кнопка будет расположена перед:
  1. pt-userpage — ЛС
  2. pt-mytalk — ЛСО
  3. pt-sandbox — Черновик
  4. pt-preferences — Настройки
  5. pt-betafeatures — Бета
  6. pt-watchlist — СН
  7. pt-mycontris — Вклад
  8. pt-logout — Выйти
Или используйте встроенную в MediaWiki функцию mw.util.addPortletLink.
  • Чтобы изменить подстраницу, на которую ведёт ссылка «Черновик», а также при желании текст ссылки и всплывающую подсказку, добавьте в свой личный common.js следующий код, заменив желаемое название подстраницы, текст ссылки и всплывающей подсказки соответственно:
    var draftSubpageName = 'Черновик';  // название подстраницы
    var draftLinkCaption = 'Черновик';  // текст ссылки
    var draftLinkTooltip = 'Ваш черновик';  // текст всплывающей подсказки
    mw.loader.using('mediawiki.util', function () {
    	var url = mw.util.getUrl('Участник:' + mw.config.get('wgUserName') + '/' + draftSubpageName, { redirect: 'no' });
    	$('#pt-sandbox a').attr('href', url).removeClass('new').text(draftLinkCaption).attr('title', draftLinkTooltip);
    });
    
  • Настройка количества навигационнных шаблонов, развёрнутых по умолчанию (если у них не задано значение |state = collapsed): var NavigationBarShowDefault = желаемое_значение; (переопределяет значение из MediaWiki:Common.js).
  • Чтобы изменить подпись, добавляемую кнопкой в панели инструментов вики-редактора, используйте mw.config.set('mw.msg.wikieditor', '~~\~~'); с нужной вам подписью.
  • Подтверждение выхода:
    $(function () {
        $('#pt-logout > a').off();
    });
    
  • Возвращение звёздочки в список наблюдения: $( '.updatedmarker' ).text( '✱' );

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

Старое[править код]

Примечания[править код]

  1. Если вы импортируете скрипт с другой страницы с помощью importScript или копируете чужой, обратите внимание, что скрипт может содержать вредоносный код.