2010年12月20日 星期一

位置標誌符

%toc 目錄

你可以新增'目錄'到你的html文件中,html文件由維基產生。
只要放置


到你的維基頁面中。 
你也可以新增標題到你的'toc'中: 

%title 頁面的標題


當你將你的維基頁面轉成html文件時,預設的頁面標題為該頁面的檔名。
假如你想要其他的標題,可將:


置於該維基頁面中。

%nohtml


假如你不想要將一個維基頁面轉成html文件,可將:


置於該文件中。

待辦列表

你可以建立個待辦列表 -- 這個列表你能對列表項目做勾選/取消選取的動作。
下面舉個列表的例子做說明:

= 可切換的項目列表 =
  * [X] 切換列表項目為開/關。
    * [X] 簡單的切換[ ]與[X]。
    * [X] 所有的次列表項目都會被適當的切換為開/關。
    * [X] 假如當前這行是個列表項目,只會切換子次列表項目。
    * [X] 父列表項目會隨著它的子項目被切換。
  * [X] 有數字的列表也能做切換。
  * [X] 新增列秒項目方塊有標亮的功能。
  * [X] 如果你在一般模式輸入o, O或在編輯模式輸入<Enter>鍵時,會新增 [ ] 到下一個新建立的列表項目。

在網頁中呈現的效果:

可切換的項目列表

  •  切換列表項目為開/關。
    •  簡單的切換[ ]與[X]。
    •  所有的次列表項目都會被適當的切換為開/關。
    •  假如當前這行是個列表項目,只會切換子次列表項目。
    •  父列表項目會隨著它的子項目被切換。
  •  有數字的列表也能做切換。
  •  新增列表項目方塊有標亮的功能。
  •  如果你在一般模式輸入o, O或在編輯模式輸入<Enter>鍵時,會新增 [ ] 到下一個新建立的列表項目。
按下 <Ctrl+Space>鍵可以切換第一個列表項目與其下的所有子項目:

= 可切換的項目列表 =
  * [ ] 切換列表項目為開/關。
    * [ ] 簡單的切換[ ]與[X]。
    * [ ] 所有的次列表項目都會被適當的切換為開/關。
    * [ ] 假如當前這行是個列表項目,只會切換子次列表項目。
    * [ ] 父列表項目會隨著它的子項目被切換。
  * [X] 有數字的列表也能做切換。
  * [X] 新增列表項目方塊有標亮的功能。
  * [X] 如果你在一般模式輸入o, O或在編輯模式輸入<Enter>鍵時,會新增 [ ] 到下一個新建立的列表項目。

在網頁中呈現的效果:

可切換的項目列表

  •  切換列表項目為開/關。
    •  簡單的切換[ ]與[X]。
    •  所有的次列表項目都會被適當的切換為開/關。
    •  假如當前這行是個列表項目,只會切換子次列表項目。
    •  父列表項目會隨著它的子項目被切換。
  •  有數字的列表也能做切換。
  •  新增列表項目方塊有標亮的功能。
  •  如果你在一般模式輸入o, O或在編輯模式輸入<Enter>鍵時,會新增 [ ] 到下一個新建立的列表項目。
在第三個列表項目上,按下 <Ctrl+Space>鍵可以切換它和它的所有父項目:

= 可切換的項目列表 =
  * [.] 切換列表項目為開/關。
    * [ ] 簡單的切換[ ]與[X]。
    * [X] 所有的次列表項目都會被適當的切換為開/關。
    * [ ] 假如當前這行是個列表項目,只會切換子次列表項目。
    * [ ] 父列表項目會隨著它的子項目被切換。
  * [ ] 有數字的列表也能做切換。
  * [ ] 新增列表項目方塊有標亮的功能。
  * [ ] 如果你在一般模式輸入o, O或在編輯模式輸入<Enter>鍵時,會新增 [ ] 到下一個新建立的列表項目。

在網頁中呈現的效果:

