DokuWiki

It's better when it's simple

사용자 도구

사이트 도구


ko:plugin:wrap

Wrap 플러그인

도쿠위키와의 호환성

2010-11-07 "Anteater", 2011-05-25 "Rincewind", 2012-01-25 "Angua", 2012-10-13 "Adora Belle", "Weatherwax", 2013-12-08 "Binky"

plugin 많은 다른 플러그인의 기능을 조합한 범용 플러그인입니다. 컨테이너(div나 span) 안의 위키 텍스트를 감싸고 클래스(프리셋 클래스의 다양한 선택), 너비와/나 언어와 관련된 텍스트 정렬을 줍니다.

마지막 업데이트 날짜
2014-02-04
제공
Syntax, Helper, Action
저장소
소스
다음과 충돌:
adhocwrap

이 확장 기능은 2년 넘게 업데이트되고 있지 않습니다. 더 이상 유지 보수하지 않거나 지원하지 않을 수 있으며 호환성 문제가 있을 수 있습니다.

This extension is not in the 'plugin' or 'template' namespace and is therefore ignored.

다음과 비슷: adhoctags, adhocwrap, admnote, alertbox, alignment, anchor, block, bootnote, bootswrapper, box, box2, button, class, clearer, clearfloat, color, columnlist, columns, comment, commentsrc, commentsyntax, div_span_shorthand, divalign, divalign2, emphasis, floatdiv, fontcolor, fontfamily, fontsize, fontsize2, hide, highlight, htmlcomment, htmldetailstag, important_paragraf, importanttext, instructions, jokuwiki, lang, layout, ltr, mikioplugin, noprint, note, outdent, pagebreak, passwordgrey, qna, side_note, spoiler, styler, tab, tablelayout, tablewidth, tip, typography, wpre

다음으로 태그됨: annotations, boxes, formatting, hide, highlight, icons, language, printing, style, typography

다음을 위해 필요함: jorgchart, lastcomp, newsboard, orgchart, pdftools, togglewrap, wrapadd

그들 모두의 역할이 있는 한 플러그인

이 플러그인은 컨테이너(div나 span) 안의 위키 텍스트를 감싸고 그들의

  1. (유용한 프리셋 클래스를 불러오는) 특정 클래스
  2. 너비
  3. 언어와 관련된 텍스트 정렬

을 주는 유용성을 줍니다

It potentially replaces a lot of other plugins and is IMHO the better alternative for many. There is one exception: It currently lacks ODT support. If you need ODT support, you might want to take a look at similar plugins.

다음은 모두 바꿉니다: class, divalign, div_span_shorthand, side_note, tip, clearfloat, emphasis, hide, important_paragraf, importanttext, noprint, pagebreak, wpre, lang, ltr
다음은 부분적으로 바꿉니다: box, layout, note, styler, typography, color, columns, fontcolor, fontfamily, fontsize, fontsize2, highlight, tab, tablewidth

설치

위에 주어진 URL을 사용하여 플러그인 관리자를 사용하여 플러그인을 다운로드하고 설치하세요. 플러그인을 수동으로 설치하는 방법은 Plugins을 참조하세요.

문법

기본 문법:

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

또는
<block classes #id width :language>
"big" content
</block>

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

대문자 <WRAP> (또는 대안으로 <block> 또는 <div>)은 creates a div and should be used for “big” containers, surrounding paragraphs, lists, tables, etc.

<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> 또는 <span>)은 creates a span and should be used for “small” containers, inside paragraphs, lists, tables, etc.

:!: Please note, some things won't work with spans: alignments (including alignments generated by changing the text direction), multi-columns and widths if the according wrap isn't floated as well.

The plugin comes with an example page, which should explain a lot and looks like this in the default template (see below).

클래스

The following classes are currently available:

