ListFeed/ru

From Wiki4Intranet
< ListFeed
Revision as of 18:44, 12 February 2013 by VitaliyFilippov (Talk | contribs) (Split extension page to semantic data and russian description)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
This is a page snapshot, showing old (but not deleted) versions of images and templates.
Jump to: navigation, search

Власти Израиля предписали ООН и населению переместиться в южную часть Газы ООН: власти Израиля предписали ООНовцам и населению перейти в южную часть Газы Разрушения в результате израильских авиаударов в Газе - РИА Новости, 1920, 13.10.2023 © AP Photo / Fatima Shbair Разрушения в результате израильских авиаударов в Газе. Архивное фото Читать ria.ru в ООН, 13 окт — РИА Новости. Израиль предписал населению, а также ооновцам на севере сектора Газа переместиться в течение 24 часов в его южную часть, сообщил РИА Новости официальный представитель генсека ООН Стефан Дюжаррик. « "Сегодня (12 октября) незадолго до полуночи по местному времени руководители групп Управления ООН по координации гуманитарных вопросов и Департамента охраны и безопасности в Газе были проинформированы своими связными офицерами в израильских вооруженных силах, что все население Газы к северу от Вади Газа должно перебраться на юг Газы в течение следующих 24 часов", — сказал Дюжаррик.

Это, по его словам, примерно 1,1 миллиона человек. "Тот же приказ распространяется на всех сотрудников ООН и тех, кто находится в учреждениях ООН, включая школы, медицинские центры и клиники. ООН считает, что такое передвижение невозможно без разрушительных гуманитарных последствий", — отметил собеседник агентства. Как заявил Дюжаррик, "ООН решительно призывает отменить такой приказ", иначе уже случившаяся трагедия может превратиться в катастрофическую ситуацию, заключил представитель генсека. Последствия ударов ХАМАС по Израилю

Рано утром 7 октября в южной и центральной частях Израиля прозвучали сирены воздушной тревоги.

© AP Photo / Fatima Shbair 1 из 9 Конфликт между Израилем и ХАМАС Утром 7 октября Израиль подвергся беспрецедентной по масштабу ракетной атаке из сектора Газа. После массированного обстрела бойцы ХАМАС проникли в приграничные районы на юге еврейского государства. Военное крыло ХАМАС объявило о проведении операции "Потоп Аль-Аксы". В ответ Армия обороны Израиля (ЦАХАЛ) сообщила о начале операции "Железные мечи" в секторе Газа. В течение нескольких дней после нападения израильские военные взяли под контроль все населенные пункты у границы с Газой и начали наносить авиаудары по объектам, в том числе гражданским, на территории сектора. Помимо этого, Тель-Авив объявил о полной блокаде Газы: приостановлены поставки воды, продуктов питания, электричества, медикаментов и топлива. Зенитный ракетный комплекс Patriot на севере Израиля - РИА Новости, 1920, 13.10.2023 В ООН назвали количество палестинцев, покинувших свои дома 02:59 Число погибших мирных граждан с каждой стороны превысило тысячу, несколько тысяч израильтян и палестинцев получили ранения. Сообщалось о нескольких погибших и пропавших без вести россиянах, а также гражданах других стран. В плену у ХАМАС могут находиться, по разным данным, около 150 израильтян.

МИД России призвал стороны прекратить боевые действия. По словам Владимира Путина, урегулирование ближневосточного кризиса возможно исключительно на основе утвержденной Советом Безопасности ООН "двугосударственной" формулы, которая предусматривает создание независимого палестинского государства в границах 1967 года со столицей в Восточном Иерусалиме. Палестино-израильский конфликт связан с территориальными интересами сторон и много десятилетий остается источником напряженности и боестолкновений в регионе. Решением ООН при активной роли СССР в 1947 году было определено создание двух государств — Израиля и Палестины, но создано было только израильское. Израиль, декларируя согласие с принципом двух государств, не освободил окончательно палестинские территории.

МОСКВА, 12 окт - РИА Новости. Российские миротворцы с 19 сентября свернули семь наблюдательных постов и еще 15 временных в Аскеранском, Шушинском, Мартунинском и Мардакертском районах Нагорного Карабаха, сообщается в бюллетене Минобороны РФ. "Всего с 19 сентября 2023 года свернуты семь наблюдательных и 15 временных наблюдательных постов российских миротворцев в Аскеранском, Шушинском, Мартунинском и Мардакертском районах. При участии российских миротворцев продолжаются работы по восстановлению электро- и газоснабжения населенных пунктов Нагорного Карабаха", - говорится в сообщении. Уточняется, что за сутки в связи с разоружением и роспуском вооруженных формирований Нагорного Карабаха свернут один наблюдательный пункт миротворцев РФ в Шушинском районе. Отмечается, что нарушений режима прекращения огня в зоне ответственности российского миротворческого контингента не зафиксировано.

Использование

