목차

포맷팅 문법

DokuWiki는 가능한 한 데이타 파일들을 쉽게 읽어들이기 위해 사용하기 쉬운 markup 언어를 지원하고 있습니다. 이 페이지는 문서들을 편집할 때 사용가능한 모든 문법들을 설명하고 있습니다.

더 쉽게 문법을 익히려면 퀵버튼을 이용해 보시기 바랍니다.

기본적인 텍스트 형식

DokuWiki굵은 글씨기울임밑줄고정폭을 지원하며, 물론 조합처럼 여러 서식들의 조합도 가능합니다.

[[doku>DokuWiki]]는 **굵은 글씨**、 //기울임//、 __밑줄__ 、''고정폭''을 지원하며, 
물론 **__//''조합''//__**처럼 여러 서식들의 조합도 가능합니다.

아랫 첨자윗 첨자 역시 사용할 수 있습니다.

<sub>아랫 첨자</sub> 와 <sup>윗 첨자</sup> 역시 사용할 수 있습니다.

더 나아가 취소선을 이용할 수 있습니다.

더 나아가 <del>취소선</del>을 이용할 수 있습니다.

중간에 빈 행을 만들면,단락(절) 구분이 됩니다. 단락(절) 구분을 않고 강제로 새 행을 만들기를 원한다면, 2개의 backslash(한국어 환경에서는 역 슬래시 기호 \) 문자 다음에 공백 문자(tab이나 space)를 사용하거나 새로운 행을 만듭니다.

이 텍스트는 여러 행으로 이루어져 있습니다.
2개의 backslash는 뒤에 공백문자가 오거나 새로운 행을 만든 경우에만
처리되는 것을 \\주의하시기 바랍니다.

이 텍스트는 여러 행으로 이루어져 있습니다.\\ 2개의 backslash는 
뒤에 공백문자가 오거나 새로운 행을 만든 경우에만\\
처리되는 것을 \\주의하시기 바랍니다. 

정말 필요한 경우에만 강제로 새 행 만들기를 사용하기 바랍니다.

연결

DokuWiki는 링크를 만드는 여러가지 방법을 지원합니다.

외부 연결

http://www.google.com 나, 더 간단한 www.google.com 같은 외부 링크는 자동으로 인식됩니다. google에 연결처럼 연결 이름을 설정할 수도 있으며, test@splitbrain.org 형식의 email 주소 역시 자동으로 인식됩니다.