class namedescription/notes
columns – similar to columns, side_note, styler, tip
column same as left in LTR languages and same as right in RTL languages
left same as column, will let you float your container on the left
right will let the container float right
center will position the container in the horizontal center of the page
col2..col5 will show the text in multiple columns (2, 3, 4 or 5), only works in modern browsers (Firefox, Chrome and Safari)
widths:!: experimental, might not work as expected, includes mobile support
half fits two columns in a row, should be used in pairs
third fits three columns in a row, should be used in triplets
quarter fits four columns in a row, should be used in quads
alignments – similar to divalign, columns, styler:!: don't work with spans!
leftalign aligns text on the left
rightalign aligns text on the right
centeralign centers the text
justify justifies the text
boxes and notes – similar to box, note, tip
box creates a box around the container (uses colours from style.ini)
info (was information in first version) creates a blue box with an info icon
important creates an orange box with an important icon
alert (:!: was warning in previous versions) creates a red box with a alert icon
tip creates a yellow box with a tip icon
help creates a violet box with a help icon
todo creates a cyan box with an todo icon
download creates a green box with a download icon
round adds rounded corners to any container with a background colour or a border (only works in modern browsers, i.e. no IE)
danger creates a red danger safety note
warning creates an orange warning safety note
caution creates a yellow caution safety note
notice creates a blue notice safety note
safety creates a green safety note
marks – similar to emphasis, important_paragraf, importanttext
hi marks text as highlighted
lo marks text as less significant
em marks text as especially emphasised
miscellaneous
clear similar to clearfloat, should preferably be used with divs, i.e. uppercase <WRAP>s
tabs if wrapped around a list of links, will show those as tabs
hide hides the text per CSS (the text will still appear in the source code, in non-modern browsers and is searchable)
noprint displays text on the screen, but not in print, similar to noprint
onlyprint displays text only in print, but not on the screen
pagebreak forces a new page in printouts (not visible on the screen), similar to pagebreak
nopagebreak tries to avoid a pagebreak in printouts (not visible on the screen)
spoiler shows white text on a white background, only to be revealed by highlighting it; similar to hide
indent indents the text, could be used instead of tab
outdent “outdents” the text, could partly be used instead of outdent
prewrap wraps text inside pre-formatted code blocks, similar to wpre

All tables inside a column or box will always be 100% wide. This makes positioning and sizing tables possible and partly replaces tablewidth.

알려진 제한

  • WRAPs won't export in ODT format.
  • Round corners only work in modern browsers (no IE8 and below).
  • Multiple columns only work in modern browsers (no IE9 and below).
  • Width classes are experimental and only work in modern browsers (no IE8 and below).
  • Normal DokuWiki Headlines used to not work and a work-around was added. Now that headlines do work, the work-around is not needed anymore but kept for backwards-compatibility. The following syntax would produce two different kinds of emulated headlines inside any of the columns or boxes/notes:
    • //**__Big Underlined Headline__**// (They will look a bit different in safety notes.)
    • //**Small Headline**//

You probably need to adjust a few of the classes to your template's needs, especially hi, lo and em if you have a dark or otherwise heavily coloured theme.

The classes are easily adjustable and extensible. Any wishes are welcome.

너비

You can set any valid widths on any uppercase <WRAP> container: %, px, em, ex, pt, pc, cm, mm, in. Just set the width before or after or with the classes, e.g.

<WRAP someclass 50% anotherclass>...

All except percentages will be reduced to have the maximum width available on smaller screens.

You can also use the width keywords half, third and quarter. To work correctly they need another wrap around them. E.g.

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

will result in two columns next to each other, which will wrap underneath each other on smaller screens and mobile devices.

언어와 텍스트 정렬

You can change the language and the direction of a container by simply adding a colon followed by the language code, like this:

<wrap :en>This text is explicitly marked as English.</wrap>

The text direction (rtl, right to left or ltr, left to right) will get inserted automatically and is solely dependent on the language. The list of currently supported languages is taken from: http://meta.wikimedia.org/wiki/Template:List_of_language_names_ordered_by_code

If you like to mark a text with a different text direction than the default one, you should use divs, i.e. uppercase <WRAP>s. Otherwise the text alignment won't change as well.

This makes it a better replacement of ltr (and lang).

데모

You can see a demo of the plugin on demo.selfthinker.org.

“Examples” (demo) in Russian (for v2011-05-15). Source.

환경 설정

