ВикиЗакладки/Справка — различия между версиями

Материал из YourcmcWiki
Перейти к: навигация, поиск
(WikiBookmarks: load help page)
(WikiBookmarks: load help page)
Строка 1: Строка 1:
'''ВикиЗакладки''' (''WikiBookmarks'') расширение '''MediaWiki''', позволяющее управлять публичными
+
'''ВикиЗакладки''' (''WikiBookmarks'') — расширение '''MediaWiki''', позволяющее управлять публичными
списками закладок с помощью Wiki-статьи.
+
списками закладок с помощью Wiki-статьи. Автор расширения — [http://yourcmc.ru/wiki/User:VitaliyFilippov Виталий Филиппов].
 +
Расширение распространяется по лицензии GPL (3-ей или более поздней версии).
  
На странице [[Служебная:Bookmarks]] вы всегда можете (точнее, уже смогли) найти свежую версию
+
На странице [[Служебная:Bookmarks]] Вы всегда можете (точнее, уже смогли :-)) найти свежую версию
справочной информации по ВикиЗакладкам:
+
справочной информации по ВикиЗакладкам.
  
'''ВикиЗакладки''' используются в виде небольшого букмарклета
+
'''ВикиЗакладки''' используются в виде небольшого Javascript-букмарклета ([http://ru.wikipedia.org/wiki/Букмарклет что такое букмарклет?]).
([http://ru.wikipedia.org/wiki/Букмарклет что такое букмарклет?]).
+
 
Чтобы установить такой букмарклет себе в браузер, введите название страницы,
 
Чтобы установить такой букмарклет себе в браузер, введите название страницы,
 
на которой Вы хотели бы поддерживать список своих закладок (по умолчанию [[{{ns:User}}:{{USERNAME}}/Закладки]]),
 
на которой Вы хотели бы поддерживать список своих закладок (по умолчанию [[{{ns:User}}:{{USERNAME}}/Закладки]]),
Строка 13: Строка 13:
  
 
Далее, находясь на любой странице, которую Вы хотели бы запомнить на странице '''ВикиЗакладок''',
 
Далее, находясь на любой странице, которую Вы хотели бы запомнить на странице '''ВикиЗакладок''',
просто нажмите на добавленную в браузер кнопку. '''ВикиЗакладки''' запомнят адрес текущей страницы,
+
просто нажмите на добавленную в браузер кнопку. '''ВикиЗакладки''' запоминают адрес текущей страницы,
 
её заголовок и выделенный на странице текст, если таковой имеется.
 
её заголовок и выделенный на странице текст, если таковой имеется.
  
<html><input type="text" id="wb_page" size="20" value="</html>{{ns:User}}:{{USERNAME}}<html>/Закладки" />&nbsp;<input type="button" value="Вывести ссылку" onclick="wb_make_link()" />
+
Новые закладки добавляются в список вверху статьи, под несколькими уровнями заголовков.
 +
По умолчанию это заголовки «== Год ==» и его дочерний «=== Месяц Год ===» («%Y» «%B %Y»).
 +
Предполагается, что это используется для классификации закладок по датам. Если Вы хотите изменить
 +
количество и/или формат заголовков, нужно добавить в начало страницы закладок комментарий вида
 +
<pre><!--BookmarkHeadings:"%Y" "%Y-%m" "%Y-%m-%d"--></pre>
 +
Из этого комментария '''ВикиЗакладки''' вырезают все строки, заключённые в кавычки, и используют
 +
их в качестве заголовков последовательных уровней. Формат строк совпадает с форматом функции PHP
 +
[http://php.net/manual/en/function.strftime.php strftime()] (на самом-то деле это функция libc, но это не важно).
 +
 
 +
Также Вы можете изменить формат самих даты-времени, отображаемых перед текстом каждой закладки.
 +
Для этого в начало страницы закладок нужно добавить комментарий вида
 +
<pre><!--BookmarkDate:"%d %H:%M:%S"--></pre>
 +
Строка, указанная в кавычках внутри комментария, и будет принята за формат даты-времени закладок.
 +
 
 +
<!-- The following is HTML+JavaScript code for creating bookmarklet. It is localized using {{MediaWiki:msgid}} templates and copy-pasted among all *.wikitext files. -->
 +
<html><div style="display:inline-block"><label for="wb_page"><b></html>{{MediaWiki:wikibookmarks-page-editlabel}}<html></b></label><br/>
 +
<input type="text" id="wb_page" size="20" value="</html>{{ns:User}}:{{USERNAME}}/{{MediaWiki:wikibookmarks-bookmarks-page}}<html>" /></div>
 +
<div style="display:inline-block"><label for="wb_text"><b></html>{{MediaWiki:wikibookmarks-text-editlabel}}<html></b></label><br/>
 +
<input type="text" id="wb_text" size="20" value="</html>{{MediaWiki:wikibookmarks-default-text}}<html>" /></div>
 +
<input type="button" value="</html>{{MediaWiki:wikibookmarks-make-link}}<html>" onclick="wb_make_link()" />
 
<div id="wb_link_div" style="font-weight: bold"></div>
 
<div id="wb_link_div" style="font-weight: bold"></div>
 
<script language="JavaScript">
 
<script language="JavaScript">
 
function wb_make_link()
 
function wb_make_link()
 
{
 
{
  pg = document.getElementById("wb_page").value;
+
  var pg = document.getElementById("wb_page").value;
 +
var t = document.getElementById("wb_text").value;
 
  if (pg == "")
 
  if (pg == "")
 
  {
 
  {
   alert("Имя страницы не должно быть пустым!");
+
   alert("</html>{{MediaWiki:wikibookmarks-page-empty}}<html>");
 
   return;
 
   return;
 
  }
 
  }
 
  var d = document.getElementById("wb_link_div");
 
  var d = document.getElementById("wb_link_div");
 
  d.innerHTML = "";
 
  d.innerHTML = "";
  d.appendChild(document.createTextNode("Перетащите следующую ссылку на панель своего браузера:"));
+
  d.appendChild(document.createTextNode("</html>{{MediaWiki:wikibookmarks-drag-bookmarklet}}<html>"));
 
  d.appendChild(document.createElement('br'));
 
  d.appendChild(document.createElement('br'));
 
  d.appendChild(document.createTextNode("[[ "));
 
  d.appendChild(document.createTextNode("[[ "));
Строка 36: Строка 56:
 
var p=location.protocol;\
 
var p=location.protocol;\
 
if(p=='chrome:'||p=='about:'||p=='javascript:'){return '<meta http-equiv=%22Refresh%22 content=%220; http://</html>{{SERVERNAME}}{{SCRIPTPATH}}<html>/index.php?title="+encodeURI(encodeURI(pg))+"%22 />';}\
 
if(p=='chrome:'||p=='about:'||p=='javascript:'){return '<meta http-equiv=%22Refresh%22 content=%220; http://</html>{{SERVERNAME}}{{SCRIPTPATH}}<html>/index.php?title="+encodeURI(encodeURI(pg))+"%22 />';}\
window.open('about:blank','WikiBookmarks','width=400,height=150,menubar=no,location=no,resizable=yes,scrollbars=no');\
+
var w = window.open('about:blank','WikiBookmarks','width=400,height=150,menubar=no,location=no,resizable=yes,scrollbars=no');\
var f = document.createElement('form');\
+
var f = w.document.createElement('form');\
f.target = 'WikiBookmarks';\
+
 
f.method = 'POST';\
 
f.method = 'POST';\
 
f.acceptCharset = 'UTF-8';\
 
f.acceptCharset = 'UTF-8';\
Строка 44: Строка 63:
 
f.innerHTML = %22<input type='hidden' name='page' value='"+encodeURI(pg)+"' /><input type='hidden' name='url' value='%22+(''+location.href).replace(%22'%22, %22%2527%22)+%22' />\
 
f.innerHTML = %22<input type='hidden' name='page' value='"+encodeURI(pg)+"' /><input type='hidden' name='url' value='%22+(''+location.href).replace(%22'%22, %22%2527%22)+%22' />\
 
<input type='hidden' name='urltitle' value='%22+(''+document.title).replace(%22'%22, %22%2527%22)+%22' /><input type='hidden' name='selection' value='%22+\
 
<input type='hidden' name='urltitle' value='%22+(''+document.title).replace(%22'%22, %22%2527%22)+%22' /><input type='hidden' name='selection' value='%22+\
(function(){var u;if(window.getSelection){u=window.getSelection();}else if(document.selection){u=document.selection.createRange();}else{return '';}if(u.getRangeAt){u=u.getRangeAt(0);}if(u.cloneContents){u=u.cloneContents();d=document.createElement('div');d.appendChild(u);u='%3Chtml>'+d.innerHTML+'%3C/html>';}else if(u.text){u=u.text;}return (''+u).replace(%22'%22, %22%2527%22);}())+\
+
(function(){var u;if(window.getSelection){u=window.getSelection()}else if(document.selection){u=document.selection.createRange()}else{return ''}if(u.getRangeAt){u=u.getRangeAt(0)}if(u.cloneContents){u=u.cloneContents();d=document.createElement('div');d.appendChild(u);if(d.innerHTML==''){u=''}else{u='%3Chtml>'+d.innerHTML+'%3C/html>'}}else if(u.text){u=u.text}return (''+u).replace(%22'%22, %22%2527%22);}())+\
 
%22' />%22;\
 
%22' />%22;\
document.body.appendChild(f);\
+
w.document.body.appendChild(f);\
 
f.submit();\
 
f.submit();\
 
return;\
 
return;\
 
}())";
 
}())";
  a.innerHTML = 'В ВикиЗакладки';
+
  a.innerHTML = t;
 
  d.appendChild(a);
 
  d.appendChild(a);
 
  d.appendChild(document.createTextNode(" ]]"));
 
  d.appendChild(document.createTextNode(" ]]"));

Версия 03:31, 22 января 2010

ВикиЗакладки (WikiBookmarks) — расширение MediaWiki, позволяющее управлять публичными списками закладок с помощью Wiki-статьи. Автор расширения — Виталий Филиппов. Расширение распространяется по лицензии GPL (3-ей или более поздней версии).

На странице Служебная:Bookmarks Вы всегда можете (точнее, уже смогли :-)) найти свежую версию справочной информации по ВикиЗакладкам.

ВикиЗакладки используются в виде небольшого Javascript-букмарклета (что такое букмарклет?). Чтобы установить такой букмарклет себе в браузер, введите название страницы, на которой Вы хотели бы поддерживать список своих закладок (по умолчанию Участник:3.142.98.111/Закладки), нажмите кнопку Вывести ссылку и перетащите появившуюся ссылку себе на панель инструментов браузера или добавьте её в закладки браузера.

Далее, находясь на любой странице, которую Вы хотели бы запомнить на странице ВикиЗакладок, просто нажмите на добавленную в браузер кнопку. ВикиЗакладки запоминают адрес текущей страницы, её заголовок и выделенный на странице текст, если таковой имеется.

Новые закладки добавляются в список вверху статьи, под несколькими уровнями заголовков. По умолчанию это заголовки «== Год ==» и его дочерний «=== Месяц Год ===» («%Y» «%B %Y»). Предполагается, что это используется для классификации закладок по датам. Если Вы хотите изменить количество и/или формат заголовков, нужно добавить в начало страницы закладок комментарий вида

<!--BookmarkHeadings:"%Y" "%Y-%m" "%Y-%m-%d"-->

Из этого комментария ВикиЗакладки вырезают все строки, заключённые в кавычки, и используют их в качестве заголовков последовательных уровней. Формат строк совпадает с форматом функции PHP strftime() (на самом-то деле это функция libc, но это не важно).

Также Вы можете изменить формат самих даты-времени, отображаемых перед текстом каждой закладки. Для этого в начало страницы закладок нужно добавить комментарий вида

<!--BookmarkDate:"%d %H:%M:%S"-->

Строка, указанная в кавычках внутри комментария, и будет принята за формат даты-времени закладок.