http://www.google.com 나, 더 간단한 www.google.com 같은 외부 링크는 자동으로 
인식됩니다. [[http://www.google.com|google에 연결]]처럼 연결 이름을 설정할 수도 
있으며, <test@splitbrain.org> 형식의 email 주소 역시 자동으로 인식됩니다.

내부 연결

내부 링크는 중첩된 대괄호 문자들을 사용해서 만들수 있습니다. ko:pagename처럼 페이지 이름을 그대로 사용하거나 표시할 이름 처럼 페이지 이름을 직접 설정할 수도 있습니다.

[[doku>ko:pagename]]처럼 페이지 이름을 그대로 사용하거나 
[[doku>ko:pagename|표시할 이름]] 처럼 페이지 이름을 직접 설정할 수도 있습니다.

Wiki 페이지 이름들은 자동으로 소문자로 변환되며, 특수문자는 사용할 수 없습니다.

페이지 이름에 그침표(:)를 사용하여 이름공간을 사용할 수 있습니다.

페이지 이름에 그침표(:)를 사용하여 [[어떤:이름공간]](이름공간;네임스페이스)을 사용할 수 
있습니다.

자세한 부분들은 NameSpace를 보기 바랍니다.

페이지 내의 특정 섹션에 링크하는 하려면 해쉬 기호(#)에 이어 섹션명을 기술합니다. 이 섹션로 연결됬습니다.

[[syntax#내부 연결|이 섹션]]로 연결됩니다.

페이지 이름에 공백이 있을 경우, 공백이 '_'로 변환됩니다.

주석:

Interwiki

Dokuwiki는 Interwiki링크를 사용할 수 있습니다. InterWiki는 다른 Wiki에 대한 간편한 링크 방법입니다. 예를 들어 Wiki는 Wikipedia 페이지에 대한 링크입니다.

Dokuwiki는 [[doku>ko:interwiki|Interwiki]]링크를 사용할 수 있습니다.
InterWiki는 다른 Wiki에 대한 간편한 링크 방법입니다. 
예를 들어 [[wp>Wiki]]는 Wikipedia 페이지에 대한 링크입니다.

Windows 공유 폴더

Windows 공유 폴더도 this처럼 사용할 수 있습니다. 다만, 인트라넷환경 같은 단일 사용자 그룹에서만 적용되는 것에 주의하기 바랍니다.

Windows 공유 폴더도 [[\\server\share|this]]처럼 사용할 수 있습니다.

주석:

그림 연결

다음과 같이 링크에 관련된 문법과 그림 (아래 참조)을 조합하면, 내부링크와 외부 링크에 대해 이미지를 이용할 수 있습니다.

[[http://www.php.net|{{wiki:dokuwiki-128.png}}]]

주의: 링크 이름에서만 문법 서식이 사용 가능합니다. 그림링크 문법은 모두 사용 가능합니다. (그림 크기 변경,내부 그림, 외부 그림, URL, interwiki 링크 포함)

각주

중첩된 소괄호를 이용하여 각주1)를 추가할 수 있습니다.

중첩된 소괄호를 이용하여 각주((이것이 각주))를 추가할 수 있습니다.

구간 설정

문서 내용을 구조적으로 만들기 위한 구간을 최대 5단계까지 사용 가능합니다.

구간 이름들을 3개 이상 가지고 있는 경우 목차가 자동적으로 생성됩니다. 문서 내에 ~~NOTOC~~문자열이 있는 경우 자동적으로 목차가 생성되지 않습니다.

3단계 구간 이름

4단계 구간 이름

5단계 구간 이름
==== 3단계 구간 이름 ====
=== 4단계 구간 이름 ===
== 5단계 구간 이름 ==

대쉬 (-)를 네 개 이상 연속해서 사용한다면, 수평선을 만들수 있습니다


그림과 다른 파일들

중괄호를 사용하여 그림을 표시할 수 있습니다(그림 파일이 wiki 내부든 외부든 상관 없습니다). 옵션에서 그림 크기도 지정할 수 있습니다.

실제 크기:

폭 변경:

폭과 높이를 변경2):

외부 그림 크기 변경:

실제 크기:          {{wiki:dokuwiki-128.png}}
폭 변경:            {{wiki:dokuwiki-128.png?50}}
폭과 높이 변경:      {{wiki:dokuwiki-128.png?200x50}}
외부 그림 크기 변경:  {{http://de3.php.net/images/php.gif?200x50}}

좌,우측에 공백 문자를 사용하여 정렬 위치를 선택할 수 있습니다.

{{ wiki:dokuwiki-128.png}}
{{wiki:dokuwiki-128.png }}
{{ wiki:dokuwiki-128.png }}

물론 그림 이름 역시 추가할 수 있습니다.(대부분의 브라우저에서 툴 팁으로 보여집니다)

캡션

{{ wiki:dokuwiki-128.png |캡션}}

지정된 그림파일명이 (“gif, jpeg, png”)가 아니면 (파일 내부든 외부든) 그 파일에 해당하는 링크가 표시되지 않습니다.

그림파일을 다른 문서로 링크하기 위해서는 위 그림 연결을 참조해 주십시오.

목록

Dokuwiki는 번호 목록과 번호없는 목록들을 지원합니다. 스페이스2개로 들여쓰기 후에 번호없는 목록은 *을 사용하거나 번호 목록은 -을 사용합니다.

  1. 번호 목록입니다.
  2. 또 다른 항목
    1. 더 깊은 레벨을 사용하려면 단지 들여쓰기를 하면 됩니다.
  3. 이상 끝
  * 목록입니다.
  * 2번째 항목
    * 다른 레벨이 있을 수도 있습니다.
  * 또 다른 항목

  - 번호 목록입니다.
  - 또 다른 항목
    - 더 깊은 레벨을 사용하려면 단지 들여쓰기를 하면 됩니다.
  - 이상 끝

목록에 관한 FAQ도 참조 해 주십시오.

문자 변환

DokuWiki는 특정 문자나 문자열을 그림이나 다른 문자, HTML 등으로 변환할 수 있습니다.

문자에서 그림으로의 변환 기능은 주로 스마일리를 통해 사용됩니다. 문자에서 HTML로의 변환기능은 기호의 변환에 사용되지만 다른 HTML로 변환하기 위해 설정할 수도 있습니다.

문자에서 그림으로 바꾸기

Dokuwiki 는 일반적으로 사용되는 이모티콘을 그림으로 쓸 수 있게 지원합니다. 이와 같은 스마일리나 다른 그림은 독자적인 설정으로 확장할 수 있습니다. 표준적으로 사용할 수 있는 스마일리는 아래와 같습니다.

문자에서 HTML로의 변환

기호: dokuwik는 특정 문자열을 활자표기에 대응하는 문자로 변환할 수 있습니다. 이하는 인식가능한 문자열의 예를 표시합니다.

→ ← ↔ ⇒ ⇐ ⇔ » « – — 640×480 © ™ ® “He thought 'It's a man's world'…”

-> <- <-> => <= <=> >> << -- --- 640x480 (c) (tm) (r)
"He thought 'It's a man's world'..."

마찬가지로 어떤 HTML 에서도 패턴 파일을 설정해두면 생성할 수 있게 됩니다.

패턴 파일 설정에 의해 변환하는 것 이외에 3가지의 예외가 있습니다. 곱하기 기호 (640×480), '싱글 쿼트' 및 “더블 쿼트”입니다. 이것들의 변환은 설정 옵션에서 설정을 끌 수 있습니다.

인용

때때로 댓글이거나 코멘트임을 표현하고 싶은 경우에 다음의 문법을 사용합니다.

내 생각에는 우리가 해야 할 것 같은데.

> 아니, 하면 안돼

>> 음, 우리가 해야 돼.

> 정말로?

>> 그래!

>>> 그러면 하지 뭐!

내 생각에는 우리가 해야 할 것 같은데.

아니, 하면 안돼
음, 우리가 해야 돼.
정말로?
그래!
그러면 하지 뭐!

간단한 문법으로 표(테이블)을 작성할 수 있습니다.

이름 1 이름 2 이름 3
행 1 열 1 행 1 열 2 행 1 열 3
행 2 열 1 열 병합 (주의: 파이프 문자가 2개 연속)
행 3 열 1 행 2 열 2 행 2 열 3

표의 일반적인 행들은 시작과 끝에 | (파이프 문자, shift + \)로 있어야 하고 이름 항목은 ^ (꺽쇠 기호)를 사용합니다.

^ 이름 1       ^ 이름 2        ^ 이름 3                   ^
| 행 1 열 1    | 행 1 열 2     | 행 1 열 3                |
| 행 2 열 1    | 열 병합 (주의: 파이프 문자가 2개 연속)  ||
| 행 3 열 1    | 행 2 열 2     | 행 2 열 3                |

셀을 수평으로 병합하려면 위에서 보여지듯이 다음 셀의 내용을 전부 비워둡니다. 셀을 구분하기 위한 파이프 문자는 어느 행이든 같은 수만큼 필요하니 주의하시기 바랍니다.

행 이름도 사용할 수 있습니다.

이름 1 이름 2
이름 3 행 1 열 2 행 1 열 3
이름 4 열 병합은 없음
이름 5 행 2 열 2 행 2 열 3

보다시피, 셀 앞에 어느 항목 분리자가 오는지에 따라 양식이 변화합니다.

|           ^ 이름 1               ^ 이름 2          ^
^ 이름 3    | 행 1 열 2            | 행 1 열 3       |
^ 이름 4    | 열 병합은 없음       |                 |
^ 이름 5    | 행 2 열 2            | 행 2 열 3       |

행을 병합할 수도 있습니다. 행 병합을 할 경우에는 병합 대상 셀의 아래 셀 안에 “:::“라는 문자열을 입력하십시오.

이름 1 이름 2 이름 3
행 1 열 1 행 병합 행 1 열 3
행 2 열 1 행 2 열 3
행 3 열 1 행 2 열 3

이 셀들에 ”:::” 이외의 문자열을 입력할 수 없습니다.

^ 이름 1       ^ 이름 2       ^ 이름 3       ^
| 행 1 열 1    | 행 병합      | 행 1 열 3    |
| 행 2 열 1    | :::          | 행 2 열 3    |
| 행 3 열 1    | :::          | 행 2 열 3    |

표의 내용을 정렬할 수 있습니다. 2개 이상의 공백문자를 텍스트의 반대쪽에 추가하면 됩니다. 즉, 오른쪽으로 정렬하려면 왼쪽으로 스페이스 2개를, 왼쪽으로 정렬하려면 오른쪽으로 스페이스 2개를 추가합니다. 가운데로 정렬하려면 텍스트의 양쪽 끝에 스페이스 2개를 추가합니다.

정렬된 표
오른쪽 가운데 왼쪽
왼쪽 오른쪽 가운데
xxxxxxxxxxxx xxxxxxxxxxxx xxxxxxxxxxxx

소스에서는 다음과 같이 보입니다.

^                 정렬된 표                ^^^
|        오른쪽|    가운데    |왼쪽          |
|왼쪽          |        오른쪽|    가운데    |
| xxxxxxxxxxxx | xxxxxxxxxxxx | xxxxxxxxxxxx |

자동 변형하지 않는 블록

만약 입력한 대로 (아무것도 변형되지 않고) 표시되어야 할 필요가 있는 경우에는 <nowiki> 태그나 보다 심플하게 2가지의 연속한 퍼센트 기호 %% 로 감싸 줍니다.

이 텍스트에는 http://www.splitbrain.org 과 같은 인터넷 주소나 **자동 변형 기법**을 포함하지만, 실제로는 아무것도 자동 변형 하지 않습니다. 마찬가지로 //__이__ 스마일리 첨부// 문자 ;-) 도 자동 변형 되지 않습니다.

<nowiki>
이 텍스트에는 http://www.splitbrain.org 과 같은 인터넷 주소나 **자동 변형 기법**을 포함하지만, 실제로는 아무것도 자동 변형 하지 않습니다.
</nowiki>
마찬가지로 %%//__이__ 스마일리 첨부// 문자 ;-)%% 도 자동 변형 되지 않습니다.

코드 블럭

최소한 2개 이상의 스페이스로 들여쓰기를 하거나 <code>태그, 또는 <file>태그를 사용하여 코드 블럭을 표시할 수 있습니다.

두 칸을 띄어쓰기한 문장입니다.
자동 변형이 끝난 코드입니다. 스페이스 수가 다음과 같이 유지됩니다. 예,     <- 여기
위와 같지만, 파일 내용을 표시할 때에 사용합니다.

위의 블럭은 아래와 같은 소스로부터 작성되었습니다.

  두 칸을 띄어쓰기한 문장입니다.
<code>
자동 변형이 끝난 코드입니다. 스페이스 수가 다음과 같이 유지됩니다. 예,    <- 여기
</code>
<file>
위와 같지만, 파일 내용을 표시할 때에 사용합니다.
</file>

구문 강조

DokuWiki는 소스 코드에 구문 강조를 사용하여, 읽기 쉽게 할 수 있습니다. DokuWiki는 일반적인 구문강조기 GeSHi를 사용하고 있습니다. -GeSHi가 지원하는 어떤 언어라도 지원 가능합니다. 문법은 전의 섹션내의 코드 블록과 같지만 사용되는 언어 이름을 <code java><file java>와 같이 태그 내에 집어 넣습니다.

/**
 * The HelloWorldApp class implements an application that
 * simply displays "Hello World!" to the standard output.
 */
class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!"); //Display the string.
    }
}

현재 다음과 같은 언어들을 지원합니다. abap, actionscript-french, actionscript, actionscript3, ada, apache, applescript, asm, asp, autoit, avisynth, bash, basic4gl, bf, bibtex, blitzbasic, bnf, boo, c, c_mac, caddcl, cadlisp, cfdg, cfm, cil, cmake, cobol, cpp, cpp-qt, csharp, css, d, dcs, delphi, diff, div, dos, dot, eiffel, email, erlang, fo, fortran, freebasic, genero, glsl, gml, gnuplot, groovy, gettext, haskell, hq9plus, html, idl, ini, inno, intercal, io, java5, java, javascript, kixtart, klonec, klonecpp, latex, lisp, locobasic, lolcode, lotusformulas, lotusscript, lscript, lsl2, lua, m68k, make, matlab, mirc, modula3, mpasm, mxml, mysql, nsis, oberon2, objc, ocaml-brief, ocaml, oobas, oracle8, oracle11, pascal, perl, per, php-brief, php, pic16, pixelbender, plsql, povray, powershell, progress, prolog, properties, providex, python, qbasic, rails, rebol, reg, robots, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, sql, tcl, teraterm, text, thinbasic, tsql, typoscript, vbnet, vb, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, winbatch, whois, xml, xorg_conf, xpp, z80

내려받을 수 있는 코드 블럭

앞서 말한 “<code>“나 ”<file>” 태그를 사용한 경우 표시되고 있는 코드를 다운로드할 수 있게 만들고 싶을 수도 있습니다. 다음과 같이 언어명 뒤에 파일명을 입력하면 그 코드를 다운로드할 수 있게 만들 수 있습니다.

<file php myexample.php>
<?php echo "hello world!"; ?>
</file>
myexample.php
<?php echo "hello world!"; ?>

구문 강조를 하고 싶지는 않지만 다운로드할 수 있는 경우에는 <code - myfile.foo>와 같이 언어의 명칭으로서 하이픈 (-) 을 사용해 주십시오.

HTML과 PHP 삽입

<html> 태그 및 <php> 태그를 사용하여 HTML 이나 PHP 의 코드를 문서내에 포함할 수 있습니다. 블럭 레벨의 코드를 포함하는 경우에는 대문자 태그 (<HTML><PHP>) 를 사용하여 주시기 바랍니다.。

HTML의 예:

<html>
이것은 <span style="color:red;font-size:150%;">HTML 인라인 요소</span>입니다.
</html>
<HTML>
<p style="border:2px dashed red;">이것은 HTML 블럭 레벨 요소입니다.</p>
</HTML>

이것은 HTML 인라인 요소입니다.

이것은 HTML 블럭 레벨 요소입니다.

PHP의 예:

<php>
echo 'PHP 에 의해 생성된 로고:';
echo '<img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP 로고" />';
echo '(HTML 인라인 요소를 생성)';
</php>
<PHP>
echo '<table class="inline"><tr><td>마찬가지지만 블럭 레벨 요소 속에 있습니다:</td>';
echo '<td><img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP 로고" /></td>';
echo '</tr></table>';
</PHP>

echo 'PHP 에 의해 생성된 로고:'; echo '<img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP 로고" />'; echo '(HTML 인라인 요소를 생성)';

echo '<table class="inline"><tr><td>마찬가지지만 블럭 레벨 요소 속에 있습니다:</td>';
echo '<td><img src="' . $_SERVER['PHP_SELF'] . '?=' . php_logo_guid() . '" alt="PHP 로고" /></td>';
echo '</tr></table>';

주의: HTML과 PHP은 기본 설정에서는 동작하지 않도록 되어 있습니다. 만일 동작하지 않도록 되어 있는 경우에는 코드는 실행되는 대신에 그대로 표시됩니다.

RSS/ATOM 피드 읽기

dokuwik는 외부 XML 피드에서 데이터를 얻어올 수 있습니다. XML 피드 해석에는 SimplePie 를 사용하고 있습니다. DokuWiki에서는 SimplePie가 해석 가능한 모든 포맷을 이용할 수 있습니다. 스페이스로 구분된 복수의 인수 표시를 커스터마이즈 할 수 있습니다:

파라미터 의 미
숫자 최대표시수. 기본은 8
reverse 표시순을 역순으로 한다.
author 작성자를 표시한다
date 날짜를 표시한다.
description 개요를 표시한다. 포함되어 있는 모든 HTML 태그는 무시됩니다.
숫자[dhm] 업데이트 간격. 숫자 뒤 문자의 뜻은 d=날, h=시간, m=분. (예 12h = 12시간)

업데이트 간격의 기본값은 4시간 입니다. 10분 미만으로 설정하면 10분으로 취급됩니다. 통상dokuwik는 페이지의 캐쉬된 버전을 제공하려 하기 때문에 동적인 외부의 내용을 포함하는 데에는 명확하게 적당하지 않습니다. 페이지가 최후에 다시 쓰여지고 나서 업데이트 간격이상이 지났다면 dokuwik는 캐쉬를 파기하고 다시 쓰게 됩니다.

예:

{{rss>http://slashdot.org/index.rss 5 author date 1h }}

제어용 매크로

어떤 구문은 그 자신은 출력되지 않지만 DokuWiki 의 동작에 영향을 미칩니다. 아래와 같은 제어용 매크로를 이용할 수 있습니다.

매크로 설명
~~NOTOC~~ 이 매크로가 페이지 위에 있는 경우, 목차가 생성되지 않습니다.
~~NOCACHE~~ 기본값은 DokuWiki 는 모든 출력을 캐쉬합니다. 이 동작은 경우에 따라 바라지 않는 행동일 수 있습니다. (<php> 태그가 사용되고 있는 경우 등). 이 매크로를 추가하면 DokuWiki는 매회 강제적으로 페이지를 다시 쓰게 됩니다.

문법 플러그인

DokuWiki 문법은, 플러그인을 사용해 확장 가능합니다. 설치된 플러그인의 사용 방법은 각 플러그인의 설명 페이지에 있습니다. 이 DokuWiki에서는 다음의 문법 플러그인이 사용 가능합니다.

번역

english version: dokuwiki-2006-03-09.

Add your email here if you created translated or modified whole or part of this page.

1)
이것이 각주
2)
그림 가로세로비와 지정된 폭과 높이의 비율이 다른 경우는 크기 조율되기 전에 새로운 가로세로비에 맞춰집니다.