Option Description Default value
noPrefix Which (comma separated) class names should be excluded from being prefixed with “wrap_” tabs, group
restrictedClasses restrict usage of plugin to these (comma separated) classes (empty)
restrictionType restriction type, specifies if classes above shall be included or excluded 0
syntaxDiv Which syntax should be used in the toolbar picker for block wraps? WRAP (other choices: div, block)
syntaxSpan Which syntax should be used in the toolbar picker for inline wraps? wrap (other choices: span, inline)

도구 모음 선택기

The wrap picker in the editing toolbar adds the most common wrap syntaxes.

  • “columns” creates a set of half columns
  • “simple centered box” creates a standard box (60% wide, centered)
  • “info, tip, important, alert, help, download, todo box” creates specifically themed boxes (also 60% wide, centered)
  • “clear floats” creates a <WRAP clear></WRAP>
  • “especially emphasised, highlighted, less significant” creates the respective marks

사용자 지정 스타일로 확장

If you like to add your own classes and styles to the plugin, you can simply add the styles for your class preceded by “wrap_” to your user styles.

E.g. if you need a <WRAP myclass>, you edit (or create if it doesn't exist) your conf/userstyle.css and add your .wrap_myclass{} with its style definitions to it. (If necessary, edit conf/userprint.css1) for the print view, conf/userrtl.css2) for RTL languages and conf/userall.css3) for all styles as well.)

User permissions for every file used must be similar to original Dokuwiki files.

Since version 2010-03-14 you have the possibility to exclude certain class names from being prefixed with “wrap_”. Just add a comma separated list of class names into the config option “noPrefix” in the configuration manager.

in style.css

.dokuwiki div.wrap_note{ /* added */
    background-color: #eee;
    color: #000;
    padding: .5em .5em .5em .5em;
    margin-bottom: 1em;
    overflow: hidden;
}

call in DW-page:

<WRAP note>...</WRAP>

형식된 타이포그래피 클래스 추가

The old typography classes were removed in version 2011-05-15. If you need something similar, use the block plugin instead. Or you can use your own and copy them to your own user styles (see above).

도움을 사용하는 방법

From version 2011-05-15 on the plugin includes a helper plugin which you can use to add classes, width and lang/dir to any other plugin.

Example how to get just one kind of attribute

// get lang from wrap helper plugin
$lang = '';
if(!plugin_isdisabled('wrap')) {
    $wrap =& plugin_load('helper', 'wrap');
    $attr = $wrap->getAttributes($data);
    if($attr['dir']) $lang = ' lang="'.$attr['lang'].'" xml:lang="'.$attr['lang'].'" dir="'.$attr['dir'].'"';
}
 
// add lang to your plugin's output
$renderer->doc .= '<span '.$lang.' class="foo">';

getAttributes() expects the string with “classes #id width :language”. It returns an array with

  • $attr['class']: CSS class(es)
  • $attr['id']: CSS ID
  • $attr['width']: width
  • $attr['lang'] and $attr['dir']: language and text direction

Example how to get all attributes

// get attributes from wrap helper plugin
$attr = '';
if(!plugin_isdisabled('wrap')) {
    $wrap =& plugin_load('helper', 'wrap');
    $attr = $wrap->buildAttributes($data, 'additionalClass');
}
 
// add those attributes to your plugin's output
$renderer->doc .= '<div '.$attr.'">';

buildAttributes() expects the same string as above (“classes #id width :language”) and an optional string for additional classes, in case your plugin has CSS classes of its own which it needs to reuse. It returns a string with all the attributes prepared for HTML.

개발

완료

할 일

  • ODT 지원
  • 그리고 더 많이 …

지역화

You can help me with translations and update the language files. There are two files to translate:

제작진

토론

Before reporting any issues (bugs or requests), please first take a look at the FAQ on plugin problems.

You can report any issues either on the Issue Tracker or on the separate discussion page.

1)
conf/printstyle.css in Anteater
2)
conf/rtlstyle.css in Anteater
3)
conf/allstyle.css in Anteater
ko/plugin/wrap.txt · 마지막으로 수정됨: 2018-06-06 00:39 저자 Klap-in

별도로 명시하지 않을 경우, 이 위키의 내용은 다음 라이선스에 따라 사용할 수 있습니다: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki