差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

wiki:syntax [2014/01/02 02:41]
ShingChi
wiki:syntax [2014/01/02 03:09] (当前版本)
ShingChi
行 4: 行 4:
 如果您是初尝Wiki,那么可以使用 [[playground:​playground|Wiki砂箱]] 来尽情挥洒。\\ 如果您是初尝Wiki,那么可以使用 [[playground:​playground|Wiki砂箱]] 来尽情挥洒。\\
 通过[[doku>​quickbuttons|快捷按钮]],您可以更方便地使用这些标记。 通过[[doku>​quickbuttons|快捷按钮]],您可以更方便地使用这些标记。
- 
-注:本文档由 [email protected] 根据DokuWiki 2005.2.6版本的语法说明翻译。\\ 
-如果您发现什么问题,请您发信告知,谢谢!\\ 
  
 ===== 基本文本格式 ===== ===== 基本文本格式 =====
行 275: 行 272:
 ===== 无格式区块 ===== ===== 无格式区块 =====
  
-您可以在文章中插入无格式区块,在这些区块中Wiki语法将不起作用。可以有三种方法:在行前加以上的格(前面例时用的方法),或者可以使用 ''​Code''​ 或 ''​file''​ 标+一段字的最上 2 个空白,来直接作为「文本框」不对它做加工处理(就像前面那些说明一)。或者可以用 ''​%%<​%%code%%>​%%''​ 或 ''​%%<%%file%%>%%'' ​这两个签(tag)都可以达到类似效果
  
 <​code>​ <​code>​
-是一code包围区块其中的空格都被保留了:像              <-这+这段是用 <code> 产生的,所有空格及所有原始格式会照样显示,还其本色。 
 + 就像       ​<-这个 
 + 
 +或者 
 +    方与圆 ​ 似刚与柔 
 +    圆契合于方 
 +    方契合于圆 
 +    两心同一点
 </​code>​ </​code>​
  
 <​file>​ <​file>​
-和code类似的。不过您可以用这个来表示您用了一个文件的内容。  ​+这段跟上段很像,但改用 <​file>​ ,可以把它在「述名言(Quote)」效果上。  ​ 
 +   
 +        remember, information is not knowledge,​ 
 +                  knowledge is not wisdom 
 +                  wisdom is not truth 
 +                  truth is not beauty 
 +                  beauty is not love 
 +                  love is not music 
 +                  music is the best 
 +   
 +                                                -- frank zappa
 </​file>​ </​file>​
  
-让Wiki语法解释完全失效,可以用 ''​nowiki''​ 标签包围整个区块,者也可以简单地使双百分号标记 ​''<​nowiki>​%%</​nowiki>''​+略过某段内含 WIKI 语法,不对该段文字作任何处理, 
 +可以使用 ''​%%<%%nowiki%%>%%''​ 标签或简单一点用 2 个 ''<​nowiki>​%%</​nowiki>''​ 放在该段文字的前后,请参考下面例子: 
 + 
 + ''​%%<​%%nowiki%%>​%%''<​nowiki>​这段字不要用 [[WIKI]] 语法</​nowiki>''​%%<​%%/​nowiki%%>​%%''​  
 +或是''<​nowiki>​%%</​nowiki>''​%%这段字不要用 [[WIKI]] 语法%%''<​nowiki>​%%</​nowiki>''​
  
 <​nowiki>​ <​nowiki>​
-一段完全没Wiki语法解释的文字例如:http://​www.splitbrain.org ​, **粗体**,虽然按照语法书写,但是它们并没有被解释+这一段包含一些原本会在 WIKI 内特殊处理像是 ​http://​www.splitbrain.org ​及 **强调语气的文字** ,但是正如所看到的,这里什么都不做任何处理
 </​nowiki>​ </​nowiki>​
  
-如何使用这些标记,请查看这一段的源文件+您可以看本页的原始写法来察看这一段是怎么写的。
  
 +===== 语法的高亮度显示 =====
  
