| Obě strany předchozí revize Předchozí verze Následující verze | Předchozí verze |
| wiki:syntax [11.July 2013 10:04] – [HTML Comment] gtadmin | wiki:syntax [26.April 2024 23:44] (aktuální) – upraveno mimo DokuWiki 127.0.0.1 |
|---|
| |
| * For security reasons direct browsing of windows shares only works in Microsoft Internet Explorer per default (and only in the "local zone"). | * For security reasons direct browsing of windows shares only works in Microsoft Internet Explorer per default (and only in the "local zone"). |
| * For Mozilla and Firefox it can be enabled through different workaround mentioned in the [[http://kb.mozillazine.org/Links_to_local_pages_do_not_work|Mozilla Knowledge Base]]. However, there will still be a JavaScript warning about trying to open a Windows Share. To remove this warning (for all users), put the following line in ''conf/userscript.js'': | * For Mozilla and Firefox it can be enabled through different workaround mentioned in the [[http://kb.mozillazine.org/Links_to_local_pages_do_not_work|Mozilla Knowledge Base]]. However, there will still be a JavaScript warning about trying to open a Windows Share. To remove this warning (for all users), put the following line in ''conf/lang/en/lang.php'' (more details at [[doku>localization#changing_some_localized_texts_and_strings_in_your_installation|localization]]): <code - conf/lang/en/lang.php> |
| | <?php |
| LANG.nosmblinks = ''; | /** |
| | * Customization of the english language file |
| | * Copy only the strings that needs to be modified |
| | */ |
| | $lang['js']['nosmblinks'] = ''; |
| | </code> |
| |
| ==== Image Links ==== | ==== Image Links ==== |
| You can also use an image to link to another internal or external page by combining the syntax for links and [[#images_and_other_files|images]] (see below) like this: | You can also use an image to link to another internal or external page by combining the syntax for links and [[#images_and_other_files|images]] (see below) like this: |
| |
| [[http://www.php.net|{{wiki:dokuwiki-128.png}}]] | [[http://php.net|{{wiki:dokuwiki-128.png}}]] |
| |
| [[http://www.php.net|{{wiki:dokuwiki-128.png}}]] | [[http://php.net|{{wiki:dokuwiki-128.png}}]] |
| |
| Please note: The image formatting is the only formatting syntax accepted in link names. | Please note: The image formatting is the only formatting syntax accepted in link names. |
| ---- | ---- |
| |
| ===== Images and Other Files ===== | ===== Media Files ===== |
| |
| You can include external and internal [[doku>images]] with curly brackets. Optionally you can specify the size of them. | You can include external and internal [[doku>images|images, videos and audio files]] with curly brackets. Optionally you can specify the size of them. |
| |
| Real size: {{wiki:dokuwiki-128.png}} | Real size: {{wiki:dokuwiki-128.png}} |
| Resize to given width and height((when the aspect ratio of the given width and height doesn't match that of the image, it will be cropped to the new ratio before resizing)): {{wiki:dokuwiki-128.png?200x50}} | Resize to given width and height((when the aspect ratio of the given width and height doesn't match that of the image, it will be cropped to the new ratio before resizing)): {{wiki:dokuwiki-128.png?200x50}} |
| |
| Resized external image: {{http://de3.php.net/images/php.gif?200x50}} | Resized external image: {{https://www.php.net/images/php.gif?200x50}} |
| |
| Real size: {{wiki:dokuwiki-128.png}} | Real size: {{wiki:dokuwiki-128.png}} |
| Resize to given width: {{wiki:dokuwiki-128.png?50}} | Resize to given width: {{wiki:dokuwiki-128.png?50}} |
| Resize to given width and height: {{wiki:dokuwiki-128.png?200x50}} | Resize to given width and height: {{wiki:dokuwiki-128.png?200x50}} |
| Resized external image: {{http://de3.php.net/images/php.gif?200x50}} | Resized external image: {{https://www.php.net/images/php.gif?200x50}} |
| |
| |
| |
| {{ wiki:dokuwiki-128.png |This is the caption}} | {{ wiki:dokuwiki-128.png |This is the caption}} |
| |
| If you specify a filename (external or internal) that is not an image (''gif, jpeg, png''), then it will be displayed as a link instead. | |
| |
| For linking an image to another page see [[#Image Links]] above. | For linking an image to another page see [[#Image Links]] above. |
| | |
| | ==== Supported Media Formats ==== |
| | |
| | DokuWiki can embed the following media formats directly. |
| | |
| | | Image | ''gif'', ''jpg'', ''png'' | |
| | | Video | ''webm'', ''ogv'', ''mp4'' | |
| | | Audio | ''ogg'', ''mp3'', ''wav'' | |
| | | Flash | ''swf'' | |
| | |
| | If you specify a filename that is not a supported media format, then it will be displayed as a link instead. |
| | |
| | By adding ''?linkonly'' you provide a link to the media without displaying it inline |
| | |
| | {{wiki:dokuwiki-128.png?linkonly}} |
| | |
| | {{wiki:dokuwiki-128.png?linkonly}} This is just a link to the image. |
| | |
| | ==== Fallback Formats ==== |
| | |
| | Unfortunately not all browsers understand all video and audio formats. To mitigate the problem, you can upload your file in different formats for maximum browser compatibility. |
| | |
| | For example consider this embedded mp4 video: |
| | |
| | {{video.mp4|A funny video}} |
| | |
| | When you upload a ''video.webm'' and ''video.ogv'' next to the referenced ''video.mp4'', DokuWiki will automatically add them as alternatives so that one of the three files is understood by your browser. |
| | |
| | Additionally DokuWiki supports a "poster" image which will be shown before the video has started. That image needs to have the same filename as the video and be either a jpg or png file. In the example above a ''video.jpg'' file would work. |
| |
| ===== Lists ===== | ===== Lists ===== |
| * ;-) %% ;-) %% | * ;-) %% ;-) %% |
| * ^_^ %% ^_^ %% | * ^_^ %% ^_^ %% |
| | * m( %% m( %% |
| * :?: %% :?: %% | * :?: %% :?: %% |
| * :!: %% :!: %% | * :!: %% :!: %% |
| Some times you want to mark some text to show it's a reply or comment. You can use the following syntax: | Some times you want to mark some text to show it's a reply or comment. You can use the following syntax: |
| |
| I think we should do it | <code> |
| | I think we should do it |
| > No we shouldn't | |
| | > No we shouldn't |
| >> Well, I say we should | |
| | >> Well, I say we should |
| > Really? | |
| | > Really? |
| >> Yes! | |
| | >> Yes! |
| >>> Then lets do it! | |
| | >>> Then lets do it! |
| | </code> |
| |
| I think we should do it | I think we should do it |
| ^ Heading 5 | Row 2 Col 2 | Row 2 Col 3 | | ^ Heading 5 | Row 2 Col 2 | Row 2 Col 3 | |
| |
| You can have rowspans (vertically connected cells) by adding '':::'' into the cells below the one to which they should connect. | You can have rowspans (vertically connected cells) by adding ''%%:::%%'' into the cells below the one to which they should connect. |
| |
| ^ Heading 1 ^ Heading 2 ^ Heading 3 ^ | ^ Heading 1 ^ Heading 2 ^ Heading 3 ^ |
| </code> | </code> |
| |
| The following language strings are currently recognized: //4cs, 6502acme, 6502kickass, 6502tasm, 68000devpac, abap, actionscript-french, actionscript, actionscript3, ada, algol68, apache, applescript, asm, asp, autoconf, autohotkey, autoit, avisynth, awk, bascomavr, bash, basic4gl, bf, bibtex, blitzbasic, bnf, boo, c, c_loadrunner, c_mac, caddcl, cadlisp, cfdg, cfm, chaiscript, cil, clojure, cmake, cobol, coffeescript, cpp, cpp-qt, csharp, css, cuesheet, d, dcs, delphi, diff, div, dos, dot, e, epc, ecmascript, eiffel, email, erlang, euphoria, f1, falcon, fo, fortran, freebasic, fsharp, gambas, genero, genie, gdb, glsl, gml, gnuplot, go, groovy, gettext, gwbasic, haskell, hicest, hq9plus, html, html5, icon, idl, ini, inno, intercal, io, j, java5, java, javascript, jquery, kixtart, klonec, klonecpp, latex, lb, lisp, llvm, locobasic, logtalk, lolcode, lotusformulas, lotusscript, lscript, lsl2, lua, m68k, magiksf, make, mapbasic, matlab, mirc, modula2, modula3, mmix, mpasm, mxml, mysql, newlisp, nsis, oberon2, objc, objeck, ocaml-brief, ocaml, oobas, oracle8, oracle11, oxygene, oz, pascal, pcre, perl, perl6, per, pf, php-brief, php, pike, pic16, pixelbender, pli, plsql, postgresql, povray, powerbuilder, powershell, proftpd, progress, prolog, properties, providex, purebasic, pycon, python, q, qbasic, rails, rebol, reg, robots, rpmspec, rsplus, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, sql, systemverilog, tcl, teraterm, text, thinbasic, tsql, typoscript, unicon, uscript, vala, vbnet, vb, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, winbatch, whois, xbasic, xml, xorg_conf, xpp, yaml, z80, zxbasic// | The following language strings are currently recognized: //4cs 6502acme 6502kickass 6502tasm 68000devpac abap actionscript3 actionscript ada aimms algol68 apache applescript apt_sources arm asm asp asymptote autoconf autohotkey autoit avisynth awk bascomavr bash basic4gl batch bf biblatex bibtex blitzbasic bnf boo caddcl cadlisp ceylon cfdg cfm chaiscript chapel cil c_loadrunner clojure c_mac cmake cobol coffeescript c cpp cpp-qt cpp-winapi csharp css cuesheet c_winapi dart dcl dcpu16 dcs delphi diff div dos dot d ecmascript eiffel email epc e erlang euphoria ezt f1 falcon fo fortran freebasic freeswitch fsharp gambas gdb genero genie gettext glsl gml gnuplot go groovy gwbasic haskell haxe hicest hq9plus html html4strict html5 icon idl ini inno intercal io ispfpanel java5 java javascript jcl j jquery julia kixtart klonec klonecpp kotlin latex lb ldif lisp llvm locobasic logtalk lolcode lotusformulas lotusscript lscript lsl2 lua m68k magiksf make mapbasic mathematica matlab mercury metapost mirc mk-61 mmix modula2 modula3 mpasm mxml mysql nagios netrexx newlisp nginx nimrod nsis oberon2 objc objeck ocaml-brief ocaml octave oobas oorexx oracle11 oracle8 oxygene oz parasail parigp pascal pcre perl6 perl per pf phix php-brief php pic16 pike pixelbender pli plsql postgresql postscript povray powerbuilder powershell proftpd progress prolog properties providex purebasic pycon pys60 python qbasic qml q racket rails rbs rebol reg rexx robots roff rpmspec rsplus ruby rust sas sass scala scheme scilab scl sdlbasic smalltalk smarty spark sparql sql sshconfig standardml stonescript swift systemverilog tclegg tcl teraterm texgraph text thinbasic tsql twig typoscript unicon upc urbi uscript vala vbnet vb vbscript vedit verilog vhdl vim visualfoxpro visualprolog whitespace whois winbatch wolfram xbasic xml xojo xorg_conf xpp yaml z80 zxbasic// |
| | |
| | There are additional [[doku>syntax_highlighting|advanced options]] available for syntax highlighting, such as highlighting lines or adding line numbers. |
| |
| ==== Downloadable Code Blocks ==== | ==== Downloadable Code Blocks ==== |
| |
| If you don't want any highlighting but want a downloadable file, specify a dash (''-'') as the language code: ''%%<code - myfile.foo>%%''. | If you don't want any highlighting but want a downloadable file, specify a dash (''-'') as the language code: ''%%<code - myfile.foo>%%''. |
| |
| |
| ===== Embedding HTML and PHP ===== | |
| |
| You can embed raw HTML or PHP code into your documents by using the ''%%<html>%%'' or ''%%<php>%%'' tags. (Use uppercase tags if you need to enclose block level elements.) | |
| |
| HTML example: | |
| |
| <code> | |
| <html> | |
| This is some <span style="color:red;font-size:150%;">inline HTML</span> | |
| </html> | |
| <HTML> | |
| <p style="border:2px dashed red;">And this is some block HTML</p> | |
| </HTML> | |
| </code> | |
| |
| <html> | |
| This is some <span style="color:red;font-size:150%;">inline HTML</span> | |
| </html> | |
| <HTML> | |
| <p style="border:2px dashed red;">And this is some block HTML</p> | |
| </HTML> | |
| |
| PHP example: | |
| |
| <code> | |
| <php> | |
| echo 'A logo generated by PHP:'; | |
| echo '<img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP Logo !" />'; | |
| echo '(generated inline HTML)'; | |
| </php> | |
| <PHP> | |
| echo '<table class="inline"><tr><td>The same, but inside a block level element:</td>'; | |
| echo '<td><img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP Logo !" /></td>'; | |
| echo '</tr></table>'; | |
| </PHP> | |
| </code> | |
| |
| <php> | |
| echo 'A logo generated by PHP:'; | |
| echo '<img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP Logo !" />'; | |
| echo '(inline HTML)'; | |
| </php> | |
| <PHP> | |
| echo '<table class="inline"><tr><td>The same, but inside a block level element:</td>'; | |
| echo '<td><img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP Logo !" /></td>'; | |
| echo '</tr></table>'; | |
| </PHP> | |
| |
| **Please Note**: HTML and PHP embedding is disabled by default in the configuration. If disabled, the code is displayed instead of executed. | |
| |
| ===== RSS/ATOM Feed Aggregation ===== | ===== RSS/ATOM Feed Aggregation ===== |
| | author | show item authors names | | | author | show item authors names | |
| | date | show item dates | | | date | show item dates | |
| | description| show the item description. If [[doku>config:htmlok|HTML]] is disabled all tags will be stripped | | | description| show the item description. All HTML tags will be stripped | |
| | | nosort | do not sort the items in the feed | |
| | //n//[dhm] | refresh period, where d=days, h=hours, m=minutes. (e.g. 12h = 12 hours). | | | //n//[dhm] | refresh period, where d=days, h=hours, m=minutes. (e.g. 12h = 12 hours). | |
| |
| The refresh period defaults to 4 hours. Any value below 10 minutes will be treated as 10 minutes. [[wiki:DokuWiki]] will generally try to supply a cached version of a page, obviously this is inappropriate when the page contains dynamic external content. The parameter tells [[wiki:DokuWiki]] to re-render the page if it is more than //refresh period// since the page was last rendered. | The refresh period defaults to 4 hours. Any value below 10 minutes will be treated as 10 minutes. [[wiki:DokuWiki]] will generally try to supply a cached version of a page, obviously this is inappropriate when the page contains dynamic external content. The parameter tells [[wiki:DokuWiki]] to re-render the page if it is more than //refresh period// since the page was last rendered. |
| | |
| | By default the feed will be sorted by date, newest items first. You can sort it by oldest first using the ''reverse'' parameter, or display the feed as is with ''nosort''. |
| |
| **Example:** | **Example:** |
| | %%~~NOCACHE~~%% | DokuWiki caches all output by default. Sometimes this might not be wanted (eg. when the %%<php>%% syntax above is used), adding this macro will force DokuWiki to rerender a page on every call | | | %%~~NOCACHE~~%% | DokuWiki caches all output by default. Sometimes this might not be wanted (eg. when the %%<php>%% syntax above is used), adding this macro will force DokuWiki to rerender a page on every call | |
| |
| ===== Rozšířené formátování ===== | |
| Tady budou věci přidané do tohoto wiki navíc aby se zjednodušila tvorba stránek | |
| ==== nspages ==== | |
| === Description === | |
| This plugin nicely displays a table of content of the pages -and optionally the subnamespaces- of a given (sub)namespace. | |
| |
| Using this plugin is easy: just write | |
| <nspages> | |
| and see the result. (You may also use the button {{http://img190.imageshack.us/img190/6845/tbnspages.png?nolinking}} from the toolbar.) | |
| |
| The general syntax is | |
| <nspages path_to_a_namespace -option1 -option2 ...> | |
| where: | |
| *path_to_a_namespace represents the path to the wanted namespace. It can be an absolute (ex: namespace1:subnamespace) or a relative path (ex: .:subnamespace). If no path is specified, the current namespace is selected. | |
| *-option may be one of the following (it is possible to specify several options): | |
| |
| ^ Common options ^^ | |
| | -subns |displays the subnamespaces of the selected namespace (and provide links to their main page) | | |
| | -nopages |do not list the pages of the selected namespace (of course this option is useful only if you use -subns) | | |
| | -exclude:nameOfPage |won't include the page nameOfPage. This option may be use several times in order to exclude several pages | | |
| | -exclude:subNs: |won't include the subnamespace subNs. This option may also be used more than once | | |
| | -exclude |won't include the current page | | |
| | -h1 |will display the first h1 title found. If a page doesn't contain such a title, the name of the page is used instead | | |
| | -textPages="some text" |//some text// will be displayed instead of the default text, to introduce the pages list | | |
| | -textNS="some text" |//some text// will be displayed instead of the default text, to introduce the namespaces list | | |
| | -title | alias of -h1 | | |
| | -simpleList | display the list on a single column | | |
| | -simpleLine | display the list on a single line (incompatible with -simpleList) | | |
| | -nbCol=3 | Change the number of columns to use (default is 3) | | |
| | -sortId | Sort the pages according to their id, even if -title is used | | |
| |
| ^ Less common options ^^ | |
| | -reverse | Sort the pages in reverse order | | |
| | -pagesInNs | The pages will appear among the namespaces | | |
| | -r | recurse : display elements of the subnamespaces. You may use just "-r" to check every subnamespace, or e.g. "-r=3" to have a depth limit to 3 levels | | |
| | -exclude:[page1 subNs: page2] |an easier syntax to exclude several pages/subnamespaces| | |
| | -pregPagesOn\\ -pregPagesOff\\ -pregNSOn \\ -pregNSOff | Enable the use of regex to select the documents that should be displayed. Eg: -pregPagesOn="/doku/i" will display only pages which contains "doku" in their id.\\ Several options may be used, and each of them may be used several times. | | |
| | -anchorName=myName | Add anchors on each title-letters, to let link directly to them. Anchors will look like, e.g. for the letter A: nspages_myName_A | | |
| |
| |
| <code>ex: <nspages path_to_a_namespace -exclude> or <nspages -subns -nopages> will work.</code> | |
| |
| ==== pagelist ==== | |
| === Description === | |
| |
| The Pagelist Plugin takes a list of wiki pages and provides a nicely formatted table with information about them. The plug-in has a number of flags that can be used to control the information and format of the page list. The user can provide a list of specific page references as can some popular helper plugins such the **Blog**, **Discussion**, **Editor**, **Tag**, **Task** and **Dir** plugins. | |
| |
| === Syntax === | |
| |
| Just wrap a regular unordered list of internal links with the ''%%<pagelist>%%'' tag. You may provide specific internal page references or have plug-ins supply them as in the example below: | |
| |
| <code> <pagelist&[flags]> | |
| * [[..:blog:|Blog Plugin]] | |
| * [[..:discussion:|Discussion Plugin]] | |
| * [[..:editor:|Editor Plugin]] | |
| * [[..:tag:|Tag Plugin]] | |
| * [[..:wrap|Wrap Plugin|This is shown in the description cell]] | |
| </pagelist></code> | |
| |
| ^ [flags] | flags can be used to alter the appearance of the pagelist, see [[#flags]] | optional | | |
| |
| === Flags === | |
| |
| ^ Setting ^ Default ^^ Alternative ^^ | |
| | ''style'' ^ ''default'' | table with horizontal lines ^ ''table'', ''list'' or ''simplelist'' | standard DokuWiki table or list style | | |
| | ''showheader'' ^ ''noheader'' | hide the heading row of the pagelist table ^ ''header'' | show the header | | |
| | ''showdate'' ^ ''date'' | show the creation or last modification date ^ ''nodate'' | hide the date | | |
| | ''showuser'' ^ ''user'' | show creator or contributors ^ ''nouser'' | hide the user | | |
| | ''showdesc'' ^ ''nodesc'' | hide the description ^ ''desc'' | show the description (from metadata) | | |
| | ''showcomments'' ^ ''nocomments'' | hide the number of comments ^ ''comments'' | show the number of comments (if **Discussion Plugin** is installed) | | |
| | ''showtags'' ^ ''notags'' | hide the tags ^ ''tags'' | show the tags (if **Tag Plugin** is installed) | | |
| | ''showfirsthl'' ^ ''firsthl'' | show the first headline ^ ''nofirsthl'' | show the page name | | |
| | ''rsort/sort'' ^ ''nosort'' | no sortation of pages ^ ''rsort/sort'' | sorts the pages (reverse) alphabetically by pagename | | |
| |
| === Example === | |
| |
| <code> <pagelist&header&comments> | |
| //an unordered list of pages to display// | |
| </pagelist></code> | |
| |
| In the example above, pagelist will display information about the provided pages in a table with a header line and a comments column (if the **Discussion Plugin** is installed). The user (or a plugin) must supply the specific pages to display in the list. | |
| |
| === Configuration === | |
| The plugin can be configured using the DokuWiki configuration manager available in the admin menu. The settings also apply to plugins which use the helper component of the pagelist plugin, like for example the archive component of the **blog** plugin. | |
| |
| ^ ''style'' | List style (default, list, table) | | |
| ^ ''showheader'' | Show table header | | |
| ^ ''showdate'' | Shows/hides the date column (hide, creation date, modification date) | | |
| ^ ''showuser'' | Shows/hides the user column (hide, creator, contributors) | | |
| ^ ''showdesc'' | Shows/hides a short description taken from the first paragraph of a page (hide, max. 160 characters, max. 500 characters) | | |
| ^ ''showcomments'' | Shows/hides comments of a page (requires the **discussion** plugin) | | |
| ^ ''showlinkbacks'' | Shows/hides linkbacks of a page (requires the [[http://foosel.org/snippets/dokuwiki/linkback|linkback]] plugin) | | |
| ^ ''showtags'' | Shows/hides tags of a page (requires the **tag** plugin) | | |
| ^ ''sort'' | Sorts the pages alphabetically by pagename | | |
| |
| ==== Tag ==== | |
| |
| <code> {{tag>[list of tags]}}</code> | |
| |
| ^ [list of tags] | a space separated list of tags that describe the content of the current page | required | | |
| |
| Allows you to categorize your wiki pages. The resulting links either point to the corresponding page in the specified tag namespace (only if it exists). If you want a link to point to a page in another namespace, you have to indicate the namespace before the tag name. If this page doesn't exist, just the list of pages with the same tag is shown when you follow one of those links. | |
| |
| Examples: | |
| * ''%%{{tag>tag1 tag2 tag3}}%%'' | |
| * with namespaces: ''%%{{tag>:ns1:tag1 ns1:tag2 ns2:subns1:tag3}}%%'' | |
| === Topic === | |
| |
| {{topic>[tag]&[flags]}} | |
| |
| ^ [tag] | the category tag for which you want a list of pages | required | | |
| ^ [flags] | pagelist flags delimited by ''&'', see **flags** | optional | | |
| |
| This displays a list of all pages that contain the given category tag. The list is sorted alphabetically by page ID. You can also prepend the modifiers ''+'' and ''-''. ''+'' creates an intersection between the list of pages created by the already defined tags and the pages matching the tag following the ''+'' (AND), ''-'' removes all pages tagged with the given tag from the list of already found pages. | |
| |
| Example: | |
| * ''%%{{topic>tag1 -tag2}}%%'' -- Lists all pages tagged with tag1 but not with tag2. | |
| * ''%%{{topic>tag1 +tag2}}%%'' -- Lists all pages tagged with tag1 and tag2. | |
| * ''%%{{topic>tag1 tag2}}%%'' -- Lists all pages tagged with either tag1 or tag2 or both. | |
| * ''%%{{topic>ns1?tag1 tag2}}%%'' -- List all pages inside namespace ns1 tagged with either tag1 or tag2 | |
| * ''%%{{topic>.?tag1 tag2}}%%'' -- List all pages inside the current namespace tagged with either tag1 or tag2 | |
| * ''%%{{topic>tag1 tag2 tag3&nodate&desc&sort}}%%'' (Adding **pagelist** options to change the design) | |
| |
| === Searchtags === | |
| |
| {{searchtags&[flags]}} | |
| |
| ^ [flags] | pagelist flags delimited by ''&'', see **flags** | optional | | |
| |
| This displays a search form with the possibility to select a namespace and to select tags from a table of all tags that should either be in- or excluded with the option to choose if the tags should be associated with AND or OR. The results are displayed as in the topic component. | |
| |
| Example: | |
| * ''%%{{searchtags}}%%'' -- The basic syntax | |
| * ''%%{{searchtags&nodate&desc&sort}}%%'' -- with **pagelist** options to change the design | |
| |
| === Count === | |
| |
| {{count>[tag]}} | |
| |
| ^ [tag] | the category tag for which you want the list the occurrence | required | | |
| |
| This part allow you to display an overview of your current used tags. It prints the tag and the related occurrence (how often is the tag used?) in your wiki. Either you can specify a ''+'' as tag-name, which results in a list of all used tags or just specify some tags separated by spaces. | |
| |
| Example: | |
| * ''%%{{count>+}}%%'' -- List all tags with related occurrences. | |
| * ''%%{{count>tag1 tag2}}%%'' -- List the occurrence of tag1 and tag2. | |
| * ''%%{{count>tag1 tag2 tag3&. ns1 ns2}}%%'' -- List all occurrences for the given tags inside the namespaces (the dot specifies the root namespace) | |
| | |
| === Tagpage === | |
| |
| {{tagpage>[tag][&dynamic][|title]}} | |
| |
| This displays a link to the listing of all tags as it is done by the **Tag** syntax but without tagging the page with that tag. With the optional ''dynamic'' flag the link becomes red when the listing of all pages with that tag is empty for the current user. The ''dynamic'' flag automatically disables the cache of the current page in order to ensure that the link color is always correct. Optionally a title can be specified that will be used as link name. | |
| |
| Example: | |
| * ''%%{{tagpage>test_foo}}%%'' -- The basic syntax | |
| * ''%%{{tagpage>test_foo&dynamic}}%%'' -- A link with dynamic link color | |
| * ''%%{{tagpage>test_foo|my title}}%%'' -- A link with custom title | |
| * ''%%{{tagpage>test_foo&dynamic|my | title}}%%'' -- A link with dynamic link color and custom title (that can also contain ''%%|%%'') | |
| |
| === Configuration === | |
| The plugin can be configured with the DokuWiki configuration manager available in the admin menu. | |
| |
| ^ ''namespace'' | Namespace where the tag plugin looks for existing tag pages and links to them instead of the default tag overview. You could use the topic component to display the list of tags on such a page for example. (default ''tag'') | | |
| ^ ''sortkey'' | Order in which tagged pages are sorted in the topic overview; available options are creation date, modification date, page name, page ID, namespace and title | | |
| ^ ''sortorder'' | Sort order of the topic overview. | | |
| ^ ''pagelist_flags'' | Comma separated **Flags** of the **pagelist** plugin which is used to display the topic overview | | |
| ^ ''toolbar_icon'' | Show icon in page editor toolbar to add tags. | | |
| ^ ''list_tags_of_subns'' | When counting tags in specified namespaces include also tags in subnamespaces. | | |
| |
| === Tagindex Rebuild === | |
| |
| If the tag index becomes corrupted somehow (such as by using page move), then you can rebuild it by using the **searchindex** plugin or <code>:cli|bin/indexer.php</code>. | |
| |
| === Demo / Screenshots === | |
| |
| {{ http://dump.lupo49.de/tmp/dokuwiki/plugin_screenshots/tag/tag_overview.png?283x205 }} | |
| |
| {{ http://dump.lupo49.de/tmp/dokuwiki/plugin_screenshots/tag/tag_page.png?200x58 }} | |
| |
| ==== WIP Plugin ==== | |
| |
| This little plugin provides you the possibility to insert standard boxes by easy syntax. It is shared with a standard set of boxes and pictures but allows you to easily customize/extend it towards your needs. Additionally you are able to provide text and DW syntax within the WIP as you like. The following examples of syntax and output should give you an initial impression of possibilities. | |
| |
| The syntax handling on editor can be eased in combination with the [[https://www.dokuwiki.org/plugin:custombuttons|custombuttons plugin]]. Or you just let me know if the wip-plugin should provide its own set of buttons. | |
| |
| <code> | |
| <(wip)> | |
| </code> | |
| |
| <(wip)> | |
| |
| <code> | |
| <wip>uncon</wip> | |
| </code> | |
| |
| <wip>uncon</wip> | |
| |
| You may use the DokuWiki syntax to format the text and over-rule the text provide by wips settings. Not all syntax and plugins will work inside the WIP box but most of it. Definitely you have to prevent newlines within your text. | |
| |
| <code><wip>uncon|%%**%%This%%**%% %%//__%%plugin%%__//%% is still under construction. %%\\%% Most recent information can be found on %%[[%%http://www.fristercons.de/fcon/doku.php?id=wip:start|WIP plugin description page]]</wip></code> | |
| |
| <wip>uncon|**This** //__plugin__// __is still under construction.__ \\ Most recent information can be found on [[http://www.fristercons.de/fcon/doku.php?id=wip:start|WIP plugin description page]]</wip> | |
| |
| === Syntax and Example output === | |
| |
| == built-in default class == | |
| |
| <code> | |
| <(wip)> | |
| </code> | |
| |
| <(wip)> | |
| |
| <code> | |
| <wip></wip> | |
| </code> | |
| |
| <wip></wip> | |
| |
| <code> | |
| <wip>default</wip> | |
| </code> | |
| |
| <wip>default</wip> | |
| |
| == user defined classes == | |
| |
| You may define your own WIP classes by creating a user.wips file within the plugin directory. Just download the following example to start customization. | |
| |
| <code>book = book> a book ...; | |
| question = question.png > a question ...; | |
| misref = misref.png > References of following article or section are not strog enough or even do not exist.; | |
| distribution = distrib.png > There is a distribution available.; | |
| book = book> a book ...; | |
| question = question.png > a question ...; | |
| misref = misref.png > References of following article or section are not strog enough or even do not exist.; | |
| distribution = distrib.png > There is a distribution available.; | |
| </code> | |
| |
| <code> | |
| <wip>book</wip> | |
| </code> | |
| |
| <wip>book</wip> | |
| |
| <code> | |
| <wip>question</wip> | |
| </code> | |
| |
| <wip>question</wip> | |
| |
| <code> | |
| <wip>misref</wip> | |
| </code> | |
| |
| <wip>misref</wip>enough or even do not exist. | | |
| |
| <code> | |
| <wip>distribution</wip> | |
| </code> | |
| |
| <wip>distribution</wip> | |
| |
| === syntax defined output === | |
| |
| <code> | |
| <wip>light|whatever info you want to provide</wip> | |
| </code> | |
| |
| <wip>light|whatever info you want to provide</wip> | |
| |
| === Download === | |
| |
| Just download following zip-file and extract it into the dokuwiki/lib/plugin folder: [[http://www.fristercons.de/fcon/doku.php?id=wip:start|wip page]] | |
| |
| ==== HTML Comment ==== | |
| This is a very simple **plugin** that allows HTML style comments to be used in the **wikitext**. They will show up unchanged in the XHTML output. They will not be rendered by the browser, but can be viewed with "View source code" command. The syntax is exactly like in HTML: | |
| |
| <code> <!-- This is a HTML comment --> </code> | |
| |
| This can be useful, if you're post-processing the HTML output in some way, e.g. to produce PDF documents. Some converters can use special HTML comments to steer the conversion process. | |
| |
| ==== Wrap ==== | |
| === Syntax === | |
| |
| Basic Syntax: | |
| <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> | |
| An uppercase **%%<WRAP>%%** (or alternatively **%%<block>%%** or **%%<div>%%**) creates a **''div''** and should be used for **"big"** containers, **surrounding** paragraphs, lists, tables, etc. | |
| | |
| <wrap classes #id width :language>"small" content</wrap> | |
| | |
| or | |
| <inline classes #id width :language>"small" content</inline> | |
| | |
| or | |
| <span classes #id width :language>"small" content</span> | |
| A lowercase **%%<wrap>%%** (or alternatively **%%<inline>%%** or **%%<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. | |
| |
| === Examples === | |
| |
| The plugin comes with an example page, which should explain a lot and looks like this in the default template (see below). | |
| |
| === Classes === | |
| |
| The following classes are currently available: | |
| |
| [[https://www.dokuwiki.org/_media/plugin:wrap_plugin_example6.png]] | |
| |
| ^class name^description/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**. | |
| |
| == Known restrictions == | |
| |
| * 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 <del>won't work</del> should work, but are experimental inside any plugin syntax and can produce unexpected results. As a work-around you can use the following two 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. | |
| |
| === Widths === | |
| |
| 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>... | |
| |
| You can also use the width keywords ''half'', ''third'' and ''quarter''. But those are still **experimental** and might not always work as expected. E.g. | |
| <WRAP half column>...</WRAP> | |
| <WRAP half column>...</WRAP> | |
| will result in two columns next to each other, which will wrap underneath each other on smaller screens and mobile devices. | |
| |
| === Languages and Text Directions === | |
| |
| 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**). | |
| |
| === Demo === | |
| |
| You can see a demo of the plugin on [[http://demo.selfthinker.org/plugin:wrap|demo.selfthinker.org]]. | |
| |
| |
| [[http://russianrandonneur.ru/help/wrap|“Examples” (demo) in Russian]]. [[http://pastebin.com/C9xjaEH9|Source]]. | |
| ===== Syntax Plugins ===== | ===== Syntax Plugins ===== |
| |