Расширение добавляет два новых тега — <listfeed> и <endlistfeed />, а также функцию парсера {{#listfeedurl:Feed Name}}, которая возвращает URL RSS-ленты, сгенерированной расширением из списка с заданным именем. Расширение позволяет легко превратить любой маркированный или нумерованный Wiki-список в RSS-ленты, которая автоматически обновляется при обновлении статьи.

Каждый элемент списка становится отдельной записью ленты.

  • Заголовком записи становится первая строка текста элемента списка.
  • Текстом записи — всё остальное, если оно присутствует, и просто весь текст элемента списка, если нет.
  • Дата записи разбирается в соответствии с заданным регулярным выражением (см. ниже) и вырезается из заголовка.
  • Ссылкой записи становится первая ссылка в тексте, за исключением даты, так как в дате может присутствовать ссылка на автора, например, если используются стандартные подписи (~~~~). Если ссылок в тексте нет, используется ссылка на статью с уникальным якорем (anchor) для идентификации записи.
  • Автором записи становится первая ссылка в пространство имён [[Участник:]] из текста элемента списка, либо автор последней ревизии статьи.

Ленты идентифицируются по именам (<listfeed name="ИМЯ_ЛЕНТЫ">) и помещаются в один каталог, поэтому в пределах одной Wiki-системы две ленты с одинаковыми именами будут перезаписывать друг друга при каждом обновлении страницы. Описанием ленты служит любой Wiki-код, заключённый в тег <listfeed> — он преобразуется в HTML и включается в RSS-элемент <about>.

Чтобы начать использовать ListFeed, добавьте тег <listfeed> перед вашим списком:

<listfeed name="ИМЯ_ЛЕНТЫ" [ОПЦИИ]>
ОПИСАНИЕ_ЛЕНТЫ
</listfeed>

И тег <endlistfeed> после списка:

<endlistfeed />

Чтобы вставить ссылку на ленту в текст статьи, нужно использовать функцию парсера:

{{#listfeedurl:ИМЯ_ЛЕНТЫ}}

На данный момент доступны две опции, связанные с разбором дат элементов ленты.

Опция date

<listfeed date="ВЫРАЖЕНИЕ">.

Рядом с каждым элементом вашего списка, скорее всего, будет стоять дата. Однако, в каком она формате? Для установки формата с помощью специального регулярного выражения для разбора дат и служит эта опция. По умолчанию выбирается выражение для разбора стандартных подписей (~~~~):

^(?:[^:]+|<[^<>]*>)*%H:%M(?::%S)?,\s*%d\s+%b\s+%Y(?:\s*\(UTC\))?(?:\s*:?)

ВЫРАЖЕНИЕ похоже на обычные Perl-совместимые регулярные выражения, однако, кроме стандартных инструкций, включаемых в регулярные выражения, оно также может содержать большинство strftime(3)-подобных подстановок (см. ниже полный список поддерживаемых подстановок) и, таким образом, является как бы «обратной функцией» к strftime(3).

На данный момент поддерживаются следующие подстановки strftime:

%Yгод (4 цифры)
%yгод (2 цифры)
%Cвек (2 цифры), может использоваться вместе с %y, по умолчанию выбирается текущий век, если выделенный год и текущий год лежат в одной половине века, и предыдущий/следующий, если в разных
%mмесяц (2 цифры, от 01 до 12)
%b / %Bимя месяца — либо полное (Январь, Января, January), либо сокращённое (Янв, Jan)
%dдень месяца (2 цифры)
%eдень месяца (1 или 2 цифры)
%H / %hчасы
%Mминуты
%Sсекунды
%sUNIX время — количество секунд, прошедших с начала Эпохи UNIX (1970-01-01 00:00:00)
%%символ %

Прочие подстановки strftime признаны либо слишком специальными, либо производными от вышеупомянутых и поэтому отдельно не поддерживаются.

Опция headingdate

<listfeed headingdate="ВЫРАЖЕНИЕ">.

Даты, или их части, также могут быть заданы в заголовках между элементами. Предположим статью со следующим текстом:

<listfeed name="News of extension" date="^%b %d:\s*" headingdate="%Y" />
= 2010 news =
* Jan 13: New version of ListFeed.
* Jan 01: Happy New Year!
= 2009 news =
* Dec 17: ...
* ...
<endlistfeed />

В данном случае даты не могут быть взяты целиком из каждого элемента, однако, год каждой даты со всей очевидностью присутствует в заголовке, поэтому и требуется разбирать его тоже. Для приведённого примера, выражение headingdate="%Y" абсолютно корректно.

Пример использования

Новости от Виталия Филиппова о разработке ListFeed.

  • VitaliyFilippov 12:12, 17 февраля 2010 (UTC): Расширение упрощено и отлажено, написана справочная статья.
    Отлажен разбор описаний лент, ликвидирована лишняя возможность сохранения старых записей в базе данных, так как она обеспечивалась большим количеством хитрой логики по определению изменившихся записей и эта логика всё равно не покрывала весь диапазон ситуаций, что вело к появлению дублированных записей.
  • VitaliyFilippov 16:02, 16 сентября 2009 (UTC): Тест раскрытия ~~~~ и вообще PreSaveTransform.
  • Виталий Филиппов 20:16, 29 июля 2009: Отлажено расширение ListFeed. Готово к использованию.
  • Виталий Филиппов 14:11, 29 июля 2009: Создано расширение ListFeed. Отлаживаю.
    (текст записи) ListFeed — расширение для MediaWiki, позволяющее генерировать простые RSS-ленты из списков.

На выходе — вот такого вида лента: https://wiki.4intra.net/rss/Новости_расширения_ListFeed.rss.

Установка

Нужно добавить следующие строки в LocalSettings.php:

require_once("$IP/extensions/ListFeed/ListFeed.php");
// Необязательно:
$egListFeedFeedUrlPrefix = "<URL_к_директории_rss>"; // по умолчанию "$wgScriptPath/extensions/ListFeed/rss"
$egListFeedFeedDir = "<Путь_к_директории_rss>";      // по умолчанию "$IP/extensions/ListFeed/rss"