-===== 语法 ===== +[[DokuWiki]] 可把原始码语法来做高亮度显示(Syntax Highlighting),来更可读性。 
- +的是 ​[[http://​qbnz.com/​highlighter/​|GeSHi]] Generic Syntax Highlighter —— 所以只要 GeSHi 有支持的,DokuWiki 亦可。 
-[[DokuWiki]] 可以将源代语法高亮以增加可读性。它使称作 ​[[http://​qbnz.com/​highlighter/​|GeSHi]] ​的通用语法高亮工具(Generic Syntax Highlighter——所有被GeSHi支持的语言都以在DokuWiki中得到高亮使code标记的方和上面是类似的,不过需要指定使用的语言,例: ''<​nowiki><​code java></​nowiki>''​ +  
 +用法类似前例的 %%<​code>​%% ​在标签(tag)内指定该原始码所使用的语言。比如 ''<​nowiki><​code java></​nowiki>''​ 
 +举例:
 <code java> <code java>
 +
 /**  /** 
  * The HelloWorldApp class implements an application that  * The HelloWorldApp class implements an application that
  * simply displays "Hello World!"​ to the standard output.  * simply displays "Hello World!"​ to the standard output.
  */  */
 +
 class HelloWorldApp { class HelloWorldApp {
 +
     public static void main(String[] args) {     public static void main(String[] args) {
         System.out.println("​Hello World!"​);​ //Display the string.         System.out.println("​Hello World!"​);​ //Display the string.
行 310: 行 333:
 </​code>​ </​code>​
  
-现在,DokuWiki可以支持的语言有: //​actionscript,​ ada, apache, asm, asp, bash, caddcl, cadlisp, c, c_mac, cpp, csharp, css, delphi, html4strict,​ java, javascript, lisp, lua, nsis, objc, oobas, pascal, perl, php-brief, php, python, qbasic, smarty, sql, vb, vbnet, visualfoxpro,​ xml//+目前支持的语言有//​actionscript,​ ada, apache, asm, asp, bash, caddcl, cadlisp, c, c_mac, cpp, csharp, css, delphi, html4strict,​ java, javascript, lisp, lua, mpasm, nsis, objc, oobas, oracle8, pascal, perl, php-brief, php, python, qbasic, smarty, sql, vb, vbnet, visualfoxpro,​ xml//
  
 +==== 可下载的代码块 ====
  
-===== 嵌入HTML和PHP =====+若您使用上述的「%%<​code>​%%」或「%%<​file>​%%」语法,您或許希望让浏览者直接下载该段代码。您可以在语言代码后方指定一個文件名,方便浏览者下载:
  
-您可以使用 ''​html''​ 或者 ''​php''​标记在文档中嵌入HTML或PHP的代码。例如: 
 <​code>​ <​code>​
-<html> +<file php myexample.php
-这是 <font color="​red"​ size="​+1">​HTML</​font>​ 代码。 +<?php echo "hello world!"; ?
-</​html>​ +</file>
-</​code>​ +
-<​html>​ +
-这是 <font color="​red"​ size="​+1">​HTML</​font>​ 代码。 +
-</​html>​ +
-<code+
-<php+
-echo '​由PHP生成的logo:';​ +
-echo '<​img src="'​ . $_SERVER['​PHP_SELF'​] . '?​='​ . php_logo_guid() . '"​ alt="PHP Logo !" ​/>'; +
-</php>+
 </​code>​ </​code>​
  
-<​php>​ +<file php myexample.php> 
-echo '​由PHP生成的logo:'​+<?​php ​echo "hello world!"​?> 
-echo '<img src="' ​$_SERVER['​PHP_SELF'​. '?=' . php_logo_guid() . '"​ alt="PHP Logo !" ​/>'; +</file> 
-</php>+ 
 +若您不想把语法高亮显示出,但想方便浏览者下载,您可以用链接号「-」作语言代码。例如:「%%<​code - myfile.foo>​%%」。 
 + 
 +===== RSS/ATOM Feed聚合 ===== 
 + 
 +DokuWiki能從外部XML feed中聚合數據。爲分析這些XML feed,DokuWiki使用了[[http://​simplepie.org/​|SimplePie]]。凡是SimplePie能理解的格式,都可用於DokuWiki中。您可以更改不同的參數,以改變其渲染。參數之間請用空格隔開: 
 + 
 +^ 參數 ​ ^ 描述 ^ 
 +| any number | 最多顯示多少項內容;預設值是8。 | 
 +| reverse ​   | 將最新條目顯示在前面。 | 
 +| author ​    | 顯示條目的作者名字。 | 
 +| date       | 顯示條目數據。 | 
 +| description| 顯示條目的描述;如果[[doku>​config:​htmlok|HTML]]被禁用,所有標籤將被過濾掉 | 
 +| //n//[dhm] | 刷新周期,其中,d=日數,h=小時數,m=分。例如,12h=12小時。 | 
 + 
 +預設的刷新周期是4小時。小於10分鐘者亦視爲10分鐘。DokuWiki通常會提供頁面的暫存版,但這做法不適用於包含動態外部內容的頁面。上面的參數則告訴DokuWiki:若對上一次渲染時間已經過了//​刷新周期//​,就要重新渲染頁面。 
 + 
 +**範例:​** 
 + 
 +  {{rss>http://​slashdot.org/​index.rss 5 author date 1h }} 
 + 
 +{{rss>​http:​//​slashdot.org/​index.rss 5 author date 1h }} 
 + 
 +===== 控制巨集 ===== 
 + 
 +有些語法會影響DokuWiki對頁面的渲染,而自身不輸出任何內容。可用的控制巨集如下: 
 + 
 +^ 巨集 ​          ^ 描述| 
 +| %%~~NOTOC~~%% ​  | 如果頁面出現該控制巨集,將不會創建目錄。 | 
 +| %%~~NOCACHE~~%% | DokuWiki預設會緩存所有的輸出。有時您並不希望這樣(例如您使用了上述的%%<​php>%%語法),便可使用這控制巨集,強制DokuWiki在每次訪問時都重新渲染頁面。 | 
 + 
 +===== 語法附加元件 ===== 
 + 
 +運用[[doku>​zh-tw:​plugins|附加元件]],可以擴充DokuWiki的語法。附加元件的安裝方法,請見其他相應頁面中說明。本wiki系統使用了下列附加元件:
  
-**请注意**: HTML和PHP嵌入的功能默认情况下是被禁用的,因此,您可能无法看到上面的代码运行的结果而只能够看见源代码,这取决于DokuWiki站点的设置。(?​)+~~INFO:​syntaxplugins~~
打印/导出