[Groonga-commit] groonga/groonga.org at ba14c9e [gh-pages] Convert textile to markdown.

Back to archive index

Hiroyuki Sato null+****@clear*****
Sun Feb 7 10:35:40 JST 2016


Hiroyuki Sato	2016-02-07 10:35:40 +0900 (Sun, 07 Feb 2016)

  New Revision: ba14c9e1f09add97d1c863880f8b2eb47faca3fd
  https://github.com/groonga/groonga.org/commit/ba14c9e1f09add97d1c863880f8b2eb47faca3fd

  Merged 4d4de05: Merge pull request #24 from hiroyuki-sato/convert_to_md

  Message:
    Convert textile to markdown.
    
    Following commands executed.
    
      for i in *.textile ; do
        f=$( basename $i .textile )
        pandoc $i -o /tmp/mdtest/${f}.md
      done
    
      cd /tmp/mdtest
      perl -i -pe 's/\\//g' *.md
    
      for i in *.md ; do gsed -i '2d' $i ;done
      for i in *.md ; do gsed -i '1c---' $i ;done
    
      cd ${GROONGA_ORG}/en/_posts
    
      for i in *.textile ; do
        f=$( basename $i .textile )
        git mv $i ${f}.md
      done
    
      mv /tmp/mdtest/*.md .

  Added files:
    en/_posts/2012-08-29-groonga-cloudsearch-1.2.0.md
    en/_posts/2012-08-29-release.md
    en/_posts/2012-09-29-release.md
    en/_posts/2012-10-29-groonga-cloudsearch-1.3.0.md
    en/_posts/2012-10-29-release.md
    en/_posts/2012-11-29-release.md
    en/_posts/2012-12-29-release.md
    en/_posts/2013-01-08-fluent-plugin-groonga.md
    en/_posts/2013-01-08-release.md
    en/_posts/2013-01-29-release.md
    en/_posts/2013-02-09-release.md
    en/_posts/2013-02-28-release.md
    en/_posts/2013-03-29-release.md
    en/_posts/2013-04-29-release.md
    en/_posts/2013-05-01-remove-1x-packages-from-repository.md
    en/_posts/2013-05-10-sticker.md
    en/_posts/2013-05-29-release.md
    en/_posts/2013-06-29-release.md
    en/_posts/2013-07-29-release.md
    en/_posts/2013-08-29-release.md
    en/_posts/2013-09-29-release.md
    en/_posts/2013-10-29-release.md
    en/_posts/2013-11-29-droonga-0.7.0.md
    en/_posts/2013-11-29-release.md
    en/_posts/2013-12-16-drop-squeeze-and-lucid-support.md
    en/_posts/2013-12-29-release.md
    en/_posts/2014-01-29-droonga-0.9.0.md
    en/_posts/2014-01-29-release.md
    en/_posts/2014-02-09-droonga-0.9.9.md
    en/_posts/2014-02-09-release.md
    en/_posts/2014-02-28-droonga-1.0.0.md
    en/_posts/2014-03-29-droonga-1.0.1.md
    en/_posts/2014-03-29-release.md
    en/_posts/2014-04-29-droonga-1.0.2.md
    en/_posts/2014-05-29-droonga-1.0.3.md
    en/_posts/2014-06-29-droonga-1.0.4.md
    en/_posts/2014-11-29-droonga-1.0.8.md
  Removed files:
    en/_posts/2012-08-29-groonga-cloudsearch-1.2.0.textile
    en/_posts/2012-08-29-release.textile
    en/_posts/2012-09-29-release.textile
    en/_posts/2012-10-29-groonga-cloudsearch-1.3.0.textile
    en/_posts/2012-10-29-release.textile
    en/_posts/2012-11-29-release.textile
    en/_posts/2012-12-29-release.textile
    en/_posts/2013-01-08-fluent-plugin-groonga.textile
    en/_posts/2013-01-08-release.textile
    en/_posts/2013-01-29-release.textile
    en/_posts/2013-02-09-release.textile
    en/_posts/2013-02-28-release.textile
    en/_posts/2013-03-29-release.textile
    en/_posts/2013-04-29-release.textile
    en/_posts/2013-05-01-remove-1x-packages-from-repository.textile
    en/_posts/2013-05-10-sticker.textile
    en/_posts/2013-05-29-release.textile
    en/_posts/2013-06-29-release.textile
    en/_posts/2013-07-29-release.textile
    en/_posts/2013-08-29-release.textile
    en/_posts/2013-09-29-release.textile
    en/_posts/2013-10-29-release.textile
    en/_posts/2013-11-29-droonga-0.7.0.textile
    en/_posts/2013-11-29-release.textile
    en/_posts/2013-12-16-drop-squeeze-and-lucid-support.textile
    en/_posts/2013-12-29-release.textile
    en/_posts/2014-01-29-droonga-0.9.0.textile
    en/_posts/2014-01-29-release.textile
    en/_posts/2014-02-09-droonga-0.9.9.textile
    en/_posts/2014-02-09-release.textile
    en/_posts/2014-02-28-droonga-1.0.0.textile
    en/_posts/2014-03-29-droonga-1.0.1.textile
    en/_posts/2014-03-29-release.textile
    en/_posts/2014-04-29-droonga-1.0.2.textile
    en/_posts/2014-05-29-droonga-1.0.3.textile
    en/_posts/2014-06-29-droonga-1.0.4.textile
    en/_posts/2014-11-29-droonga-1.0.8.textile
  Renamed files:
    en/_posts/2012-11-29-groonga-cloudsearch-1.4.0.md
      (from en/_posts/2012-11-29-groonga-cloudsearch-1.4.0.textile)
    en/_posts/2012-12-26-groonga-cloudsearch-1.5.0.md
      (from en/_posts/2012-12-26-groonga-cloudsearch-1.5.0.textile)
    en/_posts/2014-07-29-droonga-1.0.5.md
      (from en/_posts/2014-07-29-droonga-1.0.5.textile)
    en/_posts/2014-09-29-droonga-1.0.6.md
      (from en/_posts/2014-09-29-droonga-1.0.6.textile)
    en/_posts/2014-10-07-droonga-1.0.7.md
      (from en/_posts/2014-10-07-droonga-1.0.7.textile)

  Added: en/_posts/2012-08-29-groonga-cloudsearch-1.2.0.md (+17 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2012-08-29-groonga-cloudsearch-1.2.0.md    2016-02-07 10:35:40 +0900 (44090ef)
@@ -0,0 +1,17 @@
+---
+layout: post.en
+title: Groonga CloudSearch 1.2.0 has been released
+---
+h2. Groonga CloudSearch 1.2.0 has been released
+
+We have released [Groonga CloudSearch](http://gcs.groonga.org/) 1.2.0.
+
+Groonga CloudSearch is a full text search system based on groonga. It
+provides [Amazon CloudSearch](http://aws.amazon.com/en/cloudsearch/)
+compatible API. It is useful if you are planning to build new Web apps
+with the Amazon CloudSearch.
+
+This release includes improvements about authentication, so you'll be
+able to use Groonga CloudSearch on the Web safely. See the [blog
+post](http://gcs.groonga.org/blog/2012/08/29/1.2.0-release/) for more
+details.

  Deleted: en/_posts/2012-08-29-groonga-cloudsearch-1.2.0.textile (+0 -11) 100644
===================================================================
--- en/_posts/2012-08-29-groonga-cloudsearch-1.2.0.textile    2016-02-06 14:39:42 +0900 (61a4992)
+++ /dev/null
@@ -1,11 +0,0 @@
----
-layout: post.en
-title: Groonga CloudSearch 1.2.0 has been released
----
-h2. Groonga CloudSearch 1.2.0 has been released
-
-We have released "Groonga CloudSearch":http://gcs.groonga.org/ 1.2.0.
-
-Groonga CloudSearch is a full text search system based on groonga. It provides "Amazon CloudSearch":http://aws.amazon.com/en/cloudsearch/ compatible API. It is useful if you are planning to build new Web apps with the Amazon CloudSearch.
-
-This release includes improvements about authentication, so you'll be able to use Groonga CloudSearch on the Web safely. See the "blog post":http://gcs.groonga.org/blog/2012/08/29/1.2.0-release/ for more details.

  Added: en/_posts/2012-08-29-release.md (+82 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2012-08-29-release.md    2016-02-07 10:35:40 +0900 (4a28f5f)
@@ -0,0 +1,82 @@
+---
+layout: post.en
+title: Groonga 2.0.6 has been released
+description: Groonga 2.0.6 has been released!
+---
+
+Groonga 2.0.6 has been released
+-------------------------------
+
+[Groonga 2.0.6](/docs/news.html#release-2-0-5) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are three topics for this release.
+
+-   Supported to search the records which does not contain the specified
+    words
+-   Added the documentation about groonga for server use
+-   Supported http_rewrite_module for groonga-httpd
+
+### Supported to search the records which does not contain the specified words
+
+This release began to support searching the records which does not
+contain the specified words.
+
+You can search the records which does not contain 'tomorrow' by
+following query: (This example use a table named diaries which has the
+column named content.)
+
+    select diaries --match_columns content --query "-tomorrow" --query_flags ALLOW_LEADING_NOT
+
+Note that you must use `--query_flags` with `ALLOW_LEADING_NOT`. Don't
+use `ALLOW_LEADING_NOT` frequently since it is a heavy processing.
+
+There is another useful option in `--query_flags`.
+
+Usually, `--query` with "title:keywords" parameter is treated as "Search
+keywords from title column". This is the spec of groonga full-text
+search.
+
+So, you can not search the records without interpreting the specified
+keyword. There is a problem if the specified keyword contained ':'.
+
+You can specify `'NONE'` as a parameter of `--query_flags` option in
+such a case.
+
+Here is a example to search [todo:]()
+
+    select diaries --match_columns content --query "todo:" --query_flags NONE
+
+There are many parameter with [--query_flags
+option](/docs/reference/commands/select.html#query-flags) .
+
+### Added the documentation about groonga for server use
+
+The documentation was added. We will update the documentation
+continuously in the future.
+
+This release provides a hint to choice groonga as a full-text search
+engine for server use.
+
+There are two protocol (GQTP and HTTP) which groonga provides. Also,
+groonga provides two independent implementation about HTTP protocol.
+
+You may be confused what to choose. So, we documented [the comparison
+table about groonga for server use](/docs/server/http/comparison.html).
+
+### Supported http_rewrite_module for groonga-httpd
+
+This release began to support PCRE auto detection for groonga-httpd. As
+a result, http_rewrite_module has been enabled in this release.
+
+See nginx website about
+[`http_rewrite_module`](http://wiki.nginx.org/HttpRewriteModule)
+details:
+
+### Conclusion
+
+See [Release 2.0.6 2012/08/29](/docs/news.html#release-2-0-6) about
+detailed changes since 2.0.5.
+
+Let's search by groonga!

  Deleted: en/_posts/2012-08-29-release.textile (+0 -70) 100644
===================================================================
--- en/_posts/2012-08-29-release.textile    2016-02-06 14:39:42 +0900 (be07893)
+++ /dev/null
@@ -1,70 +0,0 @@
----
-layout: post.en
-title: Groonga 2.0.6 has been released
-description: Groonga 2.0.6 has been released!
----
-
-h2. Groonga 2.0.6 has been released
-
-"Groonga 2.0.6":/docs/news.html#release-2-0-5 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are three topics for this release.
-
-* Supported to search the records which does not contain the specified words
-* Added the documentation about groonga for server use
-* Supported http_rewrite_module for groonga-httpd
-
-h3. Supported to search the records which does not contain the specified words
-
-This release began to support searching the records which does not contain the specified words.
-
-You can search the records which does not contain 'tomorrow' by following query: (This example use a table named diaries which has the column named content.)
-
-<pre>
-select diaries --match_columns content --query "-tomorrow" --query_flags ALLOW_LEADING_NOT
-</pre>
-
-Note that you must use @--query_flags@ with @ALLOW_LEADING_NOT �� . Don't use @ALLOW_LEADING_NOT@ frequently since it is a heavy processing.
-
-There is another useful option in @--query_flags �� .
-
-Usually, @--query@ with "title:keywords" parameter is treated as "Search keywords from title column". This is the spec of groonga full-text search.
-
-So, you can not search the records without interpreting the specified keyword. There is a problem if the specified keyword contained ':'.
-
-You can specify @'NONE'@ as a parameter of @--query_flags@ option in such a case.
-
-Here is a example to search "todo:":
-
-<pre>
-select diaries --match_columns content --query "todo:" --query_flags NONE
-</pre>
-
-There are many parameter with "--query_flags option":/docs/reference/commands/select.html#query-flags .
-
-h3. Added the documentation about groonga for server use
-
-The documentation was added. We will update the documentation continuously in the future.
-
-This release provides a hint to choice groonga as a full-text search engine for server use.
-
-There are two protocol (GQTP and HTTP) which groonga provides. Also, groonga provides two independent implementation about HTTP protocol.
-
-You may be confused what to choose. So, we documented "the comparison table about groonga for server use":/docs/server/http/comparison.html. 
-
-h3. Supported http_rewrite_module for groonga-httpd
-
-This release began to support PCRE auto detection for groonga-httpd. As a result, http_rewrite_module has been enabled in this release.
-
-See nginx website about "@http_rewrite_module@":http://wiki.nginx.org/HttpRewriteModule details:
-
-  
-
-
-h3. Conclusion
-
-See "Release 2.0.6 2012/08/29":/docs/news.html#release-2-0-6 about detailed changes since 2.0.5.
-
-Let's search by groonga!

  Added: en/_posts/2012-09-29-release.md (+180 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2012-09-29-release.md    2016-02-07 10:35:40 +0900 (63864b4)
@@ -0,0 +1,180 @@
+---
+layout: post.en
+title: Groonga 2.0.7 has been released
+description: Groonga 2.0.7 has been released!
+---
+
+Groonga 2.0.7 has been released
+-------------------------------
+
+[Groonga 2.0.7](/docs/news.html#release-2-0-7) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are three topics for this release.
+
+-   Supported to `load` command by POST
+-   Changed package name and port number for server use
+-   Supported `min` and `max` function
+
+### Supported to `load` command by POST
+
+This release began to support groonga-httpd load command by POST.
+
+Here is the more concrete example.
+
+Schema definition:
+
+      table_create --name Site --flags TABLE_HASH_KEY --key_type ShortText
+      column_create --table Site --name title --type ShortText
+
+You can use browser based admin tool by accessing
+http://localhost:10041/. Create Site table and title column.
+
+After creating Site table and title column, then prepare the POST data
+as JSON format.
+
+Sample POST data:
+
+      [
+      {"_key": "site1", "title":"Web site1 title"}
+      ]
+
+Execute curl command to post sample data.
+
+      % curl -X POST 'http://localhost:10041/d/load?table=Site' 
+        --verbose -H 'Content-Type: application/json' -d****@postb*****
+
+You can get following results:
+
+      * About to connect() to localhost port 10041 (#0)
+      *   Trying 127.0.0.1... connected
+      > POST /d/load?table=Site HTTP/1.1
+      > User-Agent: curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
+      > Host: localhost:10041
+      > Accept: */*
+      > Content-Type: application/json
+      > Content-Length: 50
+      > 
+      * upload completely sent off: 50out of 50 bytes
+      < HTTP/1.1 200 OK
+      < Server: nginx/1.2.1
+      < Date: Tue, 25 Sep 2012 05:38:24 GMT
+      < Content-Type: application/json
+      < Content-Length: 45
+      < Connection: keep-alive
+      < 
+      * Connection #0 to host localhost left intact
+      * Closing connection #0
+      [[0,1348551504.38352,0.000763893127441406],1]%
+
+Now, you have loaded sample data by POST.
+
+### Changed package name and port number for server use
+
+This release began to reconfigure packages for server use.
+
+The groonga project had been provided following packages for server use.
+
+-   groonga-server (HTTP server package)
+-   groonga-httpd (HTTP server package)
+
+It is inconvenient for GQTP server use. And there is a problem that port
+number is conflicted (10041).
+
+Then, we have split groonga-server package into independed one which
+provides HTTP or GQTP protocol server functionality and reassigned port
+number for server use.
+
+-   groonga-server-http (HTTP server 10041 port)
+-   groonga-server-gqtp (GQTP server 10043 port)
+
+<!-- -->
+
+    Note: groonga-server-http package and groonga-httpd package are exclusive one.
+
+### Supported `min` and `max` function
+
+This release began to support min and max function.
+
+-   The min function returns the minimum value within given arguments.
+-   The man function returns the maximum value within given arguments.
+
+These function enable you to customize full-text search results when the
+value of score about search results is unevenly distributed.
+
+Schema definition:
+
+      table_create --name Site --flags TABLE_HASH_KEY --key_type ShortText
+      column_create --table Site --name title --type ShortText
+      column_create --table Site --name point --type Int8
+
+      table_create --name Terms --flags TABLE_PAT_KEY|KEY_NORMALIZE --key_type ShortText --default_tokenizer TokenBigram
+      column_create --table Terms --name blog_title --flags COLUMN_INDEX|WITH_POSITION --type Site --source title
+
+Sample data:
+
+      load --table Site
+      [
+      {"_key":"http://example.org/","title":"This is test record 1!","point":1},
+      {"_key":"http://example.net/","title":"test record 2.","point":2},
+      {"_key":"http://example.com/","title":"test test record three.","point":3},
+      {"_key":"http://example.net/afr","title":"test record four.", "point":4},
+      {"_key":"http://example.org/aba","title":"test test test record five.","point":5},
+      {"_key":"http://example.com/rab","title":"test test test test record six.","point":0},
+      {"_key":"http://example.net/atv","title":"test test test record seven.","point":7},
+      {"_key":"http://example.org/gat","title":"test test record eight.","point":8},
+      {"_key":"http://example.com/vdw","title":"test test record nine.","point":9},
+      ]
+
+For example, There is a situation that you want to execute full-text
+search by specified word (test) stored at title column. (There are some
+data that the value of importance is already stored at point column.)
+
+If you want to get matched and sorted results with specified word
+(test), here is the query.
+
+      > select --table Site --query title:@test --output_columns _id,_score,title,point  --sortby -_score,-point
+
+      ["_id","UInt32"],["_score","Int32"],["title","ShortText"],["point","Int8"]
+      [6,4,"test test test test record six.",0],
+      [7,3,"test test test record seven.",7],
+      [5,3,"test test test record five.",5],
+      [9,2,"test test record nine.",9],
+      [8,2,"test test record eight.",8],
+      [3,2,"test test record three.",3],
+      [4,1,"test record four.",4],
+      [2,1,"test record 2.",2],
+      [1,1,"This is test record 1!",1]
+
+But, it returns "test test test test record fix." as best matched
+result.
+
+The min function satisfy the demand that you want to customize the
+matched results by eliminating unwanted ones.
+
+There is the way to customize the value of _score column by using min
+function.
+
+      > select --table Site --query title:@test --output_columns _id,_score,title,point 
+          --scorer '_score = min(_score, 3) --sortby -_score,-point
+
+      ["_id","UInt32"],["_score","Int32"],["title","ShortText"],["point","Int8"]
+      [7,3,"test test test record seven.",7],
+      [5,3,"test test test record five.",5],
+      [6,3,"test test test test record six.",0],
+      [9,2,"test test record nine.",9],
+      [8,2,"test test record eight.",8],
+      [3,2,"test test record three.",3],
+      [4,1,"test record four.",4],
+      [2,1,"test record 2.",2],[1,1,"This is test record 1!",1]
+
+Now, you can get the intended results which consider matched results and
+the value of importance.
+
+### Conclusion
+
+See [Release 2.0.7 2012/09/29](/docs/news.html#release-2-0-7) about
+detailed changes since 2.0.6.
+
+Let's search by groonga!

  Deleted: en/_posts/2012-09-29-release.textile (+0 -181) 100644
===================================================================
--- en/_posts/2012-09-29-release.textile    2016-02-06 14:39:42 +0900 (2889297)
+++ /dev/null
@@ -1,181 +0,0 @@
----
-layout: post.en
-title: Groonga 2.0.7 has been released
-description: Groonga 2.0.7 has been released!
----
-
-h2. Groonga 2.0.7 has been released
-
-"Groonga 2.0.7":/docs/news.html#release-2-0-7 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are three topics for this release.
-
-* Supported to @load@ command by POST
-* Changed package name and port number for server use
-* Supported @min@ and @max@ function
-
-h3. Supported to @load@ command by POST
-
-This release began to support groonga-httpd load command by POST.
-
-Here is the more concrete example.
-
-Schema definition:
-
-<pre>
-  table_create --name Site --flags TABLE_HASH_KEY --key_type ShortText
-  column_create --table Site --name title --type ShortText
-</pre>
-
-You can use browser based admin tool by accessing http://localhost:10041/. Create Site table and title column.
-
-After creating Site table and title column, then prepare the POST data as JSON format.
-
-Sample POST data:
-
-<pre>
-  [
-  {"_key": "site1", "title":"Web site1 title"}
-  ]
-</pre>
-
-Execute curl command to post sample data.
-
-<pre>
-  % curl -X POST 'http://localhost:10041/d/load?table=Site' \
-    --verbose -H 'Content-Type: application/json' -d****@postb*****
-</pre>
-
-You can get following results:
-
-<pre>
-  * About to connect() to localhost port 10041 (#0)
-  *   Trying 127.0.0.1... connected
-  > POST /d/load?table=Site HTTP/1.1
-  > User-Agent: curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
-  > Host: localhost:10041
-  > Accept: */*
-  > Content-Type: application/json
-  > Content-Length: 50
-  > 
-  * upload completely sent off: 50out of 50 bytes
-  < HTTP/1.1 200 OK
-  < Server: nginx/1.2.1
-  < Date: Tue, 25 Sep 2012 05:38:24 GMT
-  < Content-Type: application/json
-  < Content-Length: 45
-  < Connection: keep-alive
-  < 
-  * Connection #0 to host localhost left intact
-  * Closing connection #0
-  [[0,1348551504.38352,0.000763893127441406],1]%
-</pre>
-
-Now, you have loaded sample data by POST.
-
-h3. Changed package name and port number for server use
-
-This release began to reconfigure packages for server use.
-
-The groonga project had been provided following packages for server use.
-
-* groonga-server (HTTP server package)
-* groonga-httpd (HTTP server package)
-
-It is inconvenient for GQTP server use. And there is a problem that port number is conflicted (10041).
-
-Then, we have split groonga-server package into independed one which provides HTTP or GQTP protocol server functionality and reassigned port number for server use.
-
-* groonga-server-http (HTTP server 10041 port)
-* groonga-server-gqtp (GQTP server 10043 port)
-
-<pre>
-Note: groonga-server-http package and groonga-httpd package are exclusive one.
-</pre>
-
-h3. Supported @min@ and @max@ function
-
-This release began to support min and max function.
-
-* The min function returns the minimum value within given arguments.
-* The man function returns the maximum value within given arguments.
-
-These function enable you to customize full-text search results when the value of score about search results is unevenly distributed.
-
-Schema definition:
-
-<pre>
-  table_create --name Site --flags TABLE_HASH_KEY --key_type ShortText
-  column_create --table Site --name title --type ShortText
-  column_create --table Site --name point --type Int8
-
-  table_create --name Terms --flags TABLE_PAT_KEY|KEY_NORMALIZE --key_type ShortText --default_tokenizer TokenBigram
-  column_create --table Terms --name blog_title --flags COLUMN_INDEX|WITH_POSITION --type Site --source title
-</pre>
-
-Sample data:
-
-<pre>
-  load --table Site
-  [
-  {"_key":"http://example.org/","title":"This is test record 1!","point":1},
-  {"_key":"http://example.net/","title":"test record 2.","point":2},
-  {"_key":"http://example.com/","title":"test test record three.","point":3},
-  {"_key":"http://example.net/afr","title":"test record four.", "point":4},
-  {"_key":"http://example.org/aba","title":"test test test record five.","point":5},
-  {"_key":"http://example.com/rab","title":"test test test test record six.","point":0},
-  {"_key":"http://example.net/atv","title":"test test test record seven.","point":7},
-  {"_key":"http://example.org/gat","title":"test test record eight.","point":8},
-  {"_key":"http://example.com/vdw","title":"test test record nine.","point":9},
-  ]
-</pre>
-
-For example, There is a situation that you want to execute full-text search by specified word (test) stored at title column. (There are some data that the value of importance is already stored at point column.)
-
-If you want to get matched and sorted results with specified word (test), here is the query.
-
-<pre>
-  > select --table Site --query title:@test --output_columns _id,_score,title,point  --sortby -_score,-point
-
-  ["_id","UInt32"],["_score","Int32"],["title","ShortText"],["point","Int8"]
-  [6,4,"test test test test record six.",0],
-  [7,3,"test test test record seven.",7],
-  [5,3,"test test test record five.",5],
-  [9,2,"test test record nine.",9],
-  [8,2,"test test record eight.",8],
-  [3,2,"test test record three.",3],
-  [4,1,"test record four.",4],
-  [2,1,"test record 2.",2],
-  [1,1,"This is test record 1!",1]
-</pre>
-
-But, it returns "test test test test record fix." as best matched result.
-
-The min function satisfy the demand that you want to customize the matched results by eliminating unwanted ones.
-
-There is the way to customize the value of _score column by using min function.
-
-<pre>
-  > select --table Site --query title:@test --output_columns _id,_score,title,point \
-      --scorer '_score = min(_score, 3) --sortby -_score,-point
-
-  ["_id","UInt32"],["_score","Int32"],["title","ShortText"],["point","Int8"]
-  [7,3,"test test test record seven.",7],
-  [5,3,"test test test record five.",5],
-  [6,3,"test test test test record six.",0],
-  [9,2,"test test record nine.",9],
-  [8,2,"test test record eight.",8],
-  [3,2,"test test record three.",3],
-  [4,1,"test record four.",4],
-  [2,1,"test record 2.",2],[1,1,"This is test record 1!",1]
-</pre>
-
-Now, you can get the intended results which consider matched results and the value of importance.
-
-h3. Conclusion
-
-See "Release 2.0.7 2012/09/29":/docs/news.html#release-2-0-7 about detailed changes since 2.0.6.
-
-Let's search by groonga!

  Added: en/_posts/2012-10-29-groonga-cloudsearch-1.3.0.md (+21 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2012-10-29-groonga-cloudsearch-1.3.0.md    2016-02-07 10:35:40 +0900 (8f67c00)
@@ -0,0 +1,21 @@
+---
+layout: post.en
+title: Groonga CloudSearch 1.3.0 has been released
+---
+h2. Groonga CloudSearch 1.3.0 has been released
+
+We have released [Groonga CloudSearch](http://gcs.groonga.org/) 1.3.0.
+
+Groonga CloudSearch is a full text search system based on groonga. It
+provides [Amazon CloudSearch](http://aws.amazon.com/en/cloudsearch/)
+compatible API. It is useful if you are planning to build new Web apps
+with the Amazon CloudSearch.
+
+This release includes improvements about CLI tools.
+We also have shipped Groonga CloudSearch Console 1.0.0. This is an
+administrative web console for Groonga CloudSearch. You can manage your
+Groonga CloudSearch Server with web UI.
+
+See the [blog
+post](http://gcs.groonga.org/blog/2012/10/29/1.3.0-release/) for more
+details.

  Deleted: en/_posts/2012-10-29-groonga-cloudsearch-1.3.0.textile (+0 -14) 100644
===================================================================
--- en/_posts/2012-10-29-groonga-cloudsearch-1.3.0.textile    2016-02-06 14:39:42 +0900 (3dd1fec)
+++ /dev/null
@@ -1,14 +0,0 @@
----
-layout: post.en
-title: Groonga CloudSearch 1.3.0 has been released
----
-h2. Groonga CloudSearch 1.3.0 has been released
-
-We have released "Groonga CloudSearch":http://gcs.groonga.org/ 1.3.0.
-
-Groonga CloudSearch is a full text search system based on groonga. It provides "Amazon CloudSearch":http://aws.amazon.com/en/cloudsearch/ compatible API. It is useful if you are planning to build new Web apps with the Amazon CloudSearch.
-
-This release includes improvements about CLI tools.
-We also have shipped Groonga CloudSearch Console 1.0.0. This is an administrative web console for Groonga CloudSearch. You can manage your Groonga CloudSearch Server with web UI.
-
-See the "blog post":http://gcs.groonga.org/blog/2012/10/29/1.3.0-release/ for more details.

  Added: en/_posts/2012-10-29-release.md (+139 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2012-10-29-release.md    2016-02-07 10:35:40 +0900 (cd64532)
@@ -0,0 +1,139 @@
+---
+layout: post.en
+title: Groonga 2.0.8 has been released
+description: Groonga 2.0.8 has been released!
+---
+
+Groonga fulltext search engine meetup
+-------------------------------------
+
+We hold a event groonga fulltext search engine session next month!
+
+-   Location: VOYAGE GROUP, Inc. Shibuya First Place Bldg. 8F Seminar
+    room Shinsen-cho 8-16, Shibuya, Tokyo [Google
+    Maps](https://www.google.co.jp/maps?q=35.6553195,139.6937795)
+-   Date: 2012/11/29 19:00 - 21:00 JST (Open: 18:30, Party starts 21:00)
+-   Reservation: via [ATND event page](http://atnd.org/events/33070)
+
+See [ATND event page](http://atnd.org/events/33070) about event details.
+
+Now, we are looking for the speakers![]() Deadline for submission is Nov
+04 23:59, 2012 (JST). There is a benefit for the speaker that fee of
+party is free.
+
+NOTE: ATND is the web site which support to announce event and keep
+track of who's attending.
+
+Groonga 2.0.8 has been released
+-------------------------------
+
+[Groonga 2.0.8](/docs/news.html#release-2-0-8) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are two topics for this release.
+
+-   Supported custom query expansion by plugin
+-   Supported Ubuntu 12.10 (Quantal Quetzal)
+
+### Supported custom query expansion by plugin
+
+This release began to support custom query expansion by plugin.
+
+Groonga already supports query expansion, but it requires table which
+stores synonyms beforehand.
+
+Here is the more concrete example.
+
+Schema definition:
+
+      table_create Memos TABLE_NO_KEY
+      column_create Memos content COLUMN_SCALAR ShortText
+      table_create Lexicon TABLE_PAT_KEY ShortText --default_tokenizer TokenBigram
+      column_create Lexicon diary_content COLUMN_INDEX|WITH_POSITION Memos content
+      table_create Synonyms TABLE_PAT_KEY ShortText
+      column_create Synonyms words COLUMN_SCALAR ShortText
+
+Sample data:
+
+      load --table Memos
+      [
+      ["content"],
+      ["Start groonga!"],
+      ["Start mroonga!"],
+      ["Start rroonga!"],
+      ["Start Ruby!"],
+      ["Learning Ruby and groonga..."],
+      ]
+
+      load --table Synonyms
+      [
+      ["_key", "words"],
+      ["groonga", "(groonga OR rroonga OR mroonga)"]
+      ]
+
+If you want to search 'groonga' with expanded query 'rroonga' and
+'mroonga', you need to setup synonyms table 'Synonyms' at first.
+Then, you can search 'groonga' with automatically expanded keyword
+'rroonga' and 'mroonga' from content column of Memos table.
+
+Here is the query to search 'groonga' with query expansion.
+
+      > select --table Memos --query_expansion Synonyms.words --match_columns content --query groonga
+
+      [[0,1350898793.34538,0.00174403190612793],
+       [
+        [[4],
+         [
+          ["_id","UInt32"],["content","ShortText"]],
+          [1,"Start groonga!"],
+          [5,"Learning Ruby and groonga..."],
+          [3,"Start rroonga!"],
+          [2,"Start mroonga!"]
+        ]
+       ]
+      ]
+
+On the other hand, custom query expansion by plugin has supported. As
+proof of concept, example plugin `QueryExpanderTSV` is bundled in this
+release.
+
+Here is the more concrete example how to use `QueryExpanderTSV`.
+
+Using `QueryExpanderTSV`, you doesn't need to setup table for synonyms
+anymore. There are two differences between builtin query expansion and
+`QueryExpanderTSV`.
+
+-   Describe tab separated text file
+-   Specify plugin name to `--query_expansion`
+
+Here is the example about tab separated file with synonyms.
+
+      groonga[TAB]groonga[TAB]rroonga[TAB]mroonga
+
+Here is the query to search 'groonga' with `QueryExpanderTSV`.
+
+      > select --table Memos --query_expansion QueryExpanderTSV --match_columns content --query groonga
+
+This query is equivalent to following:
+
+      --query "((groonga) OR (rroonga) OR (mroonga))" 
+
+The synonyms template file is installed as `/etc/groonga/synonyms.tsv`.
+You can customize this file on your purpose.
+
+If you want to put somewhere else, set
+`GRN_QUERY_EXPANDER_TSV_SYNONYMS_FILE` environment variable.
+
+### Supported Ubuntu 12.10 (Quantal Quetzal)
+
+Ubuntu 12.10 Quantal Quetzal had been released Oct 18, 2012.
+
+This release began to support Ubuntu 12.10 by providing deb packages.
+
+### Conclusion
+
+See [Release 2.0.8 2012/10/29](/docs/news.html#release-2-0-8) about
+detailed changes since 2.0.7.
+
+Let's search by groonga!

  Deleted: en/_posts/2012-10-29-release.textile (+0 -135) 100644
===================================================================
--- en/_posts/2012-10-29-release.textile    2016-02-06 14:39:42 +0900 (9f3e9ef)
+++ /dev/null
@@ -1,135 +0,0 @@
----
-layout: post.en
-title: Groonga 2.0.8 has been released
-description: Groonga 2.0.8 has been released!
----
-
-h2. Groonga fulltext search engine meetup
-
-We hold a event groonga fulltext search engine session next month!
-
-* Location:  VOYAGE GROUP, Inc. Shibuya First Place Bldg. 8F Seminar room Shinsen-cho 8-16, Shibuya, Tokyo "Google Maps":https://www.google.co.jp/maps?q=35.6553195,139.6937795
-* Date: 2012/11/29 19:00 - 21:00 JST (Open: 18:30, Party starts 21:00)
-* Reservation: via "ATND event page":http://atnd.org/events/33070
-
-See "ATND event page":http://atnd.org/events/33070 about event details.
-
-Now, we are looking for the speakers!! Deadline for submission is Nov 04 23:59, 2012 (JST). There is a benefit for the speaker that fee of party is free.
-
-NOTE: ATND is the web site which support to announce event and keep track of who's attending.
-
-h2. Groonga 2.0.8 has been released
-
-"Groonga 2.0.8":/docs/news.html#release-2-0-8 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are two topics for this release.
-
-* Supported custom query expansion by plugin
-* Supported Ubuntu 12.10 (Quantal Quetzal)
-
-h3. Supported custom query expansion by plugin
-
-This release began to support custom query expansion by plugin.
-
-Groonga already supports query expansion, but it requires table which stores synonyms beforehand.
-
-Here is the more concrete example.
-
-Schema definition:
-
-<pre>
-  table_create Memos TABLE_NO_KEY
-  column_create Memos content COLUMN_SCALAR ShortText
-  table_create Lexicon TABLE_PAT_KEY ShortText --default_tokenizer TokenBigram
-  column_create Lexicon diary_content COLUMN_INDEX|WITH_POSITION Memos content
-  table_create Synonyms TABLE_PAT_KEY ShortText
-  column_create Synonyms words COLUMN_SCALAR ShortText
-</pre>
-
-Sample data:
-
-<pre>
-  load --table Memos
-  [
-  ["content"],
-  ["Start groonga!"],
-  ["Start mroonga!"],
-  ["Start rroonga!"],
-  ["Start Ruby!"],
-  ["Learning Ruby and groonga..."],
-  ]
-
-  load --table Synonyms
-  [
-  ["_key", "words"],
-  ["groonga", "(groonga OR rroonga OR mroonga)"]
-  ]
-</pre>
-
-If you want to search 'groonga' with expanded query 'rroonga' and 'mroonga', you need to setup synonyms table 'Synonyms' at first.
-Then, you can search 'groonga' with automatically expanded keyword 'rroonga' and 'mroonga' from content column of Memos table.
-
-Here is the query to search 'groonga' with query expansion.
-
-<pre>
-  > select --table Memos --query_expansion Synonyms.words --match_columns content --query groonga
-
-  [[0,1350898793.34538,0.00174403190612793],
-   [
-    [[4],
-     [
-      ["_id","UInt32"],["content","ShortText"]],
-      [1,"Start groonga!"],
-      [5,"Learning Ruby and groonga..."],
-      [3,"Start rroonga!"],
-      [2,"Start mroonga!"]
-    ]
-   ]
-  ]
-</pre>
-
-On the other hand, custom query expansion by plugin has supported. As proof of concept, example plugin @QueryExpanderTSV@ is bundled in this release.
-
-Here is the more concrete example how to use @QueryExpanderTSV �� .
-
-Using @QueryExpanderTSV@, you doesn't need to setup table for synonyms anymore. There are two differences between builtin query expansion and @QueryExpanderTSV �� .
-
-* Describe tab separated text file
-* Specify plugin name to @--query_expansion@
-
-Here is the example about tab separated file with synonyms.
-
-<pre>
-  groonga[TAB]groonga[TAB]rroonga[TAB]mroonga
-</pre>
-
-Here is the query to search 'groonga' with @QueryExpanderTSV �� .
-
-<pre>
-  > select --table Memos --query_expansion QueryExpanderTSV --match_columns content --query groonga
-</pre>
-
-This query is equivalent to following:
-
-<pre>
-  --query "((groonga) OR (rroonga) OR (mroonga))" 
-</pre>
-
-The synonyms template file is installed as @/etc/groonga/synonyms.tsv �� . You can customize this file on your purpose.
-
-If you want to put somewhere else, set @GRN_QUERY_EXPANDER_TSV_SYNONYMS_FILE@ environment variable.
-
-h3. Supported Ubuntu 12.10 (Quantal Quetzal)
-
-
-Ubuntu 12.10 Quantal Quetzal had been released Oct 18, 2012.
-
-This release began to support Ubuntu 12.10 by providing deb packages.
-
-h3. Conclusion
-
-See "Release 2.0.8 2012/10/29":/docs/news.html#release-2-0-8 about detailed changes since 2.0.7.
-
-Let's search by groonga!

  Renamed: en/_posts/2012-11-29-groonga-cloudsearch-1.4.0.md (+6 -4) 72%
===================================================================
--- en/_posts/2012-11-29-groonga-cloudsearch-1.4.0.textile    2016-02-06 14:39:42 +0900 (12d288e)
+++ en/_posts/2012-11-29-groonga-cloudsearch-1.4.0.md    2016-02-07 10:35:40 +0900 (8038b46)
@@ -4,18 +4,20 @@ title: Groonga CloudSearch 1.4.0 has been released
 ---
 h2. Groonga CloudSearch 1.4.0 has been released
 
-We have released "Groonga CloudSearch":http://gcs.groonga.org/ 1.4.0.
+We have released [Groonga CloudSearch](http://gcs.groonga.org/) 1.4.0.
 
 Groonga CloudSearch is a full text search system based on groonga.
-It provides "Amazon CloudSearch":http://aws.amazon.com/en/cloudsearch/
+It provides [Amazon CloudSearch](http://aws.amazon.com/en/cloudsearch/)
 compatible API. It is useful if you are planning to build new Web apps
 with the Amazon CloudSearch.
 
-This release includes improvements about API compatibility to the Amazon
+This release includes improvements about API compatibility to the
+Amazon
 CloudSearch and configurations of the daemon.
 We also have shipped Groonga CloudSearch Console 1.1.0. This provides
 an administration web console for Groonga CloudSearch. You can manage
 your Groonga CloudSearch Server with web UI.
 
-See the "blog post":http://gcs.groonga.org/blog/2012/11/29/1.4.0-release/
+See the [blog
+post](http://gcs.groonga.org/blog/2012/11/29/1.4.0-release/)
 for more details.

  Added: en/_posts/2012-11-29-release.md (+371 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2012-11-29-release.md    2016-02-07 10:35:40 +0900 (d51fe91)
@@ -0,0 +1,371 @@
+---
+layout: post.en
+title: Groonga 2.0.9 has been released
+description: Groonga 2.0.9 has been released!
+---
+
+Groonga 2.0.9 has been released
+-------------------------------
+
+[Groonga 2.0.9](/docs/news.html#release-2-0-9) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are four topics for this release.
+
+-   Supported snippet_html() function
+-   Supported nested index search among related table by column index
+-   Supported range search by using index
+-   Supported calculation across meridian, equator, the date line
+    by geo_distance() function
+
+### Supported snippet_html() function
+
+This release began to support snippet_html() function which extract
+keyword and surrounding text.
+Note that this is experimentally supported API, so this API would be
+changed in the future.
+
+Use snippet_html() fuction following syntax:
+
+      snippet_html(column name)
+
+Here is the more concrete example.
+
+Schema definition:
+
+      table_create Documents TABLE_NO_KEY
+      column_create Documents content COLUMN_SCALAR Text
+      table_create Terms TABLE_PAT_KEY|KEY_NORMALIZE ShortText --default_tokenizer TokenBigram
+      column_create Terms documents_content_index COLUMN_INDEX|WITH_POSITION Documents content
+
+Sample data:
+
+      load --table Documents
+      [
+      ["content"],
+      ["Groonga is a fast and accurate full text search engine based on inverted index."],
+      ["Groonga is also a column-oriented database management system (DBMS)."],
+      ["Mroonga was called groonga storage engine."]
+      ]
+
+If you want to search 'groonga' and extract 'groonga' and surrounding
+text from Documents
+table, try following:
+
+Here is the query to search 'groonga' with snippet_html function.
+
+      select Documents --output_columns "snippet_html(content)" --command_version 2 --match_columns content --query "groonga" 
+      [
+        [0,1353893385.5454,0.000486850738525391],
+        [
+          [
+            [3],
+            [["snippet_html","null"]],
+            [["Groonga is a fast and accurate full text search engine based on inverted index."]],
+            [["Groonga is also a column-oriented database management system (DBMS)."]],
+            [["Mroonga was called groonga storage engine."]]
+          ]
+        ]
+      ]
+
+As a result, specified keyword is surrounded by `<span>` tag, and
+keyword 'groonga' and surrounding text is extracted like a highlighted
+search results.
+
+Note that you need to specify `'--command_version 2'` in the query.
+The reason why function call in `--output_column` has supported from
+version 2.0.9.
+
+See following documentation about
+[snippet_html](http://groonga.org/docs/reference/functions/snippet_html.html)
+details.
+
+### Supported nested index search among related table by column index
+
+This release began to support nested index search among related table by
+column index.
+
+If there are relationships among multiple table with column index, you
+can search multiple table by specifing column index name.
+
+Here is the concrete example.
+
+there are tables which store blog articles, comments for articles. The
+table which stores articles has columns for article and comment, and the
+comment column refers comments table.
+The table which stores comments has columns for comment and column index
+to article table.
+
+In the previous release of groonga, if you want to search the articles
+which contain specified keyword in comment, you need to execute fulltext
+search for table of comment, then search the records which contains
+fulltext search results.
+
+Now, you can search the records by specifing the refererence column
+index at once.
+
+here is the sample how to use this feature.
+
+Schema definition:
+
+      table_create Comments TABLE_HASH_KEY UInt32
+      column_create Comments content COLUMN_SCALAR ShortText
+
+      table_create Articles TABLE_NO_KEY
+      column_create Articles content COLUMN_SCALAR Text
+      column_create Articles comment COLUMN_SCALAR Comments
+
+      table_create Lexicon TABLE_PAT_KEY|KEY_NORMALIZE ShortText --default_tokenizer TokenBigram
+      column_create Lexicon articles_content COLUMN_INDEX|WITH_POSITION Articles content
+      column_create Lexicon comments_content COLUMN_INDEX|WITH_POSITION Comments content
+
+      column_create Comments article COLUMN_INDEX Articles comment
+
+Sample data:
+
+      load --table Comments
+      [
+      {"_key": 1, "content": "I'm using groonga too!"},
+      {"_key": 2, "content": "I'm using groonga and mroonga!"},
+      {"_key": 3, "content": "I'm using mroonga too!"}
+      ]
+
+      load --table Articles
+      [
+      {"content": "Groonga is fast!", "comment": 1},
+      {"content": "Groonga is useful!"},
+      {"content": "Mroonga is fast!", "comment": 3}
+      ]
+
+You can write the query that search the records which contains specified
+keyword as a comment, then fetch the articles which refers to it.
+
+      select Articles --match_columns comment.content --query groonga --output_columns "_id, _score, *" 
+
+You need to concatinate comment column of articles table and content
+column of comments table with period(.) as `--match_columns` arguments.
+
+At first, this query execute fulltext search from content of comments
+table, then fetch the records of articles table which refers to already
+searched records of comments table.
+(Because of this, if you comment out the query which create column index
+'article' of comments table, you can't get intended search results.)
+
+      [
+        [0,1353903149.81632,0.000459432601928711],
+        [
+          [
+           [1],
+           [["_id","UInt32"],["_score","Int32"],["comment","Comments"],["content","Text"]],
+           [1,1,1,"Groonga is fast!"]
+          ]
+        ]
+      ]
+
+Now, you can search articles which contains specific keywords as a
+comment.
+
+### Supported range search by using index
+
+This release began to support range search by using index.
+As a result, you can search in a short time by contrast to previous
+release.
+
+Here is the sample how to use this feature.
+
+Schema definition:
+
+      table_create Shops TABLE_HASH_KEY ShortText
+      column_create Shops ranking COLUMN_SCALAR UInt32
+
+      table_create Rankings TABLE_PAT_KEY UInt32
+      column_create Rankings shops_ranking COLUMN_INDEX Shops ranking
+
+Sample data (ranking data about 10,000,000 shops):
+
+      load --table Shops
+      [
+      {"_key": "Shop1", "ranking": 1},
+      {"_key": "Shop2", "ranking": 2},
+      {"_key": "Shop3", "ranking": 3},
+      {"_key": "Shop4", "ranking": 4},
+      {"_key": "Shop5", "ranking": 5},
+      {"_key": "Shop6", "ranking": 6},
+      {"_key": "Shop7", "ranking": 7},
+      {"_key": "Shop8", "ranking": 8},
+      {"_key": "Shop9", "ranking": 9},
+      {"_key": "Shop10", "ranking": 10},
+      {"_key": "Shop11", "ranking": 11},
+      ...
+      ]
+
+Now, registered shop name as a key, the value of ranking.
+
+Here is the sample query to search top 10 shops of ranking.
+
+In range search, you can specify 'Top 10' expression as
+`'ranking <= 10'` in this case.
+
+Here is the search results by groonga 2.0.8.
+
+      select Shops --filter 'ranking <= 10'
+      [
+        [0,1355465886.15137,1.39784264564514],
+        [
+          [
+            [10],
+            [
+              ["_id","UInt32"],["_key","ShortText"],["ranking","UInt32"]
+            ],
+            [1,"Shop1",1],
+            [2,"Shop2",2],
+            [3,"Shop3",3],
+            [4,"Shop4",4],
+            [5,"Shop5",5],
+            [6,"Shop6",6],
+            [7,"Shop7",7],
+            [8,"Shop8",8],
+            [9,"Shop9",9],
+            [10,"Shop10",10]
+          ]
+        ]
+      ]
+
+Here is the search results by groonga 2.0.9.
+
+      select Shops --filter 'ranking <= 10'
+      [
+        [0,1355465837.0779,0.00165677070617676],
+        [
+          [
+            [10],
+            [
+              ["_id","UInt32"],["_key","ShortText"],["ranking","UInt32"]
+            ],
+            [1,"Shop1",1],
+            [2,"Shop2",2],
+            [3,"Shop3",3],
+            [4,"Shop4",4],
+            [5,"Shop5",5],
+            [6,"Shop6",6],
+            [7,"Shop7",7],
+            [8,"Shop8",8],
+            [9,"Shop9",9],
+            [10,"Shop10",10]
+          ]
+        ]
+      ]
+
+The search result is same, but the execution time is different.
+
+        [0,1355465886.15137,1.39784264564514],
+
+In groonga 2.0.8, it takes 1.39784264564514 seconds.
+
+        [0,1355465837.0779,0.00165677070617676],
+
+In groonga 2.0.9, it takes 0.00165677070617676 seconds.
+
+See [Output
+Format](http://groonga.org/docs/reference/command/output_format.html)
+about the output of groonga command details.
+
+  ------------------------- ------------------ ---------------------
+  Version of groonga        groonga 2.0.8      groonga 2.0.9
+  Execution time(seconds)   1.39784264564514   0.00165677070617676
+  ------------------------- ------------------ ---------------------
+
+By upgrading 2.0.8 to 2.0.9, you can see the execution time is clipped
+to about a few milliseconds.
+
+Here is the measurement environment:
+
+  -------- ------------------------------------
+  CPU      Intel® Core i7-2640M CPU****@2*****
+  Memory   8GB
+  -------- ------------------------------------
+
+### Supported calculation across meridian, equator, the date line by geo_distance() function
+
+This release began to support calculation of the value of distance
+across meridian, equator, the date line by geo_distance() function.
+
+This functional enhancement is applied to the case which the way to
+approximate is 'rectangle'.
+
+There are some calculation method how to approximate the value of
+distance.
+
+Groonga supports folowing three method which has trade-offs in point of
+view of speed, acculacy.
+
+-   [Rectangle](http://groonga.org/docs/reference/functions/geo_distance.html#rectangle)
+     This regards geographical feature between specified points as level
+    surface.
+     You can calculate the value of distance fast, but the error of
+    distance increases as it approaches the pole.
+
+<!-- -->
+
+-   [Sphere](http://groonga.org/docs/reference/functions/geo_distance.html#sphere)
+     This regards geographical feature between specified points as
+    spherical surface.
+     It is slower than rectangle, but the error of distance becomes
+    smaller than rectangle.
+
+<!-- -->
+
+-   [Ellipsoid](http://groonga.org/docs/reference/functions/geo_distance.html#ellipsoid)
+     This regards geographical feature between specified points as
+    ellipsoid.
+     It is slower than sphere, but the error of distance becomes smaller
+    than sphere.
+
+Here is the sample how to caluculate the value of distance across
+meridian.
+
+This sample shows the value of distance between Paris(France) to
+Madrid(Spain). The geographical feature is approximated as level surface
+(rectangle).
+
+"175904000x8464000" means Paris(France) expressed in milliseconds.
+"145508000x-13291000" means Madrid(Spain) expressed in milliseconds.
+
+      select Geo --output_columns distance --scorer 'distance = geo_distance("175904000x8464000", "145508000x-13291000", "rectangle")'
+      [
+        [
+         0,
+         1337566253.89858,
+         0.000355720520019531
+       ],
+       [
+         [
+           [
+             1
+           ],
+           [
+             [
+               "distance",
+               "Int32" 
+             ]
+           ],
+           [
+             1051293
+           ]
+         ]
+       ]
+      ]
+
+See following documentation how to express [longitude and latitude in
+milliseconds](http://groonga.org/docs/reference/type.html)
+
+See following documentation how to use
+[geo_distance](http://groonga.org/docs/reference/functions/geo_distance.html)
+
+### Conclusion
+
+See [Release 2.0.9 2012/11/29](/docs/news.html#release-2-0-9) about
+detailed changes since 2.0.8.
+
+Let's search by groonga!

  Deleted: en/_posts/2012-11-29-release.textile (+0 -349) 100644
===================================================================
--- en/_posts/2012-11-29-release.textile    2016-02-06 14:39:42 +0900 (c08259b)
+++ /dev/null
@@ -1,349 +0,0 @@
----
-layout: post.en
-title: Groonga 2.0.9 has been released
-description: Groonga 2.0.9 has been released!
----
-
-h2. Groonga 2.0.9 has been released
-
-"Groonga 2.0.9":/docs/news.html#release-2-0-9 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are four topics for this release.
-
-* Supported snippet_html() function
-* Supported nested index search among related table by column index
-* Supported range search by using index
-* Supported calculation across meridian, equator, the date line by geo_distance() function
-
-h3. Supported snippet_html() function
-
-This release began to support snippet_html() function which extract keyword and surrounding text.
-Note that this is experimentally supported API, so this API would be changed in the future.
-
-Use snippet_html() fuction following syntax:
-
-<pre>
-  snippet_html(column name)
-</pre>
-
-Here is the more concrete example.
-
-Schema definition:
-
-<pre>
-  table_create Documents TABLE_NO_KEY
-  column_create Documents content COLUMN_SCALAR Text
-  table_create Terms TABLE_PAT_KEY|KEY_NORMALIZE ShortText --default_tokenizer TokenBigram
-  column_create Terms documents_content_index COLUMN_INDEX|WITH_POSITION Documents content
-</pre>
-
-Sample data:
-
-<pre>
-  load --table Documents
-  [
-  ["content"],
-  ["Groonga is a fast and accurate full text search engine based on inverted index."],
-  ["Groonga is also a column-oriented database management system (DBMS)."],
-  ["Mroonga was called groonga storage engine."]
-  ]
-</pre>
-
-If you want to search 'groonga' and extract 'groonga' and surrounding text from Documents
-table, try following:
-
-Here is the query to search 'groonga' with snippet_html function.
-
-<pre>
-  select Documents --output_columns "snippet_html(content)" --command_version 2 --match_columns content --query "groonga" 
-  [
-    [0,1353893385.5454,0.000486850738525391],
-    [
-      [
-        [3],
-        [["snippet_html","null"]],
-        [["<span class=\"keyword\">Groonga</span> is a fast and accurate full text search engine based on inverted index."]],
-        [["<span class=\"keyword\">Groonga</span> is also a column-oriented database management system (DBMS)."]],
-        [["Mroonga was called <span class=\"keyword\">groonga</span> storage engine."]]
-      ]
-    ]
-  ]
-</pre>
-
-As a result, specified keyword is surrounded by @<span>@ tag, and keyword 'groonga' and surrounding text is extracted like a highlighted search results.
-
-Note that you need to specify @'--command_version 2'@ in the query.
-The reason why function call in @--output_column@ has supported from version 2.0.9.
-
-See following documentation about "snippet_html":http://groonga.org/docs/reference/functions/snippet_html.html details.
-  
-
-h3. Supported nested index search among related table by column index
-
-This release began to support nested index search among related table by column index.
-
-If there are relationships among multiple table with column index, you can search multiple table by specifing column index name.
-
-Here is the concrete example.
-
-there are tables which store blog articles, comments for articles. The table which stores articles has columns for article and comment, and the comment column refers comments table.
-The table which stores comments has columns for comment and column index to article table.
-
-In the previous release of groonga, if you want to search the articles which contain specified keyword in comment, you need to execute fulltext search for table of comment, then search the records which contains fulltext search results.
-
-Now, you can search the records by specifing the refererence column index at once.
-
-here is the sample how to use this feature.
-
-Schema definition:
-
-<pre>
-  table_create Comments TABLE_HASH_KEY UInt32
-  column_create Comments content COLUMN_SCALAR ShortText
-
-  table_create Articles TABLE_NO_KEY
-  column_create Articles content COLUMN_SCALAR Text
-  column_create Articles comment COLUMN_SCALAR Comments
-
-  table_create Lexicon TABLE_PAT_KEY|KEY_NORMALIZE ShortText --default_tokenizer TokenBigram
-  column_create Lexicon articles_content COLUMN_INDEX|WITH_POSITION Articles content
-  column_create Lexicon comments_content COLUMN_INDEX|WITH_POSITION Comments content
-
-  column_create Comments article COLUMN_INDEX Articles comment
-</pre>
-
-Sample data:
-
-<pre>
-  load --table Comments
-  [
-  {"_key": 1, "content": "I'm using groonga too!"},
-  {"_key": 2, "content": "I'm using groonga and mroonga!"},
-  {"_key": 3, "content": "I'm using mroonga too!"}
-  ]
-
-  load --table Articles
-  [
-  {"content": "Groonga is fast!", "comment": 1},
-  {"content": "Groonga is useful!"},
-  {"content": "Mroonga is fast!", "comment": 3}
-  ]
-</pre>
-
-You can write the query that search the records which contains specified keyword as a comment, then fetch the articles which refers to it.
-
-<pre>
-  select Articles --match_columns comment.content --query groonga --output_columns "_id, _score, *" 
-</pre>
-
-You need to concatinate comment column of articles table and content column of comments table with period(.) as @--match_columns@ arguments.
-
-At first, this query execute fulltext search from content of comments table, then fetch the records of articles table which refers to already searched records of comments table.
-(Because of this, if you comment out the query which create column index 'article' of comments table, you can't get intended search results.)
-
-<pre>
-  [
-    [0,1353903149.81632,0.000459432601928711],
-    [
-      [
-       [1],
-       [["_id","UInt32"],["_score","Int32"],["comment","Comments"],["content","Text"]],
-       [1,1,1,"Groonga is fast!"]
-      ]
-    ]
-  ]
-</pre>
-
-Now, you can search articles which contains specific keywords as a comment.
-
-h3. Supported range search by using index
-
-This release began to support range search by using index.
-As a result, you can search in a short time by contrast to previous release.
-
-Here is the sample how to use this feature.
-
-Schema definition:
-
-<pre>
-  table_create Shops TABLE_HASH_KEY ShortText
-  column_create Shops ranking COLUMN_SCALAR UInt32
-  
-  table_create Rankings TABLE_PAT_KEY UInt32
-  column_create Rankings shops_ranking COLUMN_INDEX Shops ranking
-</pre>
-
-Sample data (ranking data about 10,000,000 shops):
-
-<pre>
-  load --table Shops
-  [
-  {"_key": "Shop1", "ranking": 1},
-  {"_key": "Shop2", "ranking": 2},
-  {"_key": "Shop3", "ranking": 3},
-  {"_key": "Shop4", "ranking": 4},
-  {"_key": "Shop5", "ranking": 5},
-  {"_key": "Shop6", "ranking": 6},
-  {"_key": "Shop7", "ranking": 7},
-  {"_key": "Shop8", "ranking": 8},
-  {"_key": "Shop9", "ranking": 9},
-  {"_key": "Shop10", "ranking": 10},
-  {"_key": "Shop11", "ranking": 11},
-  ...
-  ]
-</pre>
-
-Now, registered shop name as a key, the value of ranking.
-
-Here is the sample query to search top 10 shops of ranking.
-
-In range search, you can specify 'Top 10' expression as  @'ranking <= 10'@ in this case.
-
-Here is the search results by groonga 2.0.8.
-
-<pre>
-  select Shops --filter 'ranking <= 10'
-  [
-    [0,1355465886.15137,1.39784264564514],
-    [
-      [
-        [10],
-        [
-          ["_id","UInt32"],["_key","ShortText"],["ranking","UInt32"]
-        ],
-        [1,"Shop1",1],
-        [2,"Shop2",2],
-        [3,"Shop3",3],
-        [4,"Shop4",4],
-        [5,"Shop5",5],
-        [6,"Shop6",6],
-        [7,"Shop7",7],
-        [8,"Shop8",8],
-        [9,"Shop9",9],
-        [10,"Shop10",10]
-      ]
-    ]
-  ]
-</pre>
-
-Here is the search results by groonga 2.0.9.
-
-<pre>
-  select Shops --filter 'ranking <= 10'
-  [
-    [0,1355465837.0779,0.00165677070617676],
-    [
-      [
-        [10],
-        [
-          ["_id","UInt32"],["_key","ShortText"],["ranking","UInt32"]
-        ],
-        [1,"Shop1",1],
-        [2,"Shop2",2],
-        [3,"Shop3",3],
-        [4,"Shop4",4],
-        [5,"Shop5",5],
-        [6,"Shop6",6],
-        [7,"Shop7",7],
-        [8,"Shop8",8],
-        [9,"Shop9",9],
-        [10,"Shop10",10]
-      ]
-    ]
-  ]
-</pre>
-
-The search result is same, but the execution time is different.
-
-<pre>
-    [0,1355465886.15137,1.39784264564514],
-</pre>
-
-In groonga 2.0.8, it takes 1.39784264564514 seconds.
-
-<pre>
-    [0,1355465837.0779,0.00165677070617676],
-</pre>
-
-In groonga 2.0.9, it takes 0.00165677070617676 seconds.
-
-See "Output Format":http://groonga.org/docs/reference/command/output_format.html about the output of groonga command details.
-
-|Version of groonga|groonga 2.0.8|groonga 2.0.9|
-|Execution time(seconds)|1.39784264564514|0.00165677070617676|
-
-By upgrading 2.0.8 to 2.0.9, you can see the execution time is clipped to about a few milliseconds.
-
-Here is the measurement environment:
-
-|CPU|Intel(R) Core i7-2640M CPU****@2*****|
-|Memory|8GB|
-
-
-h3. Supported calculation across meridian, equator, the date line by geo_distance() function
-
-This release began to support calculation of the value of distance across meridian, equator, the date line by geo_distance() function.
-
-This functional enhancement is applied to the case which the way to approximate is 'rectangle'.
-
-There are some calculation method how to approximate the value of distance.
-
-Groonga supports folowing three method which has trade-offs in point of view of speed, acculacy.
-
-* "Rectangle":http://groonga.org/docs/reference/functions/geo_distance.html#rectangle
-  This regards geographical feature between specified points as level surface.
-  You can calculate the value of distance fast, but the error of distance increases as it approaches the pole.
-
-* "Sphere":http://groonga.org/docs/reference/functions/geo_distance.html#sphere
-  This regards geographical feature between specified points as spherical surface.
-  It is slower than rectangle, but the error of distance becomes smaller than rectangle.
-
-* "Ellipsoid":http://groonga.org/docs/reference/functions/geo_distance.html#ellipsoid
-  This regards geographical feature between specified points as ellipsoid.
-  It is slower than sphere, but the error of distance becomes smaller than sphere.
-
-Here is the sample how to caluculate the value of distance across meridian.
-
-This sample shows the value of distance between Paris(France) to Madrid(Spain). The geographical feature is approximated as level surface (rectangle).
-
-"175904000x8464000" means Paris(France) expressed in milliseconds. "145508000x-13291000" means Madrid(Spain) expressed in milliseconds.
-
-<pre>
-  select Geo --output_columns distance --scorer 'distance = geo_distance("175904000x8464000", "145508000x-13291000", "rectangle")'
-  [
-    [
-     0,
-     1337566253.89858,
-     0.000355720520019531
-   ],
-   [
-     [
-       [
-         1
-       ],
-       [
-         [
-           "distance",
-           "Int32" 
-         ]
-       ],
-       [
-         1051293
-       ]
-     ]
-   ]
-  ]
-</pre>
-
-See following documentation how to express "longitude and latitude in milliseconds":http://groonga.org/docs/reference/type.html
-
-See following documentation how to use "geo_distance":http://groonga.org/docs/reference/functions/geo_distance.html
-
-
-h3. Conclusion
-
-See "Release 2.0.9 2012/11/29":/docs/news.html#release-2-0-9 about detailed changes since 2.0.8.
-
-Let's search by groonga!

  Renamed: en/_posts/2012-12-26-groonga-cloudsearch-1.5.0.md (+6 -4) 72%
===================================================================
--- en/_posts/2012-12-26-groonga-cloudsearch-1.5.0.textile    2016-02-06 14:39:42 +0900 (ae51a59)
+++ en/_posts/2012-12-26-groonga-cloudsearch-1.5.0.md    2016-02-07 10:35:40 +0900 (4687a5c)
@@ -4,18 +4,20 @@ title: Groonga CloudSearch 1.5.0 has been released
 ---
 h2. Groonga CloudSearch 1.5.0 has been released
 
-We have released "Groonga CloudSearch":http://gcs.groonga.org/ 1.5.0.
+We have released [Groonga CloudSearch](http://gcs.groonga.org/) 1.5.0.
 
 Groonga CloudSearch is a full text search system based on groonga.
-It provides "Amazon CloudSearch":http://aws.amazon.com/en/cloudsearch/
+It provides [Amazon CloudSearch](http://aws.amazon.com/en/cloudsearch/)
 compatible API. It is useful if you are planning to build new Web apps
 with the Amazon CloudSearch.
 
-This release includes improvements about API compatibility to the Amazon
+This release includes improvements about API compatibility to the
+Amazon
 CloudSearch and configurations of the daemon.
 We also have shipped Groonga CloudSearch Console 1.2.0. This provides
 an administration web console for Groonga CloudSearch. You can manage
 your Groonga CloudSearch Server with web UI.
 
-See the "blog post":http://gcs.groonga.org/blog/2012/12/26/1.5.0-release/
+See the [blog
+post](http://gcs.groonga.org/blog/2012/12/26/1.5.0-release/)
 for more details.

  Added: en/_posts/2012-12-29-release.md (+160 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2012-12-29-release.md    2016-02-07 10:35:40 +0900 (7cb85ed)
@@ -0,0 +1,160 @@
+---
+layout: post.en
+title: Groonga 2.1.0 has been released
+description: Groonga 2.1.0 has been released!
+---
+
+Since groonga 2.0.0 had been released, many improvements, changes, or
+bug fixes was shipped. So it is a time to increment minor version
+(2.1.0) instead of micro version (2.0.x)! :-)
+
+Groonga 2.1.0 has been released
+-------------------------------
+
+[Groonga 2.1.0](/docs/news.html#release-2-1-0) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are three topics for this release.
+
+-   Supported the expression as `snippet_html()` function arguments
+-   Supported `--normalizer` option for `table_create` command
+-   Supported continuous line in command list
+
+### Supported the expression as `snippet_html()` function arguments
+
+This release began to support the expression as `snippet_html()`
+function arguments.
+
+Note that this is experimentally supported API, so this API would be
+changed in the future.
+
+In previous release, `snippet_html()` fuction accepts following syntax:
+
+      snippet_html(column name)
+
+In this release, snippet_html() fuction accepts following expression
+for example:
+
+      snippet_html("STRING" + "STRING")
+
+Here is the more concrete example what this change means.
+
+Schema definition:
+
+      table_create Documents TABLE_NO_KEY
+      column_create Documents title COLUMN_SCALAR ShortText
+      column_create Documents content COLUMN_SCALAR Text
+
+      table_create Terms TABLE_PAT_KEY ShortText --default_tokenizer TokenBigram
+      column_create Terms document_title_index COLUMN_INDEX|WITH_POSITION Documents title
+      column_create Terms document_content_index COLUMN_INDEX|WITH_POSITION Documents content
+
+Sample data:
+
+      load --table Documents
+      [
+      ["title", "content"],
+      ["Groonga overview", "Groonga is a fast and accurate full text search engine based on inverted index."],
+      ["Full text search and Instant update", "In widely used DBMSs, updates are immediately processed, for example, a newly registered record appears in the result of the next query."],
+      ["Column store and aggregate query", "People can collect more than enough data in the Internet era."]
+      ]
+
+In previous release, you can't specify multiple column as argument of
+`snippet_html()` function, even if you want to search 'Groonga' from
+title or content column all at once and extract 'Groonga' and
+surrounding text from Documents table.
+
+There was a limitation that `snippet_html()` function accepts either
+title column or content column as argument in previous release.
+
+In this release, you can specify concatenated column name and literal as
+argument of snippet_html.
+
+Here is the query to search 'Groonga' from title column or content
+column all at once.
+
+      select Documents 
+        --match_columns title||content --query 'Groonga' 
+        --output_columns 'snippet_html(title + " " + content)' 
+        --command_version 2
+
+      [
+        [0,1356406051.43579,0.000200510025024414],
+        [
+          [
+            [1],
+            [
+              ["snippet_html","null"]
+            ],
+          [
+            ["Groonga overview Groonga is a fast and accurate full text search engine based on inverted index."]
+            ]
+          ]
+        ]
+      ]
+
+As a result, specified keyword is surrounded by `<span>` tag, and
+keyword 'Groonga' and surrounding text are extracted from title column
+and content column.
+
+The literal " " is added to insert space for formatting snippet.
+
+You can get a highlighted search results easily.
+
+See following documentation about
+[snippet_html](http://groonga.org/docs/reference/functions/snippet_html.html)
+details.
+
+### Supported `--normalizer` option for `table_create` command
+
+This release began to support normalizer plugin API.
+
+groonga supports [NFKC](http://www.unicode.org/reports/tr15/) as Unicode
+normalizing method.
+
+In this release, you can specify normalizer to each table.
+
+By supporting this feature, mroonga may be able to support normalizer
+which is equal to MySQL COLLATION in the future.
+
+Here is the syntax specifying normalizer.
+
+      table_create Terms TABLE_PAT_KEY ShortText --normalizer NormalizerAuto
+
+Specify `--normalizer` option with NORMALIZER NAME when you create
+table.
+
+It is equivalent to specify `KEY_NORMALIZE` and to specify
+`--normalizer NormalizerAuto`.
+
+There is no sample normalizer plugin, but there is a published API in
+`groonga/normalizer.h` for developer.
+
+### Supported continuous line in command list
+
+This release began to support continuous line in command list.
+
+In the previous release, continuous line is not accepted. So, you must
+write command list in line previously.
+
+Before:
+
+      table_create --name Terms --flags TABLE_PAT_KEY --key_type ShortText --default_tokenizer TokenBigram
+
+After:
+
+      table_create --name Terms 
+                   --flags TABLE_PAT_KEY 
+                   --key_type ShortText 
+                   --default_tokenizer TokenBigram
+
+Now, you can write command list with continuous line which is
+represented by `''` character.
+
+### Conclusion
+
+See [Release 2.0.9 2012/11/29](/docs/news.html#release-2-0-9) about
+detailed changes since 2.0.9.
+
+Let's search by groonga!

  Deleted: en/_posts/2012-12-29-release.textile (+0 -153) 100644
===================================================================
--- en/_posts/2012-12-29-release.textile    2016-02-06 14:39:42 +0900 (8fee0f8)
+++ /dev/null
@@ -1,153 +0,0 @@
----
-layout: post.en
-title: Groonga 2.1.0 has been released
-description: Groonga 2.1.0 has been released!
----
-
-Since groonga 2.0.0 had been released, many improvements, changes, or bug fixes was shipped. So it is a time to increment minor version (2.1.0) instead of micro version (2.0.x)! :-)
-
-h2. Groonga 2.1.0 has been released
-
-"Groonga 2.1.0":/docs/news.html#release-2-1-0 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are three topics for this release.
-
-* Supported the expression as @snippet_html()@ function arguments
-* Supported @--normalizer@ option for @table_create@ command
-* Supported continuous line in command list
-
-h3. Supported the expression as @snippet_html()@ function arguments
-
-This release began to support the expression as @snippet_html()@ function arguments.
-
-Note that this is experimentally supported API, so this API would be changed in the future.
-
-In previous release, @snippet_html()@ fuction accepts following syntax:
-
-<pre>
-  snippet_html(column name)
-</pre>
-
-In this release, snippet_html() fuction accepts following expression for example:
-
-<pre>
-  snippet_html("STRING" + "STRING")
-</pre>
-
-Here is the more concrete example what this change means.
-
-Schema definition:
-
-<pre>
-  table_create Documents TABLE_NO_KEY
-  column_create Documents title COLUMN_SCALAR ShortText
-  column_create Documents content COLUMN_SCALAR Text
-
-  table_create Terms TABLE_PAT_KEY ShortText --default_tokenizer TokenBigram
-  column_create Terms document_title_index COLUMN_INDEX|WITH_POSITION Documents title
-  column_create Terms document_content_index COLUMN_INDEX|WITH_POSITION Documents content
-</pre>
-
-Sample data:
-
-<pre>
-  load --table Documents
-  [
-  ["title", "content"],
-  ["Groonga overview", "Groonga is a fast and accurate full text search engine based on inverted index."],
-  ["Full text search and Instant update", "In widely used DBMSs, updates are immediately processed, for example, a newly registered record appears in the result of the next query."],
-  ["Column store and aggregate query", "People can collect more than enough data in the Internet era."]
-  ]
-</pre>
-
-In previous release, you can't specify multiple column as argument of @snippet_html()@ function, even if you want to search 'Groonga' from title or content column all at once and extract 'Groonga' and surrounding text from Documents table.
-
-There was a limitation that @snippet_html()@ function accepts either title column or content column as argument in previous release.
-
-In this release, you can specify concatenated column name and literal as argument of snippet_html.
-
-Here is the query to search 'Groonga' from title column or content column all at once.
-
-<pre>
-  select Documents \
-    --match_columns title||content --query 'Groonga' \
-    --output_columns 'snippet_html(title + " " + content)' \
-    --command_version 2
-
-  [
-    [0,1356406051.43579,0.000200510025024414],
-    [
-      [
-        [1],
-        [
-          ["snippet_html","null"]
-        ],
-      [
-        ["<span class=\"keyword\">Groonga</span> overview <span class=\"keyword\">Groonga</span> is a fast and accurate full text search engine based on inverted index."]
-        ]
-      ]
-    ]
-  ]
-</pre>
-
-As a result, specified keyword is surrounded by @<span>@ tag, and keyword 'Groonga' and surrounding text are extracted from title column and content column.
-
-The literal " " is added to insert space for formatting snippet.
-
-You can get a highlighted search results easily.
-
-See following documentation about "snippet_html":http://groonga.org/docs/reference/functions/snippet_html.html details.
-
-h3. Supported @--normalizer@ option for @table_create@ command
-
-This release began to support normalizer plugin API.
-
-groonga supports "NFKC":http://www.unicode.org/reports/tr15/ as Unicode normalizing method.
-
-In this release, you can specify normalizer to each table.
-
-By supporting this feature, mroonga may be able to support normalizer which is equal to MySQL COLLATION in the future.
-
-Here is the syntax specifying normalizer.
-
-<pre>
-  table_create Terms TABLE_PAT_KEY ShortText --normalizer NormalizerAuto
-</pre>
-
-Specify @--normalizer@ option with NORMALIZER NAME when you create table.
-
-It is equivalent to specify @KEY_NORMALIZE@ and to specify @--normalizer NormalizerAuto �� .
-
-There is no sample normalizer plugin, but there is a published API in @groonga/normalizer.h@ for developer.
-
-h3. Supported continuous line in command list
-
-This release began to support continuous line in command list.
-
-In the previous release, continuous line is not accepted. So, you must write command list in line previously.
-
-Before:
-
-<pre>
-  table_create --name Terms --flags TABLE_PAT_KEY --key_type ShortText --default_tokenizer TokenBigram
-</pre>
-
-After:
-
-<pre>
-  table_create --name Terms \
-               --flags TABLE_PAT_KEY \
-               --key_type ShortText \
-               --default_tokenizer TokenBigram
-</pre>
-
-Now, you can write command list with continuous line which is represented by @'\'@ character.
-
-    
-h3. Conclusion
-
-See "Release 2.0.9 2012/11/29":/docs/news.html#release-2-0-9 about detailed changes since 2.0.9.
-
-Let's search by groonga!

  Added: en/_posts/2013-01-08-fluent-plugin-groonga.md (+79 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-01-08-fluent-plugin-groonga.md    2016-02-07 10:35:40 +0900 (6e851a2)
@@ -0,0 +1,79 @@
+---
+layout: post.en
+title: fluent-plugin-groonga
+description: The introduction of fluent-plugin-groonga for replication
+of groonga databases.
+---
+
+2012-12-29, fluent-plugin-groonga 1.0.1 was released. You can use
+fluent-plugin-groonga to replicate your groonga databases with
+[fluentd](http://fluentd.org/) .
+
+What's "fluent-plugin-groonga" ?
+--------------------------------
+
+fluent-plugin-gronga is the fluentd plugin collection. It is implemented
+by Ruby.
+Usually, fluentd is used as event log collector, but
+fluent-plugin-groonga uses fluentd as message router.
+Fluent-plugin-groonga implements replication for groonga by transfering
+queries to one or more groonga servers.
+
+Without fluent-plugin-groonga, a groonga client and a groonga server
+communicate to each other. Fluent-plugin-groonga can send queries from
+this client to multiple groonga servers or other fluentds. You can
+replicate your groonga databases with fluent-plugin-groonga between
+client and servers.
+
+Fluent-plugin-groonga includes two plugins named each "groonga". They
+are input plugin and output plugin. Next, please see for their details.
+
+### Input plugin
+
+Input plugin receives groonga commands sent by a groonga client. These
+commands ordinary sent to groonga servers.
+Next, input plugin send these commands to output plugin via zero or more
+fluentds. If no fluentd exists, commands are sent to output plugin
+directly.
+
+Input plugin provides two interfaces, HTTP or
+[GQTP](/docs/spec/gqtp.html) (groonga original protocol), to receive
+groonga commands. These interfaces are compatible of groonga server, so
+you can use input plugin as same as groonga server.
+
+### Output plugin
+
+Output plugin sends groonga commands to groonga servers.
+This plugin supports all interfaces of groonga (HTTP, GQTP and command).
+You don't have to use the same interface as one specified to input
+plugin. Additionally, you can use [copy output
+plugin](http://docs.fluentd.org/articles/out_copy) to duplicate
+commands.
+
+How to install
+--------------
+
+To install fluent-plugin-groonga, please run below command only:
+
+    % gem install fluent-plugin-groonga
+
+The source code of fluent-plugin-groonga is [hosting by
+GitHub](https://github.com/groonga/fluent-plugin-groonga/) likewise
+groonga and related projects.
+
+Documents
+---------
+
+[The documents of
+fluent-plugin-groonga](http://groonga.org/fluent-plugin-groonga/en/)
+contains [examples about replitaion
+constitution](http://groonga.org/fluent-plugin-groonga/en/file.constitution.html)
+and [how to
+configure](http://groonga.org/fluent-plugin-groonga/en/file.configuration.html)
+.
+With them, please try to replicate your groonga database with
+fluent-plugin-groonga!
+If you have some troubles or features you want, you can notify us with
+groonga's mailing list
+([groonga-talk](https://lists.sourceforge.net/lists/listinfo/groonga-talk))
+and pull requests in GitHub.

  Deleted: en/_posts/2013-01-08-fluent-plugin-groonga.textile (+0 -44) 100644
===================================================================
--- en/_posts/2013-01-08-fluent-plugin-groonga.textile    2016-02-06 14:39:42 +0900 (0228624)
+++ /dev/null
@@ -1,44 +0,0 @@
----
-layout: post.en
-title: fluent-plugin-groonga
-description: The introduction of fluent-plugin-groonga for replication of groonga databases.
----
-
-2012-12-29, fluent-plugin-groonga 1.0.1 was released. You can use fluent-plugin-groonga to replicate your groonga databases with "fluentd":http://fluentd.org/ .
-
-h2. What's "fluent-plugin-groonga" ?
-
-fluent-plugin-gronga is the fluentd plugin collection. It is implemented by Ruby.
-Usually, fluentd is used as event log collector, but fluent-plugin-groonga uses fluentd as message router. Fluent-plugin-groonga implements replication for groonga by transfering queries to one or more groonga servers.
-
-Without fluent-plugin-groonga, a groonga client and a groonga server communicate to each other. Fluent-plugin-groonga can send queries from this client to multiple groonga servers or other fluentds. You can replicate your groonga databases with fluent-plugin-groonga between client and servers.
-
-Fluent-plugin-groonga includes two plugins named each "groonga". They are input plugin and output plugin. Next, please see for their details.
-
-h3. Input plugin
-
-Input plugin receives groonga commands sent by a groonga client. These commands ordinary sent to groonga servers.
-Next, input plugin send these commands to output plugin via zero or more fluentds. If no fluentd exists, commands are sent to output plugin directly.
-
-Input plugin provides two interfaces, HTTP or "GQTP":/docs/spec/gqtp.html (groonga original protocol), to receive groonga commands. These interfaces are compatible of groonga server, so you can use input plugin as same as groonga server.
-
-h3. Output plugin
-
-Output plugin sends groonga commands to groonga servers.
-This plugin supports all interfaces of groonga (HTTP, GQTP and command). You don't have to use the same interface as one specified to input plugin. Additionally, you can use "copy output plugin":http://docs.fluentd.org/articles/out_copy to duplicate commands.
-
-h2. How to install
-
-To install fluent-plugin-groonga, please run below command only:
-
-<pre>
-% gem install fluent-plugin-groonga
-</pre>
-
-The source code of fluent-plugin-groonga is "hosting by GitHub":https://github.com/groonga/fluent-plugin-groonga/ likewise groonga and related projects.
-
-h2. Documents
-
-"The documents of fluent-plugin-groonga":http://groonga.org/fluent-plugin-groonga/en/ contains "examples about replitaion constitution":http://groonga.org/fluent-plugin-groonga/en/file.constitution.html and "how to configure":http://groonga.org/fluent-plugin-groonga/en/file.configuration.html .
-With them, please try to replicate your groonga database with fluent-plugin-groonga!
-If you have some troubles or features you want, you can notify us with groonga's mailing list ("groonga-talk":https://lists.sourceforge.net/lists/listinfo/groonga-talk) and pull requests in GitHub.

  Added: en/_posts/2013-01-08-release.md (+58 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-01-08-release.md    2016-02-07 10:35:40 +0900 (893b33f)
@@ -0,0 +1,58 @@
+---
+layout: post.en
+title: Groonga 2.1.1 has been released
+description: Groonga 2.1.1 has been released!
+---
+
+We released groonga 2.1.1 just after 2.1.0.
+2.1.1 release is the bug fix release. It is the bug related
+`KEY_NORMALIZE`.
+
+Groonga 2.1.1 has been released
+-------------------------------
+
+On 2012-12-29, [groonga 2.1.1](/docs/news.html#release-2-1-1) has been
+released.
+
+How to install: [Install](/docs/install.html)
+
+See [Release 2.1.1 2012/12/29](/docs/news.html#release-2-1-1) about
+detailed changes since 2.1.0.
+
+### The bug that KEY_NORMALIZE related infomations are deleted
+
+The previous version groonga (2.1.0) has the bug that `KEY_NORMALIZE`
+related infomations are deleted when it opens databases created old
+groonga (2.0.9 or ealier).
+
+`KEY_NORMALIZE` is the value for [`flags` option in `table_create`
+command](/docs/reference/commands/table_create.html#flags). With support
+of `--normalizer` option since 2.1.0, `KEY_NORMALIZE` is deprecated.
+Instead of, it is recommended to specify `--normalizer` with
+`NormalizerAuto`.
+Because of this change, groonga updates `flags` values from
+`KEY_NORMALIZE` to `--normalizer` with `NormalizerAuto`. However, this
+update was not working. This couses the bug that `KEY_NORMALIZE` related
+infomations are deleted.
+
+In 2.1.1, we has fixed this bug. If you use 2.1.0, please update groonga
+to 2.1.1.
+
+### Note about opening databases created groonga 2.0.9 or earlier
+
+By the support of `--normalizer`, please take care in opening your
+databases created 2.0.9 or earlier.
+If you once open your old databases (created by no `--normalizer`
+supported groonga) with new groonga (2.1.0 or later), you can't open
+them with old groonga.
+You shouldn't use multiple versions groonga.
+
+### Conclusion
+
+Groonga 2.1.0 includes many improvements, support of continuous line in
+command list, support of the expression as `snippet_html()` function
+arguments, and so on.
+See [Release 2.1.0 2012/12/29](/docs/news.html#release-2-1-0) about
+detailed chang****@2*****.
+
+Let's search by groonga!

  Deleted: en/_posts/2013-01-08-release.textile (+0 -38) 100644
===================================================================
--- en/_posts/2013-01-08-release.textile    2016-02-06 14:39:42 +0900 (5802f02)
+++ /dev/null
@@ -1,38 +0,0 @@
----
-layout: post.en
-title: Groonga 2.1.1 has been released
-description: Groonga 2.1.1 has been released!
----
-
-We released groonga 2.1.1 just after 2.1.0.
-2.1.1 release is the bug fix release. It is the bug related @KEY_NORMALIZE �� .
-
-h2. Groonga 2.1.1 has been released
-
-On 2012-12-29, "groonga 2.1.1":/docs/news.html#release-2-1-1 has been released.
-
-How to install: "Install":/docs/install.html
-
-See "Release 2.1.1 2012/12/29":/docs/news.html#release-2-1-1 about detailed changes since 2.1.0.
-
-h3. The bug that KEY_NORMALIZE related infomations are deleted
-
-The previous version groonga (2.1.0) has the bug that @KEY_NORMALIZE@  related infomations are deleted when it opens databases created old groonga (2.0.9 or ealier). 
-
- �� KEY_NORMALIZE@ is the value for "@flags@ option in @table_create@ command":/docs/reference/commands/table_create.html#flags. With support of @--normalizer@ option since 2.1.0, @KEY_NORMALIZE@ is deprecated. Instead of, it is recommended to specify @--normalizer@ with @NormalizerAuto �� .
-Because of this change, groonga updates @flags@ values from @KEY_NORMALIZE@ to @--normalizer@ with @NormalizerAuto �� . However, this update was not working. This couses the bug that @KEY_NORMALIZE@ related infomations are deleted.
-
-In 2.1.1, we has fixed this bug. If you use 2.1.0, please update groonga to 2.1.1.
-
-h3. Note about opening databases created groonga 2.0.9 or earlier
-
-By the support of @--normalizer@, please take care in opening your databases created 2.0.9 or earlier.
-If you once open your old databases (created by no @--normalizer@ supported groonga) with new groonga (2.1.0 or later), you can't open them with old groonga.
-You shouldn't use multiple versions groonga.
-
-h3. Conclusion
-
-Groonga 2.1.0 includes many improvements, support of continuous line in command list, support of the expression as @snippet_html()@ function arguments, and so on.
-See "Release 2.1.0 2012/12/29":/docs/news.html#release-2-1-0 about detailed chang****@2*****.
-
-Let's search by groonga!

  Added: en/_posts/2013-01-29-release.md (+153 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-01-29-release.md    2016-02-07 10:35:40 +0900 (88b84c3)
@@ -0,0 +1,153 @@
+---
+layout: post.en
+title: Groonga 2.1.2 has been released
+description: Groonga 2.1.2 has been released!
+---
+
+Groonga 2.1.2 has been released
+-------------------------------
+
+[Groonga 2.1.2](/docs/news.html#release-2-1-2) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are three topics for this release.
+
+-   Supported multiple query() in a select command
+-   Improved to install missing MeCab dictionary for
+    groonga-tokenizer-mecab
+-   Supported Fedora 18
+
+### Supported multiple query() in a select command
+
+In this release, you can simplify a select command by using query()
+function.
+For example, you can specify `--match_columns` and `--query` option.
+You can do the same thing by using query() in `--filter` option.
+
+Let's full text search 'alice' from 'User' table's 'name' column. (There
+is a required condition that you specify 10 as the value of weight to
+name column.)
+
+Here is the sample schema:
+
+      table_create Users TABLE_NO_KEY
+      column_create Users name COLUMN_SCALAR ShortText
+      column_create Users memo COLUMN_SCALAR ShortText
+
+      table_create Lexicon TABLE_HASH_KEY ShortText 
+        --default_tokenizer TokenBigramSplitSymbolAlphaDigit 
+        --normalizer NormalizerAuto
+      column_create Lexicon users_name COLUMN_INDEX|WITH_POSITION Users name
+      column_create Lexicon users_memo COLUMN_INDEX|WITH_POSITION Users memo
+
+Here is the sample data:
+
+      load --table Users
+      [
+      {"name": "Alice", "memo": "groonga user"},
+      {"name": "Alisa", "memo": "mroonga user"},
+      {"name": "Bob",   "memo": "rroonga user"},
+      {"name": "Tom",   "memo": "nroonga user"},
+      {"name": "Tobby", "memo": "groonga and mroonga user. mroonga is ..."},
+      ]
+
+Here is the difference of query which does the same thing by
+`--match_columns` and `--query` or by query() in `--filter`.
+
+Before:
+
+      select Users 
+        --output_columns name,_score 
+        --match_columns "name * 10" 
+        --query alice
+
+After:
+
+      select Users 
+        --output_columns name,_score 
+        --filter 'query("name * 10", "alice")'
+
+There is a few difference between first example and second one, so
+consider more concrete example such as weight spcified keyword.
+
+If you use `--query` and `--match_columns` combination query, you can't
+specify the value of weight for each keyword.
+
+      select Users 
+        --output_columns name,memo,_score 
+        --match_columns "memo * 10" --query "memo:@groonga OR memo:@mroonga OR memo:@user" 
+        --sortby -_score
+
+On the other hand, if you use query() function in `--filter`, you can
+specify the value of weight for each keyword.
+
+      select Users 
+        --output_columns name,memo,_score 
+        --filter 'query("memo * 10", "groonga") || query("memo * 20", "mroonga") || query("memo * 1", "user")' 
+        --sortby -_score
+
+First case, the keyword 'groonga' and 'mroonga' is equivalent:
+
+      [
+       ["name","ShortText"],["memo","ShortText"],["_score","Int32"]
+      ],
+      ["Tobby","groonga and mroonga user. mroonga is ...",4],
+      ["Alice","groonga user",2],
+      ["Alisa","mroonga user",2],
+      ["Bob","rroonga user",1],
+      ["Tom","nroonga user",1]
+
+Second case, by specifying the value of weight, the value of score for
+'mroonga' is higher than the one for 'groonga'.
+
+      [
+       ["name","ShortText"],["memo","ShortText"],["_score","Int32"]
+      ],
+      ["Tobby","groonga and mroonga user. mroonga is ...",51],
+      ["Alisa","mroonga user",21],
+      ["Alice","groonga user",11],
+      ["Tom","nroonga user",1],
+      ["Bob","rroonga user",1]
+
+By using query() function, you can get intended full text search results
+which are controlled by the value of weight.
+
+### Improved to install missing MeCab dictionary for groonga-tokenizer-mecab
+
+This release began to support to install missing MeCab dictionary when
+installing groonga-tokenizer-mecab package.
+
+Debian/Ubuntu:
+
+      % sudo apt-get install -y groonga-tokenizer-mecab
+
+CentOS/Fedora:
+
+      % sudo yum install -y groonga-tokenizer-mecab
+
+In the previous release, there is no explicit depencency to MeCab
+dictionary as which MeCab dictionary you should use is according to the
+case.
+
+But if you use groonga with MeCab tokenizer for the first time, it is
+inconvenient for you.
+So we had added dependency to MeCab dictionary to install with for
+groonga-tokenizer-mecab package.
+
+There is no side effect if you already installed MeCab dictionary.
+
+### Supported Fedora 18
+
+Fedora 18 had been released at Jan 15, 2013 at last. This release began
+to support Fedora 18.
+
+See how to install groonga on [Fedora
+18](http://groonga.org/docs/install/fedora.html#fedora-18) about detail.
+
+### Conclusion
+
+See [Release 2.1.2 2013/01/29](/docs/news.html#release-2-1-2) about
+detailed changes since 2.1.1.
+
+Let's search by groonga!

  Deleted: en/_posts/2013-01-29-release.textile (+0 -154) 100644
===================================================================
--- en/_posts/2013-01-29-release.textile    2016-02-06 14:39:42 +0900 (53b0fb3)
+++ /dev/null
@@ -1,154 +0,0 @@
----
-layout: post.en
-title: Groonga 2.1.2 has been released
-description: Groonga 2.1.2 has been released!
----
-
-h2. Groonga 2.1.2 has been released
-
-"Groonga 2.1.2":/docs/news.html#release-2-1-2 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are three topics for this release.
-
-* Supported multiple query() in a select command
-* Improved to install missing MeCab dictionary for groonga-tokenizer-mecab
-* Supported Fedora 18
-
-h3. Supported multiple query() in a select command
-
-In this release, you can simplify a select command by using query() function.
-For example, you can specify @--match_columns@ and @--query@ option.
-You can do the same thing by using query() in @--filter@ option.
-
-Let's full text search 'alice' from 'User' table's 'name' column. (There is a required condition that you specify 10 as the value of weight to name column.)
-
-Here is the sample schema:
-
-<pre>
-  table_create Users TABLE_NO_KEY
-  column_create Users name COLUMN_SCALAR ShortText
-  column_create Users memo COLUMN_SCALAR ShortText
-
-  table_create Lexicon TABLE_HASH_KEY ShortText \
-    --default_tokenizer TokenBigramSplitSymbolAlphaDigit \
-    --normalizer NormalizerAuto
-  column_create Lexicon users_name COLUMN_INDEX|WITH_POSITION Users name
-  column_create Lexicon users_memo COLUMN_INDEX|WITH_POSITION Users memo
-</pre>
-
-Here is the sample data:
-
-<pre>
-  load --table Users
-  [
-  {"name": "Alice", "memo": "groonga user"},
-  {"name": "Alisa", "memo": "mroonga user"},
-  {"name": "Bob",   "memo": "rroonga user"},
-  {"name": "Tom",   "memo": "nroonga user"},
-  {"name": "Tobby", "memo": "groonga and mroonga user. mroonga is ..."},
-  ]
-</pre>
-
-Here is the difference of query which does the same thing by @--match_columns@ and @--query@ or by query() in @--filter �� .
-
-Before:
-
-<pre>
-  select Users \
-    --output_columns name,_score \
-    --match_columns "name * 10" \
-    --query alice
-</pre>
-
-After:
-
-<pre>
-  select Users \
-    --output_columns name,_score \
-    --filter 'query("name * 10", "alice")'
-</pre>
-
-There is a few difference between first example and second one, so consider more concrete example such as weight spcified keyword.
-
-If you use @--query@ and @--match_columns@ combination query, you can't specify the value of weight for each keyword.
-
-<pre>
-  select Users \
-    --output_columns name,memo,_score \
-    --match_columns "memo * 10" --query "memo:@groonga OR memo:@mroonga OR memo:@user" \
-    --sortby -_score
-</pre>
-
-On the other hand, if you use query() function in @--filter@, you can specify the value of weight for each keyword.
-
-<pre>
-  select Users \
-    --output_columns name,memo,_score \
-    --filter 'query("memo * 10", "groonga") || query("memo * 20", "mroonga") || query("memo * 1", "user")' \
-    --sortby -_score
-</pre>
-
-First case, the keyword 'groonga' and 'mroonga' is equivalent:
-
-<pre>
-  [
-   ["name","ShortText"],["memo","ShortText"],["_score","Int32"]
-  ],
-  ["Tobby","groonga and mroonga user. mroonga is ...",4],
-  ["Alice","groonga user",2],
-  ["Alisa","mroonga user",2],
-  ["Bob","rroonga user",1],
-  ["Tom","nroonga user",1]
-</pre>
-
-Second case, by specifying the value of weight, the value of score for 'mroonga' is higher than the one for 'groonga'.
-
-<pre>
-  [
-   ["name","ShortText"],["memo","ShortText"],["_score","Int32"]
-  ],
-  ["Tobby","groonga and mroonga user. mroonga is ...",51],
-  ["Alisa","mroonga user",21],
-  ["Alice","groonga user",11],
-  ["Tom","nroonga user",1],
-  ["Bob","rroonga user",1]
-</pre>
-
-By using query() function, you can get intended full text search results which are controlled by the value of weight.
-
-h3. Improved to install missing MeCab dictionary for groonga-tokenizer-mecab
-
-This release began to support to install missing MeCab dictionary when installing groonga-tokenizer-mecab package.
-
-Debian/Ubuntu:
-
-<pre>
-  % sudo apt-get install -y groonga-tokenizer-mecab
-</pre>
-
-CentOS/Fedora:
-
-<pre>
-  % sudo yum install -y groonga-tokenizer-mecab
-</pre>
-
-In the previous release, there is no explicit depencency to MeCab dictionary as which MeCab dictionary you should use is according to the case.
-
-But if you use groonga with MeCab tokenizer for the first time, it is inconvenient for you.
-So we had added dependency to MeCab dictionary to install with for groonga-tokenizer-mecab package.
-
-There is no side effect if you already installed MeCab dictionary.
-
-h3. Supported Fedora 18
-
-Fedora 18 had been released at Jan 15, 2013 at last. This release began to support Fedora 18.
-
-See how to install groonga on "Fedora 18":http://groonga.org/docs/install/fedora.html#fedora-18 about detail.
-
-h3. Conclusion
-
-See "Release 2.1.2 2013/01/29":/docs/news.html#release-2-1-2 about detailed changes since 2.1.1.
-
-Let's search by groonga!

  Added: en/_posts/2013-02-09-release.md (+63 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-02-09-release.md    2016-02-07 10:35:40 +0900 (082fc93)
@@ -0,0 +1,63 @@
+---
+layout: post.en
+title: Groonga 3.0.0 has been released
+description: Groonga 3.0.0 has been released!
+---
+
+Groonga 3.0.0 has been released
+-------------------------------
+
+[Groonga 3.0.0](/docs/news.html#release-3-0-0) has been released!
+
+How to install: [Install](/docs/install.html)
+
+Since groonga 2.0.0 had been released, many improvements, changes, or
+bug fixes was shipped.
+
+Here are brief topics ever released:
+
+-   Renew project logo (2.0.1)
+-   Supported Ubuntu 12.04 (Precise Pangolin) (2.0.2)
+-   Supported similar search! (2.0.2)
+-   Supported CMake (2.0.2/2.0.3)
+-   Added nginx based HTTP server (2.0.4)
+-   Improved geo_distance to reduce limitations (2.0.4)
+-   Added a document about Travis CI integration (2.0.4)
+-   Supported Fedora 17 (2.0.5)
+-   Supported near search by 'column *N "word1 word2 ..."' in script
+    syntax (2.0.5)
+-   Improved groonga-httpd (Support to customize base path, to access
+    multiple DB) (2.0.5)
+-   Supported to search the records which does not contain the specified
+    words (2.0.5)
+-   Added the documentation about groonga for server use (2.0.6)
+-   Supported http_rewrite_module for groonga-httpd
+-   Supported to load command by POST (2.0.7)
+-   Changed package name and port number for server use (2.0.7)
+-   Supported min and max function (2.0.7)
+-   Supported custom query expansion by plugin (2.0.8)
+-   Supported Ubuntu 12.10 (Quantal Quetzal) (2.0.8)
+-   Supported snippet_html() function (2.0.9)
+-   Supported range search by using index (2.0.9)
+-   Supported nested index search among related table by column
+    index (2.1.0)
+-   Supported to create own normalizer as a plugin (2.1.0)
+-   Supported multiple query() in a select command (2.1.2)
+-   Supported Nested index search among related table by column index
+    with range search (2.1.2)
+-   Supported Fedora 18 (2.1.2)
+
+We had renewed groonga logos, migrated package maintenance by groonga
+developer teams.
+Not only adding impressive features, providing packages for server use,
+it became easy to install.
+
+We also could make many bug fixes and improvements based on your
+feedbacks, thanks!
+
+### Conclusion
+
+See [Release 3.0.0 2013/02/09](/docs/news.html#release-3-0-0) about
+detailed changes since 2.1.2.
+
+Let's search by groonga!

  Deleted: en/_posts/2013-02-09-release.textile (+0 -52) 100644
===================================================================
--- en/_posts/2013-02-09-release.textile    2016-02-06 14:39:42 +0900 (e30b082)
+++ /dev/null
@@ -1,52 +0,0 @@
----
-layout: post.en
-title: Groonga 3.0.0 has been released
-description: Groonga 3.0.0 has been released!
----
-
-h2. Groonga 3.0.0 has been released
-
-"Groonga 3.0.0":/docs/news.html#release-3-0-0 has been released!
-
-How to install: "Install":/docs/install.html
-
-Since groonga 2.0.0 had been released, many improvements, changes, or bug fixes was shipped.
-
-Here are brief topics ever released:
-
-* Renew project logo (2.0.1)
-* Supported Ubuntu 12.04 (Precise Pangolin) (2.0.2)
-* Supported similar search! (2.0.2)
-* Supported CMake (2.0.2/2.0.3)
-* Added nginx based HTTP server (2.0.4)
-* Improved geo_distance to reduce limitations (2.0.4)
-* Added a document about Travis CI integration (2.0.4)
-* Supported Fedora 17  (2.0.5)
-* Supported near search by 'column *N "word1 word2 ..."' in script syntax (2.0.5)
-* Improved groonga-httpd (Support to customize base path, to access multiple DB) (2.0.5)
-* Supported to search the records which does not contain the specified words (2.0.5)
-* Added the documentation about groonga for server use (2.0.6)
-* Supported http_rewrite_module for groonga-httpd 
-* Supported to load command by POST (2.0.7)
-* Changed package name and port number for server use (2.0.7)
-* Supported min and max function (2.0.7)
-* Supported custom query expansion by plugin (2.0.8)
-* Supported Ubuntu 12.10 (Quantal Quetzal) (2.0.8)
-* Supported snippet_html() function (2.0.9)
-* Supported range search by using index (2.0.9)
-* Supported nested index search among related table by column index (2.1.0)
-* Supported to create own normalizer as a plugin (2.1.0)
-* Supported multiple query() in a select command (2.1.2)
-* Supported Nested index search among related table by column index with range search (2.1.2)
-* Supported Fedora 18 (2.1.2)
-
-We had renewed groonga logos, migrated package maintenance by groonga developer teams.
-Not only adding impressive features, providing packages for server use, it became easy to install.
-
-We also could make many bug fixes and improvements based on your feedbacks, thanks!
-
-h3. Conclusion
-
-See "Release 3.0.0 2013/02/09":/docs/news.html#release-3-0-0 about detailed changes since 2.1.2.
-
-Let's search by groonga!

  Added: en/_posts/2013-02-28-release.md (+178 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-02-28-release.md    2016-02-07 10:35:40 +0900 (118b861)
@@ -0,0 +1,178 @@
+---
+layout: post.en
+title: Groonga 3.0.1 has been released
+description: Groonga 3.0.1 has been released!
+---
+
+Groonga 3.0.1 has been released
+-------------------------------
+
+[Groonga 3.0.1](/docs/news.html#release-3-0-1) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are two topics for this release.
+
+-   Supported to set Bool to reference column when loading dataset by
+    load command
+-   Supported AND operation for nested index
+
+### Supported to set Bool to reference column when loading dataset by load command
+
+In the previous release, you can't load dataset into reference column
+which refers Bool column by load command.
+
+For example, try following the schema and load the datasets:
+
+      table_create Bools TABLE_HASH_KEY Bool
+
+      table_create  Entries           TABLE_HASH_KEY ShortText
+      column_create Entries published COLUMN_SCALAR  Bools
+
+      load --table Entries
+      [
+      {"_key": "Special news!",  "published": true},
+      {"_key": "Supprise news!", "published": false}
+      ]
+
+For confirming whether load commands succeeds, execute select Entries:
+
+      [
+        [
+          [2],
+          [
+            ["_id","UInt32"],
+            ["_key","ShortText"],
+            ["published","Bools"]
+          ],
+          [1,"Special news!",false],
+          [2,"Supprise news!",false]
+        ]
+      ]
+
+You know the value of "published" column is not loaded properly.
+
+In this release, this limitation is fixed!
+
+See the results of 'select Entries' command. This is the intended
+results.
+
+      [
+        [
+          [2],
+          [
+            ["_id","UInt32"],
+            ["_key","ShortText"],
+            ["published","Bools"]
+          ],
+          [1,"Special news!",true],
+          [2,"Supprise news!",false]
+        ]
+      ]
+
+Confirm the results of 'select Bools' command.
+
+You know the value of reference column is properly set.
+
+      [
+        [
+          [0],
+          [
+            ["_id","UInt32"],
+            ["_key","Bool"]
+          ],
+          [1,true],
+          [2,false]
+        ]
+      ]
+
+### Supported AND operation for nested index
+
+In this release, you can execute AND search even though nested index is
+used.
+
+Here is the schema and data:
+
+      table_create Users TABLE_PAT_KEY ShortText
+      column_create Users birthday COLUMN_SCALAR Time
+
+      table_create Files TABLE_PAT_KEY ShortText
+      column_create Files owner COLUMN_SCALAR Users
+
+      column_create Users files_owner_index COLUMN_INDEX Files owner
+
+      table_create Birthdays TABLE_PAT_KEY Time
+      column_create Birthdays users_birthday COLUMN_INDEX Users birthday
+
+      load --table Users
+      [
+      {"_key": "Alice",  "birthday": "1992-02-09 00:00:00"},
+      {"_key": "Bob",    "birthday": "1988-01-04 00:00:00"},
+      {"_key": "Carlos", "birthday": "1982-12-29 00:00:00"}
+      ]
+
+      load --table Files
+      [
+      {"_key": "/home/alice/.zshrc",                  "owner": "Alice"},
+      {"_key": "/home/bob/.bashrc",                   "owner": "Bob"},
+      {"_key": "/home/calros/public_html/index.html", "owner": "Carlos"}
+      ]
+
+Consider to search specific files which depends owner's birthday.
+
+There is a column index between Files table and Users table, so two
+tables are related by nested index.
+
+You may think that following query is good enough for such a case.
+
+      select Files 
+      --filter 'owner.birthday >= "1988-01-04 00:00:00" && owner.birthday < "1992-02-09 00:00:00"' 
+      --output_columns '_key, owner, owner.birthday'
+
+      [
+        [
+          [2],
+          [
+            ["_key","ShortText"],
+            ["owner","Users"],
+            ["owner.birthday","Time"]
+          ],
+          ["/home/bob/.bashrc","Bob",568220400.0],
+          ["/home/alice/.zshrc","Alice",697561200.0]
+        ]
+      ]
+
+As you can see, the search results is not intended.
+
+It seems that only the first condition is applied, but not the second
+one.
+
+It is valid that the search results contains 'Bob' is valid, but not
+'Alice'.
+
+This is because that AND search is not implemented in the previous
+release.
+
+In this release, AND search with nested index works!
+
+      [
+        [
+          [1],
+          [
+            ["_key","ShortText"],
+            ["owner","Users"],
+            ["owner.birthday","Time"]
+          ],
+          ["/home/bob/.bashrc","Bob",568220400.0]
+        ]
+      ]
+
+You can see the condition `'&& owner.birthday < "1992-02-09 00:00:00"'`
+parts also works.
+
+### Conclusion
+
+See [Release 3.0.1 2013/02/28](/docs/news.html#release-3-0-1) about
+detailed changes since 3.0.0.
+
+Let's search by groonga!

  Deleted: en/_posts/2013-02-28-release.textile (+0 -182) 100644
===================================================================
--- en/_posts/2013-02-28-release.textile    2016-02-06 14:39:42 +0900 (467d853)
+++ /dev/null
@@ -1,182 +0,0 @@
----
-layout: post.en
-title: Groonga 3.0.1 has been released
-description: Groonga 3.0.1 has been released!
----
-
-h2. Groonga 3.0.1 has been released
-
-"Groonga 3.0.1":/docs/news.html#release-3-0-1 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are two topics for this release.
-
-* Supported to set Bool to reference column when loading dataset by load command
-* Supported AND operation for nested index
-
-h3. Supported to set Bool to reference column when loading dataset by load command
-
-
-In the previous release, you can't load dataset into reference column which refers Bool column by load command.
-
-For example, try following the schema and load the datasets:
-
-<pre>
-  table_create Bools TABLE_HASH_KEY Bool
-
-  table_create  Entries           TABLE_HASH_KEY ShortText
-  column_create Entries published COLUMN_SCALAR  Bools
-
-  load --table Entries
-  [
-  {"_key": "Special news!",  "published": true},
-  {"_key": "Supprise news!", "published": false}
-  ]
-</pre>
-
-For confirming whether load commands succeeds, execute select Entries:
-
-<pre>
-  [
-    [
-      [2],
-      [
-        ["_id","UInt32"],
-        ["_key","ShortText"],
-        ["published","Bools"]
-      ],
-      [1,"Special news!",false],
-      [2,"Supprise news!",false]
-    ]
-  ]
-</pre>
-
-You know the value of "published" column is not loaded properly.
-
-In this release, this limitation is fixed!
-
-See the results of 'select Entries' command. This is the intended results.
-
-<pre>
-  [
-    [
-      [2],
-      [
-        ["_id","UInt32"],
-        ["_key","ShortText"],
-        ["published","Bools"]
-      ],
-      [1,"Special news!",true],
-      [2,"Supprise news!",false]
-    ]
-  ]
-</pre>
-
-Confirm the results of 'select Bools' command.
-
-You know the value of reference column is properly set.
-
-<pre>
-  [
-    [
-      [0],
-      [
-        ["_id","UInt32"],
-        ["_key","Bool"]
-      ],
-      [1,true],
-      [2,false]
-    ]
-  ]
-</pre>
-
-h3. Supported AND operation for nested index
-
-In this release, you can execute AND search even though nested index is used.
-
-Here is the schema and data:
-
-<pre>
-  table_create Users TABLE_PAT_KEY ShortText
-  column_create Users birthday COLUMN_SCALAR Time
-  
-  table_create Files TABLE_PAT_KEY ShortText
-  column_create Files owner COLUMN_SCALAR Users
-  
-  column_create Users files_owner_index COLUMN_INDEX Files owner
-  
-  table_create Birthdays TABLE_PAT_KEY Time
-  column_create Birthdays users_birthday COLUMN_INDEX Users birthday
-  
-  load --table Users
-  [
-  {"_key": "Alice",  "birthday": "1992-02-09 00:00:00"},
-  {"_key": "Bob",    "birthday": "1988-01-04 00:00:00"},
-  {"_key": "Carlos", "birthday": "1982-12-29 00:00:00"}
-  ]
-  
-  load --table Files
-  [
-  {"_key": "/home/alice/.zshrc",                  "owner": "Alice"},
-  {"_key": "/home/bob/.bashrc",                   "owner": "Bob"},
-  {"_key": "/home/calros/public_html/index.html", "owner": "Carlos"}
-  ]
-</pre>
-
-Consider to search specific files which depends owner's birthday.
-
-There is a column index between Files table and Users table, so two tables are related by nested index.
-
-You may think that following query is good enough for such a case.
-
-<pre>
-  select Files \
-  --filter 'owner.birthday >= "1988-01-04 00:00:00" && owner.birthday < "1992-02-09 00:00:00"' \
-  --output_columns '_key, owner, owner.birthday'
-
-  [
-    [
-      [2],
-      [
-        ["_key","ShortText"],
-        ["owner","Users"],
-        ["owner.birthday","Time"]
-      ],
-      ["/home/bob/.bashrc","Bob",568220400.0],
-      ["/home/alice/.zshrc","Alice",697561200.0]
-    ]
-  ]
-</pre>
-
-As you can see, the search results is not intended.
-
-It seems that only the first condition is applied, but not the second one.
-
-It is valid that the search results contains 'Bob' is valid, but not 'Alice'.
-
-This is because that AND search is not implemented in the previous release.
-
-In this release, AND search with nested index works!
-
-<pre>
-  [
-    [
-      [1],
-      [
-        ["_key","ShortText"],
-        ["owner","Users"],
-        ["owner.birthday","Time"]
-      ],
-      ["/home/bob/.bashrc","Bob",568220400.0]
-    ]
-  ]
-</pre>
-
-You can see the condition @'&& owner.birthday < "1992-02-09 00:00:00"'@ parts also works.
-
-h3. Conclusion
-
-See "Release 3.0.1 2013/02/28":/docs/news.html#release-3-0-1 about detailed changes since 3.0.0.
-
-Let's search by groonga!

  Added: en/_posts/2013-03-29-release.md (+204 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-03-29-release.md    2016-02-07 10:35:40 +0900 (b4aba79)
@@ -0,0 +1,204 @@
+---
+layout: post.en
+title: Groonga 3.0.2 has been released
+description: Groonga 3.0.2 has been released!
+---
+
+Groonga 3.0.2 has been released
+-------------------------------
+
+[Groonga 3.0.2](/docs/news.html#release-3-0-2) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are two topics for this release.
+
+-   Supported `sub_filter()` function
+-   Supported query expander in `query()` function
+
+### Supported `sub_filter()` function
+
+In this release, `sub_filter()` function has been supported.
+
+For example, we introduce the suitable case for `sub_filter()` function.
+
+Here is the sample schema:
+
+      table_create Comment TABLE_PAT_KEY UInt32
+      column_create Comment name COLUMN_SCALAR ShortText
+      column_create Comment content COLUMN_SCALAR ShortText
+
+      table_create Blog TABLE_PAT_KEY ShortText
+      column_create Blog title COLUMN_SCALAR ShortText
+      column_create Blog content COLUMN_SCALAR ShortText
+      column_create Blog comments COLUMN_VECTOR Comment
+
+      column_create Comment blog_comment_index COLUMN_INDEX Blog comments
+
+      table_create Lexicon TABLE_PAT_KEY ShortText --default_tokenizer TokenBigram
+      column_create Lexicon comment_content COLUMN_INDEX|WITH_POSITION Comment content
+      column_create Lexicon comment_name COLUMN_INDEX|WITH_POSITION Comment name
+      column_create Lexicon blog_content COLUMN_INDEX|WITH_POSITION Blog content
+
+Blog table is related to Comment table. Lexicon table is created for
+full text search.
+
+Here are the sample data:
+
+      load --table Comment
+      [
+      {"_key": 1, "name": "A", "content": "groonga"},
+      {"_key": 2, "name": "B", "content": "groonga"},
+      {"_key": 3, "name": "C", "content": "rroonga"},
+      {"_key": 4, "name": "A", "content": "mroonga"},
+      ]
+
+      load --table Blog
+      [
+      {"_key": "groonga's blog", "content": "content of groonga's blog", comments: [1, 2, 3]},
+      {"_key": "mroonga's blog", "content": "content of mroonga's blog", comments: [2, 3, 4]},
+      {"_key": "rroonga's blog", "content": "content of rroonga's blog", comments: [3]},
+      ]
+
+If you want to search blog entries that user "A" commented.
+Here is the query for this purpose.
+
+      select Comment --output_columns _key,name,content --query "name:@"A""
+
+      [
+        [2],
+        [
+          ["_key","UInt32"],["name","ShortText"],["content","ShortText"]
+        ],
+        [1,"A","groonga"],
+        [4,"A","mroonga"]
+      ]
+
+You know User "A" commented 'groonga' and 'mroonga'.
+
+Then, let's search the entries that user "A" commented about 'groonga'.
+At first, search the entries user "A"'s comment from Blog table.
+
+      select Blog --output_columns _key --filter "comments.name @ "A""
+
+      [
+        [
+          [2],
+          [["_key","ShortText"]],
+          ["groonga's blog"],
+          ["mroonga's blog"]
+        ]
+      ]
+
+You know user "A" commented to "groonga's blog" and "mroonga's blog".
+
+Then, search the entries that user "A" commented about 'groonga'.
+Here is the query which is added extra condition about 'groonga'.
+
+      select Blog --output_columns _key --filter "comments.name @ "A" && comments.content @ "groonga""
+
+      [
+        [
+          [2],
+          [["_key","ShortText"]],
+          ["groonga's blog"],
+          ["mroonga's blog"]
+        ]
+      ]
+
+You know that the search results is same as before.
+User "A" commented to "mroonga's blog", but not mentioned about
+"groonga".
+
+This is not the intended search results.
+
+What is the problem?
+
+The fact about following query:
+
+    --filter "comment.name @ "A" && comment.content @ "groonga"
+
+-   Are there entry matched to comment.name @ "A"? =&gt; Yes. there are
+    comment of user "A".
+-   Are there entry matched to comment.content @ "groonga"? =&gt; Yes.
+    there are entries matched to groonga.
+
+The both conditions above are met, "mroonga's blog" entry is regarded as
+matched entry.
+
+But, this is not intended results.
+
+We expect only "groonga's blog" is matched.
+
+`sub_filter()` function is used for this purpose.
+
+You can filter the results by comments context.
+
+Here is the example by using `sub_filter()` function:
+
+      select Blog --output_columns _key 
+        --filter 'sub_filter(comments, "name @ "A" && content @ "groonga"")'
+
+      [
+        [
+          [1],
+          [["_key","ShortText"]],
+          ["groonga's blog"],
+        ]
+      ]
+
+Confirm the results of above query. Now, you can search the Blog entry
+that user "A" commented about 'groonga'.
+
+### Supported query expander in `query()` function
+
+This release began to support query expander in `query()` function.
+
+The select command supports query expander and the keywords which has
+different weight to the column.
+In 2.1.2 release, multiple `query()` function had been supported, you
+can specify the different weight to the column each query.
+
+But, as `query()` fuction doesn't support query expander functionality,
+you need to do query expansion by yourself if you want to search as same
+as `--query`.
+
+In the previous release, `query()` function syntax is:
+
+     query("MATCH_COLUMNS", "QUERY")
+
+In this release, `query()` function accepts 3rd argument:
+
+     query("MATCH_COLUMNS", "QUERY", "QueryExpanderTSV")
+
+Now you can use with QueryExpanderTSV or the substitution table.
+
+See following documentation about
+[QueryExpanderTSV](http://groonga.org/docs/reference/query_expanders/tsv.html)
+
+See following documentation about [substitution
+table](http://groonga.org/ja/docs/reference/commands/select.html#query-expander):
+
+As you know, the limitation that you need to use `--query` if you want
+to use query expander and keywords which has different weight at once.
+
+Here is the query which returns the same results as substitution table:
+
+      select Users --match_columns "memo * 100" --query "memo:@groonga" 
+        --query_expander Synonyms.synonym 
+        --filter 'query("name * 10", "((...) OR (...) OR (...))")'
+
+Here is the query which returns the same effects by using query
+expander
+functionality introduced at this release:
+
+      select Users --match_columns "memo * 100" --query "memo:@groonga" 
+        --query_expander Synonyms.synonym 
+        --filter 'query("name * 10", "...", "Synonyms.synonym")'
+
+### Conclusion
+
+See [Release 3.0.2 2013/03/29](/docs/news.html#release-3-0-2) about
+detailed changes since 3.0.1.
+
+Let's search by groonga!

  Deleted: en/_posts/2013-03-29-release.textile (+0 -207) 100644
===================================================================
--- en/_posts/2013-03-29-release.textile    2016-02-06 14:39:42 +0900 (da07726)
+++ /dev/null
@@ -1,207 +0,0 @@
----
-layout: post.en
-title: Groonga 3.0.2 has been released
-description: Groonga 3.0.2 has been released!
----
-
-h2. Groonga 3.0.2 has been released
-
-"Groonga 3.0.2":/docs/news.html#release-3-0-2 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are two topics for this release.
-
-* Supported @sub_filter()@ function
-* Supported query expander in @query()@ function
-
-h3. Supported @sub_filter()@ function
-
-In this release, @sub_filter()@ function has been supported.
-
-For example, we introduce the suitable case for @sub_filter()@ function.
-
-Here is the sample schema:
-
-<pre>
-  table_create Comment TABLE_PAT_KEY UInt32
-  column_create Comment name COLUMN_SCALAR ShortText
-  column_create Comment content COLUMN_SCALAR ShortText
-  
-  table_create Blog TABLE_PAT_KEY ShortText
-  column_create Blog title COLUMN_SCALAR ShortText
-  column_create Blog content COLUMN_SCALAR ShortText
-  column_create Blog comments COLUMN_VECTOR Comment
-  
-  column_create Comment blog_comment_index COLUMN_INDEX Blog comments
-  
-  table_create Lexicon TABLE_PAT_KEY ShortText --default_tokenizer TokenBigram
-  column_create Lexicon comment_content COLUMN_INDEX|WITH_POSITION Comment content
-  column_create Lexicon comment_name COLUMN_INDEX|WITH_POSITION Comment name
-  column_create Lexicon blog_content COLUMN_INDEX|WITH_POSITION Blog content
-</pre>
-  
-Blog table is related to Comment table. Lexicon table is created for full text search.
-
-Here are the sample data:
-
-<pre>
-  load --table Comment
-  [
-  {"_key": 1, "name": "A", "content": "groonga"},
-  {"_key": 2, "name": "B", "content": "groonga"},
-  {"_key": 3, "name": "C", "content": "rroonga"},
-  {"_key": 4, "name": "A", "content": "mroonga"},
-  ]
-  
-  load --table Blog
-  [
-  {"_key": "groonga's blog", "content": "content of groonga's blog", comments: [1, 2, 3]},
-  {"_key": "mroonga's blog", "content": "content of mroonga's blog", comments: [2, 3, 4]},
-  {"_key": "rroonga's blog", "content": "content of rroonga's blog", comments: [3]},
-  ]
-</pre>
-    
-If you want to search blog entries that user "A" commented.
-Here is the query for this purpose.
-
-<pre>
-  select Comment --output_columns _key,name,content --query "name:@\"A\""
-  
-  [
-    [2],
-    [
-      ["_key","UInt32"],["name","ShortText"],["content","ShortText"]
-    ],
-    [1,"A","groonga"],
-    [4,"A","mroonga"]
-  ]
-</pre>
-
-You know User "A" commented 'groonga' and 'mroonga'.
-
-Then, let's search the entries that user "A" commented about 'groonga'. At first, search the entries user "A"'s comment from Blog table.
-
-<pre>
-  select Blog --output_columns _key --filter "comments.name @ \"A\""
-
-  [
-    [
-      [2],
-      [["_key","ShortText"]],
-      ["groonga's blog"],
-      ["mroonga's blog"]
-    ]
-  ]
-</pre>
-
-You know user "A" commented to "groonga's blog" and "mroonga's blog".
-
-Then, search the entries that user "A" commented about 'groonga'.
-Here is the query which is added extra condition about 'groonga'.
-
-<pre>
-  select Blog --output_columns _key --filter "comments.name @ \"A\" && comments.content @ \"groonga\""
-
-  [
-    [
-      [2],
-      [["_key","ShortText"]],
-      ["groonga's blog"],
-      ["mroonga's blog"]
-    ]
-  ]
-</pre>
-
-You know that the search results is same as before.
-User "A" commented to "mroonga's blog", but not mentioned about "groonga".
-
-This is not the intended search results.
-
-What is the problem?
-
-The fact about following query:
-
-<pre>--filter "comment.name @ \"A\" && comment.content @ \"groonga\"</pre>
-
-* Are there entry matched to comment.name @ "A"? => Yes. there are comment of user "A".
-* Are there entry matched to comment.content @ "groonga"? => Yes. there are entries matched to groonga.
-
-The both conditions above are met, "mroonga's blog" entry is regarded as matched entry.
-
-But, this is not intended results.
-
-We expect only "groonga's blog" is matched.
-
- �� sub_filter()@ function is used for this purpose.
-
-You can filter the results by comments context.
-
-Here is the example by using @sub_filter()@ function:
-
-<pre>
-  select Blog --output_columns _key \
-    --filter 'sub_filter(comments, "name @ \\"A\\" && content @ \\"groonga\\"")'
-
-  [
-    [
-      [1],
-      [["_key","ShortText"]],
-      ["groonga's blog"],
-    ]
-  ]
-</pre>
-
-Confirm the results of above query. Now, you can search the Blog entry that user "A" commented about 'groonga'.
-
-h3. Supported query expander in @query()@ function
-
-This release began to support query expander in @query()@ function.
-
-The select command supports query expander and the keywords which has different weight to the column.
-In 2.1.2 release, multiple @query()@ function had been supported, you can specify the different weight to the column each query.
-
-But, as @query()@ fuction doesn't support query expander functionality, you need to do query expansion by yourself if you want to search as same as @--query �� .
-
-In the previous release, @query()@ function syntax is:
-
-<pre>
- query("MATCH_COLUMNS", "QUERY")
-</pre>
-
-In this release, @query()@ function accepts 3rd argument:
-
-<pre>
- query("MATCH_COLUMNS", "QUERY", "QueryExpanderTSV")
-</pre>
-
-Now you can use with QueryExpanderTSV or the substitution table.
-
-See following documentation about "QueryExpanderTSV":http://groonga.org/docs/reference/query_expanders/tsv.html
-
-See following documentation about "substitution table":http://groonga.org/ja/docs/reference/commands/select.html#query-expander:
-
-As you know, the limitation that you need to use @--query@ if you want to use query expander and keywords which has different weight at once.
-
-Here is the query which returns the same results as substitution table:
-
-<pre>
-  select Users --match_columns "memo * 100" --query "memo:@groonga" \
-    --query_expander Synonyms.synonym \
-    --filter 'query("name * 10", "((...) OR (...) OR (...))")'
-</pre>
-    
-Here is the query which returns the same effects by using query expander 
-functionality introduced at this release:
-
-<pre>
-  select Users --match_columns "memo * 100" --query "memo:@groonga" \
-    --query_expander Synonyms.synonym \
-    --filter 'query("name * 10", "...", "Synonyms.synonym")'
-</pre>
-
-h3. Conclusion
-
-See "Release 3.0.2 2013/03/29":/docs/news.html#release-3-0-2 about detailed changes since 3.0.1.
-
-Let's search by groonga!

  Added: en/_posts/2013-04-29-release.md (+161 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-04-29-release.md    2016-02-07 10:35:40 +0900 (0b454f5)
@@ -0,0 +1,161 @@
+---
+layout: post.en
+title: Groonga 3.0.3 has been released
+description: Groonga 3.0.3 has been released!
+---
+
+Groonga 3.0.3 has been released
+-------------------------------
+
+[Groonga 3.0.3](/docs/news.html#release-3-0-3) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are two topics for this release.
+
+-   Supported to learn with the value of customized weight
+-   Supported to build customized groonga without changing spec file
+-   Notice release process about Fedora 18
+-   Supported Ubuntu 13.04 Raring Ringtail
+
+### Supported to learn with the value of customized weight
+
+In this release, learning with the value of customized weight has been
+supported.
+
+groonga supports three
+[suggest](http://groonga.org/docs/suggest/introduction.html) related
+functionality such as completion, correction and suggestion.
+
+There is a need to learn properly for satisfying your demands.
+
+If you want to change the value of weight for each season, you need to
+re-learn some times for same data.
+
+This way has a performance penalty for big data.
+
+So, we has supported to customize the value of weight, there is no need
+to learn multiple times for same data.
+
+There is only one thing you need to do is customising configuration
+table before loading target data.
+
+Here is the concrete example such as suggesting in season vegetable.
+
+First, make database for example.
+
+    % mkdir -p testdb
+    % groonga -n testdb/db shutdown
+
+Second, make a table for learning by `groonga-suggest-create-dataset`
+command.
+
+    % groonga-suggest-create-dataset testdb/db query
+
+At last, prepare dataset for learning. Note that changing the value of
+weight configuration before loading "cabbage" data.
+
+    load --table event_query --each 'suggest_preparer(_id, type, item, sequence, time, pair_query)'
+    [
+    {"sequence": "1", "time": 1312950808.86057, "item": "tomato in season vegetables", "type": "submit"}
+    {"sequence": "1", "time": 1312950808.86057, "item": "sweet potato in season vegetables", "type": "submit"}
+    {"sequence": "1", "time": 1312950808.86057, "item": "chinese cabbage in season vegetables", "type": "submit"}
+    ]
+
+    load --table configuration
+    [
+    {"_key": "query", "weight": 10}
+    ]
+
+    load --table event_query --each 'suggest_preparer(_id, type, item, sequence, time, pair_query)'
+    [
+    {"sequence": "1", "time": 1312950803.86057, "item": "cabbage in season vegetables", "type": "submit"},
+    ]
+
+So, let's try to use suggestion functionality. Here is the query to get
+suggestion result in season vegetables.
+
+    suggest --table item_query --column kana --types suggest --frequency_threshold 1 --query season
+
+As a result, there are four results and you know that cabbage is in the
+best season by suggestion score.
+
+    [
+      [0,1366613297.59312,0.000118494033813477],
+      {
+        "suggest":[[4],
+                   [
+                     ["_key","ShortText"],["_score","Int32"]],
+                     ["cabbage in season vegetables",10],
+                     ["tomato in season vegetables",1],
+                     ["chinese cabbage in season vegetables",1],
+                     ["sweet potato in season vegetables",1]
+                   ]
+      }
+    ]
+
+Previously, you need to do learning many times by followings way to
+achieve same effects.
+
+    load --table event_query --each 'suggest_preparer(_id, type, item, sequence, time, pair_query)'
+    [
+    {"sequence": "1", "time": 1312950803.86057, "item": "cabbage in season vegetables", "type": "submit"},
+    {"sequence": "1", "time": 1312950803.86057, "item": "cabbage in season vegetables", "type": "submit"},
+    {"sequence": "1", "time": 1312950803.86057, "item": "cabbage in season vegetables", "type": "submit"},
+    {"sequence": "1", "time": 1312950803.86057, "item": "cabbage in season vegetables", "type": "submit"},
+    ...
+
+### Supported to build customized groonga without changing spec file
+
+This release began to add a parameter for building customized version of
+groonga.
+
+For example, if you want to customize stack size which groonga uses, you
+need to change the spec file about `--with-stack-size=` option.
+
+    %configure 
+      --disable-static 
+      --with-package-platform=redhat 
+      --with-stack-size=4096 
+      --with-zlib 
+    %if %{use_lzo}
+      --with-lzo 
+    %endif
+      --with-munin-plugins
+
+In this release, you can specify additional parameter as a rpmbuild
+command's one. There is no need to modify spec file directly.
+
+    % rpmbuild --rebuild --define 'additional_configure_options --with-stach-size=4096' groonga-3.0.3-0.el6.src.rpm
+
+### Notice release process about Fedora 18
+
+Since groonga 3.0.2 release, we had stopped to provide groonga packages
+by self hosted yum repository.
+Instead, we only provides groonga packages via Fedora official yum
+repository.
+
+There is no need for Fedora users to regist groonga self hosted
+repository now.
+
+We cooperate with Mr. Daiki Ueno who maintaines groonga packages so far
+in Fedora official repository.
+
+But there is a bit time lag about two or three weeks until you can
+install latest release.
+
+### Supported Ubuntu 13.04 Raring Ringtail
+
+This release began to support Ubuntu 13.04 Raring Ringtail which is
+released at Apr 25, 2013.
+
+See the [install
+documentation](http://groonga.org/docs/install/ubuntu.html#raring-ringrail)
+about details.
+
+### Conclusion
+
+See [Release 3.0.3 2013/04/29](/docs/news.html#release-3-0-3) about
+detailed changes since 3.0.2.
+
+Let's search by groonga!

  Deleted: en/_posts/2013-04-29-release.textile (+0 -154) 100644
===================================================================
--- en/_posts/2013-04-29-release.textile    2016-02-06 14:39:42 +0900 (217cf9f)
+++ /dev/null
@@ -1,154 +0,0 @@
----
-layout: post.en
-title: Groonga 3.0.3 has been released
-description: Groonga 3.0.3 has been released!
----
-
-
-h2. Groonga 3.0.3 has been released
-
-"Groonga 3.0.3":/docs/news.html#release-3-0-3 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are two topics for this release.
-
-* Supported to learn with the value of customized weight
-* Supported to build customized groonga without changing spec file
-* Notice release process about Fedora 18
-* Supported Ubuntu 13.04 Raring Ringtail
-
-h3. Supported to learn with the value of customized weight
-
-In this release, learning with the value of customized weight has been supported.
-
-groonga supports three "suggest":http://groonga.org/docs/suggest/introduction.html related functionality such as completion, correction and suggestion.
-
-There is a need to learn properly for satisfying your demands.
-
-If you want to change the value of weight for each season, you need to re-learn some times for same data.
-
-This way has a performance penalty for big data.
-
-So, we has supported to customize the value of weight, there is no need to learn multiple times for same data.
-
-There is only one thing you need to do is customising configuration table before loading target data.
-
-Here is the concrete example such as suggesting in season vegetable.
-
-First, make database for example.
-
-<pre>
-% mkdir -p testdb
-% groonga -n testdb/db shutdown
-</pre>
-
-Second, make a table for learning by @groonga-suggest-create-dataset@ command.
-
-<pre>
-% groonga-suggest-create-dataset testdb/db query
-</pre>
-
-At last, prepare dataset for learning. Note that changing the value of weight configuration before loading "cabbage" data.
-
-<pre>
-load --table event_query --each 'suggest_preparer(_id, type, item, sequence, time, pair_query)'
-[
-{"sequence": "1", "time": 1312950808.86057, "item": "tomato in season vegetables", "type": "submit"}
-{"sequence": "1", "time": 1312950808.86057, "item": "sweet potato in season vegetables", "type": "submit"}
-{"sequence": "1", "time": 1312950808.86057, "item": "chinese cabbage in season vegetables", "type": "submit"}
-]
-
-load --table configuration
-[
-{"_key": "query", "weight": 10}
-]
-
-load --table event_query --each 'suggest_preparer(_id, type, item, sequence, time, pair_query)'
-[
-{"sequence": "1", "time": 1312950803.86057, "item": "cabbage in season vegetables", "type": "submit"},
-]
-</pre>
-
-So, let's try to use suggestion functionality. Here is the query to get suggestion result in season vegetables.
-
-<pre>
-suggest --table item_query --column kana --types suggest --frequency_threshold 1 --query season
-</pre>
-
-As a result, there are four results and you know that cabbage is in the best season by suggestion score.
-
-<pre>
-[
-  [0,1366613297.59312,0.000118494033813477],
-  {
-    "suggest":[[4],
-               [
-                 ["_key","ShortText"],["_score","Int32"]],
-                 ["cabbage in season vegetables",10],
-                 ["tomato in season vegetables",1],
-                 ["chinese cabbage in season vegetables",1],
-                 ["sweet potato in season vegetables",1]
-               ]
-  }
-]
-</pre>
-
-Previously, you need to do learning many times by followings way to achieve same effects.
-
-<pre>
-load --table event_query --each 'suggest_preparer(_id, type, item, sequence, time, pair_query)'
-[
-{"sequence": "1", "time": 1312950803.86057, "item": "cabbage in season vegetables", "type": "submit"},
-{"sequence": "1", "time": 1312950803.86057, "item": "cabbage in season vegetables", "type": "submit"},
-{"sequence": "1", "time": 1312950803.86057, "item": "cabbage in season vegetables", "type": "submit"},
-{"sequence": "1", "time": 1312950803.86057, "item": "cabbage in season vegetables", "type": "submit"},
-...
-</pre>
-
-h3. Supported to build customized groonga without changing spec file
-
-This release began to add a parameter for building customized version of groonga.
-
-For example, if you want to customize stack size which groonga uses, you need to change the spec file about @--with-stack-size=@ option.
-
-<pre>
-%configure \
-  --disable-static \
-  --with-package-platform=redhat \
-  --with-stack-size=4096 \
-  --with-zlib \
-%if %{use_lzo}
-  --with-lzo \
-%endif
-  --with-munin-plugins
-</pre>
-
-In this release, you can specify additional parameter as a rpmbuild command's one. There is no need to modify spec file directly.
-
-<pre>
-% rpmbuild --rebuild --define 'additional_configure_options --with-stach-size=4096' groonga-3.0.3-0.el6.src.rpm
-</pre>
-
-h3. Notice release process about Fedora 18
-
-Since groonga 3.0.2 release, we had stopped to provide groonga packages by self hosted yum repository.
-Instead, we only provides groonga packages via Fedora official yum repository.
-
-There is no need for Fedora users to regist groonga self hosted repository now.
-
-We cooperate with Mr. Daiki Ueno who maintaines groonga packages so far in Fedora official repository.
-
-But there is a bit time lag about two or three weeks until you can install latest release.
-
-h3. Supported Ubuntu 13.04 Raring Ringtail
-
-This release began to support Ubuntu 13.04 Raring Ringtail which is released at Apr 25, 2013.
-
-See the "install documentation":http://groonga.org/docs/install/ubuntu.html#raring-ringrail about details.
-
-h3. Conclusion
-
-See "Release 3.0.3 2013/04/29":/docs/news.html#release-3-0-3 about detailed changes since 3.0.2.
-
-Let's search by groonga!

  Added: en/_posts/2013-05-01-remove-1x-packages-from-repository.md (+28 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-05-01-remove-1x-packages-from-repository.md    2016-02-07 10:35:40 +0900 (fc2346f)
@@ -0,0 +1,28 @@
+---
+layout: post.en
+title: Removed 1.x packages from repository
+---
+h2. Removed 1.x packages from repository
+
+We had released groonga 3.0.3 Apr 29, 2013. At that time, we also
+reorganized self hosted groonga repository.
+
+Because groonga 1.x is the seriese of two generation ago.
+
+We had reorganized repository by following rule:
+
+-   version 1.x packages
+-   unsupported release
+
+By rule 1, we had removed groonga 1.x and mroonga 1.x packages from
+repository. By rule 2, we had removed packages matched to following
+release from repositry.
+
+-   Fedora 15
+-   Fedora 16
+-   Fedora 17
+-   Ubuntu 10.10 (Maverick Meerkat discontinued Apr, 2012)
+-   Ubuntu 11.04 (Natty Narwhal discontinued Oct, 2012)
+
+If you want to use old version, please use [source
+archive](http://packages.groonga.org/source/groonga/).

  Deleted: en/_posts/2013-05-01-remove-1x-packages-from-repository.textile (+0 -24) 100644
===================================================================
--- en/_posts/2013-05-01-remove-1x-packages-from-repository.textile    2016-02-06 14:39:42 +0900 (daa7846)
+++ /dev/null
@@ -1,24 +0,0 @@
----
-layout: post.en
-title: Removed 1.x packages from repository
----
-h2. Removed 1.x packages from repository
-
-We had released groonga 3.0.3 Apr 29, 2013. At that time, we also reorganized self hosted groonga repository.
-
-Because groonga 1.x is the seriese of two generation ago.
-
-We had reorganized repository by following rule:
-
-* version 1.x packages
-* unsupported release
-
-By rule 1, we had removed groonga 1.x and  mroonga 1.x packages from repository. By rule 2, we had removed packages matched to following release from repositry.
-
-* Fedora 15
-* Fedora 16
-* Fedora 17
-* Ubuntu 10.10 (Maverick Meerkat discontinued Apr, 2012)
-* Ubuntu 11.04 (Natty Narwhal discontinued Oct, 2012)
-
-If you want to use old version, please use "source archive":http://packages.groonga.org/source/groonga/.

  Added: en/_posts/2013-05-10-sticker.md (+31 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-05-10-sticker.md    2016-02-07 10:35:40 +0900 (8afb99d)
@@ -0,0 +1,31 @@
+---
+layout: post.en
+title: Sticker data have been published
+description: Sticker image data for groonga, mroonga, rroonga and
+nroonga have been published
+---
+h2. Sticker data have been published
+
+The groonga project [publishes sticker data](/sticker/) for groonga and
+groonga related projects such as [mroonga](http://mroonga.org/) .
+
+-   ![groonga sticker - black](/images/stickers/basic/groonga-sticker-black.png "groonga sticker - black")
+-   ![groonga sticker - white](/images/stickers/basic/groonga-sticker-white.png "groonga sticker - white")
+-   ![mroonga sticker - black](/images/stickers/basic/mroonga-sticker-black.png "mroonga sticker - black")
+-   ![mroonga sticker - white](/images/stickers/basic/mroonga-sticker-white.png "mroonga sticker - white")
+-   ![rroonga sticker - black](/images/stickers/basic/rroonga-sticker-black.png "rroonga sticker - black")
+-   ![rroonga sticker - white](/images/stickers/basic/rroonga-sticker-white.png "rroonga sticker - white")
+-   ![nroonga sticker - black](/images/stickers/basic/nroonga-sticker-black.png "nroonga sticker - black")
+-   ![nroonga sticker - white](/images/stickers/basic/nroonga-sticker-white.png "nroonga sticker - white")
+
+If you are using groonga and/or groonga related projects, please
+download and print them and stick the printed sticker to your note PC!
+
+Those stickers can be used under [the CC-BY 3.0
+license](http://creativecommons.org/licenses/by/3.0/) . There is an
+exception of the license. If you distribute printed stickers, you don't
+need to attribute the author. You can print downloaded stickers as is
+and distribute them without attributing the author. Please print and
+distribute groonga stickers for your friends!
+
+[Go to the sticker download page!](/sticker/)

  Deleted: en/_posts/2013-05-10-sticker.textile (+0 -23) 100644
===================================================================
--- en/_posts/2013-05-10-sticker.textile    2016-02-06 14:39:42 +0900 (5f6a74e)
+++ /dev/null
@@ -1,23 +0,0 @@
----
-layout: post.en
-title: Sticker data have been published
-description: Sticker image data for groonga, mroonga, rroonga and nroonga have been published
----
-h2. Sticker data have been published
-
-The groonga project "publishes sticker data":/sticker/ for groonga and groonga related projects such as "mroonga":http://mroonga.org/ .
-
-* !/images/stickers/basic/groonga-sticker-black.png(groonga sticker - black)!
-* !/images/stickers/basic/groonga-sticker-white.png(groonga sticker - white)!
-* !/images/stickers/basic/mroonga-sticker-black.png(mroonga sticker - black)!
-* !/images/stickers/basic/mroonga-sticker-white.png(mroonga sticker - white)!
-* !/images/stickers/basic/rroonga-sticker-black.png(rroonga sticker - black)!
-* !/images/stickers/basic/rroonga-sticker-white.png(rroonga sticker - white)!
-* !/images/stickers/basic/nroonga-sticker-black.png(nroonga sticker - black)!
-* !/images/stickers/basic/nroonga-sticker-white.png(nroonga sticker - white)!
-
-If you are using groonga and/or groonga related projects, please download and print them and stick the printed sticker to your note PC!
-
-Those stickers can be used under "the CC-BY 3.0 license":http://creativecommons.org/licenses/by/3.0/ . There is an exception of the license. If you distribute printed stickers, you don't need to attribute the author. You can print downloaded stickers as is and distribute them without attributing the author. Please print and distribute groonga stickers for your friends!
-
-"Go to the sticker download page!":/sticker/

  Added: en/_posts/2013-05-29-release.md (+118 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-05-29-release.md    2016-02-07 10:35:40 +0900 (5c2bd61)
@@ -0,0 +1,118 @@
+---
+layout: post.en
+title: Groonga 3.0.4 has been released
+description: Groonga 3.0.4 has been released!
+---
+
+Groonga 3.0.4 has been released
+-------------------------------
+
+[Groonga 3.0.4](/docs/news.html#release-3-0-4) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are three topics for this release.
+
+-   Supported multiple index section in match_columns
+-   Supported tokenize command experimentally
+-   Supported Debian 8.0 (jessie)
+
+### Supported multiple index section in match_columns
+
+In this release, we began to support multiple index section in
+match_columns.
+
+Here is the sample schema:
+
+    table_create Memos TABLE_NO_KEY
+    column_create Memos title COLUMN_SCALAR ShortText
+    column_create Memos content COLUMN_SCALAR ShortText
+
+    table_create Lexicon TABLE_PAT_KEY ShortText --default_tokenizer TokenBigram
+    column_create Lexicon title_index COLUMN_INDEX|WITH_POSITION|WITH_SECTION Memos title
+    column_create Lexicon content_index COLUMN_INDEX|WITH_POSITION|WITH_SECTION Memos content
+
+In the previous release, you need to execute following query if you want
+to use column index of title with weight.
+
+    select Memos 
+      --match_columns "Lexicon.title_index * 10 || Lexicon.content_index" 
+      --query rroonga --output_columns "title, content, _score"
+
+In this release, you can use almost same thing for multiple column
+index. To use this feature, you need change schema a bit.
+
+    table_create Lexicon TABLE_PAT_KEY ShortText --default_tokenizer TokenBigram
+    column_create Lexicon memo_index COLUMN_INDEX|WITH_POSITION|WITH_SECTION Memos title,content
+
+Then specify memo_index.(COLUMN_NAME) in the query. Here is the
+revised query using multiple column index:
+
+    select Memos 
+      --match_columns "Lexicon.memo_index.title * 10 || Lexicon.memo_index.content" 
+      --query rroonga 
+      --output_columns "title, content, _score"
+
+There are many case which you want to apply multiple tokenizer or
+normalizer for each column.
+
+If you specify just column name, there is a case that multiple index is
+used and unwanted search results returns.
+
+In this release, you can specify specific column which is a member of
+multiple column index.
+
+### Supported tokenize command experimentally
+
+In this release, we began to support tokenize command experimentally.
+
+There is a normalize command to confirm behaviour of normalizer, on the
+other hand, there is no way to confirm behaviour of tokenizer.
+
+In this release, you can confirm both of normalizer and tokenizer
+behaviour now.
+
+Here is the syntax of tokenize command:
+
+    tokenize tokenizer string [normalizer] [flag]
+
+Here is a sample of tokenize command:
+
+    > tokenize TokenBigram "groonga3.0.4"
+    [
+      [0,1369290009.77065,0.000670194625854492],
+      [
+        {"value":"gr","position":0},
+        {"value":"ro","position":1},
+        {"value":"oo","position":2},
+        {"value":"on","position":3},
+        {"value":"ng","position":4},
+        {"value":"ga","position":5},
+        {"value":"a3","position":6},
+        {"value":"3.","position":7},
+        {"value":".0","position":8},
+        {"value":"0.","position":9},
+        {"value":".4","position":10},
+        {"value":"4","position":11}
+      ]
+    ]
+
+See the following
+[documentation](http://groonga.org/docs/reference/commands/tokenize.html)
+about details.
+
+### Supported Debian 8.0 (jessie)
+
+In this release, we began to support Debian 8.0 (jessie).
+
+See install documentation about
+[jessie](http://groonga.org/docs/install/debian.html#jessie)
+
+Note that squeeze support will be discontinued for a while.
+
+### Conclusion
+
+See [Release 3.0.4 2013/05/29](/docs/news.html#release-3-0-4) about
+detailed changes since 3.0.3.
+
+Let's search by groonga!

  Deleted: en/_posts/2013-05-29-release.textile (+0 -117) 100644
===================================================================
--- en/_posts/2013-05-29-release.textile    2016-02-06 14:39:42 +0900 (8d8057f)
+++ /dev/null
@@ -1,117 +0,0 @@
----
-layout: post.en
-title: Groonga 3.0.4 has been released
-description: Groonga 3.0.4 has been released!
----
-
-
-h2. Groonga 3.0.4 has been released
-
-"Groonga 3.0.4":/docs/news.html#release-3-0-4 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are three topics for this release.
-
-* Supported multiple index section in match_columns
-* Supported tokenize command experimentally
-* Supported Debian 8.0 (jessie)
-
-h3. Supported multiple index section in match_columns
-
-In this release, we began to support multiple index section in match_columns.
-
-Here is the sample schema:
-
-<pre>
-table_create Memos TABLE_NO_KEY
-column_create Memos title COLUMN_SCALAR ShortText
-column_create Memos content COLUMN_SCALAR ShortText
-
-table_create Lexicon TABLE_PAT_KEY ShortText --default_tokenizer TokenBigram
-column_create Lexicon title_index COLUMN_INDEX|WITH_POSITION|WITH_SECTION Memos title
-column_create Lexicon content_index COLUMN_INDEX|WITH_POSITION|WITH_SECTION Memos content
-</pre>
-
-In the previous release, you need to execute following query if you want to use column index of title with weight.
-
-<pre>
-select Memos \
-  --match_columns "Lexicon.title_index * 10 || Lexicon.content_index" \
-  --query rroonga --output_columns "title, content, _score"
-</pre>
-
-In this release, you can use almost same thing for multiple column index. To use this feature, you need change schema a bit.
-
-<pre>
-table_create Lexicon TABLE_PAT_KEY ShortText --default_tokenizer TokenBigram
-column_create Lexicon memo_index COLUMN_INDEX|WITH_POSITION|WITH_SECTION Memos title,content
-</pre>
-
-Then specify memo_index.(COLUMN_NAME) in the query. Here is the revised query using multiple column index:
-
-<pre>
-select Memos \
-  --match_columns "Lexicon.memo_index.title * 10 || Lexicon.memo_index.content" \
-  --query rroonga \
-  --output_columns "title, content, _score"
-</pre>
-
-There are many case which you want to apply multiple tokenizer or normalizer for each column.
-
-If you specify just column name, there is a case that multiple index is used and unwanted search results returns.
-
-In this release, you can specify specific column which is a member of multiple column index.
-
-h3. Supported tokenize command experimentally
-
-In this release, we began to support tokenize command experimentally.
-
-There is a normalize command to confirm behaviour of normalizer, on the other hand, there is no way to confirm behaviour of tokenizer.
-
-In this release, you can confirm both of normalizer and tokenizer behaviour now.
-
-Here is the syntax of tokenize command:
-
-<pre>
-tokenize tokenizer string [normalizer] [flag]
-</pre>
-
-Here is a sample of tokenize command:
-
-<pre>
-> tokenize TokenBigram "groonga3.0.4"
-[
-  [0,1369290009.77065,0.000670194625854492],
-  [
-    {"value":"gr","position":0},
-    {"value":"ro","position":1},
-    {"value":"oo","position":2},
-    {"value":"on","position":3},
-    {"value":"ng","position":4},
-    {"value":"ga","position":5},
-    {"value":"a3","position":6},
-    {"value":"3.","position":7},
-    {"value":".0","position":8},
-    {"value":"0.","position":9},
-    {"value":".4","position":10},
-    {"value":"4","position":11}
-  ]
-]
-</pre>
-
-See the following "documentation":http://groonga.org/docs/reference/commands/tokenize.html about details.
-
-h3. Supported Debian 8.0 (jessie)
-
-In this release, we began to support Debian 8.0 (jessie).
-
-See install documentation about "jessie":http://groonga.org/docs/install/debian.html#jessie
-
-Note that squeeze support will be discontinued for a while.
-
-h3. Conclusion
-
-See "Release 3.0.4 2013/05/29":/docs/news.html#release-3-0-4 about detailed changes since 3.0.3.
-
-Let's search by groonga!

  Added: en/_posts/2013-06-29-release.md (+140 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-06-29-release.md    2016-02-07 10:35:40 +0900 (7aeaa6b)
@@ -0,0 +1,140 @@
+---
+layout: post.en
+title: Groonga 3.0.5 has been released
+description: Groonga 3.0.5 has been released!
+---
+
+Groonga 3.0.5 has been released
+-------------------------------
+
+[Groonga 3.0.5](/docs/news.html#release-3-0-5) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are two topics for this release.
+
+-   Supported single quoted string literal in output_columns
+-   Supported [html_untag](/docs/reference/functions/html_untag.html)
+    function experimentally
+
+### Supported single quoted string literal in output_columns
+
+In this release, we began to support single quoted string literal in
+output_columns.
+
+Since groonga 3.0.2 release, complex string concatination in
+`--output_columns` had been supported.
+This feature support following expression:
+
+    '"<" + title + ">"'
+
+Note that 'title' means 'title' column in this case. Above query returns
+`"<(CONTENT OF TITLE)>"`.
+
+But there is the fact that single quote isn't supported in string
+literal at that time.
+
+Here is the sample schema:
+
+    table_create Entries TABLE_NO_KEY
+    column_create Entries title COLUMN_SCALAR ShortText
+
+    load --table Entries
+    [
+     {"title": "Single quote and double quote"}
+    ]
+
+In the previous release, there are some way to get
+`"<(CONTENT OF TITLE)>"`.
+
+-   `select Entries --output_columns '_id, "<" + title + ">"' --command_version 2`
+-   `select Entries --output_columns "_id, "<" + title + ">"" --command_version 2`
+
+Here is the revised query using single quote in string literal for
+groonga 3.0.5:
+
+    select Entries --output_columns "_id, '<' + title + '>'" --command_version 2
+
+As single quote has been supported, groonga 3.0.5 returns intended
+result sets even though the query which groonga 3.0.4 returns empty
+result.
+
+Here is the sample queries which groonga 3.0.4 or earlier version
+returns empty set:
+
+    # <"(contents of title column)">
+    select Entries --output_columns "_id, '<"' + title + '">'" --command_version 2
+    #=> [1,"<"Single quote and double quote">"]
+
+    # <'(contents of title column)'>
+    select Entries --output_columns "_id, '<'' + title + ''>'" --command_version 2
+    #=> [1,"<'Single quote and double quote'>"]
+
+### Supported html_untag function experimentally
+
+In this release, we began to support html_untag function which strips
+HTML tags experimentally.
+
+For example, consider the case that scraped web site HTML is stored into
+groonga database.
+
+Here is the sample schema which stores scraped HTML:
+
+    table_create WebClips TABLE_NO_KEY
+    column_create WebClips url COLUMN_SCALAR ShortText
+    column_create WebClips content COLUMN_SCALAR ShortText
+    column_create WebClips tag COLUMN_VECTOR ShortText
+
+Here is the sample data:
+
+    load --table WebClips
+    [
+    {"url": "http://groonga.org", "tag": ["groonga"], "content": "groonga is fast"},
+    {"url": "http://mroonga.org", "tag": ["mroonga"], "content": "mroonga is fast"},
+    ]
+
+Specify column name as an argument of html_untag function.
+According to above sample schema, if you want to get plain text of
+content column, use html_untag(content).
+
+Here is the sample query which returns plain text of content column:
+
+    select WebClips --output_columns "html_untag(content)" --command_version 2
+
+Here is the execution result of above query:
+
+    [[2],
+      [
+        ["html_untag", "null"]
+      ],
+      ["groonga is fast"],
+      ["mroonga is fast"]
+    ]
+
+You can see that span tag with a class attribute is eliminated.
+
+Note that you need to specify with `--command_version 2` if you use
+html_untag function.
+Without this, you can't get intended search results.
+
+There is a reason why html_untag is supported.
+It is a demand that we want to search scraped HTML contents which is
+stored into groonga database, then extract highlighted search results
+which does not contain extra noisy HTML tags.
+
+It is assumed to use with the snippet_html function (it isn't supported
+yet).
+
+Here is the concrete processing flow:
+
+    original HTML -(html_untag)-> plain text -(snippet_html)-> highlighted HTML
+
+It isn't supported combination usage of html_untag and snippet_html
+yet, but it will be supported in the future release.
+
+### Conclusion
+
+See [Release 3.0.5 2013/06/29](/docs/news.html#release-3-0-5) about
+detailed changes since 3.0.4.
+
+Let's search by groonga!

  Deleted: en/_posts/2013-06-29-release.textile (+0 -139) 100644
===================================================================
--- en/_posts/2013-06-29-release.textile    2016-02-06 14:39:42 +0900 (e503d99)
+++ /dev/null
@@ -1,139 +0,0 @@
----
-layout: post.en
-title: Groonga 3.0.5 has been released
-description: Groonga 3.0.5 has been released!
----
-
-
-h2. Groonga 3.0.5 has been released
-
-"Groonga 3.0.5":/docs/news.html#release-3-0-5 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are two topics for this release.
-
-* Supported single quoted string literal in output_columns
-* Supported "html_untag":/docs/reference/functions/html_untag.html function experimentally
-
-h3. Supported single quoted string literal in output_columns
-
-In this release, we began to support single quoted string literal in output_columns.
-
-Since groonga 3.0.2 release, complex string concatination in @--output_columns@ had been supported.
-This feature support following expression:
-
-<pre>
-'"<" + title + ">"'
-</pre>
-
-Note that 'title' means 'title' column in this case. Above query returns @"<(CONTENT OF TITLE)>"@.
-
-But there is the fact that single quote isn't supported in string literal at that time.
-
-Here is the sample schema:
-
-<pre>
-table_create Entries TABLE_NO_KEY
-column_create Entries title COLUMN_SCALAR ShortText
-
-load --table Entries
-[
- {"title": "Single quote and double quote"}
-]
-</pre>
- 
-In the previous release, there are some way to get @"<(CONTENT OF TITLE)>"@.
-
-* @select Entries --output_columns '_id, "<" + title + ">"' --command_version 2@
-* @select Entries --output_columns "_id, \"<\" + title + \">\"" --command_version 2@
-
-Here is the revised query using single quote in string literal for groonga 3.0.5:
-
-<pre>
-select Entries --output_columns "_id, '<' + title + '>'" --command_version 2
-</pre>
-
-As single quote has been supported, groonga 3.0.5 returns intended result sets even though the query which groonga 3.0.4 returns empty result.
-
-Here is the sample queries which groonga 3.0.4 or earlier version returns empty set:
-
-<pre>
-# <"(contents of title column)">
-select Entries --output_columns "_id, '<\"' + title + '\">'" --command_version 2
-#=> [1,"<\"Single quote and double quote\">"]
-
-# <'(contents of title column)'>
-select Entries --output_columns "_id, '<\\'' + title + '\\'>'" --command_version 2
-#=> [1,"<'Single quote and double quote'>"]
-</pre>
-
-h3. Supported html_untag function experimentally
-
-In this release, we began to support html_untag function which strips HTML tags experimentally.
-
-For example, consider the case that scraped web site HTML is stored into groonga database.
-
-Here is the sample schema which stores scraped HTML:
-
-<pre>
-table_create WebClips TABLE_NO_KEY
-column_create WebClips url COLUMN_SCALAR ShortText
-column_create WebClips content COLUMN_SCALAR ShortText
-column_create WebClips tag COLUMN_VECTOR ShortText
-</pre>
-    
-Here is the sample data:
-
-<pre>
-load --table WebClips
-[
-{"url": "http://groonga.org", "tag": ["groonga"], "content": "groonga is <span class='emphasize'>fast</span>"},
-{"url": "http://mroonga.org", "tag": ["mroonga"], "content": "mroonga is <span class=\"emphasize\">fast</span>"},
-]
-</pre>
-
-Specify column name as an argument of html_untag function.
-According to above sample schema, if you want to get plain text of content column, use html_untag(content).
-
-Here is the sample query which returns plain text of content column:
-
-<pre>
-select WebClips --output_columns "html_untag(content)" --command_version 2
-</pre>
-
-Here is the execution result of above query:
-
-<pre>
-[[2],
-  [
-    ["html_untag", "null"]
-  ],
-  ["groonga is fast"],
-  ["mroonga is fast"]
-]
-</pre>
-
-You can see that span tag with a class attribute is eliminated.
-
-Note that you need to specify with @--command_version 2@ if you use html_untag function.
-Without this, you can't get intended search results.
-
-There is a reason why html_untag is supported.
-It is a demand that we want to search scraped HTML contents which is stored into groonga database, then extract highlighted search results which does not contain extra noisy HTML tags.
-
-It is assumed to use with the snippet_html function (it isn't supported yet).
-
-Here is the concrete processing flow:
-
-<pre>
-original HTML -(html_untag)-> plain text -(snippet_html)-> highlighted HTML
-</pre>
-
-It isn't supported combination usage of html_untag and snippet_html yet, but it will be supported in the future release.
-
-h3. Conclusion
-
-See "Release 3.0.5 2013/06/29":/docs/news.html#release-3-0-5 about detailed changes since 3.0.4.
-
-Let's search by groonga!

  Added: en/_posts/2013-07-29-release.md (+100 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-07-29-release.md    2016-02-07 10:35:40 +0900 (f36f6cd)
@@ -0,0 +1,100 @@
+---
+layout: post.en
+title: Groonga 3.0.6 has been released
+description: Groonga 3.0.6 has been released!
+---
+
+Groonga 3.0.6 has been released
+-------------------------------
+
+[Groonga 3.0.6](/docs/news.html#release-3-0-6) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are two topics for this release.
+
+-   Supported backslash escape in query syntax
+-   Supported Fedora 19
+
+### Supported backslash escape in query syntax
+
+In this release, we began to support backslash escape in query syntax.
+
+See
+[escape](http://groonga.org/docs/reference/grn_expr/query_syntax.html#escape)
+documentation about sepecial characters which needs escape in query
+syntax.
+
+For example, there is a special character such as `(`. If you want to
+search `(` itself, you need to pass `(` to groonga.
+
+But, there are some layers until query is actually passed, you need to
+escape carefully.
+
+There are three layers between shell and query parser.
+
+-   Shell (such as bash, ...)
+-   groonga command line interface (groonga command prompt)
+-   groonga query parser
+
+In fact, you need to pass `(` to groonga query parser. To accomplish
+above, consider how to escape each layer.
+
+-   groonga query parser requires `(`
+-   groonga command line interface consumes escape, so `(`
+    is required.
+-   Shell consumes escape, so `(` is required.
+
+Confirm above step by step.
+
+Here is the sample schema and data (escape.grn):
+
+    table_create Memos TABLE_PAT_KEY ShortText
+
+    table_create Contents TABLE_PAT_KEY ShortText  --default_tokenizer TokenDelimit --normalizer NormalizerAuto
+    column_create Contents entries_key_index COLUMN_INDEX Memos _key
+
+    load --table Memos
+    [
+    {"_key": "(example)"}
+    ]
+
+Load sample schema and data (Zsh command line for example):
+
+    % groonga -n testdb/db < escape.grn
+
+Here is the escaped query to search '(example' on shell layer.
+
+    % groonga testdb/db select Memos --match_columns _key --query "(example"
+
+Here is the escaped query to search '(example' on groonga command line
+interface layer.
+
+    % groonga testdb/db
+    > select Memos --match_columns _key --query "(example"
+
+We show the concrete example how to escape on each layer in the case
+which use double quote. The similar rule is applied even though single
+quote.
+
+### Supported Fedora 19
+
+In this release, we began to support Fedora 19 which is released at July
+2, 2013.
+
+Instead, we have stopped Fedora 18 support.
+
+We have been released rpm packages under Fedora projects, but there is a
+time lag until rpm packages are released from Fedora projects
+repository.
+So we also provide rpm packages under groonga repository.
+
+As the contents of rpm packages is same, there is no difference between
+groonga reppsitory's rpm and Fedora projects's rpm.
+
+### Conclusion
+
+See [Release 3.0.6 2013/07/29](/docs/news.html#release-3-0-6) about
+detailed changes since 3.0.5.
+
+Let's search by groonga!

  Deleted: en/_posts/2013-07-29-release.textile (+0 -93) 100644
===================================================================
--- en/_posts/2013-07-29-release.textile    2016-02-06 14:39:42 +0900 (7fdb328)
+++ /dev/null
@@ -1,93 +0,0 @@
----
-layout: post.en
-title: Groonga 3.0.6 has been released
-description: Groonga 3.0.6 has been released!
----
-
-
-h2. Groonga 3.0.6 has been released
-
-"Groonga 3.0.6":/docs/news.html#release-3-0-6 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are two topics for this release.
-
-* Supported backslash escape in query syntax
-* Supported Fedora 19
-
-h3. Supported backslash escape in query syntax
-
-In this release, we began to support backslash escape in query syntax.
-
-See "escape":http://groonga.org/docs/reference/grn_expr/query_syntax.html#escape documentation about sepecial characters which needs escape in query syntax.
-
-For example, there is a special character such as @(@. If you want to search @(@ itself, you need to pass @\(@ to groonga.
-
-But, there are some layers until query is actually passed, you need to escape carefully.
-
-There are three layers between shell and query parser.
-
-* Shell (such as bash, ...)
-* groonga command line interface (groonga command prompt)
-* groonga query parser
-
-In fact, you need to pass @\(@ to groonga query parser. To accomplish above, consider how to escape each layer.
-
-* groonga query parser requires @\(@
-* groonga command line interface consumes escape, so @\\\(@ is required.
-* Shell consumes escape, so @\\\\\\(@ is required.
-    
-Confirm above step by step.
-
-Here is the sample schema and data (escape.grn):
-
-<pre>
-table_create Memos TABLE_PAT_KEY ShortText
-
-table_create Contents TABLE_PAT_KEY ShortText  --default_tokenizer TokenDelimit --normalizer NormalizerAuto
-column_create Contents entries_key_index COLUMN_INDEX Memos _key
-
-load --table Memos
-[
-{"_key": "(example)"}
-]
-</pre>
-  
-Load sample schema and data (Zsh command line for example):
-
-<pre>
-% groonga -n testdb/db < escape.grn
-</pre>
-
-Here is the escaped query to search '(example' on shell layer.
-
-<pre>
-% groonga testdb/db select Memos --match_columns _key --query "\\\\\\(example"
-</pre>
-
-Here is the escaped query to search '(example' on groonga command line interface layer.
-
-<pre>
-% groonga testdb/db
-> select Memos --match_columns _key --query "\\\(example"
-</pre>
-
-We show the concrete example how to escape on each layer in the case which use double quote. The similar rule is applied even though single quote.
-
-h3. Supported Fedora 19
-
-In this release, we began to support Fedora 19 which is released at July 2, 2013.
-
-Instead, we have stopped Fedora 18 support.
-
-We have been released rpm packages under Fedora projects, but there is a time lag until rpm packages are released from Fedora projects repository.
-So we also provide rpm packages under groonga repository.
-
-As the contents of rpm packages is same, there is no difference between groonga reppsitory's rpm and Fedora projects's rpm.
-
-h3. Conclusion
-
-See "Release 3.0.6 2013/07/29":/docs/news.html#release-3-0-6 about detailed changes since 3.0.5.
-
-Let's search by groonga!

  Added: en/_posts/2013-08-29-release.md (+107 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-08-29-release.md    2016-02-07 10:35:40 +0900 (64a9a88)
@@ -0,0 +1,107 @@
+---
+layout: post.en
+title: Groonga 3.0.7 has been released
+description: Groonga 3.0.7 has been released!
+---
+
+Groonga 3.0.7 has been released
+-------------------------------
+
+[Groonga 3.0.7](/docs/news.html#release-3-0-7) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are two topics for this release.
+
+-   Added API documentation
+-   Supported log related groonga-httpd directives
+
+### Added API documentation
+
+There is no API documentation for a long time. We wrote the following
+entry in the past.
+
+-   [We want a person who improve API documentation
+    together](http://groonga.org/ja/blog/2013/07/22/api-documentation.html)
+    [written in japanese]
+
+Luckily, we had been able to find the person who works for API
+documentation together. As a result,
+`whombx had done many contribution by sending pull requests for groonga API documentation. We thank `whombx
+for that great work.
+
+Now, we can release that outcome in this release even though translation
+task is not fully finished yet.
+
+### Supported log related groonga-httpd directives
+
+There is a HTTP server package which is based on nginx. It is provided
+to support more functionality for groonga user.
+
+In this release, groonga-httpd supports new directives which is related
+to logging.
+
+-   groonga_log_path
+-   groonga_log_level
+
+groonga_log_path is used for specifying the path where to save log.
+groonga_log_level is used for specifying the level of logging. In the
+previous version, default value is applied to both of them.
+
+Usually, the path is specified to groonga_log_path, but you can
+disable logging by specifying 'off' to groonga_log_path.
+
+For example, it can be disabled.
+
+    location /d/ {
+      groonga_log_path off;
+    }
+
+See the following documentation about
+[groonga_log_path](http://groonga.org/docs/reference/executables/groonga-httpd.html#groonga-log-path)
+directive.
+
+On the other hand, you can custimize log level by groonga_log_level
+directive.
+
+There is a list which is used for groonga_log_level directive. The
+default value is 'notice'.
+
+-   emergency
+-   alert
+-   critical
+-   error
+-   warning
+-   notice
+-   debug
+-   dump
+-   none
+
+You can disable logging by specifying 'none' to groonga_log_level.
+
+See the following documentation about
+[groonga_log_level](http://groonga.org/docs/reference/executables/groonga-httpd.html#groonga-log-level)
+directive.
+
+groonga-httpd also supports new directives which is related to max query
+cache.
+
+-   groonga_cache_limit
+
+It is applied to all workers. Here is the configuration example which
+set cache limit to 1000.
+
+    http {
+        groonga_cache_limit 1000;
+        ...
+    }
+
+If you want to apply multiple query cache limit, use multiple
+groonga-httpd.conf.
+
+### Conclusion
+
+See [Release 3.0.7 2013/08/29](/docs/news.html#release-3-0-7) about
+detailed changes since 3.0.6.
+
+Let's search by groonga!

  Deleted: en/_posts/2013-08-29-release.textile (+0 -88) 100644
===================================================================
--- en/_posts/2013-08-29-release.textile    2016-02-06 14:39:42 +0900 (8d02321)
+++ /dev/null
@@ -1,88 +0,0 @@
----
-layout: post.en
-title: Groonga 3.0.7 has been released
-description: Groonga 3.0.7 has been released!
----
-
-h2. Groonga 3.0.7 has been released
-
-"Groonga 3.0.7":/docs/news.html#release-3-0-7 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are two topics for this release.
-
-* Added API documentation
-* Supported log related groonga-httpd directives
-
-h3. Added API documentation
-
-There is no API documentation for a long time. We wrote the following entry in the past.
-
-* "We want a person who improve API documentation together":http://groonga.org/ja/blog/2013/07/22/api-documentation.html [written in japanese]
-
-Luckily, we had been able to find the person who works for API documentation together. As a result, @whombx had done many contribution by sending pull requests for groonga API documentation. We thank @whombx for that great work.
-
-Now, we can release that outcome in this release even though translation task is not fully finished yet.
-
-h3. Supported log related groonga-httpd directives
-
-There is a HTTP server package which is based on nginx. It is provided to support more functionality for groonga user.
-
-In this release, groonga-httpd supports new directives which is related to logging.
-
-* groonga_log_path
-* groonga_log_level
-
-groonga_log_path is used for specifying the path where to save log. groonga_log_level is used for specifying the level of logging. In the previous version, default value is applied to both of them.
-
-Usually, the path is specified to groonga_log_path, but you can disable logging by specifying 'off' to groonga_log_path.
-
-For example, it can be disabled.
-
-<pre>
-location /d/ {
-  groonga_log_path off;
-}
-</pre>
-
-See the following documentation about "groonga_log_path":http://groonga.org/docs/reference/executables/groonga-httpd.html#groonga-log-path directive.
-
-On the other hand, you can custimize log level by groonga_log_level directive.
-
-There is a list which is used for groonga_log_level directive. The default value is 'notice'.
-
-* emergency
-* alert
-* critical
-* error
-* warning
-* notice
-* debug
-* dump
-* none
-
-You can disable logging by specifying 'none' to groonga_log_level.
-
-See the following documentation about "groonga_log_level":http://groonga.org/docs/reference/executables/groonga-httpd.html#groonga-log-level directive.
-
-groonga-httpd also supports new directives which is related to max query cache.
-
-* groonga_cache_limit
-
-It is applied to all workers. Here is the configuration example which set cache limit to 1000.
-
-<pre>
-http {
-    groonga_cache_limit 1000;
-    ...
-}
-</pre>
-
-If you want to apply multiple query cache limit, use multiple groonga-httpd.conf.
-
-h3. Conclusion
-
-See "Release 3.0.7 2013/08/29":/docs/news.html#release-3-0-7 about detailed changes since 3.0.6.
-
-Let's search by groonga!

  Added: en/_posts/2013-09-29-release.md (+146 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-09-29-release.md    2016-02-07 10:35:40 +0900 (9b260ff)
@@ -0,0 +1,146 @@
+---
+layout: post.en
+title: Groonga 3.0.8 has been released
+description: Groonga 3.0.8 has been released!
+---
+
+Groonga 3.0.8 has been released
+-------------------------------
+
+[Groonga 3.0.8](/docs/news.html#release-3-0-8) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are three topics in this release.
+
+-   Improved usability of administration interface
+-   Supported groonga_query_log_path directive
+-   Supported cascaded delete
+
+### Improved usability of administration interface
+
+As you know, groonga provides administration web interface as a default.
+In this release, following usability related issues are fixed.
+
+-   Error handling of select functionality. This change shows error
+    message and hides loading dialog.
+-   Submit search form with the enter key.
+-   Show placeholder in search form.
+
+All above issues are fixed by [@orangain](https://twitter.com/orangain)
+who submit patches for us. It's great work! Thanks orangain!
+
+### Supported groonga_query_log_path directive
+
+In this release, you can customize query log path for groonga-httpd.
+
+In the previous releases, you need to check access.log or error.log for
+investigating the query issue. If you process query via GET method, it
+is enough to investigate, but if you use POST method, that is not good
+enough on query error.
+
+To customize query log path, use groonga_query_log_path on
+groonga-httpd.conf.
+
+The default query log path is also changed.
+
+Before:
+
+-   /var/log/groonga/httpd/groonga.log
+
+After:
+
+-   /var/log/groonga/httpd/groonga-query.log
+
+Use groonga_query_log_path directive in http, server or location
+block. Now you can specify this directive in each location block, you
+can save query log for each database.
+
+    location /d/ {
+      groonga on;
+      # You can disable query log for groonga.
+      groonga_query_log_path /var/log/groonga/httpd/groonga-location-d.log;
+    }
+
+    location /d2/ {
+      groonga on;
+      # You can disable query log for groonga.
+      groonga_query_log_path /var/log/groonga/httpd/groonga-location-d2.log;
+    }
+
+See the following documentation about
+[groonga_query_log_path](http://groonga.org/docs/reference/executables/groonga-httpd.html#groonga-query-log-path)
+directive.
+
+### Supported cascaded delete
+
+In this release, groonga supports cascaded delete.
+
+For example, assume that there are some URLs associated for a person. If
+you store user information and URL for separated table, you use
+following schema for instance.
+
+    table_create Users TABLE_HASH_KEY ShortText
+    table_create URLs TABLE_HASH_KEY ShortText
+
+    column_create Users bookmarks COLUMN_VECTOR URLs
+    column_create URLs author COLUMN_SCALAR Users
+
+    column_create URLs bookmarks_index COLUMN_INDEX Users bookmarks
+
+Then load sample data:
+
+    load --table Users
+    [
+    {"_key": "mori", "bookmarks": ["http://mroonga.org/", "http://groonga.org/", "http://ranguba.org/"]}
+    ]
+
+    load --table URLs
+    [
+    {"_key": "http://groonga.org/", "author": "mori"}
+    {"_key": "http://mroonga.org/", "author": "hayashi"}
+    ]
+
+In this case, Users table stores the key which refers URLs table in
+bookmarks column. That is the reason why simply you can't delete record
+of URLs.
+
+Here is the query which fails to delete:
+
+    delete URLs --key "http://groonga.org/"
+
+Here is the error message when you execute the above query:
+
+    [
+      [
+        -2,1380092940.21387,
+        0.000238895416259766,
+        "undeletable record (URLs:2) has value (bookmarks_index:1)",
+        [
+          ["is_deletable","db.c",1564]
+        ]
+      ],
+      false
+    ]
+
+If you want to delete above records, you must delete the record which
+refers in advance, then delete data by above query. That is a very
+boring task that you need to delete each records step by step.
+
+In this release, there is one thing you need to do:
+
+    delete URLs --key "http://groonga.org/"
+
+"Delete" command detects the records which refers, then automatically
+delete them.
+
+It remains "http://mroonga.org" and "http://ranguba.org" on bookmarks
+column, because they have nothing to do with the key -
+"http://groonga.org".
+
+### Conclusion
+
+See [Release 3.0.8 2013/08/29](/docs/news.html#release-3-0-7) about
+detailed changes since 3.0.6.
+
+Let's search by groonga!

  Deleted: en/_posts/2013-09-29-release.textile (+0 -136) 100644
===================================================================
--- en/_posts/2013-09-29-release.textile    2016-02-06 14:39:42 +0900 (30e0dfa)
+++ /dev/null
@@ -1,136 +0,0 @@
----
-layout: post.en
-title: Groonga 3.0.8 has been released
-description: Groonga 3.0.8 has been released!
----
-
-h2. Groonga 3.0.8 has been released
-
-"Groonga 3.0.8":/docs/news.html#release-3-0-8 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are three topics in this release.
-
-* Improved usability of administration interface
-* Supported groonga_query_log_path directive
-* Supported cascaded delete
-
-h3. Improved usability of administration interface
-
-As you know, groonga provides administration web interface as a default. In this release, following usability related issues are fixed.
-
-* Error handling of select functionality. This change shows error message and hides loading dialog.
-* Submit search form with the enter key.
-* Show placeholder in search form.
-
-All above issues are fixed by "@orangain":https://twitter.com/orangain who submit patches for us. It's great work! Thanks orangain!
-
-h3. Supported groonga_query_log_path directive
-
-In this release, you can customize query log path for groonga-httpd.
-
-In the previous releases, you need to check access.log or error.log for investigating the query issue. If you process query via GET method, it is enough to investigate, but if you use POST method, that is not good enough on query error.
-
-To customize query log path, use groonga_query_log_path on groonga-httpd.conf.
-
-The default query log path is also changed.
-
-Before:
-
-*  /var/log/groonga/httpd/groonga.log
-
-After:
-
-*  /var/log/groonga/httpd/groonga-query.log
-
-Use groonga_query_log_path directive in http, server or location block. Now you can specify this directive in each location block, you can save query log for each database.
-
-<pre>
-location /d/ {
-  groonga on;
-  # You can disable query log for groonga.
-  groonga_query_log_path /var/log/groonga/httpd/groonga-location-d.log;
-}
-
-location /d2/ {
-  groonga on;
-  # You can disable query log for groonga.
-  groonga_query_log_path /var/log/groonga/httpd/groonga-location-d2.log;
-}
-</pre>
-
-See the following documentation about "groonga_query_log_path":http://groonga.org/docs/reference/executables/groonga-httpd.html#groonga-query-log-path directive.
-
-h3. Supported cascaded delete
-
-In this release, groonga supports cascaded delete.
-
-For example, assume that there are some URLs associated for a person. If you store user information and URL for separated table, you use following schema for instance.
-
-<pre>
-table_create Users TABLE_HASH_KEY ShortText
-table_create URLs TABLE_HASH_KEY ShortText
-
-column_create Users bookmarks COLUMN_VECTOR URLs
-column_create URLs author COLUMN_SCALAR Users
-
-column_create URLs bookmarks_index COLUMN_INDEX Users bookmarks
-</pre>
-
-Then load sample data:
-
-<pre>
-load --table Users
-[
-{"_key": "mori", "bookmarks": ["http://mroonga.org/", "http://groonga.org/", "http://ranguba.org/"]}
-]
-
-load --table URLs
-[
-{"_key": "http://groonga.org/", "author": "mori"}
-{"_key": "http://mroonga.org/", "author": "hayashi"}
-]
-</pre>
-
-In this case, Users table stores the key which refers URLs table in bookmarks column. That is the reason why simply you can't delete record of URLs. 
-
-Here is the query which fails to delete:
-
-<pre>
-delete URLs --key "http://groonga.org/"
-</pre>
-
-Here is the error message when you execute the above query:
-
-<pre>
-[
-  [
-    -2,1380092940.21387,
-    0.000238895416259766,
-    "undeletable record (URLs:2) has value (bookmarks_index:1)",
-    [
-      ["is_deletable","db.c",1564]
-    ]
-  ],
-  false
-]
-</pre>
-
-If you want to delete above records, you must delete the record which refers in advance, then delete data by above query. That is a very boring task that you need to delete each records step by step.
-
-In this release, there is one thing you need to do:
-
-<pre>
-delete URLs --key "http://groonga.org/"
-</pre>
-
-"Delete" command detects the records which refers, then automatically delete them.
-
-It remains "http://mroonga.org" and "http://ranguba.org" on bookmarks column, because they have nothing to do with the key - "http://groonga.org".
-
-h3. Conclusion
-
-See "Release 3.0.8 2013/08/29":/docs/news.html#release-3-0-7 about detailed changes since 3.0.6.
-
-Let's search by groonga!

  Added: en/_posts/2013-10-29-release.md (+70 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-10-29-release.md    2016-02-07 10:35:40 +0900 (4f8ebca)
@@ -0,0 +1,70 @@
+---
+layout: post.en
+title: Groonga 3.0.9 has been released
+description: Groonga 3.0.9 has been released!
+---
+
+Groonga 3.0.9 has been released
+-------------------------------
+
+[Groonga 3.0.9](/docs/news.html#release-3-0-9) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are three topics in this release.
+
+-   Supported groonga-cache-limit directive for groonga-httpd
+-   Added documentation about performance tuning
+-   Supported Ubuntu 13.10 (Saucy Salamander)
+
+### Supported groonga-cache-limit directive for groonga-httpd
+
+Groonga provides HTTP server as groonga-httpd based on nginx.
+In this release, groonga-httpd has supported new directive -
+`groonga_cache_limit` which enables customizing the size of cache.
+
+By adding this directive, you can customize the size of cache for each
+worker processes at once.
+
+Here is the sample configuration in location block.
+
+    location /d/ {
+      groonga on;
+      # You can customize query cache limit for groonga.
+      groonga_cache_limit 100;
+    }
+
+In the previous versions, you can't customize the size of cache for
+multiple worker processes at once.
+If you execute `cache_limit` command, it is not guranteed that the size
+of cache is updated for all worker. It means that specific worker may
+accept `cache_limit` command many times.
+You can solve this issue by `groonga_cache_limit` directive.
+
+### Added documentation about performance tuning
+
+We added documentation about performance tuning in this release.
+
+When Groonga processes enormous number of records, there is a case that
+Groonga performance issue occurs.
+Maybe such a problem derives from the number of records.
+You need to solve the issues - the number of limitation which process
+can handle, usage of memory, and so on.
+
+See following documentation about
+[tuning](http://groonga.org/docs/reference/tuning.html) .
+
+### Supported Ubuntu 13.10 (Saucy Salamander)
+
+We began to support Ubuntu 13.10 which is released at Oct 17, 2013.
+
+See following
+[documentation](http://groonga.org/docs/install/ubuntu.html#saucy-salamander)
+how to install Groonga on Ubuntu 13.10.
+
+### Conclusion
+
+See [Release 3.0.9 2013/10/29](/docs/news.html#release-3-0-9) about
+detailed changes since 3.0.8.
+
+Let's search by Groonga!

  Deleted: en/_posts/2013-10-29-release.textile (+0 -62) 100644
===================================================================
--- en/_posts/2013-10-29-release.textile    2016-02-06 14:39:42 +0900 (4f27d1b)
+++ /dev/null
@@ -1,62 +0,0 @@
----
-layout: post.en
-title: Groonga 3.0.9 has been released
-description: Groonga 3.0.9 has been released!
----
-
-h2. Groonga 3.0.9 has been released
-
-"Groonga 3.0.9":/docs/news.html#release-3-0-9 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are three topics in this release.
-
-* Supported groonga-cache-limit directive for groonga-httpd
-* Added documentation about performance tuning
-* Supported Ubuntu 13.10 (Saucy Salamander)
-
-h3. Supported groonga-cache-limit directive for groonga-httpd
-
-Groonga provides HTTP server as groonga-httpd based on nginx.
-In this release, groonga-httpd has supported new directive - @groonga_cache_limit@ which enables customizing the size of cache.
-
-By adding this directive, you can customize the size of cache for each worker processes at once.
-
-Here is the sample configuration in location block.
-
-<pre>
-location /d/ {
-  groonga on;
-  # You can customize query cache limit for groonga.
-  groonga_cache_limit 100;
-}
-</pre>
-
-In the previous versions, you can't customize the size of cache for multiple worker processes at once.
-If you execute @cache_limit@ command, it is not guranteed that the size of cache is updated for all worker. It means that specific worker may accept @cache_limit@ command many times.
-You can solve this issue by @groonga_cache_limit@ directive.
-
-h3. Added documentation about performance tuning
-
-We added documentation about performance tuning in this release.
-
-When Groonga processes enormous number of records, there is a case that Groonga performance issue occurs.
-Maybe such a problem derives from the number of records.
-You need to solve the issues - the number of limitation which process can handle, usage of memory, and so on.
-
-See following documentation about "tuning":http://groonga.org/docs/reference/tuning.html .
-
-h3. Supported Ubuntu 13.10 (Saucy Salamander)
-
-We began to support Ubuntu 13.10 which is released at Oct 17, 2013.
-
-See following "documentation":http://groonga.org/docs/install/ubuntu.html#saucy-salamander how to install Groonga on Ubuntu 13.10.
-
-  
-
-h3. Conclusion
-
-See "Release 3.0.9 2013/10/29":/docs/news.html#release-3-0-9 about detailed changes since 3.0.8.
-
-Let's search by Groonga!

  Added: en/_posts/2013-11-29-droonga-0.7.0.md (+22 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-11-29-droonga-0.7.0.md    2016-02-07 10:35:40 +0900 (7116fae)
@@ -0,0 +1,22 @@
+---
+layout: post.en
+title: Droonga 0.7.0 has been released
+---
+
+Droonga 0.7.0 has been released
+-------------------------------
+
+Today we've released [Droonga
+0.7.0](http://droonga.org/2013/11/29/release.html) . This is the first
+release of Droonga.
+
+Droonga is a scalable data processing engine, built on top of Groonga.
+It is based on a stream-oriented processing model, so it operates data
+(for example, search, update, group, and so on) by pipeline. The
+processing model makes Droonga flexible and extensible. Droonga can also
+process complex operations by mixing operations. Users can add custom
+operations to Droonga as Ruby plugins easily.
+
+The version number of this release is 0.7.0. This means "usable" not
+"stable". Now Droonga is under active development. Please try Droonga
+and join us to accelerate the development!

  Deleted: en/_posts/2013-11-29-droonga-0.7.0.textile (+0 -13) 100644
===================================================================
--- en/_posts/2013-11-29-droonga-0.7.0.textile    2016-02-06 14:39:42 +0900 (3adc226)
+++ /dev/null
@@ -1,13 +0,0 @@
----
-layout: post.en
-title: Droonga 0.7.0 has been released
----
-
-h2. Droonga 0.7.0 has been released
-
-Today we've released "Droonga 0.7.0":http://droonga.org/2013/11/29/release.html . This is the first release of Droonga.
-
-
-Droonga is a scalable data processing engine, built on top of Groonga. It is based on a stream-oriented processing model, so it operates data (for example, search, update, group, and so on) by pipeline. The processing model makes Droonga flexible and extensible. Droonga can also process complex operations by mixing operations. Users can add custom operations to Droonga as Ruby plugins easily.
-
-The version number of this release is 0.7.0. This means "usable" not "stable". Now Droonga is under active development. Please try Droonga and join us to accelerate the development!

  Added: en/_posts/2013-11-29-release.md (+59 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-11-29-release.md    2016-02-07 10:35:40 +0900 (4fb8497)
@@ -0,0 +1,59 @@
+---
+layout: post.en
+title: Groonga 3.1.0 has been released
+description: Groonga 3.1.0 has been released!
+---
+
+Groonga 3.1.0 has been released
+-------------------------------
+
+[Groonga 3.1.0](/docs/news.html#release-3-1-0) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are three topics in this release.
+
+### Supported an option to skip updating for the same value
+
+Groonga now supports option to skip updating for the same value. This
+feature is enabled by setting GRN_JA_SKIP_SAME_VALUE_PUT=yes as
+environment variable.
+
+If you install Groonga as deb or rpm packages, you can customize default
+configuration file.
+
+    #GRN_JA_SKIP_SAME_VALUE_PUT=yes
+
+Here are the list of configuration files.
+
+Debian or Ubuntu:
+
+    /etc/default/groonga-httpd
+    /etc/default/groonga-server-http
+    /etc/default/groonga-server-gqtp
+
+CentOS or Fedora:
+
+    /etc/sysconfig/groonga-httpd
+    /etc/sysconfig/groonga-server-http
+    /etc/sysconfig/groonga-server-gqtp
+    /etc/systemd/groonga-httpd
+    /etc/systemd/groonga-server-http
+    /etc/systemd/groonga-server-gqtp
+
+Groonga inevitable to increase the size of database by updating column
+of variable length in long term.
+
+By setting this environment variable, Groonga doesn't update column of
+variable length if the same value is given.
+
+This option is disabled in the default because this feature is not
+stabilized yet. There is a case that the size of database increases
+conversely.
+
+### Conclusion
+
+See [Release 3.1.0 2013/11/29](/docs/news.html#release-3-1-0) about
+detailed changes since 3.0.9.
+
+Let's search by Groonga!

  Deleted: en/_posts/2013-11-29-release.textile (+0 -56) 100644
===================================================================
--- en/_posts/2013-11-29-release.textile    2016-02-06 14:39:42 +0900 (3f63e1b)
+++ /dev/null
@@ -1,56 +0,0 @@
----
-layout: post.en
-title: Groonga 3.1.0 has been released
-description: Groonga 3.1.0 has been released!
----
-
-h2. Groonga 3.1.0 has been released
-
-"Groonga 3.1.0":/docs/news.html#release-3-1-0 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are three topics in this release.
-
-h3. Supported an option to skip updating for the same value
-
-Groonga now supports option to skip updating for the same value. This feature is enabled by setting GRN_JA_SKIP_SAME_VALUE_PUT=yes as environment variable.
-
-If you install Groonga as deb or rpm packages, you can customize default configuration file.
-
-<pre>
-#GRN_JA_SKIP_SAME_VALUE_PUT=yes
-</pre>
-
-Here are the list of configuration files.
-
-Debian or Ubuntu:
-
-<pre>
-/etc/default/groonga-httpd
-/etc/default/groonga-server-http
-/etc/default/groonga-server-gqtp
-</pre>
-
-CentOS or Fedora:
-
-<pre>
-/etc/sysconfig/groonga-httpd
-/etc/sysconfig/groonga-server-http
-/etc/sysconfig/groonga-server-gqtp
-/etc/systemd/groonga-httpd
-/etc/systemd/groonga-server-http
-/etc/systemd/groonga-server-gqtp
-</pre>
-
-Groonga inevitable to increase the size of database by updating column of variable length in long term.
-
-By setting this environment variable, Groonga doesn't update column of variable length if the same value is given.
-
-This option is disabled in the default because this feature is not stabilized yet. There is a case that the size of database increases conversely.
-
-h3. Conclusion
-
-See "Release 3.1.0 2013/11/29":/docs/news.html#release-3-1-0 about detailed changes since 3.0.9.
-
-Let's search by Groonga!

  Added: en/_posts/2013-12-16-drop-squeeze-and-lucid-support.md (+61 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-12-16-drop-squeeze-and-lucid-support.md    2016-02-07 10:35:40 +0900 (831a8df)
@@ -0,0 +1,61 @@
+---
+layout: post.en
+title: Drop package support for Debian 6.0(squeeze) and Ubuntu
+10.04(lucid)
+description: Drop package support for Debian 6.0(squeeze) and Ubuntu
+10.04(lucid)
+---
+
+Drop package support for Debian 6.0(squeeze) and Ubuntu 10.04(lucid)
+--------------------------------------------------------------------
+
+We announce that Groonga Project will drop package support for old
+releases.
+
+### Target environment
+
+Groonga Project decided to drop providing packages for following
+release.
+
+-   Debian 6.0(squeeze)
+-   Ubuntu 10.04(lucid)
+
+### End of release
+
+We will drop package support since Groonga 3.1.1 which will be released
+at Dec 29, 2013.
+
+### About migration
+
+Please migrate from Debian 6.0(squeeze) or Ubuntu 10.04(lucid) to Debian
+7.0(wheezy) or Ubuntu 12.04(precise).
+
+Note that Debian 6.0(squeeze) is "Old stable".
+
+### The reason why we drop package support
+
+Groonga Project provides packages by self hosted the Groonga
+repository.
+It is aimed to support easy to install, but it requires users to
+register the Groonga repository in advance.
+
+We are working on registering Groonga as Debian package so that you
+don't have to register it.
+
+Such task needs to support Multiarch, but it is not suported on Debian
+6.0(squeeze) and Ubuntu 10.04(lucid).
+This is why we will drop package support on above environment.
+
+If you can't migrate to latest environment, please try to build from
+source.
+
+-   [Build from source on
+    Debian](http://groonga.org/docs/install/debian.html#build-from-source)
+-   [Build from source on
+    Ubuntu](http://groonga.org/docs/install/ubuntu.html#build-from-source)
+
+### Conclusion
+
+We will continue to release latest Groonga every month!
+
+Let's search by Groonga!

  Deleted: en/_posts/2013-12-16-drop-squeeze-and-lucid-support.textile (+0 -47) 100644
===================================================================
--- en/_posts/2013-12-16-drop-squeeze-and-lucid-support.textile    2016-02-06 14:39:42 +0900 (b81f3ee)
+++ /dev/null
@@ -1,47 +0,0 @@
----
-layout: post.en
-title: Drop package support for Debian 6.0(squeeze) and Ubuntu 10.04(lucid)
-description: Drop package support for Debian 6.0(squeeze) and Ubuntu 10.04(lucid)
----
-
-h2. Drop package support for Debian 6.0(squeeze) and Ubuntu 10.04(lucid)
-
-We announce that Groonga Project will drop package support for old releases.
-
-h3. Target environment
-
-Groonga Project decided to drop providing packages for following release.
-
-* Debian 6.0(squeeze)
-* Ubuntu 10.04(lucid)
-
-h3. End of release
-
-We will drop package support since Groonga 3.1.1 which will be released at Dec 29, 2013.
-
-h3. About migration
-
-Please migrate from Debian 6.0(squeeze) or Ubuntu 10.04(lucid) to Debian 7.0(wheezy) or Ubuntu 12.04(precise).
-
-Note that Debian 6.0(squeeze) is "Old stable".
-
-h3. The reason why we drop package support
-
-Groonga Project provides packages by self hosted the Groonga repository.
-It is aimed to support easy to install, but it requires users to register the Groonga repository in advance.
-
-We are working on registering Groonga as Debian package so that you don't have to register it.
-
-Such task needs to support Multiarch, but it is not suported on Debian 6.0(squeeze) and Ubuntu 10.04(lucid).
-This is why we will drop package support on above environment.
-
-If you can't migrate to latest environment, please try to build from source.
-
-* "Build from source on Debian":http://groonga.org/docs/install/debian.html#build-from-source
-* "Build from source on Ubuntu":http://groonga.org/docs/install/ubuntu.html#build-from-source
-
-h3. Conclusion
-
-We will continue to release latest Groonga every month!
-
-Let's search by Groonga!

  Added: en/_posts/2013-12-29-release.md (+116 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2013-12-29-release.md    2016-02-07 10:35:40 +0900 (01ed28a)
@@ -0,0 +1,116 @@
+---
+layout: post.en
+title: Groonga 3.1.1 has been released
+description: Groonga 3.1.1 has been released!
+---
+
+Groonga 3.1.1 has been released
+-------------------------------
+
+[Groonga 3.1.1](/docs/news.html#release-3-1-0) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are following topics in this release.
+
+-   Supported geo_in_rectangle in the whole world
+-   Supported between function
+-   Supported Fedora 20
+-   Dropped Debian 6.0(squeeze) and Ubuntu 10.04(lucid) support
+
+### Supported geo_in_rectangle in the whole world
+
+In this release, Groonga began to support geo_in_rectangle in the
+whole world.
+
+Groonga supports the geographical feature to check whether the point
+exists
+in the rectangle area.
+
+In the previous versions, geo_in_rectangle supports only the east
+longitude in the north hemisphere.
+It is good enough for Groonga users who lives in Japan especially, but
+not for others.
+
+Now, you can use geo_in_rectangle even though accross the prime
+meridian or the equator.
+
+See
+[geo_in_rectangle](http://groonga.org/docs/reference/functions/geo_in_rectangle.html)
+documentation about details.
+
+### Supported between function
+
+In this release, Groonga began to support between function which is used
+for filtering the specific range value of column.
+
+Here are a sample schema and data.
+
+    table_create Users TABLE_HASH_KEY ShortText
+    column_create Users age COLUMN_SCALAR Int32
+    table_create Ages TABLE_HASH_KEY Int32
+    column_create Ages user_age COLUMN_INDEX Users age
+    load --table Users
+    [
+    {"_key": "Alice",  "age": 12},
+    {"_key": "Bob",    "age": 13},
+    {"_key": "Calros", "age": 14},
+    {"_key": "Dave",   "age": 15},
+    {"_key": "Eric",   "age": 16}
+    {"_key": "Frank",  "age": 17}
+    ]
+
+In the previous versions, you need to execute following query if you
+want to select persons which is matched to PG-13 (MPAA) rating.
+
+    select Users --filter 'age >= 13 && age <= 16'
+
+On the contrast, you can use between function to get same result now.
+
+    select Users --filter 'between(age, 13, "include", 16, "include")'
+
+In the above case, it means that "search the records which matches to
+specific value of column from the value of range which contains
+13,14,15,16".
+
+    [
+      [
+        [4],
+        [
+          ["_id","UInt32"],["_key","ShortText"],["age","Int32"]
+        ],
+        [2,"Bob",13],
+        [3,"Calros",14],
+        [4,"Dave",15],
+        [5,"Eric",16]
+      ]
+    ]
+
+See [between](http://groonga.org/docs/reference/functions/between.html)
+documentation about details.
+
+### Supported Fedora 20
+
+In this release, Groonga began to support Fedora 20 which is released at
+Dec 17, 2013.
+
+See following documentation how to install on [Fedora
+20](http://groonga.org/docs/install/fedora.html).
+
+Note that Fedora 19 support is dropped now.
+
+### Dropped Debian 6.0(squeeze) and Ubuntu 10.04(lucid) support
+
+In this release, Debian 6.0(squeeze) and Ubuntu 10.04(lucid) support are
+dropped.
+
+See following blog entry why squeeze and lucid are dropped.
+
+http://groonga.org/en/blog/2013/12/16/drop-squeeze-and-lucid-support.html
+
+### Conclusion
+
+See [Release 3.1.1 2013/12/29](/docs/news.html#release-3-1-1) about
+detailed changes since 3.1.0.
+
+Let's search by Groonga!

  Deleted: en/_posts/2013-12-29-release.textile (+0 -108) 100644
===================================================================
--- en/_posts/2013-12-29-release.textile    2016-02-06 14:39:42 +0900 (38cf521)
+++ /dev/null
@@ -1,108 +0,0 @@
----
-layout: post.en
-title: Groonga 3.1.1 has been released
-description: Groonga 3.1.1 has been released!
----
-
-h2. Groonga 3.1.1 has been released
-
-"Groonga 3.1.1":/docs/news.html#release-3-1-0 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are following topics in this release.
-
-* Supported geo_in_rectangle in the whole world
-* Supported between function
-* Supported Fedora 20
-* Dropped Debian 6.0(squeeze) and Ubuntu 10.04(lucid) support
-
-h3. Supported geo_in_rectangle in the whole world
-
-In this release, Groonga began to support geo_in_rectangle in the whole world.
-
-Groonga supports the geographical feature to check whether the point exists
-in the rectangle area.
-
-In the previous versions, geo_in_rectangle supports only the east longitude in the north hemisphere.
-It is good enough for Groonga users who lives in Japan especially, but not for others.
-
-Now, you can use geo_in_rectangle even though accross the prime meridian or the equator.
-
-See "geo_in_rectangle":http://groonga.org/docs/reference/functions/geo_in_rectangle.html
-documentation about details.
-
-h3. Supported between function
-
-In this release, Groonga began to support between function which is used for filtering the specific range value of column.
-
-Here are a sample schema and data.
-
-<pre>
-table_create Users TABLE_HASH_KEY ShortText
-column_create Users age COLUMN_SCALAR Int32
-table_create Ages TABLE_HASH_KEY Int32
-column_create Ages user_age COLUMN_INDEX Users age
-load --table Users
-[
-{"_key": "Alice",  "age": 12},
-{"_key": "Bob",    "age": 13},
-{"_key": "Calros", "age": 14},
-{"_key": "Dave",   "age": 15},
-{"_key": "Eric",   "age": 16}
-{"_key": "Frank",  "age": 17}
-]
-</pre>
-
-In the previous versions, you need to execute following query if you want to select persons which is matched to PG-13 (MPAA) rating.
-
-<pre>
-select Users --filter 'age >= 13 && age <= 16'
-</pre>
-
-On the contrast, you can use between function to get same result now.
-
-<pre>
-select Users --filter 'between(age, 13, "include", 16, "include")'
-</pre>
-
-In the above case, it means that "search the records which matches to specific value of column from the value of range which contains 13,14,15,16".
-
-<pre>
-[
-  [
-    [4],
-    [
-      ["_id","UInt32"],["_key","ShortText"],["age","Int32"]
-    ],
-    [2,"Bob",13],
-    [3,"Calros",14],
-    [4,"Dave",15],
-    [5,"Eric",16]
-  ]
-]
-</pre>
-
-See "between":http://groonga.org/docs/reference/functions/between.html documentation about details.
-
-h3. Supported Fedora 20
-
-In this release, Groonga began to support Fedora 20 which is released at Dec 17, 2013.
-
-See following documentation how to install on "Fedora 20":http://groonga.org/docs/install/fedora.html.
-
-Note that Fedora 19 support is dropped now.
-
-h3. Dropped Debian 6.0(squeeze) and Ubuntu 10.04(lucid) support
-
-In this release, Debian 6.0(squeeze) and Ubuntu 10.04(lucid) support are dropped.
-
-See following blog entry why squeeze and lucid are dropped.
-
-  http://groonga.org/en/blog/2013/12/16/drop-squeeze-and-lucid-support.html
-
-h3. Conclusion
-
-See "Release 3.1.1 2013/12/29":/docs/news.html#release-3-1-1 about detailed changes since 3.1.0.
-
-Let's search by Groonga!

  Added: en/_posts/2014-01-29-droonga-0.9.0.md (+20 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2014-01-29-droonga-0.9.0.md    2016-02-07 10:35:40 +0900 (ed8d1ee)
@@ -0,0 +1,20 @@
+---
+layout: post.en
+title: Droonga 0.9.0 has been released
+---
+
+Droonga 0.9.0 has been released
+-------------------------------
+
+Today we've released [Droonga
+0.9.0](http://droonga.org/news/2014/01/29/release.html) .
+
+Droonga is a scalable data processing engine, built on top of Groonga.
+It is based on a stream-oriented processing model, so it operates data
+(for example, search, update, group, and so on) by pipeline. The
+processing model makes Droonga flexible and extensible. Droonga can also
+process complex operations by mixing operations. Users can add custom
+operations to Droonga as Ruby plugins easily.
+
+Now Droonga is under active development. Please try Droonga and join us
+to accelerate the development!

  Deleted: en/_posts/2014-01-29-droonga-0.9.0.textile (+0 -12) 100644
===================================================================
--- en/_posts/2014-01-29-droonga-0.9.0.textile    2016-02-06 14:39:42 +0900 (b07cd35)
+++ /dev/null
@@ -1,12 +0,0 @@
----
-layout: post.en
-title: Droonga 0.9.0 has been released
----
-
-h2. Droonga 0.9.0 has been released
-
-Today we've released "Droonga 0.9.0":http://droonga.org/news/2014/01/29/release.html .
-
-Droonga is a scalable data processing engine, built on top of Groonga. It is based on a stream-oriented processing model, so it operates data (for example, search, update, group, and so on) by pipeline. The processing model makes Droonga flexible and extensible. Droonga can also process complex operations by mixing operations. Users can add custom operations to Droonga as Ruby plugins easily.
-
-Now Droonga is under active development. Please try Droonga and join us to accelerate the development!

  Added: en/_posts/2014-01-29-release.md (+58 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2014-01-29-release.md    2016-02-07 10:35:40 +0900 (b739095)
@@ -0,0 +1,58 @@
+---
+layout: post.en
+title: Groonga 3.1.2 has been released
+description: Groonga 3.1.2 has been released!
+---
+
+Groonga 3.1.2 has been released
+-------------------------------
+
+[Groonga 3.1.2](/docs/news.html#release-3-1-2) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are following topics in this release.
+
+-   Supported to customize lock timeout
+-   GRN_JA_SKIP_SAME_VALUE_PUT is enabled by default
+
+### Supported to customize lock timeout
+
+In this release, Groonga began to support customizing lock timeout.
+
+In the previous versions, the value of lock timeout is defined as about
+3 hours. You can't change the value without modifying source code.
+
+Now you can customize this value as configure option
+(--with-lock-timeout) or CMake build flags (-DGRN_LOCK_TIMEOUT).
+
+configure:
+
+    $ ./configure --with-lock-timeout=(TIMEOUT)
+
+CMake:
+
+    $ cmake -DGRN_LOCK_TIMEOUT=(TIMEOUT)
+
+See [Global
+configuration](http://groonga.org/docs/reference/api/global_configurations.html)
+documentation about the value of lock timeout.
+
+### GRN_JA_SKIP_SAME_VALUE_PUT is enabled by default
+
+In the Groonga 3.1.0 release, GRN_JA_SKIP_SAME_VALUE_PUT
+environment variable is introduced experimentally.
+
+This environment variable controls whether skipping to update the same
+value. As it was experimentally introduced at that time, it was not
+enabled by default, but now it is enabled by default at last!
+
+If there are many queries with updating by the same value, it may
+suppress increasing the size of database by this change.
+
+### Conclusion
+
+See [Release 3.1.2 2014/01/29](/docs/news.html#release-3-1-2) about
+detailed changes since 3.1.1.
+
+Let's search by Groonga!

  Deleted: en/_posts/2014-01-29-release.textile (+0 -52) 100644
===================================================================
--- en/_posts/2014-01-29-release.textile    2016-02-06 14:39:42 +0900 (05d10fc)
+++ /dev/null
@@ -1,52 +0,0 @@
----
-layout: post.en
-title: Groonga 3.1.2 has been released
-description: Groonga 3.1.2 has been released!
----
-
-h2. Groonga 3.1.2 has been released
-
-"Groonga 3.1.2":/docs/news.html#release-3-1-2 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are following topics in this release.
-
-* Supported to customize lock timeout
-* GRN_JA_SKIP_SAME_VALUE_PUT is enabled by default
-
-h3. Supported to customize lock timeout
-
-In this release, Groonga began to support customizing lock timeout.
-
-In the previous versions, the value of lock timeout is defined as about 3 hours. You can't change the value without modifying source code.
-
-Now you can customize this value as configure option (--with-lock-timeout) or CMake build flags (-DGRN_LOCK_TIMEOUT).
-
-configure:
-
-<pre>
-$ ./configure --with-lock-timeout=(TIMEOUT)
-</pre>
-
-CMake:
-
-<pre>
-$ cmake -DGRN_LOCK_TIMEOUT=(TIMEOUT)
-</pre>
-
-See "Global configuration":http://groonga.org/docs/reference/api/global_configurations.html documentation about the value of lock timeout.
-
-h3. GRN_JA_SKIP_SAME_VALUE_PUT is enabled by default
-
-In the Groonga 3.1.0 release, GRN_JA_SKIP_SAME_VALUE_PUT environment variable is introduced experimentally.
-
-This environment variable controls whether skipping to update the same value. As it was experimentally introduced at that time, it was not enabled by default, but now it is enabled by default at last!
-
-If there are many queries with updating by the same value, it may suppress increasing the size of database by this change.
-
-h3. Conclusion
-
-See "Release 3.1.2 2014/01/29":/docs/news.html#release-3-1-2 about detailed changes since 3.1.1.
-
-Let's search by Groonga!

  Added: en/_posts/2014-02-09-droonga-0.9.9.md (+24 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2014-02-09-droonga-0.9.9.md    2016-02-07 10:35:40 +0900 (a910205)
@@ -0,0 +1,24 @@
+---
+layout: post.en
+title: Droonga 0.9.9 has been released
+---
+
+Droonga 0.9.9 has been released
+-------------------------------
+
+Today we've released [Droonga
+0.9.9](http://droonga.org/news/2014/02/09/release.html) .
+
+Droonga is a scalable data processing engine, based on a stream oriented
+processing model. The name is originated from "Distributed Groonga".
+Yes, it is built on top of Groonga. In many operations (searching,
+updating, grouping, and so on), Droonga processes various data by
+pipeline. As the result, Droonga has large potential around its
+flexibility and extensibility. Moreover, those features provide high
+availability for people who develop any data processing engine based on
+Droonga. You can process complex operations by mixing operations, and
+you can add custom operations to Droonga via plugins written as
+Ruby-scripts.
+
+Now Droonga is under active development. Please try Droonga and join us
+to accelerate the development!

  Deleted: en/_posts/2014-02-09-droonga-0.9.9.textile (+0 -12) 100644
===================================================================
--- en/_posts/2014-02-09-droonga-0.9.9.textile    2016-02-06 14:39:42 +0900 (dad4a28)
+++ /dev/null
@@ -1,12 +0,0 @@
----
-layout: post.en
-title: Droonga 0.9.9 has been released
----
-
-h2. Droonga 0.9.9 has been released
-
-Today we've released "Droonga 0.9.9":http://droonga.org/news/2014/02/09/release.html .
-
-Droonga is a scalable data processing engine, based on a stream oriented processing model. The name is originated from "Distributed Groonga". Yes, it is built on top of Groonga. In many operations (searching, updating, grouping, and so on), Droonga processes various data by pipeline. As the result, Droonga has large potential around its flexibility and extensibility. Moreover, those features provide high availability for people who develop any data processing engine based on Droonga. You can process complex operations by mixing operations, and you can add custom operations to Droonga via plugins written as Ruby-scripts.
-
-Now Droonga is under active development. Please try Droonga and join us to accelerate the development!

  Added: en/_posts/2014-02-09-release.md (+78 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2014-02-09-release.md    2016-02-07 10:35:40 +0900 (7a550b6)
@@ -0,0 +1,78 @@
+---
+layout: post.en
+title: Groonga 4.0.0 has been released
+description: Groonga 4.0.0 has been released!
+---
+
+Groonga 4.0.0 has been released
+-------------------------------
+
+[Groonga 4.0.0](/docs/news.html#release-4-0-0) has been released!
+
+How to install: [Install](/docs/install.html)
+
+Since Groonga 3.0.0 had been released, many improvements, changes, or
+bug fixes was shipped.
+
+Here are brief topics ever released:
+
+-   Supported more binary operations for built-in types. (3.0.2)
+-   Added
+    [sub_filter](/docs/reference/functions/sub_filter.html) function.
+    (3.0.2)
+-   Supported query expander in query() function. (3.0.2)
+-   Supported Ubuntu 13.04 Raring Ringtail. (3.0.3)
+-   Supported to learn with the value of customized weight by using
+    configuration.weight configuration. (3.0.3)
+-   Supported vector index access by "vector[N]" syntax. (3.0.3)
+-   Dropped Ubuntu 11.10 (Oneiric Ocelot) support. (3.0.4)
+-   Supported
+    [tokenize](/docs/reference/commands/tokenize.html) command. (3.0.4)
+-   Supported Debian 8.0 (jessie). (3.0.4)
+-   Added
+    [html_untag](/docs/reference/functions/html_untag.html) function.
+    (3.0.5)
+-   Supported Fedora 19. (3.0.6)
+-   Dropped Fedora 18 support. (3.0.6)
+-   Added API documentation. (3.0.7)
+-   Supported log related directives for groonga-httpd. (3.0.7)
+-   Supported loading data using POST method for groonga-httpd. (3.0.7)
+-   Supported [cascade
+    delete](/docs/reference/commands/delete.html#cascade-delete) to
+    referenced records. (3.0.8)
+-   Added experimental
+    [ruby_eval](/docs/reference/commands/ruby_eval.html) command.
+    (3.0.8)
+-   Supported Ubuntu 13.10 (Saucy Salamander). (3.0.9)
+-   Added experimental
+    [ruby_load](/docs/reference/commands/ruby_load.html) command.
+    (3.0.9)
+-   Supported an option to skip updating for the same value. (3.1.0)
+-   Dropped Debian 6.0 (squeeze) support. (3.1.1)
+-   Dropped Ubuntu 10.04 (lucid) support. (3.1.1)
+-   Supported
+    [geo_in_rectangle](/docs/reference/functions/geo_in_rectangle.html)
+    in the whole world. (3.1.1)
+-   Supported [between](/docs/reference/functions/between.html) function
+    which is used for filtering the column value in specific range.
+-   Dropped Fedora 19. (3.1.1)
+-   Supported Fedora 20. (3.1.1)
+-   Enabled GRN_JA_SKIP_SAME_VALUE_PUT by default. (3.1.2)
+-   Supported to customize the value of lock timeout. (3.1.2)
+-   Dropped Ubuntu 13.04 support. (4.0.0)
+-   Supported to show "checks" which is used for calculating next
+    character position for normalizer. (4.0.0)
+
+We could make many bug fixes and improvements based on your feedbacks,
+thanks!
+
+During 3.x release, we had decided to use capitalized project name
+"Groonga". Please use "Groonga" instead of "groonga" if you introduce
+"Groonga" to your colleague.
+
+### Conclusion
+
+See [Release 4.0.0 2014/02/09](/docs/news.html#release-4-0-0) about
+detailed changes since 3.1.2.
+
+Let's search by Groonga!

  Deleted: en/_posts/2014-02-09-release.textile (+0 -56) 100644
===================================================================
--- en/_posts/2014-02-09-release.textile    2016-02-06 14:39:42 +0900 (dde4702)
+++ /dev/null
@@ -1,56 +0,0 @@
----
-layout: post.en
-title: Groonga 4.0.0 has been released
-description: Groonga 4.0.0 has been released!
----
-
-h2. Groonga 4.0.0 has been released
-
-"Groonga 4.0.0":/docs/news.html#release-4-0-0 has been released!
-
-How to install: "Install":/docs/install.html
-
-Since Groonga 3.0.0 had been released, many improvements, changes, or bug fixes was shipped.
-
-Here are brief topics ever released:
-
-* Supported more binary operations for built-in types. (3.0.2)
-* Added "sub_filter":/docs/reference/functions/sub_filter.html function. (3.0.2)
-* Supported query expander in query() function. (3.0.2)
-* Supported Ubuntu 13.04 Raring Ringtail. (3.0.3)
-* Supported to learn with the value of customized weight by using configuration.weight configuration. (3.0.3)
-* Supported vector index access by "vector[N]" syntax. (3.0.3)
-* Dropped Ubuntu 11.10 (Oneiric Ocelot) support. (3.0.4)
-* Supported "tokenize":/docs/reference/commands/tokenize.html command. (3.0.4)
-* Supported Debian 8.0 (jessie). (3.0.4)
-* Added "html_untag":/docs/reference/functions/html_untag.html function. (3.0.5)
-* Supported Fedora 19. (3.0.6)
-* Dropped Fedora 18 support. (3.0.6)
-* Added API documentation. (3.0.7)
-* Supported log related directives for groonga-httpd. (3.0.7)
-* Supported loading data using POST method for groonga-httpd. (3.0.7)
-* Supported "cascade delete":/docs/reference/commands/delete.html#cascade-delete to referenced records. (3.0.8)
-* Added experimental "ruby_eval":/docs/reference/commands/ruby_eval.html command. (3.0.8)
-* Supported Ubuntu 13.10 (Saucy Salamander). (3.0.9)
-* Added experimental "ruby_load":/docs/reference/commands/ruby_load.html command. (3.0.9)
-* Supported an option to skip updating for the same value. (3.1.0)
-* Dropped Debian 6.0 (squeeze) support. (3.1.1)
-* Dropped Ubuntu 10.04 (lucid) support. (3.1.1)
-* Supported "geo_in_rectangle":/docs/reference/functions/geo_in_rectangle.html in the whole world. (3.1.1)
-* Supported "between":/docs/reference/functions/between.html function which is used for filtering the column value in specific range.
-* Dropped Fedora 19. (3.1.1)
-* Supported Fedora 20. (3.1.1)
-* Enabled GRN_JA_SKIP_SAME_VALUE_PUT by default. (3.1.2)
-* Supported to customize the value of lock timeout. (3.1.2)
-* Dropped Ubuntu 13.04 support. (4.0.0)
-* Supported to show "checks" which is used for calculating next character position for normalizer. (4.0.0)
-
-We could make many bug fixes and improvements based on your feedbacks, thanks!
-
-During 3.x release, we had decided to use capitalized project name "Groonga". Please use "Groonga" instead of "groonga" if you introduce "Groonga" to your colleague.
-
-h3. Conclusion
-
-See "Release 4.0.0 2014/02/09":/docs/news.html#release-4-0-0 about detailed changes since 3.1.2.
-
-Let's search by Groonga!

  Added: en/_posts/2014-02-28-droonga-1.0.0.md (+25 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2014-02-28-droonga-1.0.0.md    2016-02-07 10:35:40 +0900 (495fc01)
@@ -0,0 +1,25 @@
+---
+layout: post.en
+title: Droonga 1.0.0 has been released
+---
+
+Droonga 1.0.0 has been released
+-------------------------------
+
+Today we've released [Droonga
+1.0.0](http://droonga.org/news/2014/02/28/release.html) . This is the
+first major release.
+
+Droonga is a scalable data processing engine, based on a stream oriented
+processing model. The name is originated from "Distributed Groonga".
+Yes, it is built on top of Groonga. In many operations (searching,
+updating, grouping, and so on), Droonga processes various data by
+pipeline. As the result, Droonga has large potential around its
+flexibility and extensibility. Moreover, those features provide high
+availability for people who develop any data processing engine based on
+Droonga. You can process complex operations by mixing operations, and
+you can add custom operations to Droonga via plugins written as
+Ruby-scripts.
+
+Now Droonga is under active development. Please try Droonga and join us
+to accelerate the development!

  Deleted: en/_posts/2014-02-28-droonga-1.0.0.textile (+0 -12) 100644
===================================================================
--- en/_posts/2014-02-28-droonga-1.0.0.textile    2016-02-06 14:39:42 +0900 (0e1e5d0)
+++ /dev/null
@@ -1,12 +0,0 @@
----
-layout: post.en
-title: Droonga 1.0.0 has been released
----
-
-h2. Droonga 1.0.0 has been released
-
-Today we've released "Droonga 1.0.0":http://droonga.org/news/2014/02/28/release.html . This is the first major release.
-
-Droonga is a scalable data processing engine, based on a stream oriented processing model. The name is originated from "Distributed Groonga". Yes, it is built on top of Groonga. In many operations (searching, updating, grouping, and so on), Droonga processes various data by pipeline. As the result, Droonga has large potential around its flexibility and extensibility. Moreover, those features provide high availability for people who develop any data processing engine based on Droonga. You can process complex operations by mixing operations, and you can add custom operations to Droonga via plugins written as Ruby-scripts.
-
-Now Droonga is under active development. Please try Droonga and join us to accelerate the development!

  Added: en/_posts/2014-03-29-droonga-1.0.1.md (+24 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2014-03-29-droonga-1.0.1.md    2016-02-07 10:35:40 +0900 (48a1b45)
@@ -0,0 +1,24 @@
+---
+layout: post.en
+title: Droonga 1.0.1 has been released
+---
+
+Droonga 1.0.1 has been released
+-------------------------------
+
+Today we've released [Droonga
+1.0.1](http://droonga.org/news/2014/03/29/release.html) .
+
+Droonga is a scalable data processing engine, based on a stream oriented
+processing model. The name is originated from "Distributed Groonga".
+Yes, it is built on top of Groonga. In many operations (searching,
+updating, grouping, and so on), Droonga processes various data by
+pipeline. As the result, Droonga has large potential around its
+flexibility and extensibility. Moreover, those features provide high
+availability for people who develop any data processing engine based on
+Droonga. You can process complex operations by mixing operations, and
+you can add custom operations to Droonga via plugins written as
+Ruby-scripts.
+
+Now Droonga is under active development. Please try Droonga and join us
+to accelerate the development!

  Deleted: en/_posts/2014-03-29-droonga-1.0.1.textile (+0 -13) 100644
===================================================================
--- en/_posts/2014-03-29-droonga-1.0.1.textile    2016-02-06 14:39:42 +0900 (5de867e)
+++ /dev/null
@@ -1,13 +0,0 @@
----
-layout: post.en
-title: Droonga 1.0.1 has been released
----
-
-h2. Droonga 1.0.1 has been released
-
-Today we've released "Droonga 1.0.1":http://droonga.org/news/2014/03/29/release.html .
-
-Droonga is a scalable data processing engine, based on a stream oriented processing model. The name is originated from "Distributed Groonga". Yes, it is built on top of Groonga. In many operations (searching, updating, grouping, and so on), Droonga processes various data by pipeline. As the result, Droonga has large potential around its flexibility and extensibility. Moreover, those features provide high availability for people who develop any data processing engine based on Droonga. You can process complex operations by mixing operations, and you can add custom operations to Droonga via plugins written as Ruby-scripts.
-
-Now Droonga is under active development. Please try Droonga and join us to accelerate the development!
-

  Added: en/_posts/2014-03-29-release.md (+185 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2014-03-29-release.md    2016-02-07 10:35:40 +0900 (04a049f)
@@ -0,0 +1,185 @@
+---
+layout: post.en
+title: Groonga 4.0.1 has been released
+description: Groonga 4.0.1 has been released!
+---
+
+Groonga 4.0.1 has been released
+-------------------------------
+
+[Groonga 4.0.1](/docs/news.html#release-4-0-1) has been released!
+
+How to install: [Install](/docs/install.html)
+
+There are following topics in this release.
+
+-   Resolved increasing the size of database issue
+-   Supported weight vector column
+-   Supported adjuster option in select command
+
+### Resolved increasing the size of database issue
+
+In this release, Groonga has resolved that the size of database increase
+by updating.
+
+Here is the history of suppressing the size of database:
+
+-   3.1.0 - Added GRN_JA_SKIP_SAME_VALUE_PUT environment variable
+
+It skips updating database if the value is same. This feature is marked
+as experimental.
+
+-   3.1.2 - Enable GRN_JA_SKIP_SAME_VALUE_PUT=yes by default
+
+It forces to enable above flag by default because this feature is
+reasonable effects
+ to suppress the size of database.
+
+In contrast to previous approach, Groonga can manage to use variable
+length more effectively so It fixes the issue about increasing the size
+of database.
+
+Note that you need to recreate the database to suppress the size of
+database feature.
+
+Here is the summary:
+
+-   You can open the database of previous versions by Groonga 4.0.1
+    or later.
+-   But, you can't open database which is created Groonga 4.0.1, by
+    previous versions.
+-   You can use this feature by recreating the database.
+
+In fact, ongaeshi who is developer of
+[Milkode](http://milkode.ongaeshi.me/index.html) had tested the impact
+of this feature. Here is the verified graph about increasing the size of
+database. (Thanks to ongaeshi![]()!)
+
+<html>
+<img src="http://d3j5vwomefv46c.cloudfront.net/photos/large/843929509.png?1394947803"/>
+
+</html>
+It reveals the fact that if you use previous database as
+is(4.0.0-72-continue), the size of database just increases, but if you
+recreate database, you can suppress the size of one (4.0.0-72-new).
+
+### Supported weight vector column
+
+In the Groonga 4.0.1 release, vector column can store multiple pairs of
+key and value. It is weight vector column.
+
+For example, if you want to store user's attribute as tag, you need to
+use COLUMN_VECTOR as following:
+
+    column_create Users tags COLUMN_VECTOR ShortText
+
+But, it is not enough if attribute has a deviation, so you need to use
+another columns to store the value of weight for each attriubutes as
+alternative way. (Here is the example schema definition of alternative
+way)
+
+    column_create Users tags COLUMN_VECTOR ShortText
+    column_create Users tags_A COLUMN_SCALAR Int32
+    column_create Users tags_B COLUMN_SCALAR Int32
+    column_create Users tags_C COLUMN_SCALAR Int32...
+
+By supporting weight vector column, Groonga can unify such columns into
+one column. Use 'WITH_WEIGHT' flag in column definition.
+
+    column_create Users tags COLUMN_VECTOR|WITH_WEIGHT ShortText
+
+You can store pair of key and value to vector column.
+
+    {"Tag A":weight1, "Tag B":weight2, "Tag C":weight3, ...}
+
+### Supported adjuster option in select command
+
+In this release, Groonga supported adjuster option in select command.
+
+In the previous versions, you can treat weight for each column by using
+match_column.
+
+Here is the difference of match_column and adjuster option:
+
+-   match_column - treat weight for matched column
+-   adjuster - treat weight for specific key of column
+
+In combination with weight vector column support, you can customize
+search results.
+
+For example, consiter to list up the person who use Groonga well. Assume
+that the value of rate is stored into weight vector column.
+
+Here is the sample schema definition:
+
+    table_create User TABLE_HASH_KEY ShortText
+    column_create User weight COLUMN_VECTOR|WITH_WEIGHT ShortText
+    column_create User tags COLUMN_VECTOR ShortText
+
+    table_create Weight TABLE_HASH_KEY ShortText
+    column_create Weight weight_index COLUMN_INDEX|WITH_WEIGHT User weight
+
+    table_create Tag TABLE_PAT_KEY ShortText
+    column_create Tag tags_index COLUMN_INDEX User tags
+
+Here is the way to load sample data:
+
+    load --table User
+    [
+      {
+        "_key":"alice",
+        "weight":{"Groonga":30, "Mroonga":20},
+        "tags": ["Groonga", "Mroonga"]
+      },
+      {
+        "_key":"bob",
+        "weight":{"Groonga":50},
+        "tags": ["Groonga"]
+      },
+      {
+        "_key":"carol",
+        "weight":{"Groonga":40,"Mroonga":30},
+        "tags": ["Groonga", "Mroonga"]
+      }
+    ]
+
+In the simple way, you can just use filter option to get the person who
+use "Groonga".
+
+    select User --output_columns _key,_score,* --sortby -_score --filter 'tags @ "Groonga"'
+
+But, we want to consider the rate in this case, so we need to use
+adjuster option for this purpose.
+
+    select User --output_columns _key,_score,* --sortby -_score --filter 'tags @ "Groonga"' --adjuster 'weight @ "Groonga" * 10'
+
+Here is the parameter for adjuster:
+
+    'weight @ "Groonga" * 10'
+
+It means that calculate the value of weight for weight column which use
+"Groonga" as keyword, if "Groonga" exists, multiply 10 for it.
+
+As a result, "bob" is the top of the result:
+
+    ["bob",511,["Groonga"],{"Groonga":50}],
+    ["carol",411,["Groonga","Mroonga"],{"Groonga":40,"Mroonga":30}],
+    ["alice",311,["Groonga","Mroonga"],{"Groonga":30,"Mroonga":20}]
+
+If you consider the person who use not only "Groonga" but also
+"Mroonga", specify "Mroonga" for adjuster:
+
+    select User --output_columns _key,_score,* --sortby -_score --filter 'tags @ "Groonga"' --adjuster 'weight @ "Mroonga" * 10'
+
+As a result, "carol" is the top of the result:
+
+    ["carol",311,["Groonga","Mroonga"],{"Groonga":40,"Mroonga":30}],
+    ["alice",211,["Groonga","Mroonga"],{"Groonga":30,"Mroonga":20}],
+    ["bob",1,["Groonga"],{"Groonga":50}]
+
+### Conclusion
+
+See [Release 4.0.1 2014/03/29](/docs/news.html#release-4-0-1) about
+detailed changes since 4.0.0.
+
+Let's search by Groonga!

  Deleted: en/_posts/2014-03-29-release.textile (+0 -182) 100644
===================================================================
--- en/_posts/2014-03-29-release.textile    2016-02-06 14:39:42 +0900 (11591a7)
+++ /dev/null
@@ -1,182 +0,0 @@
----
-layout: post.en
-title: Groonga 4.0.1 has been released
-description: Groonga 4.0.1 has been released!
----
-
-h2. Groonga 4.0.1 has been released
-
-"Groonga 4.0.1":/docs/news.html#release-4-0-1 has been released!
-
-How to install: "Install":/docs/install.html
-
-There are following topics in this release.
-
-* Resolved increasing the size of database issue
-* Supported weight vector column
-* Supported adjuster option in select command
-
-h3. Resolved increasing the size of database issue
-
-In this release, Groonga has resolved that the size of database increase by updating.
-
-Here is the history of suppressing the size of database:
-
-* 3.1.0 - Added GRN_JA_SKIP_SAME_VALUE_PUT environment variable
-
-  It skips updating database if the value is same. This feature is marked as experimental.
-
-* 3.1.2 - Enable GRN_JA_SKIP_SAME_VALUE_PUT=yes by default
-
-  It forces to enable above flag by default because this feature is reasonable effects
-  to suppress the size of database.
-
-In contrast to previous approach, Groonga can manage to use variable length more effectively so It fixes the issue about increasing the size of database.
-
-Note that you need to recreate the database to suppress the size of database feature.
-
-Here is the summary:
-
-* You can open the database of previous versions by Groonga 4.0.1 or later.
-* But, you can't open database which is created Groonga 4.0.1, by previous versions.
-* You can use this feature by recreating the database.
-
-In fact, ongaeshi who is developer of "Milkode":http://milkode.ongaeshi.me/index.html had tested the impact of this feature. Here is the verified graph about increasing the size of database. (Thanks to ongaeshi!!!)
-
-<html>
-<img src="http://d3j5vwomefv46c.cloudfront.net/photos/large/843929509.png?1394947803"/>
-</html>
-
-It reveals the fact that if you use previous database as is(4.0.0-72-continue), the size of database just increases, but if you recreate database, you can suppress the size of one (4.0.0-72-new).
-
-h3. Supported weight vector column
-
-In the Groonga 4.0.1 release, vector column can store multiple pairs of key and value. It is weight vector column.
-
-For example, if you want to store user's attribute as tag, you need to use COLUMN_VECTOR as following:
-
-<pre>
-column_create Users tags COLUMN_VECTOR ShortText
-</pre>
-
-But, it is not enough if attribute has a deviation, so you need to use another columns to store the value of weight for each attriubutes as alternative way. (Here is the example schema definition of alternative way)
- 
-<pre>
-column_create Users tags COLUMN_VECTOR ShortText
-column_create Users tags_A COLUMN_SCALAR Int32
-column_create Users tags_B COLUMN_SCALAR Int32
-column_create Users tags_C COLUMN_SCALAR Int32...
-</pre>
-
-By supporting weight vector column, Groonga can unify such columns into one column. Use 'WITH_WEIGHT' flag in column definition.
-
-<pre>
-column_create Users tags COLUMN_VECTOR|WITH_WEIGHT ShortText
-</pre>
-
-You can store pair of key and value to vector column.
-
-<pre>
-{"Tag A":weight1, "Tag B":weight2, "Tag C":weight3, ...}
-</pre>
-
-h3. Supported adjuster option in select command
-
-In this release, Groonga supported adjuster option in select command.
-
-In the previous versions, you can treat weight for each column by using match_column.
-
-Here is the difference of match_column and adjuster option:
-
-* match_column - treat weight for matched column
-* adjuster - treat weight for specific key of column
-
-In combination with weight vector column support,  you can customize search results.
-
-For example, consiter to list up the person who use Groonga well. Assume that the value of rate is stored into weight vector column.
-
-Here is the sample schema definition:
-
-<pre>
-table_create User TABLE_HASH_KEY ShortText
-column_create User weight COLUMN_VECTOR|WITH_WEIGHT ShortText
-column_create User tags COLUMN_VECTOR ShortText
-
-table_create Weight TABLE_HASH_KEY ShortText
-column_create Weight weight_index COLUMN_INDEX|WITH_WEIGHT User weight
-
-table_create Tag TABLE_PAT_KEY ShortText
-column_create Tag tags_index COLUMN_INDEX User tags
-</pre>
-
-Here is the way to load sample data:
-
-<pre>
-load --table User
-[
-  {
-    "_key":"alice",
-    "weight":{"Groonga":30, "Mroonga":20},
-    "tags": ["Groonga", "Mroonga"]
-  },
-  {
-    "_key":"bob",
-    "weight":{"Groonga":50},
-    "tags": ["Groonga"]
-  },
-  {
-    "_key":"carol",
-    "weight":{"Groonga":40,"Mroonga":30},
-    "tags": ["Groonga", "Mroonga"]
-  }
-]
-</pre>
-  
-In the simple way, you can just use filter option to get the person who use "Groonga".
-
-<pre>
-select User --output_columns _key,_score,* --sortby -_score --filter 'tags @ "Groonga"'
-</pre>
-
-But, we want to consider the rate in this case, so we need to use adjuster option for this purpose.
-
-<pre>
-select User --output_columns _key,_score,* --sortby -_score --filter 'tags @ "Groonga"' --adjuster 'weight @ "Groonga" * 10'
-</pre>
-
-Here is the parameter for adjuster:
-
-<pre>
-'weight @ "Groonga" * 10'
-</pre>
-
-It means that calculate the value of weight for weight column which use "Groonga" as keyword, if "Groonga" exists, multiply 10 for it. 
-
-As a result, "bob" is the top of the result:
-
-<pre>
-["bob",511,["Groonga"],{"Groonga":50}],
-["carol",411,["Groonga","Mroonga"],{"Groonga":40,"Mroonga":30}],
-["alice",311,["Groonga","Mroonga"],{"Groonga":30,"Mroonga":20}]
-</pre>
-
-If you consider the person who use not only "Groonga" but also "Mroonga", specify "Mroonga" for adjuster:
-
-<pre>
-select User --output_columns _key,_score,* --sortby -_score --filter 'tags @ "Groonga"' --adjuster 'weight @ "Mroonga" * 10'
-</pre>
-
-As a result, "carol" is the top of the result:
-
-<pre>
-["carol",311,["Groonga","Mroonga"],{"Groonga":40,"Mroonga":30}],
-["alice",211,["Groonga","Mroonga"],{"Groonga":30,"Mroonga":20}],
-["bob",1,["Groonga"],{"Groonga":50}]
-</pre>
-
-
-h3. Conclusion
-
-See "Release 4.0.1 2014/03/29":/docs/news.html#release-4-0-1 about detailed changes since 4.0.0.
-
-Let's search by Groonga!

  Added: en/_posts/2014-04-29-droonga-1.0.2.md (+23 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2014-04-29-droonga-1.0.2.md    2016-02-07 10:35:40 +0900 (b4a8af4)
@@ -0,0 +1,23 @@
+---
+layout: post.en
+title: Droonga 1.0.2 has been released
+---
+
+Droonga 1.0.2 has been released
+-------------------------------
+
+Today we've released [Droonga
+1.0.2](http://droonga.org/news/2014/04/29/release.html) .
+
+Droonga is a scalable data processing engine, based on a stream oriented
+processing model. The name is originated from "Distributed Groonga".
+
+Good news! Droonga 1.0.2 has better compatibility to Groonga. Some basic
+commands including "load" are now available. Moreover there is a new
+[tutorial for Groonga users](http://droonga.org/tutorial/groonga/)
+aiming to migrate from Groonga to Droonga. Droonga is still under
+development, but it already can work as a Groonga with the replication
+feature, via HTTP. Feel free to try it on!
+
+Now Droonga is under active development. Please try Droonga and join us
+to accelerate the development!

  Deleted: en/_posts/2014-04-29-droonga-1.0.2.textile (+0 -14) 100644
===================================================================
--- en/_posts/2014-04-29-droonga-1.0.2.textile    2016-02-06 14:39:42 +0900 (68d066b)
+++ /dev/null
@@ -1,14 +0,0 @@
----
-layout: post.en
-title: Droonga 1.0.2 has been released
----
-
-h2. Droonga 1.0.2 has been released
-
-Today we've released "Droonga 1.0.2":http://droonga.org/news/2014/04/29/release.html .
-
-Droonga is a scalable data processing engine, based on a stream oriented processing model. The name is originated from "Distributed Groonga".
-
-Good news! Droonga 1.0.2 has better compatibility to Groonga. Some basic commands including "load" are now available. Moreover there is a new "tutorial for Groonga users":http://droonga.org/tutorial/groonga/ aiming to migrate from Groonga to Droonga. Droonga is still under development, but it already can work as a Groonga with the replication feature, via HTTP. Feel free to try it on!
-
-Now Droonga is under active development. Please try Droonga and join us to accelerate the development!

  Added: en/_posts/2014-05-29-droonga-1.0.3.md (+21 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2014-05-29-droonga-1.0.3.md    2016-02-07 10:35:40 +0900 (09f3f45)
@@ -0,0 +1,21 @@
+---
+layout: post.en
+title: Droonga 1.0.3 has been released
+---
+
+Droonga 1.0.3 has been released
+-------------------------------
+
+Today we've released [Droonga
+1.0.3](http://droonga.org/news/2014/05/29/release.html) .
+
+Droonga is a distributed full text search engine, compatible to Groonga.
+The name is originated from "Distributed Groonga".
+
+You can replace nodes in your cluster without stopping of the service.
+See new tutorials: [how to dump and
+restore](http://droonga.org/tutorial/1.0.3/dump-restore/) and [how to
+modify replicas](http://droonga.org/tutorial/1.0.3/add-replica/) .
+
+Now Droonga is under active development. Please try Droonga and join us
+to accelerate the development!

  Deleted: en/_posts/2014-05-29-droonga-1.0.3.textile (+0 -15) 100644
===================================================================
--- en/_posts/2014-05-29-droonga-1.0.3.textile    2016-02-06 14:39:42 +0900 (c30efaf)
+++ /dev/null
@@ -1,15 +0,0 @@
----
-layout: post.en
-title: Droonga 1.0.3 has been released
----
-
-h2. Droonga 1.0.3 has been released
-
-Today we've released "Droonga 1.0.3":http://droonga.org/news/2014/05/29/release.html .
-
-Droonga is a distributed full text search engine, compatible to Groonga. The name is originated from "Distributed Groonga".
-
-You can replace nodes in your cluster without stopping of the service. See new tutorials: "how to dump and restore":http://droonga.org/tutorial/1.0.3/dump-restore/ and "how to modify replicas":http://droonga.org/tutorial/1.0.3/add-replica/ .
-
-Now Droonga is under active development. Please try Droonga and join us to accelerate the development!
-

  Added: en/_posts/2014-06-29-droonga-1.0.4.md (+23 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2014-06-29-droonga-1.0.4.md    2016-02-07 10:35:40 +0900 (a7aa8bf)
@@ -0,0 +1,23 @@
+---
+layout: post.en
+title: Droonga 1.0.4 has been released
+---
+
+Droonga 1.0.4 has been released
+-------------------------------
+
+Today we've released [Droonga
+1.0.4](http://droonga.org/news/2014/06/29/release.html) .
+
+Droonga is a distributed full text search engine, compatible to Groonga.
+The name is originated from "Distributed Groonga".
+
+The most important topic on this release is that new command line tools
+to modify cluster composition easily. You don't need to run various
+commands again and again anymore.
+See tutorials: [how to dump and
+restore](http://droonga.org/tutorial/1.0.4/dump-restore/) and [how to
+modify replicas](http://droonga.org/tutorial/1.0.4/add-replica/) .
+
+Now Droonga is under active development. Please try Droonga and join us
+to accelerate the development!

  Deleted: en/_posts/2014-06-29-droonga-1.0.4.textile (+0 -16) 100644
===================================================================
--- en/_posts/2014-06-29-droonga-1.0.4.textile    2016-02-06 14:39:42 +0900 (faa5d2b)
+++ /dev/null
@@ -1,16 +0,0 @@
----
-layout: post.en
-title: Droonga 1.0.4 has been released
----
-
-h2. Droonga 1.0.4 has been released
-
-Today we've released "Droonga 1.0.4":http://droonga.org/news/2014/06/29/release.html .
-
-Droonga is a distributed full text search engine, compatible to Groonga. The name is originated from "Distributed Groonga".
-
-The most important topic on this release is that new command line tools to modify cluster composition easily. You don't need to run various commands again and again anymore.
-See tutorials: "how to dump and restore":http://droonga.org/tutorial/1.0.4/dump-restore/ and "how to modify replicas":http://droonga.org/tutorial/1.0.4/add-replica/ .
-
-Now Droonga is under active development. Please try Droonga and join us to accelerate the development!
-

  Renamed: en/_posts/2014-07-29-droonga-1.0.5.md (+8 -5) 53%
===================================================================
--- en/_posts/2014-07-29-droonga-1.0.5.textile    2016-02-06 14:39:42 +0900 (b223a09)
+++ en/_posts/2014-07-29-droonga-1.0.5.md    2016-02-07 10:35:40 +0900 (ddc9fd7)
@@ -3,13 +3,16 @@ layout: post.en
 title: Droonga 1.0.5 has been released
 ---
 
-h2. Droonga 1.0.5 has been released
+Droonga 1.0.5 has been released
+-------------------------------
 
-Today we've released "Droonga 1.0.5":http://droonga.org/news/2014/07/29/release.html .
+Today we've released [Droonga
+1.0.5](http://droonga.org/news/2014/07/29/release.html) .
 
-Droonga is a distributed full text search engine, compatible to Groonga. The name is originated from "Distributed Groonga".
+Droonga is a distributed full text search engine, compatible to Groonga.
+The name is originated from "Distributed Groonga".
 On this release, some stability issues are fixed.
 Droonga becomes more safe, more usable.
 
-Now Droonga is under active development. Please try Droonga and join us to accelerate the development!
-
+Now Droonga is under active development. Please try Droonga and join us
+to accelerate the development!

  Renamed: en/_posts/2014-09-29-droonga-1.0.6.md (+8 -5) 56%
===================================================================
--- en/_posts/2014-09-29-droonga-1.0.6.textile    2016-02-06 14:39:42 +0900 (1c26ff9)
+++ en/_posts/2014-09-29-droonga-1.0.6.md    2016-02-07 10:35:40 +0900 (55ba3a6)
@@ -3,13 +3,16 @@ layout: post.en
 title: Droonga 1.0.6 has been released
 ---
 
-h2. Droonga 1.0.6 has been released
+Droonga 1.0.6 has been released
+-------------------------------
 
-Today we've released "Droonga 1.0.6":http://droonga.org/news/2014/09/29/release.html .
+Today we've released [Droonga
+1.0.6](http://droonga.org/news/2014/09/29/release.html) .
 
-Droonga is a distributed full text search engine, compatible to Groonga. The name is originated from "Distributed Groonga".
+Droonga is a distributed full text search engine, compatible to Groonga.
+The name is originated from "Distributed Groonga".
 On this release, new installation scripts are available.
 You can install components and register them as system services easily.
 
-Now Droonga is under active development. Please try Droonga and join us to accelerate the development!
-
+Now Droonga is under active development. Please try Droonga and join us
+to accelerate the development!

  Renamed: en/_posts/2014-10-07-droonga-1.0.7.md (+10 -5) 54%
===================================================================
--- en/_posts/2014-10-07-droonga-1.0.7.textile    2016-02-06 14:39:42 +0900 (a7738dc)
+++ en/_posts/2014-10-07-droonga-1.0.7.md    2016-02-07 10:35:40 +0900 (6b91212)
@@ -3,12 +3,17 @@ layout: post.en
 title: Droonga 1.0.7 has been released
 ---
 
-h2. Droonga 1.0.7 has been released
+Droonga 1.0.7 has been released
+-------------------------------
 
-Today we've released "Droonga 1.0.7":http://droonga.org/news/2014/10/07/release.html .
+Today we've released [Droonga
+1.0.7](http://droonga.org/news/2014/10/07/release.html) .
 
-Droonga is a distributed full text search engine, compatible to Groonga. The name is originated from "Distributed Groonga".
+Droonga is a distributed full text search engine, compatible to Groonga.
+The name is originated from "Distributed Groonga".
 On this urgent release, a fatal issue in the service script is fixed.
-If you tried Droonga 1.0.6, always update them to 1.0.7 as described in the release entry.
+If you tried Droonga 1.0.6, always update them to 1.0.7 as described in
+the release entry.
 
-Now Droonga is under active development. Please try Droonga and join us to accelerate the development!
+Now Droonga is under active development. Please try Droonga and join us
+to accelerate the development!

  Added: en/_posts/2014-11-29-droonga-1.0.8.md (+20 -0) 100644
===================================================================
--- /dev/null
+++ en/_posts/2014-11-29-droonga-1.0.8.md    2016-02-07 10:35:40 +0900 (000d55a)
@@ -0,0 +1,20 @@
+---
+layout: post.en
+title: Droonga 1.0.8 has been released
+---
+
+Droonga 1.0.8 has been released
+-------------------------------
+
+Today we've released [Droonga
+1.0.8](http://droonga.org/news/2014/11/29/release.html) .
+
+Droonga is a distributed full text search engine, compatible to Groonga.
+The name is originated from "Distributed Groonga".
+
+On this release, a front-end HTTP server works with multiple back-end
+Droonga Engine nodes. Even if some Engine nodes die, HTTP servers can
+work with remaining Engine nodes.
+
+Now Droonga is under active development. Please try Droonga and join us
+to accelerate the development!

  Deleted: en/_posts/2014-11-29-droonga-1.0.8.textile (+0 -14) 100644
===================================================================
--- en/_posts/2014-11-29-droonga-1.0.8.textile    2016-02-06 14:39:42 +0900 (fd1a562)
+++ /dev/null
@@ -1,14 +0,0 @@
----
-layout: post.en
-title: Droonga 1.0.8 has been released
----
-
-h2. Droonga 1.0.8 has been released
-
-Today we've released "Droonga 1.0.8":http://droonga.org/news/2014/11/29/release.html .
-
-Droonga is a distributed full text search engine, compatible to Groonga. The name is originated from "Distributed Groonga".
-
-On this release, a front-end HTTP server works with multiple back-end Droonga Engine nodes. Even if some Engine nodes die, HTTP servers can work with remaining Engine nodes.
-
-Now Droonga is under active development. Please try Droonga and join us to accelerate the development!




More information about the Groonga-commit mailing list
Back to archive index