可切換的項目列表

  •  切換列表項目為開/關。
    •  簡單的切換[ ]與[X]。
    •  所有的次列表項目都會被適當的切換為開/關。
    •  假如當前這行是個列表項目,只會切換子次列表項目。
    •  父列表項目會隨著它的子項目被切換。
  •  有數字的列表也能做切換。
  •  新增列表項目方塊有標亮的功能。
  •  如果你在一般模式輸入o, O或在編輯模式輸入<Enter>鍵時,會新增 [ ] 到下一個新建立的列表項目。
父項目能被它的子項目所切換。在[ ]裡的符號,指的是切換的子項目所完成的百分比:

    [ ] -- 0%
    [.] -- 1-33%
    [o] -- 34-66%
    [O] -- 67-99%
    [X] -- 100%

使用可視模式可能切換多個列表項目。

2010年12月19日 星期日

註解


註解範例

文字在  之間為註解。

語法效果

區塊引用

區塊引用範例

文字開始有四個或多個空白為一個區塊引用。
在vimwiki中這是個區塊引用。在vim中並沒有標亮,但
    是在html中會加入樣式。區塊引用通常用在引用
    一段其他出處的文字。

語法效果

在vimwiki中這是個區塊引用。在vim中並沒有標亮,但 是在html中會加入樣式。區塊引用通常用在引用 一段其他出處的文字。

預先格式


