Инструменты пользователя

Инструменты сайта


wiki:plugin:wrap

Это старая версия документа!


Wrap для «ДокуВики»

Универсальный плагин, сочетающий в себе функционал многих других плагинов. Оберните вики-текст внутри контейнеров (divs или spans) и задайте им класс (выберите из множества предустановленных классов), ширину и/или язык с соответствующим направлением текста. Этот плагин дает вам возможность оборачивать вики-текст внутри контейнеров (div или span) и давать им

определенный класс (с множеством полезных предустановленных классов) ширина язык с соответствующим направлением текста Он потенциально заменяет множество других плагинов и, ИМХО, является лучшей альтернативой для многих.

Он полностью заменяет: class, clearfloat, div_span_shorthand, divalign2, divalign, emphasis, hide, important_paragraf, importanttext, lang, ltr, noprint, pagebreak, side_note, tip, wpre

Частично заменяет: box, button, color, columns, fontcolor, fontfamily, fontsize2, fontsize, highlight, layout, note, styler, tab, tablewidth, typography

Совместимость

  • WRAP экспортируются в формат ODT, но не все работает на 100%
  • Скругленные углы работают только в современных браузерах (без IE8 и ниже).
  • Несколько столбцов работают только в современных браузерах (без IE9 и ниже).
  • Классы ширины являются экспериментальными и работают только в современных браузерах (без IE8 и ниже).
  • Обычные заголовки «ДокуВики» раньше не работали, поэтому был добавлен обходной путь. Теперь, когда заголовки работают, обходной путь больше не нужен, но сохранен для обратной совместимости. Он устарел в версии 2018-04-22 и отключен по умолчанию. Их можно включить с помощью emulatedHeadlines параметра конфигурации. . Следующий синтаксис будет создавать два разных типа эмулируемых заголовков внутри любой обертки:
    • //**__Большой подчеркнутый заголовок__**// (В примечаниях по технике безопасности они будут выглядеть немного иначе.)
    • //**Малый заголовок**//
  • не включайте ~~DISCUSSION~~ в блок WRAP <color #ed1c24>noprint</color>

Монтаж

Используйте менеджер плагинов для установки или…

  1. скачать zip-файл
  2. распаковать его в<dokuwiki>/lib/plugins/
  3. войдите как администратор и измените плагин в менеджере конфигурации

Применение

Синтаксис

Основной синтаксис:

<WRAP classes #id width :language>
"big" content
</WRAP>

**or**
<block classes #id width :language>
"big" content
</block>

or
<div classes #id width :language>
"big" content
</div>

<WRAP> в верхнем регистре (или, альтернативно, <block> или <div>) создает div и должен использоваться для «больших» контейнеров, окружающих абзацы, списки, таблицы и т. д.

<wrap classes #id width :language>"small" content</wrap>

или
<inline classes #id width :language>"small" content</inline>

или
<span classes #id width :language>"small" content</span>

<wrap> в нижнем регистре (или альтернативно <inline> or <span>) создает span и должен использоваться для «маленьких» контейнеров, внутри абзацев, списков, таблиц и т. д.

Начиная с версии 2013-06-13 также используется сокращенный синтаксис (для оберток без содержимого):

<WRAP classes #id /> или <block classes #id /> или <div classes #id />

и

<wrap classes #id /> или <inline classes #id /> или <span classes #id />

:!: Обратите внимание, что некоторые вещи не будут работать с промежутками : выравнивание (включая выравнивание, созданное путем изменения направления текста), несколько столбцов и ширина, если соответствующий перенос также не плавает.

Примеры

Плагин поставляется с примером страницы, которая должна многое объяснить и выглядит так в шаблоне по умолчанию (см. ниже).

колонки

колонка 2

выделить (маркер)

пометить неважным

простой центрированный блок

Классы

На данный момент доступны следующие классы:

имя класса описание/примечания
columns – аналогично columns, side_note, styler, tip
column так же, как left в языках LTR и так же, как right в языках с письмом справа налево
left то же, что и column, позволит вам разместить контейнер слева
right позволит контейнеру плавать правильно
center расположит контейнер в горизонтальном центре страницы
col2..col5 будет показывать текст в нескольких столбцах в зависимости от их количества (2, 3, 4 или 5), работает только в современных браузерах (без IE9 и ниже)
colsmall, colmedium, collarge также будет отображаться текст в нескольких столбцах, но в зависимости от их ширины (маленький, средний или большой), работает только в современных браузерах (без IE9 и ниже)
ширина :!: экспериментальная , может работать не так, как ожидалось, включает поддержку мобильных устройств
half подходит для двух столбцов подряд, следует использовать парами
third подходит для трех или двух столбцов подряд, следует использовать в тройках или вместе с twothirds
twothirds подходит для двух столбцов подряд при использовании вместе с third, один шириной 1/3, а другой шириной 2/3
quarter помещается в четыре столбца подряд, следует использовать в четырехугольниках
выравнивания — аналогично <color #22b14c>divalign , columns , styler</color> — :!: не работают с промежутками!
leftalign выравнивает текст по левому краю
rightalign выравнивает текст по правому краю
centeralign центрирует текст
justify оправдывает текст
коробки и заметки - аналогично <color #22b14c>коробке , заметке , подсказке</color>
box создает рамку вокруг контейнера (использует цвета из style.ini)
info (было information в предыдущих версиях) создает синее поле со значком информации
important создает оранжевое поле с важным значком
alert (было:!: warning в предыдущих версиях) создает красное поле со значком предупреждения
tip создает желтую коробку со значком подсказки
help создает фиолетовое поле со значком помощи
todo создает голубое поле со значком todo
download создает зеленое поле со значком загрузки
round добавляет закругленные углы к любому контейнеру с цветом фона или рамкой (работает только в современных браузерах, т.е. без IE )
danger создает красную заметку об опасности
warning создает оранжевое предупреждение о безопасности
caution создает предупреждение о безопасности желтого цвета
notice создает синее уведомление о безопасности
safety создает зеленую заметку о безопасности
метки — похожие на выделение , <color #22b14c>важный_параграф , важный текст</color>
hi помечает текст как выделенный
lo помечает текст как менее значимый
em помечает текст как особо выделенный
разнообразный
clear similar to clearfloat, похоже на <color #22b14c>clearfloat</color> , желательно использовать с div, т.е. с прописными <WRAP>буквами
tabs если обернуть список ссылок, они будут отображаться как вкладки
hide скрывает текст для CSS (текст по-прежнему будет отображаться в исходном коде, в несовременных браузерах и доступен для поиска)
noprint выводит текст на экран, но не на печать, аналогично <color #22b14c>noprint</color>
onlyprint отображает текст только в печатном виде, но не на экране
pagebreak принудительно открывает новую страницу в распечатках (не отображается на экране), аналогично <color #22b14c>разрыву страницы</color>
nopagebreak пытается избежать разрыва страницы в распечатках (не виден на экране)
spoiler показывает белый текст на белом фоне, который раскрывается только при его выделении; похоже на <color #22b14c>скрыть</color>
button при обертывании ссылки стилизует ее как кнопку
tablewidth устанавливает ширину таблиц внутри в зависимости от ширины обертки, частично заменяет <color #22b14c>ширину таблицы</color>
indent делает отступ в тексте, может использоваться вместо <color #22b14c>табуляции</color>
outdent «выступающий» текст, может быть частично использован вместо <color #22b14c>«выступающий»</color>
prewrap оборачивает текст внутри предварительно отформатированных блоков кода, аналогично <color #22b14c>wpre</color>

Возможно, вам придется настроить несколько классов в соответствии с потребностями вашего шаблона, особенно hi, lo and em. Если у вас темная или ярко окрашенная тема, используйте darkTpl параметр конфигурации ..

Классы легко настраиваются и расширяются. Любые пожелания приветствуются.

Ширина

Вы можете установить любую допустимую ширину для любого контейнера <WRAP> в верхнем регистре %, px, em, rem, ex, ch, vw, vh, pt, pc, cm, mm, in. Просто установите ширину до или после или с классами, например

<WRAP какой-то класс 50% другой класс>...

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

Вы также можете использовать ключевые слова ширины half, third, twothirds and quarter. Для правильной работы им нужна еще одна обертка вокруг них. Например

<WRAP group>
  <WRAP half column>...</WRAP>
  <WRAP half column>...</WRAP>
</WRAP>

приведет к появлению двух столбцов рядом друг с другом, которые будут располагаться друг под другом на небольших экранах и мобильных устройствах.

Якорь

Для определения привязки применяется следующий синтаксис:

<wrap #ankername />

Якорь доступен через: #ankername

Языки и текстовые направления

Вы можете изменить язык и направление контейнера, просто добавив двоеточие, за которым следует код языка, например:

<wrap :en>Этот текст явно помечен как английский.</wrap>

Направление текста (rtl, справа налево или ltr, слева направо) вставляется автоматически и зависит исключительно от языка. Список поддерживаемых в настоящее время языков взят из: http://meta.wikimedia.org/wiki/Template:List_of_language_names_ordered_by_code

Если вы хотите пометить текст с другим направлением текста, чем направление по умолчанию, вы должны использовать div, т.е. <WRAP>символы верхнего регистра. В противном случае выравнивание текста также не изменится.

Это делает его лучшей заменой ltrlang).

Файл CSS - lib/plugen/wrap/all.less

Скругление углов

/*____________ rounded corners ____________*/
/* (only for modern browsers) */
 
div.wrap_round {
    border-radius: 0.2em;
}
span.wrap_round {
    border-radius: 0.2em;
}

Демо

Вы можете увидеть демонстрацию плагина на demo.selfthinker.org.

«Примеры» (демо) на русском языке (для v2011-05-15).Источник .

Обновление

Для обновления удалите исходную папку lib/plugins/displaywikipage и установите новую версию, как указано выше.

Файл для загрузки

Лицензия

Переведенно на русский язык

Примеры для плагина Wrap

Базовый синтаксис

Набранный в верхнем регистре тег <WRAP> (или же <block> или <div>) трансформируется в div и используется для оформления «объёмных» контейнеров, отбивки абзацев, списков, таблиц и других подобных элементов.

<WRAP классы ширина :язык>
«объёмный» контент
</WRAP>
 
или
<block классы ширина :язык>
«объёмный» контент
</block>
 
или
<div классы ширина :язык>
«объёмный» контент
</div>

Набранный в нижнем регистре тег <wrap> (или же <inline> или <span>) трансформируется в span и используется для оформления «небольших» контейнеров, текста внутри абзацев, списков, таблиц и других подобных элементов.

<wrap классы ширина :язык>"небольшой" контент</wrap>
 
или
<inline классы ширина :язык>"небольшой" контент</inline>
 
или
<span классы ширина :язык>"небольшой" контент</span>

:!: Пожалуйста, имейте в виду, что некоторые эффекты невозможно получить, если спаны набраны в нижнем регистре:

  • выравнивание (включая варианты выравнивания, созданные с помощью изменения направления текста)
  • мультиколонки
  • и ширина

и соответствующий обрамляющий блок тоже не является float’ом.

Классы и стили

Колонки и float’ы

Колонки легко добавляются с введением класса column и указанием ширины. Например:

<WRAP column 30%>...контент...</WRAP>

Эмуляция заголовка 1-го уровня

Вы можете эмулировать заголовок 1-го уровня с помощью курсива, выделения жирным или подчёркивания, например, так:

//**__Эмуляция заголовка 1-го уровня__**//

Эмуляция заголовка 2-го уровня

Заголовок 2-го уровня без подчёркивания выглядит, например, так:

//**Эмуляция заголовка 2-го уровня**//

Если вам нужен текст, выделенный и курсивом, и жирным, просто используйте теги наоборот:

**//Нет заголовка//**

Разные варианты float’ов

Обычно используется только класс column, однако в случае более сложной вёрстки (когда речь идёт не только о колонках, но и о других классах, например о блоках и примечаниях), вы можете использовать несколько видов float'ов:

  • column — даёт тот же эффект, что и left для языков, использующих письмо слева направо, а также right для языков, использующих письмо справа налево;
  • left позволяет сдвинуть ваш обрамляющий блок влево;
  • right позволяет обрамляющему блоку сдвинуться вправо;
  • center помещает обрамляющий блок в центр страницы по горизонтали.

Ширина

Ширина может быть указана (однако, только в div'ах) в: %, px, em, ex, pt, pc, cm, mm, in, но в большинстве случаев вы будете использовать следующие варианты:

тип примерпримечание
%30%имеет смысл использовать в «резиновой» вёрстке
px420px имеет смысл использовать при фиксированной ширине дизайна, а также если используемый контейнер содержит изображения определённой ширины
em20emимеет смысл использовать, если вы хотите, чтобы ваш обрамляющий блок мог масштабироваться в зависимости от размера шрифта в адаптивных дизайнах

Таблица внутри колонки или блока будет всегда иметь 100% ширину. Таким образом возможно масштабировать таблицы и менять их месторасположение.

Чтобы этого избежать, нужно просто добавить <WRAP clear></WRAP> после последней колонки.

Те же варианты можно использовать и со спанами (так как каждый «плавающий» элемент автоматически является блочным элементом), однако большого смысла в этом не будет. :!: Обычно указание значения ширины для спана не даёт никакого видимого эффекта, но может иметь значение при использовании float'ов.

:!: Внимание: Установка ширины элемента зачастую приводит к тому, что элемент выглядит по-разному и разрывает дизайн в некоторых браузерах. Если вы не являетесь специалистом в разработке сайтов, проблемы использования разных блочных моделей могут быть вам непонятны. Просто попробуйте тестировать ваши колонки во всех основных браузерах и несколько уменьшите первоначальную ширину элементов.

Все эти варианты также применимы и с обрамляющими блоками типа блоков и примечаний (см. ниже).

Мультиколонки

В современных браузерах (Firefox, Chrome и Safari) вы можете использовать мультиколонки. Просто используйте col2 для 2 колонок, col3 для 3 колонок, col4 для 4 колонок, а col5 для 5 колонок.

:!: Примечание: создать мультиколонку внутри спана не получится.

Выравнивание

Можно использовать следующие типы выравнивания:

  • leftalign
  • rightalign
  • centeralign
  • justify

Текст, выравненный по левому краю…

…и по правому краю.

<WRAP centeralign>
Текст, выравненный по центру...
</WRAP>
 
<WRAP rightalign>
...и по правому краю.
</WRAP>

:!: Нельзя добавить выравнивание к span'ам.

Блоки и примечания

round box 570px center

  • box создаёт блок вокруг контейнера, по умолчанию используя цвета из файла шаблона style.ini (__background_alt__ и __text__);
  • любой из классов info, tip, important, alert, help, download, todo создаёт специальный контейнер с предупреждением, помеченным соответствующей иконкой;
  • для классов danger, warning, caution, notice, safety используются цвета сигнальной маркировки (без иконок);
  • round может добавляться к чему-угодно, имеющему цветную подложку или границу, однако работать такой код будет только в современных браузерах (не в Internet Explorer).

Информация

<WRAP info></WRAP>

Подсказка

<WRAP tip></WRAP>

Важно!

<WRAP important></WRAP>

Предупреждение!

<WRAP alert></WRAP>

Помощь

<WRAP round help></WRAP>

Скачать

<WRAP download></WRAP>

Список дел

<WRAP todo></WRAP>

Оповещения об опасности:

Опасность

<WRAP danger></WRAP>

Предупреждение

<WRAP warning></WRAP>

Осторожно!

<WRAP caution></WRAP>

Внимание!

<WRAP round notice></WRAP>

Безопасно

<WRAP round safety></WRAP>

Также блоки и примечания можно использовать внутри текстов со спанами, подобных этим: info, help, alert, important, tip, download, todo иround box, а также danger, warning, caution, notice, safety.

<wrap info>info</wrap>, <wrap help>help</wrap>, ...

Маркирование

Вы можете выделить текст ярким цветом, сделать более бледным или специально выделить.

Вы можете выделить текст <wrap hi>ярким цветом</wrap>, <wrap lo>сделать более бледным</wrap> или <wrap em>специально выделить</wrap>.

:!: В некоторых шаблонах такое выделение выглядит неаккуратным, поэтому рекомендуется действовать по ситуации.

Разное

indent — отступ вправо

Данный текст будет смещён вправо.

<wrap indent>Данный текст будет смещён вправо.</wrap>

outdent — отступ влево

Данный текст будет смещён влево.

<wrap outdent>Данный текст будет смещён влево.</wrap>

prewrap

Внутри этого блока слова будут переноситься на новую строку, несмотря на то, что все они написаны в одной строке.
<WRAP prewrap 250px>
<code>
Внутри этого блока слова будут переноситься на новую строку, несмотря на то, что все они написаны в одной строке.

</WRAP> </code>

spoiler

Так выглядит спойлер: Дарт Вейдер — отец Люка.

Так выглядит спойлер: <wrap spoiler>Дарт Вейдер –-- отец Люка.</wrap>

Чтобы прочесть текст внутри блока спойлера, его достаточно просто выделить.

hide — скрытие текста

Следующий текст скрыт: Иван, пожалуйста, проверьте это предложение.

Следующий текст скрыт: <wrap hide>Иван, пожалуйста, проверьте это предложение.</wrap>

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

pagebreak — разрыв страницы

Таким образом оформляется разрыв страницы:

Таким образом оформляется разрыв страницы: <WRAP pagebreak></WRAP>

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

nopagebreak

С помощью такого кода можно избежать разрыва страницы:

много связанного текста (например, длинная таблица)

С помощью такого кода можно избежать разрыва страницы: <WRAP nopagebreak>много связанного текста (например, длинная таблица)</WRAP>

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

noprint

Данный текст видно на экране, но он не выводится на печать.

<wrap noprint>Данный текст видно на экране, но он не выводится на печать.</wrap>

onlyprint

Данный текст не видно на экране, но он выводится на печать.

<wrap onlyprint>Данный текст не видно на экране, но он выводится на печать.</wrap>

Комбинирование и вложение

Вы можете комбинировать и вкладывать друг в друга все классы и все типы блоков. Например:

Внешний блок отодвигается вправо

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

Текст, располагающийся внутри внешнего правого блока под внутренним левым блоком.

Блок со скруглённой рамкой внизу, после clear.

<WRAP box 350px right :en>
//**__Внешний блок отодвигается вправо__**//
 
<WRAP 165px left>
Внутренний вложенный блок отодвигается влево, он частично <wrap em hi>__вы__делен и __под__чёркнут, а также содержит <wrap notice>__примечание__</wrap>внутри себя</wrap>.
</WRAP>
 
Текст, располагающийся внутри внешнего правого блока под внутренним левым блоком.
 
<WRAP clear></WRAP>
 
<WRAP round tip>
Блок со скруглённой рамкой внизу, после ''clear''.
</WRAP>
</WRAP>

Язык и направление текста

Изменить язык и направление текста в обрамляющем блоке можно просто добавив двоеточие и код необходимого языка. Например:

<WRAP :he>
זה עברית. ((Перевод: «Это --- иврит», так, по крайней мере, утверждает <wrap :en>[[http://translate.google.com/|Google Translate]]</wrap>.))
</WRAP>

זה עברית. 1)

Направление текста (rtl — справа налево или ltr — слева направо) подставится автоматически и будет зависеть только от выбранного языка. Этот список поддерживаемых в настоящий момент языков взят со страницы: Template:List of language names ordered by code. (Если вы укажете язык не входящий в список, тег просто не сработает).

О переводе

  1. Перевод осуществлён Анной Мартыновой и опубликован под лицензией CC-BY-SA.
  2. Описание актуально для версии v2011-05-15.
1)
Перевод: «Это — иврит», так, по крайней мере, утверждает Google Translate.
Только авторизованные участники могут оставлять комментарии.
wiki/plugin/wrap.1723151458.txt.gz · Последнее изменение: 2024/08/09 00:10 — vladpolskiy