使用  來定義一個預先格式的區塊:
你可以增加額外的訊息(class="brush: python")到{{{標籤後:
在網頁中輸出的結果:
 <pre class="brush: python">
 def hello(world):
     for x in range(10):
         print("Hello {0} number {1}".format(world, x))
 </pre>
可以使用外部的Javascript工具為你的程式碼加入顏色,像google syntax highlighter。
你可以設定vimwiki使預先格式文字標亮程式片段。 更多資訊 vimwiki-option-nested_syntaxes

vimwiki-option-nested_syntaxes


值              預設值             值
nested_syntaxes {}                為vim檔案類型與標亮關鍵字值對

描述
你能在預先文字中,依不同語法之程式語言做標亮的動作。
例如在你的vimrc中,可以做如下的設定:
  let wiki = {}
  let wiki.path = '~/my_wiki/'
  let wiki.nested_syntaxes = {'python': 'python', 'c++': 'cpp'}
  let g:vimwiki_list = [wiki]

能使你的python與c++程式語言標亮:
或者:

表格

表格的建立藉由在每個儲存格中填入內容,並以|字元作分隔。 你可以在儲存格中使用維基語法,包含字體與連結。 例如:
| 年    | 溫度 (low) | 溫度(high) |
 |------+----------+----------|
 | 1900 | -10      | 25       |
 | 1910 | -15      | 30       |
 | 1920 | -10      | 32       |
 | 1930 | _N/A_    | _N/A_    |
 | 1940 | -2       | 40       |
在網頁中呈現如下:
溫度 (low)溫度(high)
1900-1025
1910-1530
1920-1032
1930N/AN/A
1940-240

在html中,下面這部分是表格的標題
| 年 | 溫度 (low) | 溫度(high) |
 |---+----------+----------|
在網頁中呈現如下:
溫度 (low)溫度(high)

假如你對表格做縮排,它將置於html網頁的中央。
查看更多資訊 表格說明關於如何管理表格。
筆記:你不能在表格中,使用[[link|description]]類型的連結。必須用[[link][description]]來替代它。

表格說明

使用:VimwikiTable指令建立預設表格,5個欄位2列:
|   |   |   |   |   |
 |---+---+---+---+---|
 |   |   |   |   |   |
表格自動格式化。讓我們增加一些文字到第一個儲存格:
| 姓|   |   |   |   |
 |------------+---+---+---+---|
 |            |   |   |   |   |
無論你按下 <TAB>, <Enter> 或離開輸入模式,表格會自動被格式化:
| 姓|   |   |   |   |
 |------------+---+---+---+---|
 |            |   |   |   |   |
在網頁中呈現如下:
    
     

你可以很方便的建立好看的表格,只要輸入 <TAB>鍵與輸入新的值:
| 姓   | 名  | 年齡 | 城市 | 信箱                   |
 |-----+----+----+----+----------------------|
 | 浩   | 克  | 31 | 紐約 | vlad_pok@smail.com   |
 | 布魯斯 | 偉恩 | 27 | 台北 | esfandiary@tmail.com |
在網頁中呈現如下:
年齡城市信箱
31紐約vlad_pok@smail.com
布魯斯偉恩27台北esfandiary@tmail.com

要格式化使用'gqq'。

列表

未排序列表範例一

* 列表項目一
  * 列表項目二
    * 次列表項目一
    * 次列表項目二
    * 更多 ...
      * 更多...
      * ...
    * 次列表項目三
    * 等等。

語法效果

  • 列表項目一
  • 列表項目二
    • 次列表項目一
    • 次列表項目二
    • 更多 ...
      • 更多...
      • ...
    • 次列表項目三
    • 等等。

未排序列表範例二

- 列表項目一
  - 列表項目二
    - 次列表項目一
    - 次列表項目二
    - 更多 ...
      - 更多...
      - ...
    - 次列表項目三
    - 等等。

語法效果

  • 列表項目一
  • 列表項目二
    • 次列表項目一
    • 次列表項目二
    • 更多 ...
      • 更多...
      • ...
    • 次列表項目三
    • 等等。

混合未排序列表的兩種範例

- 列表項目一
  - 列表項目二
    * 次列表項目一
    * 次列表項目二
    * 更多 ...
      - 更多...
      - ...
    * 次列表項目三
    * 等等。

語法效果

  • 列表項目一
  • 列表項目一
  • 列表項目二
    • 次列表項目一
    • 次列表項目二
    • 更多 ...
      • 更多...
      • ...
    • 次列表項目三
    • 等等。

排序列表範例

# 排序列表項目一
  # 排序列表項目二
    # 次排序列表項目一
    # 次排序列表項目二
    # 更多 ...
      # 更多 ...
      # ...
    # 次排序列表項目三
    # 等等。

語法效果:

  1. 排序列表項目一
  2. 排序列表項目二
    1. 次排序列表項目一
    2. 次排序列表項目二
    3. 更多 ...
      1. 更多 ...
      2. ...
    4. 次排序列表項目三
    5. 等等。

混合排序與未排序列表範例二

* 列表項目一
  * 列表項目二
    # 排序列表項目一
    # 排序列表項目二

語法效果

  • 列表項目一
  • 列表項目二
    1. 排序列表項目一
    2. 排序列表項目二
筆記:在字元*,-,#前的空白是重要的。

多行列表項目範例

* 列表項目一
    繼續列表項目一
    再繼續列表項目一
  * 列表項目二
    * 次列表項目一
      繼續次列表項目一
      再繼續次列表項目一
    * 次列表項目二
    * 等等。

語法效果:

  • 列表項目一 繼續列表項目一 再繼續列表項目一
  • 列表項目二
    • 次列表項目一 繼續次列表項目一 再繼續次列表項目一
    • 次列表項目二
    • 等等。

定義列表範例

術語一:: 定義一
術語二::
::定義二
::定義三

語法效果:

術語一
定義一
術語二:: ::定義二 ::定義三

段落

段落是行的群組(沒有縮排)。段落間以空白行做分隔。
這兩行是第一個
段落。

這兩行是第二個
段落。

標題

標題層級一範例

標題層級一

預設所有的標題使用hl-Tilte標亮群組來做標亮。

標題層級二範例

你可以為每個標題層級設定不同顏色:
  :hi VimwikiHeader1 guifg=#FF0000
  :hi VimwikiHeader2 guifg=#00FF00
  :hi VimwikiHeader3 guifg=#0000FF
  :hi VimwikiHeader4 guifg=#FF00FF
  :hi VimwikiHeader5 guifg=#00FFFF
  :hi VimwikiHeader6 guifg=#FFFF00

語法效果

標題層級二

標題層級三範例

標題層級三

標題層級#範例

標題層級四

標題層級五
標題層級六
你可以在第一個'='字元前面加一個空白字元,在html網頁中可以得到將標題置中的效果:

標題層級一

連結

內部連結範例

!WikiWords: 
  !CapitalizedWordsConnected
你可以在WikiWords前面加一個驚嘆號,來限制WikiWords的連結: CapitalizedWordsConnected
在連結中包含空白字元:
  [[This is a link]]
或:
  [[This is a link source|Description of the link]]
或:
  [[This is a link source][Description of the link]]

外部連結範例

超連結: 
 http://code.google.com/p/vimwiki

連接加描述: 
 [http://habamax.ru/blog habamax home page]

圖片與圖片連結範例

圖片連結是一種連結,以jpg, png或gif其中之一為結尾。
圖片連結: 
 http://someaddr.com/picture.jpg
在網頁中會變成:
 <img src="http://someaddr.com/picture.jpg" />

連結到本地的圖片: 
 [[images/pabloymoira.jpg]]
在網頁中會變成:
 <img src="images/pabloymoira.jpg" />

雙方括號連結到一張圖片:
 [[http://habamax.ru/blog/wp-content/uploads/2009/01/2740254sm.jpg]]
在網頁中會變成:
 <img src="http://habamax.ru/ ... /.jpg" />

雙方括號連結加描述連結到一張圖片:
 [[http://habamax.ru/blog/wp-content/uploads/2009/01/2740254sm.jpg|dance]]
在網頁中會變成:
 <a href="http://habamax.ru/ ... /.jpg">dance</a>

雙方括號連結加替換文字連結到一張圖片:
 [[http://habamax.ru/blog/wp-content/uploads/2009/01/2740254sm.jpg|dance|]]
在網頁中會變成:
 <img src="http://habamax.ru/ ... /.jpg" alt="dance"/>

雙方括號連結加替換文字加樣式連結到一張圖片:
 [[http://helloworld.com/blabla.jpg|cool stuff|width:150px; height: 120px;]]
在網頁中會變成:
 <img src="http://helloworld.com/ ... /.jpg" alt="cool stuff"
 style="width:150px; height:120px"/>

雙方括號連結不加替換文字加樣式連結到一張圖片:
 [[http://helloworld.com/blabla.jpg||width:150px; height: 120px;]]
在網頁中會變成:
 <img src="http://helloworld.com/ ... /.jpg" alt=""
 style="width:150px; height:120px"/>

縮圖連結範例

[http://someaddr.com/bigpicture.jpg http://someaddr.com/thumbnail.jpg]
或:
 [[http://someaddr.com/bigpicture.jpg|http://someaddr.com/thumbnail.jpg]]
在網頁中會變成:
 <a href="http://someaddr.com/ ... /.jpg">
  <img src="http://../thumbnail.jpg /></a>

字體

字體範例

*bold text*
  _italic text_
  ~~strikeout text~~
  `code (no syntax) text`
  super^script^
  sub,,script,,

語法效果

bold text italic text strikeout text code (no syntax) text superscript subscript

維基語法

有很多維基都有自己的語法vimwiki也不例外。預設的vimwiki語法是google維基語法標記的一個子集合。
那裡也有MediaWiki語法檔案被包含在發行版本裡面。

區域指令

:VimwikiFollowLink
追蹤/建立維基連結。
:VimwikiGoBackLink
回到之前的維基連結。
:VimwikiSplitLink
水平分割視窗並追蹤/建立維基連結。
:VimwikiVSplitLink
垂直分割視窗並追蹤/建立維基連結。
:VimwikiNextLink
尋找下一個維基連結。
:VimwikiPrevLink
尋找上一個維基連結。
:VimwikiGoto
前往給定的連結。例如: :VimwikiGoto HelloWorld 開啟/建立HelloWorld維基頁面。
:VimwikiDeleteLink
刪除你現在所在的維基連結。
:VimwikiRenameLink
重新命名你現在所在的維基連結。
:Vimwiki2HTML
輸出現在的維基頁面到HTML檔案中。
:VimwikiAll2HTML
輸出所有的維基頁面到HTML檔案中。
:VimwikiToggleListItem
切換列表項目為開啟/關閉 (選取/未選取)
:VimwikiSearch /樣板/ :!VWS /樣板/
搜尋現在維基的所有檔案是否符合/樣板/。 使用:cnext顯示下一個符合的結果。 使用:cprevious顯示上一個符合的結果。
:VimwikiTable
建立一個5個欄位2列的表格。
:VimwikiTable cols rows 指定欄位與列建立一個表格。
:VimwikiTable cols 指定欄位與2列建立一個表格。
:VimwikiTableMoveColumnLeft , :VimwikiTableMoveColumnRight
移動現在的欄位到左邊或到右邊:
    例如: 

    | 標題1 | 標題2 | 標題3 | 標題4 | 標題5    |
    |-----+-----+-----+-----+--------|
    | 值1  | 值2  | 值3  | 值4  | 值5 |


    游標移到'標題1'上。

    | 標題2 | 標題1 | 標題3 | 標題4 | 標題5    |
    |-----+-----+-----+-----+--------|
    | 值2  | 值1  | 值3  | 值4  | 值5 |

    游標移到'標題3'上。

    | 標題2 | 標題3 | 標題1 | 標題4 | 標題5 |
    |-----+-----+-----+-----+-----|
    | 值2  | 值3  | 值1  | 值4  | 值5  |

    指令映射到 <Alt+Left>鍵與<Alt+Right>鍵。
    
:VimwikiGenerateLinks
插入所以可得的連結到現在的緩衝區。
:VimwikiDiaryNextDay
假如存在開啟下一天的日誌。 映射到 <Ctrl+Down>鍵。
:VimwikiDiaryPrevDay
假如存在開啟上一天的日誌。 映射到 <Ctrl+Up>鍵。

全域指令

:VimwikiIndex
開啟目前的維基首頁。
:VimwikiTabIndex
在新頁籤中開啟目前的維基首頁。
:VimwikiUISelect
開啟可選擇的維基首頁。
:VimwikiMakeDiaryNote
開啟目前維基首頁的當日的日誌維基文件。
:VimwikiTabMakeDiaryNote
在新頁籤中,開啟目前維基首頁的當日的日誌維基文件。

文字物件


ah                      一個標題前有多個空白行。
ih                      標題內前面沒有多個空白行。

你可以用'vah'去選擇一個標題的內容,或用'dah'去刪除它,或用'yah'去複製它,或用'cah'去更改它。

a\                      一個表格中的一個儲存格。
i\                      一個表格中的一個內部儲存格。
ac                      一個表格中的一個欄位。
ic                      一個表格中的一個內部欄位。

區域映射

一般模式

按鍵說明
<Enter>鍵追蹤/建立維基連結。
<Shift+Enter>鍵水平分割視窗並追蹤/建立維基連結。
<Ctrl+Enter>鍵垂直分割視窗並追蹤/建立維基連結。
<Backspace>鍵回到之前的維基連結。
<Tab>鍵尋找下一個維基連結。
<Shift-Tab>鍵尋找上一個維基連結。
\wd刪除你現在所在的維基連結。
\wr重新命名你現在所在的維基連結。
<Ctrl+Space>鍵切換列表項目為開啟/關閉 (選取/未選取)
=增加標題等級。
-移除標題等級。
gqq或gww格式化表格。
<Alt+Left>移動所在的表格欄位到左邊。游標移到該欄位上的任一字元。
<Alt+Right>移動所在的表格欄位到右邊。游標移到該欄位上的任一字元。
<Ctrl+Up>鍵開啟上一天的日誌連結。
<Ctrl+Down>鍵開啟下一天的日誌連結。
<2+滑鼠左鍵>追蹤/建立維基連結。
<Shift+2+滑鼠左鍵>水平分割視窗並追蹤/建立維基連結。
<Ctrl+2+滑鼠左鍵>垂直分割視窗並追蹤/建立維基連結。
<滑鼠右鍵><滑鼠左鍵>回到之前的維基連結。
備註: <2+滑鼠左鍵> 表示雙擊滑鼠左鍵。

輸入模式

按鍵說明
<Enter>鍵前進到所在儲存格的下一列,如果是最後一列,按下<Enter>會建立新的一列。
<Tab>鍵前進到下一個儲存格,如果是最後一列,按下<Tab>會建立新的一列。
<Shift+Enter>鍵會在新的一行輸入HTML的
標記。